Bläddra i källkod

Merge branch 'test' into 2.0

785834757 2 år sedan
förälder
incheckning
6c2603a48d
49 ändrade filer med 877 tillägg och 211 borttagningar
  1. 12 0
      src/main/java/com/ydtech/modules/admin/controller/CompanyDataReportConroller.java
  2. 7 1
      src/main/java/com/ydtech/modules/admin/controller/SysPcAddressController.java
  3. 8 2
      src/main/java/com/ydtech/modules/admin/controller/websocket/SysGeographyPositionController.java
  4. 20 0
      src/main/java/com/ydtech/modules/admin/dao/CompanyDataReportMapper.java
  5. 1 1
      src/main/java/com/ydtech/modules/admin/dao/KhglZzbDataMapper.java
  6. 2 2
      src/main/java/com/ydtech/modules/admin/dao/SysAgencyLeaderMapper.java
  7. 1 0
      src/main/java/com/ydtech/modules/admin/model/dto/KhglDataDto.java
  8. 46 0
      src/main/java/com/ydtech/modules/admin/model/dto/OrdersDataExcel.java
  9. 6 0
      src/main/java/com/ydtech/modules/admin/model/po/SysAmountAuditingEntity.java
  10. 29 0
      src/main/java/com/ydtech/modules/admin/model/report/company/OrdersDataDto.java
  11. 3 0
      src/main/java/com/ydtech/modules/admin/model/vo/BusinessAgentData.java
  12. 4 0
      src/main/java/com/ydtech/modules/admin/model/vo/OrdersDataVo.java
  13. 3 0
      src/main/java/com/ydtech/modules/admin/model/vo/SysAmountAuditingVo.java
  14. 9 0
      src/main/java/com/ydtech/modules/admin/service/CompanyDataReportService.java
  15. 3 0
      src/main/java/com/ydtech/modules/admin/service/SysGeographyPositionService.java
  16. 2 1
      src/main/java/com/ydtech/modules/admin/service/SysPcAddressService.java
  17. 63 7
      src/main/java/com/ydtech/modules/admin/service/impl/CompanyDataReportServiceImpl.java
  18. 6 6
      src/main/java/com/ydtech/modules/admin/service/impl/DxDataServiceImpl.java
  19. 90 53
      src/main/java/com/ydtech/modules/admin/service/impl/SysAgencyLeaderServiceImpl.java
  20. 3 0
      src/main/java/com/ydtech/modules/admin/service/impl/SysAmountAuditingServiceImpl.java
  21. 6 0
      src/main/java/com/ydtech/modules/admin/service/impl/SysGeographyPositionServiceImpl.java
  22. 14 3
      src/main/java/com/ydtech/modules/admin/service/impl/SysPartnerServiceImpl.java
  23. 5 0
      src/main/java/com/ydtech/modules/admin/service/impl/SysPcAddressServiceImpl.java
  24. 5 5
      src/main/java/com/ydtech/modules/admin/service/impl/TaskStatisticsServiceImpl.java
  25. 33 12
      src/main/java/com/ydtech/modules/fnc/controller/CarSettleController.java
  26. 1 1
      src/main/java/com/ydtech/modules/inv/controller/invAccountExcelController.java
  27. 2 1
      src/main/java/com/ydtech/modules/inv/service/InvAccountExcelService.java
  28. 9 1
      src/main/java/com/ydtech/modules/inv/service/impl/InvAccountExcelServiceImpl.java
  29. 63 56
      src/main/java/com/ydtech/modules/inv/utils/EasyExcelUtils.java
  30. 1 0
      src/main/java/com/ydtech/modules/inv/utils/TransferUtils.java
  31. 55 0
      src/main/java/com/ydtech/modules/order/constants/OrderFeeAuditHistroy.java
  32. 6 0
      src/main/java/com/ydtech/modules/order/dao/InsAreaCompanyMapper.java
  33. 16 0
      src/main/java/com/ydtech/modules/order/entity/InsOrders.java
  34. 17 8
      src/main/java/com/ydtech/modules/order/entity/api/zijin/request/CalculatePremiumRequest.java
  35. 155 0
      src/main/resources/mapper/modules/admin/CompanyDataReport.xml
  36. 1 2
      src/main/resources/mapper/modules/admin/KhglZgdDataMapper.xml
  37. 1 1
      src/main/resources/mapper/modules/admin/KhglZzbDataMapper.xml
  38. 17 0
      src/main/resources/mapper/modules/admin/SysAgencyLeaderMapper.xml
  39. 9 1
      src/main/resources/mapper/modules/admin/SysAmountAuditingMapper.xml
  40. 0 1
      src/main/resources/mapper/modules/admin/SysDeptInternalAgentMapper.xml
  41. 15 12
      src/main/resources/mapper/modules/admin/SysTelemarketingWechatDataMapper.xml
  42. 2 1
      src/main/resources/mapper/modules/admin/SysUserLinkDxUserIdMapper.xml
  43. 2 1
      src/main/resources/mapper/modules/admin/SysUserLinkZgdUserIdMapper.xml
  44. 2 1
      src/main/resources/mapper/modules/admin/SysUserLinkZzbUserIdMapper.xml
  45. 2 2
      src/main/resources/mapper/modules/admin/TaskStatisticsMapper.xml
  46. 1 1
      src/main/resources/mapper/modules/inv/InvAccountExcelMapper.xml
  47. 113 28
      src/main/resources/mapper/modules/order/InsAreaCompanyMapper.xml
  48. 6 0
      src/main/resources/mapper/modules/order/InsOrdersMapper.xml
  49. BIN
      src/main/resources/template/资金申请单模板.xlsx

+ 12 - 0
src/main/java/com/ydtech/modules/admin/controller/CompanyDataReportConroller.java

@@ -3,6 +3,7 @@ package com.ydtech.modules.admin.controller;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.admin.model.report.company.*;
 import com.ydtech.modules.admin.model.vo.OrdersDataVo;
+import com.ydtech.modules.admin.model.vo.TaskStatisticsVo;
 import com.ydtech.modules.admin.service.CompanyDataReportService;
 import com.ydtech.modules.order.entity.BasePageResult;
 import io.swagger.annotations.Api;
@@ -92,4 +93,15 @@ public class CompanyDataReportConroller {
             return HttpResult.error("查询错误"+e.getMessage());
         }
     }
+
+    /**
+     * @description:   大订单导出
+     * @author: whp
+     * @date: 2024/9/13
+     **/
+    @PostMapping("/largeOrdersExcel")
+    @ApiOperation(value = "大订单导出")
+    public HttpResult largeOrdersExcel(@RequestBody OrdersDataVo ordersDataVo) {
+        return this.companyDataReportService.largeOrdersExcel(ordersDataVo);
+    }
 }

+ 7 - 1
src/main/java/com/ydtech/modules/admin/controller/SysPcAddressController.java

@@ -14,7 +14,6 @@ import com.ydtech.modules.admin.service.SysPcAddressService;
 import com.ydtech.modules.admin.service.SysUserService;
 import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.order.entity.BasePageResult;
-import com.ydtech.utils.StringUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
@@ -109,6 +108,13 @@ public class SysPcAddressController extends BaseController{
         return HttpResult.ok("success", this.sysPcAddressService.getPcAddress(dates));
     }
 
+    @GetMapping("/getOnlinePeople")
+    @ApiOperation(value = "PC在线用户")
+    public HttpResult<List<SysPcAddress>> getOnlinePeople() {
+
+        return HttpResult.ok("success", this.sysPcAddressService.getOnlinePeople());
+    }
+
 
 
 

+ 8 - 2
src/main/java/com/ydtech/modules/admin/controller/websocket/SysGeographyPositionController.java

@@ -2,6 +2,7 @@ package com.ydtech.modules.admin.controller.websocket;
 
 
 import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.admin.model.SysGeographyPosition;
 import com.ydtech.modules.admin.model.SysGeographyPositionRecord;
 import com.ydtech.modules.admin.model.dto.*;
 import com.ydtech.modules.admin.model.vo.PcAddressHistoryInfoVo;
@@ -10,13 +11,11 @@ import com.ydtech.modules.admin.model.vo.SysGeographyPositionInfoVo;
 import com.ydtech.modules.admin.model.vo.SysGeographyPositionVo;
 import com.ydtech.modules.admin.service.SysGeographyPositionService;
 import com.ydtech.modules.order.entity.BasePageResult;
-import com.ydtech.utils.StringUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
-import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
 
@@ -85,6 +84,13 @@ public class SysGeographyPositionController {
         return HttpResult.ok("success", this.sysGeographyPositionService.getGeographyPosition(dates));
     }
 
+    @GetMapping("/getOnlinePeople")
+    @ApiOperation(value = "APP在线用户")
+    public HttpResult<List<SysGeographyPosition>> getOnlinePeople() {
+
+        return HttpResult.ok("success", this.sysGeographyPositionService.getOnlinePeople());
+    }
+
 
 
 }

+ 20 - 0
src/main/java/com/ydtech/modules/admin/dao/CompanyDataReportMapper.java

@@ -0,0 +1,20 @@
+package com.ydtech.modules.admin.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ydtech.modules.admin.model.report.company.OrdersDataDto;
+import com.ydtech.modules.admin.model.vo.OrdersDataVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface CompanyDataReportMapper extends BaseMapper<OrdersDataDto> {
+    List<OrdersDataDto> querOrders(@Param("vo") OrdersDataVo ordersDataVo);
+
+    OrdersDataDto querOrdersTotal(@Param("vo")  OrdersDataVo ordersDataVo);
+
+    OrdersDataDto smallQuerOrders(@Param("vo") OrdersDataVo ordersDataVo);
+
+
+}

+ 1 - 1
src/main/java/com/ydtech/modules/admin/dao/KhglZzbDataMapper.java

@@ -8,7 +8,7 @@ import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
-@DS("khglzgb")
+@DS("khglzzb")
 public interface KhglZzbDataMapper extends BaseMapper<KhglDataDto> {
     /**
      *  @version

+ 2 - 2
src/main/java/com/ydtech/modules/admin/dao/SysAgencyLeaderMapper.java

@@ -5,8 +5,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ydtech.modules.admin.model.SysAgencyLeader;
 import com.ydtech.modules.admin.model.dto.DeptBalanceDto;
-import com.ydtech.modules.admin.model.dto.SysAgencyLeaderPageDto;
-import com.ydtech.modules.admin.model.vo.AgencyExtractFeeVo;
 import com.ydtech.modules.admin.model.vo.DeptBalanceVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -35,5 +33,7 @@ public interface SysAgencyLeaderMapper extends BaseMapper<SysAgencyLeader> {
 
 
     HashMap<String, BigDecimal> getBigDecimalNum(@Param("deptId") String deptId, @Param("createTime")  String createTime,@Param("beginTime") String beginTime,@Param("endTime") String endTime);
+
+    HashMap<String, Object> getAreaCompanyByUserId(@Param("orderNoList") List<String> orderNoList);
 }
 

+ 1 - 0
src/main/java/com/ydtech/modules/admin/model/dto/KhglDataDto.java

@@ -26,4 +26,5 @@ public class KhglDataDto {
      */
     @ApiModelProperty(value = "微信人数")
     private  Integer wxCount;
+
 }

+ 46 - 0
src/main/java/com/ydtech/modules/admin/model/dto/OrdersDataExcel.java

