From 3c5205d857446563b3f89ae7432d76ba6d945a69 Mon Sep 17 00:00:00 2001 From: Houjie <714924425@qq.com> Date: 星期五, 12 九月 2025 18:17:58 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/views/base/modules/group/GroupModal.vue | 294 +++++++++++++++++++++++++++++----------------------------- 1 files changed, 149 insertions(+), 145 deletions(-) diff --git a/src/views/base/modules/group/GroupModal.vue b/src/views/base/modules/group/GroupModal.vue index a7d7e2d..4185b29 100644 --- a/src/views/base/modules/group/GroupModal.vue +++ b/src/views/base/modules/group/GroupModal.vue @@ -4,6 +4,7 @@ :width="800" :visible="visible" :confirmLoading="confirmLoading" + :maskClosable="false" @ok="handleOk" @cancel="handleCancel" cancelText="鍏抽棴" @@ -11,42 +12,37 @@ style="top:5%;height: 85%;overflow-y: hidden"> <a-spin :spinning="confirmLoading"> - <a-form-model ref="form" v-bind="layout" :model="model" :rules="validatorRules"> + <a-form-model ref="form" :model="model" :rules="validatorRules"> <a-form-model-item label="鐝粍缂栫爜" required prop="groupCode" :labelCol="labelCol" :wrapperCol="wrapperCol"> - <a-input v-model="model.groupCode" :disabled="roleDisabled" placeholder="璇疯緭鍏ョ彮缁勭紪鐮�"/> + <a-input v-model="model.groupCode" :disabled="roleDisabled" placeholder="璇疯緭鍏ョ彮缁勭紪鐮�" /> </a-form-model-item> <a-form-model-item label="鐝粍鍚嶇О" required prop="groupName" :labelCol="labelCol" :wrapperCol="wrapperCol"> - <a-input v-model="model.groupName" placeholder="璇疯緭鍏ョ彮缁勫悕绉�"/> + <a-input v-model="model.groupName" placeholder="璇疯緭鍏ョ彮缁勫悕绉�" /> </a-form-model-item> - <a-form-model-item label="鐝粍闀�" prop="groupManager" :labelCol="labelCol" :wrapperCol="wrapperCol"> + <a-form-model-item label="鐝粍闀�" prop="groupManager" :labelCol="labelCol" :wrapperCol="wrapperCol"> + <j-search-select-tag + type="list" + v-model="model.groupManager" + :trigger-change="true" + dict="sys_user,realname,id, del_flag='0' and status='1'" + placeholder="璇烽�夋嫨鐝粍闀�" + /> + </a-form-model-item> + <a-form-model-item label="浜х嚎" prop="factoryId" :labelCol="labelCol" :wrapperCol="wrapperCol"> + <j-dict-select-tag placeholder="璇烽�夋嫨浜х嚎" v-model="model.factoryId" + dictCode="base_factory,factory_name,id,del_flag=0 and factory_category='3'"></j-dict-select-tag> + </a-form-model-item> + <a-form-model-item label="鐝" prop="shiftId" :labelCol="labelCol" :wrapperCol="wrapperCol"> <j-dict-select-tag - type="list" - v-model="model.groupManager" - :trigger-change="true" - dictCode="sys_user,realname,id" - placeholder="璇烽�夋嫨鐝粍闀�" - /> - </a-form-model-item> - <a-form-model-item label="浜х嚎" prop="factoryId" :labelCol="labelCol" :wrapperCol="wrapperCol"> - <j-select-factory - v-model="model.factoryId" - :multi="true" - @back="backFactoryInfo" - :backProduction="true" - :treeProductOpera="true" - ></j-select-factory> - </a-form-model-item> - <a-form-model-item label="鐝" prop="shiftId" :labelCol="labelCol" :wrapperCol="wrapperCol"> - <j-dict-select-tag - type="list" - v-model="model.shiftId" - :trigger-change="true" - dictCode="base_shift,shift_name,id" - placeholder="璇烽�夋嫨鐝" - /> + type="list" + v-model="model.shiftId" + :trigger-change="true" + dictCode="base_shift,shift_name,id" + placeholder="璇烽�夋嫨鐝" + /> </a-form-model-item> <a-form-model-item label="澶囨敞" prop="remark" :labelCol="labelCol" :wrapperCol="wrapperCol"> - <a-textarea :rows="5" v-model="model.remark" placeholder="璇疯緭鍏ュ娉�"/> + <a-textarea :rows="5" v-model="model.remark" placeholder="璇疯緭鍏ュ娉�" /> </a-form-model-item> </a-form-model> </a-spin> @@ -54,130 +50,138 @@ </template> <script> - import {duplicateCheck } from '@/api/api' - import {postAction,requestPut} from '@/api/manage' - import JDictSelectTag from '@/components/dict/JDictSelectTag' - import JSelectFactory from '../../../../components/jeecgbiz/JSelectFactory' - export default { - name: "GroupModal", - components: { - JDictSelectTag, - JSelectFactory +import { duplicateCheck } from '@/api/api' +import { postAction, requestPut } from '@/api/manage' +import JDictSelectTag from '@/components/dict/JDictSelectTag' + +export default { + name: 'GroupModal', + components: { + JDictSelectTag }, - data () { - return { - title:"鎿嶄綔", - visible: false, - roleDisabled: false, - model: {}, - labelCol: { - xs: { span: 24 }, - sm: { span: 5 }, - }, - wrapperCol: { - xs: { span: 24 }, - sm: { span: 16 }, - }, - confirmLoading: false, - validatorRules:{ - groupName: [ - { required: true, message: '璇疯緭鍏ョ彮缁勫悕绉�!' }, - { min: 2, max: 30, message: '闀垮害鍦� 2 鍒� 30 涓瓧绗�', trigger: 'blur' } - ], - groupCode: [ - { required: true, message: '璇疯緭鍏ョ彮缁勫悕绉�!'}, - { min: 0, max: 64, message: '闀垮害涓嶈秴杩� 64 涓瓧绗�', trigger: 'blur' }, - { validator: this.validategroupCode} - ], - remark: [ - { min: 0, max: 126, message: '闀垮害涓嶈秴杩� 126 涓瓧绗�', trigger: 'blur' } - ] - }, - url: { - add: "/base/shiftGroup/add", - edit: "/base/shiftGroup/edit", - }, - nextFactoryOptions: [], - } + data() { + return { + title: '鎿嶄綔', + visible: false, + roleDisabled: false, + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 } + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 } + }, + confirmLoading: false, + validatorRules: { + groupName: [ + { required: true, message: '璇疯緭鍏ョ彮缁勫悕绉�!' }, + { min: 2, max: 30, message: '闀垮害鍦� 2 鍒� 30 涓瓧绗�', trigger: 'blur' } + ], + groupCode: [ + { required: true, message: '璇疯緭鍏ョ彮缁勫悕绉�!' }, + { min: 0, max: 64, message: '闀垮害涓嶈秴杩� 64 涓瓧绗�', trigger: 'blur' }, + { validator: this.validategroupCode } + ], + factoryId: [ + { required: true, message: '璇烽�夋嫨浜х嚎!' }, + ], + groupManager: [ + { required: true, message: '璇烽�夋嫨鐝粍闀�!' }, + ], + shiftId: [ + { required: true, message: '璇烽�夋嫨鐝彮娆�!' }, + ], + remark: [ + { min: 0, max: 126, message: '闀垮害涓嶈秴杩� 126 涓瓧绗�', trigger: 'blur' } + ] + }, + url: { + add: '/base/shiftGroup/add', + edit: '/base/shiftGroup/edit' + }, + nextFactoryOptions: [] + } + }, + created() { + //澶囦唤model鍘熷鍊� + this.modelDefault = JSON.parse(JSON.stringify(this.model)) + }, + methods: { + add() { + this.edit(this.modelDefault) }, - created () { - //澶囦唤model鍘熷鍊� - this.modelDefault = JSON.parse(JSON.stringify(this.model)); + edit(record) { + this.model = Object.assign({}, record) + this.visible = true }, - methods: { - add () { - this.edit(this.modelDefault); - }, - edit (record) { - this.model = Object.assign({}, record); - this.visible = true; - }, - close () { - this.$refs.form.clearValidate(); - this.$emit('close'); - this.visible = false; - }, - handleOk () { - const that = this; - // 瑙﹀彂琛ㄥ崟楠岃瘉 - this.$refs.form.validate(valid => { - if (valid) { - that.confirmLoading = true; - let obj; - if(!this.model.id){ - obj=postAction(this.url.add, this.model) - }else{ - obj=requestPut(this.url.edit, this.model, { - id: this.model.id - }) - } - obj.then((res)=>{ - if(res.success){ - that.$message.success(res.message); - that.$emit('ok'); - }else{ - that.$message.warning(res.message); - } - }).finally(() => { - that.confirmLoading = false; - that.close(); + close() { + this.$refs.form.clearValidate() + this.$emit('close') + this.visible = false + }, + handleOk() { + const that = this + // 瑙﹀彂琛ㄥ崟楠岃瘉 + this.$refs.form.validate(valid => { + if (valid) { + that.confirmLoading = true + let obj + if (!this.model.id) { + obj = postAction(this.url.add, this.model) + } else { + obj = requestPut(this.url.edit, this.model, { + id: this.model.id }) - }else{ - return false; + } + obj.then((res) => { + if (res.success) { + that.$message.success(res.message) + that.$emit('ok') + } else { + that.$message.warning(res.message) + } + }).finally(() => { + that.confirmLoading = false + that.close() + }) + } else { + return false + } + }) + }, + handleCancel() { + this.close() + }, + validategroupCode(rule, value, callback) { + if (/[\u4E00-\u9FA5]/g.test(value)) { + callback('鐝粍缂栫爜涓嶅彲杈撳叆姹夊瓧!') + } else { + let params = { + tableName: 'base_shift_group', + fieldName: 'group_code', + fieldVal: value, + dataId: this.model.id + } + duplicateCheck(params).then((res) => { + if (res.success) { + callback() + } else { + callback(res.message) } }) - }, - handleCancel () { - this.close() - }, - validategroupCode(rule, value, callback){ - if(/[\u4E00-\u9FA5]/g.test(value)){ - callback("鐝粍缂栫爜涓嶅彲杈撳叆姹夊瓧!"); - }else{ - let params = { - tableName: "base_shift_group", - fieldName: "group_code", - fieldVal: value, - dataId: this.model.id, - }; - duplicateCheck(params).then((res)=>{ - if(res.success){ - callback(); - }else{ - callback(res.message); - } - }); - } - }, - 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 - }) - }, + } + }, + 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 + }) } } +} </script> <style scoped> -- Gitblit v1.9.3