| <template> | 
|   <GlobalWindow | 
|     :title="title" | 
|     width="50%" | 
|     :visible.sync="visible" | 
|     :confirm-working="isWorking" | 
|     @confirm="confirm" | 
|   > | 
|     <el-form :model="form" ref="form" :rules="rules"> | 
|       <el-form-item label="分组名称:" prop="name"> | 
|         <el-input v-model="form.name" placeholder="请输入分组名称" v-trim/> | 
|       </el-form-item> | 
|       <el-form-item label="是否虚拟月台组" prop="isVirtual" > | 
|         <el-radio-group v-model="form.isVirtual" @change="chagneVirtural"> | 
|           <el-radio :label="0">否</el-radio> | 
|           <el-radio :label="1">是</el-radio> | 
|         </el-radio-group> | 
|       </el-form-item> | 
|       <el-form-item label="业务类型:" prop="type"> | 
|         <el-radio-group v-model="form.type" > | 
|           <el-radio  :label="0"  >安泰物流卸货</el-radio> | 
|           <el-radio  :label="1"  >安泰物流装货</el-radio> | 
|           <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> | 
|       <div style=" display: inline-block"> | 
|       <el-form-item label="工作时间:" prop="startTime"  style=" display: inline-block"> | 
|           <el-time-picker | 
|               style="width: 150px;display: inline-block" | 
|               v-model="form.startTime" | 
|               format="HH:mm" | 
|               value-format="HH:mm" | 
|               placeholder="请选择开始时间" | 
|           > </el-time-picker> | 
|         </el-form-item>至 | 
|         <el-form-item label="" prop="endTime"  style=" display: inline-block"> | 
|           <el-time-picker | 
|               style="width: 150px;display: inline-block" | 
|               v-model="form.endTime" | 
|               format="HH:mm" | 
|               value-format="HH:mm" | 
|               placeholder="请选择结束时间" | 
|           > | 
|           </el-time-picker> | 
|       </el-form-item> | 
|         </div> | 
|       <el-form-item label="是否自动叫号" prop="autoCall"> | 
|         <el-radio-group v-model="form.autoCall"> | 
|           <el-radio :label="0" :value="0">否</el-radio> | 
|           <el-radio :label="1" :value="1">是</el-radio> | 
|         </el-radio-group> | 
|       </el-form-item> | 
|       <div> | 
|       <el-form-item label="自动叫号时间:" prop="autoCallStartTime"  style=" display: inline-block"> | 
|           <el-time-picker | 
|               style="width: 150px;display: inline-block" | 
|               v-model="form.autoCallStartTime" | 
|               format="HH:mm" | 
|               value-format="HH:mm" | 
|               placeholder="请选择开始时间" | 
|           > | 
|           </el-time-picker> </el-form-item>至 | 
|         <el-form-item label="" prop="autoCallEndTime"  style=" display: inline-block"> | 
|           <el-time-picker | 
|               style="width: 150px;display: inline-block" | 
|               v-model="form.autoCallEndTime" | 
|               format="HH:mm" | 
|               value-format="HH:mm" | 
|               placeholder="请选择结束时间" | 
|           > | 
|           </el-time-picker> | 
|        </el-form-item> | 
|       </div> | 
|       <el-form-item label="叫号等待时间(分钟):" prop="waitCallTime"> | 
|         <el-input type="number"  v-model="form.waitCallTime" placeholder="请输入叫号等待时间(分钟)" v-trim/> | 
|       </el-form-item> | 
|     </el-form> | 
|   </GlobalWindow> | 
| </template> | 
|   | 
| <script> | 
| import BaseOpera from '@/components/base/BaseOpera' | 
| import GlobalWindow from '@/components/common/GlobalWindow' | 
| import { numRuleGtZero } from '@/utils/form' | 
| import { allList } from '@/api/business/member' | 
| import { getList as deviceList } from '@/api/business/device' | 
| export default { | 
|   name: 'OperaPlatformWindow', | 
|   extends: BaseOpera, | 
|   components: { GlobalWindow }, | 
|   data () { | 
|     return { | 
|       // 表单数据 | 
|       groupList: [], | 
|       broadcastList: [], | 
|       ledList: [], | 
|       form: { | 
|         id: null, | 
|         name: '', | 
|         type: 0, | 
|         autoCall: 0, | 
|         isVirtual: 0, | 
|         startTime: '', | 
|         endTime: '', | 
|         autoCallStartTime: '', | 
|         autoCallEndTime: '', | 
|         waitCallTime: '', | 
|         signInNoticeUsers: [], | 
|         unFinishNoticeUsers: [] | 
|       }, | 
|       // 验证规则 | 
|       rules: { | 
|         name: [{ required: true, message: '请输入分组名称 ', trigger: 'blur' }], | 
|         type: [{ required: true, message: '请选择业务类型' }], | 
|         signInNoticeUsers: [{ required: true, message: '请选择签到通知人员', trigger: 'blur' }], | 
|         unFinishNoticeUsers: [{ required: true, message: '请选择作业未完成通知人员', trigger: 'blur' }], | 
|         isVirtual: [{ required: true, message: '请选择是否虚拟月台', trigger: 'change' }], | 
|         autoCall: [{ required: true, message: '请选择是否自动叫号', trigger: 'change' }] | 
|       }, | 
|       memberList: [] | 
|     } | 
|   }, | 
|   created () { | 
|     this.config({ | 
|       api: '/platform/platformGroup', | 
|       'field.id': 'id' | 
|     }) | 
|   }, | 
|   methods: { | 
|     chagneVirtural(){ | 
|       /*if(this.form.isVirtual ==1){ | 
|         this.form.type=1 | 
|       }*/ | 
|     }, | 
|     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 | 
|       }).then(res => { | 
|         this.memberList = res | 
|       }) | 
|     }, | 
|     seleTime(){}, | 
|     /** | 
|      * 打开窗口 | 
|      * @title 窗口标题 | 
|      * @target 编辑的对象 | 
|      */ | 
|     open (title, target) { | 
|       this.title = title | 
|       this.loadMember() | 
|       this.visible = true | 
|       // 新建 | 
|       if (target == null) { | 
|         this.$nextTick(() => { | 
|           this.$refs.form.resetFields() | 
|           this.form[this.configData['field.id']] = null | 
|         }) | 
|         return | 
|       } | 
|       // 编辑 | 
|       this.$nextTick(() => { | 
|         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)) | 
|         } | 
|       }) | 
|     } | 
|   } | 
| } | 
| </script> | 
| <style scoped> | 
| .labelTip{ | 
|   font-size: 12px; | 
|   color: #666666; | 
| } | 
| </style> |