diff --git a/hw-ui/src/views/board/fifthFloor/index.vue b/hw-ui/src/views/board/fifthFloor/index.vue index 34a26d17..2704068c 100644 --- a/hw-ui/src/views/board/fifthFloor/index.vue +++ b/hw-ui/src/views/board/fifthFloor/index.vue @@ -29,7 +29,7 @@ </el-button> <el-button type="warning" v-if="(!$route.query || $route.query.id!=='2')" :disabled="form.planDetailStatus === '已完成' || !form.planDetailCode" @click="handleMaterialConfirmForm()">扫描 </el-button> - <el-button type="danger" v-if="(!$route.query || $route.query.id!=='2')" :disabled="!form.planDetailCode">退料 + <el-button type="danger" @click="returnMaterial()" v-if="(!$route.query || $route.query.id!=='2')" :disabled="!form.planDetailCode">退料 </el-button> <el-button type="primary" v-if="($route.query && $route.query.id) === '2'" :disabled="form.planDetailStatus === '已完成' || !form.planDetailCode" @click="getMaterials('1')"> 领柜体 @@ -396,6 +396,44 @@ <el-button @click="cancelMaterialConfirm">取 消</el-button> </div> </el-dialog> + <el-dialog :visible.sync="returnModelVisible" title="退料" width="25%"> + <el-form ref="returnModelForm" :model="returnModelForm" label-width="80px" :rules="returnModelFormRules"> + <el-form-item label="计划编号" > + <el-input v-model="returnModelForm.planCode" autocomplete="off" disabled></el-input> + </el-form-item> + <el-form-item label="明细编号" > + <el-input v-model="returnModelForm.planDetailCode" autocomplete="off" disabled></el-input> + </el-form-item> + <el-form-item label="成品" > + <el-input v-model="returnModelForm.materialName" autocomplete="off" disabled></el-input> + </el-form-item> + <el-form-item label="物料条码" > + <el-input placeholder="请输入内容" v-model="returnModelForm.materialBarcode" class="input-with-select" @blur="setReturnModelForm"> + <el-button slot="append" icon="el-icon-search"></el-button> + </el-input> + </el-form-item> + <el-form-item label="仓库" > + <el-select v-model="returnModelForm.warehouseId" placeholder="请选择仓库" :disabled="!returnModelForm.materialBarcode"> + <el-option :label="i.label" :value="i.value" v-for="i in WarehousesList"></el-option> + </el-select> + </el-form-item> + <el-form-item label="数量" > + <el-input-number v-model="returnModelForm.planAmount" controls-position="right" :min="1" ></el-input-number> + </el-form-item> + <el-form-item label="退库类型" prop="taskType"> + <el-select v-model="returnModelForm.taskType" placeholder="请选择退库类型"> + <el-option :label="i.label" :value="i.value" v-for="i in dict.type.wms_raw_return_task_type"></el-option> + </el-select> + </el-form-item> + <el-form-item label="申请原因" > + <el-input type="textarea" v-model="returnModelForm.applyReason" autocomplete="off"></el-input> + </el-form-item> + <el-form-item> + <el-button @click="returnModelVisible = false">取 消</el-button> + <el-button type="primary" @click="returnModelConfirm">退 库</el-button> + </el-form-item> + </el-form> + </el-dialog> <!-- <el-dialog :visible.sync="assignModel" title="工位选择" width="80%">--> @@ -447,7 +485,7 @@ import { getWarehouses, bindBarcode, applyRawBack, - assignTask, scanMaterial2Confirm + assignTask, scanMaterial2Confirm, applyRawReturn } from "@/api/board"; const setState = (e) => { @@ -468,8 +506,12 @@ export default { Chart, PrintPage }, + dicts: ['wms_raw_return_task_type'], data() { return { + returnModelVisible: false, + returnModelForm:{}, + WarehousesList:[], input1:null, PrintData: {}, printModel: false, @@ -572,7 +614,12 @@ export default { warehouseId: [ {required: true, message: "仓库不能为空", trigger: "change"} ] - } + }, + returnModelFormRules: { + taskType: [ + { required: true, message: '请选择退库类型', trigger: 'change' } + ], + }, } }, async mounted() { @@ -1425,6 +1472,45 @@ export default { cancelMaterialConfirm(){ this.materialConfirmVisible = false; this.resetMaterialConfirm(); + }, + returnMaterial(e) { + this.returnModelVisible = true + this.returnModelForm = this.form + }, + setReturnModelForm(){ + getWarehouses({ + warehouseFloor:5, + materialBarcode:this.returnModelForm.materialBarcode + }).then(e=>{ + this.WarehousesList = e.data.map(v=>{ + return { + label:v.warehouseName, + value:v.warehouseId, + } + }) + }) + }, + returnModelConfirm(){ + this.$refs.returnModelForm.validate((valid) => { + if (valid) { + let data = {} + let keys = ['warehouseId','planCode','planDetailCode','productId','materialBarcode','planAmount','taskType','applyReason'] + keys.forEach(v=>{ + data[v] = this.returnModelForm[v] + }) + applyRawReturn(data).then(v=>{ + if(v.code === 200){ + this.$message({ + message: '退库成功', + type: 'success' + }); + } + this.returnModelVisible = false + }) + } else { + return false; + } + }); } }