盘点功能提交

master
zhoulei 4 years ago
parent 57fbc39721
commit 908d8a2f17

@ -1,3 +0,0 @@
# 复制本文件并重命名为.env.development.local
# 本地开发版本
VUE_APP_BASE_URL=http://localhost:8181

@ -200,6 +200,7 @@ export default {
InventoryMateriel:'物料名',
InventoryTotalNumber:'盘点总数',
InventoryPleaseScan: "请扫描单号",
InventoryFinish: "完成",
// 委外-入库
CommissionEntrant:'委外入库',

@ -204,6 +204,7 @@ export default {
InventoryMateriel:'MAT name',
InventoryTotalNumber:'Total',
InventoryPleaseScan: "Please scan No.",
InventoryFinish: "Finish",
// 委外-入库
CommissionEntrant:'委外入库',

@ -13,43 +13,51 @@
<u-form class="form" ref="form" :model="form" label-width="180rpx">
<u-form-item
:required="true"
:label="this.$t('message.InventoryOrderNo')"
prop="documentNo"
:label="$t('message.InventoryOrderNo')"
prop="pddNo"
>
<u-search
:placeholder="this.$t('message.InventoryPleaseScan')"
v-model="form.documentNo"
@search="model.queryOrderInInfo"
:placeholder="$t('message.InventoryPleaseScan')"
v-model="form.pddNo"
@search="model.rawMaterialInventoryCheckRaw"
:show-action="false"
></u-search>
</u-form-item>
<u-form-item :label="this.$t('message.InventoryMaterielNo')">
<u-form-item :label="$t('message.InventoryMaterielNo')" prop="productCode">
<u-search
:placeholder="$t('message.po_PleaseInput')"
v-model="form.productCode"
@search="checkRawProductCode"
:show-action="false"
></u-search>
</u-form-item>
<u-form-item :label="$t('message.InventoryMateriel')" prop="productDescZh">
<u-input
v-model="model.orderInInfo.carNo"
:placeholder="this.$t('message.po_PleaseInput')"
v-model="form.productDescZh"
:placeholder="$t('message.po_PleaseInput')"
/>
</u-form-item>
<u-form-item :label="this.$t('message.InventoryMateriel')">
<u-form-item :label="$t('message.InventoryTotalNumber')" prop="spQty">
<u-input
v-model="model.orderInInfo.bookingTime"
:placeholder="this.$t('message.po_PleaseInput')"
/>
</u-form-item>
<u-form-item :label="this.$t('message.InventoryTotalNumber')">
<u-input
v-model="model.orderInInfo.supplyCode"
:placeholder="this.$t('message.po_PleaseInput')"
v-model="form.spQty"
:placeholder="$t('message.po_PleaseInput')"
/>
</u-form-item>
</u-form>
<view class="bottom-bar">
<u-row class="button-bar">
<u-col :span="6">
<u-button type="primary" @click="onSubmit">{{
<u-col :span="4">
<u-button type="primary" @click="checkRawCreateInfo">{{
$t("message.workArea_Confirm")
}}</u-button>
</u-col>
<u-col :span="6">
<u-col :span="4">
<u-button type="primary" @click="checkRawOrderComplete">{{
$t("message.InventoryFinish")
}}</u-button>
</u-col>
<u-col :span="4">
<u-button type="error" @click="back">{{
$t("message.po_Return")
}}</u-button>
@ -65,13 +73,13 @@ import { BasePage } from "@/components/base/page";
import { VForm, VFormRules } from "vue/types/form";
import model from "./model";
interface OptionType {
label: string;
value: string;
}
// interface OptionType {
// label: string;
// value: string;
// }
@Component
export default class dnReceiptDom extends BasePage {
export default class rawMaterialInventory extends BasePage {
/**
* 表单引用
*/
@ -84,17 +92,26 @@ export default class dnReceiptDom extends BasePage {
index() {
this.toPage(this.page.raw.index);
}
status = false;
/**
* 表单数据
*/
form = {
documentNo: null,
cboPlace: {} as OptionType,
//
pddNo: null,
//
productCode: null,
productDescZh: null,
//
spQty: null,
// cboPlace: {} as OptionType,
};
cboPlaceSelect = false;
rules: VFormRules<any> = {
documentNo: [
pddNo: [
{ required: true, message: this.$t("message.dn_PleaseScan") as string },
],
// cboPlace: [{ required: true, message: this.$t('message.Warehouse_Tip10') as string }],
@ -103,6 +120,27 @@ export default class dnReceiptDom extends BasePage {
value = "";
show = false;
//
async checkRawProductCode(productCode:string){
let result = await model.checkRawProductCode({
productCode,pddNo:this.form.pddNo
})
console.log('result:::',result)
this.status = result.isState
}
checkRawCreateInfo(){
if(this.status){
model.checkRawProductComplete(this.form)
}else{
model.checkRawCreateInfo(this.form)
}
}
//
async checkRawOrderComplete(){
await model.checkRawOrderComplete(this.form.pddNo)
}
// onReadyonLoad
onReady() {
this.$form.setRules(this.rules);
@ -118,22 +156,24 @@ export default class dnReceiptDom extends BasePage {
back() {
uni.navigateBack({ delta: 1 });
}
onSubmit() {
async onSubmit() {
this.$form.validate((valid: boolean) => {
if (!valid) return;
// if (!this.model.hasDnInfo) {
// uni.showToast({
// icon: 'none',
// title: this.$t('message.dn_PleaseScan') as string,
// });
// return;
// }
sessionStorage.setItem(
"dnNo",
JSON.stringify(this.form.documentNo) as any
);
this.toPage(this.page.raw.ingoods.dnReceipt.detail);
if (!this.model.hasDnInfo) {
uni.showToast({
icon: 'none',
title: this.$t('message.dn_PleaseScan') as string,
});
return;
}
// sessionStorage.setItem(
// "dnNo",
// JSON.stringify(this.form.pddNo) as any
// );
// this.toPage(this.page.raw.ingoods.dnReceipt.detail);
});
await this.model.submitOrderInEnter();
}
}
</script>

@ -32,6 +32,9 @@ class OrderInInfo {
name: "raw.ingoods.dnReceipt",
})
export class ReceiptModule extends VuexModule {
// 是否有
isState = true;
sendSpot = "";
/**
* sap
@ -161,6 +164,114 @@ export class ReceiptModule extends VuexModule {
return { dnNo, orderInInfo, orderInInfoList, orderInInfoListEx };
}
/**
*
*
* @param pddNo
*/
@Action
async rawMaterialInventoryCheckRaw(pddNo: string) {
const { msg }: any = await http.post(url.material.rawMaterialInventory.checkRaw, {
pddNo,
factoryCode: session.factoryCode,
loginName: session.loginName,
});
uni.showToast({
icon: "none",
title: msg,
});
}
/**
*
*
* @param {string} productCode
* @param {string} pddNo
* @memberof ReceiptModule
*/
@Action
async checkRawProductCode(form:any) {
const { code,msg }: any = await http.post(url.material.rawMaterialInventory.productCode, {
productCode:form.productCode,
pddNo:form.pddNo,
factoryCode: session.factoryCode,
loginName: session.loginName,
});
uni.showToast({
icon: "none",
title: msg,
});
console.log('code:::',code,msg)
const isState = !!+code
return {isState}
}
/**
*
*
* @param {string} productCode
* @param {string} pddNo
* @memberof ReceiptModule
*/
@Action
async checkRawCreateInfo(form:any) {
const { msg }: any = await http.post(url.material.rawMaterialInventory.createInfo, {
...form,
factoryCode: session.factoryCode,
loginName: session.loginName,
});
uni.showToast({
icon: "none",
title: msg,
});
}
/**
*
*
* @param {string} productCode
* @param {string} pddNo
* @memberof ReceiptModule
*/
@Action
async checkRawProductComplete(form:any) {
const { msg }: any = await http.post(url.material.rawMaterialInventory.productComplete, {
...form,
factoryCode: session.factoryCode,
loginName: session.loginName,
});
uni.showToast({
icon: "none",
title: msg,
});
}
/**
*
*
* @param {string} productCode
* @param {string} pddNo
* @memberof ReceiptModule
*/
@Action
async checkRawOrderComplete(pddNo?: string|null) {
const { msg }: any = await http.post(url.material.rawMaterialInventory.orderComplete, {
pddNo,
factoryCode: session.factoryCode,
loginName: session.loginName,
});
uni.showToast({
icon: "none",
title: msg,
});
}
/**
*
*/

@ -71,6 +71,19 @@ export const url = {
unlock: "/material/orderout/unlock",
takeout: "/material/orderout/takeout",
},
// 原材料盘点
rawMaterialInventory: {
// 盘点单号查询检查
checkRaw: "/product/finished/checkRaw/order",
// 扫描物料号检查
productCode: "/product/finished/checkRaw/productCode",
// 3.盘点单中不存在该物料但继续盘点,需要新增单号和物料信息
createInfo: "/product/finished/checkRaw/createInfo",
// 4.物料盘点确定
productComplete: "/product/finished/checkRaw/productComplete",
// 5.盘点完成
orderComplete: "/product/finished/checkRaw/orderComplete",
},
},
SFG: {
DumpListFH: {

Loading…
Cancel
Save