Przeglądaj źródła

审核订单后操作机构账户表和机构账户明细表

Qchen 2 lat temu
rodzic
commit
1fc29f0a47
18 zmienionych plików z 475 dodań i 166 usunięć
  1. 27 0
      src/main/java/com/ydtech/constants/enums/dict/ins/InsFeeAuditDistributionStatusEnum.java
  2. 18 0
      src/main/java/com/ydtech/modules/admin/controller/SysDeptAccountController.java
  3. 36 0
      src/main/java/com/ydtech/modules/admin/controller/SysDeptAccountHistoryController.java
  4. 0 10
      src/main/java/com/ydtech/modules/admin/dao/SysDeptAccountDao.java
  5. 9 0
      src/main/java/com/ydtech/modules/admin/dao/SysDeptAccountHistoryMapper.java
  6. 17 0
      src/main/java/com/ydtech/modules/admin/dao/SysDeptAccountMapper.java
  7. 4 10
      src/main/java/com/ydtech/modules/admin/model/SysDeptAccountEntity.java
  8. 62 0
      src/main/java/com/ydtech/modules/admin/model/SysDeptAccountHistory.java
  9. 25 0
      src/main/java/com/ydtech/modules/admin/model/dto/SysDeptAccountDto.java
  10. 16 0
      src/main/java/com/ydtech/modules/admin/service/SysDeptAccountHistoryService.java
  11. 3 1
      src/main/java/com/ydtech/modules/admin/service/SysDeptAccountService.java
  12. 45 0
      src/main/java/com/ydtech/modules/admin/service/impl/SysDeptAccountHistoryServiceImpl.java
  13. 11 39
      src/main/java/com/ydtech/modules/admin/service/impl/SysDeptAccountServiceImpl.java
  14. 4 4
      src/main/java/com/ydtech/modules/admin/service/impl/SysUserAccountServiceImpl.java
  15. 1 1
      src/main/java/com/ydtech/modules/fnc/service/InsFeeAuditService.java
  16. 166 81
      src/main/java/com/ydtech/modules/fnc/service/impl/InsFeeAuditServiceImpl.java
  17. 0 20
      src/main/resources/mapper/modules/admin/SysDeptAccountDao.xml
  18. 31 0
      src/main/resources/mapper/modules/admin/SysDeptAccountMapper.xml

+ 27 - 0
src/main/java/com/ydtech/constants/enums/dict/ins/InsFeeAuditDistributionStatusEnum.java

@@ -0,0 +1,27 @@
+package com.ydtech.constants.enums.dict.ins;
+
+import com.ydtech.aop.request.DictEnum;
+import com.ydtech.constants.enums.dict.IBaseEnum;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+@AllArgsConstructor
+@Getter
+@DictEnum(key = "InsFeeAuditDistributionStatus", desc = "费用订单表分销等级")
+public enum InsFeeAuditDistributionStatusEnum implements IBaseEnum {
+
+    DS_1("1","一级分销",0,1),
+
+    DS_2("2","二级分销",0,1),
+
+    DS_3("3","三级分销",0,1);
+
+    // 编号
+    private final String code;
+    //说明
+    private final String desc;
+    // 排序
+    private final Integer sort;
+    // 状态  0 启用  1 不启用
+    private final Integer status;
+}

+ 18 - 0
src/main/java/com/ydtech/modules/admin/controller/SysDeptAccountController.java

@@ -1,8 +1,13 @@
 package com.ydtech.modules.admin.controller;
 
 
+import com.github.pagehelper.IPage;
 import com.ydtech.core.page.HttpResult;
+import com.ydtech.core.page.PageResult;
+import com.ydtech.modules.admin.dao.SysDeptAccountMapper;
+import com.ydtech.modules.admin.model.SysDept;
 import com.ydtech.modules.admin.model.SysDeptAccountEntity;
+import com.ydtech.modules.admin.model.dto.SysDeptAccountDto;
 import com.ydtech.modules.admin.model.po.SysUserBankCard;
 import com.ydtech.modules.admin.model.vo.SysDeptAccountVO;
 import com.ydtech.modules.admin.model.vo.SysUserBankCardVO;
@@ -10,12 +15,15 @@ import com.ydtech.modules.admin.service.SysDeptAccountService;
 import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.order.entity.BasePageResult;
 import com.ydtech.modules.protocol.utils.AssertionUtils;
+import com.ydtech.modules.ser.model.SerAnnualAuditOrder;
+import com.ydtech.modules.ser.model.vo.SerAnnualAuditOrderQueryVo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
+import java.util.List;
 
 @Api(tags = "机构账户表")
 @RequestMapping("/sysDeptAccount")
