|
|
|
|
@ -139,56 +139,40 @@
|
|
|
|
|
@pagination="getList"
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
<!-- 添加或修改安灯规则配置对话框 -->
|
|
|
|
|
<!-- 添加或修改安灯规则配置对话框(简化版:PDA绑定工位触发安灯) -->
|
|
|
|
|
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
|
|
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
|
|
|
<el-form-item label="规则名称" prop="ruleName" label-width="100px">
|
|
|
|
|
<el-input v-model="form.ruleName" placeholder="请输入规则名称" />
|
|
|
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
|
|
|
|
|
<el-alert
|
|
|
|
|
title="手持PDA绑定工位后,点击安灯按钮将自动匹配此规则并派工给通知用户"
|
|
|
|
|
type="info"
|
|
|
|
|
:closable="false"
|
|
|
|
|
style="margin-bottom: 15px;"
|
|
|
|
|
/>
|
|
|
|
|
<el-form-item label="规则名称" prop="ruleName">
|
|
|
|
|
<el-input v-model="form.ruleName" placeholder="请输入规则名称,如:装配工位-设备故障" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="呼叫类型编码" prop="callTypeCode" label-width="120px">
|
|
|
|
|
<el-input v-model="form.callTypeCode" placeholder="请输入呼叫类型编码" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="适用产线" prop="productLineCode"label-width="100px">
|
|
|
|
|
<el-select v-model="form.productLineCode" placeholder="请选择产线" clearable>
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in productLineList"
|
|
|
|
|
:key="item.productLineCode"
|
|
|
|
|
:label="item.productLineName"
|
|
|
|
|
:value="item.productLineCode"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="适用工位/工序" prop="stationCode"label-width="100px">
|
|
|
|
|
<el-select v-model="form.stationCode" placeholder="请选择工位/工序" clearable>
|
|
|
|
|
<el-form-item label="绑定工位" prop="stationCode">
|
|
|
|
|
<el-select v-model="form.stationCode" placeholder="请选择绑定的工位(必填)" filterable style="width: 100%">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in processStationList"
|
|
|
|
|
:key="item.stationCode"
|
|
|
|
|
:label="item.stationName"
|
|
|
|
|
:value="item.stationCode"
|
|
|
|
|
:key="item.processCode"
|
|
|
|
|
:label="item.processCode + ' - ' + item.processName"
|
|
|
|
|
:value="item.processCode"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="适用班组" prop="teamCode"label-width="100px">
|
|
|
|
|
<el-select v-model="form.teamCode" placeholder="请选择班组" clearable>
|
|
|
|
|
<el-form-item label="呼叫类型" prop="callTypeCode">
|
|
|
|
|
<el-select v-model="form.callTypeCode" placeholder="请选择呼叫类型">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in teamMembersList"
|
|
|
|
|
:key="item.teamCode"
|
|
|
|
|
:label="item.teamName"
|
|
|
|
|
:value="item.teamCode"
|
|
|
|
|
v-for="dict in dict.type.andon_call_type"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="确认时限(分钟)" prop="ackTimeoutMin">
|
|
|
|
|
<el-input-number v-model="form.ackTimeoutMin" :min="0" placeholder="请输入确认时限" style="width: 100%" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="解决时限(分钟)" prop="resolveTimeoutMin">
|
|
|
|
|
<el-input-number v-model="form.resolveTimeoutMin" :min="0" placeholder="请输入解决时限" style="width: 100%" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="默认优先级" prop="priorityDefault">
|
|
|
|
|
<el-input-number v-model="form.priorityDefault" :min="1" :max="5" placeholder="请输入默认优先级(1-5)" style="width: 100%" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="通知用户" prop="notifyUsers">
|
|
|
|
|
<el-select v-model="formNotifyUsersArr" multiple filterable placeholder="请选择通知用户">
|
|
|
|
|
<el-select v-model="formNotifyUsersArr" multiple filterable placeholder="请选择派工通知的用户(必填)">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="u in userOptions"
|
|
|
|
|
:key="u.userId"
|
|
|
|
|
@ -197,8 +181,21 @@
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-divider content-position="left">时限设置(可选)</el-divider>
|
|
|
|
|
<el-form-item label="确认时限" prop="ackTimeoutMin">
|
|
|
|
|
<el-input-number v-model="form.ackTimeoutMin" :min="0" placeholder="分钟" style="width: 100%" />
|
|
|
|
|
<span style="color: #909399; font-size: 12px;">接单确认的时限(分钟)</span>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="解决时限" prop="resolveTimeoutMin">
|
|
|
|
|
<el-input-number v-model="form.resolveTimeoutMin" :min="0" placeholder="分钟" style="width: 100%" />
|
|
|
|
|
<span style="color: #909399; font-size: 12px;">问题解决的时限(分钟)</span>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="默认优先级" prop="priorityDefault">
|
|
|
|
|
<el-input-number v-model="form.priorityDefault" :min="1" :max="5" style="width: 100%" />
|
|
|
|
|
<span style="color: #909399; font-size: 12px;">1最高,5最低</span>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="备注" prop="remark">
|
|
|
|
|
<el-input v-model="form.remark" placeholder="请输入备注" />
|
|
|
|
|
<el-input v-model="form.remark" type="textarea" placeholder="请输入备注" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-form>
|
|
|
|
|
<div slot="footer" class="dialog-footer">
|
|
|
|
|
@ -219,6 +216,7 @@ import { getDeviceLedgerList } from "@/api/base/deviceLedger";
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
name: "AndonRule",
|
|
|
|
|
dicts: ['andon_call_type'],
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
// 遮罩层
|
|
|
|
|
@ -275,37 +273,40 @@ export default {
|
|
|
|
|
},
|
|
|
|
|
// 表单参数
|
|
|
|
|
form: {},
|
|
|
|
|
// 表单校验
|
|
|
|
|
// 表单校验(简化版:工位和通知用户必填)
|
|
|
|
|
rules: {
|
|
|
|
|
ruleName: [
|
|
|
|
|
{ required: true, message: "规则名称不能为空", trigger: "blur" }
|
|
|
|
|
],
|
|
|
|
|
stationCode: [
|
|
|
|
|
{ required: true, message: "请选择绑定的工位", trigger: "change" }
|
|
|
|
|
],
|
|
|
|
|
callTypeCode: [
|
|
|
|
|
{ required: true, message: "呼叫类型编码不能为空", trigger: "blur" }
|
|
|
|
|
{ required: true, message: "请选择呼叫类型", trigger: "change" }
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
columns: [
|
|
|
|
|
{ key: 0, label: `主键ID`, visible: false },
|
|
|
|
|
{ key: 1, label: `规则名称`, visible: true },
|
|
|
|
|
{ key: 2, label: `呼叫类型编码`, visible: true },
|
|
|
|
|
{ key: 3, label: `适用产线编码`, visible: true },
|
|
|
|
|
{ key: 3, label: `适用产线编码`, visible: false },
|
|
|
|
|
{ key: 4, label: `适用工位/工序编码`, visible: true },
|
|
|
|
|
{ key: 5, label: `适用班组编码`, visible: true },
|
|
|
|
|
{ key: 6, label: `限定触发源类型`, visible: true },
|
|
|
|
|
{ key: 5, label: `适用班组编码`, visible: false },
|
|
|
|
|
{ key: 6, label: `限定触发源类型`, visible: false },
|
|
|
|
|
{ key: 7, label: `确认时限`, visible: true },
|
|
|
|
|
{ key: 8, label: `解决时限`, visible: true },
|
|
|
|
|
{ key: 9, label: `默认优先级`, visible: true },
|
|
|
|
|
{ key: 10, label: `通知角色`, visible: true },
|
|
|
|
|
{ key: 10, label: `通知角色`, visible: false },
|
|
|
|
|
{ key: 11, label: `通知用户`, visible: true },
|
|
|
|
|
{ key: 12, label: `升级链`, visible: true },
|
|
|
|
|
{ key: 13, label: `生效开始时间`, visible: true },
|
|
|
|
|
{ key: 14, label: `生效结束时间`, visible: true },
|
|
|
|
|
{ key: 15, label: `是否有效`, visible: true },
|
|
|
|
|
{ key: 12, label: `升级链`, visible: false },
|
|
|
|
|
{ key: 13, label: `生效开始时间`, visible: false },
|
|
|
|
|
{ key: 14, label: `生效结束时间`, visible: false },
|
|
|
|
|
{ key: 15, label: `是否有效`, visible: false },
|
|
|
|
|
{ key: 16, label: `备注`, visible: true },
|
|
|
|
|
{ key: 17, label: `创建人`, visible: true },
|
|
|
|
|
{ key: 18, label: `创建时间`, visible: true },
|
|
|
|
|
{ key: 19, label: `更新人`, visible: true },
|
|
|
|
|
{ key: 20, label: `更新时间`, visible: true },
|
|
|
|
|
{ key: 19, label: `更新人`, visible: false },
|
|
|
|
|
{ key: 20, label: `更新时间`, visible: false },
|
|
|
|
|
]
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
|