Răsfoiți Sursa

1. 結算需求 5.0 提现优化

wuhp 2 ani în urmă
părinte
comite
22847a6b39
18 a modificat fișierele cu 243 adăugiri și 43 ștergeri
  1. 1 2
      src/main/java/com/ydtech/modules/admin/controller/SysAmountAuditingController.java
  2. 4 0
      src/main/java/com/ydtech/modules/admin/dao/SysAmountAuditingMapper.java
  3. 4 2
      src/main/java/com/ydtech/modules/admin/model/vo/SysAmountAuditingVo.java
  4. 2 1
      src/main/java/com/ydtech/modules/admin/service/SysAmountAuditingService.java
  5. 36 6
      src/main/java/com/ydtech/modules/admin/service/impl/SysAmountAuditingServiceImpl.java
  6. 2 2
      src/main/java/com/ydtech/modules/fnc/controller/InsPlyIncomeController.java
  7. 8 6
      src/main/java/com/ydtech/modules/fnc/controller/SettlementDocumentaryFeesController.java
  8. 4 1
      src/main/java/com/ydtech/modules/fnc/dao/SettlementDocumentaryFeesMapper.java
  9. 5 0
      src/main/java/com/ydtech/modules/fnc/entity/SettlementDocumentaryLogEntity.java
  10. 1 1
      src/main/java/com/ydtech/modules/fnc/service/InsPlyIncomeService.java
  11. 4 2
      src/main/java/com/ydtech/modules/fnc/service/SettlementDocumentaryFeesService.java
  12. 22 6
      src/main/java/com/ydtech/modules/fnc/service/impl/InsPlyIncomeServiceImpl.java
  13. 72 12
      src/main/java/com/ydtech/modules/fnc/service/impl/SettlementDocumentaryFeesServiceImpl.java
  14. 4 0
      src/main/java/com/ydtech/modules/fnc/vo/InsPlyIncomeVo.java
  15. 49 0
      src/main/resources/mapper/modules/admin/SysAmountAuditingMapper.xml
  16. 9 1
      src/main/resources/mapper/modules/fnc/InsPlyIncomeMapper.xml
  17. 15 1
      src/main/resources/mapper/modules/fnc/SettlementDocumentaryFeesMapper.xml
  18. 1 0
      src/main/resources/mapper/modules/fnc/SettlementDocumentaryLogMapper.xml

+ 1 - 2
src/main/java/com/ydtech/modules/admin/controller/SysAmountAuditingController.java

