Commit bc3c84d9 authored by huhaiqing's avatar huhaiqing

修改缺陷单以及数据计算精度问题

parent b0896fe9
......@@ -163,7 +163,7 @@
</template>
<template v-if="dialogCfg.dialogType === 'notice'">
<div class="notice-dialog">
<div class="notice-title">您有一个/多个待处理出货操作,请尽快前往处理:</div>
<div class="notice-title">您有{{noticeList.length}}个待处理出货操作,请尽快前往处理:</div>
<el-table :data="noticeList" height="500px" border>
<el-table-column label="自编号" align="center" prop="selfNo" />
<el-table-column label="类型" align="center">
......
......@@ -63,7 +63,8 @@
<template v-slot="{row}">
<section>
<div v-for="(item, index) in row.goodsList" :key="index">
{{index+1}}{{item.prodTitleZh}}
<div>{{index+1}}{{item.prodTitleZh}}</div>
<div>{{index+1}}{{item.prodTitleEn}}</div>
</div>
</section>
</template>
......@@ -97,6 +98,7 @@ import {
} from "./shippingSea/utils";
import { getCabinetPage } from "@/api/ecw/cabinet";
import { getChannelList } from "@/api/ecw/channel";
import Decimal from "decimal.js";
/**
* 出货审核详情
......@@ -162,13 +164,13 @@ export default {
calcSum(goodsList) {
let sum = 0;
goodsList.forEach((element) => {
sum = sum + element.num;
sum = Decimal.add(sum, element.num);
});
return sum;
},
/* 跳转订单详情 */
jumpOrderDetail(row) {
this.$router.push("/order/associated-order/" + row.orderId);
this.$router.push("/order/detail?orderId=" + row.orderId);
},
},
watch: {
......
......@@ -16,7 +16,7 @@
{{orderData.status==99?'异常':'正常'}}
</el-descriptions-item>
<el-descriptions-item label="送货日期">
{{orderData.consigneeVO?orderData.consigneeVO.deliveryDate:''}}
{{orderData.deliveryDate}}
</el-descriptions-item>
</el-descriptions>
<el-descriptions :column="4">
......@@ -95,9 +95,10 @@
</template>
</el-table-column>
<el-table-column label="状态" align="center">
<template slot-scope="scope">
{{orderData.abnormalState!=0?$t('异常'):$t('正常')}}
<!-- <template slot-scope="scope">
<dict-tag :type="DICT_TYPE.ORDER_STATUS" :value="scope.row.status" />
</template>
</template> -->
</el-table-column>
</el-table>
</el-card>
......@@ -223,6 +224,7 @@ import WorkFlow from "@/components/WorkFlow";
import { getOrder } from "@/api/ecw/order";
import { serviceMsg, toReviewDetail } from "../../utils";
import { createApproval, approvalCancel } from "@/api/ecw/boxSea";
import Decimal from "decimal.js";
export default {
name: "splitOrder",
......@@ -310,7 +312,7 @@ export default {
let _total = 0;
const { orderSplitItemBackVOList = [] } = this.splitData;
orderSplitItemBackVOList.forEach((v) => {
_total += Number(v.num);
_total = Decimal.add(_total, Number(v.num));
});
return _total;
},
......@@ -380,12 +382,15 @@ export default {
let leviteV = 0;
let leviteW = 0;
this.orderData.orderItemVOList.forEach((column, index) => {
orderSum += column.num ?? 0;
orderV += column.volume ?? 0;
orderW += column.weight ?? 0;
leviteSum += column.warehouseInInfoVO?.cartonsNum ?? 0;
leviteV += column.warehouseInInfoVO?.volume ?? 0;
leviteW += column.warehouseInInfoVO?.weight ?? 0;
orderSum = Decimal.add(orderSum, column.num ?? 0);
orderV = Decimal.add(orderV, column.volume ?? 0);
orderW = Decimal.add(orderW, column.weight ?? 0);
leviteSum = Decimal.add(
leviteSum,
column.warehouseInInfoVO?.cartonsNum ?? 0
);
leviteV += Decimal.add(leviteV, column.warehouseInInfoVO?.volume ?? 0);
leviteW += Decimal.add(leviteW, column.warehouseInInfoVO?.weight ?? 0);
});
sums[1] =
"下单统计:" +
......@@ -455,8 +460,8 @@ export default {
if (valid) {
// 输入箱数大于实装箱数
const total = this.totalSplitNum();
const canSplitNum = this.currRow.num - this.currRow.installNum;
const remain = canSplitNum - total;
const canSplitNum = Decimal.sub(this.currRow.num, this.currRow.installNum);
const remain = Decimal.sub(canSplitNum, total);
if (this.shopForm.num > remain) {
this.$message.error("放入箱数不能大于总箱数");
return;
......
......@@ -147,7 +147,7 @@
<el-option v-for="warehouse in $attrs.warehouseList" :key="warehouse.id" :label="warehouse.titleZh" :value="warehouse.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="预计时间">{{preinstallDate}}</el-form-item>
<el-form-item label="预装日期">{{preinstallDate}}</el-form-item>
<el-form-item label="选择柜型" prop="cabinetId">
<el-select v-model="modifyCabinetObj.cabinetId" placeholder="请选择柜型">
<el-option v-for="item in cabinetList" :label="item.name" :value="item.id" :key="item.id"></el-option>
......@@ -262,6 +262,7 @@ import {
} from "../../utils";
import splitOrder from "./splitOrder.vue";
import WorkFlow from "@/components/WorkFlow";
import Decimal from "decimal.js";
/**
* 开始装柜
......@@ -618,8 +619,10 @@ export default {
},
/* 预计时间 */
preinstallDate() {
if (this.shipmentObj.yzDate) {
return dayjs(this.shipmentObj.yzDate).format("YYYY-MM-DD HH:mm:ss");
if (this.shipmentObj.preInstallInfo.createTime) {
return dayjs(this.shipmentObj.preInstallInfo.createTime).format(
"YYYY-MM-DD HH:mm:ss"
);
}
return null;
},
......@@ -639,7 +642,7 @@ export default {
this.listData.forEach((item) => {
const { sectionOrderList = [] } = item;
sectionOrderList.forEach((item) => {
count = count + item.installNum;
count = Decimal.add(count, item.installNum);
});
});
}
......
......@@ -156,6 +156,7 @@ import {
downloadFile,
} from "../utils";
import ImageUpload from "@/components/ImageUpload";
import Decimal from 'decimal.js'
/**
* 报关
......@@ -403,7 +404,7 @@ export default {
this.$set(
this.cusDeclarationObj,
"dcVgmWgt",
dcBoxWgtTmp + dcGoodsWgtTmp
Decimal.add(dcBoxWgtTmp, dcGoodsWgtTmp)
);
},
// 审核详情
......
......@@ -142,6 +142,7 @@
<template slot-scope="scope">
<p v-if="scope.row.volume">{{getTotlContent(scope.row,['volume'])}}</p>
<p v-if="scope.row.weight">{{getTotlContent(scope.row,['weight'])}}</p>
<p>{{getRatioMax(scope.row)}}</p>
</template>
</el-table-column>
<el-table-column label="报关方式" align="center" prop="customsType" width="120">
......@@ -323,6 +324,7 @@ import {
} from "../utils";
import dayjs from "dayjs";
import WorkFlow from "@/components/WorkFlow";
import Decimal from "decimal.js";
/**
* 预装
......@@ -370,7 +372,9 @@ export default {
operatorData: {},
// 校验
rules: {
noticeUser: [{ required: true, message: "目的地操作员必填", trigger: "change" }],
noticeUser: [
{ required: true, message: "目的地操作员必填", trigger: "change" },
],
},
// 出货信息
shipmentObj: this.$attrs.shipmentObj,
......@@ -511,7 +515,7 @@ export default {
return values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
return Decimal.add(prev, curr);
} else {
return prev;
}
......@@ -638,6 +642,11 @@ export default {
toReviewDetail.apply(this, [shipmentObj[currNode.voName].bpmProcessId]);
this.$emit("closeDialog");
},
getRatioMax(row) {
let volume = row.volume ?? 0;
let weight = row.weight ?? 0;
return Decimal.div(volume, weight).toFixed(2);
},
},
};
</script>
......
......@@ -33,16 +33,20 @@ export default {
},
created() {
const { currNode, shipmentObj } = this.$attrs;
const { preInstallBackInfo, cabinetUnloadBackApprovalInfo } = shipmentObj;
if (currNode.type === "preinstall") {
this.isReview = shipmentObj["preInstallBackInfo"] ? true : false;
this.bpmProcessId = shipmentObj["preInstallBackInfo"]?.bpmProcessId;
this.isReview = preInstallBackInfo ? true : false;
if (preInstallBackInfo && preInstallBackInfo.approvalStatus !== 1) {
this.isReview = false;
}
this.bpmProcessId = preInstallBackInfo?.bpmProcessId;
}
if (currNode.type === "unloading") {
this.isReview = shipmentObj["cabinetUnloadBackApprovalInfo"]
? true
: false;
this.bpmProcessId =
shipmentObj["cabinetUnloadBackApprovalInfo"]?.bpmProcessId;
this.isReview = cabinetUnloadBackApprovalInfo ? true : false;
if (cabinetUnloadBackApprovalInfo && cabinetUnloadBackApprovalInfo.approvalStatus !== 1) {
this.isReview = false;
}
this.bpmProcessId = cabinetUnloadBackApprovalInfo?.bpmProcessId;
}
},
methods: {
......
......@@ -125,6 +125,7 @@ import {
} from "@/api/ecw/boxSea";
import { serviceMsg, getTotlContent, toReviewDetail } from "../../utils";
import WorkFlow from "@/components/WorkFlow";
import Decimal from "decimal.js";
/**
* 开始卸柜
......@@ -328,7 +329,7 @@ export default {
let count = 0;
if (this.pageData.sectionOrderList) {
this.pageData.sectionOrderList.forEach((item) => {
count = count + item.unloadNum;
count = Decimal.add(count, item.unloadNum);
});
}
return count;
......
import dayjs from "dayjs";
import * as _BOX from "@/api/ecw/box";
import FileSaver from "file-saver";
import Decimal from "decimal.js";
/**
* 节点状态值
......@@ -1436,13 +1437,13 @@ function sumStatistics(val) {
const { secStatistics } = item;
if (secStatistics) {
if (!Number.isNaN(Number(secStatistics.num))) {
count.num = count.num + Number(secStatistics.num);
count.num = Decimal.add(count.num, Number(secStatistics.num));
}
if (!Number.isNaN(Number(secStatistics.volume))) {
count.volume = count.volume + Number(secStatistics.volume);
count.volume = Decimal.add(count.volume, Number(secStatistics.volume));
}
if (!Number.isNaN(Number(secStatistics.weight))) {
count.weight = count.weight + Number(secStatistics.weight);
count.weight = Decimal.add(count.weight, Number(secStatistics.weight));
}
}
});
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment