Răsfoiți Sursa

报表应收统计

li.pengfei 2 ani în urmă
părinte
comite
9d9951b4c3

+ 2 - 1
src/main/java/com/ydtech/modules/fnc/dao/InsPlySettleMapper.java

@@ -6,6 +6,7 @@ import com.ydtech.modules.fnc.entity.InsPlySettle;
 import com.ydtech.modules.fnc.vo.InsPlySettleVo;
 import com.ydtech.modules.report.model.vo.InsPlySettleReportReqVo;
 import com.ydtech.modules.report.model.vo.InsPlySettleReportResVo;
+import com.ydtech.modules.report.model.vo.InsPlySettleStatisticsListResVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
@@ -63,7 +64,7 @@ public interface InsPlySettleMapper extends BaseMapper<InsPlySettle> {
 
     List<InsPlySettleReportResVo> getInsPlySettleReport(@Param("reportReqVo")InsPlySettleReportReqVo insPlySettleReportReqVo);
 
-    List<InsPlySettle> getInsPlySettleReportList(@Param("reportReqVo")InsPlySettleReportReqVo insPlySettleReportReqVo);
+    List<InsPlySettleStatisticsListResVo> getInsPlySettleReportList(@Param("reportReqVo")InsPlySettleReportReqVo insPlySettleReportReqVo);
 
     Long getInsPlySettleReportCount(@Param("reportReqVo") InsPlySettleReportReqVo insPlySettleReportReqVo);
 

+ 15 - 3
src/main/java/com/ydtech/modules/fnc/service/impl/InsPlySettleServiceImpl.java

@@ -31,6 +31,7 @@ import com.ydtech.modules.order.entity.vo.PolicyInsuranceReportReqVo;
 import com.ydtech.modules.order.entity.vo.PolicyInsuranceReportResVo;
 import com.ydtech.modules.report.model.vo.InsPlySettleReportReqVo;
 import com.ydtech.modules.report.model.vo.InsPlySettleReportResVo;
+import com.ydtech.modules.report.model.vo.InsPlySettleStatisticsListResVo;
 import com.ydtech.utils.DateUtil;
 import com.ydtech.utils.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -244,7 +245,9 @@ public class InsPlySettleServiceImpl extends ServiceImpl<InsPlySettleMapper, Ins
         Page<InsPlySettleReportResVo> policyInsuranceReportResVoPage = baseMapper.getInsPlySettleReport(page,
                 insPlySettleReportReqVo);
         if(policyInsuranceReportResVoPage.getRecords().size()==0){
-            throw new SystemException("未查询到有效数据!");
+             if(StringUtils.isNotEmpty(insPlySettleReportReqVo.getIsDrilling())&&"1".equals(insPlySettleReportReqVo.getIsDrilling())){
+                throw new SystemException("已经是最底层机构,无法继续下钻!");
+            }
         }
         policyInsuranceReportResVoPage.getRecords().stream().forEach(item->{
             EsmInsCompany esmInsCompany =esmInsCompanyService.getById(item.getCompanyId());
@@ -320,8 +323,17 @@ public class InsPlySettleServiceImpl extends ServiceImpl<InsPlySettleMapper, Ins
     }
     @Override
     public HttpResult<String> exportInsPlySettleReportList(InsPlySettleReportReqVo insPlySettleReportReqVo) {
-        List<InsPlySettle> insPlySettleReportList = baseMapper.getInsPlySettleReportList(insPlySettleReportReqVo);
-        String s = EasyExcelUtils.downExcel(uploadFilePath, InsPlySettle.class, insPlySettleReportList);
+        List<InsPlySettleStatisticsListResVo> insPlySettleReportList = baseMapper.getInsPlySettleReportList(insPlySettleReportReqVo);
+        insPlySettleReportList.stream().forEach(item->{
+            if("0".equals(item.getStatus())){
+                item.setStatus("未核销");
+            }else if("1".equals(item.getStatus())){
+                item.setStatus("部分核销");
+            }else if ("2".equals(item.getStatus())){
+                item.setStatus("已核销");
+            }
+        });
+        String s = EasyExcelUtils.downExcel(uploadFilePath, InsPlySettleStatisticsListResVo.class, insPlySettleReportList);
         return HttpResult.ok("", s);
     }
 }

+ 4 - 0
src/main/java/com/ydtech/modules/report/model/vo/InsPlySettleReportReqVo.java

@@ -45,4 +45,8 @@ public class InsPlySettleReportReqVo {
 
     @ApiModelProperty(value = "是否返回上层  1 返回上层 0非返回上层")
     private String isReturnBack;
+    @ApiModelProperty(value = "账单属期")
+    private String settleMonth;
+    @ApiModelProperty(value = "是否下钻查询  1 下钻 0非下钻查询")
+    private String isDrilling;
 }

+ 55 - 0
src/main/java/com/ydtech/modules/report/model/vo/InsPlySettleStatisticsListResVo.java

@@ -0,0 +1,55 @@
+package com.ydtech.modules.report.model.vo;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+@TableName(autoResultMap = true)
+public class InsPlySettleStatisticsListResVo {
+
+    @ExcelProperty(value = "结算单号")
+    @TableField("settleno")
+    private String settleno;
+
+    @ExcelProperty(value = "保险公司名称")
+    @TableField("companyName")
+    private String companyName;
+
+
+    @ExcelProperty(value = "结算月份")
+    @TableField("settle_month")
+    private String settleMonth;
+
+    @ExcelProperty(value = "结算批次")
+    @TableField("settle_batch")
+    private String settleBatch;
+
+    @ExcelProperty(value = "手续费")
+    @TableField("commission_feevalue")
+    private BigDecimal commissionFeevalue;
+
+    @ExcelProperty(value = "跟单费")
+    @TableField("other_feevalue")
+    private BigDecimal otherFeevalue;
+
+    @ExcelProperty(value = "总费用")
+    @TableField("all_fee_value")
+    private BigDecimal allFeeValue;
+
+    @ExcelProperty(value = "结算单生成时间")
+    @TableField("create_time")
+    private String createTime;
+
+    @ExcelProperty(value = "生成操作人")
+    @TableField("operator")
+    private String operator;
+
+    @ExcelProperty(value = "状态")
+    @TableField("status")
+    private String status;
+
+}

+ 27 - 5
src/main/resources/mapper/modules/fnc/InsPlySettleMapper.xml

@@ -45,6 +45,9 @@
             <if test="reportReqVo.status != null and reportReqVo.status != ''">
                 and p.status = #{reportReqVo.status}
             </if>
+            <if test="reportReqVo.settleMonth != null and reportReqVo.settleMonth != ''">
+                and p.settle_month = #{reportReqVo.settleMonth}
+            </if>
             <if test="reportReqVo.quoteStartDate != null and reportReqVo.quoteEndDate != null">
                 and p.create_time  between #{reportReqVo.quoteStartDate} AND #{reportReqVo.quoteEndDate}
             </if>
@@ -74,6 +77,9 @@
             <if test="reportReqVo.status != null and reportReqVo.status != ''">
                 and p.status = #{reportReqVo.status}
             </if>
+            <if test="reportReqVo.settleMonth != null and reportReqVo.settleMonth != ''">
+                and p.settle_month = #{reportReqVo.settleMonth}
+            </if>
             <if test="reportReqVo.quoteStartDate != null and reportReqVo.quoteEndDate != null">
                 and p.create_time  between #{reportReqVo.quoteStartDate} AND #{reportReqVo.quoteEndDate}
             </if>
@@ -82,20 +88,33 @@
         </foreach>
         ) as s
     </select>
-    <select id="getInsPlySettleReportList" resultMap="BaseResultMap">
+
+
+    <resultMap id="InsPlySettleStatisticsListResMap" type="com.ydtech.modules.report.model.vo.InsPlySettleStatisticsListResVo">
+        <id column="settleno" property="settleno" />
+        <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="create_time" property="createTime" />
+        <result column="operator" property="operator" />
+        <result column="status" property="status" />
+    </resultMap>
+
+    <select id="getInsPlySettleReportList" resultMap="InsPlySettleStatisticsListResMap">
         SELECT
         p.settleno,
-        p.company_id,
         (select name from esm_ins_company where id = p.company_id)company_name,
         p.settle_month,
         p.settle_batch,
-        p.status,
         p.`commission_feevalue`,
         p.`other_feevalue`,
         p.`all_fee_value`,
         p.create_time,
-        p.dept_id,
-        p.operator
+        p.operator,
+        p.status
         FROM
         ins_ply_settle p WHERE 1=1
         <if test="reportReqVo.companyId != null and reportReqVo.companyId != ''">
@@ -104,6 +123,9 @@
         <if test="reportReqVo.status != null and reportReqVo.status != ''">
             and p.status = #{reportReqVo.status}
         </if>
+        <if test="reportReqVo.settleMonth != null and reportReqVo.settleMonth != ''">
+            and p.settle_month = #{reportReqVo.settleMonth}
+        </if>
         <if test="reportReqVo.quoteStartDate != null and reportReqVo.quoteEndDate != null">
             and p.create_time  between #{reportReqVo.quoteStartDate} AND #{reportReqVo.quoteEndDate}
         </if>