From 103fd0aa7288b58cf250a55da1cc6c659a2e113e Mon Sep 17 00:00:00 2001
From: gaoshp <291585735@qq.com>
Date: 星期三, 02 十月 2024 22:04:41 +0800
Subject: [PATCH] 日历及其他问题修改

---
 src/views/console/base/Add.vue           |  196 +++++++++++++++++++++++---------
 public/index.html                        |    1 
 src/views/console/workstation/Dialog.vue |    4 
 src/views/tpm/machine/Dialog.vue         |    4 
 public/seedrandom.min.js                 |    1 
 src/utils/color.js                       |   25 ++++
 src/views/console/system/collection.vue  |   19 +++
 src/views/console/base/CalenderTab.vue   |   69 ++++++++---
 8 files changed, 240 insertions(+), 79 deletions(-)

diff --git a/public/index.html b/public/index.html
index 3101df9..543cf48 100644
--- a/public/index.html
+++ b/public/index.html
@@ -9,6 +9,7 @@
 		<script type="text/javascript">
 			document.write("<script src='config.js?"+new Date().getTime()+"'><\/script>");
 		</script>
+		<script src="./seedrandom.min.js"></script>
 	</head>
 	<body>
 		<noscript>
diff --git a/public/seedrandom.min.js b/public/seedrandom.min.js
new file mode 100644
index 0000000..56e1afc
--- /dev/null
+++ b/public/seedrandom.min.js
@@ -0,0 +1 @@
+!function(f,a,c){var s,l=256,p="random",d=c.pow(l,6),g=c.pow(2,52),y=2*g,h=l-1;function n(n,t,r){function e(){for(var n=u.g(6),t=d,r=0;n<g;)n=(n+r)*l,t*=l,r=u.g(1);for(;y<=n;)n/=2,t/=2,r>>>=1;return(n+r)/t}var o=[],i=j(function n(t,r){var e,o=[],i=typeof t;if(r&&"object"==i)for(e in t)try{o.push(n(t[e],r-1))}catch(n){}return o.length?o:"string"==i?t:t+"\0"}((t=1==t?{entropy:!0}:t||{}).entropy?[n,S(a)]:null==n?function(){try{var n;return s&&(n=s.randomBytes)?n=n(l):(n=new Uint8Array(l),(f.crypto||f.msCrypto).getRandomValues(n)),S(n)}catch(n){var t=f.navigator,r=t&&t.plugins;return[+new Date,f,r,f.screen,S(a)]}}():n,3),o),u=new m(o);return e.int32=function(){return 0|u.g(4)},e.quick=function(){return u.g(4)/4294967296},e.double=e,j(S(u.S),a),(t.pass||r||function(n,t,r,e){return e&&(e.S&&v(e,u),n.state=function(){return v(u,{})}),r?(c[p]=n,t):n})(e,i,"global"in t?t.global:this==c,t.state)}function m(n){var t,r=n.length,u=this,e=0,o=u.i=u.j=0,i=u.S=[];for(r||(n=[r++]);e<l;)i[e]=e++;for(e=0;e<l;e++)i[e]=i[o=h&o+n[e%r]+(t=i[e])],i[o]=t;(u.g=function(n){for(var t,r=0,e=u.i,o=u.j,i=u.S;n--;)t=i[e=h&e+1],r=r*l+i[h&(i[e]=i[o=h&o+t])+(i[o]=t)];return u.i=e,u.j=o,r})(l)}function v(n,t){return t.i=n.i,t.j=n.j,t.S=n.S.slice(),t}function j(n,t){for(var r,e=n+"",o=0;o<e.length;)t[h&o]=h&(r^=19*t[h&o])+e.charCodeAt(o++);return S(t)}function S(n){return String.fromCharCode.apply(0,n)}if(j(c.random(),a),"object"==typeof module&&module.exports){module.exports=n;try{s=require("crypto")}catch(n){}}else"function"==typeof define&&define.amd?define(function(){return n}):c["seed"+p]=n}("undefined"!=typeof self?self:this,[],Math);
\ No newline at end of file
diff --git a/src/utils/color.js b/src/utils/color.js
index 295d011..e5e396c 100644
--- a/src/utils/color.js
+++ b/src/utils/color.js
@@ -1,3 +1,10 @@
+/*
+ * @Date: 2024-03-23 09:49:06
+ * @LastEditors: gaoshp
+ * @LastEditTime: 2024-10-01 23:40:39
+ * @FilePath: /cps-web/src/utils/color.js
+ */
+import seedrandom from 'seedrandom'
 export default {
 	//hex棰滆壊杞瑀gb棰滆壊
 	HexToRgb(str) {
@@ -25,5 +32,23 @@
 		var rgbc = this.HexToRgb(color)
 		for (var i = 0; i < 3; i++) rgbc[i] = Math.floor((255 - rgbc[i]) * level + rgbc[i])
 		return this.RgbToHex(rgbc[0], rgbc[1], rgbc[2])
+	},
+	stringToColor(id) {
+		const cssColorNames = [
+			'yellow',
+			'red',
+			'orange',
+			'purple',
+			'brown',
+			'green'
+		];
+		const rng = new Math.seedrandom(id);
+
+		// 鐢熸垚涓�涓�0鍒�1涔嬮棿鐨勯殢鏈烘暟
+		const randomNumber = rng();
+
+		// 灏嗛殢鏈烘暟鏄犲皠鍒�140浠ュ唴鐨勬暣鏁拌寖鍥村唴
+		return cssColorNames[Math.floor(randomNumber * (cssColorNames.length - 1))];
+
 	}
 }
