提交修改
This commit is contained in:
parent
c843474fee
commit
3fb2dfd0f9
@ -52,4 +52,8 @@ public class StaffSimpleInfo implements Serializable {
|
||||
private Long recordId;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -193,9 +193,17 @@ public class DingtalkBusiness {
|
||||
return sendWorkMSGByEntity(appid, fromStaffEntity, toStaffEntity, workMsgTypeEnum, "https://www.baidu.com");
|
||||
}
|
||||
|
||||
public String sendWorkMSGWithAsyn(StaffSimpleInfo fromStaff, List<StaffSimpleInfo> toStaffids, int type) {
|
||||
|
||||
if(toStaffids.get(0).getEmployeeId() == null || toStaffids.get(0).getEmployeeId().length() == 0){
|
||||
|
||||
public String sendWorkMSGWithAsyn(Long resultRecordId , int type) {
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
public String sendWorkMSGWithAsyn(StaffSimpleInfo fromStaff, List<StaffSimpleInfo> toStaffids, int type) {
|
||||
|
||||
if (toStaffids.get(0).getEmployeeId() == null || toStaffids.get(0).getEmployeeId().length() == 0) {
|
||||
//查询第三方id
|
||||
List<Long> ids = toStaffids.stream().map(new Function<StaffSimpleInfo, Long>() {
|
||||
@Override
|
||||
@ -204,8 +212,8 @@ public class DingtalkBusiness {
|
||||
}
|
||||
}).collect(Collectors.toList());
|
||||
List<StaffSimpleInfo> staffSimpleInfos = staffService.selectStaffSimpleInfos(ids);
|
||||
Map<Long, StaffSimpleInfo> map = toStaffids.stream().collect(Collectors.toMap(StaffSimpleInfo::getId, e->e));
|
||||
for (StaffSimpleInfo staff:staffSimpleInfos
|
||||
Map<Long, StaffSimpleInfo> map = toStaffids.stream().collect(Collectors.toMap(StaffSimpleInfo::getId, e -> e));
|
||||
for (StaffSimpleInfo staff : staffSimpleInfos
|
||||
) {
|
||||
StaffSimpleInfo staff1 = map.get(staff.getId());
|
||||
staff1.setEmployeeId(staff1.getEmployeeId());
|
||||
|
||||
@ -793,14 +793,14 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
|
||||
} else if (FlowApprovalRoleTypeEnums.FOUR_SUPPER.getType().equals(flowApprovalRole.getType())) {
|
||||
approvalStaff = getDepartmentStaff(resultRecord.getStaffId(), 5);
|
||||
}
|
||||
if(approvalStaff !=null && StringUtil.isNotBlank()){
|
||||
insertFlowRecord(flowRecord,approvalStaff,flows,flowApprovalRole,resultRecord,i);
|
||||
if(approvalStaff !=null && StringUtil.isNotBlank(approvalStaff.getName())){
|
||||
insertFlowRecord(flowRecord,approvalStaff,flows,flowApprovalRole,resultRecord,i,null);
|
||||
}else{
|
||||
List<StaffRole> staffRoles= staffRoleService.selectAllStaffRoleByDepartmentLevel(Arrays.asList(new String[]{RoleEnums.MASTER_PM.getName(),RoleEnums.CHILD_PM.getName()}));
|
||||
for(StaffRole staffRole:staffRoles){
|
||||
approvalStaff = staffService.selectStaffById(staffRole.getStaffId());
|
||||
if(staffRole.getDepartmentId() ==0){ //如果是管理所有部门
|
||||
insertFlowRecord(flowRecord,approvalStaff,flows,flowApprovalRole,resultRecord,i);
|
||||
insertFlowRecord(flowRecord,approvalStaff,flows,flowApprovalRole,resultRecord,i,1);
|
||||
}else{
|
||||
DepartmentsStaffRelateEntity relateEntity = departmentsStaffRelateService.selectLastDepartmentByStaffId(resultRecord.getStaffId());
|
||||
Map<String, String> map = departmentsService.selectUserAllDepartmentIds(relateEntity.getDepartmentId());
|
||||
@ -814,33 +814,28 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
|
||||
}
|
||||
}
|
||||
if(flag){ //如果管理员是管理特定部门
|
||||
insertFlowRecord(flowRecord,approvalStaff,flows,flowApprovalRole,resultRecord,i);
|
||||
insertFlowRecord(flowRecord,approvalStaff,flows,flowApprovalRole,resultRecord,i,1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
i++;
|
||||
|
||||
|
||||
}
|
||||
|
||||
resultRecordService.updateResultRecordById(resultRecord);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public void insertFlowRecord(FlowRecord flowRecord,StaffEntity staffEntity,List<Flow> flows,FlowApprovalRole flowApprovalRole ,ResultRecord resultRecord,int i ){
|
||||
flowRecord.setApprovalStaffName(staffEntity.getName());
|
||||
flowRecord.setApprovalStaffId(staffEntity.getId());
|
||||
public void insertFlowRecord(FlowRecord flowRecord,StaffEntity approvalStaff,List<Flow> flows,FlowApprovalRole flowApprovalRole ,ResultRecord resultRecord,int i,Integer stepType ){
|
||||
flowRecord.setApprovalStaffName(approvalStaff.getName());
|
||||
flowRecord.setApprovalStaffId(approvalStaff.getId());
|
||||
flowRecord.setFlowName(getFlow(flows, flowApprovalRole.getFlowId()).getOptDesc());
|
||||
flowRecord.setRecordStaffId(resultRecord.getStaffId());
|
||||
flowRecord.setFlowId(flowApprovalRole.getFlowId());
|
||||
FlowChart flowChart = flowService.selectFlowChartByChartId(flowApprovalRole.getFlowId());
|
||||
flowRecord.setProcessId(flowChart.getProcessId());
|
||||
flowRecord.setFlowProcess(flowChart.getFlowProcess());
|
||||
String staffRole = StaffRoles.getStaffRole(staffEntity.getId(), StringUtil.strToLongs(flowApprovalRole.getRoleId()));
|
||||
String staffRole = StaffRoles.getStaffRole(approvalStaff.getId(), StringUtil.strToLongs(flowApprovalRole.getRoleId()));
|
||||
if (i == 0) {
|
||||
flowRecord.setStatus(FlowRecordStatusEnums.CURRENT_FLOW_STATUS.getStatus());
|
||||
resultRecord.setFlowStaffIdRole(staffRole);
|
||||
@ -850,7 +845,7 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
|
||||
}
|
||||
flowRecord.setFlowStaffIdRole(staffRole);
|
||||
flowRecord.setFlowIndex(flowApprovalRole.getStepIndex());
|
||||
flowRecord.setType(flowApprovalRole.getStepType()); //步骤类型0:依次,1:或签(同时通知,一人通过或拒绝即可),2会签(同时通知,所有人同意才可)
|
||||
flowRecord.setType(stepType !=null ? stepType :flowApprovalRole.getStepType()); //步骤类型0:依次,1:或签(同时通知,一人通过或拒绝即可),2会签(同时通知,所有人同意才可)
|
||||
flowRecordService.insertFlowRecord(flowRecord);
|
||||
|
||||
}
|
||||
@ -1020,6 +1015,11 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
|
||||
flowRecord.setStatus(FlowRecordStatusEnums.CURRENT_FLOW_STATUS.getStatus());
|
||||
flowRecordService.updateFlowRecordById(flowRecord);
|
||||
}
|
||||
|
||||
|
||||
|
||||
dingtalkBusiness.sendWorkMSGWithAsyn(fromStaff, staffSimpleInfos, WorkMsgTypeEnum.PROCESS.getType());
|
||||
|
||||
FlowChart currentFlowChart = flowService.selectFlowChartByChartId(currentFlowRecord.getFlowId());
|
||||
resultRecord.setFlowProcess(currentFlowChart.getFlowProcess());
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user