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/lsw/modules/LswMaterialInboundForm.vue | 237 ++++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 144 insertions(+), 93 deletions(-)
diff --git a/src/views/lsw/modules/LswMaterialInboundForm.vue b/src/views/lsw/modules/LswMaterialInboundForm.vue
index 80c577d..eb3dc18 100644
--- a/src/views/lsw/modules/LswMaterialInboundForm.vue
+++ b/src/views/lsw/modules/LswMaterialInboundForm.vue
@@ -3,34 +3,45 @@
<j-form-container :disabled="formDisabled">
<a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
<a-row>
+ <a-form-model-item label="浜х嚎" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryId">
+ <a-row :gutter="24">
+ <a-col :span="24">
+ <a-form-item
+ :labelCol="labelCol"
+ :wrapperCol="wrapperCol"
+ label=""
+ >
+ <j-select-factory
+ :disabled="disabled"
+ v-model="model.factoryId"
+ :multi="true"
+ @back="backFactoryInfo"
+ :backProduction="true"
+ :treeProductOpera="true"
+ ></j-select-factory>
+ </a-form-item>
+ </a-col>
+ </a-row>
+ </a-form-model-item>
<a-col :span="12">
- <a-form-model-item label="鍒犻櫎鏍囪" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag">
- <a-input-number v-model="model.delFlag" placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" style="width: 100%" />
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="浜х嚎ID" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryId">
- <a-input v-model="model.factoryId" placeholder="璇疯緭鍏ヤ骇绾縄D" ></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="12">
- <a-form-model-item label="搴撳瓨鍦癐D" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="warehouseId">
- <a-input v-model="model.warehouseId" placeholder="璇疯緭鍏ュ簱瀛樺湴ID" ></a-input>
+ <a-form-model-item label="搴撳瓨鍦�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="warehouseId">
+ <j-search-select-tag v-model="model.warehouseId" placeholder="璇烽�夋嫨搴撳瓨鍦�"
+ dict="base_line_side_warehouse,warehouse_name,id"></j-search-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-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-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="batchNumber">
- <a-input v-model="model.batchNumber" placeholder="璇疯緭鍏ユ壒娆″彿" ></a-input>
+ <a-input v-model="model.batchNumber" placeholder="璇疯緭鍏ユ壒娆″彿"></a-input>
</a-form-model-item>
</a-col>
<a-col :span="12">
@@ -40,12 +51,13 @@
</a-col>
<a-col :span="12">
<a-form-model-item label="鎺ユ敹浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="receiver">
- <a-input v-model="model.receiver" placeholder="璇疯緭鍏ユ帴鏀朵汉" ></a-input>
+ <j-select-user-by-dep v-model="model.receiver" placeholder="璇疯緭鍏ユ帴鏀朵汉"></j-select-user-by-dep>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="鎺ユ敹鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="receiveTime">
- <j-date placeholder="璇烽�夋嫨鎺ユ敹鏃堕棿" v-model="model.receiveTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
+ <j-date placeholder="璇烽�夋嫨鎺ユ敹鏃堕棿" v-model="model.receiveTime" :show-time="true"
+ date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
</a-form-model-item>
</a-col>
</a-row>
@@ -56,89 +68,128 @@
<script>
- import { httpAction, getAction } from '@/api/manage'
- import { validateDuplicateValue } from '@/utils/util'
+import { httpAction, getAction } from '@/api/manage'
+import { validateDuplicateValue } from '@/utils/util'
+import JDate from '@/components/jeecg/JDate'
+import pick from 'lodash.pick'
+import moment from 'moment'
+import { duplicateCheck } from '@/api/api'//閲嶅鏍¢獙
+import JTreeDict from '@/components/jeecg/JTreeDict'//鍒嗙被瀛楀吀鏍戝舰涓嬫媺缁勪欢
+import JSelectFactory from '../../../../src/components/jeecgbiz/JSelectFactory.vue'
- export default {
- name: 'LswMaterialInboundForm',
- components: {
- },
- props: {
- //琛ㄥ崟绂佺敤
- disabled: {
- type: Boolean,
- default: false,
- required: false
+export default {
+ name: 'LswMaterialInboundForm',
+ components: {
+ JDate,
+ JTreeDict,
+ JSelectFactory
+ },
+ props: {
+ //琛ㄥ崟绂佺敤
+ disabled: {
+ type: Boolean,
+ default: false,
+ required: false
+ }
+ },
+ data() {
+ return {
+ model: {},
+ labelCol: {
+ xs: { span: 24 },
+ sm: { span: 5 }
+ },
+ wrapperCol: {
+ xs: { span: 24 },
+ sm: { span: 16 }
+ },
+ confirmLoading: false,
+ validatorRules: {
+ factoryId: [
+ { required: true, message: '浜х嚎鏄繀閫夐」', trigger: 'change' }
+ ],
+ warehouseId: [
+ { required: true, message: '搴撳瓨鍦版槸蹇呴�夐」', trigger: 'change' }
+ ],
+ materialNumber: [
+ { required: true, message: '鐗╂枡缂栫爜鏄繀閫夐」', trigger: 'change' }
+ ],
+ materialName: [
+ { required: true, message: '鐗╂枡鍚嶇О鏄繀閫夐」', trigger: 'change' }
+ ],
+ batchNumber: [
+ { required: true, message: '鎵规鍙锋槸蹇呴�夐」', trigger: 'change' }
+ ],
+ quantity: [
+ { required: true, message: '鍏ュ簱鏁伴噺鏄繀閫夐」', trigger: 'change' }
+ ],
+ receiver: [
+ { required: true, message: '鎺ユ敹浜烘槸蹇呴�夐」', trigger: 'change' }
+ ],
+ receiveTime: [
+ { required: true, message: '鎺ユ敹鏃堕棿鏄繀閫夐」', trigger: 'change' }
+ ]
+ },
+ url: {
+ add: '/lswmaterialinbound/lswMaterialInbound/add',
+ edit: '/lswmaterialinbound/lswMaterialInbound/edit',
+ queryById: '/lswmaterialinbound/lswMaterialInbound/queryById'
}
+ }
+ },
+ computed: {
+ formDisabled() {
+ return this.disabled
+ }
+ },
+ created() {
+ //澶囦唤model鍘熷鍊�
+ this.modelDefault = JSON.parse(JSON.stringify(this.model))
+ },
+ methods: {
+ backFactoryInfo(info) {
+ this.model.factoryIds = this.model.factoryId
+ this.nextFactoryOptions = info.map((item, index, arr) => {
+ let c = { label: item.text, value: item.value + '' }
+ return c
+ })
},
- data () {
- return {
- model:{
- },
- labelCol: {
- xs: { span: 24 },
- sm: { span: 5 },
- },
- wrapperCol: {
- xs: { span: 24 },
- sm: { span: 16 },
- },
- confirmLoading: false,
- validatorRules: {
- },
- url: {
- add: "/lswmaterialinbound/lswMaterialInbound/add",
- edit: "/lswmaterialinbound/lswMaterialInbound/edit",
- queryById: "/lswmaterialinbound/lswMaterialInbound/queryById"
- }
- }
+ add() {
+ this.edit(this.modelDefault)
},
- computed: {
- formDisabled(){
- return this.disabled
- },
+ edit(record) {
+ this.model = Object.assign({}, record)
+ this.visible = true
},
- 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