From fe25b9d9dc98187a0b885631bc39dfd5daa15163 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期四, 20 十一月 2025 17:26:04 +0800
Subject: [PATCH] 工位改为默认查询所有状态

---
 src/views/console/workstation/index.vue |  224 +++++++++++++++++++++++++++----------------------------
 1 files changed, 110 insertions(+), 114 deletions(-)

diff --git a/src/views/console/workstation/index.vue b/src/views/console/workstation/index.vue
index 0f68a77..d7ad368 100644
--- a/src/views/console/workstation/index.vue
+++ b/src/views/console/workstation/index.vue
@@ -9,7 +9,7 @@
 								<el-main class="nopadding">
 									<el-tree :expand-on-click-node="false" ref="group" class="menu" node-key="id"
 										:data="group" :current-node-key="treeCheckKey" :highlight-current="true"
-										:check-on-click-node="true" :default-expanded-keys="[1]"
+										:check-on-click-node="true" :default-expanded-keys="['1']"
 										:render-content="renderContent" @node-click="groupClick1"></el-tree>
 								</el-main>
 							</el-container>
@@ -48,7 +48,16 @@
 										<el-table-column type="selection" width="50"></el-table-column>
 										<el-table-column label="宸ヤ綅缂栧彿" prop="code" width="120"></el-table-column>
 										<el-table-column label="宸ヤ綅鍚嶇О" prop="name" width="120"></el-table-column>
-										<el-table-column label="宸ヤ綅绫诲瀷" prop="type" width="120"></el-table-column>
+										<el-table-column label="宸ヤ綅绫诲瀷" prop="type" width="120">
+											<template #default="scope">
+												<span>{{ scope.row.type == '0' ? '鏈哄櫒' : '浜哄伐' }}</span>
+											</template>
+										</el-table-column>
+										<el-table-column label="鐘舵��" prop="status" width="70">
+											<template #default="scope">
+												<span>{{ scope.row.status == 0 ? '鍋滅敤' : '鍚敤' }}</span>
+											</template>
+										</el-table-column>
 										<el-table-column label="宸ヤ綅鏃ュ巻" prop="calendarName" width="120"></el-table-column>
 										<el-table-column label="鎿嶄綔" fixed="right" align="right" width="160">
 											<template #default="scope">
@@ -84,7 +93,8 @@
 											<p class="preview-title">宸ヤ綅淇℃伅</p>
 											<div class="preview-content">
 												<div class="img">
-													<img v-if="!previewData.avatar" :src="machinePng" alt="">
+													<img style="width: 148px;height: 148px;" v-if="!previewData.avatar"
+														:src="machinePng" alt="">
 													<scUpload v-else disabled v-model="previewData.avatar" title="宸ヤ綅鍥剧墖">
 													</scUpload>
 												</div>
@@ -124,87 +134,37 @@
 																<el-col :span="8">
 																	{{ basic.machineBrand }}
 																</el-col>
-																<el-col :span="4">
+																<!-- <el-col :span="4">
 																	椹卞姩鍚嶇О
 																</el-col>
 																<el-col :span="8">
 																	{{ basic.typeName }}
-																</el-col>
+																</el-col> -->
 															</el-row>
 														</el-main>
 													</el-container>
 													<el-container>
-														<el-header>
+														<el-header style="justify-content: flex-start;">
 															<h2>閲囬泦淇℃伅</h2>
-															<el-button v-show="list.length > 0"
+															<!-- <el-button v-show="list.length > 0"
 																@click="() => { editFlag = !editFlag; showTable = !editFlag }"
 																style="margin-left: auto;" text type="primary"
-																size="small">{{ editFlag ? '鍙栨秷' : '閰嶇疆宸ヤ綅閲囬泦' }}</el-button>
+																size="small">{{ editFlag ? '鍙栨秷' : '閰嶇疆宸ヤ綅閲囬泦'
+																}}</el-button>
 															<el-button v-show="editFlag" @click="saveInfo" text