diff --git a/src/views/console/base/Add.vue b/src/views/console/base/Add.vue
index 7af35ce..196d6a2 100644
--- a/src/views/console/base/Add.vue
+++ b/src/views/console/base/Add.vue
@@ -1,7 +1,7 @@
 <!--
  * @Date: 2024-05-04 16:37:48
  * @LastEditors: gaoshp
- * @LastEditTime: 2024-10-01 20:21:11
+ * @LastEditTime: 2024-10-02 17:15:08
  * @FilePath: /cps-web/src/views/console/base/Add.vue
 -->
 <template>
@@ -13,17 +13,20 @@
                     <el-row>
                         <el-col :span="8">
                             <el-form-item label="鐢熶骇鏃ュ巻缂栧彿" prop="code">
-                                <el-input v-model="form.code" placeholder="璇疯緭鍏ョ敓浜ф棩鍘嗙紪鍙�" clearable></el-input>
+                                <el-input :disabled="disabled" v-model="form.code" placeholder="璇疯緭鍏ョ敓浜ф棩鍘嗙紪鍙�"
+                                    clearable></el-input>
                             </el-form-item>
                         </el-col>
                         <el-col :span="8">
                             <el-form-item label="鐢熶骇鏃ュ巻鍚嶇О" prop="name">
-                                <el-input v-model="form.name" placeholder="璇疯緭鍏ョ敓浜ф棩鍘嗗悕绉�" clearable></el-input>
+                                <el-input :disabled="disabled" v-model="form.name" placeholder="璇疯緭鍏ョ敓浜ф棩鍘嗗悕绉�"
+                                    clearable></el-input>
                             </el-form-item>
                         </el-col>
                         <el-col :span="8">
                             <el-form-item label="搴旂敤骞翠唤" prop="year">
-                                <el-select v-model="form.year" placeholder="" size="" @change="changeYear">
+                                <el-select :disabled="disabled" v-model="form.year" placeholder="" size=""
+                                    @change="changeYear">
                                     <el-option v-for="item in options" :key="item.value" :label="item.label"
                                         :value="item.value" />
                                 </el-select>
