Pārlūkot izejas kodu

Merge remote-tracking branch 'origin/test' into test

wks 2 gadi atpakaļ
vecāks
revīzija
ca94465792
34 mainītis faili ar 1817 papildinājumiem un 15 dzēšanām
  1. 55 0
      src/main/java/com/ydtech/modules/fnc/controller/InsPlyIncomeController.java
  2. 119 0
      src/main/java/com/ydtech/modules/fnc/controller/InsPlySettleController.java
  3. 18 0
      src/main/java/com/ydtech/modules/fnc/controller/InsPlySettleDetailController.java
  4. 18 0
      src/main/java/com/ydtech/modules/fnc/controller/InsPlySettleHxController.java
  5. 62 0
      src/main/java/com/ydtech/modules/fnc/dao/InsPlyIncomeMapper.java
  6. 23 0
      src/main/java/com/ydtech/modules/fnc/dao/InsPlySettleDetailMapper.java
  7. 18 0
      src/main/java/com/ydtech/modules/fnc/dao/InsPlySettleHxMapper.java
  8. 49 0
      src/main/java/com/ydtech/modules/fnc/dao/InsPlySettleMapper.java
  9. 112 0
      src/main/java/com/ydtech/modules/fnc/entity/InsPlyIncome.java
  10. 79 0
      src/main/java/com/ydtech/modules/fnc/entity/InsPlySettle.java
  11. 61 0
      src/main/java/com/ydtech/modules/fnc/entity/InsPlySettleDetail.java
  12. 61 0
      src/main/java/com/ydtech/modules/fnc/entity/InsPlySettleHx.java
  13. 19 0
      src/main/java/com/ydtech/modules/fnc/service/InsPlyIncomeService.java
  14. 16 0
      src/main/java/com/ydtech/modules/fnc/service/InsPlySettleDetailService.java
  15. 16 0
      src/main/java/com/ydtech/modules/fnc/service/InsPlySettleHxService.java
  16. 33 0
      src/main/java/com/ydtech/modules/fnc/service/InsPlySettleService.java
  17. 50 1
      src/main/java/com/ydtech/modules/fnc/service/impl/InsFeeAuditServiceImpl.java
  18. 48 0
      src/main/java/com/ydtech/modules/fnc/service/impl/InsPlyIncomeServiceImpl.java
  19. 20 0
      src/main/java/com/ydtech/modules/fnc/service/impl/InsPlySettleDetailServiceImpl.java
  20. 20 0
      src/main/java/com/ydtech/modules/fnc/service/impl/InsPlySettleHxServiceImpl.java
  21. 136 0
      src/main/java/com/ydtech/modules/fnc/service/impl/InsPlySettleServiceImpl.java
  22. 73 0
      src/main/java/com/ydtech/modules/fnc/vo/InsPlyIncomeVo.java
  23. 82 0
      src/main/java/com/ydtech/modules/fnc/vo/InsPlySettleVo.java
  24. 4 2
      src/main/java/com/ydtech/modules/order/controller/InsOrdersController.java
  25. 3 0
      src/main/java/com/ydtech/modules/order/entity/vo/PolicyInsuranceReportReqVo.java
  26. 13 2
      src/main/java/com/ydtech/modules/order/service/InsOrdersService.java
  27. 16 2
      src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java
  28. 98 0
      src/main/java/com/ydtech/utils/genMybatis/CodeGenerator.java
  29. 362 0
      src/main/resources/application-dev.yml
  30. 29 0
      src/main/resources/mapper/modules/fnc/InsPlyIncomeMapper.xml
  31. 17 0
      src/main/resources/mapper/modules/fnc/InsPlySettleDetailMapper.xml
  32. 17 0
      src/main/resources/mapper/modules/fnc/InsPlySettleHxMapper.xml
  33. 22 0
      src/main/resources/mapper/modules/fnc/InsPlySettleMapper.xml
  34. 48 8
      src/main/resources/mapper/modules/order/InsOrdersMapper.xml

+ 55 - 0
src/main/java/com/ydtech/modules/fnc/controller/InsPlyIncomeController.java

@@ -0,0 +1,55 @@
+package com.ydtech.modules.fnc.controller;
+
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.base.controller.BaseController;
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
+import com.ydtech.modules.fnc.service.InsPlyIncomeService;
+import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
+import com.ydtech.modules.order.entity.BasePageResult;
+import com.ydtech.modules.order.entity.InsOrders;
+import com.ydtech.modules.order.entity.vo.OrderQueryVo;
+import com.ydtech.utils.StringUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
+
+/**
+ * <p>
+ * 保司结算手续费 前端控制器
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-05
+ */
+@RestController
+@Api(tags = "保司费用")
+@RequestMapping("/fnc/plyFee")
+public class InsPlyIncomeController extends BaseController {
+
+    @Autowired
+    private InsPlyIncomeService insPlyIncomeService;
+
+    /**
+     *
+     * @return
+     */
+    @PostMapping("/queryPage")
+    @ApiOperation(value = "[1]保司费用查询")
+    public HttpResult<BasePageResult<InsPlyIncome>> queryPage(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
+
+
+        if(StringUtils.isNullOrEmpty(insPlyIncomeVo.getDeptId())){
+            insPlyIncomeVo.setDeptId(getDeptId());
+        }
+        HttpResult<BasePageResult<InsPlyIncome>> result=insPlyIncomeService.queryplyIncome(insPlyIncomeVo);
+
+        return result;
+    }
+
+}

+ 119 - 0
src/main/java/com/ydtech/modules/fnc/controller/InsPlySettleController.java

@@ -0,0 +1,119 @@
+package com.ydtech.modules.fnc.controller;
+
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.base.controller.BaseController;
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
+import com.ydtech.modules.fnc.entity.InsPlySettle;
+import com.ydtech.modules.fnc.entity.InsPlySettleDetail;
+import com.ydtech.modules.fnc.entity.InsPlySettleHx;
+import com.ydtech.modules.fnc.service.InsPlyIncomeService;
+import com.ydtech.modules.fnc.service.InsPlySettleService;
+import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
+import com.ydtech.modules.fnc.vo.InsPlySettleVo;
+import com.ydtech.modules.order.entity.BasePageResult;
+import com.ydtech.utils.StringUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.validation.Valid;
+import java.util.List;
+
+/**
+ * <p>
+ * 月度结算单汇总表 前端控制器
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@RestController
+@Api(tags = "结算单管理")
+@RequestMapping("/fnc/plySettle")
+public class InsPlySettleController extends BaseController {
+
+    @Autowired
+    private InsPlyIncomeService insPlyIncomeService;
+    @Autowired
+    private InsPlySettleService insPlySettleService;
+    /**
+     * 结算单生成查询--有待结费用
+     * @return
+     */
+    @PostMapping("/queryPly")
+    @ApiOperation(value = "[1]结算单生成页面--待结算保司费用清单查询")
+    public HttpResult<BasePageResult<InsPlyIncome>> queryPly(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
+
+        if(StringUtils.isNullOrEmpty(insPlyIncomeVo.getCompanyId())){
+            return HttpResult.error("保险公司必传");
+        }
+        if(StringUtils.isNullOrEmpty(insPlyIncomeVo.getDeptId())){
+            insPlyIncomeVo.setDeptId(getDeptId());
+        }
+        insPlyIncomeVo.setFlag("0");
+        HttpResult<BasePageResult<InsPlyIncome>> result=insPlyIncomeService.queryplyIncome(insPlyIncomeVo);
+
+        return result;
+    }
+    /**
+     *结算单生成
+     * @return
+     */
+    @ApiOperation(value = "[2]结算单生成页面--结算单生成")
+    @PostMapping("/generateSettle")
+    public HttpResult generateSettleAndDetail(@RequestBody List<InsPlyIncome> plyList){
+
+        HttpResult result = null;
+        try {
+
+            result = insPlySettleService.generateSettleAndDetail(plyList);
+        } catch (Exception e) {
+            result = HttpResult.error("结算单生成失败!"+e.getMessage());
+            e.printStackTrace();
+        }
+        return result;
+    }
+    /**
+     *结算单查询
+     * @return
+     */
+    @ApiOperation(value = "[3]结算单查询")
+    @PostMapping("/selectSettle")
+    public HttpResult<BasePageResult<InsPlySettle>> selectSettle(@RequestBody InsPlySettleVo settle){
+
+        return insPlySettleService.selectSettle(settle);
+    }
+    /**
+     *结算单查询
+     * @return
+     */
+    @ApiOperation(value = "[4]结算单明细查询")
+    @PostMapping("/selectSettleDetail")
+    public HttpResult<BasePageResult<InsPlyIncome>> selectSettleDetail(@RequestBody InsPlySettleVo settle){
+
+        return insPlySettleService.selectSettleDetail(settle);
+    }
+    /**
+     *结算单核销
+     * @return
+     */
+    @ApiOperation(value = "[5]结算单核销")
+    @PostMapping("/enterSettle")
+    public HttpResult enterSettle( @RequestBody InsPlySettleHx insPlySettleHx){
+
+        HttpResult result = null;
+        try {
+            result = insPlySettleService.enterSettle(insPlySettleHx);
+        } catch (Exception e) {
+            result = HttpResult.error("结算单确认时发生错误!"+e.getMessage());
+            e.printStackTrace();
+        }
+        return result;
+    }
+}

+ 18 - 0
src/main/java/com/ydtech/modules/fnc/controller/InsPlySettleDetailController.java

@@ -0,0 +1,18 @@
+package com.ydtech.modules.fnc.controller;
+
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 月度结算单明细表 前端控制器
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@RestController
+@RequestMapping("/fnc/ins-ply-settle-detail")
+public class InsPlySettleDetailController {
+
+}

+ 18 - 0
src/main/java/com/ydtech/modules/fnc/controller/InsPlySettleHxController.java

@@ -0,0 +1,18 @@
+package com.ydtech.modules.fnc.controller;
+
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 月度结算单核销确认 前端控制器
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@RestController
+@RequestMapping("/fnc/ins-ply-settle-hx")
+public class InsPlySettleHxController {
+
+}

+ 62 - 0
src/main/java/com/ydtech/modules/fnc/dao/InsPlyIncomeMapper.java

