From 4a6d69f3ff895918b1b8f1e8e9b122ed8fcd5afa Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期四, 24 十一月 2022 17:15:47 +0800
Subject: [PATCH] 1.自动排程实现静态部分
---
src/views/scgl/gd.vue | 132 ++++++++++++++++++++++++++------------------
1 files changed, 78 insertions(+), 54 deletions(-)
diff --git a/src/views/scgl/gd.vue b/src/views/scgl/gd.vue
index c0d1aba..6117cb5 100644
--- a/src/views/scgl/gd.vue
+++ b/src/views/scgl/gd.vue
@@ -169,6 +169,8 @@
<div v-if="row.status==='ALLO'">宸叉淳鍙�</div>
<div v-if="row.status==='START'">寮�宸�</div>
<div v-if="row.status==='CLOSED'">瀹屽伐</div>
+ <div v-if="row.status==='NOSCHED'">寰呮帓绋�</div>
+ <div v-if="row.status==='SCHED'">宸叉帓绋�</div>
</template>
</el-table-column>
<el-table-column
@@ -182,7 +184,12 @@
label="婧愬崟鍗曞彿"
sortable="custom"
min-width="160"
- />
+ >
+ <template slot-scope="{row}">
+ <div v-if="row.m_po">{{ row.m_po }}</div>
+ <div v-else>/</div>
+ </template>
+ </el-table-column>
<el-table-column
prop="wotype"
label="鍗曟嵁绫诲瀷"
@@ -588,19 +595,26 @@
</el-select>
</el-form-item>
</div>
- <el-form-item label="鐗╂枡娓呭崟" prop="bomId">
+ <el-form-item label="鏄惁鎺掔▼" prop="isAps">
+ <el-radio-group v-model="dialogForm.isAps" style="width:200px" @change="changeIsAps">
+ <el-radio key="Y" label="Y" value="Y">鏄�</el-radio>
+ <el-radio key="N" label="N" value="N">鍚�</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ <el-form-item label="鐗╂枡娓呭崟" :prop="dialogForm.isAps==='Y'?'bomId':''">
<el-select
v-model="dialogForm.bomId"
filterable
+ :disabled="dialogForm.isAps==='N'"
:popper-append-to-body="false"
style="width: 200px;"
placeholder="璇烽�夋嫨"
>
<el-option
v-for="item in bomIdArr"
- :key="item.code"
- :label="item.name"
- :value="item.code"
+ :key="item.id"
+ :label="item.version"
+ :value="item.id"
/>
</el-select>
</el-form-item>
@@ -610,6 +624,7 @@
type="date"
:clearable="false"
value-format="yyyy-MM-dd"
+ :picker-options="pickerOptions"
style="width: 200px"
placeholder="閫夋嫨鏃ユ湡"
/>
@@ -622,6 +637,7 @@
value-format="yyyy-MM-dd"
style="width: 200px"
placeholder="閫夋嫨鏃ユ湡"
+ :picker-options="pickerOptions"
/>
</el-form-item>
<el-form-item label="宸ュ崟绛夌骇" prop="orderlev">
@@ -640,12 +656,7 @@
/>
</el-select>
</el-form-item>
- <el-form-item label="鏄惁鎺掔▼" prop="isAps">
- <el-radio-group v-model="dialogForm.isAps">
- <el-radio key="Y" label="Y" value="Y">鏄�</el-radio>
- <el-radio key="N" label="N" value="N">鍚�</el-radio>
- </el-radio-group>
- </el-form-item>
+
</el-form>
<!-- 宸ヨ壓璺嚎鏀惧ぇ闀滃璇濇-->
@@ -1285,7 +1296,11 @@
style="display: flex;height: 96px;border-bottom:1px solid #000;
justify-content: center;align-items: center;position: relative"
>
- <div id="qrCode2" ref="qrCodeDiv2" style="overflow-y: hidden;height:60px;position: absolute;left: 14px;" />
+ <div
+ id="qrCode2"
+ ref="qrCodeDiv2"
+ style="overflow-y: hidden;height:60px;position: absolute;left: 14px;"
+ />
</div>
<div
style="display: flex;height: 32px;justify-content: flex-start;border-bottom:1px solid #000;align-items: center"
@@ -1342,7 +1357,11 @@
style="display: flex;height: 96px;border-bottom:1px solid #000;
justify-content: center;align-items: center;position: relative"
>
- <div id="qrCode2" ref="qrCodeDiv2" style="overflow-y: hidden;height:60px;position: absolute;left: 14px;" />
+ <div
+ id="qrCode2"
+ ref="qrCodeDiv2"
+ style="overflow-y: hidden;height:60px;position: absolute;left: 14px;"
+ />
</div>
<div
style="display: flex;height: 32px;justify-content: flex-start;border-bottom:1px solid #000;align-items: center"
@@ -1399,7 +1418,11 @@
style="display: flex;height: 60px;border-bottom:1px solid #000;
justify-content: center;align-items: center;position: relative"
>
- <div id="qrCode2" ref="qrCodeDiv2" style="overflow-y: hidden;height:60px;position: absolute;left: 14px;" />
+ <div
+ id="qrCode2"
+ ref="qrCodeDiv2"
+ style="overflow-y: hidden;height:60px;position: absolute;left: 14px;"
+ />
</div>
<div
style="display: flex;height: 20px;justify-content: flex-start;border-bottom:1px solid #000;align-items: center"
@@ -1580,7 +1603,7 @@
import {
AddUpdateMesOrder,
ClosedMesOrder,
- DeleteMesOrder, ErpOrderSearch,
+ DeleteMesOrder, ErpOrderSearch, JobCreationSonAddVison,
MesOrderSearch, PartSelectRoute, RouteSelectWkshop, SearchWorkStep,
SelectRouteStep
} from '@/api/scgl'
@@ -1627,7 +1650,9 @@
// { code: 'CREATED', name: '宸插叧闂�' }
{ code: 'ALLO', name: '宸叉淳鍙�' },
{ code: 'START', name: '寮�宸�' },
- { code: 'CLOSED', name: '瀹屽伐' }
+ { code: 'CLOSED', name: '瀹屽伐' },
+ { code: 'NOSCHED', name: '寰呮帓绋�' },
+ { code: 'SCHED', name: '宸叉帓绋�' }
],
total: 10,
radioSelected: '',
@@ -1656,12 +1681,7 @@
bomId: '', // 鐗╂枡娓呭崟id
OperType: '' // 鎿嶄綔绫诲瀷
},
- bomIdArr: [// 鐗╂枡娓呭崟涓嬫媺 鍥犱负鎺ュ彛杩樻病鍐欙紝鏆傛椂鐢ㄥ啓姝荤殑鍊�
- { code: 15, name: 'V5' },
- { code: 14, name: 'V1' },
- { code: 17, name: 'V7' },
- { code: 16, name: 'V6' }
- ],
+ bomIdArr: [], // 鐗╂枡娓呭崟涓嬫媺
ordertypeArr: [// 宸ュ崟绫诲瀷
{ code: 'PO', name: '鏍囧噯宸ュ崟' },
{ code: 'FO', name: '鎶ュ簾琛ュ崟' }
@@ -1821,7 +1841,12 @@
// { code: 3, name: '50*40' },
// { code: 4, name: '50*80' },
// { code: 5, name: '40*30' }
- ]
+ ],
+ pickerOptions: {
+ disabledDate(time) {
+ return time.getTime() < Date.now() - 8.64e7
+ }
+ }
}
},
created() {
@@ -1937,24 +1962,9 @@
this.dialogForm.planstartdate = handleDatetime(new Date())
this.dialogForm.planenddate = handleDatetime(new Date())
this.dialogForm.orderlev = 3
-
- this.dialogForm.bomId = this.getMaxBomId()
- },
- // 鏌ユ壘鐗╂枡娓呭崟閲岄潰鐗堟湰鏈�澶х殑鍊�
- getMaxBomId() {
- let max = 0// 鏈�澶у��
- let code = ''// 鏈�澶у�煎搴旂殑code
- this.bomIdArr.forEach(item => {
- if (parseFloat(item.name.substring(1)) > max) {
- max = parseFloat(item.name.substring(1))
- code = item.code
- }
- })
- return code
},
// 浜у搧淇℃伅鍊兼敼鍙�
async partcodeChange(val) {
- console.log(val, 22)
const { data: res } = await PartSelectRoute({ partcode: val })
this.routeArr = res
@@ -1982,6 +1992,18 @@
const { data: res2 } = await RouteSelectWkshop(data)
this.wkshopArr = res2
this.dialogForm.wkshopcode = ''
+ },
+ // 鏄惁鎺掔▼鍊兼敼鍙樻椂
+ changeIsAps(val) {
+ if (val === 'N') {
+ this.dialogForm.bomId = ''
+ }
+ if (val === 'Y') {
+ JobCreationSonAddVison({ partnumber: this.dialogForm.partcode }).then(res => {
+ this.bomIdArr = res.data
+ this.dialogForm.bomId = this.bomIdArr[0].id
+ })
+ }
},
// 宸ュ簭浠诲姟
async check(row) {
@@ -2026,8 +2048,6 @@
this.dialogForm.planstartdate = row.plan_startdate !== null ? row.plan_startdate : handleDatetime(new Date())
this.dialogForm.planenddate = row.plan_enddate !== null ? row.plan_enddate : handleDatetime(new Date())
this.dialogForm.orderlev = row.piroque !== null ? row.piroque : 3 // 绛夌骇
-
- this.dialogForm.bomId = this.getMaxBomId() // 鏆傛椂鍐欐
})
},
// 鍒犻櫎鎸夐挳
@@ -2042,7 +2062,7 @@
}).then(() => {
console.log(row, 1)
const data = {
- souceid: row.sourceid,
+ souceid: row.sourceid ? row.sourceid : '',
wocode: row.wo_code,
m_po: row.m_po,
orderqty: row.plan_qty
@@ -2105,6 +2125,8 @@
// const { data: res } = await PartSelectRpute({ partcode: val })
// this.routeArr = res
// this.dialogForm.routecode = ''
+ this.dialogForm.isAps = 'N'
+ this.dialogForm.bomId = ''
this.partcodeChange(val)
},
// 瀵硅瘽妗嗗叧闂簨浠�
@@ -2128,7 +2150,9 @@
this.dialogForm.planenddate = '' // 璁″垝瀹屾垚鏃堕棿
this.dialogForm.orderlev = '' // 宸ュ崟绛夌骇
this.dialogForm.isAps = 'N' // 鏄惁鎺掔▼
- this.dialogForm.bomId = this.getMaxBomId()
+ this.dialogForm.bomId = ''
+
+ this.bomIdArr = []
this.$refs.dialogForm.clearValidate()
},
// 瀵硅瘽妗嗗彇娑�
@@ -2161,7 +2185,7 @@
planenddate: this.dialogForm.planenddate, // 璁″垝瀹屾垚鏃堕棿
orderlev: this.dialogForm.orderlev, // 宸ュ崟绛夌骇
is_aps: this.dialogForm.isAps, // 鏄惁鎺掔▼
- bom_id: this.dialogForm.bomId, // 鏄惁鎺掔▼
+ bom_id: this.dialogForm.bomId, // 鐗╂枡娓呭崟id
OperType: this.operation === 'add' ? 'Add' : 'Update'
}
this.$store.state.app.buttonIsDisabled = true
@@ -2263,9 +2287,9 @@
// div.scrollTop = div.scrollHeight // 婊氬姩鏉′綅浜庢渶搴曢儴
div.scrollTop = 0 // 婊氬姩鏉′綅浜庢渶椤堕儴
})
+ this.dialogVisibleApprove = true
}
})
- this.dialogVisibleApprove = true
},
dialogVisibleTaskClose() {
this.dialogForm.mesordercode = ''
@@ -2578,9 +2602,7 @@
this.defaultroute_codeArr = this.dialogFormRoute.routeOperationArr.filter(item => item.isSelected2)
},
// 琛岀偣鍑讳簨浠�
- async rowClick(row, event, column) {
- console.log(row, event, column)
- console.log(row.wo_code, event, column)
+ async rowClick(row, event, column) {
this.radioSelected = row.wo_code
const { data: res } = await SearchWorkStep({ wo_code: row.wo_code })
this.tableDataDetail = res
@@ -2728,9 +2750,9 @@
}
.elTableDiv {
-::v-deep .el-radio__label {
- display: none;
-}
+ ::v-deep .el-radio__label {
+ display: none;
+ }
}
@@ -2901,16 +2923,18 @@
//}
}
-::v-deep .el-select__caret{
+::v-deep .el-select__caret {
display: flex;
align-items: center;
justify-content: center;
}
-.tableFixed{
- ::v-deep .el-table__fixed-right{
+
+.tableFixed {
+ ::v-deep .el-table__fixed-right {
height: 100% !important;
}
- ::v-deep .el-table__fixed{
+
+ ::v-deep .el-table__fixed {
height: 100% !important;
}
}
--
Gitblit v1.9.3