From f294efb8c01ad8b0704a92d51c14dbd55d898874 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期四, 23 十月 2025 16:49:46 +0800
Subject: [PATCH] 拆分原材料和外购成品的业务流程(报检、下单、检验)
---
src/views/business/inspectionTask/inspection.vue | 143 ++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 128 insertions(+), 15 deletions(-)
diff --git a/src/views/business/inspectionTask/inspection.vue b/src/views/business/inspectionTask/inspection.vue
index 40ff3d9..40e6f22 100644
--- a/src/views/business/inspectionTask/inspection.vue
+++ b/src/views/business/inspectionTask/inspection.vue
@@ -1,7 +1,7 @@
<template>
<div v-loading="loading" class="inspection" style="background-color: rgb(245, 247, 251);">
<el-row class="title">
- <el-col :span="8" style="text-align: left">
+ <el-col v-if="insOrder.ifsOrderType!=='02wg'" :span="8" style="text-align: left;">
<el-form :inline="true" :model="otherForm" class="form-inline" label-width="50px"
style="text-align: right; padding-top: 0; display: inline">
<el-form-item label="娓╁害:" style="margin-bottom: 0">
@@ -16,7 +16,8 @@
</el-form-item>
</el-form>
</el-col>
- <el-col :span="16" style="text-align: right">
+ <el-col :span="insOrder.ifsOrderType!=='02wg'?16:24" style="text-align: right">
+ <el-button v-if="insOrder.ifsOrderType" size="small" type="primary" @click="showMaterialPropsDialog">IFS鐗╂枡灞炴�ф洿鏂�</el-button>
<el-button size="small" type="primary" @click="refreshView">鍒锋柊</el-button>
<el-button v-if="typeSource == 1" size="small" type="primary" @click="openPurchase">杩涜揣楠岃瘉</el-button>
<el-button v-if="state == 1 && typeSource == 1" size="small" type="primary"
@@ -74,6 +75,17 @@
@blur="subOtherForm(insOrder.remark, 'remark')"></el-input>
<!-- <el-tag v-if="currentKey">{{ insOrder.remark }}</el-tag> -->
</el-form-item>
+ <template v-if="insOrder.isSplitOrder && insOrder.isSplitOrder===1">
+ <el-form-item label="澶栨姢棰滆壊:">
+ <el-input v-model="insOrder.outerColor" clearable disabled placeholder="" size="small"></el-input>
+ </el-form-item>
+ <el-form-item label="缁濈紭棰滆壊:">
+ <el-input v-model="insOrder.insulationColor" clearable disabled placeholder="" size="small"></el-input>
+ </el-form-item>
+ <el-form-item label="鐩樺彿:">
+ <el-input v-model="insOrder.drumNo" clearable disabled placeholder="" size="small"></el-input>
+ </el-form-item>
+ </template>
</el-form>
</div>
<div class="center">
@@ -526,6 +538,41 @@
:purchaseDialog="purchaseDialog" @resetPurchaseDialog="resetPurchaseDialog"></purchase-verification>
<!--鏌ョ湅宸ユ椂寮规-->
<viewManHourDia ref="viewManHourDia" @submit="openAddVerifyDia"></viewManHourDia>
+<!-- IFS鐗╂枡灞炴�х紪杈戝脊妗�-->
+ <el-dialog
+ title="鏇存柊IFS搴撳瓨鐗╂枡鎵规灞炴��"
+ :visible.sync="ifsMaterialPropsVisible"
+ width="20%">
+ <el-form style="width:100%" :model="ifsMaterialPropsForm">
+ <el-form-item label="杞藉叿缂栧彿(Attr1):">
+ <el-input size="small" v-model="ifsMaterialPropsForm.drumNo"></el-input>
+ </el-form-item>
+ <el-form-item label="璧峰绫虫爣(Attr2):">
+ <el-input size="small" v-model="ifsMaterialPropsForm.startMeterMark"></el-input>
+ </el-form-item>
+ <el-form-item label="鎴绫虫爣(Attr3):">
+ <el-input size="small" v-model="ifsMaterialPropsForm.endMeterMark"></el-input>
+ </el-form-item>
+<!-- <el-form-item label="鍏ュ簱闀垮害">-->
+<!-- <el-input v-model="ifsMaterialPropsForm.inboundLength"></el-input>-->
+<!-- </el-form-item>-->
+ <el-form-item label="缁濈紭棰滆壊(Attr4):">
+ <el-input size="small" v-model="ifsMaterialPropsForm.insulationColor"></el-input>
+ </el-form-item>
+ <el-form-item label="澶栨姢棰滆壊(Attr5):">
+ <el-input size="small" v-model="ifsMaterialPropsForm.outerColor"></el-input>
+ </el-form-item>
+ <el-form-item label="鍗板瓧淇℃伅(Attr8):">
+ <el-select size="small" v-model="ifsMaterialPropsForm.letteringInfo" placeholder="璇烽�夋嫨">
+ <el-option v-for="(item,index) in letteringInfoList" :label="item.dictLabel" :value="item.dictValue" :key="index"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="closePartPropDialog()">鍙� 娑�</el-button>
+ <el-button type="primary" @click="saveOrUpdatePartProp()">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
</div>
</template>
@@ -561,8 +608,9 @@
import DataWorker from '@/workers/DataWorker.worker.js';
import html2canvas from "html2canvas";
import { mapGetters } from "vuex";
-import { connect,disconnect,weightList } from "@/utils/connect.js";
import viewManHourDia from "@/views/business/inspectionTask/components/viewManHourDia.vue";
+import {connect,disconnect,weightList} from "@/utils/connect";
+import {getOneByIfsId,saveOrUpdateProps} from "@/api/business/ifsPartProps.js";
export default {
name: 'Inspection',
components: {
@@ -575,6 +623,19 @@
},
data() {
return {
+ letteringInfoList: [],
+ ifsMaterialPropsForm:{
+ id:null,
+ ifsOrderId: null,
+ drumNo: '', // 杞藉叿缂栧彿
+ startMeterMark: '', // 璧峰绫虫爣
+ endMeterMark: '', // 鎴绫虫爣
+ insulationColor: '', // 缁濈紭棰滆壊
+ outerColor: '', // 澶栨姢棰滆壊
+ inboundLength: '', // 鍏ュ簱闀垮害
+ letteringInfo: '', // 鍗板瓧淇℃伅
+ },
+ ifsMaterialPropsVisible:false,
sonLaboratory: null,
orderId: null,
state: null,
@@ -881,6 +942,7 @@
}
});
}
+ console.log("澶勭悊鍚庣殑妯℃澘-",this.tableList)
},
// 鐗规畩妫�楠岄」--鐩戝惉璁惧淇℃伅鏀瑰彉
equipForm: {
@@ -898,6 +960,49 @@
}
},
methods: {
+ closePartPropDialog(){
+ this.ifsMaterialPropsForm = {
+ id:null,
+ ifsOrderId: null,
+ drumNo: '', // 杞藉叿缂栧彿
+ startMeterMark: '', // 璧峰绫虫爣
+ endMeterMark: '', // 鎴绫虫爣
+ insulationColor: '', // 缁濈紭棰滆壊
+ outerColor: '', // 澶栨姢棰滆壊
+ inboundLength: '', // 鍏ュ簱闀垮害
+ letteringInfo: '', // 鍗板瓧淇℃伅
+ }
+ this.ifsMaterialPropsVisible = false;
+ },
+ getPartProps(ifsId){
+ getOneByIfsId(ifsId).then((res)=>{
+ if(res.code==200 && res.data){
+ this.ifsMaterialPropsForm = res.data;
+ }
+ })
+ },
+ saveOrUpdatePartProp(){
+ saveOrUpdateProps({
+ ...this.ifsMaterialPropsForm,
+ partNo: this.insOrder.partNo,
+ lotBatchNo: this.insOrder.lotBatchNo,
+ }).then((res)=>{
+ if(res.code==200){
+ this.$message.success("淇濆瓨鎴愬姛");
+ this.ifsMaterialPropsVisible = false;
+ }
+ })
+ },
+ //鎵撳紑IFS鐗╂枡灞炴�у脊妗�
+ showMaterialPropsDialog(){
+ this.getPartProps(this.insOrder.ifsInventoryId)
+ this.$nextTick(()=>{
+ this.ifsMaterialPropsVisible = true;
+ })
+ },
+ disconnect() {
+ return disconnect
+ },
sss() {
console.log(this.$store.state.weightList) //
},
@@ -983,6 +1088,8 @@
laboratory: this.sonLaboratory,
}).then(async (res) => {
this.insOrder = res.data.insOrder;
+ //鏌ヨ闆朵欢灞炴��
+ this.getPartProps(res.data.insOrder.ifsInventoryId)
this.supplierDensity = res.data.supplierDensity;
this.getList()
this.urgentList.forEach((m) => {
@@ -1197,6 +1304,7 @@
return newObj;
},
handleDataAcquisition(data, noDialog) {
+ console.log("dadad--",data)
// 鏄惁鍙互缂栬緫鏁伴噰鏁版嵁
if (this.dataAcquisitionEidtAble) {
this.getDataType = 1;
@@ -1220,7 +1328,9 @@
};
}
// 寰幆鏁伴噰鏁版嵁
+ console.log(data[i],i)
for (let j in data[i]) {
+ console.log("jjjjj--",j)
// 鎷兼帴瀛楃涓� 妫�楠岄」鍒嗙被+妫�楠岄」+妫�楠屽瓙椤�
let str0 = "";
if (i.includes("@")) {
@@ -1424,6 +1534,7 @@
this.getDataIndexLoading = false;
this.dataGetDia = false;
this.getDataTypeId = "";
+ console.log("dadada---",this.dataAcquisitionInfo)
this.worker0.postMessage(
JSON.stringify({
dataAcquisitionInfo: this.dataAcquisitionInfo,
@@ -1437,6 +1548,7 @@
// 鐩戝惉 Worker 杩斿洖鐨勭粨鏋�
this.worker0.onmessage = (event) => {
let result = JSON.parse(event.data);
+ console.log("Worker 杩斿洖鐨勭粨鏋�:", result);
if (result.method == "changeInput") {
// 閲囬泦鍚庣殑鏁版嵁锛岄渶瑕佽繘琛岃绠楃殑绾跨▼杩涜璁$畻
let { list, n } = result.value;
@@ -1848,7 +1960,7 @@
if (c.v.ps != undefined && c.v.ps.value === "妫�楠岄」") {
if (count4 === 0) {
if (c.v.v) {
- c.v.v = c.v.v.replace(/\s*/g, "");
+ c.v.v = c.v.v.replace(/[\n\r\s]*/g, "");
}
str += c.v.v;
count4 += 1;
@@ -1859,7 +1971,7 @@
) {
if (count4 === 1) {
if (c.v.v) {
- c.v.v = c.v.v.replace(/\s*/g, "");
+ c.v.v = c.v.v.replace(/[\n\r\s]*/g, "");
}
str += c.v.v;
count4 += 1;
@@ -1869,7 +1981,7 @@
if (c.v.ps != undefined && c.v.ps.value === "妫�楠岄」鍒嗙被") {
if (count4 === 0) {
if (c.v.v) {
- c.v.v = c.v.v.replace(/\s*/g, "");
+ c.v.v = c.v.v.replace(/[\n\r\s]*/g, "");
}
str += c.v.v;
count4 += 1;
@@ -1877,7 +1989,8 @@
} else if (c.v.ps != undefined && c.v.ps.value === "妫�楠岄」") {
if (count4 === 1) {
if (c.v.v) {
- c.v.v = c.v.v.replace(/\s*/g, "");
+ console.log("杩涘叆1111111")
+ c.v.v = c.v.v.replace(/[\n\r\s]*/g, "");
}
str += c.v.v;
count4 += 1;
@@ -1888,7 +2001,7 @@
) {
if (count4 === 2) {
if (c.v.v) {
- c.v.v = c.v.v.replace(/\s*/g, "");
+ c.v.v = c.v.v.replace(/[\n\r\s]*/g, "");
}
str += c.v.v;
count4 += 1;
@@ -1898,7 +2011,7 @@
if (str === "鏈烘鎬ц兘骞叉�佹媺浼稿己搴�(绾靛悜)") {
if (c.v.ps != undefined && c.v.ps.value === "鍗曚綅") {
if (c.v.v) {
- c.v.v = c.v.v.replace(/\s*/g, "");
+ c.v.v = c.v.v.replace(/[\n\r\s]*/g, "");
}
str2 = str + c.v.v;
unit2 = c.v.v;
@@ -1916,13 +2029,13 @@
undefined
? ""
: this.currentSample.insProduct[i].inspectionItemClass;
- inspectionItemClass = inspectionItemClass.replace(/\s*/g, "");
+ inspectionItemClass = inspectionItemClass.replace(/[\n\r\s]*/g, "");
let inspectionItem =
this.currentSample.insProduct[i].inspectionItem == null ||
this.currentSample.insProduct[i].inspectionItem == undefined
? ""
: this.currentSample.insProduct[i].inspectionItem;
- inspectionItem = inspectionItem.replace(/\s*/g, "");
+ inspectionItem = inspectionItem.replace(/[\n\r\s]*/g, "");
let inspectionItemSubclass =
this.currentSample.insProduct[i].inspectionItemSubclass ==
null ||
@@ -1931,7 +2044,7 @@
? ""
: this.currentSample.insProduct[i].inspectionItemSubclass;
inspectionItemSubclass = inspectionItemSubclass.replace(
- /\s*/g,
+ /[\n\r\s]*/g,
""
);
if (inspectionItemSubclass === "骞叉�佹媺浼稿己搴�(绾靛悜)") {
@@ -2646,11 +2759,11 @@
this.$message.error("璇锋寚瀹氬鏍镐汉鍛�");
return;
}
- if (!this.otherForm.humidity) {
+ if (!this.otherForm.humidity && this.insOrder.ifsOrderType!=='02wg') {
this.$message.error("璇疯緭鍏ユ箍搴�");
return;
}
- if (!this.otherForm.temperature) {
+ if (!this.otherForm.temperature && this.insOrder.ifsOrderType!=='02wg') {
this.$message.error("璇疯緭鍏ユ俯搴�");
return;
}
@@ -2677,7 +2790,7 @@
this.confirmSubmit(false)
});
}else{
- this.confirmSubmit(false)
+ this.confirmSubmit(true)
}
} else {
let newData = [];
--
Gitblit v1.9.3