新增 明细页面

master
hou 4 years ago
parent d9a2d9268f
commit b84e0438b7

@ -51,6 +51,7 @@ export default {
rawMenu_InTheLibrary: "库内", rawMenu_InTheLibrary: "库内",
rawMenu_ReturnGoods: "退货", rawMenu_ReturnGoods: "退货",
rawMenu_SignOut: "退出", rawMenu_SignOut: "退出",
Purchase: "采购单",
//po收货 //po收货
po_ReceivingGoods: "PO收货", po_ReceivingGoods: "PO收货",
@ -75,11 +76,14 @@ export default {
po_Continue: "继续", po_Continue: "继续",
po_Return: "返回", po_Return: "返回",
po_MaterielNo: "物料号", po_MaterielNo: "物料号",
Materiel: "物料",
po_MaterielDes: "物料描述", po_MaterielDes: "物料描述",
po_DemandQuantity: "需求数量", po_DemandQuantity: "需求数量",
DemandQuantity: "需求",
po_ActualQuantity: "实际数量", po_ActualQuantity: "实际数量",
po_ReturnGoodsQuantity: "退货数量", po_ReturnGoodsQuantity: "退货数量",
po_RemainingQuantity: "剩余数量", po_RemainingQuantity: "剩余数量",
Cumulative: "累计",
//dn收货 //dn收货
dn_ReceivingGoods: "DN收货", dn_ReceivingGoods: "DN收货",
@ -109,6 +113,7 @@ export default {
Pi_factory: "工厂", Pi_factory: "工厂",
Pi_materielNo: "物料号", Pi_materielNo: "物料号",
Pi_order: "订单查询", Pi_order: "订单查询",
Query: "查询",
Pi_InputMrp: "请输入MRP", Pi_InputMrp: "请输入MRP",
Pi_InputFactory: "请输入工厂代码", Pi_InputFactory: "请输入工厂代码",
Pi_OrderNoNotSelected: "未选中订单号", Pi_OrderNoNotSelected: "未选中订单号",
@ -188,6 +193,8 @@ export default {
CollectionAndBorrowing: "成品领用借用", CollectionAndBorrowing: "成品领用借用",
Inventory: "成品盘点", Inventory: "成品盘点",
raw_Inventory: "原材料盘点", raw_Inventory: "原材料盘点",
Transfer: "移库码",
generate: "生成",
RowWarehouse: "原材料库内", RowWarehouse: "原材料库内",
SemiProductZC: "半成品转储", SemiProductZC: "半成品转储",
@ -215,11 +222,20 @@ export default {
CommissionedNumber: "入库数量", CommissionedNumber: "入库数量",
CommissionedEntrantDetails: "入库明细", CommissionedEntrantDetails: "入库明细",
CommissionedReceiptQuantity: "收货数量", CommissionedReceiptQuantity: "收货数量",
subcontract: "委外",
// 委外-出库 // 委外-出库
CommissionGoOut: "委外出库", CommissionGoOut: "委外出库",
CommissionedGoOutDetails: "出库明细", CommissionedGoOutDetails: "出库明细",
CommissionedGoOutNumber: "出库数量", CommissionedGoOutNumber: "出库数量",
// 委外-提示
Commission_tips1: "请输入单号",
Commission_tips2: "请输入正确的库位和数量",
Commission_tips3: "请输入大于0的数量",
Commission_tips4: "不能大于需求数量",
Commission_tips5: "请确保所选物料已分配库位",
_tips5: "请选择相同库位",
_tips6: "请先输入要查询的单号",
//移库 //移库
Warehouse_QueryCriteria: "查询条件", Warehouse_QueryCriteria: "查询条件",
Warehouse_TransferOrderNo: "移库单号", Warehouse_TransferOrderNo: "移库单号",
@ -228,6 +244,9 @@ export default {
Warehouse_OriginalLocation: "原库位", Warehouse_OriginalLocation: "原库位",
Warehouse_TargetLocation: "目标库位", Warehouse_TargetLocation: "目标库位",
Warehouse_Tip: "请输入移库单号", Warehouse_Tip: "请输入移库单号",
transfer_barcode:'移库批次',
Product_code:'产品编码',
Access_type:'出入类型',
//报废 //报废
Scrap_ScrapNo: "报废单号", Scrap_ScrapNo: "报废单号",

@ -37,7 +37,7 @@ export default {
workArea_Title: "Work area list", workArea_Title: "Work area list",
workArea_SubTitle: "Hello, Please select your work area from the list", workArea_SubTitle: "Hello, Please select your work area from the list",
workArea_SelelctOne: "Please select one work area from the list", workArea_SelelctOne: "Please select one work area from the list",
workArea_Selelct: "Please selelct", workArea_Selelct: "selelct",
workArea_Warehouse: "WH", workArea_Warehouse: "WH",
workArea_WarehouseName: "WH name", workArea_WarehouseName: "WH name",
workArea_RegionName: "Region name", workArea_RegionName: "Region name",
@ -75,8 +75,10 @@ export default {
po_Continue: "Continue", po_Continue: "Continue",
po_Return: "Return", po_Return: "Return",
po_MaterielNo: "MAT code", po_MaterielNo: "MAT code",
Materiel: "MAT",
po_MaterielDes: "MAT desc", po_MaterielDes: "MAT desc",
po_DemandQuantity: "Request Qty", po_DemandQuantity: "Request Qty",
DemandQuantity: "Request",
po_ActualQuantity: "Receive Qty", po_ActualQuantity: "Receive Qty",
po_ReturnGoodsQuantity: "Return Qty", po_ReturnGoodsQuantity: "Return Qty",
po_RemainingQuantity: "Remaining Qty", po_RemainingQuantity: "Remaining Qty",
@ -95,6 +97,7 @@ export default {
dn_Tip: "Receive Qty cannot be greater than the request Qty", dn_Tip: "Receive Qty cannot be greater than the request Qty",
dn_Tip2: "Return Qty cannot be greater than the request Qty", dn_Tip2: "Return Qty cannot be greater than the request Qty",
dn_Tip3: "Receive Qty is less than the request Qty", dn_Tip3: "Receive Qty is less than the request Qty",
Purchase: "Purchase",
//交接菜单页 //交接菜单页
Handover: "Handover", Handover: "Handover",
Pick: "Pick up", Pick: "Pick up",
@ -108,6 +111,7 @@ export default {
Pi_factory: "Factory", Pi_factory: "Factory",
Pi_materielNo: "MAT code", Pi_materielNo: "MAT code",
Pi_order: "Order Query", Pi_order: "Order Query",
Query: "Query",
Pi_InputMrp: "Please input MRP", Pi_InputMrp: "Please input MRP",
Pi_InputFactory: "Please input factory code", Pi_InputFactory: "Please input factory code",
Pi_OrderNoNotSelected: "Order number not selected", Pi_OrderNoNotSelected: "Order number not selected",
@ -145,6 +149,7 @@ export default {
Pi_PickedQuantity: "Picked Qty", Pi_PickedQuantity: "Picked Qty",
Pi_QuantityHandedOver: "Handedover Qty", Pi_QuantityHandedOver: "Handedover Qty",
Pi_distribution: "distribution", Pi_distribution: "distribution",
Cumulative: "Cumulative",
//汇总交接 //汇总交接
Summary_Query: "Summary Query", Summary_Query: "Summary Query",
@ -192,6 +197,8 @@ export default {
CollectionAndBorrowing: "FG cost center", CollectionAndBorrowing: "FG cost center",
Inventory: "FG PSV", Inventory: "FG PSV",
raw_Inventory: "raw Inventory", raw_Inventory: "raw Inventory",
Transfer: "Library Code",
generate: "generate",
RowWarehouse: "RAW WH", RowWarehouse: "RAW WH",
SemiProductZC: "SFG transfer", SemiProductZC: "SFG transfer",
@ -208,22 +215,32 @@ export default {
InventoryFinish: "Finish", InventoryFinish: "Finish",
// 委外-入库 // 委外-入库
CommissionEntrant: "委外入库", CommissionEntrant: "Subcontracting receipt",
CommissionedSingleNumber: "单号", CommissionedSingleNumber: "single",
CommissionedMaterielNo: "物料号", CommissionedMaterielNo: "code",
CommissionedMaterielDesc: "物料描述", CommissionedMaterielDesc: "describe",
CommissionedDemandData: "需求数据", CommissionedDemandData: "Demand",
CommissionedCumulativeData: "累计数据", CommissionedCumulativeData: "total",
CommissionedLocation: "库位", CommissionedLocation: "Location",
CommissionedThisNumber: "本次数量", CommissionedThisNumber: "quantity",
CommissionedNumber: "入库数量", CommissionedNumber: "Receipt quantity",
CommissionedEntrantDetails: "入库明细", CommissionedEntrantDetails: "Warehousing",
CommissionedReceiptQuantity: "收货数量", CommissionedReceiptQuantity: "Receipt quantity",
subcontract: "subcontract",
// 委外-出库 // 委外-出库
CommissionGoOut: "委外出库", CommissionGoOut: "Subcontracting issue",
CommissionedGoOutDetails: "出库明细", CommissionedGoOutDetails: "Delivery details",
CommissionedGoOutNumber: "出库数量", CommissionedGoOutNumber: "Outbound quantity",
// 委外-提示
Commission_tips1: "Please enter the order No",
Commission_tips2: "Please enter the correct location and quantity",
Commission_tips3: "Please enter a quantity greater than 0",
Commission_tips4: "Cannot be greater than the required quantity",
Commission_tips5:
"Please ensure that the selected material has been assigned a location",
_tips5: "Please select the same location",
_tips6: "Please enter the order number to query first",
//移库 //移库
Warehouse_QueryCriteria: "Query criteria", Warehouse_QueryCriteria: "Query criteria",
@ -233,6 +250,9 @@ export default {
Warehouse_OriginalLocation: "Original Loc", Warehouse_OriginalLocation: "Original Loc",
Warehouse_TargetLocation: "Target Loc", Warehouse_TargetLocation: "Target Loc",
Warehouse_Tip: "Please input the transfer order No", Warehouse_Tip: "Please input the transfer order No",
transfer_barcode: "Library transfer barcode",
Product_code: "Product code",
Access_type: "Access type",
//报废 //报废
Scrap_ScrapNo: "Scrap No", Scrap_ScrapNo: "Scrap No",

@ -69,5 +69,16 @@
}, },
"mp-qq" : { "mp-qq" : {
"usingComponents" : true "usingComponents" : true
},
"h5" : {
"optimization" : {
"treeShaking" : {
"enable" : false
}
},
"router" : {
"mode" : "hash",
"base" : "/nwp"
}
} }
} }

@ -65,6 +65,14 @@
"navigationBarTextStyle": "white" // white-black- "navigationBarTextStyle": "white" // white-black-
} }
}, },
{
"path": "pages/product/warehouse/wholeTransfer/Local-details",
"style": {
"navigationBarTitleText": "移库明细",
"navigationStyle": "custom", //
"navigationBarTextStyle": "white" // white-black-
}
},
{ {
"path": "pages/product/warehouse/wholeScrap/index", "path": "pages/product/warehouse/wholeScrap/index",
"style": { "style": {
@ -97,6 +105,14 @@
"navigationBarTextStyle": "white" // white-black- "navigationBarTextStyle": "white" // white-black-
} }
}, },
{
"path": "pages/product/outbound/stoOutbound/DN-delivergoods",
"style": {
"navigationBarTitleText": "DN发货",
"navigationStyle": "custom", //
"navigationBarTextStyle": "white" // white-black-
}
},
{ {
"path": "pages/product/outbound/stoOutbound/detail", "path": "pages/product/outbound/stoOutbound/detail",
"style": { "style": {
@ -273,6 +289,14 @@
"navigationBarTextStyle": "white" // white-black- "navigationBarTextStyle": "white" // white-black-
} }
}, },
{
"path": "pages/raw/ingoods/dnReceipt/Local-details",
"style": {
"navigationBarTitleText": "本地DN收货明细",
"navigationStyle": "custom", //
"navigationBarTextStyle": "white" // white-black-
}
},
{ {
"path": "pages/raw/ingoods/dnReceipt/ImportDN", "path": "pages/raw/ingoods/dnReceipt/ImportDN",
"style": { "style": {
@ -401,6 +425,22 @@
"navigationBarTextStyle": "white" // white-black- "navigationBarTextStyle": "white" // white-black-
} }
}, },
{
"path": "pages/raw/handover/picking/Local-details",
"style": {
"navigationBarTitleText": "本地DN收货明细",
"navigationStyle": "custom", //
"navigationBarTextStyle": "white" // white-black-
}
},
{
"path": "pages/raw/handover/picking/Summary-details",
"style": {
"navigationBarTitleText": "本地DN收货明细",
"navigationStyle": "custom", //
"navigationBarTextStyle": "white" // white-black-
}
},
{ {
"path": "pages/raw/handover/feeding/index", "path": "pages/raw/handover/feeding/index",
"style": { "style": {
@ -417,6 +457,14 @@
"navigationBarTextStyle": "white" // white-black- "navigationBarTextStyle": "white" // white-black-
} }
}, },
{
"path": "pages/raw/handover/feeding/Local-details",
"style": {
"navigationBarTitleText": "补料明细",
"navigationStyle": "custom", //
"navigationBarTextStyle": "white" // white-black-
}
},
{ {
"path": "pages/raw/handover/feeding/Location", "path": "pages/raw/handover/feeding/Location",
"style": { "style": {

@ -1,14 +1,30 @@
<template> <template>
<view class="page-product-receipt"> <view class="page-product-receipt">
<view class="header" :style="{ backgroundColor: `rgba(23, 83, 234, ${scrollTop / 100})` }"> <view
class="header"
:style="{ backgroundColor: `rgba(23, 83, 234, ${scrollTop / 100})` }"
>
<view class="left"> <view class="left">
<u-icon class="icon" name="arrow-left" @click="back" /> <u-icon class="icon" name="arrow-left" @click="back" />
</view> </view>
<view class="title">{{ $t('message.Relocation') }}</view> <view class="title">{{ $t("message.Relocation") }}</view>
<view class="right"></view> <view class="right"></view>
</view> </view>
<u-form class="form" ref="form" :model="form" label-width="180rpx"> <u-form class="form" ref="form" :model="form" label-width="180rpx">
<u-form-item :required="true" :label="this.$t('message.product_barCode')" prop="productCode"> <u-form-item :label="this.$t('message.Transfer')">
<u-input v-model="userDefined4" placeholder="" class="Transfer" />
<u-button
type="primary"
style="height: 60rpx; margin-left: 20rpx"
@click="generate"
>{{ $t("message.generate") }}</u-button
>
</u-form-item>
<u-form-item
:required="true"
:label="this.$t('message.product_barCode')"
prop="productCode"
>
<u-search <u-search
:placeholder="this.$t('message.po_PleaseInput')" :placeholder="this.$t('message.po_PleaseInput')"
v-model="form.productCode" v-model="form.productCode"
@ -17,13 +33,25 @@
></u-search> ></u-search>
</u-form-item> </u-form-item>
<u-form-item :label="this.$t('message.product_FGCode')"> <u-form-item :label="this.$t('message.product_FGCode')">
<u-input :disabled="true" v-model="model.orderInInfo.productCode" placeholder="" /> <u-input
:disabled="true"
v-model="model.orderInInfo.productCode"
placeholder=""
/>
</u-form-item> </u-form-item>
<u-form-item :label="this.$t('message.product_FGDes')"> <u-form-item :label="this.$t('message.product_FGDes')">
<u-input :disabled="true" v-model="model.orderInInfo.productDescZh" placeholder="" /> <u-input
:disabled="true"
v-model="model.orderInInfo.productDescZh"
placeholder=""
/>
</u-form-item> </u-form-item>
<u-form-item :label="this.$t('message.product_Number')"> <u-form-item :label="this.$t('message.product_Number')">
<u-input :disabled="true" v-model="model.orderInInfo.qty" placeholder="" /> <u-input
:disabled="true"
v-model="model.orderInInfo.qty"
placeholder=""
/>
</u-form-item> </u-form-item>
<!-- <u-form-item label="类型:" prop="cboPlace"> <!-- <u-form-item label="类型:" prop="cboPlace">
<u-input <u-input
@ -41,7 +69,11 @@
<u-input v-model="model.orderInInfo.custCodeName" /> <u-input v-model="model.orderInInfo.custCodeName" />
</u-form-item> --> </u-form-item> -->
<u-form-item :label="this.$t('message.product_Location')"> <u-form-item :label="this.$t('message.product_Location')">
<u-input :disabled="true" v-model="model.orderInInfo.locCode" placeholder="" /> <u-input
:disabled="true"
v-model="model.orderInInfo.locCode"
placeholder=""
/>
</u-form-item> </u-form-item>
<!-- <u-form-item label="库位:" prop="originWl"> <!-- <u-form-item label="库位:" prop="originWl">
<u-input v-model="form.originWl.label" type="select" @click="originWlSelect = true" /> <u-input v-model="form.originWl.label" type="select" @click="originWlSelect = true" />
@ -77,12 +109,19 @@
</u-form> </u-form>
<view class="bottom-bar"> <view class="bottom-bar">
<u-row class="button-bar"> <u-row class="button-bar">
<u-col :span="6"> <u-col :span="4">
<u-button type="primary" @click="onSubmit">{{ $t('message.workArea_Confirm') }}</u-button> <u-button type="primary" @click="bill">{{
$t("message.Warehouse_TransferDetails")
}}</u-button>
</u-col> </u-col>
<u-col :span="6"> <u-col :span="4">
<u-button type="primary" @click="onSubmit">{{
$t("message.workArea_Confirm")
}}</u-button>
</u-col>
<u-col :span="4">
<u-button type="error" @click="uni.navigateBack()">{{ <u-button type="error" @click="uni.navigateBack()">{{
$t('message.po_Return') $t("message.po_Return")
}}</u-button> }}</u-button>
</u-col> </u-col>
</u-row> </u-row>
@ -91,12 +130,12 @@
</template> </template>
<script lang="ts"> <script lang="ts">
import { Component, Ref } from 'vue-property-decorator'; import { Component, Ref } from "vue-property-decorator";
import { BasePage } from '@/components/base/page'; import { BasePage } from "@/components/base/page";
import jPicker from '@/components/J-Picker/jPicker.vue'; import jPicker from "@/components/J-Picker/jPicker.vue";
import { VForm, VFormRules } from 'vue/types/form'; import { VForm, VFormRules } from "vue/types/form";
import model from './model'; import model from "./model";
import { session } from '@/store/modules/session'; import { session } from "@/store/modules/session";
interface OptionType { interface OptionType {
label: string; label: string;
@ -112,7 +151,7 @@ export default class productCheckReceipt extends BasePage {
/** /**
* 表单引用 * 表单引用
*/ */
@Ref('form') readonly $form!: VForm; @Ref("form") readonly $form!: VForm;
/** /**
* 页面Module * 页面Module
@ -126,23 +165,30 @@ export default class productCheckReceipt extends BasePage {
// originWl: {} as OptionType, // originWl: {} as OptionType,
aimWl: {} as OptionType, aimWl: {} as OptionType,
// qty: {} as OptionType, // qty: {} as OptionType,
productCode: '', productCode: "",
}; };
userDefined4: any = "";
// originWlSelect = false; // originWlSelect = false;
aimWlSelect = false; aimWlSelect = false;
// aimWlSelect1 = false; // aimWlSelect1 = false;
cboPlaceSelect = false; cboPlaceSelect = false;
rules: VFormRules<any> = { rules: VFormRules<any> = {
documentNo: [{ required: true, message: this.$t('message.Warehouse_Tip1') as string }], documentNo: [
{ required: true, message: this.$t("message.Warehouse_Tip1") as string },
],
// originWl: [{ required: true, message: '' }], // originWl: [{ required: true, message: '' }],
aimWl: [{ required: true, message: this.$t('message.Warehouse_Tip3') as string }], aimWl: [
cboPlace: [{ required: true, message: this.$t('message.Warehouse_Tip4') as string }], { required: true, message: this.$t("message.Warehouse_Tip3") as string },
],
cboPlace: [
{ required: true, message: this.$t("message.Warehouse_Tip4") as string },
],
}; };
back() { back() {
uni.navigateBack({ delta: 1 }); uni.navigateBack({ delta: 1 });
this.model.orderInInfo.productDescZh = ''; this.model.orderInInfo.productDescZh = "";
} }
value = ''; value = "";
show = false; show = false;
bookTypeChange(e: any) { bookTypeChange(e: any) {
@ -151,20 +197,48 @@ export default class productCheckReceipt extends BasePage {
// onReadyonLoad // onReadyonLoad
onReady() { onReady() {
this.model.orderInInfo.productDescZh = ''; this.model.orderInInfo.productDescZh = "";
this.model.orderInInfo.productCode = ''; this.model.orderInInfo.productCode = "";
this.model.orderInInfo.qty = ''; this.model.orderInInfo.qty = "";
this.model.orderInInfo.locCode = ''; this.model.orderInInfo.locCode = "";
this.$form.setRules(this.rules); this.$form.setRules(this.rules);
this.model.queryLocation(); this.model.queryLocation();
} }
async generate() {
let person = JSON.parse(
localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
);
let loginName = person.session.user.loginName;
await this.model.getCpMoveBatchNo({ loginName });
this.userDefined4 = model.userDefined4;
}
async bill() {
// if (this.form.documentNo == "") {
// uni.showToast({
// icon: "none",
// title: "" as any,
// });
// return;
// }
// let person = JSON.parse(
// localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
// );
// let content = {
// loginName: person.session.user.loginName,
// poNo: this.form.documentNo,
// factoryCode: person.session.user.factoryCode,
// };
// await this.model.querydetaildlist(content);
this.model.detailedList = [];
this.redirectTo(this.page.product.warehouse.wholeTransfer.Local);
}
onSubmit() { onSubmit() {
this.$form.validate((valid: boolean) => { this.$form.validate((valid: boolean) => {
if (!valid) return; if (!valid) return;
if (!this.form.productCode) { if (!this.form.productCode) {
uni.showToast({ uni.showToast({
icon: 'none', icon: "none",
title: this.$t('message.Warehouse_Tip5') as string, title: this.$t("message.Warehouse_Tip5") as string,
}); });
return; return;
} }
@ -184,12 +258,12 @@ export default class productCheckReceipt extends BasePage {
// } // }
if (!this.form.aimWl.value) { if (!this.form.aimWl.value) {
uni.showToast({ uni.showToast({
icon: 'none', icon: "none",
title: this.$t('message.Warehouse_Tip3') as string, title: this.$t("message.Warehouse_Tip3") as string,
}); });
return; return;
} }
console.log('orderlist'); console.log("orderlist");
const orderlist = [ const orderlist = [
{ {
@ -197,19 +271,20 @@ export default class productCheckReceipt extends BasePage {
originWl: this.model.orderInInfo.locCode, originWl: this.model.orderInInfo.locCode,
barCode: this.model.orderInInfo.barcode, barCode: this.model.orderInInfo.barcode,
aimWl: this.form.aimWl.value, aimWl: this.form.aimWl.value,
type: '0', type: "0",
orderType: '0', orderType: "0",
keepBy: session.loginName as string, keepBy: session.loginName as string,
factoryCode: session.factoryCode as string, factoryCode: session.factoryCode as string,
userDefined4: this.userDefined4,
}, },
]; ];
console.log('orderlist', orderlist); console.log("orderlist", orderlist);
this.model.onTakeoutConfirm(orderlist); this.model.onTakeoutConfirm(orderlist);
this.model.orderInInfo.productDescZh = ''; this.model.orderInInfo.productDescZh = "";
this.model.orderInInfo.productCode = ''; this.model.orderInInfo.productCode = "";
this.model.orderInInfo.qty = ''; this.model.orderInInfo.qty = "";
this.model.orderInInfo.locCode = ''; this.model.orderInInfo.locCode = "";
this.form.productCode = ''; this.form.productCode = "";
}); });
} }
} }
@ -217,7 +292,8 @@ export default class productCheckReceipt extends BasePage {
<style lang="scss" scoped> <style lang="scss" scoped>
.page-product-receipt { .page-product-receipt {
background: #f2f2f2 linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1753ea 100%) no-repeat; background: #f2f2f2
linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1753ea 100%) no-repeat;
background-size: 100% 600rpx; background-size: 100% 600rpx;
padding: 118rpx 30rpx 162rpx; padding: 118rpx 30rpx 162rpx;
min-height: 100%; min-height: 100%;
@ -260,6 +336,12 @@ export default class productCheckReceipt extends BasePage {
.u-form-item { .u-form-item {
padding: 30rpx 0; padding: 30rpx 0;
line-height: 35rpx; line-height: 35rpx;
.Transfer {
width: 180rpx;
height: 64rpx;
background: rgb(242, 242, 242);
border-radius: 110rpx;
}
} }
} }

@ -1,9 +1,15 @@
import { Action, getModule, Module, MutationAction, VuexModule } from 'vuex-module-decorators'; import {
import store from '@/store'; Action,
import http from '@/utils/request'; getModule,
import { url } from '@/utils/url'; Module,
import { session } from '@/store/modules/session'; MutationAction,
import vm from '@/main'; VuexModule,
} from "vuex-module-decorators";
import store from "@/store";
import http from "@/utils/request";
import { url } from "@/utils/url";
import { session } from "@/store/modules/session";
import vm from "@/main";
// import { page } from '@/utils/page'; // import { page } from '@/utils/page';
class OrderInInfo { class OrderInInfo {
@ -20,13 +26,15 @@ class OrderInInfo {
namespaced: true, namespaced: true,
dynamic: true, dynamic: true,
store, store,
name: 'product.warehouse.wholeTransfer', name: "product.warehouse.wholeTransfer",
}) })
export class wholeTransfer extends VuexModule { export class wholeTransfer extends VuexModule {
/** /**
* *
*/ */
WlList = []; WlList = [];
userDefined4 = "";
detailedList: any;
/** /**
* *
@ -40,7 +48,7 @@ export class wholeTransfer extends VuexModule {
/** /**
* *
*/ */
dnNo = ''; dnNo = "";
/** /**
* *
*/ */
@ -71,7 +79,7 @@ export class wholeTransfer extends VuexModule {
// loginName: '1999', // loginName: '1999',
}, },
}); });
console.log('库位数据', result); console.log("库位数据", result);
const WlList = result.data.map((_: any) => ({ const WlList = result.data.map((_: any) => ({
label: _.locationCode, label: _.locationCode,
value: _.locationCode, value: _.locationCode,
@ -93,32 +101,54 @@ export class wholeTransfer extends VuexModule {
loginName: session.loginName, loginName: session.loginName,
// loginName: '1999', // loginName: '1999',
}); });
console.log('获取来的数据', res.data.records); console.log("获取来的数据", res.data.records);
const orderInInfo = res.data.records[0]; const orderInInfo = res.data.records[0];
if (orderInInfo.custCode == '0') { if (orderInInfo.custCode == "0") {
orderInInfo.custCodeName = vm.$t('message.Warehouse_NX') as any; orderInInfo.custCodeName = vm.$t("message.Warehouse_NX") as any;
} else if (orderInInfo.custCode == '1') { } else if (orderInInfo.custCode == "1") {
orderInInfo.custCodeName = vm.$t('message.Warehouse_WX') as any; orderInInfo.custCodeName = vm.$t("message.Warehouse_WX") as any;
} else if (orderInInfo.custCode == '2') { } else if (orderInInfo.custCode == "2") {
orderInInfo.custCodeName = vm.$t('message.Warehouse_YJ') as any; orderInInfo.custCodeName = vm.$t("message.Warehouse_YJ") as any;
} else if (orderInInfo.custCode == '4') { } else if (orderInInfo.custCode == "4") {
orderInInfo.custCodeName = vm.$t('message.Warehouse_BCP') as any; orderInInfo.custCodeName = vm.$t("message.Warehouse_BCP") as any;
} }
return { orderInInfo }; return { orderInInfo };
} }
@MutationAction @MutationAction
async onTakeoutConfirm(list: any) { async onTakeoutConfirm(list: any) {
const records: any = await http.post(url.warehouse.rowTransfer.commit, list); const records: any = await http.post(
url.warehouse.rowTransfer.commit,
list
);
if (records.code == 1) { if (records.code == 1) {
uni.showToast({ uni.showToast({
icon: 'success', icon: "success",
title: 'success', title: "success",
}); });
// uni.navigateTo({ url: page.product.warehouse.index }); // uni.navigateTo({ url: page.product.warehouse.index });
} }
return {}; return {};
} }
//生成移库码
@MutationAction
async getCpMoveBatchNo(loginName: any) {
let res: any = await http.post(
url.warehouse.rowTransfer.getCode,
loginName
);
let userDefined4 = res.data;
this.userDefined4 = userDefined4;
return { userDefined4 };
}
//查询明细
@Action({ commit: "updateCheckedOrderInInfoListKw" })
async querydetaildlist(content: any) {
let res: any = await http.post("/wmspda/fg/queryListByBatchNo", content);
console.log("明细》》》》》》》》》", res.list);
this.detailedList = res.data;
return res;
}
// /** // /**
// * 提交看单明细 // * 提交看单明细
// */ // */
@ -148,12 +178,12 @@ export class wholeTransfer extends VuexModule {
/** /**
* *
*/ */
@Action({ commit: 'updateCheckedOrderInInfoListKw' }) @Action({ commit: "updateCheckedOrderInInfoListKw" })
async changeOrderInLocation(kw: string) { async changeOrderInLocation(kw: string) {
await http.post('/material/orderin/enter', { await http.post("/material/orderin/enter", {
loginName: session.loginName, loginName: session.loginName,
// loginName: '1999', // loginName: '1999',
warehouseCode: '', warehouseCode: "",
factoryCode: session.factoryCode, factoryCode: session.factoryCode,
// factoryCode: '1999', // factoryCode: '1999',
locationCode: kw, locationCode: kw,

@ -4,7 +4,7 @@
<view class="left"> <view class="left">
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" /> <u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
</view> </view>
<view class="title">{{ $t('message.CommissionedEntrantDetails') }}</view> <view class="title">{{ $t("message.Pi_QueryResults") }}</view>
<view class="right"></view> <view class="right"></view>
</view> </view>
<view class="table-wrapper"> <view class="table-wrapper">
@ -12,83 +12,35 @@
class="table" class="table"
ref="table" ref="table"
width="100%" width="100%"
enable-check="multiple"
show-left-and-right-border show-left-and-right-border
:headers="headers" :headers="headers"
:contents="model.materielList" :contents="model.detailedList"
:show-vert-border="false" :show-vert-border="false"
></wyb-table> ></wyb-table>
</view> </view>
<view class="bottom-bar">
<div class="extra">
<u-row class="bottom-info">
<u-col :span="12"
>{{ $t('message.po_Total') }} {{ model.materielList.length }}
{{ $t('message.po_Records') }}</u-col
>
</u-row>
</div>
</view>
</view> </view>
</template> </template>
<script lang="ts"> <script lang="ts">
import { Component } from 'vue-property-decorator'; import { Component } from "vue-property-decorator";
import { BasePage } from '@/components/base/page'; import { BasePage } from "@/components/base/page";
import model from './model'; import { headers } from "./config";
import { headers } from './config'; import model from "./model";
@Component @Component
export default class RawCommissionEntrantDetail extends BasePage { export default class RawReceiptDetail extends BasePage {
/**
* 页面Module
*/
model = model; model = model;
/**
* 库位
*/
locationCode = '';
/**
* 表头
*/
headers = headers; headers = headers;
onLoad(params:any){
this.model.info(params.poNo)
}
/**
* 逐条修改
*/
// changeLocation() {
// if (!this.model.hasChecked) {
// uni.showToast({
// icon: 'none',
// title: '',
// });
// return;
// }
// this.model.changeOrderInLocation(this.locationCode);
// }
/**
* 提交
*/
// async onSubmit() {
// await this.model.submitOrderInEnter();
// this.locationCode = '';
// }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.page-receipt-detail { .page-receipt-detail {
background: #f2f2f2 linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1753ea 100%) no-repeat; background: #f2f2f2
linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1753ea 100%) no-repeat;
background-size: 100% 600rpx; background-size: 100% 600rpx;
padding: 30rpx; padding: 30rpx;
min-height: 100%; min-height: 100%;
padding-top: 118rpx; padding-top: 118rpx;
padding-bottom: 162rpx;
.header { .header {
position: fixed; position: fixed;
@ -127,26 +79,5 @@ export default class RawCommissionEntrantDetail extends BasePage {
padding: 40rpx; padding: 40rpx;
border-radius: 10rpx; border-radius: 10rpx;
} }
.bottom-bar {
z-index: 21;
position: fixed;
bottom: 0;
left: 0;
right: 0;
.container {
background: #ffffff;
box-shadow: 0 1rpx 20rpx 0 rgba(128, 128, 128, 0.2);
padding: 20rpx;
}
.extra {
background-color: #fff;
margin: 5px;
border-radius: 5px;
padding: 0 10px;
}
}
} }
</style> </style>

@ -8,120 +8,31 @@
<view class="left"> <view class="left">
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" /> <u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
</view> </view>
<view class="title">{{ $t("message.dn_ReceivingGoods") }}</view> <view class="title">{{ $t("message.CommissionEntrant") }}</view>
<view class="right"></view> <view class="right"></view>
</view> </view>
<<<<<<< HEAD
<view class="content"> <view class="content">
<!-- 单号 --> <!-- 单号 -->
<view class="single"> <view class="single">
<view class="single-left"> <view class="single-left">
<view>{{ $t("message.dn_OddNumbers") }}</view> <view>{{ $t("message.CommissionedSingleNumber") }}</view>
<u-search <u-search
:placeholder="$t('message.dn_PleaseScan')" :placeholder="$t('message.InventoryPleaseScan')"
v-model="form.documentNo" v-model="form.documentNo"
@search="query" @search="query"
:show-action="false" :show-action="false"
></u-search> ></u-search>
=======
<u-form class="form" ref="form" :model="form" :error-type="['toast']" label-width="150rpx">
<u-form-item :required="true" :label="$t('message.CommissionedSingleNumber')" prop="poNo">
<!-- 单号 -->
<u-search
:placeholder="$t('message.po_PleaseInput')"
v-model="form.poNo"
@search="queryOrder"
:show-action="false"
></u-search>
</u-form-item>
<u-row gutter="0">
<!-- 物料号 -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedMaterielNo')">
<u-input v-model="form.materialCode" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
<!-- 物料描述 -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedMaterielDesc')">
<u-input v-model="form.materialDesc" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
</u-row>
<u-row gutter="0">
<!-- 需求数量 -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedDemandData')">
<u-input v-model="form.poAmount" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
<!-- 累计出库数量 -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedCumulativeData')">
<u-input v-model="form.receiptAmount" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
</u-row>
<u-row gutter="0">
<!-- 库位 -->
<u-col :span="6">
<u-form-item :required="true" :label="$t('message.CommissionedLocation')">
<u-input
v-model="form.locationCode"
type="select"
@click="locationCodeSelect = true"
:placeholder="$t('message.po_PleaseInput')"
/>
<u-select
:confirm-text="$t('message.product_Confirm')"
:cancel-text="$t('message.product_Cancel')"
v-model="locationCodeSelect"
:list="model.locationCodeList"
@confirm="locationCodeConfirm"
></u-select>
</u-form-item>
</u-col>
<!-- 本次数量 -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedThisNumber')">
<u-input v-model="form.scanAmount" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
</u-row>
<u-row>
<u-col :span="8"></u-col>
<u-col :span="4">
<u-button :style="{margin:'24rpx 0'}" type="primary" size="medium" class="confirm" @click="confirm">{{$t('message.product_add')}}</u-button>
</u-col>
</u-row>
<u-col :span="12">
<view class="table-wrapper">
<u-table class="library-table">
<u-tr class="u-tr">
<u-th class="u-th">{{ $t("message.CommissionedLocation") }}</u-th>
<u-th class="u-th">{{ $t("message.CommissionedGoOutNumber") }}</u-th>
<u-th class="u-th">{{ $t("message.operation") }}</u-th>
</u-tr>
<u-tr class="u-tr" v-for="(item, index) in LocationList" :key="index">
<u-td class="u-td">{{ item.locationCode }}</u-td>
<u-td class="u-td">{{ item.scanAmount }}</u-td>
<u-td class="u-td">
<div class="u-td" @click="deleteItem(index)">
{{ $t("message.product_Delete") }}
</div>
</u-td>
</u-tr>
</u-table>
>>>>>>> 74ef32f2cb5f9041e0e6ce27215dabf1d9c4b846
</view> </view>
<view class="single-right"> <view class="single-right">
<u-button type="primary" @click="query"></u-button> <u-button type="primary" @click="query">{{
$t("message.Query")
}}</u-button>
</view> </view>
</view> </view>
<!-- 物料 --> <!-- 物料 -->
<view class="material"> <view class="material">
<view class="material-left"> <view class="material-left">
<view>物料号</view> <view>{{ $t("message.CommissionedMaterielNo") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 260rpx" style="width: 260rpx"
@ -134,14 +45,18 @@
/> />
</view> </view>
<view class="material-right"> <view class="material-right">
<view class="material-right-title">物料描述</view> <view class="material-right-title">{{
$t("message.CommissionedMaterielDesc")
}}</view>
<view class="material-right-code">{{ every.materialDesc }}</view> <view class="material-right-code">{{ every.materialDesc }}</view>
</view> </view>
</view> </view>
<!-- 需求数量 --> <!-- 需求数量 -->
<view class="number"> <view class="number">
<view class="number-left"> <view class="number-left">
<view class="number-left-title">需求数量</view> <view class="number-left-title">{{
$t("message.CommissionedDemandData")
}}</view>
<u-input <u-input
v-model="every.poAmount" v-model="every.poAmount"
placeholder=" " placeholder=" "
@ -152,7 +67,9 @@
/> />
</view> </view>
<view class="number-right"> <view class="number-right">
<view class="number-right-title">累计数量</view> <view class="number-right-title">{{
$t("message.CommissionedCumulativeData")
}}</view>
<u-input <u-input
v-model="every.receiptAmount" v-model="every.receiptAmount"
:type="type" :type="type"
@ -165,7 +82,7 @@
<!-- 库位 --> <!-- 库位 -->
<view class="library"> <view class="library">
<view class="library-left"> <view class="library-left">
<view>库位</view> <view>{{ $t("message.CommissionedLocation") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 230rpx" style="width: 230rpx"
@ -178,7 +95,9 @@
/> />
</view> </view>
<view class="library-right"> <view class="library-right">
<view class="library-right-title">本次数量</view> <view class="library-right-title">{{
$t("message.CommissionedThisNumber")
}}</view>
<u-input <u-input
v-model="nowAmount" v-model="nowAmount"
:type="type" :type="type"
@ -189,7 +108,9 @@
</view> </view>
<!-- 添加 --> <!-- 添加 -->
<view class="add"> <view class="add">
<u-button type="primary" @click="Add"></u-button> <u-button type="primary" @click="Add">{{
$t("message.product_add")
}}</u-button>
</view> </view>
<!-- 表格 --> <!-- 表格 -->
<u-table class="library-table"> <u-table class="library-table">
@ -213,34 +134,25 @@
<view class="bottom-bar"> <view class="bottom-bar">
<u-row class="button-bar"> <u-row class="button-bar">
<u-col :span="4"> <u-col :span="4">
<<<<<<< HEAD <u-button type="primary" @click="bill">{{
<u-button type="primary" @click="bill"></u-button> $t("message.CommissionedEntrantDetails")
}}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="primary" @click="onSubmit"></u-button> <u-button type="primary" @click="onSubmit">{{
$t("message.product_Upload")
}}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="error" @click="back"></u-button> <u-button type="error" @click="back">{{
======= $t("message.po_Return")
<u-button type="primary" @click="gooutInfo"> }}</u-button>
{{
$t('message.CommissionedGoOutDetails')
}}
</u-button>
</u-col>
<u-col :span="4">
<u-button type="primary" @click="onSubmit">{{ $t('message.product_Upload') }}</u-button>
</u-col>
<u-col :span="4">
<u-button type="error" @click="back">{{ $t('message.po_Return') }}</u-button>
>>>>>>> 74ef32f2cb5f9041e0e6ce27215dabf1d9c4b846
</u-col> </u-col>
</u-row> </u-row>
</view> </view>
</view> </view>
</template> </template>
<script lang="ts"> <script lang="ts">
<<<<<<< HEAD
import { Component, Ref } from "vue-property-decorator"; import { Component, Ref } from "vue-property-decorator";
import { BasePage } from "@/components/base/page"; import { BasePage } from "@/components/base/page";
import jPicker from "@/components/J-Picker/jPicker.vue"; import jPicker from "@/components/J-Picker/jPicker.vue";
@ -290,142 +202,14 @@ export default class dnReceiptDom extends BasePage {
pickerName.value = item.locationCode + "(" + item.sendSpot + ")"; pickerName.value = item.locationCode + "(" + item.sendSpot + ")";
pickerName.sendSpot = item.sendSpot; pickerName.sendSpot = item.sendSpot;
this.Location.push(pickerName); this.Location.push(pickerName);
=======
import { Component, Ref } from 'vue-property-decorator';
import { BasePage } from '@/components/base/page';
import { VForm, VFormRules } from 'vue/types/form';
import model from './model';
import { session } from '@/store/modules/session';
import { headers } from './config';
@Component
export default class stoOutboundDom extends BasePage {
/**
* 表单引用
*/
@Ref('form') readonly $form!: VForm;
/**
* 表格引用
*/
@Ref('table') readonly $table: any;
LocationList: any = [];
/**
* 页面Module
*/
model = model;
/**
* search焦点获取
*/
firstFocus = false;
/**
* 表头
*/
headers = headers;
/**
* 表单数据
*/
form = {
// poNo
poNo:null,
//
materialCode:null,
//
materialDesc:null,
poLine:null,
unit:null,
//
receiptAmount:null,
//
poAmount: '',
locationCode:null,//
dockCode: null, // code
dockName: null, // name
orderNo: null,
qty: 0,
productCode: '', // name
productDescZh: '',
scanAmount: '',
barCode: '',
};
materialList: any = []; //
//
selectMaterielList: any = [];
/**
* 工位退料人名称
*/
operatorName = '';
/**
* 退料类型选择
*/
returningTypeSelect = false;
//
materialCodeSelect = false;
locationCodeSelect = false;
/**
* 表单验证规则
*/
rules: VFormRules<any> = {
orderNo: [{ required: true, message: this.$t('message.product_Tip4') as string }],
};
// onReadyonLoad
async onReady() {
this.$form.setRules(this.rules);
model.queryByFactoryCodeAndWorkAreaCode();
}
gooutInfo(){
if(this.form.poNo){
this.toPage(`${this.page.raw.commission.entrant.detail}?poNo=${this.form.poNo}`)
}else{
let tip = this.$t('message.borrow_Tip')
uni.showToast({
icon: "none",
title: tip as string,
}); });
} }
}
onCheck(e: any) {
console.log('e.data', e.data);
this.selectMaterielList = [];
e.data.forEach((line: any) => {
const { lineData: item } = line;
this.selectMaterielList.push(item);
});
}
back() {
uni.navigateBack({ delta: 1 });
}
//
async queryOrder(poNo:string){
const {orderInInfo} = await model.queryOrder(poNo)
Object.assign(this.form,{
orderInInfo
})
}
materialConfirm(v: any) {
console.log('v[0].value', v[0]);
// this.form.productCode = v[0].value;
this.model.materielList.forEach((item: any) => {
if (v[0].value == item.stoItem) {
this.form.productCode = item.materialCode;
this.form.productDescZh = item.materialDesc;
this.form.poAmount = item.poAmount;
this.form.scanAmount = item.scanAmount;
}
>>>>>>> 74ef32f2cb5f9041e0e6ce27215dabf1d9c4b846
});
}
<<<<<<< HEAD
// //
async query() { async query() {
if (this.form.documentNo == "") { if (this.form.documentNo == "") {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入单号", title: this.$t("message.Commission_tips1") as any,
}); });
return; return;
} }
@ -444,104 +228,6 @@ export default class stoOutboundDom extends BasePage {
if (item.materialCode == e.pickerName.value) { if (item.materialCode == e.pickerName.value) {
this.every = item; this.every = item;
return; return;
=======
locationCodeConfirm(v: any) {
console.log('v[0].value', v[0]);
// this.form.productCode = v[0].value;
this.model.locationCodeList.forEach((item: any) => {
console.log('item',item)
if (v[0].value == item.value) {
this.form.locationCode = item.value;
}
});
console.log('this.form', this.form);
}
/**
* 清空
*/
resetHandle() {
this.materialList = [];
this.$table.onCheckAllTap();
this.model.materielList.forEach((item: any) => {
if (this.form.productCode == item.label) {
this.form.productDescZh = item.materialDesc;
this.form.poAmount = item.poAmount;
this.form.scanAmount = item.scanAmount;
}
});
}
confirm() {
// if (this.wlCode == "" || this.number == "") {
// uni.showToast({
// icon: "none",
// title: "",
// });
// return;
// }
console.log('123')
this.LocationList.push(this.form)
}
deleteItem(index: any) {
this.LocationList.splice(index, 1);
}
/**
* 提交
*/
onSubmit() {
this.$form.validate(async (valid: boolean) => {
// if (this.form.productCode.slice(0, 9) != this.form.barCode.slice(0, 9)) {
// uni.showToast({ icon: 'none', title: this.$t('message.product_Tip5') as string });
// return;
// }
// if (parseInt(this.form.poAmount) <= parseInt(this.form.scanAmount)) {
// uni.showToast({ icon: 'none', title: this.$t('message.product_Tip6') as string });
// return;
// }
const list = this.LocationList.map( (item:any) =>({
wlCode:item.locationCode,
nowAmount:item.scanAmount,
}))
if (valid) {
const res = await this.model.materialComplete({
poNo:this.form.poNo,
materialCode:this.form.materialCode,
list
});
console.log('fanhui ', res);
// if (res.barcode) {
// // this.materialList.push(res);
// this.form.scanAmount = res.scanAmount;
// }
// if (this.materialList.length == 0) {
// await this.materialList.push(res);
// this.form.scanAmount += 1;
// this.$table.onCheckAllTap();
// } else {
// let flag = 0;
// for (let i = 0; i < this.materialList.length; i++) {
// console.log('11111', this.materialList[i]);
// if (this.form.barCode == this.materialList[i].barcode) {
// flag = 1;
// break;
// }
// }
// if (flag == 0) {
// await this.$table.onCheckAllTap();
// await this.materialList.push(res);
// this.form.scanAmount += 1;
// this.$table.onCheckAllTap();
// } else {
// uni.showToast({ icon: 'none', title: this.$t('message.product_Tip7') as string });
// }
// }
>>>>>>> 74ef32f2cb5f9041e0e6ce27215dabf1d9c4b846
} }
}); });
} }
@ -554,21 +240,21 @@ export default class stoOutboundDom extends BasePage {
if (this.nowAmount == "" || this.wlCode == "") { if (this.nowAmount == "" || this.wlCode == "") {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入正确的库位和数量" as any, title: this.$t("message.Commission_tips2") as any,
}); });
return; return;
} }
if (parseFloat(this.nowAmount) <= 0) { if (parseFloat(this.nowAmount) <= 0) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入大于0的数量" as any, title: this.$t("message.Commission_tips3") as any,
}); });
return; return;
} }
if (parseFloat(this.nowAmount) > this.every.poAmount) { if (parseFloat(this.nowAmount) > this.every.poAmount) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "不能大于需求数量,请重新输入" as any, title: this.$t("message.Commission_tips4") as any,
}); });
return; return;
} }
@ -587,7 +273,7 @@ export default class stoOutboundDom extends BasePage {
if (this.list == null || this.list.length == 0) { if (this.list == null || this.list.length == 0) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请确保所选物料已分配库位" as any, title: this.$t("message.Commission_tips5") as any,
}); });
} }
let upload = { let upload = {
@ -604,8 +290,23 @@ export default class stoOutboundDom extends BasePage {
this.every = ""; this.every = "";
this.materialList = []; this.materialList = [];
} }
bill() { async bill() {
this.redirectTo(this.page.raw.ingoods.dnReceipt.bill); if (this.form.documentNo == "") {
uni.showToast({
icon: "none",
title: this.$t("message._tips6") as any,
});
return;
}
let person = JSON.parse(
localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
);
let content = {
loginName: person.session.user.loginName,
poNo: this.form.documentNo,
};
await this.model.querydetaildlist(content);
this.redirectTo(this.page.raw.commission.entrant.detail);
} }
// //
business() { business() {
@ -613,18 +314,7 @@ export default class stoOutboundDom extends BasePage {
this.list.forEach((item: any) => { this.list.forEach((item: any) => {
num += parseFloat(item.nowAmount); num += parseFloat(item.nowAmount);
}); });
<<<<<<< HEAD
this.every.receiptAmount = num; this.every.receiptAmount = num;
=======
this.form.barCode = '';
this.form.productCode = '';
// this.form.orderNo = null;
this.form.scanAmount = '';
this.form.poAmount = '';
this.form.productDescZh = '';
this.selectMaterielList = [];
this.$table.onEmpty();
>>>>>>> 74ef32f2cb5f9041e0e6ce27215dabf1d9c4b846
} }
} }
</script> </script>
@ -748,7 +438,7 @@ export default class stoOutboundDom extends BasePage {
line-height: 100rpx; line-height: 100rpx;
} }
.input { .input {
width: 200rpx; width: 100rpx;
height: 70rpx; height: 70rpx;
margin-top: 15rpx; margin-top: 15rpx;
margin-left: 15rpx; margin-left: 15rpx;
@ -767,6 +457,9 @@ export default class stoOutboundDom extends BasePage {
width: 100rpx; width: 100rpx;
line-height: 100rpx; line-height: 100rpx;
} }
.search {
text-align: center;
}
} }
.library-right { .library-right {
width: 50%; width: 50%;

@ -30,6 +30,7 @@ export class ReturningModule extends VuexModule {
* *
*/ */
returningTypeList: any[] = []; returningTypeList: any[] = [];
detailedList: any;
/** /**
* *
@ -221,6 +222,14 @@ export class ReturningModule extends VuexModule {
let res = await http.post(url.outbound.stoOutbound.submit, upload); let res = await http.post(url.outbound.stoOutbound.submit, upload);
return res; return res;
} }
//查询明细
@Action({ commit: "updateCheckedOrderInInfoListKw" })
async querydetaildlist(content: any) {
let res: any = await http.post("/material/outsourcing/into/info", content);
console.log("明细》》》》》》》》》", res.list);
this.detailedList = res.data;
return res;
}
} }
export default getModule(ReturningModule); export default getModule(ReturningModule);

@ -4,7 +4,7 @@
<view class="left"> <view class="left">
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" /> <u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
</view> </view>
<view class="title">{{ $t("message.CommissionedGoOutDetails") }}</view> <view class="title">{{ $t("message.Pi_QueryResults") }}</view>
<view class="right"></view> <view class="right"></view>
</view> </view>
<view class="table-wrapper"> <view class="table-wrapper">
@ -12,76 +12,26 @@
class="table" class="table"
ref="table" ref="table"
width="100%" width="100%"
enable-check="multiple"
show-left-and-right-border show-left-and-right-border
:headers="headers" :headers="headers"
:contents="model.materielList" :contents="model.detailedList"
:show-vert-border="false" :show-vert-border="false"
></wyb-table> ></wyb-table>
</view> </view>
<view class="bottom-bar">
<div class="extra">
<u-row class="bottom-info">
<u-col :span="12"
>{{ $t("message.po_Total") }} {{ model.materielList.length }}
{{ $t("message.po_Records") }}</u-col
>
</u-row>
</div>
</view>
</view> </view>
</template> </template>
<script lang="ts"> <script lang="ts">
import { Component } from "vue-property-decorator"; import { Component } from "vue-property-decorator";
import { BasePage } from "@/components/base/page"; import { BasePage } from "@/components/base/page";
import model from "./model";
import { headers } from "./config"; import { headers } from "./config";
import model from "./model";
@Component @Component
export default class RawCommissionGoOutDetail extends BasePage { export default class RawReceiptDetail extends BasePage {
/**
* 页面Module
*/
model = model; model = model;
/**
* 库位
*/
locationCode = "";
/**
* 表头
*/
headers = headers; headers = headers;
onLoad(params: any) {
this.model.outInfo(params.poNo);
}
/**
* 逐条修改
*/
// changeLocation() {
// if (!this.model.hasChecked) {
// uni.showToast({
// icon: 'none',
// title: '',
// });
// return;
// }
// this.model.changeOrderInLocation(this.locationCode);
// }
/**
* 提交
*/
// async onSubmit() {
// await this.model.submitOrderInEnter();
// this.locationCode = '';
// }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.page-receipt-detail { .page-receipt-detail {
background: #f2f2f2 background: #f2f2f2
@ -90,6 +40,7 @@ export default class RawCommissionGoOutDetail extends BasePage {
padding: 30rpx; padding: 30rpx;
min-height: 100%; min-height: 100%;
padding-top: 118rpx; padding-top: 118rpx;
padding-bottom: 162rpx;
.header { .header {
position: fixed; position: fixed;
@ -128,26 +79,5 @@ export default class RawCommissionGoOutDetail extends BasePage {
padding: 40rpx; padding: 40rpx;
border-radius: 10rpx; border-radius: 10rpx;
} }
.bottom-bar {
z-index: 21;
position: fixed;
bottom: 0;
left: 0;
right: 0;
.container {
background: #ffffff;
box-shadow: 0 1rpx 20rpx 0 rgba(128, 128, 128, 0.2);
padding: 20rpx;
}
.extra {
background-color: #fff;
margin: 5px;
border-radius: 5px;
padding: 0 10px;
}
}
} }
</style> </style>

@ -8,30 +8,31 @@
<view class="left"> <view class="left">
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" /> <u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
</view> </view>
<view class="title">{{ $t("message.dn_ReceivingGoods") }}</view> <view class="title">{{ $t("message.CommissionGoOut") }}</view>
<view class="right"></view> <view class="right"></view>
</view> </view>
<<<<<<< HEAD
<view class="content"> <view class="content">
<!-- 单号 --> <!-- 单号 -->
<view class="single"> <view class="single">
<view class="single-left"> <view class="single-left">
<view>{{ $t("message.dn_OddNumbers") }}</view> <view>{{ $t("message.CommissionedSingleNumber") }}</view>
<u-search <u-search
:placeholder="$t('message.dn_PleaseScan')" :placeholder="$t('message.InventoryPleaseScan')"
v-model="form.documentNo" v-model="form.documentNo"
@search="query" @search="query"
:show-action="false" :show-action="false"
></u-search> ></u-search>
</view> </view>
<view class="single-right"> <view class="single-right">
<u-button type="primary" @click="query"></u-button> <u-button type="primary" @click="query">{{
$t("message.Query")
}}</u-button>
</view> </view>
</view> </view>
<!-- 物料 --> <!-- 物料 -->
<view class="material"> <view class="material">
<view class="material-left"> <view class="material-left">
<view>物料号</view> <view>{{ $t("message.CommissionedMaterielNo") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 260rpx" style="width: 260rpx"
@ -44,14 +45,18 @@
/> />
</view> </view>
<view class="material-right"> <view class="material-right">
<view class="material-right-title">物料描述</view> <view class="material-right-title">{{
$t("message.CommissionedMaterielDesc")
}}</view>
<view class="material-right-code">{{ every.materialDesc }}</view> <view class="material-right-code">{{ every.materialDesc }}</view>
</view> </view>
</view> </view>
<!-- 需求数量 --> <!-- 需求数量 -->
<view class="number"> <view class="number">
<view class="number-left"> <view class="number-left">
<view class="number-left-title">需求数量</view> <view class="number-left-title">{{
$t("message.CommissionedDemandData")
}}</view>
<u-input <u-input
v-model="every.orderAmount" v-model="every.orderAmount"
placeholder=" " placeholder=" "
@ -62,7 +67,9 @@
/> />
</view> </view>
<view class="number-right"> <view class="number-right">
<view class="number-right-title">累计数量</view> <view class="number-right-title">{{
$t("message.CommissionedCumulativeData")
}}</view>
<u-input <u-input
v-model="every.outAmount" v-model="every.outAmount"
:type="type" :type="type"
@ -75,7 +82,7 @@
<!-- 库位 --> <!-- 库位 -->
<view class="library"> <view class="library">
<view class="library-left"> <view class="library-left">
<view>库位</view> <view>{{ $t("message.CommissionedLocation") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 230rpx" style="width: 230rpx"
@ -88,125 +95,22 @@
/> />
</view> </view>
<view class="library-right"> <view class="library-right">
<view class="library-right-title">本次数量</view> <view class="library-right-title">{{
$t("message.CommissionedThisNumber")
}}</view>
<u-input <u-input
v-model="nowAmount" v-model="nowAmount"
:type="type" :type="type"
:border="border" :border="border"
class="input" class="input"
/> />
=======
<u-form class="form" ref="form" :model="form" :error-type="['toast']" label-width="150rpx">
<u-form-item :required="true" :label="$t('message.CommissionedSingleNumber')" prop="poNo">
<!-- 单号 -->
<u-search
:placeholder="$t('message.po_PleaseInput')"
v-model="form.poNo"
@search="queryOrder"
:show-action="false"
></u-search>
</u-form-item>
<u-row gutter="0">
<!-- 物料号 -->
<!-- <u-col :span="6">
<u-form-item :required="true" :label="$t('message.CommissionedMaterielNo')">
<u-input
v-model="form.productCode"
type="select"
@click="materialCodeSelect = true"
:placeholder="$t('message.po_PleaseInput')"
/>
<u-select
:confirm-text="$t('message.product_Confirm')"
:cancel-text="$t('message.product_Cancel')"
v-model="materialCodeSelect"
:list="model.materielList"
@confirm="materialConfirm"
></u-select>
</u-form-item>
</u-col> -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedMaterielNo')">
<u-input v-model="form.materialCode" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
<!-- 物料描述 -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedMaterielDesc')">
<u-input v-model="form.materialDesc" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
</u-row>
<u-row gutter="0">
<!-- 需求数量 -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedDemandData')">
<u-input v-model="form.orderAmount" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
<!-- 累计出库数量 -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedCumulativeData')">
<u-input v-model="form.outAmount" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
</u-row>
<u-row gutter="0">
<!-- 库位 -->
<u-col :span="6">
<u-form-item :required="true" :label="$t('message.CommissionedLocation')">
<u-input
v-model="form.locationCode"
type="select"
@click="locationCodeSelect = true"
:placeholder="$t('message.po_PleaseInput')"
/>
<u-select
:confirm-text="$t('message.product_Confirm')"
:cancel-text="$t('message.product_Cancel')"
v-model="locationCodeSelect"
:list="model.locationCodeList"
@confirm="locationCodeConfirm"
></u-select>
</u-form-item>
</u-col>
<!-- 本次数量 -->
<u-col :span="6">
<u-form-item :label="$t('message.CommissionedThisNumber')">
<u-input v-model="form.scanAmount" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
</u-col>
</u-row>
<u-row>
<u-col :span="8"></u-col>
<u-col :span="4">
<u-button :style="{margin:'24rpx 0'}" type="primary" size="medium" class="confirm" @click="confirm">{{$t('message.product_add')}}</u-button>
</u-col>
</u-row>
<u-col :span="12">
<view class="table-wrapper">
<u-table class="library-table">
<u-tr class="u-tr">
<u-th class="u-th">{{ $t("message.CommissionedLocation") }}</u-th>
<u-th class="u-th">{{ $t("message.CommissionedGoOutNumber") }}</u-th>
<u-th class="u-th">{{ $t("message.operation") }}</u-th>
</u-tr>
<u-tr class="u-tr" v-for="(item, index) in LocationList" :key="index">
<u-td class="u-td">{{ item.locationCode }}</u-td>
<u-td class="u-td">{{ item.scanAmount }}</u-td>
<u-td class="u-td">
<div class="u-td" @click="deleteItem(index)">
{{ $t("message.product_Delete") }}
</div>
</u-td>
</u-tr>
</u-table>
>>>>>>> 74ef32f2cb5f9041e0e6ce27215dabf1d9c4b846
</view> </view>
</view> </view>
<!-- 添加 --> <!-- 添加 -->
<view class="add"> <view class="add">
<u-button type="primary" @click="Add"></u-button> <u-button type="primary" @click="Add">{{
$t("message.product_add")
}}</u-button>
</view> </view>
<!-- 表格 --> <!-- 表格 -->
<u-table class="library-table"> <u-table class="library-table">
@ -230,34 +134,25 @@
<view class="bottom-bar"> <view class="bottom-bar">
<u-row class="button-bar"> <u-row class="button-bar">
<u-col :span="4"> <u-col :span="4">
<<<<<<< HEAD <u-button type="primary" @click="bill">{{
<u-button type="primary" @click="bill"></u-button> $t("message.CommissionedGoOutDetails")
}}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="primary" @click="onSubmit"></u-button> <u-button type="primary" @click="onSubmit">{{
$t("message.product_Upload")
}}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="error" @click="back"></u-button> <u-button type="error" @click="back">{{
======= $t("message.po_Return")
<u-button type="primary" @click="gooutInfo"> }}</u-button>
{{
$t('message.CommissionedGoOutDetails')
}}
</u-button>
</u-col>
<u-col :span="4">
<u-button type="primary" @click="onSubmit">{{ $t('message.product_Upload') }}</u-button>
</u-col>
<u-col :span="4">
<u-button type="error" @click="back">{{ $t('message.po_Return') }}</u-button>
>>>>>>> 74ef32f2cb5f9041e0e6ce27215dabf1d9c4b846
</u-col> </u-col>
</u-row> </u-row>
</view> </view>
</view> </view>
</template> </template>
<script lang="ts"> <script lang="ts">
<<<<<<< HEAD
import { Component, Ref } from "vue-property-decorator"; import { Component, Ref } from "vue-property-decorator";
import { BasePage } from "@/components/base/page"; import { BasePage } from "@/components/base/page";
import jPicker from "@/components/J-Picker/jPicker.vue"; import jPicker from "@/components/J-Picker/jPicker.vue";
@ -307,142 +202,14 @@ export default class dnReceiptDom extends BasePage {
pickerName.value = item.locationCode + "(" + item.sendSpot + ")"; pickerName.value = item.locationCode + "(" + item.sendSpot + ")";
pickerName.sendSpot = item.sendSpot; pickerName.sendSpot = item.sendSpot;
this.Location.push(pickerName); this.Location.push(pickerName);
=======
import { Component, Ref } from 'vue-property-decorator';
import { BasePage } from '@/components/base/page';
import { VForm, VFormRules } from 'vue/types/form';
import model from './model';
import { session } from '@/store/modules/session';
import { headers } from './config';
@Component
export default class stoOutboundDom extends BasePage {
/**
* 表单引用
*/
@Ref('form') readonly $form!: VForm;
/**
* 表格引用
*/
@Ref('table') readonly $table: any;
LocationList: any = [];
/**
* 页面Module
*/
model = model;
/**
* search焦点获取
*/
firstFocus = false;
/**
* 表头
*/
headers = headers;
/**
* 表单数据
*/
form = {
// poNo
poNo:null,
//
materialCode:null,
//
materialDesc:null,
poLine:null,
unit:null,
//
outAmount:null,
//
orderAmount: '',
locationCode:null,//
dockCode: null, // code
dockName: null, // name
orderNo: null,
qty: 0,
productCode: '', // name
productDescZh: '',
scanAmount: '',
barCode: '',
};
materialList: any = []; //
//
selectMaterielList: any = [];
/**
* 工位退料人名称
*/
operatorName = '';
/**
* 退料类型选择
*/
returningTypeSelect = false;
//
materialCodeSelect = false;
locationCodeSelect = false;
/**
* 表单验证规则
*/
rules: VFormRules<any> = {
orderNo: [{ required: true, message: this.$t('message.product_Tip4') as string }],
};
// onReadyonLoad
async onReady() {
this.$form.setRules(this.rules);
model.queryByFactoryCodeAndWorkAreaCode();
}
gooutInfo(){
if(this.form.poNo){
this.toPage(`${this.page.raw.commission.goOut.detail}?poNo=${this.form.poNo}`)
}else{
let tip = this.$t('message.borrow_Tip')
uni.showToast({
icon: "none",
title: tip as string,
}); });
} }
}
onCheck(e: any) {
console.log('e.data', e.data);
this.selectMaterielList = [];
e.data.forEach((line: any) => {
const { lineData: item } = line;
this.selectMaterielList.push(item);
});
}
back() {
uni.navigateBack({ delta: 1 });
}
//
async queryOrder(poNo:string){
const {orderInInfo} = await model.queryOrder(poNo)
Object.assign(this.form,{
orderInInfo
})
}
materialConfirm(v: any) {
console.log('v[0].value', v[0]);
// this.form.productCode = v[0].value;
this.model.materielList.forEach((item: any) => {
if (v[0].value == item.stoItem) {
this.form.productCode = item.materialCode;
this.form.productDescZh = item.materialDesc;
this.form.orderAmount = item.orderAmount;
this.form.scanAmount = item.scanAmount;
}
>>>>>>> 74ef32f2cb5f9041e0e6ce27215dabf1d9c4b846
});
}
<<<<<<< HEAD
// //
async query() { async query() {
if (this.form.documentNo == "") { if (this.form.documentNo == "") {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入单号", title: this.$t("message.Commission_tips1") as any,
}); });
return; return;
} }
@ -461,104 +228,6 @@ export default class stoOutboundDom extends BasePage {
if (item.materialCode == e.pickerName.value) { if (item.materialCode == e.pickerName.value) {
this.every = item; this.every = item;
return; return;
=======
locationCodeConfirm(v: any) {
console.log('v[0].value', v[0]);
// this.form.productCode = v[0].value;
this.model.locationCodeList.forEach((item: any) => {
console.log('item',item)
if (v[0].value == item.value) {
this.form.locationCode = item.value;
}
});
console.log('this.form', this.form);
}
/**
* 清空
*/
resetHandle() {
this.materialList = [];
this.$table.onCheckAllTap();
this.model.materielList.forEach((item: any) => {
if (this.form.productCode == item.label) {
this.form.productDescZh = item.materialDesc;
this.form.orderAmount = item.orderAmount;
this.form.scanAmount = item.scanAmount;
}
});
}
confirm() {
// if (this.wlCode == "" || this.number == "") {
// uni.showToast({
// icon: "none",
// title: "",
// });
// return;
// }
console.log('123')
this.LocationList.push(this.form)
}
deleteItem(index: any) {
this.LocationList.splice(index, 1);
}
/**
* 提交
*/
onSubmit() {
this.$form.validate(async (valid: boolean) => {
// if (this.form.productCode.slice(0, 9) != this.form.barCode.slice(0, 9)) {
// uni.showToast({ icon: 'none', title: this.$t('message.product_Tip5') as string });
// return;
// }
// if (parseInt(this.form.orderAmount) <= parseInt(this.form.scanAmount)) {
// uni.showToast({ icon: 'none', title: this.$t('message.product_Tip6') as string });
// return;
// }
const list = this.LocationList.map( (item:any) =>({
wlCode:item.locationCode,
nowAmount:item.scanAmount,
}))
if (valid) {
const res = await this.model.materialComplete({
poNo:this.form.poNo,
materialCode:this.form.materialCode,
list
});
console.log('fanhui ', res);
// if (res.barcode) {
// // this.materialList.push(res);
// this.form.scanAmount = res.scanAmount;
// }
// if (this.materialList.length == 0) {
// await this.materialList.push(res);
// this.form.scanAmount += 1;
// this.$table.onCheckAllTap();
// } else {
// let flag = 0;
// for (let i = 0; i < this.materialList.length; i++) {
// console.log('11111', this.materialList[i]);
// if (this.form.barCode == this.materialList[i].barcode) {
// flag = 1;
// break;
// }
// }
// if (flag == 0) {
// await this.$table.onCheckAllTap();
// await this.materialList.push(res);
// this.form.scanAmount += 1;
// this.$table.onCheckAllTap();
// } else {
// uni.showToast({ icon: 'none', title: this.$t('message.product_Tip7') as string });
// }
// }
>>>>>>> 74ef32f2cb5f9041e0e6ce27215dabf1d9c4b846
} }
}); });
} }
@ -571,21 +240,21 @@ export default class stoOutboundDom extends BasePage {
if (this.nowAmount == "" || this.wlCode == "") { if (this.nowAmount == "" || this.wlCode == "") {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入正确的库位和数量" as any, title: this.$t("message.Commission_tips2") as any,
}); });
return; return;
} }
if (parseFloat(this.nowAmount) <= 0) { if (parseFloat(this.nowAmount) <= 0) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入大于0的数量" as any, title: this.$t("message.Commission_tips3") as any,
}); });
return; return;
} }
if (parseFloat(this.nowAmount) > this.every.orderAmount) { if (parseFloat(this.nowAmount) > this.every.orderAmount) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "不能大于需求数量,请重新输入" as any, title: this.$t("message.Commission_tips4") as any,
}); });
return; return;
} }
@ -604,7 +273,7 @@ export default class stoOutboundDom extends BasePage {
if (this.list == null || this.list.length == 0) { if (this.list == null || this.list.length == 0) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请确保所选物料已分配库位" as any, title: this.$t("message.Commission_tips5") as any,
}); });
} }
let upload = { let upload = {
@ -621,8 +290,24 @@ export default class stoOutboundDom extends BasePage {
this.every = ""; this.every = "";
this.materialList = []; this.materialList = [];
} }
bill() { async bill() {
this.redirectTo(this.page.raw.ingoods.dnReceipt.bill); if (this.form.documentNo == "") {
uni.showToast({
icon: "none",
title: this.$t("message._tips6") as any,
});
return;
}
let person = JSON.parse(
localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
);
let content = {
loginName: person.session.user.loginName,
poNo: this.form.documentNo,
factoryCode: person.session.user.factoryCode,
};
await this.model.querydetaildlist(content);
this.redirectTo(this.page.raw.commission.goOut.detail);
} }
// //
business() { business() {

@ -30,6 +30,7 @@ export class ReturningModule extends VuexModule {
* *
*/ */
returningTypeList: any[] = []; returningTypeList: any[] = [];
detailedList: any;
/** /**
* *
*/ */
@ -177,6 +178,14 @@ export class ReturningModule extends VuexModule {
); );
return res; return res;
} }
//查询明细
@Action({ commit: "updateCheckedOrderInInfoListKw" })
async querydetaildlist(content: any) {
let res: any = await http.post("/material/outsourcing/outInfo", content);
console.log("明细》》》》》》》》》", res.list);
this.detailedList = res.data;
return res;
}
} }
export default getModule(ReturningModule); export default getModule(ReturningModule);

