Commit bfa9b76df13f00bd538d9c66193c434d8ca99d26

Authored by 张志伟
1 parent a5d82028

解决保有客档案未全部分配就完成待办的问题

fw-valhalla-domain/src/main/java/cn/fw/valhalla/domain/db/LeaveNeedDo.java
@@ -47,4 +47,8 @@ public class LeaveNeedDo extends BaseAuditableTimeEntity<LeaveNeedDo, Long> { @@ -47,4 +47,8 @@ public class LeaveNeedDo extends BaseAuditableTimeEntity<LeaveNeedDo, Long> {
47 * 是否已完成处理 47 * 是否已完成处理
48 */ 48 */
49 private Boolean done; 49 private Boolean done;
  50 + /**
  51 + * 待办处理人
  52 + */
  53 + private Long todoUser;
50 } 54 }
fw-valhalla-server/src/main/java/cn/fw/valhalla/controller/task/RoleChangeTask.java
@@ -117,7 +117,9 @@ public class RoleChangeTask { @@ -117,7 +117,9 @@ public class RoleChangeTask {
117 continue; 117 continue;
118 } 118 }
119 try { 119 try {
120 - leaveNeedDoBizService.fwgwChanged(Long.valueOf(idStr)); 120 + Long leaveId = Long.valueOf(idStr);
  121 + leaveNeedDoBizService.fwgwChanged(leaveId);
  122 + leaveNeedDoBizService.checkAllcotaion(leaveId);
121 } catch (Exception e) { 123 } catch (Exception e) {
122 if (StringUtils.isValid(idStr)) { 124 if (StringUtils.isValid(idStr)) {
123 failList.add(idStr); 125 failList.add(idStr);
fw-valhalla-service/src/main/java/cn/fw/valhalla/service/bus/LeaveNeedDoBizService.java
@@ -124,6 +124,8 @@ public class LeaveNeedDoBizService { @@ -124,6 +124,8 @@ public class LeaveNeedDoBizService {
124 if (count <= 0) { 124 if (count <= 0) {
125 return; 125 return;
126 } 126 }
  127 + Long todoUser = postUserDTOS.get(0).getUserId();
  128 + leaveNeedDo.setTodoUser(todoUser);
127 leaveNeedDoService.save(leaveNeedDo); 129 leaveNeedDoService.save(leaveNeedDo);
128 Map<String, String> map = new HashMap<>(); 130 Map<String, String> map = new HashMap<>();
129 map.put("id", String.valueOf(leaveNeedDo.getId())); 131 map.put("id", String.valueOf(leaveNeedDo.getId()));
@@ -131,7 +133,7 @@ public class LeaveNeedDoBizService { @@ -131,7 +133,7 @@ public class LeaveNeedDoBizService {
131 map.put("userName", leaveNeedDo.getUserName()); 133 map.put("userName", leaveNeedDo.getUserName());
132 map.put("customerNum", String.valueOf(count)); 134 map.put("customerNum", String.valueOf(count));
133 map.put("leaveTime", DateUtil.getFullDateString(leaveNeedDo.getEffectiveTime(), "-")); 135 map.put("leaveTime", DateUtil.getFullDateString(leaveNeedDo.getEffectiveTime(), "-"));
134 - push2Todo(leaveNeedDo.getId(), postUserDTOS.get(0).getUserId(), shopId, map); 136 + push2Todo(leaveNeedDo.getId(), todoUser, shopId, map);
135 } 137 }
136 138
137 public AppPage<LeaveNeedDoVO> getList(LoginAuthBean currentUser, LeaveQueryVO queryVO) { 139 public AppPage<LeaveNeedDoVO> getList(LoginAuthBean currentUser, LeaveQueryVO queryVO) {
@@ -173,6 +175,26 @@ public class LeaveNeedDoBizService { @@ -173,6 +175,26 @@ public class LeaveNeedDoBizService {
173 } 175 }
174 } 176 }
175 177
  178 + @Transactional(rollbackFor = Exception.class)
  179 + public void checkAllcotaion(Long leaveId) {
  180 + LeaveNeedDo needDo = leaveNeedDoService.getById(leaveId);
  181 + int i = customerService.count(Wrappers.<Customer>lambdaQuery()
  182 + .eq(Customer::getAdviserId, needDo.getUserId())
  183 + .eq(Customer::getYn, Boolean.TRUE)
  184 + );
  185 + if (i > 0) {
  186 + return;
  187 + }
  188 + needDo.setDone(Boolean.TRUE);
  189 + leaveNeedDoService.updateById(needDo);
  190 +
  191 + Long todoUser = needDo.getTodoUser();
  192 + if (Objects.nonNull(todoUser)) {
  193 + BackLogItemDTO backLogItemDTO = new BackLogItemDTO(todoUser, getLeave2doCode(), String.valueOf(leaveId), new Date(), null);
  194 + todoRpcService.complete(backLogItemDTO);
  195 + }
  196 + }
  197 +
176 /** 198 /**
177 * 服务顾问角色变动跟进处理 199 * 服务顾问角色变动跟进处理
178 * 200 *
@@ -192,7 +214,6 @@ public class LeaveNeedDoBizService { @@ -192,7 +214,6 @@ public class LeaveNeedDoBizService {
192 if (CollectionUtils.isEmpty(list)) { 214 if (CollectionUtils.isEmpty(list)) {
193 return; 215 return;
194 } 216 }
195 -  
196 for (ClueTask task : list) { 217 for (ClueTask task : list) {
197 followBizService.roleChangeEndTask(task); 218 followBizService.roleChangeEndTask(task);
198 } 219 }
@@ -320,7 +341,6 @@ public class LeaveNeedDoBizService { @@ -320,7 +341,6 @@ public class LeaveNeedDoBizService {
320 } 341 }
321 342
322 private void finish(LoginAuthBean user, Long leaveId, String key) { 343 private void finish(LoginAuthBean user, Long leaveId, String key) {
323 - leaveNeedDoService.dealById(leaveId);  
324 List<UserInfo> list = getAllFromCache(key); 344 List<UserInfo> list = getAllFromCache(key);
325 for (UserInfo info : list) { 345 for (UserInfo info : list) {
326 try { 346 try {
@@ -334,9 +354,6 @@ public class LeaveNeedDoBizService { @@ -334,9 +354,6 @@ public class LeaveNeedDoBizService {
334 } 354 }
335 } 355 }
336 clearKey(key); 356 clearKey(key);
337 - BackLogItemDTO backLogItemDTO = new BackLogItemDTO(user.getUserId(), getLeave2doCode(), String.valueOf(leaveId), new Date(), null);  
338 - todoRpcService.complete(backLogItemDTO);  
339 -  
340 BoundListOperations<String, String> listOps = redisTemplate.boundListOps(getNeedDealTaskKey()); 357 BoundListOperations<String, String> listOps = redisTemplate.boundListOps(getNeedDealTaskKey());
341 listOps.rightPush(String.valueOf(leaveId)); 358 listOps.rightPush(String.valueOf(leaveId));
342 } 359 }