xiaoyong931011
2021-05-25 75f037fc3b7c6a0012c89db7a608321c18660474
src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcServiceImpl.java
@@ -15,14 +15,8 @@
import com.xcong.excoin.modules.member.entity.MemberWalletCoinEntity;
import com.xcong.excoin.modules.member.mapper.MemberMapper;
import com.xcong.excoin.modules.member.mapper.MemberWalletCoinMapper;
import com.xcong.excoin.modules.otc.entity.OtcEntrustOrderEntity;
import com.xcong.excoin.modules.otc.entity.OtcMarketBussinessEntity;
import com.xcong.excoin.modules.otc.entity.OtcOrderAppealEntity;
import com.xcong.excoin.modules.otc.entity.OtcOrderEntity;
import com.xcong.excoin.modules.otc.mapper.OtcEntrustOrderMapper;
import com.xcong.excoin.modules.otc.mapper.OtcMarketBussinessMapper;
import com.xcong.excoin.modules.otc.mapper.OtcOrderAppealMapper;
import com.xcong.excoin.modules.otc.mapper.OtcOrderMapper;
import com.xcong.excoin.modules.otc.entity.*;
import com.xcong.excoin.modules.otc.mapper.*;
import com.xcong.excoin.modules.otc.service.OtcService;
import com.xcong.excoin.modules.otc.vo.OtcAppealInfoVo;
import lombok.RequiredArgsConstructor;
@@ -46,6 +40,8 @@
    private OtcEntrustOrderMapper otcEntrustOrderMapper;
    @Resource
    private OtcOrderMapper otcOrderMapper;
    @Resource
    private OtcSettingMapper otcSettingMapper;
    @Resource
    private MemberWalletCoinMapper memberWalletCoinMapper;
    @Resource
@@ -227,4 +223,76 @@
        return new FebsResponse().success();
    }
    @Override
    public OtcMarketBussinessEntity otcHuiKuan(long id) {
        return otcMarketBussinessMapper.selectById(id);
    }
    @Override
    @Transactional
    public FebsResponse otcHuiKuan(OtcMarketBussinessEntity otcMarketBussinessEntity) {
        Long id = otcMarketBussinessEntity.getId();
        OtcMarketBussinessEntity otcMarketBussiness = otcMarketBussinessMapper.selectById(id);
        if(ObjectUtil.isNotEmpty(otcMarketBussiness)){
            return new FebsResponse().fail().message("连接超时,请刷新页面重试");
        }
        BigDecimal coinAmount = otcMarketBussinessEntity.getCoinAmount();
        if(coinAmount.compareTo(BigDecimal.ZERO) <= 0){
            return new FebsResponse().fail().message("请输入正确的回款金额");
        }
        BigDecimal waitBackMoney = otcMarketBussiness.getWaitBackMoney();
        if(coinAmount.compareTo(waitBackMoney) > 0){
            return new FebsResponse().fail().message("请输入正确的回款金额");
        }
        /**
         * 增加已回款金额
         * 减少待回款金额
         * 增加汇款记录
         */
        BigDecimal hasBackMoney = otcMarketBussiness.getHasBackMoney();
        BigDecimal add = hasBackMoney.add(coinAmount);
        otcMarketBussiness.setHasBackMoney(add);
        BigDecimal subtract = waitBackMoney.subtract(coinAmount);
        otcMarketBussiness.setWaitBackMoney(subtract);
        otcMarketBussinessMapper.updateById(otcMarketBussiness);
        return new FebsResponse().success();
    }
    @Override
    public IPage<OtcSettingEntity> otcSettingList(OtcSettingEntity otcSettingEntity, QueryRequest request) {
        Page<OtcSettingEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<OtcSettingEntity> otcSettingEntitys = otcSettingMapper.otcSettingList(page, otcSettingEntity);
        return otcSettingEntitys;
    }
    @Override
    public OtcSettingEntity otcSettingUpdate(long id) {
        return otcSettingMapper.selectById(id);
    }
    @Override
    public FebsResponse updateOtcSetting(OtcSettingEntity otcSettingEntity) {
        Integer orderNum = otcSettingEntity.getOrderNum();
        if(ObjectUtil.isEmpty(orderNum) || orderNum < 0){
            return new FebsResponse().fail().message("请设置正确的总单数");
        }
        BigDecimal completionRate = otcSettingEntity.getCompletionRate();
        if(ObjectUtil.isEmpty(completionRate) || completionRate.compareTo(BigDecimal.ZERO) < 0){
            return new FebsResponse().fail().message("请设置正确的完成率");
        }
        BigDecimal totalAmount = otcSettingEntity.getTotalAmount();
        if(ObjectUtil.isEmpty(totalAmount) || totalAmount.compareTo(BigDecimal.ZERO) < 0){
            return new FebsResponse().fail().message("请设置正确的总金额");
        }
        Integer cancellNum = otcSettingEntity.getCancellNum();
        if(ObjectUtil.isEmpty(cancellNum) || cancellNum < 0){
            return new FebsResponse().fail().message("请设置正确的取消次数");
        }
        otcSettingMapper.updateById(otcSettingEntity);
        return new FebsResponse().success();
    }
}