From 3ba0763927b9426223d620ac29152251522acd49 Mon Sep 17 00:00:00 2001 From: zch Date: Thu, 9 Jan 2025 09:20:34 +0800 Subject: [PATCH 1/4] =?UTF-8?q?change(mes/baseRoute):=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=B7=A5=E8=89=BA=E8=B7=AF=E7=BA=BF=E7=BB=84=E6=88=90=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加自动递增的 processOrder 功能 - 修改删除操作,采用重新排列 processOrder 的方式 - 更新选中数据的处理方式,使用 processId 替代索引 --- src/views/mes/baseRoute/index.vue | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/src/views/mes/baseRoute/index.vue b/src/views/mes/baseRoute/index.vue index 68ea663..40075fa 100644 --- a/src/views/mes/baseRoute/index.vue +++ b/src/views/mes/baseRoute/index.vue @@ -407,7 +407,7 @@ const routeProcessUpdate = async (row: BaseRouteVO) => { dialog.title = '维护工艺路线步骤'; }; -// 修改rowProdBaseRouteProcessIndex方法,返回类名字符串 +/** 修改rowProdBaseRouteProcessIndex方法,返回类名字符串 */ const rowProdBaseRouteProcessIndex = ({ row, rowIndex }: { row: ProdBaseRouteProcess; rowIndex: number @@ -422,11 +422,20 @@ const rowProdBaseRouteProcessIndex = ({ row, rowIndex }: { // 返回一个空字符串表示不添加额外类名 return ''; }; + /** 工艺路线组成信息添加按钮操作 */ const handleAddProdBaseRouteProcess = () => { + // 找到当前 routeProcessBoList 中的最大 processOrder 值 + const maxProcessOrder = routeProcessBoList.value.reduce((max, item) => { + return Math.max(max, item.processOrder || 0); + }, 0); + + // 新增的 processOrder 值为 maxProcessOrder + 10 + const newProcessOrder = maxProcessOrder + 10; + routeProcessBoList.value.push({ - processId: '', - processOrder: '', + processId: '', // 可以设置一个默认值或自增ID + processOrder: newProcessOrder, remark: '', createBy: '', createTime: '', @@ -435,6 +444,7 @@ const handleAddProdBaseRouteProcess = () => { }); }; + /** 工艺路线组成信息删除按钮操作 */ const handleDeleteProdBaseRouteProcess = () => { // 检查是否有选中的工艺路线组成信息数据,如果没有则显示错误提示 @@ -443,15 +453,23 @@ const handleDeleteProdBaseRouteProcess = () => { } else { // 过滤掉已选中的工艺路线组成信息数据 routeProcessBoList.value = routeProcessBoList.value.filter( - item => !checkedProdBaseRouteProcess.value.includes(item.index) + item => !checkedProdBaseRouteProcess.value.includes(item.processId) ); + + // 重新排列 processOrder + routeProcessBoList.value.forEach((item, index) => { + item.processOrder = (index + 1) * 10; + }); + + // 清空选中的项 + checkedProdBaseRouteProcess.value = []; } }; /** 复选框选中数据 */ const handleProdBaseRouteProcessSelectionChange = (selection: any[]) => { - // 将选中的项的索引映射到checkedProdBaseRouteProcess.value数组中 - checkedProdBaseRouteProcess.value = selection.map(item => item.index); + // 将选中的项的 processId 映射到 checkedProdBaseRouteProcess.value 数组中 + checkedProdBaseRouteProcess.value = selection.map(item => item.processId); }; const getProcessList = async () => { From 7a72616e762d7555a9cebcd3131492eab311790d Mon Sep 17 00:00:00 2001 From: zch Date: Thu, 9 Jan 2025 09:45:02 +0800 Subject: [PATCH 2/4] =?UTF-8?q?change(hwmom-mes):=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=98=BE=E7=A4=BA=E5=B9=B6=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AF=B9=E8=AF=9D=E6=A1=86=E6=BF=80=E6=B4=BB?= =?UTF-8?q?=E6=A0=87=E8=AF=86=E5=80=BC=E9=BB=98=E8=AE=A4=E4=B8=BA"?= =?UTF-8?q?=E6=98=AF"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 为多个基础数据组件设置 初始化activeFlag 默认值为 '1'(添加对话框默认标识值为是) - 调整计量单位信息对话框组件的激活标识显示和输入方式 - 移除班组对话框不必要的表单验证规则 --- src/views/mes/baseClassTeamInfo/index.vue | 9 +++----- src/views/mes/baseEqualMaterialInfo/index.vue | 2 +- src/views/mes/baseMaterialInfo/index.vue | 6 ++--- src/views/mes/baseMaterialType/index.vue | 2 +- .../mes/baseMeasurementUnitInfo/index.vue | 22 ++++++++++++++----- src/views/mes/baseShiftInfo/index.vue | 6 ++--- src/views/mes/baseToolingInfo/index.vue | 2 +- 7 files changed, 29 insertions(+), 20 deletions(-) diff --git a/src/views/mes/baseClassTeamInfo/index.vue b/src/views/mes/baseClassTeamInfo/index.vue index 655c639..0ff022e 100644 --- a/src/views/mes/baseClassTeamInfo/index.vue +++ b/src/views/mes/baseClassTeamInfo/index.vue @@ -314,7 +314,7 @@ const initFormData: BaseClassTeamInfoForm = { processId: undefined, stationId: undefined, deviceId: undefined, - activeFlag: undefined, + activeFlag: '1', createDept: undefined, createBy: undefined, createTime: undefined, @@ -345,16 +345,13 @@ const data = reactive>({ } }, rules: { - classTeamId: [ - { required: true, message: "主键标识不能为空", trigger: "blur" } - ], teamCode: [ { required: true, message: "班组编号不能为空", trigger: "blur" } ], teamName: [ { required: true, message: "班组名称不能为空", trigger: "blur" } ], - teamHead: [ + /*teamHead: [ { required: true, message: "班组负责人不能为空", trigger: "blur" } ], shiftId: [ @@ -368,7 +365,7 @@ const data = reactive>({ ], deviceId: [ { required: true, message: "设备ID不能为空", trigger: "blur" } - ], + ],*/ activeFlag: [ { required: true, message: "激活标识不能为空", trigger: "change" } ], diff --git a/src/views/mes/baseEqualMaterialInfo/index.vue b/src/views/mes/baseEqualMaterialInfo/index.vue index ac76396..87aaac6 100644 --- a/src/views/mes/baseEqualMaterialInfo/index.vue +++ b/src/views/mes/baseEqualMaterialInfo/index.vue @@ -170,7 +170,7 @@ const initFormData: BaseEqualMaterialInfoForm = { equalMaterialInfoId: undefined, materialId: undefined, equalMaterialId: undefined, - activeFlag: undefined, + activeFlag: '1', remark: undefined, } const data = reactive>({ diff --git a/src/views/mes/baseMaterialInfo/index.vue b/src/views/mes/baseMaterialInfo/index.vue index 9c7a1fc..d0bd5c5 100644 --- a/src/views/mes/baseMaterialInfo/index.vue +++ b/src/views/mes/baseMaterialInfo/index.vue @@ -22,8 +22,8 @@ --> - - + + @@ -719,7 +719,7 @@ const initFormData: BaseMaterialInfoForm = { createOrgId: undefined, useOrgId: undefined, prodLineId: undefined, - activeFlag: undefined, + activeFlag: '1', deletedFlag: undefined, purchasePriceUnitId: undefined, approveDate: undefined, diff --git a/src/views/mes/baseMaterialType/index.vue b/src/views/mes/baseMaterialType/index.vue index 58172ba..8e5c5b0 100644 --- a/src/views/mes/baseMaterialType/index.vue +++ b/src/views/mes/baseMaterialType/index.vue @@ -226,7 +226,7 @@ const initFormData: BaseMaterialTypeForm = { materialCategories: undefined, materialSubclass: undefined, processId: undefined, - activeFlag: undefined, + activeFlag: '1', remark: undefined, } diff --git a/src/views/mes/baseMeasurementUnitInfo/index.vue b/src/views/mes/baseMeasurementUnitInfo/index.vue index a4a1004..e0a2d39 100644 --- a/src/views/mes/baseMeasurementUnitInfo/index.vue +++ b/src/views/mes/baseMeasurementUnitInfo/index.vue @@ -71,7 +71,11 @@ - + + + - + @@ -123,7 +127,8 @@ - + + + + + + + + + + + + + + + 搜索 + 重置 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ dict.label }} + + + + + + + + + + + + + + + + + + + + + + + + + {{ dict.label }} + + + + + + + + + + + + + diff --git a/src/views/system/dict/data.vue b/src/views/system/dict/data.vue index 33c7fc8..1fcc10e 100644 --- a/src/views/system/dict/data.vue +++ b/src/views/system/dict/data.vue @@ -169,7 +169,7 @@ const initFormData: DictDataForm = { dictLabel: '', dictValue: '', cssClass: '', - listClass: 'primary', + listClass: 'default', dictSort: 0, remark: '' }; From 0f442b09200bfe264ac1093747c7295d3f6bf38b Mon Sep 17 00:00:00 2001 From: "maxw@mesnac.com" Date: Thu, 9 Jan 2025 13:50:35 +0800 Subject: [PATCH 4/4] =?UTF-8?q?wms=E4=BB=93=E5=82=A8=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/wms/instockDetail/index.ts | 79 +++++ src/api/wms/instockDetail/types.ts | 216 ++++++++++++ src/api/wms/instockOrder/index.ts | 63 ++++ src/api/wms/instockOrder/types.ts | 166 +++++++++ src/api/wms/instockPrint/index.ts | 75 ++++ src/api/wms/instockPrint/types.ts | 196 +++++++++++ src/api/wms/inventory/index.ts | 63 ++++ src/api/wms/inventory/types.ts | 151 ++++++++ src/api/wms/outstockDetail/index.ts | 63 ++++ src/api/wms/outstockDetail/types.ts | 110 ++++++ src/api/wms/outstockOrder/index.ts | 63 ++++ src/api/wms/outstockOrder/types.ts | 181 ++++++++++ src/api/wms/returnOrder/index.ts | 63 ++++ src/api/wms/returnOrder/types.ts | 256 ++++++++++++++ src/router/index.ts | 26 ++ src/views/wms/configuration/index.vue | 71 +++- src/views/wms/instockDetail/index.vue | 422 ++++++++++++++++++++++ src/views/wms/instockOrder/index.vue | 433 +++++++++++++++++++++++ src/views/wms/instockPrint/index.vue | 381 ++++++++++++++++++++ src/views/wms/inventory/index.vue | 363 +++++++++++++++++++ src/views/wms/outstockDetail/index.vue | 318 +++++++++++++++++ src/views/wms/outstockOrder/index.vue | 451 ++++++++++++++++++++++++ src/views/wms/returnOrder/index.vue | 464 +++++++++++++++++++++++++ 23 files changed, 4661 insertions(+), 13 deletions(-) create mode 100644 src/api/wms/instockDetail/index.ts create mode 100644 src/api/wms/instockDetail/types.ts create mode 100644 src/api/wms/instockOrder/index.ts create mode 100644 src/api/wms/instockOrder/types.ts create mode 100644 src/api/wms/instockPrint/index.ts create mode 100644 src/api/wms/instockPrint/types.ts create mode 100644 src/api/wms/inventory/index.ts create mode 100644 src/api/wms/inventory/types.ts create mode 100644 src/api/wms/outstockDetail/index.ts create mode 100644 src/api/wms/outstockDetail/types.ts create mode 100644 src/api/wms/outstockOrder/index.ts create mode 100644 src/api/wms/outstockOrder/types.ts create mode 100644 src/api/wms/returnOrder/index.ts create mode 100644 src/api/wms/returnOrder/types.ts create mode 100644 src/views/wms/instockDetail/index.vue create mode 100644 src/views/wms/instockOrder/index.vue create mode 100644 src/views/wms/instockPrint/index.vue create mode 100644 src/views/wms/inventory/index.vue create mode 100644 src/views/wms/outstockDetail/index.vue create mode 100644 src/views/wms/outstockOrder/index.vue create mode 100644 src/views/wms/returnOrder/index.vue diff --git a/src/api/wms/instockDetail/index.ts b/src/api/wms/instockDetail/index.ts new file mode 100644 index 0000000..0654ec9 --- /dev/null +++ b/src/api/wms/instockDetail/index.ts @@ -0,0 +1,79 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { InstockDetailVO, InstockDetailForm, InstockDetailQuery } from '@/api/wms/instockDetail/types'; + +/** + * 查询入库单-物料列表 + * @param query + * @returns {*} + */ + +export const listInstockDetail = (query?: InstockDetailQuery): AxiosPromise => { + return request({ + url: '/wms/instockDetail/list', + method: 'get', + params: query + }); +}; + + +export const getMaterialListVo = (query) => { + return request({ + url: '/wms/baseMaterialInfo/materialList', + method: 'get', + params: query + }); +}; +export const getMaterailCount = (query) => { + return request({ + url: '/wms/inventory/materailCount', + method: 'get', + params: query + }); + }; + +/** + * 查询入库单-物料详细 + * @param instockDetailId + */ +export const getInstockDetail = (instockDetailId: string | number): AxiosPromise => { + return request({ + url: '/wms/instockDetail/' + instockDetailId, + method: 'get' + }); +}; + +/** + * 新增入库单-物料 + * @param data + */ +export const addInstockDetail = (data: InstockDetailForm) => { + return request({ + url: '/wms/instockDetail', + method: 'post', + data: data + }); +}; + +/** + * 修改入库单-物料 + * @param data + */ +export const updateInstockDetail = (data: InstockDetailForm) => { + return request({ + url: '/wms/instockDetail', + method: 'put', + data: data + }); +}; + +/** + * 删除入库单-物料 + * @param instockDetailId + */ +export const delInstockDetail = (instockDetailId: string | number | Array) => { + return request({ + url: '/wms/instockDetail/' + instockDetailId, + method: 'delete' + }); +}; diff --git a/src/api/wms/instockDetail/types.ts b/src/api/wms/instockDetail/types.ts new file mode 100644 index 0000000..dc1beb0 --- /dev/null +++ b/src/api/wms/instockDetail/types.ts @@ -0,0 +1,216 @@ +export interface InstockDetailVO { + /** + * 入库单子表主键 + */ + instockDetailId: string | number; + + /** + * 入库单 主键 + */ + instockId: string | number; + + /** + * 入库单号 + */ + instockCode: string; + + /** + * 送货-物料表主键 + */ + dnDId: string | number; + + /** + * 采购-物料表主键 + */ + poDId: string | number; + + /** + * 物料id + */ + materialId: string | number; + + /** + * 物料编码 + */ + materialCode: string; + + /** + * 物料名称 + */ + materialName: string; + + /** + * 入库数量 + */ + instockQty: number; + /** + * 已分包数量 + */ + printedNum: number; + + /** + * 物料规格 + */ + materialSpe: string; + + /** + * 计量单位名称 + */ + unitName: string; + + /** + * 是否有条码 + */ + codeYesNo: string; + + /** + * 物料大类 + */ + materialCategories: string; + + +} + +export interface InstockDetailForm extends BaseEntity { + /** + * 入库单子表主键 + */ + instockDetailId?: string | number; + + /** + * 入库单 主键 + */ + instockId?: string | number; + + /** + * 入库单号 + */ + instockCode?: string; + + /** + * 送货-物料表主键 + */ + dnDId?: string | number; + + /** + * 采购-物料表主键 + */ + poDId?: string | number; + + /** + * 物料id + */ + materialId?: string | number; + + /** + * 物料编码 + */ + materialCode?: string; + + /** + * 物料名称 + */ + materialName?: string; + + /** + * 入库数量 + */ + instockQty?: number; + + /** + * 物料规格 + */ + materialSpe?: string; + + /** + * 计量单位名称 + */ + unitName?: string; + + /** + * 是否有条码 + */ + codeYesNo?: string; + + /** + * 物料大类 + */ + materialCategories?: string; + +} + +export interface InstockDetailQuery extends PageQuery { + + /** + * 入库单子表主键 + */ + instockDetailId?: string | number; + + /** + * 入库单 主键 + */ + instockId?: string | number; + + /** + * 入库单号 + */ + instockCode?: string; + + /** + * 送货-物料表主键 + */ + dnDId?: string | number; + + /** + * 采购-物料表主键 + */ + poDId?: string | number; + + /** + * 物料id + */ + materialId?: string | number; + + /** + * 物料编码 + */ + materialCode?: string; + + /** + * 物料名称 + */ + materialName?: string; + + /** + * 入库数量 + */ + instockQty?: number; + + /** + * 物料规格 + */ + materialSpe?: string; + + /** + * 计量单位名称 + */ + unitName?: string; + + /** + * 是否有条码 + */ + codeYesNo?: string; + + /** + * 物料大类 + */ + materialCategories?: string; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/api/wms/instockOrder/index.ts b/src/api/wms/instockOrder/index.ts new file mode 100644 index 0000000..e8009dc --- /dev/null +++ b/src/api/wms/instockOrder/index.ts @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { InstockOrderVO, InstockOrderForm, InstockOrderQuery } from '@/api/wms/instockOrder/types'; + +/** + * 查询入库单列表 + * @param query + * @returns {*} + */ + +export const listInstockOrder = (query?: InstockOrderQuery): AxiosPromise => { + return request({ + url: '/wms/instockOrder/list', + method: 'get', + params: query + }); +}; + +/** + * 查询入库单详细 + * @param instockId + */ +export const getInstockOrder = (instockId: string | number): AxiosPromise => { + return request({ + url: '/wms/instockOrder/' + instockId, + method: 'get' + }); +}; + +/** + * 新增入库单 + * @param data + */ +export const addInstockOrder = (data: InstockOrderForm) => { + return request({ + url: '/wms/instockOrder', + method: 'post', + data: data + }); +}; + +/** + * 修改入库单 + * @param data + */ +export const updateInstockOrder = (data: InstockOrderForm) => { + return request({ + url: '/wms/instockOrder', + method: 'put', + data: data + }); +}; + +/** + * 删除入库单 + * @param instockId + */ +export const delInstockOrder = (instockId: string | number | Array) => { + return request({ + url: '/wms/instockOrder/' + instockId, + method: 'delete' + }); +}; diff --git a/src/api/wms/instockOrder/types.ts b/src/api/wms/instockOrder/types.ts new file mode 100644 index 0000000..5b69c5a --- /dev/null +++ b/src/api/wms/instockOrder/types.ts @@ -0,0 +1,166 @@ +export interface InstockOrderVO { + /** + * 入库单 主键 + */ + instockId: string | number; + + /** + * 入库单号 + */ + instockCode: string; + + /** + * 物料大类 + */ + materialCategories: string; + + /** + * 工单类型(1采购订单,2生产订单,3手工,4系统生成) + */ + instockType: string; + + /** + * 订单编号 + */ + orderNo: string; + + /** + * 审核人 + */ + auditBy: string; + + /** + * 审核时间 + */ + auditTime: string; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + auditStatus: string; + + /** + * 审核意见 + */ + auditComments: string; + + /** + * 仓库ID + */ + warehouseId: string | number; + +} + +export interface InstockOrderForm extends BaseEntity { + /** + * 入库单 主键 + */ + instockId?: string | number; + + /** + * 入库单号 + */ + instockCode?: string; + + /** + * 物料大类 + */ + materialCategories?: string; + + /** + * 工单类型(1采购订单,2生产订单,3手工,4系统生成) + */ + instockType?: string; + + /** + * 订单编号 + */ + orderNo?: string; + + /** + * 审核人 + */ + auditBy?: string; + + /** + * 审核时间 + */ + auditTime?: string; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + auditStatus?: string; + + /** + * 审核意见 + */ + auditComments?: string; + + /** + * 仓库ID + */ + warehouseId?: string | number; + +} + +export interface InstockOrderQuery extends PageQuery { + + /** + * 入库单 主键 + */ + instockId?: string | number; + + /** + * 入库单号 + */ + instockCode?: string; + + /** + * 物料大类 + */ + materialCategories?: string; + + /** + * 工单类型(1采购订单,2生产订单,3手工,4系统生成) + */ + instockType?: string; + + /** + * 订单编号 + */ + orderNo?: string; + + /** + * 审核人 + */ + auditBy?: string; + + /** + * 审核时间 + */ + auditTime?: string; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + auditStatus?: string; + + /** + * 审核意见 + */ + auditComments?: string; + + /** + * 仓库ID + */ + warehouseId?: string | number; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/api/wms/instockPrint/index.ts b/src/api/wms/instockPrint/index.ts new file mode 100644 index 0000000..a8cb11f --- /dev/null +++ b/src/api/wms/instockPrint/index.ts @@ -0,0 +1,75 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { InstockPrintVO, InstockPrintForm, InstockPrintQuery } from '@/api/wms/instockPrint/types'; + +/** + * 查询入库单-物料打印条码列表 + * @param query + * @returns {*} + */ + +export const listInstockPrint = (query?: InstockPrintQuery): AxiosPromise => { + return request({ + url: '/wms/instockPrint/list', + method: 'get', + params: query + }); +}; + +/** + * 查询入库单-物料打印条码详细 + * @param instockPrintId + */ +export const getInstockPrint = (instockPrintId: string | number): AxiosPromise => { + return request({ + url: '/wms/instockPrint/' + instockPrintId, + method: 'get' + }); +}; + +/** + * 新增入库单-物料打印条码 + * @param data + */ +export const addInstockPrint = (data: InstockPrintForm) => { + return request({ + url: '/wms/instockPrint', + method: 'post', + data: data + }); +}; + +/** + * 修改入库单-物料打印条码 + * @param data + */ +export const updateInstockPrint = (data: InstockPrintForm) => { + return request({ + url: '/wms/instockPrint', + method: 'put', + data: data + }); +}; + +/** + * 删除入库单-物料打印条码 + * @param instockPrintId + */ +export const delInstockPrint = (instockPrintId: string | number | Array) => { + return request({ + url: '/wms/instockPrint/' + instockPrintId, + method: 'delete' + }); +}; + +/** + * 打印入库单-物料打印条码 + * @param instockPrintId + */ +export const printInstockPrint = (data: Array) => { + return request({ + url: '/wms/instockPrint/print', + method: 'post', + data: data + }); +}; diff --git a/src/api/wms/instockPrint/types.ts b/src/api/wms/instockPrint/types.ts new file mode 100644 index 0000000..450b473 --- /dev/null +++ b/src/api/wms/instockPrint/types.ts @@ -0,0 +1,196 @@ +export interface InstockPrintVO { + /** + * 入库单子表主键 + */ + instockPrintId: string | number; + + /** + * 入库单号 + */ + instockCode: string; + + /** + * 批次码 + */ + batchCode: string; + + /** + * 条码数量 + */ + materialQty: number; + + /** + * 分包数量 + */ + apportionQty: number; + + /** + * 物料id + */ + materialId: string | number; + + /** + * 物料编码 + */ + materialCode: string; + + /** + * 物料名称 + */ + materialName: string; + + /** + * 物料规格 + */ + materialSpe: string; + + /** + * 计量单位名称 + */ + unitName: string; + + /** + * 是否有条码 + */ + codeYesNo: string; + + /** + * 物料大类 + */ + materialCategories: string; + +} + +export interface InstockPrintForm extends BaseEntity { + /** + * 入库单子表主键 + */ + instockPrintId?: string | number; + + /** + * 入库单号 + */ + instockCode?: string; + + /** + * 批次码 + */ + batchCode?: string; + + /** + * 条码数量 + */ + materialQty?: number; + + /** + * 分包数量 + */ + apportionQty?: number; + + /** + * 物料id + */ + materialId?: string | number; + + /** + * 物料编码 + */ + materialCode?: string; + + /** + * 物料名称 + */ + materialName?: string; + + /** + * 物料规格 + */ + materialSpe?: string; + + /** + * 计量单位名称 + */ + unitName?: string; + + /** + * 是否有条码 + */ + codeYesNo?: string; + + /** + * 物料大类 + */ + materialCategories?: string; + +} + +export interface InstockPrintQuery extends PageQuery { + + /** + * 入库单子表主键 + */ + instockPrintId?: string | number; + + /** + * 入库单号 + */ + instockCode?: string; + + /** + * 批次码 + */ + batchCode?: string; + + /** + * 条码数量 + */ + materialQty?: number; + + /** + * 分包数量 + */ + apportionQty?: number; + + /** + * 物料id + */ + materialId?: string | number; + + /** + * 物料编码 + */ + materialCode?: string; + + /** + * 物料名称 + */ + materialName?: string; + + /** + * 物料规格 + */ + materialSpe?: string; + + /** + * 计量单位名称 + */ + unitName?: string; + + /** + * 是否有条码 + */ + codeYesNo?: string; + + /** + * 物料大类 + */ + materialCategories?: string; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/api/wms/inventory/index.ts b/src/api/wms/inventory/index.ts new file mode 100644 index 0000000..80fe5f9 --- /dev/null +++ b/src/api/wms/inventory/index.ts @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { InventoryVO, InventoryForm, InventoryQuery } from '@/api/wms/inventory/types'; + +/** + * 查询物料库存列表 + * @param query + * @returns {*} + */ + +export const listInventory = (query?: InventoryQuery): AxiosPromise => { + return request({ + url: '/wms/inventory/list', + method: 'get', + params: query + }); +}; + +/** + * 查询物料库存详细 + * @param inventoryId + */ +export const getInventory = (inventoryId: string | number): AxiosPromise => { + return request({ + url: '/wms/inventory/' + inventoryId, + method: 'get' + }); +}; + +/** + * 新增物料库存 + * @param data + */ +export const addInventory = (data: InventoryForm) => { + return request({ + url: '/wms/inventory', + method: 'post', + data: data + }); +}; + +/** + * 修改物料库存 + * @param data + */ +export const updateInventory = (data: InventoryForm) => { + return request({ + url: '/wms/inventory', + method: 'put', + data: data + }); +}; + +/** + * 删除物料库存 + * @param inventoryId + */ +export const delInventory = (inventoryId: string | number | Array) => { + return request({ + url: '/wms/inventory/' + inventoryId, + method: 'delete' + }); +}; diff --git a/src/api/wms/inventory/types.ts b/src/api/wms/inventory/types.ts new file mode 100644 index 0000000..211ff35 --- /dev/null +++ b/src/api/wms/inventory/types.ts @@ -0,0 +1,151 @@ +export interface InventoryVO { + /** + * 表主键 + */ + inventoryId: string | number; + + /** + * 批次码 + */ + batchCode: string; + + /** + * 物料id + */ + materialId: string | number; + + /** + * 库位编码 + */ + locationCode: string; + + /** + * 物料大类 + */ + materialCategories: number; + + /** + * 库存数量 + */ + inventoryQty: number; + + /** + * 锁定状态(0未锁定,1锁定) + */ + lockState: string; + + /** + * 库存状态(0库存归0,1正常) + */ + inventoryStatus: string; + + /** + * 仓库ID + */ + storeId: string | number; + +} + +export interface InventoryForm extends BaseEntity { + /** + * 表主键 + */ + inventoryId?: string | number; + + /** + * 批次码 + */ + batchCode?: string; + + /** + * 物料id + */ + materialId?: string | number; + + /** + * 库位编码 + */ + locationCode?: string; + + /** + * 物料大类 + */ + materialCategories?: number; + + /** + * 库存数量 + */ + inventoryQty?: number; + + /** + * 锁定状态(0未锁定,1锁定) + */ + lockState?: string; + + /** + * 库存状态(0库存归0,1正常) + */ + inventoryStatus?: string; + + /** + * 仓库ID + */ + storeId?: string | number; + +} + +export interface InventoryQuery extends PageQuery { + + /** + * 表主键 + */ + inventoryId?: string | number; + + /** + * 批次码 + */ + batchCode?: string; + + /** + * 物料id + */ + materialId?: string | number; + + /** + * 库位编码 + */ + locationCode?: string; + + /** + * 物料大类 + */ + materialCategories?: number; + + /** + * 库存数量 + */ + inventoryQty?: number; + + /** + * 锁定状态(0未锁定,1锁定) + */ + lockState?: string; + + /** + * 库存状态(0库存归0,1正常) + */ + inventoryStatus?: string; + + /** + * 仓库ID + */ + storeId?: string | number; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/api/wms/outstockDetail/index.ts b/src/api/wms/outstockDetail/index.ts new file mode 100644 index 0000000..3a9af0f --- /dev/null +++ b/src/api/wms/outstockDetail/index.ts @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { OutstockDetailVO, OutstockDetailForm, OutstockDetailQuery } from '@/api/wms/outstockDetail/types'; + +/** + * 查询出库单-物料列表 + * @param query + * @returns {*} + */ + +export const listOutstockDetail = (query?: OutstockDetailQuery): AxiosPromise => { + return request({ + url: '/wms/outstockDetail/list', + method: 'get', + params: query + }); +}; + +/** + * 查询出库单-物料详细 + * @param outstockDetailId + */ +export const getOutstockDetail = (outstockDetailId: string | number): AxiosPromise => { + return request({ + url: '/wms/outstockDetail/' + outstockDetailId, + method: 'get' + }); +}; + +/** + * 新增出库单-物料 + * @param data + */ +export const addOutstockDetail = (data: OutstockDetailForm) => { + return request({ + url: '/wms/outstockDetail', + method: 'post', + data: data + }); +}; + +/** + * 修改出库单-物料 + * @param data + */ +export const updateOutstockDetail = (data: OutstockDetailForm) => { + return request({ + url: '/wms/outstockDetail', + method: 'put', + data: data + }); +}; + +/** + * 删除出库单-物料 + * @param outstockDetailId + */ +export const delOutstockDetail = (outstockDetailId: string | number | Array) => { + return request({ + url: '/wms/outstockDetail/' + outstockDetailId, + method: 'delete' + }); +}; diff --git a/src/api/wms/outstockDetail/types.ts b/src/api/wms/outstockDetail/types.ts new file mode 100644 index 0000000..dd1ef76 --- /dev/null +++ b/src/api/wms/outstockDetail/types.ts @@ -0,0 +1,110 @@ +export interface OutstockDetailVO { + /** + * 表主键 + */ + outstockDetailId: string | number; + + /** + * 出库单号 + */ + outstockCode: string; + + /** + * 出库单 主键 + */ + outstockId: string | number; + + /** + * 物料id + */ + materialId: string | number; + + /** + * 出库数量 + */ + outstockQty: number; + + /** + * 物料大类 + */ + materialCategories: string; + /** + * 物料代码 + */ + materialCode: string; + +} + +export interface OutstockDetailForm extends BaseEntity { + /** + * 表主键 + */ + outstockDetailId?: string | number; + + /** + * 出库单号 + */ + outstockCode?: string; + + /** + * 出库单 主键 + */ + outstockId?: string | number; + + /** + * 物料id + */ + materialId?: string | number; + + /** + * 出库数量 + */ + outstockQty?: number; + + /** + * 物料大类 + */ + materialCategories?: string; + +} + +export interface OutstockDetailQuery extends PageQuery { + + /** + * 表主键 + */ + outstockDetailId?: string | number; + + /** + * 出库单号 + */ + outstockCode?: string; + + /** + * 出库单 主键 + */ + outstockId?: string | number; + + /** + * 物料id + */ + materialId?: string | number; + + /** + * 出库数量 + */ + outstockQty?: number; + + /** + * 物料大类 + */ + materialCategories?: string; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/api/wms/outstockOrder/index.ts b/src/api/wms/outstockOrder/index.ts new file mode 100644 index 0000000..c33c962 --- /dev/null +++ b/src/api/wms/outstockOrder/index.ts @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { OutstockOrderVO, OutstockOrderForm, OutstockOrderQuery } from '@/api/wms/outstockOrder/types'; + +/** + * 查询出库单列表 + * @param query + * @returns {*} + */ + +export const listOutstockOrder = (query?: OutstockOrderQuery): AxiosPromise => { + return request({ + url: '/wms/outstockOrder/list', + method: 'get', + params: query + }); +}; + +/** + * 查询出库单详细 + * @param outstockId + */ +export const getOutstockOrder = (outstockId: string | number): AxiosPromise => { + return request({ + url: '/wms/outstockOrder/' + outstockId, + method: 'get' + }); +}; + +/** + * 新增出库单 + * @param data + */ +export const addOutstockOrder = (data: OutstockOrderForm) => { + return request({ + url: '/wms/outstockOrder', + method: 'post', + data: data + }); +}; + +/** + * 修改出库单 + * @param data + */ +export const updateOutstockOrder = (data: OutstockOrderForm) => { + return request({ + url: '/wms/outstockOrder', + method: 'put', + data: data + }); +}; + +/** + * 删除出库单 + * @param outstockId + */ +export const delOutstockOrder = (outstockId: string | number | Array) => { + return request({ + url: '/wms/outstockOrder/' + outstockId, + method: 'delete' + }); +}; diff --git a/src/api/wms/outstockOrder/types.ts b/src/api/wms/outstockOrder/types.ts new file mode 100644 index 0000000..b1a271c --- /dev/null +++ b/src/api/wms/outstockOrder/types.ts @@ -0,0 +1,181 @@ +export interface OutstockOrderVO { + /** + * 出库单 主键 + */ + outstockId: string | number; + + /** + * 仓库ID + */ + warehouseId: string | number; + + /** + * 出库单号 + */ + outstockCode: string; + + /** + * 出库类型 + */ + outstockType: string; + + /** + * 物料大类 + */ + materialCategories: string; + + /** + * 工单类型(字典:1销售订单,2生产订单,3手工,4系统生成) + */ + orderType: string; + + /** + * 订单编号 + */ + orderNo: string; + + /** + * 审核人 + */ + auditBy: string; + + /** + * 审核时间 + */ + auditTime: string; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + auditStatus: string; + + /** + * 审核意见 + */ + auditComments: string; + +} + +export interface OutstockOrderForm extends BaseEntity { + /** + * 出库单 主键 + */ + outstockId?: string | number; + + /** + * 仓库ID + */ + warehouseId?: string | number; + + /** + * 出库单号 + */ + outstockCode?: string; + + /** + * 出库类型 + */ + outstockType?: string; + + /** + * 物料大类 + */ + materialCategories?: string; + + /** + * 工单类型(字典:1销售订单,2生产订单,3手工,4系统生成) + */ + orderType?: string; + + /** + * 订单编号 + */ + orderNo?: string; + + /** + * 审核人 + */ + auditBy?: string; + + /** + * 审核时间 + */ + auditTime?: string; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + auditStatus?: string; + + /** + * 审核意见 + */ + auditComments?: string; + +} + +export interface OutstockOrderQuery extends PageQuery { + + /** + * 出库单 主键 + */ + outstockId?: string | number; + + /** + * 仓库ID + */ + warehouseId?: string | number; + + /** + * 出库单号 + */ + outstockCode?: string; + + /** + * 出库类型 + */ + outstockType?: string; + + /** + * 物料大类 + */ + materialCategories?: string; + + /** + * 工单类型(字典:1销售订单,2生产订单,3手工,4系统生成) + */ + orderType?: string; + + /** + * 订单编号 + */ + orderNo?: string; + + /** + * 审核人 + */ + auditBy?: string; + + /** + * 审核时间 + */ + auditTime?: string; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + auditStatus?: string; + + /** + * 审核意见 + */ + auditComments?: string; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/api/wms/returnOrder/index.ts b/src/api/wms/returnOrder/index.ts new file mode 100644 index 0000000..5b5415a --- /dev/null +++ b/src/api/wms/returnOrder/index.ts @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { ReturnOrderVO, ReturnOrderForm, ReturnOrderQuery } from '@/api/wms/returnOrder/types'; + +/** + * 查询退库工单列表 + * @param query + * @returns {*} + */ + +export const listReturnOrder = (query?: ReturnOrderQuery): AxiosPromise => { + return request({ + url: '/wms/returnOrder/list', + method: 'get', + params: query + }); +}; + +/** + * 查询退库工单详细 + * @param roId + */ +export const getReturnOrder = (roId: string | number): AxiosPromise => { + return request({ + url: '/wms/returnOrder/' + roId, + method: 'get' + }); +}; + +/** + * 新增退库工单 + * @param data + */ +export const addReturnOrder = (data: ReturnOrderForm) => { + return request({ + url: '/wms/returnOrder', + method: 'post', + data: data + }); +}; + +/** + * 修改退库工单 + * @param data + */ +export const updateReturnOrder = (data: ReturnOrderForm) => { + return request({ + url: '/wms/returnOrder', + method: 'put', + data: data + }); +}; + +/** + * 删除退库工单 + * @param roId + */ +export const delReturnOrder = (roId: string | number | Array) => { + return request({ + url: '/wms/returnOrder/' + roId, + method: 'delete' + }); +}; diff --git a/src/api/wms/returnOrder/types.ts b/src/api/wms/returnOrder/types.ts new file mode 100644 index 0000000..7d4df2b --- /dev/null +++ b/src/api/wms/returnOrder/types.ts @@ -0,0 +1,256 @@ +export interface ReturnOrderVO { + /** + * 表主键 + */ + roId: string | number; + + /** + * 物料ID + */ + materialId: string | number; + + /** + * 物料大类 + */ + materialCategories: string; + + /** + * 批次条码 + */ + batchCode: string; + + /** + * 计划数量 + */ + planAmount: number; + + /** + * 仓库ID + */ + warehouseId: string | number; + + /** + * 计划退库库位 + */ + planLocationCode: string; + + /** + * 退库工单状态 + */ + orderStatus: string; + + /** + * 实际数量 + */ + returnAmount: number; + + /** + * 实际退库库位 + */ + returnLocationCode: string; + + /** + * 审核人 + */ + auditBy: string; + + /** + * 审核时间 + */ + auditTime: string; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + auditStatus: string; + + /** + * 审核意见 + */ + auditComments: string; + + /** + * erp同步状态 + */ + erpSynchronousStatus: string; + + /** + * erp同步数量 + */ + erpSynchronousQty: number; + +} + +export interface ReturnOrderForm extends BaseEntity { + /** + * 表主键 + */ + roId?: string | number; + + /** + * 物料ID + */ + materialId?: string | number; + + /** + * 物料大类 + */ + materialCategories?: string; + + /** + * 批次条码 + */ + batchCode?: string; + + /** + * 计划数量 + */ + planAmount?: number; + + /** + * 仓库ID + */ + warehouseId?: string | number; + + /** + * 计划退库库位 + */ + planLocationCode?: string; + + /** + * 退库工单状态 + */ + orderStatus?: string; + + /** + * 实际数量 + */ + returnAmount?: number; + + /** + * 实际退库库位 + */ + returnLocationCode?: string; + + /** + * 审核人 + */ + auditBy?: string; + + /** + * 审核时间 + */ + auditTime?: string; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + auditStatus?: string; + + /** + * 审核意见 + */ + auditComments?: string; + + /** + * erp同步状态 + */ + erpSynchronousStatus?: string; + + /** + * erp同步数量 + */ + erpSynchronousQty?: number; + +} + +export interface ReturnOrderQuery extends PageQuery { + + /** + * 表主键 + */ + roId?: string | number; + + /** + * 物料ID + */ + materialId?: string | number; + + /** + * 物料大类 + */ + materialCategories?: string; + + /** + * 批次条码 + */ + batchCode?: string; + + /** + * 计划数量 + */ + planAmount?: number; + + /** + * 仓库ID + */ + warehouseId?: string | number; + + /** + * 计划退库库位 + */ + planLocationCode?: string; + + /** + * 退库工单状态 + */ + orderStatus?: string; + + /** + * 实际数量 + */ + returnAmount?: number; + + /** + * 实际退库库位 + */ + returnLocationCode?: string; + + /** + * 审核人 + */ + auditBy?: string; + + /** + * 审核时间 + */ + auditTime?: string; + + /** + * 审核状态(0待审核,1审核通过,2审核未通过) + */ + auditStatus?: string; + + /** + * 审核意见 + */ + auditComments?: string; + + /** + * erp同步状态 + */ + erpSynchronousStatus?: string; + + /** + * erp同步数量 + */ + erpSynchronousQty?: number; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/router/index.ts b/src/router/index.ts index 86e0092..3be4435 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -75,6 +75,32 @@ export const constantRoutes: RouteRecordRaw[] = [ } ] }, + { + path: '/wms', + component: Layout, + redirect: '/index', + children: [ + { + path: 'instockDetail', + component: () => import('@/views/wms/instockDetail/index.vue'), + name: 'instockDetail', + meta: { title: '入库明细', icon: 'dashboard', affix: true } + } + ] + }, + { + path: '/wms', + component: Layout, + redirect: '/index', + children: [ + { + path: 'outStockDetail', + component: () => import('@/views/wms/outstockDetail/index.vue'), + name: 'outstockDetail', + meta: { title: '出库明细', icon: 'dashboard', affix: true } + } + ] + }, { path: '/user', component: Layout, diff --git a/src/views/wms/configuration/index.vue b/src/views/wms/configuration/index.vue index 46c111f..8e3c53a 100644 --- a/src/views/wms/configuration/index.vue +++ b/src/views/wms/configuration/index.vue @@ -63,11 +63,23 @@ - - + + + + + + - - + + + +