-																type="primary" size="small">淇濆瓨</el-button>
-															<el-button text type="primary" size="small"
-																@click="editDMP">淇敼DMP閰嶇疆</el-button>
+																type="primary" size="small">淇濆瓨</el-button> -->
+															<!-- <el-button text type="primary" size="small"
+																@click="editDMP">淇敼DMP閰嶇疆</el-button> -->
+															<el-button @click="getExport" style="margin-left: 12px" text
+																type="primary" size="small">瀵煎嚭</el-button>
+															<el-button @click="editCollection" text type="primary"
+																style="margin-left: 0px;" size="small">鏁版嵁鐐圭紪杈�</el-button>
+
 														</el-header>
 														<el-main>
-															<el-table :data="list" height="200px"
-																@selection-change="handleSelectionChange">
-																<el-table-column type="selection" width="55"
-																	v-if="editFlag" />
-																<el-table-column label="閲囬泦鍙橀噺鍚嶇О" prop="name"
-																	width="120" />
-																<el-table-column label="宸ヤ綅鍙橀噺鍚嶇О" prop="dataItem"
-																	width="120">
-																	<template #default="scope">
-																		<el-input :disabled="!editFlag"
-																			v-model="scope.row.dataItem"></el-input>
-																	</template>
-																</el-table-column>
-																<el-table-column label="鏁版嵁鏍囩" prop="description"
-																	width="150">
-																	<template #default="scope">
-																		<el-select :disabled="!editFlag"
-																			v-model="scope.row.description">
-																			<el-option
-																				v-for="item in workstation_param_type"
-																				:key="item.dictKey"
-																				:label="item.dictValue"
-																				:value="item.dictKey - 0" />
-																		</el-select>
-																		<!-- {{ dmp_data_type.find(v => v.dictKey == scope.row.wcsDataType)?.dictValue }} -->
-																	</template>
-																</el-table-column>
-																<el-table-column label="鏁版嵁绫诲埆" prop="wcsDataType"
-																	width="150">
-																	<template #default="scope">
-																		<el-select disabled
-																			v-model="scope.row.wcsDataType">
-																			<el-option v-for="item in dmp_data_type"
-																				:key="item.dictKey"
-																				:label="item.dictValue"
-																				:value="item.dictKey - 0" />
-																		</el-select>
-																		<!-- {{ dmp_data_type.find(v => v.dictKey == scope.row.wcsDataType)?.dictValue }} -->
-																	</template>
-																</el-table-column>
-																<el-table-column label="澶у睆" prop="bigScreen">
-																	<template #default="scope">
-																		<el-checkbox :disabled="!editFlag"
-																			v-model="scope.row.bigScreen" />
-																	</template>
-																</el-table-column>
-																<el-table-column label="瀹炴椂鏁版嵁" prop="realTimeData">
-																	<template #default="scope">
-																		<el-checkbox :disabled="!editFlag"
-																			v-model="scope.row.realTimeData" />
-																	</template>
-																</el-table-column>
-																<el-table-column label="杩囩▼鍙傛暟" prop="processParameter">
-																	<template #default="scope">
-																		<el-checkbox :disabled="!editFlag"
-																			v-model="scope.row.processParameter" />
-																	</template>
-																</el-table-column>
-															</el-table>
+															<!-- <el-table :data="list" height="200px">
+															</el-table> -->
+															<CollTable ref="collTable" :info="previewData"></CollTable>
 														</el-main>
 													</el-container>
 												</el-tab-pane>
@@ -222,7 +182,7 @@
 														<el-col :span="8">
 															{{ info.properties }}
 														</el-col>
-														<el-col :span="4">
+														<!-- <el-col :span="4">
 															绋嬪簭浼犺緭鏂瑰紡
 														</el-col>
 														<el-col :span="8">
@@ -236,7 +196,7 @@
 														</el-col>
 														<el-col :span="4">
 															宸ヤ綔鍙�
-														</el-col>
+														</el-col> -->
 														<el-col :span="8">
 															<ul class="workbench">
 																<li v-for="item in workbenchVOList" :key="item.sort">
@@ -260,26 +220,26 @@
 					<el-container>
 						<el-aside width="200px" v-loading="showGrouploading">
 							<el-container>
-								<el-main class="nopadding">
+								<el-main class="nopadding" style="overflow: hidden;">
 									<el-tree ref="group" class="menu" node-key="id" :data="group"
 										:current-node-key="treeCheckKey" :highlight-current="true"
 										:expand-on-click-node="false" :check-on-click-node="true"
-										:default-expanded-keys="[1]" :render-content="renderContent"
+										:default-expanded-keys="['1']" :render-content="renderContent"
 										@node-click="groupClick"></el-tree>
 								</el-main>
 							</el-container>
 						</el-aside>
 						<el-container>
 							<el-main class="" v-show="addGroupShow">
-								<el-form v-show="treeCheckedNode.id == 1" :model="form" :rules="rules" ref="dialogForm"
+								<el-form v-if="treeCheckedNode.id == 1" :model="form" :rules="rules" ref="dialogForm"
 									label-width="200px" label-position="left">
-									<el-form-item label="浜х嚎鏍囩" prop="groupTag">
+									<!-- <el-form-item label="浜х嚎鏍囩" prop="groupTag">
 										<el-select v-model="form.groupTag" clearable placeholder="浜х嚎鏍囩"
 											style="width: 240px">
 											<el-option v-for="item in beltline_type" :key="item.dictKey"
 												:label="item.dictValue" :value="item.dictKey" />
 										</el-select>
-									</el-form-item>
+									</el-form-item> -->
 									<el-form-item label="浜х嚎鍚嶇О" prop="name">
 										<el-input style="width: 240px" v-model="form.name" clearable
 											placeholder="浜х嚎鍚嶇О"></el-input>
@@ -293,8 +253,8 @@
 									</el-form-item>
 								</el-form>
 								<el-form
-									v-show="group_tag.map(item => item.dictKey).includes(treeCheckedNode.groupTag) || beltline_type.map(item => item.dictKey).includes(treeCheckedNode.groupTag) || treeCheckedNode.id == 101"
-									:model="form" :rules="rules" ref="dialogForm" label-width="200px"
+									v-if="group_tag.map(item => item.dictKey).includes(treeCheckedNode.groupTag) || beltline_type.map(item => item.dictKey).includes(treeCheckedNode.groupTag) || treeCheckedNode.id == 101"
+									:model="form" :rules="rules" ref="dialogForm1" label-width="200px"
 									label-position="left">
 									<el-form-item label="宸ヤ綅缁勬爣绛�" prop="groupTag">
 										<el-select v-model="form.groupTag" clearable placeholder="宸ヤ綅缁勬爣绛�"
@@ -319,9 +279,16 @@
 							<el-header v-show="!addGroupShow">
 								<div class="left-panel">
 									<el-button @click="addChild" type="primary" plain>鏂板涓嬬骇</el-button>
-									<el-button @click="deleteWorkGroup"
+									<el-popconfirm width="220" cancel-button-text="鍙栨秷" confirm-button-text="鍒犻櫎"
+										title="鍒犻櫎浼氬皢宸ヤ綅缁勪笅鐨勫伐浣嶇Щ鍔ㄥ埌榛樿缁勪腑锛岃纭鏄惁鍒犻櫎锛�" @confirm="deleteWorkGroup">
+										<template #reference>
+											<el-button v-show="!['1', '101'].includes(treeCheckedNode.id)" type="danger"
+												plain>鍒犻櫎</el-button>
+										</template>
+									</el-popconfirm>
+									<!-- <el-button @click="deleteWorkGroup"
 										v-show="!['1', '101'].includes(treeCheckedNode.id)" type="danger"
-										plain>鍒犻櫎</el-button>
+										plain>鍒犻櫎</el-button> -->
 								</div>
 							</el-header>
 							<el-main class="" v-show="!addGroupShow">
@@ -331,7 +298,7 @@
 									<li>澶囨敞: {{ treeCheckedNode.remark }}</li>
 								</ul>
 								<el-form
-									v-show="beltline_type.map(item => item.dictKey).includes(treeCheckedNode.groupTag)"
+									v-if="beltline_type.map(item => item.dictKey).includes(treeCheckedNode.groupTag)"
 									:model="form" :rules="rules" ref="dialogForm" label-width="200px"
 									label-position="left">
 									<el-form-item label="浜х嚎鏍囩" prop="groupTag">
@@ -353,7 +320,7 @@
 											placeholder="澶囨敞"></el-input>
 									</el-form-item>
 								</el-form>