@@ -26,8 +26,7 @@ public class SysAmountAuditingController extends BaseController {
     @PostMapping("/queryPage")
     @ApiOperation(value = "提现审核分页")
     public HttpResult<BasePageResult<SysAmountAuditingEntity>> queryPageOrder(@RequestBody @Valid SysAmountAuditingVo sysAmountAuditingVo) {
-        BasePageResult<SysAmountAuditingEntity> result = sysAmountAuditingService.queryByVo(sysAmountAuditingVo);
-        return HttpResult.ok("success", result);
+        return  sysAmountAuditingService.queryByVo(sysAmountAuditingVo);
     }
 
     @PutMapping("AmountReview")

+ 4 - 0
src/main/java/com/ydtech/modules/admin/dao/SysAmountAuditingMapper.java

@@ -7,10 +7,14 @@ import com.ydtech.modules.admin.model.vo.SysAmountAuditingVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.HashMap;
+import java.util.List;
+
 @Mapper
 public interface SysAmountAuditingMapper extends BaseMapper<SysAmountAuditingEntity> {
     SysAmountAuditingEntity getByUserId(String userId);
 
     Page<SysAmountAuditingEntity> queryPageOrder(@Param("sysAmountAuditingVo") SysAmountAuditingVo sysAmountAuditingVo, Page<SysAmountAuditingEntity> page);
 
+    List<SysAmountAuditingEntity> queryPageOrderNew(HashMap<String, Object> params);
 }

+ 4 - 2
src/main/java/com/ydtech/modules/admin/model/vo/SysAmountAuditingVo.java

@@ -12,6 +12,8 @@ import org.springframework.format.annotation.DateTimeFormat;
 import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
 import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
 import java.util.Date;
 
 @Data
@@ -77,11 +79,11 @@ public class SysAmountAuditingVo {
 
     @ApiModelProperty("开始时间")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
-    private Date startTime;
+    private LocalDate startTime;
 
     @ApiModelProperty("结束时间")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
-    private Date endTime;
+    private LocalDate endTime;
 
     @ApiModelProperty("审批时间")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")

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

@@ -1,6 +1,7 @@
 package com.ydtech.modules.admin.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.admin.model.po.SysAmountAuditingEntity;
 import com.ydtech.modules.admin.model.vo.SysAmountAuditingVo;
 import com.ydtech.modules.order.entity.BasePageResult;
@@ -10,7 +11,7 @@ public interface SysAmountAuditingService extends IService<SysAmountAuditingEnti
 
     SysAmountAuditingEntity getByUserId(String userId);
 
-    BasePageResult<SysAmountAuditingEntity> queryByVo(SysAmountAuditingVo sysAmountAuditingVo);
+    HttpResult<BasePageResult<SysAmountAuditingEntity>> queryByVo(SysAmountAuditingVo sysAmountAuditingVo);
 
     BasePageResult<SysAmountAuditingEntity> queryAppPage(SysAmountAuditingVo sysAmountAuditingVo);
 

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

@@ -3,6 +3,9 @@ package com.ydtech.modules.admin.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.admin.dao.SysAmountAuditingMapper;
 import com.ydtech.modules.admin.model.po.SysAmountAuditingEntity;
 import com.ydtech.modules.admin.model.po.SysUserAccount;
@@ -10,6 +13,7 @@ import com.ydtech.modules.admin.model.vo.SysAmountAuditingVo;
 import com.ydtech.modules.admin.service.SysAmountAuditingService;
 import com.ydtech.modules.admin.service.SysUserAccountService;
 import com.ydtech.modules.base.controller.BaseController;
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
 import com.ydtech.modules.order.entity.BasePageResult;
 import com.ydtech.utils.StringUtils;
 import org.apache.commons.lang3.ObjectUtils;
@@ -20,6 +24,8 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
 import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
 
 @Service
 public class SysAmountAuditingServiceImpl extends ServiceImpl<SysAmountAuditingMapper, SysAmountAuditingEntity> implements SysAmountAuditingService {
@@ -74,13 +80,37 @@ public class SysAmountAuditingServiceImpl extends ServiceImpl<SysAmountAuditingM
     }
 
     @Override
-    public BasePageResult<SysAmountAuditingEntity> queryByVo(SysAmountAuditingVo sysAmountAuditingVo) {
-        Page<SysAmountAuditingEntity> page = new Page<>(sysAmountAuditingVo.getPageNum(), sysAmountAuditingVo.getPageSize());
-        QueryWrapper<SysAmountAuditingEntity> wrapper = new QueryWrapper<>();
+    public HttpResult<BasePageResult<SysAmountAuditingEntity>> queryByVo(SysAmountAuditingVo sysAmountAuditingVo) {
+        try{
+            HashMap<String, Object> params = new HashMap<>();
+            PageInfo<List<InsPlyIncome>> pageHelper = null;
+            PageHelper.startPage(sysAmountAuditingVo.getPageNum(),sysAmountAuditingVo.getPageSize());
+            params.put("pageNum",sysAmountAuditingVo.getPageNum());
+            params.put("pageSize",sysAmountAuditingVo.getPageSize());
+            if(ObjectUtils.isNotEmpty(sysAmountAuditingVo.getStartTime())){
+                params.put("startDate",sysAmountAuditingVo.getStartTime().toString());
+            }
+            if(ObjectUtils.isNotEmpty(sysAmountAuditingVo.getEndTime())){
+                params.put("endDate",sysAmountAuditingVo.getEndTime().toString());
+            }
+            if(StringUtils.isNotEmpty(sysAmountAuditingVo.getAuditingStatus())){
+                params.put("auditingStatus",sysAmountAuditingVo.getAuditingStatus());
+            }
+            if(StringUtils.isNotEmpty(sysAmountAuditingVo.getId())){
+                params.put("id",sysAmountAuditingVo.getId());
+            }
 
-        Page<SysAmountAuditingEntity> sysUserAccountHistoryPage = baseMapper.queryPageOrder(sysAmountAuditingVo, page);
-        return new BasePageResult<>(sysAmountAuditingVo.getPageNum(), page.getSize(), sysUserAccountHistoryPage.getTotal(), page.getPages(),
-                sysUserAccountHistoryPage.getRecords());
+            if(StringUtils.isNotEmpty(sysAmountAuditingVo.getAmountStatus())){
+                params.put("amountStatus",sysAmountAuditingVo.getAmountStatus());
+            }
+            List<SysAmountAuditingEntity> list = baseMapper.queryPageOrderNew(params);
+            pageHelper=new PageInfo(list);
+            BasePageResult<SysAmountAuditingEntity> pageResult=new BasePageResult<SysAmountAuditingEntity>(sysAmountAuditingVo.getPageNum(), sysAmountAuditingVo.getPageSize(), pageHelper.getTotal(), pageHelper.getPages(), list);
+            return HttpResult.ok(pageResult);
+        }catch (Exception e){
+            e.printStackTrace();
+            return HttpResult.error("查询异常");
+        }
     }
 
     @Override

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

@@ -90,8 +90,8 @@ public class InsPlyIncomeController extends BaseController {
     @PutMapping("/batchBalance")
     @ApiModelProperty(value = "批量跟单费")
     public HttpResult<Object> batchBalance(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
-        insPlyIncomeService.batchBalance(insPlyIncomeVo);
-        return HttpResult.ok("批量跟单费结算成功");
+
+        return   insPlyIncomeService.batchBalance(insPlyIncomeVo);
     }
 
 

+ 8 - 6
src/main/java/com/ydtech/modules/fnc/controller/SettlementDocumentaryFeesController.java

@@ -10,10 +10,7 @@ import com.ydtech.modules.order.entity.BasePageResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
 
@@ -26,8 +23,8 @@ public class SettlementDocumentaryFeesController extends BaseController {
 
     @PostMapping("/query")
     @ApiOperation(value = "查询")
-    public BasePageResult<SettlementDocumentaryFeesEntity> query(@RequestBody @Valid SettlementDocumentaryFeesVo settlementDocumentaryFeesVo) {
-        BasePageResult<SettlementDocumentaryFeesEntity> result=settlementDocumentaryFeesService.querySettle(settlementDocumentaryFeesVo);
+    public HttpResult<BasePageResult<SettlementDocumentaryFeesEntity>>query(@RequestBody @Valid SettlementDocumentaryFeesVo settlementDocumentaryFeesVo) {
+        HttpResult<  BasePageResult<SettlementDocumentaryFeesEntity>> result=settlementDocumentaryFeesService.querySettle(settlementDocumentaryFeesVo);
         return result;
     }
 
@@ -36,5 +33,10 @@ public class SettlementDocumentaryFeesController extends BaseController {
     public void submit(@RequestBody SettlementDocumentaryFeesVo settlementDocumentaryFeesVo) {
        settlementDocumentaryFeesService.inertSettle(settlementDocumentaryFeesVo);
     }
+    @PutMapping("/documentarySettle")
+    @ApiOperation("跟单费结算")
+    public HttpResult documentarySettle (@RequestBody SettlementDocumentaryFeesVo settlementDocumentaryFeesVo){
+      return   settlementDocumentaryFeesService.documentarySettle(settlementDocumentaryFeesVo);
+    }
 
 }

+ 4 - 1
src/main/java/com/ydtech/modules/fnc/dao/SettlementDocumentaryFeesMapper.java

@@ -13,7 +13,10 @@ import java.util.List;
 @Mapper
 public interface SettlementDocumentaryFeesMapper  extends BaseMapper<SettlementDocumentaryFeesEntity> {
 
-    Page<SettlementDocumentaryFeesEntity> querySettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo, Page<SettlementDocumentaryFeesEntity> page);
+    List<SettlementDocumentaryFeesEntity> querySettle(HashMap<String, Object> params);
 
     List<SettlementDocumentaryFeesEntity> checkDate(HashMap<String, Object> params);
+
+    List<SettlementDocumentaryFeesEntity> selectAll(HashMap<String, Object> params);
+
 }

+ 5 - 0
src/main/java/com/ydtech/modules/fnc/entity/SettlementDocumentaryLogEntity.java

@@ -37,4 +37,9 @@ public class SettlementDocumentaryLogEntity implements Serializable {
     @ApiModelProperty("创建时间")
     @TableField("create_time")
     private Date createTime;
+
+    @ApiModelProperty("手续费结算金额")
+    @TableField("handing_amount")
+    private BigDecimal handingAmount;
+
 }

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

@@ -28,7 +28,7 @@ public interface InsPlyIncomeService extends IService<InsPlyIncome> {
 
     HttpResult<BasePageResult<InsPlyIncome>> totalQuery(InsPlyIncomeVo insPlyIncomeVo);
 
-    void batchBalance(InsPlyIncomeVo insPlyIncomeVo);
+    HttpResult batchBalance(InsPlyIncomeVo insPlyIncomeVo);
 
     HttpResult<BasePageResult<InsPlyIncome>> queryNew(InsPlyIncomeVo insPlyIncomeVo);
 }

+ 4 - 2
src/main/java/com/ydtech/modules/fnc/service/SettlementDocumentaryFeesService.java

@@ -9,10 +9,12 @@ import com.ydtech.modules.order.entity.BasePageResult;
 import java.util.HashMap;
 
 public interface SettlementDocumentaryFeesService extends IService<SettlementDocumentaryFeesEntity> {
-    BasePageResult<SettlementDocumentaryFeesEntity> querySettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo);
+    HttpResult<BasePageResult<SettlementDocumentaryFeesEntity>>  querySettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo);
 
-    void inertSettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo);
+    HttpResult inertSettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo);
 
     String checkDate(HashMap<String, Object> params);
 
+    HttpResult documentarySettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo);
+
 }