@@ -0,0 +1,62 @@
+package com.ydtech.modules.fnc.dao;
+
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ydtech.modules.fnc.entity.InsPlySettleDetail;
+import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
+import com.ydtech.modules.fnc.vo.InsPlySettleVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 保司结算手续费 Mapper 接口
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-05
+ */
+@Mapper
+public interface InsPlyIncomeMapper extends BaseMapper<InsPlyIncome> {
+
+    @Select({"<script>"," " +
+            "select a.*,b.`name` dept_name ,c.`name` companyName " +
+            "from ins_ply_income a " +
+            "left join sys_dept b on a.dept_id=b.id " +
+            "left join esm_ins_company c on a.company_id=c.id " +
+            "where DATE_FORMAT(pay_date, '%Y-%m-%d') " +
+            "between DATE_FORMAT(#{startDate}, '%Y-%m-%d') and DATE_FORMAT(#{endDate}, '%Y-%m-%d')" +
+            "<if test='companyId!=\"\" '>" +
+            "   and a.company_id=#{companyId} " +
+            "</if> "+
+            "<if test='deptId!=\"\" '>" +
+            "   and a.dept_id like  CONCAT(#{deptId}, '%') " +
+            "</if> "+
+            "<if test='agreementId!=\"\" '>" +
+            "   and a.agreement_id=#{agreementId} " +
+            "</if> "+
+            //待结算清单
+            "<if test='flag==\"0\" '>" +
+            "   and a.all_fee_value!=IFNULL(a.final_fee_value,0)+IFNULL(a.doing_fee_value,0)" +
+            "</if> "+
+            "<if test='licenseno!=\"\" '>" +
+            "   and a.licenseno=#{licenseno} " +
+            "</if> "
+            ,"</script>"}
+    )
+    List<InsPlyIncome> selectByCondition(InsPlyIncomeVo insPlyIncomeVo);
+
+    @Select({"<script>"," " +
+            "select a.settleno,i.*,b.`name` dept_name ,c.`name` companyName " +
+            "from ins_ply_settle_detail a " +
+            "inner join ins_ply_income i on a.policyno=i.policyno " +
+            "left join sys_dept b on i.dept_id=b.id " +
+            "left join esm_ins_company c on i.company_id=c.id " +
+            "where a.settleno =#{settleno} "
+            ,"</script>"}
+    )
+    List<InsPlyIncome> selectSettleByCondition(InsPlySettleVo insPlySettleVo);
+
+}

+ 23 - 0
src/main/java/com/ydtech/modules/fnc/dao/InsPlySettleDetailMapper.java

@@ -0,0 +1,23 @@
+package com.ydtech.modules.fnc.dao;
+
+import com.ydtech.modules.fnc.entity.InsPlySettle;
+import com.ydtech.modules.fnc.entity.InsPlySettleDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ydtech.modules.fnc.vo.InsPlySettleVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 月度结算单明细表 Mapper 接口
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Mapper
+public interface InsPlySettleDetailMapper extends BaseMapper<InsPlySettleDetail> {
+
+}

+ 18 - 0
src/main/java/com/ydtech/modules/fnc/dao/InsPlySettleHxMapper.java

@@ -0,0 +1,18 @@
+package com.ydtech.modules.fnc.dao;
+
+import com.ydtech.modules.fnc.entity.InsPlySettleHx;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ * 月度结算单核销确认 Mapper 接口
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Mapper
+public interface InsPlySettleHxMapper extends BaseMapper<InsPlySettleHx> {
+
+}

+ 49 - 0
src/main/java/com/ydtech/modules/fnc/dao/InsPlySettleMapper.java

@@ -0,0 +1,49 @@
+package com.ydtech.modules.fnc.dao;
+
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
+import com.ydtech.modules.fnc.entity.InsPlySettle;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
+import com.ydtech.modules.fnc.vo.InsPlySettleVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 月度结算单汇总表 Mapper 接口
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Mapper
+public interface InsPlySettleMapper extends BaseMapper<InsPlySettle> {
+
+    @Select("select max(a.settle_batch) from ins_ply_settle a " +
+            "where a.company_id=#{companyId} and a.settle_month=#{settleMonth}")
+    String getMaxBatch(InsPlySettle insPlySettle);
+
+    @Select({"<script>"," " +
+            "select a.*,b.`name` dept_name ,c.`name` companyName " +
+            "from ins_ply_settle a " +
+            "left join sys_dept b on a.dept_id=b.id " +
+            "left join esm_ins_company c on a.company_id=c.id " +
+            "where 1=1 " +
+            "<if test='startDate!=\"\" and endDate!=\"\" and startDate!=null and endDate!=null'>" +
+            "and DATE_FORMAT(a.create_time, '%Y-%m-%d') " +
+            "between DATE_FORMAT(#{startDate}, '%Y-%m-%d') and DATE_FORMAT(#{endDate}, '%Y-%m-%d') " +
+            "</if> "+
+            "<if test='companyId!=\"\" '>" +
+            "   and a.company_id=#{companyId} " +
+            "</if> "+
+            "<if test='deptId!=\"\" '>" +
+            "   and a.dept_id like  CONCAT(#{deptId}, '%') " +
+            "</if> "
+            ,"</script>"}
+    )
+    List<InsPlySettle> selectByCondition(InsPlySettleVo insPlySettleVo);
+
+
+}

+ 112 - 0
src/main/java/com/ydtech/modules/fnc/entity/InsPlyIncome.java

@@ -0,0 +1,112 @@
+package com.ydtech.modules.fnc.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 保司结算手续费
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-05
+ */
+@Getter
+@Setter
+@TableName("ins_ply_income")
+@ApiModel(value = "InsPlyIncome对象", description = "保司结算手续费")
+public class InsPlyIncome implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("订单号")
+    @TableField("orderno")
+    private String orderno;
+
+    @ApiModelProperty("保单号")
+    @TableField("policyno")
+    private String policyno;
+
+    @ApiModelProperty("结算单号")
+    @TableField(exist = false)
+    private String settleno;
+
+    @ApiModelProperty("机构")
+    @TableField("dept_id")
+    private String deptId;
+    @ApiModelProperty("机构名称")
+    @TableField(exist = false)
+    private String deptName;
+
+    @ApiModelProperty("险种")
+    @TableField("riskcode")
+    private String riskcode;
+
+    @ApiModelProperty("出单时间")
+    @TableField("pay_date")
+    private LocalDateTime payDate;
+
+    @ApiModelProperty("保险公司")
+    @TableField("company_id")
+    private String companyId;
+
+    @ApiModelProperty("保险公司名称")
+    @TableField(exist = false)
+    private String companyName;
+
+    @ApiModelProperty("协议号")
+    @TableField("agreement_id")
+    private String agreementId;
+
+    @ApiModelProperty("车牌号")
+    @TableField("licenseno")
+    private String licenseno;
+
+    @ApiModelProperty("车船税")
+    @TableField("taxamount")
+    private BigDecimal taxamount;
+
+    @ApiModelProperty("不含税保费")
+    @TableField("no_tax_premium")
+    private BigDecimal noTaxPremium;
+
+    @ApiModelProperty("手续费比例")
+    @TableField("commission_feerate")
+    private BigDecimal commissionFeerate;
+
+    @ApiModelProperty("其他费用比例")
+    @TableField("other_feerate")
+    private BigDecimal otherFeerate;
+
+    @ApiModelProperty("手续费金额")
+    @TableField("commission_feevalue")
+    private BigDecimal commissionFeevalue;
+
+    @ApiModelProperty("其他费用金额")
+    @TableField("other_feevalue")
+    private BigDecimal otherFeevalue;
+
+    @ApiModelProperty("总费用")
+    @TableField("all_fee_value")
+    private BigDecimal allFeeValue;
+
+    @ApiModelProperty("已结算费用")
+    @TableField("final_fee_value")
+    private BigDecimal finalFeeValue;
+
+    @ApiModelProperty("正在结算费用")
+    @TableField("doing_fee_value")
+    private BigDecimal doingFeeValue;
+
+    @ApiModelProperty("记录插入时间")
+    @TableField("create_time")
+    private LocalDateTime createTime;
+}

+ 79 - 0
src/main/java/com/ydtech/modules/fnc/entity/InsPlySettle.java

@@ -0,0 +1,79 @@
+package com.ydtech.modules.fnc.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 月度结算单汇总表
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Getter
+@Setter
+@TableName("ins_ply_settle")
+@ApiModel(value = "InsPlySettle对象", description = "月度结算单汇总表")
+public class InsPlySettle implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("结算单号")
+    @TableField("settleno")
+    private String settleno;
+
+    @ApiModelProperty("保险公司")
+    @TableField("company_id")
+    private String companyId;
+    @ApiModelProperty("保险公司名称")
+    @TableField(exist = false)
+    private String companyName;
+
+    @ApiModelProperty("结算月份")
+    @TableField("settle_month")
+    private String settleMonth;
+
+    @ApiModelProperty("结算批次")
+    @TableField("settle_batch")
+    private String settleBatch;
+
+    @ApiModelProperty("手续费")
+    @TableField("commission_feevalue")
+    private BigDecimal commissionFeevalue;
+
+    @ApiModelProperty("其他费")
+    @TableField("other_feevalue")
+    private BigDecimal otherFeevalue;
+
+    @ApiModelProperty("总费用")
+    @TableField("all_fee_value")
+    private BigDecimal allFeeValue;
+
+    @ApiModelProperty("机构")
+    @TableField("dept_id")
+    private String deptId;
+    @ApiModelProperty("机构名称")
+    @TableField(exist = false)
+    private String deptName;
+
+    @ApiModelProperty("结算单生成时间")
+    @TableField("create_time")
+    private LocalDateTime createTime;
+
+    @ApiModelProperty("生成操作人")
+    @TableField("operator")
+    private String operator;
+
+    @ApiModelProperty("状态")
+    @TableField("status")
+    private String status;
+}

+ 61 - 0
src/main/java/com/ydtech/modules/fnc/entity/InsPlySettleDetail.java

