| | |
| | | <el-menu-item index="0" @click="changeUnit(null, '全部')"> |
| | | 全部单位({{ totalWorkOrders }}) |
| | | </el-menu-item> |
| | | <el-menu-item :index="index + 1" v-for="(item, index) in unitList" :key="index" @click="changeUnit(item.id, item.value)"> |
| | | <el-menu-item :index="index + 1 +''" v-for="(item, index) in unitList" :key="index" @click="changeUnit(item.id, item.value)"> |
| | | {{ item.unitName }}({{ item.workOrderCount }}) |
| | | </el-menu-item> |
| | | </el-menu> |
| | |
| | | v-hasPermi="['work:order:delete']" |
| | | >删除 |
| | | </el-button> |
| | | <el-button size="mini" plain type="info" @click="selectedDistribute" class="op">批量上报</el-button> |
| | | </el-col> |
| | | </el-row> |
| | | |
| | |
| | | <el-row style="display: flex;"> |
| | | <el-checkbox v-if="$store.state.user.roles.includes('admin')" |
| | | v-model="isItemSelected[item.workOrderNo]" |
| | | @change="toggleSelection(item.workOrderNo)" |
| | | @change="toggleSelection(item)" |
| | | style="margin-right: 10px; "></el-checkbox> |
| | | <el-tooltip |
| | | effect="dark" |
| | |
| | | placement="top" |
| | | > |
| | | <el-row> |
| | | <el-tag style="margin-right: 5px;height:24px;overflow:auto" effect="dark" v-for="(error, errorIndex) in displayedErrors(item.errorTypeList)" :key="errorIndex" size="small" type="warning"> |
| | | <el-tag |
| | | style="margin-right: 5px;height:24px;overflow:auto" effect="dark" |
| | | v-for="(error, errorIndex) in displayedErrors(item.errorTypeList)" :key="errorIndex" size="small" |
| | | :type="error === '图像异常' |
| | | || error === '点位信息错误' |
| | | || error === '时钟偏差' |
| | | || error === 'OSD异常' |
| | | ? 'danger' : 'warning'"> |
| | | {{ error }} |
| | | </el-tag> |
| | | </el-row> |
| | |
| | | size="mini" |
| | | type="text" |
| | | @click="handleDetail(item)" |
| | | v-hasPermi="['system:workorder:detail']" |
| | | v-hasPermi="['work:order:detail']" |
| | | >详情 |
| | | </el-button> |
| | | <el-button |
| | |
| | | |
| | | <el-dialog title="运维情况记录" :visible.sync="ywConditionOpen" width="500px" append-to-body> |
| | | <el-form ref="ywConditionForm" :model="form" :rules="ywConditionRules" label-width="80px"> |
| | | <el-form-item label="工单号" prop="workOrderNo"> |
| | | <el-form-item label="工单号" prop="workOrderNo" v-if="!isConditionList"> |
| | | <el-input v-model="ywConditionForm.workOrderNo" disabled/> |
| | | </el-form-item> |
| | | <el-form-item label="运维单位" prop="unitName"> |
| | | <el-form-item label="运维单位" prop="unitName" v-if="!isConditionList"> |
| | | <el-input v-model="ywConditionForm.unitName" disabled/> |
| | | </el-form-item> |
| | | <el-form-item label="现场情况" prop="ywCondition"> |
| | |
| | | <el-form ref="batchAuditingWorkOrder" :model="batchAuditingWorkOrder" label-width="80px" |
| | | :rules="batchAuditingRules" |
| | | > |
| | | <el-form-item label="故障类型" prop="errorType"> |
| | | <el-select v-model="batchAuditingWorkOrder.errorTypes" multiple placeholder="故障类型"> |
| | | <el-option v-for="dict in dict.type.error_type" :value="dict.value" :key="dict.value" :label="dict.label" /> |
| | | </el-select> |
| | | |
| | | </el-form-item> |
| | | <el-form-item label="审核说明" prop="auditingRemark"> |
| | | <el-input v-model="batchAuditingWorkOrder.auditingRemark" type="textarea" maxlength="30" show-word-limit/> |
| | | </el-form-item> |
| | |
| | | </style> |
| | | <script> |
| | | import { |
| | | ywConditionList, |
| | | listWorkOrder, |
| | | getWorkOrder, |
| | | delWorkOrder, |
| | |
| | | components: {WorkOrderAuditing}, |
| | | data() { |
| | | return { |
| | | isConditionList:false, |
| | | isSelectAll: false, // 全选按钮 |
| | | activeIndex: '0', |
| | | drawer: false, |
| | |
| | | timeRange : null, |
| | | batchAuditingVisible: false, |
| | | batchAuditingWorkOrder: { |
| | | errorTypes: [], |
| | | workOrderNumbers: [], |
| | | auditingRemark: '', |
| | | auditingResult: '' |
| | | }, |
| | |
| | | }, |
| | | // 批量审核校验 |
| | | batchAuditingRules: { |
| | | errorTypes: [ |
| | | workOrderNumbers: [ |
| | | { required: true, message: '请选择故障类型', trigger: 'change' } |
| | | ] |
| | | }, |
| | |
| | | ywData: { |
| | | content: '', |
| | | fileList: 'process.env.VUE_APP_BASE_API' |
| | | } |
| | | }, |
| | | |
| | | } |
| | | }, |
| | | created() { |
| | |
| | | this.getList() |
| | | }, |
| | | methods: { |
| | | selectedDistribute(){ |
| | | this.form = {} |
| | | if (this.workOrderNumbers.length < 1) { |
| | | this.$message.warning("请先选择要下发的工单") |
| | | return |
| | | } |
| | | this.form.workOrderNumbers = this.workOrderNumbers; |
| | | this.ywConditionOpen = true |
| | | this.isConditionList = true |
| | | }, |
| | | |
| | | //全选按钮 |
| | | toggleSelectAll() { |
| | | this.isSelectAll = !this.isSelectAll; |
| | |
| | | // 批量审核 |
| | | batchAuditing(result) { |
| | | this.batchAuditingWorkOrder.auditingResult = result |
| | | this.batchAuditingWorkOrder.workOrderNumbers = this.workOrderNumbers |
| | | this.$refs['batchAuditingWorkOrder'].validate(valid => { |
| | | if (valid) { |
| | | batchAuditing(this.batchAuditingWorkOrder).then(res => { |
| | |
| | | this.form = {} |
| | | this.ywConditionForm = row |
| | | this.ywConditionOpen = true |
| | | this.isConditionList = false |
| | | this.form.id = row.id |
| | | }, |
| | | // 运维结果按钮 |
| | |
| | | submitYwCondition() { |
| | | this.$refs['ywConditionForm'].validate(valid => { |
| | | if (valid) { |
| | | ywCondition(this.form).then(res => { |
| | | this.ywConditionOpen = false |
| | | this.$modal.msgSuccess('操作成功') |
| | | this.getList() |
| | | }) |
| | | if(this.isConditionList){ |
| | | ywConditionList(this.form).then(res => { |
| | | this.ywConditionOpen = false |
| | | this.$modal.msgSuccess('操作成功') |
| | | this.getList() |
| | | }) |
| | | }else { |
| | | ywCondition(this.form).then(res => { |
| | | this.ywConditionOpen = false |
| | | this.$modal.msgSuccess('操作成功') |
| | | this.getList() |
| | | }) |
| | | } |
| | | |
| | | } |
| | | }) |
| | | }, |
| | | cancelYwCondition() { |
| | | this.ywConditionForm = {} |
| | | this.ywConditionOpen = false |
| | | this.isConditionList = false |
| | | }, |
| | | // 提交运维结果 |
| | | submitYwResult() { |
| | |
| | | //后端复用一个接口 |
| | | this.queryParams.isNotDistribute = true; |
| | | if(this.queryParams.errorType){ |
| | | console.log(this.queryParams.errorType,"--------",this.errorTypeLabelsMap) |
| | | this.queryParams.errorTypeLabel = this.errorTypeLabelsMap[this.queryParams.errorType]; |
| | | } |
| | | //重置全选 |
| | | this.workOrderNumbers = [] |
| | | this.isSelectAll = false |
| | | listWorkOrder(this.queryParams).then(response => { |
| | | workList(this.queryParams).then(res => { |
| | | this.unitList = res.data; |
| | |
| | | this.multiple = !selection.length |
| | | }, |
| | | // 多选框选中数据 |
| | | toggleSelection(workOrderNo) { |
| | | const index = this.workOrderNumbers.indexOf(workOrderNo); |
| | | toggleSelection(item) { |
| | | console.log(item.workOrderNo) |
| | | console.log(this.workOrderNumbers) |
| | | const index = this.workOrderNumbers.indexOf(item.workOrderNo); |
| | | if (index > -1) { |
| | | this.workOrderNumbers.splice(index, 1); // 移除选中项 |
| | | } else { |
| | | this.workOrderNumbers.push(workOrderNo); // 添加选中项 |
| | | this.workOrderNumbers.push(item.workOrderNo); // 添加选中项 |
| | | } |
| | | }, |
| | | /** 新增按钮操作 */ |
| | |
| | | this.imageQueryParams.workOrderNo= row.workOrderNo |
| | | this.imageQueryParams.serialNumber= row.serialNumber |
| | | checkWorkOrder(this.imageQueryParams).then((res) => { |
| | | this.imageUrl = res.data |
| | | this.imageUrl = this.$img + res.data |
| | | console.log( "图片地址"+this.imageUrl ) |
| | | this.imageLoading = false |
| | | }).catch(() => { |
| | | this.imageLoading = false |