From afa0a528985eb04ac4ff56a03382b8250ccaf245 Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Tue, 25 Jun 2024 16:21:03 +0800 Subject: [PATCH 01/13] =?UTF-8?q?fix=20:=20=E4=BF=AE=E5=A4=8D=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E5=88=86=E6=91=8A=E5=A4=8D=E5=88=B6/=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E4=B8=80=E8=A1=8C=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DetailComponent/ExpenseDetail.vue | 8 ++ src/views/expense-management/share/add.vue | 76 ++++++++++++------- 2 files changed, 57 insertions(+), 27 deletions(-) diff --git a/src/components/DetailComponent/ExpenseDetail.vue b/src/components/DetailComponent/ExpenseDetail.vue index 7984fed..02f0e87 100644 --- a/src/components/DetailComponent/ExpenseDetail.vue +++ b/src/components/DetailComponent/ExpenseDetail.vue @@ -49,6 +49,7 @@ + + diff --git a/src/views/expense-management/share/moblieDetail/ExpenseDetailMoblie.vue b/src/views/expense-management/share/moblieDetail/ExpenseDetailMoblie.vue new file mode 100644 index 0000000..cfbeeb6 --- /dev/null +++ b/src/views/expense-management/share/moblieDetail/ExpenseDetailMoblie.vue @@ -0,0 +1,257 @@ + + + + diff --git a/src/views/expense-management/share/moblieDetail/index.vue b/src/views/expense-management/share/moblieDetail/index.vue new file mode 100644 index 0000000..48e79b6 --- /dev/null +++ b/src/views/expense-management/share/moblieDetail/index.vue @@ -0,0 +1,138 @@ + + + + diff --git a/src/views/project-demand/requirement/moblieDetail/CollectionDetailMoblie.vue b/src/views/project-demand/requirement/moblieDetail/CollectionDetailMoblie.vue new file mode 100644 index 0000000..74c0730 --- /dev/null +++ b/src/views/project-demand/requirement/moblieDetail/CollectionDetailMoblie.vue @@ -0,0 +1,192 @@ + + + + + diff --git a/src/views/project-demand/requirement/moblieDetail/OpinionMoblie.vue b/src/views/project-demand/requirement/moblieDetail/OpinionMoblie.vue new file mode 100644 index 0000000..9b775e6 --- /dev/null +++ b/src/views/project-demand/requirement/moblieDetail/OpinionMoblie.vue @@ -0,0 +1,168 @@ + + + + + diff --git a/src/views/project-demand/requirement/moblieDetail/index.vue b/src/views/project-demand/requirement/moblieDetail/index.vue new file mode 100644 index 0000000..b6c78f9 --- /dev/null +++ b/src/views/project-demand/requirement/moblieDetail/index.vue @@ -0,0 +1,141 @@ + + + + + diff --git a/src/views/project-management/mobledetail/ApprovalDetailMoblie.vue b/src/views/project-management/mobledetail/ApprovalDetailMoblie.vue index 322fb4b..3aca84c 100644 --- a/src/views/project-management/mobledetail/ApprovalDetailMoblie.vue +++ b/src/views/project-management/mobledetail/ApprovalDetailMoblie.vue @@ -2,9 +2,14 @@
- +
diff --git a/src/views/project-management/mobledetail/SummaryDetailMoblie.vue b/src/views/project-management/mobledetail/SummaryDetailMoblie.vue index 9706b26..311c809 100644 --- a/src/views/project-management/mobledetail/SummaryDetailMoblie.vue +++ b/src/views/project-management/mobledetail/SummaryDetailMoblie.vue @@ -132,9 +132,14 @@ - +
diff --git a/src/views/project-management/mobledetail/index.vue b/src/views/project-management/mobledetail/index.vue index 74b09c4..9b3744e 100644 --- a/src/views/project-management/mobledetail/index.vue +++ b/src/views/project-management/mobledetail/index.vue @@ -1,51 +1,53 @@ diff --git a/src/views/system/user/add.vue b/src/views/system/user/add.vue index f60fec1..4e71d6c 100644 --- a/src/views/system/user/add.vue +++ b/src/views/system/user/add.vue @@ -16,6 +16,7 @@ import { useTagsView } from '@/stores/tagsview.js' import { useAuthStore } from '@/stores/userstore.js' import { useCacheStore } from "@/stores/cache.js"; import { getDeptOpt, getSubCompOpt, getRolesOpt, getJobOpt, getUserDetail } from '@/api/user/user.js' +import { onBeforeMount } from 'vue'; const tagsViewStore = useTagsView() const authStore = useAuthStore() @@ -183,22 +184,17 @@ const getInstance = (e) => { } const init = async () => { - const { data } = await getDeptOpt() - localData.departmentIdOpt = data - const res = await getSubCompOpt() - localData.subCompanyIdOpt = res.data - const roleRes = await getRolesOpt() - localData.roleOpt = roleRes.data - const jobRes = await getJobOpt() - localData.jobOpt = jobRes.data - // const reqList = [ - // getDeptOpt(), - // getSubCompOpt(), - // getRolesOpt(), - // getJobOpt() - // ] - // const resAll = await Promise.all(reqList) - // console.log("🚀 ~ init ~ resAll:", resAll) + const reqList = [ + getDeptOpt(), + getSubCompOpt(), + getRolesOpt(), + getJobOpt() + ] + const resAll = await Promise.all(reqList) + localData.departmentIdOpt = resAll[0].data + localData.subCompanyIdOpt = resAll[1].data + localData.roleOpt = resAll[2].data + localData.jobOpt = resAll[3].data } const getInfo = async () => { @@ -209,7 +205,9 @@ const getInfo = async () => { const res = await getDeptOpt({subCompanyId: data.subCompanyId}) localData.departmentIdOpt = res.data } - form.value.setValues(data) + nextTick(()=>{ + form.value.setValues(data) + }) } From 114c9116b1914adb5e23881023a51e6a5532633d Mon Sep 17 00:00:00 2001 From: wenhua <1084668738@qq.com> Date: Fri, 28 Jun 2024 00:08:24 +0800 Subject: [PATCH 07/13] =?UTF-8?q?feat:=20=E9=98=B6=E6=AE=B5=E5=8F=98?= =?UTF-8?q?=E6=9B=B4=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/router/index.js | 5 + .../ApprovalDetailMoblie.vue | 277 ++++++++++++++++++ .../phaseDetailMoblie/index.vue | 96 ++++++ 3 files changed, 378 insertions(+) create mode 100644 src/views/project-management/phaseDetailMoblie/ApprovalDetailMoblie.vue create mode 100644 src/views/project-management/phaseDetailMoblie/index.vue diff --git a/src/router/index.js b/src/router/index.js index 05ecc69..270b259 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -50,6 +50,11 @@ const router = createRouter({ name: 'expenseManagementMoblie', component: () => import('@/views/expense-management/share/moblieDetail/index.vue') }, + { + path: '/phase/detail/moblie', + name: 'phaseDetailMoblie', + component: () => import('@/views/project-management/phaseDetailMoblie/index.vue') + }, { path: '/', name: 'layout', diff --git a/src/views/project-management/phaseDetailMoblie/ApprovalDetailMoblie.vue b/src/views/project-management/phaseDetailMoblie/ApprovalDetailMoblie.vue new file mode 100644 index 0000000..3aca84c --- /dev/null +++ b/src/views/project-management/phaseDetailMoblie/ApprovalDetailMoblie.vue @@ -0,0 +1,277 @@ + + + + + diff --git a/src/views/project-management/phaseDetailMoblie/index.vue b/src/views/project-management/phaseDetailMoblie/index.vue new file mode 100644 index 0000000..f6625d4 --- /dev/null +++ b/src/views/project-management/phaseDetailMoblie/index.vue @@ -0,0 +1,96 @@ + + + + + From daac1812bf2b89d869d15c46c7c6d0814f7e6d72 Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Fri, 28 Jun 2024 16:25:21 +0800 Subject: [PATCH 08/13] =?UTF-8?q?fix=20:=20=E4=BC=98=E5=8C=96=E5=AE=A1?= =?UTF-8?q?=E6=89=B9=E8=AE=B0=E5=BD=95=E3=80=81=E7=94=A8=E6=88=B7=E8=B4=A6?= =?UTF-8?q?=E5=8F=B7=E5=88=87=E6=8D=A2=E7=82=B9=E5=87=BB=E4=BD=8D=E7=BD=AE?= =?UTF-8?q?=E3=80=81=E6=89=80=E5=B1=9E=E5=85=AC=E5=8F=B8=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E6=A1=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DetailComponent/CompanyPicker.vue | 36 +++++++++--------- src/layout/navbar/index.vue | 4 +- src/views/project-demand/requirement/add.vue | 8 ++-- .../project-demand/requirement/detail.vue | 6 ++- .../project-management/filing/attachment.vue | 3 -- .../implementation/account.vue | 4 +- src/views/workflow/common/OperationRender.vue | 38 ++++++++++++------- 7 files changed, 58 insertions(+), 41 deletions(-) diff --git a/src/components/DetailComponent/CompanyPicker.vue b/src/components/DetailComponent/CompanyPicker.vue index b739cd8..61cedf2 100644 --- a/src/components/DetailComponent/CompanyPicker.vue +++ b/src/components/DetailComponent/CompanyPicker.vue @@ -89,7 +89,6 @@ const props = defineProps({ type: Boolean } }); -const isChooseAll = ref(true); let selectItem = reactive({ type: -1, value: "0" @@ -138,22 +137,14 @@ const checkBoxChange = (val) => { } const matterTree = (list, flag) => { list.forEach(item => { - if (!flag&&item.value!==-1) { + if (!flag) { tree.value.setChecked(item, false) } if (item.children !== undefined) { - matterTree(item.children) + matterTree(item.children, false) } }) } -// const cancelAll = () => { -// isChooseAll.value = true -// tree.value.setCheckedNodes([]) -// } -// const chooseAll = () => { -// isChooseAll.value = false -// matterTree(dataList.value) -// } const getList = () => { getSubCompOpt().then(res => { dataList.value = [ @@ -176,15 +167,26 @@ const filterNode = (value, data) => { const show = () => { //用于弹开部门选择 visible.value = true; - selectList.value = _value.value - defaultChecked.value = _value.value.map(item => item.value) + if(selectList.value.length==0){ + selectList.value=[] + defaultChecked.value =[] + }else { + selectList.value = _value.value + defaultChecked.value = _value.value.map(item => item.value) + } getList() }; const handleChange = (data, checked) => { - if (data.value == -1&&checked) { - // tree.value.setCheckedNodes(['-1']) - matterTree(dataList.value, false) - // return; + if (data.value == -1) { + if(checked){ + checkStrictly.value = false + const index = checkList.value.indexOf('2') + if (index != -1) { + checkList.value.splice(index, 1) + } + matterTree(dataList.value[0].children, false) + tree.value.setChecked(data,true); + } } // 左侧有选择框 + 多选 if (props.multiple) { diff --git a/src/layout/navbar/index.vue b/src/layout/navbar/index.vue index 642f14a..0a5618e 100644 --- a/src/layout/navbar/index.vue +++ b/src/layout/navbar/index.vue @@ -5,9 +5,9 @@
-
+
{{ userInfo.nickName }} -
{{ userInfo.nickName }} +
{{ userInfo.nickName }} diff --git a/src/views/project-demand/requirement/add.vue b/src/views/project-demand/requirement/add.vue index 2449aeb..93c11e1 100644 --- a/src/views/project-demand/requirement/add.vue +++ b/src/views/project-demand/requirement/add.vue @@ -34,13 +34,15 @@ +
+ {{ selectedCompanyList.length === 0 ? '请选择所属公司' : '更改' }} + +
{{ selectedCompanyList }}
{{ getName(selectedCompanyList) }}
{{ showExpendText }}
- {{ selectedCompanyList.length === 0 ? '请选择所属公司' : '更改' }} -
@@ -98,7 +100,7 @@ 重新提交 返回
- +
diff --git a/src/views/project-demand/requirement/detail.vue b/src/views/project-demand/requirement/detail.vue index 7157acd..bcff8c0 100644 --- a/src/views/project-demand/requirement/detail.vue +++ b/src/views/project-demand/requirement/detail.vue @@ -63,7 +63,11 @@ const init = async () => { } loading.value = false let data = res.data - data.formData.companyIds = getCompanyOptionItem(data.formData.companyIds) + if(data.formData.companyIds[0]==-1){ + data.formData.companyIds = ['所有公司'] + }else { + data.formData.companyIds = getCompanyOptionItem(data.formData.companyIds) + } collectData.value = data formData.value = data.formData; if (data.formData.specialFund) { diff --git a/src/views/project-management/filing/attachment.vue b/src/views/project-management/filing/attachment.vue index 20dde41..ba98f28 100644 --- a/src/views/project-management/filing/attachment.vue +++ b/src/views/project-management/filing/attachment.vue @@ -81,9 +81,6 @@ const handleClick = (tab) => { } const search = async (param) => { - if (activeName.value === '00') { - param.requirementId = requirementId.value - } param.targetId = projectId.value param.targetState = activeName.value searchFileList(param).then(res => { diff --git a/src/views/project-management/implementation/account.vue b/src/views/project-management/implementation/account.vue index a279d04..e12e82a 100644 --- a/src/views/project-management/implementation/account.vue +++ b/src/views/project-management/implementation/account.vue @@ -209,7 +209,7 @@ const tableConfig = reactive({ showOverflowTooltip: false, currentRender: ({row, index}) => { if (row.researchStage && row.researchStage !== null && row.researchStage !== undefined) { - return () + return () } else { return '--' } @@ -285,7 +285,7 @@ const handleUploadFee = () => { const exportExcelHandler = () => { console.log('exportIds.value',exportIds.value) let data = { - projectId: 113 + projectId: route.query.id } exportExcel(data).then(res => { console.log(res) diff --git a/src/views/workflow/common/OperationRender.vue b/src/views/workflow/common/OperationRender.vue index e1d4538..b4fc42e 100644 --- a/src/views/workflow/common/OperationRender.vue +++ b/src/views/workflow/common/OperationRender.vue @@ -13,19 +13,22 @@
-
+
- {{ user.name }} +
+ {{ user.name }} + {{ user.jobActivityDesc }} +
{{ operation.remark }}
-
-
审批人:
-
{{ user.name }}
-
+ + + +
{{ user.operationTime }}
-
+
审批意见: @@ -274,16 +277,25 @@ init() border-bottom: none; } - > div:first-child { + .avatar-block { display: flex; - - > span { - width: 100px; - color: #2a99ff; + .name { + width:130px; + display: flex; + flex-direction: column; margin-left: 10px; - margin-right: 20px; + margin-right: 20px; + + > span:first-child { + color: #2a99ff; + } + >span:last-child{ + margin-top: 5px; + color: #909399; + } } + } > div:nth-child(2) { From b7946d44c8ee9cd7ab69bbec3a1b84c09a8de7f0 Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Fri, 28 Jun 2024 16:38:35 +0800 Subject: [PATCH 09/13] =?UTF-8?q?fix=20:=20=E4=BF=AE=E6=94=B9=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E7=AE=A1=E7=90=86=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/system/user/index.vue | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue index 2f540dc..03b4764 100644 --- a/src/views/system/user/index.vue +++ b/src/views/system/user/index.vue @@ -47,8 +47,8 @@ const searchConfig = ref([ } }, { - label: '用户账号', - prop: 'userName', + label: '用户名称', + prop: 'nickName', component: 'el-input', props: { placeholder: '请输入', @@ -56,8 +56,8 @@ const searchConfig = ref([ } }, { - label: '用户昵称', - prop: 'nickName', + label: '用户账号', + prop: 'userName', component: 'el-input', props: { placeholder: '请输入', @@ -91,12 +91,12 @@ const tableConfig = reactive({ columns: [ { prop: 'userName', - label: '用户名称', + label: '用户账号', align: 'center', }, { prop: 'nickName', - label: '用户昵称', + label: '用户名称', align: 'center', }, { From 291708e71a5edc8bd7f4d8741f7602187bf7df62 Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Fri, 28 Jun 2024 20:05:23 +0800 Subject: [PATCH 10/13] =?UTF-8?q?fix=20:=20=E4=BF=AE=E6=94=B9=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E9=9C=80=E6=B1=82=E5=BE=81=E9=9B=86"=E4=B8=93?= =?UTF-8?q?=E9=A1=B9=E8=B5=84=E9=87=91=E5=90=8D=E7=A7=B0"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/project-demand/requirement/add.vue | 46 +++++++++++++------- 1 file changed, 30 insertions(+), 16 deletions(-) diff --git a/src/views/project-demand/requirement/add.vue b/src/views/project-demand/requirement/add.vue index 93c11e1..74fbbc6 100644 --- a/src/views/project-demand/requirement/add.vue +++ b/src/views/project-demand/requirement/add.vue @@ -38,10 +38,12 @@ {{ selectedCompanyList.length === 0 ? '请选择所属公司' : '更改' }}
-
{{ selectedCompanyList }}
+
{{ getName(selectedCompanyList) }}
{{ getName(selectedCompanyList) }}
{{ showExpendText }} + @click="handleExpend"> + {{ showExpendText }} +
@@ -54,7 +56,7 @@ - + 重新提交 返回
- +
@@ -222,24 +225,16 @@ const showExpendClass = (showMoreCompany) => { if (!showMoreCompany) { if (selectedCompanyList.value.length === 0) { showExpendText.value = '' - return '' - } else if (selectedCompanyList.value.length>14) { + return '' + } else if (selectedCompanyList.value.length > 14) { showExpendText.value = '展开' - return 'company-style' + return 'company-style' } } else { showExpendText.value = '收缩' - return '' + return '' } } -const getCompanyOptionItem = (val) => { - if (val !== undefined) { - val.forEach(item => { - matterTree(companyNameArray.value, companyOption.value, item) - }) - } - return companyNameArray.value.join(','); -} const getName = (list) => { return list.map(item => item.label).join(',') } @@ -405,6 +400,25 @@ const handleResubmit = () => { } }) } + +const getCompanyOptionItem = (val) => { + let newObj = {} + let newArray = [] + if (val !== undefined) { + val.forEach(item => { + matterTree(companyNameArray.value, companyOption.value, item) + companyNameArray.value.forEach(companyItem => { + newObj = { + label: companyItem, + value: item + } + newArray.push(newObj) + }) + }) + } + + return newArray; +} const getDetailInfo = async () => { getFormInfo(route.query.id).then(res => { if (res.code === 1000) { From efd06e0da77baaad1e0ca0143f82a2a10510aeef Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Fri, 28 Jun 2024 20:15:58 +0800 Subject: [PATCH 11/13] =?UTF-8?q?fix=20:=20=E4=BF=AE=E6=94=B9=E9=9C=80?= =?UTF-8?q?=E6=B1=82=E4=B8=8A=E6=8A=A5=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/project-demand/summary/add.vue | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/views/project-demand/summary/add.vue b/src/views/project-demand/summary/add.vue index 1170283..8d88b2b 100644 --- a/src/views/project-demand/summary/add.vue +++ b/src/views/project-demand/summary/add.vue @@ -1,14 +1,14 @@