@@ -32,17 +35,17 @@
                         <el-col :span="8">
                             <el-form-item label="搴旂敤鏃ユ湡" prop="date">
                                 <el-date-picker v-model="form.date" type="daterange" value-format="YYYY-MM-DD"
-                                    start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" />
+                                    start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" @change="changeDate" />
                             </el-form-item>
                         </el-col>
                         <el-col :span="8" :offset="1">
-                            <el-button-group>
+                            <!-- <el-button-group>
                                 <el-button :type="activeBtn == 0 ? 'primary' : ''"
                                     @click="activeBtn = 0">鎸夎寰嬮�変腑鏃ユ湡</el-button>
                                 <el-button :type="activeBtn == 1 ? 'primary' : ''" @click="activeBtn = 1">
                                     鎸夐棿闅旈�変腑鏃ユ湡
                                 </el-button>
-                            </el-button-group>
+                            </el-button-group> -->
                         </el-col>
                         <el-col :offset="1">
                             <el-radio-group v-model="holiday">
@@ -116,6 +119,7 @@
 <script>
 import moment from 'moment'
 import { Calendar, DatePicker } from 'v-calendar';
+import color from '@/utils/color'
 export default {
     components: {
         Calendar,
@@ -127,10 +131,17 @@
             default: () => {
                 return []
             }
-        }
+        },
+        drawerInfo: {
+            type: Object,
+            default: () => {
+                return {}
+            }
+        },
     },
     data() {
         return {
+            disabled: false,
             modelId: '',
             isHighPriority: false,
             dateDTOList: [],
@@ -203,16 +214,6 @@
         checkboxGroup1() {
             this.setDay()
         },
-        dateDTOList(val) {
-            this.months.forEach(month => {
-                if (val.length > 0) {
-                    month.attributes[1].highlight = 'yellow'
-                } else {
-                    month.attributes[1].highlight = true
-                }
-
-            })
-        },
         'form.year'(val) {
             this.months = []
             let currentYear = moment(val, 'YYYY').format('YYYY') - 0
@@ -260,7 +261,6 @@
                     })
 
                 }