@@ -0,0 +1,61 @@
+package com.ydtech.modules.fnc.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 月度结算单明细表
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Getter
+@Setter
+@TableName("ins_ply_settle_detail")
+@ApiModel(value = "InsPlySettleDetail对象", description = "月度结算单明细表")
+public class InsPlySettleDetail implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("结算单号")
+    @TableField("settleno")
+    private String settleno;
+
+    @ApiModelProperty("订单号")
+    @TableField("orderno")
+    private String orderno;
+
+    @ApiModelProperty("保单号")
+    @TableField("policyno")
+    private String policyno;
+
+    @ApiModelProperty("机构")
+    @TableField("dept_id")
+    private String deptId;
+
+    @ApiModelProperty("手续费")
+    @TableField("commission_feevalue")
+    private BigDecimal commissionFeevalue;
+
+    @ApiModelProperty("其它费")
+    @TableField("other_feevalue")
+    private BigDecimal otherFeevalue;
+
+    @ApiModelProperty("总费用")
+    @TableField("all_fee_value")
+    private BigDecimal allFeeValue;
+
+    @ApiModelProperty("记录插入日期")
+    @TableField("create_time")
+    private LocalDateTime createTime;
+}

+ 61 - 0
src/main/java/com/ydtech/modules/fnc/entity/InsPlySettleHx.java

@@ -0,0 +1,61 @@
+package com.ydtech.modules.fnc.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 月度结算单核销确认
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Getter
+@Setter
+@TableName("ins_ply_settle_hx")
+@ApiModel(value = "InsPlySettleHx对象", description = "月度结算单核销确认")
+public class InsPlySettleHx implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("结算单号")
+    @TableField("settleno")
+    private String settleno;
+
+    @ApiModelProperty("核销费用类型(手续费、其他费用、手续费+其他费用)")
+    @TableField("fee_type")
+    private String feeType;
+
+    @ApiModelProperty("核销金额")
+    @TableField("amount")
+    private BigDecimal amount;
+
+    @ApiModelProperty("发票号")
+    @TableField("checkno")
+    private String checkno;
+
+    @ApiModelProperty("核销说明")
+    @TableField("remark")
+    private String remark;
+
+    @ApiModelProperty("核销时间")
+    @TableField("create_time")
+    private LocalDateTime createTime;
+
+    @ApiModelProperty("核销操作人")
+    @TableField("operator")
+    private String operator;
+
+    @ApiModelProperty("附件id")
+    @TableField("dirid")
+    private String dirid;
+}

+ 19 - 0
src/main/java/com/ydtech/modules/fnc/service/InsPlyIncomeService.java

@@ -0,0 +1,19 @@
+package com.ydtech.modules.fnc.service;
+
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
+import com.ydtech.modules.order.entity.BasePageResult;
+
+/**
+ * <p>
+ * 保司结算手续费 服务类
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-05
+ */
+public interface InsPlyIncomeService extends IService<InsPlyIncome> {
+    public HttpResult<BasePageResult<InsPlyIncome>> queryplyIncome(InsPlyIncomeVo insPlyIncomeVo);
+}

+ 16 - 0
src/main/java/com/ydtech/modules/fnc/service/InsPlySettleDetailService.java

@@ -0,0 +1,16 @@
+package com.ydtech.modules.fnc.service;
+
+import com.ydtech.modules.fnc.entity.InsPlySettleDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 月度结算单明细表 服务类
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+public interface InsPlySettleDetailService extends IService<InsPlySettleDetail> {
+
+}

+ 16 - 0
src/main/java/com/ydtech/modules/fnc/service/InsPlySettleHxService.java

@@ -0,0 +1,16 @@
+package com.ydtech.modules.fnc.service;
+
+import com.ydtech.modules.fnc.entity.InsPlySettleHx;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 月度结算单核销确认 服务类
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+public interface InsPlySettleHxService extends IService<InsPlySettleHx> {
+
+}

+ 33 - 0
src/main/java/com/ydtech/modules/fnc/service/InsPlySettleService.java

@@ -0,0 +1,33 @@
+package com.ydtech.modules.fnc.service;
+
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
+import com.ydtech.modules.fnc.entity.InsPlySettle;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ydtech.modules.fnc.entity.InsPlySettleDetail;
+import com.ydtech.modules.fnc.entity.InsPlySettleHx;
+import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
+import com.ydtech.modules.fnc.vo.InsPlySettleVo;
+import com.ydtech.modules.order.entity.BasePageResult;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 月度结算单汇总表 服务类
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+public interface InsPlySettleService extends IService<InsPlySettle> {
+
+    public HttpResult generateSettleAndDetail(List<InsPlyIncome> plyList);
+
+    public HttpResult<BasePageResult<InsPlySettle>> selectSettle(InsPlySettleVo insPlySettle);
+
+    public HttpResult<BasePageResult<InsPlyIncome>> selectSettleDetail(InsPlySettleVo insPlySettle);
+
+    public HttpResult enterSettle(InsPlySettleHx insPlySettle);
+
+}

+ 50 - 1
src/main/java/com/ydtech/modules/fnc/service/impl/InsFeeAuditServiceImpl.java

@@ -4,8 +4,10 @@ import cn.dev33.satoken.stp.StpUtil;
 import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.service.SysUserService;
 import com.ydtech.modules.esm.service.EsmUserReferrerService;
+import com.ydtech.modules.fnc.dao.InsPlyIncomeMapper;
 import com.ydtech.modules.fnc.entity.InsFeeAudit;
 import com.ydtech.modules.fnc.dao.InsFeeAuditMapper;
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
 import com.ydtech.modules.fnc.service.InsFeeAuditService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ydtech.modules.ins.model.InsCommission;
@@ -18,10 +20,12 @@ import com.ydtech.modules.order.dao.InsOrdersMapper;
 import com.ydtech.modules.order.entity.InsAreaCompany;
 import com.ydtech.modules.order.entity.InsFeeOrder;
 import com.ydtech.modules.order.entity.InsOrders;
+import com.ydtech.modules.order.entity.dto.InsAreaCompanyQueryDto;
 import com.ydtech.modules.order.service.InsAreaCompanyService;
 import com.ydtech.modules.order.service.InsFeeOrderService;
 import com.ydtech.modules.order.service.InsOrdersService;
 import com.ydtech.utils.DateUtil;