@ -2,14 +2,18 @@
<view class="page-raw-warehouse"> <view class="page-raw-warehouse">
<view class="header"> <view class="header">
<view class="left"> <view class="left">
<u-icon class="icon" name="arrow-left" @click="toPage(page.raw.index)" /> <u-icon
class="icon"
name="arrow-left"
@click="toPage(page.raw.index)"
/>
</view> </view>
<view class="title">{{ $t('message.RowWarehouse') }}</view> <view class="title">{{ $t("message.subcontract") }}</view>
<view class="right"></view> <view class="right"></view>
</view> </view>
<view class="container"> <view class="container">
<u-row :gutter="30"> <u-row :gutter="30">
<!-- <u-col :span="12" v-for="(item, index) in childData" :key="index"> <u-col :span="12" v-for="(item, index) in childData" :key="index">
<u-button <u-button
@click=" @click="
uni.navigateTo({ uni.navigateTo({
@ -20,25 +24,25 @@
<u-icon size="80" :name="item.iconClass"></u-icon> <u-icon size="80" :name="item.iconClass"></u-icon>
<text class="name"> <text class="name">
{{ {{
session.lang == 'en' session.lang == "en"
? index + 1 + ' ' + item.engResourceName ? index + 1 + " " + item.engResourceName
: index + 1 + ' ' + item.resourceName : index + 1 + " " + item.resourceName
}}</text }}</text
> >
</u-button> </u-button>
</u-col>--> </u-col>
<u-col :span="12"> <!-- <u-col :span="12">
<u-button @click="toPage(page.raw.commission.entrant.index)"> <u-button @click="toPage(page.raw.commission.entrant.index)">
<u-icon size="80" name="/static/icons/icon-14.png"></u-icon> <u-icon size="80" name="/static/icons/icon-14.png"></u-icon>
<text class="name">1.{{ '委外入库' }}</text> <text class="name">1.{{ $t("message.CommissionEntrant") }}</text>
</u-button> </u-button>
</u-col> </u-col>
<u-col :span="12"> <u-col :span="12">
<u-button @click="toPage(page.raw.commission.goOut.index)"> <u-button @click="toPage(page.raw.commission.goOut.index)">
<u-icon size="80" name="/static/icons/icon-14.png"></u-icon> <u-icon size="80" name="/static/icons/icon-14.png"></u-icon>
<text class="name">2.{{ '委外出库' }}</text> <text class="name">2.{{ $t("message.CommissionGoOut") }}</text>
</u-button> </u-button>
</u-col> </u-col> -->
<!-- <!--
<u-col :span="12"> <u-col :span="12">
<u-button @click="toPage(page.raw.warehouse.rowScrap.index)"> <u-button @click="toPage(page.raw.warehouse.rowScrap.index)">
@ -58,13 +62,15 @@
</template> </template>
<script lang="ts"> <script lang="ts">
import { Component } from 'vue-property-decorator'; import { Component } from "vue-property-decorator";
import { BasePage } from '@/components/base/page'; import { BasePage } from "@/components/base/page";
import model from "../model";
@Component @Component
export default class RawAppointment extends BasePage { export default class RawAppointment extends BasePage {
model = model;
childData: any; childData: any;
onLoad(option: { childData: any }) { onLoad(option: { childData: any }) {
this.childData = option//JSON.parse(option.childData); this.childData = JSON.parse(option.childData);
} }
} }
</script> </script>

@ -5,7 +5,7 @@
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" /> <u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
</view> </view>
<!-- <view class="title">{{ $t("message.Pi_ByOrderPicking") }}</view> --> <!-- <view class="title">{{ $t("message.Pi_ByOrderPicking") }}</view> -->
<view class="title">补料</view> <view class="title">{{ $t("message.FillingMaterials") }}</view>
<view class="right"></view> <view class="right"></view>
</view> </view>
<view class="table-wrapper"> <view class="table-wrapper">
@ -24,18 +24,22 @@
<!-- 列表展示数据 --> <!-- 列表展示数据 -->
<view class="Exhibition"> <view class="Exhibition">
<view class="Exhibition-left"> <view class="Exhibition-left">
<view class="Exhibition-left-title">工位:</view> <view class="Exhibition-left-title"
>{{ $t("message.Pi_Station") }}:</view
>
<view class="Exhibition-left-data">{{ some.sendSpot }}</view> <view class="Exhibition-left-data">{{ some.sendSpot }}</view>
</view> </view>
<view class="Exhibition-right"> <view class="Exhibition-right">
<view class="Exhibition-right-title">已拣数量:</view> <view class="Exhibition-right-title"
>{{ $t("message.Pi_PickedQuantity") }}:</view
>
<view class="Exhibition-right-data">{{ some.totalFillAmount }}</view> <view class="Exhibition-right-data">{{ some.totalFillAmount }}</view>
</view> </view>
</view> </view>
<!-- 添加库位 --> <!-- 添加库位 -->
<view class="library"> <view class="library">
<view class="library-left"> <view class="library-left">
<view>库位:</view> <view>{{ $t("message.CommissionedLocation") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 230rpx" style="width: 230rpx"
@ -48,13 +52,17 @@
/> />
</view> </view>
<view class="library-right"> <view class="library-right">
<view class="library-right-title">本次数量</view> <view class="library-right-title">{{
$t("message.CommissionedThisNumber")
}}</view>
<u-input v-model="qty" :type="type" :border="border" class="input" /> <u-input v-model="qty" :type="type" :border="border" class="input" />
</view> </view>
</view> </view>
<!-- 添加 --> <!-- 添加 -->
<view class="add"> <view class="add">
<u-button type="primary" @click="Add"></u-button> <u-button type="primary" @click="Add">{{
$t("message.product_add")
}}</u-button>
</view> </view>
<!-- 表格 --> <!-- 表格 -->
<u-table class="library-table"> <u-table class="library-table">
@ -113,15 +121,19 @@
<div class="container"> <div class="container">
<u-row> <u-row>
<u-col :span="4"> <u-col :span="4">
<u-button type="primary" class="appoint" @click="appoint" <u-button type="primary" class="appoint" @click="bill">{{
>补料明细</u-button $t("message.Feeding_ReplenishmentDetails")
> }}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="success" @click="onSubmit"> </u-button> <u-button type="success" @click="onSubmit">
{{ $t("message.product_Upload") }}
</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="error" @click="onUpload"> </u-button> <u-button type="error" @click="uni.navigateBack()">
{{ $t("message.po_Return") }}
</u-button>
</u-col> </u-col>
</u-row> </u-row>
</div> </div>
@ -320,7 +332,24 @@ export default class RawReceiptDetail extends BasePage {
item.wlQTyList = []; item.wlQTyList = [];
}); });
} }
appoint() {} async bill() {
if (this.some == {} || this.some.prdOrder == null) {
uni.showToast({
icon: "none",
title: "请先选择一条物料" as any,
});
return;
}
let person = JSON.parse(
localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
);
let content = {
loginName: person.session.user.loginName,
prdOrder: this.some.prdOrder,
};
await this.model.querydetaildlist(content);
this.redirectTo(this.page.raw.handover.feeding.Local);
}
async onSubmit() { async onSubmit() {
let dataList = this.model.blDetailList; let dataList = this.model.blDetailList;
const params = { const params = {
@ -412,7 +441,7 @@ export default class RawReceiptDetail extends BasePage {
.Exhibition-right-title { .Exhibition-right-title {
width: 50%; width: 50%;
height: 100%; height: 100%;
text-align: center; // text-align: center;
line-height: 100rpx; line-height: 100rpx;
} }
.Exhibition-right-data { .Exhibition-right-data {

@ -23,6 +23,7 @@ export class FeedingModule extends VuexModule {
* *
*/ */
blDetailList: any[] = []; blDetailList: any[] = [];
detailedList: any;
/** /**
* *
@ -141,7 +142,14 @@ export class FeedingModule extends VuexModule {
}); });
return { blDetailList }; return { blDetailList };
} }
//查询明细
@Action({ commit: "updateCheckedOrderInInfoListKw" })
async querydetaildlist(content: any) {
let res: any = await http.post("/tl/getBlListSn", content);
console.log("明细》》》》》》》》》", res.list);
this.detailedList = res.list;
return res;
}
/** /**
* *
*/ */

@ -23,18 +23,22 @@
<!-- 列表展示数据 --> <!-- 列表展示数据 -->
<view class="Exhibition"> <view class="Exhibition">
<view class="Exhibition-left"> <view class="Exhibition-left">
<view class="Exhibition-left-title">工位:</view> <view class="Exhibition-left-title"
>{{ $t("message.Pi_Station") }}:</view
>
<view class="Exhibition-left-data">{{ some.sendSpot }}</view> <view class="Exhibition-left-data">{{ some.sendSpot }}</view>
</view> </view>
<view class="Exhibition-right"> <view class="Exhibition-right">
<view class="Exhibition-right-title">已拣数量:</view> <view class="Exhibition-right-title"
>{{ $t("message.Pi_PickedQuantity") }}:</view
>
<view class="Exhibition-right-data">{{ some.totalMoAmount }}</view> <view class="Exhibition-right-data">{{ some.totalMoAmount }}</view>
</view> </view>
</view> </view>
<!-- 添加库位 --> <!-- 添加库位 -->
<view class="library"> <view class="library">
<view class="library-left"> <view class="library-left">
<view>库位:</view> <view>{{ $t("message.CommissionedLocation") }}:</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 230rpx" style="width: 230rpx"
@ -47,19 +51,23 @@
/> />
</view> </view>
<view class="library-right"> <view class="library-right">
<view class="library-right-title">本次数量</view> <view class="library-right-title"
>{{ $t("message.CommissionedThisNumber") }}:</view
>
<u-input <u-input
v-model="qty" v-model="qty"
:type="type" :type="type"
:border="border" :border="border"
placeholder="请输入数量" :placeholder="$t('message.Summary_PleaseInputNumber')"
class="input" class="input"
/> />
</view> </view>
</view> </view>
<!-- 添加 --> <!-- 添加 -->
<view class="add"> <view class="add">
<u-button type="primary" @click="Add"></u-button> <u-button type="primary" @click="Add">{{
$t("message.product_add")
}}</u-button>
</view> </view>
<!-- 表格 --> <!-- 表格 -->
<u-table class="library-table"> <u-table class="library-table">
@ -87,15 +95,19 @@
<div class="container"> <div class="container">
<u-row> <u-row>
<u-col :span="4"> <u-col :span="4">
<u-button type="primary" class="appoint" @click="appoint" <u-button type="primary" class="appoint" @click="bill">{{
>拣配明细</u-button $t("message.detailed")
> }}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="success" @click="onSubmit"> </u-button> <u-button type="success" @click="onSubmit">
{{ $t("message.po_Submit") }}
</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="error" @click="onUpload"> </u-button> <u-button type="error" @click="onUpload">
{{ $t("message.po_Return") }}
</u-button>
</u-col> </u-col>
</u-row> </u-row>
</div> </div>
@ -310,8 +322,24 @@ export default class RawReceiptDetail extends BasePage {
this.again = JSON.parse(sessionStorage.getItem("params") as any); this.again = JSON.parse(sessionStorage.getItem("params") as any);
sessionStorage.removeItem("params"); sessionStorage.removeItem("params");
} }
appoint() {} async bill() {
if (this.some == {} || this.some.prdOrder == null) {
uni.showToast({
icon: "none",
title: "请先选择一条物料" as any,
});
return;
}
let person = JSON.parse(
localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
);
let content = {
loginName: person.session.user.loginName,
prdOrder: this.some.prdOrder,
};
await this.model.querydetaildlist(content);
this.redirectTo(this.page.raw.handover.picking.Local);
}
/** /**
* 提交 * 提交
*/ */
@ -409,7 +437,7 @@ export default class RawReceiptDetail extends BasePage {
.Exhibition-right-title { .Exhibition-right-title {
width: 50%; width: 50%;
height: 100%; height: 100%;
text-align: center; // text-align: center;
line-height: 100rpx; line-height: 100rpx;
} }
.Exhibition-right-data { .Exhibition-right-data {
@ -442,6 +470,7 @@ export default class RawReceiptDetail extends BasePage {
width: 120rpx; width: 120rpx;
height: 100%; height: 100%;
line-height: 100rpx; line-height: 100rpx;
text-align: center;
} }
.input { .input {
width: 200rpx; width: 200rpx;

@ -23,22 +23,22 @@
<!-- 列表展示数据 --> <!-- 列表展示数据 -->
<view class="Exhibition"> <view class="Exhibition">
<view class="Exhibition-left"> <view class="Exhibition-left">
<view class="Exhibition-left-title">{{ <view class="Exhibition-left-title"
$t("message.Pi_Station") >{{ $t("message.Pi_Station") }}:</view
}}</view> >
<view class="Exhibition-left-data">{{ some.sendSpot }}</view> <view class="Exhibition-left-data">{{ some.sendSpot }}</view>
</view> </view>
<view class="Exhibition-right"> <view class="Exhibition-right">
<view class="Exhibition-right-title">{{ <view class="Exhibition-right-title"
$t("message.Pi_PickedQuantity") >{{ $t("message.Pi_PickedQuantity") }}:</view
}}</view> >
<view class="Exhibition-right-data">{{ some.totalMoAmount }}</view> <view class="Exhibition-right-data">{{ some.totalMoAmount }}</view>
</view> </view>
</view> </view>
<!-- 添加库位 --> <!-- 添加库位 -->
<view class="library"> <view class="library">
<view class="library-left"> <view class="library-left">
<view>{{ $t("message.product_Location") }}</view> <view>{{ $t("message.CommissionedLocation") }}:</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 230rpx" style="width: 230rpx"
@ -51,14 +51,14 @@
/> />
</view> </view>
<view class="library-right"> <view class="library-right">
<view class="library-right-title">{{ <view class="library-right-title"
$t("message.Pi_CurrentPickingQuantity") >{{ $t("message.CommissionedThisNumber") }}:</view
}}</view> >
<u-input <u-input
v-model="qty" v-model="qty"
:type="type" :type="type"
:border="border" :border="border"
placeholder="请输入数量" :placeholder="$t('message.Summary_PleaseInputNumber')"
class="input" class="input"
/> />
</view> </view>
@ -95,7 +95,7 @@
<div class="container"> <div class="container">
<u-row> <u-row>
<u-col :span="4"> <u-col :span="4">
<u-button type="primary" class="appoint" @click="appoint">{{ <u-button type="primary" class="appoint" @click="bill">{{
$t("message.detailed") $t("message.detailed")
}}</u-button> }}</u-button>
</u-col> </u-col>
@ -327,7 +327,24 @@ export default class RawReceiptDetail extends BasePage {
this.again = JSON.parse(sessionStorage.getItem("params") as any); this.again = JSON.parse(sessionStorage.getItem("params") as any);
sessionStorage.removeItem("params"); sessionStorage.removeItem("params");
} }
appoint() {} async bill() {
// if (this.some == {} || this.some.prdOrder == null) {
// uni.showToast({
// icon: "none",
// title: "" as any,
// });
// return;
// }
// let person = JSON.parse(
// localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
// );
// let content = {
// loginName: person.session.user.loginName,
// prdOrder: this.some.prdOrder,
// };
// await this.model.querydetaildlist(content);
this.redirectTo(this.page.raw.handover.picking.SummaryLocal);
}
// //
async onSubmit() { async onSubmit() {
const includeOrderOutIdList = this.model.proOrderResultList.map( const includeOrderOutIdList = this.model.proOrderResultList.map(
@ -464,8 +481,8 @@ export default class RawReceiptDetail extends BasePage {
.library-right-title { .library-right-title {
width: 120rpx; width: 120rpx;
height: 100%; height: 100%;
// line-height: 100rpx; line-height: 100rpx;
margin-top: 20rpx; text-align: center;
} }
.input { .input {
width: 200rpx; width: 200rpx;

@ -181,3 +181,50 @@ export const orderHeaders = [
key: "prdOrder", key: "prdOrder",
}, },
]; ];
export const Headers = [
{
label: vm.$t("message.po_MaterielNo"),
key: "materialCode",
width: 220,
},
{
label: vm.$t("message.po_DemandQuantity"),
key: "amount",
},
{
label: vm.$t("message.Pi_CurrentPickingQuantity"),
key: "operatorAmount", //本次拣配数量
width: 300,
},
{
label: vm.$t("message.po_Location"),
// key: 'currentWkposCode',
key: "originLocation",
},
{
label: vm.$t("message.po_MaterielDes"),
key: "materialDesc",
width: 350,
},
{
label: vm.$t("message.Pi_unit"),
key: "unit",
},
{
label: vm.$t("message.Pi_factory"),
key: "sapFactoryCode",
},
{
label: vm.$t("message.Pi_Station"),
key: "sendSpot",
},
{
label: vm.$t("message.Pi_OrderNo"),
key: "prdOrder",
},
{
label: vm.$t("message.CommissionedLocation"),
key: "wlCode",
},
];

@ -22,6 +22,7 @@ export class PickingModule extends VuexModule {
* *
*/ */
proOrderList: any[] = []; proOrderList: any[] = [];
detailedList: any;
/** /**
* *
@ -371,6 +372,14 @@ export class PickingModule extends VuexModule {
); );
return res; return res;
} }
//查询拣配明细
@Action({ commit: "updateCheckedOrderInInfoListKw" })
async querydetaildlist(content: any) {
let res: any = await http.post("/sortscan/getJhListSn", content);
this.detailedList = res.list;
console.log(this.detailedList);
return res;
}
} }
export default getModule(PickingModule); export default getModule(PickingModule);

@ -5,7 +5,7 @@
<view class="name">Hi, {{ session.user.userName }}</view> <view class="name">Hi, {{ session.user.userName }}</view>
<view class="logout" @click="session.logout()"> <view class="logout" @click="session.logout()">
<u-icon name="info-circle"></u-icon> <u-icon name="info-circle"></u-icon>
<text>{{ $t('message.rawMenu_SignOut') }}</text> <text>{{ $t("message.rawMenu_SignOut") }}</text>
</view> </view>
</view> </view>
<view class="date">{{ today }}</view> <view class="date">{{ today }}</view>
@ -16,26 +16,28 @@
<u-button <u-button
@click=" @click="
uni.navigateTo({ uni.navigateTo({
url: `${item.href}?childData=${JSON.stringify(item.childResource)}`, url: `${item.href}?childData=${JSON.stringify(
item.childResource
)}`,
}) })
" "
> >
<u-icon size="80" :name="item.iconClass"></u-icon> <u-icon size="80" :name="item.iconClass"></u-icon>
<text class="name"> <text class="name">
{{ {{
session.lang == 'en' session.lang == "en"
? index + 1 + ' ' + item.engResourceName ? index + 1 + " " + item.engResourceName
: index + 1 + ' ' + item.resourceName : index + 1 + " " + item.resourceName
}}</text }}</text
> >
</u-button> </u-button>
</u-col> </u-col>
<u-col :span="12"> <!-- <u-col :span="12">
<u-button @click="toPage(page.raw.commission.index)"> <u-button @click="toPage(page.raw.commission.index)">
<u-icon size="80" name="/static/icons/icon-14.png"></u-icon> <u-icon size="80" name="/static/icons/icon-14.png"></u-icon>
<text class="name">5.{{ '委外' }}</text> <text class="name">5.{{ "委外" }}</text>
</u-button> </u-button>
</u-col> </u-col> -->
<!-- <u-col :span="12"> <!-- <u-col :span="12">
<u-button @click="toPage(page.raw.ingoods.index)"> <u-button @click="toPage(page.raw.ingoods.index)">
<u-icon size="80" name="/static/icons/icon-02.png"></u-icon> <u-icon size="80" name="/static/icons/icon-02.png"></u-icon>
@ -66,15 +68,15 @@
</template> </template>
<script lang="ts"> <script lang="ts">
import { Component } from 'vue-property-decorator'; import { Component } from "vue-property-decorator";
import { BasePage } from '@/components/base/page'; import { BasePage } from "@/components/base/page";
import dayjs from 'dayjs'; import dayjs from "dayjs";
import model from './model'; import model from "./model";
@Component @Component
export default class RawHome extends BasePage { export default class RawHome extends BasePage {
model = model; model = model;
today = dayjs().format('YYYY-MM-DD dddd'); today = dayjs().format("YYYY-MM-DD dddd");
onLoad() { onLoad() {
this.model.getMenuList(); this.model.getMenuList();
} }

@ -24,13 +24,15 @@
></u-search> ></u-search>
</view> </view>
<view class="single-right"> <view class="single-right">
<u-button type="primary" @click="query"></u-button> <u-button type="primary" @click="query">{{
$t("message.Query")
}}</u-button>
</view> </view>
</view> </view>
<!-- 采购单号 --> <!-- 采购单号 -->
<view class="material"> <view class="Purchase-title">
<view class="material-left"> <view class="Purchase">
<view>采购单</view> <view>{{ $t("message.Purchase") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 260rpx" style="width: 260rpx"
@ -46,7 +48,7 @@
<!-- 物料 --> <!-- 物料 -->
<view class="material"> <view class="material">
<view class="material-left"> <view class="material-left">
<view>物料号</view> <view>{{ $t("message.Materiel") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 260rpx" style="width: 260rpx"
@ -59,14 +61,18 @@
/> />
</view> </view>
<view class="material-right"> <view class="material-right">
<view class="material-right-title">物料描述</view> <view class="material-right-title">{{
$t("message.CommissionedMaterielDesc")
}}</view>
<view class="material-right-code">{{ every.materialDesc }}</view> <view class="material-right-code">{{ every.materialDesc }}</view>
</view> </view>
</view> </view>
<!-- 需求数量 --> <!-- 需求数量 -->
<view class="number"> <view class="number">
<view class="number-left"> <view class="number-left">
<view class="number-left-title">需求数量</view> <view class="number-left-title">{{
$t("message.DemandQuantity")
}}</view>
<u-input <u-input
v-model="every.requestAmount" v-model="every.requestAmount"
placeholder=" " placeholder=" "
@ -77,7 +83,7 @@
/> />
</view> </view>
<view class="number-right"> <view class="number-right">
<view class="number-right-title">累计数量</view> <view class="number-right-title">{{ $t("message.Cumulative") }}</view>
<u-input <u-input
v-model="Cumulative" v-model="Cumulative"
:type="type" :type="type"
@ -90,7 +96,7 @@
<!-- 库位 --> <!-- 库位 -->
<view class="library"> <view class="library">
<view class="library-left"> <view class="library-left">
<view>库位</view> <view>{{ $t("message.CommissionedLocation") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 230rpx" style="width: 230rpx"
@ -103,7 +109,9 @@
/> />
</view> </view>
<view class="library-right"> <view class="library-right">
<view class="library-right-title">本次数量</view> <view class="library-right-title">{{
$t("message.CommissionedThisNumber")
}}</view>
<u-input <u-input
v-model="receiptAmount" v-model="receiptAmount"
:type="type" :type="type"
@ -114,7 +122,9 @@
</view> </view>
<!-- 添加 --> <!-- 添加 -->
<view class="add"> <view class="add">
<u-button type="primary" @click="Add"></u-button> <u-button type="primary" @click="Add">{{
$t("message.product_add")
}}</u-button>
</view> </view>
<!-- 表格 --> <!-- 表格 -->
<u-table class="library-table"> <u-table class="library-table">
@ -138,13 +148,19 @@
<view class="bottom-bar"> <view class="bottom-bar">
<u-row class="button-bar"> <u-row class="button-bar">
<u-col :span="4"> <u-col :span="4">
<u-button type="primary" @click="bill"></u-button> <u-button type="primary" @click="bill">{{
$t("message.detailed")
}}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="primary" @click="onSubmit"></u-button> <u-button type="primary" @click="onSubmit">{{
$t("message.po_Submit")
}}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="error" @click="back"></u-button> <u-button type="error" @click="back">{{
$t("message.po_Return")
}}</u-button>
</u-col> </u-col>
</u-row> </u-row>
</view> </view>
@ -216,7 +232,7 @@ export default class dnReceiptDom extends BasePage {
if (this.form.documentNo == "") { if (this.form.documentNo == "") {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入单号", title: this.$t("message.Commission_tips1") as any,
}); });
return; return;
} }
@ -261,21 +277,21 @@ export default class dnReceiptDom extends BasePage {
if (this.receiptAmount == "" || this.wlCode == "") { if (this.receiptAmount == "" || this.wlCode == "") {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入正确的库位和数量" as any, title: this.$t("message.Commission_tips2") as any,
}); });
return; return;
} }
if (parseFloat(this.receiptAmount) <= 0) { if (parseFloat(this.receiptAmount) <= 0) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入大于0的数量" as any, title: this.$t("message.Commission_tips3") as any,
}); });
return; return;
} }
if (parseFloat(this.receiptAmount) > this.every.requestAmount) { if (parseFloat(this.receiptAmount) > this.every.requestAmount) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "不能大于需求数量,请重新输入" as any, title: this.$t("message.Commission_tips4") as any,
}); });
return; return;
} }
@ -290,7 +306,7 @@ export default class dnReceiptDom extends BasePage {
if (isTrue != true) { if (isTrue != true) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请选择相同库位" as any, title: this.$t("message._tips5") as any,
}); });
return; return;
} }
@ -321,7 +337,7 @@ export default class dnReceiptDom extends BasePage {
if (this.every.wllist == null || this.every.wllist.length == 0) { if (this.every.wllist == null || this.every.wllist.length == 0) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请确保所选物料已分配库位" as any, title: this.$t("message.Commission_tips5") as any,
}); });
} }
this.upload.push(this.every); this.upload.push(this.every);
@ -333,8 +349,23 @@ export default class dnReceiptDom extends BasePage {
this.every = ""; this.every = "";
this.materialList = []; this.materialList = [];
} }
bill() { async bill() {
this.redirectTo(this.page.raw.ingoods.dnReceipt.bill); if (this.form.documentNo == "") {
uni.showToast({
icon: "none",
title: this.$t("message._tips6") as any,
});
return;
}
let person = JSON.parse(
localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
);
let content = {
loginName: person.session.user.loginName,
dnNo: this.form.documentNo,
};
await this.model.querydetaildlist(content);
this.redirectTo(this.page.raw.ingoods.dnReceipt.Local);
} }
// //
business() { business() {
@ -410,6 +441,18 @@ export default class dnReceiptDom extends BasePage {
} }
} }
} }
.Purchase-title {
width: 100%;
.Purchase {
width: 60%;
height: 100%;
display: flex;
view {
width: 200rpx;
line-height: 100rpx;
}
}
}
.material { .material {
width: 100%; width: 100%;
height: 100rpx; height: 100rpx;
@ -443,7 +486,7 @@ export default class dnReceiptDom extends BasePage {
height: 100rpx; height: 100rpx;
display: flex; display: flex;
.number-left { .number-left {
width: 50%; width: 45%;
height: 100%; height: 100%;
display: flex; display: flex;
.number-left-title { .number-left-title {
@ -459,11 +502,11 @@ export default class dnReceiptDom extends BasePage {
} }
} }
.number-right { .number-right {
width: 50%; width: 55%;
height: 100%; height: 100%;
display: flex; display: flex;
.number-right-title { .number-right-title {
width: 120rpx; width: 140rpx;
height: 100%; height: 100%;
line-height: 100rpx; line-height: 100rpx;
} }
@ -487,6 +530,9 @@ export default class dnReceiptDom extends BasePage {
width: 100rpx; width: 100rpx;
line-height: 100rpx; line-height: 100rpx;
} }
.search {
padding-left: 30px;
}
} }
.library-right { .library-right {
width: 50%; width: 50%;

@ -24,13 +24,15 @@
></u-search> ></u-search>
</view> </view>
<view class="single-right"> <view class="single-right">
<u-button type="primary" @click="query"></u-button> <u-button type="primary" @click="query">{{
$t("message.Query")
}}</u-button>
</view> </view>
</view> </view>
<!-- 采购单号 --> <!-- 采购单号 -->
<view class="material"> <view class="Purchase-title">
<view class="material-left"> <view class="Purchase">
<view>采购单</view> <view>{{ $t("message.Purchase") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 260rpx" style="width: 260rpx"
@ -46,7 +48,7 @@
<!-- 物料 --> <!-- 物料 -->
<view class="material"> <view class="material">
<view class="material-left"> <view class="material-left">
<view>物料号</view> <view>{{ $t("message.Materiel") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 260rpx" style="width: 260rpx"
@ -59,14 +61,18 @@
/> />
</view> </view>
<view class="material-right"> <view class="material-right">
<view class="material-right-title">物料描述</view> <view class="material-right-title">{{
$t("message.CommissionedMaterielDesc")
}}</view>
<view class="material-right-code">{{ every.materialDesc }}</view> <view class="material-right-code">{{ every.materialDesc }}</view>
</view> </view>
</view> </view>
<!-- 需求数量 --> <!-- 需求数量 -->
<view class="number"> <view class="number">
<view class="number-left"> <view class="number-left">
<view class="number-left-title">需求数量</view> <view class="number-left-title">{{
$t("message.DemandQuantity")
}}</view>
<u-input <u-input
v-model="every.requestAmount" v-model="every.requestAmount"
placeholder=" " placeholder=" "
@ -77,7 +83,7 @@
/> />
</view> </view>
<view class="number-right"> <view class="number-right">
<view class="number-right-title">累计数量</view> <view class="number-right-title">{{ $t("message.Cumulative") }}</view>
<u-input <u-input
v-model="Cumulative" v-model="Cumulative"
:type="type" :type="type"
@ -90,7 +96,7 @@
<!-- 库位 --> <!-- 库位 -->
<view class="library"> <view class="library">
<view class="library-left"> <view class="library-left">
<view>库位</view> <view>{{ $t("message.CommissionedLocation") }}</view>
<jPicker <jPicker
sureColor="#ff0000" sureColor="#ff0000"
style="width: 230rpx" style="width: 230rpx"
@ -103,7 +109,9 @@
/> />
</view> </view>
<view class="library-right"> <view class="library-right">
<view class="library-right-title">本次数量</view> <view class="library-right-title">{{
$t("message.CommissionedThisNumber")
}}</view>
<u-input <u-input
v-model="receiptAmount" v-model="receiptAmount"
:type="type" :type="type"
@ -114,7 +122,9 @@
</view> </view>
<!-- 添加 --> <!-- 添加 -->
<view class="add"> <view class="add">
<u-button type="primary" @click="Add"></u-button> <u-button type="primary" @click="Add">{{
$t("message.product_add")
}}</u-button>
</view> </view>
<!-- 表格 --> <!-- 表格 -->
<u-table class="library-table"> <u-table class="library-table">
@ -138,13 +148,19 @@
<view class="bottom-bar"> <view class="bottom-bar">
<u-row class="button-bar"> <u-row class="button-bar">
<u-col :span="4"> <u-col :span="4">
<u-button type="primary" @click="bill"></u-button> <u-button type="primary" @click="bill">{{
$t("message.detailed")
}}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="primary" @click="onSubmit"></u-button> <u-button type="primary" @click="onSubmit">{{
$t("message.po_Submit")
}}</u-button>
</u-col> </u-col>
<u-col :span="4"> <u-col :span="4">
<u-button type="error" @click="back"></u-button> <u-button type="error" @click="back">{{
$t("message.po_Return")
}}</u-button>
</u-col> </u-col>
</u-row> </u-row>
</view> </view>
@ -216,7 +232,7 @@ export default class dnReceiptDom extends BasePage {
if (this.form.documentNo == "") { if (this.form.documentNo == "") {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入单号", title: this.$t("message.Commission_tips1") as any,
}); });
return; return;
} }
@ -261,21 +277,21 @@ export default class dnReceiptDom extends BasePage {
if (this.receiptAmount == "" || this.wlCode == "") { if (this.receiptAmount == "" || this.wlCode == "") {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入正确的库位和数量" as any, title: this.$t("message.Commission_tips2") as any,
}); });
return; return;
} }
if (parseFloat(this.receiptAmount) <= 0) { if (parseFloat(this.receiptAmount) <= 0) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请输入大于0的数量" as any, title: this.$t("message.Commission_tips3") as any,
}); });
return; return;
} }
if (parseFloat(this.receiptAmount) > this.every.requestAmount) { if (parseFloat(this.receiptAmount) > this.every.requestAmount) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "不能大于需求数量,请重新输入" as any, title: this.$t("message.Commission_tips4") as any,
}); });
return; return;
} }
@ -290,7 +306,7 @@ export default class dnReceiptDom extends BasePage {
if (isTrue != true) { if (isTrue != true) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请选择相同库位" as any, title: this.$t("message._tips5") as any,
}); });
return; return;
} }
@ -321,7 +337,7 @@ export default class dnReceiptDom extends BasePage {
if (this.every.wllist == null || this.every.wllist.length == 0) { if (this.every.wllist == null || this.every.wllist.length == 0) {
uni.showToast({ uni.showToast({
icon: "none", icon: "none",
title: "请确保所选物料已分配库位" as any, title: this.$t("message.Commission_tips5") as any,
}); });
} }
this.upload.push(this.every); this.upload.push(this.every);
@ -333,8 +349,23 @@ export default class dnReceiptDom extends BasePage {
this.every = ""; this.every = "";
this.materialList = []; this.materialList = [];
} }
bill() { async bill() {
this.redirectTo(this.page.raw.ingoods.dnReceipt.bill); if (this.form.documentNo == "") {
uni.showToast({
icon: "none",
title: this.$t("message._tips6") as any,
});
return;
}
let person = JSON.parse(
localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
);
let content = {
loginName: person.session.user.loginName,
dnNo: this.form.documentNo,
};
await this.model.querydetaildlist(content);
this.redirectTo(this.page.raw.ingoods.dnReceipt.Local);
} }
// //
business() { business() {
@ -410,6 +441,18 @@ export default class dnReceiptDom extends BasePage {
} }
} }
} }
.Purchase-title {
width: 100%;
.Purchase {
width: 60%;
height: 100%;
display: flex;
view {
width: 200rpx;
line-height: 100rpx;
}
}
}
.material { .material {
width: 100%; width: 100%;
height: 100rpx; height: 100rpx;
@ -443,7 +486,7 @@ export default class dnReceiptDom extends BasePage {
height: 100rpx; height: 100rpx;
display: flex; display: flex;
.number-left { .number-left {
width: 50%; width: 45%;
height: 100%; height: 100%;
display: flex; display: flex;
.number-left-title { .number-left-title {
@ -459,12 +502,13 @@ export default class dnReceiptDom extends BasePage {
} }
} }
.number-right { .number-right {
width: 50%; width: 55%;
height: 100%; height: 100%;
display: flex; display: flex;
.number-right-title { .number-right-title {
width: 120rpx; width: 140rpx;
height: 100%; height: 100%;
text-align: center;
line-height: 100rpx; line-height: 100rpx;
} }
.input { .input {
@ -487,6 +531,9 @@ export default class dnReceiptDom extends BasePage {
width: 100rpx; width: 100rpx;
line-height: 100rpx; line-height: 100rpx;
} }
.search {
padding-left: 30px;
}
} }
.library-right { .library-right {
width: 50%; width: 50%;

@ -41,6 +41,7 @@ export class ReceiptModule extends VuexModule {
* *
*/ */
dnNo = ""; dnNo = "";
DNdetailedList: any;
/** /**
* *
*/ */
@ -252,6 +253,14 @@ export class ReceiptModule extends VuexModule {
); );
return res; return res;
} }
//查询DN/海外DN收货明细
@Action({ commit: "updateCheckedOrderInInfoListKw" })
async querydetaildlist(content: any) {
let res: any = await http.post("/material/getDnRecSn", content);
console.log("明细》》》》》》》》》", res.list);
this.DNdetailedList = res.list;
return res;
}
} }
export default getModule(ReceiptModule); export default getModule(ReceiptModule);

@ -1,13 +1,13 @@
import Request from 'luch-request'; import Request from "luch-request";
import store from '@/store'; import store from "@/store";
import { AxiosInstance } from 'axios'; import { AxiosInstance } from "axios";
import { session } from '@/store/modules/session'; import { session } from "@/store/modules/session";
import vm from '@/main'; import vm from "@/main";
/** /**
* *
*/ */
const debug = process.env.NODE_ENV !== 'production'; const debug = process.env.NODE_ENV !== "production";
const httpjson = new Request({ const httpjson = new Request({
baseURL: process.env.VUE_APP_BASE_URL, baseURL: process.env.VUE_APP_BASE_URL,
@ -22,25 +22,26 @@ httpjson.interceptors.request.use(
(config: any) => { (config: any) => {
// 所有请求默认提示加载中 // 所有请求默认提示加载中
if (!loading) { if (!loading) {
uni.showLoading({ title: vm.$t('message.Loading') as string }); uni.showLoading({ title: vm.$t("message.Loading") as string });
} else { } else {
clearTimeout(loading); clearTimeout(loading);
} }
// 在请求发送之前做一些处理 // 在请求发送之前做一些处理
try { try {
const token = ''; // store.state.session.accessToken; const token = ""; // store.state.session.accessToken;
if (token) { if (token) {
// 让每个请求携带token // 让每个请求携带token
config.header['content-type'] = 'application/json'; config.header["content-type"] = "application/json";
} }
} catch (e) { } catch (e) {
// error // error
} }
if (typeof config.data === 'string' && config.data.constructor === String) { if (typeof config.data === "string" && config.data.constructor === String) {
config.header['content-type'] = 'application/json'; config.header["content-type"] = "application/json";
} }
if (session.lang) { if (session.lang) {
config.url = config.url + '?lang=' + (session.lang == 'en' ? 'en_US' : 'zh_CN'); config.url =
config.url + "?lang=" + (session.lang == "en" ? "en_US" : "zh_CN");
} }
return config; return config;
}, },
@ -48,7 +49,7 @@ httpjson.interceptors.request.use(
// 发送失败 // 发送失败
console.log(error); console.log(error);
Promise.reject(error); Promise.reject(error);
}, }
); );
httpjson.interceptors.response.use( httpjson.interceptors.response.use(
@ -62,7 +63,7 @@ httpjson.interceptors.response.use(
// dataAxios 是 axios 返回数据中的 data // dataAxios 是 axios 返回数据中的 data
const dataAxios = response.data; const dataAxios = response.data;
// 测试服务接口直接返回结果 // 测试服务接口直接返回结果
if (response.config.url === '/wmspda/system/test') { if (response.config.url === "/wmspda/system/test") {
return dataAxios; return dataAxios;
} }
// 这个状态码是和后端约定的 // 这个状态码是和后端约定的
@ -74,14 +75,14 @@ httpjson.interceptors.response.use(
} else if (code !== undefined) { } else if (code !== undefined) {
// 有 code 代表这是一个后端接口 可以进行进一步的判断 // 有 code 代表这是一个后端接口 可以进行进一步的判断
switch (code) { switch (code) {
case '1': case "1":
// code === '1' 代表没有错误 // code === '1' 代表没有错误
return dataAxios; return dataAxios;
case 401: case 401:
// [ 示例 ] 其它和后台约定的 code // [ 示例 ] 其它和后台约定的 code
store.dispatch('session/logout'); store.dispatch("session/logout");
uni.setStorageSync('showLoginTips', true); uni.setStorageSync("showLoginTips", true);
uni.switchTab({ url: '/pages/personal/index' }); uni.switchTab({ url: "/pages/personal/index" });
errorCreate(dataAxios.message, response.config.custom.hideError); errorCreate(dataAxios.message, response.config.custom.hideError);
break; break;
default: default:
@ -92,7 +93,7 @@ httpjson.interceptors.response.use(
} else if (status !== undefined) { } else if (status !== undefined) {
// 有 status 代表这是一个后端接口 可以进行进一步的判断 // 有 status 代表这是一个后端接口 可以进行进一步的判断
switch (status) { switch (status) {
case 'S': case "S":
// code === 'S' or '1' 代表没有错误 // code === 'S' or '1' 代表没有错误
return dataAxios; return dataAxios;
default: default:
@ -113,24 +114,48 @@ httpjson.interceptors.response.use(
} else if (error) { } else if (error) {
switch (error.statusCode) { switch (error.statusCode) {
/* eslint-disable */ /* eslint-disable */
case 400: error.message = vm.$t('message.request_Tip1') as string; break case 400:
case 401: error.message = vm.$t('message.request_Tip2') as string; break error.message = vm.$t("message.request_Tip1") as string;
case 403: error.message = vm.$t('message.request_Tip3') as string; break break;
case 404: error.message = vm.$t('message.request_Tip4') as string + error.config.url; break case 401:
case 408: error.message = vm.$t('message.request_Tip5') as string; break error.message = vm.$t("message.request_Tip2") as string;
case 500: error.message = vm.$t('message.request_Tip6') as string; break break;
case 501: error.message = vm.$t('message.request_Tip7') as string; break case 403:
case 502: error.message = vm.$t('message.request_Tip8') as string; break error.message = vm.$t("message.request_Tip3") as string;
case 503: error.message = vm.$t('message.request_Tip9') as string; break break;
case 504: error.message = vm.$t('message.request_Tip10') as string; break case 404:
case 505: error.message = vm.$t('message.request_Tip11') as string; break error.message =
default: break (vm.$t("message.request_Tip4") as string) + error.config.url;
break;
case 408:
error.message = vm.$t("message.request_Tip5") as string;
break;
case 500:
error.message = vm.$t("message.request_Tip6") as string;
break;
case 501:
error.message = vm.$t("message.request_Tip7") as string;
break;
case 502:
error.message = vm.$t("message.request_Tip8") as string;
break;
case 503:
error.message = vm.$t("message.request_Tip9") as string;
break;
case 504:
error.message = vm.$t("message.request_Tip10") as string;
break;
case 505:
error.message = vm.$t("message.request_Tip11") as string;
break;
default:
break;
/* eslint-enable */ /* eslint-enable */
} }
} }
errorLog(error, error?.config?.custom?.hideError); errorLog(error, error?.config?.custom?.hideError);
return Promise.reject(error); return Promise.reject(error);
}, }
); );
// 创建一个错误 // 创建一个错误
@ -143,14 +168,14 @@ function errorCreate(msg: string, hideError: boolean) {
// 记录和显示错误 // 记录和显示错误
function errorLog(error: Error, hideError: boolean) { function errorLog(error: Error, hideError: boolean) {
// 打印到控制台 // 打印到控制台
if (process.env.NODE_ENV === 'development') { if (process.env.NODE_ENV === "development") {
console.error('>>>>>> Error >>>>>>'); console.error(">>>>>> Error >>>>>>");
console.error(error); console.error(error);
} }
// 显示提示 // 显示提示
hideError || hideError ||
uni.showToast({ uni.showToast({
icon: 'none', icon: "none",
title: error.message, title: error.message,
}); });
} }

@ -30,12 +30,14 @@ export const page = {
internal: "/pages/product/outbound/internal/index", internal: "/pages/product/outbound/internal/index",
foreign: "/pages/product/outbound/foreign/index", foreign: "/pages/product/outbound/foreign/index",
stoOutbound: "/pages/product/outbound/stoOutbound/index", stoOutbound: "/pages/product/outbound/stoOutbound/index",
delivergoods: "/pages/product/outbound/stoOutbound/DN-delivergoods",
stoOutboundDetail: "/pages/product/outbound/stoOutbound/detail", stoOutboundDetail: "/pages/product/outbound/stoOutbound/detail",
}, },
warehouse: { warehouse: {
index: "/pages/product/warehouse/index", index: "/pages/product/warehouse/index",
wholeTransfer: { wholeTransfer: {
index: "/pages/product/warehouse/wholeTransfer/index", index: "/pages/product/warehouse/wholeTransfer/index",
Local: "/pages/product/warehouse/wholeTransfer/Local-details",
}, },
wholeScrap: { wholeScrap: {
index: "/pages/product/warehouse/wholeScrap/index", index: "/pages/product/warehouse/wholeScrap/index",
@ -72,11 +74,14 @@ export const page = {
query: "/pages/raw/handover/picking/query", query: "/pages/raw/handover/picking/query",
total: "/pages/raw/handover/picking/total", total: "/pages/raw/handover/picking/total",
byorder: "/pages/raw/handover/picking/ByOrder", byorder: "/pages/raw/handover/picking/ByOrder",
Local: "/pages/raw/handover/picking/Local-details",
SummaryLocal: "/pages/raw/handover/picking/Summary-details",
}, },
feeding: { feeding: {
index: "/pages/raw/handover/feeding/index", index: "/pages/raw/handover/feeding/index",
detail: "/pages/raw/handover/feeding/detail", detail: "/pages/raw/handover/feeding/detail",
Location: "/pages/raw/handover/feeding/Location", Location: "/pages/raw/handover/feeding/Location",
Local: "/pages/raw/handover/feeding/Local-details",
}, },
returning: { returning: {
index: "/pages/raw/handover/returning/index", index: "/pages/raw/handover/returning/index",
@ -117,6 +122,7 @@ export const page = {
dnReceiving: "/pages/raw/ingoods/dnReceipt/dnReceiving", dnReceiving: "/pages/raw/ingoods/dnReceipt/dnReceiving",
importDN: "/pages/raw/ingoods/dnReceipt/ImportDN", importDN: "/pages/raw/ingoods/dnReceipt/ImportDN",
bill: "/pages/raw/ingoods/dnReceipt/bill", bill: "/pages/raw/ingoods/dnReceipt/bill",
Local: "/pages/raw/ingoods/dnReceipt/Local-details",
}, },
dnReturnGoods: { dnReturnGoods: {
index: "/pages/raw/ingoods/dnReturnGoods/index", index: "/pages/raw/ingoods/dnReturnGoods/index",

@ -93,7 +93,8 @@ export const url = {
// 出库单号查询 // 出库单号查询
queryOrder: "/material/outsourcing/queryOrder", queryOrder: "/material/outsourcing/queryOrder",
// 库位下拉列表 // 库位下拉列表
queryByFactoryCodeAndWorkAreaCode: "/wmspda/fg/queryByFactoryCodeAndWorkAreaCode", queryByFactoryCodeAndWorkAreaCode:
"/wmspda/fg/queryByFactoryCodeAndWorkAreaCode",
// 出库提交 // 出库提交
materialComplete: "/material/outsourcing/materialComplete", materialComplete: "/material/outsourcing/materialComplete",
// 出库明细查询 // 出库明细查询
@ -101,15 +102,15 @@ export const url = {
}, },
entrant: { entrant: {
// 单号查询 // 单号查询
queryOrder:'/material/outsourcing/into/queryOrder', queryOrder: "/material/outsourcing/into/queryOrder",
// 库位下拉列表 // 库位下拉列表
queryByFactoryCodeAndWorkAreaCode: "/wmspda/fg/queryByFactoryCodeAndWorkAreaCode", queryByFactoryCodeAndWorkAreaCode:
"/wmspda/fg/queryByFactoryCodeAndWorkAreaCode",
// 提交 // 提交
materialComplete:'/material/outsourcing/into/materialComplete', materialComplete: "/material/outsourcing/into/materialComplete",
// 明细查询 // 明细查询
info:'/material/outsourcing/into/info', info: "/material/outsourcing/into/info",
},
}
}, },
}, },
SFG: { SFG: {
@ -188,6 +189,7 @@ export const url = {
rowTransfer: { rowTransfer: {
list: "/wmspda/fg/listByOrder", list: "/wmspda/fg/listByOrder",
commit: "/wmspda/fg/confirmMove", commit: "/wmspda/fg/confirmMove",
getCode: "/wmspda/fg/getCpMoveBatchNo",
}, },
rowScrap: { rowScrap: {
list: "/wmspda/fg/listByOrder", list: "/wmspda/fg/listByOrder",

@ -1,4 +1,5 @@
module.exports = { module.exports = {
lintOnSave: false, lintOnSave: false,
transpileDependencies: ['@dcloudio/uni-ui'] transpileDependencies: ['@dcloudio/uni-ui'],
assetsDir:'nwp/static',
} }
Loading…
Cancel
Save