src/main/java/cc/mrbird/febs/common/utils/ZzSmsSend.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/controller/ApiMallOrderController.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/dto/ApplyRefundOrderDto.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/entity/MallRefundEntity.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/mapper/MallRefundMapper.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/service/IApiMallOrderInfoService.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | ●●●●● patch | view | raw | blame | history | |
src/main/resources/mapper/modules/MallRefundMapper.xml | ●●●●● patch | view | raw | blame | history |
src/main/java/cc/mrbird/febs/common/utils/ZzSmsSend.java
@@ -26,7 +26,7 @@ private static final String PWD = "1369815429"; public static boolean sendVerifyCode(String telphone, String code, int time) { String content = "【壹元蔬菜】您的验证码是{},请在{}分钟内输入,请勿泄露给他人,如非本人操作,请及时修改密码。"; String content = "【美澳】您的验证码是{},请在{}分钟内输入,请勿泄露给他人,如非本人操作,请及时修改密码。"; return send(telphone, StrUtil.format(content, code, time)); } src/main/java/cc/mrbird/febs/mall/controller/ApiMallOrderController.java
@@ -97,6 +97,12 @@ return mallOrderInfoService.refundOrder(id); } @ApiOperation(value = "用户退款--提交退款申请", notes = "用户退款--提交退款申请") @PostMapping(value = "/applyRefundOrder") public FebsResponse applyRefundOrder(@RequestBody ApplyRefundOrderDto applyRefundOrderDto) { return mallOrderInfoService.applyRefundOrder(applyRefundOrderDto); } @ApiOperation(value = "提交退款申请", notes = "提交退款申请") @PostMapping(value = "/applyRefund") public FebsResponse applyRefund(@RequestBody AddRefundDto addRefundDto) { src/main/java/cc/mrbird/febs/mall/dto/ApplyRefundOrderDto.java
New file @@ -0,0 +1,30 @@ package cc.mrbird.febs.mall.dto; import io.swagger.annotations.ApiModel; import lombok.Data; import java.math.BigDecimal; @Data @ApiModel(value = "ApplyRefundOrderDto", description = "小程序提交退款申请") public class ApplyRefundOrderDto { //退款订单ID private Long orderId; //退款订单详情ID private Long itemId; //退款方式 1:微信 2:支付宝 3:其他 private Integer type; //退款状态 1:成功 2:失败 3:退款中 private Integer state; //退款金额 private BigDecimal amount; //退款原因 private String refundReason; //退款说明 private String refundRemark; //退款图片 private String refundPic; } src/main/java/cc/mrbird/febs/mall/entity/MallRefundEntity.java
@@ -16,6 +16,8 @@ private Long memberId; //退款订单ID private Long orderId; //退款订单详情ID private Long itemId; //退款方式 1:微信 2:支付宝 3:其他 private Integer type; //退款状态 1:成功 2:失败 3:退款中 @@ -23,4 +25,11 @@ //退款金额 private BigDecimal amount; //退款原因 private String refundReason; //退款说明 private String refundRemark; //退款图片 private String refundPic; } src/main/java/cc/mrbird/febs/mall/mapper/MallRefundMapper.java
@@ -2,6 +2,12 @@ import cc.mrbird.febs.mall.entity.MallRefundEntity; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import java.util.List; public interface MallRefundMapper extends BaseMapper<MallRefundEntity> { List<MallRefundEntity> selectByItemIdAndOrderIdAndState(@Param("itemId")Long itemId, @Param("orderId")Long orderId, @Param("state")int i); } src/main/java/cc/mrbird/febs/mall/service/IApiMallOrderInfoService.java
@@ -35,4 +35,6 @@ void goodsComment(ApiAddCommentDtos addCommentDtos); FebsResponse refundOrder(Long id); FebsResponse applyRefundOrder(ApplyRefundOrderDto applyRefundOrderDto); } src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -733,4 +733,36 @@ return new FebsResponse().success().message("退款成功"); } @Override public FebsResponse applyRefundOrder(ApplyRefundOrderDto applyRefundOrderDto) { Long orderId = applyRefundOrderDto.getOrderId(); Long itemId = applyRefundOrderDto.getItemId(); MallMember member = LoginUserUtil.getLoginUser(); MallOrderInfo mallOrderInfo = this.baseMapper.selectById(orderId); if(ObjectUtil.isEmpty(mallOrderInfo)){ return new FebsResponse().fail().message("订单不存在"); } List<MallRefundEntity> mallRefundEntitieSuccess = mallRefundMapper.selectByItemIdAndOrderIdAndState(itemId,orderId,1); List<MallRefundEntity> mallRefundEntitiesIng = mallRefundMapper.selectByItemIdAndOrderIdAndState(itemId,orderId,3); if(CollUtil.isNotEmpty(mallRefundEntitieSuccess) || CollUtil.isNotEmpty(mallRefundEntitiesIng)){ return new FebsResponse().fail().message("该订单无法申请退款"); } MallOrderItem mallOrderItem = mallOrderItemMapper.selectById(itemId); MallRefundEntity mallRefundEntity = new MallRefundEntity(); mallRefundEntity.setRefundNo(mallOrderInfo.getOrderNo()+"_RITEM"+itemId); mallRefundEntity.setRefundReason(applyRefundOrderDto.getRefundReason()); mallRefundEntity.setRefundRemark(applyRefundOrderDto.getRefundRemark()); mallRefundEntity.setRefundPic(applyRefundOrderDto.getRefundPic()); mallRefundEntity.setMemberId(member.getId()); mallRefundEntity.setState(3); mallRefundEntity.setType(1); mallRefundEntity.setOrderId(orderId); mallRefundEntity.setItemId(itemId); mallRefundEntity.setAmount(mallOrderItem.getAmount()); mallRefundMapper.insert(mallRefundEntity); return new FebsResponse().success().message("已申请"); } } src/main/resources/mapper/modules/MallRefundMapper.xml
New file @@ -0,0 +1,24 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="cc.mrbird.febs.mall.mapper.MallRefundMapper"> <select id="selectByItemIdAndOrderIdAndState" resultType="cc.mrbird.febs.mall.entity.MallRefundEntity"> select a.* from mall_refund a where item_id=#{itemId} and order_id=#{orderId} and state=#{state} <where> <if test="itemId != null and itemId != ''"> and a.item_id = #{itemId} </if> <if test="orderId != null and orderId != ''"> and a.order_id = #{orderId} </if> <if test="state != null and state != ''"> and a.state = #{state} </if> </where> </select> </mapper>