From 3f8e22a435239659af746fcba55a51a1044100fe Mon Sep 17 00:00:00 2001
From: lzhe <181968431@qq.com>
Date: 星期日, 26 五月 2024 00:24:25 +0800
Subject: [PATCH] 1

---
 src/views/console/product-process/process-route/addWorkmanship.vue |  255 ++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 221 insertions(+), 34 deletions(-)

diff --git a/src/views/console/product-process/process-route/addWorkmanship.vue b/src/views/console/product-process/process-route/addWorkmanship.vue
index bb077db..f5341ab 100644
--- a/src/views/console/product-process/process-route/addWorkmanship.vue
+++ b/src/views/console/product-process/process-route/addWorkmanship.vue
@@ -11,86 +11,100 @@
 		<el-row>
 			<el-col :span="24">
 				<el-form-item label="宸ュ簭缂栧彿" prop="test0">
-					<el-select v-model="workmanshipForm.test0" style="width: 100%" placeholder="宸ュ簭缂栧彿">
-						<el-option v-for="item in testList" :key="item.id" :label="item.name" :value="item.id"/>
+					<el-select v-model="workmanshipForm.processId" style="width: 100%" placeholder="宸ュ簭缂栧彿" @change="processChange">
+						<el-option v-for="item in processCodeList" :key="item.id" :label="item.code" :value="item.id"/>
 					</el-select>
 				</el-form-item>
 			</el-col>
 			<el-col :span="24">
 				<el-form-item label="宸ュ簭鍚嶇О">
-					<el-select v-model="workmanshipForm.test0" style="width: 100%" placeholder="宸ュ簭鍚嶇О">
-						<el-option v-for="item in testList" :key="item.id" :label="item.name" :value="item.id"/>
+					<el-select v-model="workmanshipForm.processId" style="width: 100%" placeholder="宸ュ簭鍚嶇О" @change="processChange">
+						<el-option v-for="item in processNameList" :key="item.id" :label="item.name" :value="item.id"/>
 					</el-select>
 				</el-form-item>
 			</el-col>
 			<el-col :span="24">
 				<el-form-item label="宸ョ">
-					<span>-</span>
+					<span>{{workmanshipForm.processTypeName}}</span>
 				</el-form-item>
 			</el-col>
 			<el-col :span="24">
-				<el-form-item label="宸ュ簭椤哄簭" prop="test0">
-					<el-input-number v-model="workmanshipForm.num" :min="1" :max="10" @change="handleChange" />
+				<el-form-item label="宸ュ簭椤哄簭" prop="sort">
+					<el-input-number v-model="workmanshipForm.sort" :min="1" :max="10" @change="handleChange" />
 				</el-form-item>
 			</el-col>
 			<el-col :span="24">
 				<el-form-item label="鏍囧噯鐢ㄦ椂">
-					<el-input v-model="workmanshipForm.test" style="width: 20%;margin-right: 12px;">
+					<el-input v-model="workmanshipForm.d" style="width: 20%;margin-right: 12px;">
 						<template #suffix>澶�</template>
 					</el-input>
-					<el-input v-model="workmanshipForm.test" style="width: 20%;margin-right: 12px;">
+					<el-input v-model="workmanshipForm.h" style="width: 20%;margin-right: 12px;">
 						<template #suffix>鏃�</template>
 					</el-input>
-					<el-input v-model="workmanshipForm.test" style="width: 20%;margin-right: 12px;">
+					<el-input v-model="workmanshipForm.m" style="width: 20%;margin-right: 12px;">
 						<template #suffix>鍒�</template>
 					</el-input>
-					<el-input v-model="workmanshipForm.test" style="width: 20%;">
+					<el-input v-model="workmanshipForm.s" style="width: 20%;">
 						<template #suffix>绉�</template>
 					</el-input>
 				</el-form-item>
 			</el-col>
 			<el-col :span="8">
 				<el-form-item label="鍑嗗宸ユ椂">
