修改了工单展示问题,新增了工单查询问题

This commit is contained in:
chenze 2024-08-28 18:05:00 +08:00
parent a9597e8c8b
commit 40b3f02f3a

View File

@ -4,23 +4,54 @@
<a-form layout="inline">
<a-row :gutter="48">
<a-col :md="5" :sm="15">
<a-form-item label="报修单号">
<a-input placeholder="请输入报修单号" v-model="queryParam.sn" />
<a-form-item label="关键词">
<a-input placeholder="请输入关键词" v-model="queryParam.explain" />
</a-form-item>
</a-col>
<a-col :md="5" :sm="15">
<a-form-item label="报修名称">
<a-input placeholder="请输入报修名称" v-model="queryParam.name" />
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="所属分类">
<a-select :label-in-value="true"
v-decorator="['typeId', {rules: [{ required: true, message: '请选择所属分类' }]}]"
@change="selectDevice">
<a-select-option v-for="item in typeList" :key="item.id" :value="item.id">{{ item.name }}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :md="5" :sm="15">
<a-form-item label="分类名称">
<a-input placeholder="请输入分类名称" v-model="queryParam.typeName" />
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="报修设备">
<a-select :label-in-value="true"
v-decorator="['deviceId', {rules: [{ required: true, message: '请选择所属设备' }]}]"
@change="getDeviceName">
<a-select-option v-for="item in deviceList" :key="item.id" :value="item.id">{{ item.name }}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :md="5" :sm="15">
<a-form-item label="设备名称">
<a-input placeholder="请输入设备名称" v-model="queryParam.deviceName" />
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="请选择状态">
<a-select v-model="queryParam.status"
v-decorator="['status']">
<a-select-option v-for="item in options" :key="item.value">
{{ item.label }}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :md="5" :sm="15">
<a-form-item label="故障等级">
<a-select v-model="queryParam.repairLevel"
v-decorator="['repairLevel']">
<a-select-option v-for="item in repairLevelOptions" :key="item.value">
{{ item.label }}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col :md="5" :sm="15">
<a-form-item label="时间范围">
<a-range-picker @change="onChange" />
</a-form-item>
</a-col>
<a-col :md="8" :sm="24">
@ -45,6 +76,14 @@
<span slot="status" slot-scope="text">
{{ text | statusFilter }}
</span>
<span slot="remark" slot-scope="text">
<a-tag v-if="text == '5110'" color="blue">
{{ text }}
</a-tag>
<a-tag v-else color="cyan">
普通报修
</a-tag>
</span>
<span slot="action" slot-scope="text, record">
<a v-if="editEnabel" @click="handleView(record.id)">详情</a>
<!-- <a v-if="editEnabel" @click="handleEdit(record)">指派</a>-->
@ -61,6 +100,8 @@ import { getRepairList, complete } from '@/api/admin/repair'
import { oneWorkerList, oneFloorList } from '@/api/admin/repair/repairStats'
import RepairModal from './modules/RepairModal.vue'
import { checkPermission } from '@/utils/permissions'
import { getRepairDeviceList } from '@/api/admin/repair/repairDevice'
import { getRepairTypeList } from '@/api/admin/repair/repairDeviceType'
export default {
name: 'TableList',
@ -85,6 +126,48 @@ export default {
//
queryParam: {},
loadData: [],
typeList: [],
deviceList: [],
repairLevelOptions: [{
value: '一级',
label: '一级'
}, {
value: '二级',
label: '二级'
}, {
value: '三级',
label: '三级'
}, {
value: '四级',
label: '四级'
}, {
value: '五级',
label: '五级'
}
],
options: [{
value: '1',
label: '待分配'
}, {
value: '3',
label: '重新派单'
}, {
value: '5',
label: '已派单'
}, {
value: '7',
label: '处理中'
}, {
value: '9',
label: '已完成,待评价'
}, {
value: '11',
label: '已关闭'
}, {
value: '13',
label: '已评价'
}
],
//
columns: [
{
@ -99,7 +182,11 @@ export default {
title: '设备名称',
dataIndex: 'deviceName'
},
{
title: '报修来源',
dataIndex: 'remark',
scopedSlots: { customRender: 'remark' }
},
{
title: '工单状态',
dataIndex: 'status',
@ -115,7 +202,7 @@ export default {
},
{
title: '报修时间',
dataIndex: 'repairTime',
dataIndex: 'createTime',
sorter: true
},
{
@ -151,8 +238,30 @@ export default {
},
created () {
this.getRepairList()
this.selectType()
},
methods: {
onChange (value, dateString) {
this.queryParam.startTime = dateString[0]
this.queryParam.endTime = dateString[1]
},
selectType () {
getRepairTypeList().then(res => {
this.typeList = res.rows
})
},
selectDevice (item) {
getRepairDeviceList({ 'typeId': item.key }).then(res => {
this.deviceList = res.rows
})
this.queryParam.typeId = item.key
console.log(this.queryParam.typeId)
},
getDeviceName (item) {
console.log(item)
this.deviceName = item.label
this.queryParam.deviceId = item.key
},
getRepairList () {
if (this.$route.query.repairUserId != null) {
oneWorkerList({ workerId: this.$route.query.repairUserId }).then(res => {
@ -163,13 +272,19 @@ export default {
this.loadData = res.rows
})
} else {
console.log(this.deviceId)
let datas = {
'role': 7,
'type': 'all',
'sn': this.queryParam.sn,
'name': this.queryParam.name,
'typeName': this.queryParam.typeName,
'deviceName': this.queryParam.deviceName
'repair': {
'explain': this.queryParam.explain,
'typeId': this.queryParam.typeId,
'deviceId': this.queryParam.deviceId,
'status': this.queryParam.status,
'repairLevel': this.queryParam.repairLevel,
'beginTime': this.queryParam.startTime,
'endTime': this.queryParam.endTime
}
}
getRepairList(datas).then(res => {
this.loadData = res.rows