소스 검색

审批公共方法提交

cuixq 4 년 전
부모
커밋
f52191a2d8

+ 20 - 2
sc-service/src/main/java/com/huyi/service/base/entity/SysUserCompanyRel.java

@@ -14,8 +14,8 @@ import lombok.experimental.Accessors;
  * 用户与企业关系表
  * </p>
  *
- * @author songqg
- * @since 2021-08-21
+ * @author cuixq
+ * @since 2021-09-01
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -50,6 +50,24 @@ public class SysUserCompanyRel implements Serializable {
     private String sucrHandler;
 
     /**
+     * 身份证号(经办人必需维护)
+     */
+    @TableField("sucr_card")
+    private String sucrCard;
+
+    /**
+     * 身份证正面(pub_file_inf.pfi_file_id)
+     */
+    @TableField("sucr_card_file")
+    private String sucrCardFile;
+
+    /**
+     * 身份证反面(pub_file_inf.pfi_file_id)
+     */
+    @TableField("sucr_card_back_file")
+    private String sucrCardBackFile;
+
+    /**
      * 创建者
      */
     @TableField("create_by")

+ 3 - 3
sc-service/src/main/java/com/huyi/service/base/entity/ZcFinanceRecord.java

@@ -14,8 +14,8 @@ import lombok.experimental.Accessors;
  * 融资记录表
  * </p>
  *
- * @author xuefy
- * @since 2021-08-16
+ * @author cuixq
+ * @since 2021-09-01
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -128,7 +128,7 @@ public class ZcFinanceRecord implements Serializable {
     private String zfrApplyType;
 
     /**
-     * 审批状态(00:审核中 01:审批退回)
+     * 审批状态(00:审核中 01:审批通过, 2:审批拒绝)
      */
     @TableField("zfr_approve_stt")
     private String zfrApproveStt;

+ 3 - 3
sc-service/src/main/java/com/huyi/service/base/mapper/SysUserCompanyRelMapper.java

@@ -1,15 +1,15 @@
 package com.huyi.service.base.mapper;
 
-import com.huyi.service.base.entity.SysUserCompanyRel;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huyi.service.base.entity.SysUserCompanyRel;
 
 /**
  * <p>
  * 用户与企业关系表 Mapper 接口
  * </p>
  *
- * @author songqg
- * @since 2021-08-21
+ * @author cuixq
+ * @since 2021-09-01
  */
 public interface SysUserCompanyRelMapper extends BaseMapper<SysUserCompanyRel> {
 

+ 5 - 8
sc-service/src/main/java/com/huyi/service/base/service/ISysUserCompanyRelService.java

@@ -1,13 +1,10 @@
 package com.huyi.service.base.service;
 
-import com.huyi.service.base.entity.SysUserCompanyRel;
-
-import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
-import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
-
-
+import com.huyi.service.base.entity.SysUserCompanyRel;
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
 
 import java.util.List;
 
@@ -16,8 +13,8 @@ import java.util.List;
  * Description: SysUserCompanyRelService接口 <br>
  * Company: keao
  *
- * @author songqg
- * @version v1.0.0    2021-08-21  songqg    由Generator自动创建
+ * @author cuixq
+ * @version v1.0.0    2021-09-01  cuixq    由Generator自动创建
  */
 public interface ISysUserCompanyRelService extends IService<SysUserCompanyRel> {
     /**

+ 9 - 12
sc-service/src/main/java/com/huyi/service/base/service/impl/SysUserCompanyRelServiceImpl.java

@@ -1,20 +1,17 @@
 package com.huyi.service.base.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.huyi.service.base.entity.SysUserCompanyRel;
 import com.huyi.service.base.mapper.SysUserCompanyRelMapper;
 import com.huyi.service.base.service.ISysUserCompanyRelService;
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Propagation;
-import org.springframework.beans.factory.annotation.Autowired;
-import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-
-
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
@@ -23,8 +20,8 @@ import java.util.List;
  * Description: ISysUserCompanyRelService实现 <br>
  * Company: keao
  *
- * @author songqg
- * @version v1.0.0    2021-08-21  songqg    由Generator自动创建
+ * @author cuixq
+ * @version v1.0.0    2021-09-01  cuixq    由Generator自动创建
  */
 @Service
 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)

+ 7 - 0
sc-service/src/main/java/com/huyi/service/common/flowable/service/ApprovalService.java

@@ -4,4 +4,11 @@ import java.util.Map;
 
 public interface ApprovalService {
     public void addPlatformApproval(Map map) throws Exception;
+
+    public void coreConfirmationApproval(Map map) throws Exception;
+
+    //融资企业签收审批
+    public void addSignApproval(Map map) throws Exception;
+    //融资审批
+    public void addFinancingApproval(Map map) throws Exception;
 }

+ 197 - 2
sc-service/src/main/java/com/huyi/service/common/flowable/service/impl/ApprovalServiceImpl.java

@@ -1,17 +1,22 @@
 package com.huyi.service.common.flowable.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
-import com.huyi.service.base.entity.ZcFinanceInf;
-import com.huyi.service.base.service.IZcFinanceInfService;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.huyi.service.base.entity.*;
+import com.huyi.service.base.service.*;
 import com.huyi.service.common.flowable.service.ApprovalService;
 import com.huyi.service.util.FlowableService;
 import com.tianhu.common.core.utils.CommonUtil;
 import com.tianhu.common.core.utils.DateUtils;
+import com.tianhu.system.api.model.LoginUser;
+import org.checkerframework.checker.units.qual.A;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Service;
 import org.springframework.web.bind.annotation.RequestBody;
 
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 @Service
@@ -22,6 +27,18 @@ public class ApprovalServiceImpl implements ApprovalService {
     public final static String STRART_FLOW = "flow/strartFlow";
     @Autowired
     private IZcFinanceInfService zcFinanceInfService;
+    //自动生成融资服务类
+    @Autowired
+    private IZcFinanceRecordService zcFinanceRecordService;
+
+    @Autowired
+    private ISysCompanyService iSysCompanyService;
+
+    @Autowired
+    private ISysUserCompanyRelService iSysUserCompanyRelService;
+
+    @Autowired
+    private ISysUserService iSysUserService;
     /**
      * 平台审批
      * @param map
@@ -78,4 +95,182 @@ public class ApprovalServiceImpl implements ApprovalService {
             throw new Exception(resMap.get("message").toString());
         }
     }
+
+    /**
+     * 核心企业确权审批
+     * @param map
+     * @return
+     * @throws Exception
+     */
+    @Override
+    public void coreConfirmationApproval(@RequestBody Map map) throws Exception {
+        Map<String, Object> flowParam = new HashMap<String, Object>();
+        //核心企业Id
+        String zfiCoreId = 	CommonUtil.objToString(map.get("zfiCoreId"));
+        //根据企业id获取用户id
+        LambdaQueryWrapper<SysUserCompanyRel> userQuery = new LambdaQueryWrapper<>();
+        userQuery.eq(SysUserCompanyRel::getSucrCompanyId,zfiCoreId);
+        userQuery.eq(SysUserCompanyRel::getSucrHandler,"1");
+        List<SysUserCompanyRel> userList = iSysUserCompanyRelService.findSysUserCompanyRels(userQuery);
+        String userId = String.valueOf(userList.get(0).getSucrUserId());
+        SysUser sysUser = iSysUserService.getById(userId);
+        String userName = sysUser.getUserName();
+        //查询当前操作员
+        flowParam.put("menuId", "1000000007");
+        flowParam.put("companyId", zfiCoreId);
+        //双主键
+        flowParam.put("businessKey", CommonUtil.objToString(map.get("zfiId")));
+        //员工编号
+        flowParam.put("sessionUserId", userId);
+        flowParam.put("name", userName + "在" + DateUtils.getDate() + "发起确权审批");
+        JSONObject jsonObj = new JSONObject(map);
+        flowParam.put("paras", jsonObj.toString());
+        Map<String, Object> resMap = flowableService.apiPost(STRART_FLOW, flowParam);
+        if("200".equals(resMap.get("code"))){
+        }else
+            //未开启流程实例
+            if("300".equals(resMap.get("code")) || "350".equals(resMap.get("code"))){
+                ZcFinanceInf zcFinanceInf = zcFinanceInfService.getById(CommonUtil.objToString(map.get("zfiId")));
+                String type = zcFinanceInf.getZfiCreateType();
+                if("0".equals(type)){
+                    addSignApproval(map);
+                }else if("2".equals(type)){
+                    addFinancingApproval(map);
+                }
+            }else if ("450".equals(resMap.get("code"))) {
+                throw new Exception("未配置审批流程");
+            }else if (!"200".equals(resMap.get("code"))) {
+                throw new Exception(resMap.get("message").toString());
+            }
+    }
+
+
+    /**
+     * 融资企业签收审批
+     * @param map
+     * @throws Exception
+     */
+    @Override
+    public void addSignApproval(@RequestBody Map map) throws Exception {
+        Map<String, Object> flowParam = new HashMap<String, Object>();
+        String companyId = CommonUtil.objToString(map.get("zfiSupplierId"));
+        LambdaQueryWrapper<SysUserCompanyRel> userQueryWrapper = new LambdaQueryWrapper<>();
+        userQueryWrapper.eq(SysUserCompanyRel::getSucrCompanyId,companyId);
+        userQueryWrapper.eq(SysUserCompanyRel::getSucrHandler,"1");
+        List<SysUserCompanyRel> userList = iSysUserCompanyRelService.findSysUserCompanyRels(userQueryWrapper);
+        String userId= String.valueOf(userList.get(0).getSucrUserId());
+        //查询用户名称
+        SysUser sysUser = iSysUserService.getById(userId);
+        String userName =  sysUser.getUserName();
+        //查询当前操作员
+        flowParam.put("menuId", "1000000005");
+        flowParam.put("companyId", companyId);
+        //双主键
+        flowParam.put("businessKey", CommonUtil.objToString(map.get("zfiId")));
+        //员工id
+        flowParam.put("sessionUserId", userId);
+        //融信编号
+        String zfiNumber = CommonUtil.objToString(map.get("zfiNumber"));
+        if(CommonUtil.isNotEmpty(zfiNumber)) {
+            flowParam.put("name",userName + DateUtils.getTime() + "发起审批,融信编号为:" + CommonUtil.objToString(map.get("zfiNumber"))+"的融资企业签收审批");
+        }else {
+            flowParam.put("name",userName + DateUtils.getTime() + "发起融资企业签收审批");
+        }
+        JSONObject jsonObj=new JSONObject(map);
+        flowParam.put("paras", jsonObj.toString());
+        Map<String, Object> resMap = flowableService.apiPost(STRART_FLOW, flowParam);
+        if ("200".equals(resMap.get("code"))){
+            ZcFinanceInf zfi = new ZcFinanceInf();
+            zfi.setZfiId(CommonUtil.objToString(map.get("zfiId")));
+            //状态(00:待确权 01:待签收 02:已生效 03:已失效 04:融资中 05:已融资 06:平台退回)
+            zfi.setZfiStatus("00");
+            zcFinanceInfService.updateById(zfi);
+        }
+        //未开启流程实例
+        if("300".equals(resMap.get("code"))){
+            //修改平台审批状态为通过/融信状态为已签收
+            ZcFinanceInf zcFinanceInf = new ZcFinanceInf();
+            //融信id
+            zcFinanceInf.setZfiId(CommonUtil.objToString(map.get("zfiId")));
+            //平台审批状态(00:审批中, 01:审批通过, 02:审批拒绝, 03:暂存)
+            zcFinanceInf.setZfiPlatformStatus("01");
+            //融信状态(00:待确权 01:待签收 02:已生效 03:已失效 04:融资中 05:已融资 06:平台退回)
+            zcFinanceInf.setZfiStatus("02");
+            zcFinanceInfService.updateById(zcFinanceInf);
+        }else if (!"200".equals(resMap.get("code"))) {
+            throw new Exception(resMap.get("message").toString());
+        }
+    }
+    /**
+     * 融资审批
+     * @param map
+     * @throws Exception
+     */
+    @Override
+    public void addFinancingApproval(@RequestBody Map map) throws Exception {
+        Map<String, Object> flowParam = new HashMap<String, Object>();
+        String companyId = CommonUtil.objToString(map.get("zfiSupplierId"));
+        LambdaQueryWrapper<SysUserCompanyRel> userQueryWrapper = new LambdaQueryWrapper<>();
+        userQueryWrapper.eq(SysUserCompanyRel::getSucrCompanyId,companyId);
+        userQueryWrapper.eq(SysUserCompanyRel::getSucrHandler,"1");
+        List<SysUserCompanyRel> userList = iSysUserCompanyRelService.findSysUserCompanyRels(userQueryWrapper);
+        String userId = "";
+        if(userList.size() > 0){
+            userId = String.valueOf(userList.get(0).getSucrUserId());
+        }
+        //查询用户名称
+        SysUser sysUser = iSysUserService.getById(userId);
+        String userName =  sysUser.getUserName();
+        //查询当前操作员
+        flowParam.put("menuId", "1000000006");
+        flowParam.put("companyId", companyId);
+        //双主键
+        flowParam.put("businessKey", CommonUtil.objToString(map.get("zfiId")));
+        //员工id
+        flowParam.put("sessionUserId",  userId);
+        //融信编号
+        String zfiNumber = CommonUtil.objToString(map.get("zfiNumber"));
+        if(CommonUtil.isNotEmpty(zfiNumber)) {
+            flowParam.put("name",userName + DateUtils.getTime() + "发起审批,融信编号为:" + CommonUtil.objToString(map.get("zfiNumber"))+"的融资审批");
+        }else {
+            flowParam.put("name",userName + DateUtils.getTime() + "发起融资审批");
+        }
+        JSONObject jsonObj=new JSONObject(map);
+        flowParam.put("paras", jsonObj.toString());
+        Map<String, Object> resMap = flowableService.apiPost(STRART_FLOW, flowParam);
+        if ("200".equals(resMap.get("code"))){
+            ZcFinanceInf zfi = new ZcFinanceInf();
+            zfi.setZfiId(CommonUtil.objToString(map.get("zfiId")));
+            //状态(00:待确权 01:待签收 02:已生效 03:已失效 04:融资中 05:已融资 06:平台退回)
+            zfi.setZfiStatus("04");
+            zcFinanceInfService.updateById(zfi);
+            LambdaQueryWrapper<ZcFinanceRecord> zcFinanceRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
+            zcFinanceRecordLambdaQueryWrapper.eq(ZcFinanceRecord::getZfrFinanceId,CommonUtil.objToString(map.get("zfiId")));
+            ZcFinanceRecord zcFinanceRecord = new ZcFinanceRecord();
+            //融资状态(00:融资中 01:已放款 02:融资失败 03:已结算)
+            zcFinanceRecord.setZfrStatus("01");
+            //审批状态(00:审核中 01:审批通过, 2:审批拒绝)
+            zcFinanceRecord.setZfrApproveStt("00");
+            zcFinanceRecordService.update(zcFinanceRecord,zcFinanceRecordLambdaQueryWrapper);
+        }
+        //未开启流程实例
+        if("300".equals(resMap.get("code"))){
+            ZcFinanceInf zcFinanceInf = new ZcFinanceInf();
+            //融信id
+            zcFinanceInf.setZfiId(CommonUtil.objToString(map.get("zfiId")));
+            //融信状态(00:待确权 01:待签收 02:已生效 03:已失效 04:融资中 05:已融资 06:平台退回)
+            zcFinanceInf.setZfiStatus("04");
+            zcFinanceInfService.updateById(zcFinanceInf);
+            LambdaQueryWrapper<ZcFinanceRecord> zcFinanceRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
+            zcFinanceRecordLambdaQueryWrapper.eq(ZcFinanceRecord::getZfrFinanceId,CommonUtil.objToString(map.get("zfiId")));
+            ZcFinanceRecord zcFinanceRecord = new ZcFinanceRecord();
+            //融资状态(00:融资中 01:已放款 02:融资失败 03:已结算)
+            zcFinanceRecord.setZfrStatus("00");
+            //审批状态(00:审核中 01:审批通过, 2:审批拒绝)
+            zcFinanceRecord.setZfrApproveStt("01");
+            zcFinanceRecordService.update(zcFinanceRecord,zcFinanceRecordLambdaQueryWrapper);
+        }else if (!"200".equals(resMap.get("code"))) {
+            throw new Exception(resMap.get("message").toString());
+        }
+    }
 }

+ 4 - 1
sc-service/src/main/resources/mapper/base/SysUserCompanyRelMapper.xml

@@ -3,11 +3,14 @@
 <mapper namespace="com.huyi.service.base.mapper.SysUserCompanyRelMapper">
 
     <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.huyi.service.base.entity.SysUserCompanyRel">
+    <resultMap id="BaseResultMap" type="com.tianhu.system.entity.SysUserCompanyRel">
         <id column="sucr_user_id" property="sucrUserId" />
         <result column="sucr_company_id" property="sucrCompanyId" />
         <result column="sucr_dept_id" property="sucrDeptId" />
         <result column="sucr_handler" property="sucrHandler" />
+        <result column="sucr_card" property="sucrCard" />
+        <result column="sucr_card_file" property="sucrCardFile" />
+        <result column="sucr_card_back_file" property="sucrCardBackFile" />
         <result column="create_by" property="createBy" />
         <result column="create_time" property="createTime" />
         <result column="update_by" property="updateBy" />