diff --git a/src/api/mes/wm/productionissue/index.ts b/src/api/mes/wm/productionissue/index.ts index aae6f82e3..0bb77fafe 100644 --- a/src/api/mes/wm/productionissue/index.ts +++ b/src/api/mes/wm/productionissue/index.ts @@ -1,19 +1,5 @@ import request from '@/config/axios' -// MES 领料出库单行 VO -export interface WmProductionIssueLineVO { - id?: number - issueId?: number - itemId: number - itemCode?: string - itemName?: string - specification?: string - unitMeasureName?: string - quantity: number - batchId?: number - remark?: string -} - // MES 领料出库单 VO export interface WmProductionIssueVO { id?: number @@ -28,7 +14,6 @@ export interface WmProductionIssueVO { status?: number remark?: string createTime?: string - lines?: WmProductionIssueLineVO[] } // MES 领料出库单 API diff --git a/src/api/mes/wm/productproduce/detail/index.ts b/src/api/mes/wm/productproduce/detail/index.ts new file mode 100644 index 000000000..4a3760d4c --- /dev/null +++ b/src/api/mes/wm/productproduce/detail/index.ts @@ -0,0 +1,47 @@ +import request from '@/config/axios' + +// MES 生产入库明细 VO +export interface WmProductProduceDetailVO { + id?: number + produceId: number + lineId: number + itemId: number + quantity: number + batchId?: number + batchCode?: string + warehouseId: number + warehouseName?: string + locationId?: number + locationName?: string + areaId?: number + areaName?: string + remark?: string +} + +// MES 生产入库明细 API +export const WmProductProduceDetailApi = { + // 查询生产入库明细列表(按行编号) + getProductProduceDetailListByLineId: async (lineId: number) => { + return await request.get({ url: '/mes/wm/product-produce-detail/list-by-line', params: { lineId } }) + }, + + // 查询生产入库明细详情 + getProductProduceDetail: async (id: number) => { + return await request.get({ url: '/mes/wm/product-produce-detail/get?id=' + id }) + }, + + // 新增生产入库明细 + createProductProduceDetail: async (data: WmProductProduceDetailVO) => { + return await request.post({ url: '/mes/wm/product-produce-detail/create', data }) + }, + + // 修改生产入库明细 + updateProductProduceDetail: async (data: WmProductProduceDetailVO) => { + return await request.put({ url: '/mes/wm/product-produce-detail/update', data }) + }, + + // 删除生产入库明细 + deleteProductProduceDetail: async (id: number) => { + return await request.delete({ url: '/mes/wm/product-produce-detail/delete?id=' + id }) + } +} diff --git a/src/api/mes/wm/productproduce/index.ts b/src/api/mes/wm/productproduce/index.ts new file mode 100644 index 000000000..b26afeefb --- /dev/null +++ b/src/api/mes/wm/productproduce/index.ts @@ -0,0 +1,68 @@ +import request from '@/config/axios' + +// MES 生产入库单 VO +export interface WmProductProduceVO { + id?: number + workOrderId?: number + workOrderCode?: string + feedbackId?: number + taskId?: number + workstationId?: number + workstationCode?: string + workstationName?: string + processId?: number + processCode?: string + processName?: string + produceDate?: string + status?: number + remark?: string + createTime?: string +} + +// MES 生产入库单 API +export const WmProductProduceApi = { + // 查询生产入库单分页 + getProductProducePage: async (params: any) => { + return await request.get({ url: '/mes/wm/product-produce/page', params }) + }, + + // 查询生产入库单详情 + getProductProduce: async (id: number) => { + return await request.get({ url: '/mes/wm/product-produce/get?id=' + id }) + }, + + // 新增生产入库单 + createProductProduce: async (data: WmProductProduceVO) => { + return await request.post({ url: '/mes/wm/product-produce/create', data }) + }, + + // 修改生产入库单 + updateProductProduce: async (data: WmProductProduceVO) => { + return await request.put({ url: '/mes/wm/product-produce/update', data }) + }, + + // 删除生产入库单 + deleteProductProduce: async (id: number) => { + return await request.delete({ url: '/mes/wm/product-produce/delete?id=' + id }) + }, + + // 完成生产入库单(执行入库) + finishProductProduce: async (id: number) => { + return await request.put({ url: '/mes/wm/product-produce/finish?id=' + id }) + }, + + // 取消生产入库单 + cancelProductProduce: async (id: number) => { + return await request.put({ url: '/mes/wm/product-produce/cancel?id=' + id }) + }, + + // 校验生产入库单数量(每行明细数量之和是否等于行入库数量) + checkProductProduceQuantity: async (id: number) => { + return await request.get({ url: '/mes/wm/product-produce/check-quantity?id=' + id }) + }, + + // 导出生产入库单 Excel + exportProductProduceExcel: async (params: any) => { + return await request.download({ url: '/mes/wm/product-produce/export-excel', params }) + } +} diff --git a/src/api/mes/wm/productproduce/line/index.ts b/src/api/mes/wm/productproduce/line/index.ts new file mode 100644 index 000000000..f5333cf71 --- /dev/null +++ b/src/api/mes/wm/productproduce/line/index.ts @@ -0,0 +1,51 @@ +import request from '@/config/axios' + +// MES 生产入库单行 VO +export interface WmProductProduceLineVO { + id?: number + produceId: number + itemId: number + itemCode?: string + itemName?: string + specification?: string + unitMeasureName?: string + quantity: number + batchCode?: string + lotNumber?: string + expireDate?: string + qualityStatus?: number + remark?: string +} + +// MES 生产入库单行 API +export const WmProductProduceLineApi = { + // 查询生产入库单行分页 + getProductProduceLinePage: async (params: any) => { + return await request.get({ url: '/mes/wm/product-produce-line/page', params }) + }, + + // 查询生产入库单行详情 + getProductProduceLine: async (id: number) => { + return await request.get({ url: '/mes/wm/product-produce-line/get?id=' + id }) + }, + + // 新增生产入库单行 + createProductProduceLine: async (data: WmProductProduceLineVO) => { + return await request.post({ url: '/mes/wm/product-produce-line/create', data }) + }, + + // 修改生产入库单行 + updateProductProduceLine: async (data: WmProductProduceLineVO) => { + return await request.put({ url: '/mes/wm/product-produce-line/update', data }) + }, + + // 删除生产入库单行 + deleteProductProduceLine: async (id: number) => { + return await request.delete({ url: '/mes/wm/product-produce-line/delete?id=' + id }) + }, + + // 查询生产入库单行列表(按入库单编号) + getProductProduceLineListByProduceId: async (produceId: number) => { + return await request.get({ url: '/mes/wm/product-produce-line/list-by-produce', params: { produceId } }) + } +} diff --git a/src/utils/dict.ts b/src/utils/dict.ts index 61f4ac335..f330996ac 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -295,4 +295,6 @@ export enum DICT_TYPE { MES_WM_ARRIVAL_NOTICE_STATUS = 'mes_wm_arrival_notice_status', // MES 到货通知单状态 MES_WM_ITEM_RECEIPT_STATUS = 'mes_wm_item_receipt_status', // MES 物料接收单状态 MES_WM_PRODUCTION_ISSUE_STATUS = 'mes_wm_production_issue_status', // MES 领料出库单状态 + MES_PRODUCT_PRODUCE_STATUS = 'mes_product_produce_status', // MES 生产入库单状态 + MES_WM_QUALITY_STATUS = 'mes_wm_quality_status', // MES 质量状态 } diff --git a/src/views/mes/utils/constants.ts b/src/views/mes/utils/constants.ts index 6657c606c..93bf5c744 100644 --- a/src/views/mes/utils/constants.ts +++ b/src/views/mes/utils/constants.ts @@ -218,6 +218,13 @@ export const MesWmProductionIssueStatusEnum = { CANCELED: MesOrderStatusConstants.CANCELLED } +/** MES 生产入库单状态枚举 */ +export const MesWmProductProduceStatusEnum = { + PREPARE: MesOrderStatusConstants.DRAFT, + FINISHED: MesOrderStatusConstants.FINISHED, + CANCELED: MesOrderStatusConstants.CANCELLED +} + /** 获取物料/产品标识的标签 */ export const getItemOrProductLabel = (value: string): string => { for (const item of Object.values(MesItemOrProductEnum)) { diff --git a/src/views/mes/wm/productproduce/ProductProduceDetailForm.vue b/src/views/mes/wm/productproduce/ProductProduceDetailForm.vue new file mode 100644 index 000000000..8b35ac320 --- /dev/null +++ b/src/views/mes/wm/productproduce/ProductProduceDetailForm.vue @@ -0,0 +1,155 @@ + + + + diff --git a/src/views/mes/wm/productproduce/ProductProduceDetailList.vue b/src/views/mes/wm/productproduce/ProductProduceDetailList.vue new file mode 100644 index 000000000..badb8ce18 --- /dev/null +++ b/src/views/mes/wm/productproduce/ProductProduceDetailList.vue @@ -0,0 +1,78 @@ + + + + diff --git a/src/views/mes/wm/productproduce/ProductProduceForm.vue b/src/views/mes/wm/productproduce/ProductProduceForm.vue new file mode 100644 index 000000000..bd89c97a2 --- /dev/null +++ b/src/views/mes/wm/productproduce/ProductProduceForm.vue @@ -0,0 +1,185 @@ + + + diff --git a/src/views/mes/wm/productproduce/ProductProduceLineList.vue b/src/views/mes/wm/productproduce/ProductProduceLineList.vue new file mode 100644 index 000000000..4d63b9933 --- /dev/null +++ b/src/views/mes/wm/productproduce/ProductProduceLineList.vue @@ -0,0 +1,330 @@ + + + + diff --git a/src/views/mes/wm/productproduce/index.vue b/src/views/mes/wm/productproduce/index.vue new file mode 100644 index 000000000..0b25ca685 --- /dev/null +++ b/src/views/mes/wm/productproduce/index.vue @@ -0,0 +1,238 @@ + + +