Procházet zdrojové kódy

政策-添加审核人

yangzian před 4 roky
rodič
revize
e094ff3d43

+ 44 - 7
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/policy/controller/CwjsPolicyInfoController.java

@@ -77,7 +77,7 @@ public class CwjsPolicyInfoController {
 	 IUserCompanyService userCompanyService;
 	 @Autowired
 	 ICwjsPolicyApprovalLogService policyApprovalLogService;
-	 @Autowired
+	 @Resource
 	 CwjsCompanyApprovalUserMapper companyApprovalUserMapper;
 	 @Resource
 	 CwjsCompanySubjectMapper companySubjectMapper;
@@ -102,7 +102,7 @@ public class CwjsPolicyInfoController {
 
 	 @GetMapping(value = "/queryApprovalRejectReason")
 	 public Result<CwjsPolicyApprovalLog> queryApprovalRejectReason(@RequestParam(name="id",required=true) Integer id){
-		 CwjsPolicyApprovalLog policyApprovalLog = policyApprovalLogService.getOneByPolicyId(id);
+		 CwjsPolicyApprovalLog policyApprovalLog = policyApprovalLogService.getOneByPolicyId(id,1);
 		 if(Check.isNull(policyApprovalLog)){
 			 return Result.successMsg("无审核拒绝的记录",null);
 		 }else{
@@ -214,6 +214,37 @@ public class CwjsPolicyInfoController {
 			text.append(",请及时登录助手平台-销售政策页面进行政策修改,谢谢!");
 			corpWexinUtils.sendMessageByWeChatId(wChatIdByUserId,text.toString());
 		}
+
+	 	//转领导审批 只有审核人是最后一个人的时候 才可以转领导
+	 	if (type == 4){
+			//根据主体查询 最后一个审核人员
+			CwjsCompanyApprovalUser endApprovalUser = companyApprovalUserMapper.getEndApprovalUserBySub(companySubjectId);
+			if (!userId.equals(endApprovalUser)){
+				return Result.errorMsg("当前所登录用户不是最后一个审核人员,无法转领导审批。");
+			}
+			cwjsPolicyInfoEntity.setApprovedStatus(2);
+			cwjsPolicyInfoEntity.setApprovedProgress("4aba62011120ac565c7f2b9f8f4aa96b");	//设置 boss 为审核人员
+			JSONObject wChatIdByUserId = mailLogMapper.getWChatIdByUserId("4aba62011120ac565c7f2b9f8f4aa96b");
+			StringBuilder text = new StringBuilder();
+			text.append("您有一条销售政策需要审核,该客户为:");
+			text.append(cwjsPolicyInfoEntity.getCompanyName());
+			text.append(",请及时登录助手平台-销售政策页面进行审核,谢谢!");
+			corpWexinUtils.sendMessageByWeChatId(wChatIdByUserId,text.toString());
+
+			CwjsPolicyApprovalLog policyApprovalLog = new CwjsPolicyApprovalLog();
+			policyApprovalLog.setPolicyId(id);
+			policyApprovalLog.setCreateUserId(userId);
+			policyApprovalLog.setApprovalStatus(2);//0-审核通过  1-审核不通过 2-转给领导
+			policyApprovalLog.setApprovalContent(approvalContent);
+			policyApprovalLogService.save(policyApprovalLog);
+
+
+		}
+
+
+
+
+
 		cwjsPolicyInfoService.updateById(cwjsPolicyInfoEntity);
 	 	return Result.successMsg("成功",cwjsPolicyInfoEntity);
 	 }
@@ -251,6 +282,9 @@ public class CwjsPolicyInfoController {
 
         //查询 对应的销售或 助理
 		List<String> userIds = cwjsSaleAssistantInfoService.getCwSaleAndAssistantListStr(userId);
+		if (Check.isNull(userIds)){
+			userIds.add(userId);
+		}
 
         /**如果不是管理员,也不是审核人员。
 		 * (看自己和自己下属的所有政策)  修改为 销售-助理 关联关系查看。
@@ -283,17 +317,20 @@ public class CwjsPolicyInfoController {
 		List<CwjsPolicyInfo> cwjsPolicyInfos = ListPageUtil.page(cwjsPolicyInfoList, pageSize, pageNo);
 
 		cwjsPolicyInfos.forEach(cwjsPolicy ->{
-			CwjsPolicyApprovalLog log = policyApprovalLogMapper.getOneByPolicyId(cwjsPolicy.getId());	//添加日志记录最新的第一条
+			CwjsPolicyApprovalLog log = policyApprovalLogMapper.getOneByPolicyId(cwjsPolicy.getId(),1);	// 查询 被拒 审核意见 最新的一条
 			if(!Check.isNull(log)){
 				cwjsPolicy.setApprovalContent(log.getApprovalContent());
 			}
+			CwjsPolicyApprovalLog bossContent = policyApprovalLogMapper.getOneByPolicyId(cwjsPolicy.getId(),2);	// 查询 转发领导的 审核意见 最新的一条
+			cwjsPolicy.setTheBossContent(Check.isNull(bossContent) ? "" : bossContent.getApprovalContent());
 
 			//根据主体查询 最后一个审核人员
 			CwjsCompanyApprovalUser approvalUser = companyApprovalUserMapper.getEndApprovalUserBySub(cwjsPolicy.getCompanySubjectId());
-			//政策 当前用户 不是 最后一个审核人 ||  审核人是老板   && 状态不为3 审核通过
-			// 则不显示 转领导审批
-			if ((cwjsPolicy.getApprovedProgress().equals(userId) || cwjsPolicy.getApprovedProgress().equals("4aba62011120ac565c7f2b9f8f4aa96b"))
-					&& cwjsPolicy.getApprovedStatus() != 3){
+			//政策当前审核人 = 最后一个审核人 = 当前用户   && 状态不为3 审核通过  && 状态不为4 审核拒绝  ||  当前用户 不是老板
+			// 则显示 转领导审批
+			if (cwjsPolicy.getApprovedProgress().equals(approvalUser.getApprovalUserId()) && approvalUser.getApprovalUserId().equals(userId)
+					&& cwjsPolicy.getApprovedStatus() != 3 && cwjsPolicy.getApprovedStatus() != 4
+			&& !"4aba62011120ac565c7f2b9f8f4aa96b".equals(userId)){
 				cwjsPolicy.setTheBossRight("yes");
 			}else {
 				cwjsPolicy.setTheBossRight("no");

+ 1 - 1
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/policy/entity/CwjsPolicyApprovalLog.java

@@ -38,7 +38,7 @@ public class CwjsPolicyApprovalLog {
 	private Integer policyId;
 	/**审核状态:0-审核通过  1-审核不通过*/
 	@Excel(name = "审核状态:0-审核通过  1-审核不通过", width = 15)
-    @ApiModelProperty(value = "审核状态:0-审核通过  1-审核不通过")
+    @ApiModelProperty(value = "审核状态:0-审核通过  1-审核不通过 2-转老板")
 	private Integer approvalStatus;
 	/**审核意见*/
 	@Excel(name = "审核意见", width = 15)

+ 5 - 2
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/policy/entity/CwjsPolicyInfo.java

@@ -56,8 +56,8 @@ public class CwjsPolicyInfo implements Serializable{
     @ApiModelProperty(value = "集团简称")
 	private String groupAbbreviation;
 	/**状态 0:待审核 1:审核中 2:审核通过3:审核拒绝*/
-	@Excel(name = "状态 0:待审核 1:审核中 2:审核通过3:审核拒绝", width = 15)
-    @ApiModelProperty(value = "状态 0:待审核 1:审核中 2:审核通过3:审核拒绝")
+	@Excel(name = "状态 0:草稿 1:待审核 2:审核中 3:审核通过4:审核拒绝", width = 15)
+    @ApiModelProperty(value = "0:草稿 1:待审核 2:审核中 3:审核通过4:审核拒绝")
 	private Integer approvedStatus;
 	@ApiModelProperty(value = "审核进度,当前该谁审核,审核人")
 	private String approvedProgress;
@@ -154,4 +154,7 @@ public class CwjsPolicyInfo implements Serializable{
 	/* 是否显示老板审批的 操作 yes显示 no 不显示*/
 	@TableField(exist = false)
 	private String theBossRight;
+	/* 给老板审核的理由*/
+	@TableField(exist = false)
+	private String theBossContent;
 }

+ 9 - 1
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/policy/mapper/CwjsPolicyApprovalLogMapper.java

@@ -13,5 +13,13 @@ import org.jeecg.ctop.finance.policy.entity.CwjsPolicyApprovalLog;
  * @version V1.0
  */
 public interface CwjsPolicyApprovalLogMapper extends BaseMapper<CwjsPolicyApprovalLog> {
-    CwjsPolicyApprovalLog getOneByPolicyId(Integer policyId);
+
+
+    /**
+     * 根据政策id 查询 审核意见记录
+     * @param policyId
+     * @param status 0-审核通过  1-审核不通过 2-转给领导'
+     * @return
+     */
+    CwjsPolicyApprovalLog getOneByPolicyId(@Param("policyId") Integer policyId,@Param("status") Integer status);
 }

+ 8 - 1
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/policy/mapper/xml/CwjsPolicyApprovalLogMapper.xml

@@ -1,7 +1,14 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="org.jeecg.ctop.finance.policy.mapper.CwjsPolicyApprovalLogMapper">
+
+
+    <!-- 根据政策id 查询 审核意见记录  -->
     <select id="getOneByPolicyId" resultType="org.jeecg.ctop.finance.policy.entity.CwjsPolicyApprovalLog">
-        select * from ctop_cwjs_policy_approval_log where policy_id = #{policyId} and approval_status = 1 order by create_time desc LIMIT 1
+        select * from ctop_cwjs_policy_approval_log
+        where policy_id = #{policyId}
+          and approval_status = #{status}
+        order by create_time desc
+        LIMIT 1
     </select>
 </mapper>

+ 1 - 1
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/policy/service/ICwjsPolicyApprovalLogService.java

@@ -10,5 +10,5 @@ import org.jeecg.ctop.finance.policy.entity.CwjsPolicyApprovalLog;
  * @version V1.0
  */
 public interface ICwjsPolicyApprovalLogService extends IService<CwjsPolicyApprovalLog> {
-    CwjsPolicyApprovalLog getOneByPolicyId(Integer policyId);
+    CwjsPolicyApprovalLog getOneByPolicyId(Integer policyId,Integer status);
 }

+ 2 - 2
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/policy/service/impl/CwjsPolicyApprovalLogServiceImpl.java

@@ -21,8 +21,8 @@ public class CwjsPolicyApprovalLogServiceImpl extends ServiceImpl<CwjsPolicyAppr
     CwjsPolicyApprovalLogMapper policyApprovalLogMapper;
 
     @Override
-    public CwjsPolicyApprovalLog getOneByPolicyId(Integer policyId){
-        return policyApprovalLogMapper.getOneByPolicyId(policyId);
+    public CwjsPolicyApprovalLog getOneByPolicyId(Integer policyId,Integer status){
+        return policyApprovalLogMapper.getOneByPolicyId(policyId,status);
     }
 
 }

+ 1 - 1
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/settlement/controller/SettlementController.java

@@ -57,7 +57,7 @@ public class SettlementController {
             //查询 销售及助理 关联对应的人员
             userIds = cwjsSaleAssistantInfoService.getCwSaleAndAssistantListStr(settlementInfo.getCreateUserId());
             if (Check.isNull(userIds)){
-                return Result.errorMsg("该用户暂无数据。");
+                userIds.add(settlementInfo.getCreateUserId());
             }
         }
         settlementInfo.setUserIds(new HashSet<>(userIds));

+ 3 - 3
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/settlement/controller/SettlementFileController.java

@@ -56,9 +56,9 @@ public class SettlementFileController {
         }else {
             //查询 销售及助理 关联对应的人员
             userIds = cwjsSaleAssistantInfoService.getCwSaleAndAssistantListStr(paramsVo.getCreateUserId());
-            /*if (Check.isNull(userIds)){
-                return Result.errorMsg("该用户暂无结算数据。");
-            }*/
+            if (Check.isNull(userIds)){
+                userIds.add(paramsVo.getCreateUserId());
+            }
             paramsVo.setSaleUserIds(new HashSet<>(userIds));
         }
        return settlementFileInfoService.getSettlementSheetList(paramsVo,pageNo,pageSize);

+ 3 - 0
jeecg-boot-finance/src/main/java/org/jeecg/ctop/finance/settlement/service/serviceImpl/ReportSettlementServiceImpl.java

@@ -305,6 +305,9 @@ public class ReportSettlementServiceImpl implements IReportSettlementService {
         }else {
             //查询 销售及助理 关联对应的人员
             userIds = cwjsSaleAssistantInfoService.getCwSaleAndAssistantListStr(user.getId());
+            if (Check.isNull(userIds)){
+                userIds.add(user.getId());
+            }
             sales.addAll(new HashSet<>(userIds));
         }
         //查询财务模块中已上传的账户

+ 3 - 1
jeecg-boot-module-system/src/main/java/cn/com/ctop/common/module/service/impl/UserCompanyServiceImpl.java

@@ -128,7 +128,9 @@ public class UserCompanyServiceImpl extends ServiceImpl<UserCompanyMapper, UserC
     @Override
     public List<UserCompany> getAllByUserId(String userId) {
         QueryWrapper<UserCompany> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("user_id", userId);
+        if (!Check.isNull(userId)){
+            queryWrapper.eq("user_id", userId);
+        }
         return this.list(queryWrapper);
     }