-					<el-input v-model="workmanshipForm.test">
+					<el-input v-model="workmanshipForm.prepareTime">
 						<template #suffix>鍒�</template>
 					</el-input>
 				</el-form-item>
 			</el-col>
 			<el-col :span="8">
 				<el-form-item label="瑁呭嵏宸ユ椂">
-					<el-input v-model="workmanshipForm.test">
+					<el-input v-model="workmanshipForm.disassemblyTime">
 						<template #suffix>鍒�</template>
 					</el-input>
 				</el-form-item>
 			</el-col>
 			<el-col :span="8">
 				<el-form-item label="杩愯緭宸ユ椂">
-					<el-input v-model="workmanshipForm.test">
+					<el-input v-model="workmanshipForm.transportTime">
 						<template #suffix>鍒�</template>
 					</el-input>
 				</el-form-item>
 			</el-col>
 			<el-col :span="12">
 				<el-form-item label="鍔犲伐绋嬪簭">
-					<el-input v-model="workmanshipForm.test"></el-input>
+					<el-tree-select
+						v-if="workmanshipForm.isSelectProgramFiles"
+						@change = "programIdChange"
+						default-expand-all
+					    v-model="workmanshipForm.programId"
+					    clearable
+						node-key="id"
+					    placeholder="鍔犲伐绋嬪簭"
+						ref="parentTree"
+					    :data="programIdData"
+					    check-strictly
+					    :props="{ label: 'name' }"
+					    style="width:100%;"
+					    :render-after-expand="false" />
+					<el-input v-if="!workmanshipForm.isSelectProgramFiles" v-model="workmanshipForm.programName"></el-input>
 				</el-form-item>
 			</el-col>
 			<el-col :span="12">
 				<el-form-item label="">
-					<el-checkbox v-model="workmanshipForm.box" label="閫夋嫨绋嬪簭鏂囦欢" size="small"/>
+					<el-checkbox v-model="workmanshipForm.isSelectProgramFiles" label="閫夋嫨绋嬪簭鏂囦欢" size="small"/>
 				</el-form-item>
 			</el-col>
 			<el-col :span="12">
 				<el-form-item label="宸ヨ壓鍖�">
 					<el-tree-select
-						@change = "parentIdChange"
+						@change = "bagIdChange"
 						default-expand-all
-					    v-model="workmanshipForm.test"
+					    v-model="workmanshipForm.bagId"
 					    clearable
 						node-key="id"
-					    placeholder="涓婄骇浜у搧"
+					    placeholder="宸ヨ壓鍖�"
 						ref="parentTree"
-					    :data="parentData"
+					    :data="bagIdData"
 					    check-strictly
 					    :props="{ label: 'name' }"
 					    style="width:100%;"
@@ -108,11 +122,52 @@
 					<el-button>鎵归噺鍏宠仈</el-button>
 				</el-form-item>
 			</el-col>
+
+			<!-- <el-col :span="24">
+				<el-row style="margin-top: 12px;margin-bottom: 12px;" v-if="isAddData0">
+					<el-col :span="4">
+						<el-select v-model="addData0.type" placeholder="澶瑰叿缁�" size="small" style="padding-right: 20px;">
+							<el-option v-for="item in typeList" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
+						</el-select>
+					</el-col>
+					<el-col :span="4">
+						<el-select v-model="addData0.type" placeholder="澶瑰叿缂栧彿" size="small" style="padding-right: 20px;">
+							<el-option v-for="item in typeList" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
+						</el-select>
+					</el-col>
+					<el-col :span="4">
+						<el-input v-model="addData0.description" disabled size="small" placeholder="澶瑰叿鍚嶇О" style="padding-right: 20px;"></el-input>
+					</el-col>
+				</el-row>
+			</el-col> -->
+
 			<el-col :span="24">
