Commit bc3c84d9 authored by huhaiqing's avatar huhaiqing

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

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