| <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="月台名称:"> | 
|         <span>{{ form.name }}</span> | 
|       </el-form-item> | 
|       <el-form-item label="月台编码:" prop="code"> | 
|         <el-input v-model="form.code" placeholder="请输入月台编码" v-trim /> | 
|         <span class="tip-warn"><i class="el-icon-warning"></i>说明:对应WMS系统中的编码</span> | 
|       </el-form-item> | 
|       <el-form-item label="所属月台分组:" prop="groupId"> | 
|         <el-select v-model="form.groupId"> | 
|           <el-option v-for="item in groupList" :key="item.id" :label="item.name" :value="item.id"> | 
|           </el-option> | 
|         </el-select> | 
|       </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-group> | 
|       </el-form-item> | 
|       <el-form-item label="广播设备:" prop="broadcastIds"> | 
|         <el-select v-model="form.broadcastIds" multiple> | 
|           <el-option v-for="item in broadcastList" :key="item.id" :label="item.name" :value="item.id"> | 
|           </el-option> | 
|         </el-select> | 
|       </el-form-item> | 
|       <el-form-item label="LED设备:" prop="ledIds"> | 
|         <el-select v-model="form.ledIds" multiple> | 
|           <el-option v-for="item in ledList" :key="item.id" :label="item.name" :value="item.id"> | 
|           </el-option> | 
|         </el-select> | 
|       </el-form-item> | 
|       <el-form-item label="LED空闲文案:" prop="ledContent"> | 
|         <el-input type="text" v-model="form.ledContent" placeholder="请输入LED空闲文案" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="同时叫号数量:" prop="workingNum"> | 
|         <el-input type="number" v-model="form.workingNum" placeholder="请输入同时叫号数量" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="同时准备数量:" prop="callReadyNum"> | 
|         <el-input type="number" v-model="form.callReadyNum" placeholder="请输入同时准备数量" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="月台作业效率(万支/小时):" prop="workRate"> | 
|         <el-input type="number" v-model="form.workRate" placeholder="请输入月台作业效率(万支/小时)" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="作业超时报警时间(分钟):" prop="workTimeoutAlarmTime"> | 
|         <el-input type="number" v-model="form.workTimeoutAlarmTime" placeholder="请输入作业超时报警时间(分钟)" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="停留超时报警时间(分钟):" prop="stayTimeoutAlarmTime"> | 
|         <el-input type="number" v-model="form.stayTimeoutAlarmTime" placeholder="请输入停留超时报警时间(分钟)" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="排序码" prop="sortnum"> | 
|         <el-input type="number" v-model="form.sortnum" 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/platform/platformGroup' | 
| import { getList as deviceList } from '@/api/business/device' | 
| export default { | 
|   name: 'OperaPlatformWindow', | 
|   extends: BaseOpera, | 
|   components: { GlobalWindow }, | 
|   data() { | 
|     return { | 
|       // 表单数据 | 
|       groupList: [], | 
|       broadcastList: [], | 
|       ledList: [], | 
|       form: { | 
|         id: null, | 
|         ledIds: null, | 
|         type:0, | 
|         broadcastIds: null, | 
|         name: '', | 
|         code: '', | 
|         groupId: '', | 
|         startTime: '', | 
|         endTime: '', | 
|         workingNum: 1, | 
|         同时作业数量: 0, | 
|         ledContent: '', | 
|         workRate: '', | 
|         stayTimeoutAlarmTime: '', | 
|         workTimeoutAlarmTime: '', | 
|         sortnum: '' | 
|       }, | 
|       // 验证规则 | 
|       rules: { | 
|         workingNum: [{ required: true, validator: numRuleGtZero, message: '请输入同时叫号数量,必须大于0! ', trigger: 'blur' }], | 
|         type: [{ required: true, message: '月台类型不能为空!', trigger: 'blur' }], | 
|         sortnum: [{ required: true, message: '排序码不能为空!', trigger: 'blur' }] | 
|       } | 
|     } | 
|   }, | 
|   created() { | 
|     this.config({ | 
|       api: '/platform/platform', | 
|       'field.id': 'id' | 
|     }) | 
|   }, | 
|   methods: { | 
|     /** | 
|      * 打开窗口 | 
|      * @title 窗口标题 | 
|      * @target 编辑的对象 | 
|      */ | 
|     open(title, target) { | 
|       this.title = title | 
|       this.visible = true | 
|       this.loadGroupList() | 
|       this.loadLedList() | 
|       this.loadBroadcastList() | 
|       // 新建 | 
|       if (target == null) { | 
|         this.$nextTick(() => { | 
|           this.$refs.form.resetFields() | 
|           this.form[this.configData['field.id']] = null | 
|           this.form.company = [] | 
|         }) | 
|         return | 
|       } | 
|       // 编辑 | 
|       this.$nextTick(() => { | 
|         for (const key in this.form) { | 
|           this.form[key] = target[key] | 
|         } | 
|         this.form.workingNum = this.form.workingNum || 1 | 
|       }) | 
|     }, | 
|     loadGroupList() { | 
|       allList({}) | 
|         .then(res => { | 
|           this.groupList = res || [] | 
|         }) | 
|     }, | 
|     loadLedList() { | 
|       deviceList({ type: 2, isdeleted: 0 }) | 
|         .then(res => { | 
|           this.ledList = res || [] | 
|         }) | 
|     }, | 
|     loadBroadcastList() { | 
|       deviceList({ type: 3, isdeleted: 0 }) | 
|         .then(res => { | 
|           this.broadcastList = res || [] | 
|         }) | 
|     } | 
|   } | 
| } | 
| </script> | 
| <style scoped> | 
| .labelTip { | 
|   font-size: 12px; | 
|   color: #666666; | 
| } | 
| </style> |