Commit ca87c806 authored by 赵汉亭's avatar 赵汉亭

工单样式修改

parent e150de93
<template> <template>
<div class="form-page" v-loading="loading"> <div v-loading="loading">
<PageTitle> <PageTitle>
{{ pageTitle }} {{ pageTitle }}
<!-- 申请按钮显示 --> <!-- 申请按钮显示 -->
<template slot="buttons" v-if="mode == 'apply' "> <template slot="buttons" v-if="mode == 'apply'">
<el-button size="mini" @click="resetForm">重置</el-button> <el-button size="mini" @click="resetForm">重置</el-button>
<el-button size="mini" type="primary" @click="saveForm" >提交</el-button> <el-button size="mini" type="primary" @click="saveForm">提交</el-button>
</template> </template>
<!-- 修改 按钮显示 --> <!-- 修改 按钮显示 -->
<template slot="buttons" v-if="mode == 'edit' "> <template slot="buttons" v-if="mode == 'edit'">
<el-button size="mini" type="primary" @click="saveForm">提交</el-button> <el-button size="mini" type="primary" @click="saveForm">提交</el-button>
</template> </template>
</PageTitle> </PageTitle>
<PageWrapper> <PageWrapper>
<el-form <el-form
class="page-form"
:model="form" :model="form"
ref="form" ref="form"
size="small" size="small"
...@@ -23,7 +24,7 @@ ...@@ -23,7 +24,7 @@
label-width="8em" label-width="8em"
> >
<el-row> <el-row>
<el-col :md="8" :xs="12"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="申请单编码" prop="workorderCode"> <el-form-item label="申请单编码" prop="workorderCode">
<el-input <el-input
disabled disabled
...@@ -32,39 +33,60 @@ ...@@ -32,39 +33,60 @@
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="工单名称" prop="workorderName"> <el-form-item label="工单名称" prop="workorderName">
<el-input v-model="form.workorderName" placeholder="请输入工单名称" /> <el-input
v-model="form.workorderName"
placeholder="请输入工单名称"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="来源类型" prop="orderSource"> <el-form-item label="来源类型" prop="orderSource">
<el-radio-group v-model="form.orderSource" disabled v-if="optType=='view'"> <el-radio-group
v-model="form.orderSource"
disabled
v-if="optType == 'view'"
>
<el-radio <el-radio
v-for="dict in dict.type.mes_workorder_sourcetype" v-for="dict in dict.type.mes_workorder_sourcetype"
:key="dict.value" :key="dict.value"
:label="dict.value" :label="dict.value"
>{{dict.label}}</el-radio> >{{ dict.label }}</el-radio
>
</el-radio-group> </el-radio-group>
<el-radio-group v-model="form.orderSource" v-else> <el-radio-group v-model="form.orderSource" v-else>
<el-radio <el-radio
v-for="dict in dict.type.mes_workorder_sourcetype" v-for="dict in dict.type.mes_workorder_sourcetype"
:key="dict.value" :key="dict.value"
:label="dict.value" :label="dict.value"
>{{dict.label}}</el-radio> >{{ dict.label }}</el-radio
>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row> <el-col
<el-col :span="8" v-if="form.orderSource == 'ORDER'"> :lg="6"
:md="8"
:sm="12"
:xs="12"
v-if="form.orderSource == 'ORDER'"
>
<el-form-item label="订单编号" prop="sourceCode"> <el-form-item label="订单编号" prop="sourceCode">
<el-input v-model="form.sourceCode" placeholder="请输入订单编号" /> <el-input
v-model="form.sourceCode"
placeholder="请输入订单编号"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="单据状态" prop="status"> <el-form-item label="单据状态" prop="status">
<el-select v-model="form.status" disabled placeholder="请选择单据状态"> <el-select
v-model="form.status"
disabled
placeholder="请选择单据状态"
>
<el-option <el-option
v-for="dict in dict.type.mes_order_status" v-for="dict in dict.type.mes_order_status"
:key="dict.value" :key="dict.value"
...@@ -74,7 +96,7 @@ ...@@ -74,7 +96,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col :span="8"> <!-- <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="单据状态" prop="status"> <el-form-item label="单据状态" prop="status">
<el-select v-model="form.status" disabled> <el-select v-model="form.status" disabled>
<el-option <el-option
...@@ -87,7 +109,7 @@ ...@@ -87,7 +109,7 @@
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
<el-col :span="8"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="工单类型" prop="workorderType"> <el-form-item label="工单类型" prop="workorderType">
<el-select v-model="form.workorderType" placeholder="请选择类型"> <el-select v-model="form.workorderType" placeholder="请选择类型">
<el-option <el-option
...@@ -99,9 +121,7 @@ ...@@ -99,9 +121,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-row>
<el-col :md="8" :xs="12" style="height: 50.5px">
<el-form-item label="工艺名称" prop="routeId"> <el-form-item label="工艺名称" prop="routeId">
<el-input <el-input
v-model="form.routeName" v-model="form.routeName"
...@@ -114,93 +134,157 @@ ...@@ -114,93 +134,157 @@
@click="$refs['RoutesProcessSelectRef'].showFlag = true" @click="$refs['RoutesProcessSelectRef'].showFlag = true"
></el-button> ></el-button>
</el-input> </el-input>
<RoutesProcessSelect
ref="RoutesProcessSelectRef"
@onSelected="onRoutesProcessSelect"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-col :span="8">
<el-form-item label="产品编号" prop="productCode"> <el-form-item label="产品编号" prop="productCode">
<el-input v-model="form.productCode" placeholder="请选择产品" > <el-input v-model="form.productCode" placeholder="请选择产品">
<el-button slot="append" @click="handleSelectProduct" icon="el-icon-search"></el-button> <el-button
slot="append"
@click="handleSelectProduct"
icon="el-icon-search"
></el-button>
</el-input> </el-input>
<ItemSelect ref="itemSelect" @onSelected="onItemSelected" > </ItemSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="产品名称" prop="productName"> <el-form-item label="产品名称" prop="productName">
<el-input v-model="form.productName" placeholder="请选择产品" disabled/> <el-input
v-model="form.productName"
placeholder="请选择产品"
disabled
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="规格型号" prop="productSpc"> <el-form-item label="规格型号" prop="productSpc">
<el-input v-model="form.productSpc" placeholder="请选择产品" disabled/> <el-input
v-model="form.productSpc"
placeholder="请选择产品"
disabled
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="单位" prop="unitOfMeasure"> <el-form-item label="单位" prop="unitOfMeasure">
<el-input v-model="form.unitOfMeasure" placeholder="请选择产品" disabled/> <el-input
v-model="form.unitOfMeasure"
placeholder="请选择产品"
disabled
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="工单数量" prop="quantity"> <el-form-item label="工单数量" prop="quantity">
<el-input-number :min="1" v-model="form.quantity" placeholder="请输入生产数量" /> <el-input-number
:min="1"
v-model="form.quantity"
placeholder="请输入生产数量"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="需求日期" prop="requestDate"> <el-form-item label="需求日期" prop="requestDate">
<el-date-picker clearable <el-date-picker
clearable
v-model="form.requestDate" v-model="form.requestDate"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="请选择需求日期"> placeholder="请选择需求日期"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="批次号" prop="batchCode"> <el-form-item label="批次号" prop="batchCode">
<el-input v-model="form.batchCode" placeholder="请输入批次号" /> <el-input v-model="form.batchCode" placeholder="请输入批次号" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-row v-if="form.orderSource == 'ORDER'"> <!-- <el-row v-if="form.orderSource == 'ORDER'"> -->
<el-col :span="8"> <el-col
:lg="6"
:md="8"
:sm="12"
:xs="12"
v-if="form.orderSource == 'ORDER'"
>
<el-form-item label="客户编码" prop="clientCode"> <el-form-item label="客户编码" prop="clientCode">
<el-input v-model="form.clientCode" placeholder="请选择客户" > <el-input v-model="form.clientCode" placeholder="请选择客户">
<el-button slot="append" @click="handleSelectClient" icon="el-icon-search"></el-button> <el-button
slot="append"
@click="handleSelectClient"
icon="el-icon-search"
></el-button>
</el-input> </el-input>
<ClientSelect ref="clientSelect" @onSelected="onClientSelected" > </ClientSelect> <ClientSelect ref="clientSelect" @onSelected="onClientSelected">
</ClientSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col
:lg="6"
:md="8"
:sm="12"
:xs="12"
v-if="form.orderSource == 'ORDER'"
>
<el-form-item label="客户名称" prop="clientName"> <el-form-item label="客户名称" prop="clientName">
<el-input v-model="form.clientName" readonly="readonly" placeholder="请输入客户名称" /> <el-input
v-model="form.clientName"
readonly="readonly"
placeholder="请输入客户名称"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col></el-col>
</el-row> <el-col
<el-row v-if="form.workorderType == 'OUTSOURCE' || form.workorderType == 'PURCHASE'"> :lg="6"
<el-col :span="8"> :md="8"
:sm="12"
:xs="12"
v-if="
form.workorderType == 'OUTSOURCE' ||
form.workorderType == 'PURCHASE'
"
>
<el-form-item label="供应商编码" prop="vendorCode"> <el-form-item label="供应商编码" prop="vendorCode">
<el-input v-model="form.vendorCode" placeholder="请选择供应商" > <el-input v-model="form.vendorCode" placeholder="请选择供应商">
<el-button slot="append" @click="handleSelectVendor" icon="el-icon-search"></el-button> <el-button
slot="append"
@click="handleSelectVendor"
icon="el-icon-search"
></el-button>
</el-input> </el-input>
<VendorSelect ref="vendorSelect" @onSelected="onVendorSelected" /> <VendorSelect ref="vendorSelect" @onSelected="onVendorSelected" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col
:lg="6"
:md="8"
:sm="12"
:xs="12"
v-if="
form.workorderType == 'OUTSOURCE' ||
form.workorderType == 'PURCHASE'
"
>
<el-form-item label="供应商名称" prop="vendorName"> <el-form-item label="供应商名称" prop="vendorName">
<el-input v-model="form.vendorName" readonly="readonly" placeholder="请选择供应商" /> <el-input
v-model="form.vendorName"
readonly="readonly"
placeholder="请选择供应商"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col></el-col>
</el-row> </el-row>
<el-row>
<el-col :span="8"> <el-col :lg="6" :md="8" :sm="12" :xs="12">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" /> <el-input
v-model="form.remark"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -215,28 +299,47 @@ ...@@ -215,28 +299,47 @@
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</PageWrapper> </PageWrapper>
<RoutesProcessSelect
ref="RoutesProcessSelectRef"
@onSelected="onRoutesProcessSelect"
/>
<ItemSelect ref="itemSelect" @onSelected="onItemSelected"> </ItemSelect>
</div> </div>
</template> </template>
<script> <script>
import {genCode} from "@/api/system/autocode/rule";; import { genCode } from "@/api/system/autocode/rule";
import ProogingBom from "./components/ProogingBom.vue"; import ProogingBom from "./components/ProogingBom.vue";
import ProogingProcess from "./components/ProogingProcess.vue"; import ProogingProcess from "./components/ProogingProcess.vue";
import ItemSelect from "@/components/itemSelect/single.vue"; import ItemSelect from "@/components/itemSelect/single.vue";
import ClientSelect from "@/components/clientSelect/single.vue"; import ClientSelect from "@/components/clientSelect/single.vue";
import VendorSelect from "@/components/vendorSelect/single.vue"; import VendorSelect from "@/components/vendorSelect/single.vue";
import RoutesProcessSelect from "@/components/routesProcessSelect/index.vue"; import RoutesProcessSelect from "@/components/routesProcessSelect/index.vue";
import { listRouteprocess } from "@/api/mes/pro/routeprocess"; import { listRouteprocess } from "@/api/mes/pro/routeprocess";
import tabPlugins from "@/plugins/tab"; import tabPlugins from "@/plugins/tab";
import { import {
addPrototypeRequest, addPrototypeRequest,
getPrototypeRequest, getPrototypeRequest,
updatePrototypeRequest, updatePrototypeRequest,
} from "@/api/mes/pro/prototypeRequest"; } from "@/api/mes/pro/prototypeRequest";
import { listWorkorder, getWorkorder, delWorkorder, addWorkorder, updateWorkorder ,dofinish} from "@/api/mes/pro/workorder"; import {
listWorkorder,
getWorkorder,
delWorkorder,
addWorkorder,
updateWorkorder,
dofinish,
} from "@/api/mes/pro/workorder";
export default { export default {
components: { ProogingProcess,ProogingBom, ItemSelect, RoutesProcessSelect ,ClientSelect,VendorSelect}, components: {
dicts: ['mes_order_status','mes_workorder_sourcetype','mes_workorder_type'], ProogingProcess,
ProogingBom,
ItemSelect,
RoutesProcessSelect,
ClientSelect,
VendorSelect,
},
dicts: ["mes_order_status", "mes_workorder_sourcetype", "mes_workorder_type"],
provide() { provide() {
return { return {
mode: this.mode, mode: this.mode,
...@@ -244,11 +347,9 @@ export default { ...@@ -244,11 +347,9 @@ export default {
}, },
data() { data() {
return { return {
loading: false, loading: false,
optType: undefined, optType: undefined,
bomList: [], bomList: [],
// 表单参数 // 表单参数
form: { form: {
...@@ -291,38 +392,37 @@ export default { ...@@ -291,38 +392,37 @@ export default {
parentId: "", parentId: "",
ancestors: "", ancestors: "",
status: "PREPARE", status: "PREPARE",
}, },
// 表单校验 // 表单校验
rules: { rules: {
workorderCode: [ workorderCode: [
{ required: true, message: "工单编码不能为空", trigger: "blur" } { required: true, message: "工单编码不能为空", trigger: "blur" },
], ],
workorderName: [ workorderName: [
{ required: true, message: "工单名称不能为空", trigger: "blur" } { required: true, message: "工单名称不能为空", trigger: "blur" },
], ],
workorderType: [ workorderType: [
{ required: true, message: "请选择生产工单类型", trigger: "blur" } { required: true, message: "请选择生产工单类型", trigger: "blur" },
], ],
orderSource: [ orderSource: [
{ required: true, message: "来源类型不能为空", trigger: "blur" } { required: true, message: "来源类型不能为空", trigger: "blur" },
], ],
productId: [ productId: [
{ required: true, message: "产品不能为空", trigger: "blur" } { required: true, message: "产品不能为空", trigger: "blur" },
], ],
productCode: [ productCode: [
{ required: true, message: "产品编号不能为空", trigger: "blur" } { required: true, message: "产品编号不能为空", trigger: "blur" },
], ],
productName: [ productName: [
{ required: true, message: "产品名称不能为空", trigger: "blur" } { required: true, message: "产品名称不能为空", trigger: "blur" },
], ],
quantity: [ quantity: [
{ required: true, message: "生产数量不能为空", trigger: "blur" } { required: true, message: "生产数量不能为空", trigger: "blur" },
], ],
requestDate: [ requestDate: [
{ required: true, message: "需求日期不能为空", trigger: "blur" } { required: true, message: "需求日期不能为空", trigger: "blur" },
], ],
} },
}; };
}, },
computed: { computed: {
...@@ -349,14 +449,20 @@ export default { ...@@ -349,14 +449,20 @@ export default {
}, },
methods: { methods: {
/** 查询生产工单下拉树结构 */ /** 查询生产工单下拉树结构 */
getTreeselect() { getTreeselect() {
listWorkorder().then(response => { listWorkorder().then((response) => {
this.workorderOptions = []; this.workorderOptions = [];
const data = { workorderId: 0, workorderName: '顶级节点', children: [] }; const data = {
data.children = this.handleTree(response.data, "workorderId", "parentId"); workorderId: 0,
workorderName: "顶级节点",
children: [],
};
data.children = this.handleTree(
response.data,
"workorderId",
"parentId"
);
this.workorderOptions.push(data); this.workorderOptions.push(data);
}); });
}, },
...@@ -384,10 +490,9 @@ export default { ...@@ -384,10 +490,9 @@ export default {
// this.optType="add"; // this.optType="add";
// }, // },
//物料选择弹出框 //物料选择弹出框
onItemSelected(obj){ onItemSelected(obj) {
if(obj != undefined && obj != null){ if (obj != undefined && obj != null) {
this.form.productId = obj.itemId; this.form.productId = obj.itemId;
this.form.productCode = obj.itemCode; this.form.productCode = obj.itemCode;
this.form.productName = obj.itemName; this.form.productName = obj.itemName;
...@@ -397,30 +502,30 @@ export default { ...@@ -397,30 +502,30 @@ export default {
}, },
//客户选择弹出框 //客户选择弹出框
onClientSelected(row){ onClientSelected(row) {
if(row != undefined && row != null){ if (row != undefined && row != null) {
this.form.clientId = row.clientId; this.form.clientId = row.clientId;
this.form.clientCode = row.clientCode; this.form.clientCode = row.clientCode;
this.form.clientName = row.clientName; this.form.clientName = row.clientName;
} }
}, },
//供应商选择弹出框 //供应商选择弹出框
onVendorSelected(row){ onVendorSelected(row) {
debugger; debugger;
if(row != undefined && row != null){ if (row != undefined && row != null) {
this.form.vendorId = row.vendorId; this.form.vendorId = row.vendorId;
this.form.vendorCode = row.vendorCode; this.form.vendorCode = row.vendorCode;
this.form.vendorName = row.vendorName; this.form.vendorName = row.vendorName;
} }
}, },
handleSelectProduct(){ handleSelectProduct() {
this.$refs.itemSelect.showFlag = true; this.$refs.itemSelect.showFlag = true;
}, },
handleSelectClient(){ handleSelectClient() {
this.$refs.clientSelect.showFlag = true; this.$refs.clientSelect.showFlag = true;
}, },
handleSelectVendor(){ handleSelectVendor() {
this.$refs.vendorSelect.showFlag = true; this.$refs.vendorSelect.showFlag = true;
}, },
/** 根据 id 获取页面数据 */ /** 根据 id 获取页面数据 */
...@@ -462,7 +567,6 @@ export default { ...@@ -462,7 +567,6 @@ export default {
// }, // },
//物料选择弹出框 //物料选择弹出框
onRoutesProcessSelect(row) { onRoutesProcessSelect(row) {
if (row != undefined && row != null) { if (row != undefined && row != null) {
this.form.routeId = row.routeId; this.form.routeId = row.routeId;
...@@ -532,7 +636,7 @@ export default { ...@@ -532,7 +636,7 @@ export default {
workorderCode: null, workorderCode: null,
workorderName: null, workorderName: null,
routeName: null, routeName: null,
workorderType: 'SELF', workorderType: "SELF",
orderSource: null, orderSource: null,
sourceCode: null, sourceCode: null,
productId: null, productId: null,
...@@ -557,14 +661,13 @@ export default { ...@@ -557,14 +661,13 @@ export default {
createBy: null, createBy: null,
createTime: null, createTime: null,
updateBy: null, updateBy: null,
updateTime: null updateTime: null,
}; };
this.$refs["ProogingBomRef"].resetState(); this.$refs["ProogingBomRef"].resetState();
this.$refs["ProogingProcessRef"].resetState(); this.$refs["ProogingProcessRef"].resetState();
this.gCode(); this.gCode();
}, },
},
}
}; };
</script> </script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment