Этот коммит содержится в:
lb 2023-03-14 09:40:05 +08:00
родитель 0c71333957
Коммит 2dae6153fd
4 изменённых файлов: 310 добавлений и 19 удалений

Просмотреть файл

@ -78,7 +78,7 @@ export default {
h('el-button',
{
props: { type: opt.type ?? 'text', icon: opt.icon ? `el-icon-${opt.icon}` : '', title: opt.label ?? opt.name },
style: { color: this.colors[opt.name] || '#0b58ff' },
style: { color: opt.color || this.colors[opt.name] || '#0b58ff' },
on: { click: this.emit.bind(null, opt) }
},
opt.icon ? opt.showText ? this.text[opt.name] ?? opt.label : '' : opt.label ?? this.text[opt.name]

Просмотреть файл

@ -341,24 +341,26 @@ export default {
});
}
case "detach": {
return this.$http.post(this.urls.detach, { id: data }).then(({ data: res }) => {
if (res.code === 0) {
this.$message({
message: "下发成功",
type: "success",
duration: 1500,
onClose: () => {
this.getList();
},
});
} else {
this.$message({
message: `${res.code}: ${res.msg}`,
type: "error",
duration: 1500,
});
}
});
return this.$http
.post(this.urls.detach, data /* { id: data } */, { headers: { "Content-Type": "application/json" } })
.then(({ data: res }) => {
if (res.code === 0) {
this.$message({
message: "下发成功",
type: "success",
duration: 1500,
onClose: () => {
this.getList();
},
});
} else {
this.$message({
message: `${res.code}: ${res.msg}`,
type: "error",
duration: 1500,
});
}
});
}
}
},

238
src/views/modules/pms/blenderOrder/config.js Обычный файл
Просмотреть файл

