diff --git a/src/components/mdp-ui-ext/mdp-ext-infos/Index.vue b/src/components/mdp-ui-ext/mdp-ext-infos/Index.vue index d75895b3..a0b5f9e1 100644 --- a/src/components/mdp-ui-ext/mdp-ext-infos/Index.vue +++ b/src/components/mdp-ui-ext/mdp-ext-infos/Index.vue @@ -87,6 +87,26 @@ + + + {{it.name}} + + : + : + + + + + + + {{it.name}} + + : + : + + + + @@ -129,6 +149,12 @@ + + + + + + @@ -200,7 +226,7 @@ data() { return{ configVisible:false, - itemTypes:[//支持简单的1-普通文本2-数字,3-日期,8-富文本,9单图文,15-是否' + itemTypes:[//支持简单的1-普通文本2-数字,3-日期,8-富文本,9单图文,15-是否',16-用户,17-部门 {id:'1',name:'普通文本'}, {id:'2',name:'数字'}, {id:'3',name:'日期'}, @@ -208,6 +234,8 @@ {id:'8',name:'富文本'}, {id:'9',name:'单图文'}, {id:'15',name:'是否'}, + {id:'16',name:'用户'}, + {id:'17',name:'部门'}, ], extInfosList:[],//[{name:'中文名称',id:'编号',value:'值',link:'超链接',remark:'备注',type:'支持简单的1-普通文本2-数字,3-日期,8-富文本,9单图文,15-是否'}] diff --git a/src/router/modules/xm_core.ts b/src/router/modules/xm_core.ts index d0de65a1..17e4f727 100644 --- a/src/router/modules/xm_core.ts +++ b/src/router/modules/xm_core.ts @@ -376,7 +376,7 @@ const RoutesXmCore: AppRouteRecordRaw[] = [ { path: 'setup', props:{bizKey:'xm_project_start_approva'}, - component: () => import('@/views/xm/core/xmProject/XmProjectSetup.vue'), + component: () => import('@/views/xm/core/xmProject/XmProjectDetail.vue'), name: 'projectSetup', meta: { title: '项目-立项申请', @@ -398,41 +398,17 @@ const RoutesXmCore: AppRouteRecordRaw[] = [ } }, { - path: 'budget/change', - props:{bizKey:'xm_project_budget_change_approva'}, - component: () => import('@/views/xm/core/xmProject/XmProjectDetail.vue'), - name: 'projectBudgetChange', + path: 'comm/change', + props:{bizKey:'xm_project_comm_change_approva'}, + component: () => import('@/views/xm/core/xmProject/XmProjectCommChange.vue'), + name: 'projectCommChange', meta: { - title: '项目-预算变更申请', - icon: 'project', - menu: false, - hidden: true - } - }, - { - path: 'duration/change', - props:{bizKey:'xm_project_delay_approva'}, - component: () => import('@/views/xm/core/xmProject/XmProjectDetail.vue'), - name: 'projectDurationChange', - meta: { - title: '项目-工期变更申请', + title: '项目-项目变更申请', icon: 'project', menu: false, hidden: true } }, - { - path: 'comm/change', - props:{bizKey:'xm_project_comm_approva'}, - component: () => import('@/views/xm/core/xmProject/XmProjectDetail.vue'), - name: 'projectCommChange', - meta: { - title: '项目-项目整体变更申请', - icon: 'project', - menu: false, - hidden: true - } - }, { path: 'currFlow', component: () => import('@/views/xm/core/xmProject/XmProjectCurrFlow.vue'), diff --git a/src/views/xm/core/xmProject/XmProjectSetup.vue b/src/views/xm/core/xmProject/XmProjectCommChange.vue similarity index 64% rename from src/views/xm/core/xmProject/XmProjectSetup.vue rename to src/views/xm/core/xmProject/XmProjectCommChange.vue index 7721ab92..c9efe611 100644 --- a/src/views/xm/core/xmProject/XmProjectSetup.vue +++ b/src/views/xm/core/xmProject/XmProjectCommChange.vue @@ -1,116 +1,38 @@ @@ -206,10 +128,25 @@ export default { add: addXmProject, edit: editXmProject, editSomeFields: editXmProjectSomeFields - } + } , + xmProjectFields:[], + tableDatas:[], }//end return },//end data methods: { + initTalbeDatas(){ + debugger + let tds=[] + this.xmProjectFields.forEach((k)=>{ + let extVals=JSON.parse(k.extVals?.length>0?k.extVals:'[]') + let row={id:k.id,name:k.name,ovalue:this.editForm[k.id],nvalue:null} + extVals.forEach(k=>{ + row[k.id]=k.value + }) + tds.push(row) + }) + this.tableDatas=tds + }, sendToProcessApprova: function () { let row=this.editForm let bizKey="xm_project_start_approva" @@ -337,10 +274,17 @@ export default { }, initCurrData(){ this.editForm={...this.projectInfo} + this.$mdp.getDictOptions('xm_project_fields').then(res=> + { + this.xmProjectFields=res + this.initTalbeDatas() + + }) } /**end 在上面加自定义方法**/ },//end method components: { + }, } diff --git a/src/views/xm/core/xmProject/XmProjectEdit.vue b/src/views/xm/core/xmProject/XmProjectEdit.vue index fe433e98..a23a675a 100644 --- a/src/views/xm/core/xmProject/XmProjectEdit.vue +++ b/src/views/xm/core/xmProject/XmProjectEdit.vue @@ -10,6 +10,7 @@ +   流程状态: @@ -219,7 +220,7 @@ - + 类型 人数 工作量 @@ -228,7 +229,7 @@ - + 内购 @@ -240,7 +241,7 @@ 万元 - + 外购 @@ -252,7 +253,7 @@ - + 小计 {{ autoParams.planOuserCnt + autoParams.planIuserCnt }}人 @@ -322,15 +323,11 @@ - 预算变更申请 - - 项目金额变更申请 - 工期变更申请 - - 变更申请 + 立项申请 + 结项申请
    +
  1. 项目名称:${row.name}
  2. +
  3. 项目编号:${row.id}
  4. +
  5. 开始日期:${row.startTime} 结束日期:${row.endTime}
  6. +
  7. 总工期:${row.planWorkingHours}小时
  8. +
  9. 需要人员:${row.planIuserCnt+row.planOuserCnt}人
  10. +
  11. 项目目标:${row.target||''}
  12. +
  13. 项目总控:${row.admUsername}
  14. +
  15. 项目经理:${row.pmUsername}
  16. +
  17. 项目预算:${row.planTotalCost||'0'}元
  18. +
  19. 合同金额:${row.contractAmt||'0'}元
  20. +
  21. 预计毛利率:${row.budgetMarginRate||'-'}%
  22. +
  23. 立项说明:${row.setupRemark||''}
  24. +
  25. 项目说明:${row.description||''}
  26. +

`; + params.restUrl = "/"+config.getXmCtx() + "/xm/core/xmProject/processApprova"; + params.flowVars.data = row + this.$router.push({ name: 'bizStartProc', query: { paramsId: this.$mdp.setCacheParams(params) } }); } else { this.$notify.error("不支持的审批事项"); return; - } - - //this.$useXmStore.addVisitedViews( {path:'/mdp/workflow/re/procdef/bizStartProc',query:{params:jsonParmas}}) + } }, handleCommand(command) { if (command.type == 'sendToProcessApprova') { @@ -1086,6 +1102,7 @@ export default { }) }, initCurrData() { + this.editForm = Object.assign(this.editForm, this.selProject) if (this.currOpType === 'add') { this.editForm.pmUserid = this.userInfo.userid @@ -1121,6 +1138,17 @@ export default { editSomeFieldsCheck(row, fieldName, $event, params) { + let field=this.xmProjectfields.find(k=>k.id==fieldName) + if(field?.id){ + + + setTimeout(() => { + this.editForm={...this.dataBak} + this.$notify.error( field.name+"的修改需要审核,请发起项目变更流程" ) + }, 1); + return false; + + } if (fieldName == "admUserid") { params["admUserid"] = $event.userid; params["admUsername"] = $event.username; @@ -1167,6 +1195,8 @@ export default { }, mounted() { this.$mdp.getDictOptions('projectStatus').then(res => this.dicts.projectStatus = res) + + this.$mdp.getDictOptions('xm_project_fields').then(res => this.xmProjectfields = res) } diff --git a/src/views/xm/core/xmProject/top-nav.vue b/src/views/xm/core/xmProject/top-nav.vue index 14be7fcc..a4680516 100644 --- a/src/views/xm/core/xmProject/top-nav.vue +++ b/src/views/xm/core/xmProject/top-nav.vue @@ -125,12 +125,6 @@ - - - - - -