diff --git a/src/views/modules/pms/blenderPress/components/ListViewWithHead.vue b/src/views/modules/pms/blenderPress/components/ListViewWithHead.vue new file mode 100644 index 0000000..2f484e0 --- /dev/null +++ b/src/views/modules/pms/blenderPress/components/ListViewWithHead.vue @@ -0,0 +1,451 @@ + + + + + + diff --git a/src/views/modules/pms/blenderPress/components/edit-dialog.vue b/src/views/modules/pms/blenderPress/components/edit-dialog.vue new file mode 100644 index 0000000..d79edf6 --- /dev/null +++ b/src/views/modules/pms/blenderPress/components/edit-dialog.vue @@ -0,0 +1,370 @@ + + + + + diff --git a/src/views/modules/pms/blenderPress/config.js b/src/views/modules/pms/blenderPress/config.js new file mode 100644 index 0000000..ffd4264 --- /dev/null +++ b/src/views/modules/pms/blenderPress/config.js @@ -0,0 +1,179 @@ +import TableOperaionComponent from "@/components/noTemplateComponents/operationComponent"; +// import TableTextComponent from "@/components/noTemplateComponents/detailComponent"; +// import StatusComponent from "@/components/noTemplateComponents/statusComponent"; +import { timeFilter } from "@/utils/filters"; + +export default function () { + const tableProps = [ + { type: "index", label: "序号" }, + { width: 160, prop: "orderCode", label: "主订单号" }, + { width: 60, prop: "orderCate", label: "子号" }, + { width: 160, prop: "code", label: "混料订单号" }, + { width: 60, prop: "percent", label: "进度", filter: (val) => (val !== null && val !== undefined ? val + " %" : "-") }, + { + prop: "statusDictValue", + label: "订单状态", + filter: (val) => (val !== null && val !== undefined ? ["等待", "确认", "生产", "暂停", "结束", "接受", "拒绝"][val] : "-"), + }, + { prop: "bomCode", label: "配方" }, + { width: 120, prop: "qty", label: "混料总量 [kg]" }, + { width: 120, prop: "comqty", label: "已完成量 [kg]" }, + { width: 60, prop: "ai", label: "版本" }, + { prop: "blenderCode", label: "混料机" }, + { width: 160, prop: "", label: "添加时间", filter: timeFilter }, + { + prop: "operations", + name: "操作", + fixed: "right", + width: 180, + subcomponent: TableOperaionComponent, + options: [ + { + name: "edit", label: "编辑", emitFull: true, icon: 'edit-outline', enable: injectData => { + const v = injectData.statusDictValue + if (v && +v === 1) return true + return false + } + }, + { name: "view-batch", label: "查看批次", color: "#ff8000", toRouter: 'pms-blenderBatch', icon: 'document-copy' }, // 路由跳转至 pms-blenderBatch + { name: "pause-blender", label: "暂停", color: "#f10000", icon: 'video-pause' }, + { name: "start-blender", label: "开始", color: "#0b58ff", icon: 'video-play' }, + { name: "detach", label: "下发", color: "#099", icon: 'bottom-right' }, + ], + }, + ]; + + const pressTableProps = [ + { type: "index", label: "序号" }, + { width: 160, prop: "orderCode", label: "主订单号" }, + { width: 60, prop: "orderCate", label: "子号" }, + { width: 160, prop: "code", label: "压制订单号" }, + { width: 60, prop: "percent", label: "进度", filter: (val) => (val !== null && val !== undefined ? val + " %" : "-") }, + { prop: "statusDictValue", label: "订单状态", filter: (val) => (val !== null && val !== undefined ? ["等待", "确认", "生产", "暂停", "结束", "接受", "拒绝"][val] : "-"), }, + { prop: "startTime", label: "开始时间" }, + { width: 100, prop: "shapeCode", label: "砖型" }, + { prop: "pressCode", label: "压机" }, + { width: 80, prop: "qty", label: "生产量" }, + { prop: "qtyComplete", label: "完成量" }, + { prop: "goodqty", label: "合格数量" }, + { width: 120, prop: "badqty", label: "不合格数量" }, + { width: 160, prop: "createTime", label: "添加时间", filter: timeFilter }, + { + prop: "operations", + name: "操作", + fixed: "right", + width: 80, + subcomponent: TableOperaionComponent, + options: [{ name: 'detach', label: '下发', icon: 'bottom-right' }] + }, + ]; + + + const headFormFields = [ + { + prop: "code", + label: "主订单号", + input: true, + default: { value: "" }, + bind: { + placeholder: "请输入主订单号查询", + }, + }, + { + prop: "cate", + label: "主订单子号", + input: true, + default: { value: "" }, + bind: { + placeholder: "请输入主订单子号查询", + }, + }, + { + button: { + type: "primary", + name: "查询", + }, + }, + // { + // button: { + // type: "plain", + // name: "新增", + // permission: "pms:blenderStep:save", + // }, + // }, + ]; + + const dialogConfigs = { + form: { + rows: [ + [ + { + forceDisabled: true, + prop: 'code', + label: '混料订单号' + }, + ], + [ + { + select: true, + label: "配方", + prop: "bomId", + options: [], + optionLabelProp: 'code', + /** ====== */ + fetchData: (bomCode) => this.$http.get('/pms/bom/pageVersion', { params: { key: bomCode, limit: 999, page: 1 } }), + fetchDataParam: 'bomCode', + delayRequest: true, + /** ====== */ + rules: { required: true, message: "必填项不能为空", trigger: "blur" }, + elparams: { clearable: true, filterable: true, placeholder: "请选择配方" }, + }, + ], + [ + { + select: true, + label: "混料机", + prop: "blender", + options: [], + optionLabelProp: 'code', + fetchData: () => this.$http.get('/pms/equipment/list', { params: { workSequenceName: '混料工序' } }), + rules: { required: true, message: "必填项不能为空", trigger: "blur" }, + elparams: { clearable: true, filterable: true, placeholder: "请选择混料机" }, + }, + ], + ], + operations: [ + { name: "add", label: "保存", type: "primary", permission: "", showOnEdit: false }, + { name: "update", label: "更新", type: "primary", permission: "", showOnEdit: true }, + // { name: "reset", label: "重置", type: "warning", showAlways: true }, + ] + }, + }; + + return { + dialogConfigs, + tableConfig: { + table: null, + column: tableProps, + }, + pressTableConfig: { + table: null, + column: pressTableProps, + }, + headFormConfigs: { + rules: null, // 名称是由 BaseSearchForm.vue 组件固定的 + fields: headFormFields, // 名称是由 BaseSearchForm.vue 组件固定的 + }, + urls: { + // base: "/pms/equipmentTech", + page: "/pms/blenderOrder/pageView", + detach: "/pms/trans/blenderDeli", + pauseBlender: "/pms/trans/blenderPause", + startBlender: "/pms/trans/blenderStart", + pageIsPostApi: true, // 使用post接口来获取page数据,极少用,目前基本上只有工艺管理模块里在用 + changeBlender: '/pms/order/changeBlender', + pressPage: "/pms/pressOrder/pageView", + pressDetach: "/pms/trans/pressDeli", + }, + }; +} diff --git a/src/views/modules/pms/blenderPress/index.vue b/src/views/modules/pms/blenderPress/index.vue new file mode 100644 index 0000000..ba7bd0e --- /dev/null +++ b/src/views/modules/pms/blenderPress/index.vue @@ -0,0 +1,40 @@ + + + + +