账面数量和盈亏的计算
This commit is contained in:
1 parent
61fc2873d1
commit
cf3c545617
1 file changed
+38
-7
@@ -90,29 +90,41 @@
|
||||
<div v-for="(item, index) in row.erpUnitVos" :key="index">单位:{{ item.unit }} 装数:{{ item.packageNum }}</div>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="" title="账面数量">
|
||||
<vxe-column field="accountNumber" title="账面数量">
|
||||
<template #default="{ row }">
|
||||
{{ row.stock }}
|
||||
<div v-for="(item, index) in formatterAccountNumber(row)" :key="index">
|
||||
{{ item.accountNumber + " " + item.unit }}
|
||||
</div>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="currentStock" title="实际数量" :edit-render="{ autoFocus: 'input', placeholder: '请输入' }" min-width="30">
|
||||
<vxe-column field="realNumber" title="实际数量" :edit-render="{ autoFocus: 'input', placeholder: '请输入' }" min-width="30">
|
||||
<template #edit="{ row }">
|
||||
<el-input size="small" v-model="row.erpUnitVos[index].currentStock" v-for="(item, index) in row.erpUnitVos" :key="index" />
|
||||
<el-input size="small" v-model="row.erpUnitVos[index].realNumber" v-for="(item, index) in row.erpUnitVos" :key="index" />
|
||||
</template>
|
||||
<template #default="{ row }">
|
||||
<div v-for="(item, index) in row.erpUnitVos" :key="index">
|
||||
{{ (item.currentStock ? item.currentStock : "__") + " " + item.unit }}
|
||||
{{ (item.realNumber ? item.realNumber : "__") + " " + item.unit }}
|
||||
</div>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="profit" title="盈">
|
||||
<template #default="{ row }">
|
||||
<div v-for="(item, index) in row.erpUnitVos" :key="index">{{ 777 - +item.currentStock || 0 }}</div>
|
||||
<div v-for="(item, index) in row.erpUnitVos" :key="index">
|
||||
{{
|
||||
(item.realNumber - item.accountNumber) * item.packageNum > 0 ? (item.realNumber - item.accountNumber) * item.packageNum : 0
|
||||
}}
|
||||
</div>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="loss" title="亏">
|
||||
<template #default="{ row }">
|
||||
<div v-for="(item, index) in row.erpUnitVos" :key="index">{{ 777 - +item.currentStock || 0 }}</div>
|
||||
<div v-for="(item, index) in row.erpUnitVos" :key="index">
|
||||
{{
|
||||
(item.realNumber - item.accountNumber) * item.packageNum < 0
|
||||
? Math.abs((item.realNumber - item.accountNumber) * item.packageNum)
|
||||
: 0
|
||||
}}
|
||||
</div>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="unitPrice" title="账面进价">
|
||||
@@ -261,6 +273,25 @@ const getInitData = async () => {
|
||||
planCode && planCode.code === 0 && (baseDataForm.inventoryCode = planCode.data)
|
||||
}
|
||||
|
||||
// 计算账面数量
|
||||
const formatterAccountNumber = (row: any) => {
|
||||
let stock = row.stock
|
||||
console.log("xxx", stock)
|
||||
|
||||
return row.erpUnitVos
|
||||
.map((item: any, index: number) => {
|
||||
item.oriIndex = index
|
||||
return item
|
||||
})
|
||||
.sort((a: any, b: any) => b.packageNum - a.packageNum)
|
||||
.map((item: any, index: number) => {
|
||||
item.accountNumber = Math.floor(stock / item.packageNum)
|
||||
stock = stock % item.packageNum
|
||||
return item
|
||||
})
|
||||
.sort((a: any, b: any) => a.oriIndex - b.oriIndex)
|
||||
}
|
||||
|
||||
// 顶部表格行新增
|
||||
const addEvent = () => {
|
||||
const newRow: any = {
|
||||
|
||||
Reference in new issue
Block a user