修复推送消息时可能无法推送问题,增加手动条用开始平分消息接口
This commit is contained in:
parent
2d594a8806
commit
2f26ec96c7
@ -75,6 +75,7 @@ public class ShiroConfig {
|
|||||||
filterMap.put("/luck/getLuckById", "anon");
|
filterMap.put("/luck/getLuckById", "anon");
|
||||||
filterMap.put("/luck/updateLuck", "anon");
|
filterMap.put("/luck/updateLuck", "anon");
|
||||||
filterMap.put("/doc.html**", "anon");
|
filterMap.put("/doc.html**", "anon");
|
||||||
|
filterMap.put("/thirdAppConfig/reSendDingTalkMst", "anon");
|
||||||
filterMap.put("/**", "oauth2");
|
filterMap.put("/**", "oauth2");
|
||||||
shiroFilter.setFilterChainDefinitionMap(filterMap);
|
shiroFilter.setFilterChainDefinitionMap(filterMap);
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,29 @@
|
|||||||
|
package com.lz.modules.flow.req;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* 菜单权限表
|
||||||
|
* </p>*流转表
|
||||||
|
* @author quyixiao
|
||||||
|
* @since 2020-08-18
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class FlowReSendDingTalkMsgReq implements java.io.Serializable {
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
private List<Long> id;//用户id
|
||||||
|
|
||||||
|
//自己部门小伙伴 走的 流程id
|
||||||
|
private Long startId;
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -196,6 +196,7 @@ public class FlowStartServiceImpl extends ServiceImpl<FlowStartMapper, FlowStart
|
|||||||
ids.add("141");
|
ids.add("141");
|
||||||
ids.add("134");
|
ids.add("134");
|
||||||
Map<String, String> maps = ids.stream().collect(Collectors.toMap(e->e, e->e));
|
Map<String, String> maps = ids.stream().collect(Collectors.toMap(e->e, e->e));
|
||||||
|
|
||||||
System.out.println(maps);
|
System.out.println(maps);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -901,8 +901,11 @@ public class DingtalkBusiness {
|
|||||||
|
|
||||||
|
|
||||||
public String sendWorkMSGWithAsyn(StaffSimpleInfo fromStaff, List<StaffSimpleInfo> toStaffids, int type) {
|
public String sendWorkMSGWithAsyn(StaffSimpleInfo fromStaff, List<StaffSimpleInfo> toStaffids, int type) {
|
||||||
|
logger.info("推送人员个数:{}", toStaffids.size());
|
||||||
if (toStaffids != null && toStaffids.size() > 0 && (toStaffids.get(0).getEmployeeId() == null || toStaffids.get(0).getEmployeeId().length() == 0)) {
|
if (toStaffids != null
|
||||||
|
&& toStaffids.size() > 0
|
||||||
|
&& (toStaffids.get(0).getEmployeeId() == null ||
|
||||||
|
toStaffids.get(0).getEmployeeId().length() == 0)) {
|
||||||
//查询第三方id
|
//查询第三方id
|
||||||
List<Long> ids = toStaffids.stream().map(new Function<StaffSimpleInfo, Long>() {
|
List<Long> ids = toStaffids.stream().map(new Function<StaffSimpleInfo, Long>() {
|
||||||
@Override
|
@Override
|
||||||
@ -915,7 +918,7 @@ public class DingtalkBusiness {
|
|||||||
for (StaffSimpleInfo staff : staffSimpleInfos
|
for (StaffSimpleInfo staff : staffSimpleInfos
|
||||||
) {
|
) {
|
||||||
StaffSimpleInfo staff1 = map.get(staff.getId());
|
StaffSimpleInfo staff1 = map.get(staff.getId());
|
||||||
staff1.setEmployeeId(staff1.getEmployeeId());
|
staff1.setEmployeeId(staff.getEmployeeId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
WorkMsgTypeEnum workMsgTypeEnum = WorkMsgTypeEnum.findRoleTypeByCode(type);
|
WorkMsgTypeEnum workMsgTypeEnum = WorkMsgTypeEnum.findRoleTypeByCode(type);
|
||||||
|
|||||||
@ -1838,8 +1838,7 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
|
|||||||
|
|
||||||
resultRecordService.updateResultRecordById(resultRecord);
|
resultRecordService.updateResultRecordById(resultRecord);
|
||||||
String commentId = null;
|
String commentId = null;
|
||||||
if (dto.getSave() == null) {//非暂存
|
if (dto.getSave() == null) {//非暂存//修改评论信息
|
||||||
//修改评论信息
|
|
||||||
log.info("修改了多少个指标{}", editResultDetails.size());
|
log.info("修改了多少个指标{}", editResultDetails.size());
|
||||||
editResultDetails.addAll(resultDetailService.selectNotNoticeResultDetailByRecordId(dto.getId()));
|
editResultDetails.addAll(resultDetailService.selectNotNoticeResultDetailByRecordId(dto.getId()));
|
||||||
log.info("可能需要写入评论的内容条数{}", editResultDetails.size());
|
log.info("可能需要写入评论的内容条数{}", editResultDetails.size());
|
||||||
|
|||||||
@ -1,21 +1,37 @@
|
|||||||
package com.lz.modules.third.controller;
|
package com.lz.modules.third.controller;
|
||||||
|
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.lz.common.emun.WorkMsgTypeEnum;
|
||||||
import com.lz.common.utils.PageUtils;
|
import com.lz.common.utils.PageUtils;
|
||||||
import com.lz.common.utils.R;
|
import com.lz.common.utils.R;
|
||||||
import com.lz.common.utils.StringUtil;
|
import com.lz.common.utils.StringUtil;
|
||||||
|
import com.lz.modules.app.entity.StaffEntity;
|
||||||
|
import com.lz.modules.app.entity.StaffSimpleInfo;
|
||||||
|
import com.lz.modules.app.service.StaffService;
|
||||||
|
import com.lz.modules.flow.entity.FlowStart;
|
||||||
|
import com.lz.modules.flow.req.FlowReSendDingTalkMsgReq;
|
||||||
|
import com.lz.modules.flow.service.FlowStartService;
|
||||||
import com.lz.modules.job.business.DingtalkBusiness;
|
import com.lz.modules.job.business.DingtalkBusiness;
|
||||||
|
import com.lz.modules.sys.entity.app.ResultRecord;
|
||||||
|
import com.lz.modules.sys.service.app.ResultRecordService;
|
||||||
import com.lz.modules.third.entity.ThirdAppConfig;
|
import com.lz.modules.third.entity.ThirdAppConfig;
|
||||||
import com.lz.modules.third.service.ThirdAppConfigService;
|
import com.lz.modules.third.service.ThirdAppConfigService;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.function.Function;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/thirdAppConfig")
|
@RequestMapping("/thirdAppConfig")
|
||||||
|
@Slf4j
|
||||||
public class ThirdAppConfigController {
|
public class ThirdAppConfigController {
|
||||||
|
|
||||||
|
|
||||||
@ -25,6 +41,15 @@ public class ThirdAppConfigController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private DingtalkBusiness dingtalkBusiness;
|
private DingtalkBusiness dingtalkBusiness;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private StaffService staffService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private FlowStartService flowStartService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ResultRecordService resultRecordService;
|
||||||
|
|
||||||
|
|
||||||
@RequestMapping("/list")
|
@RequestMapping("/list")
|
||||||
public R list(@RequestBody String body) {
|
public R list(@RequestBody String body) {
|
||||||
@ -42,6 +67,53 @@ public class ThirdAppConfigController {
|
|||||||
return R.ok();
|
return R.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/reSendDingTalkMst")
|
||||||
|
public R reSendDingTalkMst(@RequestBody FlowReSendDingTalkMsgReq flowReSendDingTalkMsgReq) {
|
||||||
|
|
||||||
|
List<StaffSimpleInfo> staffSimpleInfos = staffService.selectStaffSimpleInfos(flowReSendDingTalkMsgReq.getId());
|
||||||
|
List<StaffSimpleInfo> toStaffids = new ArrayList<>();
|
||||||
|
//List<StaffEntity> staffEntities = staffService.selectByIds(flowReSendDingTalkMsgReq.getId());
|
||||||
|
if(staffSimpleInfos.size() > 0){
|
||||||
|
FlowStart flowStart = flowStartService.selectFlowStartById(flowReSendDingTalkMsgReq.getStartId());
|
||||||
|
if(flowStart != null){
|
||||||
|
List<ResultRecord> resultRecords = resultRecordService.selectResultRecordsByStartId(flowStart.getId());
|
||||||
|
if(resultRecords.size() > 0){
|
||||||
|
Map<Long, ResultRecord> resultRecordMap = resultRecords.stream().collect(Collectors.toMap(ResultRecord::getStaffId,
|
||||||
|
Function.identity(), (e, r) -> e));
|
||||||
|
for (StaffSimpleInfo staffSimpleInfo:staffSimpleInfos
|
||||||
|
) {
|
||||||
|
ResultRecord resultRecord = resultRecordMap.get(staffSimpleInfo.getId());
|
||||||
|
if(resultRecord != null){
|
||||||
|
// StaffSimpleInfo staffSimpleInfo = new StaffSimpleInfo();
|
||||||
|
//staffSimpleInfo.setId(resultRecord.getStaffId());
|
||||||
|
staffSimpleInfo.setResultRecord(resultRecord);
|
||||||
|
staffSimpleInfo.setFlowStart(flowStart);
|
||||||
|
toStaffids.add(staffSimpleInfo);
|
||||||
|
}else{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//通知评分
|
||||||
|
if(toStaffids.size() > 0){
|
||||||
|
try {
|
||||||
|
String s = dingtalkBusiness.sendWorkMSGWithAsyn(toStaffids, WorkMsgTypeEnum.START_SCORE.getType());
|
||||||
|
log.info("钉钉评分响应返回,res:" + s);
|
||||||
|
return R.ok();
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("通知评分异常:ids: " + JSON.toJSONString(toStaffids) + " ,e: " ,e);
|
||||||
|
return R.error("通知评分异常:ids: " + JSON.toJSONString(toStaffids) + " ,e: "+e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return R.error("有效推送人员个数为0");
|
||||||
|
}
|
||||||
|
return R.error("无效考核记录");
|
||||||
|
}
|
||||||
|
return R.error("无效考核任务");
|
||||||
|
}
|
||||||
|
return R.error("无有效人员");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user