|  |  |  | 
|---|
|  |  |  | <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="2"  >市公司卸货</el-radio> | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="工作时间:" prop="startTime"> | 
|---|
|  |  |  | <div style=" display: inline-block"> | 
|---|
|  |  |  | <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-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" | 
|---|
|  |  |  | 
|---|
|  |  |  | placeholder="请选择结束时间" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-time-picker> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </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> | 
|---|
|  |  |  | 
|---|
|  |  |  | 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', | 
|---|
|  |  |  | 
|---|
|  |  |  | id: null, | 
|---|
|  |  |  | name: '', | 
|---|
|  |  |  | type: 0, | 
|---|
|  |  |  | autoCall: 0, | 
|---|
|  |  |  | isVirtual: 0, | 
|---|
|  |  |  | startTime: '', | 
|---|
|  |  |  | endTime: '', | 
|---|
|  |  |  | waitCallTime: '' | 
|---|
|  |  |  | autoCallStartTime: '', | 
|---|
|  |  |  | autoCallEndTime: '', | 
|---|
|  |  |  | 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' }], | 
|---|
|  |  |  | isVirtual: [{ required: true, message: '请选择是否虚拟月台', trigger: 'change' }], | 
|---|
|  |  |  | autoCall: [{ required: true, message: '请选择是否自动叫号', trigger: 'change' }] | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | memberList: [] | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | created () { | 
|---|
|  |  |  | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 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(){}, | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 打开窗口 | 
|---|
|  |  |  | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | open (title, target) { | 
|---|
|  |  |  | this.title = title | 
|---|
|  |  |  | this.loadMember() | 
|---|
|  |  |  | this.visible = true | 
|---|
|  |  |  | // 新建 | 
|---|
|  |  |  | if (target == null) { | 
|---|
|  |  |  | 
|---|
|  |  |  | 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)) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|