mirror of
https://gitee.com/hhyykk/ipms-sjy.git
synced 2025-08-16 03:01:53 +08:00
trade:【交易售后】查询分页列表
This commit is contained in:
@@ -1,10 +1,13 @@
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.aftersale;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.module.member.api.user.MemberUserApi;
|
||||
import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSaleDisagreeReqVO;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSalePageReqVO;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSaleRespVO;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSaleRespPageItemVO;
|
||||
import cn.iocoder.yudao.module.trade.convert.aftersale.TradeAfterSaleConvert;
|
||||
import cn.iocoder.yudao.module.trade.dal.dataobject.aftersale.TradeAfterSaleDO;
|
||||
import cn.iocoder.yudao.module.trade.service.aftersale.TradeAfterSaleService;
|
||||
@@ -18,8 +21,10 @@ import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.validation.Valid;
|
||||
import java.util.Map;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
|
||||
import static cn.iocoder.yudao.framework.common.util.servlet.ServletUtils.getClientIP;
|
||||
import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
|
||||
|
||||
@@ -33,12 +38,22 @@ public class TradeAfterSaleController {
|
||||
@Resource
|
||||
private TradeAfterSaleService afterSaleService;
|
||||
|
||||
@Resource
|
||||
private MemberUserApi memberUserApi;
|
||||
|
||||
@GetMapping("/page")
|
||||
@ApiOperation("获得交易售后分页")
|
||||
@PreAuthorize("@ss.hasPermission('trade:after-sale:query')")
|
||||
public CommonResult<PageResult<TradeAfterSaleRespVO>> getAfterSalePage(@Valid TradeAfterSalePageReqVO pageVO) {
|
||||
public CommonResult<PageResult<TradeAfterSaleRespPageItemVO>> getAfterSalePage(@Valid TradeAfterSalePageReqVO pageVO) {
|
||||
PageResult<TradeAfterSaleDO> pageResult = afterSaleService.getAfterSalePage(pageVO);
|
||||
return success(TradeAfterSaleConvert.INSTANCE.convertPage(pageResult));
|
||||
if (CollUtil.isEmpty(pageResult.getList())) {
|
||||
return success(PageResult.empty());
|
||||
}
|
||||
|
||||
// 拼接数据
|
||||
Map<Long, MemberUserRespDTO> memberUsers = memberUserApi.getUserMap(
|
||||
convertSet(pageResult.getList(), TradeAfterSaleDO::getUserId));
|
||||
return success(TradeAfterSaleConvert.INSTANCE.convertPage(pageResult, memberUsers));
|
||||
}
|
||||
|
||||
@PutMapping("/agree")
|
||||
|
@@ -1,6 +1,6 @@
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo;
|
||||
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.base.property.ProductPropertyRespVO;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyRespVO;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
@@ -1,5 +1,6 @@
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo;
|
||||
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.base.member.user.MemberUserRespVO;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
@@ -8,11 +9,11 @@ import lombok.ToString;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@ApiModel("管理后台 - 交易售后 Response VO")
|
||||
@ApiModel("管理后台 - 交易售后分页的每一条记录 Response VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class TradeAfterSaleRespVO extends TradeAfterSaleBaseVO {
|
||||
public class TradeAfterSaleRespPageItemVO extends TradeAfterSaleBaseVO {
|
||||
|
||||
@ApiModelProperty(value = "售后编号", required = true, example = "27630")
|
||||
private Long id;
|
||||
@@ -20,4 +21,9 @@ public class TradeAfterSaleRespVO extends TradeAfterSaleBaseVO {
|
||||
@ApiModelProperty(value = "创建时间", required = true)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/**
|
||||
* 用户信息
|
||||
*/
|
||||
private MemberUserRespVO user;
|
||||
|
||||
}
|
@@ -0,0 +1,4 @@
|
||||
/**
|
||||
* 占位符,可忽略
|
||||
*/
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.base.member;
|
@@ -0,0 +1,20 @@
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.base.member.user;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@ApiModel("管理后台 - 会员用户 Response VO")
|
||||
@Data
|
||||
public class MemberUserRespVO {
|
||||
|
||||
@ApiModelProperty(value = "用户 ID", required = true, example = "1")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty(value = "用户昵称", required = true, example = "芋道源码")
|
||||
private String nickname;
|
||||
|
||||
@ApiModelProperty(value = "用户头像", example = "https://www.iocoder.cn/xxx.png")
|
||||
private String avatar;
|
||||
|
||||
}
|
@@ -1,10 +1,10 @@
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.base.property;
|
||||
package cn.iocoder.yudao.module.trade.controller.admin.base.product.property;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@ApiModel("管理后台 - 商品规格 Request VO")
|
||||
@ApiModel("管理后台 - 商品规格 Response VO")
|
||||
@Data
|
||||
public class ProductPropertyRespVO {
|
||||
|
@@ -1,8 +1,10 @@
|
||||
package cn.iocoder.yudao.module.trade.convert.aftersale;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO;
|
||||
import cn.iocoder.yudao.module.pay.api.refund.dto.PayRefundCreateReqDTO;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSaleRespVO;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSaleRespPageItemVO;
|
||||
import cn.iocoder.yudao.module.trade.controller.admin.base.member.user.MemberUserRespVO;
|
||||
import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppTradeAfterSaleCreateReqVO;
|
||||
import cn.iocoder.yudao.module.trade.dal.dataobject.aftersale.TradeAfterSaleDO;
|
||||
import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderItemDO;
|
||||
@@ -12,6 +14,8 @@ import org.mapstruct.Mapping;
|
||||
import org.mapstruct.Mappings;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@Mapper
|
||||
public interface TradeAfterSaleConvert {
|
||||
|
||||
@@ -34,6 +38,15 @@ public interface TradeAfterSaleConvert {
|
||||
PayRefundCreateReqDTO convert(String userIp, TradeAfterSaleDO afterSale,
|
||||
TradeOrderProperties orderProperties);
|
||||
|
||||
PageResult<TradeAfterSaleRespVO> convertPage(PageResult<TradeAfterSaleDO> page);
|
||||
MemberUserRespVO convert(MemberUserRespDTO bean);
|
||||
|
||||
PageResult<TradeAfterSaleRespPageItemVO> convertPage(PageResult<TradeAfterSaleDO> page);
|
||||
|
||||
default PageResult<TradeAfterSaleRespPageItemVO> convertPage(PageResult<TradeAfterSaleDO> pageResult,
|
||||
Map<Long, MemberUserRespDTO> memberUsers) {
|
||||
PageResult<TradeAfterSaleRespPageItemVO> pageVOResult = convertPage(pageResult);
|
||||
pageVOResult.getList().forEach(item -> item.setUser(convert(memberUsers.get(item.getUserId()))));
|
||||
return pageVOResult;
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user