Browse Source

9月11商品校验

milestone-20250727-金币重构三期
sunjiabei 4 weeks ago
parent
commit
9722b53a60
  1. 2
      src/main/java/com/example/demo/controller/coin/RefundController.java
  2. 2
      src/main/java/com/example/demo/mapper/coin/ConsumeMapper.java
  3. 3
      src/main/java/com/example/demo/mapper/coin/RechargeMapper.java
  4. 29
      src/main/java/com/example/demo/serviceImpl/coin/RefundServiceImpl.java
  5. 11
      src/main/resources/mapper/RechargeMapper.xml

2
src/main/java/com/example/demo/controller/coin/RefundController.java

@ -135,6 +135,7 @@ public class RefundController {
try {
return refundService.add(refundUser);
} catch (Exception e) {
e.printStackTrace();
return Result.error("请检查数据的格式");
}
}
@ -150,6 +151,7 @@ public class RefundController {
return Result.success(refundService.selectBy(page.getPageNum(), page.getPageSize(), page.getRefundUser()));
}
} catch (Exception e) {
e.printStackTrace();
return Result.error("请检查筛选数据的格式");
}

2
src/main/java/com/example/demo/mapper/coin/ConsumeMapper.java

@ -36,7 +36,7 @@ public interface ConsumeMapper {
void updateIsRefund(String orderCode);
//获得订单号
List<ConsumeUser> selectOrderCodeByJwcode(String jwcode,String orderCode);
List<ConsumeUser> selectOrderCodeByJwcode(UserGoldRecord userGoldRecord);
void updateUserGold(UserGoldRecord userGoldRecord);

3
src/main/java/com/example/demo/mapper/coin/RechargeMapper.java

@ -2,6 +2,7 @@ package com.example.demo.mapper.coin;
import com.example.demo.domain.entity.UserGoldRecord;
import com.example.demo.domain.vo.coin.ConsumeUser;
import com.example.demo.domain.vo.coin.Gold;
import com.example.demo.domain.vo.coin.RechargeUser;
import com.example.demo.domain.vo.coin.RefundUser;
@ -28,4 +29,6 @@ public interface RechargeMapper {
void add(UserGoldRecord userGoldRecord);
Gold sumGold(RechargeUser rechargeUser);
List<RechargeUser> selectOrderCodeByJwcode(UserGoldRecord userGoldRecord);
}

29
src/main/java/com/example/demo/serviceImpl/coin/RefundServiceImpl.java

@ -1,10 +1,7 @@
package com.example.demo.serviceImpl.coin;
import com.example.demo.domain.entity.UserGoldRecord;
import com.example.demo.mapper.coin.ConsumeMapper;
import com.example.demo.mapper.coin.MarketMapper;
import com.example.demo.mapper.coin.RefundMapper;
import com.example.demo.mapper.coin.UserMapper;
import com.example.demo.mapper.coin.*;
import com.example.demo.service.coin.MarketService;
import com.example.demo.service.coin.RefundService;
import com.github.pagehelper.PageHelper;
@ -46,6 +43,8 @@ public class RefundServiceImpl implements RefundService {
@Autowired
private MarketMapper marketMapper;
@Autowired
private RechargeMapper rechargeMapper;
//查找全部退款
@Override
@ -175,17 +174,31 @@ public class RefundServiceImpl implements RefundService {
userGoldRecord.setType((byte) 2);
userGoldRecord.setAuditStatus(0);
userGoldRecord.setCreateTime(new Date());
List<ConsumeUser> list = consumeMapper.selectOrderCodeByJwcode(userGoldRecord.getJwcode().toString(), orderCode);
List<ConsumeUser> list1 = consumeMapper.selectOrderCodeByJwcode(userGoldRecord);
List<RechargeUser> list2 = rechargeMapper.selectOrderCodeByJwcode(userGoldRecord);
if(Objects.equals(refundUser.getRefundType(), "商品退款")){
//消费订单号校验
if (list == null || list.isEmpty()) {
if (list1 == null || list1.isEmpty()) {
return Result.error("该用户没有该订单号");
} else if (list.size() == 1) {
ConsumeUser consumeUser = list.getFirst();
} else if (list1.size() == 1) {
ConsumeUser consumeUser = list1.getFirst();
if (consumeUser.getIsRefund().equals(1)) {
return Result.error("该订单已被退款或待审核");
}
} else {
return Result.error("订单重复");
}}else{
//充值订单号校验
if (list2 == null || list2.isEmpty()) {
return Result.error("该用户没有该订单号");
} else if (list2.size() == 1) {
RechargeUser rechargeUser = list2.getFirst();
if (rechargeUser.getIsRefund().equals(1)) {
return Result.error("该订单已被退款或待审核");
}
} else {
return Result.error("订单重复");
}
}
refundMapper.add(userGoldRecord);
consumeMapper.updateIsRefund(orderCode);

11
src/main/resources/mapper/RechargeMapper.xml

@ -251,4 +251,15 @@
0
</trim>
</insert>
<select id="selectOrderCodeByJwcode" resultType="com.example.demo.domain.vo.coin.RechargeUser">
SELECT ugr.jwcode AS jwcode,
ugr.order_code AS orderCode,
ugr.is_refund AS isRefund
FROM user_gold_record ugr
where ugr.order_code = #{orderCode}
AND ugr.jwcode = #{jwcode}
AND ugr.flag = 1
</select>
</mapper>
Loading…
Cancel
Save