+import com.ydtech.utils.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -43,6 +47,7 @@ import java.util.List;
 public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFeeAudit> implements InsFeeAuditService {
 
     private final InsOrdersMapper insOrdersMapper;
+    private final InsPlyIncomeMapper insPlyIncomeMapper;
 
     private final InsFeeOrderService insFeeOrderService;
 
@@ -56,7 +61,7 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
     private final SysUserService sysUserService;
 
 
-    public InsFeeAuditServiceImpl(InsAreaCompanyService insAreaCompanyService, InsOrdersMapper insOrdersMapper, InsFeeOrderService insFeeOrderService,InsDeptFeeService insDeptFeeService,EsmUserReferrerService esmUserReferrerService,SysUserService sysUserService,InsCommissionService insCommissionService,InsCompanyFeeService insCompanyFeeService) {
+    public InsFeeAuditServiceImpl(InsAreaCompanyService insAreaCompanyService, InsOrdersMapper insOrdersMapper, InsFeeOrderService insFeeOrderService,InsDeptFeeService insDeptFeeService,EsmUserReferrerService esmUserReferrerService,SysUserService sysUserService,InsCommissionService insCommissionService,InsCompanyFeeService insCompanyFeeService,InsPlyIncomeMapper insPlyIncomeMapper) {
         this.insAreaCompanyService = insAreaCompanyService;
         this.insOrdersMapper = insOrdersMapper;
         this.insFeeOrderService=insFeeOrderService;
@@ -65,6 +70,7 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         this.sysUserService=sysUserService;
         this.insCommissionService=insCommissionService;
         this.insCompanyFeeService=insCompanyFeeService;
+        this.insPlyIncomeMapper=insPlyIncomeMapper;
     }
     @Override
     @Transactional
@@ -81,6 +87,8 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         InsFeeOrder insFeeOrder=insFeeOrderService.getByInsOrderNo(insFeeAudit.getInsOrderNo());
         //bigdecimal为null时设置为0
         handleBigdecimal(insFeeOrder);
+        //生成保司费用(应收费用)
+        gene_orderIncome( order, insFeeOrder);
         //生成机构费用
         gene_deptfee( order, insFeeOrder);
         //生成分销费用
@@ -125,7 +133,48 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         insFeeOrder.setThirdRetailPremiums(insFeeOrder.getThirdRetailPremiums() ==null ? BigDecimal.ZERO:insFeeOrder.getThirdRetailPremiums());
 
     }
+    /**
+     * 生成保司费用(应收费用)
+     * @param order
+     * @param insFeeOrder
+     * @throws Exception
+     */
+    private void gene_orderIncome( InsOrders order, InsFeeOrder insFeeOrder) throws Exception{
+        InsAreaCompanyQueryDto plyDto=insAreaCompanyService.getByOrderNo(order.getOrderno()).get(0);
+        InsPlyIncome insPlyIncome =new InsPlyIncome();
+        insPlyIncome.setOrderno(order.getOrderno());
+        insPlyIncome.setDeptId(order.getDeptid());
+        insPlyIncome.setCompanyId(plyDto.getCompanyId());
+        insPlyIncome.setAgreementId(plyDto.getAgreementId());
+        insPlyIncome.setLicenseno(order.getLicenseno());
+        insPlyIncome.setPayDate(StringUtils.isNullOrEmpty(plyDto.getPayDate())?plyDto.getCreatetime():plyDto.getPayDate());
+        insPlyIncome.setCreateTime(LocalDateTime.now() );
+        if(StringUtils.isNotEmpty(plyDto.getJqpolicyno())){
+            insPlyIncome.setPolicyno(plyDto.getJqpolicyno());
+            insPlyIncome.setRiskcode("交强");
+            insPlyIncome.setTaxamount(plyDto.getTaxamount());
+            insPlyIncome.setNoTaxPremium(insFeeOrder.getJqNoTaxPremium());
+            insPlyIncome.setCommissionFeerate(insFeeOrder.getJqSuperviseCostsProportion());
+            insPlyIncome.setOtherFeerate(insFeeOrder.getJqCostsProportion().subtract(insFeeOrder.getJqSuperviseCostsProportion()));
+            insPlyIncome.setCommissionFeevalue(insFeeOrder.getJqSuperviseCostsPremiums());
+            insPlyIncome.setOtherFeevalue(insFeeOrder.getJqCostsPremiums().subtract(insFeeOrder.getJqSuperviseCostsPremiums()));
+            insPlyIncome.setAllFeeValue(insFeeOrder.getJqCostsPremiums());
+            insPlyIncomeMapper.insert(insPlyIncome);
+        }
+        if(StringUtils.isNotEmpty(plyDto.getSypolicyno())){
+            insPlyIncome.setPolicyno(plyDto.getSypolicyno());
+            insPlyIncome.setRiskcode("商业");
+            insPlyIncome.setTaxamount(new BigDecimal(0));
+            insPlyIncome.setNoTaxPremium(insFeeOrder.getSyNoTaxPremium());
+            insPlyIncome.setCommissionFeerate(insFeeOrder.getSySuperviseCostsProportion());
+            insPlyIncome.setOtherFeerate(insFeeOrder.getSyCostsProportion().subtract(insFeeOrder.getSySuperviseCostsProportion()));
+            insPlyIncome.setCommissionFeevalue(insFeeOrder.getSySuperviseCostsPremiums());
+            insPlyIncome.setOtherFeevalue(insFeeOrder.getSyCostsPremiums().subtract(insFeeOrder.getSySuperviseCostsPremiums()));
+            insPlyIncome.setAllFeeValue(insFeeOrder.getSyCostsPremiums());
+            insPlyIncomeMapper.insert(insPlyIncome);
+        }
 
+    }
     /**
      * 生成机构费用
      * @param order

+ 48 - 0
src/main/java/com/ydtech/modules/fnc/service/impl/InsPlyIncomeServiceImpl.java

@@ -0,0 +1,48 @@
+package com.ydtech.modules.fnc.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
+import com.ydtech.modules.fnc.dao.InsPlyIncomeMapper;
+import com.ydtech.modules.fnc.service.InsPlyIncomeService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
+import com.ydtech.modules.order.entity.BasePageResult;
+import com.ydtech.modules.order.entity.InsOrders;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 保司结算手续费 服务实现类
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-05
+ */
+@Service
+public class InsPlyIncomeServiceImpl extends ServiceImpl<InsPlyIncomeMapper, InsPlyIncome> implements InsPlyIncomeService {
+
+
+    public HttpResult<BasePageResult<InsPlyIncome>> queryplyIncome(InsPlyIncomeVo insPlyIncomeVo){
+
+        try{
+            Page<InsOrders> page = new Page<>(insPlyIncomeVo.getPageNum(), insPlyIncomeVo.getPageSize());
+            PageInfo<List<InsPlyIncome>> pageHelper = null;
+            PageHelper.startPage(insPlyIncomeVo.getPageNum(),insPlyIncomeVo.getPageSize());
+            List<InsPlyIncome> list= this.baseMapper.selectByCondition(insPlyIncomeVo);
+            pageHelper=new PageInfo(list);
+            BasePageResult<InsPlyIncome> pageResult=new BasePageResult<InsPlyIncome>(insPlyIncomeVo.getPageNum(), insPlyIncomeVo.getPageSize(), pageHelper.getTotal(), pageHelper.getPages(), list);
+            return HttpResult.ok(pageResult);
+        }catch (Exception e){
+            e.printStackTrace();
+            return HttpResult.error("查询异常");
+        }
+
+
+
+    }
+}

+ 20 - 0
src/main/java/com/ydtech/modules/fnc/service/impl/InsPlySettleDetailServiceImpl.java

@@ -0,0 +1,20 @@
+package com.ydtech.modules.fnc.service.impl;
+
+import com.ydtech.modules.fnc.entity.InsPlySettleDetail;
+import com.ydtech.modules.fnc.dao.InsPlySettleDetailMapper;
+import com.ydtech.modules.fnc.service.InsPlySettleDetailService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 月度结算单明细表 服务实现类
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Service
+public class InsPlySettleDetailServiceImpl extends ServiceImpl<InsPlySettleDetailMapper, InsPlySettleDetail> implements InsPlySettleDetailService {
+
+}

+ 20 - 0
src/main/java/com/ydtech/modules/fnc/service/impl/InsPlySettleHxServiceImpl.java

@@ -0,0 +1,20 @@
+package com.ydtech.modules.fnc.service.impl;
+
+import com.ydtech.modules.fnc.entity.InsPlySettleHx;
+import com.ydtech.modules.fnc.dao.InsPlySettleHxMapper;
+import com.ydtech.modules.fnc.service.InsPlySettleHxService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 月度结算单核销确认 服务实现类
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Service
+public class InsPlySettleHxServiceImpl extends ServiceImpl<InsPlySettleHxMapper, InsPlySettleHx> implements InsPlySettleHxService {
+
+}

+ 136 - 0
src/main/java/com/ydtech/modules/fnc/service/impl/InsPlySettleServiceImpl.java

@@ -0,0 +1,136 @@
+package com.ydtech.modules.fnc.service.impl;
+
+import cn.dev33.satoken.stp.StpUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.fnc.dao.InsPlyIncomeMapper;
+import com.ydtech.modules.fnc.dao.InsPlySettleDetailMapper;
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
+import com.ydtech.modules.fnc.entity.InsPlySettle;
+import com.ydtech.modules.fnc.dao.InsPlySettleMapper;
+import com.ydtech.modules.fnc.entity.InsPlySettleDetail;
+import com.ydtech.modules.fnc.entity.InsPlySettleHx;
+import com.ydtech.modules.fnc.service.InsPlySettleService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
+import com.ydtech.modules.fnc.vo.InsPlySettleVo;
+import com.ydtech.modules.order.entity.BasePageResult;
+import com.ydtech.modules.order.entity.InsOrders;
+import com.ydtech.utils.DateUtil;
+import com.ydtech.utils.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.YearMonth;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * <p>
+ * 月度结算单汇总表 服务实现类
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Service
+public class InsPlySettleServiceImpl extends ServiceImpl<InsPlySettleMapper, InsPlySettle> implements InsPlySettleService {
+
+    @Autowired
+    private InsPlySettleDetailMapper insPlySettleDetailMapper;
+    @Autowired
+    private InsPlyIncomeMapper insPlyIncomeMapper;
+
+    @Override
+    @Transactional
+    public HttpResult generateSettleAndDetail(List<InsPlyIncome> plyList) {
+
+        String settleno = "";
+        BigDecimal commissionFeevalue=new BigDecimal(0);
+        BigDecimal otherFeevalue=new BigDecimal(0);
+        BigDecimal allFeeValue=new BigDecimal(0);
+        // 生成结算单号
+        settleno = plyList.get(0).getCompanyId()+ DateUtil.yyyyMMddHHmmss(new Date());
+        for(InsPlyIncome insPlyIncome:plyList){
+            InsPlySettleDetail insPlySettleDetail =new InsPlySettleDetail();
+            insPlySettleDetail.setSettleno(settleno);
+            insPlySettleDetail.setOrderno(insPlyIncome.getOrderno());
+            insPlySettleDetail.setPolicyno(insPlyIncome.getPolicyno());
+            insPlySettleDetail.setDeptId(insPlyIncome.getDeptId());
+            insPlySettleDetail.setCommissionFeevalue(insPlyIncome.getCommissionFeevalue());
+            insPlySettleDetail.setOtherFeevalue(insPlyIncome.getOtherFeevalue());
+            insPlySettleDetail.setAllFeeValue(insPlyIncome.getAllFeeValue());
+            insPlySettleDetail.setCreateTime(LocalDateTime.now());
+            insPlySettleDetailMapper.insert(insPlySettleDetail);
+            //修改ins_ply_income
+            insPlyIncome.setDoingFeeValue(insPlyIncome.getAllFeeValue());
+            insPlyIncomeMapper.updateById(insPlyIncome);
+
+            commissionFeevalue=commissionFeevalue.add(insPlyIncome.getCommissionFeevalue());
+            otherFeevalue=otherFeevalue.add(insPlyIncome.getOtherFeevalue());
+            allFeeValue=allFeeValue.add(insPlyIncome.getAllFeeValue());
+        }
+        InsPlySettle insPlySettle =new InsPlySettle();
+        insPlySettle.setSettleno(settleno);
+        insPlySettle.setCompanyId(plyList.get(0).getCompanyId());
+        insPlySettle.setDeptId(plyList.get(0).getDeptId());
+        insPlySettle.setSettleMonth(YearMonth.from(plyList.get(0).getPayDate()).toString());
+        String settleBatch =this.baseMapper.getMaxBatch(insPlySettle);
+        if(StringUtils.isNullOrEmpty(settleBatch)){
+            settleBatch="1";
+        }else{
+            settleBatch=String.valueOf(Integer.parseInt(settleBatch)+1);
+        }
+        insPlySettle.setSettleBatch(settleBatch);
+        insPlySettle.setCommissionFeevalue(commissionFeevalue);
+        insPlySettle.setOtherFeevalue(otherFeevalue);
+        insPlySettle.setAllFeeValue(allFeeValue);
+        insPlySettle.setOperator(StpUtil.getLoginId().toString());
+        insPlySettle.setCreateTime(LocalDateTime.now());
+        insPlySettle.setStatus("0");
+        this.baseMapper.insert(insPlySettle);
+        return HttpResult.ok(settleno);
+    }
+
+    @Override
+    public HttpResult<BasePageResult<InsPlySettle>> selectSettle(InsPlySettleVo insPlySettleVo) {
+        try{
+            Page<InsOrders> page = new Page<>(insPlySettleVo.getPageNum(), insPlySettleVo.getPageSize());
+            PageInfo<List<InsPlyIncome>> pageHelper = null;
+            PageHelper.startPage(insPlySettleVo.getPageNum(),insPlySettleVo.getPageSize());
+            List<InsPlySettle> list= this.baseMapper.selectByCondition(insPlySettleVo);
+            pageHelper=new PageInfo(list);
+            BasePageResult<InsPlySettle> pageResult=new BasePageResult<InsPlySettle>(insPlySettleVo.getPageNum(), insPlySettleVo.getPageSize(), pageHelper.getTotal(), pageHelper.getPages(), list);
+            return HttpResult.ok(pageResult);
+        }catch (Exception e){
+            e.printStackTrace();
+            return HttpResult.error("查询异常");
+        }
+    }
+
+    @Override
+    public HttpResult<BasePageResult<InsPlyIncome>> selectSettleDetail(InsPlySettleVo insPlySettleVo) {
+        try{
+            Page<InsOrders> page = new Page<>(insPlySettleVo.getPageNum(), insPlySettleVo.getPageSize());
+            PageInfo<List<InsPlyIncome>> pageHelper = null;
+            PageHelper.startPage(insPlySettleVo.getPageNum(),insPlySettleVo.getPageSize());
+            List<InsPlyIncome> list= insPlyIncomeMapper.selectSettleByCondition(insPlySettleVo);
+            pageHelper=new PageInfo(list);
+            BasePageResult<InsPlyIncome> pageResult=new BasePageResult(insPlySettleVo.getPageNum(), insPlySettleVo.getPageSize(), pageHelper.getTotal(), pageHelper.getPages(), list);
+            return HttpResult.ok(pageResult);
+        }catch (Exception e){
+            e.printStackTrace();
+            return HttpResult.error("查询异常");
+        }
+    }
+    @Override
+    public HttpResult enterSettle(InsPlySettleHx insPlySettle) {
+        return null;
+    }
+}

+ 73 - 0
src/main/java/com/ydtech/modules/fnc/vo/InsPlyIncomeVo.java

@@ -0,0 +1,73 @@
+package com.ydtech.modules.fnc.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.Max;
+import javax.validation.constraints.Min;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 保司结算手续费
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-05
+ */
+@Data
+@ApiModel("保司费用查询Vo")
+public class InsPlyIncomeVo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("订单号")
+    private String orderno;
+
+    @ApiModelProperty(value = "开始时间")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate startDate;
+
+    @ApiModelProperty(value = "结束时间")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate endDate;
+
+    @ApiModelProperty("保单号")
+    private String policyno;
+
+    @ApiModelProperty("机构")
+    private String deptId;
+
+    @ApiModelProperty("险种")
+    private String riskcode;
+
+    @ApiModelProperty("保险公司")
+    private String companyId;
+
+    @ApiModelProperty("协议号")
+    private String agreementId;
+
+    @ApiModelProperty("车牌号")
+    private String licenseno;
+
+    private String flag;//0待结算
+
+    @ApiModelProperty(value = "每页页数")
+    @Min(value = 20, message = "页数最小为20")
+    @Max(value = 100, message = "页数最大为100")
+    private int pageSize;
+
+    @ApiModelProperty(value = "页数")
+    @Min(value = 1, message = "页数最小为1")
+    private int pageNum;
+}