@@ -25,6 +33,9 @@ public class SysDeptAccountController extends BaseController {
     @Autowired
     private SysDeptAccountService sysDeptAccountService;
 
+    @Autowired
+    private SysDeptAccountMapper sysDeptAccountMapper;
+
     @PostMapping("/queryPage")
     @ApiOperation(value = "机构账户表")
     public HttpResult<BasePageResult<SysDeptAccountEntity>> queryPageOrder(@RequestBody @Valid SysDeptAccountVO sysDeptAccountVO ) {
@@ -32,6 +43,13 @@ public class SysDeptAccountController extends BaseController {
         return HttpResult.ok("success", result);
     }
 
+    @ApiOperation("机构账户表查询")
+    @PostMapping("sysDeptAccountPage")
+    public HttpResult sysDeptAccountPage(@RequestBody SysDeptAccountDto sysDeptAccountDto){
+
+        return HttpResult.ok("", sysDeptAccountMapper.getDept(sysDeptAccountDto));
+    }
+
 
     @PostMapping("/insert")
     @ApiOperation("提交")

+ 36 - 0
src/main/java/com/ydtech/modules/admin/controller/SysDeptAccountHistoryController.java

@@ -0,0 +1,36 @@
+package com.ydtech.modules.admin.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.ydtech.core.page.HttpResult;
+import com.ydtech.core.page.PageResult;
+import com.ydtech.modules.admin.model.SysDeptAccountHistory;
+import com.ydtech.modules.admin.service.SysDeptAccountHistoryService;
+import com.ydtech.modules.base.controller.BaseController;
+import com.ydtech.modules.ser.model.SerAnnualAuditOrder;
+import com.ydtech.modules.ser.model.vo.SerAnnualAuditOrderQueryVo;
+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 java.text.ParseException;
+
+@Api(tags = "机构账户历史明细表")
+@RequestMapping("/sysDeptAccountHistory")
+@RestController
+public class SysDeptAccountHistoryController extends BaseController {
+    @Autowired
+    private SysDeptAccountHistoryService sysDeptAccountHistoryService;
+
+    @PostMapping("/queryPage")
+    @ApiOperation(value = "机构账户表日志记录分页")
+    public HttpResult getSysDeptAccountHistory(@RequestBody SysDeptAccountHistory sysDeptAccountHistory){
+        IPage<SysDeptAccountHistory> getSysDeptAccountHistory = sysDeptAccountHistoryService.selectList(sysDeptAccountHistory);
+        PageResult pageResult = buildPageResponse(getSysDeptAccountHistory);
+        return HttpResult.ok(pageResult);
+    }
+}

+ 0 - 10
src/main/java/com/ydtech/modules/admin/dao/SysDeptAccountDao.java

@@ -1,10 +0,0 @@
-package com.ydtech.modules.admin.dao;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.ydtech.modules.admin.model.SysDept;
-import com.ydtech.modules.admin.model.SysDeptAccountEntity;
-import org.apache.ibatis.annotations.Mapper;
-
-@Mapper
-public interface SysDeptAccountDao extends BaseMapper<SysDeptAccountEntity> {
-}

+ 9 - 0
src/main/java/com/ydtech/modules/admin/dao/SysDeptAccountHistoryMapper.java

@@ -0,0 +1,9 @@
+package com.ydtech.modules.admin.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ydtech.modules.admin.model.SysDeptAccountHistory;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface SysDeptAccountHistoryMapper extends BaseMapper<SysDeptAccountHistory> {
+}

+ 17 - 0
src/main/java/com/ydtech/modules/admin/dao/SysDeptAccountMapper.java

@@ -0,0 +1,17 @@
+package com.ydtech.modules.admin.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.github.pagehelper.IPage;
+import com.ydtech.modules.admin.model.QuTeamNum;
+import com.ydtech.modules.admin.model.SysDeptAccountEntity;
+import com.ydtech.modules.admin.model.dto.QuTeamNumDto;
+import com.ydtech.modules.admin.model.dto.SysDeptAccountDto;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface SysDeptAccountMapper extends BaseMapper<SysDeptAccountEntity> {
+    List<SysDeptAccountDto> getDept(@Param("sysDeptAccountDto") SysDeptAccountDto sysDeptAccountDto);
+}

+ 4 - 10
src/main/java/com/ydtech/modules/admin/model/SysDeptAccountEntity.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ydtech.core.page.PageRequest;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -16,22 +17,15 @@ import java.util.Date;
 @TableName(value = "sys_dept_account")
 @Data
 @ApiModel(value = "机构管理")
-public class SysDeptAccountEntity implements Serializable {
+public class SysDeptAccountEntity extends PageRequest implements Serializable {
     @TableField(exist = false)
     private static final long serialVersionUID = 1L;
 
     @TableId(value = "dept_id")
     private String deptId;
 
-    @TableField(value = "handling_fee")
-    private BigDecimal handlingFee;
-
-    @TableField(value = "documentary")
-    private BigDecimal documentary;
-
-    @TableField(value = "promotion")
-    private BigDecimal promotion;
-
+    @TableField(value = "management_fee")
+    private BigDecimal managementFee;
 
     @TableField(value = "create_time")
     private Date createTime;

+ 62 - 0
src/main/java/com/ydtech/modules/admin/model/SysDeptAccountHistory.java

@@ -0,0 +1,62 @@
+package com.ydtech.modules.admin.model;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ydtech.core.page.PageRequest;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@TableName(value = "sys_dept_account_history")
+@Data
+@ApiModel(value = "机构管理历史记录")
+public class SysDeptAccountHistory extends PageRequest implements Serializable{
+        @ApiModelProperty(value = "历史记录ID")
+        @TableId(value = "id")
+        private String id;
+
+        @ApiModelProperty(value = "部门ID")
+        @TableField(value = "dept_id")
+        private String deptId;
+
+        @TableField(value = "amount")
+        private BigDecimal amount;
+
+        @ApiModelProperty(value = "剩余金额")
+        @TableField(value = "surplus_amount")
+        private BigDecimal surplusAmount;
+        @ApiModelProperty(value = "提现/收入 1提现 2收入")
+        @TableField(value = "documentary")
+        private String documentary;
+
+        @ApiModelProperty(value = "来源订单")
+        @TableField(value = "suborder")
+        private String suborder;
+
+        @ApiModelProperty(value = "转出银行卡")
+        @TableField(value = "from_bank_card")
+        private String fromBankCard;
+
+        @ApiModelProperty(value = "转入银行卡")
+        @TableField(value = "to_bank_card")
+        private String toBankCard;
+
+        @ApiModelProperty(value = "提交人")
+        @TableField(value = "user_id")
+        private String userId;
+
+        @ApiModelProperty(value = "创建时间")
+        @TableField(value = "create_time")
+        private Date createTime;
+
+        @ApiModelProperty(value = "备注")
+        @TableField(value = "remark")
+        private String remark;
+
+
+}

+ 25 - 0
src/main/java/com/ydtech/modules/admin/model/dto/SysDeptAccountDto.java

@@ -0,0 +1,25 @@
+package com.ydtech.modules.admin.model.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class SysDeptAccountDto {
+    @ApiModelProperty("部门id")
+    private String deptId;
+    @ApiModelProperty("部门名称")
+    private String deptName;
+
+    @ApiModelProperty("管理费")
+    private String managementFee;
+
+    @ApiModelProperty(value = "创建时间")
+    private String createTime;
+
+    @TableField(exist = false)
+    private int pageNo;
+
+    @TableField(exist = false)
+    private int pageSize;
+}

+ 16 - 0
src/main/java/com/ydtech/modules/admin/service/SysDeptAccountHistoryService.java

@@ -0,0 +1,16 @@
+package com.ydtech.modules.admin.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ydtech.modules.admin.model.SysDeptAccountHistory;
+import com.ydtech.modules.inv.model.InvAccountOperate;
+import com.ydtech.modules.ser.model.SerAnnualAuditOrder;
+import com.ydtech.modules.ser.model.vo.SerAnnualAuditOrderQueryVo;
+
+import java.math.BigDecimal;
+import java.text.ParseException;
+
+
+public interface SysDeptAccountHistoryService extends IService<SysDeptAccountHistory> {
+    IPage<SysDeptAccountHistory> selectList(SysDeptAccountHistory sysDeptAccountHistory);
+}

+ 3 - 1
src/main/java/com/ydtech/modules/admin/service/SysDeptAccountService.java

@@ -1,10 +1,13 @@
 package com.ydtech.modules.admin.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ydtech.modules.admin.model.SysDept;
 import com.ydtech.modules.admin.model.SysDeptAccountEntity;
 import com.ydtech.modules.admin.model.vo.SysDeptAccountVO;
 import com.ydtech.modules.order.entity.BasePageResult;
+import com.ydtech.modules.ser.model.SerAnnualAuditOrder;
+import com.ydtech.modules.ser.model.vo.SerAnnualAuditOrderQueryVo;
 
 public interface SysDeptAccountService extends IService<SysDeptAccountEntity> {
     BasePageResult<SysDeptAccountEntity> queryByVo(SysDeptAccountVO sysDeptAccountVO);
@@ -15,7 +18,6 @@ public interface SysDeptAccountService extends IService<SysDeptAccountEntity> {
 
     void uodate(SysDeptAccountVO sysDeptAccountVO);
 
-    void addOrUpdate(SysDeptAccountEntity sysDeptAccountEntity);
 
 
 }

+ 45 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysDeptAccountHistoryServiceImpl.java

@@ -0,0 +1,45 @@
+package com.ydtech.modules.admin.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ydtech.core.page.PageRequest;
+import com.ydtech.modules.admin.dao.SysDeptAccountHistoryMapper;
+import com.ydtech.modules.admin.model.SysDeptAccountHistory;
+import com.ydtech.modules.admin.service.SysDeptAccountHistoryService;
+import com.ydtech.modules.ser.dao.SerAnnualAuditOrderMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class SysDeptAccountHistoryServiceImpl extends ServiceImpl<SysDeptAccountHistoryMapper, SysDeptAccountHistory> implements SysDeptAccountHistoryService {
+    @Autowired
+    private SysDeptAccountHistoryService sysDeptAccountHistoryService;
+
+    @Autowired
+    private SysDeptAccountHistoryMapper sysDeptAccountHistoryMapper;
+    @Override
+    public IPage<SysDeptAccountHistory> selectList(SysDeptAccountHistory sysDeptAccountHistory) {
+        PageRequest pageRequest = new PageRequest();
+        pageRequest.setPageNum(sysDeptAccountHistory.getPageNum());
+        pageRequest.setPageSize(sysDeptAccountHistory.getPageSize());
+        Page page = PageRequest.buildPageRequest(pageRequest);
+        LambdaQueryWrapper<SysDeptAccountHistory> queryWrapper = new LambdaQueryWrapper<>();
+        //机构Id
+        if (sysDeptAccountHistory.getDeptId() != null && !"".equals(sysDeptAccountHistory.getDeptId())) {
+            queryWrapper.eq(SysDeptAccountHistory::getDeptId, sysDeptAccountHistory.getDeptId());
+        }
+        //提现、收入
+        if (sysDeptAccountHistory.getDocumentary() != null && !"".equals(sysDeptAccountHistory.getDocumentary())) {
+            queryWrapper.eq(SysDeptAccountHistory::getDocumentary, sysDeptAccountHistory.getDocumentary());
+        }
+        //来源订单
+        if (sysDeptAccountHistory.getSuborder() != null && !"".equals(sysDeptAccountHistory.getSuborder())) {
+            queryWrapper.eq(SysDeptAccountHistory::getSuborder, sysDeptAccountHistory.getSuborder());
+        }
+        Page pageData = sysDeptAccountHistoryMapper.selectPage(page, queryWrapper);
+
+        return pageData;
+    }
+}

+ 11 - 39
src/main/java/com/ydtech/modules/admin/service/impl/SysDeptAccountServiceImpl.java

@@ -1,24 +1,30 @@
 package com.ydtech.modules.admin.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ydtech.modules.admin.dao.SysDeptAccountDao;
+import com.ydtech.core.page.PageRequest;
+import com.ydtech.modules.admin.dao.SysDeptAccountMapper;
+import com.ydtech.modules.admin.model.QuTeamNum;
 import com.ydtech.modules.admin.model.SysDeptAccountEntity;
+import com.ydtech.modules.admin.model.dto.SysDeptAccountDto;
 import com.ydtech.modules.admin.model.vo.SysDeptAccountVO;
 import com.ydtech.modules.admin.service.SysDeptAccountService;
 import com.ydtech.modules.order.entity.BasePageResult;
 import com.ydtech.modules.protocol.utils.AssertionUtils;
-import org.apache.commons.lang3.ObjectUtils;
 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.List;
 
 @Service
-public class SysDeptAccountServiceImpl extends ServiceImpl<SysDeptAccountDao, SysDeptAccountEntity>  implements SysDeptAccountService {
-
+public class SysDeptAccountServiceImpl extends ServiceImpl<SysDeptAccountMapper, SysDeptAccountEntity>  implements SysDeptAccountService {
+    @Autowired
+    private SysDeptAccountMapper sysDeptAccountMapper;
 
     @Override
     public BasePageResult<SysDeptAccountEntity> queryByVo(SysDeptAccountVO sysDeptAccountVO) {
@@ -54,38 +60,4 @@ public class SysDeptAccountServiceImpl extends ServiceImpl<SysDeptAccountDao, Sy
         super.updateById(sysDeptAccountEntity);
     }
 
-    @Override
-    public void addOrUpdate(SysDeptAccountEntity sysDeptAccountEntity) {
-        //          如果用户id有值则累加   没有则 新增
-        BigDecimal handlingFee =BigDecimal.ZERO;
-        BigDecimal documentary = BigDecimal.ZERO;
-        BigDecimal promotion = BigDecimal.ZERO;
-
-        String deptId = sysDeptAccountEntity.getDeptId();
-        SysDeptAccountEntity sysUserAccountEntityById = super.getById(deptId);
-        if(ObjectUtils.isNotEmpty(sysUserAccountEntityById)){
-            if(sysUserAccountEntityById.getHandlingFee()==null){
-                sysUserAccountEntityById.setHandlingFee(handlingFee);
-            }
-            if (sysUserAccountEntityById.getDocumentary()==null){
-                sysUserAccountEntityById.setDocumentary(documentary);
-            }
-            if(sysUserAccountEntityById.getPromotion()==null){
-                sysUserAccountEntityById.setPromotion(promotion);
-            }
-            sysUserAccountEntityById.setHandlingFee(sysDeptAccountEntity.getHandlingFee().add(sysUserAccountEntityById.getHandlingFee()));
-            sysUserAccountEntityById.setDocumentary(sysDeptAccountEntity.getDocumentary().add(sysUserAccountEntityById.getDocumentary()));
-            sysUserAccountEntityById.setPromotion(sysDeptAccountEntity.getPromotion().add(sysUserAccountEntityById.getPromotion()));
-
-            baseMapper.updateById(sysUserAccountEntityById);
-        }else {
-            SysDeptAccountEntity newAccount = new SysDeptAccountEntity();
-            newAccount.setDeptId(deptId);
-            newAccount.setDocumentary(sysDeptAccountEntity.getDocumentary());
-            newAccount.setPromotion(sysDeptAccountEntity.getPromotion());
-            newAccount.setHandlingFee(sysDeptAccountEntity.getHandlingFee());
-            baseMapper.insert(newAccount);
-        }
-
-    }
 }

+ 4 - 4
src/main/java/com/ydtech/modules/admin/service/impl/SysUserAccountServiceImpl.java

@@ -89,12 +89,12 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
             SysUserAccountHistory sysUserAccountHistory = new SysUserAccountHistory();
             sysUserAccountHistory.setUserId(sysUserAccount.getUserId());
             sysUserAccountHistory.setDocumentary(Integer.valueOf(sysUserAccount.getDocumentaryStatus()));
-            sysUserAccountHistory.setSuborder(sysUserAccountEntity.getSuborderId());
+            sysUserAccountHistory.setSuborder(sysUserAccount.getSuborderId());
             if(sysUserAccount.getDocumentary()!=null && sysUserAccount.getDocumentary().compareTo(BigDecimal.ZERO)!=0){
                 sysUserAccountHistory.setAmount(sysUserAccount.getDocumentary());
                 sysUserAccountHistory.setProperty(2);
                 if("2".equals(sysUserAccount.getDocumentaryStatus())){ // 收入  相加
-                    sysUserAccountHistory.setSurplusAmount(sysUserAccount.getDocumentary().add(newSysAccount.getDocumentary()));
+                    sysUserAccountHistory.setSurplusAmount(sysUserAccount.getDocumentary().add(newAccount.getDocumentary()));
                 }else {
                     BigDecimal subtract = newSysAccount.getDocumentary().subtract(sysUserAccount.getDocumentary());
                     sysUserAccountHistory.setSurplusAmount(subtract);
@@ -106,7 +106,7 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
                 sysUserAccountHistory.setAmount(sysUserAccount.getHandlingFee());
                 sysUserAccountHistory.setProperty(1);
                 if("2".equals(sysUserAccount.getDocumentaryStatus())){ // 收入  相加
-                    sysUserAccountHistory.setSurplusAmount(sysUserAccount.getHandlingFee().add(newSysAccount.getHandlingFee()));
+                    sysUserAccountHistory.setSurplusAmount(sysUserAccount.getHandlingFee().add(newAccount.getHandlingFee()));
                 }else {
                     BigDecimal subtract = newSysAccount.getHandlingFee().subtract(sysUserAccount.getHandlingFee());
                     sysUserAccountHistory.setSurplusAmount(subtract);
@@ -119,7 +119,7 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
                 sysUserAccountHistory.setAmount(sysUserAccount.getPromotion());
                 sysUserAccountHistory.setProperty(3);
                 if("2".equals(sysUserAccount.getDocumentaryStatus())){ // 收入  相加
-                    sysUserAccountHistory.setSurplusAmount(sysUserAccount.getPromotion().add(newSysAccount.getPromotion()));
+                    sysUserAccountHistory.setSurplusAmount(sysUserAccount.getPromotion().add(newAccount.getPromotion()));
                 }else {
                     BigDecimal subtract = newSysAccount.getPromotion().subtract(sysUserAccount.getPromotion());
                     sysUserAccountHistory.setSurplusAmount(subtract);

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

@@ -13,6 +13,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface InsFeeAuditService extends IService<InsFeeAudit> {
 
-    public void feeAudit(String orderNo,String insOrderNo) throws Exception;
+     void feeAudit(String orderNo,String insOrderNo) throws Exception;
 
 }

+ 166 - 81
src/main/java/com/ydtech/modules/fnc/service/impl/InsFeeAuditServiceImpl.java

@@ -3,14 +3,14 @@ package com.ydtech.modules.fnc.service.impl;
 import cn.dev33.satoken.stp.StpUtil;
 import cn.hutool.core.util.NumberUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ydtech.constants.enums.dict.ins.InsFeeAuditDistributionStatusEnum;
 import com.ydtech.modules.admin.model.SysDept;
 import com.ydtech.modules.admin.model.SysDeptAccountEntity;
+import com.ydtech.modules.admin.model.SysDeptAccountHistory;
 import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.model.po.SysUserAccount;
-import com.ydtech.modules.admin.service.SysDeptAccountService;
-import com.ydtech.modules.admin.service.SysDeptService;
-import com.ydtech.modules.admin.service.SysUserAccountService;
-import com.ydtech.modules.admin.service.SysUserService;
+import com.ydtech.modules.admin.service.*;
+import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.esm.service.EsmUserReferrerService;
 import com.ydtech.modules.fnc.dao.FncInsAreaCompanyMapper;
 import com.ydtech.modules.fnc.dao.InsPlyIncomeMapper;
@@ -30,19 +30,18 @@ import com.ydtech.modules.fnc.entity.InsAreaCompany;
 import com.ydtech.modules.order.entity.InsFeeOrder;
 import com.ydtech.modules.order.entity.InsOrders;
 import com.ydtech.modules.order.service.InsFeeOrderService;
-import com.ydtech.modules.order.service.InsOrdersService;
 import com.ydtech.modules.protocols.entity.po.InsFeeOrderNew;
 import com.ydtech.modules.protocols.service.InsFeeOrderNewService;
 import com.ydtech.utils.DateUtil;
 import com.ydtech.utils.StringUtils;
+import com.ydtech.utils.idgen.IdGenerate;
 import org.apache.commons.lang3.ObjectUtils;
-import org.apache.commons.lang3.math.NumberUtils;
-import org.apache.poi.hpsf.Decimal;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.Date;
@@ -84,6 +83,9 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
     @Autowired
     private SysDeptAccountService sysDeptAccountService;
 
+    @Autowired
+    private SysDeptAccountHistoryService sysDeptAccountHistoryService;
+
 
     public InsFeeAuditServiceImpl(FncInsAreaCompanyMapper insAreaCompanyMapper, InsOrdersMapper insOrdersMapper, InsFeeOrderService insFeeOrderService,InsDeptFeeService insDeptFeeService,EsmUserReferrerService esmUserReferrerService,SysUserService sysUserService,InsCommissionService insCommissionService,InsCompanyFeeService insCompanyFeeService,InsPlyIncomeMapper insPlyIncomeMapper) {
         this.insAreaCompanyMapper = insAreaCompanyMapper;
@@ -146,8 +148,7 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         if(StringUtils.isNotEmpty(order.getUserid())){
 //            用戶賬戶表
             SysUserAccount sysUserAccount = new SysUserAccount();
-//            部門金額表
-            SysDeptAccountEntity sysDeptAccountEntity = new SysDeptAccountEntity();
+
             sysUserAccount.setUserId(order.getUserid());
             if (ObjectUtils.isNotEmpty(insFeeOrderNew) ) {
 //                手续非佣金  =  交强监管费用 + 商业监管费用 + 非车监管费用
@@ -163,7 +164,6 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
                 BigDecimal syOtherCostsPremiums  =this.zeroBigdecimal(insFeeOrderNew.getSyOtherCostsPremiums()); //商业其他费用
                 BigDecimal noOtherCostsProportion = this.zeroBigdecimal(insFeeOrderNew.getNoOtherCostsPremiums());//非车其他费用
 
-
                 BigDecimal totalOtherPremiumAmount = jqOtherCostsPremiums.add(syOtherCostsPremiums).add(noOtherCostsProportion);  //非跟单费用
 //              用戶
                 sysUserAccount.setHandlingFee(totalPremiumAmount);
@@ -172,93 +172,178 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
                 this.countUserAmount(insFeeOrderNew,orderNo);
                 sysUserAccount.setDocumentaryStatus("2");  // 收入
                 sysUserAccount.setSuborderId(orderNo);  // 订单Id
-//              部门金额
-                sysDeptAccountEntity.setHandlingFee(totalPremiumAmount);
-                sysDeptAccountEntity.setDocumentary(totalOtherPremiumAmount);
-//                sysDeptAccountEntity.setPromotion(noPremium);
-                sysDeptAccountEntity.setDeptId(order.getDeptid());
                 sysUserAccountService.addOrUpdate(sysUserAccount);
-                sysDeptAccountService.addOrUpdate(sysDeptAccountEntity);
 
 
+                String deptid = insFeeOrderNew.getDeptId();
+                String distributionStatus = insFeeOrderNew.getDistributionStatus();
+                // 定义一个数组来存储各级机构的管理费
+                BigDecimal[] jqDeptPremiumsLevels = {insFeeOrderNew.getJqDeptPremiumsLevel1(), insFeeOrderNew.getJqDeptPremiumsLevel2(),
+                        insFeeOrderNew.getJqDeptPremiumsLevel3(), insFeeOrderNew.getJqDeptPremiumsLevel4(),
+                        insFeeOrderNew.getJqDeptPremiumsLevel5()};
+                BigDecimal[] syDeptPremiumsLevels = {insFeeOrderNew.getSyDeptPremiumsLevel1(), insFeeOrderNew.getSyDeptPremiumsLevel2(),
+                        insFeeOrderNew.getSyDeptPremiumsLevel3(), insFeeOrderNew.getSyDeptPremiumsLevel4(),
+                        insFeeOrderNew.getSyDeptPremiumsLevel5()};
+                BigDecimal[] noDeptPremiumsLevels = {insFeeOrderNew.getNoDeptPremiumsLevel1(), insFeeOrderNew.getNoDeptPremiumsLevel2(),
+                        insFeeOrderNew.getNoDeptPremiumsLevel3(), insFeeOrderNew.getNoDeptPremiumsLevel4(),
+                        insFeeOrderNew.getNoDeptPremiumsLevel5()};
+
+                for (int i = 1; i <= 5; i++) {
+                    // 根据循环次数确定机构ID的长度,第五级为11
+                    String levelDeptId = deptid.substring(0, (i == 5) ? 11 : i * 2);
+                    // 获取对应级别的机构信息
+                    SysDeptAccountEntity levelSysDeptAccount = sysDeptAccountService.getOne(new LambdaQueryWrapper<SysDeptAccountEntity>()
+                            .eq(SysDeptAccountEntity::getDeptId, levelDeptId));
+
+                    // 初始化管理费总额为0
+                    BigDecimal sumManagementFee = BigDecimal.ZERO;
+
+                    // 根据分销等级和分销用户情况计算分销费用
+                    BigDecimal distributionFee = BigDecimal.ZERO;
+                    if (i == 5) {
+                        if (InsFeeAuditDistributionStatusEnum.DS_2.getCode().equals(distributionStatus) && insFeeOrderNew.getTwoLevelUserId() == null) {
+                            distributionFee = insFeeOrderNew.getSecondDetailPremiums();
+                        } else if (InsFeeAuditDistributionStatusEnum.DS_3.getCode().equals(distributionStatus) && insFeeOrderNew.getThreeLevelUserId() == null) {
+                            distributionFee = insFeeOrderNew.getThirdDetailPremiums();
+                        }
+                    }
+
+                    // 根据分销等级计算管理费总额
+                    if (i == 5) {
+                        sumManagementFee = sumManagementFee.add(jqDeptPremiumsLevels[i - 1])
+                                .add(syDeptPremiumsLevels[i - 1])
+                                .add(noDeptPremiumsLevels[i - 1])
+                                .add(distributionFee);
+                    } else {
+                        sumManagementFee = sumManagementFee.add(jqDeptPremiumsLevels[i - 1])
+                                .add(syDeptPremiumsLevels[i - 1])
+                                .add(noDeptPremiumsLevels[i - 1]);
+                    }
+
+                    // 如果机构信息不为空,更新管理费并记录历史
+                    if (levelSysDeptAccount != null) {
+                        levelSysDeptAccount.setManagementFee(levelSysDeptAccount.getManagementFee().add(sumManagementFee));
+                        sysDeptAccountService.updateById(levelSysDeptAccount);
+                        // 记录历史信息
+                        SysDeptAccountHistory sysDeptAccountHistory = new SysDeptAccountHistory();
+                        sysDeptAccountHistory.setId(IdGenerate.nextId());
+                        sysDeptAccountHistory.setDeptId(levelDeptId);
+                        sysDeptAccountHistory.setAmount(sumManagementFee);
+                        sysDeptAccountHistory.setSurplusAmount(levelSysDeptAccount.getManagementFee());
+                        sysDeptAccountHistory.setDocumentary("2"); //收入
+                        sysDeptAccountHistory.setSuborder(orderNo);
+                        sysDeptAccountHistory.setFromBankCard(null);
+                        sysDeptAccountHistory.setToBankCard(null);
+                        sysDeptAccountHistory.setUserId(BaseController.getUser().getId());
+                        sysDeptAccountHistory.setCreateTime(new Date());
+                        sysDeptAccountHistory.setRemark("交强" + i + "级机构管理费:" + jqDeptPremiumsLevels[i - 1] +
+                                ",商业" + i + "级机构管理费:" + syDeptPremiumsLevels[i - 1] +
+                                ",非车" + i + "级机构管理费:" + noDeptPremiumsLevels[i - 1] +
+                                ",分销费:" + distributionFee);
+                        sysDeptAccountHistoryService.save(sysDeptAccountHistory);
+                    } else {
+                        // 如果机构信息为空,新建机构信息并记录历史
+                        SysDeptAccountEntity sysDeptAccount = new SysDeptAccountEntity();
+                        sysDeptAccount.setDeptId(levelDeptId);
+                        sysDeptAccount.setManagementFee(sumManagementFee);
+                        sysDeptAccount.setCreateTime(new Date());
+                        sysDeptAccountService.save(sysDeptAccount);
+                        // 记录历史信息
+                        SysDeptAccountHistory sysDeptAccountHistory = new SysDeptAccountHistory();
+                        sysDeptAccountHistory.setId(IdGenerate.nextId());
+                        sysDeptAccountHistory.setDeptId(levelDeptId);
+                        sysDeptAccountHistory.setAmount(sumManagementFee);
+                        sysDeptAccountHistory.setSurplusAmount(sumManagementFee);
+                        sysDeptAccountHistory.setDocumentary("2"); //收入
+                        sysDeptAccountHistory.setSuborder(orderNo);
+                        sysDeptAccountHistory.setFromBankCard(null);
+                        sysDeptAccountHistory.setToBankCard(null);
+                        sysDeptAccountHistory.setUserId(BaseController.getUser().getId());
+                        sysDeptAccountHistory.setCreateTime(new Date());
+                        sysDeptAccountHistory.setRemark("交强" + i + "级机构管理费:" + jqDeptPremiumsLevels[i - 1] +
+                                ",商业" + i + "级机构管理费:" + syDeptPremiumsLevels[i - 1] +
+                                ",非车" + i + "级机构管理费:" + noDeptPremiumsLevels[i - 1] +
+                                ",分销费:" + distributionFee);
+                        sysDeptAccountHistoryService.save(sysDeptAccountHistory);
+                    }
+                }
             }
         }
-
     }
 
-        private void countUserAmount(InsFeeOrderNew insFeeOrderNew ,String orderNo) {
-            String distributionStatus = insFeeOrderNew.getDistributionStatus();
-            if(StringUtils.isNotEmpty(distributionStatus)){
-                if("3".equals(distributionStatus)){
-                    BigDecimal totalDept = BigDecimal.ZERO;
-                    if(StringUtils.isNotEmpty(insFeeOrderNew.getFirstLevelUserId())){
-                        String firstLevelUserId = insFeeOrderNew.getFirstLevelUserId();
-                        BigDecimal firstDetailPremiums = insFeeOrderNew.getFirstDetailPremiums();
-                        this.saveUpdateAccount(firstLevelUserId,firstDetailPremiums,orderNo);
-                    }else {
-                        totalDept =  totalDept.add(insFeeOrderNew.getFirstDetailPremiums());
-                    }
-                    if(StringUtils.isNotEmpty(insFeeOrderNew.getTwoLevelUserId())){
-                        String twoLevelUserId = insFeeOrderNew.getTwoLevelUserId();
-                        BigDecimal secondDetailProportion = insFeeOrderNew.getSecondDetailPremiums();
-                        this.saveUpdateAccount(twoLevelUserId,secondDetailProportion,orderNo);
-                    }else {
-                        totalDept =totalDept.add(insFeeOrderNew.getSecondDetailPremiums());
-                    }
-                    if(StringUtils.isNotEmpty(insFeeOrderNew.getThreeLevelUserId())){
-                        String threeLevelUserId = insFeeOrderNew.getThreeLevelUserId();
-                        BigDecimal threeDetailPremiums = insFeeOrderNew.getThirdDetailPremiums();
-                        this.saveUpdateAccount(threeLevelUserId,threeDetailPremiums,orderNo);
-                    }else {
-                        totalDept =totalDept.add(insFeeOrderNew.getThirdDetailPremiums());
-                    }
-//                     机构管理 费用给五级交钱机构管理费
-                    if(totalDept.compareTo(BigDecimal.ZERO) ==0){
-                        BigDecimal jqDeptPremiumsLevel5 = insFeeOrderNew.getJqDeptPremiumsLevel5();
-                        jqDeptPremiumsLevel5.add(totalDept);
-                        insFeeOrderNewService.updateById(insFeeOrderNew);
-                    }
-                } else if ("2".equals(distributionStatus)) {
-                    BigDecimal totalDept = BigDecimal.ZERO;
-                    if(StringUtils.isNotEmpty(insFeeOrderNew.getFirstLevelUserId())){
-                        String firstLevelUserId = insFeeOrderNew.getFirstLevelUserId();
-                        BigDecimal firstDetailPremiums = insFeeOrderNew.getFirstDetailPremiums();
-                        this.saveUpdateAccount(firstLevelUserId,firstDetailPremiums,orderNo);
-                    }else {
-                        totalDept =  totalDept.add(insFeeOrderNew.getFirstDetailPremiums());
-                    }
-                    if(StringUtils.isNotEmpty(insFeeOrderNew.getTwoLevelUserId())){
-                        String twoLevelUserId = insFeeOrderNew.getTwoLevelUserId();
-                        BigDecimal secondDetailProportion = insFeeOrderNew.getSecondDetailPremiums();
-                        this.saveUpdateAccount(twoLevelUserId,secondDetailProportion,orderNo);
-                    }else {
-                        totalDept =totalDept.add(insFeeOrderNew.getSecondDetailPremiums());
-                    }
+    private void countUserAmount(InsFeeOrderNew insFeeOrderNew ,String orderNo) {
+        String distributionStatus = insFeeOrderNew.getDistributionStatus();
+        if(StringUtils.isNotEmpty(distributionStatus)){
+            if(InsFeeAuditDistributionStatusEnum.DS_3.getCode().equals(distributionStatus)){
+                BigDecimal totalDept = BigDecimal.ZERO;
+                if(StringUtils.isNotEmpty(insFeeOrderNew.getFirstLevelUserId())){
+                    String firstLevelUserId = insFeeOrderNew.getFirstLevelUserId();
+                    BigDecimal firstDetailPremiums = insFeeOrderNew.getFirstDetailPremiums();
+                    this.saveUpdateAccount(firstLevelUserId,firstDetailPremiums,orderNo);
+                }else {
+                    totalDept =  totalDept.add(insFeeOrderNew.getFirstDetailPremiums());
+                }
+                if(StringUtils.isNotEmpty(insFeeOrderNew.getTwoLevelUserId())){
+                    String twoLevelUserId = insFeeOrderNew.getTwoLevelUserId();
+                    BigDecimal secondDetailProportion = insFeeOrderNew.getSecondDetailPremiums();
+                    this.saveUpdateAccount(twoLevelUserId,secondDetailProportion,orderNo);
+                }else {
+                    totalDept =totalDept.add(insFeeOrderNew.getSecondDetailPremiums());
+                }
+                if(StringUtils.isNotEmpty(insFeeOrderNew.getThreeLevelUserId())){
+                    String threeLevelUserId = insFeeOrderNew.getThreeLevelUserId();
+                    BigDecimal threeDetailPremiums = insFeeOrderNew.getThirdDetailPremiums();
+                    this.saveUpdateAccount(threeLevelUserId,threeDetailPremiums,orderNo);
+                }else {
+                    totalDept =totalDept.add(insFeeOrderNew.getThirdDetailPremiums());
+                }
 //                     机构管理 费用给五级交钱机构管理费
-                    if(totalDept.compareTo(BigDecimal.ZERO) ==0){
-                        BigDecimal jqDeptPremiumsLevel5 = insFeeOrderNew.getJqDeptPremiumsLevel5();
-                        jqDeptPremiumsLevel5.add(totalDept);
-                        insFeeOrderNewService.updateById(insFeeOrderNew);
-                    }
+                if(totalDept.compareTo(BigDecimal.ZERO) ==0){
+                    BigDecimal jqDeptPremiumsLevel5 = insFeeOrderNew.getJqDeptPremiumsLevel5();
+                    jqDeptPremiumsLevel5.add(totalDept);
+                    insFeeOrderNewService.updateById(insFeeOrderNew);
+                }
+                } else if (InsFeeAuditDistributionStatusEnum.DS_2.getCode().equals(distributionStatus)) {
+                BigDecimal totalDept = BigDecimal.ZERO;
+                if(StringUtils.isNotEmpty(insFeeOrderNew.getFirstLevelUserId())){
+                    String firstLevelUserId = insFeeOrderNew.getFirstLevelUserId();
+                    BigDecimal firstDetailPremiums = insFeeOrderNew.getFirstDetailPremiums();
+                    this.saveUpdateAccount(firstLevelUserId,firstDetailPremiums,orderNo);
+                }else {
+                    totalDept =  totalDept.add(insFeeOrderNew.getFirstDetailPremiums());
+                }
+                if(StringUtils.isNotEmpty(insFeeOrderNew.getTwoLevelUserId())){
+                    String twoLevelUserId = insFeeOrderNew.getTwoLevelUserId();
+                    BigDecimal secondDetailProportion = insFeeOrderNew.getSecondDetailPremiums();
+                    this.saveUpdateAccount(twoLevelUserId,secondDetailProportion,orderNo);
                 }else {
+                    totalDept =totalDept.add(insFeeOrderNew.getSecondDetailPremiums());
+                }
+//                     机构管理 费用给五级交钱机构管理费
+                if(totalDept.compareTo(BigDecimal.ZERO) ==0){
+                    BigDecimal jqDeptPremiumsLevel5 = insFeeOrderNew.getJqDeptPremiumsLevel5();
+                    jqDeptPremiumsLevel5.add(totalDept);
+                    insFeeOrderNewService.updateById(insFeeOrderNew);
+                }
+            }else {
 //                    一级分销
 
-                    if(StringUtils.isNotEmpty(insFeeOrderNew.getFirstLevelUserId())){
-                        String firstLevelUserId = insFeeOrderNew.getFirstLevelUserId();
-                        BigDecimal firstDetailPremiums = insFeeOrderNew.getFirstDetailPremiums();
-                        this.saveUpdateAccount(firstLevelUserId,firstDetailPremiums,orderNo);
-                    }else {
-                        if(insFeeOrderNew.getFirstDetailPremiums().compareTo(BigDecimal.ZERO) ==0){
-                            BigDecimal jqDeptPremiumsLevel5 = insFeeOrderNew.getJqDeptPremiumsLevel5();
-                            jqDeptPremiumsLevel5.add(insFeeOrderNew.getFirstDetailPremiums());
-                            insFeeOrderNewService.updateById(insFeeOrderNew);
-                        }
+                if(StringUtils.isNotEmpty(insFeeOrderNew.getFirstLevelUserId())){
+                    String firstLevelUserId = insFeeOrderNew.getFirstLevelUserId();
+                    BigDecimal firstDetailPremiums = insFeeOrderNew.getFirstDetailPremiums();
+                    this.saveUpdateAccount(firstLevelUserId,firstDetailPremiums,orderNo);
+                }else {
+                    if(insFeeOrderNew.getFirstDetailPremiums().compareTo(BigDecimal.ZERO) ==0){
+                        BigDecimal jqDeptPremiumsLevel5 = insFeeOrderNew.getJqDeptPremiumsLevel5();
+                        jqDeptPremiumsLevel5.add(insFeeOrderNew.getFirstDetailPremiums());
+                        insFeeOrderNewService.updateById(insFeeOrderNew);
                     }
                 }
             }
-
         }
 
+    }
+
     private void saveUpdateAccount(String userId, BigDecimal amount, String orderNo) {
         SysUserAccount sysUserAccount = new SysUserAccount();
         sysUserAccount.setUserId(userId);

+ 0 - 20
src/main/resources/mapper/modules/admin/SysDeptAccountDao.xml

@@ -1,20 +0,0 @@
-<?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.SysDeptAccountDao">
-
-
-    <resultMap id="BaseResultMap" type="com.ydtech.modules.admin.model.SysDeptAccountEntity">
-        <id column="dept_id" jdbcType="VARCHAR" property="deptId"/>
-        <result column="handling_fee" jdbcType="DECIMAL" property="handlingFee"/>
-        <result column="documentary" jdbcType="DECIMAL" property="documentary"/>
-        <result column="promotion" jdbcType="DECIMAL" property="promotion"/>
-        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
-    </resultMap>
-
-
-    <sql id="Base_Column_List">
-        dept_id
-        , handling_fee, documentary, promotion, create_time
-    </sql>
-
-</mapper>

+ 31 - 0
src/main/resources/mapper/modules/admin/SysDeptAccountMapper.xml

@@ -0,0 +1,31 @@
+<?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.SysDeptAccountMapper">
+
+
+    <resultMap id="BaseResultMap" type="com.ydtech.modules.admin.model.dto.SysDeptAccountDto">
+        <id column="dept_id" jdbcType="VARCHAR" property="deptId"/>
+        <result column="name" jdbcType="VARCHAR" property="deptName"/>
+        <result column="management_fee" jdbcType="DECIMAL" property="managementFee"/>
+        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
+    </resultMap>
+
+
+    <select id="getDept" resultMap="BaseResultMap">
+    SELECT
+        a.dept_id,
+        b.NAME,
+        a.management_fee,
+        a.create_time
+        FROM
+        sys_dept_account a
+        LEFT JOIN sys_dept b ON a.dept_id = b.id
+    where
+        <if test="sysDeptAccountDto.deptId != null and sysDeptAccountDto.deptId != ''">
+             a.dept_id like concat(#{sysDeptAccountDto.deptId},'%')
+        </if>
+        <if test="sysDeptAccountDto.deptName != null and sysDeptAccountDto.deptName != ''">
+            and b.name like concat(#{sysDeptAccountDto.deptName},'%')
+        </if>
+    </select>
+</mapper>