@@ -0,0 +1,46 @@
+package com.ydtech.modules.admin.model.dto;
+
+import com.alibaba.excel.annotation.ExcelIgnore;
+import com.alibaba.excel.annotation.ExcelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class OrdersDataExcel {
+    @ExcelProperty(value = "发动机号",index = 0)
+    private String modelCode;
+
+    @ExcelProperty(value = "车型",index = 1)
+    private String modelcname;
+    @ApiModelProperty("车牌号")
+
+    @ExcelProperty(value = "车牌号",index = 2)
+    private String licenseno;
+
+    @ExcelProperty(value = "车架号",index = 3)
+    private String frameno;
+
+    @ExcelProperty(value = "订单数",index = 4)
+    private String orderNumber;
+
+    @ExcelProperty(value = "成交率",index = 5)
+    private String closeRate;
+
+    @ExcelProperty(value = "承保公司",index = 6)
+    private String namesimple;
+
+
+    /**
+     * 被保人信息
+     */
+    @ExcelIgnore
+    private String insureinfo;
+
+    /**
+     * 车辆信息
+     */
+    @ExcelIgnore
+    private String carinfo;
+
+
+}

+ 6 - 0
src/main/java/com/ydtech/modules/admin/model/po/SysAmountAuditingEntity.java

@@ -203,4 +203,10 @@ public class SysAmountAuditingEntity implements Serializable {
      */
     @TableField(value = "account_id")
     private String accountId;
+
+    /***
+     *  机构来源
+     */
+    @TableField(exist = false)
+    private String source;
 }

+ 29 - 0
src/main/java/com/ydtech/modules/admin/model/report/company/OrdersDataDto.java

@@ -1,7 +1,9 @@
 package com.ydtech.modules.admin.model.report.company;
 
 import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -48,4 +50,31 @@ public class OrdersDataDto  implements Serializable {
      */
     @ApiModelProperty("结束时间")
     private String endDate;
+
+    @ApiModelProperty("年度")
+    private String year;
+
+    /**
+     * 被保人信息
+     */
+    @ApiModelProperty("被保人信息")
+    private String insureinfo;
+
+    /**
+     * 车辆信息
+     */
+    @ApiModelProperty("车辆信息")
+    private String carinfo;
+
+    @ApiModelProperty("被保人姓名")
+    private String insureinfoName;
+
+    @ApiModelProperty("被保人电话")
+    private String insureinfoMobile;
+
+    @ApiModelProperty("发动机号")
+    private String modelCode;
+
+    @ApiModelProperty("车型")
+    private String modelcname;
 }

+ 3 - 0
src/main/java/com/ydtech/modules/admin/model/vo/BusinessAgentData.java

@@ -1,5 +1,8 @@
 package com.ydtech.modules.admin.model.vo;
 
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;

+ 4 - 0
src/main/java/com/ydtech/modules/admin/model/vo/OrdersDataVo.java

@@ -63,4 +63,8 @@ public class OrdersDataVo {
 
     @ApiModelProperty("订单号")
     private String orderno;
+
+
+    @ApiModelProperty("年份")
+    private String year;
 }

+ 3 - 0
src/main/java/com/ydtech/modules/admin/model/vo/SysAmountAuditingVo.java

@@ -154,4 +154,7 @@ public class SysAmountAuditingVo {
 
     @ApiModelProperty("用户idList")
     private List<String> userIdList;
+
+    @ApiModelProperty("业务来源")
+    private String  source;
 }

+ 9 - 0
src/main/java/com/ydtech/modules/admin/service/CompanyDataReportService.java

@@ -1,8 +1,10 @@
 package com.ydtech.modules.admin.service;
 
 
+import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.admin.model.report.company.*;
 import com.ydtech.modules.admin.model.vo.OrdersDataVo;
+import com.ydtech.modules.admin.model.vo.TaskStatisticsVo;
 import com.ydtech.modules.order.entity.BasePageResult;
 
 /**
@@ -42,6 +44,13 @@ public interface CompanyDataReportService {
      *  @Description:   查询控制台大订合计
      */
     OrdersDataDto querOrdersamountTo(OrdersDataVo ordersDataVo);
+    /**
+     * @description:   大订单导出
+     * @author: whp
+     * @date: 2024/9/13
+     **/
+    HttpResult largeOrdersExcel(OrdersDataVo ordersDataVo);
+
 }
 
 

+ 3 - 0
src/main/java/com/ydtech/modules/admin/service/SysGeographyPositionService.java

@@ -27,4 +27,7 @@ public interface SysGeographyPositionService extends IService<SysGeographyPositi
     BasePageResult<SysGeographyPositionInfoVo> queryPcAddressInfo(PcAddressInfoDto addressInfoDto);
 
     PcAddressHistoryInfoVo getGeographyPosition(String dates);
+
+    List<SysGeographyPosition> getOnlinePeople();
+
 }

+ 2 - 1
src/main/java/com/ydtech/modules/admin/service/SysPcAddressService.java

@@ -5,7 +5,6 @@ import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.model.dto.*;
 import com.ydtech.modules.admin.model.po.SysPcAddress;
 import com.ydtech.modules.admin.model.vo.PcAddressHistoryInfoVo;
-import com.ydtech.modules.admin.model.vo.PcAddressHistoryTimeVo;
 import com.ydtech.modules.admin.model.vo.RegionInfoVo;
 import com.ydtech.modules.order.entity.BasePageResult;
 
@@ -43,4 +42,6 @@ public interface SysPcAddressService extends IService<SysPcAddress> {
     BasePageResult<SysPcAddress> queryPcAddressInfo(PcAddressInfoDto addressInfoDto);
 
     PcAddressHistoryInfoVo getPcAddress(String dates);
+
+    List<SysPcAddress> getOnlinePeople();
 }

+ 63 - 7
src/main/java/com/ydtech/modules/admin/service/impl/CompanyDataReportServiceImpl.java

@@ -1,20 +1,34 @@
 package com.ydtech.modules.admin.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fasterxml.jackson.annotation.JsonManagedReference;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.admin.dao.CompanyDataReportMapper;
+import com.ydtech.modules.admin.model.dto.OrdersDataExcel;
+import com.ydtech.modules.admin.model.dto.TaskStatisticsExcel;
 import com.ydtech.modules.admin.model.report.company.*;
 import com.ydtech.modules.admin.model.report.opetationData.QuotationCountDataDto;
 import com.ydtech.modules.admin.model.vo.OrdersDataVo;
+import com.ydtech.modules.admin.model.vo.TaskStatisticsVo;
 import com.ydtech.modules.admin.service.CompanyDataReportService;
 import com.ydtech.modules.admin.utils.SliceUpDateUtil;
