驳回至提交节点时,显示审批记录
This commit is contained in:
parent
28d74c166e
commit
25da64e252
|
@ -0,0 +1,97 @@
|
||||||
|
package shkd.wfs.wf.plugin.form;
|
||||||
|
|
||||||
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
|
import kd.bos.dataentity.serialization.SerializationUtils;
|
||||||
|
import kd.bos.form.plugin.AbstractFormPlugin;
|
||||||
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
|
import kd.bos.workflow.component.ApprovalRecord;
|
||||||
|
import kd.bos.workflow.component.approvalrecord.IApprovalRecordGroup;
|
||||||
|
import kd.bos.workflow.engine.TaskService;
|
||||||
|
import kd.bos.workflow.engine.WfUtils;
|
||||||
|
import kd.bos.workflow.service.WorkflowService;
|
||||||
|
import kd.bos.workflow.service.impl.ServiceFactory;
|
||||||
|
import kd.bos.workflow.taskcenter.plugin.util.ApprovalPluginUtil;
|
||||||
|
import kd.sdk.plugin.Plugin;
|
||||||
|
|
||||||
|
import java.util.EventObject;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
public class ApprovalPagePluginNewDemo2 extends AbstractFormPlugin implements Plugin {
|
||||||
|
@Override
|
||||||
|
public void afterCreateNewData(EventObject evt) {
|
||||||
|
// Object id1 = this.getView().getFormShowParameter().getCustomParams().get("taskId");
|
||||||
|
Object id = this.getView().getFormShowParameter().getCustomParams().get("tId");
|
||||||
|
//查看态,需要显示 审批记录页签
|
||||||
|
if(id==null){
|
||||||
|
Boolean onlyView = (Boolean)this.getView().getFormShowParameter().getCustomParams().get("onlyView");
|
||||||
|
//查看态,需要显示 审批记录页签
|
||||||
|
if(onlyView==null){
|
||||||
|
this.getView().setVisible(true,"tabpageap_approvalrecord");
|
||||||
|
this.showApprovalRecord(true, Boolean.FALSE, false, Boolean.FALSE,"qeug_approvalrecordap");
|
||||||
|
}else if(onlyView){
|
||||||
|
this.showApprovalRecord(true, Boolean.FALSE, false, Boolean.FALSE,"qeug_approvalrecordap");
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
try {
|
||||||
|
DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(id, "wf_task");
|
||||||
|
if(dynamicObject==null){
|
||||||
|
this.showApprovalRecord(true, Boolean.FALSE, false, Boolean.FALSE,"qeug_approvalrecordap");
|
||||||
|
}else{
|
||||||
|
this.getView().setVisible(true,"tabpageap_approvalrecord");
|
||||||
|
this.showApprovalRecord(true, Boolean.FALSE, false, Boolean.FALSE,"qeug_approvalrecordap");
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
this.showApprovalRecord(true, Boolean.FALSE, false, Boolean.FALSE,"qeug_approvalrecordap");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
protected void showApprovalRecord(Boolean isPCShow, Boolean approvalIsNew, Boolean hideChat, Boolean isNewApprovalRecord,String recordNumber) {
|
||||||
|
boolean isTaskExist = Boolean.parseBoolean(super.getPageCache().get("isTaskExist"));
|
||||||
|
if (isTaskExist) {
|
||||||
|
Long processInstanceId = WfUtils.normalizeId(super.getPageCache().get("processInstanceId"));
|
||||||
|
String businesskey = super.getPageCache().get("businesskey");
|
||||||
|
String curTaskId = this.getPageCache().get("taskid");
|
||||||
|
|
||||||
|
|
||||||
|
WorkflowService wfService = (WorkflowService) ServiceFactory.getService(WorkflowService.class);
|
||||||
|
TaskService taskService = wfService.getTaskService();
|
||||||
|
|
||||||
|
List<IApprovalRecordGroup> approvalRecordItems = ApprovalPluginUtil.getApprovalRecordItems(taskService, processInstanceId, businesskey, curTaskId, isNewApprovalRecord);
|
||||||
|
ApprovalRecord approvalRecord = (ApprovalRecord)this.getControl(recordNumber);
|
||||||
|
approvalRecord.setYzjParameter(businesskey, String.valueOf(processInstanceId), "wf_taskCenter");
|
||||||
|
Map<String, Object> parameters = new HashMap();
|
||||||
|
parameters.put("hideMoreChat", isPCShow && !hideChat ? "" : "true");
|
||||||
|
parameters.put("hideChat", hideChat ? "true" : "");
|
||||||
|
parameters.put("isPC", isPCShow.toString());
|
||||||
|
parameters.put("approvalIsNew", approvalIsNew);
|
||||||
|
String billPageId = this.getPageCache().get("billPageId");
|
||||||
|
parameters.put("pageId", billPageId);
|
||||||
|
boolean isDDOrQYWX = this.isNotFromYZJ();
|
||||||
|
parameters.put("isDDOrQYWX", isDDOrQYWX);
|
||||||
|
parameters.put("procInstId", processInstanceId);
|
||||||
|
approvalRecord.setParameters(parameters);
|
||||||
|
approvalRecord.setArData(approvalRecordItems);
|
||||||
|
List openIds = ApprovalPluginUtil.getOpenIdsForApprovalRecord(approvalRecordItems);
|
||||||
|
if (WfUtils.isNotEmptyForCollection(openIds)) {
|
||||||
|
this.getPageCache().put("approvalRecordItems", SerializationUtils.toJsonString(openIds));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isNotFromYZJ() {
|
||||||
|
Map<String, Object> customParams = this.getView().getFormShowParameter().getCustomParams();
|
||||||
|
if (WfUtils.isNotEmptyForMap(customParams)) {
|
||||||
|
Object fromyzj = customParams.get("fromyzj");
|
||||||
|
if (WfUtils.isNotEmptyString(fromyzj) && Boolean.parseBoolean(fromyzj.toString())) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue