67 lines
2.5 KiB
Vue
67 lines
2.5 KiB
Vue
<template>
|
|
<div>
|
|
<template v-for="(item, index) of data">
|
|
<el-descriptions border :column="4" size="mini">
|
|
<el-descriptions-item :key="item.id" label="生产订单" :span="2">{{item.orderErpBillNo | dv}}</el-descriptions-item>
|
|
<el-descriptions-item :key="item.id" label="本次提交产量">{{item.num | fix2 | dv}} {{priceUnit}}</el-descriptions-item>
|
|
<el-descriptions-item :key="item.id" label="订单进度">
|
|
<prod-order-progress :percentage="percentage(item)" width="80px"/>
|
|
</el-descriptions-item>
|
|
<el-descriptions-item :key="item.id" label="订单需求数量">{{item.orderErpBaseUnitQty | fix2 | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
|
<el-descriptions-item :key="item.id" label="订单未入库数量">{{item.orderErpBaseNoStockInQty | fix2 | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
|
<el-descriptions-item :key="item.id" label="订单审核中产量">{{item.verifyingBaseNum | fix2 | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
|
<el-descriptions-item :key="item.id" label="订单已审核产量">{{item.verifiedBaseNum | fix2 | dv}} {{item.baseUnitName}}</el-descriptions-item>
|
|
</el-descriptions>
|
|
<br/>
|
|
</template>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
|
|
import {notNullDecimal} from "@/utils";
|
|
import Decimal from "decimal.js";
|
|
import ProdOrderProgress from "@/views/yh/prodOrder/components/ProdOrderProgress.vue";
|
|
|
|
export default {
|
|
name: "ReportOrderProdDescriptions",
|
|
components: {ProdOrderProgress},
|
|
props: {
|
|
data: {
|
|
type: Array,
|
|
default: () => {
|
|
return []
|
|
}
|
|
},
|
|
priceUnit: {
|
|
type: String,
|
|
default: null
|
|
},
|
|
priceQuantity: {
|
|
type: Number,
|
|
default: null,
|
|
}
|
|
},
|
|
data() {
|
|
return {
|
|
}
|
|
},
|
|
computed: {
|
|
// 百分比
|
|
percentage() {
|
|
return (row) => {
|
|
let verifiedBaseNum = notNullDecimal(row.verifiedBaseNum); // 已经审核的量
|
|
let num = notNullDecimal(row.num).mul(notNullDecimal(this.priceQuantity)); // 提交数量 * 倍数
|
|
let orderErpBaseUnitQty = notNullDecimal(row.orderErpBaseUnitQty); // 基础总需求量
|
|
console.log("percentage", verifiedBaseNum.toNumber(), num.toNumber(), orderErpBaseUnitQty.toNumber());
|
|
|
|
// 结果 = (已审核量 + 本次提交量 * 倍数) / 基础总需求量 * 100
|
|
return new Decimal(
|
|
verifiedBaseNum.add(num).mul(new Decimal(100)).div(orderErpBaseUnitQty).toFixed(2)
|
|
).toNumber();
|
|
}
|
|
}
|
|
},
|
|
}
|
|
</script>
|