+import com.ydtech.modules.inv.utils.EasyExcelUtils;
 import com.ydtech.modules.order.dao.InsAreaCompanyMapper;
 import com.ydtech.modules.order.entity.BasePageResult;
 import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import java.io.IOException;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -30,6 +44,14 @@ public class CompanyDataReportServiceImpl implements CompanyDataReportService {
 
     @Autowired
     private InsAreaCompanyMapper   insAreaCompanyMapper;
+    @Autowired
+    private CompanyDataReportMapper companyDataReportMapper;
+
+    @Value("${upload.file.path}")
+    private String uploadPath;
+
+    @Value("${upload.file.url}")
+    private String uploadUrl;
 
     /**
      *  @version
@@ -130,11 +152,8 @@ public class CompanyDataReportServiceImpl implements CompanyDataReportService {
     @Override
     public BasePageResult<OrdersDataDto> querOrdersDataPage(OrdersDataVo ordersDataVo) {
         Page<OrdersDataDto> page = new Page<>(ordersDataVo.getPageNum(), ordersDataVo.getPageSize());
-
-
         //判断开始时间和结束时间是否为空,如果为空的走时间类型逻辑
         HashMap<String, String> dateMapByType = getDateMapByType(ordersDataVo.getDateType(), ordersDataVo.getBeginDate(), ordersDataVo.getEndDate());
-
         ordersDataVo.setBeginDate(dateMapByType.get("startDate"));
         ordersDataVo.setEndDate(dateMapByType.get("endDate"));
         Page<OrdersDataDto> resultSubOrder = insAreaCompanyMapper.querOrdersDataPage(ordersDataVo, page);
@@ -157,8 +176,6 @@ public class CompanyDataReportServiceImpl implements CompanyDataReportService {
                 record.setNamesimple(dto.getNamesimple());
 
             }
-
-
         }
         return new BasePageResult<>(ordersDataVo.getPageNum(), page.getSize(), resultSubOrder.getTotal(), page.getPages(),
                 resultSubOrder.getRecords());
@@ -176,9 +193,20 @@ public class CompanyDataReportServiceImpl implements CompanyDataReportService {
         HashMap<String, String> dateMapByType = getDateMapByType(ordersDataVo.getDateType(), ordersDataVo.getBeginDate(), ordersDataVo.getEndDate());
         ordersDataVo.setBeginDate(dateMapByType.get("startDate"));
         ordersDataVo.setEndDate(dateMapByType.get("endDate"));
-        OrdersDataDto resultSubOrder = insAreaCompanyMapper.querOrdersamountTo(ordersDataVo);
+        OrdersDataDto  bigOrderNo=companyDataReportMapper.querOrdersTotal(ordersDataVo);
+        OrdersDataDto smallOrderNo  = companyDataReportMapper.smallQuerOrders(ordersDataVo);
+        if(ObjectUtils.isNotEmpty(smallOrderNo) && ObjectUtils.isNotEmpty(bigOrderNo)){
+            String smallorderNumber = smallOrderNo.getOrderNumber();
+            String bigOrderNumber = bigOrderNo.getOrderNumber();
+            BigDecimal smallBigDecimal = new BigDecimal(smallorderNumber);
+            BigDecimal bigBigDecimal = new BigDecimal(bigOrderNumber);
+            BigDecimal result = smallBigDecimal.divide(bigBigDecimal, 2, RoundingMode.HALF_UP);
+            bigOrderNo.setCloseRate(result.toString());
+        }
 
-        return resultSubOrder;
+
+
+        return bigOrderNo;
     }
     private BigDecimal calculateTotal(BigDecimal value1, BigDecimal value2, BigDecimal value3) {
         BigDecimal total = BigDecimal.ZERO;
@@ -196,6 +224,34 @@ public class CompanyDataReportServiceImpl implements CompanyDataReportService {
 
         return total;
     }
+
+    /**
+     * @description:   大订单导出
+     * @author: whp
+     * @date: 2024/9/13
+     **/
+    @Override
+    public HttpResult largeOrdersExcel(OrdersDataVo ordersDataVo) {
+
+        //判断开始时间和结束时间是否为空,如果为空的走时间类型逻辑
+        HashMap<String, String> dateMapByType = getDateMapByType(ordersDataVo.getDateType(), ordersDataVo.getBeginDate(), ordersDataVo.getEndDate());
+        ordersDataVo.setBeginDate(dateMapByType.get("startDate"));
+        ordersDataVo.setEndDate(dateMapByType.get("endDate"));
+
+        List<OrdersDataExcel> resultSubOrder = insAreaCompanyMapper.querOrdersDataListExcel(ordersDataVo);
+        String uploadPath = this.uploadPath + "/excel/";
+        Path path = Paths.get(uploadPath);
+        if (!Files.exists(path)) {
+            try {
+                Files.createDirectories(path);
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+        String fileName = EasyExcelUtils.downExcel(uploadPath, "控制台大订单导出", OrdersDataExcel.class, resultSubOrder);
+        return HttpResult.ok("", uploadUrl + "excel/" + fileName);
+    }
+
 }
 
 

+ 6 - 6
src/main/java/com/ydtech/modules/admin/service/impl/DxDataServiceImpl.java

@@ -99,14 +99,14 @@ public class DxDataServiceImpl implements DxDataService {
                 //查询掌柜鼎 + 掌中保的数据的企业微信数据
                 String zgdUserId = dxReportDataDto.getZgdUserId();
                 String zzdUserId = dxReportDataDto.getZzdUserId();
-                if (StringUtils.isNotBlank(zgdUserId)) {
-                    KhglDataDto zzbDto = khglZzbDataService.findByUserId(new KhglDataVo(zgdUserId, dxQueryVo.getBeginDate(), dxQueryVo.getEndDate()));
+                if (StringUtils.isNotBlank(zzdUserId)) {
+                    KhglDataDto zzbDto = khglZzbDataService.findByUserId(new KhglDataVo(zzdUserId, dxQueryVo.getBeginDate(), dxQueryVo.getEndDate()));
                     if (zzbDto != null && zzbDto.getWxCount() != null) {
                         qywx_zzb += zzbDto.getWxCount();
                     }
                 }
                 if (StringUtils.isNotBlank(zgdUserId)) {
-                    KhglDataDto zgdDto = khglZgdDataService.findByUserId(new KhglDataVo(zzdUserId, dxQueryVo.getBeginDate(), dxQueryVo.getEndDate()));
+                    KhglDataDto zgdDto = khglZgdDataService.findByUserId(new KhglDataVo(zgdUserId, dxQueryVo.getBeginDate(), dxQueryVo.getEndDate()));
                     if (zgdDto != null && zgdDto.getWxCount() != null) {
                         qywx_zgd += zgdDto.getWxCount();
                     }
@@ -171,14 +171,14 @@ public class DxDataServiceImpl implements DxDataService {
                 //查询掌柜鼎 + 掌中保的数据的企业微信数据
                 String zgdUserId = dxReportDataDto.getZgdUserId();
                 String zzdUserId = dxReportDataDto.getZzdUserId();
-                if (StringUtils.isNotBlank(zgdUserId)) {
-                    KhglDataDto zzbDto = khglZzbDataService.findByUserId(new KhglDataVo(zgdUserId, dxReportDataDto.getDateTime()));
+                if (StringUtils.isNotBlank(zzdUserId)) {
+                    KhglDataDto zzbDto = khglZzbDataService.findByUserId(new KhglDataVo(zzdUserId, dxReportDataDto.getDateTime()));
                     if (zzbDto != null && zzbDto.getWxCount() != null) {
                         qywx_zzb += zzbDto.getWxCount();
                     }
                 }
                 if (StringUtils.isNotBlank(zgdUserId)) {
-                    KhglDataDto zgdDto = khglZgdDataService.findByUserId(new KhglDataVo(zzdUserId, dxReportDataDto.getDateTime()));
+                    KhglDataDto zgdDto = khglZgdDataService.findByUserId(new KhglDataVo(zgdUserId, dxReportDataDto.getDateTime()));
                     if (zgdDto != null && zgdDto.getWxCount() != null) {
                         qywx_zgd += zgdDto.getWxCount();
 

+ 90 - 53
src/main/java/com/ydtech/modules/admin/service/impl/SysAgencyLeaderServiceImpl.java

@@ -340,7 +340,10 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
                 SysDept sysDept = sysDeptMapper.selectOne(new LambdaQueryWrapper<SysDept>().eq(SysDept::getId, sysAgencyLeaderVo.getDeptId()).eq(SysDept::getDelFlag, 0));
                 if (sysDept != null) {
                     sysAgencyLeaderVo.setParentId(sysDept.getParentId());
+                    sysAgencyLeaderVo.setDeptName(sysDept.getName());
                 }
+                SysUser sysUser = sysUserMapper.selectById(sysAgencyLeaderVo.getUserId());
+                sysAgencyLeaderVo.setUserName(sysUser.getName());
             }
         }
 
@@ -354,7 +357,12 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
         sysAgencyLeader.setId(id);
         SysAgencyLeader sysAgencyLeader1 = sysAgencyLeaderMapper.selectById(sysAgencyLeader);
         SysAgencyLeaderVo sysAgencyLeaderVo = BeanUtil.copyProperties(sysAgencyLeader1, SysAgencyLeaderVo.class);
-
+        SysUser sysUser = sysUserMapper.selectById(sysAgencyLeaderVo.getUserId());
+        sysAgencyLeaderVo.setUserName(sysUser.getName());
+        SysUser sysUser1 = sysUserMapper.selectById(sysAgencyLeaderVo.getSuggestId());
+        if (sysUser1 != null) {
+            sysAgencyLeaderVo.setSuggestName(sysUser1.getName());
+        }
         return sysAgencyLeaderVo;
     }
 
@@ -686,11 +694,12 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
                 BigDecimal bigDecimal = BigDecimal.ZERO;
                 //已提现抽成费用
                 BigDecimal historyFee = BigDecimal.ZERO;
-
+                SysUser sysUser = sysUserMapper.selectById(sysAgencyLeaders.getUserId());
+                SysDept sysDept = sysDeptMapper.selectById(sysAgencyLeaders.getDeptId());
                 agencyExtractFee.setUserId(sysAgencyLeaders.getUserId());
-                agencyExtractFee.setUserName(sysAgencyLeaders.getUserName());
+                agencyExtractFee.setUserName(sysUser.getName());
                 agencyExtractFee.setDeptId(sysAgencyLeaders.getDeptId());
-                agencyExtractFee.setDeptName(sysAgencyLeaders.getDeptName());
+                agencyExtractFee.setDeptName(sysDept.getName());
                 agencyExtractFee.setProportional(sysAgencyLeaders.getProportional());
                 //筛选订单,选择时间
                 Date updateTime = sysAgencyLeaders.getUpdateTime();
@@ -797,18 +806,22 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
 
                 if (insOrderList.size() > 0) {
                     List<String> collect = insOrderList.stream().map(InsOrders::getOrderno).collect(Collectors.toList());
-                    //查询订单下的所有子订单
-                    List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
-                            .in(InsAreaCompany::getOrderno, collect)
-                            .eq(InsAreaCompany::getOrderstatus, 3));
-                    if (insAreaCompanies.size() > 0) {
-                        //累加每一个子订单的交强险费用+商业险费用+驾意险费用
-                        BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
-                        BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
-                        BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
-
-                        bigDecimal = jqpremium.add(sypremium).add(jypremium);
+                    //查询订单下的所有子订单 保费和
+                    HashMap<String, Object> map = sysAgencyLeaderMapper.getAreaCompanyByUserId(collect);
+                    if (CollectionUtil.isNotEmpty(map)) {
+                        bigDecimal = bigDecimal.add(map.get("bigDecimal") == null ? BigDecimal.ZERO : (BigDecimal)map.get("bigDecimal"));
                     }
+//                    List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
+//                            .in(InsAreaCompany::getOrderno, collect)
+//                            .eq(InsAreaCompany::getOrderstatus, 3));
+//                    if (insAreaCompanies.size() > 0) {
+//                        //累加每一个子订单的交强险费用+商业险费用+驾意险费用
+//                        BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
+//                        BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
+//                        BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
+//
+//                        bigDecimal = jqpremium.add(sypremium).add(jypremium);
+//                    }
 
                 }
                 teamInformation.setSumpremium(bigDecimal);
@@ -893,38 +906,55 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
                             List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
                                     .likeRight(SysUser::getId, sysDept.getId()).eq(SysUser::getStatus, 1));
                             deptManNum = deptManNum + sysUsers.size();
-                            List<InsOrders> insOrderList;
-                            //筛选订单,选择时间
+
                             Date updateTime = sysAgencyLeader.getUpdateTime();
-                            if (updateTime == null) {
-                                //机构下所有订单
-                                insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
-                                        .likeRight(InsOrders::getDeptid, sysDept.getId())
-                                        .ge(InsOrders::getCreatetime, sysAgencyLeader.getCreateTime()));
-                                agencyTeamVo.setStartTime(sysAgencyLeader.getCreateTime());
+                            Date createTime = sysAgencyLeader.getCreateTime();
 
-                            } else {
-                                insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
-                                        .likeRight(InsOrders::getDeptid, sysDept.getId())
-                                        .ge(InsOrders::getCreatetime, updateTime));
+                            String dateStr = "";
+                            if (updateTime != null) {
+                                dateStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(updateTime);
                                 agencyTeamVo.setStartTime(updateTime);
+                            } else {
+                                dateStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(createTime);
+                                agencyTeamVo.setStartTime(createTime);
                             }
+                            HashMap<String, BigDecimal> map = baseMapper.getBigDecimalNum(sysDept.getId(), dateStr,null,null);
+                            if (CollectionUtil.isNotEmpty(map)) {
 
-                            if (insOrderList.size() > 0) {
-                                List<String> collect = insOrderList.stream().map(InsOrders::getOrderno).collect(Collectors.toList());
-                                //查询订单下的所有子订单
-                                List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
-                                        .in(InsAreaCompany::getOrderno, collect)
-                                        .eq(InsAreaCompany::getOrderstatus, 3));
-                                if (insAreaCompanies.size() > 0) {
-                                    BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
-                                    BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
-                                    BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
-
-                                    bigDecimal = jqpremium.add(sypremium).add(jypremium);
-
-                                }
+                                bigDecimal = bigDecimal.add(map.get("bigDecimal") == null ? BigDecimal.ZERO : map.get("bigDecimal"));
                             }
+//                            List<InsOrders> insOrderList;
+//                            //筛选订单,选择时间
+//                            Date updateTime = sysAgencyLeader.getUpdateTime();
+//                            if (updateTime == null) {
+//                                //机构下所有订单
+//                                insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
+//                                        .likeRight(InsOrders::getDeptid, sysDept.getId())
+//                                        .ge(InsOrders::getCreatetime, sysAgencyLeader.getCreateTime()));
+//                                agencyTeamVo.setStartTime(sysAgencyLeader.getCreateTime());
+//
+//                            } else {
+//                                insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
+//                                        .likeRight(InsOrders::getDeptid, sysDept.getId())
+//                                        .ge(InsOrders::getCreatetime, updateTime));
+//                                agencyTeamVo.setStartTime(updateTime);
+//                            }
+//
+//                            if (insOrderList.size() > 0) {
+//                                List<String> collect = insOrderList.stream().map(InsOrders::getOrderno).collect(Collectors.toList());
+//                                //查询订单下的所有子订单
+//                                List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
+//                                        .in(InsAreaCompany::getOrderno, collect)
+//                                        .eq(InsAreaCompany::getOrderstatus, 3));
+//                                if (insAreaCompanies.size() > 0) {
+//                                    BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
+//                                    BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
+//                                    BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
+//
+//                                    bigDecimal = jqpremium.add(sypremium).add(jypremium);
+//
+//                                }
+//                            }
 
                         }
 
@@ -1001,19 +1031,25 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
             if (insOrderList.size() > 0) {
                 List<String> orderNoList = insOrderList.stream().map(InsOrders::getOrderno).collect(Collectors.toList());
                 //单个人员查询订单下的所有子订单总保费  '订单状态(0 报价 1 待核保 2 已核保待缴费 3 核保退回 4 核保不通过)',
-                List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
-                        .in(InsAreaCompany::getOrderno, orderNoList)
-                        .eq(InsAreaCompany::getOrderstatus, 3));
-                if (insAreaCompanies.size() > 0) {
-                    //累加每一个子订单的交强险费用+商业险费用+驾意险费用
-                    BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
-                    BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
-                    BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
-
-                    bigDecimal = jqpremium.add(sypremium).add(jypremium);
+                HashMap<String, Object> map = sysAgencyLeaderMapper.getAreaCompanyByUserId(orderNoList);
+                if (CollectionUtil.isNotEmpty(map)) {
+                    bigDecimal = bigDecimal.add(map.get("bigDecimal") == null ? BigDecimal.ZERO : (BigDecimal)map.get("bigDecimal"));
+                    Long issueNum = (Long)map.get("issueNum");
+                    teamUserInfoVo.setIssueNum(issueNum.intValue());
                 }
-                //出单笔数
-                teamUserInfoVo.setIssueNum(insAreaCompanies.size());
+//                List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
+//                        .in(InsAreaCompany::getOrderno, orderNoList)
+//                        .eq(InsAreaCompany::getOrderstatus, 3));
+//                if (insAreaCompanies.size() > 0) {
+//                    //累加每一个子订单的交强险费用+商业险费用+驾意险费用
+//                    BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
+//                    BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
+//                    BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
+//
+//                    bigDecimal = jqpremium.add(sypremium).add(jypremium);
+//                }
+//                //出单笔数
+//                teamUserInfoVo.setIssueNum(insAreaCompanies.size());
                 teamUserInfoVo.setSumpremium(bigDecimal);
                 //报价笔数
                 Long quoteNum = insAreaCompanyMapper.selectCount(new LambdaQueryWrapper<InsAreaCompany>()
@@ -1024,6 +1060,7 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
                 Long underwriteNum = insAreaCompanyMapper.selectCount(new LambdaQueryWrapper<InsAreaCompany>()
                         .in(InsAreaCompany::getOrderno, orderNoList)
                         .in(InsAreaCompany::getOrderstatus, integers));
+
                 teamUserInfoVo.setUnderwriteNum(underwriteNum);
                 teamUserInfoVoList.add(teamUserInfoVo);
             } else {

+ 3 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysAmountAuditingServiceImpl.java

@@ -189,6 +189,9 @@ public class SysAmountAuditingServiceImpl extends ServiceImpl<SysAmountAuditingM
             if(StringUtils.isNotEmpty(sysAmountAuditingVo.getEndAuditingTime())){
                 params.put("endAuditingTime",sysAmountAuditingVo.getEndAuditingTime());
             }
+            if(StringUtils.isNotBlank(sysAmountAuditingVo.getSource())){
+                params.put("source",sysAmountAuditingVo.getSource());
+            }
 
             List<SysAmountAuditingEntity> list = baseMapper.queryPageOrderNew(params);
             pageHelper=new PageInfo(list);

+ 6 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysGeographyPositionServiceImpl.java

@@ -242,5 +242,11 @@ public class SysGeographyPositionServiceImpl extends ServiceImpl<SysGeographyPos
         return pcAddressHistoryInfoVo;
     }
 
+    @Override
+    public List<SysGeographyPosition> getOnlinePeople() {
+
+        return sysGeographyPositionMapper.selectList(new LambdaQueryWrapper<SysGeographyPosition>().eq(SysGeographyPosition::getStatus,1));
+    }
+
 
 }

+ 14 - 3
src/main/java/com/ydtech/modules/admin/service/impl/SysPartnerServiceImpl.java

@@ -77,8 +77,16 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
 
     @Override
     public List<SysPartner> queryRecommendAndPartner(String id) {
-        return sysPartnerMapper.selectList(new LambdaQueryWrapper<SysPartner>().eq(SysPartner::getDelFlag, 1)
+        List<SysPartner> sysPartnerList = sysPartnerMapper.selectList(new LambdaQueryWrapper<SysPartner>().eq(SysPartner::getDelFlag, 1)
                 .likeRight(SysPartner::getUserId, id).orderByDesc(SysPartner::getId));
+        if (sysPartnerList.size()>0) {
+            for (SysPartner sysPartner : sysPartnerList) {
+                SysUser sysUser = sysUserMapper.selectById(sysPartner.getUserId());
+                sysPartner.setUserName(sysUser.getName());
+            }
+
+        }
+        return sysPartnerList;
     }
 
     @Override
@@ -125,7 +133,10 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
                 if (sysPartner != null) {
                     user.setType("1");
                     user.setSuggestId(sysPartner.getSuggestId());
-                    user.setSuggestName(sysPartner.getSuggestName());
+                    SysUser sysUser = sysUserMapper.selectById(sysPartner.getSuggestId());
+                    if (sysUser != null) {
+                        user.setSuggestName(sysUser.getName());
+                    }
                     user.setProportional(sysPartner.getProportional());
                 }
             }
@@ -388,10 +399,10 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
                 //填充查询人的姓名和机构
                 agencyExtractFee.setProportional(sysPartner.getProportional());
                 agencyExtractFee.setUserId(sysPartner.getUserId());
-                agencyExtractFee.setUserName(sysPartner.getUserName());
                 SysUser sysUser = sysUserMapper.selectOne(new LambdaQueryWrapper<SysUser>()
                         .eq(SysUser::getId, sysPartner.getUserId())
                         .eq(SysUser::getStatus, 1));
+                agencyExtractFee.setUserName(sysUser.getName());
                 agencyExtractFee.setDeptId(sysUser.getDeptId());
                 SysDept sysDept = sysDeptMapper.selectOne(new LambdaQueryWrapper<SysDept>()
                         .eq(SysDept::getId, sysUser.getDeptId()).eq(SysDept::getDelFlag, 0));

+ 5 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysPcAddressServiceImpl.java

@@ -221,6 +221,11 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
         return pcAddressHistoryInfoVo;
     }
 
+    @Override
+    public List<SysPcAddress> getOnlinePeople() {
+        return sysPcAddressMapper.selectList(new LambdaQueryWrapper<SysPcAddress>().eq(SysPcAddress::getStatus,1));
+    }
+
 
 }
 

+ 5 - 5
src/main/java/com/ydtech/modules/admin/service/impl/TaskStatisticsServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ydtech.modules.admin.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -530,7 +531,7 @@ public class TaskStatisticsServiceImpl  implements TaskStatisticsService {
             BigDecimal sumPremium = allsumPremium.getSumPremium().compareTo(BigDecimal.ZERO) > 0 ? allsumPremium.getSumPremium() : BigDecimal.ZERO;
             BigDecimal resultSumPremium = result.getSumPremium().compareTo(BigDecimal.ZERO) > 0 ? result.getSumPremium() : BigDecimal.ZERO;
             if (!sumPremium.equals(BigDecimal.ZERO)) {
-                result.setSumPremiumProportion(resultSumPremium.divide(sumPremium).setScale(2, RoundingMode.DOWN));
+                result.setSumPremiumProportion(resultSumPremium.divide(sumPremium, 2));
             }
         }
         return result;
@@ -601,10 +602,9 @@ public class TaskStatisticsServiceImpl  implements TaskStatisticsService {
         pageVo.setPageNum(taskStatisticsVo.getPageNum());
         pageVo.setPageSize(taskStatisticsVo.getPageSize());
 
-
-        HashMap<String, String> dateMapByType = getDateMapByType(taskStatisticsVo.getDateType(), taskStatisticsVo.getCreatetimeStart(), taskStatisticsVo.getCreatetimeEnd());
-        taskStatisticsVo.setCreatetimeStart(dateMapByType.get("startDate"));
-        taskStatisticsVo.setCreatetimeEnd(dateMapByType.get("endDate"));
+        HashMap<String, String> dateMapByType = getDateMapByType(taskStatisticsVo.getDateType(), taskStatisticsVo.getBeginDate(), taskStatisticsVo.getEndDate());
+        taskStatisticsVo.setBeginDate(dateMapByType.get("startDate"));
+        taskStatisticsVo.setEndDate(dateMapByType.get("endDate"));
         IPage<TaskStatisticsDto> list = this.taskStatisticsMapper.channelAgentDetails(page,taskStatisticsVo);
         return list;
     }

+ 33 - 12
src/main/java/com/ydtech/modules/fnc/controller/CarSettleController.java

@@ -1,5 +1,7 @@
 package com.ydtech.modules.fnc.controller;
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ydtech.aop.request.RequestSingleParam;
 import com.ydtech.constants.enums.dict.FeeAuditAuditstatus;
@@ -13,14 +15,17 @@ import com.ydtech.modules.fnc.entity.InsFeeAuditHistory;
 import com.ydtech.modules.fnc.entity.vo.ProblemOrderQueryVo;
 import com.ydtech.modules.fnc.service.InsFeeAuditHistoryService;
 import com.ydtech.modules.fnc.service.InsFeeAuditService;
+import com.ydtech.modules.order.constants.OrderFeeAuditHistroy;
 import com.ydtech.modules.order.entity.BasePageResult;
 import com.ydtech.modules.order.entity.InsAreaCompany;
 import com.ydtech.modules.order.entity.InsOrders;
+import com.ydtech.modules.order.entity.InsOrdersTrack;
 import com.ydtech.modules.order.entity.vo.AuditOrderFeeVo;
 import com.ydtech.modules.order.entity.vo.OrderQueryVo;
 import com.ydtech.modules.order.entity.vo.OrderVo;
 import com.ydtech.modules.order.service.InsAreaCompanyService;
 import com.ydtech.modules.order.service.InsOrdersService;
+import com.ydtech.modules.order.service.InsOrdersTrackService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
@@ -42,15 +47,18 @@ public class CarSettleController extends BaseController {
 
     private final InsFeeAuditHistoryService insFeeAuditHistoryService;
 
+    private final InsOrdersTrackService insOrdersTrackService;
+
 
     public CarSettleController(InsAreaCompanyService insAreaCompanyService, InsOrdersService insOrdersService,
                                InsFeeAuditService insFeeAuditService,
-                               InsFeeAuditHistoryService insFeeAuditHistoryService) {
+                               InsFeeAuditHistoryService insFeeAuditHistoryService,InsOrdersTrackService insOrdersTrackService) {
 
         this.insAreaCompanyService = insAreaCompanyService;
         this.insOrdersService = insOrdersService;
         this.insFeeAuditService = insFeeAuditService;
         this.insFeeAuditHistoryService = insFeeAuditHistoryService;
+        this.insOrdersTrackService = insOrdersTrackService;
 
     }
 
@@ -144,24 +152,37 @@ public class CarSettleController extends BaseController {
 
     @GetMapping("/getFeeAuditHistory/{orderno}")
     @ApiOperation(value = "获取费用审核轨迹")
-    public HttpResult<List<InsFeeAuditHistory>> getFeeAuditHistory(@PathVariable("orderno") String orderno) {
+    public HttpResult getFeeAuditHistory(@PathVariable("orderno") String orderno) {
         InsAreaCompany underWrittenSubOrder = insAreaCompanyService.getById(orderno);
         if (underWrittenSubOrder == null) {
             return HttpResult.error("订单号有误-未承保");
         }
-        List<InsFeeAuditHistory> list = new ArrayList<>();
-        InsFeeAuditHistory insFeeAuditHistory = new InsFeeAuditHistory();
-        insFeeAuditHistory.setOrderno(underWrittenSubOrder.getOrderno());
-        insFeeAuditHistory.setInsOrderNo(underWrittenSubOrder.getId());
-        insFeeAuditHistory.setInsCompany(underWrittenSubOrder.getInscompany());
-        insFeeAuditHistory.setOperator(underWrittenSubOrder.getUserName());
-        insFeeAuditHistory.setOperatorTime(underWrittenSubOrder.getSigningTime());
-        insFeeAuditHistory.setAuditstatus(FeeAuditAuditstatus.UNDERWRITING.getCode());
-        list.add(insFeeAuditHistory);
+        JSONArray list = new JSONArray();
+        List<InsOrdersTrack> insOrdersTracks = insOrdersTrackService.list(new LambdaQueryWrapper<InsOrdersTrack>().eq(InsOrdersTrack::getSuborder, orderno)
+                .orderByAsc(InsOrdersTrack::getCreateTime));
+        insOrdersTracks.forEach(item->{
+            String desc = OrderFeeAuditHistroy.getDesc(item.getOrderStatus());
+            JSONObject jsonObject = new JSONObject();
+            jsonObject.put("insCompany",item.getInsCompany());
+            jsonObject.put("operatorTime",item.getCreateTime());
+            jsonObject.put("audituser",item.getOperatorId());
+            jsonObject.put("operator",item.getOperator());
+            jsonObject.put("desc",desc);
+            list.add(jsonObject);
+        });
+
         LambdaQueryWrapper<InsFeeAuditHistory> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(InsFeeAuditHistory::getInsOrderNo, orderno);
         wrapper.orderByAsc(InsFeeAuditHistory::getOperatorTime);
-        list.addAll(insFeeAuditHistoryService.list(wrapper));
+        List<InsFeeAuditHistory> insFeeAuditHistories = insFeeAuditHistoryService.list(wrapper);
+        insFeeAuditHistories.forEach(item->{
+            String desc = OrderFeeAuditHistroy.getDesc(OrderFeeAuditHistroy.convertStatus(item.getAuditstatus()));
+            JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(item));
+            jsonObject.put("desc",desc);
+            list.add(jsonObject);
+        });
+
+
         return HttpResult.ok("success", list);
     }
 

+ 1 - 1
src/main/java/com/ydtech/modules/inv/controller/invAccountExcelController.java

@@ -54,7 +54,7 @@ public class invAccountExcelController {
 
     @PostMapping("excel")
     @ApiOperation("导出资金申请模板")
-    public HttpResult excelAccountOperate(@RequestBody List<String> idList) {
+    public HttpResult excelAccountOperate(@RequestBody List<String> idList) throws IOException {
         return invAccountExcelService.excelAccount(idList);
     }
 

+ 2 - 1
src/main/java/com/ydtech/modules/inv/service/InvAccountExcelService.java

@@ -6,6 +6,7 @@ import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.inv.model.InvAccountExcel;
 import com.ydtech.modules.inv.model.vo.InvAccountOperateVo;
 
+import java.io.IOException;
 import java.util.List;
 
 /**
@@ -14,7 +15,7 @@ import java.util.List;
 * @createDate 2024-01-10 08:53:59
 */
 public interface InvAccountExcelService extends IService<InvAccountExcel> {
-    HttpResult excelAccount(List<String> idList);
+    HttpResult excelAccount(List<String> idList) throws IOException;
 
     HttpResult selectAccountExcel(InvAccountExcel invAccountExcel);
 

+ 9 - 1
src/main/java/com/ydtech/modules/inv/service/impl/InvAccountExcelServiceImpl.java

@@ -59,7 +59,7 @@ public class InvAccountExcelServiceImpl extends ServiceImpl<InvAccountExcelMappe
     String uploadFilePath;
 
     @Override
-    public HttpResult excelAccount(List<String> idList) {
+    public HttpResult excelAccount(List<String> idList) throws IOException {
         List<InvAccountExcel> insAccountExcels = insAccountExcelMapper.selectBatchIds(idList);
         List<InvAccountProfit> list = insAccountProfitService.list();
         if (!insAccountExcels.isEmpty()) {
@@ -97,6 +97,12 @@ public class InvAccountExcelServiceImpl extends ServiceImpl<InvAccountExcelMappe
                 }
             }
             record.setPayMethod(a.toString());
+            if (record.getPayoutAmount() == null) {
+                record.setPayoutAmount("0");
+            }
+            if (record.getPayoutAmount().equals(record.getApplyAmount())) {
+                record.setTransferFlag("0");
+            }
         }
         invAccountExcelIPage.setRecords(records);
         return HttpResult.ok("", invAccountExcelIPage);
@@ -153,12 +159,14 @@ public class InvAccountExcelServiceImpl extends ServiceImpl<InvAccountExcelMappe
             invAccountOperate.setDel(String.valueOf(date.getTime()));
             invAccountOperate.setOutCardNum(outAccountCard.getBankCardNum());
             invAccountOperate.setExcelAccountOperateId(invAccountExcel.getExcelAccountOperateId());
+            invAccountOperate.setApplyAmount(payOutAmount);
 
             InvAccountOperate invAccountOperate1 = insertRevenueAccountOperate(invAccountExcel);
             invAccountOperate1.setEnterCardNum(enterAccountCard.getBankCardNum());
             invAccountOperate1.setOutCardNum(invAccountOperate.getOutCardNum());
             invAccountOperate1.setDel(String.valueOf(date.getTime()));
             invAccountOperate1.setExcelAccountOperateId(invAccountExcel.getExcelAccountOperateId());
+            invAccountOperate1.setApplyAmount(payOutAmount);
 
             //支出信息
             list.add(invAccountOperate);

+ 63 - 56
src/main/java/com/ydtech/modules/inv/utils/EasyExcelUtils.java

@@ -1,9 +1,12 @@
 package com.ydtech.modules.inv.utils;
 
 import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.ExcelWriter;
 import com.alibaba.excel.support.ExcelTypeEnum;
 import com.alibaba.excel.util.ListUtils;
 import com.alibaba.excel.write.builder.ExcelWriterBuilder;
+import com.alibaba.excel.write.metadata.WriteSheet;
+import com.alipay.api.internal.util.file.IOUtils;
 import com.ydtech.constants.enums.inv.InvPayMethodEnum;
 import com.ydtech.modules.inv.model.*;
 import com.ydtech.modules.inv.model.excel.InvSettlementSourceExcel;
@@ -15,10 +18,7 @@ import lombok.SneakyThrows;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
-import java.io.ByteArrayInputStream;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
+import java.io.*;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
@@ -249,88 +249,95 @@ public class EasyExcelUtils {
             inputStream.close();
         }
 
+// 初始化一个空的列表用于存储已更新的对象
+        List<InvAccountExcel> updatedList = new ArrayList<>();
 
+        String fileName = "综合资金申请单" + System.currentTimeMillis() + ".xlsx";
+        String filePath = uploadFilePath + fileName;
+        Map<String, String> placeholders = new HashMap<>();
 
-        List<InvAccountExcel> list = new ArrayList<>();
-        // 获取工作表并填充
-        for (InvAccountExcel excel : invAccountExcel) {
-            ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
-            // 写入文件
-            Date date = new Date();
-            String file = date.getTime() + ".xlsx";
-            String fileName = uploadFilePath + file;
+        for (int i = 0; i < invAccountExcel.size(); i++) {
+            InvAccountExcel excel = invAccountExcel.get(i);
+
+            // 格式化申请时间
             excel.setExcelApplyTime(new SimpleDateFormat("yyyy-MM-dd").format(excel.getApplyTime()));
+
+            // 处理支付方式
             String payMethod = excel.getPayMethod();
             String[] split = payMethod.split(",");
-            StringBuilder a = new StringBuilder();
-            for (int i = 0; i < split.length; i++) {
-                a.append(InvPayMethodEnum.getNameByCode(split[i]));
-                if (i < split.length - 1) {
-                    a.append(",");
+            StringBuilder payMethodStr = new StringBuilder();
+            for (int j = 0; j < split.length; j++) {
+                payMethodStr.append(InvPayMethodEnum.getNameByCode(split[j]));
+                if (j < split.length - 1) {
+                    payMethodStr.append(",");
                 }
             }
+            excel.setPayMethod(payMethodStr.toString());
 
-            StringBuilder stringBuffer = new StringBuilder();
+            // 处理利润分配
+            StringBuilder plateStr = new StringBuilder();
+            Map<String, List<InvAccountProfit>> collect = invAccountProfit.stream()
+                    .collect(Collectors.groupingBy(InvAccountProfit::getProfitEng));
 
-            Map<String, List<InvAccountProfit>> collect = invAccountProfit.stream().collect(
-                    Collectors.groupingBy(
-                            InvAccountProfit::getProfitEng
-                    ));
-
-            for (Map.Entry<String, Object> entry : excel.getOutProfit().entrySet()) {
+            // 处理输出利润
+            for (Map.Entry<String, Object> outEntry : excel.getOutProfit().entrySet()) {
                 try {
-                    double value = Double.parseDouble(entry.getValue().toString());
+                    double value = Double.parseDouble(outEntry.getValue().toString());
                     if (value != 0) {
-                        stringBuffer.append(collect.get(entry.getKey()).get(0).getProfitName()).append("    ").append(value);
+                        plateStr.append(collect.get(outEntry.getKey()).get(0).getProfitName()).append("    ").append(value);
                     }
                 } catch (NumberFormatException e) {
-                    // 处理转换异常
                     e.printStackTrace();
                 }
             }
 
-            stringBuffer.append("→");
+            plateStr.append("→");
 
-            for (Map.Entry<String, Object> entry : excel.getEntProfit().entrySet()) {
+            // 处理进入利润
+            for (Map.Entry<String, Object> entEntry : excel.getEntProfit().entrySet()) {
                 try {
-                    double value = Double.parseDouble(entry.getValue().toString());
+                    double value = Double.parseDouble(entEntry.getValue().toString());
                     if (value != 0) {
-                        stringBuffer.append(collect.get(entry.getKey()).get(0).getProfitName()).append("    ").append(value);
+                        plateStr.append(collect.get(entEntry.getKey()).get(0).getProfitName()).append("    ").append(value);
                     }
                 } catch (NumberFormatException e) {
-                    // 处理转换异常
                     e.printStackTrace();
                 }
             }
 
-            excel.setPlate(stringBuffer.toString());
-
-
-            excel.setPayMethod(a.toString());
-            // 生成工作簿对象
-            ExcelWriterBuilder workBookWriter = EasyExcel.write(fileName, InvAccountExcel.class)
-                    .withTemplate(byteArrayInputStream);
-
-            workBookWriter.sheet().doFill(excel);
-            excel.setUplodePath(file);
-            excel.setPayMethod(payMethod);
-            list.add(excel);
-            byteArrayInputStream.close();
-
+            excel.setPlate(plateStr.toString());
+
+            // 准备占位符
+            placeholders.put("company" + i, excel.getCompany());
+            placeholders.put("excelAccountOperateId" + i, String.valueOf(excel.getExcelAccountOperateId()));
+            placeholders.put("applicant" + i, excel.getApplicant());
+            placeholders.put("applySector" + i, excel.getApplySector());
+            placeholders.put("excelApplyTime" + i, excel.getExcelApplyTime());
+            placeholders.put("collectionMessage" + i, excel.getCollectionMessage());
+            placeholders.put("fundFlow" + i, excel.getFundFlow());
+            placeholders.put("plate" + i, excel.getPlate());
+            placeholders.put("fundUse" + i, excel.getFundUse());
+            placeholders.put("remark" + i, excel.getRemark());
+            placeholders.put("applyAmount" + i, String.valueOf(excel.getApplyAmount()));
+            placeholders.put("bigApplyAmount" + i, excel.getBigApplyAmount());
+            placeholders.put("payMethod" + i, excel.getPayMethod());
+
+            // 设置上传路径和支付方式等信息
+            excel.setUplodePath(fileName);
+            excel.setPayMethod(payMethod); // 保持原始支付方式不变
+
+            // 添加到已更新的列表中
+            updatedList.add(excel);
         }
 
-        insAccountExcelService.updateBatchById(list);
+        // 从bytes数组创建新的输入流
+        ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
+        EasyExcel.write(filePath).withTemplate(byteArrayInputStream).sheet().doFill(placeholders);
 
-        File[] srcFiles = new File[list.size()];
-        for (int i = 0; i < list.size(); i++) {
-            srcFiles[i] = new File(uploadFilePath + list.get(i).getUplodePath());
-        }
-        String a = LocalDate.now() + ".zip";
-        File zipFile = new File(uploadFilePath + a);
-        // 调用压缩方法
-        zipFiles(srcFiles, zipFile);
+        // 更新数据库中的记录
+        insAccountExcelService.updateBatchById(updatedList);
 
-        return a;
+        return fileName;
     }
 
 

+ 1 - 0
src/main/java/com/ydtech/modules/inv/utils/TransferUtils.java

@@ -87,6 +87,7 @@ public class TransferUtils {
         BaseController baseController = new BaseController();
         InvAccountOperate operate = operate(insAccountExcel, insAccountOperate);
         operate.setRevenueOutlay("1");
+        operate.setApplyAmount(insAccountExcel.getPayoutAmount());
         operate.setOutProfit(insAccountExcel.getOutProfit());
         operate.setCreateTime(LocalDateTime.now().toString());
         operate.setCreateBy(baseController.getUserName());

+ 55 - 0
src/main/java/com/ydtech/modules/order/constants/OrderFeeAuditHistroy.java

@@ -0,0 +1,55 @@
+package com.ydtech.modules.order.constants;
+
+public enum OrderFeeAuditHistroy {
+    OFH_0("0", "报价中"),
+    OFH_1("1", "待核保"),
+    OFH_2("2", "已核保代缴费"),
+    OFH_3("3", "已承保"),
+    OFH_4("4", "核保退回"),
+    OFH_5("5", "未审核"),
+    OFH_6("6", "已审核"),
+    OFH_7("7", "驳回"),
+    OFH_8("8", "电销未提交"),
+    OFH_9("9", "电销待提交");
+
+    private final String code;
+    private final String desc;
+
+    OrderFeeAuditHistroy(String code, String desc) {
+        this.code = code;
+        this.desc = desc;
+    }
+
+    public String getCode() {
+        return code;
+    }
+
+    public String getDesc(){
+        return desc;
+    }
+
+    public static String getDesc(String code){
+        for( OrderFeeAuditHistroy audit : OrderFeeAuditHistroy.values()){
+            if(audit.getCode().equals(code)){
+                return audit.getDesc();
+            }
+        }
+        return "";
+    }
+
+    public static String convertStatus(String auditStatus){
+        if(auditStatus.equals("0")){
+            return OFH_5.getCode();
+        }else if(auditStatus.equals("1")){
+            return OFH_6.getCode();
+        }else if(auditStatus.equals("2")){
+            return OFH_7.getCode();
+        }else if(auditStatus.equals("4")){
+            return OFH_5.getCode();
+        }else if(auditStatus.equals("5")){
+            return OFH_6.getCode();
+        }
+        return "";
+    }
+
+}

+ 6 - 0
src/main/java/com/ydtech/modules/order/dao/InsAreaCompanyMapper.java

@@ -308,6 +308,12 @@ public interface InsAreaCompanyMapper extends BaseMapper<InsAreaCompany> {
      * @return
      */
     OrdersDataDto getSumBigOrderCount(@Param("vo") OrdersDataDto ordersDataDto);
+    /**
+     *  大订单导出查询
+     * @param ordersDataDto
+     * @return
+     */
+    List<OrdersDataExcel> querOrdersDataListExcel( @Param("vo") OrdersDataVo ordersDataVo);
 }
 
 

+ 16 - 0
src/main/java/com/ydtech/modules/order/entity/InsOrders.java

@@ -322,6 +322,22 @@ public class InsOrders implements Serializable {
     @TableField(exist = false)
     private String leaderName;
 
+    @ApiModelProperty("业务描述")
+    @TableField(exist = false)
+    private String businessDescription;
+
+    @ApiModelProperty("工号描述")
+    @TableField(exist = false)
+    private String jobDescription;
+
+    @ApiModelProperty("协议名称")
+    @TableField(exist = false)
+    private String agreementTitle;
+
+    @ApiModelProperty("对接人")
+    @TableField(exist = false)
+    private String dockingPerson;
+
 
     public InsOrders(SysUser user, SysDept dept, BaseQuoteInfoVo quoteInfoVo) {
         // 2. 组装订单

+ 17 - 8
src/main/java/com/ydtech/modules/order/entity/api/zijin/request/CalculatePremiumRequest.java

@@ -5,6 +5,7 @@ import cn.hutool.core.util.IdcardUtil;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.ydtech.constants.enums.InsurKind;
 import com.ydtech.constants.enums.InsuranceRisk;
+import com.ydtech.constants.enums.dict.insurance.EnergyType;
 import com.ydtech.constants.enums.dict.insurance.VehicleType;
 import com.ydtech.modules.ins.model.vo.CarInfoVo;
 import com.ydtech.modules.ins.model.vo.CustomerInfoVo;
@@ -932,17 +933,25 @@ public class CalculatePremiumRequest implements Serializable {
             this.isInvokeJingYou = "1";
 
             //纯电动 燃料电池 插电式混合动力 归属为新能源产品
-            if ("D6,D8,D12,".contains(vehicleModelInfosDTO.getPowerTypeCode() + ",")) {
+            if (EnergyType.isNewEnergy(carInfo.getEnergyType())) {
                 this.newEnergyFlag = "1";
                 this.pureRange = "";
-                if ("D6".equals(vehicleModelInfosDTO.getPowerTypeCode())) {
-                    this.fuelType = "1";
-                } else if ("D8".equals(vehicleModelInfosDTO.getPowerTypeCode())) {
-                    this.fuelType = "2";
-                } else {
-                    this.fuelType = "3";
-                }
+                this.fuelType = carInfo.getEnergyType();
+            }else{
+                this.newEnergyFlag = "0";
+                this.pureRange = "";
             }
+//            if ("D6,D8,D12,".contains(vehicleModelInfosDTO.getPowerTypeCode() + ",")) {
+//                this.newEnergyFlag = "1";
+//                this.pureRange = "";
+//                if ("D6".equals(vehicleModelInfosDTO.getPowerTypeCode())) {
+//                    this.fuelType = "1";
+//                } else if ("D8".equals(vehicleModelInfosDTO.getPowerTypeCode())) {
+//                    this.fuelType = "2";
+//                } else {
+//                    this.fuelType = "3";
+//                }
+//            }
         }
 
         public String getCarKindDetailId(int seatCount) {

+ 155 - 0
src/main/resources/mapper/modules/admin/CompanyDataReport.xml

@@ -0,0 +1,155 @@
+<?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.admin.dao.CompanyDataReportMapper">
+
+    <select id="querOrders" resultType="com.ydtech.modules.admin.model.report.company.OrdersDataDto">
+        SELECT
+        count( 0 ) AS "orderNumber",
+        b.licenseno as "licenseno",
+        b.frameno as "frameno"
+        FROM
+        (
+        SELECT
+        io.orderstatus AS orderstatus,
+        io.frameno AS frameno,
+        ifnull(io.licenseno, '') AS licenseno
+        FROM
+        ins_orders io
+        LEFT JOIN sys_user su on io.userid=su.id
+        <where>
+            1=1
+            <if test="vo.beginDate  != null  and  vo.beginDate!=''  and vo.endDate  != null  and  vo.endDate!=''">
+                AND io.createtime BETWEEN #{vo.beginDate} AND #{vo.endDate}
+            </if>
+
+            <if test="vo.licenseno  != null  and  vo.licenseno!=''  ">
+                AND io.licenseno =#{vo.licenseno}
+            </if>
+
+            <if test="vo.userId  != null  and  vo.userId!=''  ">
+                AND io.userid =#{vo.userId}
+            </if>
+
+            <if test="vo.userName  != null  and  vo.userName!=''  ">
+                AND su.name =#{vo.userName}
+            </if>
+
+            <if test="vo.mobile  != null  and  vo.mobile!=''  ">
+                AND su.mobile =#{vo.mobile}
+            </if>
+
+            <if test="vo.frameno  != null  and  vo.frameno!=''  ">
+                AND io.frameno =#{vo.frameno}
+            </if>
+            <if test="vo.deptId  != null  and  vo.deptId!=''  ">
+                and io.deptid like concat('%', #{vo.deptId}, '%')
+            </if>
+        </where>
+        ) b
+        GROUP BY
+        b.licenseno,
+        b.frameno
+    </select>
+
+    <select id="querOrdersTotal" resultType="com.ydtech.modules.admin.model.report.company.OrdersDataDto">
+        select sum(a.orderNumber) as "orderNumber",
+        count(a.frameno) as "frameno"
+        from (
+        SELECT
+        count( 0 ) AS "orderNumber",
+        b.licenseno as "licenseno",
+        b.frameno as "frameno"
+        FROM
+        (
+        SELECT
+        io.orderstatus AS orderstatus,
+        io.frameno AS frameno,
+        ifnull(io.licenseno, '') AS licenseno
+        FROM
+        ins_orders io
+        LEFT JOIN sys_user su on io.userid=su.id
+        <where>
+            1=1
+            <if test="vo.beginDate  != null  and  vo.beginDate!=''  and vo.endDate  != null  and  vo.endDate!=''">
+                AND io.createtime BETWEEN #{vo.beginDate} AND #{vo.endDate}
+            </if>
+
+            <if test="vo.year  != null  and  vo.year!='' ">
+                AND DATE_FORMAT( io.createtime, '%Y') =#{vo.year}
+            </if>
+
+            <if test="vo.licenseno  != null  and  vo.licenseno!=''  ">
+                AND io.licenseno =#{vo.licenseno}
+            </if>
+
+            <if test="vo.userId  != null  and  vo.userId!=''  ">
+                AND io.userid =#{vo.userId}
+            </if>
+
+            <if test="vo.userName  != null  and  vo.userName!=''  ">
+                AND su.name =#{vo.userName}
+            </if>
+
+            <if test="vo.mobile  != null  and  vo.mobile!=''  ">
+                AND su.mobile =#{vo.mobile}
+            </if>
+
+            <if test="vo.frameno  != null  and  vo.frameno!=''  ">
+                AND io.frameno =#{vo.frameno}
+            </if>
+            <if test="vo.deptId  != null  and  vo.deptId!=''  ">
+                and io.deptid like concat('%', #{vo.deptId}, '%')
+            </if>
+        </where>
+        ) b
+        GROUP BY
+        b.licenseno,
+        b.frameno ) a
+
+    </select>
+    <select id="smallQuerOrders" resultType="com.ydtech.modules.admin.model.report.company.OrdersDataDto">
+        select count(0) as "orderNumber"
+        from ins_area_company iac
+        left join ins_orders io on io.orderno = iac.orderno
+        LEFT JOIN sys_user su on io.userid=su.id
+            <where>
+                io.orderstatus = '3'
+                and iac.orderstatus = '3'
+                and io.licenseno is not null
+                <if test="vo.beginDate  != null  and  vo.beginDate!=''  and vo.endDate  != null  and  vo.endDate!=''">
+                    AND io.createtime BETWEEN #{vo.beginDate} AND #{vo.endDate}
+                </if>
+
+                <if test="vo.licenseno  != null  and  vo.licenseno!=''  ">
+                    AND io.licenseno =#{vo.licenseno}
+                </if>
+
+                <if test="vo.userId  != null  and  vo.userId!=''  ">
+                    AND io.userid =#{vo.userId}
+                </if>
+
+                <if test="vo.userName  != null  and  vo.userName!=''  ">
+                    AND su.name =#{vo.userName}
+                </if>
+
+                <if test="vo.mobile  != null  and  vo.mobile!=''  ">
+                    AND su.mobile =#{vo.mobile}
+                </if>
+
+                <if test="vo.frameno  != null  and  vo.frameno!=''  ">
+                    AND io.frameno =#{vo.frameno}
+                </if>
+                <if test="vo.deptId  != null  and  vo.deptId!=''  ">
+                    and io.deptid like concat('%', #{vo.deptId}, '%')
+                </if>
+                <if test="vo.year  != null  and  vo.year!='' ">
+                    AND DATE_FORMAT( io.createtime, '%Y') =#{vo.year}
+                </if>
+            </where>
+
+    </select>
+
+
+</mapper>

+ 1 - 2
src/main/resources/mapper/modules/admin/KhglZgdDataMapper.xml

@@ -28,8 +28,7 @@
 
     <select id="findByUserId" resultType="com.ydtech.modules.admin.model.dto.KhglDataDto">
         SELECT
-            SUM( CASE WHEN wc.customer_type = 1 THEN 1 ELSE 0 END ) AS wxCount,
-            SUM( CASE WHEN wc.customer_type = 2 THEN 1 ELSE 0 END ) AS qywxCount
+            ifNULL(count(0),0) AS wxCount
         FROM
             we_customer wc
                 LEFT JOIN sys_user su ON wc.add_user_id = su.we_user_id

+ 1 - 1
src/main/resources/mapper/modules/admin/KhglZzbDataMapper.xml

@@ -27,7 +27,7 @@
 
     <select id="findByUserId" resultType="com.ydtech.modules.admin.model.dto.KhglDataDto">
         SELECT
-           ifNULL(count(0),0) AS qywxCount
+           ifNULL(count(0),0) AS wxCount
         FROM
             we_customer wc
                 LEFT JOIN sys_user su ON wc.add_user_id = su.we_user_id

+ 17 - 0
src/main/resources/mapper/modules/admin/SysAgencyLeaderMapper.xml

@@ -90,5 +90,22 @@
 
     </select>
 
+    <select id="getAreaCompanyByUserId" resultType="java.util.HashMap">
+        SELECT
+        sum(IFNULL(jqpremium,0) + IFNULL(sypremium,0) + IFNULL(jypremium,0))  as bigDecimal,
+        count(id) as issueNum
+        FROM
+        ins_area_company
+        <where>
+            orderstatus ='3'
+            <if test="orderNoList.size>0">
+                and  orderno in
+                <foreach collection="orderNoList" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+        </where>
+    </select>
+
 </mapper>
 

+ 9 - 1
src/main/resources/mapper/modules/admin/SysAmountAuditingMapper.xml

@@ -133,7 +133,8 @@
         a.bank_card_num  as "bankCardNum",
         a.bank_name  as "bankName",
         a.bank_num  as "bankNum",
-        a.account_id as "accountId"
+        a.account_id as "accountId",
+        sd.management_source  AS source
         from sys_amount_auditing a
         left join sys_user_account_history b on a.id = b.auditiing_id
         left join sys_user su on su.id =a.user_id
@@ -173,6 +174,9 @@
             <if test="leaderId !=null  and leaderId != ''">
                 and su.leader_id=#{leaderId}
             </if>
+            <if test="source !=null  and source != ''">
+                and sd.management_source=#{source}
+            </if>
         </where>
         order by a.create_time desc
     </select>
@@ -267,6 +271,7 @@
         from sys_amount_auditing a
         left join sys_user_account_history b on a.id = b.auditiing_id
         left join sys_user su on su.id =a.user_id
+        left join sys_dept sd on sd.id =su.dept_id
         <where>
             <if test="vo.auditingStatus !=null  and vo.auditingStatus != ''">
                 a.auditing_status=#{vo.auditingStatus}
@@ -298,6 +303,9 @@
             <if test="vo.leaderId !=null  and vo.leaderId != ''">
                 and su.leader_id = #{vo.leaderId}
             </if>
+            <if test="vo.source !=null  and vo.source != ''">
+                and sd.management_source=#{source}
+            </if>
         </where>
     </select>
 </mapper>

+ 0 - 1
src/main/resources/mapper/modules/admin/SysDeptInternalAgentMapper.xml

@@ -46,7 +46,6 @@
         LEFT JOIN sys_dept_internal_agent t4 ON t4.parent_id = t3.id
         LEFT JOIN  sys_dept  dept  on t3.bind_dept_id = dept.id
         <where>
-            t3.bind_dept_id  is not null
             <if test="comtype != null and comtype != ''">
                 AND t4.comtype = #{comtype}
             </if>

+ 15 - 12
src/main/resources/mapper/modules/admin/SysTelemarketingWechatDataMapper.xml

@@ -28,20 +28,21 @@
             t5.id AS groupId,
             zgd.zgd_user_id AS zgdUserId,
             zzb.zzb_user_id AS zzdUserId,
-            dx.dial_username AS dxUserId
+            dx.dx_user_id AS dxUserId
         FROM
             sys_user t1
         LEFT JOIN sys_dept t2 ON t1.dept_id = t2.id
-        LEFT JOIN sys_user_is_dial dx ON t1.id = dx.user_id
+        LEFT JOIN sys_user_link_dx_user_id dx ON t1.id = dx.user_id
         LEFT JOIN sys_user_link_dept_internal_agent t4 ON t4.user_id = t1.id
-        LEFT JOIN sys_user_link_zgd_user_id zgd ON t2.id = zgd.user_id
-        LEFT JOIN sys_user_link_zzb_user_id zzb ON t2.id = zzb.user_id
+        LEFT JOIN sys_user_link_zgd_user_id zgd ON t1.id = zgd.user_id
+        LEFT JOIN sys_user_link_zzb_user_id zzb ON t1.id = zzb.user_id
         LEFT JOIN
         (select t3.bind_dept_id,t4.id,t4.name from  sys_dept_internal_agent t3   left join sys_dept_internal_agent t4  on t4.parent_id =t3.id ) t5
-        ON t2.parent_id = t5.bind_dept_id
+        ON t2.id = t5.bind_dept_id
         WHERE
          t1.`status` = 1
-          and  t2.management_source = 3
+        AND t1.dept_id= '9914D13'
+        AND ( t1.id != '9914D1305' and t1.id != '9914D1316' )
         <if test='vo !=null  '>
             <if test='vo.userName !=null and vo.userName!="" '>
                 and t1.name like CONCAT('%', #{vo.userName}, '%')
@@ -105,19 +106,21 @@
             t5.id AS groupId,
             zgd.zgd_user_id AS zgdUserId,
             zzb.zzb_user_id AS zzdUserId,
-            dx.dial_username AS dxUserId
+            dx.dx_user_id AS dxUserId
         FROM
             sys_user t1
                 LEFT JOIN sys_dept t2 ON t1.dept_id = t2.id
-                LEFT JOIN sys_user_is_dial dx ON t1.id = dx.user_id
+                LEFT JOIN sys_user_link_dx_user_id dx ON t1.id = dx.user_id
                 LEFT JOIN sys_user_link_dept_internal_agent t4 ON t4.user_id = t1.id
-                LEFT JOIN sys_user_link_zgd_user_id zgd ON t2.id = zgd.user_id
-                LEFT JOIN sys_user_link_zzb_user_id zzb ON t2.id = zzb.user_id
+                LEFT JOIN sys_user_link_zgd_user_id zgd ON t1.id = zgd.user_id
+                LEFT JOIN sys_user_link_zzb_user_id zzb ON t1.id = zzb.user_id
                 LEFT JOIN
             (select t3.bind_dept_id,t4.id,t4.name from  sys_dept_internal_agent t3   left join sys_dept_internal_agent t4  on t4.parent_id =t3.id ) t5
-            ON t2.parent_id = t5.bind_dept_id
-         WHERE
+            ON t2.id = t5.bind_dept_id
+        WHERE
             t1.`status` = 1
+           AND t1.dept_id= '9914D13'
+           AND ( t1.id != '9914D1305' and t1.id != '9914D1316' )
            and t1.id = #{userId}
     </select>
 </mapper>

+ 2 - 1
src/main/resources/mapper/modules/admin/SysUserLinkDxUserIdMapper.xml

@@ -30,7 +30,8 @@
                 LEFT JOIN sys_user_link_dx_user_id  dx ON dx.user_id = su.id
         <where>
             su.`status`=1
-            and  dept.management_source = 3
+            AND su.dept_id= '9914D13'
+            AND ( su.id != '9914D1305' and su.id != '9914D1316' )
             <if test="vo.userName != null and vo.userName != ''">
                 AND su.NAME like CONCAT('%', #{vo.userName}, '%')
             </if>

+ 2 - 1
src/main/resources/mapper/modules/admin/SysUserLinkZgdUserIdMapper.xml

@@ -30,7 +30,8 @@
                 LEFT JOIN sys_user_link_zgd_user_id  zgd ON zgd.user_id = su.id
         <where>
             su.`status`=1
-            and  dept.management_source = 3
+            AND su.dept_id= '9914D13'
+            AND ( su.id != '9914D1305' and su.id != '9914D1316' )
             <if test="vo.userName != null and vo.userName != ''">
                 AND su.NAME like CONCAT('%', #{vo.userName}, '%')
             </if>

+ 2 - 1
src/main/resources/mapper/modules/admin/SysUserLinkZzbUserIdMapper.xml

@@ -30,7 +30,8 @@
         LEFT JOIN sys_user_link_zzb_user_id  zzb ON zzb.user_id = su.id
         <where>
             su.`status`=1
-            and  dept.management_source = 3
+            AND su.dept_id= '9914D13'
+            AND ( su.id != '9914D1305' and su.id != '9914D1316' )
             <if test="vo.userName != null and vo.userName != ''">
                 AND su.NAME like CONCAT('%', #{vo.userName}, '%')
             </if>

+ 2 - 2
src/main/resources/mapper/modules/admin/TaskStatisticsMapper.xml

@@ -108,6 +108,7 @@
                  left join sys_dept sd on sd.id =su.dept_id
         <where>
             iac.orderstatus = '3'
+            and io.orderstatus = '3'
             <if test="vo.createtimeStart  != null  and  vo.createtimeStart!=''  and vo.createtimeEnd  != null  and  vo.createtimeEnd!=''">
                 AND DATE_FORMAT( iac.createtime, '%Y-%m-%d') BETWEEN DATE_FORMAT( #{vo.createtimeStart}, '%Y-%m-%d') AND
                 DATE_FORMAT( #{vo.createtimeEnd}, '%Y-%m-%d')
@@ -148,13 +149,12 @@
                  left join sys_user su on io.userid =su.id
                  left join sys_dept sd on sd.id =su.dept_id
         <where>
-            iac.orderstatus = '3'
+             1=1
             <if test="vo.createtimeStart  != null  and  vo.createtimeStart!=''  and vo.createtimeEnd  != null  and  vo.createtimeEnd!=''">
                 AND DATE_FORMAT( iac.createtime, '%Y-%m-%d') BETWEEN DATE_FORMAT( #{vo.createtimeStart}, '%Y-%m-%d') AND
                 DATE_FORMAT( #{vo.createtimeEnd}, '%Y-%m-%d')
             </if>
 
-
             <if test="vo.userName !=null  and vo.userName!=''">
                 and su.name=#{vo.userName}
             </if>

+ 1 - 1
src/main/resources/mapper/modules/inv/InvAccountExcelMapper.xml

@@ -178,7 +178,7 @@
             and a.apply_amount = #{inAccountOperateVo.applyAmount}
         </if>
         <if test="inAccountOperateVo.label!= null and inAccountOperateVo.label!= ''">
-            and c.label = #{inAccountOperateVo.label}
+            and c.label like concat('%',#{inAccountOperateVo.label},'%')
         </if>
         order by a.create_time desc
     </select>

+ 113 - 28
src/main/resources/mapper/modules/order/InsAreaCompanyMapper.xml

@@ -179,6 +179,10 @@
         iac.pay_date as payDate,
         pa.agreement_code as agreementCode,
         pa.agreement_name as agreementName,
+        pa.business_description as businessDescription,
+        pa.job_description as jobDescription,
+        pa.agreement_title as agreementTitle,
+        pa.docking_person as dockingPerson,
         io.entry_status
         FROM
         ins_fee_audit ifa
@@ -1749,12 +1753,16 @@
         SELECT
         count( 0 ) AS "orderNumber",
         b.licenseno as "licenseno",
-        b.frameno as "frameno"
+        b.frameno as "frameno",
+        b.modelCode as "modelCode",
+        b.modelcname as "modelcname"
         FROM
         (
         SELECT
         io.orderstatus AS orderstatus,
         io.frameno AS frameno,
+        REPLACE(JSON_EXTRACT(io.carinfo, '$.engineNo'), '"', '') as "modelCode",
+        REPLACE(JSON_EXTRACT(io.carinfo, '$.modelcname'), '"', '') as "modelcname",
         ifnull(io.licenseno, '') AS licenseno
         FROM
         ins_orders io
@@ -1787,11 +1795,16 @@
             <if test="vo.deptId  != null  and  vo.deptId!=''  ">
                 and io.deptid like concat('%', #{vo.deptId}, '%')
             </if>
+            <if test="vo.year  != null  and  vo.year!='' ">
+                AND DATE_FORMAT( io.createtime, '%Y') =#{vo.year}
+            </if>
         </where>
         ) b
         GROUP  BY
         b.licenseno,
-        b.frameno
+        b.frameno,
+        b.modelCode,
+        b.modelcname
     </select>
 
     <select id="getOrdersGroupByLicenseno"  resultType="com.ydtech.modules.admin.model.report.company.OrdersDataDto">
@@ -1838,38 +1851,22 @@
     </select>
 
     <select id="querOrdersamountTo" resultType="com.ydtech.modules.admin.model.report.company.OrdersDataDto">
-       select sum(a.orderNumber)   as "orderNumber",
-              sum(a.orderStatus3) / sum(a.orderNumber)  AS "closeRate",
-              count(a.frameno) as "frameno"
-       from  (
+        select sum(a.orderNumber)  as "orderNumber",
+               count(a.licenseno) as "b.frameno"
+        from (
         SELECT
         count( 0 ) AS "orderNumber",
-        SUM( CASE WHEN orderstatus = '3' THEN 1 ELSE 0 END )   AS "orderStatus3",
+        b.licenseno as "licenseno",
         b.frameno as "frameno"
         FROM
         (
         SELECT
         io.orderstatus AS orderstatus,
-        ifnull(io.licenseno, '') AS licenseno,
         io.frameno AS frameno,
-        ifnull(
-        (
-        SELECT
-        ifnull( inscompany, '' )
-        FROM
-        ins_area_company
-        WHERE
-        orderno = io.orderno
-        AND io.orderstatus = 3
-        AND orderstatus = 3
-        ORDER BY
-        createtime DESC
-        LIMIT 1
-        ), ''
-        ) AS inscompany
+        ifnull(io.licenseno, '') AS licenseno
         FROM
         ins_orders io
-        LEFT JOIN sys_user  su  on io.userid=su.id
+        LEFT JOIN sys_user su on io.userid=su.id
         <where>
             1=1
             <if test="vo.beginDate  != null  and  vo.beginDate!=''  and vo.endDate  != null  and  vo.endDate!=''">
@@ -1900,11 +1897,9 @@
             </if>
         </where>
         ) b
-        GROUP  BY
-        b.frameno,
+        GROUP BY
         b.licenseno,
-        b.inscompany,
-        b.orderstatus
+        b.frameno
         ) a
     </select>
 
@@ -2138,6 +2133,9 @@
             <if test="vo.beginDate  != null  and  vo.beginDate!=''  and vo.endDate  != null  and  vo.endDate!=''">
                 AND io.createtime BETWEEN #{vo.beginDate} AND #{vo.endDate}
             </if>
+            <if test="vo.year  != null  and  vo.year!='' ">
+                AND DATE_FORMAT( io.createtime, '%Y') =#{vo.year}
+            </if>
         </where>
     </select>
     <select id="queryAgencyUserInsAreaPage" resultType="com.ydtech.modules.admin.model.vo.AgencyUserInsAreaVo">
@@ -2171,6 +2169,93 @@
 
     </select>
 
+    <select id="querOrdersDataListExcel" resultType="com.ydtech.modules.admin.model.dto.OrdersDataExcel">
+       select a.*,
+       IFNULL(b.orderNumber,0)/IFNULL(a.orderNumber  ,0)
+       from (
+        SELECT
+        count( 0 ) AS "orderNumber",
+        b.licenseno as "licenseno",
+        b.modelCode as "modelCode",
+        b.modelcname as "modelcname",
+        b.frameno as "frameno"
+        FROM
+        (
+        SELECT
+        io.orderstatus AS orderstatus,
+        io.frameno AS frameno,
+        REPLACE(JSON_EXTRACT(io.carinfo, '$.engineNo'), '"', '') as "modelCode",
+        REPLACE(JSON_EXTRACT(io.carinfo, '$.modelcname'), '"', '') as "modelcname",
+        ifnull(io.licenseno, '') AS licenseno
+        FROM
+        ins_orders io
+        LEFT JOIN sys_user  su  on io.userid=su.id
+        <where>
+            1=1
+            <if test="vo.beginDate  != null  and  vo.beginDate!=''  and vo.endDate  != null  and  vo.endDate!=''">
+                AND io.createtime BETWEEN #{vo.beginDate} AND #{vo.endDate}
+            </if>
+
+            <if test="vo.licenseno  != null  and  vo.licenseno!=''  ">
+                AND io.licenseno =#{vo.licenseno}
+            </if>
+
+            <if test="vo.userId  != null  and  vo.userId!=''  ">
+                AND io.userid =#{vo.userId}
+            </if>
+
+            <if test="vo.userName  != null  and  vo.userName!=''  ">
+                AND su.name =#{vo.userName}
+            </if>
+
+            <if test="vo.mobile  != null  and  vo.mobile!=''  ">
+                AND su.mobile =#{vo.mobile}
+            </if>
+
+            <if test="vo.frameno  != null  and  vo.frameno!=''  ">
+                AND io.frameno =#{vo.frameno}
+            </if>
+            <if test="vo.deptId  != null  and  vo.deptId!=''  ">
+                and io.deptid like concat('%', #{vo.deptId}, '%')
+            </if>
+            <if test="vo.year  != null  and  vo.year!='' ">
+                AND DATE_FORMAT( io.createtime, '%Y') =#{vo.year}
+            </if>
+        </where>
+        ) b
+        GROUP  BY
+        b.licenseno,
+        b.frameno,
+        b.modelCode,
+        b.modelcname
+                     ) a
+       left  join (
+        select count(0) as "orderNumber",
+        GROUP_CONCAT(inscompany ORDER BY inscompany SEPARATOR ',') as "namesimple",
+        io.licenseno as "licenseno"
+        from ins_area_company iac
+        left join ins_orders io on io.orderno = iac.orderno
+        <where>
+            1=1
+            and  iac.orderstatus ='3'
+            and io.orderstatus ='3'
+            <if test="vo.licenseno !=null  and vo.licenseno!=''">
+                AND io.licenseno =#{vo.licenseno}
+            </if>
+            <if test="vo.frameno !=null  and vo.frameno!=''">
+                AND io.frameno =#{vo.frameno}
+            </if>
+            <if test="vo.beginDate  != null  and  vo.beginDate!=''  and vo.endDate  != null  and  vo.endDate!=''">
+                AND io.createtime BETWEEN #{vo.beginDate} AND #{vo.endDate}
+            </if>
+            <if test="vo.year  != null  and  vo.year!='' ">
+                AND DATE_FORMAT( io.createtime, '%Y') =#{vo.year}
+            </if>
+        </where>
+        group  by
+        io.licenseno
+        )  b  on b.licenseno  =a.licenseno
+    </select>
 
 
 </mapper>

+ 6 - 0
src/main/resources/mapper/modules/order/InsOrdersMapper.xml

@@ -1040,6 +1040,9 @@
                     and dept.management_source=2
                 </when>
             </choose>
+            <if test="orderQueryVo.signStartDateStr != null and orderQueryVo.signEndDateStr != null">
+                and  DATE_FORMAT(iac.signing_time, '%Y-%m-%d') between #{orderQueryVo.signStartDateStr} AND #{orderQueryVo.signEndDateStr}
+            </if>
         </where>
         order by io.createtime desc
     </select>
@@ -1175,6 +1178,9 @@
                     and dept.management_source=2
                 </when>
             </choose>
+            <if test="orderQueryVo.signStartDateStr != null and orderQueryVo.signEndDateStr != null">
+                and  DATE_FORMAT(iac.signing_time, '%Y-%m-%d') between #{orderQueryVo.signStartDateStr} AND #{orderQueryVo.signEndDateStr}
+            </if>
         </where>
         ) as s
     </select>

BIN
src/main/resources/template/资金申请单模板.xlsx