diff --git a/src/api/production/production-issue-no-material.js b/src/api/production/production-issue-no-material.js new file mode 100644 index 0000000..12f2682 --- /dev/null +++ b/src/api/production/production-issue-no-material.js @@ -0,0 +1,62 @@ +import { createAPI } from "@/utils/httpRequest.js"; + +// NoMaterial版:生产领料(直接领料/申请单领料)接口,路径与原版隔离 +const base = "/pda/production/issue"; + +// 查询处理单元列表 +export const getWorkOrderMaterials = (data) => + createAPI(`${base}/getWorkOrderMaterials`, "post", data); +// 解析物料标签 +export const parseMaterialLabel = (data) => + createAPI(`${base}/parseMaterialLabel`, "post", data); +// 获取申请单物料列表 +export const getRequestMaterials = (data) => + createAPI(`${base}/getRequestMaterials`, "post", data); +// 基于申请单发料 +export const requestIssue = (data) => + createAPI(`${base}/requestIssue`, "post", data); +// 创建拣选托盘 +export const createPickingPallet = (data) => + createAPI(`${base}/createPickingPallet`, "post", data); +// 绑定处理单元到托盘 +export const bindUnitsToPallet = (data) => + createAPI(`${base}/bindUnitsToPallet`, "post", data); +// 打印托盘标签 +export const printPalletLabel = (data) => + createAPI(`${base}/printPalletLabel`, "post", data); +// 获取托盘信息 +export const getPalletInfo = (data) => + createAPI(`${base}/getPalletInfo`, "post", data); +// 获取发料历史记录 +export const getIssueHistory = (data) => + createAPI(`${base}/getIssueHistory`, "post", data); +// 验证工单状态 +export const validateWorkOrder = (data) => + createAPI(`${base}/validateWorkOrder`, "post", data); +// 验证申请单状态 +export const validateNotify = (data) => + createAPI(`${base}/validateNotify`, "post", data); +// 扫描材料是否存在 +export const scanMaterialLabelNoPartNo = (data) => + createAPI(`${base}/scanMaterialLabelNoPartNo`, "post", data); +// 获取工单列表 +export const getIssureNotifyByNo = (data) => + createAPI(`${base}/getIssureNotifyByNo`, "post", data); +// 获取工单列表 +export const getIssureNotifyListByNo = (data) => + createAPI(`${base}/getIssureNotifyListByNo`, "post", data); +export const getIssueNotifyHeaderInfo = (data) => + createAPI(`${base}/getIssueNotifyHeaderInfo`, "post", data); + +// 直接领料相关接口 +export const getWorkOrderInfo = (data) => + createAPI(`${base}/getWorkOrderInfo`, "post", data); +export const confirmDirectIssue = (data) => + createAPI(`${base}/confirmDirectIssue`, "post", data); +export const confirmProductionPicking = (data) => + createAPI(`${base}/confirmProductionPicking`, "post", data); +export const getShopOrderLine = (data) => + createAPI(`${base}/getShopOrderLine`, "post", data); +export const confirmDirectIssueNoMaterial = (data) => + createAPI(`${base}/confirmDirectIssueNoMaterial`, "post", data); + diff --git a/src/router/index.js b/src/router/index.js index 589a128..54f0977 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -52,6 +52,8 @@ const globalRoutes = [ { path: "/productionPickingDetail", name: "productionPickingDetail", component: resolve => require(["@/views/modules/production-issue/productionPickingDetail.vue"], resolve), meta: { transition: 'instant', preload: true, keepAlive: true } }, { path: "/directIssue", name: "directIssue", component: resolve => require(["@/views/modules/production-issue/directIssue.vue"], resolve), meta: { transition: 'instant', preload: true, keepAlive: true } }, { path: "/directIssueDetail", name: "directIssueDetail", component: resolve => require(["@/views/modules/production-issue/directIssueDetail.vue"], resolve), meta: { transition: 'instant', preload: true, keepAlive: true } }, + { path: "/directIssueNoMaterial", name: "directIssueNoMaterial", component: resolve => require(["@/views/modules/production-issue/directIssueNoMaterial.vue"], resolve), meta: { transition: 'instant', preload: true, keepAlive: true } }, + { path: "/directIssueNoMaterialDetail", name: "directIssueNoMaterialDetail", component: resolve => require(["@/views/modules/production-issue/directIssueNoMaterialDetail.vue"], resolve), meta: { transition: 'instant', preload: true, keepAlive: true } }, //生产退料 {path: "/productionreturn",name: "productionreturn", component: resolve => require(["@/views/modules/production-return/production.vue"], resolve), meta: { transition: 'instant' ,preload: true,keepAlive: true}}, {path: "/productionReturnPicking", name: "productionReturnPicking", component: resolve => require(["@/views/modules/production-return/productionReturnPicking.vue"], resolve), meta: { transition: 'instant', preload: true, keepAlive: true } }, diff --git a/src/views/modules/production-issue/directIssueNoMaterial.vue b/src/views/modules/production-issue/directIssueNoMaterial.vue new file mode 100644 index 0000000..18a9f88 --- /dev/null +++ b/src/views/modules/production-issue/directIssueNoMaterial.vue @@ -0,0 +1,507 @@ + + + + + + 直接领料(NoMaterial) + + 首页 + + + + + + + + + + 工单号:{{ workOrder.orderNo }}-{{ workOrder.releaseNo }}-{{ workOrder.sequenceNo }} + {{ workOrder.partNo }} + + + + {{ workOrder.partDesc }} + + + + + 计划数量 + {{ workOrder.lotSize }} + + + 状态 + {{ workOrder.status }} + + + 单位 + {{ workOrder.uom }} + + + + + + + + + 该工单暂无材料清单 + + + + + 加载中... + + + + + + + + diff --git a/src/views/modules/production-issue/directIssueNoMaterialDetail.vue b/src/views/modules/production-issue/directIssueNoMaterialDetail.vue new file mode 100644 index 0000000..07b959f --- /dev/null +++ b/src/views/modules/production-issue/directIssueNoMaterialDetail.vue @@ -0,0 +1,900 @@ + + + + + + 直接领料(NoMaterial) + + 首页 + + + + + + + {{ "移除" }} + {{ "添加" }} + + + + + 是否部分领料 + + + + + + + 工单号:{{ workOrderNo }} + 本次: {{ totalScannedQty }} + 查看物料行 + + + + + + + + + + 出库信息确认 + + + + + + NO. + 标签条码 + 库位 + 物料 + 剩余高 + 数量 + + + + + {{ index + 1 }} + {{ label.labelCode }} + {{ label.locationId }} + {{ label.componentPartNo }} + {{ label.height.toFixed(3) }} + + {{ label.quantity }} + + + + + + 暂无扫描标签 + + + + + + + 确定 + 取消 + + + + + + 暂无可选物料行 + + + + + + + {{ opt.componentPartNo }}(行号:{{ opt.lineItemNo }}) + + + {{ opt.componentPartDesc || '-' }} + + + + + + + 取消 + 确定 + + + + + + + + 暂无材料清单 + + + + + + 物料编码:{{ material.componentPartNo }} 行号:{{ material.lineItemNo }} + + + + + {{ material.componentPartDesc }} + + + + + 需求数量 + {{ material.qtyRequired }} + + + 已发数量 + {{ material.qtyIssued || 0 }} + + + 单位 + {{ material.uom || '个' }} + + + + + + 关闭 + + + + + + + 修改数量 + + + + + + 标签条码 + + + + 当前数量 + + + + 剩余高度(mm) * + + + + 需要发料数量 * + + + + + + + + + + + + + + diff --git a/src/views/modules/production-issue/production.vue b/src/views/modules/production-issue/production.vue index 002e6d0..c58814c 100644 --- a/src/views/modules/production-issue/production.vue +++ b/src/views/modules/production-issue/production.vue @@ -38,6 +38,13 @@ export default { to: "directIssue", disabled: false, }, + { + icon: "scan", + label: "直接领料(NoMaterial)", + iconClass: "purchase", + to: "directIssueNoMaterial", + disabled: false, + }, { icon: "records", label: "申请单领料",
该工单暂无材料清单
加载中...
暂无扫描标签
暂无材料清单