+ 82 - 0
src/main/java/com/ydtech/modules/fnc/vo/InsPlySettleVo.java

@@ -0,0 +1,82 @@
+package com.ydtech.modules.fnc.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.Max;
+import javax.validation.constraints.Min;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 月度结算单汇总表
+ * </p>
+ *
+ * @author gws
+ * @since 2024-01-10
+ */
+@Getter
+@Setter
+@ApiModel(value = "InsPlySettle对象", description = "月度结算单汇总表")
+public class InsPlySettleVo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("结算单号")
+    private String settleno;
+
+    @ApiModelProperty("保险公司")
+    private String companyId;
+
+    @ApiModelProperty("结算月份")
+    private String settleMonth;
+
+    @ApiModelProperty("结算批次")
+    private String settleBatch;
+
+    @ApiModelProperty("手续费")
+    private BigDecimal commissionFeevalue;
+
+    @ApiModelProperty("其他费")
+    private BigDecimal otherFeevalue;
+
+    @ApiModelProperty("总费用")
+    private BigDecimal allFeeValue;
+
+    @ApiModelProperty("机构")
+    private String deptId;
+
+    @ApiModelProperty("结算单生成时间")
+    private LocalDateTime createTime;
+
+    @ApiModelProperty("生成操作人")
+    private String operator;
+
+    @ApiModelProperty("状态")
+    private String status;
+
+    @ApiModelProperty(value = "开始时间")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate startDate;
+
+    @ApiModelProperty(value = "结束时间")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate endDate;
+
+    @ApiModelProperty(value = "每页页数")
+    @Min(value = 20, message = "页数最小为20")
+    @Max(value = 100, message = "页数最大为100")
+    private int pageSize;
+
+    @ApiModelProperty(value = "页数")
+    @Min(value = 1, message = "页数最小为1")
+    private int pageNum;
+}

+ 4 - 2
src/main/java/com/ydtech/modules/order/controller/InsOrdersController.java

@@ -187,12 +187,14 @@ public class InsOrdersController extends BaseController {
     @PostMapping("/getPolicyInsuranceReport")
     @ApiOperation(value = "分页获取保单清单数据")
     public HttpResult<BasePageResult<PolicyInsuranceReportResVo>> getPolicyInsuranceReport(@RequestBody PolicyInsuranceReportReqVo policyInsuranceReportReqVo) {
-        BasePageResult<PolicyInsuranceReportResVo> quoteResult = insOrdersService.getPolicyInsuranceReport(policyInsuranceReportReqVo);
+        String userId = getUserId();
+        BasePageResult<PolicyInsuranceReportResVo> quoteResult = insOrdersService.getPolicyInsuranceReport(policyInsuranceReportReqVo,userId);
         return HttpResult.ok("success", quoteResult);
     }
     @PostMapping("/exportPolicyInsuranceReport")
     @ApiOperation(value = "导出保单清单数据")
     public HttpResult<String> exportPolicyInsuranceReport(@RequestBody PolicyInsuranceReportReqVo policyInsuranceReportReqVo) {
-        return insOrdersService.exportPolicyInsuranceReport(policyInsuranceReportReqVo);
+        String userId = getUserId();
+        return insOrdersService.exportPolicyInsuranceReport(policyInsuranceReportReqVo,userId);
     }
 }

+ 3 - 0
src/main/java/com/ydtech/modules/order/entity/vo/PolicyInsuranceReportReqVo.java

@@ -67,4 +67,7 @@ public class PolicyInsuranceReportReqVo {
     @Min(value = 1, message = "页数最小为1")
     private int pageNum;
 
+    @ApiModelProperty("查询payTime或者payDate")
+    private String queryFlag;
+
 }

+ 13 - 2
src/main/java/com/ydtech/modules/order/service/InsOrdersService.java

@@ -119,7 +119,18 @@ public interface InsOrdersService extends IService<InsOrders> {
     boolean saveAndTrajectories(InsOrders insOrders);
 
 
-    BasePageResult<PolicyInsuranceReportResVo> getPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo);
+    /**
+     * 分页查询保单报表信息
+     * @param policyInsuranceReportReqVo
+     * @param userId
+     * @return
+     */
+    BasePageResult<PolicyInsuranceReportResVo> getPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo,String userId);
 
-    HttpResult<String> exportPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo);
+    /**
+     * 导出保单报表信息
+     * @param policyInsuranceReportReqVo
+     * @return
+     */
+    HttpResult<String> exportPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo,String userId);
 }

+ 16 - 2
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -551,7 +551,14 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     }
 
     @Override
-    public BasePageResult<PolicyInsuranceReportResVo> getPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo) {
+    public BasePageResult<PolicyInsuranceReportResVo> getPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo,String userId) {
+        String queryFlag = "queryPayDate";
+        //判断当前登录人员是否为管理人员和财务人员;要求管理人员查询paytime,其他查询paydate
+        List<SysUser> userList = sysUserService.findAllAgentRoleUser(userId, "22");
+        if (userList != null && !userList.isEmpty()) {
+            queryFlag = "queryPayTime";
+        }
+        policyInsuranceReportReqVo.setQueryFlag(queryFlag);
         Page<InsOrders> page = new Page<>(policyInsuranceReportReqVo.getPageNum(), policyInsuranceReportReqVo.getPageSize());
         page.setSearchCount(false).setOptimizeCountSql(false);//关闭count查询
         Page<PolicyInsuranceReportResVo> policyInsuranceReportResVoPage = baseMapper.getPolicyInsuranceReport(page, policyInsuranceReportReqVo );
@@ -561,7 +568,14 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
                 , policyInsuranceReportResVoPage.getRecords());
     }
     @Override
