From 0e59e3ebb9f7e9f83c7f906f40d0a562a8a686e8 Mon Sep 17 00:00:00 2001
From: cuilei <ray_tsu1@163.com>
Date: 星期一, 18 八月 2025 17:07:08 +0800
Subject: [PATCH] 排产功能物料下拉框调整
---
src/views/mes/modules/MesProductionOrderForm.vue | 351 +++++++++++++++++++++++++++++++++-------------------------
1 files changed, 199 insertions(+), 152 deletions(-)
diff --git a/src/views/mes/modules/MesProductionOrderForm.vue b/src/views/mes/modules/MesProductionOrderForm.vue
index 904fb55..d21f065 100644
--- a/src/views/mes/modules/MesProductionOrderForm.vue
+++ b/src/views/mes/modules/MesProductionOrderForm.vue
@@ -1,91 +1,135 @@
<template>
<a-spin :spinning="confirmLoading">
+ <j-form-container disabled>
+ <a-form-model ref="form1" :model="model" :rules="validatorRules" slot="detail">
+ <a-row>
+ <a-col :span="8">
+ <a-form-model-item label="鐢熶骇璁㈠崟鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderCode">
+ <a-input v-model="model.orderCode" ></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁㈠崟绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderCategory">
+ <j-dict-select-tag v-model="model.orderCategory" dictCode="production_order_category"></j-dict-select-tag>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="鐗╂枡缂栧彿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialNumber">
+ <a-input v-model="model.materialNumber"></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="鐗╂枡鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialName">
+ <a-input v-model="model.materialName"></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁″垝寮�濮嬫棩鏈�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="planStart">
+ <j-date v-model="model.planStart" :show-time="true"
+ date-format="YYYY-MM-DD" style="width: 100%" />
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁″垝缁撴潫鏃ユ湡" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="planEnd">
+ <j-date v-model="model.planEnd" :show-time="true"
+ date-format="YYYY-MM-DD" style="width: 100%" />
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁㈠崟鏁伴噺" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderQuantity">
+ <a-input-number v-model="model.orderQuantity" style="width: 100%" />
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="鍩烘湰璁¢噺鍗曚綅" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="productionUnit">
+ <a-input v-model="model.productionUnit" />
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁㈠崟鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderStatus">
+ <a-input v-model="model.orderStatus" />
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁㈠崟鐘舵�佹弿杩�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderStatusName">
+ <a-input v-model="model.orderStatusName" />
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="浼樺厛绾�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="priority">
+ <a-input v-model="model.priority" />
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁″垝宸ヨ壓璺嚎" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="processRoute">
+ <a-input v-model="model.processRoute" placeholder="璇疯緭鍏ヨ鍒掑伐鑹鸿矾绾�"></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁″垝鐗╂枡娓呭崟" :labelCol="labelCol" :wrapperCol="wrapperCol"
+ prop="materialListCode">
+ <a-input v-model="model.materialListCode"></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="宸ュ巶缂栫爜" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryCode">
+ <a-input v-model="model.factoryCode"></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="宸ュ巶鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryName">
+ <a-input v-model="model.factoryName" ></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璋冨害鍛樼紪鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dispatcherCode">
+ <a-input v-model="model.dispatcherCode"></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璋冨害鍛樺悕绉�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dispatcherName">
+ <a-input v-model="model.dispatcherName" ></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁㈠崟鍒涘缓鏃ユ湡" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderCreateDate">
+ <a-input v-model="model.orderCreateDate"></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁㈠崟鏇存柊鏃ユ湡" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderUpdateDate">
+ <a-input v-model="model.orderUpdateDate" ></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁㈠崟鏇存柊鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderUpdateTime">
+ <a-input v-model="model.orderUpdateTime"></a-input>
+ </a-form-model-item>
+ </a-col>
+ <a-col :span="8">
+ <a-form-model-item label="璁㈠崟淇敼浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderUpdateUser">
+ <a-input v-model="model.orderUpdateUser" ></a-input>
+ </a-form-model-item>
+ </a-col>
+ </a-row>
+ </a-form-model>
+ </j-form-container>
<j-form-container :disabled="formDisabled">
<a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
<a-row>
<a-col :span="12">
- <a-form-model-item label="鐢熶骇璁㈠崟鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderCode">
- <a-input v-model="model.orderCode" placeholder="璇疯緭鍏ョ敓浜ц鍗曞彿" ></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="璁㈠崟绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderCategory">
- <j-dict-select-tag v-model="model.orderCategory" dictCode="orderCategory" placeholder="璇疯緭鍏ヨ鍗曠被鍨�" ></j-dict-select-tag>
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="鐗╂枡缂栧彿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialNumber">
- <a-input v-model="model.materialNumber" placeholder="璇疯緭鍏ョ墿鏂欑紪鍙�" ></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="鐗╂枡鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialName">
- <a-input v-model="model.materialName" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" ></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="璁″垝寮�濮嬫棩鏈�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="planStart">
- <j-date placeholder="璇烽�夋嫨璁″垝寮�濮嬫棩鏈�" v-model="model.planStart" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="璁″垝缁撴潫鏃ユ湡" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="planEnd">
- <j-date placeholder="璇烽�夋嫨璁″垝缁撴潫鏃ユ湡" v-model="model.planEnd" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="璁㈠崟鏁伴噺" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderQuantity">
- <a-input-number v-model="model.orderQuantity" placeholder="璇疯緭鍏ヨ鍗曟暟閲�" style="width: 100%" />
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="浜у搧鍗曚綅" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="productionUnit">
- <j-dict-select-tag type="list" v-model="model.productionUnit" dictCode="production_unit" placeholder="璇烽�夋嫨浜у搧鍗曚綅" />
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="璁㈠崟鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderStatus">
- <j-dict-select-tag type="list" v-model="model.orderStatus" dictCode="order_status" placeholder="璇烽�夋嫨璁㈠崟鐘舵��" />
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="浼樺厛绾�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="priority">
- <j-dict-select-tag type="list" v-model="model.priority" dictCode="priority" placeholder="璇烽�夋嫨浼樺厛绾�" />
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="璁″垝宸ヨ壓璺嚎" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="processRoute">
- <a-input v-model="model.processRoute" placeholder="璇疯緭鍏ヨ鍒掑伐鑹鸿矾绾�" ></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="璁″垝鐗╂枡娓呭崟" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialListCode">
- <a-input v-model="model.materialListCode" placeholder="璇疯緭鍏ヨ鍒掔墿鏂欐竻鍗�" ></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="宸ュ巶缂栫爜" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryCode">
- <a-input v-model="model.factoryCode" placeholder="璇疯緭鍏ュ伐鍘傜紪鐮�" ></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="宸ュ巶鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryName">
- <a-input v-model="model.factoryName" placeholder="璇疯緭鍏ュ伐鍘傚悕绉�" ></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
<a-form-model-item label="瀹㈡埛鍨嬪彿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="customerOrderModel">
- <a-input v-model="model.customerOrderModel" placeholder="璇疯緭鍏ュ鎴峰瀷鍙�" ></a-input>
+ <a-input v-model="model.customerOrderModel" placeholder="璇疯緭鍏ュ鎴峰瀷鍙�"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="瀹㈡埛鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="customer">
- <a-input v-model="model.customer" placeholder="璇疯緭鍏ュ鎴峰悕绉�" ></a-input>
+ <a-input v-model="model.customer" placeholder="璇疯緭鍏ュ鎴峰悕绉�"></a-input>
</a-form-model-item>
</a-col>
- <a-col :span="12">
- <a-form-model-item label="澶囨敞" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark">
- <a-input v-model="model.remark" placeholder="璇疯緭鍏ュ娉�" ></a-input>
+ <a-col :span="24">
+ <a-form-model-item label="澶囨敞" :labelCol="labelColLong" :wrapperCol="wrapperColLong" prop="remark">
+ <a-textarea v-model="model.remark" placeholder="璇疯緭鍏ュ娉�"></a-textarea>
</a-form-model-item>
</a-col>
</a-row>
@@ -96,89 +140,92 @@
<script>
- import { httpAction, getAction } from '@/api/manage'
- import { validateDuplicateValue } from '@/utils/util'
+import { httpAction } from '@/api/manage'
- export default {
- name: 'MesProductionOrderForm',
- components: {
- },
- props: {
- //琛ㄥ崟绂佺敤
- disabled: {
- type: Boolean,
- default: false,
- required: false
+export default {
+ name: 'MesProductionOrderForm',
+ components: {},
+ props: {
+ //琛ㄥ崟绂佺敤
+ disabled: {
+ type: Boolean,
+ default: false,
+ required: false
+ }
+ },
+ data() {
+ return {
+ model: {},
+ labelCol: {
+ xs: { span: 24 },
+ sm: { span: 6 }
+ },
+ wrapperCol: {
+ xs: { span: 24 },
+ sm: { span: 16 }
+ },
+ labelColLong: {
+ xs: { span: 24 },
+ sm: { span: 3 }
+ },
+ wrapperColLong: {
+ xs: { span: 24 },
+ sm: { span: 20 }
+ },
+ confirmLoading: false,
+ validatorRules: {},
+ url: {
+ edit: '/mes/productionOrder/edit',
+ queryById: '/mes/productionOrder/queryById'
}
+ }
+ },
+ computed: {
+ formDisabled() {
+ return this.disabled
+ }
+ },
+ created() {
+ //澶囦唤model鍘熷鍊�
+ this.modelDefault = JSON.parse(JSON.stringify(this.model))
+ },
+ methods: {
+ add() {
+ this.edit(this.modelDefault)
},
- data () {
- return {
- model:{
- },
- labelCol: {
- xs: { span: 24 },
- sm: { span: 5 },
- },
- wrapperCol: {
- xs: { span: 24 },
- sm: { span: 16 },
- },
- confirmLoading: false,
- validatorRules: {
- },
- url: {
- add: "/mesproductionwork/mesProductionOrder/add",
- edit: "/mesproductionwork/mesProductionOrder/edit",
- queryById: "/mesproductionwork/mesProductionOrder/queryById"
- }
- }
+ edit(record) {
+ this.model = Object.assign({}, record)
+ this.visible = true
},
- computed: {
- formDisabled(){
- return this.disabled
- },
- },
- created () {
- //澶囦唤model鍘熷鍊�
- this.modelDefault = JSON.parse(JSON.stringify(this.model));
- },
- methods: {
- add () {
- this.edit(this.modelDefault);
- },
- edit (record) {
- this.model = Object.assign({}, record);
- this.visible = true;
- },
- submitForm () {
- const that = this;
- // 瑙﹀彂琛ㄥ崟楠岃瘉
- this.$refs.form.validate(valid => {
- if (valid) {
- that.confirmLoading = true;
- let httpurl = '';
- let method = '';
- if(!this.model.id){
- httpurl+=this.url.add;
- method = 'post';
- }else{
- httpurl+=this.url.edit;
- method = 'put';
- }
- httpAction(httpurl,this.model,method).then((res)=>{
- if(res.success){
- that.$message.success(res.message);
- that.$emit('ok');
- }else{
- that.$message.warning(res.message);
- }
- }).finally(() => {
- that.confirmLoading = false;
- })
+ submitForm() {
+ const that = this
+ // 瑙﹀彂琛ㄥ崟楠岃瘉
+ this.$refs.form.validate(valid => {
+ if (valid) {
+ that.confirmLoading = true
+ let httpurl = ''
+ let method = ''
+ if (!this.model.id) {
+ httpurl += this.url.add
+ method = 'post'
+ } else {
+ httpurl += this.url.edit
+ method = 'put'
}
+ httpAction(httpurl, this.model, method).then((res) => {
+ if (res.success) {
+ that.$message.success(res.message)
+ that.$emit('ok')
+ } else {
+ that.$message.warning(res.message)
+ }
+ }).finally(() => {
+ that.confirmLoading = false
+ })
+ }
- })
- },
+ })
}
}
+}
</script>
\ No newline at end of file
--
Gitblit v1.9.3