From 4e67e56b63ca4f507490b034812533c8f00286c1 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期日, 08 十月 2023 17:52:53 +0800
Subject: [PATCH] 1.报工调整90%
---
src/views/produce/reportCorrect.vue | 311 ++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 276 insertions(+), 35 deletions(-)
diff --git a/src/views/produce/reportCorrect.vue b/src/views/produce/reportCorrect.vue
index 1b59bf1..f101c93 100644
--- a/src/views/produce/reportCorrect.vue
+++ b/src/views/produce/reportCorrect.vue
@@ -69,12 +69,10 @@
row-class-name="custom-row"
:style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+40)+'px',}"
highlight-current-row
-
:header-cell-style="this.$headerCellStyle"
:cell-style="this.$cellStyle"
@sort-change="sortChange"
>
- <!-- :row-key="getRowKey"-->
<!-- <el-table-column-->
<!-- type="selection"-->
<!-- width="50"-->
@@ -231,7 +229,7 @@
v-el-drag-dialog
title="鎶ュ伐璋冩暣"
:visible.sync="dialogVisible"
- width="800px"
+ width="1080px"
:close-on-click-modal="false"
top="15vh"
@closed="handleClose"
@@ -240,25 +238,146 @@
<el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="80px">
<el-divider content-position="left">宸ュ崟淇℃伅</el-divider>
- <el-form-item label="宸ュ崟缂栧彿">
- <el-input v-model="dialogForm.postcode" style="width: 200px" />
+ <el-form-item label="宸ュ崟缂栧彿" class="dialogFormItem">
+ <div style="width: 200px;">
+ {{ dialogForm.wo_code }}
+ </div>
+ <!-- <el-input v-model="dialogForm.postcode" style="width: 200px" />-->
</el-form-item>
- <el-form-item label="" prop="postname">
- <el-input v-model="dialogForm.postname" style="width: 200px" />
+ <el-form-item label="浜у搧缂栫爜" class="dialogFormItem">
+ <div style="width: 200px;">
+ {{ dialogForm.partnumber }}
+ </div>
+ <!-- <el-input v-model="dialogForm.postname" style="width: 200px" />-->
</el-form-item>
- <el-form-item label="鎻忚堪">
+ <el-form-item label="浜у搧鍚嶇О" class="dialogFormItem">
+ <div style="width: 200px;">
+ {{ dialogForm.partname }}
+ </div>
+ </el-form-item>
+ <el-form-item label="浜у搧瑙勬牸" class="dialogFormItem">
+ <div style="width: 200px;">
+ {{ dialogForm.partspec ? dialogForm.partspec : '/' }}
+ </div>
+ </el-form-item>
+ <el-form-item label="鐢熶骇宸ュ簭" class="dialogFormItem">
+ <div style="width: 200px;">
+ {{ dialogForm.step_name }}
+ </div>
+ </el-form-item>
+ <el-form-item label="宸ュ簭鍗曚环" class="dialogFormItem">
+ <div style="width: 200px;">
+ {{ dialogForm.unprice }}
+ </div>
+ </el-form-item>
+ <el-form-item label="鎶ュ伐鐝粍" class="dialogFormItem">
+ <div style="width: 200px;" class="ellipsis">
+ {{ dialogForm.usergroup_name ? dialogForm.usergroup_name : '/' }}
+ </div>
+ </el-form-item>
+ <el-form-item label="鎶ュ伐浜哄憳" class="dialogFormItem">
+ <div style="width: 200px;" class="ellipsis">
+ {{ dialogForm.username }}
+ </div>
+ </el-form-item>
+ <el-form-item label="鍚堟牸鏁伴噺" prop="report_qty" class="dialogFormItem">
<el-input
- v-model="dialogForm.description"
- type="textarea"
+ v-model="dialogForm.report_qty"
+ oninput="value=value.replace(/[^0-9]/g,'')"
style="width: 200px"
/>
</el-form-item>
- <el-form-item required label="宀椾綅鐘舵��">
- <el-radio-group v-model="dialogForm.status">
- <el-radio label="Y">姝e父</el-radio>
- <el-radio label="N">鍋滅敤</el-radio>
- </el-radio-group>
- </el-form-item>
+
+ <el-divider content-position="left">鎶ュ伐鎯呭喌</el-divider>
+
+ <el-table
+ ref="tableDataDialogRef"
+ key="tableDataDialogKey"
+ :data="tableDataDialog"
+ border
+ row-class-name="custom-row"
+ height="200"
+ style="width: 100%;margin-top: 15px;"
+ highlight-current-row
+ :header-cell-style="this.$headerCellStyle"
+ :cell-style="this.$cellStyle"
+ >
+ <el-table-column
+ type="index"
+ label="搴忓彿"
+ align="center"
+ width="50"
+ />
+ <el-table-column
+ prop="stepcode"
+ show-tooltip-when-overflow
+ label="缂洪櫡缂栫爜/鍚嶇О"
+ align="center"
+ min-width="400"
+ >
+ <template slot-scope="{row}">
+ <el-select
+ v-model="row.defect_code"
+ style="width: 100%"
+ placeholder="璇烽�夋嫨"
+ multiple
+ filterable
+ >
+ <!-- collapse-tags-->
+ <el-option
+ v-for="item in defectArr"
+ :key="item.code"
+ :label="item.name"
+ :value="item.code"
+ />
+ </el-select>
+ </template>
+ </el-table-column>
+
+ <el-table-column
+ prop="defect_qty"
+ label="涓嶈壇鏁伴噺"
+ align="center"
+ >
+ <template slot-scope="{row}">
+ <el-input
+ v-model="row.defect_qty"
+ placeholder="璇疯緭鍏ユ暟閲�"
+ oninput="value=value.replace(/[^0-9]/g,'')"
+ style="width: 100%"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="laborbad_qty"
+ label="宸ュ簾鏁伴噺"
+ align="center"
+ >
+ <template slot-scope="{row}">
+ <el-input
+ v-model="row.laborbad_qty"
+ placeholder="璇疯緭鍏ユ暟閲�"
+ oninput="value=value.replace(/[^0-9]/g,'')"
+ style="width: 100%"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="materielbad_qty"
+ label="鏂欏簾鏁伴噺"
+ align="center"
+ >
+ <template slot-scope="{row}">
+ <el-input
+ v-model="row.materielbad_qty"
+ placeholder="璇疯緭鍏ユ暟閲�"
+ oninput="value=value.replace(/[^0-9]/g,'')"
+ style="width: 100%"
+ />
+ </template>
+ </el-table-column>
+ </el-table>
+
</el-form>
<span slot="footer" class="dialog-footer">
<div class="footerButton">
@@ -279,18 +398,11 @@
<script>
import Pagination from '@/components/Pagination'
-import {
- AddUpdatePost, RoleAssignedUserBatchAdd,
- RoleAssignedUserBatchCancel,
- RoleAssignedUserData
-
-} from '@/api/basicSettings'
-import { handleDatetime, validateCode } from '@/utils/global'
+import { handleDatetime } from '@/utils/global'
import elDragDialog from '@/directive/el-drag-dialog'
import waves from '@/directive/waves'
-import arrayToTree from 'array-to-tree'
-import { GroupsPermissions, PostPermissions, PrentOrganization, RolePermissions } from '@/api/GeneralBasicData'
-import { MesOrderStepModelSearch, MesOrderStepVerifySearch } from '@/api/WorkOrder'
+import { DefectPermissions } from '@/api/GeneralBasicData'
+import { MesOrderStepModelSearch, MesOrderStepUpdateSeave, MesOrderStepVerifySearch } from '@/api/WorkOrder'
export default {
name: 'Zzjg',
@@ -322,10 +434,40 @@
dialogVisible: false,
dialogForm: {
-
+ 'id': '',
+ 'sbid': '',
+ 'wo_code': '',
+ 'partnumber': '',
+ partname: '',
+ partspec: '',
+ usergroup_name: '',
+ username: '',
+ 'task_qty': '',
+ 'wkshp_code': '',
+ 'eqp_code': '',
+ 'step_seq': '',
+ 'step_code': '',
+ 'step_name': '',
+ 'flw_type': '',
+ 'first_choke': '',
+ 'last_choke': '',
+ 'unprice': '',
+ 'groupcode': '',
+ 'usercode': '',
+ 'report_date': '',
+ 'report_qty': '',
+ 'report_dvalue': '',
+ children: []
},
tableDataDialog: [],
- totalDialog: 10
+
+ defectArr: [], // 涓嶈壇缂洪櫡
+
+ dialogFormRules: {
+ report_qty: [
+ { required: true, message: '璇疯緭鍏ュ悎鏍兼暟閲�', trigger: ['blur', 'change'] }
+ ]
+ }
}
},
@@ -336,8 +478,13 @@
this.getHeight()
this.getMesOrderStepVerifySearch()
+ this.getDefectPermissions()
},
methods: {
+ async getDefectPermissions() {
+ const { data: res3 } = await DefectPermissions() // 缂洪櫡
+ this.defectArr = res3
+ },
// 鎶ュ伐璋冩暣鍒楄〃鏌ヨ
async getMesOrderStepVerifySearch() {
let tempDate = this.form.reportdate
@@ -398,26 +545,107 @@
}
const res = await MesOrderStepModelSearch(data)
if (res.code === '200') {
+ this.dialogForm.id = row.id
+ this.dialogForm.sbid = row.sbid
+ this.dialogForm.wo_code = row.wo_code
+ this.dialogForm.partnumber = row.partnumber
+ this.dialogForm.partname = row.partname
+ this.dialogForm.partspec = row.partspec
+ this.dialogForm.task_qty = row.task_qty
+ this.dialogForm.wkshp_code = row.wkshp_code
+ this.dialogForm.eqp_code = row.eqp_code
+ this.dialogForm.step_seq = row.step_seq
+ this.dialogForm.step_code = row.step_code
+ this.dialogForm.step_name = row.stepname
+ this.dialogForm.flw_type = row.steptype
+ this.dialogForm.first_choke = row.first_choke
+ this.dialogForm.last_choke = row.last_choke
+ this.dialogForm.unprice = row.step_price
+ this.dialogForm.groupcode = row.usergroup_code
+ this.dialogForm.usercode = row.usercode
+ this.dialogForm.usergroup_name = row.usergroup_name
+ this.dialogForm.username = row.username
+ this.dialogForm.report_date = row.report_date
+ this.dialogForm.report_qty = row.report_qty
+ this.dialogForm.report_qty2 = row.report_qty // old鍊�
- // this.dialogVisible=true
+ if (res.data.length > 0) {
+ res.data.forEach(i => {
+ i.defect_code = i.defect_code.split(',')
+ i.defect_qty2 = i.defect_qty
+ i.laborbad_qty2 = i.laborbad_qty
+ i.materielbad_qty2 = i.materielbad_qty
+ })
+ }
+ this.tableDataDialog = res.data
+
+ this.dialogVisible = true
}
},
-
// 瀵硅瘽妗嗗叧闂簨浠�
handleClose() {
- // this.form.flag = 'TRUE'
+ this.tableDataDialog = []
},
- getRowKey(row) {
- return row.partnumber
- },
-
// 瀵硅瘽妗嗗彇娑�
dialogVisibleCancel() {
this.dialogVisible = false
},
// 瀵硅瘽妗嗙‘璁�
async dialogVisibleConfirm() {
+ this.$refs.dialogForm.validate(async valid => {
+ if (valid) {
+ const children = []
+ this.tableDataDialog.forEach(i => {
+ children.push({
+ ng_id: i.id,
+ ng_sbid: i.record_id,
+ ng_qty: parseFloat(i.defect_qty),
+ ng_dvalue: parseFloat(i.defect_qty) - parseFloat(i.defect_qty2),
+ laborbad_qty: parseFloat(i.laborbad_qty),
+ laborbad_dvalue: parseFloat(i.laborbad_qty) - parseFloat(i.laborbad_qty2),
+ materielbad_qty: parseFloat(i.materielbad_qty),
+ materielbad_dvalue: parseFloat(i.materielbad_qty) - parseFloat(i.materielbad_qty2),
+ bad_money: 0,
+ badmoney_dvalue: 0
+ })
+ })
+ const data = {
+ 'id': this.dialogForm.id,
+ 'sbid': this.dialogForm.sbid,
+ 'wo_code': this.dialogForm.wo_code,
+ 'partnumber': this.dialogForm.partnumber,
+ 'task_qty': this.dialogForm.task_qty,
+ 'wkshp_code': this.dialogForm.wkshp_code,
+ 'eqp_code': this.dialogForm.eqp_code,
+ 'step_seq': this.dialogForm.step_seq,
+ 'step_code': this.dialogForm.step_code,
+ 'flw_type': this.dialogForm.flw_type,
+ 'first_choke': this.dialogForm.first_choke,
+ 'last_choke': this.dialogForm.last_choke,
+ 'unprice': this.dialogForm.unprice,
+ 'groupcode': this.dialogForm.groupcode,
+ 'usercode': this.dialogForm.usercode,
+ 'report_date': this.dialogForm.report_date,
+ 'report_qty': parseFloat(this.dialogForm.report_qty),
+ 'report_dvalue': parseFloat(this.dialogForm.report_qty) - parseFloat(this.dialogForm.report_qty2),
+ children
+ }
+ console.log(JSON.stringify(data), 12)
+ // console.log(JSON.parse(JSON.stringify(data)), 12)
+ // this.$store.state.app.buttonIsDisabled = true
+ // const res = await MesOrderStepUpdateSeave([data])
+ // if (res.code === '200') {
+ // this.$notify.success('璋冩暣鎴愬姛锛�')
+ // await this.getMesOrderStepVerifySearch()
+ // this.$store.state.app.buttonIsDisabled = false
+ // this.dialogVisible = false
+ // } else {
+ // this.$store.state.app.buttonIsDisabled = false
+ // this.$notify.error('璋冩暣澶辫触锛�')
+ // }
+ }
+ })
},
// 鑾峰彇椤甸潰楂樺害
getHeight() {
@@ -432,8 +660,21 @@
</script>
<style scoped lang="scss">
+.dialogFormItem {
+ margin: 0 10px 0 0;
+}
+
::v-deep .el-dialog .el-divider__text {
font-weight: bolder !important;
}
+::v-deep .el-dialog .el-form-item__label {
+ font-weight: lighter !important;
+}
+
+::v-deep .el-select__caret {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
</style>
--
Gitblit v1.9.3