|
@@ -8,6 +8,8 @@ import com.zhongzheng.common.exception.CustomException;
|
|
|
import com.zhongzheng.common.utils.DateUtils;
|
|
|
import com.zhongzheng.modules.goods.domain.Goods;
|
|
|
import com.zhongzheng.modules.goods.service.IGoodsService;
|
|
|
+import com.zhongzheng.modules.grade.domain.ClassGradeUser;
|
|
|
+import com.zhongzheng.modules.grade.service.IClassGradeUserService;
|
|
|
import com.zhongzheng.modules.order.bo.OrderGoodsQueryBo;
|
|
|
import com.zhongzheng.modules.order.bo.OrderGoodsRefundAddBo;
|
|
|
import com.zhongzheng.modules.order.bo.OrderGoodsRefundEditBo;
|
|
@@ -53,6 +55,8 @@ public class OrderGoodsRefundServiceImpl extends ServiceImpl<OrderGoodsRefundMap
|
|
|
private IGoodsService iGoodsService;
|
|
|
@Autowired
|
|
|
private IWxPayService iWxPayService;
|
|
|
+ @Autowired
|
|
|
+ private IClassGradeUserService iClassGradeUserService;
|
|
|
|
|
|
@Override
|
|
|
public OrderGoodsRefundVo queryById(Long refundId){
|
|
@@ -154,14 +158,14 @@ public class OrderGoodsRefundServiceImpl extends ServiceImpl<OrderGoodsRefundMap
|
|
|
}
|
|
|
Map<String, String> payResult = iWxPayService.refund(out_trade_no,order.getTransid(),add.getRefundFee(),order.getPayPrice());
|
|
|
if("OK".equals(payResult.get("return_msg"))&&Validator.isNotEmpty(payResult.get("refund_id"))){
|
|
|
- return refundCall(payResult.get("refund_id"),add.getRefundId(),orderGoods.getOrderGoodsId(),order);
|
|
|
+ return refundCall(payResult.get("refund_id"),add.getRefundId(),orderGoods.getOrderGoodsId(),order,goods.getGoodsType(),orderGoods.getGradeId());
|
|
|
}else{
|
|
|
|
|
|
throw new CustomException("退款错误"+ JSON.toJSONString(payResult));
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public Boolean refundCall(String WxpayRefundId,Long refundId,Long orderGoodsId,Order order){
|
|
|
+ public Boolean refundCall(String WxpayRefundId,Long refundId,Long orderGoodsId,Order order,Long goodsType,Long gradeId){
|
|
|
OrderGoodsRefund update = new OrderGoodsRefund();
|
|
|
update.setRefundId(refundId);
|
|
|
update.setUpdateTime(DateUtils.getNowTime());
|
|
@@ -195,6 +199,14 @@ public class OrderGoodsRefundServiceImpl extends ServiceImpl<OrderGoodsRefundMap
|
|
|
order.setOrderStatus(Order.REFUND_PART);
|
|
|
}
|
|
|
iOrderService.updateById(order);
|
|
|
+ if(goodsType==1){
|
|
|
+ //移除班级
|
|
|
+ ClassGradeUser classGradeUser = iClassGradeUserService.getOne(new LambdaQueryWrapper<ClassGradeUser>().eq(ClassGradeUser::getGradeId,gradeId).eq(ClassGradeUser::getUserId,order.getUserId()).eq(ClassGradeUser::getStatus,1));
|
|
|
+ if(Validator.isNotEmpty(classGradeUser)){
|
|
|
+ classGradeUser.setStatus(0);
|
|
|
+ iClassGradeUserService.updateById(classGradeUser);
|
|
|
+ }
|
|
|
+ }
|
|
|
return true;
|
|
|
}
|
|
|
|