|
|
@ -21,6 +21,7 @@ import com.example.demo.mapper.coin.MarketMapper; |
|
|
import com.example.demo.mapper.coin.OperationLogMapper; |
|
|
import com.example.demo.mapper.coin.OperationLogMapper; |
|
|
import com.example.demo.mapper.coin.RefundMapper; |
|
|
import com.example.demo.mapper.coin.RefundMapper; |
|
|
import com.example.demo.service.cash.RefundService; |
|
|
import com.example.demo.service.cash.RefundService; |
|
|
|
|
|
import com.example.demo.service.coin.TranslationService; |
|
|
import com.github.pagehelper.PageHelper; |
|
|
import com.github.pagehelper.PageHelper; |
|
|
import com.github.pagehelper.PageInfo; |
|
|
import com.github.pagehelper.PageInfo; |
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
@ -67,6 +68,8 @@ public class CashRefundServiceImpl implements RefundService { |
|
|
private CashCollectionMapper cashCollectionMapper; |
|
|
private CashCollectionMapper cashCollectionMapper; |
|
|
@Autowired |
|
|
@Autowired |
|
|
private LanguageTranslationUtil languageTranslationUtil; |
|
|
private LanguageTranslationUtil languageTranslationUtil; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private TranslationService translationService; |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public PageInfo<CashRecordDTO> select(Integer pageNum, Integer pageSize, CashRecordDTO cashRecordDTO) { |
|
|
public PageInfo<CashRecordDTO> select(Integer pageNum, Integer pageSize, CashRecordDTO cashRecordDTO) { |
|
|
@ -176,54 +179,81 @@ public class CashRefundServiceImpl implements RefundService { |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public int add(CashRecordRefund cashRecordRefund, @RequestHeader(defaultValue = "zh_CN") String lang) throws Exception { |
|
|
public int add(CashRecordRefund cashRecordRefund, @RequestHeader(defaultValue = "zh_CN") String lang) throws Exception { |
|
|
if (cashRecordRefund.getJwcode() == null) { |
|
|
|
|
|
throw new Exception("未输入精网号"); |
|
|
|
|
|
} |
|
|
|
|
|
if (cashRecordRefund.getRefundModel() == null) { |
|
|
|
|
|
throw new Exception("请填充退款类型"); |
|
|
|
|
|
} |
|
|
|
|
|
if (cashRecordRefund.getRefundReason() == null) { |
|
|
|
|
|
throw new Exception("请填写退款理由"); |
|
|
|
|
|
} |
|
|
|
|
|
if (cashRecordRefund.getHandlingCharge() == null) { |
|
|
|
|
|
throw new Exception("请先填写手续费"); |
|
|
|
|
|
} |
|
|
|
|
|
CashRecordDone cashRecordDonetwo = new CashRecordDone(); |
|
|
|
|
|
cashRecordDonetwo.setAreaServise(cashRecordRefund.getAreaServise()); |
|
|
|
|
|
cashRefundMapper.addAudit(cashRecordDonetwo); |
|
|
|
|
|
cashRecordRefund.setAuditId(cashRecordDonetwo.getId()); |
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
if (cashRecordRefund.getJwcode() == null) { |
|
|
|
|
|
throw new Exception("未输入精网号"); |
|
|
|
|
|
} |
|
|
|
|
|
if (cashRecordRefund.getRefundModel() == null) { |
|
|
|
|
|
throw new Exception("请填充退款类型"); |
|
|
|
|
|
} |
|
|
|
|
|
if (cashRecordRefund.getRefundReason() == null) { |
|
|
|
|
|
throw new Exception("请填写退款理由"); |
|
|
|
|
|
} |
|
|
|
|
|
if (cashRecordRefund.getHandlingCharge() == null) { |
|
|
|
|
|
throw new Exception("请先填写手续费"); |
|
|
|
|
|
} |
|
|
|
|
|
if (cashRecordRefund.getMarket() == null || cashRecordRefund.getMarket().trim().isEmpty()) { |
|
|
|
|
|
throw new Exception("请选择所属地区"); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
cashRecordRefund.setStatus(10); |
|
|
|
|
|
//生成订单号后半部分 |
|
|
|
|
|
String orderNumber = cashRecordRefund.getOrderCode(); |
|
|
|
|
|
//构建订单信息 |
|
|
|
|
|
cashRecordRefund.setOrderCode("TK" + orderNumber); //订单号 |
|
|
|
|
|
cashRecordRefund.setMarket(String.valueOf(Integer.valueOf(marketMapper.getMarketId(cashRecordRefund.getMarket())))); |
|
|
|
|
|
cashRefundMapper.insert(cashRecordRefund); |
|
|
|
|
|
CashRecordDone cashRecordDone1 = new CashRecordDone(); |
|
|
|
|
|
cashRecordDone1.setId(cashRecordRefund.getOriginalOrderId()); |
|
|
|
|
|
cashRecordDone1.setStatus(6); |
|
|
|
|
|
if (cashRecordDone1.getId() != null || cashRecordDone1.getOrderCode() != null) |
|
|
|
|
|
cashRefundMapper.updateStatus(cashRecordDone1); |
|
|
|
|
|
else return Result.error("提交失败").getCode(); |
|
|
|
|
|
|
|
|
|
|
|
// 发送退款创建消息 |
|
|
|
|
|
Messages message = new Messages(); |
|
|
|
|
|
message.setJwcode(cashRecordRefund.getJwcode()); |
|
|
|
|
|
message.setName(cashRecordRefund.getName()); |
|
|
|
|
|
message.setStatus(cashRecordRefund.getStatus()); |
|
|
|
|
|
message.setDesc("的客服退款申请待审核,前往处理"); |
|
|
|
|
|
message.setTitle("现金退款--新增退款"); |
|
|
|
|
|
message.setType(0); |
|
|
|
|
|
message.setTypeId(cashRecordRefund.getId()); |
|
|
|
|
|
message.setMarket(Integer.valueOf(cashRecordRefund.getMarket())); |
|
|
|
|
|
String marketName = marketMapper.getMarketNameById(String.valueOf(message.getMarket())); |
|
|
|
|
|
message.setMarketName(marketName); |
|
|
|
|
|
message.setQueryId(103); |
|
|
|
|
|
rabbitTemplate.convertAndSend(RabbitMQConfig.CASH_REFUND_EXCHANGE, "cash.refund.save", message); |
|
|
|
|
|
|
|
|
|
|
|
return Result.success("提交成功").getCode(); |
|
|
|
|
|
|
|
|
CashRecordDone cashRecordDonetwo = new CashRecordDone(); |
|
|
|
|
|
cashRecordDonetwo.setAreaServise(cashRecordRefund.getAreaServise()); |
|
|
|
|
|
cashRefundMapper.addAudit(cashRecordDonetwo); |
|
|
|
|
|
cashRecordRefund.setAuditId(cashRecordDonetwo.getId()); |
|
|
|
|
|
|
|
|
|
|
|
cashRecordRefund.setStatus(10); |
|
|
|
|
|
//生成订单号后半部分 |
|
|
|
|
|
String orderNumber = cashRecordRefund.getOrderCode(); |
|
|
|
|
|
//构建订单信息 |
|
|
|
|
|
cashRecordRefund.setOrderCode("TK" + orderNumber); //订单号 |
|
|
|
|
|
|
|
|
|
|
|
// 查询市场 ID,增加空值检查和多语言支持 |
|
|
|
|
|
String marketName = cashRecordRefund.getMarket(); |
|
|
|
|
|
String marketId = marketMapper.getMarketId(marketName); |
|
|
|
|
|
|
|
|
|
|
|
// 如果直接查询失败,尝试将英文名称转换为中文后再次查询 |
|
|
|
|
|
if (marketId == null || marketId.trim().isEmpty()) { |
|
|
|
|
|
String chineseMarketName = translationService.findChineseSimplifiedByTranslation(marketName, "en"); |
|
|
|
|
|
if (chineseMarketName != null && !chineseMarketName.equals(marketName)) { |
|
|
|
|
|
marketId = marketMapper.getMarketId(chineseMarketName); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (marketId == null || marketId.trim().isEmpty()) { |
|
|
|
|
|
throw new Exception("无效的所属地区:" + cashRecordRefund.getMarket()); |
|
|
|
|
|
} |
|
|
|
|
|
cashRecordRefund.setMarket(String.valueOf(Integer.valueOf(marketId))); |
|
|
|
|
|
|
|
|
|
|
|
cashRefundMapper.insert(cashRecordRefund); |
|
|
|
|
|
CashRecordDone cashRecordDone1 = new CashRecordDone(); |
|
|
|
|
|
cashRecordDone1.setId(cashRecordRefund.getOriginalOrderId()); |
|
|
|
|
|
cashRecordDone1.setStatus(6); |
|
|
|
|
|
if (cashRecordDone1.getId() != null || cashRecordDone1.getOrderCode() != null) { |
|
|
|
|
|
cashRefundMapper.updateStatus(cashRecordDone1); |
|
|
|
|
|
} else { |
|
|
|
|
|
return Result.error("提交失败").getCode(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 发送退款创建消息 |
|
|
|
|
|
Messages message = new Messages(); |
|
|
|
|
|
message.setJwcode(cashRecordRefund.getJwcode()); |
|
|
|
|
|
message.setName(cashRecordRefund.getName()); |
|
|
|
|
|
message.setStatus(cashRecordRefund.getStatus()); |
|
|
|
|
|
message.setDesc("的客服退款申请待审核,前往处理"); |
|
|
|
|
|
message.setTitle("现金退款--新增退款"); |
|
|
|
|
|
message.setType(0); |
|
|
|
|
|
message.setTypeId(cashRecordRefund.getId()); |
|
|
|
|
|
message.setMarket(Integer.valueOf(cashRecordRefund.getMarket())); |
|
|
|
|
|
String marketName2 = marketMapper.getMarketNameById(String.valueOf(message.getMarket())); |
|
|
|
|
|
message.setMarketName(marketName2); |
|
|
|
|
|
message.setQueryId(103); |
|
|
|
|
|
rabbitTemplate.convertAndSend(RabbitMQConfig.CASH_REFUND_EXCHANGE, "cash.refund.save", message); |
|
|
|
|
|
|
|
|
|
|
|
return Result.success("提交成功").getCode(); |
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
|
log.error("add error", e); |
|
|
|
|
|
throw e; |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
|