-								<el-form v-show="group_tag.map(item => item.dictKey).includes(treeCheckedNode.groupTag)"
+								<el-form v-if="group_tag.map(item => item.dictKey).includes(treeCheckedNode.groupTag)"
 									:model="form" :rules="rules" ref="dialogForm" label-width="200px"
 									label-position="left">
 									<el-form-item label="宸ヤ綅缁勬爣绛�" prop="groupTag">
@@ -387,17 +354,22 @@
 			</el-tabs>
 		</el-card>
 		<Dialog ref="dialog" @success="success" :option="{ types, status, group }"></Dialog>
+		<CollDialog ref="CollDialog" @success="successColl" :option="{ previewData }"></CollDialog>
 	</el-main>
 </template>
 
 <script>
 import pmsPng from '@/assets/pms.png'
 import Dialog from './Dialog.vue'
-import machinePng from '@/assets/machine.png'
+import CollDialog from './CollDialog.vue'
+import CollTable from './CollTable.vue'
+import machinePng from '@/assets/machine1.jpg'
 export default {
 	name: 'system',
 	components: {
-		Dialog
+		Dialog,
+		CollDialog,
+		CollTable
 	},
 	data() {
 		return {
@@ -413,7 +385,7 @@
 			params: {},
 			keyWord: '',
 			type: '',
-			statu: 1,
+			statu: undefined,
 			types: [
 				{
 					label: '鏈哄櫒',
@@ -437,7 +409,7 @@
 			previewData: {},
 			// --------
 			form: {
-				groupTag: '',
+				groupTag: 'beltline',
 				name: '',
 				sort: '',
 				remark: ''
@@ -477,7 +449,6 @@
 			handler(val) {
 				this.queryList().then(() => {
 					if (val == 1) {
-						console.log('>>>>>>>>>>>>>>', this.treeCheckedNode)
 						this.apiObj = this.$API.workstation.getList
 						this.params = {
 							groupId: this.treeCheckedNode.id,
@@ -506,8 +477,24 @@
 		this.queryList()
 	},
 	methods: {
+		// 鏁版嵁鐐瑰鍑�
+		getExport() {
+			this.$HTTP.get(`/api/smis/workstation/export-dp?` + this.$TOOL.qsStringify({
+				workstationId: this.previewData.id
+			})).then(res => {
+				if (res.code == 200) {
+					this.$TOOL.downFile(res.data.link,res.data.originalName);
+				}
+			})
+		},
+		// 鏁版嵁鐐圭紪杈�
+		editCollection() {
+			this.$refs.CollDialog.open('edit', this.previewData)
+		},
+		successColl() {
+			this.$refs.collTable.refresh()
+		},
 		handleSelectionChange(val) {
-			console.log(val)
 			val.forEach(v => {
 				v.bigScreen = true
 				v.realTimeData = true
@@ -515,7 +502,6 @@
 			})
 			this.list.forEach(v => {
 				if (val.filter(item => v.id === item.id).length == 0) {
-					console.log(v)
 					v.bigScreen = false
 					v.realTimeData = false
 					v.processParameter = false
@@ -574,9 +560,9 @@
 						this.treeCheckedNode = parent
 						this.treeCheckKey = parent.id
 					} else {
-						let parent = res.data.filter(item => item.id == this.treeCheckedNode.id)[0]
-						this.treeCheckedNode = parent
-						this.treeCheckKey = parent.id
+						let parent = res.data.filter(item => item.parentId == 0)[0]
+						parent && (this.treeCheckedNode = parent)
+						parent && (this.treeCheckKey = parent.id)
 					}
 					// })
 
@@ -618,13 +604,11 @@
 					groupCategory: this.treeCheckedNode.groupCategory
 				}, this.form)
 				return this.$API.workstation.saveWorkstationGroup.post(data).then(res => {
-					console.log(res)
 					this.queryList(true)
 				})
 			}
 			let data = Object.assign({}, this.treeCheckedNode, this.form)
 			this.$API.workstation.saveWorkstationGroup.put(data).then(res => {
-				console.log(res)
 				this.queryList(true)
 			})
 		},
@@ -637,7 +621,13 @@
 		},
 		addChild() {
 			this.addGroupShow = true
-			this.$refs.dialogForm.resetFields()
+			this.$nextTick(() => {
+				Object.keys(this.form).forEach(key => {
+					this.form[key] = ''
+				})
+				// this.$refs.dialogForm.resetFields()
+			})
+			
 		},
 		groupClick(node) {
 			this.treeCheckedNode = node
@@ -647,7 +637,6 @@
 		},
 		rowClick(data) {
 			this.previewData = data
-			console.log(data, '>>>>>>>>>>>')
 			if (!data.id) {
 				Object.keys(this.basic).forEach(key => {
 					this.basic[key] = '-'
@@ -659,21 +648,29 @@
 				this.workbenchVOList = []
 				return
 			}
-			this.$HTTP.get(`/api/blade-cps/workstation/listDmpVariablesByWorkstationId?workstationId=${data.id}`).then(res => {
-				this.list = res?.data?.dmpVariablesVOList
-				Object.keys(this.basic).forEach(key => {
-					this.basic[key] = res?.data?.[key] || '-'
-				})
-			})
-			this.$HTTP.get(`/api/blade-cps/workstation-workbench/listWorkbench?workstationId=${data.id}`).then(res => {
-				Object.keys(this.info).forEach(key => {
-					this.info[key] = res?.data?.[key] || '-'
-				})
-				this.workbenchVOList = res?.data?.workstationList || []
-			})
+			console.log(data, '>>>>>>>>>>>')
+
+
+			// data.machineId && this.$HTTP.get(`/api/smis/workstation/listDmpVariablesByMachineId?machineId=${data.machineId}`).then(res => {
+			// 	this.list = res?.data
+			// 	// Object.keys(this.basic).forEach(key => {
+			// 	// 	this.basic[key] = res?.data?.[key] || '-'
+			// 	// })
+			// })
+			// this.$HTTP.get(`/api/smis/workstation/listDmpVariablesByWorkstationId?workstationId=${data.id}`).then(res => {
+			// 	// this.list = res?.data?.dmpVariablesVOList
+			// 	Object.keys(this.basic).forEach(key => {
+			// 		this.basic[key] = res?.data?.[key] || '-'
+			// 	})
+			// })
+			// this.$HTTP.get(`/api/smis/workstation-workbench/listWorkbench?workstationId=${data.id}`).then(res => {
+			// 	Object.keys(this.info).forEach(key => {
+			// 		this.info[key] = res?.data?.[key] || '-'
+			// 	})
+			// 	this.workbenchVOList = res?.data?.workstationList || []
+			// })
 		},
 		groupClick1(data) {
-			console.log('-------', data)
 			var params = {
 				groupId: data.id,
 				keyWord: this.keyWord,
@@ -686,7 +683,6 @@
 		dataChange(res, data) {
 
 			if (data.length > 0) {
-				console.log(data[0], '>>>>>>>>')
 				this.$refs.table.setCurrentRow(data[0])
 				this.previewData = data[0]
 				this.rowClick(data[0])
@@ -703,7 +699,7 @@
 			this.$refs.dialog.open('edit', row)
 		},
 		table_del(row, index, type) {
-			this.$HTTP.delete(`/api/blade-cps/workstation?type=0&workstationIds=${row.id}`).then(res => {
+			this.$HTTP.delete(`/api/smis/workstation?type=0&workstationIds=${row.id}`).then(res => {
 				this.search()
 			})
 		},
@@ -711,12 +707,12 @@
 			this.selection = selection
 		},
 		batchDel() {
-			this.$HTTP.delete(`/api/blade-cps/workstation?type=0&workstationIds=${this.selection.map(item => item.id).join(',')}`).then(res => {
+			this.$HTTP.delete(`/api/smis/workstation?type=0&workstationIds=${this.selection.map(item => item.id).join(',')}`).then(res => {
 				this.search()
 			})
 		},
 		saveInfo() {
-			this.$HTTP.post('/api/blade-cps/workstation-wcs/save', this.workbenchVOList).then(res => {
+			this.$HTTP.post('/api/smis/workstation-wcs/save', this.workbenchVOList).then(res => {
 				this.editFlag = false
 				this.showTable = true
 			})

--
Gitblit v1.9.3