浏览代码

结汇需求修改

yzc 1 年之前
父节点
当前提交
6804c410d9
共有 23 个文件被更改,包括 432 次插入16 次删除
  1. 2 1
      hx-account/src/main/java/com/fjhx/account/controller/account/AccountRunningWaterController.java
  2. 20 0
      hx-account/src/main/java/com/fjhx/account/controller/exchange/ExchangeSettlementController.java
  3. 20 0
      hx-account/src/main/java/com/fjhx/account/controller/exchange/ExchangeSettlementRecordsController.java
  4. 25 0
      hx-account/src/main/java/com/fjhx/account/entity/exchange/dto/ExchangeSettlementDto.java
  5. 17 0
      hx-account/src/main/java/com/fjhx/account/entity/exchange/dto/ExchangeSettlementRecordsDto.java
  6. 17 0
      hx-account/src/main/java/com/fjhx/account/entity/exchange/dto/ExchangeSettlementRecordsSelectDto.java
  7. 17 0
      hx-account/src/main/java/com/fjhx/account/entity/exchange/dto/ExchangeSettlementSelectDto.java
  8. 73 0
      hx-account/src/main/java/com/fjhx/account/entity/exchange/po/ExchangeSettlement.java
  9. 38 0
      hx-account/src/main/java/com/fjhx/account/entity/exchange/po/ExchangeSettlementRecords.java
  10. 17 0
      hx-account/src/main/java/com/fjhx/account/entity/exchange/vo/ExchangeSettlementRecordsVo.java
  11. 17 0
      hx-account/src/main/java/com/fjhx/account/entity/exchange/vo/ExchangeSettlementVo.java
  12. 1 1
      hx-account/src/main/java/com/fjhx/account/mapper/account/AccountRunningWaterMapper.java
  13. 17 0
      hx-account/src/main/java/com/fjhx/account/mapper/exchange/ExchangeSettlementMapper.java
  14. 17 0
      hx-account/src/main/java/com/fjhx/account/mapper/exchange/ExchangeSettlementRecordsMapper.java
  15. 2 1
      hx-account/src/main/java/com/fjhx/account/service/account/AccountRunningWaterService.java
  16. 37 11
      hx-account/src/main/java/com/fjhx/account/service/account/impl/AccountRunningWaterServiceImpl.java
  17. 17 0
      hx-account/src/main/java/com/fjhx/account/service/exchange/ExchangeSettlementRecordsService.java
  18. 17 0
      hx-account/src/main/java/com/fjhx/account/service/exchange/ExchangeSettlementService.java
  19. 21 0
      hx-account/src/main/java/com/fjhx/account/service/exchange/impl/ExchangeSettlementRecordsServiceImpl.java
  20. 21 0
      hx-account/src/main/java/com/fjhx/account/service/exchange/impl/ExchangeSettlementServiceImpl.java
  21. 11 2
      hx-account/src/main/resources/mapper/account/AccountRunningWaterMapper.xml
  22. 4 0
      hx-account/src/main/resources/mapper/exchange/ExchangeSettlementMapper.xml
  23. 4 0
      hx-account/src/main/resources/mapper/exchange/ExchangeSettlementRecordsMapper.xml

+ 2 - 1
hx-account/src/main/java/com/fjhx/account/controller/account/AccountRunningWaterController.java

@@ -6,6 +6,7 @@ import com.fjhx.account.entity.account.dto.AccountRunningWaterDto;
 import com.fjhx.account.entity.account.dto.AccountRunningWaterSelectDto;
 import com.fjhx.account.entity.account.po.AccountRunningWater;
 import com.fjhx.account.entity.account.vo.AccountRunningWaterVo;
+import com.fjhx.account.entity.exchange.dto.ExchangeSettlementDto;
 import com.fjhx.account.service.account.AccountRunningWaterService;
 import com.fjhx.common.constant.SourceConstant;
 import com.ruoyi.common.core.domain.BaseSelectDto;
