From 6e936cc4af80fa65210d7e00a54e89a9e706305d Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 16 十二月 2024 18:14:14 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderRefundPassList.java | 34 ++
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsArea.java | 10
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/RefundPassInfo.java | 65 +++++
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsBargainPriceController.java | 8
ruoyi-service/ruoyi-other/src/main/resources/mapper/other/GoodsShopMapper.xml | 24 ++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderRefundPassListVo.java | 25 ++
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/RefundPassSettingVo.java | 22 +
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/BaseSettingController.java | 29 ++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/RefundPassService.java | 41 +++
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/GoodsShopMapper.java | 19 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java | 7
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 25 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/RefundPassMapper.java | 17 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/RefundPassController.java | 57 ++++
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/ShopGoodsListVo.java | 21 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java | 141 +++++++++++
ruoyi-service/ruoyi-order/src/main/resources/mapper/order/RefundPassMapper.xml | 35 ++
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/dto/GoodsAreaDto.java | 4
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsVip.java | 4
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsShopController.java | 22 +
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsShopServiceImpl.java | 30 ++
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/ShopGoodsList.java | 20 +
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/GoodsShopService.java | 12
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java | 48 +++
24 files changed, 693 insertions(+), 27 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsArea.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsArea.java
index 880312c..9e951a6 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsArea.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsArea.java
@@ -11,6 +11,7 @@
import java.io.Serializable;
import java.math.BigDecimal;
+import java.util.List;
/**
* <p>
@@ -94,7 +95,11 @@
@ApiModelProperty(value = "获取返佣积分上级类型(1=直推上级,2=直帮上级)")
@TableField("superior_type")
- private Integer superiorType;
+ private String superiorType;
+
+ @ApiModelProperty(value = "获取分佣金额上级类型(1=直推上级,2=直帮上级)")
+ @TableField("superior_price_type")
+ private String superiorPriceType;
@ApiModelProperty(value = "核销门店可获得服务费")
@TableField("servuce_shop_charges")
@@ -124,5 +129,8 @@
@TableField("bound_shop_superiors_points")
private Integer boundShopSuperiorsPoints;
+ @TableField(exist = false)
+ private List<GoodsArea> goodsAreaList;
+
}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsVip.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsVip.java
index 07d0eb0..4828120 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsVip.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsVip.java
@@ -70,11 +70,11 @@
@ApiModelProperty(value = "获取返佣积分上级类型(1=直推上级,2=直帮上级)")
@TableField("superior_type")
- private Integer superiorType;
+ private String superiorType;
@ApiModelProperty(value = "获取分佣金额上级类型(1=直推上级,2=直帮上级)")
@TableField("superior_price_type")
- private Integer superiorPriceType;
+ private String superiorPriceType;
@ApiModelProperty(value = "核销门店可获得服务费")
@TableField("servuce_shop_charges")
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/RefundPassController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/RefundPassController.java
index 893ae60..2c2a3cc 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/RefundPassController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/RefundPassController.java
@@ -3,12 +3,17 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.order.model.Order;
import com.ruoyi.order.model.RefundPass;
import com.ruoyi.order.service.OrderService;
import com.ruoyi.order.service.RefundPassService;
import com.ruoyi.order.vo.ApplyRefundPass;
+import com.ruoyi.order.vo.OrderRefundPassList;
+import com.ruoyi.order.vo.OrderRefundPassListVo;
+import com.ruoyi.order.vo.RefundPassInfo;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -16,6 +21,7 @@
import javax.annotation.Resource;
import java.util.Arrays;
+import java.util.List;
/**
* <p>
@@ -27,7 +33,7 @@
*/
@RestController
@RequestMapping("/refund-pass")
-public class RefundPassController {
+public class RefundPassController extends BaseController {
@Resource
@@ -119,5 +125,54 @@
return R.ok();
}
+
+
+ @ResponseBody
+ @GetMapping("/getOrderRefundPassList")
+ @ApiOperation(value = "获取售后列表数据", tags = {"管理后台-售后管理", "门店后台-售后管理"})
+ public TableDataInfo<OrderRefundPassList> getOrderRefundPassList(OrderRefundPassListVo refundPassListVo){
+ startPage();
+ List<OrderRefundPassList> orderRefundPassList = refundPassService.getOrderRefundPassList(refundPassListVo);
+ return getDataTable(orderRefundPassList);
+ }
+
+
+ @ResponseBody
+ @PostMapping("/authPassStatus/{id}/{status}")
+ @ApiOperation(value = "审核售后", tags = {"管理后台-售后管理", "门店后台-售后管理"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "id", value = "售后数据id", required = true, dataType = "long"),
+ @ApiImplicitParam(name = "status", value = "审核状态(2=同意,3=拒绝)", required = true, dataType = "int"),
+ @ApiImplicitParam(name = "passRemark", value = "审核备注", required = false, dataType = "string"),
+ })
+ public R authPassStatus(@PathVariable("id") Long id, @PathVariable("status") Integer status, @RequestParam("passRemark") String passRemark){
+ return refundPassService.authPassStatus(id, status, passRemark);
+ }
+
+
+ @ResponseBody
+ @PutMapping("/refundPassReceive/{id}")
+ @ApiOperation(value = "售后确认收货操作", tags = {"管理后台-售后管理"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "id", value = "售后数据id", required = true, dataType = "long"),
+ })
+ public R refundPassReceive(@PathVariable("id") Long id){
+ return refundPassService.refundPassReceive(id);
+ }
+
+
+
+ @ResponseBody
+ @GetMapping("/getRefundPassInfo/{id}")
+ @ApiOperation(value = "获取售后数据详情", tags = {"管理后台-售后管理", "门店后台-售后管理"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "id", value = "售后数据id", required = true, dataType = "long"),
+ })
+ public R<RefundPassInfo> getRefundPassInfo(@PathVariable("id") Long id){
+ RefundPassInfo refundPassInfo = refundPassService.getRefundPassInfo(id);
+ return R.ok(refundPassInfo);
+ }
+
+
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/RefundPassMapper.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/RefundPassMapper.java
index f735924..afbd8e1 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/RefundPassMapper.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/RefundPassMapper.java
@@ -2,6 +2,10 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.order.model.RefundPass;
+import com.ruoyi.order.vo.OrderRefundPassList;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
* <p>
@@ -12,5 +16,18 @@
* @since 2024-11-21
*/
public interface RefundPassMapper extends BaseMapper<RefundPass> {
+
+
+ /**
+ * 管理后台获取售后管理列表数据
+ * @param code 订单号
+ * @param appUserIds 下单用户id
+ * @param refundMethod 售后类型
+ * @param status 售后状态
+ * @return
+ */
+ List<OrderRefundPassList> getOrderRefundPassList(@Param("code") String code, @Param("appUserIds") List<Long> appUserIds,
+ @Param("shopId") Integer shopId, @Param("refundMethod") Integer refundMethod,
+ @Param("status") Integer status);
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java
index 4ee3d67..e4474a9 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java
@@ -52,6 +52,13 @@
/**
+ * 返回订单支付金额和回退积分和会员等级
+ * @param order
+ */
+ void refundPayMoney(Order order);
+
+
+ /**
* 收货操作
* @param orderId
* @return
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/RefundPassService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/RefundPassService.java
index f14246e..90355f6 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/RefundPassService.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/RefundPassService.java
@@ -4,6 +4,13 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.order.model.RefundPass;
import com.ruoyi.order.vo.ApplyRefundPass;
+import com.ruoyi.order.vo.OrderRefundPassList;
+import com.ruoyi.order.vo.OrderRefundPassListVo;
+import com.ruoyi.order.vo.RefundPassInfo;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
/**
* <p>
@@ -21,5 +28,37 @@
* @return
*/
R applyRefundPass(ApplyRefundPass applyRefundPass);
-
+
+
+ /**
+ * 管理后台获取售后管理列表数据
+ * @return
+ */
+ List<OrderRefundPassList> getOrderRefundPassList(OrderRefundPassListVo refundPassListVo);
+
+
+ /**
+ * 售后订单审核操作
+ * @param id
+ * @param status
+ * @param passRemark
+ * @return
+ */
+ R authPassStatus(Long id, Integer status, String passRemark);
+
+
+ /**
+ * 售后确认收货操作
+ * @param id
+ * @return
+ */
+ R refundPassReceive(Long id);
+
+
+ /**
+ * 获取售后详情
+ * @param id
+ * @return
+ */
+ RefundPassInfo getRefundPassInfo(Long id);
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
index ac220ed..f68a9d5 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -341,6 +341,16 @@
}
order.setOrderStatus(5);
this.updateById(order);
+ refundPayMoney(order);
+ return R.ok();
+ }
+
+
+ /**
+ * 返回订单支付金额和回退积分和会员等级
+ * @param order
+ */
+ public void refundPayMoney(Order order){
//开始退款
Integer payMethod = order.getPayMethod();
BigDecimal paymentAmount = order.getPaymentAmount();
@@ -350,16 +360,16 @@
}
if(2 == payMethod){
//余额退款
- OrderBalancePayment orderBalancePayment = orderBalancePaymentService.getOne(new LambdaQueryWrapper<OrderBalancePayment>().eq(OrderBalancePayment::getOrderId, orderId));
+ OrderBalancePayment orderBalancePayment = orderBalancePaymentService.getOne(new LambdaQueryWrapper<OrderBalancePayment>().eq(OrderBalancePayment::getOrderId, order.getId()));
BigDecimal balance = appUser.getBalance();
appUser.setTotalRedPacketAmount(appUser.getTotalRedPacketAmount().add(orderBalancePayment.getRedPacketAmount()).setScale(2, RoundingMode.HALF_EVEN));
appUser.setTotalDistributionAmount(appUser.getTotalDistributionAmount().add(orderBalancePayment.getDistributionAmount()).setScale(2, RoundingMode.HALF_EVEN));
appUser.setBalance(balance.add(paymentAmount).setScale(2, RoundingMode.HALF_EVEN));
appUser.setShopAmount(appUser.getShopAmount().subtract(paymentAmount).setScale(2, RoundingMode.HALF_EVEN));
-
+
//构建账户余额流水明细
BalanceChangeRecord balanceChangeRecord = new BalanceChangeRecord();
- balanceChangeRecord.setOrderId(orderId);
+ balanceChangeRecord.setOrderId(order.getId());
balanceChangeRecord.setAppUserId(order.getAppUserId());
balanceChangeRecord.setChangeType(6);
balanceChangeRecord.setBeforeAmount(balance);
@@ -373,7 +383,7 @@
if(3 == payMethod){
//积分退款
appUser.setLavePoint(appUser.getLavePoint() + order.getPoint());
-
+
//开始运费退款,积分支付,运费是单独进行支付的,所以需要单独退款
if(null != order.getExpressAmount() && BigDecimal.ZERO.compareTo(order.getExpressAmount()) < 0){
BigDecimal expressAmount = order.getExpressAmount();
@@ -382,14 +392,14 @@
}
if(2 == order.getExpressPayMethod()){
//余额退款
- OrderBalancePayment orderBalancePayment = orderBalancePaymentService.getOne(new LambdaQueryWrapper<OrderBalancePayment>().eq(OrderBalancePayment::getOrderId, orderId));
+ OrderBalancePayment orderBalancePayment = orderBalancePaymentService.getOne(new LambdaQueryWrapper<OrderBalancePayment>().eq(OrderBalancePayment::getOrderId, order.getId()));
BigDecimal balance = appUser.getBalance();
appUser.setTotalRedPacketAmount(appUser.getTotalRedPacketAmount().add(orderBalancePayment.getRedPacketAmount()).setScale(2, RoundingMode.HALF_EVEN));
appUser.setTotalDistributionAmount(appUser.getTotalDistributionAmount().add(orderBalancePayment.getDistributionAmount()).setScale(2, RoundingMode.HALF_EVEN));
appUser.setBalance(balance.add(expressAmount).setScale(2, RoundingMode.HALF_EVEN));
//构建账户余额流水明细
BalanceChangeRecord balanceChangeRecord = new BalanceChangeRecord();
- balanceChangeRecord.setOrderId(orderId);
+ balanceChangeRecord.setOrderId(order.getId());
balanceChangeRecord.setAppUserId(order.getAppUserId());
balanceChangeRecord.setChangeType(6);
balanceChangeRecord.setBeforeAmount(balance);
@@ -425,10 +435,9 @@
userPoint.setBalance(appUser.getLavePoint());
userPoint.setCreateTime(LocalDateTime.now());
userPoint.setAppUserId(order.getAppUserId());
- userPoint.setObjectId(orderId);
+ userPoint.setObjectId(order.getId());
userPointClient.saveUserPoint(userPoint);
appUserClient.editAppUserById(appUser);
- return R.ok();
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java
index b468e51..8e36fdf 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java
@@ -4,20 +4,33 @@
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.account.api.feignClient.AppUserClient;
+import com.ruoyi.account.api.model.AppUser;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.utils.bean.BeanUtils;
+import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.order.mapper.RefundPassMapper;
import com.ruoyi.order.model.Order;
import com.ruoyi.order.model.RefundPass;
import com.ruoyi.order.service.OrderService;
import com.ruoyi.order.service.RefundPassService;
-import com.ruoyi.order.vo.ApplyRefundPass;
+import com.ruoyi.order.vo.*;
import com.ruoyi.other.api.domain.BaseSetting;
import com.ruoyi.other.api.feignClient.BaseSettingClient;
+import com.ruoyi.other.api.feignClient.ShopClient;
+import com.ruoyi.other.api.feignClient.TechnicianClient;
+import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.feignClient.SysUserClient;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
/**
* <p>
@@ -35,6 +48,13 @@
@Resource
private BaseSettingClient baseSettingClient;
+ @Resource
+ private AppUserClient appUserClient;
+ @Resource
+ private TokenService tokenService;
+
+ @Resource
+ private SysUserClient sysUserClient;
@@ -80,4 +100,123 @@
orderService.updateById(order);
return R.ok();
}
+
+
+ /**
+ * 管理后台获取售后管理列表数据
+ * @return
+ */
+ @Override
+ public List<OrderRefundPassList> getOrderRefundPassList(OrderRefundPassListVo refundPassListVo) {
+ Long userid = tokenService.getLoginUser().getUserid();
+ SysUser sysUser = sysUserClient.getSysUser(userid).getData();
+ Integer shopId = null;
+ if(2 == sysUser.getRoleType()){
+ shopId = sysUser.getObjectId();
+ }
+ List<Long> appUserIds = new ArrayList<>();
+ //搜索条件,用户姓名
+ if(StringUtils.isNotEmpty(refundPassListVo.getName())){
+ List<AppUser> data = appUserClient.getAppUserByName(refundPassListVo.getName()).getData();
+ List<Long> collect = data.stream().map(AppUser::getId).collect(Collectors.toList());
+ appUserIds.addAll(collect);
+ }
+ //搜索条件,用户电话
+ if(StringUtils.isNotEmpty(refundPassListVo.getPhone())){
+ List<AppUser> data = appUserClient.getAppUserByPhone(refundPassListVo.getPhone()).getData();
+ List<Long> collect = data.stream().map(AppUser::getId).collect(Collectors.toList());
+ appUserIds.addAll(collect);
+ }
+ List<OrderRefundPassList> orderRefundPassList = this.baseMapper.getOrderRefundPassList(refundPassListVo.getCode(), appUserIds, shopId, refundPassListVo.getRefundMethod(), refundPassListVo.getStatus());
+ for (OrderRefundPassList refundPassList : orderRefundPassList) {
+ AppUser appUser = appUserClient.getAppUserById(refundPassList.getAppUserId());
+ refundPassList.setUserName(appUser.getName());
+ refundPassList.setPhone(appUser.getPhone());
+ }
+ return orderRefundPassList;
+ }
+
+
+ /**
+ * 售后订单审核操作
+ * @param id
+ * @param status
+ * @param passRemark
+ * @return
+ */
+ @Override
+ public R authPassStatus(Long id, Integer status, String passRemark) {
+ RefundPass refundPass = this.getById(id);
+ if(refundPass.getPassStatus() != 1){
+ return R.fail("不能重复操作");
+ }
+ refundPass.setPassStatus(status);
+ //退货退款
+ if(refundPass.getRefundMethod() == 1 && 2 == status){
+ refundPass.setStatus(4);
+ }
+ if(refundPass.getRefundMethod() == 2 && 2 == status){
+ refundPass.setStatus(2);
+ }
+ refundPass.setPassRemark(passRemark);
+ this.updateById(refundPass);
+ //仅退款的售后需要将支付金额原路返回,然后再扣减支付获得的积分
+ if(refundPass.getRefundMethod() == 2 && 2 == status){
+ Order order = orderService.getById(refundPass.getOrderId());
+ order.setOrderStatus(6);
+ orderService.updateById(order);
+ //返回订单支付金额和回退积分和会员等级
+ orderService.refundPayMoney(order);
+ }
+ return R.ok();
+ }
+
+
+ /**
+ * 售后确认收货操作
+ * @param id
+ * @return
+ */
+ @Override
+ public R refundPassReceive(Long id) {
+ RefundPass refundPass = this.getById(id);
+ if(refundPass.getPassStatus() != 2){
+ return R.fail("操作失败");
+ }
+ if(refundPass.getStatus() != 5){
+ return R.fail("操作失败");
+ }
+ refundPass.setStatus(2);
+ this.updateById(refundPass);
+ //仅退款的售后需要将支付金额原路返回,然后再扣减支付获得的积分
+ Order order = orderService.getById(refundPass.getOrderId());
+ order.setOrderStatus(6);
+ orderService.updateById(order);
+ //返回订单支付金额和回退积分和会员等级
+ orderService.refundPayMoney(order);
+ return R.ok();
+ }
+
+
+ /**
+ * 获取售后详情
+ * @param id
+ * @return
+ */
+ @Override
+ public RefundPassInfo getRefundPassInfo(Long id) {
+ RefundPass refundPass = this.getById(id);
+ OrderInfoVo orderInfo = orderService.getOrderInfo(refundPass.getOrderId());
+ RefundPassInfo refundPassInfo = new RefundPassInfo();
+ BeanUtils.copyBeanProp(refundPassInfo, orderInfo);
+ refundPassInfo.setId(id.toString());
+ refundPassInfo.setPassStatus(refundPassInfo.getPassStatus());
+ refundPassInfo.setPassRemark(refundPassInfo.getPassRemark());
+ refundPassInfo.setPassCreateTime(refundPass.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
+ refundPassInfo.setRefundMethod(refundPass.getRefundMethod());
+ refundPassInfo.setRefundReason(refundPass.getRefundReason());
+ refundPassInfo.setUserRemark(refundPass.getUserRemark());
+ refundPassInfo.setPics(refundPass.getPics());
+ return refundPassInfo;
+ }
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderRefundPassList.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderRefundPassList.java
new file mode 100644
index 0000000..9d4a048
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderRefundPassList.java
@@ -0,0 +1,34 @@
+package com.ruoyi.order.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/12/16 16:09
+ */
+@Data
+@ApiModel
+public class OrderRefundPassList {
+ @ApiModelProperty("售后数据id")
+ private String id;
+ @ApiModelProperty("订单编号")
+ private String orderNumber;
+ @ApiModelProperty("下单用户")
+ private String userName;
+ @ApiModelProperty("联系电话")
+ private String phone;
+ @ApiModelProperty("申请时间")
+ private String createTime;
+ @ApiModelProperty("售后类型(1退货退款2仅退款)")
+ private Integer refundMethod;
+ @ApiModelProperty("申请原因")
+ private String refundReason;
+ @ApiModelProperty("状态(1待审核2同意3拒绝)")
+ private Integer passStatus;
+ /**
+ * 用户id
+ */
+ private Long appUserId;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderRefundPassListVo.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderRefundPassListVo.java
new file mode 100644
index 0000000..2b9ea96
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/OrderRefundPassListVo.java
@@ -0,0 +1,25 @@
+package com.ruoyi.order.vo;
+
+import com.ruoyi.common.core.web.page.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/12/16 16:09
+ */
+@Data
+@ApiModel
+public class OrderRefundPassListVo extends BasePage {
+ @ApiModelProperty("订单编号")
+ private String code;
+ @ApiModelProperty("下单用户姓名")
+ private String name;
+ @ApiModelProperty("联系电话")
+ private String phone;
+ @ApiModelProperty("售后类型(1退货退款2仅退款)")
+ private Integer refundMethod;
+ @ApiModelProperty("售后状态(1待审核2已完成3已拒绝4待退货5待平台收货)")
+ private Integer status;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/RefundPassInfo.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/RefundPassInfo.java
new file mode 100644
index 0000000..36e81d5
--- /dev/null
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/RefundPassInfo.java
@@ -0,0 +1,65 @@
+package com.ruoyi.order.vo;
+
+import com.ruoyi.order.util.vo.QueryKD100Vo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/12/16 17:11
+ */
+@Data
+@ApiModel
+public class RefundPassInfo {
+ @ApiModelProperty("数据id")
+ private String id;
+ @ApiModelProperty("订单编号")
+ private String orderNumber;
+ @ApiModelProperty("下单时间")
+ private String createTime;
+ @ApiModelProperty("订单状态(1待发货2待收货3待使用4已完成5已取消6已退款7售后中8已评价)")
+ private Integer orderStatus;
+ @ApiModelProperty("下单用户")
+ private String userName;
+ @ApiModelProperty("联系电话")
+ private String phone;
+ @ApiModelProperty("订单类型")
+ private String orderType;
+ @ApiModelProperty("核销门店")
+ private String shopName;
+ @ApiModelProperty("支付方式(1=微信,2=余额,3=积分)")
+ private Integer paymentMethod;
+ @ApiModelProperty("订单总金额")
+ private BigDecimal totalAmount;
+ @ApiModelProperty("优惠券")
+ private String couponName;
+ @ApiModelProperty("抵扣金额")
+ private BigDecimal discountAmount;
+ @ApiModelProperty("快递费")
+ private BigDecimal expressAmount;
+ @ApiModelProperty("支付金额")
+ private BigDecimal paymentAmount;
+ @ApiModelProperty("获得积分")
+ private Integer point;
+ @ApiModelProperty("商品数量")
+ private Integer goodsNum;
+ @ApiModelProperty("商品信息")
+ private String goodsJson;
+ @ApiModelProperty("审核状态(1待审核2同意3拒绝)")
+ private Integer passStatus;
+ @ApiModelProperty("审核注释")
+ private Integer passRemark;
+ @ApiModelProperty("售后申请时间")
+ private String passCreateTime;
+ @ApiModelProperty("售后类型(1退货退款2仅退款)")
+ private Integer refundMethod;
+ @ApiModelProperty("申请原因")
+ private String refundReason;
+ @ApiModelProperty("备注")
+ private String userRemark;
+ @ApiModelProperty("申请图片")
+ private String pics;
+}
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/RefundPassMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/RefundPassMapper.xml
index 2033fa7..270358b 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/RefundPassMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/RefundPassMapper.xml
@@ -1,7 +1,38 @@
<?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="com.ruoyi.account.mapper.RefundPassMapper">
+<mapper namespace="com.ruoyi.order.mapper.RefundPassMapper">
-
+ <select id="getOrderRefundPassList" resultType="com.ruoyi.order.vo.OrderRefundPassList">
+ select
+ a.id,
+ b.order_number as orderNumber,
+ b.app_user_id as appUserId,
+ DATE_FORMAT(a.create_time, '%Y-%m-%d %H:%m:%s') as createTime,
+ a.refund_method as refundMethod,
+ a.refund_reason as refundReason,
+ a.pass_status as passStatus
+ from t_refund_pass a
+ left join t_order b on (a.order_id = b.id)
+ where a.del_flag = 0
+ <if test="null != code and '' != code">
+ and b.order_number like CONCAT('%', #{code}, '%')
+ </if>
+ <if test="null != appUserIds and appUserIds.size() > 0">
+ and b.app_user_id in
+ <foreach collection="appUserIds" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ </if>
+ <if test="null != refundMethod">
+ and a.refund_method = #{refundMethod}
+ </if>
+ <if test="null != status">
+ and a.status = #{status}
+ </if>
+ <if test="null != shopId">
+ and b.shop_id = #{shopId} and b.order_type = 1
+ </if>
+ order by a.create_time desc
+ </select>
</mapper>
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/BaseSettingController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/BaseSettingController.java
index 18a4626..2e4356d 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/BaseSettingController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/BaseSettingController.java
@@ -1,10 +1,13 @@
package com.ruoyi.other.controller;
+import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson2.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.other.api.domain.BaseSetting;
import com.ruoyi.other.service.BaseSettingService;
+import com.ruoyi.other.vo.RefundPassSettingVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
@@ -56,7 +59,33 @@
}
+ @PostMapping("/setRefundPassSetting")
+ @ApiOperation(value = "保存售后设置", tags = {"管理后台-售后管理"})
+ public R setRefundPassSetting(@RequestBody RefundPassSettingVo settingVo){
+ BaseSetting one = baseSettingService.getOne(new LambdaQueryWrapper<BaseSetting>().eq(BaseSetting::getId, 5));
+ if(null == one){
+ one = new BaseSetting();
+ one.setId(5);
+ one.setContent(JSON.toJSONString(settingVo));
+ baseSettingService.save(one);
+ }else{
+ one.setContent(JSON.toJSONString(settingVo));
+ baseSettingService.updateById(one);
+ }
+ return R.ok();
+ }
+
+ @PostMapping("/getRefundPassSetting")
+ @ApiOperation(value = "获取售后设置", tags = {"管理后台-售后管理"})
+ public R<RefundPassSettingVo> getRefundPassSetting(){
+ BaseSetting one = baseSettingService.getOne(new LambdaQueryWrapper<BaseSetting>().eq(BaseSetting::getId, 5));
+ if(null != one){
+ RefundPassSettingVo refundPassSettingVo = JSON.parseObject(one.getContent(), RefundPassSettingVo.class);
+ return R.ok(refundPassSettingVo);
+ }
+ return R.ok();
+ }
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsBargainPriceController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsBargainPriceController.java
index 9867001..12d044e 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsBargainPriceController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsBargainPriceController.java
@@ -7,10 +7,14 @@
import com.ruoyi.account.api.model.AppUser;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.other.api.domain.*;
import com.ruoyi.other.api.vo.GetGoodsBargainPrice;
import com.ruoyi.other.service.*;
+import com.ruoyi.other.vo.ShopGoodsList;
+import com.ruoyi.other.vo.ShopGoodsListVo;
import com.ruoyi.system.api.model.LoginUser;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -195,5 +199,9 @@
}
+
+
+
+
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsShopController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsShopController.java
index 48dfc60..00f0857 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsShopController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsShopController.java
@@ -3,9 +3,14 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.other.api.domain.GoodsShop;
import com.ruoyi.other.api.vo.GetGoodsShopByGoodsIds;
import com.ruoyi.other.service.GoodsShopService;
+import com.ruoyi.other.vo.ShopGoodsList;
+import com.ruoyi.other.vo.ShopGoodsListVo;
+import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@@ -21,7 +26,7 @@
*/
@RestController
@RequestMapping("/goods-shop")
-public class GoodsShopController {
+public class GoodsShopController extends BaseController {
@Resource
private GoodsShopService goodsShopService;
@@ -54,5 +59,20 @@
.in(goodsIds.getGoodsIds() !=null ,GoodsShop::getGoodsId, goodsIds.getGoodsIds()));
return R.ok(list);
}
+
+
+
+ @ResponseBody
+ @GetMapping("/getShopGoodsList")
+ @ApiOperation(value = "获取商品管理列表", tags = {"门店后台-商品管理"})
+ public TableDataInfo<ShopGoodsList> getShopGoodsList(ShopGoodsListVo shopGoodsListVo){
+ startPage();
+ List<ShopGoodsList> shopGoodsList = goodsShopService.getShopGoodsList(shopGoodsListVo);
+ return getDataTable(shopGoodsList);
+ }
+
+
+
+
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/dto/GoodsAreaDto.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/dto/GoodsAreaDto.java
new file mode 100644
index 0000000..e020603
--- /dev/null
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/dto/GoodsAreaDto.java
@@ -0,0 +1,4 @@
+package com.ruoyi.other.dto;
+
+public class GoodsAreaDto {
+}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/GoodsShopMapper.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/GoodsShopMapper.java
index 981cb2f..cdaa202 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/GoodsShopMapper.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/GoodsShopMapper.java
@@ -2,6 +2,11 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.other.api.domain.GoodsShop;
+import com.ruoyi.other.vo.ShopGoodsList;
+import com.ruoyi.other.vo.ShopGoodsListVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
* <p>
@@ -12,5 +17,17 @@
* @since 2024-11-20
*/
public interface GoodsShopMapper extends BaseMapper<GoodsShop> {
-
+
+
+ /**
+ * 获取门店授权的服务商品
+ * @param shopId
+ * @param goodsId
+ * @param goodsName
+ * @param goodsCategoryId
+ * @return
+ */
+ List<ShopGoodsList> getShopGoodsList(@Param("shopId") Integer shopId, @Param("goodsId") String goodsId,
+ @Param("goodsName") String goodsName, @Param("goodsCategoryId") Integer goodsCategoryId);
+
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/GoodsShopService.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/GoodsShopService.java
index d0e6b12..fcad894 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/GoodsShopService.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/GoodsShopService.java
@@ -2,6 +2,10 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.other.api.domain.GoodsShop;
+import com.ruoyi.other.vo.ShopGoodsList;
+import com.ruoyi.other.vo.ShopGoodsListVo;
+
+import java.util.List;
/**
* <p>
@@ -12,5 +16,11 @@
* @since 2024-11-20
*/
public interface GoodsShopService extends IService<GoodsShop> {
-
+
+ /**
+ * 获取门店授权的服务商品
+ * @param shopGoodsListVo
+ * @return
+ */
+ List<ShopGoodsList> getShopGoodsList(ShopGoodsListVo shopGoodsListVo);
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java
index 6e1ea7f..211121b 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java
@@ -27,10 +27,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
import java.util.stream.Collectors;
/**
@@ -186,8 +183,20 @@
// 特殊地区售价设置
List<GoodsArea> goodsAreaList = goods.getGoodsAreaList();
if (!CollectionUtils.isEmpty(goodsAreaList)){
- goodsAreaService.saveBatch(goodsAreaList);
+ for (GoodsArea goodsArea : goodsAreaList) {
+ List<GoodsArea> goodsAreaList1 = goodsArea.getGoodsAreaList();
+ for (GoodsArea area : goodsAreaList1) {
+ area.setProvince(goodsArea.getProvince());
+ area.setCity(goodsArea.getCity());
+ area.setDistricts(goodsArea.getDistricts());
+ area.setProvinceCode(goodsArea.getProvinceCode());
+ area.setCityCode(goodsArea.getCityCode());
+ area.setDistrictsCode(goodsArea.getDistrictsCode());
+ }
+ goodsAreaService.saveBatch(goodsAreaList1);
+ }
}
+
}
@Override
@@ -207,7 +216,20 @@
// 特殊地区售价设置
List<GoodsArea> goodsAreaList = goods.getGoodsAreaList();
- goodsAreaService.updateBatchById(goodsAreaList);
+ if (!CollectionUtils.isEmpty(goodsAreaList)){
+ for (GoodsArea goodsArea : goodsAreaList) {
+ List<GoodsArea> goodsAreaList1 = goodsArea.getGoodsAreaList();
+ for (GoodsArea area : goodsAreaList1) {
+ area.setProvince(goodsArea.getProvince());
+ area.setCity(goodsArea.getCity());
+ area.setDistricts(goodsArea.getDistricts());
+ area.setProvinceCode(goodsArea.getProvinceCode());
+ area.setCityCode(goodsArea.getCityCode());
+ area.setDistrictsCode(goodsArea.getDistrictsCode());
+ }
+ goodsAreaService.updateBatchById(goodsAreaList1);
+ }
+ }
}
@Override
@@ -231,7 +253,19 @@
// 特殊地区售价设置
List<GoodsArea> goodsAreaList = goodsAreaService.list(new LambdaQueryWrapper<GoodsArea>()
.eq(GoodsArea::getGoodsId, goodsId));
- goods.setGoodsAreaList(goodsAreaList);
+
+ Map<String, List<GoodsArea>> listMap = goodsAreaList.stream()
+ .collect(Collectors.groupingBy(goodsArea ->
+ goodsArea.getProvinceCode() + goodsArea.getCityCode() + goodsArea.getDistrictsCode()));
+
+ List<GoodsArea> goodsAreaList1 = new ArrayList<>();
+ listMap.forEach((s, goodsAreas) -> {
+ GoodsArea goodsArea = goodsAreas.get(0);
+ goodsArea.setGoodsAreaList(goodsAreas);
+ goodsAreaList1.add(goodsArea);
+ });
+
+ goods.setGoodsAreaList(goodsAreaList1);
return goods;
}
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsShopServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsShopServiceImpl.java
index 19363c4..233b2b1 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsShopServiceImpl.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsShopServiceImpl.java
@@ -1,10 +1,18 @@
package com.ruoyi.other.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.other.mapper.GoodsShopMapper;
import com.ruoyi.other.api.domain.GoodsShop;
import com.ruoyi.other.service.GoodsShopService;
+import com.ruoyi.other.vo.ShopGoodsList;
+import com.ruoyi.other.vo.ShopGoodsListVo;
+import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.feignClient.SysUserClient;
import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
/**
* <p>
@@ -16,5 +24,25 @@
*/
@Service
public class GoodsShopServiceImpl extends ServiceImpl<GoodsShopMapper, GoodsShop> implements GoodsShopService {
-
+
+ @Resource
+ private TokenService tokenService;
+
+ @Resource
+ private SysUserClient sysUserClient;
+
+
+
+ /**
+ * 获取门店授权的服务商品
+ * @param shopGoodsListVo
+ * @return
+ */
+ @Override
+ public List<ShopGoodsList> getShopGoodsList(ShopGoodsListVo shopGoodsListVo) {
+ Long userid = tokenService.getLoginUser().getUserid();
+ SysUser sysUser = sysUserClient.getSysUser(userid).getData();
+ List<ShopGoodsList> shopGoodsList = this.baseMapper.getShopGoodsList(sysUser.getObjectId(), shopGoodsListVo.getId(), shopGoodsListVo.getName(), shopGoodsListVo.getGoodsCategoryId());
+ return shopGoodsList;
+ }
}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/RefundPassSettingVo.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/RefundPassSettingVo.java
new file mode 100644
index 0000000..04206a8
--- /dev/null
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/RefundPassSettingVo.java
@@ -0,0 +1,22 @@
+package com.ruoyi.other.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/12/16 15:55
+ */
+@Data
+@ApiModel
+public class RefundPassSettingVo {
+ @ApiModelProperty("收货人姓名")
+ private String name;
+ @ApiModelProperty("收货人电话")
+ private String phone;
+ @ApiModelProperty("收货地址")
+ private String address;
+ @ApiModelProperty("售后周期")
+ private Integer days;
+}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/ShopGoodsList.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/ShopGoodsList.java
new file mode 100644
index 0000000..53c21eb
--- /dev/null
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/ShopGoodsList.java
@@ -0,0 +1,20 @@
+package com.ruoyi.other.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/12/16 17:32
+ */
+@Data
+@ApiModel
+public class ShopGoodsList {
+ @ApiModelProperty("商品id")
+ private String id;
+ @ApiModelProperty("商品名称")
+ private String name;
+ @ApiModelProperty("商品分类")
+ private String goodsCategory;
+}
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/ShopGoodsListVo.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/ShopGoodsListVo.java
new file mode 100644
index 0000000..37052b1
--- /dev/null
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/ShopGoodsListVo.java
@@ -0,0 +1,21 @@
+package com.ruoyi.other.vo;
+
+import com.ruoyi.common.core.web.page.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/12/16 17:32
+ */
+@Data
+@ApiModel
+public class ShopGoodsListVo extends BasePage {
+ @ApiModelProperty("商品id")
+ private String id;
+ @ApiModelProperty("商品名称")
+ private String name;
+ @ApiModelProperty("商品分类id")
+ private Integer goodsCategoryId;
+}
diff --git a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/GoodsShopMapper.xml b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/GoodsShopMapper.xml
new file mode 100644
index 0000000..b752a2b
--- /dev/null
+++ b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/GoodsShopMapper.xml
@@ -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="com.ruoyi.other.mapper.GoodsShopMapper">
+
+ <select id="getShopGoodsList" resultType="com.ruoyi.other.vo.ShopGoodsList">
+ select
+ a.id,
+ a.name,
+ b.name as goodsCategory
+ from t_goods a
+ left join t_goods_category b on (a.goods_category_id = b.id)
+ where a.type = 1 and a.del_flag = 0 and a.status = 2 and (a.appoint_store = 2 or a.id in (select goods_id from t_goods_shop where shop_id = #{shopId}))
+ <if test="null != goodsId and '' != goodsId">
+ and a.id like CONCAT('%', #{goodsId}, '%')
+ </if>
+ <if test="null != goodsName and '' != goodsName">
+ and a.name like CONCAT('%', #{goodsName}, '%')
+ </if>
+ <if test="null != goodsCategoryId">
+ and a.goods_category_id = #{goodsCategoryId}
+ </if>
+ order by a.create_time desc
+ </select>
+</mapper>
\ No newline at end of file
--
Gitblit v1.7.1