Commit d0ca3384 authored by 李驰骋's avatar 李驰骋

投料校验、反冲料登记、领料申请、退料申请调整

parent 91c21476
...@@ -90,6 +90,26 @@ const install = (Vue, vm) => { ...@@ -90,6 +90,26 @@ const install = (Vue, vm) => {
'/mobile/pro/taskissue/getReserveIssueList', params), '/mobile/pro/taskissue/getReserveIssueList', params),
//打印流转单 //打印流转单
//投料验证
listFeedingInspection: (params = {}) => vm.$u.post(config.adminPath + '/mobile/pro/proMaterial/listIssueLine', params),
validateFeedingInspection: (params = {}) => vm.$u.post(config.adminPath + '/mobile/pro/proMaterial/validateFeedingInspection', params),
validateFeedingInspectionById: (params = {}) => vm.$u.post(config.adminPath + '/mobile/pro/proMaterial/validateFeedingInspectionById', params),
//查询反冲料列表
recoilMaterialList: (params = {}) => vm.$u.post(config.adminPath + '/mobile/pro/proMaterial/getRecoilMaterial', params),
//增加反冲料
addRecoilMaterial: (params = {}) => vm.$u.post(config.adminPath + '/mobile/pro/proMaterial/addRecoilMaterial', params),
//删除反冲料
deleteRecoilMaterial: (params = {}) => vm.$u.post(config.adminPath + '/mobile/pro/proMaterial/deleteRecoilMaterial', params),
//领料申请
listMaterialRequest: (params = {}) => vm.$u.post(config.adminPath + '/mobile/pro/proMaterial/listMaterialRequest', params),
addMaterialRequest: (params = {}) => vm.$u.postJson(config.adminPath + '/mobile/pro/proMaterial/addMaterialRequest', params),
//退料申请
listMaterialReturn: (params = {}) => vm.$u.post(config.adminPath + '/mobile/pro/proMaterial/listIssueLine', params),
addMaterialReturn: (params = {}) => vm.$u.postJson(config.adminPath + '/mobile/pro/proMaterial/addMaterialReturn', params),
//质量相关api //质量相关api
//获取当前产品、当前质检类型的质检模板行信息 //获取当前产品、当前质检类型的质检模板行信息
...@@ -147,7 +167,7 @@ const install = (Vue, vm) => { ...@@ -147,7 +167,7 @@ const install = (Vue, vm) => {
detail: (params = {}) => vm.$u.get(config.adminPath+'/qc/information/list',params), detail: (params = {}) => vm.$u.get(config.adminPath+'/qc/information/list',params),
newlyAdd: (params = {}) => vm.$u.postJson(config.adminPath+'/qc/report',params), newlyAdd: (params = {}) => vm.$u.postJson(config.adminPath+'/qc/report',params),
}, },
// 增删改查例子 // 增删改查例子
testData: { testData: {
......
...@@ -79,6 +79,7 @@ const install = (Vue, vm) => { ...@@ -79,6 +79,7 @@ const install = (Vue, vm) => {
// 错误 // 错误
if (data.msg !== null) { if (data.msg !== null) {
uni.showToast({ uni.showToast({
icon: 'none',
title: data.msg, title: data.msg,
duration: 3000 duration: 3000
}) })
......
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
<u-button type="success" @click="commonClick('Prod')">生产报工</u-button> <u-button type="success" @click="commonClick('Prod')">生产报工</u-button>
<u-button type="primary" @click="commonClick('FinshTask')">完成作业</u-button> <u-button type="primary" @click="commonClick('FinshTask')">完成作业</u-button>
<u-button type="primary" @click="commonClick('abnormal')">异常报告</u-button> <u-button type="primary" @click="commonClick('abnormal')">异常报告</u-button>
<u-button type="primary" @click="commonClick('FeedingInspection')">投料</u-button> <u-button type="primary" @click="commonClick('FeedingInspection')">投料</u-button>
<u-button type="primary" @click="commonClick('RecoilMaterial')">反冲料登记</u-button> <u-button type="primary" @click="commonClick('RecoilMaterial')">反冲料登记</u-button>
<u-button type="primary" @click="commonClick('MaterialRequest')">领料申请</u-button> <u-button type="primary" @click="commonClick('MaterialRequest')">领料申请</u-button>
<u-button type="primary" @click="commonClick('MaterialReturn')">退料申请</u-button> <u-button type="primary" @click="commonClick('MaterialReturn')">退料申请</u-button>
...@@ -210,31 +210,29 @@ ...@@ -210,31 +210,29 @@
<scroll-view scroll-y="true" scroll-x="true" class="scroll-list" :style="{ 'height': (this.screenHeight -280) + 'px' }"> <scroll-view scroll-y="true" scroll-x="true" class="scroll-list" :style="{ 'height': (this.screenHeight -280) + 'px' }">
<uni-table border stripe :loading="loading" emptyText="未查询到数据"> <uni-table border stripe :loading="loading" emptyText="未查询到数据">
<uni-tr> <uni-tr>
<uni-th width="100px" align="center">操作</uni-th>
<uni-th width="65px" align="center">状态</uni-th>
<uni-th width="110px" align="center">产品物料编码</uni-th> <uni-th width="110px" align="center">产品物料编码</uni-th>
<uni-th width="110px" align="center">产品物料名称</uni-th> <uni-th width="110px" align="center">产品物料名称</uni-th>
<uni-th width="150px" align="center">规格型号</uni-th> <uni-th width="150px" align="center">规格型号</uni-th>
<uni-th width="60px" align="center">单位</uni-th> <uni-th width="60px" align="center">单位</uni-th>
<uni-th width="80px" align="center">领料数量</uni-th> <uni-th width="80px" align="center">领料数量</uni-th>
<uni-th width="110px" align="center">批次号</uni-th> <uni-th width="110px" align="center">批次号</uni-th>
<uni-th width="100px" align="center">备注</uni-th>
<uni-th width="65px" align="center">状态</uni-th>
<uni-th width="100px" align="center">操作</uni-th>
</uni-tr> </uni-tr>
<uni-tr v-for="(line,index) in feedingInspectionList" :key="index"> <uni-tr v-for="(line,index) in feedingInspectionList" :key="index">
<uni-td align="center">
<view class="uni-group">
<button class="uni-button" size="mini" type="primary" @click="validateFeedingInspection(line)">校验
</button>
</view>
</uni-td>
<uni-td align="center">{{ line.attr3 == 1 ? '校验':'未校验' }}</uni-td>
<uni-td align="center">{{ line.itemCode }}</uni-td> <uni-td align="center">{{ line.itemCode }}</uni-td>
<uni-td align="center">{{ line.itemName }}</uni-td> <uni-td align="center">{{ line.itemName }}</uni-td>
<uni-td align="center">{{ line.specification}}</uni-td> <uni-td align="center">{{ line.specification}}</uni-td>
<uni-td>{{ line.unitOfMeasure }}</uni-td> <uni-td>{{ line.unitOfMeasure }}</uni-td>
<uni-td align="center">{{ line.quantityIssued }}</uni-td> <uni-td align="center">{{ line.quantityIssued }}</uni-td>
<uni-td align="center">{{ line.batchCode }}</uni-td> <uni-td align="center">{{ line.batchCode }}</uni-td>
<uni-td align="center">{{ line.remark }}</uni-td>
<uni-td align="center">{{ line.state }}</uni-td>
<uni-td align="center">
<view class="uni-group">
<button class="uni-button" size="mini" type="primary" @click="qcLineClick(line)">校验
</button>
</view>
</uni-td>
</uni-tr> </uni-tr>
</uni-table> </uni-table>
</scroll-view> </scroll-view>
...@@ -267,7 +265,7 @@ ...@@ -267,7 +265,7 @@
<uni-td align="center">{{ line.itemName }}</uni-td> <uni-td align="center">{{ line.itemName }}</uni-td>
<uni-td align="center">{{ line.specification}}</uni-td> <uni-td align="center">{{ line.specification}}</uni-td>
<uni-td>{{ line.unitOfMeasure }}</uni-td> <uni-td>{{ line.unitOfMeasure }}</uni-td>
<uni-td align="center">{{ line.batchCode }}</uni-td> <uni-td align="center">{{ line.batchNo }}</uni-td>
<uni-td align="center">{{ line.remark }}</uni-td> <uni-td align="center">{{ line.remark }}</uni-td>
</uni-tr> </uni-tr>
</uni-table> </uni-table>
...@@ -280,17 +278,14 @@ ...@@ -280,17 +278,14 @@
v-model="materialRequestVisible" width="1300rpx"> v-model="materialRequestVisible" width="1300rpx">
<view class="list-bar"> <view class="list-bar">
<scroll-view scroll-y="true" class="scroll-list" :style="{ 'height': (this.screenHeight -280) + 'px' }"> <scroll-view scroll-y="true" class="scroll-list" :style="{ 'height': (this.screenHeight -280) + 'px' }">
<uni-table ref="qcTable" border stripe :loading="loading" emptyText="未查询到数据"> <uni-table ref="materialRequestTable" border stripe :loading="loading" emptyText="未查询到数据">
<uni-tr> <uni-tr>
<uni-th width="100px" align="center">操作</uni-th> <uni-th width="100px" align="center">操作</uni-th>
<uni-th width="110px" align="center">产品物料编码</uni-th> <uni-th width="110px" align="center">产品物料编码</uni-th>
<uni-th width="110px" align="center">产品物料名称</uni-th> <uni-th width="110px" align="center">产品物料名称</uni-th>
<uni-th width="150px" align="center">规格型号</uni-th> <uni-th width="150px" align="center">规格型号</uni-th>
<uni-th width="60px" align="center">单位</uni-th> <uni-th width="60px" align="center">单位</uni-th>
<uni-th width="80px" align="center">补料数量</uni-th> <uni-th width="80px" align="center">领取数量</uni-th>
<uni-th width="110px" align="center">批次号</uni-th>
<uni-th width="100px" align="center">备注</uni-th>
<uni-th width="65px" align="center">状态</uni-th>
</uni-tr> </uni-tr>
<uni-tr v-for="(line,index) in materialRequestList" :key="index"> <uni-tr v-for="(line,index) in materialRequestList" :key="index">
<uni-td align="center"> <uni-td align="center">
...@@ -303,10 +298,7 @@ ...@@ -303,10 +298,7 @@
<uni-td align="center">{{ line.itemName }}</uni-td> <uni-td align="center">{{ line.itemName }}</uni-td>
<uni-td align="center">{{ line.specification}}</uni-td> <uni-td align="center">{{ line.specification}}</uni-td>
<uni-td>{{ line.unitOfMeasure }}</uni-td> <uni-td>{{ line.unitOfMeasure }}</uni-td>
<uni-td align="center">{{line.quantityIssued}}</uni-td> <uni-td align="center">{{line.applyNum}}</uni-td>
<uni-td align="center">{{ line.batchCode }}</uni-td>
<uni-td align="center">{{ line.remark }}</uni-td>
<uni-td align="center">{{ line.state }}</uni-td>
</uni-tr> </uni-tr>
</uni-table> </uni-table>
</scroll-view> </scroll-view>
...@@ -336,7 +328,7 @@ ...@@ -336,7 +328,7 @@
</view> </view>
</u-modal> </u-modal>
<u-modal title="退料申请" @confirm="feedback()" show-cancel-button <u-modal title="退料申请" @confirm="materialReturnSave()" show-cancel-button
:title-style="{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}" :title-style="{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}"
v-model="materialReturnVisible" width="1300rpx"> v-model="materialReturnVisible" width="1300rpx">
<view class="list-bar"> <view class="list-bar">
...@@ -351,7 +343,6 @@ ...@@ -351,7 +343,6 @@
<uni-th width="80px" align="center">领料数量</uni-th> <uni-th width="80px" align="center">领料数量</uni-th>
<uni-th width="80px" align="center">退料数量</uni-th> <uni-th width="80px" align="center">退料数量</uni-th>
<uni-th width="110px" align="center">批次号</uni-th> <uni-th width="110px" align="center">批次号</uni-th>
<uni-th width="100px" align="center">备注</uni-th>
</uni-tr> </uni-tr>
<uni-tr v-for="(line,index) in materialReturnList" :key="index"> <uni-tr v-for="(line,index) in materialReturnList" :key="index">
<uni-td align="center"> <uni-td align="center">
...@@ -364,10 +355,9 @@ ...@@ -364,10 +355,9 @@
<uni-td align="center">{{ line.itemName }}</uni-td> <uni-td align="center">{{ line.itemName }}</uni-td>
<uni-td align="center">{{ line.specification}}</uni-td> <uni-td align="center">{{ line.specification}}</uni-td>
<uni-td>{{ line.unitOfMeasure }}</uni-td> <uni-td>{{ line.unitOfMeasure }}</uni-td>
<uni-td align="center">{{ line.applyNum }}</uni-td>
<uni-td align="center">{{ line.quantityIssued }}</uni-td> <uni-td align="center">{{ line.quantityIssued }}</uni-td>
<uni-td align="center">{{ line.applyNum }}</uni-td>
<uni-td align="center">{{ line.batchCode }}</uni-td> <uni-td align="center">{{ line.batchCode }}</uni-td>
<uni-td align="center">{{ line.remark }}</uni-td>
</uni-tr> </uni-tr>
</uni-table> </uni-table>
</scroll-view> </scroll-view>
...@@ -396,7 +386,7 @@ ...@@ -396,7 +386,7 @@
</u-form> </u-form>
</view> </view>
</u-modal> </u-modal>
<u-modal title="详细数据" :showConfirmButton="true" <u-modal title="详细数据" :showConfirmButton="true"
:title-style="{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}" :title-style="{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}"
v-model="showRowDeatilFlag" width="1800rpx"> v-model="showRowDeatilFlag" width="1800rpx">
<view class=""> <view class="">
...@@ -1116,7 +1106,8 @@ export default { ...@@ -1116,7 +1106,8 @@ export default {
}, },
feedingInspectionLoadAndScan(){ feedingInspectionLoadAndScan(){
const t = this; const t = this;
this.$u.api.listFeedingInspection({"batchNo":""}).then(res => { const taskInfo = this.curTaskInfo;
this.$u.api.listFeedingInspection({"taskId":taskInfo.taskId}).then(res => {
if (res.code === 200) { if (res.code === 200) {
t.feedingInspectionList = res.data; t.feedingInspectionList = res.data;
t.feedingInspectionScan(); t.feedingInspectionScan();
...@@ -1127,7 +1118,7 @@ export default { ...@@ -1127,7 +1118,7 @@ export default {
const t = this; const t = this;
uni.scanCode({ uni.scanCode({
success: function (res) { success: function (res) {
t.$u.api.validateFeedingInspection({"batchNo":res.result}).then(res2=>{ t.$u.api.validateFeedingInspection({"plnr":res.result}).then(res2=>{
if (res2.code === 200) { if (res2.code === 200) {
t.feedingInspectionLoadAndScan(); t.feedingInspectionLoadAndScan();
} }
...@@ -1136,13 +1127,27 @@ export default { ...@@ -1136,13 +1127,27 @@ export default {
}); });
this.feedingInspectionVisible=true; this.feedingInspectionVisible=true;
}, },
validateFeedingInspection(line){
const t = this;
const taskInfo = this.curTaskInfo;
this.$u.api.validateFeedingInspectionById({"lineId":line.lineId}).then(res2=>{
if (res2.code === 200) {
t.$u.api.listFeedingInspection({"taskId":taskInfo.taskId}).then(res => {
if (res.code === 200) {
t.feedingInspectionList = res.data;
}
});
}
});
},
recoilMaterialShow(){ recoilMaterialShow(){
this.recoilMaterialVisible=true; this.recoilMaterialVisible=true;
this.recoilMaterialLoadAndScan(); this.recoilMaterialLoadAndScan();
}, },
recoilMaterialLoadAndScan(){ recoilMaterialLoadAndScan(){
const t = this; const t = this;
this.$u.api.recoilMaterialList({"batchNo":""}).then(res => { const taskInfo = this.curTaskInfo;
this.$u.api.recoilMaterialList({"taskId":taskInfo.taskId}).then(res => {
if (res.code === 200) { if (res.code === 200) {
t.recoilMaterialList = res.data; t.recoilMaterialList = res.data;
t.recoilMaterialScan(); t.recoilMaterialScan();
...@@ -1151,10 +1156,11 @@ export default { ...@@ -1151,10 +1156,11 @@ export default {
}, },
recoilMaterialScan(){ recoilMaterialScan(){
const t = this; const t = this;
const taskInfo = this.curTaskInfo;
uni.scanCode({ uni.scanCode({
success: function (res) { success: function (res) {
t.$u.toast(res.result); t.$u.toast(res.result);
t.$u.api.addRecoilMaterial({"batchNo":res.result}).then(res2=>{ t.$u.api.addRecoilMaterial({"taskId":taskInfo.taskId, "plnr": res.result}).then(res2=>{
if (res2.code === 200) { if (res2.code === 200) {
t.recoilMaterialLoadAndScan(); t.recoilMaterialLoadAndScan();
} }
...@@ -1165,8 +1171,9 @@ export default { ...@@ -1165,8 +1171,9 @@ export default {
}, },
recoilMaterialDelete(line){ recoilMaterialDelete(line){
const t = this; const t = this;
this.$u.api.deleteRecoilMaterial({"id":line.id}).then(res2=>{ const taskInfo = this.curTaskInfo;
t.$u.api.recoilMaterialList({"batchNo":""}).then(res => { this.$u.api.deleteRecoilMaterial({"id":line.recoilMaterialId}).then(res2=>{
t.$u.api.recoilMaterialList({"taskId":taskInfo.taskId}).then(res => {
if (res.code === 200) { if (res.code === 200) {
t.recoilMaterialList = res.data; t.recoilMaterialList = res.data;
} }
...@@ -1175,10 +1182,10 @@ export default { ...@@ -1175,10 +1182,10 @@ export default {
}, },
materialRequestShow(){ materialRequestShow(){
console.log(this.$u.config.v); const taskInfo = this.curTaskInfo;
const t = this; const t = this;
this.materialRequestVisible=true; this.materialRequestVisible=true;
this.$u.api.listMaterialRequest({"batchNo":""}).then(res => { this.$u.api.listMaterialRequest({"taskId":taskInfo.taskId}).then(res => {
if (res.code === 200) { if (res.code === 200) {
t.materialRequestList = res.data; t.materialRequestList = res.data;
} }
...@@ -1190,33 +1197,69 @@ export default { ...@@ -1190,33 +1197,69 @@ export default {
this.materialRequestSelected = line; this.materialRequestSelected = line;
}, },
materialRequestSetting(){ materialRequestSetting(){
this.materialRequestSelected.quantityIssued = this.materialRequestFormData.applyNum; this.materialRequestSelected.applyNum = this.materialRequestFormData.applyNum;
this.materialRequestFormVisible=false; this.materialRequestFormVisible=false;
}, },
materialRequestSave(){ materialRequestSave(){
const rst = [];
const taskInfo = this.curTaskInfo;
const t = this;
this.materialRequestList.forEach(s=>{
if(s.applyNum!=null){
rst.push({
"itemId":s.itemId,
"taskId":taskInfo.taskId,
"applyNum":s.applyNum
});
}
});
this.$u.api.addMaterialRequest(rst).then(res => {
t.materialRequestFormVisible=false;
if (res.code === 200) {
t.$u.toast('保存成功');
}
});
}, },
materialReturnShow(){ materialReturnShow(){
console.log(this.$u.config.v); const t = this;
const t = this; this.materialReturnVisible=true;
this.materialReturnVisible=true; const taskInfo = this.curTaskInfo;
this.$u.api.listMaterialReturn({"batchNo":""}).then(res => { this.$u.api.listMaterialReturn({"taskId":taskInfo.taskId}).then(res => {
if (res.code === 200) { if (res.code === 200) {
t.materialReturnList = res.data; t.materialReturnList = res.data;
} }
}); });
}, },
materialReturnFormShow(line){ materialReturnFormShow(line){
this.materialReturnFormVisible=true; this.materialReturnFormVisible=true;
this.materialReturnFormData = {itemName: line.itemName}; this.materialReturnFormData = {itemName: line.itemName};
this.materialReturnSelected = line; this.materialReturnSelected = line;
}, },
materialReturnSetting(){ materialReturnSetting(){
this.materialReturnSelected.quantityIssued = this.materialReturnFormData.applyNum; this.materialReturnSelected.applyNum = this.materialReturnFormData.applyNum;
this.materialReturnFormVisible=false; this.materialReturnFormVisible=false;
}, },
materialReturnSave(){ materialReturnSave(){
const taskInfo = this.curTaskInfo;
const rst = [];
const t = this;
this.materialReturnList.forEach(s=>{
if(s.applyNum!=null){
rst.push({
"itemId":s.itemId,
"taskId":taskInfo.taskId,
"backNum":s.applyNum,
"issueLineId":s.lineId,
"workOrderId":s.workorderId
});
}
});
this.$u.api.addMaterialReturn(rst).then(res => {
t.materialReturnFormVisible=false;
if (res.code === 200) {
t.$u.toast('保存成功');
}
});
}, },
stockInShow(){ stockInShow(){
this.stockInVisible=true; this.stockInVisible=true;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment