| | |
| | | fixed |
| | | /> |
| | | <el-table-column |
| | | v-if="activeName!=='不良待处理'" |
| | | prop="status" |
| | | show-tooltip-when-overflow |
| | | label="状态" |
| | |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | v-if="activeName==='外协发料'||activeName==='外协收料'" |
| | | prop="fqty" |
| | | show-tooltip-when-overflow |
| | | label="已发料数量" |
| | | sortable="custom" |
| | | width="120" |
| | | /> |
| | | <el-table-column |
| | | prop="good_qty" |
| | | show-tooltip-when-overflow |
| | | label="合格数量" |
| | | :label="activeName==='外协发料'||activeName==='外协收料'?'已收料数量':'合格数量'" |
| | | sortable="custom" |
| | | width="160" |
| | | width="120" |
| | | /> |
| | | <el-table-column |
| | | prop="ng_qty" |
| | | label="不良数量" |
| | | show-tooltip-when-overflow |
| | | width="150" |
| | | width="120" |
| | | sortable="custom" |
| | | /> |
| | | <el-table-column |
| | |
| | | :visible.sync="dialogVisible" |
| | | width="1160px" |
| | | :close-on-click-modal="false" |
| | | top="7vh" |
| | | :top="activeName==='生产列表'||activeName==='外协收料'? '6vh':'15vh'" |
| | | @closed="handleClose" |
| | | @close="handleClose" |
| | | > |
| | | <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="110px"> |
| | | <el-divider content-position="left">基本信息</el-divider> |
| | | <el-divider v-if="activeName==='生产列表'||activeName==='外协收料'||activeName==='不良待处理'" content-position="left">基本信息</el-divider> |
| | | <el-form-item label="工单编号" class="dialogFormItem"> |
| | | <div class="dialogFormItemDiv">{{ dialogForm.wo_code }}</div> |
| | | </el-form-item> |
| | |
| | | <el-form-item label="任务数量" class="dialogFormItem"> |
| | | <div class="dialogFormItemDiv">{{ dialogForm.planqty }}</div> |
| | | </el-form-item> |
| | | <el-form-item label="未报/已报" class="dialogFormItem"> |
| | | |
| | | <el-form-item v-if="activeName==='不良待处理'" label="合格数量" class="dialogFormItem"> |
| | | <div class="dialogFormItemDiv">{{ dialogForm.noreportqty }}</div> |
| | | </el-form-item> |
| | | <el-form-item v-if="activeName==='不良待处理'" label="不良数量" class="dialogFormItem"> |
| | | <div class="dialogFormItemDiv">{{ dialogForm.noputqty }}</div> |
| | | </el-form-item> |
| | | |
| | | <el-form-item |
| | | v-if="activeName!=='不良待处理'" |
| | | :label="activeName==='生产列表'? '未报/已报':(activeName==='外协发料'?'未发/已发':'未收/已收')" |
| | | class="dialogFormItem" |
| | | > |
| | | <div class="dialogFormItemDiv">{{ dialogForm.noreportqty + '/' + dialogForm.reportqty }}</div> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="不良数量" class="dialogFormItem"> |
| | | <el-form-item v-if="activeName==='生产列表'||activeName==='外协收料'" label="不良数量" class="dialogFormItem"> |
| | | <div class="dialogFormItemDiv" style="color:red;">{{ dialogForm.noputqty }}</div> |
| | | </el-form-item> |
| | | |
| | | <el-form-item prop="eqpcode" label="报工设备" class="dialogFormItem"> |
| | | <el-form-item v-if="activeName==='生产列表'" prop="eqpcode" label="报工设备" class="dialogFormItem"> |
| | | <el-select |
| | | v-model="dialogForm.eqpcode" |
| | | style="width:200px" |
| | | placeholder="请选择" |
| | | filterable |
| | | |
| | | :popper-append-to-body="false" |
| | | > |
| | | <el-option |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="计件方式" class="dialogFormItem"> |
| | | <el-form-item v-if="activeName==='生产列表'" label="计件方式" class="dialogFormItem"> |
| | | <el-radio-group |
| | | v-model="dialogForm.reckway" |
| | | style="width: 200px;" |
| | |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | |
| | | <el-form-item :prop="dialogForm.reckway==='group'?'usergroupcode':''" label="报工班组" class="dialogFormItem"> |
| | | <el-form-item |
| | | v-if="activeName==='生产列表'" |
| | | :prop="dialogForm.reckway==='group'?'usergroupcode':''" |
| | | label="报工班组" |
| | | class="dialogFormItem" |
| | | > |
| | | <el-select |
| | | v-model="dialogForm.usergroupcode" |
| | | style="width:200px" |
| | |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item prop="reportuser" label="报工人员" class="dialogFormItem"> |
| | | <el-form-item v-if="activeName==='生产列表'" prop="reportuser" label="报工人员" class="dialogFormItem"> |
| | | <el-select |
| | | v-model="dialogForm.reportuser" |
| | | style="width:200px" |
| | |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item prop="startqty" label="合格数量" class="dialogFormItem"> |
| | | <el-form-item v-if="activeName==='生产列表'" prop="startqty" label="合格数量" class="dialogFormItem"> |
| | | <el-input v-model="dialogForm.startqty" oninput="value=value.replace(/[^\d]/g,'')" style="width: 200px" /> |
| | | </el-form-item> |
| | | |
| | | <el-divider content-position="left">不良明细</el-divider> |
| | | <el-form-item v-if="activeName==='外协发料'||activeName==='外协收料'" prop="wxcode" label="外协供方" class="dialogFormItem"> |
| | | <el-select |
| | | v-model="dialogForm.wxcode" |
| | | style="width:200px" |
| | | placeholder="请选择" |
| | | filterable |
| | | :popper-append-to-body="false" |
| | | > |
| | | <el-option |
| | | v-for="item in wxArr" |
| | | :key="item.code" |
| | | :label="item.name" |
| | | :value="item.code" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="activeName==='外协发料'" prop="outuser" label="发料人员" class="dialogFormItem"> |
| | | <el-select |
| | | v-model="dialogForm.outuser" |
| | | style="width:200px" |
| | | placeholder="请选择" |
| | | filterable |
| | | :popper-append-to-body="false" |
| | | > |
| | | <el-option |
| | | v-for="item in reportuserArr" |
| | | :key="item.usercode" |
| | | :label="item.username" |
| | | :value="item.usercode" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="activeName==='外协发料'" prop="fqty" label="发料数量" class="dialogFormItem"> |
| | | <el-input v-model="dialogForm.fqty" oninput="value=value.replace(/[^\d]/g,'')" style="width: 200px" /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item v-if="activeName==='外协收料'" prop="inuser" label="收料人员" class="dialogFormItem"> |
| | | <el-select |
| | | v-model="dialogForm.inuser" |
| | | style="width:200px" |
| | | placeholder="请选择" |
| | | filterable |
| | | :popper-append-to-body="false" |
| | | > |
| | | <el-option |
| | | v-for="item in reportuserArr" |
| | | :key="item.usercode" |
| | | :label="item.username" |
| | | :value="item.usercode" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="activeName==='外协收料'" prop="sqty" label="收料数量" class="dialogFormItem"> |
| | | <el-input v-model="dialogForm.sqty" oninput="value=value.replace(/[^\d]/g,'')" style="width: 200px" /> |
| | | </el-form-item> |
| | | |
| | | <el-divider v-if="activeName==='生产列表'||activeName==='外协收料'" content-position="left">不良明细</el-divider> |
| | | <el-button |
| | | v-if="activeName==='生产列表'||activeName==='外协收料'" |
| | | v-waves |
| | | type="primary" |
| | | icon="el-icon-circle-plus-outline" |
| | | @click="addDefect" |
| | | >新增 |
| | | </el-button> |
| | | |
| | | <el-table |
| | | v-if="activeName==='生产列表'||activeName==='外协收料'" |
| | | ref="defectTableDataRef" |
| | | :data="defectTableData" |
| | | border |
| | | row-class-name="custom-row" |
| | | height="300" |
| | | height="200" |
| | | style="width: 100%;margin-top: 15px;" |
| | | highlight-current-row |
| | | :header-cell-style="this.$headerCellStyle" |
| | |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | <el-divider v-if="activeName==='外协收料'" content-position="left">可收料供应商</el-divider> |
| | | <div |
| | | v-for="(item,index) in dialogForm.list" |
| | | v-if="item.fqty>0" |
| | | :key="item.name" |
| | | style="display: flex;line-height: 26px;height: 26px;margin-left:30px;align-items: center" |
| | | > |
| | | <div |
| | | style="color: #fff;width: 22px;height: 22px;display: flex;justify-content: center;align-items: center;border-radius: 50%" |
| | | :style="{backgroundColor:$store.state.settings.theme}" |
| | | >{{ index+1 }}</div> |
| | | <div style="margin-left:30px;width: 160px;" class="ellipsis"> |
| | | {{ item.tp }} |
| | | </div> |
| | | <div style="margin-left:30px;"> |
| | | 可收数量:{{ item.fqty }} |
| | | </div> |
| | | </div> |
| | | |
| | | <el-divider v-if="activeName==='不良待处理'" content-position="left">不良信息明细</el-divider> |
| | | <el-table |
| | | v-if="activeName==='不良待处理'" |
| | | ref="badTableDataDataRef" |
| | | :data="badTableData" |
| | | border |
| | | row-class-name="custom-row" |
| | | height="300" |
| | | 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="step_code"--> |
| | | <!-- label="工序编码"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- align="center"--> |
| | | <!-- />--> |
| | | <el-table-column |
| | | prop="stepname" |
| | | label="工序名称" |
| | | show-tooltip-when-overflow |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | prop="plan_qty" |
| | | label="任务数量" |
| | | show-tooltip-when-overflow |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | prop="report_qty" |
| | | label="合格数量" |
| | | show-tooltip-when-overflow |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | prop="ng_qty" |
| | | label="不良数量" |
| | | show-tooltip-when-overflow |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | prop="defect_name" |
| | | label="不良原因" |
| | | show-tooltip-when-overflow |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | prop="repair_qty" |
| | | label="维修合格数量" |
| | | show-tooltip-when-overflow |
| | | align="center" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-input |
| | | v-model="row.repair_qty" |
| | | placeholder="请输入数量" |
| | | oninput="value=value.replace(/[^0-9]/g,'')" |
| | | style="width: 100%" |
| | | @click.stop="" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="laborbad_qty" |
| | | label="工废数量" |
| | | show-tooltip-when-overflow |
| | | align="center" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-input |
| | | v-model="row.laborbad_qty" |
| | | placeholder="请输入数量" |
| | | oninput="value=value.replace(/[^0-9]/g,'')" |
| | | style="width: 100%" |
| | | @click.stop="" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="materielbad_qty" |
| | | label="料废数量" |
| | | show-tooltip-when-overflow |
| | | align="center" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-input |
| | | v-model="row.materielbad_qty" |
| | | placeholder="请输入数量" |
| | | oninput="value=value.replace(/[^0-9]/g,'')" |
| | | style="width: 100%" |
| | | @click.stop="" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <!-- <el-table-column--> |
| | | <!-- prop="badqty"--> |
| | | <!-- label="不良数量"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- align="center"--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <el-input--> |
| | | <!-- v-model="row.badqty"--> |
| | | <!-- placeholder="请输入数量"--> |
| | | <!-- oninput="value=value.replace(/[^0-9]/g,'')"--> |
| | | <!-- style="width: 100%"--> |
| | | <!-- @click.stop=""--> |
| | | <!-- @change="badqtyChange"--> |
| | | <!-- />--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | |
| | | <!-- <el-table-column--> |
| | | <!-- label="操作"--> |
| | | <!-- width="50"--> |
| | | <!-- align="center"--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <div class="operationClass">--> |
| | | <!-- <el-tooltip v-del-tab-index class="item" effect="dark" content="删除" placement="top">--> |
| | | <!-- <i--> |
| | | <!-- class="el-icon-delete"--> |
| | | <!-- :style="{color:$store.state.settings.theme}"--> |
| | | <!-- style="margin-left: 7px;"--> |
| | | <!-- @click="defectDel(row)"--> |
| | | <!-- />--> |
| | | <!-- </el-tooltip>--> |
| | | <!-- </div>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | |
| | | </el-table> |
| | | </el-form> |
| | | |
| | | <span slot="footer" class="dialog-footer"> |
| | |
| | | MesOrderNgStepSearch, |
| | | MesOrderNgSubStepSearch, |
| | | MesOrderStepSearch, MesOrderStepStart, |
| | | MesOrderWxStepSearch, SavaMesOrderStepReport |
| | | MesOrderWxStepSearch, SavaMesOrderStepIn, SavaMesOrderStepOut, SavaMesOrderStepReport |
| | | } from '@/api/WorkOrder' |
| | | import { |
| | | CustomerPermissions, |
| | | DefectPermissions, |
| | | EqpPermissions, |
| | | GroupsPermissions, |
| | |
| | | PersonPermissions |
| | | } from '@/api/GeneralBasicData' |
| | | import { nanoid } from 'nanoid' |
| | | import { LabelBarCode } from '@/api/systemSetting' |
| | | import { getCookie } from '@/utils/auth' |
| | | |
| | | export default { |
| | | name: 'SCKBG', |
| | |
| | | defectlist: '', // 不良汇总 |
| | | reckway: 'person', // 计件方式(班组:group、个人:person) |
| | | usergroupcode: '', // 班组编码 |
| | | reportuser: [] // 报工人员 |
| | | reportuser: [], // 报工人员 |
| | | |
| | | wxcode: '', |
| | | outuser: '', |
| | | fqty: '', |
| | | inuser: '', |
| | | sqty: '', |
| | | list: '' |
| | | |
| | | }, |
| | | dialogFormRules: { |
| | |
| | | ], |
| | | startqty: [ |
| | | { required: true, message: '请输入合格数量', trigger: ['blur', 'change'] } |
| | | ], |
| | | wxcode: [ |
| | | { required: true, message: '请选择外协供方', trigger: ['blur', 'change'] } |
| | | ], |
| | | outuser: [ |
| | | { required: true, message: '请选择发料人员', trigger: ['blur', 'change'] } |
| | | ], |
| | | inuser: [ |
| | | { required: true, message: '请选择收料人员', trigger: ['blur', 'change'] } |
| | | ], |
| | | fqty: [ |
| | | { required: true, message: '请输入发料数量', trigger: ['blur', 'change'] } |
| | | ], |
| | | sqty: [ |
| | | { required: true, message: '请输入收料数量', trigger: ['blur', 'change'] } |
| | | ] |
| | | |
| | | }, |
| | |
| | | usergroupArr: [], // 报工班组 |
| | | eqpArr: [], // 报工设备 |
| | | defectArr: [], // 不良缺陷 |
| | | wxArr: [], // 往来单位下拉 |
| | | |
| | | defectTableData: [] |
| | | defectTableData: [], |
| | | badTableData: [] |
| | | |
| | | } |
| | | }, |
| | |
| | | |
| | | const { data: res4 } = await EqpPermissions() // 设备 |
| | | this.eqpArr = res4 |
| | | |
| | | const { data: res5 } = await CustomerPermissions() // 往来单位 |
| | | this.wxArr = res5 |
| | | }, |
| | | tabClick() { |
| | | let belong |
| | |
| | | } |
| | | this.enterNative(this.form.wocode, belong) |
| | | this.search() |
| | | this.radioSelected = '' |
| | | }, |
| | | enterNative(val, belong) { |
| | | if (belong === 'produceCodeZZ') { |
| | |
| | | this.getMesOrderStepStart('WX', 'IN', temp.wo_code, temp.stepcode) |
| | | } |
| | | }, |
| | | // 不良处理 |
| | | handleBad(row) { |
| | | // 不良处理 生产开报工扫码获取工单对应工序任务(不良明细) |
| | | async handleBad(row) { |
| | | const data = { |
| | | wocode: row.wo_code, |
| | | stepcode: row.stepcode |
| | | } |
| | | let res = await MesOrderNgSubStepSearch(data) |
| | | if (res.code === '200') { |
| | | res = res.data |
| | | this.dialogForm.wo_code = res.data1.wo_code |
| | | this.dialogForm.partnumber = res.data1.partnumber |
| | | this.dialogForm.partname = res.data1.partname |
| | | this.dialogForm.partspec = res.data1.partspec |
| | | this.dialogForm.seq = res.data1.seq |
| | | this.dialogForm.stepcode = res.data1.stepcode |
| | | this.dialogForm.stepname = res.data1.stepname |
| | | this.dialogForm.stepprice = res.data1.stepprice |
| | | this.dialogForm.nextstepcode = res.data1.nextstepcode |
| | | this.dialogForm.nextstepname = res.data1.nextstepname |
| | | this.dialogForm.nextstepprice = res.data1.nextstepprice |
| | | this.dialogForm.stepdesc = res.data1.stepdesc |
| | | this.dialogForm.planqty = res.data1.planqty |
| | | this.dialogForm.startqty = res.data1.startqty |
| | | this.dialogForm.noreportqty = res.data1.noreportqty // 合格数量 |
| | | this.dialogForm.reportqty = res.data1.reportqty |
| | | this.dialogForm.noputqty = res.data1.noputqty // 不良数量 |
| | | this.dialogForm.wkshopcode = res.data1.wkshopcode |
| | | this.dialogForm.wkshopname = res.data1.wkshopname |
| | | this.dialogForm.eqpcode = res.data1.eqpcode |
| | | this.dialogForm.eqpname = res.data1.eqpname |
| | | |
| | | this.badTableData = res.data2 |
| | | |
| | | // 下周回来写不良处理保存接口 |
| | | this.badTableData.forEach(item => { |
| | | item.repair_qty = 0 |
| | | item.bad_qty = 0 |
| | | }) |
| | | |
| | | this.dialogVisible = true |
| | | } |
| | | }, |
| | | // 生产开报工:报工/外协(发料/收料)时条件判断及数据返回接口 |
| | | async getMesOrderStepStart(OperType, SelectType, wocode, stepcode) { |
| | |
| | | this.dialogForm.eqpcode = res.eqpcode |
| | | this.dialogForm.eqpname = res.eqpname |
| | | |
| | | this.dialogForm.list = res.list |
| | | |
| | | this.dialogVisible = true |
| | | } |
| | | }, |
| | | // 生产开报工扫码获取工单对应工序任务(不良明细) |
| | | async getMesOrderNgSubStepSearch(wocode, stepcode) { |
| | | // const data = { |
| | | // wocode, stepcode |
| | | // } |
| | | // const res = await MesOrderNgSubStepSearch(data) |
| | | }, |
| | | // 对话框关闭事件 |
| | | handleClose() { |
| | |
| | | 'eqpcode': '', |
| | | 'eqpname': '', |
| | | |
| | | wxcode: '', |
| | | outuser: '', |
| | | fqty: '', |
| | | inuser: '', |
| | | sqty: '', |
| | | list: '', |
| | | |
| | | remarks: '', // 备注 |
| | | inbarcode: '', // 入库条码 |
| | | defectlist: '', // 不良汇总 |
| | |
| | | } |
| | | |
| | | this.defectTableData = [] |
| | | this.badTableData = [] |
| | | |
| | | this.$refs.dialogForm.clearValidate() |
| | | }, |
| | |
| | | if (parseFloat(this.dialogForm.noreportqty) < parseFloat(this.dialogForm.startqty) + parseFloat(this.dialogForm.noputqty)) { |
| | | return this.$message.info('合格数量加不良数量不能大于了未报数量!') |
| | | } |
| | | let inbarcode = '' |
| | | if (this.tableData.find(i => i.id === this.radioSelected).isend === 'Y') { |
| | | const data1 = { |
| | | rightcode: getCookie('ruleCode'), |
| | | partcode: this.dialogForm.partnumber, |
| | | qty: this.dialogForm.startqty, |
| | | onelabqty: this.dialogForm.startqty |
| | | } |
| | | |
| | | const res1 = await LabelBarCode(data1) |
| | | inbarcode = res1.data[0].labcode |
| | | } |
| | | |
| | | const defectlist = [] |
| | | this.defectTableData.forEach(i => { |
| | |
| | | stepcode: this.dialogForm.stepcode, |
| | | stepprice: this.dialogForm.stepprice, |
| | | eqpcode: this.dialogForm.eqpcode, |
| | | inbarcode: '', |
| | | inbarcode, |
| | | reckway: this.dialogForm.reckway, |
| | | usergroupcode: this.dialogForm.usergroupcode, |
| | | reportuser: this.dialogForm.reportuser.join(','), |
| | |
| | | // console.log(JSON.parse(JSON.stringify(this.defectTableData))) |
| | | // console.log(JSON.parse(JSON.stringify(data))) |
| | | |
| | | this.$store.state.app.buttonIsDisabled = true |
| | | const res = await SavaMesOrderStepReport(data) |
| | | // console.log(res) |
| | | if (res.code === '200') { |
| | | this.$notify.success('报工成功!') |
| | | await this.search() |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | this.dialogVisible = false |
| | | } else { |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | this.$notify.error('报工失败!') |
| | | } |
| | | } |
| | | |
| | | if (this.activeName === '外协发料') { |
| | | if (parseFloat(this.dialogForm.fqty) < 1) { |
| | | return this.$message.info('发料数量不能为零!') |
| | | } |
| | | const data = { |
| | | mesordercode: this.dialogForm.wo_code, |
| | | partcode: this.dialogForm.partnumber, |
| | | stepseq: this.dialogForm.seq, |
| | | stepcode: this.dialogForm.stepcode, |
| | | |
| | | wxcode: this.dialogForm.wxcode, |
| | | outuser: this.dialogForm.outuser, |
| | | taskqty: this.dialogForm.planqty, |
| | | fqty: this.dialogForm.fqty |
| | | } |
| | | // console.log(JSON.stringify(data)) |
| | | |
| | | this.$store.state.app.buttonIsDisabled = true |
| | | const res = await SavaMesOrderStepOut(data) |
| | | if (res.code === '200') { |
| | | this.$notify.success('发料成功!') |
| | | await this.search() |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | this.dialogVisible = false |
| | | } else { |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | this.$notify.error('发料失败!') |
| | | } |
| | | } |
| | | |
| | | if (this.activeName === '外协收料') { |
| | | if (this.defectTableData.find(i => i.code.length === 0)) { |
| | | return this.$message.info('缺陷编码/名称不能为空!') |
| | | } |
| | | if (this.defectTableData.find(i => i.badqty.toString().trim() === '' || parseFloat(i.badqty) === 0)) { |
| | | return this.$message.info('不良数量不能为空或为零!') |
| | | } |
| | | |
| | | if (parseFloat(this.dialogForm.noreportqty) < parseFloat(this.dialogForm.sqty) + parseFloat(this.dialogForm.noputqty)) { |
| | | return this.$message.info('收料数量加不良数量不能大于了可收数量!') |
| | | } |
| | | |
| | | if (this.dialogForm.list.find(i => i.name === this.dialogForm.wxcode)) { |
| | | if (this.dialogForm.list.find(i => i.name === this.dialogForm.wxcode).fqty < parseFloat(this.dialogForm.sqty) + parseFloat(this.dialogForm.noputqty)) { |
| | | return this.$message.info('收料数量加不良数量不能大于该供应商可收数量!') |
| | | } |
| | | } else { |
| | | return this.$message.info('此供应商无可收数量!') |
| | | } |
| | | |
| | | let inbarcode = '' |
| | | if (this.tableData.find(i => i.id === this.radioSelected).isend === 'Y') { |
| | | const data1 = { |
| | | rightcode: getCookie('ruleCode'), |
| | | partcode: this.dialogForm.partnumber, |
| | | qty: this.dialogForm.startqty, |
| | | onelabqty: this.dialogForm.startqty |
| | | } |
| | | |
| | | const res1 = await LabelBarCode(data1) |
| | | inbarcode = res1.data[0].labcode |
| | | } |
| | | const defectlist = [] |
| | | this.defectTableData.forEach(i => { |
| | | defectlist.push({ |
| | | defect_code: i.code.join(','), |
| | | badqty: i.badqty |
| | | }) |
| | | }) |
| | | |
| | | const data = { |
| | | mesordercode: this.dialogForm.wo_code, |
| | | partcode: this.dialogForm.partnumber, |
| | | stepseq: this.dialogForm.seq, |
| | | stepcode: this.dialogForm.stepcode, |
| | | |
| | | wxcode: this.dialogForm.wxcode, |
| | | inbarcode, |
| | | inuser: this.dialogForm.inuser, |
| | | taskqty: this.dialogForm.planqty, |
| | | sqty: this.dialogForm.sqty, |
| | | defectlist, |
| | | remarks: '' |
| | | } |
| | | // console.log(JSON.parse(JSON.stringify(data)), 1) |
| | | this.$store.state.app.buttonIsDisabled = true |
| | | const res = await SavaMesOrderStepIn(data) |
| | | if (res.code === '200') { |
| | | this.$notify.success('收料成功!') |
| | | await this.search() |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | this.dialogVisible = false |
| | | } else { |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | this.$notify.error('收料失败!') |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | }, |