| | |
| | | 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"--> |
| | |
| | | v-el-drag-dialog |
| | | title="报工调整" |
| | | :visible.sync="dialogVisible" |
| | | width="800px" |
| | | width="1080px" |
| | | :close-on-click-modal="false" |
| | | top="15vh" |
| | | @closed="handleClose" |
| | |
| | | <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">正常</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"> |
| | |
| | | |
| | | <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', |
| | |
| | | |
| | | 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'] } |
| | | ] |
| | | } |
| | | |
| | | } |
| | | }, |
| | |
| | | this.getHeight() |
| | | |
| | | this.getMesOrderStepVerifySearch() |
| | | this.getDefectPermissions() |
| | | }, |
| | | methods: { |
| | | async getDefectPermissions() { |
| | | const { data: res3 } = await DefectPermissions() // 缺陷 |
| | | this.defectArr = res3 |
| | | }, |
| | | // 报工调整列表查询 |
| | | async getMesOrderStepVerifySearch() { |
| | | let tempDate = this.form.reportdate |
| | |
| | | } |
| | | 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() { |
| | |
| | | </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> |