From 46528c3843ce67038ddb2e00dd3d3998c206a69e Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期一, 06 五月 2024 17:26:10 +0800
Subject: [PATCH] 1.递交
---
src/views/workOrder/workOrderList.vue | 290 ++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 204 insertions(+), 86 deletions(-)
diff --git a/src/views/workOrder/workOrderList.vue b/src/views/workOrder/workOrderList.vue
index d2a2399..af688a1 100644
--- a/src/views/workOrder/workOrderList.vue
+++ b/src/views/workOrder/workOrderList.vue
@@ -8,7 +8,7 @@
<el-button v-waves type="success" icon="el-icon-connection" @click="send">娲惧彂</el-button>
</div>
- <el-button v-waves icon="el-icon-switch-button" @click="orderClose">鍏抽棴宸ュ崟</el-button>
+ <!-- <el-button v-waves icon="el-icon-switch-button" @click="orderClose">鍏抽棴宸ュ崟</el-button>-->
</div>
<div class="bodyTopFormGroup">
@@ -20,6 +20,22 @@
style="display: flex;"
>
<div class="elForm">
+ <el-form-item label="杞﹂棿鍚嶇О" style=" display: flex;">
+ <el-select
+ v-model="form.wkshopcode"
+ filterable
+ :popper-append-to-body="false"
+ style="width: 200px"
+ placeholder="璇烽�夋嫨"
+ >
+ <el-option
+ v-for="item in wkshopcodeArr"
+ :key="item.torg_code"
+ :label="item.torg_name"
+ :value="item.torg_code"
+ />
+ </el-select>
+ </el-form-item>
<el-form-item label="宸ュ崟鐘舵��" style=" display: flex;">
<el-select
v-model="form.mesorderstus"
@@ -43,7 +59,7 @@
<el-form-item label="婧愬崟鍗曞彿" style="display: flex;">
<el-input v-model="form.sourceorder" style="width: 200px" placeholder="璇疯緭鍏�" />
</el-form-item>
- <el-form-item label="閿�鍞鍗�" style="display: flex;">
+ <el-form-item v-show="isExpandForm" label="閿�鍞鍗�" style="display: flex;">
<el-input v-model="form.saleordercode" style="width: 200px" placeholder="璇疯緭鍏�" />
</el-form-item>
<el-form-item v-show="isExpandForm" label="鍗曟嵁绫诲瀷" style=" display: flex;">
@@ -247,6 +263,18 @@
width="100"
/>
<el-table-column
+ prop="clerkuser"
+ label="閿�鍞笟鍔″憳"
+ sortable="custom"
+ show-tooltip-when-overflow
+ width="150"
+ >
+ <template slot-scope="{row}">
+ <div v-if="row.clerkuser">{{ row.clerkuser }}</div>
+ <div v-else>/</div>
+ </template>
+ </el-table-column>
+ <el-table-column
prop="wkshp_name"
label="鐢熶骇杞﹂棿"
show-tooltip-when-overflow
@@ -269,13 +297,13 @@
<div v-else>/</div>
</template>
</el-table-column>
- <el-table-column
- prop="data_sources"
- show-tooltip-when-overflow
- label="鏁版嵁鏉ユ簮"
- sortable="custom"
- width="120"
- />
+ <!-- <el-table-column-->
+ <!-- prop="data_sources"-->
+ <!-- show-tooltip-when-overflow-->
+ <!-- label="鏁版嵁鏉ユ簮"-->
+ <!-- sortable="custom"-->
+ <!-- width="120"-->
+ <!-- />-->
<el-table-column
prop="lm_user"
@@ -404,6 +432,11 @@
width="150"
/>
<el-table-column
+ label="宸ュ簭鍗曚环"
+ show-tooltip-when-overflow
+ prop="stepprice"
+ />
+ <el-table-column
label="宸茬敓浜ф暟閲�"
show-tooltip-when-overflow
prop="produceq_qty"
@@ -467,7 +500,7 @@
<!--鏂板娲惧彂瀵硅瘽妗�-->
<el-dialog
v-el-drag-dialog
- :title="operation==='add'?'鏂板':'娲惧彂'"
+ :title="operation==='add'?'鏂板':(operation==='edit'?'淇敼':'璇︽儏')"
:visible.sync="dialogVisible"
width="1200px"
top="8vh"
@@ -599,6 +632,7 @@
:popper-append-to-body="false"
style="width: 200px;"
placeholder="璇烽�夋嫨杞﹂棿"
+ @change="getMesOrderNewStepContent"
>
<el-option
v-for="item in wkshopArr"
@@ -634,6 +668,7 @@
placeholder="璇烽�夋嫨鐩稿搴斿伐搴�"
@change="stepSelectedValueChange"
>
+ <!-- :disabled="!(dialogForm.mesorderstus==='NEW'||dialogForm.mesorderstus==='ALLO')"-->
<el-option
v-for="item in stepSelectArr"
:key="item.stepcode"
@@ -720,7 +755,7 @@
<el-button v-waves @click="dialogVisibleCancel">鍙� 娑�</el-button>
<!-- <el-button v-waves v-if="operation==='add'" type="primary" @click="dialogVisibleConfirmPreview('add')">棰勮</el-button>-->
<el-button
- v-if="operation!=='view'"
+ v-if="operation!=='view'&&(dialogForm.mesorderstus==='NEW'||dialogForm.mesorderstus==='ALLO')"
v-waves
type="primary"
:loading="$store.state.app.buttonIsDisabled"
@@ -883,24 +918,40 @@
<!-- size="mini"-->
<!-- />-->
<!-- </el-form-item>-->
- <el-form-item label="宸ュ崟鐘舵��" style=" display: flex;">
+ <!-- <el-form-item label="宸ュ崟鐘舵��" style=" display: flex;">-->
+ <!-- <el-select-->
+ <!-- v-model="sourceForm.mesordercode"-->
+ <!-- filterable-->
+ <!-- :popper-append-to-body="false"-->
+ <!-- style="width: 200px"-->
+ <!-- placeholder="璇烽�夋嫨"-->
+ <!-- >-->
+ <!-- <el-option-->
+ <!-- v-for="item in erporderstusArr"-->
+ <!-- :key="item.code"-->
+ <!-- :label="item.name"-->
+ <!-- :value="item.code"-->
+ <!-- />-->
+ <!-- </el-select>-->
+ <!-- </el-form-item>-->
+ <el-form-item label="杞﹂棿鍚嶇О" style=" display: flex;">
<el-select
- v-model="sourceForm.mesordercode"
+ v-model="sourceForm.wkshopcode"
filterable
:popper-append-to-body="false"
style="width: 200px"
placeholder="璇烽�夋嫨"
>
<el-option
- v-for="item in erporderstusArr"
- :key="item.code"
- :label="item.name"
- :value="item.code"
+ v-for="item in wkshopcodeArr"
+ :key="item.torg_code"
+ :label="item.torg_name"
+ :value="item.torg_code"
/>
</el-select>
</el-form-item>
<el-form-item label="宸ュ崟缂栧彿" style=" display: flex;">
- <el-input v-model="sourceForm.sourceorder" placeholder="璇疯緭鍏�" style="width: 200px" />
+ <el-input v-model="sourceForm.mesordercode" placeholder="璇疯緭鍏�" style="width: 200px" />
</el-form-item>
<el-form-item label="浜у搧缂栫爜" style=" display: flex;">
<el-input v-model="sourceForm.partcode" style="width: 200px" placeholder="璇疯緭鍏�" />
@@ -909,9 +960,9 @@
<el-form-item v-show="isExpandDialog" label="浜у搧鍚嶇О" style=" display: flex;">
<el-input v-model="sourceForm.partname" style="width: 200px" placeholder="璇疯緭鍏�" />
</el-form-item>
- <el-form-item v-show="isExpandDialog" label="浜у搧瑙勬牸" style=" display: flex;">
- <el-input v-model="sourceForm.partspec" style="width: 200px" placeholder="璇疯緭鍏�" />
- </el-form-item>
+ <!-- <el-form-item v-show="isExpandDialog" label="浜у搧瑙勬牸" style=" display: flex;">-->
+ <!-- <el-input v-model="sourceForm.partspec" style="width: 200px" placeholder="璇疯緭鍏�" />-->
+ <!-- </el-form-item>-->
<el-form-item v-show="isExpandDialog" label="鍒涘缓浜哄憳" style=" display: flex;">
<el-input v-model="sourceForm.creatuser" style="width: 200px" placeholder="璇疯緭鍏�" />
</el-form-item>
@@ -967,10 +1018,10 @@
<div class="elTableDiv">
<el-table
:data="sourceTableData"
- :height="isExpandDialog?(tableHeight+60)+'px':(tableHeight+140)+'px'"
+ :height="isExpandDialog?(tableHeight+100)+'px':(tableHeight+140)+'px'"
border
:row-class-name="tableRowClassName"
- :style="{width: 100+'%',height:isExpandDialog?(tableHeight+60)+'px':(tableHeight+140)+'px',}"
+ :style="{width: 100+'%',height:isExpandDialog?(tableHeight+100)+'px':(tableHeight+140)+'px',}"
highlight-current-row
:header-cell-style="this.$headerCellStyle"
:cell-style="this.$cellStyle"
@@ -995,7 +1046,7 @@
</template>
</el-table-column>
<el-table-column
- prop="RowNum"
+ prop="rowNum"
width="50"
fixed
label="搴忓彿"
@@ -1061,8 +1112,15 @@
/>
<el-table-column
- prop="bad_qty"
- label="鎶ュ簾鏁伴噺"
+ prop="laborbad_qty"
+ label="宸ュ簾鏁伴噺"
+ width="150"
+ show-tooltip-when-overflow
+ sortable="custom"
+ />
+ <el-table-column
+ prop="materielbad_qty"
+ label="鏂欏簾鏁伴噺"
width="150"
show-tooltip-when-overflow
sortable="custom"
@@ -1087,30 +1145,30 @@
<div v-else>/</div>
</template>
</el-table-column>
- <el-table-column
- prop="plan_startdate"
- label="棰勮寮�宸ユ椂闂�"
- show-tooltip-when-overflow
- sortable="custom"
- width="130"
- >
- <template slot-scope="{row}">
- <div v-if="row.plan_startdate">{{ row.plan_startdate.substring(0, 11) }}</div>
- <div v-else>/</div>
- </template>
- </el-table-column>
- <el-table-column
- prop="plan_enddate"
- label="棰勮瀹屽伐鏃堕棿"
- show-tooltip-when-overflow
- sortable="custom"
- width="130"
- >
- <template slot-scope="{row}">
- <div v-if="row.plan_enddate">{{ row.plan_enddate.substring(0, 11) }}</div>
- <div v-else>/</div>
- </template>
- </el-table-column>
+ <!-- <el-table-column-->
+ <!-- prop="plan_startdate"-->
+ <!-- label="棰勮寮�宸ユ椂闂�"-->
+ <!-- show-tooltip-when-overflow-->
+ <!-- sortable="custom"-->
+ <!-- width="130"-->
+ <!-- >-->
+ <!-- <template slot-scope="{row}">-->
+ <!-- <div v-if="row.plan_startdate">{{ row.plan_startdate.substring(0, 11) }}</div>-->
+ <!-- <div v-else>/</div>-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
+ <!-- <el-table-column-->
+ <!-- prop="plan_enddate"-->
+ <!-- label="棰勮瀹屽伐鏃堕棿"-->
+ <!-- show-tooltip-when-overflow-->
+ <!-- sortable="custom"-->
+ <!-- width="130"-->
+ <!-- >-->
+ <!-- <template slot-scope="{row}">-->
+ <!-- <div v-if="row.plan_enddate">{{ row.plan_enddate.substring(0, 11) }}</div>-->
+ <!-- <div v-else>/</div>-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
<el-table-column
prop="lm_user"
label="鍒涘缓浜哄憳"
@@ -1216,11 +1274,12 @@
<el-form-item label="宸ュ崟鏁伴噺:" class="formContent">
{{ formApprove.plan_qty }}
</el-form-item>
- <el-form-item label="宸ヨ壓璺嚎:" class="formContent">
- {{ formApprove.routename }}
- </el-form-item>
+ <!-- <el-form-item label="宸ヨ壓璺嚎:" class="formContent">-->
+ <!-- {{ formApprove.routename }}-->
+ <!-- </el-form-item>-->
<el-form-item label="鎵撳嵃浜哄憳:" class="formContent">
- {{ username }}
+ <!-- {{ localStorage.getItem('username') }}-->
+ {{ formApprove.routename }}
</el-form-item>
<el-form-item label="鎵撳嵃鏃堕棿:" class="formContent">
{{ formApprove.lm_date }}
@@ -1922,14 +1981,15 @@
import {
AddMesOrderCodeSearch,
AddUpdateMesOrder, DeleteMesOrder,
- MesBadOrderSearch, MesOrderDistribution,
+ MesBadOrderSearch, MesOrderDistribution, MesOrderNewStepContent,
MesOrderSearch,
UpdateMesOrderStepSearch
} from '@/api/WorkOrder'
import { PartSelect } from '@/api/ProductModel'
-import { PrentOrganization, StepData } from '@/api/GeneralBasicData'
+import { PrentOrganization, PrentOrganizationNoCompany, StepData } from '@/api/GeneralBasicData'
import Sortable from 'sortablejs'
-import ElDragSelect from '@/components/DragSelect' // base on element-ui
+import ElDragSelect from '@/components/DragSelect'
+import { MesOrderPrintSearch } from '@/api/GridReport' // base on element-ui
export default {
name: 'WorkOrderList',
@@ -1947,6 +2007,7 @@
tableHeight: 0,
username: '',
form: {
+ wkshopcode: '', // 杞﹂棿缂栫爜
mesorderstus: '', // 宸ュ崟鐘舵�佺爜
mesordercode: '', // 宸ュ崟缂栧彿
partcode: '', // 浜у搧缂栫爜
@@ -1968,10 +2029,11 @@
// { code: 'CREATED', name: '宸插叧闂�' }
{ code: 'ALLO', name: '宸叉淳鍙�' },
{ code: 'START', name: '寮�宸�' },
- { code: 'CLOSED', name: '瀹屽伐' },
- { code: 'NOSCHED', name: '寰呮帓绋�' },
- { code: 'SCHED', name: '宸叉帓绋�' }
+ { code: 'CLOSED', name: '瀹屽伐' }
+ // { code: 'NOSCHED', name: '寰呮帓绋�' },
+ // { code: 'SCHED', name: '宸叉帓绋�' }
],
+ wkshopcodeArr: [],
total: 10,
tableData: [],
dialogVisible: false,
@@ -2118,6 +2180,7 @@
dialogVisibleSource: false,
sourceTableData: [],
sourceForm: {
+ wkshopcode: '', // 杞﹂棿缂栫爜
mesordercode: '', // 宸ュ崟缂栧彿
sourceorder: '', // 璁㈠崟缂栧彿
saleordercode: '', // 閿�鍞鍗曞彿
@@ -2240,8 +2303,13 @@
this.getMesOrderSearch().then(res => {
if (res.code === '200') {
this.getSelect()
+ this.getPrentOrganizationNoCompany()
}
})
+ },
+ async getPrentOrganizationNoCompany() {
+ const { data: res } = await PrentOrganizationNoCompany()
+ this.wkshopcodeArr = res
},
async getMesOrderSearch() {
// let tempDate = this.form.createdate
@@ -2250,6 +2318,7 @@
// }
const data = {
+ wkshopcode: this.form.wkshopcode,
mesorderstus: this.form.mesorderstus, // 宸ュ崟鐘舵�佺爜
mesordercode: this.form.mesordercode, // 宸ュ崟缂栧彿
partcode: this.form.partcode, // 浜у搧缂栫爜
@@ -2321,6 +2390,7 @@
// 閲嶇疆
reset(val) {
+ this.form.wkshopcode = ''
this.form.mesorderstus = ''
this.form.mesordercode = ''
this.form.partcode = ''
@@ -2364,15 +2434,14 @@
},
selected(row, index) {
- // && row.isstep === 'Y' //鍚庣杩欎釜瀛楁杩樻病鏀惧嚭鏉�
- if (row.status === 'NEW') {
- return true
- } else {
- return false
- }
+ return row.status === 'NEW' && row.isstep === 'Y'
},
// 娲惧彂
send() {
+ if (this.multipleSelection.length === 0) {
+ return this.$message.info('璇峰厛鍕鹃�夌浉瀵瑰簲鐨勫伐鍗曪紒')
+ }
+
this.$confirm('鏄惁纭娲惧彂?', '鎻愮ず', {
confirmButtonText: '纭畾',
cancelButtonText: '鍙栨秷',
@@ -2381,9 +2450,6 @@
MesOrderDistribution(this.multipleSelection).then(res => {
if (res.code === '200') {
this.$notify.success('娲惧彂鎴愬姛!')
- if (this.form.page > 1 && this.tableData.length === 1) {
- this.form.page--
- }
this.getMesOrderSearch()
}
})
@@ -2447,16 +2513,36 @@
const { data: res } = await UpdateMesOrderStepSearch(data)
this.dialogForm.mesmaxqty = res.canupdate_qty
- res.stepdata.forEach(i => {
- this.stepTableData.push(
- {
- stepcode: i.step_code,
- stepname: i.stepname,
- stepprice: i.stepprice
- }
- )
- })
- this.stepSelectedValue = this.stepTableData.map(i => i.stepcode)
+ if (res.stepdata.length > 0) {
+ res.stepdata.forEach(i => {
+ this.stepTableData.push(
+ {
+ stepcode: i.step_code,
+ stepname: i.stepname,
+ stepprice: i.stepprice
+ }
+ )
+ })
+ this.stepSelectedValue = this.stepTableData.map(i => i.stepcode)
+ } else {
+ const data2 = {
+ wkshopcode: this.dialogForm.wkshopcode,
+ partcode: this.dialogForm.partcode
+ }
+ const { data: res2 } = await MesOrderNewStepContent(data2)
+ if (res2.length > 0) {
+ res2.forEach(i => {
+ this.stepTableData.push(
+ {
+ stepcode: i.step_code,
+ // stepname: i.stepname,
+ stepprice: i.stepprice
+ }
+ )
+ })
+ this.stepSelectedValue = this.stepTableData.map(i => i.stepcode)
+ }
+ }
this.dialogVisible = true
},
@@ -2470,7 +2556,33 @@
this.dialogForm.partname = this.partArr.find(item => item.partcode === val).partname
this.dialogForm.partcode = this.partArr.find(item => item.partcode === val).partcode
this.dialogForm.partspec = this.partArr.find(item => item.partcode === val).partspec
+ if (this.dialogForm.wkshopcode) {
+ this.getMesOrderNewStepContent()
+ }
},
+ async getMesOrderNewStepContent() {
+ const data = {
+ wkshopcode: this.dialogForm.wkshopcode,
+ partcode: this.dialogForm.partcode
+ }
+ const { data: res } = await MesOrderNewStepContent(data)
+ // console.log(res)
+ this.stepSelectedValue = []
+ this.stepTableData = []
+ if (res.length > 0) {
+ res.forEach(i => {
+ this.stepTableData.push(
+ {
+ stepcode: i.step_code,
+ // stepname: i.stepname,
+ stepprice: i.stepprice
+ }
+ )
+ })
+ this.stepSelectedValue = this.stepTableData.map(i => i.stepcode)
+ }
+ },
+
// 瀵硅瘽妗嗗叧闂簨浠�
handleClose() {
this.dialogForm = {
@@ -2523,6 +2635,10 @@
}
)
})
+
+ if (workListSub.length === 0) {
+ return this.$message.info('宸ュ簭涓嶈兘涓虹┖锛�')
+ }
const data = {
wostatus: this.dialogForm.mesorderstus, // 宸ュ崟鐘舵��
@@ -2607,21 +2723,20 @@
// console.log(number)
const data2 = {
- username: getCookie('admin'),
mesordercode: wo_code || this.dialogForm.mesordercode
}
- MesOrderPrintSearch1(data2).then(res2 => {
+ MesOrderPrintSearch(data2).then(res2 => {
if (res2.code === '200') {
const res3 = res2.data.recordset
this.tableDataPrint = res3
this.formApprove.mesordercode = res3[0].wo_code
- this.formApprove.m_po = res3[0].m_po
+ this.formApprove.m_po = res3[0].m_po || '/'
this.formApprove.partcode = res3[0].partcode
this.formApprove.partname = res3[0].partname
- this.formApprove.partspec = res3[0].partspec
+ this.formApprove.partspec = res3[0].partspec || '/'
this.formApprove.plan_qty = res3[0].plan_qty
- this.formApprove.routename = res3[0].routename
+ this.formApprove.routename = localStorage.getItem('username') // 鎵撳嵃浜哄憳
this.formApprove.lm_date = res3[0].lm_date
this.$nextTick(() => {
@@ -2820,9 +2935,10 @@
}
const data = {
+ wkshopcode: this.form.wkshopcode, // 杞﹂棿缂栫爜
mesordercode: this.sourceForm.mesordercode, // 宸ュ崟缂栧彿
- sourceorder: this.sourceForm.sourceorder, // 璁㈠崟璁㈠崟鍙�
- saleordercode: this.sourceForm.sourceorder, // 璁㈠崟璁㈠崟鍙�
+ sourceorder: '', // 婧愬崟鍗曞彿
+ saleordercode: '', // 閿�鍞崟鍙�
partcode: this.sourceForm.partcode, // 浜у搧缂栫爜
partname: this.sourceForm.partname, // 浜у搧鍚嶇О
partspec: this.sourceForm.partspec, // 浜у搧瑙勬牸
@@ -2855,6 +2971,7 @@
this.getMesBadOrderSearch()
},
sourceReset() {
+ this.sourceForm.wkshopcode = ''
this.sourceForm.mesordercode = ''
this.sourceForm.sourceorder = ''
this.sourceForm.partcode = ''
@@ -2869,6 +2986,7 @@
dialogVisibleSourceClose() {
this.radioSelectedId = ''
+ this.sourceForm.wkshopcode = ''
this.sourceForm.mesordercode = ''
this.sourceForm.sourceorder = ''
this.sourceForm.partcode = ''
--
Gitblit v1.9.3