From e0196f8a45fe3008ee10107b3520d9b9fe057601 Mon Sep 17 00:00:00 2001 From: wuxw <928255095@qq.com> Date: Fri, 30 May 2025 17:12:09 +0800 Subject: [PATCH] 开发完成admin下巡检任务 --- src/api/inspection/aInspectionPlanDetailApi.js | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/api/inspection/adminInspectionPlanApi.js | 41 +++++++++++++++++++++++++++++++++++++++++ src/api/inspection/adminInspectionTaskApi.js | 37 +++++++++++++++++++++++++++++++++++++ src/api/inspection/adminInspectionTaskDetailApi.js | 121 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/api/work/adminRepairApi.js | 44 ++++++++++++++++++++++++++++++++++++++++++++ src/api/work/adminRepairDetailApi.js | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/inspection/AInspectionPlanDetailStaff.vue | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/inspection/AInspectionRouteMap.vue | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/inspection/AInspectionRoutePoint.vue | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/inspection/AInspectionTaskMap.vue | 91 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/inspection/AdminPointRoute.vue | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/inspection/AdminPointTaskDetail.vue | 165 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/inspection/AdminRoutePlan.vue | 152 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/inspection/AdminRouteTask.vue | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/inspection/communityInspectionTree.vue | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/work/CommunityRepairTree.vue | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/work/ReplyRepairAppraise.vue | 83 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/work/viewImage.vue | 110 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/i18n/index.js | 18 ++++++++++++++++++ src/main.js (需要添加的部分) | 18 ------------------ src/router/index.js | 46 ++++++++++++++++++++++++++++++++++++++-------- src/views/inspection/aInspectionPlanDetailLang.js | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/inspection/aInspectionPlanDetailList.vue | 200 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/inspection/adminInspectionPlanLang.js | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/inspection/adminInspectionPlanList.vue | 211 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/inspection/adminInspectionTaskDetailLang.js | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/inspection/adminInspectionTaskDetailList.vue | 219 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/inspection/adminInspectionTaskLang.js | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/inspection/adminInspectionTaskList.vue | 236 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/work/adminRepairDetailLang.js | 128 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/work/adminRepairDetailList.vue | 318 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/work/adminRepairLang.js | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/work/adminRepairList.vue | 216 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 33 files changed, 3574 insertions(+), 26 deletions(-) create mode 100644 src/api/inspection/aInspectionPlanDetailApi.js create mode 100644 src/api/inspection/adminInspectionPlanApi.js create mode 100644 src/api/inspection/adminInspectionTaskApi.js create mode 100644 src/api/inspection/adminInspectionTaskDetailApi.js create mode 100644 src/api/work/adminRepairApi.js create mode 100644 src/api/work/adminRepairDetailApi.js create mode 100644 src/components/inspection/AInspectionPlanDetailStaff.vue create mode 100644 src/components/inspection/AInspectionRouteMap.vue create mode 100644 src/components/inspection/AInspectionRoutePoint.vue create mode 100644 src/components/inspection/AInspectionTaskMap.vue create mode 100644 src/components/inspection/AdminPointRoute.vue create mode 100644 src/components/inspection/AdminPointTaskDetail.vue create mode 100644 src/components/inspection/AdminRoutePlan.vue create mode 100644 src/components/inspection/AdminRouteTask.vue create mode 100644 src/components/inspection/communityInspectionTree.vue create mode 100644 src/components/work/CommunityRepairTree.vue create mode 100644 src/components/work/ReplyRepairAppraise.vue create mode 100644 src/components/work/viewImage.vue delete mode 100644 src/main.js (需要添加的部分) create mode 100644 src/views/inspection/aInspectionPlanDetailLang.js create mode 100644 src/views/inspection/aInspectionPlanDetailList.vue create mode 100644 src/views/inspection/adminInspectionPlanLang.js create mode 100644 src/views/inspection/adminInspectionPlanList.vue create mode 100644 src/views/inspection/adminInspectionTaskDetailLang.js create mode 100644 src/views/inspection/adminInspectionTaskDetailList.vue create mode 100644 src/views/inspection/adminInspectionTaskLang.js create mode 100644 src/views/inspection/adminInspectionTaskList.vue create mode 100644 src/views/work/adminRepairDetailLang.js create mode 100644 src/views/work/adminRepairDetailList.vue create mode 100644 src/views/work/adminRepairLang.js create mode 100644 src/views/work/adminRepairList.vue diff --git a/src/api/inspection/aInspectionPlanDetailApi.js b/src/api/inspection/aInspectionPlanDetailApi.js new file mode 100644 index 0000000..d2f79b1 --- /dev/null +++ b/src/api/inspection/aInspectionPlanDetailApi.js @@ -0,0 +1,111 @@ +import request from '@/utils/request' + +// 获取巡检计划详情 +export function getInspectionPlanDetail(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionPlan.listAdminInspectionPlans', + method: 'get', + params + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve(res) + } else { + reject(new Error(res.msg || '获取巡检计划详情失败')) + } + }).catch(error => { + reject(error) + }) + }) +} + +// 获取巡检人员列表 +export function listAdminInspectionPlanStaffs(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspection.listAdminInspectionPlanStaffs', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve(res) + + }).catch(error => { + reject(error) + }) + }) +} + +// 获取巡检路线列表 +export function listAdminInspectionRoutes(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionRoute.listAdminInspectionRoutes', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve(res) + + }).catch(error => { + reject(error) + }) + }) +} + +// 获取巡检路线点列表 +export function listAdminInspectionRoutePoints(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionRoute.listAdminInspectionRoutePoints', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve(res) + + }).catch(error => { + reject(error) + }) + }) +} + +// 获取巡检任务列表 +export function queryAdminRouteInspectionTask(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspection.queryAdminRouteInspectionTask', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve(res) + + }).catch(error => { + reject(error) + }) + }) +} + +// 获取巡检任务详情 +export function listAdminInspectionTaskDetails(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionTaskDetail.listAdminInspectionTaskDetails', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve(res) + + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/inspection/adminInspectionPlanApi.js b/src/api/inspection/adminInspectionPlanApi.js new file mode 100644 index 0000000..a4dcde4 --- /dev/null +++ b/src/api/inspection/adminInspectionPlanApi.js @@ -0,0 +1,41 @@ +import request from '@/utils/request' + +// 获取管理员小区列表 +export function listAdminCommunitys(params) { + return new Promise((resolve, reject) => { + request({ + url: '/community.listAdminCommunitys', + method: 'get', + params + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve(res) + } else { + reject(new Error(res.msg || '获取管理员小区列表失败')) + } + }).catch(error => { + reject(error) + }) + }) +} + +// 获取巡检计划列表 +export function listAdminInspectionPlans(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionPlan.listAdminInspectionPlans', + method: 'get', + params + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve(res) + } else { + reject(new Error(res.msg || '获取巡检计划列表失败')) + } + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/inspection/adminInspectionTaskApi.js b/src/api/inspection/adminInspectionTaskApi.js new file mode 100644 index 0000000..eb1a5b6 --- /dev/null +++ b/src/api/inspection/adminInspectionTaskApi.js @@ -0,0 +1,37 @@ +import request from '@/utils/request' + +// 查询巡检任务列表 +export function listAdminInspectionTasks(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionTask.listAdminInspectionTasks', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询社区巡检树 +export function queryCommunityInspectionTree(params) { + return new Promise((resolve, reject) => { + request({ + url: '/community.queryCommunityInspectionTree', + method: 'get', + params + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve(res) + } else { + reject(new Error(res.msg || '获取社区巡检树失败')) + } + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/inspection/adminInspectionTaskDetailApi.js b/src/api/inspection/adminInspectionTaskDetailApi.js new file mode 100644 index 0000000..83f9f10 --- /dev/null +++ b/src/api/inspection/adminInspectionTaskDetailApi.js @@ -0,0 +1,121 @@ +import request from '@/utils/request' + +// 获取巡检任务详情列表 +export function getAdminInspectionTaskDetail(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionTask.listAdminInspectionTasks', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve(res) + + }).catch(error => { + reject(error) + }) + }) +} + +// 获取巡检点任务详情列表 +export function listAdminInspectionTaskDetails(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionTaskDetail.listAdminInspectionTaskDetails', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve({ + data: res.inspectionTaskDetails, + records: res.records, + total: res.total + }) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询巡检任务地图数据 +export function queryAdminInspectionTaskDetail(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspection.queryAdminInspectionTaskDetail', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve({ + data: res.data + }) + + }).catch(error => { + reject(error) + }) + }) +} + +// 查询巡检路线计划 +export function queryAdminRouteInspectionPlan(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspection.queryAdminRouteInspectionPlan', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve({ + data: res.data, + records: res.records, + total: res.total + }) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取巡检路线列表 +export function listAdminInspectionRoutes(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionRoute.listAdminInspectionRoutes', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve({ + data: res.inspectionRoutes + }) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取巡检路线点列表 +export function listAdminInspectionRoutePoints(params) { + return new Promise((resolve, reject) => { + request({ + url: '/inspectionRoute.listAdminInspectionRoutePoints', + method: 'get', + params + }).then(response => { + const res = response.data + + resolve({ + data: res.inspectionPoints, + records: res.records, + total: res.total + }) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/work/adminRepairApi.js b/src/api/work/adminRepairApi.js new file mode 100644 index 0000000..885512e --- /dev/null +++ b/src/api/work/adminRepairApi.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询小区报修树形数据 +export function queryCommunityRepairTree() { + return new Promise((resolve, reject) => { + request({ + url: '/community.queryCommunityRepairTree', + method: 'get', + params: { hc: 1.8 } + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve(res) + } else { + reject(new Error(res.msg || '获取小区报修树失败')) + } + }).catch(error => { + reject(error) + }) + }) +} + +// 查询管理员报修列表 +export function listAdminOwnerRepairs(params) { + return new Promise((resolve, reject) => { + request({ + url: '/ownerRepair.listAdminOwnerRepairs', + method: 'get', + params + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve({ + data: res.data, + total: res.total + }) + } else { + reject(new Error(res.msg || '获取报修列表失败')) + } + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/work/adminRepairDetailApi.js b/src/api/work/adminRepairDetailApi.js new file mode 100644 index 0000000..53f8948 --- /dev/null +++ b/src/api/work/adminRepairDetailApi.js @@ -0,0 +1,81 @@ +import request from '@/utils/request' + +// 获取报修详情 +export function getRepairDetail(params) { + return new Promise((resolve, reject) => { + request({ + url: '/ownerRepair.listAdminOwnerRepairs', + method: 'get', + params + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve(res) + } else { + reject(new Error(res.msg || '获取报修详情失败')) + } + }).catch(error => { + reject(error) + }) + }) +} + +// 获取维修人员列表 +export function listRepairStaffs(params) { + return new Promise((resolve, reject) => { + request({ + url: '/ownerRepair.listAdminRepairStaffs', + method: 'get', + params + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve(res) + } else { + reject(new Error(res.msg || '获取维修人员列表失败')) + } + }).catch(error => { + reject(error) + }) + }) +} + +// 获取物品使用记录 +export function listStoreUseRecords(params) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.listAdminStoreUseRecords', + method: 'get', + params + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve(res) + } else { + reject(new Error(res.msg || '获取物品使用记录失败')) + } + }).catch(error => { + reject(error) + }) + }) +} + +// 回复评价 +export function replyRepairAppraise(data) { + return new Promise((resolve, reject) => { + request({ + url: '/repair.replyRepairAppraise', + method: 'post', + data + }).then(response => { + const res = response.data + if (res.code === 0) { + resolve(res) + } else { + reject(new Error(res.msg || '回复评价失败')) + } + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/components/inspection/AInspectionPlanDetailStaff.vue b/src/components/inspection/AInspectionPlanDetailStaff.vue new file mode 100644 index 0000000..4767c21 --- /dev/null +++ b/src/components/inspection/AInspectionPlanDetailStaff.vue @@ -0,0 +1,70 @@ + + + + + \ No newline at end of file diff --git a/src/components/inspection/AInspectionRouteMap.vue b/src/components/inspection/AInspectionRouteMap.vue new file mode 100644 index 0000000..a0c1329 --- /dev/null +++ b/src/components/inspection/AInspectionRouteMap.vue @@ -0,0 +1,68 @@ + + + + + \ No newline at end of file diff --git a/src/components/inspection/AInspectionRoutePoint.vue b/src/components/inspection/AInspectionRoutePoint.vue new file mode 100644 index 0000000..fe63880 --- /dev/null +++ b/src/components/inspection/AInspectionRoutePoint.vue @@ -0,0 +1,86 @@ + + + + + \ No newline at end of file diff --git a/src/components/inspection/AInspectionTaskMap.vue b/src/components/inspection/AInspectionTaskMap.vue new file mode 100644 index 0000000..7cee16d --- /dev/null +++ b/src/components/inspection/AInspectionTaskMap.vue @@ -0,0 +1,91 @@ + + + + + \ No newline at end of file diff --git a/src/components/inspection/AdminPointRoute.vue b/src/components/inspection/AdminPointRoute.vue new file mode 100644 index 0000000..ce877ca --- /dev/null +++ b/src/components/inspection/AdminPointRoute.vue @@ -0,0 +1,103 @@ + + + + + \ No newline at end of file diff --git a/src/components/inspection/AdminPointTaskDetail.vue b/src/components/inspection/AdminPointTaskDetail.vue new file mode 100644 index 0000000..bc24799 --- /dev/null +++ b/src/components/inspection/AdminPointTaskDetail.vue @@ -0,0 +1,165 @@ + + + + + \ No newline at end of file diff --git a/src/components/inspection/AdminRoutePlan.vue b/src/components/inspection/AdminRoutePlan.vue new file mode 100644 index 0000000..481e286 --- /dev/null +++ b/src/components/inspection/AdminRoutePlan.vue @@ -0,0 +1,152 @@ + + + + + \ No newline at end of file diff --git a/src/components/inspection/AdminRouteTask.vue b/src/components/inspection/AdminRouteTask.vue new file mode 100644 index 0000000..b4ec05e --- /dev/null +++ b/src/components/inspection/AdminRouteTask.vue @@ -0,0 +1,104 @@ + + + + + \ No newline at end of file diff --git a/src/components/inspection/communityInspectionTree.vue b/src/components/inspection/communityInspectionTree.vue new file mode 100644 index 0000000..cd45863 --- /dev/null +++ b/src/components/inspection/communityInspectionTree.vue @@ -0,0 +1,75 @@ + + + + + \ No newline at end of file diff --git a/src/components/work/CommunityRepairTree.vue b/src/components/work/CommunityRepairTree.vue new file mode 100644 index 0000000..c892c5e --- /dev/null +++ b/src/components/work/CommunityRepairTree.vue @@ -0,0 +1,68 @@ + + + + + \ No newline at end of file diff --git a/src/components/work/ReplyRepairAppraise.vue b/src/components/work/ReplyRepairAppraise.vue new file mode 100644 index 0000000..b526296 --- /dev/null +++ b/src/components/work/ReplyRepairAppraise.vue @@ -0,0 +1,83 @@ + + + \ No newline at end of file diff --git a/src/components/work/viewImage.vue b/src/components/work/viewImage.vue new file mode 100644 index 0000000..288e405 --- /dev/null +++ b/src/components/work/viewImage.vue @@ -0,0 +1,110 @@ + + + + + \ No newline at end of file diff --git a/src/i18n/index.js b/src/i18n/index.js index f48586f..6712287 100644 --- a/src/i18n/index.js +++ b/src/i18n/index.js @@ -66,6 +66,12 @@ import { messages as adminAccountDetailMessages } from '../views/account/adminAc import { messages as adminFeeConfigMessages } from '../views/fee/adminFeeConfigLang' import { messages as adminEquipmentMessages } from '../views/resource/adminEquipmentLang' import { messages as adminRoomFeeMessages } from '../views/fee/adminRoomFeeLang' +import { messages as adminRepairMessages } from '../views/work/adminRepairLang' +import { messages as adminRepairDetailMessages } from '../views/work/adminRepairDetailLang' +import { messages as adminInspectionPlanMessages } from '../views/inspection/adminInspectionPlanLang' +import { messages as aInspectionPlanDetailMessages } from '../views/inspection/aInspectionPlanDetailLang' +import { messages as adminInspectionTaskMessages } from '../views/inspection/adminInspectionTaskLang' +import { messages as adminInspectionTaskDetailMessages } from '../views/inspection/adminInspectionTaskDetailLang' Vue.use(VueI18n) @@ -136,6 +142,12 @@ const messages = { ...adminFeeConfigMessages.en, ...adminEquipmentMessages.en, ...adminRoomFeeMessages.en, + ...adminRepairMessages.en, + ...adminRepairDetailMessages.en, + ...adminInspectionPlanMessages.en, + ...aInspectionPlanDetailMessages.en, + ...adminInspectionTaskMessages.en, + ...adminInspectionTaskDetailMessages.en, }, zh: { ...loginMessages.zh, @@ -202,6 +214,12 @@ const messages = { ...adminFeeConfigMessages.zh, ...adminEquipmentMessages.zh, ...adminRoomFeeMessages.zh, + ...adminRepairMessages.zh, + ...adminRepairDetailMessages.zh, + ...adminInspectionPlanMessages.zh, + ...aInspectionPlanDetailMessages.zh, + ...adminInspectionTaskMessages.zh, + ...adminInspectionTaskDetailMessages.zh, } } diff --git a/src/main.js (需要添加的部分) b/src/main.js (需要添加的部分) deleted file mode 100644 index 58ddf6a..0000000 --- a/src/main.js (需要添加的部分) +++ /dev/null @@ -1,18 +0,0 @@ -import Vue from 'vue' -import ElementUI from 'element-ui' -import 'element-ui/lib/theme-chalk/index.css' -import VueI18n from 'vue-i18n' -import { messages } from '@/views/account/adminAccountLang' - -Vue.use(ElementUI) -Vue.use(VueI18n) - -const i18n = new VueI18n({ - locale: 'zh', // 设置默认语言 - messages -}) - -new Vue({ - i18n, - // ...其他配置 -}).$mount('#app') \ No newline at end of file diff --git a/src/router/index.js b/src/router/index.js index 12b9d7b..b89c3f9 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -307,15 +307,45 @@ const routes = [ component: () => import('@/views/fee/adminFeeConfigList.vue') }, { - path:'/pages/resource/adminEquipment', - name:'/pages/resource/adminEquipment', + path: '/pages/resource/adminEquipment', + name: '/pages/resource/adminEquipment', component: () => import('@/views/resource/adminEquipmentList.vue') - }, - { - path:'/pages/fee/adminRoomFee', - name:'/pages/fee/adminRoomFee', - component: () => import('@/views/fee/adminRoomFeeList.vue') - }, + }, + { + path: '/pages/fee/adminRoomFee', + name: '/pages/fee/adminRoomFee', + component: () => import('@/views/fee/adminRoomFeeList.vue') + }, + { + path: '/pages/work/adminRepair', + name: '/pages/work/adminRepair', + component: () => import('@/views/work/adminRepairList.vue') + }, + { + path: '/views/work/adminRepairDetail', + name: '/views/work/adminRepairDetail', + component: () => import('@/views/work/adminRepairDetailList.vue') + }, + { + path: '/pages/inspection/adminInspectionPlan', + name: '/pages/inspection/adminInspectionPlan', + component: () => import('@/views/inspection/adminInspectionPlanList.vue') + }, + { + path: '/pages/inspection/aInspectionPlanDetail', + name: '/pages/inspection/aInspectionPlanDetail', + component: () => import('@/views/inspection/aInspectionPlanDetailList.vue') + }, + { + path: '/pages/inspection/adminInspectionTask', + name: '/pages/inspection/adminInspectionTask', + component: () => import('@/views/inspection/adminInspectionTaskList.vue') + }, + { + path: '/views/inspection/adminInspectionTaskDetail', + name: '/views/inspection/adminInspectionTaskDetail', + component: () => import('@/views/inspection/adminInspectionTaskDetailList.vue') + }, // 其他子路由可以在这里添加 ] }, diff --git a/src/views/inspection/aInspectionPlanDetailLang.js b/src/views/inspection/aInspectionPlanDetailLang.js new file mode 100644 index 0000000..6ee7fe7 --- /dev/null +++ b/src/views/inspection/aInspectionPlanDetailLang.js @@ -0,0 +1,92 @@ +export const messages = { + en: { + aInspectionPlanDetail: { + title: 'Inspection Plan', + planName: 'Plan Name', + planRoute: 'Plan Route', + planPeriod: 'Plan Period', + signType: 'Sign Type', + dateRange: 'Date Range', + timeRange: 'Time Range', + taskAdvance: 'Task Advance(min)', + creator: 'Creator', + createTime: 'Create Time', + status: 'Status', + staff: 'Staff', + route: 'Route', + point: 'Point', + task: 'Task', + detail: 'Detail', + staffName: 'Staff Name', + startTime: 'Start Time', + endTime: 'End Time', + pointId: 'Point ID', + pointName: 'Point Name', + pointType: 'Point Type', + pointLocation: 'Point Location', + sort: 'Sort', + detailId: 'Detail ID', + staffTime: 'Staff Time', + pointTime: 'Point Time', + actualTime: 'Actual Time', + signStatus: 'Sign Status', + planStaff: 'Plan Staff', + actualStaff: 'Actual Staff', + taskStatus: 'Task Status', + pointStatus: 'Point Status', + inspectionResult: 'Inspection Result', + photos: 'Photos', + // 新增字段 + inspectionMethod: 'Inspection Method', + taskState: 'Task State', + pointState: 'Point State', + createUser: 'Create User', + inspectionPhotos: 'Inspection Photos' + } + }, + zh: { + aInspectionPlanDetail: { + title: '巡检计划', + planName: '计划名称', + planRoute: '计划路线', + planPeriod: '计划周期', + signType: '签到方式', + dateRange: '日期范围', + timeRange: '时间范围', + taskAdvance: '任务提前(分钟)', + creator: '制定人', + createTime: '制定时间', + status: '状态', + staff: '巡检人员', + route: '巡检路线', + point: '巡检点', + task: '巡检任务', + detail: '巡检明细', + staffName: '巡检人员', + startTime: '开始时间', + endTime: '结束时间', + pointId: '巡检点ID', + pointName: '巡检点名称', + pointType: '巡检点类型', + pointLocation: '巡检位置', + sort: '排序', + detailId: '任务详情ID', + staffTime: '巡检人时间', + pointTime: '巡检点时间', + actualTime: '实际巡检时间', + signStatus: '实际签到状态', + planStaff: '计划巡检人', + actualStaff: '实际巡检人', + taskStatus: '任务状态', + pointStatus: '巡检点状态', + inspectionResult: '巡检情况', + photos: '巡检照片', + // 新增字段 + inspectionMethod: '巡检方式', + taskState: '任务状态', + pointState: '巡检点状态', + createUser: '创建人', + inspectionPhotos: '巡检照片' + } + } + } \ No newline at end of file diff --git a/src/views/inspection/aInspectionPlanDetailList.vue b/src/views/inspection/aInspectionPlanDetailList.vue new file mode 100644 index 0000000..994a952 --- /dev/null +++ b/src/views/inspection/aInspectionPlanDetailList.vue @@ -0,0 +1,200 @@ + + + + + \ No newline at end of file diff --git a/src/views/inspection/adminInspectionPlanLang.js b/src/views/inspection/adminInspectionPlanLang.js new file mode 100644 index 0000000..ae8c21f --- /dev/null +++ b/src/views/inspection/adminInspectionPlanLang.js @@ -0,0 +1,80 @@ +export const messages = { + en: { + adminInspectionPlan: { + search: { + title: 'Search Conditions', + inspectionPlanId: 'Please enter plan ID', + inspectionPlanName: 'Please enter plan name', + staffName: 'Please enter inspector', + state: 'Please select status' + }, + list: { + title: 'Inspection Plan' + }, + table: { + planName: 'Plan Name', + communityName: 'Community Name', + inspectionRoute: 'Plan Route', + planPeriod: 'Plan Period', + signType: 'Sign Type', + dateRange: 'Date Range', + timeRange: 'Time Range', + beforeTime: 'Before Time (minutes)', + creator: 'Creator', + createTime: 'Create Time', + state: 'Status', + inspectionStaff: 'Inspection Staff' + }, + tip: { + ensureValid: 'Please ensure the plan start time and end time are valid time ranges and inspectors are set, otherwise inspection tasks cannot be generated' + }, + community: { + all: 'All Communities' + }, + error: { + fetchListFailed: 'Failed to fetch inspection plan list', + fetchCommunityFailed: 'Failed to fetch community list', + fetchStateFailed: 'Failed to fetch status options' + } + } + }, + zh: { + adminInspectionPlan: { + search: { + title: '查询条件', + inspectionPlanId: '请输入计划ID', + inspectionPlanName: '请输入计划名称', + staffName: '请输入巡检人', + state: '请选择状态' + }, + list: { + title: '巡检计划' + }, + table: { + planName: '计划名称', + communityName: '小区名称', + inspectionRoute: '计划路线', + planPeriod: '计划周期', + signType: '签到方式', + dateRange: '日期范围', + timeRange: '时间范围', + beforeTime: '任务提前(分钟)', + creator: '制定人', + createTime: '制定时间', + state: '状态', + inspectionStaff: '巡检人员' + }, + tip: { + ensureValid: '请确保计划开始时间和计划结束时间是有效时间范围,并且设置了巡检人,不然无法生成巡检任务' + }, + community: { + all: '全部小区' + }, + error: { + fetchListFailed: '获取巡检计划列表失败', + fetchCommunityFailed: '获取小区列表失败', + fetchStateFailed: '获取状态选项失败' + } + } + } +} \ No newline at end of file diff --git a/src/views/inspection/adminInspectionPlanList.vue b/src/views/inspection/adminInspectionPlanList.vue new file mode 100644 index 0000000..24dcec8 --- /dev/null +++ b/src/views/inspection/adminInspectionPlanList.vue @@ -0,0 +1,211 @@ + + + + + \ No newline at end of file diff --git a/src/views/inspection/adminInspectionTaskDetailLang.js b/src/views/inspection/adminInspectionTaskDetailLang.js new file mode 100644 index 0000000..29573fe --- /dev/null +++ b/src/views/inspection/adminInspectionTaskDetailLang.js @@ -0,0 +1,74 @@ +export const messages = { + en: { + adminInspectionTaskDetail: { + title: 'Inspection Task', + taskId: 'Task Code', + inspectionPlanName: 'Inspection Plan', + planTime: 'Start/End Time', + actInsTime: 'Actual Inspection Time', + originalPlanUser: 'Planned Inspector', + currentPlanUser: 'Current Inspector', + transferDesc: 'Transfer Description', + signType: 'Inspection Method', + state: 'Inspection Status', + tab: { + detail: 'Inspection Details', + map: 'Inspection Map', + plan: 'Inspection Plan', + route: 'Inspection Route', + point: 'Inspection Points' + } + }, + adminRoutePlan: { + table: { + planName: 'Plan Name', + routeName: 'Route Name', + planPeriod: 'Plan Period', + signType: 'Sign Type', + dateRange: 'Date Range', + timeRange: 'Time Range', + beforeTime: 'Before Time (minutes)', + creator: 'Creator', + createTime: 'Create Time', + inspectors: 'Inspectors', + status: 'Status' + } + } + }, + zh: { + adminInspectionTaskDetail: { + title: '巡检任务', + taskId: '任务编码', + inspectionPlanName: '巡检计划', + planTime: '开始/结束时间', + actInsTime: '实际巡检时间', + originalPlanUser: '计划巡检人', + currentPlanUser: '当前巡检人', + transferDesc: '转移描述', + signType: '巡检方式', + state: '巡检状态', + tab: { + detail: '巡检明细', + map: '巡检地图', + plan: '巡检计划', + route: '巡检路线', + point: '巡检点' + } + }, + adminRoutePlan: { + table: { + planName: '计划名称', + routeName: '计划路线', + planPeriod: '计划周期', + signType: '签到方式', + dateRange: '日期范围', + timeRange: '时间范围', + beforeTime: '任务提前(分钟)', + creator: '制定人', + createTime: '制定时间', + inspectors: '巡检人', + status: '状态' + } + } + } + } \ No newline at end of file diff --git a/src/views/inspection/adminInspectionTaskDetailList.vue b/src/views/inspection/adminInspectionTaskDetailList.vue new file mode 100644 index 0000000..1e75db4 --- /dev/null +++ b/src/views/inspection/adminInspectionTaskDetailList.vue @@ -0,0 +1,219 @@ + + + + + \ No newline at end of file diff --git a/src/views/inspection/adminInspectionTaskLang.js b/src/views/inspection/adminInspectionTaskLang.js new file mode 100644 index 0000000..69d50fe --- /dev/null +++ b/src/views/inspection/adminInspectionTaskLang.js @@ -0,0 +1,60 @@ +export const messages = { + en: { + adminInspectionTask: { + search: { + title: 'Search Conditions', + startTime: 'Please enter actual inspection start time', + endTime: 'Please enter actual inspection end time', + state: 'Please select inspection status', + button: 'Search' + }, + list: { + title: 'Inspection Tasks', + tip: 'Inspection tasks are automatically generated at 2:00 am every day according to the inspection plan. If they are not generated, please confirm whether the scheduled task is enabled or whether the inspection plan is set correctly' + }, + table: { + taskId: 'Task Code', + communityName: 'Community Name', + inspectionPlanName: 'Inspection Plan', + planTime: 'Plan Time', + actInsTime: 'Actual Inspection Time', + originalPlanUserName: 'Original Inspector', + planUserName: 'Current Inspector', + transferDesc: 'Transfer Description', + signTypeName: 'Inspection Method', + stateName: 'Inspection Status', + operation: 'Operation', + detail: 'Detail' + } + } + }, + zh: { + adminInspectionTask: { + search: { + title: '查询条件', + startTime: '请输入实际巡检开始时间', + endTime: '请输入实际巡检结束时间', + state: '请选择巡检状态', + button: '查询' + }, + list: { + title: '巡检任务', + tip: '巡检任务是根据巡检计划,每天晚上2点钟自动生成,如果没有生成请确认是否开启了定时任务,或者巡检计划是否设置正确' + }, + table: { + taskId: '任务编码', + communityName: '小区名称', + inspectionPlanName: '巡检计划', + planTime: '计划时间', + actInsTime: '实际巡检时间', + originalPlanUserName: '计划巡检人', + planUserName: '当前巡检人', + transferDesc: '转移描述', + signTypeName: '巡检方式', + stateName: '巡检状态', + operation: '操作', + detail: '详情' + } + } + } +} \ No newline at end of file diff --git a/src/views/inspection/adminInspectionTaskList.vue b/src/views/inspection/adminInspectionTaskList.vue new file mode 100644 index 0000000..2d5a9e8 --- /dev/null +++ b/src/views/inspection/adminInspectionTaskList.vue @@ -0,0 +1,236 @@ + + + + + \ No newline at end of file diff --git a/src/views/work/adminRepairDetailLang.js b/src/views/work/adminRepairDetailLang.js new file mode 100644 index 0000000..f787ee0 --- /dev/null +++ b/src/views/work/adminRepairDetailLang.js @@ -0,0 +1,128 @@ +export const messages = { + en: { + adminRepairDetail: { + title: 'Repair Detail', + back: 'Back', + repairId: 'Work Order Code', + repairType: 'Repair Type', + repairName: 'Repairer', + tel: 'Contact', + location: 'Location', + appointmentTime: 'Appointment Time', + status: 'Status', + repairContent: 'Repair Content', + maintenanceType: 'Maintenance Type', + paidService: 'Paid Service', + freeService: 'Free Service', + needMaterials: 'Need Materials', + noMaterials: 'No Materials', + materials: 'Materials', + feeDetails: 'Fee Details', + yuan: 'Yuan (Unit Price * Quantity)', + comprehensiveScore: 'Comprehensive Score', + doorSpeedScore: 'Door Speed Score', + serviceScore: 'Service Score', + averageScore: 'Average Score', + points: 'Points', + visitSatisfaction: 'Visit Satisfaction', + satisfied: 'Satisfied', + dissatisfied: 'Dissatisfied', + visitContent: 'Visit Content', + repairPhotos: 'Work Order Photos', + beforePhotos: 'Before Repair Photos', + afterPhotos: 'After Repair Photos', + relatedItems: 'Related Items', + itemId: 'Item ID', + itemType: 'Item Type', + itemName: 'Item Name', + itemSpec: 'Item Specification', + itemQuantity: 'Item Quantity', + itemPrice: 'Item Price', + user: 'User', + time: 'Time', + workflow: 'Work Order Flow', + serial: 'No.', + handler: 'Handler', + startTime: 'Start Time', + endTime: 'End Time', + duration: 'Duration', + comment: 'Comment', + reply: 'Reply', + replyAppraise: 'Reply Appraise', + content: 'Content', + replyPlaceholder: 'Required, please fill in the reply content', + replyRequired: 'Reply content is required', + replyMaxLength: 'Reply content cannot exceed 512 characters', + replySuccess: 'Reply submitted successfully', + replyError: 'Failed to submit reply', + invalidOperation: 'Invalid operation', + dataError: 'Data error', + loadError: 'Failed to load repair details', + loadResourceError: 'Failed to load resource records', + loadUserError: 'Failed to load repair staff' + } + }, + zh: { + adminRepairDetail: { + title: '报修详情', + back: '返回', + repairId: '工单编码', + repairType: '报修类型', + repairName: '报修人', + tel: '联系方式', + location: '位置', + appointmentTime: '预约时间', + status: '状态', + repairContent: '报修内容', + maintenanceType: '维修类型', + paidService: '有偿服务', + freeService: '无偿服务', + needMaterials: '需要用料', + noMaterials: '无需用料', + materials: '用料', + feeDetails: '费用明细', + yuan: '元(单价*数量)', + comprehensiveScore: '综合评价得分', + doorSpeedScore: '上门速度评分', + serviceScore: '维修员服务评分', + averageScore: '平均分', + points: '分', + visitSatisfaction: '回访满意度', + satisfied: '满意', + dissatisfied: '不满意', + visitContent: '回访内容', + repairPhotos: '工单图片', + beforePhotos: '维修前图片', + afterPhotos: '维修后图片', + relatedItems: '相关物品', + itemId: '物品资源编号', + itemType: '物品资源类型', + itemName: '物品资源名称', + itemSpec: '物品资源规格', + itemQuantity: '物品使用数量', + itemPrice: '物品价格', + user: '使用人', + time: '时间', + workflow: '工单流转', + serial: '序号', + handler: '处理人', + startTime: '处理开始时间', + endTime: '处理结束时间', + duration: '耗时', + comment: '意见', + reply: '回复', + replyAppraise: '回复评价', + content: '内容', + replyPlaceholder: '必填,请填写回复内容', + replyRequired: '回复内容不能为空', + replyMaxLength: '回复内容超过500个字', + replySuccess: '回复成功', + replyError: '回复失败', + invalidOperation: '非法操作', + dataError: '数据异常', + loadError: '加载报修详情失败', + loadResourceError: '加载物品记录失败', + loadUserError: '加载维修人员失败' + } + } +} \ No newline at end of file diff --git a/src/views/work/adminRepairDetailList.vue b/src/views/work/adminRepairDetailList.vue new file mode 100644 index 0000000..5a56475 --- /dev/null +++ b/src/views/work/adminRepairDetailList.vue @@ -0,0 +1,318 @@ + + + + + \ No newline at end of file diff --git a/src/views/work/adminRepairLang.js b/src/views/work/adminRepairLang.js new file mode 100644 index 0000000..e86fd07 --- /dev/null +++ b/src/views/work/adminRepairLang.js @@ -0,0 +1,74 @@ +export const messages = { + en: { + adminRepair: { + search: { + title: 'Search Conditions', + repairId: 'Please enter work order number', + repairName: 'Please enter repairer name', + tel: 'Please enter repair phone' + }, + list: { + title: 'Community Repair' + }, + table: { + repairId: 'Work Order Code', + communityName: 'Community Name', + repairObjName: 'Location', + repairTypeName: 'Repair Type', + maintenanceType: 'Maintenance Type', + repairName: 'Repairer', + tel: 'Contact', + appointmentTime: 'Appointment Time', + createTime: 'Submission Time', + submitHours: 'Submission Duration', + finishTime: 'Completion Time', + state: 'Status', + timedTask: 'Timed Task Processing' + }, + maintenanceType: { + paid: 'Paid Service', + free: 'Free Service', + withMaterial: 'Need Materials', + withoutMaterial: 'No Materials Needed' + }, + fetchError: 'Failed to get repair list', + treeFetchError: 'Failed to get tree data' + } + }, + zh: { + adminRepair: { + search: { + title: '查询条件', + repairId: '请输入工单编号', + repairName: '请输入报修人', + tel: '请输入报修电话' + }, + list: { + title: '小区报修' + }, + table: { + repairId: '工单编码', + communityName: '小区名称', + repairObjName: '位置', + repairTypeName: '报修类型', + maintenanceType: '维修类型', + repairName: '报修人', + tel: '联系方式', + appointmentTime: '预约时间', + createTime: '提交时间', + submitHours: '提单时长', + finishTime: '完成时间', + state: '状态', + timedTask: '定时任务处理' + }, + maintenanceType: { + paid: '有偿服务', + free: '无偿服务', + withMaterial: '需要用料', + withoutMaterial: '无需用料' + }, + fetchError: '获取报修列表失败', + treeFetchError: '获取树形数据失败' + } + } +} \ No newline at end of file diff --git a/src/views/work/adminRepairList.vue b/src/views/work/adminRepairList.vue new file mode 100644 index 0000000..bca61ee --- /dev/null +++ b/src/views/work/adminRepairList.vue @@ -0,0 +1,216 @@ + + + + + \ No newline at end of file -- libgit2 0.21.4