diff --git a/src/apis/index.js b/src/apis/index.js index 574853d..f39f469 100644 --- a/src/apis/index.js +++ b/src/apis/index.js @@ -70,7 +70,9 @@ export const getPermanent = (params, url) => http.post(`${url}/tall/task/permane // 查找定期任务 export const getRegularTask = (params, url) => http.post(`${url}/tall/task/regular/page`, params); -// 交付物 +/** + * 交付物 + */ // 提交交付物信息 export const submitDeliverInfo = (params, url) => http.post(`${url}/deliver/submitDeliver`, params); @@ -87,7 +89,9 @@ export const getDeliverHistory = (params, url) => http.post(`${url}/deliver/quer // 查看检查记录 export const queryCheckLog = (params, url) => http.post(`${url}/deliver/queryCheckLog`, params); -// 流水账 +/** + * 流水账 + */ // 获取基本信息 (成员列表、项目列表) export const getBasicInfo = url => http.post(`${url}/dailyAccount/info`); @@ -107,6 +111,13 @@ export const clockQuery = (params, url) => http.post(`${url}/clock/query`, param // 打卡 export const clockPunch = (params, url) => http.post(`${url}/clock/punch`, params); +/** + * 财务条 + */ + +// 查询任务上的财务条数据 +export const getFinanceByTask = (params, url) => http.post(`${url}/finance/getByTask`, params); + /** * 导入wbs * @param {object} e diff --git a/src/assets/work.jpg b/src/assets/work.jpg new file mode 100644 index 0000000..2692970 Binary files /dev/null and b/src/assets/work.jpg differ diff --git a/src/components/tall/center/Global.vue b/src/components/tall/center/Global.vue index fa99c59..af9056e 100644 --- a/src/components/tall/center/Global.vue +++ b/src/components/tall/center/Global.vue @@ -91,7 +91,11 @@ async function getGlobalData(id) { } } -function toWorkbench() {} +function toWorkbench() { + store.commit('task/setTaskDetailParams', ''); // 设置详情页参数 + store.commit('task/setTaskDetailUrl', ''); // 设置详情页链接 + store.commit('task/setTaskDetailShow', 'workbench'); // 设置内置组件关键字(根据关键字判断显示的详情页) +} diff --git a/src/plugins/p-task-to-detail/p-task-to-detail.vue b/src/plugins/p-task-to-detail/p-task-to-detail.vue new file mode 100644 index 0000000..eec664d --- /dev/null +++ b/src/plugins/p-task-to-detail/p-task-to-detail.vue @@ -0,0 +1,36 @@ + + + + + diff --git a/src/plugins/workbench/workbench.vue b/src/plugins/workbench/workbench.vue new file mode 100644 index 0000000..040db06 --- /dev/null +++ b/src/plugins/workbench/workbench.vue @@ -0,0 +1,7 @@ + + + diff --git a/src/views/detail/Test.vue b/src/views/detail/Test.vue index d4d1efd..b85b4cf 100644 --- a/src/views/detail/Test.vue +++ b/src/views/detail/Test.vue @@ -2,6 +2,9 @@
+ + + @@ -40,6 +43,7 @@ import pProjectVersionManagementDetail from '@/plugins/p-project-version-managem import pDomainSourceManageDetail from '@/plugins/p-domain-source-manage/p-domain-source-manage-detail.vue'; import pAccountManagementAudit from '@/plugins/p-account-management/p-account-management-audit.vue'; import pAccountManagementUidispose from '@/plugins/p-account-management/p-account-management-uidispose.vue'; +import workbench from '@/plugins/workbench/workbench.vue'; const store = useStore(); diff --git a/src/views/home/Index.vue b/src/views/home/Index.vue index 33ea74f..395a820 100644 --- a/src/views/home/Index.vue +++ b/src/views/home/Index.vue @@ -31,6 +31,8 @@ import { computed, onMounted } from 'vue'; import { useStore } from 'vuex'; // import { useRoute, useRouter } from 'vue-router'; import zhCN from 'ant-design-vue/es/locale/zh_CN'; +import dayjs from 'dayjs'; +import 'dayjs/locale/zh-cn'; import Left from 'components/tall/Left/Index.vue'; // import Navbar from 'components/tall/Top/Navbar.vue'; import TopNavbar from 'components/tall/Top/TopNavbar.vue'; @@ -40,6 +42,7 @@ import Detail from '@/views/detail/Test.vue'; import '@/utils/storage.js'; const locale = zhCN; +dayjs.locale('zh-cn'); const store = useStore(); const collapsed = computed(() => store.state.layout.display.left); // 是否显示左栏 @@ -49,7 +52,8 @@ const projectInfo = computed(() => store.state.projects.project); // 项目信 // const sessionTask = sessionStorage.getItem('taskDetail'); // const taskDetail = computed(() => store.state.task.taskDetail); // 任务信息 const taskDetailUrl = computed(() => store.state.task.taskDetailUrl); // iframe详情页链接 -const targetUrl = sessionStorage.getItem('targetUrl'); // 缓存的详情页链接 +const targetUrl = sessionStorage.getItem('targetUrl'); // 内嵌插件缓存的详情页链接 +const sessionTaskDetailUrl = sessionStorage.getItem('taskDetailUrl'); // 内置组件缓存的详情页链接 const taskDetailShow = computed(() => store.state.task.taskDetailShow); // 内置组件详情页是否显示 const sessionTaskDetailShow = sessionStorage.getItem('taskDetailShow'); // 缓存的显示内置组件详情页的组件标签 @@ -70,9 +74,9 @@ const isFullScreen = computed(() => store.state.layout.isFullScreen); // 流水 // store.dispatch('role/getAllMembers', { param, url }); // } -if (targetUrl && !taskDetailUrl.value) { +if ((targetUrl || sessionTaskDetailUrl) && !taskDetailUrl.value) { // 设置内嵌组件详情页链接 - store.commit('task/setTaskDetailUrl', targetUrl); + store.commit('task/setTaskDetailUrl', targetUrl || sessionTaskDetailUrl); } // 设置某个内置组件详情页显示