-				<el-table ref="multipleTableRef" :data="tableDataJQ" border style="width: 100%;margin-bottom:12px;" class="multipleTableRef">
-					<el-table-column prop="code" label="澶瑰叿缁�"></el-table-column>
-					<el-table-column prop="name" label="澶瑰叿缂栧彿"></el-table-column>
-					<el-table-column prop="typeName" label="澶瑰叿鍚嶇О"></el-table-column>
+				<el-table ref="multipleTableRef" :data="fixtures" border style="width: 100%;margin-bottom:12px;" class="multipleTableRef">
+					<el-table-column prop="fixtureGroupName" label="澶瑰叿缁�">
+						<template #default="scope">
+							<el-tree-select
+								@change = "fixturesChange"
+								default-expand-all
+							    v-model="item.fixtureCode"
+							    clearable
+								node-key="id"
+							    placeholder="澶瑰叿缁�"
+								ref="parentTree"
+							    :data="fixturesData"
+							    check-strictly
+							    :props="{ label: 'name' }"
+							    style="width:100%;"
+							    :render-after-expand="false" />
+						</template>
+					</el-table-column>
+					<el-table-column prop="name" label="澶瑰叿缂栧彿">
+						<template #default="scope">
+							<el-select v-model="item.fixtureCode" style="width: 100%" placeholder="鍒�鍏峰瀷鍙�">
+								<el-option v-for="item in numJQList" :key="item.id" :label="item.name" :value="item.id"/>
+							</el-select>
+						</template>
+					</el-table-column>
+					<el-table-column prop="fixtureName" label="澶瑰叿鍚嶇О"></el-table-column>
 					<el-table-column fixed="right" label="鎿嶄綔" width="200px">
 						<template #default="scope">
 							<el-button text type="primary" size="small" @click="table_edit(scope.row, scope.$index)">鍒犻櫎</el-button>
@@ -127,10 +182,28 @@
 				</el-form-item>
 			</el-col>
 			<el-col :span="24">
-				<el-table ref="multipleTableRef" :data="tableDataDQ" border style="width: 100%;" class="multipleTableRef">
-					<el-table-column prop="code" label="鍒�鍏风被鍨�"></el-table-column>
-					<el-table-column prop="name" label="鍒�鍏峰瀷鍙�"></el-table-column>
-					<el-table-column prop="typeName" label="澶瑰叿缂栧彿"></el-table-column>
+				<el-table ref="multipleTableRef" :data="tools" border style="width: 100%;" class="multipleTableRef">
+					<el-table-column prop="code" label="鍒�鍏风被鍨�">
+						<template #default="scope">
+							<el-select v-model="item.test" style="width: 100%" placeholder="鍒�鍏峰瀷鍙�">
+								<el-option v-for="item in typeDQList" :key="item.id" :label="item.name" :value="item.id"/>
+							</el-select>
+						</template>
+					</el-table-column>
+					<el-table-column prop="name" label="鍒�鍏峰瀷鍙�">
+						<template #default="scope">
+							<el-select v-model="item.test" style="width: 100%" placeholder="鍒�鍏峰瀷鍙�">
+								<el-option v-for="item in modelDQList" :key="item.id" :label="item.name" :value="item.id"/>
+							</el-select>
+						</template>
+					</el-table-column>
+					<el-table-column prop="typeName" label="澶瑰叿缂栧彿">
+						<template #default="scope">
+							<el-select v-model="item.test" style="width: 100%" placeholder="鍒�鍏峰瀷鍙�">
+								<el-option v-for="item in numDQList" :key="item.id" :label="item.name" :value="item.id"/>
+							</el-select>
+						</template>
+					</el-table-column>
 					<el-table-column fixed="right" label="鎿嶄綔" width="200px">
 						<template #default="scope">
 							<el-button text type="primary" size="small" @click="table_edit(scope.row, scope.$index)">鍒犻櫎</el-button>
@@ -142,7 +215,7 @@
 	</el-form>
 	<div style="margin-top:12px;">
 		<el-button>鍙栨秷</el-button>
-		<el-button type="primary">淇濆瓨</el-button>
+		<el-button type="primary" @click="craftSave">淇濆瓨</el-button>
 	</div>
 </template>
 
