Browse Source

后端退款订单校验

huangqizheng/feature-20250707173453-7.7bug修改
sunjiabei 1 month ago
parent
commit
d95c253d24
  1. 2
      src/main/java/com/example/demo/mapper/ConsumeMapper.java
  2. 11
      src/main/java/com/example/demo/serviceImpl/RefundServiceImpl.java
  3. 10
      src/main/resources/mapper/ConsumeMapper.xml

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

@ -25,4 +25,6 @@ public interface ConsumeMapper {
void add(UserGoldRecord userGoldRecord);
void updateIsRefund(String orderCode);
List<ConsumeUser> selectOrderCodeByJwcode(String jwcode,String orderCode);
}

11
src/main/java/com/example/demo/serviceImpl/RefundServiceImpl.java

@ -90,13 +90,14 @@ public class RefundServiceImpl implements RefundService {
List<RefundUser> refundUsers = refundMapper.selectBy(refundUser);
return new PageInfo<>(refundUsers);
}
@Transactional
@Override
public Result add(RefundUser refundUser) {
if(refundUser.getTaskGold()==null||refundUser.getFreeGold()==null||refundUser.getPermanentGold()==null){
if (refundUser.getTaskGold() == null || refundUser.getFreeGold() == null || refundUser.getPermanentGold() == null) {
return Result.error("金币不能为空");
}
if(refundUser.getTaskGold()<0||refundUser.getFreeGold()<0||refundUser.getPermanentGold()<0){
if (refundUser.getTaskGold() < 0 || refundUser.getFreeGold() < 0 || refundUser.getPermanentGold() < 0) {
return Result.error("金币不能为负数");
}
UserGoldRecord userGoldRecord = new UserGoldRecord();
@ -141,6 +142,10 @@ public class RefundServiceImpl implements RefundService {
userGoldRecord.setType((byte) 2);
userGoldRecord.setAuditStatus(0);
userGoldRecord.setCreateTime(new Date());
List<ConsumeUser> list = consumeMapper.selectOrderCodeByJwcode(userGoldRecord.getJwcode().toString(), userGoldRecord.getOrderCode());
if (list != null && list.isEmpty()) {
return Result.error("该用户没有该订单号");
}
refundMapper.add(userGoldRecord);
consumeMapper.updateIsRefund(orderCode);
return Result.success();
@ -172,7 +177,7 @@ public class RefundServiceImpl implements RefundService {
String combined = orderCode + "_" + goodsName;
RefundUser refundUser = new RefundUser();
refundUser.setGoodsName(combined);
refundUser.setSumGold(record.getPermanentGold()+record.getFreeGold()+record.getTaskGold());
refundUser.setSumGold(record.getPermanentGold() + record.getFreeGold() + record.getTaskGold());
refundUser.setPermanentGold(record.getPermanentGold());
refundUser.setFreeGold(record.getFreeGold());
refundUser.setTaskGold(record.getTaskGold());

10
src/main/resources/mapper/ConsumeMapper.xml

@ -131,6 +131,16 @@
</trim>
</select>
<select id="selectOrderCodeByJwcode" resultType="com.example.demo.domain.vo.ConsumeUser">
SELECT
ugr.jwcode AS jwcode,
ugr.order_code AS orderCode
FROM user_gold_record ugr
where
ugr.order_code = #{orderCode}
AND ugr.jwcode = #{jwcode}
</select>
<insert id="add" parameterType="com.example.demo.domain.entity.UserGoldRecord" useGeneratedKeys="true" keyProperty="id">
INSERT INTO user_gold_record
<trim prefix="(" suffix=")" suffixOverrides=",">

Loading…
Cancel
Save