增加流程流转待办事项
This commit is contained in:
parent
b08cc0ae06
commit
8f7901cee4
@ -18,6 +18,7 @@ public enum WorkMsgTypeEnum {
|
|||||||
END(5, "绩效终止", "去查看", "# 绩效终止\n ## @,你的绩效终止"),
|
END(5, "绩效终止", "去查看", "# 绩效终止\n ## @,你的绩效终止"),
|
||||||
START_WORK(6, "绩效考评待办事项", "去查看", "# 绩效目标制定\n ## @,你的绩效需要制定目标"),
|
START_WORK(6, "绩效考评待办事项", "去查看", "# 绩效目标制定\n ## @,你的绩效需要制定目标"),
|
||||||
START_SCORE(7, "绩效考评待办事项", "去查看", "# 绩效结果输入\n ## @,你的绩效需要输入结果"),
|
START_SCORE(7, "绩效考评待办事项", "去查看", "# 绩效结果输入\n ## @,你的绩效需要输入结果"),
|
||||||
|
PROCESS(8, "绩效考评待办事项", "去查看", "# @的绩效\n ## 需您去处理"),
|
||||||
// 您的2020年10月绩效考核已经开始,请尽快制定绩效目标
|
// 您的2020年10月绩效考核已经开始,请尽快制定绩效目标
|
||||||
// 吴林的2020年12月绩效考核的目标需要您确认,点击前往确认
|
// 吴林的2020年12月绩效考核的目标需要您确认,点击前往确认
|
||||||
;
|
;
|
||||||
|
|||||||
@ -163,6 +163,7 @@ public class FlowStartServiceImpl extends ServiceImpl<FlowStartMapper, FlowStart
|
|||||||
return R.error(groupStaffs.getEvaluationGroup().getName() + "——初始化考核流程失败");
|
return R.error(groupStaffs.getEvaluationGroup().getName() + "——初始化考核流程失败");
|
||||||
}
|
}
|
||||||
dingtalkBusiness.sendWorkMSGWithAsyn(staffSimpleInfos, WorkMsgTypeEnum.START_WORK.getType());
|
dingtalkBusiness.sendWorkMSGWithAsyn(staffSimpleInfos, WorkMsgTypeEnum.START_WORK.getType());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return R.ok("发起成功").put("data", flowStart);
|
return R.ok("发起成功").put("data", flowStart);
|
||||||
|
|||||||
@ -193,6 +193,31 @@ public class DingtalkBusiness {
|
|||||||
return sendWorkMSGByEntity(appid, fromStaffEntity, toStaffEntity, workMsgTypeEnum, "https://www.baidu.com");
|
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){
|
||||||
|
//查询第三方id
|
||||||
|
List<Long> ids = toStaffids.stream().map(new Function<StaffSimpleInfo, Long>() {
|
||||||
|
@Override
|
||||||
|
public Long apply(StaffSimpleInfo staffSimpleInfo) {
|
||||||
|
return staffSimpleInfo.getId();
|
||||||
|
}
|
||||||
|
}).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
|
||||||
|
) {
|
||||||
|
StaffSimpleInfo staff1 = map.get(staff.getId());
|
||||||
|
staff1.setEmployeeId(staff1.getEmployeeId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
WorkMsgTypeEnum workMsgTypeEnum = WorkMsgTypeEnum.findRoleTypeByCode(type);
|
||||||
|
|
||||||
|
ThreadSendMessage threadSendMessage = new ThreadSendMessage(fromStaff, toStaffids, workMsgTypeEnum, appid);
|
||||||
|
Thread thread = new Thread(threadSendMessage);
|
||||||
|
thread.start();
|
||||||
|
return "OK";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public String sendWorkMSGWithAsyn(List<StaffSimpleInfo> toStaffids, int type) {
|
public String sendWorkMSGWithAsyn(List<StaffSimpleInfo> toStaffids, int type) {
|
||||||
@ -215,7 +240,7 @@ public class DingtalkBusiness {
|
|||||||
}
|
}
|
||||||
WorkMsgTypeEnum workMsgTypeEnum = WorkMsgTypeEnum.findRoleTypeByCode(type);
|
WorkMsgTypeEnum workMsgTypeEnum = WorkMsgTypeEnum.findRoleTypeByCode(type);
|
||||||
|
|
||||||
ThreadSendMessage threadSendMessage = new ThreadSendMessage(toStaffids, workMsgTypeEnum, appid);
|
ThreadSendMessage threadSendMessage = new ThreadSendMessage(null, toStaffids, workMsgTypeEnum, appid);
|
||||||
Thread thread = new Thread(threadSendMessage);
|
Thread thread = new Thread(threadSendMessage);
|
||||||
thread.start();
|
thread.start();
|
||||||
return "OK";
|
return "OK";
|
||||||
@ -287,12 +312,14 @@ public class DingtalkBusiness {
|
|||||||
|
|
||||||
public class ThreadSendMessage implements Runnable{
|
public class ThreadSendMessage implements Runnable{
|
||||||
List<StaffSimpleInfo> toStaffids;
|
List<StaffSimpleInfo> toStaffids;
|
||||||
|
StaffSimpleInfo fromStaff = null;
|
||||||
WorkMsgTypeEnum workMsgTypeEnum;
|
WorkMsgTypeEnum workMsgTypeEnum;
|
||||||
String appid;
|
String appid;
|
||||||
String hostUrl = "https://lzmanagement.ldxinyong.com/digitization/dingTalkLogin";
|
String hostUrl = "https://lzmanagement.ldxinyong.com/digitization/dingTalkLogin";
|
||||||
public ThreadSendMessage(List<StaffSimpleInfo> toStaffids, WorkMsgTypeEnum typeEnum, String appid){
|
public ThreadSendMessage(StaffSimpleInfo fromStaff, List<StaffSimpleInfo> toStaffids, WorkMsgTypeEnum typeEnum, String appid){
|
||||||
this.toStaffids = toStaffids;
|
this.toStaffids = toStaffids;
|
||||||
workMsgTypeEnum = typeEnum;
|
workMsgTypeEnum = typeEnum;
|
||||||
|
this.fromStaff = fromStaff;
|
||||||
this.appid = appid;
|
this.appid = appid;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -315,9 +342,16 @@ public class DingtalkBusiness {
|
|||||||
url = URLEncoder.encode(url);
|
url = URLEncoder.encode(url);
|
||||||
|
|
||||||
|
|
||||||
url = "dingtalk://dingtalkclient/page/link?pc_slide=true&url=" + url;
|
url = "dingtalk://dingtalkclient/action/openapp?corpid=" + thirdAppConfig.getCorpId() +
|
||||||
|
"&container_type=work_platform&app_id=0_" +
|
||||||
|
appid + "&redirect_type=jump&redirect_url=" + url;
|
||||||
|
String content = null;
|
||||||
|
if(fromStaff == null){
|
||||||
|
content = workMsgTypeEnum.getContent().replace("@", info.getName());
|
||||||
|
}else{
|
||||||
|
content = workMsgTypeEnum.getContent().replace("@", fromStaff.getName());
|
||||||
|
}
|
||||||
|
|
||||||
String content = workMsgTypeEnum.getContent().replace("@", info.getName());
|
|
||||||
StaffEntity entity = new StaffEntity();
|
StaffEntity entity = new StaffEntity();
|
||||||
entity.setId(info.getId());
|
entity.setId(info.getId());
|
||||||
entity.setEmployeeId(info.getEmployeeId());
|
entity.setEmployeeId(info.getEmployeeId());
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user