Quellcode durchsuchen

协议上传状态查询接口-20220519

mashengyi vor 2 Jahren
Ursprung
Commit
0378a7f160

+ 30 - 0
src/main/java/com/jkcredit/invoice/controller/business/CustomerController.java

@@ -260,6 +260,36 @@ public class CustomerController {
     public RespR contractAdd(@RequestBody CustomerRec customerRec){
         return customerService.contractAdd(customerRec);
     }
+
+
+    @PostMapping("/contractStatusFail")
+    @ApiOperation(value="协议上传失败状态确认", notes="协议上传失败状态确认")
+    @LoginRequired(role = AuthenticationInterceptor.AUTH_ADMIN)
+    public RespR contractStatusFail(@RequestBody CustomerRec customerRec){
+        return customerService.contractStatusFail(customerRec);
+    }
+
+
+
+    @PostMapping("/contractStatusProcess")
+    @ApiOperation(value="协议上传成功,审批中状态确认", notes="协议上传成功,审批中状态确认")
+    @LoginRequired(role = AuthenticationInterceptor.AUTH_ADMIN)
+    public RespR contractStatusProcess(@RequestBody CustomerRec customerRec){
+        return customerService.contractStatusProcess(customerRec);
+    }
+
+
+
+
+    @PostMapping("/contractStatusSuccess")
+    @ApiOperation(value="备案成功状态确认", notes="备案成功状态确认")
+    @LoginRequired(role = AuthenticationInterceptor.AUTH_ADMIN)
+    public RespR contractStatusSuccess(@RequestBody CustomerRec customerRec){
+        return customerService.contractStatusSuccess(customerRec);
+    }
+
+
+
     @GetMapping("/contractDownload")
     @ApiOperation(value="协议下载", notes="协议下载")
     public RespR contractDownload(String customerRecId,HttpServletResponse response){

+ 10 - 0
src/main/java/com/jkcredit/invoice/credit/InterfaceCheckServer.java

@@ -70,6 +70,16 @@ public class InterfaceCheckServer {
                     statisRequestIdTimeComp.removeReQuestIdAndTime(requestid);
                 }
                 break;
+            case "PROTOCOL_STATUS_V1"://自有车 无车、协议上传状态查询
+                if(StatisRequestIdTimeComp.isLimit){
+                    log.info("InterfaceCheckServer.doJumpHandler,appKey=" + appKey + " ,api="+api + " ,data=" + data + " ,requestid=" + requestid +"=被拒绝");
+                    result = resultTimeOut;
+                }else{
+                    statisRequestIdTimeComp.putReQuestIdAndTime(requestid);
+                    result = customerInterLowerService.customeProtocolStatus(appKey,api,data,requestid);
+                    statisRequestIdTimeComp.removeReQuestIdAndTime(requestid);
+                }
+                break;
 
 
 

+ 4 - 0
src/main/java/com/jkcredit/invoice/credit/SimpleCORSFilter.java

@@ -53,6 +53,7 @@ public class SimpleCORSFilter implements Filter {
             put( "COMPANY_ADD_V1" ,  "1");//自有车 无车、企业注册
             put( "COMPANY_QUERY_V1" ,  "1");//自有车 无车、企业查询
             put( "PROTOCOL_ADD_V1" ,  "1");//自有车 无车、协议上传
+            put( "PROTOCOL_STATUS_V1" ,  "1");//自有车 无车、协议上传状态查询
 
             //无车下游客户调用接口
             put( "VEHICLE_REGISTER" ,  "1");//车辆备案
@@ -118,6 +119,9 @@ public class SimpleCORSFilter implements Filter {
             "/customer/findCustomerMoney",
             "/customer/customeRecQueryListByPage",
             "/customer/customeRecQueryUpper",
+            "/customer/contractStatusFail",
+            "/customer/contractStatusProcess",
+            "/customer/contractStatusSuccess",
             "/auth/login/loginOut",
             "/noCar/findCarRec",
             "/noCar/findBillWay",

+ 10 - 0
src/main/java/com/jkcredit/invoice/credit/interserver/CustomerInterLowerService.java

@@ -36,4 +36,14 @@ public interface CustomerInterLowerService {
      *
      */
     DataResult customeProtocolUpLoad(String appKey, String api, String data, String requestid);
+
+    /**
+     * 自有车 无车、协议上传状态查询
+     * @param appKey
+     * @param api
+     * @param data
+     * @param requestid
+     * @return
+     */
+    DataResult customeProtocolStatus(String appKey, String api, String data, String requestid);
 }

+ 90 - 0
src/main/java/com/jkcredit/invoice/credit/interserver/CustomerInterLowerServiceImpl.java

@@ -353,4 +353,94 @@ public class CustomerInterLowerServiceImpl implements CustomerInterLowerService
 
         return result;
     }
+
+
+
+
+
+    /**
+     * @Description  自有车 无车、协议上传状态查询
+     * @Author  mashengyi
+     * @Date   2022/3/27 22:51
+     * @Param
+     * @Return
+     * @Exception
+     *
+     */
+    @Override
+    public DataResult customeProtocolStatus(String appKey, String api, String data, String requestid) {
+        long costtimestart = System.currentTimeMillis();
+
+        DataResult result = new DataResult();
+
+        result.setData(3);
+        result.setCode(200);
+        result.setRequestid(requestid);
+        result.setMsg("无法认证");
+
+        try {
+            log.info("[-CustomerInterLowerServiceImpl.customeProtocolStatus-] request appKey=" + appKey + " ,api=" + api + " ,data=" +data+ " ,requestid=" +requestid);
+            JSONObject jsonObject = JSONObject.parseObject(data);
+            String companyNum =  jsonObject.getString("companyNum");//公司编号
+
+            if(StringUtils.isEmpty(data)|| null == jsonObject){
+                return  result;
+            }
+            if( StringUtils.isEmpty(companyNum)){
+                return  result;
+            }
+
+
+
+
+            CustomerRec customerRec2 = new CustomerRec();
+            customerRec2.setCustomerName(appKey);
+            customerRec2.setCompanyNum(companyNum);
+            CustomerRec customerRec1 = customerRecMapper.selectByCustomerNameAndCompanyNum(customerRec2);
+            if (null == customerRec1){
+                result.setMsg("企业还未备案成功!");
+                return result;
+            }
+
+            if (null != customerRec1 && customerRec1.getRecStatus() != 1){
+                result.setMsg("企业还未备案成功!");
+                return result;
+            }
+
+
+            CustomerRec customerRec = new CustomerRec();
+            customerRec.setCustomerName(appKey);//客户名称
+            customerRec.setCompanyNum(companyNum);
+            customerRec.setInterType(0);//接口
+
+            RespR rs = lowerService.customeRecUploadStatus(customerRec);
+            long costtimeend = System.currentTimeMillis();
+            log.info("[-CustomerInterLowerServiceImpl.customeProtocolStatus-] result is "
+                    + rs.toString() + ", request is " + data + " ,costtime="
+                    + (costtimeend - costtimestart));
+            if(null != rs && rs.getCode() == 0 && 0 == Integer.parseInt(rs.getData().toString())){
+                result.setData(3);
+                result.setCode(200);
+                result.setMsg("协议上传状态查询失败,请联系管理员处理");
+                return result;
+            } else if(null != rs && rs.getCode() == 0 && 0 != Integer.parseInt(rs.getData().toString())){
+                result.setData(1);
+                result.setCode(200);
+                JSONObject jb = new JSONObject();
+                jb.put("status",rs.getData().toString());
+                result.setMsg(jb.toString());
+                return result;
+            }else {
+                result.setData(3);
+                result.setCode(200);
+                result.setMsg("无法认证");
+                return result;
+            }
+        } catch (Exception e) {
+            log.error("[-CustomerInterLowerServiceImpl.customeProtocolStatus-] get httpclient exception is "
+                    + e + ", request is " + data);
+        }
+
+        return result;
+    }
 }

+ 8 - 0
src/main/java/com/jkcredit/invoice/mapper/customer/CustomerRecMapper.java

@@ -35,6 +35,12 @@ public interface CustomerRecMapper extends BaseMapper<CustomerRec> {
     List<CustomerRec> selectByCompanyName(String comapanyName);
     //根据客户名称和 企业编码查询唯一数据
     CustomerRec selectByCustomerNameAndCompanyNum(CustomerRec record);
+
+
+    //根据客户名称和 企业编码查询唯一数据
+    int selectContractStatusByCustomerNameAndCompanyNum(CustomerRec record);
+
+
     List<CustomerRec> selectByCompanyNum(CustomerRec record);
     int updateByPrimaryKeySelective(CustomerRec record);
     int updateByPrimaryKeySelectiveUpload(CustomerRec record);
@@ -49,4 +55,6 @@ public interface CustomerRecMapper extends BaseMapper<CustomerRec> {
     List<CustomerRec> selectAllByPageExport( @Param("customerRec") CustomerRec customerRec);
 
     List<CustomerRec> selectAllNoCarComapany();
+
+    int updateContractStatus(CustomerRec customerRec);
 }

+ 19 - 0
src/main/java/com/jkcredit/invoice/model/entity/customer/CustomerRec.java

@@ -150,6 +150,16 @@ public class CustomerRec {
      */
     private String fileMessage;
 
+
+    /**
+     *
+     * 协议上传状态
+     * 1、协议上传失败
+     * 2、协议上传成功,审批中
+     * 3、备案成功
+     */
+    private Integer contractStatus;
+
     public Long getId() {
         return id;
     }
@@ -391,6 +401,14 @@ public class CustomerRec {
         this.fileMessage = fileMessage;
     }
 
+    public Integer getContractStatus() {
+        return contractStatus;
+    }
+
+    public void setContractStatus(Integer contractStatus) {
+        this.contractStatus = contractStatus;
+    }
+
     @Override
     public String toString() {
         return "CustomerRec{" +
@@ -424,6 +442,7 @@ public class CustomerRec {
                 ", contractSuc=" + contractSuc +
                 ", contrantNum='" + contrantNum + '\'' +
                 ", fileMessage='" + fileMessage + '\'' +
+                ", contractStatus=" + contractStatus +
                 '}';
     }
 }

+ 22 - 0
src/main/java/com/jkcredit/invoice/service/customer/CustomerService.java

@@ -115,4 +115,26 @@ public interface CustomerService extends IService<Customer>{
      * @return
      */
     boolean checkMoneyEnough(String customerName);
+
+
+    /**
+     * 协议上传失败 状态确认
+     * @param customerRec
+     * @return
+     */
+    RespR contractStatusFail(CustomerRec customerRec);
+
+    /**
+     * 协议上传成功,审批中状态确认
+     * @param customerRec
+     * @return
+     */
+    RespR contractStatusProcess(CustomerRec customerRec);
+
+    /**
+     * 备案成功状态确认
+     * @param customerRec
+     * @return
+     */
+    RespR contractStatusSuccess(CustomerRec customerRec);
 }

+ 43 - 0
src/main/java/com/jkcredit/invoice/service/customer/impl/CustomerServiceImpl.java

@@ -119,6 +119,49 @@ public class CustomerServiceImpl extends ServiceImpl<CustomerMapper,Customer> im
 
     }
 
+
+
+
+
+    @Override
+    public RespR contractStatusFail(CustomerRec customerRec){
+        log.info("协议上传失败状态确认:CustomerServiceImpl.contractStatusFail{}",customerRec);
+
+        if(customerRec.getRecStatus().intValue() == 2){
+            return new RespR(false,"无法更新协议状态,还未注册");
+        }
+        //协议上传失败状态
+       customerRec.setContractStatus(1);
+       customerRecMapper.updateContractStatus(customerRec);
+
+       return new RespR("协议上传失败状态操作完成");
+    }
+    @Override
+    public RespR contractStatusProcess(CustomerRec customerRec){
+        log.info("协议上传成功,审批中状态确认:CustomerServiceImpl.contractStatusProcess{}",customerRec);
+
+        if(customerRec.getRecStatus().intValue() == 2){
+            return new RespR(false,"无法更新协议状态,还未注册");
+        }
+        //协议上传成功,审批中状态
+        customerRec.setContractStatus(2);
+        customerRecMapper.updateContractStatus(customerRec);
+
+        return new RespR("协议上传成功,审批中状态操作完成");
+    }
+    @Override
+    public RespR contractStatusSuccess(CustomerRec customerRec){
+        log.info("备案成功状态确认:CustomerServiceImpl.contractStatusSuccess{}",customerRec);
+
+        if(customerRec.getRecStatus().intValue() == 2){
+            return new RespR(false,"无法更新协议状态,还未注册");
+        }
+        //备案成功状态
+        customerRec.setContractStatus(3);
+        customerRecMapper.updateContractStatus(customerRec);
+        return new RespR("备案成功状态操作完成");
+    }
+
     @Override
     public RespR contractDownload(String id) {
         CustomerRec customerRec = customerRecMapper.selectByPrimaryKeyHasBase64(Integer.valueOf(id));

+ 8 - 0
src/main/java/com/jkcredit/invoice/service/lowerservice/CustomeLowerService.java

@@ -33,4 +33,12 @@ public interface CustomeLowerService {
 
     //协议上传 上传到本地库
     RespR customeRecUpload(List<CustomerRec> customerRecs);
+
+
+    /**
+     * 协议上传状态查询(本地库)
+     * @param customerRec
+     * @return
+     */
+    RespR customeRecUploadStatus(CustomerRec customerRec);
 }

+ 7 - 0
src/main/java/com/jkcredit/invoice/service/lowerservice/impl/CustomerLowerServiceImpl.java

@@ -206,6 +206,13 @@ public class CustomerLowerServiceImpl implements CustomeLowerService {
     }
 
 
+    @Override
+    public RespR customeRecUploadStatus(CustomerRec customerRec) {
+
+        return new RespR(customerRecMapper.selectContractStatusByCustomerNameAndCompanyNum(customerRec));
+    }
+
+
 
 
 

+ 27 - 2
src/main/resources/mapper/customer/CustomerRecMapper.xml

@@ -25,6 +25,7 @@
     <result column="service_type" property="serviceType" jdbcType="INTEGER" />
     <result column="contractFileName" property="contractFileName" jdbcType="VARCHAR" />
     <result column="contractSuc" property="contractSuc" jdbcType="INTEGER" />
+    <result column="contractStatus" property="contractStatus" jdbcType="INTEGER" />
     <result column="base64Str" property="base64Str" jdbcType="VARCHAR" />
     <result column="contrantNum" property="contrantNum" jdbcType="VARCHAR" />
     <result column="lowerFileName" property="lowerFileName" jdbcType="VARCHAR" />
@@ -216,7 +217,7 @@
     </select>
   <select id="selectByCustomerNameCpAll" resultMap="BaseResultMap" parameterType="com.jkcredit.invoice.model.entity.customer.CustomerRec" >
     select
-    <include refid="Base_Column_List" />
+    <include refid="Base_Column_List" />,contractStatus
     from t_customer_rec
     where  customerName = BINARY #{customerRec.customerName,jdbcType=VARCHAR}
     <if test="customerRec.companyName != null and customerRec.companyName != ''">
@@ -225,7 +226,7 @@
   </select>
     <select id="selectByCustomerNameAndCompany" resultMap="BaseResultMap" parameterType="com.jkcredit.invoice.model.entity.customer.CustomerRec" >
         select
-        <include refid="Base_Column_List" />
+        <include refid="Base_Column_List" />,contractStatus
         from t_customer_rec
         where  customerName = BINARY #{customerName,jdbcType=VARCHAR} AND  company_name = BINARY  #{companyName,jdbcType=VARCHAR}
     </select>
@@ -260,6 +261,15 @@
     from t_customer_rec
     where  customerName = BINARY #{customerName,jdbcType=VARCHAR} AND company_num =  #{companyNum,jdbcType=VARCHAR}
   </select>
+
+  <select id="selectContractStatusByCustomerNameAndCompanyNum" resultType="java.lang.Integer" parameterType="com.jkcredit.invoice.model.entity.customer.CustomerRec" >
+    select
+    contractStatus
+    from t_customer_rec
+    where  customerName = BINARY #{customerName,jdbcType=VARCHAR} AND company_num =  #{companyNum,jdbcType=VARCHAR}
+  </select>
+
+
     <select id="selectByCompanyNum" resultMap="BaseResultMap" parameterType="com.jkcredit.invoice.model.entity.customer.CustomerRec" >
         select
         <include refid="Base_Column_List" />
@@ -465,6 +475,21 @@
 
 
 
+
+
+
+  <update id="updateContractStatus" parameterType="com.jkcredit.invoice.model.entity.customer.CustomerRec" >
+    update t_customer_rec
+    <set>
+      <if test="contractStatus != null" >
+        contractStatus = #{contractStatus,jdbcType=INTEGER},
+      </if>
+    </set>
+    where  id = BINARY #{id,jdbcType=BIGINT}
+  </update>
+
+
+
   <update id="updateByPrimaryKeySelectiveUpload" parameterType="com.jkcredit.invoice.model.entity.customer.CustomerRec" >
     update t_customer_rec
     <set >