Browse Source

报销详情新增客户档案查看权限

anderx 1 year ago
parent
commit
c668727d9a

+ 13 - 0
src/main/java/com/goafanti/weChat/bo/OutPublicRelease.java

@@ -48,6 +48,19 @@ public class OutPublicRelease extends PublicRelease {
 
 	private Integer publicAssistAdvice;
 
+	/**
+	 *  客户档案查看权限
+	 */
+	private Integer ViewPermission;
+
+	public Integer getViewPermission() {
+		return ViewPermission;
+	}
+
+	public void setViewPermission(Integer viewPermission) {
+		ViewPermission = viewPermission;
+	}
+
 	public Integer getPublicAssistAdvice() {
 		return publicAssistAdvice;
 	}

+ 47 - 20
src/main/java/com/goafanti/weChat/service/impl/PublicReleaseServiceImpl.java

@@ -1620,8 +1620,10 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		out.setPeList(ps);
 		List<AdminPublicReviewerBo> adminPublicReviewerBos=null;
 		if(out!=null){
-			//默认可以看
+			//详情查看权限
 			boolean flag=false;
+			//客户文档查看权限
+			boolean flag2=false;
 			//自己、审核人员与部门负责人可以查看
 			AdminListBo ab=adminMapper.getDeptNameByAid(out.getAid());
 			if (!aid.equals( out.getAid())&&
@@ -1629,6 +1631,10 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 					!TokenManager.hasRole(AFTConstants.TECH_FINANCE_DIRECTOR)){
 				flag=true;
 			}
+			//自己可以查看
+			if (aid.equals(out.getAid())){
+				flag2=true;
+			}
 			if (out.getType()==0||out.getType()==1||out.getType()==2){
 				if (adminPublicReviewerBos==null)adminPublicReviewerBos = adminPublicReviewerMapper.selectByAid(out.getAid());
 				//如果是审核人可以查看
@@ -1636,17 +1642,19 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 					for (AdminPublicReviewerBo e : collect) {
 						if (e.getReviewerId().equals(aid)){
 							flag=false;
+							flag2=true;
 							break;
 						}
 					}
 				//添加协单审核人可以查看
 				List<PublicRelease> publicReleases = publicReleaseMapper.selectByMainId(out.getId(), null, null);
 				for (PublicRelease e : publicReleases) {
-					adminPublicReviewerBos = adminPublicReviewerMapper.selectByAid(e.getAid());
-					List<AdminPublicReviewerBo> collect2 = adminPublicReviewerBos.stream().filter(e2 -> e2.getType() == 1).collect(Collectors.toList());
+					List<AdminPublicReviewerBo> sonAPRList =  adminPublicReviewerMapper.selectByAid(e.getAid());
+					List<AdminPublicReviewerBo> collect2 = sonAPRList.stream().filter(e2 -> e2.getType() == 1).collect(Collectors.toList());
 					for (AdminPublicReviewerBo e2 : collect2) {
 						if (e2.getReviewerId().equals(aid)){
 							flag=false;
+							flag2=true;
 							break;
 						}
 					}
@@ -1658,10 +1666,17 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				for (AdminPublicReviewerBo e : collect) {
 					if (e.getReviewerId().equals(aid)){
 						flag=false;
+						flag2=true;
 						break;
 					}
 				}
 			}
+			//客户档案设置查看权限
+			if (flag2){
+				out.setViewPermission(1);
+			}else {
+				out.setViewPermission(0);
+			}
 			//非自己的客户审核
 			if (!ps.isEmpty()){
 				for (PublicExamine p : ps) {
@@ -1694,18 +1709,43 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 			}
 		}
 		//设置审核人
+		pushExamine(out, adminPublicReviewerBos, ps);
+		List<OutPublicReleaseDetails> prdList = publicReleaseDetailsMapper.selectByPrid(id);
+		List<PublicReleaseDateClock> prdcList = publicReleaseDateClockMapper.selectByPrid(id);
+		pushDateClockDetailsToday(prdList,prdcList);
+		out.setPrdList(prdList);
+		List<PublicAssistAdvice> publicAssistAdvices = publicAssistAdviceMapper.selectList(out.getId(), 0);
+		if (publicAssistAdvices.isEmpty()){
+			out.setPublicAssistAdvice(0);
+		}else {
+			out.setPublicAssistAdvice(publicAssistAdvices.size());
+
+		}
+		return out;
+	}
+
+
+
+	/**
+	 * 设置审核人
+	 * @param out
+	 * @param adminPublicReviewerBos
+	 * @param ps
+	 */
+	private void pushExamine(OutPublicRelease out, List<AdminPublicReviewerBo> adminPublicReviewerBos, List<PublicExamine> ps) {
+		//设置审核人
 		if (out.getStatus()==1&&
-				((out.getPublicType()==0||out.getPublicType()==2)&&(out.getTechStartProcess()==0||out.getTechStartProcess()==2)))
+				((out.getPublicType()==0|| out.getPublicType()==2)&&(out.getTechStartProcess()==0|| out.getTechStartProcess()==2)))
 		{
 
-			if (adminPublicReviewerBos==null)adminPublicReviewerBos = adminPublicReviewerMapper.selectByAid(out.getAid());
+			if (adminPublicReviewerBos ==null) adminPublicReviewerBos = adminPublicReviewerMapper.selectByAid(out.getAid());
 			StringBuffer str =new StringBuffer();
 			if(out.getType()==3){
 				List<AdminPublicReviewerBo> collect = adminPublicReviewerBos.stream().filter(e -> e.getType() == 1).collect(Collectors.toList());
 				for (AdminPublicReviewerBo e : collect) {
 					str.append(e.getReviewerName()+",");
 				}
-			}else if (out.getType()==0&&out.getAssistProcess()==2){
+			}else if (out.getType()==0&& out.getAssistProcess()==2){
 				//获取技术协单
 				List<PublicRelease> publicReleases = publicReleaseMapper.selectByMainId(out.getId(), null, null);
 				List<String> names=new ArrayList<>();
@@ -1739,7 +1779,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 			}
 
 
-			if(str.length()>1)out.setAdminExamine(str.substring(0,str.length()-1)+" 未审核");
+			if(str.length()>1) out.setAdminExamine(str.substring(0,str.length()-1)+" 未审核");
 		}else if (out.getStatus()==0) {
 			out.setAdminExamine("");
 		}else {
@@ -1756,22 +1796,9 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 
 			}
 		}
-		List<OutPublicReleaseDetails> prdList = publicReleaseDetailsMapper.selectByPrid(id);
-		List<PublicReleaseDateClock> prdcList = publicReleaseDateClockMapper.selectByPrid(id);
-		pushDateClockDetailsToday(prdList,prdcList);
-		out.setPrdList(prdList);
-		List<PublicAssistAdvice> publicAssistAdvices = publicAssistAdviceMapper.selectList(out.getId(), 0);
-		if (publicAssistAdvices.isEmpty()){
-			out.setPublicAssistAdvice(0);
-		}else {
-			out.setPublicAssistAdvice(publicAssistAdvices.size());
-
-		}
-		return out;
 	}
 
 
-
 	@Override
 	public OutPublicReleaseAndDetails followDtails(String id) {
 		OutPublicReleaseAndDetails out = publicReleaseMapper.selectDtailsByFid( id);