@@ -150,25 +223,139 @@
 	export default {
 		data() {
 			return {
-				tableDataJQ: [],
-				tableDataDQ: [],
-				parentData: {},
+				programIdData: {},
+				numDQList: [],
+				modelDQList: [],
+				typeDQList: [],
+				numJQList: [],
+				fixturesData: [],
+				parentDQData: [],
+				fixtures: [],
+				tools: [],
+				bagIdData: {},
 				testList: [],
+				processCodeList: [],
+				processNameList: [],
 				workmanshipForm: {
+					processCode: "",
+					processId: "",
+					processName: "",
+					processTypeName: "-",
+					sort: null,
+					d: "",
+					h: "",
+					m: "",
+					s: "",
+					prepareTime: "",
+					disassemblyTime: "",
+					transportTime: "",
+					programId: "",
+					programName: "",  //鍔犲伐椤哄簭
+					bagId: "",  //宸ュ叿鍖�
+					bagName: "",
+					isSelectProgramFiles: false,
 					test0: "",
 					test: "",
 					num: null,
 					box: false
 				},
 				workmanshipRules: {
-
+					sort: [{ required: true, message: '璇烽�夋嫨 宸ュ簭椤哄簭' }],
 				},
 			}
 		},
 		mounted() {
+			this.getToolingTree();  //澶瑰叿缁則ree
+			this.getCategoryTree();  //鍒�鍏风被鍨�
+			this.getCateBag();  //宸ヨ壓鍖�
+			this.getNumberAndName();  //宸ュ簭缂栧彿鍜屽悕绉�
+			this.getCatalogueTree();  //鍔犲伐绋嬪簭
 		},
 		methods: {
-			parentIdChange(val) {
+			craftSave() {  //淇濆瓨
+				console.log(this.workmanshipForm)
+			},
+			processChange(val) {
+				if(val) {
+					this.processCodeList.forEach(item=> {
+						if(val == item.id) {
+							console.log(item)
+							this.workmanshipForm.processId = item.id;
+							this.workmanshipForm.processCode = item.code;
+							this.workmanshipForm.processName = item.name;
+							this.workmanshipForm.processTypeName = item.typeName;
+						}
+					})
+				}
+			},
+			getCatalogueTree() {  //鍔犲伐绋嬪簭
+				this.$HTTP.get("/api/blade-dnc/dnc-process-catalogue/art-tree").then(res=> {
+					if(res.code == 200) {
+						function ea(data) {
+							data.forEach(item=> {
+								if(item.children.length!=0) {
+									ea(item.children);
+								}
+								item.disabled = true;
+							})
+						}
+						ea(res.data);
+						this.programIdData = res.data;
+					}
+				})
+			},
+			getNumberAndName() {  //宸ュ簭缂栧彿鍜屽悕绉�
+				this.$HTTP.get("/api/blade-cps/process/page?current=1&size=-1&status=1").then(res=> {
+					if(res.code == 200) {
+						this.processCodeList = res.data.records;
+						this.processNameList = res.data.records;
+						console.log(res.data);
+					}
+				})
+			},
+			getCateBag() { //宸ヨ壓鍖�
+				this.$HTTP.get("/api/blade-dnc/dnc-process-catalogue/cate-art-bag-tree").then(res=> {
+					if(res.code == 200) {
+						function ea(data) {
+							data.forEach(item=> {
+								if(item.children) {
+									ea(item.children);
+								}
+								if(item.parentId <= 0) {
+									item.disabled = true;
+								}
+							})
+						}
+						ea(res.data);
+						this.bagIdData = res.data;
+					}
+				})
+			},
+			getCategoryTree() {  //鍒�鍏风被鍨�
+				this.$HTTP.get("/api/blade-tool/tool-category/tree").then(res=> {
+					if(res.code == 200) {
+						this.typeDQList = res.data;
+					}
+				})
+			},
+			getToolingTree() {
+				var obj = {
+					groupCategory: 1,
+					groupType: "group_fixture"
+				}
+				this.$HTTP.post("/api/blade-cps/tray/tooling-tree",obj).then(res=> {
+					if(res.code == 200) {
+						this.fixturesData = res.data;
+					}
+				})
+			},
+			programIdChange() {
+
+			},
+			fixturesChange() {
+
+			},
+			bagIdChange(val) {
 				
 			},
 			table_edit() {

--
Gitblit v1.9.3