From 0a551baa427b4be39be784748071a342fab214ea Mon Sep 17 00:00:00 2001 From: LIUHAO <812126452@qq.com> Date: Thu, 25 Aug 2022 16:43:34 +0800 Subject: [PATCH] commit 20220825 --- .../maintainInformation.js | 192 +++++ src/assets/img/HELI.jpg | Bin 0 -> 33788 bytes src/assets/img/HELILOGO.png | Bin 0 -> 432 bytes src/assets/img/SiyuanLOGO.png | Bin 0 -> 5055 bytes .../BasicData/DistributionStation/index.vue | 59 +- .../StationInformationMaintenance/index.vue | 12 +- .../EquipmentMaintenancePlan/index.vue | 127 +-- .../index.vue | 772 ++++++++++++++++++ .../StepContentMaintenance/index.vue | 113 ++- .../MaintenanceTighteningPosition/index.vue | 109 +++ .../RecipeManagement/index.vue | 31 +- src/views/SearchData/FTTTrendChart/index.vue | 352 ++++++++ src/views/SearchData/JPHTrendChart/index.vue | 278 +++++++ src/views/SearchData/OEETrendChart/index.vue | 360 ++++++++ .../ReleaseOfProductionPlan/index.vue | 9 +- .../ScheduleStatusChange/index.vue | 7 +- 16 files changed, 2316 insertions(+), 105 deletions(-) create mode 100644 src/api/ManufacturingCenter/maintainInformation.js create mode 100644 src/assets/img/HELI.jpg create mode 100644 src/assets/img/HELILOGO.png create mode 100644 src/assets/img/SiyuanLOGO.png create mode 100644 src/views/EquipmentOperationAnalysis/RoutineCheckInformationMaintenance/index.vue create mode 100644 src/views/SearchData/FTTTrendChart/index.vue create mode 100644 src/views/SearchData/JPHTrendChart/index.vue create mode 100644 src/views/SearchData/OEETrendChart/index.vue diff --git a/src/api/ManufacturingCenter/maintainInformation.js b/src/api/ManufacturingCenter/maintainInformation.js new file mode 100644 index 0000000..6bcf509 --- /dev/null +++ b/src/api/ManufacturingCenter/maintainInformation.js @@ -0,0 +1,192 @@ +import request from '@/utils/request' +import state from '@/store' +import router from '@/router' + +// 获取工位 表1 +export function getTableData1() { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '3', + name: 'SELECT * FROM [基础数据_设备工位点检表]inner join dbo.基础数据_点检类型名称 on [基础数据_设备工位点检表].点检表类型 = 基础数据_点检类型名称.点检表类型流水号' + } + }) +} +// 点检类型 表2 +export function getTableData2() { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '3', + name: 'select * from 基础数据_点检类型名称' + } + }) +} +// 点检内容 表3 +export function getTableData3(num) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '3', + name: `select * from 基础数据_点检内容 where 点检表类型 = ${num}` + } + }) +} +// 表1 编辑 +export function editType(num1, num2) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '4', + name: `update [基础数据_设备工位点检表] set 点检表类型 = ${num1} where ID = ${num2}` + } + }) +} +export function confirmEdit1(num1, num2) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '4', + name: `update [基础数据_点检类型名称] set 点检表类型名称 = '${num1}' where 点检表类型流水号 = ${num2}` + } + }) +} +export function confirmEdit2(num1, num2, num3) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '4', + name: `update 基础数据_点检内容 set 保养周期 = ${num1} ,保养项目 = '${num2}' where ID = ${num3}` + } + }) +} +export function openDelete1(num1) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '4', + name: `delete 基础数据_点检类型名称 where 点检表类型流水号 = ${num1}` + } + }) +} +export function selectCount(num1) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '3', + name: `SELECT 工位号 FROM [基础数据_设备工位点检表] where 点检表类型 = ${num1}` + } + }) +} +export function openDelete2(num1) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '4', + name: `delete 基础数据_点检内容 where ID = ${num1}` + } + }) +} +export function submit1(num1) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '4', + name: `insert into 基础数据_点检类型名称 (点检表类型名称) values ('${num1}')` + } + }) +} +export function submit2(num1, num2, num3) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '4', + name: ` declare @id int = 0 + SELECT top 1 @id = ID FROM [dbo].基础数据_点检内容 order by ID desc + set @id = @id + 1 + insert into 基础数据_点检内容 (点检任务编号,点检表类型,保养项目,保养周期) values (@id,${num1},'${num2}',${num3})` + } + }) +} +export function exportOut(num1, num2, num3) { + return request({ + url: '', + method: 'post', + data: { + UserID: state.state.user.id, + ModularID: router.currentRoute.path, + type: '3', + name: `SELECT * + ,case when [FN1] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN1]) else '' end as [姓名1] + ,case when [FN2] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN2]) else '' end as [姓名2] + ,case when [FN3] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN3]) else '' end as [姓名3] + ,case when [FN4] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN4]) else '' end as [姓名4] + ,case when [FN5] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN5]) else '' end as [姓名5] + ,case when [FN6] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN6]) else '' end as [姓名6] + ,case when [FN7] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN7]) else '' end as [姓名7] + ,case when [FN8] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN8]) else '' end as [姓名8] + ,case when [FN9] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN9]) else '' end as [姓名9] + ,case when [FN10] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN10]) else '' end as [姓名10] + ,case when [FN11] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN11]) else '' end as [姓名11] + ,case when [FN12] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN12]) else '' end as [姓名12] + ,case when [FN13] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN13]) else '' end as [姓名13] + ,case when [FN14] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN14]) else '' end as [姓名14] + ,case when [FN15] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN15]) else '' end as [姓名15] + ,case when [FN16] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN16]) else '' end as [姓名16] + ,case when [FN17] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN17]) else '' end as [姓名17] + ,case when [FN18] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN18]) else '' end as [姓名18] + ,case when [FN19] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN19]) else '' end as [姓名19] + ,case when [FN20] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN20]) else '' end as [姓名20] + ,case when [FN21] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN21]) else '' end as [姓名21] + ,case when [FN22] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN22]) else '' end as [姓名22] + ,case when [FN23] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN23]) else '' end as [姓名23] + ,case when [FN24] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN24]) else '' end as [姓名24] + ,case when [FN25] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN25]) else '' end as [姓名25] + ,case when [FN26] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN26]) else '' end as [姓名26] + ,case when [FN27] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN27]) else '' end as [姓名27] + ,case when [FN28] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN28]) else '' end as [姓名28] + ,case when [FN29] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN29]) else '' end as [姓名29] + ,case when [FN30] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN30]) else '' end as [姓名30] + ,case when [FN31] in (select 人员编号 from 人事档案管理_人员名单) then (select 姓名 from 人事档案管理_人员名单 where 人员编号 = [FN31]) else '' end as [姓名31] + FROM + [基础数据_设备工位点检表] inner join [工位日点检任务记录] + on [基础数据_设备工位点检表].工位号 = [工位日点检任务记录].工位号 + inner join [基础数据_点检内容] + on [工位日点检任务记录].点检任务编号 = [基础数据_点检内容].点检任务编号 + where [基础数据_设备工位点检表].工位号 = '${num1}' and 年 = '${num2}' and 月 = '${num3}' order by [工位日点检任务记录].点检任务编号` + } + }) +} diff --git a/src/assets/img/HELI.jpg b/src/assets/img/HELI.jpg new file mode 100644 index 0000000000000000000000000000000000000000..06a3b4d2e832dfa67b76eaf4bb2046354cee049a GIT binary patch literal 33788 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 literal 0 HcmV?d00001 diff --git a/src/assets/img/HELILOGO.png b/src/assets/img/HELILOGO.png new file mode 100644 index 0000000000000000000000000000000000000000..9fa09c3eae8663d5835e1ae6757000fe88c59f90 GIT binary patch literal 432 zcmeAS@N?(olHy`uVBq!ia0vp^TYy-ZgBeJ26FMGaQZeW44Ntyi10L231}Oz2!v^In!I1w;pSB#o5Rla4=Dci` zqPs5dHj|YbS8mDH4%70QYV*YWnqyzuijAq(8*f?1{khd6>b+37eNPXcPmyQFzMV29 z$IYiVzuS22_hg>d1@1bmT!Ac7?!HTQa(v;|`X`wYvq{)@%``R>-Sx%huG*=#av zqV24XAE#X}cKtK`^-f-?xNXxk8&~aLR#g>BQtn?rs{gZ_x!sNBZc?VCChI*Z@s7Ft zGxLue{rGw3y3n}YJXWhFcJ)l3A#>}@%#43-oeHgTe~DWM4fivXyC literal 0 HcmV?d00001 diff --git a/src/assets/img/SiyuanLOGO.png b/src/assets/img/SiyuanLOGO.png new file mode 100644 index 0000000000000000000000000000000000000000..a80b0e558a88a1c2791ce169a0909274057d699c GIT binary patch literal 5055 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 literal 0 HcmV?d00001 diff --git a/src/views/BasicData/DistributionStation/index.vue b/src/views/BasicData/DistributionStation/index.vue index 1aa5a56..a12e37e 100644 --- a/src/views/BasicData/DistributionStation/index.vue +++ b/src/views/BasicData/DistributionStation/index.vue @@ -11,7 +11,7 @@ :value="item.value" size="mini"/> -
+
{ + this.ExecDatabase(Data).then(response => { + if (response.data[0].result === '1') { + console.log('1') + resolve(1) + } else { + console.log('0') + reject(2) + } + }) + }) + }, + async deleteAdd(val) { + var param = [] + param[0] = ['UserId', this.peopleValue] + param[1] = ['OpName', val] + console.log(param) + var Data = this.CreateData('12', 'MES_Web_User_Delete', param) + return new Promise((resolve, reject) => { + this.ExecDatabase(Data).then(response => { + if (response.data[0].result === '1') { + console.log('1') + resolve(1) + } else { + console.log('0') + reject(2) + } + }) + }) } } } diff --git a/src/views/BasicDataMaintenance/StationInformationMaintenance/index.vue b/src/views/BasicDataMaintenance/StationInformationMaintenance/index.vue index 2ce9890..f4b0837 100644 --- a/src/views/BasicDataMaintenance/StationInformationMaintenance/index.vue +++ b/src/views/BasicDataMaintenance/StationInformationMaintenance/index.vue @@ -485,7 +485,7 @@ size="55%"> - + @@ -793,8 +793,7 @@ export default { dataTypeValue: '' }, rules: { // 表单验证规则 - dataTypeValue: [{ required: true, message: '请选择', trigger: 'change' }], - name: [{ required: true, message: '请输入', trigger: 'blur' }] + dataTypeValue: [{ required: true, message: '请选择', trigger: 'change' }] }, formData: { ID: '', // ID @@ -877,6 +876,13 @@ export default { this.searchTable() }, methods: { + selectCode(val) { + for (let i = 0; i < this.tableData.length; i++) { + if (val === this.tableData[i].工位代码) { + this.$message.error('工位代码重复,请重新输入!') + } + } + }, handleClose(done) { this.$confirm('确认关闭?') .then(_ => { diff --git a/src/views/EquipmentOperationAnalysis/EquipmentMaintenancePlan/index.vue b/src/views/EquipmentOperationAnalysis/EquipmentMaintenancePlan/index.vue index 3049a16..ebdd42a 100644 --- a/src/views/EquipmentOperationAnalysis/EquipmentMaintenancePlan/index.vue +++ b/src/views/EquipmentOperationAnalysis/EquipmentMaintenancePlan/index.vue @@ -2,6 +2,15 @@
+ 保存设置 @@ -77,6 +86,7 @@ export default { return { tableData: [], dateValue: '', + monthValue: new Date(), checked: '', value: new Date(), multipleSelection: '', @@ -85,39 +95,7 @@ export default { } }, created() { - for (let i = 1; i < 32; i++) { - let h = i - h = h < 10 ? ('0' + h) : h - this.dataC['2022-07-' + h] = { - banCheck: false, banTime: '11:00:00', - dayCheck: false, dayTime: '11:00:00', - weekCheck: false, weekTime: '11:00:00', - monthCheck: false, monthTime: '11:00:00', - yearCheck: false, yearTime: '11:00:00' - } - } - for (let i = 1; i < 32; i++) { - let h = i - h = h < 10 ? ('0' + h) : h - this.dataC['2022-08-' + h] = { - banCheck: false, banTime: '11:00:00', - dayCheck: false, dayTime: '11:00:00', - weekCheck: false, weekTime: '11:00:00', - monthCheck: false, monthTime: '11:00:00', - yearCheck: false, yearTime: '11:00:00' - } - } - for (let i = 1; i < 32; i++) { - let h = i - h = h < 10 ? ('0' + h) : h - this.dataC['2022-09-' + h] = { - banCheck: false, banTime: '11:00:00', - dayCheck: false, dayTime: '11:00:00', - weekCheck: false, weekTime: '11:00:00', - monthCheck: false, monthTime: '11:00:00', - yearCheck: false, yearTime: '11:00:00' - } - } + this.initializationDate() this.getStationNumber() }, mounted() { @@ -134,6 +112,55 @@ export default { window.dataC = this.dataC }, methods: { + initializationDate() { + const date = this.monthValue + const month = date.getMonth() < 10 ? ('0' + date.getMonth()) : date.getMonth() + const month1 = date.getMonth() + 1 < 10 ? ('0') + (date.getMonth() + 1) : date.getMonth() + 1 + const month2 = date.getMonth() + 2 < 10 ? ('0') + (date.getMonth() + 2) : date.getMonth() + 2 + const time1 = date.getFullYear() + '-' + month1 + '-' + let time2, time + console.log(month, 'month') + if (month === '00') { + time = (date.getFullYear() - 1) + '-' + '12' + '-' + } else { + time = date.getFullYear() + '-' + month + '-' + } + if (month2 === 13) { + time2 = (date.getFullYear() + 1) + '-' + '01' + '-' + } else { + time2 = date.getFullYear() + '-' + month2 + '-' + } + console.log(time, time1, time2) + for (let i = 1; i < 32; i++) { + let h = i + h = h < 10 ? ('0' + h) : h + this.dataC[time + h] = { + banCheck: false, banTime: '11:00:00', + dayCheck: false, dayTime: '11:00:00', + weekCheck: false, weekTime: '11:00:00', + monthCheck: false, monthTime: '11:00:00', + yearCheck: false, yearTime: '11:00:00' + } + this.dataC[time1 + h] = { + banCheck: false, banTime: '11:00:00', + dayCheck: false, dayTime: '11:00:00', + weekCheck: false, weekTime: '11:00:00', + monthCheck: false, monthTime: '11:00:00', + yearCheck: false, yearTime: '11:00:00' + } + this.dataC[time2 + h] = { + banCheck: false, banTime: '11:00:00', + dayCheck: false, dayTime: '11:00:00', + weekCheck: false, weekTime: '11:00:00', + monthCheck: false, monthTime: '11:00:00', + yearCheck: false, yearTime: '11:00:00' + } + } + }, + changeMonth() { + this.value = new Date(this.monthValue) + this.initializationDate() + }, selectBox(a) { // a[0].isSelected = !a[0].isSelected console.log('[data.day]', a) @@ -215,30 +242,12 @@ export default { /deep/.el-calendar-table:not(.is-range) td.next, .el-calendar-table:not(.is-range) td.prev{ pointer-events: none; } - /*/deep/.el-calendar-day{*/ - /* pointer-events: none;*/ - /*}*/ - /*.el-calendar-table:not(.is-range) td.prev,*/ - /*.el-calendar-table:not(.is-range) td.next{*/ - /* pointer-events: none;*/ - /*}*/ - /*.prev>.el-calendar-day>p{*/ - /* display: none;*/ - /*}*/ - /*.next>.el-calendar-day>p{*/ - /* display: none;*/ - /*}*/ - /*.el-calendar-table:not(.is-range) td.next, .el-calendar-table:not(.is-range) td.prev{*/ - /* pointer-events: none;*/ - /*}*/ - /*/deep/.el-table{*/ - /* border: 1px solid black!important;*/ - /*}*/ - /*/deep/.el-table th, .el-table tr{*/ - /* border-color: black!important;*/ - /*}*/ - /*/deep/.el-table--enable-row-transition .el-table__body td{*/ - /* border-color: black!important;*/ - /*}*/ - + .elDataPicker>>>.el-input__inner{ + height: 32px!important; + padding-left: 30px!important; + padding-right: 0!important; + } + /deep/.el-button-group{ + display: none!important; + } diff --git a/src/views/EquipmentOperationAnalysis/RoutineCheckInformationMaintenance/index.vue b/src/views/EquipmentOperationAnalysis/RoutineCheckInformationMaintenance/index.vue new file mode 100644 index 0000000..b16cb4c --- /dev/null +++ b/src/views/EquipmentOperationAnalysis/RoutineCheckInformationMaintenance/index.vue @@ -0,0 +1,772 @@ + + + + + diff --git a/src/views/ProcessManagement/StepContentMaintenance/index.vue b/src/views/ProcessManagement/StepContentMaintenance/index.vue index 6dd855f..35d4c24 100644 --- a/src/views/ProcessManagement/StepContentMaintenance/index.vue +++ b/src/views/ProcessManagement/StepContentMaintenance/index.vue @@ -24,6 +24,7 @@ 查询 新增 + 复制工步
- + 确定
+ + + + + + + + + + + + + + +
@@ -126,11 +155,11 @@ export default { return { tableData: [], // 总数据数组 stationNumber: [], - stationNumberValue: 'OP1005', - stationName: '扫描上线工位', + stationNumberValue: '', + stationName: '', moduleDescription: [], moduleDescriptionValue: '', - engineTypeValue: 'SGM-5P', + engineTypeValue: '', engineTypeValue1: '', engineTypeName: '', engineType: [], @@ -160,6 +189,7 @@ export default { labelNumber: '', dialogFormVisible: false, dialogFormVisible1: false, + dialogFormVisible4: false, title: '', form: { stationNumber: '', @@ -180,6 +210,14 @@ export default { rules1: { number: [{ required: true, message: '请输入序号', trigger: 'blur' }], text: [{ required: true, message: '请输入操作内容', trigger: 'blur' }] + }, + form4: { + engineTypeValue: '', + stationNumberValue: '' + }, + rules4: { // 订单下发验证 + engineTypeValue: [{ required: true, message: '请选择机型', trigger: 'blur' }], + stationNumberValue: [{ required: true, message: '请选择工位号', trigger: 'blur' }] } } }, @@ -207,23 +245,30 @@ export default { for (let i = 0; i < this.engineType.length; i++) { if (this.engineType[i].value === this.engineTypeValue1) { this.engineTypeName = this.engineType[i].labelName - this.form.moduleDescription = this.engineType[i].label console.log(this.engineTypeName, 'this.engineTypeName') } } } }, created() { - this.searchTable() this.getStationNumber() this.getEndStation() }, + mounted() { + setTimeout(() => { + this.searchTable() + }, 300) + }, methods: { getStationNumber() { this.stationNumber = [] var param = [] var Data = this.CreateData('11', 'MES_计划BOM_工位与名称_查询', param) this.ExecDatabase(Data).then(response => { + if (response.data.length) { + this.stationNumberValue = response.data[0].工位号 + this.stationName = response.data[0].工序名称 + } for (let i = 0; i < response.data.length; i++) { this.stationNumber.push({ label: response.data[i].工位号, @@ -239,6 +284,7 @@ export default { var param = [] var Data = this.CreateData('11', 'MES_基本变量_机型代码_查询', param) this.ExecDatabase(Data).then(response => { + if (response.data.length) this.engineTypeValue = response.data[0].发动机型号 for (let i = 0; i < response.data.length; i++) { this.engineType.push({ label: response.data[i].发动机型号, @@ -275,6 +321,59 @@ export default { } }) }, + copyOrder(formName) { + if (this.tableData.length) { + if (this.$refs[formName] !== undefined) { + this.$refs[formName].resetFields() + } + this.dialogFormVisible4 = true + } else { + this.$message({ + message: '暂无可复制的数据!', + type: 'error' + }) + } + }, + async submitAdd4() { + let number, text + for (let i = 0; i < this.tableData.length; i++) { + number = this.tableData[i].工步号 + text = this.tableData[i].操作内容 + await this.submitAdd5(number, text) + } + this.$message({ + message: '增加成功', + type: 'success' + }) + this.dialogFormVisible4 = false + this.engineTypeValue = this.form4.engineTypeValue + this.stationNumberValue = this.form4.stationNumberValue + this.searchTable() + }, + async submitAdd5(number, text) { + var param = [] + param[0] = ['工位号', this.form4.stationNumberValue] + param[1] = ['产品型号代码', this.form4.engineTypeValue] + param[2] = ['工步号', number] + param[3] = ['操作内容', text] + param[4] = ['发动机型号', this.form4.engineTypeValue] + console.log(param) + var Data = this.CreateData('12', '电子看板_工序内容_增加', param) + return new Promise((resolve, reject) => { + this.ExecDatabase(Data).then(response => { + if (response.data[0].result === '1') { + console.log('1') + resolve(1) + } else { + console.log('0') + reject(2) + } + }) + }) + }, + callOff4() { + this.dialogFormVisible4 = false + }, addTo() { this.title = '添加' this.dialogFormVisible = true @@ -287,7 +386,7 @@ export default { param[1] = ['产品型号代码', this.form.moduleDescription] param[2] = ['工步号', this.form.number] param[3] = ['操作内容', this.form.text] - param[4] = ['发动机型号', this.engineTypeName] + param[4] = ['发动机型号', this.form.moduleDescription] console.log(param) var Data = this.CreateData('12', '电子看板_工序内容_增加', param) this.ExecDatabase(Data).then(response => { diff --git a/src/views/ProcessParameterMaintenance/MaintenanceTighteningPosition/index.vue b/src/views/ProcessParameterMaintenance/MaintenanceTighteningPosition/index.vue index a82c48c..6113883 100644 --- a/src/views/ProcessParameterMaintenance/MaintenanceTighteningPosition/index.vue +++ b/src/views/ProcessParameterMaintenance/MaintenanceTighteningPosition/index.vue @@ -77,6 +77,7 @@ 预览全部 全部清除 + 复制工步
@@ -189,6 +190,34 @@ + + + + + + + + + + + + + + +
@@ -237,6 +266,15 @@ export default { explain: '' }, rules: { + }, + dialogFormVisible4: false, + form4: { + engineTypeValue: '', + stationNumberValue: '' + }, + rules4: { // 订单下发验证 + engineTypeValue: [{ required: true, message: '请选择机型', trigger: 'blur' }], + stationNumberValue: [{ required: true, message: '请选择工位号', trigger: 'blur' }] } } }, @@ -337,6 +375,77 @@ export default { } }) }, + copyOrder(formName) { + if (this.tableData.length) { + if (this.$refs[formName] !== undefined) { + this.$refs[formName].resetFields() + } + this.dialogFormVisible4 = true + } else { + this.$message({ + message: '暂无可复制的数据!', + type: 'error' + }) + } + }, + async submitAdd4() { + let serialNumber, positionX, positionY, measureWidth, measureHeight, groupNumber, orderNumber, sleeveNumber, torque, measureType, explain + for (let i = 0; i < this.tableData.length; i++) { + serialNumber = this.tableData[i].序号 + positionX = this.tableData[i].测量位置X + positionY = this.tableData[i].测量位置Y + measureWidth = this.tableData[i].控件宽度 + measureHeight = this.tableData[i].控件高度 + groupNumber = this.tableData[i].组号 + orderNumber = this.tableData[i].工作顺序 + sleeveNumber = this.tableData[i].套筒号 + torque = this.tableData[i].扭矩 + measureType = this.tableData[i].控件类型 + explain = this.tableData[i].说明 + await this.submitAdd5(serialNumber, positionX, positionY, measureWidth, measureHeight, groupNumber, orderNumber, sleeveNumber, torque, measureType, explain) + } + this.$message({ + message: '增加成功', + type: 'success' + }) + this.dialogFormVisible4 = false + this.engineTypeValue = this.form4.engineTypeValue + this.stationNumberValue = this.form4.stationNumberValue + this.searchTable() + this.searchTable1() + }, + async submitAdd5(serialNumber, positionX, positionY, measureWidth, measureHeight, groupNumber, orderNumber, sleeveNumber, torque, measureType, explain) { + var param = [] + param[0] = ['工位号', this.form4.stationNumberValue] + param[1] = ['发动机型号', this.form4.engineTypeValue] + param[2] = ['序号', serialNumber] + param[3] = ['测量位置X', positionX] + param[4] = ['测量位置Y', positionY] + param[5] = ['控件宽度', measureWidth] + param[6] = ['控件高度', measureHeight] + param[7] = ['组号', groupNumber] + param[8] = ['工作顺序', orderNumber] + param[9] = ['套筒号', sleeveNumber] + param[10] = ['扭矩', torque] + param[11] = ['控件类型', measureType] + param[12] = ['说明', explain] + console.log(param) + var Data = this.CreateData('12', '电子看板_工位机型_质量数据测量位置_增加', param) + return new Promise((resolve, reject) => { + this.ExecDatabase(Data).then(response => { + if (response.data[0].result === '1') { + console.log('1') + resolve(1) + } else { + console.log('0') + reject(2) + } + }) + }) + }, + callOff4() { + this.dialogFormVisible4 = false + }, submitAdd(formName) { this.$refs[formName].validate((valid) => { if (valid) { diff --git a/src/views/RecipeManagement/RecipeManagement/index.vue b/src/views/RecipeManagement/RecipeManagement/index.vue index 63c03df..f734244 100644 --- a/src/views/RecipeManagement/RecipeManagement/index.vue +++ b/src/views/RecipeManagement/RecipeManagement/index.vue @@ -32,11 +32,11 @@ {{ scope.row.发动机机型标志 }} - - - + + + + +