From 9b825939b7f0a7439d704b379812362dd95697fc Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期一, 11 七月 2022 17:49:26 +0800
Subject: [PATCH] 1.优化代码2.修改实施部提出的bug3.生产开报工外协列表自动弹窗实现部分
---
src/views/scgl/sckbg.vue | 241 +++++++++++++++++++++++++++++++++--------------
1 files changed, 167 insertions(+), 74 deletions(-)
diff --git a/src/views/scgl/sckbg.vue b/src/views/scgl/sckbg.vue
index 9c3ac1c..85e1105 100644
--- a/src/views/scgl/sckbg.vue
+++ b/src/views/scgl/sckbg.vue
@@ -8,10 +8,10 @@
<div style="display: flex;align-items: center">
<div style="width: 70px">宸ュ簭鐮侊細</div>
<el-input
- v-model="produceCode"
- oninput="value=value.replace(/[^0-9a-zA-Z;]/g,'')"
+ v-model="form.orderstepqrcode"
+ oninput="value=value.replace(/[^0-9a-zA-Z;_]/g,'')"
name="produceCode"
- style="width: 500px"
+ style="width: 300px"
@keyup.enter.native="val=>enterNative(val,'produceCode')"
/>
</div>
@@ -30,7 +30,7 @@
<div class="elTableDiv">
<el-table
:data="tableData"
- :height="tableHeight"
+ :height="tableHeight+'px'"
border
stripe
:style="{width: 100+'%',height:tableHeight+'px',}"
@@ -39,18 +39,19 @@
:cell-style="this.$cellStyle"
@sort-change="sortChange"
>
- <!-- <el-table-column-->
- <!-- width="50"-->
- <!-- >-->
- <!-- <template slot-scope="{row}">-->
- <!-- <!– <el-radio–>-->
- <!-- <!– v-model="radioSelected"–>-->
- <!-- <!– :label="row.wo"–>-->
- <!-- <!– style="color: #fff;padding-left: 10px; margin-right: -25px;"–>-->
- <!-- <!– @change.native="getCurrentRow(row.wo)"–>-->
- <!-- <!– />–>-->
- <!-- </template>-->
- <!-- </el-table-column>-->
+ <el-table-column
+ width="50"
+ fixed
+ >
+ <template slot-scope="{row}">
+ <el-radio
+ v-model="radioSelected"
+ :label="row.wo"
+ style="color: #fff;padding-left: 10px; margin-right: -25px;"
+ @change.native="getCurrentRow(row.wo)"
+ />
+ </template>
+ </el-table-column>
<el-table-column
prop="RowNum"
width="50"
@@ -153,12 +154,26 @@
<el-tab-pane label="澶栧崗鍒楄〃">
<div style="margin-left: 10px;margin-top:10px;display: flex;justify-content: space-between">
<div style="display: flex;align-items: center">
- <div style="width: 70px">宸ュ簭鐮侊細</div>
+ <div style="width: 90px;">澶栧崗绫诲瀷锛�</div>
+ <el-select
+ v-model="WXSelected"
+ filterable
+ style="width: 200px"
+ placeholder="璇烽�夋嫨"
+ >
+ <el-option
+ v-for="item in WXSelectArr"
+ :key="item.code"
+ :label="item.name"
+ :value="item.code"
+ />
+ </el-select>
+ <div style="width: 70px;margin-left: 20px">宸ュ簭鐮侊細</div>
<el-input
- v-model="WXproduceCode"
- oninput="value=value.replace(/[^0-9a-zA-Z;]/g,'')"
+ v-model="WXform.orderstepqrcode"
+ oninput="value=value.replace(/[^0-9a-zA-Z;_]/g,'')"
name="WXproduceCode"
- style="width: 500px"
+ style="width: 300px"
@keyup.enter.native="val=>enterNative(val,'WXproduceCode')"
/>
</div>
@@ -177,27 +192,28 @@
<div class="elTableDiv">
<el-table
:data="WXtableData"
- :height="tableHeight"
+ :height="tableHeight+'px'"
border
stripe
:style="{width: 100+'%',height:tableHeight+'px',}"
highlight-current-row
:header-cell-style="this.$headerCellStyle"
:cell-style="this.$cellStyle"
- @sort-change="sortChange"
+ @sort-change="WXsortChange"
>
- <!-- <el-table-column-->
- <!-- width="50"-->
- <!-- >-->
- <!-- <template slot-scope="{row}">-->
- <!-- <!– <el-radio–>-->
- <!-- <!– v-model="radioSelected"–>-->
- <!-- <!– :label="row.wo"–>-->
- <!-- <!– style="color: #fff;padding-left: 10px; margin-right: -25px;"–>-->
- <!-- <!– @change.native="getCurrentRow(row.wo)"–>-->
- <!-- <!– />–>-->
- <!-- </template>-->
- <!-- </el-table-column>-->
+ <el-table-column
+ width="50"
+ fixed
+ >
+ <template slot-scope="{row}">
+ <el-radio
+ v-model="radioSelected"
+ :label="row.wo_code"
+ style="color: #fff;padding-left: 10px; margin-right: -25px;"
+ @change.native="getWXCurrentRow(row.wo_code)"
+ />
+ </template>
+ </el-table-column>
<el-table-column
prop="RowNum"
width="50"
@@ -235,8 +251,8 @@
width="150"
/>
<el-table-column
- prop="seq"
- width="80"
+ prop="stepname"
+ width="100"
label="宸ュ簭"
sortable="custom"
/>
@@ -317,29 +333,29 @@
<div style="width: 200px">{{ dialogForm.wo_code }}</div>
</el-form-item>
<el-form-item label="浜у搧缂栫爜锛�">
- <div style="width: 200px">427100</div>
+ <div style="width: 200px">{{ dialogForm.partcode }}</div>
</el-form-item>
<el-form-item label="浜у搧鍚嶇О锛�">
- <div style="width: 200px">鏈虹鏉垮簳</div>
+ <div style="width: 200px">{{ dialogForm.partname }}</div>
</el-form-item>
<el-form-item label="浜у搧瑙勬牸锛�">
- <div style="width: 200px">鏈虹搴曟澘&1</div>
+ <div style="width: 200px">{{ dialogForm.partspec }}</div>
</el-form-item>
<el-form-item label="褰撳墠宸ュ簭锛�">
- <div style="width: 200px">婵�鍏夊垏鍓�</div>
+ <div style="width: 200px">{{ dialogForm.stepname }}</div>
</el-form-item>
<el-form-item label="宸ュ簭鎻忚堪锛�">
- <el-tooltip class="item" effect="dark" content="鍘熸潗鏂欏垏鎸夋潗鏂欏垏鎸夋潗鏂欏垏鎸夋椂鎵撳崱鏁版嵁鐨勫崱" placement="top-start">
- <div style="width: 200px;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;">
- 鍘熸潗鏂欏垏鎸夋潗鏂欏垏鎸夋潗鏂欏垏鎸夋椂鎵撳崱鏁版嵁鐨勫崱
- </div>
- </el-tooltip>
+ <!-- <el-tooltip class="item" effect="dark" content="鍘熸潗鏂欏垏鎸夋潗鏂欏垏鎸夋潗鏂欏垏鎸夋椂鎵撳崱鏁版嵁鐨勫崱" placement="top-start">-->
+ <div style="width: 200px;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;">
+ {{ dialogForm.stepdesc }}
+ </div>
+ <!-- </el-tooltip>-->
</el-form-item>
<el-form-item label="浠诲姟鏁伴噺锛�">
- <div style="width: 200px">1000</div>
+ <div style="width: 200px">{{ dialogForm.planqty }}</div>
</el-form-item>
- <el-form-item label="鏈姤/宸叉姤锛�">
- <div style="width: 200px">900/100</div>
+ <el-form-item :label="dialogTitle==='鑷埗寮�濮�'||dialogTitle==='鑷埗鎶ュ伐'?'鏈姤/宸叉姤锛�':'鏈彂/宸插彂锛�'">
+ <div style="width: 200px">{{ dialogForm.noreportqty }}/{{ dialogForm.reportqty }}</div>
</el-form-item>
<el-form-item v-if="dialogTitle==='鑷埗寮�濮�'" label="寮�宸ユ暟閲忥細">
@@ -582,10 +598,11 @@
import {
MesOrderGroupSelectUser,
MesOrderStepReportSelectUserGroup,
- MesOrderStepSearch,
+ MesOrderStepSearch, MesOrderStepStart,
MesOrderStepStartSelectEqp,
MesOrderWxStepSearch
} from '@/api/scgl'
+import { MesOrderStepSelectWX } from '@/api/sbgl'
const SER_HZ = /^[\u4e00-\u9fa5]+$/
export default {
@@ -617,6 +634,8 @@
tableHeight: 0,
produceCode: '', // 宸ュ簭鐮�
WXproduceCode: '', // 澶栧崗宸ュ簭鐮�
+ radioSelected: '', // 宸ュ簭閫変腑
+ WXradioSelected: '', // 宸ュ簭閫変腑
form: {
orderstepqrcode: 'PO202206280001_4;Step01', // 鎵弿鐨勪簩缁寸爜淇℃伅
prop: 'wo', // 鎺掑簭瀛楁
@@ -627,6 +646,7 @@
total: 10,
tableData: [],
WXform: { // 澶栧崗琛ㄥ崟
+ // PO202206280001_4;Step01
orderstepqrcode: 'PO202206280001_4;Step01', // 鎵弿鐨勪簩缁寸爜淇℃伅
prop: 'wo_code', // 鎺掑簭瀛楁
order: 'asc', // 鎺掑簭瀛楁
@@ -636,6 +656,15 @@
WXtotal: 10, // 澶栧崗琛ㄥ崟鎬绘暟
WXtableData: [], // 澶栧崗琛�
+ WXSelectArr: [// 澶栧崗绫诲瀷涓嬫媺鍒楄〃
+ { code: 'OUT', name: '鍙戞枡' },
+ { code: 'IN', name: '鏀舵枡' }
+ ],
+ WXSelected: 'OUT', // 澶栧崗涓嬫媺鍒楄〃閫変腑鍊�
+
+ judgeIsDialog: false, // 鍒ゆ柇鏄惁鑷姩寮圭獥
+ judgeIsDialogNumber: false, // 鍒ゆ柇寮瑰摢涓獥
+
dialogVisible: false,
dialogTitle: '', // 鑷埗寮�濮嬨�佽嚜鍒舵姤宸ャ�佸鍗忓彂鏂欍�佸鍗忔敹鏂�
dialogForm: {
@@ -643,12 +672,21 @@
partcode: '', // 浜у搧缂栫爜
partname: '', // 浜у搧鍚嶇О
partspec: '', // 浜у搧瑙勬牸
- currentstep: '', // 褰撳墠宸ュ簭
- nextstep: '', // 涓嬩竴閬撳伐搴�
- desr: '', // 宸ュ簭鎻忚堪
- plan_qty: '', // 浠诲姟鏁伴噺
- report_qty: '', // 宸叉姤鏁伴噺
- noreport_qty: '' // 鏈姤鏁伴噺
+ stepname: '', // 褰撳墠宸ュ簭鍚�
+ nextstepname: '', // 涓嬩竴閬撳伐搴忓悕
+ stepdesc: '', // 宸ュ簭鎻忚堪
+ planqty: '', // 浠诲姟鏁伴噺
+ reportqty: '', // 宸叉姤鏁伴噺
+ noreportqty: '', // 鏈姤鏁伴噺
+ startqty: '' // 鍙戞枡鏁伴噺
+
+ // eqpcode: '', // 璁惧缂栫爜
+ // usergroupcode: '', // 鐝粍缂栫爜
+ // reportuser: '', // 鎶ュ伐浜哄憳
+ // taskqty: '', // 浠诲姟鏁伴噺
+ // startqty: '', // 寮�宸ユ暟閲�
+ // reportqty: '', // 鎶ュ伐鏁伴噺
+ // ngqty: '' // 涓嶈壇鏁伴噺
},
userTableData: [
@@ -678,7 +716,8 @@
}
},
created() {
- this.getMesOrderStepSearch()
+ // this.getMesOrderStepSearch()
+ this.tabClick()
},
mounted() {
window.addEventListener('resize', this.getHeight)
@@ -691,13 +730,16 @@
methods: {
async getMesOrderStepSearch() {
const res = await MesOrderStepSearch(this.form)
- this.tableData = res.data
- this.total = res.count
+ if (res.code === '200') {
+ this.tableData = res.data
+ this.total = res.count
+ }
},
- async MesOrderWxStepSearch() {
+ async getMesOrderWxStepSearch() {
const res = await MesOrderWxStepSearch(this.WXform)
- this.WXtableData = res.data
- this.WXtotal = res.count
+ if (res.code === '200') {
+ this.WXtableData = res.data
+ }
},
// 鎺掑簭鏀瑰彉鏃�
sortChange({ column, prop, order }) {
@@ -712,29 +754,52 @@
this.form.prop = prop
this.getMesOrderStepSearch()
},
- getCurrentRow() {
+ // WX鎺掑簭鏀瑰彉鏃�
+ WXsortChange({ column, prop, order }) {
+ if (order === 'descending') {
+ order = 'desc'
+ } else if (order === 'ascending') {
+ order = 'asc'
+ } else {
+ order = 'desc'
+ }
+ this.WXform.order = order
+ this.WXform.prop = prop
+ this.getMesOrderWxStepSearch()
+ },
+ // 鑷埗椤电鍘熺偣鐐瑰嚮
+ getCurrentRow(val) {
+ },
+ // 澶栧崗椤电鍘熺偣鐐瑰嚮
+ getWXCurrentRow(val) {
+ console.log(val)
+ this.WXradioSelected = val
},
// tab鎸夐挳鍒囨崲榧犳爣鑷姩鑱氱劍
tabClick(val, d) {
console.log(val, d, 1)
if (this.$refs.elTabs.currentName === '0') {
- this.getMesOrderStepSearch()
this.$nextTick(() => {
$("input[name='produceCode']")[0].focus()
})
}
if (this.$refs.elTabs.currentName === '1') {
- this.MesOrderWxStepSearch()
this.$nextTick(() => {
$("input[name='WXproduceCode']")[0].focus()
})
}
},
+ // 鎵爜閿洏鍥炶溅浜嬩欢
async enterNative(val, belong) {
console.log(val, belong)
+ // 寮�宸ワ細code="200" count=0
+ // 鎶ュ伐锛歝ode="200" count=1
+ // 鍙戞枡锛歝ode="200" count=2
+ // 鏀舵枡锛歝ode="200" count=3
+ // 璧板垪琛ㄥ舰寮� code="200" count=4
if (belong === 'produceCode') {
- this.ZZreport()
+ // this.ZZreport()
// 鏌ユ壘璁惧
// const {data:res} = await MesOrderStepStartSelectEqp({ orderstepqrcode: this.produceCode })
// this.xxx=res
@@ -742,7 +807,15 @@
// const { data: res2 } = await MesOrderStepReportSelectUserGroup()
}
if (belong === 'WXproduceCode') {
-
+ const data = {
+ OperType: 'WX',
+ orderstepqrcode: this.WXform.orderstepqrcode,
+ SelectType: this.WXSelected// OUT銆両N
+ }
+ const res = await MesOrderStepStart(data)
+ if (res.code === '200' && res.count === 2) {
+ this.WXsend(res.data)
+ }
}
},
// 鏌ヨ
@@ -765,13 +838,29 @@
this.getUserTableData()
},
// 澶栧崗鍙戞枡
- async WXsend() {
+ async WXsend(obj) {
+ if (this.WXradioSelected.length < 1 && obj.length < 1) {
+ return this.$message.info('璇峰厛閫夋嫨宸ュ簭锛�')
+ }
this.dialogTitle = '澶栧崗鍙戞枡'
- this.dialogVisibleTrue()
- // this.dialogVisible = true
+ this.dialogVisible = true
+ console.log(obj, 321)
+ this.dialogForm.wo_code = obj.wo_code
+ this.dialogForm.partcode = obj.partnumber
+ this.dialogForm.partname = obj.partname
+ this.dialogForm.partspec = obj.partspec
+ this.dialogForm.stepname = obj.stepname
+ this.dialogForm.stepdesc = obj.stepdesc
+ this.dialogForm.planqty = obj.planqty
+ this.dialogForm.reportqty = obj.reportqty
+ this.dialogForm.noreportqty = obj.noreportqty
+ this.dialogForm.startqty = obj.startqty
- // const { data: res } = await MesOrderStepReportSelectUserGroup()
- // this.xx = res
+ // const data = {
+ //
+ // }
+ // const res = await MesOrderStepSelectWX(data)
+ // console.log(res)
},
// 澶栧崗鏀舵枡
WXback() {
@@ -780,7 +869,7 @@
// this.dialogVisible = true
},
dialogVisibleTrue() {
- this.dialogVisible = true
+ // this.dialogVisible = true
// this.dialogForm.wo_code=
},
// 鎶ュ伐鏌ヨ鐢ㄦ埛琛�
@@ -1051,12 +1140,16 @@
border-color: $main_color;
}
-.dialogVisible{
+//.dialogVisible{
::v-deep .el-select .el-input .el-select__caret {
display: flex;
align-items: center;
justify-content: center;
}
+//}
+.elTableDiv {
+ ::v-deep .el-radio__label {
+ display: none;
+ }
}
-
</style>
--
Gitblit v1.9.3