-    public HttpResult<String> exportPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo) {
+    public HttpResult<String> exportPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo,String userId) {
+        String queryFlag = "queryPayDate";
+        //判断当前登录人员是否为管理人员和财务人员;要求管理人员查询paytime,其他查询paydate
+        List<SysUser> userList = sysUserService.findAllAgentRoleUser(userId, "22");
+        if (userList != null && !userList.isEmpty()) {
+            queryFlag = "queryPayTime";
+        }
+        policyInsuranceReportReqVo.setQueryFlag(queryFlag);
         List<PolicyInsuranceReportResVo> policyInsuranceReportResVoPage = baseMapper.getPolicyInsuranceReport( policyInsuranceReportReqVo );
         String s = EasyExcelUtils.downExcel(uploadFilePath, PolicyInsuranceReportResVo.class, policyInsuranceReportResVoPage);
         return HttpResult.ok("", s);

+ 98 - 0
src/main/java/com/ydtech/utils/genMybatis/CodeGenerator.java

@@ -0,0 +1,98 @@
+package com.ydtech.utils.genMybatis;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.generator.FastAutoGenerator;
+import com.baomidou.mybatisplus.generator.engine.VelocityTemplateEngine;
+
+import java.util.ArrayList;
+import java.util.List;
+/**
+ * @author gws
+ * @description:TODO
+ * @date 2023-11-22 18:04
+ */
+public class CodeGenerator {
+
+
+    public static void main(String[] args) {
+        /*
+            特别注意:生成的时间类型均为:“LocalDateTime”格式,需要假如以下注解方可正常使用
+            @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")//用于指定日期/时间类型的属性在序列化为JSON字符串时的格式。
+            @JsonDeserialize(using = LocalDateTimeDeserializer.class)//用于指定反序列化时使用的自定义类,LocalDateTimeDeserializer是一个实现了JsonDeserializer接口的类,可以将JSON字符串转换为LocalDateTime对象
+            @JsonSerialize(using = LocalDateTimeSerializer.class)//用于指定序列化时使用的自定义类,LocalDateTimeSerializer是一个实现了JsonSerializer接口的类,可以将LocalDateTime对象转换为JSON字符串
+        */
+
+
+        //数据库连接
+        String url = "jdbc:mysql://47.92.254.66:3306/zgdd?serverTimezone=Asia/Shanghai&allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&rewriteBatchedStatements=true";//数据库url
+        String username = "root";//账号
+        String password = "@RqGHG#KZ*C9ytkQ";//密码
+        //String module = "up";//模块名
+        //全局配置参数
+        String author = "gws";//作者
+        //String outputDir = System.getProperty("user.dir")+"\\"+module+"\\src\\main\\java";//指定输出目录
+        String outputDir = System.getProperty("user.dir")+"\\src\\main\\java";//指定输出目录
+
+        //包配置参数
+        String parent = "com.ydtech.modules";//父包名
+        String moduleName = "fnc";//父包模块名
+        String entity = "entity";//Entity 实体类包名
+        String mapper = "dao";//Mapper 包名
+        String mapperXml = "xml";//Mapper XML 包名
+        String service = "service";//Service 包名
+        String serviceImpl = "service.impl";//Service Impl 包名
+        String controller = "controller";//Controller 包名
+        //要生成的数据库表
+        List<String> tables = new ArrayList<>();
+        tables.add("ins_ply_settle_detail");//表名
+        tables.add("ins_ply_settle");//表名
+        tables.add("ins_ply_settle_hx");//表名
+        //开始生成
+        FastAutoGenerator.create(url,username,password)
+                //全局配置
+                .globalConfig(builder -> {
+                    builder.author(author)
+                            .outputDir(outputDir)
+                            .enableSwagger()//开启swagger
+                            .commentDate("yyyy-MM-dd");//注释日期
+                })
+                //包配置
+                .packageConfig(builder -> {
+                    builder.parent(parent)
+                            .moduleName(moduleName)
+                            .entity(entity)
+                            .mapper(mapper)
+                            .xml(mapperXml)
+                            .service(service)
+                            .serviceImpl(serviceImpl)
+                            .controller(controller);
+                })
+                //策略配置
+                .strategyConfig(builder -> {
+                    builder.addInclude(tables)
+                            //开启生成实体类
+                            .entityBuilder()
+                            .enableLombok()//开启 lombok 模型
+                            .enableTableFieldAnnotation()//开启生成实体时生成字段注解
+                            //开启生成mapper
+                            .mapperBuilder()
+                            .enableBaseResultMap()//启用 BaseResultMap 生成
+                            .superClass(BaseMapper.class)//设置父类
+                            .enableMapperAnnotation()//开启 @Mapper 注解
+                            .formatMapperFileName("%sMapper")//格式化 mapper 文件名称
+                            .formatXmlFileName("%sMapper")//格式化 xml 实现类文件名称
+                            //开启生成service及impl
+                            .serviceBuilder()
+                            .formatServiceFileName("%sService")//格式化 service 接口文件名称
+                            .formatServiceImplFileName("%sServiceImpl")//格式化 service 实现类文件名称
+                            //开启生成controller
+                            .controllerBuilder()
+                            // 映射路径使用连字符格式,而不是驼峰
+                            .enableHyphenStyle()
+                            .formatFileName("%sController")//格式化文件名称
+                            .enableRestStyle();;
+                })
+                .templateEngine(new VelocityTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
+                //.templateConfig(builder -> builder.controller(""))//关闭生成controller
+                .execute();
+    }
+}

+ 362 - 0
src/main/resources/application-dev.yml

@@ -0,0 +1,362 @@
+spring:
+  datasource:
+    driver-class-name: com.mysql.cj.jdbc.Driver
+    druid:
+      # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
+      connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
+      # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
+      filters: stat,wall,log4j
+      # 初始化大小,最小,最大
+      initial-size: 5
+      maxActive: 20
+      maxPoolPreparedStatementPerConnectionSize: 20
+      # 配置获取连接等待超时的时间
+      maxWait: 60000
+      # 配置一个连接在池中最小生存的时间,单位是毫秒
+      minEvictableIdleTimeMillis: 300000
+      minIdle: 5
+      # 打开PSCache,并且指定每个连接上PSCache的大小
+      poolPreparedStatements: true
+      testOnBorrow: true
+      testOnReturn: true
+      testWhileIdle: true
+      # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
+      timeBetweenEvictionRunsMillis: 60000
+      validationQuery: SELECT 1 FROM DUAL
+#    # 本地
+#    url: jdbc:p6spy:mysql://127.0.0.1:3306/zgdd?serverTimezone=Asia/Shanghai&allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8
+#    username: root
+#    password: root
+    # 测试库
+      url: jdbc:mysql://47.92.254.66:3306/zgdd?serverTimezone=Asia/Shanghai&allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&rewriteBatchedStatements=true
+      username: root
+      password: '@RqGHG#KZ*C9ytkQ'
+    # 生产库
+      #password: 'Iy$@$koH@oURxyvw'
+      #url: jdbc:mysql://121.89.62.56:3306/agent?serverTimezone=Asia/Shanghai&allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&rewriteBatchedStatements=true
+      #username: sxzgkj
+  # redis 配置
+  redis:
+    database: 5
+    #host: 127.0.0.1
+    host: 121.40.215.87
+    lettuce:
+      pool:
+        # 连接池最大连接数
+        max-active: 8
+        # 连接池中的最大空闲连接
+        max-idle: 8
+        # 连接池最大阻塞等待时间(使用负值表示没有限制)
+        max-wait: 100
+        # 连接池中的最小空闲连接
+        min-idle: 0
+    #password: aaaaaa
+    password: guoguo.123
+    port: 6379
+    timeOut: 3000
+  servlet:
+    multipart:
+      # 最大支持文件大小
+      max-file-size: 2000MB
+      # 最大支持请求大小
+      max-request-size: 2000MB
+
+
+
+CallbackUrl: http://47.92.254.66:8080/zm/Underwriting
+RGCallbackUrl: http://47.92.254.66:8080/zm/ArtificialUnderwriting
+Specialaccount: 99999999999999
+TAInsureUrl: https://testow.95505.cn/cpf/tianan_cpf/access/car/insureConfirmation.mvc
+TAModelUrl: https://testow.95505.cn/cpf/tianan_cpf/access/car/queryCarModel.mvc
+TAPayUrl: https://testow.95505.cn/cpf/tianan_cpf/common/pay/applyPay.do
+TAQuoteUrl: https://testow.95505.cn/cpf/tianan_cpf/access/car/premiumAccurate.mvc
+#天安API测试参数
+TASign: gIpr5j5haL7T8WJY7ZS54JdlYL/7PToQOy505Mr/iH3qN4SMpJJVdvxFE1/KsWH0EjDxR9qVwRC/t6kLCJo+Y1AB+FD1qNjkbLyEQ+9aeQEF2Af/4bJqUDArewHHT879o5IqzHg/lcg=
+TAUploadUrl: https://testow.95505.cn/cpf/tianan_cpf/access/car/thirdUploadAttach.mvc
+ZMIMGUrl: https://test.echinacoal.com/singlePlatform/others/
+ZMSMSUrl: https://test.echinacoal.com/singlePlatform/prpall/
+ZMToken: THIRDSCOuloft2020052818346904zmYBSX
+#中煤接口测试地址
+ZMUrl: https://test.echinacoal.com/singlePlatform/
+aly:
+  cbit:
+    #================ 阿里云部署对接保信服务器==============#
+    url_pre: http://223.70.186.115:8080/CBIT/API/insCBIT
+  pay:
+    html_path: C:\soft\apache-tomcat-8.5.75\webapps\html\
+    url_pre: http://test.baoxianzhanggui.com:8080
+apk:
+  path: /usr/local/apache-tomcat-8.5.73/webapps/app/android/
+# 安盛天平
+as:
+  audit:
+    url: /as/jiaofei
+    # 安盛天平爬虫接口
+  domain: http://47.92.254.66:8088
+  image:
+    url: /as/yxsc
+  quote:
+    url: /as/bfjs
+
+
+#================ 中保信接口对接--开始==============#
+## 接口地址
+cbit:
+  ### 合作伙伴-加解密秘钥对  私钥+公钥
+  HZHB_PRIVATE_KEY: MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAJnWpyVLFBli1kakBXUjk/SmH+X1X0kGGik0ub1MXnNUOk9NBqRQjO6G9A6wdiGzo9j9w26u5u9R6R6De843YMhgW6iIoDodexvZzInxTE+YY52iUBDCcksHYAM7uHZBtdXKovm+bEzL0nwa89Xw6zyuCm8x7enoDiVzs/75WoqrAgMBAAECgYAnEcC5U+vy1oscvaM1MKfuxhHr0Pk2DnquZFmXncGPAKEeaq15JYvlOBjbci1OOdUu0qPDhF/Z/694tGPI53+If0MkS3VpxaOYc+i/G/KQiYZIu1hjUb2F8j8xQrF60WkIsqwzjJYF9T5MCjLEZvDg9cPzFY+QpS8yl5Cbl0aOYQJBAMd+0VtQYV9q3nsZgEk4ux6Vz19SakRbk9zkz1yBUKRfWcLa1T9DleaBqGdkdZbO8v6PCtyz6Fdymq+USYWeV3UCQQDFaU5O8GeNr07J6quTgHgsbN8IV28Wp4wKmDAXCWlehkGGoTm11FOL2zxItjgmmHGyXBA08osPCojBPptOazWfAkEAmG3K04WwUPLcOZy7i7cAKpd3ErNrJP4AFcjytBDOqDl+4UbJp4QhljW9kfqNaoSH4H81YntIbQDRNpUMND9PPQJBAKWfnBuOhtLQagHt6NVvy2M6VETjVkhjeZLJ7E7njofHi+IwEgMDiLSl0wYOGz4GWB2UL+S8OP79j47Rv+si93ECQQCNqD8nMcVXIHKze7aM9c8v1yfgEdk8IpVhAbiXbRs3ANTT4Jx2M6GNBEeEAorHqO4eOTxdObNuz/RADoRnpzHk
+  HZHB_PUBLIC_KEY: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCZ1qclSxQZYtZGpAV1I5P0ph/l9V9JBhopNLm9TF5zVDpPTQakUIzuhvQOsHYhs6PY/cNurubvUekeg3vON2DIYFuoiKA6HXsb2cyJ8UxPmGOdolAQwnJLB2ADO7h2QbXVyqL5vmxMy9J8GvPV8Os8rgpvMe3p6A4lc7P++VqKqwIDAQAB
+  ### 中介平台-加解密秘钥对 私钥+公钥
+  ZJPT_PUBLIC_KEY: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKbJHlAPiXza9A7Mfs2cLvysKa5GjdMtG1QQv8oADkAgcdujRq0aHVjNFXoVm7b1DdlhEAdhKXJ7XyY/2zoEbpoU4YxzIftloHZ0vd/k4vgAg5beH972jpWZj6N3ER+EgR73+Ui0p0pdXIRjDF4o8mWSLw8W8Z93eILtLg0DcOIwIDAQAB
+  aly:
+    ##================ 保信回调阿里云接服务器==============#
+    url_pre: http://47.92.254.66:8080/API/insCBIT
+  api10: /pjms/insurance/open/unify/order/cancelUnderwriting
+  api11: /pjms/insurance/open/unify/order/getVerificationCode
+  api12: /pjms/insurance/open/unify/order/commitVerificationCode
+  api14: /pjms/insurance/open/unify/order/sendEleApplicationSign
+  api17: /pjms/insurance/open/unify/order/viewToPay
+  api2: /pjms/insurance/open/unify/order/getInitParams
+  api3: /pjms/insurance/open/unify/order/generateOrderNo
+  api4: /pjms/insurance/open/unify/vehicle/getTMBVerificationCode
+  api5: /pjms/insurance/open/unify/vehicle/queryVehicleModel
+  api6: /pjms/insurance/open/unify/vehicle/confirmVehicle
+  api7: /pjms/insurance/open/unify/order/quote
+  api8: /pjms/insurance/open/unify/order/postUnderwriting
+  api9: /pjms/insurance/open/unify/order/applyPay
+  carDealerCode_pingan: 224189117001
+  franchiserChannelCode_pingan: QIAOYRXX-00001
+  franchiserChannelId_pingan: CBIT01240000
+  franchiserChannelId_taiping: CBIT01240000
+  franchiserChannelId_taipingyang: CBIT01240000
+  ### 中介机构id
+  franchiserId: taiyuantianqin-001
+  groupCode_taiping: S132001
+  insurerBranchCode_pingan: 140000
+  insurerBranchCode_taiping: 140000
+  insurerBranchCode_taipingyang: 140000
+  ### ip地址
+  ip: 10.23.69.89
+  url_pre: http://88.88.1.51:5017
+#================ 中保信接口对接--结束==============#
+
+#文件上传路径测试
+filePath: C:/soft/apache-tomcat-8.5.75/webapps/upload/
+
+# 恒邦
+hb:
+  audit:
+    url: http://47.92.254.66:8088/hb/hb_hebao
+  getPolicyPrint:
+    url: http://47.92.254.66:8088/hb/hb_bdsearch
+  image:
+    url: http://47.92.254.66:8088/hb/hb_phoup
+  quote:
+    url: http://47.92.254.66:8088/hb/hb_bfjs
+
+#华农
+hn:
+  vin:
+    search:
+      #华农vin码查询
+      url: http://47.92.254.66:8088/hn/vinsearch
+master:
+  password:
+    ciphertext: 9d3b721959d63c10173d378e82aaecf2
+    salt: 7cb112e917a8446f8616
+mybatis:
+  configuration:
+    map-underscore-to-camel-case: true
+  #mybatis xml文件扫描路径
+  mapper-locations: classpath:mapper/**/*.xml
+  type-aliases-package: com.ydtech.modules.*.model
+mybatis-plus:
+  configuration:
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+##测试地址
+netUrl: http://47.92.254.66:8080/
+open:
+  method:
+    log: true
+##平安
+pa:
+  vin:
+    search:
+      #平安vin码查询
+      url: http://47.92.254.66:8888/pingan/vinSearch
+
+#================ mybatis pagehelper ==============#
+pagehelper:
+  helper-dialect: mysql
+  params: count=countSql
+  reasonable: true
+  support-methods-arguments: true
+pyramid:
+  dept:
+    id: 99D05
+
+# 人保
+rb:
+  audit:
+    url: http://47.92.254.66:8088/rb/jiaofei
+  brand:
+    search:
+      url: http://47.92.254.66:8088/rb/brandsearch
+  car:
+    search:
+      url: http://47.92.254.66:8088/rb/carsearch
+  domain: http://47.92.254.66:8088/rb
+  quote:
+    url: http://47.92.254.66:8088/rb/bfjs
+
+resp_json: '{"code":200,"msg":null,"data":{"busUniqueId":"P_YBX_TESTT0NukiEN02OGDABB","total":3518.79,"insureId":null,"businessPolicy":{"specialTermItems":null,"coverages":null,"applicationNo":"53201093900246326035"},"trafficPolicy":{"specialTermItems":null,"coverages":null,"applicationNo":"53201093900246326036"},"propertyPolicies":null,"casualtyPolicies":null}}'
+server:
+  servlet:
+    encoding:
+      charset: UTF-8
+      force: true
+
+upload:
+  # 路径带上前后斜杆
+  basepath: ${filePath}
+  file:
+    # 上传目录
+    path: D:/upload/
+    # 映射路劲
+    url: /upload/
+  host: ''
+  password: ''
+  url: ${netUrl}
+  username: ''
+wechat:
+  open:
+    componentAppId: wx612ca90988c46947
+    componentSecret: 75b7d4cda453b2075dec23f849278bc0
+
+#================ 永安 ==============#
+ya:
+  callbackUrl: http://test.baoxianzhanggui.com:8080/order/yongAn/updatePolicy
+  #  comCode: 214040020000
+  #  consumerAccessKey: 123456test
+  #  consumerID: 102120
+  #  matchCode: 10212014040001
+  url: https://tapi.yaic.com.cn/auto/issue
+  sign: https://tapi.yaic.com.cn/auto/debug/generate-access-key
+#  userCode: 10061765
+
+##永诚
+yc:
+  api:
+#    agent:
+#      # 机构代码(dptCde)
+#      dptCde: 14A4
+#      # 渠道编码(agentCode)
+#      agentCode: 250000P00004
+#      # 协议编码(conferCode)
+#      conferCode: 250000P0000401
+#      # 渠道分类(agentType)
+#      agentType: 191010
+#      # 代理人名称(agentNme)
+#      agentNme: 永鑫保险销售服务有限公司山西分公司
+#      # 代理人资格证号(qlftNo)
+#      qlftNo: 2752454675645
+#      # 录入人(operatorCode)
+#      operatorCode: 100030057
+#      # 业务员代码(salesmanNo)
+#      salesmanNo: 100030057
+#      # 新业务来源(CChaType)
+#      CChaType: 191010
+#      # 客户性质(custNature)
+#      custNature: 192099
+#      # 操作人员代码(cOprcde)
+#      cOprcde: 100030057
+#      # 业务来源(cBsnsTyp)
+#      cBsnsTyp: 19002
+#    password: yc@20230202!
+    pay:
+      callBack: http://127.0.0.1:8080/api/yongCheng/callBack
+#    url: http://140.206.189.151:17000/
+    # 生产
+    url: http://www.yongcheng.com:17002/
+#    userName: yctest1
+  audit:
+    url: /yc/jiaofei
+  domain: http://47.92.254.66:8088
+  getPolicyPrint:
+    url: /yc/bdxz
+  image:
+    url: /yc/yxsc
+  quote:
+    url: /yc/bfjs
+
+#中煤
+zm:
+  ascription:
+    url: ${zm.domain}/ascription
+  audit:
+    url: ${zm.domain}/audit
+  #domain: http://47.92.254.66:8888/zm
+  domain: http://sxzgkj.baoxianzhanggui.com/zm/zm
+  getPolicyPrint:
+    url: ${zm.domain}/getPolicyPrint
+  image:
+    url: ${zm.domain}/yxsc
+  manualUnderwriting:
+    url: ${zm.domain}/manualUnderwriting
+  modelQuery:
+    url: ${zm.domain}/modelQuery
+  quote:
+    url: ${zm.domain}/quotedPrice
+  verifyPayment:
+    url: ${zm.domain}/verifyPayment
+  vinSearch:
+    url: ${zm.domain}/vinSearch
+  # 测试
+  api:
+    source: 326
+    token: THIRDSCOuloft2020052818346904zmYBSXXHTQ
+    url: https://test.echinacoal.com/singlePlatform/
+    imageUrl: https://test.echinacoal.com/singlePlatform/others/
+    smsUrl: https://test.echinacoal.com/singlePlatform/prpall/
+    pageUrl: http://www.baidu.com
+    callbackDomain: http://39.98.239.48/web-api
+    callbackUrl: /order/zhongMeiApi/underwritingCallback
+    passMsgUrl: /order/zhongMeiApi/auditCallback
+    sessionKey: 1237891234567589
+
+
+image:
+  # 验证码识别
+  identificationUrl: http://sxzgkj.baoxianzhanggui.com/zm/images/recognition
+
+logging:
+  file:
+    path: logs
+
+agreement:
+  shutdown: true
+
+
+# 国任
+guoRen:
+  baseUrl: https://devyun.guorenpcic.com/api/grchannel-interface/httpCurrency/httpJsonCommonEntrance
+  uploadUrl: https://devyun.guorenpcic.com/api/grecar/photo/upload
+  redirectUrl: http://127.0.0.1:8080/api/guoRen/callBack
+
+
+# 华泰
+huaTai:
+  baseUrl: https://gears.pc.ehuatai.com:9040/interFaces/common/AutoInsuranceQuotation.do
+  selfPublicKey: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDBOtXf1T/no13LOuy5ti+/d+SADHns8hAv3+LjhDFsQRbHk3tHhnUNX7I8b25576AVmgraefS7jnpyB299f58PK8WkWZN+UB6pcyEpktrtqOnKcaQSTbkQzaseCW4sCRdoea0alzSXUuXC2FN0pHAE3JkT07e5doX3IHas2GJAkwIDAQAB
+  selfPrivateKey: MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAME61d/VP+ejXcs67Lm2L7935IAMeezyEC/f4uOEMWxBFseTe0eGdQ1fsjxvbnnvoBWaCtp59LuOenIHb31/nw8rxaRZk35QHqlzISmS2u2o6cpxpBJNuRDNqx4JbiwJF2h5rRqXNJdS5cLYU3SkcATcmRPTt7l2hfcgdqzYYkCTAgMBAAECgYAwAAWRDNBLInHyQjj8CR3jWk0Q4giHq7oJqnwaOIRud9zIxwIgym3ZXKRSDvxKnhQOSa3Yh+MblFEmcmJnsoQ4OedLq7FVOw1eur/nw6jMcROT6ZiP512ZGgKZI1OdkQDpjCqM9Vg1brrFuGdV2RwI9ak2bjKbi7vs6slvd4r3AQJBAOqU+5xkyuaupg9cO/7TIxMgnTQH8W7IC1uDcx3f28QdkP+udJYfU/n1dYyGuhkW66KVANSqz4dsrEiAmfhvydECQQDS304+LEvPi4j8YmNlOXrs1o8H0tPB69svC9ER2YbrTjZf49XvY9fuor11XAprXZhBp8yvJu07FuRWilrQ8FkjAkEAop1qmqzIdweE+ErxECJfQygtsd77v9cPAH5sM752Q0pXtNbD3TmUZkeBGExg/3mDGW5/Z+2M9Y0hFRWJJs6fsQJAO11mV5Z82Tb9H6BLPyoJczeMGLW/q65MjFgVSaMlmoTwRdqMVdKT7bifAbUhscwtmv40X3LkAmiVa8+TdZLUZQJACu2NgPZkw6gjKCZf5xOfvKaC3PqKlhPghq+ypyutzTih9y81+EBJ25emLWNcd5BtIZ/AXmr3UUiGg0zX4s5njA==
+  huaTaiPublicKey: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCYyF2SBNzLOP5N5fFW2T2eQ5+iaI5wVpsedu+UY290TVuG152tkdtSuTXsx+8BKnd79/PF966/2aSP4EUm7vD9kvQUnX2EDUiMooorGvDTRxoHNXFGqOtxdMiUOuqx19HwNb4gOXZ1WdjWJwSmqC6ZP6OgxKIotCHJwe826Q/w8wIDAQAB
+
+# api url
+api:
+  url: http://39.98.239.48/web-api
+#大家财险api
+dajia:
+  api:
+    url: https://ics-test.djbx.com/sip-agent/simpleRequest/
+    encryptKey: "qwertyuiopasdfgh"
+qrcode:
+  genAddress: http://39.98.239.48/order/qrCode/index

+ 29 - 0
src/main/resources/mapper/modules/fnc/InsPlyIncomeMapper.xml

@@ -0,0 +1,29 @@
+<?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="com.ydtech.modules.fnc.dao.InsPlyIncomeMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.ydtech.modules.fnc.entity.InsPlyIncome">
+        <id column="orderno" property="orderno" />
+        <id column="policyno" property="policyno" />
+        <result column="dept_id" property="deptId" />
+        <result column="dept_name" property="deptName" />
+        <result column="riskcode" property="riskcode" />
+        <result column="pay_date" property="payDate" />
+        <result column="company_id" property="companyId" />
+        <result column="company_name" property="companyName" />
+        <result column="agreement_id" property="agreementId" />
+        <result column="licenseno" property="licenseno" />
+        <result column="taxamount" property="taxamount" />
+        <result column="no_tax_premium" property="noTaxPremium" />
+        <result column="commission_feerate" property="commissionFeerate" />
+        <result column="other_feerate" property="otherFeerate" />
+        <result column="commission_feevalue" property="commissionFeevalue" />
+        <result column="other_feevalue" property="otherFeevalue" />
+        <result column="all_fee_value" property="allFeeValue" />
+        <result column="final_fee_value" property="finalFeeValue" />
+        <result column="doing_fee_value" property="doingFeeValue" />
+        <result column="create_time" property="createTime" />
+    </resultMap>
+
+</mapper>

+ 17 - 0
src/main/resources/mapper/modules/fnc/InsPlySettleDetailMapper.xml

@@ -0,0 +1,17 @@
+<?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="com.ydtech.modules.fnc.dao.InsPlySettleDetailMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.ydtech.modules.fnc.entity.InsPlySettleDetail">
+        <id column="settleno" property="settleno" />
+        <id column="policyno" property="policyno" />
+        <result column="orderno" property="orderno" />
+        <result column="dept_id" property="deptId" />
+        <result column="commission_feevalue" property="commissionFeevalue" />
+        <result column="other_feevalue" property="otherFeevalue" />
+        <result column="all_fee_value" property="allFeeValue" />
+        <result column="create_time" property="createTime" />
+    </resultMap>
+
+</mapper>

+ 17 - 0
src/main/resources/mapper/modules/fnc/InsPlySettleHxMapper.xml

@@ -0,0 +1,17 @@
+<?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="com.ydtech.modules.fnc.dao.InsPlySettleHxMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.ydtech.modules.fnc.entity.InsPlySettleHx">
+        <id column="settleno" property="settleno" />
+        <result column="fee_type" property="feeType" />
+        <result column="amount" property="amount" />
+        <result column="checkno" property="checkno" />
+        <result column="remark" property="remark" />
+        <result column="create_time" property="createTime" />
+        <result column="operator" property="operator" />
+        <result column="dirid" property="dirid" />
+    </resultMap>
+
+</mapper>

+ 22 - 0
src/main/resources/mapper/modules/fnc/InsPlySettleMapper.xml

@@ -0,0 +1,22 @@
+<?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="com.ydtech.modules.fnc.dao.InsPlySettleMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.ydtech.modules.fnc.entity.InsPlySettle">
+        <id column="settleno" property="settleno" />
+        <result column="company_id" property="companyId" />
+        <result column="company_name" property="companyName" />
+        <result column="settle_month" property="settleMonth" />
+        <result column="settle_batch" property="settleBatch" />
+        <result column="commission_feevalue" property="commissionFeevalue" />
+        <result column="other_feevalue" property="otherFeevalue" />
+        <result column="all_fee_value" property="allFeeValue" />
+        <result column="dept_id" property="deptId" />
+        <result column="dept_name" property="deptName" />
+        <result column="create_time" property="createTime" />
+        <result column="operator" property="operator" />
+        <result column="status" property="status" />
+    </resultMap>
+
+</mapper>

+ 48 - 8
src/main/resources/mapper/modules/order/InsOrdersMapper.xml

@@ -411,7 +411,12 @@
         SELECT a.`inscompany` AS insCompany,
         (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
         a.`jqpolicyno` AS policyNo,
-        getValidDate(a.`orderno`,a.`id`) AS quoteDate,
+        <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
+            a.pay_date  AS quoteDate,
+        </if>
+        <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
+            a.inside_pay_time  AS quoteDate,
+        </if>
         a.`jq_start_date` AS policyStartDate,
         '交强险' AS riskName,
         a.`jqpremium` AS sumPremium,
@@ -454,7 +459,12 @@
             and a.operatorid = #{policyReqVo.operatorId}
         </if>
         <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
-            and getValidDate(a.`orderno`,a.`id`) between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
+                and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
+            <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
+                and a.inside_pay_time  between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
         </if>
         <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
             and a.jq_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
@@ -464,7 +474,12 @@
         SELECT  a.`inscompany` AS insCompany,
         (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
         a.`sypolicyno` AS policyNo,
-        getValidDate(a.`orderno`,a.`id`) AS quoteDate,
+        <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
+            a.pay_date  AS quoteDate,
+        </if>
+        <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
+            a.inside_pay_time  AS quoteDate,
+        </if>
         a.`sy_start_date` AS policyStartDate,
         '商业险' AS riskName,
         a.`sypremium` AS sumPremium,
@@ -507,7 +522,12 @@
             and a.operatorid = #{policyReqVo.operatorId}
         </if>
         <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
-            and getValidDate(a.`orderno`,a.`id`) between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
+                and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
+            <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
+                and a.inside_pay_time  between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
         </if>
         <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
             and a.sy_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
@@ -521,7 +541,12 @@
         SELECT a.`inscompany` AS insCompany,
         (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
         a.`jqpolicyno` AS policyNo,
-        getValidDate(a.`orderno`,a.`id`) AS quoteDate,
+        <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
+            a.pay_date  AS quoteDate,
+        </if>
+        <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
+            a.inside_pay_time  AS quoteDate,
+        </if>
         a.`jq_start_date` AS policyStartDate,
         '交强险' AS riskName,
         a.`jqpremium` AS sumPremium,
@@ -564,7 +589,12 @@
             and a.operatorid = #{policyReqVo.operatorId}
         </if>
         <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
-            and getValidDate(a.`orderno`,a.`id`) between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
+                and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
+            <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
+                and a.inside_pay_time  between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
         </if>
         <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
             and a.jq_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
@@ -574,7 +604,12 @@
         SELECT  a.`inscompany` AS insCompany,
         (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
         a.`sypolicyno` AS policyNo,
-        getValidDate(a.`orderno`,a.`id`) AS quoteDate,
+        <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
+            a.pay_date  AS quoteDate,
+        </if>
+        <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
+            a.inside_pay_time  AS quoteDate,
+        </if>
         a.`sy_start_date` AS policyStartDate,
         '商业险' AS riskName,
         a.`sypremium` AS sumPremium,
@@ -617,7 +652,12 @@
             and a.operatorid = #{policyReqVo.operatorId}
         </if>
         <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
-            and getValidDate(a.`orderno`,a.`id`) between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
+                and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
+            <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
+                and a.inside_pay_time  between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
         </if>
         <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
             and a.sy_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}