| | |
| | | <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> |
| | |
| | | |
| | | <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> |