@ -0,0 +1,238 @@
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: "createTime", label: "添加时间", filter: timeFilter },
// { prop: "kilnCode", label: "窑炉" },
{ prop: "orderCode", label: "主订单号" },
{ width: 120, prop: "orderCate", label: "主订单子号" },
{ width: 160, prop: "code", label: "混料订单号" },
{ prop: "statusDictValue", label: "订单状态", filter: (val) => (val !== null && val !== undefined ? ["等待", "确认", "生产", "暂停", "结束", "接受", "拒绝"][val] : "-"), },
// { prop: "startTime", label: "开始时间" },
// { prop: "shapeCode", label: "砖型" },
{ prop: "bomCode", label: "配方" },
{ width: 120, prop: "qty", label: "混料总量 [kg]" },
{ prop: "percent", label: "完成进度", filter: (val) => (val !== null && val !== undefined ? val + " %" : "-") },
{ prop: "ai", label: "版本号" },
{ prop: "blenderCode", label: "混料机" },
// { width: 120, prop: "badqty", label: "不合格数量" },
// { prop: "remark", label: "备注" },
// { prop: 'version', label: '配方号' },
// { prop: 'status', label: '状态', subcomponent: StatusComponent }, // subcomponent
// { prop: "description", label: "详情", subcomponent: TableTextComponent },
{
prop: "operations",
name: "操作",
fixed: "right",
width: 180,
subcomponent: TableOperaionComponent,
options: [
{ name: 'edit-blender-order', label: '编辑' },
{ name: 'view-batch', label: '查看批次', color: '#ff8000' },
{ name: 'detach', label: '下发', color: '#099' },
] // , url: '/pms/trans/pressDeli' }]
// options: ["copy", "edit", { name: "delete", emitFull: true, permission: "pms:blenderStep:delete" }],
},
];
const headFormFields = [
{
prop: "code",
label: "主订单号",
input: true,
default: { value: "" },
bind: {
placeholder: "请输入主订单号查询",
},
},
{
prop: "cate",
label: "主订单子号",
input: true,
default: { value: "" },
bind: {
placeholder: "请输入主订单子号查询",
},
},
// {
// prop: "bom",
// label: "配方号",
// input: true,
// default: { value: "" },
// bind: {
// placeholder: "请输入配方号",
// },
// },
// {
// prop: 'bom',
// label: '配方号',
// input: true,
// default: { value: '' },
// bind: {
// placeholder: '请输入配方号'
// }
// },
{
button: {
type: "primary",
name: "查询",
},
},
// {
// button: {
// type: "plain",
// name: "新增",
// permission: "pms:blenderStep:save",
// },
// },
];
// const dialogConfigs = {
// extraIds: { wsId: 3 }, // 工艺管理里面的相关模块的 dialogWithMenu 需要额外的工序 id
// menu: [
// { name: "烧制工艺", key: "info" },
// { name: "工艺参数", key: "attr", onlyEditMode: true },
// ],
// 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: "请输入烧制工艺编码" },
// },
// {
// select: true,
// label: "配方",
// prop: "bomId",
// options: [],
// refreshOptionsAfterConfirm: true,
// rules: { required: true, message: "必填项不能为空", trigger: "blur" },
// elparams: { clearable: true, filterable: true, placeholder: "请选择配方" },
// fetchData: (techId = -1) => this.$http.get("/pms/bom/listUnR", { params: { wsId: 3, externalCode: '', key: '', techId } }),
// },
// ],
// // [
// // {
// // forceDisabled: true,
// // prop: 'bomCode',
// // label: '当前配方'
// // },
// // ],
// [{ textarea: true, label: "备注", prop: "remark", elparams: { placeholder: "备注" } }],
// ],
// operations: [
// { name: "add", label: "保存", type: "primary", permission: "pms:firingStep:save", showOnEdit: false },
// { name: "update", label: "更新", type: "primary", permission: "pms:firingStep:update", showOnEdit: true },
// { name: "reset", label: "重置", type: "warning", showAlways: true },
// // { name: 'cancel', label: '取消', showAlways: true },
// ],
// },
// table: {
// extraParams: ["techId", "key"],
// props: [
// // { type: 'index', label: '序号' },
// // { prop: "createTime", label: "添加时间", filter: timeFilter },
// { prop: "name", label: "参数名称", isEditField: true },
// { prop: "code", label: "参数编码", isEditField: true },
// // { prop: "specifications", label: "规格", isEditField: true },
// { prop: "value", label: "参数值", isEditField: true },
// { prop: "valueFloor", label: "参数值下限", isEditField: true },
// { prop: "valueTop", label: "参数值上限", isEditField: true },
// { prop: "description", label: "描述", isEditField: true },
// {
// prop: "operations",
// name: "操作",
// fixed: "right",
// width: 120,
// subcomponent: TableOperaionComponent,
// options: [
// { name: "edit", permission: "pms:blenderStepParam:update" },
// { name: "delete", emitFull: true, permission: "pms:blenderStepParam:delete" },
// ],
// },
// ],
// data: [
// // TOOD 暂时用不到,但获取可以考虑把拉取接口数据的函数迁移到此文件(没有太大必要)
// ],
// },
// subDialog: {
// extraParam: "techId",
// 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: "valueTop", elparams: { placeholder: "请输入参数值上限" } },
// { input: true, label: "参数值下限", prop: "valueFloor", elparams: { placeholder: "请输入参数值下限" } },
// ],
// [
// { input: true, label: "参数值", prop: "value", elparams: { placeholder: "请输入参数值" } },
// {
// input: true,
// label: "描述",
// prop: "description",
// // rules: { required: true, message: "必填项不能为空", trigger: "blur" },
// elparams: { placeholder: "请输入描述" },
// },
// ],
// ],
// operations: [
// { name: "add", label: "保存", type: "primary", showOnEdit: false },
// { name: "update", label: "更新", type: "primary", showOnEdit: true },
// // { name: "update", label: "更新", type: "primary", permission: "pms:blenderStepParam:update", showOnEdit: true },
// // { name: 'reset', label: '重置', type: 'warning', showAlways: true },
// // { name: 'cancel', label: '取消', showAlways: true },
// ],
// },
// };
return {
// dialogConfigs,
tableConfig: {
table: null, // 此处可省略el-table 上的配置项
column: tableProps, // el-column-item 上的配置项
},
headFormConfigs: {
rules: null, // 名称是由 BaseSearchForm.vue 组件固定的
fields: headFormFields, // 名称是由 BaseSearchForm.vue 组件固定的
},
urls: {
// base: "/pms/equipmentTech",
page: "/pms/blenderOrder/pageView",
detach: "/pms/trans/blenderDeli",
pageIsPostApi: true, // 使用post接口来获取page数据极少用目前基本上只有工艺管理模块里在用
// subase: "/pms/equipmentTechParam",
// subpage: "/pms/equipmentTechParam/page",
// copyUrl: "/pms/equipmentTech/copy",
// more...
},
};
}

Просмотреть файл

@ -0,0 +1,51 @@
<template>
<ListViewWithHead
:table-config="tableConfig"
:head-config="headFormConfigs"
:dialog-configs="dialogConfigs"
:list-query-extra="[]"
/>
</template>
<script>
import initConfig from "./config";
import ListViewWithHead from "@/views/atomViews/ListViewWithHead.vue";
export default {
name: "BlenderView",
components: { ListViewWithHead },
provide() {
return {
urls: this.allUrls,
};
},
// urls: {
// type: Object,
// required: true,
// default: () => ({
// /** url **/ list: null,
// /** url **/ page: null,
// /** url **/ edit: null,
// /** url **/ delete: null,
// /** url **/ detail: null,
// /** url **/ export: null,
// /** url **/ import: null,
// /** url **/ other: null,
// }),
// },
data() {
const { tableConfig, headFormConfigs, urls, dialogConfigs } = initConfig.call(this);
return {
tableConfig,
headFormConfigs,
allUrls: urls,
dialogConfigs,
};
},
created() {},
mounted() {},
methods: {},
};
</script>
<style scoped></style>