|
|
@ -1,17 +1,24 @@ |
|
|
package com.example.demo.serviceImpl.cash; |
|
|
package com.example.demo.serviceImpl.cash; |
|
|
|
|
|
|
|
|
|
|
|
import com.example.demo.Util.GoldTistV2; |
|
|
|
|
|
import com.example.demo.domain.entity.UserGoldRecord; |
|
|
import com.example.demo.domain.vo.cash.CashRecordDone; |
|
|
import com.example.demo.domain.vo.cash.CashRecordDone; |
|
|
import com.example.demo.domain.vo.coin.Result; |
|
|
import com.example.demo.domain.vo.coin.Result; |
|
|
import com.example.demo.mapper.cash.CashRefundMapper; |
|
|
import com.example.demo.mapper.cash.CashRefundMapper; |
|
|
|
|
|
import com.example.demo.mapper.coin.AuditMapper; |
|
|
|
|
|
import com.example.demo.mapper.coin.RefundMapper; |
|
|
import com.example.demo.service.cash.RefundService; |
|
|
import com.example.demo.service.cash.RefundService; |
|
|
import com.github.pagehelper.PageHelper; |
|
|
import com.github.pagehelper.PageHelper; |
|
|
import com.github.pagehelper.PageInfo; |
|
|
import com.github.pagehelper.PageInfo; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.stereotype.Service; |
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
|
|
|
|
import java.time.LocalDate; |
|
|
import java.util.List; |
|
|
import java.util.List; |
|
|
import java.util.UUID; |
|
|
import java.util.UUID; |
|
|
|
|
|
|
|
|
|
|
|
import static org.apache.commons.lang3.StringUtils.substring; |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* @program: GOLD |
|
|
* @program: GOLD |
|
|
* @ClassName CashRefundServiceImpl |
|
|
* @ClassName CashRefundServiceImpl |
|
|
@ -26,6 +33,10 @@ public class CashRefundServiceImpl implements RefundService { |
|
|
|
|
|
|
|
|
@Autowired |
|
|
@Autowired |
|
|
private CashRefundMapper cashRefundMapper; |
|
|
private CashRefundMapper cashRefundMapper; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private RefundMapper refundMapper; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private AuditMapper auditMapper; |
|
|
@Override |
|
|
@Override |
|
|
public PageInfo<CashRecordDone> select(Integer pageNum, Integer pageSize, CashRecordDone cashRecordDone) { |
|
|
public PageInfo<CashRecordDone> select(Integer pageNum, Integer pageSize, CashRecordDone cashRecordDone) { |
|
|
PageHelper.startPage(pageNum, pageSize); |
|
|
PageHelper.startPage(pageNum, pageSize); |
|
|
@ -57,9 +68,9 @@ public class CashRefundServiceImpl implements RefundService { |
|
|
cashRecordDone.setOrderType(2); |
|
|
cashRecordDone.setOrderType(2); |
|
|
cashRecordDone.setStatus(10); |
|
|
cashRecordDone.setStatus(10); |
|
|
//生成订单号后半部分 |
|
|
//生成订单号后半部分 |
|
|
String orderNumber = UUID.randomUUID().toString().replaceAll("-", ""); |
|
|
|
|
|
|
|
|
String orderNumber = cashRecordDone.getOrderCode(); |
|
|
//构建订单信息 |
|
|
//构建订单信息 |
|
|
cashRecordDone.setOrderCode("TKXJ_" + orderNumber); //订单号 |
|
|
|
|
|
|
|
|
cashRecordDone.setOrderCode("TK_" + orderNumber); //订单号 |
|
|
cashRefundMapper.insert(cashRecordDone); |
|
|
cashRefundMapper.insert(cashRecordDone); |
|
|
CashRecordDone cashRecordDone1 = new CashRecordDone(); |
|
|
CashRecordDone cashRecordDone1 = new CashRecordDone(); |
|
|
cashRecordDone1.setId(cashRecordDone.getId()); |
|
|
cashRecordDone1.setId(cashRecordDone.getId()); |
|
|
@ -95,6 +106,12 @@ public class CashRefundServiceImpl implements RefundService { |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public int review(CashRecordDone cashRecordDone) { |
|
|
public int review(CashRecordDone cashRecordDone) { |
|
|
|
|
|
if(cashRecordDone.getStatus()== 12|| cashRecordDone.getStatus()== 22){ |
|
|
|
|
|
CashRecordDone cashRecordDone1 = new CashRecordDone(); |
|
|
|
|
|
cashRecordDone1.setOrderCode(cashRecordDone.getOrderCode().substring(2)); |
|
|
|
|
|
cashRecordDone1.setStatus(4); |
|
|
|
|
|
cashRefundMapper.updateStatus(cashRecordDone1); |
|
|
|
|
|
} |
|
|
int result = cashRefundMapper.review(cashRecordDone); |
|
|
int result = cashRefundMapper.review(cashRecordDone); |
|
|
return (result > 0 ? Result.success("提交成功") : Result.error("提交失败")).getCode(); |
|
|
return (result > 0 ? Result.success("提交成功") : Result.error("提交失败")).getCode(); |
|
|
} |
|
|
} |
|
|
@ -127,4 +144,50 @@ public class CashRefundServiceImpl implements RefundService { |
|
|
public int updateStatus(CashRecordDone cashRecordDone) { |
|
|
public int updateStatus(CashRecordDone cashRecordDone) { |
|
|
return cashRefundMapper.updateStatus(cashRecordDone); |
|
|
return cashRefundMapper.updateStatus(cashRecordDone); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public int finalreview(CashRecordDone cashRecordDone) { |
|
|
|
|
|
if(cashRecordDone.getStatus()== 32){ |
|
|
|
|
|
CashRecordDone cashRecordDone1 = new CashRecordDone(); |
|
|
|
|
|
cashRecordDone1.setOrderCode(cashRecordDone.getOrderCode().substring(2)); |
|
|
|
|
|
cashRecordDone1.setStatus(4); |
|
|
|
|
|
cashRefundMapper.updateStatus(cashRecordDone1); |
|
|
|
|
|
} |
|
|
|
|
|
if (cashRecordDone.getGoodsName() != null && |
|
|
|
|
|
(cashRecordDone.getGoodsName().equals("金币充值") || |
|
|
|
|
|
cashRecordDone.getGoodsName().contains("金币充值"))) { |
|
|
|
|
|
UserGoldRecord userGoldRecord = new UserGoldRecord(); |
|
|
|
|
|
userGoldRecord.setOrderCode(cashRecordDone.getOrderCode()); |
|
|
|
|
|
userGoldRecord.setType((byte) 2); |
|
|
|
|
|
userGoldRecord.setIsRefund((byte) 1); |
|
|
|
|
|
userGoldRecord.setRefundType("金币退款"); |
|
|
|
|
|
userGoldRecord.setCrefundModel(cashRecordDone.getRefundModel()); |
|
|
|
|
|
userGoldRecord.setJwcode(cashRecordDone.getJwcode()); |
|
|
|
|
|
userGoldRecord.setSumGold(cashRecordDone.getPermanentGold()+cashRecordDone.getFreeGold()); |
|
|
|
|
|
userGoldRecord.setPermanentGold(cashRecordDone.getPermanentGold()); |
|
|
|
|
|
int currentMonth = LocalDate.now().getMonthValue(); |
|
|
|
|
|
if (currentMonth >= 1 && currentMonth <= 6) { |
|
|
|
|
|
// 1-6月:设置12月额度,6月保持默认值 |
|
|
|
|
|
userGoldRecord.setFreeJune(0); |
|
|
|
|
|
userGoldRecord.setFreeDecember(cashRecordDone.getFreeGold()); |
|
|
|
|
|
} else { |
|
|
|
|
|
// 7-12月:设置6月额度,12月保持默认值 |
|
|
|
|
|
userGoldRecord.setFreeJune(cashRecordDone.getFreeGold()); |
|
|
|
|
|
userGoldRecord.setFreeDecember(0); |
|
|
|
|
|
} |
|
|
|
|
|
userGoldRecord.setGoodsName(cashRecordDone.getGoodsName()); |
|
|
|
|
|
userGoldRecord.setPayPlatform("金币系统"); |
|
|
|
|
|
userGoldRecord.setRemark(cashRecordDone.getRemark()); |
|
|
|
|
|
userGoldRecord.setAdminId(cashRecordDone.getAuditId()); |
|
|
|
|
|
userGoldRecord.setAuditStatus(1); |
|
|
|
|
|
String auditName = auditMapper.getName(cashRecordDone.getAuditId()); |
|
|
|
|
|
refundMapper.add(userGoldRecord); |
|
|
|
|
|
|
|
|
|
|
|
GoldTistV2.addCoinNew(userGoldRecord.getJwcode().toString(), 58, //退款免费+永久金币-充值 |
|
|
|
|
|
(double) (userGoldRecord.getFreeDecember()+userGoldRecord.getFreeJune()+userGoldRecord.getPermanentGold() ) /100, |
|
|
|
|
|
userGoldRecord.getRemark(),(double) userGoldRecord.getPermanentGold() / 100, auditName, "退款金币充值");} |
|
|
|
|
|
|
|
|
|
|
|
int result = cashRefundMapper.review(cashRecordDone); |
|
|
|
|
|
return (result > 0 ? Result.success("提交成功") : Result.error("提交失败")).getCode(); |
|
|
|
|
|
} |
|
|
} |
|
|
} |