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 add(UserGoldRecord userGoldRecord);
void updateIsRefund(String orderCode); 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); List<RefundUser> refundUsers = refundMapper.selectBy(refundUser);
return new PageInfo<>(refundUsers); return new PageInfo<>(refundUsers);
} }
@Transactional @Transactional
@Override @Override
public Result add(RefundUser refundUser) { 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("金币不能为空"); 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("金币不能为负数"); return Result.error("金币不能为负数");
} }
UserGoldRecord userGoldRecord = new UserGoldRecord(); UserGoldRecord userGoldRecord = new UserGoldRecord();
@ -141,6 +142,10 @@ public class RefundServiceImpl implements RefundService {
userGoldRecord.setType((byte) 2); userGoldRecord.setType((byte) 2);
userGoldRecord.setAuditStatus(0); userGoldRecord.setAuditStatus(0);
userGoldRecord.setCreateTime(new Date()); 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); refundMapper.add(userGoldRecord);
consumeMapper.updateIsRefund(orderCode); consumeMapper.updateIsRefund(orderCode);
return Result.success(); return Result.success();
@ -172,7 +177,7 @@ public class RefundServiceImpl implements RefundService {
String combined = orderCode + "_" + goodsName; String combined = orderCode + "_" + goodsName;
RefundUser refundUser = new RefundUser(); RefundUser refundUser = new RefundUser();
refundUser.setGoodsName(combined); refundUser.setGoodsName(combined);
refundUser.setSumGold(record.getPermanentGold()+record.getFreeGold()+record.getTaskGold());
refundUser.setSumGold(record.getPermanentGold() + record.getFreeGold() + record.getTaskGold());
refundUser.setPermanentGold(record.getPermanentGold()); refundUser.setPermanentGold(record.getPermanentGold());
refundUser.setFreeGold(record.getFreeGold()); refundUser.setFreeGold(record.getFreeGold());
refundUser.setTaskGold(record.getTaskGold()); refundUser.setTaskGold(record.getTaskGold());

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

@ -131,6 +131,16 @@
</trim> </trim>
</select> </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 id="add" parameterType="com.example.demo.domain.entity.UserGoldRecord" useGeneratedKeys="true" keyProperty="id">
INSERT INTO user_gold_record INSERT INTO user_gold_record
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">

Loading…
Cancel
Save