diff --git a/src/i18n/lang/cn.ts b/src/i18n/lang/cn.ts index fa8b33d..8102c5e 100644 --- a/src/i18n/lang/cn.ts +++ b/src/i18n/lang/cn.ts @@ -466,5 +466,14 @@ export default { OverseasShipping: '海外DN收货', OverseasPO: '海外PO收货', management: '备件管理', + ContainerScrap: '容器报废', + reason: '报废原因', + scrapReason: '请输入报废原因', + scrapped: '该容器码不能报废', + Description: '半成品描述', + Delivery: '交接批次', + shelves: '备件上架', + undercarriage: '备件下架', + SparePartsOutbound: '备件出库', }, }; diff --git a/src/i18n/lang/en.ts b/src/i18n/lang/en.ts index 1ed507b..60410e8 100644 --- a/src/i18n/lang/en.ts +++ b/src/i18n/lang/en.ts @@ -466,5 +466,14 @@ export default { OverseasShipping: 'Import DN', OverseasPO: 'Import PO Receive', management: 'Spare management', + ContainerScrap: 'Container scrap', + reason: 'reason', + scrapReason: 'Please enter the scrap reason', + scrapped: 'The container code cannot be scrapped', + Description: 'Describe', + Delivery: 'Batch', + shelves: 'Shelves', + ndercarriage: 'Under', + SparePartsOutbound: 'outbound', }, }; diff --git a/src/i18n/lang/ru.ts b/src/i18n/lang/ru.ts index e7b399f..a6a19be 100644 --- a/src/i18n/lang/ru.ts +++ b/src/i18n/lang/ru.ts @@ -466,5 +466,14 @@ export default { OverseasShipping: 'Получение товара DN за границей', OverseasPO: 'Получение товара PO за границей', management: 'Управление запасными частями', + ContainerScrap: 'Контейнер списан', + reason: 'причин', + scrapReason: 'Введите причину списания', + scrapped: 'Код контейнера не может быть аннулирован', + Description: 'описыва', + Delivery: 'парт', + shelves: 'продаж', + ndercarriage: 'С полок', + SparePartsOutbound: 'На продаж', }, }; diff --git a/src/pages.json b/src/pages.json index d3be8c2..faf75b1 100644 --- a/src/pages.json +++ b/src/pages.json @@ -338,6 +338,22 @@ "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一 } }, + { + "path": "pages/raw/warehouse/Container-scrap/index", + "style": { + "navigationBarTitleText": "容器报废", + "navigationStyle": "custom", // 隐藏系统导航栏 + "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一 + } + }, + // { + // "path": "pages/raw/warehouse/Container-scrap/details", + // "style": { + // "navigationBarTitleText": "容器报废明细", + // "navigationStyle": "custom", // 隐藏系统导航栏 + // "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一 + // } + // }, { "path": "pages/raw/ingoods/poReceipt/index", "style": { @@ -1050,6 +1066,30 @@ "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一 } }, + { + "path": "pages/raw/ingoods/SpareInbound/SparePartsStores/index", + "style": { + "navigationBarTitleText": "备件上架", + "navigationStyle": "custom", // 隐藏系统导航栏 + "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一 + } + }, + { + "path": "pages/raw/ingoods/SpareInbound/sparePartsShelves/index", + "style": { + "navigationBarTitleText": "备件下架", + "navigationStyle": "custom", // 隐藏系统导航栏 + "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一 + } + }, + { + "path": "pages/raw/ingoods/SpareInbound/SparePartsWarehouse/index", + "style": { + "navigationBarTitleText": "备件出库", + "navigationStyle": "custom", // 隐藏系统导航栏 + "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一 + } + }, { "path": "pages/raw/handover/feeding/RUS-Location", "style": { diff --git a/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/config.ts b/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/config.ts index ed6cce2..17ff94a 100644 --- a/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/config.ts +++ b/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/config.ts @@ -4,7 +4,7 @@ import vm from '@/main'; export const headers = [ { - label: vm.$t('message.Pi_OrderNo'), + label: vm.$t('message.Delivery'), key: 'proMoveCode', //单号 width: 250, }, diff --git a/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/details.vue b/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/details.vue index 83a3107..5f2919d 100644 --- a/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/details.vue +++ b/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/details.vue @@ -7,7 +7,7 @@ {{ $t('message.Warehouse_TransferDetails') }} - + diff --git a/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/model.ts b/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/model.ts index 5402396..9e73c52 100644 --- a/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/model.ts +++ b/src/pages/raw/Semi-finished/Semi-finished-rowTransfer/model.ts @@ -1,92 +1,150 @@ -import { getModule, Module, MutationAction, VuexModule } from 'vuex-module-decorators'; +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 vm from '@/main'; +// import { page } from '@/utils/page'; + class OrderInInfo { - checked?: boolean; - poNo?: string; - kw?: string; - userDefined10?: string; - orderStatus?: string; + productDescZh?: string; + qty?: string; + custCode?: string; + custCodeName?: string; + productCode?: string; + locCode?: string; + barcode?: string; + // actualQty?: string; } + @Module({ namespaced: true, dynamic: true, store, - name: 'Semi-finished-rowTransfer', + name: 'product.Semi-finished-rowTransfer', }) -export class rowTransfer extends VuexModule { - cboPlaceList = []; - poNo = ''; - orderInInfo: OrderInInfo = new OrderInInfo(); - orderInInfoList: OrderInInfo[] = []; - materielList = []; +export class wholeTransfer extends VuexModule { + /** + * 库位地点列表 + */ + WlList = []; + userDefined: any = ''; + detailedList: any; code = ''; + delCode = ''; + removeList: any = []; + removeMaterialList: any = []; + dnNo = ''; + orderInInfo: OrderInInfo = new OrderInInfo(); @MutationAction - async takeYKOrder(order3: any) { - const res: any = await http.post(url.warehouse.rowTransfer.listByOrder, { - ...order3, - orderType: 'SFG', - page: 1, - rows: 50, - factoryCode: session.factoryCode, - loginName: session.loginName, + async queryLocation() { + const result: any = await http.get(url.warehouse.wholeTransfer.getMdLocationSfgLine, { + params: { + factoryCode: session.factoryCode, + loginName: session.loginName, + }, }); - console.log('res', res); - const code = res.code; - const orderInInfoList = res.data.records; - const materielList = orderInInfoList.map((item: any) => ({ - label: item.productCode, - value: item.productCode, - ...item, + console.log('库位数据', result); + const WlList = result.data.map((_: any) => ({ + label: _.locationCode, + value: _.locationCode, })); - console.log('materielList', materielList); - return { orderInInfoList, materielList, code }; + return { WlList }; } - SearchCode: any = ''; - SearchCodeList: any = ''; + + /** + * 查询单号 + * 查询DN单号 + * @param dnNo + */ @MutationAction - async SearchBarcode(params: any) { - const res: any = await http.post(url.warehouse.rowTransfer.getOdsRawStorageSnNew, { + async getProductCode(barcode: any) { + const res: any = await http.post(url.warehouse.wholeTransfer.getOdsRawStorageSnNew, { factoryCode: session.factoryCode, loginName: session.loginName, - ...params, + barcode, }); - console.log('rrrrr', res); - const SearchCode = res.code; - const SearchCodeList = res.data; - return { SearchCode, SearchCodeList }; + const code = res.code; + const orderInInfo = res.data.records[0]; + if (orderInInfo.custCode == '0') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_NX') as any; + } else if (orderInInfo.custCode == '1') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_WX') as any; + } else if (orderInInfo.custCode == '2') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_YJ') as any; + } else if (orderInInfo.custCode == '4') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_BCP') as any; + } + return { orderInInfo, code }; + } + //退扫 + @MutationAction + async codeDel(params: any) { + const res: any = await http.post(url.warehouse.wholeTransfer.del, params); + const delCode = res.code; + return { delCode }; + } + //清除数据 + @MutationAction + async empty() { + const orderInInfo: any = []; + // const userDefined = ''; + // const WlList = []; + const code = ''; + return { orderInInfo, code }; } @MutationAction async onTakeoutConfirm(list: any) { - const records: any = await http.post(url.warehouse.rowTransfer.commit, list); + const records: any = await http.post(url.warehouse.rowTransfer.confirmMoveRussia, list); const code = records.code; return { code }; } - submitCode: any = ''; + //生成移库码 @MutationAction - async submit(submitList: any) { - const res: any = await http.post(url.warehouse.rowTransfer.confirmMove, submitList); - console.log(res); - const submitCode = res.code; - return { submitCode }; + async getCpMoveBatchNo(loginName: any) { + const res: any = await http.post(url.warehouse.rowTransfer.getSfgMoveBatchNo, loginName); + const userDefined: any = res.data; + return { userDefined }; } - detailList: any = []; + //查询已扫物料 @MutationAction - async queryDetail(proMoveCode: any) { - const res = await http.post(url.warehouse.rowTransfer.queryListByMoveCode, { - factoryCode: session.factoryCode, - loginName: session.loginName, - proMoveCode, + async QueryHistory(params: any = {}) { + const res: any = await http.post(url.warehouse.rowTransfer.queryGroupListByMoveCode, params); + const removeList: any = res.data; + const removeMaterialList: any = []; + res.data.forEach((item: any) => { + const arr: any = { + value: item.materialCode, + laber: item.materialCode, + }; + removeMaterialList.push(arr); }); - const detailList = res.data; - return { detailList }; + return { removeList, removeMaterialList }; } - @MutationAction - async empty() { - const materielList = null; - return { materielList }; + //查询明细 + @Action({ commit: 'updateCheckedOrderInInfoListKw' }) + async querydetaildlist(userDefined4: any) { + const res: any = await http.post('/wmspda/fg/queryListByMoveCode', { + loginName: session.loginName, + factoryCode: session.factoryCode, + proMoveCode: userDefined4, + }); + console.log('明细》》》》》》》》》', res.list); + this.detailedList = res.data; + return res; + } + @Action({ commit: 'updateCheckedOrderInInfoListKw' }) + async changeOrderInLocation(kw: string) { + await http.post('/wmspda/material/orderin/enter', { + loginName: session.loginName, + // loginName: '1999', + warehouseCode: '', + factoryCode: session.factoryCode, + // factoryCode: '1999', + locationCode: kw, + }); + return kw; } } -export default getModule(rowTransfer); + +export default getModule(wholeTransfer); diff --git a/src/pages/raw/ingoods/SpareInbound/SparePartsStores/config.ts b/src/pages/raw/ingoods/SpareInbound/SparePartsStores/config.ts new file mode 100644 index 0000000..17ff94a --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/SparePartsStores/config.ts @@ -0,0 +1,39 @@ +/** + * 看单交接明细表格列 + */ +import vm from '@/main'; +export const headers = [ + { + label: vm.$t('message.Delivery'), + key: 'proMoveCode', //单号 + width: 250, + }, + { + label: vm.$t('message.ModelCode'), + key: 'materialCode', //型号编码 + width: 220, + }, + { + label: vm.$t('message.ModelName'), + key: 'materialDesc', //型号名称 + width: 430, + }, + { + label: vm.$t('message.product_barCode'), + key: 'barCode', //条码号 + width: 260, + }, + { + label: vm.$t('message.SourceLocation'), + key: 'wlFromCode', //源库位 + }, + { + label: vm.$t('message.Warehouse_TargetLocation'), + key: 'wlToCode', //目标库位 + }, + { + label: vm.$t('message.operatingTime'), + key: 'moveTime', //操作时间 + width: 465, + }, +]; diff --git a/src/pages/raw/ingoods/SpareInbound/SparePartsStores/details.vue b/src/pages/raw/ingoods/SpareInbound/SparePartsStores/details.vue new file mode 100644 index 0000000..5f2919d --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/SparePartsStores/details.vue @@ -0,0 +1,100 @@ + + + diff --git a/src/pages/raw/ingoods/SpareInbound/SparePartsStores/index.vue b/src/pages/raw/ingoods/SpareInbound/SparePartsStores/index.vue new file mode 100644 index 0000000..9e4c2d5 --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/SparePartsStores/index.vue @@ -0,0 +1,332 @@ + + + diff --git a/src/pages/raw/ingoods/SpareInbound/SparePartsStores/model.ts b/src/pages/raw/ingoods/SpareInbound/SparePartsStores/model.ts new file mode 100644 index 0000000..9e73c52 --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/SparePartsStores/model.ts @@ -0,0 +1,150 @@ +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 vm from '@/main'; +// import { page } from '@/utils/page'; + +class OrderInInfo { + productDescZh?: string; + qty?: string; + custCode?: string; + custCodeName?: string; + productCode?: string; + locCode?: string; + barcode?: string; + // actualQty?: string; +} + +@Module({ + namespaced: true, + dynamic: true, + store, + name: 'product.Semi-finished-rowTransfer', +}) +export class wholeTransfer extends VuexModule { + /** + * 库位地点列表 + */ + WlList = []; + userDefined: any = ''; + detailedList: any; + code = ''; + delCode = ''; + removeList: any = []; + removeMaterialList: any = []; + dnNo = ''; + orderInInfo: OrderInInfo = new OrderInInfo(); + @MutationAction + async queryLocation() { + const result: any = await http.get(url.warehouse.wholeTransfer.getMdLocationSfgLine, { + params: { + factoryCode: session.factoryCode, + loginName: session.loginName, + }, + }); + console.log('库位数据', result); + const WlList = result.data.map((_: any) => ({ + label: _.locationCode, + value: _.locationCode, + })); + return { WlList }; + } + + /** + * 查询单号 + * 查询DN单号 + * @param dnNo + */ + @MutationAction + async getProductCode(barcode: any) { + const res: any = await http.post(url.warehouse.wholeTransfer.getOdsRawStorageSnNew, { + factoryCode: session.factoryCode, + loginName: session.loginName, + barcode, + }); + const code = res.code; + const orderInInfo = res.data.records[0]; + if (orderInInfo.custCode == '0') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_NX') as any; + } else if (orderInInfo.custCode == '1') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_WX') as any; + } else if (orderInInfo.custCode == '2') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_YJ') as any; + } else if (orderInInfo.custCode == '4') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_BCP') as any; + } + return { orderInInfo, code }; + } + //退扫 + @MutationAction + async codeDel(params: any) { + const res: any = await http.post(url.warehouse.wholeTransfer.del, params); + const delCode = res.code; + return { delCode }; + } + //清除数据 + @MutationAction + async empty() { + const orderInInfo: any = []; + // const userDefined = ''; + // const WlList = []; + const code = ''; + return { orderInInfo, code }; + } + @MutationAction + async onTakeoutConfirm(list: any) { + const records: any = await http.post(url.warehouse.rowTransfer.confirmMoveRussia, list); + const code = records.code; + return { code }; + } + //生成移库码 + @MutationAction + async getCpMoveBatchNo(loginName: any) { + const res: any = await http.post(url.warehouse.rowTransfer.getSfgMoveBatchNo, loginName); + const userDefined: any = res.data; + return { userDefined }; + } + //查询已扫物料 + @MutationAction + async QueryHistory(params: any = {}) { + const res: any = await http.post(url.warehouse.rowTransfer.queryGroupListByMoveCode, params); + const removeList: any = res.data; + const removeMaterialList: any = []; + res.data.forEach((item: any) => { + const arr: any = { + value: item.materialCode, + laber: item.materialCode, + }; + removeMaterialList.push(arr); + }); + return { removeList, removeMaterialList }; + } + //查询明细 + @Action({ commit: 'updateCheckedOrderInInfoListKw' }) + async querydetaildlist(userDefined4: any) { + const res: any = await http.post('/wmspda/fg/queryListByMoveCode', { + loginName: session.loginName, + factoryCode: session.factoryCode, + proMoveCode: userDefined4, + }); + console.log('明细》》》》》》》》》', res.list); + this.detailedList = res.data; + return res; + } + @Action({ commit: 'updateCheckedOrderInInfoListKw' }) + async changeOrderInLocation(kw: string) { + await http.post('/wmspda/material/orderin/enter', { + loginName: session.loginName, + // loginName: '1999', + warehouseCode: '', + factoryCode: session.factoryCode, + // factoryCode: '1999', + locationCode: kw, + }); + return kw; + } +} + +export default getModule(wholeTransfer); diff --git a/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/config.ts b/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/config.ts new file mode 100644 index 0000000..17ff94a --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/config.ts @@ -0,0 +1,39 @@ +/** + * 看单交接明细表格列 + */ +import vm from '@/main'; +export const headers = [ + { + label: vm.$t('message.Delivery'), + key: 'proMoveCode', //单号 + width: 250, + }, + { + label: vm.$t('message.ModelCode'), + key: 'materialCode', //型号编码 + width: 220, + }, + { + label: vm.$t('message.ModelName'), + key: 'materialDesc', //型号名称 + width: 430, + }, + { + label: vm.$t('message.product_barCode'), + key: 'barCode', //条码号 + width: 260, + }, + { + label: vm.$t('message.SourceLocation'), + key: 'wlFromCode', //源库位 + }, + { + label: vm.$t('message.Warehouse_TargetLocation'), + key: 'wlToCode', //目标库位 + }, + { + label: vm.$t('message.operatingTime'), + key: 'moveTime', //操作时间 + width: 465, + }, +]; diff --git a/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/details.vue b/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/details.vue new file mode 100644 index 0000000..5f2919d --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/details.vue @@ -0,0 +1,100 @@ + + + diff --git a/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/index.vue b/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/index.vue new file mode 100644 index 0000000..9e4c2d5 --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/index.vue @@ -0,0 +1,332 @@ + + + diff --git a/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/model.ts b/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/model.ts new file mode 100644 index 0000000..9e73c52 --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/SparePartsWarehouse/model.ts @@ -0,0 +1,150 @@ +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 vm from '@/main'; +// import { page } from '@/utils/page'; + +class OrderInInfo { + productDescZh?: string; + qty?: string; + custCode?: string; + custCodeName?: string; + productCode?: string; + locCode?: string; + barcode?: string; + // actualQty?: string; +} + +@Module({ + namespaced: true, + dynamic: true, + store, + name: 'product.Semi-finished-rowTransfer', +}) +export class wholeTransfer extends VuexModule { + /** + * 库位地点列表 + */ + WlList = []; + userDefined: any = ''; + detailedList: any; + code = ''; + delCode = ''; + removeList: any = []; + removeMaterialList: any = []; + dnNo = ''; + orderInInfo: OrderInInfo = new OrderInInfo(); + @MutationAction + async queryLocation() { + const result: any = await http.get(url.warehouse.wholeTransfer.getMdLocationSfgLine, { + params: { + factoryCode: session.factoryCode, + loginName: session.loginName, + }, + }); + console.log('库位数据', result); + const WlList = result.data.map((_: any) => ({ + label: _.locationCode, + value: _.locationCode, + })); + return { WlList }; + } + + /** + * 查询单号 + * 查询DN单号 + * @param dnNo + */ + @MutationAction + async getProductCode(barcode: any) { + const res: any = await http.post(url.warehouse.wholeTransfer.getOdsRawStorageSnNew, { + factoryCode: session.factoryCode, + loginName: session.loginName, + barcode, + }); + const code = res.code; + const orderInInfo = res.data.records[0]; + if (orderInInfo.custCode == '0') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_NX') as any; + } else if (orderInInfo.custCode == '1') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_WX') as any; + } else if (orderInInfo.custCode == '2') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_YJ') as any; + } else if (orderInInfo.custCode == '4') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_BCP') as any; + } + return { orderInInfo, code }; + } + //退扫 + @MutationAction + async codeDel(params: any) { + const res: any = await http.post(url.warehouse.wholeTransfer.del, params); + const delCode = res.code; + return { delCode }; + } + //清除数据 + @MutationAction + async empty() { + const orderInInfo: any = []; + // const userDefined = ''; + // const WlList = []; + const code = ''; + return { orderInInfo, code }; + } + @MutationAction + async onTakeoutConfirm(list: any) { + const records: any = await http.post(url.warehouse.rowTransfer.confirmMoveRussia, list); + const code = records.code; + return { code }; + } + //生成移库码 + @MutationAction + async getCpMoveBatchNo(loginName: any) { + const res: any = await http.post(url.warehouse.rowTransfer.getSfgMoveBatchNo, loginName); + const userDefined: any = res.data; + return { userDefined }; + } + //查询已扫物料 + @MutationAction + async QueryHistory(params: any = {}) { + const res: any = await http.post(url.warehouse.rowTransfer.queryGroupListByMoveCode, params); + const removeList: any = res.data; + const removeMaterialList: any = []; + res.data.forEach((item: any) => { + const arr: any = { + value: item.materialCode, + laber: item.materialCode, + }; + removeMaterialList.push(arr); + }); + return { removeList, removeMaterialList }; + } + //查询明细 + @Action({ commit: 'updateCheckedOrderInInfoListKw' }) + async querydetaildlist(userDefined4: any) { + const res: any = await http.post('/wmspda/fg/queryListByMoveCode', { + loginName: session.loginName, + factoryCode: session.factoryCode, + proMoveCode: userDefined4, + }); + console.log('明细》》》》》》》》》', res.list); + this.detailedList = res.data; + return res; + } + @Action({ commit: 'updateCheckedOrderInInfoListKw' }) + async changeOrderInLocation(kw: string) { + await http.post('/wmspda/material/orderin/enter', { + loginName: session.loginName, + // loginName: '1999', + warehouseCode: '', + factoryCode: session.factoryCode, + // factoryCode: '1999', + locationCode: kw, + }); + return kw; + } +} + +export default getModule(wholeTransfer); diff --git a/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/config.ts b/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/config.ts new file mode 100644 index 0000000..17ff94a --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/config.ts @@ -0,0 +1,39 @@ +/** + * 看单交接明细表格列 + */ +import vm from '@/main'; +export const headers = [ + { + label: vm.$t('message.Delivery'), + key: 'proMoveCode', //单号 + width: 250, + }, + { + label: vm.$t('message.ModelCode'), + key: 'materialCode', //型号编码 + width: 220, + }, + { + label: vm.$t('message.ModelName'), + key: 'materialDesc', //型号名称 + width: 430, + }, + { + label: vm.$t('message.product_barCode'), + key: 'barCode', //条码号 + width: 260, + }, + { + label: vm.$t('message.SourceLocation'), + key: 'wlFromCode', //源库位 + }, + { + label: vm.$t('message.Warehouse_TargetLocation'), + key: 'wlToCode', //目标库位 + }, + { + label: vm.$t('message.operatingTime'), + key: 'moveTime', //操作时间 + width: 465, + }, +]; diff --git a/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/details.vue b/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/details.vue new file mode 100644 index 0000000..5f2919d --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/details.vue @@ -0,0 +1,100 @@ + + + diff --git a/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/index.vue b/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/index.vue new file mode 100644 index 0000000..9e4c2d5 --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/index.vue @@ -0,0 +1,332 @@ + + + diff --git a/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/model.ts b/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/model.ts new file mode 100644 index 0000000..9e73c52 --- /dev/null +++ b/src/pages/raw/ingoods/SpareInbound/sparePartsShelves/model.ts @@ -0,0 +1,150 @@ +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 vm from '@/main'; +// import { page } from '@/utils/page'; + +class OrderInInfo { + productDescZh?: string; + qty?: string; + custCode?: string; + custCodeName?: string; + productCode?: string; + locCode?: string; + barcode?: string; + // actualQty?: string; +} + +@Module({ + namespaced: true, + dynamic: true, + store, + name: 'product.Semi-finished-rowTransfer', +}) +export class wholeTransfer extends VuexModule { + /** + * 库位地点列表 + */ + WlList = []; + userDefined: any = ''; + detailedList: any; + code = ''; + delCode = ''; + removeList: any = []; + removeMaterialList: any = []; + dnNo = ''; + orderInInfo: OrderInInfo = new OrderInInfo(); + @MutationAction + async queryLocation() { + const result: any = await http.get(url.warehouse.wholeTransfer.getMdLocationSfgLine, { + params: { + factoryCode: session.factoryCode, + loginName: session.loginName, + }, + }); + console.log('库位数据', result); + const WlList = result.data.map((_: any) => ({ + label: _.locationCode, + value: _.locationCode, + })); + return { WlList }; + } + + /** + * 查询单号 + * 查询DN单号 + * @param dnNo + */ + @MutationAction + async getProductCode(barcode: any) { + const res: any = await http.post(url.warehouse.wholeTransfer.getOdsRawStorageSnNew, { + factoryCode: session.factoryCode, + loginName: session.loginName, + barcode, + }); + const code = res.code; + const orderInInfo = res.data.records[0]; + if (orderInInfo.custCode == '0') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_NX') as any; + } else if (orderInInfo.custCode == '1') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_WX') as any; + } else if (orderInInfo.custCode == '2') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_YJ') as any; + } else if (orderInInfo.custCode == '4') { + orderInInfo.custCodeName = vm.$t('message.Warehouse_BCP') as any; + } + return { orderInInfo, code }; + } + //退扫 + @MutationAction + async codeDel(params: any) { + const res: any = await http.post(url.warehouse.wholeTransfer.del, params); + const delCode = res.code; + return { delCode }; + } + //清除数据 + @MutationAction + async empty() { + const orderInInfo: any = []; + // const userDefined = ''; + // const WlList = []; + const code = ''; + return { orderInInfo, code }; + } + @MutationAction + async onTakeoutConfirm(list: any) { + const records: any = await http.post(url.warehouse.rowTransfer.confirmMoveRussia, list); + const code = records.code; + return { code }; + } + //生成移库码 + @MutationAction + async getCpMoveBatchNo(loginName: any) { + const res: any = await http.post(url.warehouse.rowTransfer.getSfgMoveBatchNo, loginName); + const userDefined: any = res.data; + return { userDefined }; + } + //查询已扫物料 + @MutationAction + async QueryHistory(params: any = {}) { + const res: any = await http.post(url.warehouse.rowTransfer.queryGroupListByMoveCode, params); + const removeList: any = res.data; + const removeMaterialList: any = []; + res.data.forEach((item: any) => { + const arr: any = { + value: item.materialCode, + laber: item.materialCode, + }; + removeMaterialList.push(arr); + }); + return { removeList, removeMaterialList }; + } + //查询明细 + @Action({ commit: 'updateCheckedOrderInInfoListKw' }) + async querydetaildlist(userDefined4: any) { + const res: any = await http.post('/wmspda/fg/queryListByMoveCode', { + loginName: session.loginName, + factoryCode: session.factoryCode, + proMoveCode: userDefined4, + }); + console.log('明细》》》》》》》》》', res.list); + this.detailedList = res.data; + return res; + } + @Action({ commit: 'updateCheckedOrderInInfoListKw' }) + async changeOrderInLocation(kw: string) { + await http.post('/wmspda/material/orderin/enter', { + loginName: session.loginName, + // loginName: '1999', + warehouseCode: '', + factoryCode: session.factoryCode, + // factoryCode: '1999', + locationCode: kw, + }); + return kw; + } +} + +export default getModule(wholeTransfer); diff --git a/src/pages/raw/warehouse/Container-scrap/config.ts b/src/pages/raw/warehouse/Container-scrap/config.ts new file mode 100644 index 0000000..fc2aad0 --- /dev/null +++ b/src/pages/raw/warehouse/Container-scrap/config.ts @@ -0,0 +1,84 @@ +/** + * 看单交接明细表格列 + */ +import vm from '@/main'; +export const headers = [ + { + label: vm.$t('message.Warehouse_OrderNo'), + key: 'orderNo', //单号 + // width: '15%', + }, + { + label: vm.$t('message.po_MaterielNo'), + key: 'productCode', //物料号 + // width: '15%', + }, + { + label: vm.$t('message.po_MaterielDes'), + key: 'productDescZh', //物料描述 + width: 350, + }, + { + label: vm.$t('message.dn_Number'), + key: 'qty', //数量 + }, + { + label: vm.$t('message.Warehouse_OriginalLocation'), + key: 'originWl', //原库位 + }, + { + label: vm.$t('message.Warehouse_TargetLocation'), + key: 'aimWl', //目标库位 + }, +]; +export const RUSdetailHeader = [ + { + label: vm.$t('message.Warehouse_OrderNo'), + key: 'orderNo', //单号 + width: 270, + }, + { + label: vm.$t('message.po_MaterielNo'), + key: 'productCode', //物料号 + width: 270, + }, + { + label: vm.$t('message.po_MaterielDes'), + key: 'productDescZh', //物料描述 + width: 520, + }, + { + label: vm.$t('message.Container'), + key: 'barCode', //物料描述 + width: 400, + }, + { + label: vm.$t('message.dn_Number'), + key: 'qty', //数量 + }, + { + label: vm.$t('message.Warehouse_OriginalLocation'), + key: 'originWl', //原库位 + }, + { + label: vm.$t('message.Warehouse_TargetLocation'), + key: 'aimWl', //目标库位 + }, +]; +export const TargetTitle = [ + { + label: vm.$t('message.ContainerBarcode'), + key: 'barcode', //容器条码 + width: 270, + }, + { + label: vm.$t('message.dn_Number'), + key: 'qty', //数量 + // width: 270, + }, + { + label: vm.$t('message.CommissionedLocation'), + key: 'locCode', //库位 + width: 250, + }, +]; diff --git a/src/pages/raw/warehouse/Container-scrap/index.vue b/src/pages/raw/warehouse/Container-scrap/index.vue new file mode 100644 index 0000000..58b1245 --- /dev/null +++ b/src/pages/raw/warehouse/Container-scrap/index.vue @@ -0,0 +1,231 @@ + + + diff --git a/src/pages/raw/warehouse/Container-scrap/model.ts b/src/pages/raw/warehouse/Container-scrap/model.ts new file mode 100644 index 0000000..b5565a7 --- /dev/null +++ b/src/pages/raw/warehouse/Container-scrap/model.ts @@ -0,0 +1,40 @@ +import { 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'; +@Module({ + namespaced: true, + dynamic: true, + store, + name: 'raw.warehouse.Container-scrap', +}) +export class rowTransfer extends VuexModule { + //目标容器查询 + SearchCode: any = ''; + CodeDetail: any = ''; + @MutationAction + async searchBarcode(barcode: any) { + const res: any = await http.post(url.warehouse.container.getRawStorageSnNew, { + barcode, + factoryCode: session.factoryCode, + loginName: session.loginName, + }); + const SearchCode = res.code; + const CodeDetail = res.data; + if (CodeDetail.cpRef4 != null) { + CodeDetail.qty = parseFloat(CodeDetail.qty) - parseFloat(CodeDetail.cpRef4); + } + return { SearchCode, CodeDetail }; + } + //提交数据 + submitCode: any = ''; + @MutationAction + async submit(params: any) { + const res: any = await http.post(url.warehouse.container.russia, params); + const submitCode = res.code; + return { submitCode }; + } +} + +export default getModule(rowTransfer); diff --git a/src/utils/url.ts b/src/utils/url.ts index 19f142c..bc2e650 100644 --- a/src/utils/url.ts +++ b/src/utils/url.ts @@ -225,11 +225,14 @@ export const url = { listByOrder: '/wmspda/fg/listByOrder', getOdsRawStorageSnNew: 'wmspda/bl/getOdsRawStorageSnNew', commit: '/wmspda/fg/confirmMove', + confirmMoveRussia: 'wmspda/fg/confirmMove/russia', confirmMove: 'wmspda/fg/confirmMove/russia', russia: '/wmspda/fg/confirmMove/russia', getMaterialByCode: '/wmspda/fg/getMaterialByCode', getCode: '/wmspda/fg/getCpMoveBatchNo', + getSfgMoveBatchNo: '/wmspda/fg/getSfgMoveBatchNo', queryGroupLis: '/wmspda/fg/queryGroupListByMoveCode', + queryGroupListByMoveCode: '/wmspda/fg/queryGroupListByMoveCode', //查询明细 queryListByMoveCode: '/wmspda/fg/queryListByMoveCode', close: '/wmspda/fg/closeHandOrder', @@ -258,7 +261,9 @@ export const url = { wholeTransfer: { list: '/wmspda/fg/getMdLocationFgAll', content: '/wmspda/fg/getMaterialByCode', + getOdsRawStorageSnNew: 'wmspda/bl/getOdsRawStorageSnNew', del: '/wmspda/fg/scanBarcodeStock/del', + getMdLocationSfgLine: '/wmspda/fg/getMdLocationSfgLine', }, wholeLnventory: { content: '/wmspda/fg/findMaterialByPddNo',