+ 22 - 6
src/main/java/com/ydtech/modules/fnc/service/impl/InsPlyIncomeServiceImpl.java

@@ -186,8 +186,20 @@ public class InsPlyIncomeServiceImpl extends ServiceImpl<InsPlyIncomeMapper, Ins
             PageHelper.startPage(insPlyIncomeVo.getPageNum(),insPlyIncomeVo.getPageSize());
             params.put("pageNum",insPlyIncomeVo.getPageNum());
             params.put("pageSize",insPlyIncomeVo.getPageSize());
-            params.put("startDate",insPlyIncomeVo.getStartDate().toString());
-            params.put("endDate",insPlyIncomeVo.getEndDate().toString());
+            if(ObjectUtils.isNotEmpty(insPlyIncomeVo.getStartDate())){
+                params.put("startDate",insPlyIncomeVo.getStartDate().toString());
+
+            }
+            if(ObjectUtils.isNotEmpty(insPlyIncomeVo.getEndDate())){
+                params.put("endDate",insPlyIncomeVo.getEndDate().toString());
+            }
+            if(StringUtils.isNotEmpty(insPlyIncomeVo.getOrderno())){
+                params.put("orderno",insPlyIncomeVo.getOrderno());
+            }
+            if(StringUtils.isNotEmpty(insPlyIncomeVo.getPolicyno())){
+                params.put("policyno",insPlyIncomeVo.getPolicyno());
+            }
+
             List<InsPlyIncome> list= this.baseMapper.queryNew(params);
             pageHelper=new PageInfo(list);
             BasePageResult<InsPlyIncome> pageResult=new BasePageResult<InsPlyIncome>(insPlyIncomeVo.getPageNum(), insPlyIncomeVo.getPageSize(), pageHelper.getTotal(), pageHelper.getPages(), list);