-                console.log(this.months, '?/')
             })
         },
         shiftList() {
@@ -268,23 +268,52 @@
         }
     },
     created() {
-
         this.init()
     },
     methods: {
         init() {
-            let len = 15
-            let currentYear = moment().format('YYYY') - 0
-            this.form.year = currentYear
+            if (!this.drawerInfo.id) {
+                let len = 15
+                let currentYear = moment().format('YYYY') - 0
+                this.form.year = currentYear
+                for (let i = 0; i < len; i++) {
+                    this.options.push({
+                        label: currentYear + i,
+                        value: currentYear + i
+                    })
+                }
+                this.form.date = [moment().format('YYYY-MM-DD'), moment(`${currentYear}-12-31`).format('YYYY-MM-DD')]
+            } else {
+                console.log('>>>>>>>>>>', this.drawerInfo)
+                this.disabled = true
+                this.form.code = this.drawerInfo.code
+                this.form.name = this.drawerInfo.name
+                this.form.year = moment(this.drawerInfo.calendarDayVOList[0].calendarDate, 'YYYY-MM-DD').format('YYYY') - 0
+                setTimeout(() => {
+                    let currentYear = moment().format('YYYY') - 0
+                    this.form.date = [`${currentYear}-01-01`, `${currentYear}-12-31`]
+                    if (currentYear == this.form.year) {
+                        this.form.date[0] = moment().format('YYYY-MM-DD')
+                    }
+                    [...new Set(this.drawerInfo.calendarDayVOList.map(v => v.modelId))].forEach(item => {
+                        let list = this.drawerInfo.calendarDayVOList.filter(v => v.modelId === item)
+                        let ext = {
+                            modelId: item,
+                            isHighPriority: list[0].isHighPriority,
+                        }
+                        console.log(list)
+                        this.setDayRange(list, ext)
+                    })
+                }, 1000)
 
-            for (let i = 0; i < len; i++) {
-                this.options.push({
-                    label: currentYear + i,
-                    value: currentYear + i
-                })
             }
-            this.form.date = [moment().format('YYYY-MM-DD'), moment(`${currentYear}-12-31`).format('YYYY-MM-DD')]
-            // console.log(this.form)
+        },
+        changeDate() {
+            if (this.checkboxGroup1.length > 0) {
+                this.setDay()
+            } else {
+
+            }
         },
         change(val) {
             this.checkboxGroup1 = []
@@ -296,12 +325,12 @@
             }
         },
         setDay() {
+            console.log('setDay1')
             let currentYear = moment(this.form.year, 'YYYY').format('YYYY') - 0
             this.months.forEach((item, i) => {
                 let start = moment(`${currentYear}-${i + 1}-01`)
                 let end = i == 11 ? moment(`${currentYear + 1}-${i + 1}-01`) : moment(`${currentYear}-${i + 2}-01`)
                 let dates = []
-                console.log(start.format('YYYY-MM-DD'), start.unix() >= moment(this.form.date[0]).unix() && start.unix() <= moment(this.form.date[1]).unix())
                 while (start.unix() < end.unix()) {
                     if (this.checkboxGroup1.includes(start.day()) && this.holiday === 0) {
                         this.pushDate(start) && dates.push(start.format('YYYY-MM-DD'))
@@ -317,8 +346,35 @@
                     start.add(1, 'd')
                 }
                 this.months[i].attributes[1].dates = dates
-                console.log(this.months, 'jieguo')
             })
+            console.log(this.months, 'rll')
+        },
+        setDayRange(list, ext) {
+            let currentYear = moment(this.form.year, 'YYYY').format('YYYY') - 0
+            this.months.forEach((item, i) => {
+                let start = moment(`${currentYear}-${i + 1}-01`)
+                let end = i == 11 ? moment(`${currentYear + 1}-${i + 1}-01`) : moment(`${currentYear}-${i + 2}-01`)
+                let dates = []
+                list.forEach(v => {
+                    if (moment(v.calendarDate).unix() >= start.unix() && moment(v.calendarDate).unix() < end.unix()) {
+                        dates.push(v)
+                    }
+                })
+                if (dates.length > 0) {
+                    this.months[i].attributes.push({
+                        dates: dates.map(v => v.calendarDate),
+                        ...ext,
+                        highlight: color.stringToColor(ext.modelId)
+                    })
+                    this.months[i].attributes[1] = {
+                        highlight: true,
+                        dates: []
+                    }
+                }
+
+
+            })
+            console.log(this.months, 'rll')
         },
         pushDate(start) {
             if (start.unix() >= moment(this.form.date[0]).unix() && start.unix() <= moment(this.form.date[1]).unix()) {
@@ -329,20 +385,17 @@
         dayclick(day, item) {
 
             let index = item.attributes[1].dates.findIndex(v => v === day.id)
-            console.log(index)
             if (index >= 0) {
                 item.attributes[1].dates.splice(index, 1)
             } else {
                 item.attributes[1].dates.push(day.id)
             }
-            console.log(index, item.attributes[1].dates)
         },
         plan() {
             if (!this.modelId) {
                 return this.$message.warning('璇烽�夋嫨鐝鏂规');
             }
             let dateDTOList = this.months.map(item => item.attributes[1].dates)
-            console.log(this.months, '>>>>>>>>>>', dateDTOList.flat(2))
             let list = dateDTOList.flat(2).map(v => {
                 return {
                     modelId: this.modelId,
@@ -351,8 +404,11 @@
                     ...this.setOffDay(v)
                 }
             })
-            console.log(list)
-            this.dateDTOList = list
+            let ext = {
+                modelId: this.modelId,
+                isHighPriority: this.isHighPriority ? 1 : 0,
+            }
+            this.setDayRange(list, ext)
         },
         setOffDay(time) {
             let { id: offDayId } = this.offDays.find(v => moment(time).unix() >= moment(v.startOffDay).unix() && moment(time).unix() <= moment(v.endOffDay).unix()) || {}
@@ -363,30 +419,62 @@
             }
         },
         planCancel() {
-            this.dateDTOList = []
+            this.months.forEach((item, i) => {
+                item.attributes = item.attributes.slice(0, 2)
+            })
         },
         save() {
+            let list = []
+            this.months.forEach(item => {
+                item.attributes.forEach((v, i) => {
+                    if (i > 1) {
+                        v.dates.forEach(child => {
+                            list.push({
+                                modelId: v.modelId,
+                                isHighPriority: v.isHighPriority,
+                                calendarDate: child,
+                                ...this.setOffDay(child)
+                            })
+                        })
+
+                    }
+                })
+            })
             this.$refs.dialogForm.validate(async (valid) => {
                 if (valid) {
-                    if (this.dateDTOList.length == 0) {
+                    if (list.length == 0) {
                         return this.$message.warning('鏈帓鐝�');
                     }
-                    let data = {
-                        codeRuleId: '',
-                        code: this.form.code,
-                        name: this.form.name,
-                        year: this.form.year,
-                        status: 1,
-                        dateDTOList: this.dateDTOList
-                    }
-                    this.$HTTP.post('/api/blade-cps/calendar', data).then(res => {
-                        if (res.code === 200) {
-                            this.$emit('success')
-                        } else {
-                            this.$message.warning(res.msg);
+                    if (!this.drawerInfo.id) {
+                        let data = {
+                            codeRuleId: '',
+                            code: this.form.code,
+                            name: this.form.name,
+                            year: this.form.year,
+                            status: 1,
+                            dateDTOList: list
                         }
-                    })
-                    console.log(this.form, this.dateDTOList)
+                        this.$HTTP.post('/api/blade-cps/calendar', data).then(res => {
+                            if (res.code === 200) {
+                                this.$emit('success')
+                            } else {
+                                this.$message.warning(res.msg);
+                            }
+                        })
+                    } else {
+                        let data = {
+                            id: this.drawerInfo.id,
+                            dateDTOList: list
+                        }
+                        this.$HTTP.put('/api/blade-cps/calendar', data).then(res => {
+                            if (res.code === 200) {
+                                this.$emit('success')
+                            } else {
+                                this.$message.warning(res.msg);
+                            }
+                        })
+                    }
+
                 } else {
                     this.$message.warning('璇锋鏌ュ繀濉」');
                 }
diff --git a/src/views/console/base/CalenderTab.vue b/src/views/console/base/CalenderTab.vue
index 6c7627d..c6a0ebc 100644
--- a/src/views/console/base/CalenderTab.vue
+++ b/src/views/console/base/CalenderTab.vue
@@ -1,7 +1,7 @@
 <!--
  * @Date: 2024-04-04 22:45:43
  * @LastEditors: gaoshp
- * @LastEditTime: 2024-10-01 20:16:51
+ * @LastEditTime: 2024-10-02 20:52:59
  * @FilePath: /cps-web/src/views/console/base/CalenderTab.vue
 -->
 <template>
@@ -21,7 +21,7 @@
             <el-header>
                 <span>鏃ュ巻銆恵{ selectInfo.code }}銆憑{ selectInfo.name }}</span>
                 <el-button type="primary" style="margin-left: auto;" size="small" @click="relationWork">鍏宠仈宸ヤ綅</el-button>
-                <!-- <el-button type="primary" size="small">缂栬緫鏃ュ巻</el-button> -->
+                <el-button type="primary" size="small" @click="edit">缂栬緫鏃ュ巻</el-button>
                 <el-popconfirm title="纭畾鍒犻櫎鍚楋紵" @confirm="table_del">
                     <template #reference>
                         <el-button type="primary" size="small">鍒犻櫎</el-button>
@@ -29,13 +29,20 @@
                 </el-popconfirm>
             </el-header>
             <el-main>
-                <el-row :gutter="12" v-show="shiftListName">
-                    {{ shiftListName }}
+                <el-row :gutter="12" v-show="shiftListName.length > 0">
+                    <el-button v-for="item in shiftListName">{{ item.code + '-' + item.name
+                        }}</el-button>
                 </el-row>
                 <el-row>
                     <el-col :span="6" style="padding:  10px;" v-for="item in months" :key="item.month">
                         <Calendar :initial-page="{ month: item.month + 1, year: item.year }" :rows="1"
-                            disable-page-swipe :nav-visibility="''" :attributes='item.attributes' />
+                            disable-page-swipe :nav-visibility="''" :attributes='item.attributes'>
+                            <!-- <template #day-popover="row">
+                                <div class="text-xs text-gray-700 dark:text-gray-300">
+                                    123123{{ row }}
+                                </div>
+                            </template> -->
+                        </Calendar>
                     </el-col>
                 </el-row>
                 <!-- :initial-page="{ month: item.month + 1, year: item.year }" -->
@@ -44,7 +51,7 @@
         </el-container>
         <el-drawer v-if="drawer" v-model="drawer" size="80%" title="鐢熶骇鏃ュ巻" :direction="direction"
             :before-close="handleClose">
-            <Add v-if="drawer" :shiftList="shiftList" @success="success"></Add>
+            <Add v-if="drawer" :shiftList="shiftList" :drawerInfo="drawerInfo" @success="success"></Add>
         </el-drawer>
         <el-drawer v-model="raworkVisible" size="80%" title="鐢熶骇鏃ュ巻" :direction="direction" :before-close="handleClose">
             <el-container v-if="raworkVisible">
@@ -66,6 +73,7 @@
 import 'v-calendar/style.css';
 import Add from './Add.vue'
 import moment from 'moment';
+import color from '@/utils/color'
 export default {
     components: {
         Calendar,
@@ -75,7 +83,7 @@
     data() {
         return {
             shiftList: [],
-            shiftListName: '',
+            shiftListName: [],
             selectInfo: {},
             drawer: false,
             months: [],
@@ -92,6 +100,9 @@
                 label: 'title',
                 children: 'children',
             },
+            drawerInfo: {},
+            color
+
         }
     },
     created() {
@@ -99,6 +110,10 @@
         this.init()
     },
     methods: {
+        edit() {
+            this.drawer = true
+            this.drawerInfo = this.selectInfo
+        },
         relationWork() {
             this.$HTTP.post('/api/blade-cps/group/groupWorkstation', { groupCategory: 1, groupType: 'group_workstation' }).then(res => {
                 if (res.code === 200) {
@@ -188,22 +203,24 @@
             })
         },
         select(row) {
-            this.selectInfo = {
-                ...row
-            }
+
             this.months = []
             this.$HTTP.get(`/api/blade-cps/calendar/${row.id}`).then(res => {
                 if (res.code === 200) {
                     console.log(res.data)
                     this.setDay(res.data)
-                    let current = this.shiftList.find(v => v.id == res.data.calendarDayVOList[0].modelId)
                     console.log('////', this.shiftList, res.data.calendarDayVOList[0].id)
-                    if (current) {
-                        this.shiftListName = `${current.code}-${current.name}`
+                    let modelIds = [...new Set(res.data.calendarDayVOList.map(v => v.modelId))]
+                    if (modelIds.length > 0) {
+                        this.shiftListName = this.shiftList.filter(v => modelIds.includes(v.id))
                     } else {
-                        this.shiftListName = ''
+                        this.shiftListName = []
                     }
 
+                }
+                this.selectInfo = {
+                    ...row,
+                    calendarDayVOList: res.data.calendarDayVOList
                 }
             })
         },
@@ -217,6 +234,7 @@
         },
         add() {
             this.drawer = true
+            this.drawerInfo = {}
         },
         load(flag) {
             if (flag) this.current = 0;
@@ -261,6 +279,20 @@
                     })
 
                     for (let i = 0; i < 12; i++) {
+                        data.calendarDayVOList.map(v => v.modelId)
+                        let modelIds = [...new Set(data.calendarDayVOList.map(v => v.modelId))]
+                        let ext = modelIds.map(v => {
+                            let ban = this.shiftListName.find(item => item.id === v)
+                            return {
+                                highlight: color.stringToColor(v),
+                                dates: data.calendarDayVOList.filter(item => {
+                                    return moment(item.calendarDate).month() === i && item.modelId === v
+                                }).map(v => v.calendarDate),
+                                popover: {
+                                    label: `${ban?.code}-${ban?.name}`
+                                },
+                            }
+                        })
                         this.months.push({
                             year: year,
                             month: i,
@@ -272,16 +304,11 @@
                                         return moment(item).month() === i
                                     })
                                 },
-                                {
-                                    highlight: true,
-                                    dates: data.calendarDayVOList.filter(item => {
-                                        console.log(moment(item).month(), '>>>123')
-                                        return moment(item.calendarDate).month() === i
-                                    }).map(v => v.calendarDate),
-                                }
+                                ...ext
                             ]
                         })
                     }
+                    console.log(this.months, '------------')
                 }
             })
 
diff --git a/src/views/console/system/collection.vue b/src/views/console/system/collection.vue
new file mode 100644
index 0000000..af45372
--- /dev/null
+++ b/src/views/console/system/collection.vue
@@ -0,0 +1,19 @@
+<!--
+ * @Date: 2024-10-02 20:34:08
+ * @LastEditors: gaoshp
+ * @LastEditTime: 2024-10-02 20:34:22
+ * @FilePath: /cps-web/src/views/console/system/collection.vue
+-->
+<template>
+    <div>
+        caijidian
+    </div>
+</template>
+
+<script>
+export default {
+
+}
+</script>
+
+<style lang="scss" scoped></style>
\ No newline at end of file
diff --git a/src/views/console/workstation/Dialog.vue b/src/views/console/workstation/Dialog.vue
index 1ac31eb..895569e 100644
--- a/src/views/console/workstation/Dialog.vue
+++ b/src/views/console/workstation/Dialog.vue
@@ -45,7 +45,7 @@
                     <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>
@@ -89,7 +89,7 @@
                     <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" />
+                                :label="item.dictValue" :value="item.dictKey - 0" />
                         </el-select>
                     </el-form-item>
                 </el-col>
diff --git a/src/views/tpm/machine/Dialog.vue b/src/views/tpm/machine/Dialog.vue
index 3ff174f..e993647 100644
--- a/src/views/tpm/machine/Dialog.vue
+++ b/src/views/tpm/machine/Dialog.vue
@@ -51,7 +51,7 @@
                     <el-form-item label="鐢熷懡鐘舵��" prop="machineLifeStatus">
                         <el-select v-model="form.machineLifeStatus" placeholder="" style="width: 240px">
                             <el-option v-for="item in options.machineLifeStatus" :key="item.value" :label="item.label"
-                                :value="item.value" />
+                                :value="item.value - 0" />
                         </el-select>
                     </el-form-item>
                 </el-col>
@@ -243,7 +243,7 @@
                     <el-form-item label="浣跨敤鐘舵��" prop="machineUseStatus">
                         <el-select v-model="form.machineUseStatus" placeholder="" style="width: 240px">
                             <el-option v-for="item in options.machineUseStatus" :key="item.value" :label="item.label"
-                                :value="item.value" />
+                                :value="item.value - 0" />
                         </el-select>
                     </el-form-item>
                 </el-col>

--
Gitblit v1.9.3