Merge branch 'docs_0727'
This commit is contained in:
commit
c5b99b3ec4
@ -10,6 +10,7 @@
|
||||
}"
|
||||
row-key="id"
|
||||
:cell-style="{ padding: 0 }"
|
||||
@selection-change="handleSelectionChange"
|
||||
border
|
||||
>
|
||||
<!-- :cell-style="{ padding: 0 }" -->
|
||||
@ -113,6 +114,7 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
dataList: [],
|
||||
selections: []
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
@ -125,6 +127,11 @@ export default {
|
||||
console.log("[component] BaseListTable handleSubEmitData(): ", payload);
|
||||
this.$emit("operate-event", payload);
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
// this.selections = val;
|
||||
console.log('selections change: ', val)
|
||||
this.$emit('select', val.map(item => item.id))
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
@ -520,7 +520,7 @@ export default {
|
||||
if (fields.indexOf(key) !== -1) {
|
||||
// console.log(`key ${key} in fields`)
|
||||
// this.dataForm[key] = null;
|
||||
this.$set(this.dataForm, key, null)
|
||||
this.$set(this.dataForm, key, null);
|
||||
}
|
||||
});
|
||||
console.log("this.dataform", this.dataForm);
|
||||
@ -743,6 +743,9 @@ export default {
|
||||
case "update":
|
||||
this.addOrUpdate(payload.name === "add" ? "POST" : "PUT");
|
||||
break;
|
||||
case "update-bom":
|
||||
this.addOrUpdate("POST", this.urls.editUrl);
|
||||
break;
|
||||
case "add-pos-manually": {
|
||||
this.addOrUpdate("POST", this.urls.posFormUrl);
|
||||
break;
|
||||
|
@ -12,6 +12,7 @@
|
||||
@operate-event="handleOperate"
|
||||
:current-page="page"
|
||||
:current-size="size"
|
||||
@select="handleTableSelect"
|
||||
:refresh-layout-key="refreshLayoutKey" />
|
||||
|
||||
<el-pagination
|
||||
@ -173,6 +174,7 @@ export default {
|
||||
overlayVisible: false,
|
||||
cachedSearchCondition: {},
|
||||
needAttachmentDialog: false,
|
||||
tableSelectedIds: [],
|
||||
};
|
||||
},
|
||||
inject: ["urls"],
|
||||
@ -276,6 +278,10 @@ export default {
|
||||
return Math.random();
|
||||
},
|
||||
|
||||
handleTableSelect(ids) {
|
||||
this.tableSelectedIds = [...ids];
|
||||
},
|
||||
|
||||
/** 处理 表格操作 */
|
||||
handleOperate({ type, data }) {
|
||||
console.log("payload", type, data);
|
||||
@ -334,7 +340,7 @@ export default {
|
||||
.catch((err) => {});
|
||||
}
|
||||
case "edit": {
|
||||
console.log("[edit] ",data)
|
||||
console.log("[edit] ", data);
|
||||
this.openDialog(data); /** data is ==> id */
|
||||
break;
|
||||
}
|
||||
@ -605,6 +611,14 @@ export default {
|
||||
handleBtnClick({ btnName, payload }) {
|
||||
console.log("[search] form handleBtnClick", btnName, payload);
|
||||
switch (btnName) {
|
||||
case "批量同步":
|
||||
this.overlayVisible = true;
|
||||
this.$http.post(this.urls.syncUrl, this.tableSelectedIds).then(({ data: res }) => {
|
||||
this.$message({ message: res.msg, type: res.code === 0 ? "success" : "error" });
|
||||
res.code == 0 && this.getList();
|
||||
this.overlayVisible = false;
|
||||
});
|
||||
break;
|
||||
case "新增":
|
||||
this.openDialog();
|
||||
break;
|
||||
|
@ -7,10 +7,11 @@ import techBox from "@/components/noTemplateComponents/techBox";
|
||||
export default function () {
|
||||
const tableProps = [
|
||||
{ type: "index", label: "序号" },
|
||||
{ type: "selection" },
|
||||
{ width: 160, prop: "code", label: "配方号" },
|
||||
{ prop: "name", label: "牌号" },
|
||||
{ prop: "syncTime", label: "同步时间", filter: timeFilter },
|
||||
{ width: 90, prop: "techCode", label: "烧制曲线", subcomponent: techBox },
|
||||
{ width: 120, prop: "techCode", label: "烧制曲线", subcomponent: techBox },
|
||||
{ prop: "upweight", label: "建议混料上限" },
|
||||
{ prop: "downweight", label: "建议混料下限" },
|
||||
// { prop: "externalCode", label: "版本号" },
|
||||
@ -38,9 +39,9 @@ export default function () {
|
||||
width: 120,
|
||||
subcomponent: TableOperaionComponent,
|
||||
options: [
|
||||
{ name: "sync", label: "同步", icon: "refresh", emitFull: true, showOverlay: true }
|
||||
// { name: "sync", label: "同步", icon: "refresh", emitFull: true, showOverlay: true }
|
||||
// { name: "copy", label: "复制", icon: "copy-document" },
|
||||
// { name: "edit", label: "编辑", icon: "edit-outline" },
|
||||
{ name: "edit", label: "编辑", icon: "edit-outline" },
|
||||
// { name: "delete", icon: "delete", label: "删除", emitFull: true, permission: "pms:bom:delete" },
|
||||
],
|
||||
},
|
||||
@ -83,169 +84,214 @@ export default function () {
|
||||
];
|
||||
|
||||
const dictList = JSON.parse(localStorage.getItem("dictList") || {});
|
||||
// const dialogConfigs = {
|
||||
// menu: [
|
||||
// { name: "配方", key: "info" },
|
||||
// { name: "配方详情", key: "attr", onlyEditMode: true },
|
||||
// // {
|
||||
// // name: "附件",
|
||||
// // key: "attachment",
|
||||
// // onlyEditMode: true,
|
||||
// // actionUrl: window.SITE_CONFIG["apiURL"] + "/pms/attachment/uploadFileFormData?typeCode=ProductAttachment",
|
||||
// // },
|
||||
// ],
|
||||
// form: {
|
||||
// rows: [
|
||||
// [
|
||||
// {
|
||||
// input: true,
|
||||
// label: "牌号",
|
||||
// prop: "name",
|
||||
// rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
// elparams: { placeholder: "请输入牌号" },
|
||||
// },
|
||||
// {
|
||||
// input: true,
|
||||
// label: "配方编码",
|
||||
// prop: "code",
|
||||
// rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
// elparams: { placeholder: "请输入配方编码" },
|
||||
// },
|
||||
// // { input: true, label: '版本号', prop: 'version', elparams: { placeholder: '请输入版本号' } },
|
||||
// // {
|
||||
// // select: true,
|
||||
// // label: "产品类型",
|
||||
// // prop: "typeDictValue",
|
||||
// // options: "product_type" in dictList ? dictList["product_type"].map((item) => ({ value: item.dictValue, label: item.dictLabel })) : [],
|
||||
// // elparams: { placeholder: "选择一个产品类型" },
|
||||
// // },
|
||||
// ],
|
||||
// [
|
||||
// // { input: true, label: '单位平方数', prop: 'code', rules: { required: true, message: '必填项不能为空', trigger: 'blur' }, elparams: { placeholder: '请输入设备名称编码' } },
|
||||
// // {
|
||||
// // select: true,
|
||||
// // label: "单位",
|
||||
// // prop: "unitDictValue",
|
||||
// // options: "unit" in dictList ? dictList["unit"].map((item) => ({ value: item.dictValue, label: item.dictLabel })) : [],
|
||||
// // elparams: { placeholder: "选择单位" },
|
||||
// // },
|
||||
// {
|
||||
// input: true,
|
||||
// label: "版本号",
|
||||
// prop: "externalCode",
|
||||
// rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
// elparams: { placeholder: "请输入版本号" },
|
||||
// },
|
||||
// { input: true, label: "物料销售文本(短)", prop: "shortDesc", elparams: { placeholder: "物料销售文本" } },
|
||||
// ],
|
||||
// [{ textarea: true, label: "物料销售文本", prop: "description", elparams: { placeholder: "物料销售文本" } }],
|
||||
// [{ input: true, label: "备注", prop: "remark", elparams: { placeholder: "备注" } }],
|
||||
// [
|
||||
// {
|
||||
// // input: true,
|
||||
// forceDisabled: true,
|
||||
// label: "同步状态",
|
||||
// prop: "sync",
|
||||
// key: "sync",
|
||||
// // rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
// // elparams: { placeholder: "请输入同步状态" },
|
||||
// },
|
||||
// ],
|
||||
// ],
|
||||
// operations: [
|
||||
// { name: "add", label: "保存", type: "primary", permission: "pms:bom:save", showOnEdit: false },
|
||||
// { name: "update", label: "更新", type: "primary", permission: "pms:bom:update", showOnEdit: true },
|
||||
// { name: "reset", label: "重置", type: "warning", showAlways: true },
|
||||
// // { name: 'cancel', label: '取消', showAlways: true },
|
||||
// ],
|
||||
// },
|
||||
// table: {
|
||||
// // extraParams: ['stepId'],
|
||||
// extraParams: "bomId",
|
||||
// props: [
|
||||
// { type: "index", label: "序号" },
|
||||
// { prop: "material", label: "物料", isEditField: true },
|
||||
// {
|
||||
// width: 130,
|
||||
// prop: "qty",
|
||||
// label: "配方物料重量",
|
||||
// filter: (val) => (!!val ? val + " kg" : "-"),
|
||||
// isEditField: true,
|
||||
// },
|
||||
// {
|
||||
// width: 130,
|
||||
// prop: "sumqty",
|
||||
// label: "配方总重量",
|
||||
// filter: (val) => (!!val ? val + " kg" : "-"),
|
||||
// isEditField: true,
|
||||
// },
|
||||
// { prop: "percent", label: "配比 [%]", filter: (val) => (!!val ? val + " %" : "-"), isEditField: true },
|
||||
// { prop: "remark", label: "备注", isEditField: true },
|
||||
// { prop: "createTime", label: "添加时间", filter: timeFilter },
|
||||
// {
|
||||
// prop: "operations",
|
||||
// name: "操作",
|
||||
// fixed: "right",
|
||||
// width: 90,
|
||||
// subcomponent: TableOperaionComponent,
|
||||
// options: [
|
||||
// { name: "edit", label: "编辑", icon: "edit-outline", permission: "pms:bomMaterial:update" },
|
||||
// { name: "delete", icon: "delete", label: "删除", emitFull: true, permission: "pms:bomMaterial:delete" },
|
||||
// ],
|
||||
// },
|
||||
// ],
|
||||
// data: [
|
||||
// // TOOD 暂时用不到,但获取可以考虑把拉取接口数据的函数迁移到此文件(没有太大必要)
|
||||
// ],
|
||||
// },
|
||||
|
||||
// subDialog: {
|
||||
// extraParam: "bomId",
|
||||
// forceAttachCode: true, // 产品属性新增必填 code 字段......
|
||||
// rows: [
|
||||
// [
|
||||
// {
|
||||
// select: true,
|
||||
// label: "物料",
|
||||
// prop: "materialId",
|
||||
// rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
// elparams: { placeholder: "请选择物料", filterable: true },
|
||||
// options: [],
|
||||
// fetchData: () => this.$http.get("/pms/material/page", { params: { limit: 999, page: 1 } }),
|
||||
// // fetchData: () => new Promise((resolve) => {
|
||||
// // setTimeout(() => {
|
||||
// // resolve({
|
||||
// // data: {
|
||||
// // code: 0,
|
||||
// // data: {
|
||||
// // total: 0,
|
||||
// // list:
|
||||
// // [
|
||||
// // { id: 10001, name: 'mock物料1' },
|
||||
// // { id: 10002, name: 'mock物料2' },
|
||||
// // { id: 10003, name: 'mock物料3' },
|
||||
// // { id: 10004, name: 'mock物料4' },
|
||||
// // { id: 10005, name: 'mock物料5' },
|
||||
// // ]
|
||||
// // }
|
||||
// // }
|
||||
// // })
|
||||
// // }, 800)
|
||||
// // })
|
||||
// },
|
||||
// {
|
||||
// input: true,
|
||||
// label: "物料重量[kg]",
|
||||
// prop: "qty",
|
||||
// rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
// elparams: { placeholder: "请输入物料重量" },
|
||||
// },
|
||||
// ],
|
||||
// [{ textarea: true, label: "备注", prop: "remark", elparams: { placeholder: "添加备注" } }],
|
||||
// ],
|
||||
// operations: [
|
||||
// { name: "add", label: "保存", type: "primary", permission: "pms:bomMaterial:save", showOnEdit: false },
|
||||
// { name: "update", label: "更新", type: "primary", permission: "pms:bomMaterial:update", showOnEdit: true },
|
||||
// ],
|
||||
// },
|
||||
// };
|
||||
|
||||
const dialogConfigs = {
|
||||
menu: [
|
||||
{ name: "配方", key: "info" },
|
||||
{ name: "配方详情", key: "attr", onlyEditMode: true },
|
||||
// {
|
||||
// name: "附件",
|
||||
// key: "attachment",
|
||||
// onlyEditMode: true,
|
||||
// actionUrl: window.SITE_CONFIG["apiURL"] + "/pms/attachment/uploadFileFormData?typeCode=ProductAttachment",
|
||||
// },
|
||||
],
|
||||
form: {
|
||||
rows: [
|
||||
[
|
||||
{
|
||||
input: true,
|
||||
label: "配方号",
|
||||
prop: "code",
|
||||
rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
// disabledOnEdit: true
|
||||
elparams: { disabled: true },
|
||||
},
|
||||
{
|
||||
input: true,
|
||||
label: "牌号",
|
||||
prop: "name",
|
||||
rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
elparams: { placeholder: "请输入牌号" },
|
||||
elparams: { disabled: true },
|
||||
},
|
||||
],
|
||||
[
|
||||
{
|
||||
input: true,
|
||||
label: "建议混料下限",
|
||||
prop: "downweight",
|
||||
rules: [{ type: "number", trigger: "blur", message: "请输入数字类型", transform: (val) => Number(val) }],
|
||||
elparams: { placeholder: "请输入建议混料下限" },
|
||||
},
|
||||
{
|
||||
input: true,
|
||||
label: "配方编码",
|
||||
prop: "code",
|
||||
rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
elparams: { placeholder: "请输入配方编码" },
|
||||
label: "建议混料上限",
|
||||
prop: "upweight",
|
||||
rules: [{ type: "number", trigger: "blur", message: "请输入数字类型", transform: (val) => Number(val) }],
|
||||
elparams: { placeholder: "请输入建议混料上限" },
|
||||
},
|
||||
// { input: true, label: '版本号', prop: 'version', elparams: { placeholder: '请输入版本号' } },
|
||||
// {
|
||||
// select: true,
|
||||
// label: "产品类型",
|
||||
// prop: "typeDictValue",
|
||||
// options: "product_type" in dictList ? dictList["product_type"].map((item) => ({ value: item.dictValue, label: item.dictLabel })) : [],
|
||||
// elparams: { placeholder: "选择一个产品类型" },
|
||||
// },
|
||||
],
|
||||
[
|
||||
// { input: true, label: '单位平方数', prop: 'code', rules: { required: true, message: '必填项不能为空', trigger: 'blur' }, elparams: { placeholder: '请输入设备名称编码' } },
|
||||
// {
|
||||
// select: true,
|
||||
// label: "单位",
|
||||
// prop: "unitDictValue",
|
||||
// options: "unit" in dictList ? dictList["unit"].map((item) => ({ value: item.dictValue, label: item.dictLabel })) : [],
|
||||
// elparams: { placeholder: "选择单位" },
|
||||
// },
|
||||
{
|
||||
input: true,
|
||||
label: "版本号",
|
||||
prop: "externalCode",
|
||||
rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
elparams: { placeholder: "请输入版本号" },
|
||||
},
|
||||
{ input: true, label: "物料销售文本(短)", prop: "shortDesc", elparams: { placeholder: "物料销售文本" } },
|
||||
],
|
||||
[{ textarea: true, label: "物料销售文本", prop: "description", elparams: { placeholder: "物料销售文本" } }],
|
||||
[{ input: true, label: "备注", prop: "remark", elparams: { placeholder: "备注" } }],
|
||||
[
|
||||
{
|
||||
// input: true,
|
||||
forceDisabled: true,
|
||||
label: "同步状态",
|
||||
prop: "sync",
|
||||
key: "sync",
|
||||
// rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
// elparams: { placeholder: "请输入同步状态" },
|
||||
},
|
||||
],
|
||||
]
|
||||
],
|
||||
operations: [
|
||||
{ name: "add", label: "保存", type: "primary", permission: "pms:bom:save", showOnEdit: false },
|
||||
{ name: "update", label: "更新", type: "primary", permission: "pms:bom:update", showOnEdit: true },
|
||||
{ name: "add-bom", label: "保存", type: "primary", permission: "", showOnEdit: false },
|
||||
{ name: "update-bom", label: "更新", type: "primary", permission: "", showOnEdit: true },
|
||||
{ name: "reset", label: "重置", type: "warning", showAlways: true },
|
||||
// { name: 'cancel', label: '取消', showAlways: true },
|
||||
],
|
||||
},
|
||||
table: {
|
||||
// extraParams: ['stepId'],
|
||||
extraParams: "bomId",
|
||||
props: [
|
||||
{ type: "index", label: "序号" },
|
||||
{ prop: "material", label: "物料", isEditField: true },
|
||||
{
|
||||
width: 130,
|
||||
prop: "qty",
|
||||
label: "配方物料重量",
|
||||
filter: (val) => (!!val ? val + " kg" : "-"),
|
||||
isEditField: true,
|
||||
},
|
||||
{
|
||||
width: 130,
|
||||
prop: "sumqty",
|
||||
label: "配方总重量",
|
||||
filter: (val) => (!!val ? val + " kg" : "-"),
|
||||
isEditField: true,
|
||||
},
|
||||
{ prop: "percent", label: "配比 [%]", filter: (val) => (!!val ? val + " %" : "-"), isEditField: true },
|
||||
{ prop: "remark", label: "备注", isEditField: true },
|
||||
{ prop: "createTime", label: "添加时间", filter: timeFilter },
|
||||
{
|
||||
prop: "operations",
|
||||
name: "操作",
|
||||
fixed: "right",
|
||||
width: 90,
|
||||
subcomponent: TableOperaionComponent,
|
||||
options: [
|
||||
{ name: "edit", label: "编辑", icon: "edit-outline", permission: "pms:bomMaterial:update" },
|
||||
{ name: "delete", icon: "delete", label: "删除", emitFull: true, permission: "pms:bomMaterial:delete" },
|
||||
],
|
||||
},
|
||||
],
|
||||
data: [
|
||||
// TOOD 暂时用不到,但获取可以考虑把拉取接口数据的函数迁移到此文件(没有太大必要)
|
||||
],
|
||||
},
|
||||
|
||||
subDialog: {
|
||||
extraParam: "bomId",
|
||||
forceAttachCode: true, // 产品属性新增必填 code 字段......
|
||||
rows: [
|
||||
[
|
||||
{
|
||||
select: true,
|
||||
label: "物料",
|
||||
prop: "materialId",
|
||||
rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
elparams: { placeholder: "请选择物料", filterable: true },
|
||||
options: [],
|
||||
fetchData: () => this.$http.get("/pms/material/page", { params: { limit: 999, page: 1 } }),
|
||||
// fetchData: () => new Promise((resolve) => {
|
||||
// setTimeout(() => {
|
||||
// resolve({
|
||||
// data: {
|
||||
// code: 0,
|
||||
// data: {
|
||||
// total: 0,
|
||||
// list:
|
||||
// [
|
||||
// { id: 10001, name: 'mock物料1' },
|
||||
// { id: 10002, name: 'mock物料2' },
|
||||
// { id: 10003, name: 'mock物料3' },
|
||||
// { id: 10004, name: 'mock物料4' },
|
||||
// { id: 10005, name: 'mock物料5' },
|
||||
// ]
|
||||
// }
|
||||
// }
|
||||
// })
|
||||
// }, 800)
|
||||
// })
|
||||
},
|
||||
{
|
||||
input: true,
|
||||
label: "物料重量[kg]",
|
||||
prop: "qty",
|
||||
rules: { required: true, message: "必填项不能为空", trigger: "blur" },
|
||||
elparams: { placeholder: "请输入物料重量" },
|
||||
},
|
||||
],
|
||||
[{ textarea: true, label: "备注", prop: "remark", elparams: { placeholder: "添加备注" } }],
|
||||
],
|
||||
operations: [
|
||||
{ name: "add", label: "保存", type: "primary", permission: "pms:bomMaterial:save", showOnEdit: false },
|
||||
{ name: "update", label: "更新", type: "primary", permission: "pms:bomMaterial:update", showOnEdit: true },
|
||||
],
|
||||
},
|
||||
};
|
||||
@ -262,8 +308,10 @@ export default function () {
|
||||
},
|
||||
urls: {
|
||||
base: "/pms/bom",
|
||||
editUrl: "/pms/bom/modify",
|
||||
page: "/pms/bom/page",
|
||||
syncUrl: "/pms/bom/sync",
|
||||
// syncUrl: "/pms/bom/sync",
|
||||
syncUrl: "/pms/trans/batchBomSync",
|
||||
copyUrl: "/pms/bom/copy",
|
||||
subase: "/pms/bomMaterial",
|
||||
subpage: "/pms/bomMaterial/page",
|
||||
|
@ -10,9 +10,9 @@ export default function () {
|
||||
{ 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 + " %" : "-") },
|
||||
{ width: 90, prop: "percent", label: "进度", filter: (val) => (val !== null && val !== undefined ? val + " %" : "-") },
|
||||
{ prop: "statusDictValue", label: "订单状态", filter: (val) => (val !== null && val !== undefined ? ["等待", "确认", "生产", "暂停", "结束", "接受", "拒绝", "已下发"][val] : "-"), },
|
||||
{ prop: "startTime", label: "开始时间" },
|
||||
{ width: 160, prop: "startTime", label: "开始时间", filter: timeFilter },
|
||||
{ width: 100, prop: "shapeCode", label: "砖型" },
|
||||
{ prop: "pressCode", label: "压机" },
|
||||
{ width: 80, prop: "qty", label: "生产量" },
|
||||
|
Loading…
Reference in New Issue
Block a user