|
|
@@ -9,11 +9,19 @@
|
|
|
</div>
|
|
|
<div class="flex flex-wrap items-center gap-3">
|
|
|
<el-input
|
|
|
- v-model="searchKeyword"
|
|
|
- placeholder="搜索工单编号/案件编号"
|
|
|
+ v-model="searchOrderNo"
|
|
|
+ placeholder="工单编号"
|
|
|
clearable
|
|
|
:prefix-icon="Search"
|
|
|
- class="w-[260px]"
|
|
|
+ class="w-[140px]"
|
|
|
+ @keyup.enter="loadOrders"
|
|
|
+ />
|
|
|
+ <el-input
|
|
|
+ v-model="searchCaseNo"
|
|
|
+ placeholder="案件编号"
|
|
|
+ clearable
|
|
|
+ :prefix-icon="Search"
|
|
|
+ class="w-[140px]"
|
|
|
@keyup.enter="loadOrders"
|
|
|
/>
|
|
|
<el-select v-model="orderLevelFilter" placeholder="优先级" clearable class="w-[120px]">
|
|
|
@@ -161,7 +169,8 @@ import {getManholeWorkOrderDetail, getManholeWorkOrderFinishedPage} from '@/api/
|
|
|
const orders = ref([])
|
|
|
const loading = ref(false)
|
|
|
const detailLoading = ref(false)
|
|
|
-const searchKeyword = ref('')
|
|
|
+const searchOrderNo = ref('')
|
|
|
+const searchCaseNo = ref('')
|
|
|
const orderLevelFilter = ref('')
|
|
|
const dateRange = ref([])
|
|
|
const timeFilter = ref('all')
|
|
|
@@ -197,7 +206,7 @@ function getOrderStatusMeta(status) {
|
|
|
const map = {
|
|
|
6: { text: '已结案', tag: 'success' },
|
|
|
7: { text: '已驳回', tag: 'danger' },
|
|
|
- 9: { text: '已延期', tag: 'warning' }
|
|
|
+ 9: { text: '延期待接单', tag: 'warning' }
|
|
|
}
|
|
|
return map[Number(status)] || { text: '—', tag: 'info' }
|
|
|
}
|
|
|
@@ -282,19 +291,22 @@ const monthlyCompleted = computed(() => orders.value.filter(item => isWithinRece
|
|
|
async function loadOrders() {
|
|
|
loading.value = true
|
|
|
try {
|
|
|
- const keyword = searchKeyword.value.trim()
|
|
|
+ const orderNo = searchOrderNo.value.trim()
|
|
|
+ const caseNo = searchCaseNo.value.trim()
|
|
|
const payload = {
|
|
|
pageNum: 1,
|
|
|
pageSize: 200,
|
|
|
orderLevel: orderLevelFilter.value || undefined,
|
|
|
- orderNo: keyword || undefined,
|
|
|
- caseNo: keyword || undefined,
|
|
|
+ orderNo: orderNo || undefined,
|
|
|
+ caseNo: caseNo || undefined,
|
|
|
startTime: dateRange.value?.[0] ? `${dateRange.value[0]} 00:00:00` : undefined,
|
|
|
endTime: dateRange.value?.[1] ? `${dateRange.value[1]} 23:59:59` : undefined
|
|
|
}
|
|
|
const res = await getManholeWorkOrderFinishedPage(payload)
|
|
|
const records = Array.isArray(res?.data?.records) ? res.data.records : []
|
|
|
- orders.value = records.map(normalizeOrder)
|
|
|
+ orders.value = records
|
|
|
+ .filter(item => [6, 7].includes(Number(item.orderStatus)))
|
|
|
+ .map(normalizeOrder)
|
|
|
currentPage.value = 1
|
|
|
if (currentOrder.value) {
|
|
|
const matched = orders.value.find(item => item.orderId === currentOrder.value.orderId)
|
|
|
@@ -346,7 +358,7 @@ function getLogType(operType) {
|
|
|
6: 'success',
|
|
|
7: 'danger',
|
|
|
8: 'warning',
|
|
|
- 9: 'success'
|
|
|
+ 9: 'warning'
|
|
|
}
|
|
|
return map[Number(operType)] || 'info'
|
|
|
}
|