@jecloud/plugin
Version:
JECloud 插件库
1 lines • 4.28 kB
JavaScript
var e=this&&this.__assign||function(){return e=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},e.apply(this,arguments)};import{isVNode as t,createVNode as n,createTextVNode as a}from"vue";import{ref as r,watch as s}from"vue";import{Modal as o,Panel as i,Tabs as u}from"@jecloud/ui";import l from"../workflow-operation/src/operation-user";import{getSubmitNodeUsers as d,getCounterSignerOperationalUsers as c,doButtonOperate as f}from"../data/api";import{OperatorEnum as p}from"../data/enum";import m from"../data/model/task-operation-params";import{isNotEmpty as g,isEmpty as v,cloneDeep as h}from"@jecloud/utils";function b(e){return"function"==typeof e||"[object Object]"===Object.prototype.toString.call(e)&&!t(e)}export function showTaskChangeUser(t){var n=t.params,a=t.button,r=t.callback,s=a.workflowConfig.currentNode,o=s.nodeId;Promise.all([d(e(e({},n),{target:o})),c(n)]).then((function(e){var t,o=e[0],i=e[1],u={id:i.oneBallotUserId,text:i.oneBallotUserName},l=(null===(t=o.nodeAssigneeInfo[0])||void 0===t?void 0:t.users)||[],d=[];l.length>1&&l.forEach((function(e){d.push({id:e.assignmentConfigType,name:e.assignmentConfigTypeName})}));var c=[],f=[],m=u.id?[u.id]:[],v=i.usersInfo||[];if(v.length>0&&v.forEach((function(e){g(e.opinion)?(c.push({id:e.userId,text:e.userName}),m.push(e.userId)):f.push({id:e.userId,text:e.userName})})),a.operationId===p.TASK_CHANGE_ASSIGNEE_OPERATOR){d=[],l=[{user:[]}];var b=h(f);b.length>0&&b.forEach((function(e){e.code=e.id,e.nodeType="LEAF",e.icon="fal fa-user-alt",e.children=[],e.nodePath="/ROOT/"+e.id,e.parent="ROOT",e.nodeInfoType="json"})),u.id&&(b=b.filter((function(e){return e.id!=u.id})));var k={async:!1,checked:!1,children:b,code:"ROOT",expandable:!0,expanded:!1,id:"ROOT",nodeInfoType:"",text:"ROOT"};b.length>0&&(l[0].user=k),f=[]}var O=h(c);u.id&&O.push(u),y({params:n,button:a,callback:r,currentNode:s,userInfo:{users:l,manager:u,doneUsers:c,tabData:d,unDoneUsers:f,assignee:O,filterUserIds:m}})}))}function y(e){var t,d,c=e.params,g=e.button,y=e.callback,k=e.userInfo,O=e.currentNode,T=r(k.unDoneUsers),I=g.operationId===p.TASK_PERSONNEL_ADJUSTMENTS_OPERATOR,w=r(null===(t=k.tabData[0])||void 0===t?void 0:t.id),U=r(null===(d=k.users[0])||void 0===d?void 0:d.user),x=r(),N=652;v(k.manager.id)&&(N-=29),v(k.doneUsers)&&(N-=29),k.tabData.length<=0&&(N-=81),s((function(){return w.value}),(function(e){var t,n=k.users.filter((function(t){return e==t.assignmentConfigType}));x.value.loadUser(null===(t=n[0])||void 0===t?void 0:t.user)})),o.dialog({title:g.name,icon:g.icon,width:700,class:"je-workflow-user-adjustment",height:N,headerStyle:{height:"50px"},content:function(){var e;return n(i,{class:"je-workflow-task-change-user"},{default:function(){return[n(i.Item,{region:"tbar"},{default:function(){return[k.manager.id?n("div",{class:"je-workflow-task-change-user-div",style:"padding:4px;"},[a("负责人:"),k.manager.text]):null,k.doneUsers.length?n("div",{class:"je-workflow-task-change-user-div",style:"padding:4px;"},[a("已审批人员:"),k.doneUsers.map((function(e){return e.text})).join(",")]):null,k.tabData.length>0?n("div",{class:"task-user-type"},[n("div",{class:"task-user-type-label"},[a("筛选条件:")]),n(u,{class:"task-user-type-items",type:"card",activeKey:w.value,"onUpdate:activeKey":function(e){return w.value=e}},b(e=k.tabData.map((function(e){return n(u.TabPane,{class:{"task-user-type-items-item":!0,"is--active":e.id===w.value},key:e.id,tab:e.name},null)})))?e:{default:function(){return[e]}})]):null]}}),n(i.Item,{style:"height:400px;"},{default:function(){return[n(l,{ref:x,draggable:!1,userDisabled:!0,multiple:I,users:U.value,result:T.value,"onUpdate:result":function(e){return T.value=e}},null)]}})]}})},okButton:{closable:!1,handler:function(e){var t=e.$modal;if(T.value.length){if(O.users=k.assignee.concat(T.value),I){if(k.filterUserIds.length>0){var n=h(T.value).filter((function(e){return-1==k.filterUserIds.indexOf(e.id)}));O.users=k.assignee.concat(n)}}else O.users=T.value;c.assignee=m.parseAssigneeParam([O]),f(c).then((function(e){o.notice(g.name+"成功!","success"),y(e),t.close()}))}else o.alert("请选择人员信息!",o.status.warning)}}})}