From c8479d2ed605d53e7b00cbed40e4120941d1a6bc Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: Wed, 30 Jul 2025 11:34:55 +0800
Subject: [PATCH] 优化工作单pc 端办理bug
---
src/api/oa/workTaskDetailApi.js | 158 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/components/oa/WorkDetailTask.vue | 2 +-
src/i18n/commonLang.js | 6 ++++--
src/i18n/oaI18n.js | 3 +++
src/router/oaRouter.js | 5 +++++
src/views/oa/doWorkList.vue | 124 ++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------
src/views/oa/workDetailList.vue | 4 ++--
src/views/oa/workTaskDetailLang.js | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/views/oa/workTaskDetailList.vue | 415 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
9 files changed, 707 insertions(+), 99 deletions(-)
create mode 100644 src/api/oa/workTaskDetailApi.js
create mode 100644 src/views/oa/workTaskDetailLang.js
create mode 100644 src/views/oa/workTaskDetailList.vue
diff --git a/src/api/oa/workTaskDetailApi.js b/src/api/oa/workTaskDetailApi.js
new file mode 100644
index 0000000..49bdb0a
--- /dev/null
+++ b/src/api/oa/workTaskDetailApi.js
@@ -0,0 +1,158 @@
+import request from '@/utils/request'
+import { getCommunityId } from '@/api/community/communityApi'
+
+// 获取工单详情
+export function getWorkDetail(params) {
+ return new Promise((resolve, reject) => {
+ request({
+ url: '/work.listWorkPool',
+ method: 'get',
+ params: {
+ ...params,
+ communityId: getCommunityId()
+ }
+ }).then(response => {
+ const res = response.data
+ resolve(res)
+ }).catch(error => {
+ reject(error)
+ })
+ })
+}
+
+// 获取工单项列表
+export function getWorkTaskItems(params) {
+ return new Promise((resolve, reject) => {
+ request({
+ url: '/task.listWorkTaskItem',
+ method: 'get',
+ params: {
+ ...params,
+ communityId: getCommunityId()
+ }
+ }).then(response => {
+ const res = response.data
+ resolve(res)
+ }).catch(error => {
+ reject(error)
+ })
+ })
+}
+
+// 获取工单事件列表
+export function getWorkEvents(params) {
+ return new Promise((resolve, reject) => {
+ request({
+ url: '/workEvent.listWorkEvent',
+ method: 'get',
+ params: {
+ ...params,
+ communityId: getCommunityId()
+ }
+ }).then(response => {
+ const res = response.data
+ resolve(res)
+ }).catch(error => {
+ reject(error)
+ })
+ })
+}
+
+// 获取工单文件列表
+export function getWorkFiles(params) {
+ return new Promise((resolve, reject) => {
+ request({
+ url: '/work.listWorkPoolFile',
+ method: 'get',
+ params: {
+ ...params,
+ communityId: getCommunityId()
+ }
+ }).then(response => {
+ const res = response.data
+ resolve(res)
+ }).catch(error => {
+ reject(error)
+ })
+ })
+}
+
+// 完成工单任务
+export function finishWorkTask(data) {
+ return new Promise((resolve, reject) => {
+ request({
+ url: '/work.finishWorkTask',
+ method: 'post',
+ data: {
+ ...data,
+ communityId: getCommunityId()
+ }
+ }).then(response => {
+ const res = response.data
+ resolve(res)
+ }).catch(error => {
+ reject(error)
+ })
+ })
+}
+
+// 获取组织树
+export function getOrgTree(params) {
+ return new Promise((resolve, reject) => {
+ request({
+ url: '/org.listOrgTree',
+ method: 'get',
+ params: {
+ ...params,
+ communityId: getCommunityId()
+ }
+ }).then(response => {
+ const res = response.data
+ resolve(res)
+ }).catch(error => {
+ reject(error)
+ })
+ })
+}
+
+// 获取员工列表
+export function getStaffList(params) {
+ return new Promise((resolve, reject) => {
+ request({
+ url: '/query.staff.infos',
+ method: 'get',
+ params: {
+ ...params,
+ communityId: getCommunityId()
+ }
+ }).then(response => {
+ const res = response.data
+ resolve(res)
+ }).catch(error => {
+ reject(error)
+ })
+ })
+}
+
+// 上传文件
+export function uploadFile(data, config) {
+ return new Promise((resolve, reject) => {
+ const formData = new FormData()
+ formData.append('uploadFile', data.get('uploadFile'))
+
+ request({
+ url: '/uploadVedio/upload',
+ method: 'post',
+ data: formData,
+ headers: {
+ 'Content-Type': 'multipart/form-data'
+ },
+ ...config
+ }).then(response => {
+ const res = response.data
+ resolve(res)
+ }).catch(error => {
+ reject(error)
+ })
+ })
+}
\ No newline at end of file
diff --git a/src/components/oa/WorkDetailTask.vue b/src/components/oa/WorkDetailTask.vue
index b4f3db7..33d06ed 100644
--- a/src/components/oa/WorkDetailTask.vue
+++ b/src/components/oa/WorkDetailTask.vue
@@ -161,7 +161,7 @@ export default {
},
openWorkTaskDetail(work) {
this.$router.push({
- path: '/oa/workTaskDetail',
+ path: '/pages/oa/workTaskDetail',
query: {
workId: work.workId,
taskId: work.taskId
diff --git a/src/i18n/commonLang.js b/src/i18n/commonLang.js
index 870c1a3..c61de62 100644
--- a/src/i18n/commonLang.js
+++ b/src/i18n/commonLang.js
@@ -62,7 +62,8 @@ export const messages = {
file:'File',
hide:'Hide',
viewDetail:'View Detail',
- yuan:'yuan'
+ yuan:'yuan',
+ process:'Process'
}
},
zh: {
@@ -128,7 +129,8 @@ export const messages = {
file:'附件',
hide:'隐藏',
viewDetail:'查看详情',
- yuan:'元'
+ yuan:'元',
+ process:'处理'
}
}
}
\ No newline at end of file
diff --git a/src/i18n/oaI18n.js b/src/i18n/oaI18n.js
index 1305828..72938a7 100644
--- a/src/i18n/oaI18n.js
+++ b/src/i18n/oaI18n.js
@@ -56,6 +56,7 @@ import { messages as visitUndoMessages } from '../views/oa/visitUndoLang'
import { messages as doHistoryComplaintsMessages } from '../views/oa/doHistoryComplaintsLang'
import { messages as myAuditHistoryOrdersMessages } from '../views/resource/myAuditHistoryOrdersLang'
import { messages as visitFinishMessages } from '../views/oa/visitFinishLang'
+import { messages as workTaskDetailMessages } from '../views/oa/workTaskDetailLang'
export const messages ={
@@ -117,6 +118,7 @@ export const messages ={
...doHistoryComplaintsMessages.en,
...myAuditHistoryOrdersMessages.en,
...visitFinishMessages.en,
+ ...workTaskDetailMessages.en,
},
zh:{
...activitiesTypeManageMessages.zh,
@@ -176,5 +178,6 @@ export const messages ={
...doHistoryComplaintsMessages.zh,
...myAuditHistoryOrdersMessages.zh,
...visitFinishMessages.zh,
+ ...workTaskDetailMessages.zh,
}
}
\ No newline at end of file
diff --git a/src/router/oaRouter.js b/src/router/oaRouter.js
index 468e2f0..be2e821 100644
--- a/src/router/oaRouter.js
+++ b/src/router/oaRouter.js
@@ -269,4 +269,9 @@ export default [
name:'/pages/property/visitFinish',
component: () => import('@/views/oa/visitFinishList.vue')
},
+ {
+ path:'/pages/oa/workTaskDetail',
+ name:'/pages/oa/workTaskDetail',
+ component: () => import('@/views/oa/workTaskDetailList.vue')
+ },
]
\ No newline at end of file
diff --git a/src/views/oa/doWorkList.vue b/src/views/oa/doWorkList.vue
index bdd6e87..2eb3c84 100644
--- a/src/views/oa/doWorkList.vue
+++ b/src/views/oa/doWorkList.vue
@@ -4,12 +4,9 @@
-