@@ -119,7 +120,7 @@ public class AccountRunningWaterController {
      * 结汇
      */
     @PostMapping("/exchangeSettlement")
-    public void exchangeSettlement(@RequestBody AccountRunningWaterDto dto) {
+    public void exchangeSettlement(@RequestBody ExchangeSettlementDto dto) {
         accountRunningWaterService.exchangeSettlement(dto);
     }
 

+ 20 - 0
hx-account/src/main/java/com/fjhx/account/controller/exchange/ExchangeSettlementController.java

@@ -0,0 +1,20 @@
+package com.fjhx.account.controller.exchange;
+
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * 结汇 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@RestController
+@RequestMapping("/exchangeSettlement")
+public class ExchangeSettlementController {
+
+
+}

+ 20 - 0
hx-account/src/main/java/com/fjhx/account/controller/exchange/ExchangeSettlementRecordsController.java

@@ -0,0 +1,20 @@
+package com.fjhx.account.controller.exchange;
+
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * 结汇记录 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@RestController
+@RequestMapping("/exchangeSettlementRecords")
+public class ExchangeSettlementRecordsController {
+
+
+}

+ 25 - 0
hx-account/src/main/java/com/fjhx/account/entity/exchange/dto/ExchangeSettlementDto.java

@@ -0,0 +1,25 @@
+package com.fjhx.account.entity.exchange.dto;
+
+import com.fjhx.account.entity.exchange.po.ExchangeSettlement;
+import com.fjhx.account.entity.exchange.po.ExchangeSettlementRecords;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * 结汇新增编辑入参实体
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Getter
+@Setter
+public class ExchangeSettlementDto extends ExchangeSettlement {
+
+    /**
+     * 结汇记录列表
+     */
+    List<ExchangeSettlementRecords> exchangeSettlementRecordsList;
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/entity/exchange/dto/ExchangeSettlementRecordsDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.entity.exchange.dto;
+
+import com.fjhx.account.entity.exchange.po.ExchangeSettlementRecords;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 结汇记录新增编辑入参实体
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Getter
+@Setter
+public class ExchangeSettlementRecordsDto extends ExchangeSettlementRecords {
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/entity/exchange/dto/ExchangeSettlementRecordsSelectDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.entity.exchange.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 结汇记录列表查询入参实体
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Getter
+@Setter
+public class ExchangeSettlementRecordsSelectDto extends BaseSelectDto {
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/entity/exchange/dto/ExchangeSettlementSelectDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.entity.exchange.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 结汇列表查询入参实体
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Getter
+@Setter
+public class ExchangeSettlementSelectDto extends BaseSelectDto {
+
+}

+ 73 - 0
hx-account/src/main/java/com/fjhx/account/entity/exchange/po/ExchangeSettlement.java

@@ -0,0 +1,73 @@
+package com.fjhx.account.entity.exchange.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+/**
+ * <p>
+ * 结汇
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Getter
+@Setter
+@TableName("exchange_settlement")
+public class ExchangeSettlement extends BasePo {
+
+    /**
+     * 汇出账户
+     */
+    private Long accountManagementId;
+
+    /**
+     * 汇出金额
+     */
+    private BigDecimal amount;
+
+    /**
+     * 汇出币种
+     */
+    private String currency;
+
+    /**
+     * 汇入账户
+     */
+    private Long inAccountManagementId;
+
+    /**
+     * 汇入金额
+     */
+    private BigDecimal inAmount;
+
+    /**
+     * 汇率币种
+     */
+    private String inCurrency;
+
+    /**
+     * 汇率
+     */
+    private BigDecimal rate;
+
+    /**
+     * 手续费金额
+     */
+    private BigDecimal commissionAmount;
+
+    /**
+     * 手续费币种
+     */
+    private String commissionCurrency;
+
+    /**
+     * 备注
+     */
+    private String remarks;
+
+}

+ 38 - 0
hx-account/src/main/java/com/fjhx/account/entity/exchange/po/ExchangeSettlementRecords.java

@@ -0,0 +1,38 @@
+package com.fjhx.account.entity.exchange.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+/**
+ * <p>
+ * 结汇记录
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Getter
+@Setter
+@TableName("exchange_settlement_records")
+public class ExchangeSettlementRecords extends BasePo {
+
+    /**
+     * 结汇id
+     */
+    private Long exchangeSettlementId;
+
+    /**
+     * 关联合同
+     */
+    private Long contractId;
+
+    /**
+     * 关联金额
+     */
+    private BigDecimal amount;
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/entity/exchange/vo/ExchangeSettlementRecordsVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.entity.exchange.vo;
+
+import com.fjhx.account.entity.exchange.po.ExchangeSettlementRecords;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 结汇记录列表查询返回值实体
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Getter
+@Setter
+public class ExchangeSettlementRecordsVo extends ExchangeSettlementRecords {
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/entity/exchange/vo/ExchangeSettlementVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.entity.exchange.vo;
+
+import com.fjhx.account.entity.exchange.po.ExchangeSettlement;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 结汇列表查询返回值实体
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Getter
+@Setter
+public class ExchangeSettlementVo extends ExchangeSettlement {
+
+}

+ 1 - 1
hx-account/src/main/java/com/fjhx/account/mapper/account/AccountRunningWaterMapper.java

@@ -43,5 +43,5 @@ public interface AccountRunningWaterMapper extends BaseMapper<AccountRunningWate
     /**
      * 修改合同结汇状态
      */
-    void exchangeSettlementByContractId(@Param("contractId") Long contractId, @Param("status") Integer status);
+    void exchangeSettlementByContractId(@Param("contractIds") List<Long> contractIds, @Param("status") Integer status);
 }

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/mapper/exchange/ExchangeSettlementMapper.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.mapper.exchange;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fjhx.account.entity.exchange.po.ExchangeSettlement;
+
+
+/**
+ * <p>
+ * 结汇 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+public interface ExchangeSettlementMapper extends BaseMapper<ExchangeSettlement> {
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/mapper/exchange/ExchangeSettlementRecordsMapper.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.mapper.exchange;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fjhx.account.entity.exchange.po.ExchangeSettlementRecords;
+
+
+/**
+ * <p>
+ * 结汇记录 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+public interface ExchangeSettlementRecordsMapper extends BaseMapper<ExchangeSettlementRecords> {
+
+}

+ 2 - 1
hx-account/src/main/java/com/fjhx/account/service/account/AccountRunningWaterService.java

@@ -5,6 +5,7 @@ import com.fjhx.account.entity.account.dto.AccountRunningWaterDto;
 import com.fjhx.account.entity.account.dto.AccountRunningWaterSelectDto;
 import com.fjhx.account.entity.account.po.AccountRunningWater;
 import com.fjhx.account.entity.account.vo.AccountRunningWaterVo;
+import com.fjhx.account.entity.exchange.dto.ExchangeSettlementDto;
 import com.ruoyi.common.core.domain.BaseSelectDto;
 import com.ruoyi.common.core.service.BaseService;
 
@@ -80,5 +81,5 @@ public interface AccountRunningWaterService extends BaseService<AccountRunningWa
     /**
      * 结汇
      */
-    void exchangeSettlement(AccountRunningWaterDto dto);
+    void exchangeSettlement(ExchangeSettlementDto dto);
 }

+ 37 - 11
hx-account/src/main/java/com/fjhx/account/service/account/impl/AccountRunningWaterServiceImpl.java

@@ -17,6 +17,8 @@ import com.fjhx.account.entity.account.po.AccountManagement;
 import com.fjhx.account.entity.account.po.AccountRemainder;
 import com.fjhx.account.entity.account.po.AccountRunningWater;
 import com.fjhx.account.entity.account.vo.AccountRunningWaterVo;
+import com.fjhx.account.entity.exchange.dto.ExchangeSettlementDto;
+import com.fjhx.account.entity.exchange.po.ExchangeSettlementRecords;
 import com.fjhx.account.entity.tax.po.TaxRefundDetails;
 import com.fjhx.account.entity.transaction.po.Transaction;
 import com.fjhx.account.entity.transaction.po.TransactionDepartment;
@@ -24,6 +26,8 @@ import com.fjhx.account.mapper.account.AccountRunningWaterMapper;
 import com.fjhx.account.service.account.AccountManagementService;
 import com.fjhx.account.service.account.AccountRemainderService;
 import com.fjhx.account.service.account.AccountRunningWaterService;
+import com.fjhx.account.service.exchange.ExchangeSettlementRecordsService;
+import com.fjhx.account.service.exchange.ExchangeSettlementService;
 import com.fjhx.account.service.tax.TaxRefundDetailsService;
 import com.fjhx.account.service.transaction.TransactionDepartmentService;
 import com.fjhx.account.service.transaction.TransactionService;
@@ -81,6 +85,10 @@ public class AccountRunningWaterServiceImpl extends ServiceImpl<AccountRunningWa
     private TransactionService transactionService;
     @Autowired
     private TransactionDepartmentService transactionDepartmentService;
+    @Autowired
+    private ExchangeSettlementService exchangeSettlementService;
+    @Autowired
+    private ExchangeSettlementRecordsService exchangeSettlementRecordsService;
 
 
     /**
@@ -594,16 +602,33 @@ public class AccountRunningWaterServiceImpl extends ServiceImpl<AccountRunningWa
     /**
      * 结汇
      */
+    @DSTransactional
     @Override
-    public void exchangeSettlement(AccountRunningWaterDto dto) {
-        dto.setTransactionTime(new Date());
+    public void exchangeSettlement(ExchangeSettlementDto dto) {
+        //交易时间
+        Date transactionTime = new Date();
+
+        //保存结汇相关信息
+        exchangeSettlementService.save(dto);
+        List<ExchangeSettlementRecords> exchangeSettlementRecordsList = dto.getExchangeSettlementRecordsList();
+        Assert.notEmpty(exchangeSettlementRecordsList, "关联合同不能为空");
+        exchangeSettlementRecordsList.forEach(item -> item.setExchangeSettlementId(dto.getId()));
+        exchangeSettlementRecordsService.saveBatch(exchangeSettlementRecordsList);
 
         //生成转出流水
-        dto.setStatus("20");//支出
-        dto.setType(AccountRunningWaterEnum.EXCHANGE_SETTLEMENT.getKey());
+        AccountRunningWater outAccountRunningWater = new AccountRunningWater();
+        outAccountRunningWater.setStatus("20");//支出
+        outAccountRunningWater.setType(AccountRunningWaterEnum.EXCHANGE_SETTLEMENT.getKey());
+        outAccountRunningWater.setRemarks(dto.getRemarks());
+        outAccountRunningWater.setTransactionTime(transactionTime);
+        outAccountRunningWater.setAccountManagementId(dto.getAccountManagementId());
+        outAccountRunningWater.setAmount(dto.getAmount());
+        Assert.notEmpty(dto.getCurrency(), "汇入入币种不能为空");
+        outAccountRunningWater.setCurrency(dto.getCurrency());
+        outAccountRunningWater.setBusinessId(dto.getId());
         //操作余额
-        changeRemainder(dto);
-        this.save(dto);
+        changeRemainder(outAccountRunningWater);
+        this.save(outAccountRunningWater);
 
         //如果手续费不为0生成手续费
         if (ObjectUtil.isNotEmpty(dto.getCommissionAmount()) && dto.getCommissionAmount().compareTo(BigDecimal.ZERO) != 0) {
@@ -611,13 +636,13 @@ public class AccountRunningWaterServiceImpl extends ServiceImpl<AccountRunningWa
             commissionAccountRunningWater.setStatus("20");
             commissionAccountRunningWater.setType(AccountRunningWaterEnum.EXCHANGE_SETTLEMENT.getKey());
             commissionAccountRunningWater.setRemarks(dto.getRemarks());
-            commissionAccountRunningWater.setTransactionTime(dto.getTransactionTime());
+            commissionAccountRunningWater.setTransactionTime(transactionTime);
             commissionAccountRunningWater.setAccountManagementId(dto.getAccountManagementId());
             commissionAccountRunningWater.setAmount(dto.getCommissionAmount());
             Assert.notEmpty(dto.getCommissionCurrency(), "手续费币种不能为空");
             commissionAccountRunningWater.setCurrency(dto.getCommissionCurrency());
             commissionAccountRunningWater.setRemarks("结汇手续费");
-            commissionAccountRunningWater.setBusinessId(dto.getBusinessId());
+            commissionAccountRunningWater.setBusinessId(dto.getId());
             //操作余额
             changeRemainder(commissionAccountRunningWater);
             this.save(commissionAccountRunningWater);
@@ -628,18 +653,19 @@ public class AccountRunningWaterServiceImpl extends ServiceImpl<AccountRunningWa
         inAccountRunningWater.setStatus("10");
         inAccountRunningWater.setType(AccountRunningWaterEnum.EXCHANGE_SETTLEMENT.getKey());
         inAccountRunningWater.setRemarks(dto.getRemarks());
-        inAccountRunningWater.setTransactionTime(dto.getTransactionTime());
+        inAccountRunningWater.setTransactionTime(transactionTime);
         inAccountRunningWater.setAccountManagementId(dto.getInAccountManagementId());
         inAccountRunningWater.setAmount(dto.getInAmount());
         Assert.notEmpty(dto.getInCurrency(), "汇入入币种不能为空");
         inAccountRunningWater.setCurrency(dto.getInCurrency());
-        inAccountRunningWater.setBusinessId(dto.getBusinessId());
+        inAccountRunningWater.setBusinessId(dto.getId());
         //操作余额
         changeRemainder(inAccountRunningWater);
         this.save(inAccountRunningWater);
         //修改合同为已结汇
         DynamicDataSourceContextHolder.push(SourceConstant.SALE);
-        baseMapper.exchangeSettlementByContractId(dto.getBusinessId(), 1);
+        List<Long> contractIds = exchangeSettlementRecordsList.stream().map(ExchangeSettlementRecords::getContractId).collect(Collectors.toList());
+        baseMapper.exchangeSettlementByContractId(contractIds, 1);
         DynamicDataSourceContextHolder.poll();
     }
 

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/service/exchange/ExchangeSettlementRecordsService.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.service.exchange;
+
+import com.fjhx.account.entity.exchange.po.ExchangeSettlementRecords;
+import com.ruoyi.common.core.service.BaseService;
+
+
+/**
+ * <p>
+ * 结汇记录 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+public interface ExchangeSettlementRecordsService extends BaseService<ExchangeSettlementRecords> {
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/service/exchange/ExchangeSettlementService.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.service.exchange;
+
+import com.fjhx.account.entity.exchange.po.ExchangeSettlement;
+import com.ruoyi.common.core.service.BaseService;
+
+
+/**
+ * <p>
+ * 结汇 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+public interface ExchangeSettlementService extends BaseService<ExchangeSettlement> {
+
+}

+ 21 - 0
hx-account/src/main/java/com/fjhx/account/service/exchange/impl/ExchangeSettlementRecordsServiceImpl.java

@@ -0,0 +1,21 @@
+package com.fjhx.account.service.exchange.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.account.entity.exchange.po.ExchangeSettlementRecords;
+import com.fjhx.account.mapper.exchange.ExchangeSettlementRecordsMapper;
+import com.fjhx.account.service.exchange.ExchangeSettlementRecordsService;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * <p>
+ * 结汇记录 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Service
+public class ExchangeSettlementRecordsServiceImpl extends ServiceImpl<ExchangeSettlementRecordsMapper, ExchangeSettlementRecords> implements ExchangeSettlementRecordsService {
+
+}

+ 21 - 0
hx-account/src/main/java/com/fjhx/account/service/exchange/impl/ExchangeSettlementServiceImpl.java

@@ -0,0 +1,21 @@
+package com.fjhx.account.service.exchange.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.account.entity.exchange.po.ExchangeSettlement;
+import com.fjhx.account.mapper.exchange.ExchangeSettlementMapper;
+import com.fjhx.account.service.exchange.ExchangeSettlementService;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * <p>
+ * 结汇 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-10-24
+ */
+@Service
+public class ExchangeSettlementServiceImpl extends ServiceImpl<ExchangeSettlementMapper, ExchangeSettlement> implements ExchangeSettlementService {
+
+}

+ 11 - 2
hx-account/src/main/resources/mapper/account/AccountRunningWaterMapper.xml

@@ -4,7 +4,10 @@
     <!--这段代码正常是不需要跨库查询的。但是一开始封装包的时候分装的不合理,pom里面包是不能互相引用的。account包继承sale包会出现依赖冲突,目前不好改动,只能跨库查询-->
     <select id="getPage" resultType="com.fjhx.account.entity.account.vo.AccountRunningWaterVo">
         SELECT arw.*,
-               if(arw.type = 60, (select c.`code` from bytesailing_sale.contract c where c.id = arw.business_id),
+               if(arw.type = 60, (select GROUP_CONCAT(c.`code`)
+                                  from bytesailing_sale.contract c
+                                           join exchange_settlement_records esr on esr.contract_id = c.id
+                                  where esr.exchange_settlement_id = arw.business_id),
                   IF
                       (
                               arw.type = 40,
@@ -148,7 +151,13 @@
     <update id="exchangeSettlementByContractId">
         update contract
         set is_exchange_settlement = #{status}
-        where id = #{contractId}
+        <where>
+            <if test="contractIds neq null and contractIds.size() > 0">
+                <foreach collection="contractIds" item="contractId" open="AND id IN (" separator="," close=")">
+                    #{contractId}
+                </foreach>
+            </if>
+        </where>
     </update>
 
 </mapper>

+ 4 - 0
hx-account/src/main/resources/mapper/exchange/ExchangeSettlementMapper.xml

@@ -0,0 +1,4 @@
+<?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.fjhx.account.mapper.exchange.ExchangeSettlementMapper">
+</mapper>

+ 4 - 0
hx-account/src/main/resources/mapper/exchange/ExchangeSettlementRecordsMapper.xml

@@ -0,0 +1,4 @@
+<?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.fjhx.account.mapper.exchange.ExchangeSettlementRecordsMapper">
+</mapper>