From 2e4a6c4526b6c22808d5877f2050da852bfaebe7 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期二, 30 十二月 2025 14:31:47 +0800
Subject: [PATCH] 外购成品检验功能迁移v1
---
src/views/business/productOrder/components/addOrder.vue | 50 +++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 47 insertions(+), 3 deletions(-)
diff --git a/src/views/business/productOrder/components/addOrder.vue b/src/views/business/productOrder/components/addOrder.vue
index 90eb98b..91eb5b9 100644
--- a/src/views/business/productOrder/components/addOrder.vue
+++ b/src/views/business/productOrder/components/addOrder.vue
@@ -602,6 +602,7 @@
import limsTable from "@/components/Table/lims-table.vue";
import {selectCustomPageList} from "@/api/system/customer";
import {mapGetters} from "vuex";
+import { bigEval } from "@/utils/bigEval";
import {addQuarter, updateQuarterOnOrder} from "@/api/business/finishedProductSampling";
export default {
@@ -860,6 +861,37 @@
this.getInfo();
},
methods: {
+ /**
+ * 鑾峰彇灏忔暟鐨勬渶澶т綅鏁�
+ * @param number 鍨嬪彿鍙傛暟
+ * @param ask 瑕佹眰鍊�
+ * @param calcNum 璁$畻鍊�
+ */
+ getDecimalPlaces(number, ask, calcNum) {
+ console.log("璁$畻灏忔暟鐐�-->", number, ask, calcNum);
+ let count1 = 0;
+ let count2 = 0;
+ const reg = /(\d+\.)(\d+)/g;
+ let matches = [];
+ if (ask) {
+ matches = ask.match(reg);
+ }
+ if (
+ matches &&
+ matches.length > 0 &&
+ matches[0].toString().indexOf(".") > -1
+ ) {
+ count1 = matches[0].toString().split(".")[1].length;
+ }
+ if (number.toString().indexOf(".") > -1) {
+ count2 = number.toString().split(".")[1].length;
+ }
+ if (calcNum.toString().indexOf(".") > -1) {
+ const pointLength2 = calcNum.toString().split(".")[1].length;
+ count2 = count2 > pointLength2 ? count2 : pointLength2;
+ }
+ return count1 > count2 ? count1 : count2;
+ },
getInfo() {
this.selectStandardTreeList()
this.getAuthorizedPerson();
@@ -1045,7 +1077,13 @@
let index = code.findIndex(b => m.includes(b))
if (index > -1) {
let arr = m.split(code[index]).filter(b => !!b)
- let num = eval(this.replaceAll(arr[0], symbolItem, value))
+ let calcNum = this.$Big(
+ bigEval(this.replaceAll(arr[0], symbolItem, value))
+ );
+ let num = calcNum.toFixed(
+ this.getDecimalPlaces(value, ask, calcNum)
+ );
+ // let num = eval(this.replaceAll(arr[0], symbolItem, value))
m = code[index] + '' + num
arr1.push(m)
}
@@ -1074,7 +1112,13 @@
let index = code.findIndex(b => ask.includes(b))
if (index > -1) {
let arr = ask.split(code[index]).filter(b => !!b)
- let num = eval(this.replaceAll(arr[0], symbolItem, value))
+ let calcNum = this.$Big(
+ bigEval(this.replaceAll(arr[0], symbolItem, value))
+ );
+ let num = calcNum.toFixed(
+ this.getDecimalPlaces(value, ask, calcNum)
+ );
+ // let num = eval(this.replaceAll(arr[0], symbolItem, value))
return code[index] + '' + num
}
}
@@ -1306,7 +1350,7 @@
})
}else{
// 甯歌鎻愪氦
- addInsOrder({insOrder: this.addObj, sampleList: sampleList}).then(res => {
+ addInsOrder({insOrder: {...this.addObj,typeSource:-1}, sampleList: sampleList}).then(res => {
this.saveLoad = false
this.$message.success('宸叉彁浜�')
this.bsm3Dia = false;
--
Gitblit v1.9.3