Bläddra i källkod

协单审核修改

anderx 1 år sedan
förälder
incheckning
97538ff669

+ 39 - 10
src/main/java/com/goafanti/weChat/service/impl/PublicReleaseServiceImpl.java

@@ -1075,13 +1075,8 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				BeanUtils.copyProperties(use,np);
 				np.setAssist(2);
 				np.setAid(s);
-				List<AdminPublicReviewerBo> adminPublicReviewerBos = adminPublicReviewerMapper.selectByAid(s);
-				List<AdminPublicReviewerBo> collect = adminPublicReviewerBos.stream().filter(e -> e.getType() == 1).collect(Collectors.toList());
-				if (!collect.isEmpty()){
-					np.setStatus(1);
-				}else {
-					np.setStatus(2);
-				}
+				//协单审核,判定是否跳过的逻辑
+				pushAssist(s, np,use);
 				np.setType(3);
 				np.setMainId(use.getId());
 				np.setId(null);
@@ -1092,12 +1087,46 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				PublicReleaseLog log = new PublicReleaseLog(np.getId(), TokenManager.getAdminId(), PublicReleaseLog.states.fq.getCode(), str.toString(), date);
 				sendNoticeAndSoucket(np.getAid(),np.getStatus(),str.toString());
 				publicReleaseLogMapper.insertSelective(log);
-				if (np.getStatus()==2){
-					PublicReleaseLog log2 = new PublicReleaseLog(np.getId(), "1", PublicReleaseLog.states.ty.getCode(), "协单未设置审核人,自动通过", new Date());
-					publicReleaseLogMapper.insertSelective(log2);
+
+			}
+		}
+	}
+
+	/**
+	 * 协单审核判定是否跳过的逻辑
+	 * 如果未设置跳过审核,如果已审核跳过
+	 *
+	 * @param s 协单人编号
+	 * @param np 新协单公出信息
+	 * @param use 原公出信息
+	 */
+	private void pushAssist(String s, PublicRelease np, PublicRelease use) {
+		List<AdminPublicReviewerBo> adminPublicReviewerBos = adminPublicReviewerMapper.selectByAid(s);
+		List<AdminPublicReviewerBo> collect = adminPublicReviewerBos.stream().filter(e -> e.getType() == 1).collect(Collectors.toList());
+		if (!collect.isEmpty()){
+			Admin admin = adminMapper.selectByPrimaryKey(use.getAid());
+			boolean flag = false;
+			for (AdminPublicReviewerBo e : collect) {
+				if (e.getAid().equals(admin.getReviewer())){
+					flag=true;
+
+					break;
 				}
 			}
+			if (flag){
+				np.setStatus(2);
+				PublicReleaseLog log2 = new PublicReleaseLog(np.getId(), "1", PublicReleaseLog.states.ty.getCode(), "协单审核人重复,自动通过", new Date());
+				publicReleaseLogMapper.insertSelective(log2);
+			}else {
+				np.setStatus(1);
+			}
+		}else {
+			np.setStatus(2);
+			PublicReleaseLog log2 = new PublicReleaseLog(np.getId(), "1", PublicReleaseLog.states.ty.getCode(), "协单未设置审核人,自动通过", new Date());
+			publicReleaseLogMapper.insertSelective(log2);
 		}
+
+
 	}
 
 	private void updatePublicReleaseDtails(PublicRelease use, PublicRelease in) {