diff --git a/src/api/workflow/process-user.js b/src/api/workflow/process-user.js index 733d39c..71604be 100644 --- a/src/api/workflow/process-user.js +++ b/src/api/workflow/process-user.js @@ -29,3 +29,11 @@ export function getMosrUser(params) { params:params }) } + +export function getOrganizationStructure(params) { + return request({ + url: '/admin/organizational/structure/choose', + method: 'get', + params:params + }) +} diff --git a/src/assets/styles/index.scss b/src/assets/styles/index.scss index 93b3576..dfe82e7 100644 --- a/src/assets/styles/index.scss +++ b/src/assets/styles/index.scss @@ -415,7 +415,13 @@ html, body, #app, .el-container, .el-aside, .el-main { overflow: hidden; margin-right: 5px; } +.oran-icon{ + width: 1em; + height: 1em; + margin-right: 4px; + vertical-align: -0.21em; +} .svg-icon { width: 1.2em; height: 1.2em; diff --git a/src/assets/svg/oran.svg b/src/assets/svg/oran.svg new file mode 100644 index 0000000..fd06b29 --- /dev/null +++ b/src/assets/svg/oran.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/AttachmentUpload.vue b/src/components/AttachmentUpload.vue index 2bb6216..66dcef4 100644 --- a/src/components/AttachmentUpload.vue +++ b/src/components/AttachmentUpload.vue @@ -28,10 +28,10 @@ - diff --git a/src/components/DetailComponent/FileComponent.vue b/src/components/DetailComponent/FileComponent.vue index a0cb1e6..ebbbdc4 100644 --- a/src/components/DetailComponent/FileComponent.vue +++ b/src/components/DetailComponent/FileComponent.vue @@ -2,10 +2,10 @@ - diff --git a/src/components/DetailComponent/ProjectApply.vue b/src/components/DetailComponent/ProjectApply.vue index e451304..8541e29 100644 --- a/src/components/DetailComponent/ProjectApply.vue +++ b/src/components/DetailComponent/ProjectApply.vue @@ -32,13 +32,13 @@ + + {{ localFormData.preProcess ? '更改' : '请选择' }} + - - {{ localFormData.preProcess ? '更改' : '请选择' }} - @@ -135,7 +135,7 @@ import UserPicker from "@/views/workflow/process/common/UserPicker.vue"; const router = useRouter() const route = useRoute() const changeDiagram = ref(false) -const preProcessTable = ref() +const formRef = ref() const showSingleTable = ref(false) const projectChargePersonUserList = ref([]) const projectChargePersonUserPicker = ref() @@ -257,6 +257,8 @@ const handleShowProjectChargePersonTable = () => { projectChargePersonUserPicker.value.showUserPicker() } const projectChargePersonUserPickerOk = (userList) => { + console.log('dsfsdfs',formRef.value,formRef.value?.validateField('projectChargePerson')) + projectChargePersonUserList.value = userList } const handleShowProjectPersonTable = () => { @@ -375,92 +377,103 @@ const getFileParam = (item) => { } } const handleSubmit = async () => { - if (deploymentData.value.deploymentName === '重大项目立项' || deploymentData.value.deploymentName === '重大项目验收') { - if (localFormData.value.preProcess === undefined) { + // if (!instance) return + // instance.validate(async (valid) => { + if (!valid) { ElNotification({ title: '提示', - message: '请选择前置流程!', + message: '请完善数据,再提交!', type: 'error' }) + return; + } + if (deploymentData.value.deploymentName === '重大项目立项' || deploymentData.value.deploymentName === '重大项目验收') { + if (localFormData.value.preProcess === undefined) { + ElNotification({ + title: '提示', + message: '请选择前置流程!', + type: 'error' + }) + } + } + let files = [] + if (props.mode === 'resubmit') { + attachment.value.allFileList.forEach(item => { + files.push(getFileParam(item)) + }) + } else { + otherFileList.value.forEach(item => { + files.push(getFileParam(item)) + }) + } + if (attachment.value.singleFile == null) { + attachment.value.validate() + ElNotification({ + title: '提示', + message: '请上传附件', + type: 'error' + }) + return; + } else { + attachment.value.clearValidate() + } + let projectPersonIds = [] + for (const item of projectPersonUserList.value) { + projectPersonIds.push(parseInt(item.id)) + } + let params = { + deploymentId: deploymentId.value, + requirementId: route.query.id, + fileList: files, + singleFile: attachment.value.singleFile, + projectId: projectId.value, + preProcess: JSON.stringify(localFormData.value.preProcess) + } + console.log(params) + let res + if (props.step === '20') { + params.projectChargePerson = parseInt(projectChargePersonUserList.value[0].id) + params.projectPersonIds = projectPersonIds + if (props.mode === 'resubmit') { + res = await resubmitApply(params) + } else { + res = await projectApply(params) + } + } else if (props.step === '40') { + if (props.mode === 'resubmit') { + res = await resubmitCheck(params) + } else { + res = await projectCheck(params) + } + } else if (props.step === '50') { + if (props.mode === 'resubmit') { + res = await resubmitConclusion(params) + } else { + res = await projectConclusion(params) + } } - } - let files = [] - if (props.mode === 'resubmit') { - attachment.value.allFileList.forEach(item => { - files.push(getFileParam(item)) - }) - } else { - otherFileList.value.forEach(item => { - files.push(getFileParam(item)) - }) - } - if (attachment.value.singleFile == null) { - attachment.value.validate() ElNotification({ title: '提示', - message: '请上传附件', - type: 'error' + message: res.msg, + type: res.code === 1000 ? 'success' : 'error' }) - return; - } else { - attachment.value.clearValidate() - } - let projectPersonIds = [] - for (const item of projectPersonUserList.value) { - projectPersonIds.push(parseInt(item.id)) - } - let params = { - deploymentId: deploymentId.value, - requirementId: route.query.id, - fileList: files, - singleFile: attachment.value.singleFile, - projectId: projectId.value, - preProcess: JSON.stringify(localFormData.value.preProcess) - } - console.log(params) - let res - if (props.step === '20') { - params.projectChargePerson = parseInt(projectChargePersonUserList.value[0].id) - params.projectPersonIds = projectPersonIds - if (props.mode === 'resubmit') { - res = await resubmitApply(params) - } else { - res = await projectApply(params) + if (res.code === 1000) { + tagsViewStore.delVisitedViews(router.currentRoute.value.path) + if (props.step === '20') { + await router.push({ + name: 'Initiation' + }) + } else if (props.step === '40') { + await router.push({ + name: 'Implementation' + }) + } else if (props.step === '50') { + await router.push({ + name: 'Filing' + }) + } } - } else if (props.step === '40') { - if (props.mode === 'resubmit') { - res = await resubmitCheck(params) - } else { - res = await projectCheck(params) - } - } else if (props.step === '50') { - if (props.mode === 'resubmit') { - res = await resubmitConclusion(params) - } else { - res = await projectConclusion(params) - } - } - ElNotification({ - title: '提示', - message: res.msg, - type: res.code === 1000 ? 'success' : 'error' - }) - if (res.code === 1000) { - tagsViewStore.delVisitedViews(router.currentRoute.value.path) - if (props.step === '20') { - await router.push({ - name: 'Initiation' - }) - } else if (props.step === '40') { - await router.push({ - name: 'Implementation' - }) - } else if (props.step === '50') { - await router.push({ - name: 'Filing' - }) - } - } + // }) } const init = async () => { let id = projectId.value diff --git a/src/components/DetailComponent/SpecialFundDetail.vue b/src/components/DetailComponent/SpecialFundDetail.vue index a22473f..a7a7634 100644 --- a/src/components/DetailComponent/SpecialFundDetail.vue +++ b/src/components/DetailComponent/SpecialFundDetail.vue @@ -30,10 +30,10 @@ - @@ -41,10 +41,10 @@ - diff --git a/src/components/SearchFilesByTag.vue b/src/components/SearchFilesByTag.vue index f19df57..02cb3b7 100644 --- a/src/components/SearchFilesByTag.vue +++ b/src/components/SearchFilesByTag.vue @@ -21,10 +21,10 @@ - diff --git a/src/components/TagAndFileUpload.vue b/src/components/TagAndFileUpload.vue index 96961a6..2a049d9 100644 --- a/src/components/TagAndFileUpload.vue +++ b/src/components/TagAndFileUpload.vue @@ -16,10 +16,10 @@ - diff --git a/src/components/organizationalStructure/Department.vue b/src/components/organizationalStructure/Department.vue new file mode 100644 index 0000000..030ceb2 --- /dev/null +++ b/src/components/organizationalStructure/Department.vue @@ -0,0 +1,154 @@ + + + + + diff --git a/src/layout/navbar/index.vue b/src/layout/navbar/index.vue index f02e84a..f186f17 100644 --- a/src/layout/navbar/index.vue +++ b/src/layout/navbar/index.vue @@ -77,6 +77,7 @@ const tagsViewStore = useTagsView() const userInfo = ref({}) const visitedP = ref(false) const accountList = ref([]) +const route = useRoute() const router = useRouter() onMounted(() => { setUserInfo() @@ -117,8 +118,12 @@ const accountChange = (userId) => { visitedP.value = !visitedP.value authStore.userLogout() setToken(res.data) - router.push('/') + console.log('router',route) + if(route.path!=='/'){ + + } location.reload() + // router.push('/home') visitedP.value = false } }) diff --git a/src/views/expense-management/share/add.vue b/src/views/expense-management/share/add.vue index 858b434..dbd4e7b 100644 --- a/src/views/expense-management/share/add.vue +++ b/src/views/expense-management/share/add.vue @@ -24,7 +24,7 @@