From 6f1203d1cf895efc473fade3ab049fc30d92c618 Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期三, 26 三月 2025 16:48:23 +0800 Subject: [PATCH] 优化 --- admin/src/components/business/OperaPlatformGroupWindow.vue | 101 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 97 insertions(+), 4 deletions(-) diff --git a/admin/src/components/business/OperaPlatformGroupWindow.vue b/admin/src/components/business/OperaPlatformGroupWindow.vue index 155a070..5892ad5 100644 --- a/admin/src/components/business/OperaPlatformGroupWindow.vue +++ b/admin/src/components/business/OperaPlatformGroupWindow.vue @@ -17,6 +17,18 @@ <el-radio :label="2" >甯傚叕鍙稿嵏璐�</el-radio> </el-radio-group> </el-form-item> + <el-form-item label="閫夋嫨绛惧埌閫氱煡浜哄憳" prop="signInNoticeUsers"> + <el-select v-model="form.signInNoticeUsers" filterable multiple clearable @change="changeSignInNoticeUsers" placeholder="璇烽�夋嫨"> + <el-option v-for="item in memberList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> + <el-form-item label="閫夋嫨浣滀笟鏈畬鎴愰�氱煡浜哄憳" prop="unFinishNoticeUsers"> + <el-select v-model="form.unFinishNoticeUsers" filterable multiple clearable @change="changeUnFinishNoticeUsers" placeholder="璇烽�夋嫨"> + <el-option v-for="item in memberList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> <el-form-item label="宸ヤ綔鏃堕棿锛�" prop="startTime"> <div style=" display: inline-block"> <el-time-picker @@ -49,7 +61,7 @@ import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' import { numRuleGtZero } from '@/utils/form' -import { allList } from '@/api/platform/platformGroup' +import { allList } from '@/api/business/member' import { getList as deviceList } from '@/api/business/device' export default { name: 'OperaPlatformWindow', @@ -67,13 +79,18 @@ type: 0, startTime: '', endTime: '', - waitCallTime: '' + waitCallTime: '', + signInNoticeUsers: [], + unFinishNoticeUsers: [] }, // 楠岃瘉瑙勫垯 rules: { name: [{ required: true, message: '璇疯緭鍏ュ垎缁勫悕绉� ', trigger: 'blur' }], - type: [{ required: true, message: '璇烽�夋嫨涓氬姟绫诲瀷 '}] - } + type: [{ required: true, message: '璇烽�夋嫨涓氬姟绫诲瀷 '}], + signInNoticeUsers: [{ required: true, message: '璇烽�夋嫨绛惧埌閫氱煡浜哄憳', trigger: 'blur' }], + unFinishNoticeUsers: [{ required: true, message: '璇烽�夋嫨浣滀笟鏈畬鎴愰�氱煡浜哄憳', trigger: 'blur' }] + }, + memberList: [] } }, created () { @@ -83,6 +100,75 @@ }) }, methods: { + changeSignInNoticeUsers(e) { + if (this.form.signInNoticeUsers.length > 5) { + this.form.signInNoticeUsers.splice(this.form.signInNoticeUsers.length - 1, 1) + this.$message.warning('鏈�澶氬彧鑳介�夋嫨浜斾釜浜哄憳锛�') + } + }, + changeUnFinishNoticeUsers(e) { + if (this.form.unFinishNoticeUsers.length > 5) { + this.form.unFinishNoticeUsers.splice(this.form.unFinishNoticeUsers.length - 1, 1) + this.$message.warning('鏈�澶氬彧鑳介�夋嫨浜斾釜浜哄憳锛�') + } + }, + // 纭鏂板缓 + __confirmCreate () { + this.$refs.form.validate((valid) => { + if (!valid) { + return + } + let obj = JSON.parse(JSON.stringify(this.form)) + obj.signInNoticeUsers = obj.signInNoticeUsers.join(',') + obj.unFinishNoticeUsers = obj.unFinishNoticeUsers.join(',') + // 璋冪敤鏂板缓鎺ュ彛 + this.isWorking = true + this.api.create(obj) + .then(() => { + this.visible = false + this.$tip.apiSuccess('鏂板缓鎴愬姛') + this.$emit('success') + }) + .catch(e => { + // this.$tip.apiFailed(e) + }) + .finally(() => { + this.isWorking = false + }) + }) + }, + __confirmEdit () { + this.$refs.form.validate((valid) => { + if (!valid) { + return + } + let obj = JSON.parse(JSON.stringify(this.form)) + obj.signInNoticeUsers = obj.signInNoticeUsers.join(',') + obj.unFinishNoticeUsers = obj.unFinishNoticeUsers.join(',') + // 璋冪敤鏂板缓鎺ュ彛 + this.isWorking = true + this.api.updateById(obj) + .then(() => { + this.visible = false + this.$tip.apiSuccess('淇敼鎴愬姛') + this.$emit('success') + }) + .catch(e => { + // this.$tip.apiFailed(e) + }) + .finally(() => { + this.isWorking = false + }) + }) + }, + loadMember() { + allList({ + type: 2, + companyType: 1 + }).then(res => { + this.memberList = res + }) + }, seleTime(){}, /** * 鎵撳紑绐楀彛 @@ -91,6 +177,7 @@ */ open (title, target) { this.title = title + this.loadMember() this.visible = true // 鏂板缓 if (target == null) { @@ -105,6 +192,12 @@ for (const key in this.form) { this.form[key] = target[key] } + if (this.form.signInNoticeUsers) { + this.form.signInNoticeUsers = this.form.signInNoticeUsers.split(',').map(item => Number(item)) + } + if (this.form.unFinishNoticeUsers) { + this.form.unFinishNoticeUsers = this.form.unFinishNoticeUsers.split(',').map(item => Number(item)) + } }) } } -- Gitblit v1.9.3