@@ -202,12 +214,17 @@ public class InsPlyIncomeServiceImpl extends ServiceImpl<InsPlyIncomeMapper, Ins
     @Transactional
     public void uodateBalance(InsPlyIncomeVo insPlyIncomeVo) {
         InsPlyIncome insPlyIncome = new InsPlyIncome();
+        insPlyIncomeVo.setHandlingFeesStatus("1");
         BeanUtils.copyProperties(insPlyIncomeVo, insPlyIncome);
         baseMapper.uopdateByOrderno(insPlyIncome);
 
 //        生成记录
         SettlementDocumentaryLogEntity settlementDocumentaryLogEntity = new SettlementDocumentaryLogEntity();
-        settlementDocumentaryLogEntity.setAmount(insPlyIncomeVo.getCommissionFeevalue());  // 手续费金额
+        if(StringUtils.isNotEmpty(insPlyIncomeVo.getAgreementType()) &&  "1".equals(insPlyIncomeVo.getAgreementType())){
+//         只有平台协议 才会跟单费一笔结算
+            settlementDocumentaryLogEntity.setAmount(insPlyIncomeVo.getOtherFeevalue());  // 跟单费金额
+        }
+        settlementDocumentaryLogEntity.setHandingAmount(insPlyIncomeVo.getCommissionFeevalue());  // 手续费金额
         settlementDocumentaryLogEntity.setSettlementDocumentaryId(insPlyIncomeVo.getOrderno()); // 关联id
         settlementDocumentaryLogEntity.setAmountType("1");  //手续费结算
         settlementDocumentaryLogEntity.setCreateTime(new Date());
@@ -248,7 +265,7 @@ public class InsPlyIncomeServiceImpl extends ServiceImpl<InsPlyIncomeMapper, Ins
 
     @Override
     @Transactional
-    public void batchBalance(InsPlyIncomeVo insPlyIncomeVo) {
+    public HttpResult batchBalance(InsPlyIncomeVo insPlyIncomeVo) {
 //      生成新数据
         SettlementDocumentaryFeesVo settlementDocumentaryFeesVo = new SettlementDocumentaryFeesVo();
         settlementDocumentaryFeesVo.setTotalAmount(insPlyIncomeVo.getTotAmount());
@@ -260,8 +277,7 @@ public class InsPlyIncomeServiceImpl extends ServiceImpl<InsPlyIncomeMapper, Ins
         settlementDocumentaryFeesVo.setSettlementAmount(insPlyIncomeVo.getSettlementAmount());//  结算金额
         settlementDocumentaryFeesVo.setUnsettledAmount(insPlyIncomeVo.getTotAmount().subtract(insPlyIncomeVo.getSettlementAmount()));  //未结算金额
 
-        settlementDocumentaryFeesService.inertSettle(settlementDocumentaryFeesVo);
-
+        return  settlementDocumentaryFeesService.inertSettle(settlementDocumentaryFeesVo);
 
 //
     }

+ 72 - 12
src/main/java/com/ydtech/modules/fnc/service/impl/SettlementDocumentaryFeesServiceImpl.java

@@ -2,19 +2,27 @@ package com.ydtech.modules.fnc.service.impl;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import com.ydtech.core.page.HttpResult;
+import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.fnc.dao.SettlementDocumentaryFeesMapper;
+import com.ydtech.modules.fnc.entity.InsPlyIncome;
 import com.ydtech.modules.fnc.entity.SettlementDocumentaryFeesEntity;
 import com.ydtech.modules.fnc.entity.SettlementDocumentaryLogEntity;
 import com.ydtech.modules.fnc.service.SettlementDocumentaryFeesService;
 import com.ydtech.modules.fnc.service.SettlementDocumentaryLogService;
 import com.ydtech.modules.fnc.vo.SettlementDocumentaryFeesVo;
 import com.ydtech.modules.order.entity.BasePageResult;
+import com.ydtech.modules.order.entity.InsOrders;
+import org.apache.commons.lang3.ObjectUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.math.BigDecimal;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
@@ -22,21 +30,36 @@ import java.util.List;
 @Service
 public class SettlementDocumentaryFeesServiceImpl extends ServiceImpl<SettlementDocumentaryFeesMapper, SettlementDocumentaryFeesEntity> implements SettlementDocumentaryFeesService {
 
-        @Autowired
-        private SettlementDocumentaryLogService settlementDocumentaryLogService;
-    @Override
-    public BasePageResult<SettlementDocumentaryFeesEntity> querySettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo) {
-
-        Page<SettlementDocumentaryFeesEntity> page = new Page<>(settlementDocumentaryFeesVo.getPageNum(), settlementDocumentaryFeesVo.getPageSize());
+    @Autowired
+    private SettlementDocumentaryLogService settlementDocumentaryLogService;
 
-        Page<SettlementDocumentaryFeesEntity> resultPage  = baseMapper.querySettle(settlementDocumentaryFeesVo,page);
 
-        return new BasePageResult<>(settlementDocumentaryFeesVo.getPageNum(),page.getSize(),resultPage.getTotal(),page.getPages(),resultPage.getRecords());
+    @Override
+    public HttpResult<BasePageResult<SettlementDocumentaryFeesEntity>> querySettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo) {
+        try {
+            HashMap<String, Object> params = new HashMap<>();
+            params.put("pageNum", settlementDocumentaryFeesVo.getPageNum());
+            params.put("pageSize", settlementDocumentaryFeesVo.getPageSize());
+            PageInfo<List<SettlementDocumentaryFeesEntity>> pageHelper = null;
+            List<SettlementDocumentaryFeesEntity> list = this.baseMapper.querySettle(params);
+            pageHelper = new PageInfo(list);
+            BasePageResult<SettlementDocumentaryFeesEntity> pageResult = new BasePageResult<SettlementDocumentaryFeesEntity>(settlementDocumentaryFeesVo.getPageNum(), settlementDocumentaryFeesVo.getPageSize(), pageHelper.getTotal(), pageHelper.getPages(), list);
+            return HttpResult.ok(pageResult);
+        } catch (Exception e) {
+            e.printStackTrace();
+            return HttpResult.error("查询异常");
+        }
     }
 
     @Override
     @Transactional
-    public void inertSettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo) {
+    public HttpResult inertSettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo) {
+
+
+        int i = this.compareAmount(settlementDocumentaryFeesVo.getTotalAmount(), settlementDocumentaryFeesVo.getSettlementAmount());
+        if (i < 0) {
+            return HttpResult.error("结算金额大于总金额,请重新结算");
+        }
         SettlementDocumentaryFeesEntity settlementDocumentaryFeesEntity = new SettlementDocumentaryFeesEntity();
         BeanUtils.copyProperties(settlementDocumentaryFeesVo, settlementDocumentaryFeesEntity);
         baseMapper.insert(settlementDocumentaryFeesEntity);
@@ -48,15 +71,52 @@ public class SettlementDocumentaryFeesServiceImpl extends ServiceImpl<Settlement
         settlementDocumentaryLogEntity.setAmountType("2");  //跟单费结算
         settlementDocumentaryLogEntity.setCreateTime(new Date());
         settlementDocumentaryLogService.save(settlementDocumentaryLogEntity);
+        return HttpResult.ok("结算成功");
     }
 
     @Override
-    public String  checkDate(HashMap<String, Object> params) {
+    public String checkDate(HashMap<String, Object> params) {
 
-        List<SettlementDocumentaryFeesEntity> startList=  baseMapper.checkDate(params);
-        if(startList.size()>0 ){
+        List<SettlementDocumentaryFeesEntity> startList = baseMapper.checkDate(params);
+        if (startList.size() > 0) {
             return "有重复";
         }
         return null;
     }
+
+    @Override
+    @Transactional
+    public HttpResult documentarySettle(SettlementDocumentaryFeesVo settlementDocumentaryFeesVo) {
+        SettlementDocumentaryFeesEntity settlementDocumentaryFeesEntity = baseMapper.selectById(settlementDocumentaryFeesVo.getId());
+
+
+        if (settlementDocumentaryFeesVo.getSettlementAmount() != null && ObjectUtils.isNotEmpty(settlementDocumentaryFeesEntity)) {
+
+            int i = this.compareAmount(settlementDocumentaryFeesEntity.getUnsettledAmount(), settlementDocumentaryFeesVo.getSettlementAmount());
+            if (i < 0) {
+                return HttpResult.error("结算金额大于未结算金额,请重新结算");
+            }
+            settlementDocumentaryFeesEntity.setSettlementAmount(settlementDocumentaryFeesEntity.getSettlementAmount().add(settlementDocumentaryFeesVo.getSettlementAmount()));
+            settlementDocumentaryFeesEntity.setUnsettledAmount(settlementDocumentaryFeesEntity.getTotalAmount().subtract(settlementDocumentaryFeesEntity.getSettlementAmount()));  //未结算金额
+            baseMapper.updateById(settlementDocumentaryFeesEntity);
+
+//          记录
+//          生成跟单费结算记录
+            SettlementDocumentaryLogEntity settlementDocumentaryLogEntity = new SettlementDocumentaryLogEntity();
+            settlementDocumentaryLogEntity.setAmount(settlementDocumentaryFeesVo.getSettlementAmount());  // 结算金额
+            settlementDocumentaryLogEntity.setSettlementDocumentaryId(settlementDocumentaryFeesEntity.getId()); // 关联id
+            settlementDocumentaryLogEntity.setAmountType("2");  //跟单费结算
+            settlementDocumentaryLogEntity.setCreateTime(new Date());
+            settlementDocumentaryLogService.save(settlementDocumentaryLogEntity);
+            return HttpResult.ok("修改成功");
+
+        }
+        return null;
+    }
+
+    private int compareAmount(BigDecimal settlementAmount, BigDecimal settlementAmount1) {
+
+        return settlementAmount.compareTo(settlementAmount1);
+
+    }
 }

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

@@ -122,4 +122,8 @@ public class InsPlyIncomeVo implements Serializable {
     @ApiModelProperty("是否非车")
     private String isNotCar;
 
+
+    @ApiModelProperty("手续费结算金额")
+    private BigDecimal handingAmount;
+
 }

+ 49 - 0
src/main/resources/mapper/modules/admin/SysAmountAuditingMapper.xml

@@ -82,5 +82,54 @@
 
     </select>
 
+    <select id="queryPageOrderNew" resultType="com.ydtech.modules.admin.model.po.SysAmountAuditingEntity">
+        select
+        a.id as "id",
+        a.bank_number as "bankNumber",
+        a.amount as "amount",
+        a.user_id as "userId",
+        a.create_time as "createTime",
+        a.auditing_status as "auditingStatus",
+        a.amount_status as "amountStatus",
+        a.auditing_time as "auditingTime",
+        a.auditing_user_id as "auditingUserId",
+        b.user_amount as "userAmount",
+        b.amount as "historyAmount",
+        b.surplus_amount as "surplusAmount",
+        su.name as "userName",
+        su2.name as "auditingUserName",
+        su.dept_id as "deptId",
+        sd.name as "deptName",
+        bc.bank_account as "bankAccount"
+        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
+        left join sys_user_bank_card bc on bc.bank_number =a.bank_number
+        left join sys_user su2 on su2.id = a.auditing_user_id
+        <where>
+            <if test="auditingStatus !=null  and auditingStatus != ''">
+                a.auditing_status=#{auditingStatus}
+            </if>
+            <if test="amountStatus !=null  and amountStatus != ''">
+                and a.amount_status=#{amountStatus}
+            </if>
+
+            <if test="id !=null  and id != ''">
+                and a.id=#{id}
+            </if>
+
+
+            <if test="userId !=null  and userId != ''">
+                and a.user_id=#{userId}
+            </if>
+
+            <if test="startDate !=null and startDate != ''  and  endDate !=null  and  endDate!= '' ">
+                and DATE_FORMAT( a.auditing_time, '%Y-%m-%d')  between DATE_FORMAT(#{startDate}, '%Y-%m-%d') and DATE_FORMAT(#{endDate}, '%Y-%m-%d')
+            </if>
+        </where>
+
+    </select>
+
 
 </mapper>

+ 9 - 1
src/main/resources/mapper/modules/fnc/InsPlyIncomeMapper.xml

@@ -74,6 +74,14 @@
                <if test="handlingFeesStatus !=null  and  handlingFeesStatus  !=''">
                     and a.handling_fees_status =#{handlingFeesStatus}
                 </if>
+
+                <if test="orderno !=null  and  orderno  !=''">
+                    and a.orderno =#{orderno}
+                </if>
+
+                <if test="policyno !=null  and  policyno  !=''">
+                    and a.policyno =#{policyno}
+                </if>
                 <if test="documentaryFeesStatus !=null  and  documentaryFeesStatus  !=''">
                     and a.documentary_fees_status =#{documentaryFeesStatus}
                 </if>
@@ -83,7 +91,7 @@
 
     <select id="totalQuery"  resultType="com.ydtech.modules.fnc.entity.InsPlyIncome">
             select
-                 sum(a.other_feevalue) as "totAmount",
+                sum(a.other_feevalue) as "totAmount",
                 GROUP_CONCAT(orderno) as  "ids",
                 count(1) as "totalorders"
                 from  ins_ply_income a

+ 15 - 1
src/main/resources/mapper/modules/fnc/SettlementDocumentaryFeesMapper.xml

@@ -9,6 +9,10 @@
         <result column="time_frame" property="timeFrame"/>
         <result column="total_amount" property="totalAmount"/>
         <result column="create_time" property="createTime"/>
+        <result column="start_time" property="startTime"/>
+        <result column="end_time" property="endTime"/>
+        <result column="settlement_amount" property="settlementAmount"/>
+        <result column="unsettled_amount" property="unsettledAmount"/>
     </resultMap>
 
 
@@ -19,7 +23,17 @@
             a.total_orders as "totalOrders",
             a.time_frame as "timeFrame",
             a.total_amount as "totalAmount",
-            a.create_time as "createTime"
+            a.create_time as "createTime",
+            a.start_time as "startTime",
+            a.end_time as "endTime",
+            a.settlement_amount as "settlementAmount",
+            a.unsettled_amount as "unsettledAmount"
+            from  settlement_documentary_fees  a
+    </select>
+
+    <select id="selectAll" resultType="com.ydtech.modules.fnc.entity.SettlementDocumentaryFeesEntity">
+        select
+            *
             from  settlement_documentary_fees  a
     </select>
 

+ 1 - 0
src/main/resources/mapper/modules/fnc/SettlementDocumentaryLogMapper.xml

@@ -9,6 +9,7 @@
         <result column="settlement_documentary_id" property="settlementDocumentaryId"/>
         <result column="amount_type" property="amountType"/>
         <result column="create_time" property="createTime"/>
+        <result column="handing_amount" property="handingAmount"/>
     </resultMap>