diff --git a/src/i18n/lang/cn.ts b/src/i18n/lang/cn.ts
index 07da1e5..a021e54 100644
--- a/src/i18n/lang/cn.ts
+++ b/src/i18n/lang/cn.ts
@@ -545,5 +545,6 @@ export default {
SOdelivery: 'SO 发货',
SONO: 'SO单号',
Closecount: '是否关闭盘点单',
+ SPDR: '备件DN收货',
},
};
diff --git a/src/i18n/lang/en.ts b/src/i18n/lang/en.ts
index 23bb47e..3083253 100644
--- a/src/i18n/lang/en.ts
+++ b/src/i18n/lang/en.ts
@@ -544,5 +544,6 @@ export default {
SOdelivery: 'SO delivery',
SONO: 'SO NO',
Closecount: 'Close the count sheet?',
+ SPDR: 'Spare Part DN Receive',
},
};
diff --git a/src/i18n/lang/ru.ts b/src/i18n/lang/ru.ts
index a926b4a..09a6929 100644
--- a/src/i18n/lang/ru.ts
+++ b/src/i18n/lang/ru.ts
@@ -544,5 +544,6 @@ export default {
SOdelivery: 'SO отгрузка',
SONO: 'SO NO',
Closecount: 'Закрыты ли инвентарные ведомости?',
+ SPDR: 'Запасные части DN Получение',
},
};
diff --git a/src/pages.json b/src/pages.json
index 015d5e8..39aa7a0 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -1407,6 +1407,22 @@
"navigationStyle": "custom", // 隐藏系统导航栏
"navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一
}
+ },
+ {
+ "path": "pages/raw/ingoods/SpareInbound/entrant/index",
+ "style": {
+ "navigationBarTitleText": "备件DN收货",
+ "navigationStyle": "custom", // 隐藏系统导航栏
+ "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一
+ }
+ },
+ {
+ "path": "pages/raw/ingoods/SpareInbound/entrant/detail",
+ "style": {
+ "navigationBarTitleText": "备件DN收货详细",
+ "navigationStyle": "custom", // 隐藏系统导航栏
+ "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一
+ }
}
],
"globalStyle": {
diff --git a/src/pages/raw/ingoods/SpareInbound/entrant/config.ts b/src/pages/raw/ingoods/SpareInbound/entrant/config.ts
new file mode 100644
index 0000000..284d5a6
--- /dev/null
+++ b/src/pages/raw/ingoods/SpareInbound/entrant/config.ts
@@ -0,0 +1,81 @@
+/*
+ * @Author: zhou lei
+ * @Date: 2021-11-10 17:14:44
+ * @LastEditTime: 2021-12-14 10:13:56
+ * @LastEditors: zhou lei
+ * @Description:
+ * @FilePath: /wms_haiwai_app/src/pages/raw/commission/entrant/config.ts
+ * 联系方式:910592680@qq.com 18669792120 科海达信息技术有限公司
+ */
+/**
+ * 看单明细表格列
+ */
+import vm from '@/main';
+export const headers = [
+ {
+ label: vm.$t('message.CommissionedSingleNumber'),
+ key: 'poNo',
+ width: 200,
+ },
+ {
+ label: vm.$t('message.po_MaterielNo'),
+ key: 'materialCode',
+ width: 300,
+ },
+ {
+ label: vm.$t('message.CommissionedMaterielDesc'),
+ key: 'materialDesc',
+ width: 300,
+ },
+ {
+ label: vm.$t('message.CommissionedNumber'),
+ key: 'receiptAmount',
+ width: 200,
+ },
+ {
+ label: vm.$t('message.CommissionedLocation'),
+ key: 'wlCode',
+ width: 200,
+ },
+];
+export const detailHeader = [
+ {
+ label: vm.$t('message.po_MaterielNo'),
+ key: 'materialCode',
+ width: 301,
+ },
+ {
+ label: vm.$t('message.CommissionedLocation'),
+ key: 'wlCode',
+ width: 186,
+ },
+ {
+ label: vm.$t('message.product_Number'),
+ key: 'nowAmount',
+ width: 186,
+ },
+];
+export const DNheader = [
+ {
+ label: vm.$t('message.Line'),
+ key: 'poLine',
+ },
+ {
+ label: vm.$t('message.po_OddNumbers'),
+ key: 'poNo',
+ width: 350,
+ },
+ {
+ label: vm.$t('message.Pi_materielNo'),
+ key: 'materialCode',
+ width: 350,
+ },
+ {
+ label: vm.$t('message.CommissionedLocation'),
+ key: 'wlCode',
+ },
+ {
+ label: vm.$t('message.product_Number'),
+ key: 'receiptAmount',
+ },
+];
diff --git a/src/pages/raw/ingoods/SpareInbound/entrant/detail.vue b/src/pages/raw/ingoods/SpareInbound/entrant/detail.vue
new file mode 100644
index 0000000..0f97457
--- /dev/null
+++ b/src/pages/raw/ingoods/SpareInbound/entrant/detail.vue
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/raw/ingoods/SpareInbound/entrant/index.vue b/src/pages/raw/ingoods/SpareInbound/entrant/index.vue
new file mode 100644
index 0000000..29d5c8b
--- /dev/null
+++ b/src/pages/raw/ingoods/SpareInbound/entrant/index.vue
@@ -0,0 +1,666 @@
+
+
+
+
+
+
+
+
+ {{ $t('message.dn_OddNumbers') }}
+
+
+
+ {{ $t('message.Query') }}
+
+
+
+
+
+ {{ $t('message.Purchase') }}
+
+
+
+
+
+
+ {{ $t('message.Materiel') }}
+
+
+
+
+ {{ $t('message.CommissionedMaterielDesc') }}
+ {{ every.materialDesc }}
+
+
+
+
+
+
+ {{ $t('message.DemandQuantity') }}
+
+
+
+ {{ $t('message.Cumulative') }}
+
+
+
+
+
+
+
+ {{ $t('message.CommissionedLocation') }}
+
+
+
+ {{ $t('message.CommissionedThisNumber') }}
+
+
+
+
+
+ {{ $t('message.product_add') }}
+
+
+
+
+
+
+
+ {{ $t('message.CommissionedEntrantDetails') }}
+
+
+ {{ $t('message.product_Upload') }}
+
+
+ {{ $t('message.po_Return') }}
+
+
+
+
+
+
+
diff --git a/src/pages/raw/ingoods/SpareInbound/entrant/model.location.ts b/src/pages/raw/ingoods/SpareInbound/entrant/model.location.ts
new file mode 100644
index 0000000..3567051
--- /dev/null
+++ b/src/pages/raw/ingoods/SpareInbound/entrant/model.location.ts
@@ -0,0 +1,107 @@
+/*
+ * @Author: zhou lei
+ * @Date: 2021-12-24 12:02:31
+ * @LastEditTime: 2021-12-24 14:33:54
+ * @LastEditors: zhou lei
+ * @Description:
+ * @FilePath: /wms_haiwai_app/src/pages/raw/ingoods/dnReceipt/model.location.ts
+ * 联系方式:910592680@qq.com 18669792120 科海达信息技术有限公司
+ */
+/**
+ * 库位类型
+ * @export
+ * @interface LocationDetail
+ */
+export default interface LocationDetail {
+ factoryCode?: string;
+ cosmoType?: null;
+ sapFactoryCode?: null;
+ user?: null;
+ loginName?: null;
+ sign?: null;
+ page?: number;
+ rows?: number;
+ schema?: null;
+ lastModifiedBy?: null;
+ gmtCreate?: null;
+ createdBy?: null;
+ createdByName?: null;
+ warehouseCode?: string;
+ warehouseName?: null;
+ warehouseType?: string;
+ workareaCode?: null;
+ createdDate?: null;
+ createdDateStr?: null;
+ createdDateMax?: null;
+ createdDateMaxStr?: null;
+ createdDateMin?: null;
+ createdDateMinStr?: null;
+ lastUpdBy?: null;
+ lastUpdByName?: null;
+ lastUpdDate?: null;
+ lastUpdDateStr?: null;
+ lastUpdDateMax?: null;
+ lastUpdDateMin?: null;
+ activeFlag?: string;
+ userDefined1?: null;
+ userDefined2?: null;
+ userDefined3?: null;
+ userDefined4?: null;
+ userDefined5?: null;
+ userDefined6?: null;
+ userDefined7?: null;
+ userDefined8?: null;
+ userDefined9?: null;
+ userDefined10?: null;
+ remark?: null;
+ createBy?: null;
+ gmtCreateMin?: null;
+ gmtCreateStr?: null;
+ gmtCreateMax?: null;
+ gmtModified?: null;
+ gmtModifiedStr?: null;
+ gmtModifiedMax?: null;
+ gmtModifiedMin?: null;
+ locationId?: null;
+ locationCode?: string;
+ shelfOrder?: null;
+ sendSpot?: string;
+ sendSpotDesc1?: string;
+ checkOrder?: null;
+ pickOrder?: null;
+ locationUse?: null;
+ pickFlag?: null;
+ isOpenKnFlag?: null;
+ locationType?: null;
+ locationAttr?: null;
+ turnDemand?: null;
+ stockEnv?: null;
+ regionCode?: string;
+ areaCode?: string;
+ checkCode?: null;
+ workArea?: string;
+ port1?: null;
+ port2?: null;
+ port3?: null;
+ volumeLimit?: null;
+ weightLimit?: null;
+ boxLimit?: null;
+ qtyLimit?: null;
+ palletLimit?: null;
+ length?: null;
+ width?: null;
+ height?: null;
+ xcoordinate?: null;
+ ycoordinate?: null;
+ zcoordinate?: null;
+ xpixels?: null;
+ ypixels?: null;
+ zpixels?: null;
+ locRow?: null;
+ layerNum?: null;
+ locColumn?: null;
+ bord?: null;
+ productMix?: null;
+ batchMix?: null;
+ ignoreId?: null;
+}
diff --git a/src/pages/raw/ingoods/SpareInbound/entrant/model.ts b/src/pages/raw/ingoods/SpareInbound/entrant/model.ts
new file mode 100644
index 0000000..d598992
--- /dev/null
+++ b/src/pages/raw/ingoods/SpareInbound/entrant/model.ts
@@ -0,0 +1,287 @@
+import { Action, getModule, Module, MutationAction, 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 LocationDetail from './model.location';
+// import vm from '@/main';
+
+class OrderInInfo {
+ stoAmount?: 0;
+ stoNo?: string; //STO采购单号
+ dnNo?: string;
+ orderAmount?: string; //单据总数
+ Allocated?: string; //已分配
+ Unallocated?: string; //未分配
+ userDefined10: string;
+ SubmitCode?: string;
+}
+
+@Module({
+ namespaced: true,
+ dynamic: true,
+ store,
+ name: 'raw.ingoods.SpareInbound.entrant',
+})
+export class ReturningModule extends VuexModule {
+ /**
+ * 月台列表
+ */
+ returningTypeList: any[] = [];
+ detailedList: any;
+ SubmitCode: any = '';
+
+ /**
+ * 物料列表
+ */
+ materielList: any[] = [];
+ locationCodeList: any[] = [];
+ LoctionList: any[] = [];
+ dnNo = '';
+ closeCode: any = '';
+ DNdetailedList: any;
+
+ //条码扫描的返回的结果
+ oneMaterielDetail: any = {};
+ /**
+ * 订单号查询结果
+ */
+ orderInInfo: OrderInInfo = new OrderInInfo();
+ orderInInfoList: OrderInInfo[] = [];
+ orderInInfoListEx: OrderInInfo[] = [];
+ //记账按钮的code码
+ code = '';
+ /**
+ * 委外出库单号查询
+ * @param orderNo
+ */
+ @Action
+ async queryOrder(form: any) {
+ const result = await http.post(url.material.commission.entrant.queryOrder, {
+ ...form,
+ loginName: session.loginName,
+ factoryCode: session.factoryCode,
+ });
+ const orderInInfo = result.data.records[0] || {};
+ return { orderInInfo };
+ }
+
+ /**
+ * 库位
+ */
+ // @MutationAction
+ // async queryByFactoryCodeAndWorkAreaCode() {
+ // const list: [] = await http.post(url.material.commission.goOut.queryByFactoryCodeAndWorkAreaCode, {
+ // factoryCode: session.factoryCode,
+ // whCode: session.warehouseCode,
+ // loginName: session.loginName,
+ // });
+ // const locationCodeList = list.map((item: any) => ({
+ // label: item.locationCode,
+ // value: item.locationCode,
+ // }));
+ // return { locationCodeList };
+ // }
+
+ /**
+ * 提交
+ */
+ @Action
+ async materialComplete(form: any) {
+ const res = await http.post(url.material.commission.goOut.materialComplete, {
+ factoryCode: session.factoryCode,
+ loginName: session.loginName,
+ ...form,
+ });
+ console.log(res, '>>>>>res');
+ }
+ /**
+ * 获取物料
+ *
+ * @returns
+ * @memberof ReturningModule
+ */
+ @MutationAction
+ async info(poNo: string) {
+ const list: [] = await http.post(url.material.commission.entrant.info, {
+ factoryCode: session.factoryCode,
+ poNo: poNo,
+ loginName: session.loginName,
+ });
+ const locationCodeList = list.map((item: any) => ({
+ label: item.locationCode,
+ value: item.locationCode,
+ }));
+ return { locationCodeList };
+ }
+ /**
+ * 查询月台列表
+ */
+ @MutationAction
+ async queryReturningTypeList() {
+ const list: [] = await http.post(url.outbound.stoOutbound.yuetaiType, {
+ factoryCode: session.factoryCode,
+ whCode: session.warehouseCode,
+ loginName: session.loginName,
+ });
+ const returningTypeList = list.map((item: any) => ({
+ label: item.dockName,
+ value: item.dockCode,
+ }));
+ return { returningTypeList };
+ }
+
+ /**
+ * 查询订单号
+ * @param orderNo
+ */
+ @MutationAction
+ async queryOrderInInfo(stoNo: string) {
+ const result = await http.post(url.outbound.stoOutbound.info, {
+ stoNo,
+ deleteFlag: 2,
+ finalState: 3,
+ loginName: session.loginName,
+ });
+ let stoAmount = 0;
+ result.data.records.forEach((item: any) => {
+ stoAmount += item.orderAmount;
+ });
+ const materielList = result.data.records.map((item: any) => ({
+ label: item.materialCode,
+ value: item.stoItem,
+ ...item,
+ }));
+ console.log('materielList', materielList);
+ if (result.data.records[0]) {
+ result.data.records[0].stoAmount = stoAmount;
+ }
+ const orderInInfo = result.data.records[0] || {};
+ return { orderInInfo, materielList };
+ }
+
+ @MutationAction
+ async subcDnInfo(dnNo: string) {
+ const { list, code }: any = await http.post(url.material.DNorderin.spartPartDnInfo, {
+ dnNo,
+ factoryCode: session.factoryCode,
+ loginName: session.loginName,
+ });
+ const orderInInfo = list[0] || {};
+ const orderInInfoList = list.filter((_: OrderInInfo) => _.userDefined10 === '1');
+ const orderInInfoListEx = list.filter((_: OrderInInfo) => _.userDefined10 === '0');
+ // orderInInfoList.forEach((item: any) => {
+ // item.receiptAmount = item.requestAmount;
+ // });
+ uni.setStorageSync('list', JSON.stringify(list) as any);
+ uni.setStorageSync('sendSpot', JSON.stringify(list[0].sendSpot) as any);
+ return { dnNo, orderInInfo, orderInInfoList, orderInInfoListEx, code };
+ }
+ @MutationAction
+ async submitOrderInEnter(list: any) {
+ // const list = (this.state as any).orderInInfoList.map((item: any) => {
+ // // item.orderStatus = item.checked ? "2" : "1";
+ // return item;
+ // });
+ const result: any = await http.post(url.material.DNorderin.spartPartDnEnter, {
+ dnNo: this.dnNo,
+ factoryCode: session.factoryCode,
+ loginName: session.loginName,
+ list,
+ });
+ uni.showToast({
+ icon: 'none',
+ title: result.msg,
+ });
+ const SubmitCode = result.code;
+ const orderInInfoList = result.list.sort((a: any, b: any) => Number(a.accountingStatus) - Number(b.accountingStatus));
+ return { orderInInfoList, SubmitCode };
+ }
+ /**
+ * 扫条码
+ */
+ @Action
+ async tluSubmit(list: any[]) {
+ const obj = {
+ barcode: list[0].barCode,
+ loginName: session.loginName,
+ };
+ let oneMaterielDetail: any = {};
+ const { data }: any = await http.post(url.outbound.stoOutbound.checkScan, obj);
+ console.log('shneme a ', data.records);
+ oneMaterielDetail = data.records[0];
+ data.records[0].materialCode = list[0].productCode;
+ data.records[0].materialDesc = list[0].productDescZh;
+ console.log('aaaaa', oneMaterielDetail);
+ return oneMaterielDetail;
+ }
+ /**
+ * 确认按钮
+ * @param orderNo
+ */
+ @MutationAction
+ async confirm(list: any[]) {
+ const { code, data } = await http.post(url.outbound.stoOutbound.Bookkeeping, list);
+ console.log('res数据', data, code);
+ // if (code == '1') {
+ // uni.showToast({ icon: 'success', title: msg });
+ // } else {
+ // uni.showToast({ icon: 'none', title: msg });
+ // }
+ const materielList: any = [];
+ return { code, materielList };
+ }
+ @MutationAction
+ async queryByFactoryCodeAndWorkAreaCode(content: any) {
+ const res: any = await http.post('/wmspda/fg/queryByFactoryCodeAndWorkAreaCode', content);
+ const LoctionList = res;
+ return { LoctionList };
+ }
+ @Action({ commit: 'updateCheckedOrderInInfoListKw' })
+ async queryList(content: any) {
+ const res = await http.post('wmspda/fg/queryByFactoryCodeAndWorkAreaCode', content);
+ return res;
+ }
+ @MutationAction
+ async documentNoClose(poNo: any) {
+ const res: any = await http.post('/wmspda/material/outsourcing/into/close', {
+ loginName: session.loginName,
+ factoryCode: session.factoryCode,
+ poNo,
+ });
+ const closeCode = res.code;
+ return { closeCode };
+ }
+ @Action
+ async queryOutsourcing(poNo: any) {
+ const res = await http.post(url.outbound.stoOutbound.subcDnInfo, {
+ poNo,
+ loginName: session.loginName,
+ factoryCode: session.factoryCode,
+ });
+ return res;
+ }
+
+ @Action
+ async submitOutsourcing(upload: any) {
+ const res = await http.post(url.outbound.stoOutbound.submit, upload);
+ return res;
+ }
+ //查询明细
+ @Action({ commit: 'updateCheckedOrderInInfoListKw' })
+ async querydetaildlist(content: any) {
+ const res: any = await http.post('/wmspda/material/outsourcing/into/info', content);
+ console.log('明细》》》》》》》》》', res.list);
+ this.detailedList = res.data;
+ return res;
+ }
+ @Action({ commit: 'updateCheckedOrderInInfoListKw' })
+ async queryBill(content: any) {
+ const res: any = await http.post('/wmspda/material/getDnRecSn', content);
+ console.log('明细》》》》》》》》》', res.list);
+ this.DNdetailedList = res.list;
+ return res;
+ }
+}
+
+export default getModule(ReturningModule);
diff --git a/src/pages/raw/warehouse/rowCollect/index.vue b/src/pages/raw/warehouse/rowCollect/index.vue
index d3bb725..bd6e04e 100644
--- a/src/pages/raw/warehouse/rowCollect/index.vue
+++ b/src/pages/raw/warehouse/rowCollect/index.vue
@@ -38,6 +38,10 @@
+
+
+
+