From 0aa4f9751aadb4abb3637bc74fb7f0b48dd7a23e Mon Sep 17 00:00:00 2001
From: lzhe <lzhe@example.com>
Date: 星期五, 08 十一月 2024 15:01:23 +0800
Subject: [PATCH] Merge branch 'new' of http://122.9.151.159:9090/r/smart-web into new
---
src/views/console/workstation/Dialog.vue | 163 ++++++++++++++++++++++++++++++++++-------------------
1 files changed, 104 insertions(+), 59 deletions(-)
diff --git a/src/views/console/workstation/Dialog.vue b/src/views/console/workstation/Dialog.vue
index 470b881..49df965 100644
--- a/src/views/console/workstation/Dialog.vue
+++ b/src/views/console/workstation/Dialog.vue
@@ -1,14 +1,15 @@
<template>
<el-dialog :title="titleMap[mode]" v-model="visible" :width="800" destroy-on-close @closed="$emit('closed')">
- <el-form :model="form" :rules="rules" :disabled="mode == 'show'" ref="dialogForm" label-width="120px"
- label-position="center">
+ <el-form v-if="visible" :model="form" :rules="rules" :disabled="mode == 'show'" ref="dialogForm"
+ label-width="120px" label-position="center">
<el-row>
<el-col :span="24" style="padding:12px 0;">
鍩虹淇℃伅
</el-col>
<el-col :span="12">
<el-form-item label="宸ヤ綅缂栧彿" prop="code">
- <el-input style="width: 240px" :disabled="form.id" v-model="form.code" placeholder="宸ヤ綅缂栧彿" clearable></el-input>
+ <el-input style="width: 240px" :disabled="!!form.id" v-model="form.code" placeholder="宸ヤ綅缂栧彿"
+ clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -18,7 +19,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="宸ヤ綅绫诲瀷" prop="type">
- <el-select v-model="form.type" style="width: 240px" :disabled="form.id">
+ <el-select v-model="form.type" style="width: 240px" :disabled="!!form.id">
<el-option v-for="item in options.types" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
@@ -26,13 +27,13 @@
</el-col>
<el-col :span="12">
<el-form-item label="鎵�灞炲伐浣嶇粍" prop="groupName">
- <el-tree-select @node-click="nodeClick" v-model="form.groupName" :data="options.group" :check-on-click-node="true"
- style="width: 240px" />
+ <el-tree-select @node-click="nodeClick" v-model="form.groupName" :data="options.group"
+ :check-on-click-node="true" style="width: 240px" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="鐘舵��" prop="status">
- <el-switch v-model="form.status" :active-value="1" :inactive-value="0"/>
+ <el-switch v-model="form.status" :active-value="1" :inactive-value="0" />
</el-form-item>
</el-col>
<el-col :span="24">
@@ -40,21 +41,42 @@
<scUpload v-model="form.avatar" title="宸ヤ綅鍥剧墖"></scUpload>
</el-form-item>
</el-col>
- <el-col :span="12">
+ <el-col :span="12" v-show="!form.id">
<el-form-item label="鐢熶骇鏃ュ巻" prop="calendarCode">
<el-select v-model="form.calendarCode" style="width: 240px">
<el-option v-for="item in options.calendarList" :key="item.id" :label="item.name"
- :value="item.id" />
+ :value="item.code" />
</el-select>
</el-form-item>
+ </el-col>
+ <!-- 淇敼鐨勬鏃ョ敓鏁� -->
+ <el-col :span="11" v-show="form.id">
+ <el-form-item label="鐢熶骇鏃ュ巻" prop="calendarCode">
+ <el-select v-model="form.calendarCodeWaiting" style="width: 240px">
+ <el-option v-for="item in options.calendarList" :key="item.id" :label="item.name"
+ :value="item.code" />
+ </el-select>
+ </el-form-item>
+
+ </el-col>
+ <el-col :span="1" v-show="form.id">
+ <div style="display: flex;align-items: center;height: 32px;margin-bottom: 18px;">
+ <el-tooltip class="box-item" effect="dark" content="淇敼鍚庣殑鏃ュ巻娆℃棩鐢熸晥" placement="top-start">
+ <el-icon>
+ <el-icon-warning-filled style="vertical-align: middle" />
+ </el-icon>
+ </el-tooltip>
+ </div>
+
</el-col>
<el-col :span="24" style="padding:12px 0;" v-if="form.type == 0">
鏈哄櫒淇℃伅
</el-col>
<el-col :span="12" v-if="form.type == 0 && !form.id">
- <el-form-item label="閫夋嫨鏈哄櫒" prop="linkWay" >
+ <el-form-item label="閫夋嫨鏈哄櫒" prop="linkWay">
<el-radio-group v-model="form.linkWay">
- <el-radio v-for="item in options.linkWays" :key="item.value" :label="item.value">{{item.label}}</el-radio>
+ <el-radio v-for="item in options.linkWays" :key="item.value" :label="item.value">{{
+ item.label }}</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
@@ -62,10 +84,12 @@
<!-- machineCode -->
<el-form-item label="鏈哄櫒缂栧彿" prop="machineId">
<!-- <el-input style="width: 240px" v-model="form.machineId" placeholder="鏈哄櫒缂栧彿" clearable></el-input> -->
- <el-select v-if="!form.id" v-model="form.machineId" style="width: 240px" @change="change" clear filterable>
- <el-option v-for="item in options.listnoband" :key="item.id" :label="item.machineName" :value="item.id"
- >
- {{ `${item?.machineCode}-${item?.machineName}-${item?.brand}` }}</el-option>
+ <el-select v-if="!form.id" v-model="form.machineId" style="width: 240px" @change="change" clear
+ filterable>
+ <el-option v-for="item in options.listnoband" :key="item.id" :label="item.machineName"
+ :value="item.id">
+ {{ `${item?.machineCode}-${item?.machineName}${item?.brand ? '-' + item.brand : ''}`
+ }}</el-option>
</el-select>
<el-input v-if="form.id" :disabled="form.id" v-model="form.machineName"></el-input>
</el-form-item>
@@ -84,16 +108,16 @@
<el-col :span="12">
<el-form-item label="鍔犲伐灞炴��" prop="properties">
<el-select v-model="form.properties" style="width: 240px">
- <el-option v-for="item in options.machining_type" :key="item.dictKey" :label="item.dictValue"
- :value="item.dictKey" />
+ <el-option v-for="item in options.machining_type" :key="item.dictKey"
+ :label="item.dictValue" :value="item.dictKey - 0" />
</el-select>
</el-form-item>
</el-col>
- <el-col :span="12">
+ <!-- <el-col :span="12">
<el-form-item label="绋嬪簭浼犺緭鏂瑰紡" prop="transmissionMethod">
<el-select v-model="form.transmissionMethod" style="width: 240px">
- <el-option label="FTP" :value="1" />
- <el-option label="涓插彛" :value="2" />
+ <el-option label="FTP" :value="1" />
+ <el-option label="涓插彛" :value="2" />
</el-select>
</el-form-item>
</el-col>
@@ -104,7 +128,7 @@
:value="item.value" />
</el-select>
</el-form-item>
- </el-col>
+ </el-col> -->
<el-col :span="12" v-if="form.ftpDirectoryType == 1">
<el-form-item label="鍏宠仈鐩綍" prop="directoryId">
<el-select v-model="form.directoryId" style="width: 240px">
@@ -113,29 +137,28 @@
</el-select>
</el-form-item>
</el-col>
- <el-col :span="4">
- <!-- <el-form-item label="宸ヤ綔鍙�" prop="workbenchVOList"> -->
-
- <!-- </el-form-item> -->
+ <!-- <el-col :span="4">
<span>宸ヤ綔鍙�</span>
-
+
</el-col>
<el-col style="margin-bottom: 14px;">
<ul class="workbranch">
<li v-for="item in form.workbenchVOList">
- <span>{{ item.sort}}</span>
+ <span>{{ item.sort }}</span>
<el-input v-model="item.name" style="width: 200px"></el-input>
</li>
</ul>
<el-button style="margin-left: 50px;margin-top: 8px" @click="addWork">娣诲姞宸ヤ綔鍙�</el-button>
- </el-col>
+ </el-col> -->
<el-col :span="12">
- <el-form-item label="鏁版嵁鏉冮檺" prop="createDept">
- <el-tree-select clearable @node-click="nodeClickTree" v-model="form.createDept" :data="tree" :check-on-click-node="true"
- style="width: 240px">
- <template #default="{ data: { title } }">
- {{ title }}</template
- >
+ <el-form-item label="鎵�灞為儴闂�" prop="createDept">
+ <el-tree-select :props="{
+ label: 'title',
+ id: 'id',
+ }" clearable @node-click="nodeClickTree" v-model="form.createDept" :data="tree"
+ :check-on-click-node="true" style="width: 240px">
+ <!-- <template #default="{ data: { title } }">
+ {{ title }}</template> -->
</el-tree-select>
</el-form-item>
</el-col>
@@ -196,6 +219,7 @@
status: '',
avatar: '',
calendarCode: '',
+ calendarCodeWaiting: '',
linkWay: '',
machineId: '',
machineCode: '',
@@ -224,13 +248,13 @@
status: [
{ required: true, message: '蹇呭~' }
],
- linkWay:[
+ linkWay: [
{ required: true, message: '蹇呭~' }
],
- machineId:[
+ machineId: [
{ required: true, message: '蹇呭~' }
],
- directoryId:[
+ directoryId: [
{ required: true, message: '蹇呭~' }
],
},
@@ -291,21 +315,25 @@
methods: {
//鏄剧ず
open(mode = 'add', params) {
+ this.isSaveing = false;
this.mode = mode;
this.visible = true;
-
+ console.log('---------', params)
if (params) {
Object.keys(this.form).forEach(key => {
this.form[key] = params[key]
})
- this.$HTTP.get(`/api/blade-cps/workstation/get?workstationId=${params.id}`).then(res => {
- this.form =res?.data
- this.$HTTP.get(`/api/blade-cps/workstation-workbench/listWorkbench?workstationId=${params.id}`).then(res => {
- this.form.workbenchVOList =res?.data?.workstationList || []
+
+ this.$HTTP.get(`/api/smis/workstation/get?workstationId=${params.id}`).then(res => {
+ this.form = res?.data
+ if (this.form.calendarCode && !this.form.calendarCodeWaiting) this.form.calendarCodeWaiting = this.form.calendarCode
+ this.$HTTP.get(`/api/smis/workstation-workbench/listWorkbench?workstationId=${params.id}`).then(res => {
+ this.form.workbenchVOList = res?.data?.workstationList || []
})
})
- }else {
+ } else {
this.form.id = ''
+ this.form.workbenchVOList = []
Object.keys(this.form).forEach(key => {
this.form[key] = ''
})
@@ -314,10 +342,22 @@
},
//琛ㄥ崟鎻愪氦鏂规硶
submit() {
+ if (!this.form.workbenchVOList) {
+ this.form.workbenchVOList = []
+ }
+ if (this.mode === 'add' && this.form.linkWay === 1) {
+ this.form.machineId
+ this.form.machineCode = this.form.code
+ this.form.machineName = this.form.name
+ }
this.$refs.dialogForm.validate(async (valid) => {
if (valid) {
this.isSaveing = true;
- var res = await this.$API.workstation.add.post(this.form);
+ try {
+ var res = await this.$API.workstation.add.post(this.form);
+ } catch (error) {
+ this.isSaveing = false;
+ }
this.isSaveing = false;
if (res.code == 200) {
this.$emit('success', this.form, this.mode)
@@ -342,14 +382,14 @@
//鍙互鍜屼笂闈竴鏍峰崟涓敞鍏ワ紝涔熷彲浠ュ儚涓嬮潰涓�鏍风洿鎺ュ悎骞惰繘鍘�
//Object.assign(this.form, data)
},
- change (id) {
- let row = this.options.listnoband.find(v=>v.id ==id)
- if (!row) {
+ change(id) {
+ let row = this.options.listnoband.find(v => v.id == id)
+ if (!row) {
this.form.machineCode = ''
this.form.machineId = ''
this.form.machineName = ''
- }else {
+ } else {
this.form.machineCode = row.machineCode
this.form.machineId = row.id
this.form.machineName = row.machineName
@@ -359,7 +399,7 @@
})
console.log(row)
},
- nodeClick (node) {
+ nodeClick(node) {
console.log(node)
if (node.parentId == 0) return
this.$nextTick(() => {
@@ -367,12 +407,15 @@
this.form.groupName = node.name
})
},
- nodeClickTree (node) {
+ nodeClickTree(node) {
this.$nextTick(() => {
this.form.createDept = node.id
})
},
- addWork () {
+ addWork() {
+ if (!this.form.workbenchVOList) {
+ this.form.workbenchVOList = []
+ }
this.form.workbenchVOList.push({
sort: this.form.workbenchVOList.length + 1,
name: ''
@@ -386,20 +429,22 @@
.workbranch {
list-style: none;
padding-left: 50px;
+
li {
margin-top: 8px;
+
span {
display: inline-block;
width: 25px;
- height: 25px;
- line-height: 25px;
- text-align: center;
- border-radius: 50%;
- background: #ccc;
- margin-right: 8px;
+ height: 25px;
+ line-height: 25px;
+ text-align: center;
+ border-radius: 50%;
+ background: #ccc;
+ margin-right: 8px;
}
-
-
+
+
}
}
</style>
--
Gitblit v1.9.3