mitao
2024-06-12 828998a425cca92b7c152736dcb6b7a82abfd022
提交【管理后台】订单管理相关接口
14个文件已修改
10个文件已添加
648 ■■■■■ 已修改文件
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/management/MgtArticleController.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/management/MgtSensitiveWordsController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/management/dto/MgtArticleAuditDTO.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/management/dto/MgtSensitiveWordsDTO.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleServiceImpl.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtInvoicingApplicationController.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtOrderAuctionController.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtOrderController.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtOrderReturnRequestController.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/dto/MgtMallOrderQuery.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/vo/MgtMallOrderVO.java 115 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/vo/MgtOrderReturnRequestVO.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/management/MgtPromotionWishListController.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/management/dto/MgtCouponDTO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/PromotionWishListServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CustomConfigController.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CustomConfigVO.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICustomConfigService.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomConfigServiceImpl.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/management/MgtArticleController.java
@@ -1,6 +1,7 @@
package com.ruoyi.article.controller.management;
import com.ruoyi.article.controller.management.dto.MgtArticleAuditDTO;
import com.ruoyi.article.controller.management.dto.MgtArticleDTO;
import com.ruoyi.article.controller.management.dto.MgtArticleQuery;
import com.ruoyi.article.controller.management.vo.MgtArticleVO;
@@ -42,7 +43,7 @@
     * @param query 资讯管理查询条件
     * @return PageDTO<ArticleVO>
     */
    @ApiOperation(value = "获取资讯列表的分页数据", notes = "获取资讯列表的分页数据")
    @ApiOperation(value = "获取资讯列表的分页数据", notes = "获取资讯列表的分页数据,资讯审核列表")
    @PostMapping("/page")
    public R<PageDTO<MgtArticleVO>> getArticlePage(@Validated @RequestBody MgtArticleQuery query) {
        return R.ok(articleService.getArticlePage(query));
@@ -86,5 +87,16 @@
        return R.ok(articleService.getDetail(id));
    }
    /**
     * 资讯审核
     *
     * @param dto 管理后台-资讯审核传输对象
     */
    @ApiOperation("资讯审核")
    @PutMapping("/audit")
    public R<?> audit(@Validated @RequestBody MgtArticleAuditDTO dto) {
        articleService.audit(dto);
        return R.ok();
    }
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/management/MgtSensitiveWordsController.java
@@ -1,6 +1,7 @@
package com.ruoyi.article.controller.management;
import com.ruoyi.article.controller.management.dto.MgtSensitiveWordsDTO;
import com.ruoyi.article.controller.management.dto.MgtSensitiveWordsQuery;
import com.ruoyi.article.controller.management.vo.MgtSensitiveWordsVO;
import com.ruoyi.article.service.ISensitiveWordsService;
@@ -44,4 +45,15 @@
        return R.ok(sensitiveWordsService.getSensitiveWordsPage(query));
    }
    /**
     * 添加敏感词
     *
     * @param dto 敏感词数据传输对象
     */
    @ApiOperation("添加敏感词")
    @PostMapping("/save")
    public R<?> saveSensitiveWords(@Validated @RequestBody MgtSensitiveWordsDTO dto) {
        sensitiveWordsService.saveSensitiveWords(dto);
        return R.ok();
    }
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/management/dto/MgtArticleAuditDTO.java
New file
@@ -0,0 +1,26 @@
package com.ruoyi.article.controller.management.dto;
import com.ruoyi.common.core.enums.AuditStatusEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import javax.validation.constraints.NotNull;
import lombok.Data;
/**
 * @author mitao
 * @date 2024/6/12
 */
@Data
@ApiModel(value = "管理后台-资讯审核传输对象", description = "管理后台-资讯审核传输对象")
public class MgtArticleAuditDTO implements Serializable {
    private static final long serialVersionUID = -8029337933255222034L;
    @ApiModelProperty(value = "资讯id")
    @NotNull(message = "资讯id不能为空")
    private Long id;
    @ApiModelProperty(value = "审核状态 已通过 已拒绝")
    @NotNull(message = "审核状态不能为空")
    private AuditStatusEnum status;
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/management/dto/MgtSensitiveWordsDTO.java
New file
@@ -0,0 +1,22 @@
package com.ruoyi.article.controller.management.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import javax.validation.constraints.NotBlank;
import lombok.Data;
/**
 * @author mitao
 * @date 2024/6/12
 */
@Data
@ApiModel(value = "敏感词数据传输对象", description = "敏感词数据传输对象")
public class MgtSensitiveWordsDTO implements Serializable {
    private static final long serialVersionUID = 8439052498356527062L;
    @ApiModelProperty(value = "敏感词")
    @NotBlank(message = "敏感词不能为空")
    private String word;
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleService.java
@@ -4,6 +4,7 @@
import com.ruoyi.article.controller.forepart.dto.ArticleDTO;
import com.ruoyi.article.controller.forepart.vo.ArticleCommentsVO;
import com.ruoyi.article.controller.forepart.vo.ArticleVO;
import com.ruoyi.article.controller.management.dto.MgtArticleAuditDTO;
import com.ruoyi.article.controller.management.dto.MgtArticleDTO;
import com.ruoyi.article.controller.management.dto.MgtArticleQuery;
import com.ruoyi.article.controller.management.vo.MgtArticleVO;
@@ -62,4 +63,11 @@
     * @return MgtArticleVO
     */
    MgtArticleVO getDetail(Long id);
    /**
     * 资讯审核
     *
     * @param dto 管理后台-资讯审核传输对象
     */
    void audit(MgtArticleAuditDTO dto);
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java
@@ -1,6 +1,7 @@
package com.ruoyi.article.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.article.controller.management.dto.MgtSensitiveWordsDTO;
import com.ruoyi.article.controller.management.dto.MgtSensitiveWordsQuery;
import com.ruoyi.article.controller.management.vo.MgtSensitiveWordsVO;
import com.ruoyi.article.domain.SensitiveWords;
@@ -30,4 +31,11 @@
     * @return PageDTO<MgtSensitiveWordsVO>
     */
    PageDTO<MgtSensitiveWordsVO> getSensitiveWordsPage(MgtSensitiveWordsQuery query);
    /**
     * 添加敏感词
     *
     * @param dto 敏感词数据传输对象
     */
    void saveSensitiveWords(MgtSensitiveWordsDTO dto);
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleServiceImpl.java
@@ -8,6 +8,7 @@
import com.ruoyi.article.controller.forepart.dto.ArticleDTO;
import com.ruoyi.article.controller.forepart.vo.ArticleCommentsVO;
import com.ruoyi.article.controller.forepart.vo.ArticleVO;
import com.ruoyi.article.controller.management.dto.MgtArticleAuditDTO;
import com.ruoyi.article.controller.management.dto.MgtArticleDTO;
import com.ruoyi.article.controller.management.dto.MgtArticleQuery;
import com.ruoyi.article.controller.management.vo.MgtArticleVO;
@@ -432,4 +433,19 @@
        }
        return BeanUtils.copyBean(article, MgtArticleVO.class);
    }
    /**
     * 资讯审核
     *
     * @param dto 管理后台-资讯审核传输对象
     */
    @Override
    public void audit(MgtArticleAuditDTO dto) {
        Article article = this.getById(dto.getId());
        if (StringUtils.isNull(article)) {
            throw new ServiceException("资讯不存在");
        }
        article.setStatus(dto.getStatus());
        this.updateById(article);
    }
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java
@@ -2,12 +2,16 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.article.controller.management.dto.MgtSensitiveWordsDTO;
import com.ruoyi.article.controller.management.dto.MgtSensitiveWordsQuery;
import com.ruoyi.article.controller.management.vo.MgtSensitiveWordsVO;
import com.ruoyi.article.domain.SensitiveWords;
import com.ruoyi.article.mapper.SensitiveWordsMapper;
import com.ruoyi.article.service.ISensitiveWordsService;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.utils.page.BeanUtils;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.system.api.domain.dto.judgeSensitiveWordsDTO;
import com.ruoyi.system.api.domain.vo.judgeSensitiveWordsVO;
@@ -62,6 +66,25 @@
     */
    @Override
    public PageDTO<MgtSensitiveWordsVO> getSensitiveWordsPage(MgtSensitiveWordsQuery query) {
        return null;
        PageDTO<MgtSensitiveWordsVO> pageVO;
        Page<SensitiveWords> page = this.lambdaQuery()
                .like(StringUtils.isNotBlank(query.getWord()), SensitiveWords::getWord,
                        query.getWord()).page(new Page<>(query.getPageCurr(), query.getPageSize()));
        if (StringUtils.isEmpty(page.getRecords())) {
            pageVO = PageDTO.empty(page);
        } else {
            pageVO = PageDTO.of(page, MgtSensitiveWordsVO.class);
        }
        return pageVO;
    }
    /**
     * 添加敏感词
     *
     * @param dto 敏感词数据传输对象
     */
    @Override
    public void saveSensitiveWords(MgtSensitiveWordsDTO dto) {
        this.save(BeanUtils.copyBean(dto, SensitiveWords.class));
    }
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtInvoicingApplicationController.java
New file
@@ -0,0 +1,19 @@
package com.ruoyi.order.controller.management;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 开票申请表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/mgt/invoicing-application")
public class MgtInvoicingApplicationController {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtOrderAuctionController.java
New file
@@ -0,0 +1,19 @@
package com.ruoyi.order.controller.management;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 拍卖订单表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/mgt/order-auction")
public class MgtOrderAuctionController {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtOrderController.java
New file
@@ -0,0 +1,47 @@
package com.ruoyi.order.controller.management;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.order.controller.management.dto.MgtMallOrderQuery;
import com.ruoyi.order.controller.management.vo.MgtMallOrderVO;
import com.ruoyi.order.service.IOrderService;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 订单表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Slf4j
@RestController
@RequestMapping("/mgt/order")
@RequiredArgsConstructor
public class MgtOrderController {
    private final IOrderService orderService;
    /**
     * 商城订单分页列表
     *
     * @param query 商城订单查询对象
     * @return PageDTO<MgtMallOrderVO>
     */
    @ApiOperation("商城订单分页列表")
    @PostMapping("/mall-page")
    public R<PageDTO<MgtMallOrderVO>> getMallOrderPage(
            @Validated @RequestBody MgtMallOrderQuery query) {
        return R.ok(orderService.getMallOrderPage(query));
    }
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtOrderReturnRequestController.java
New file
@@ -0,0 +1,23 @@
package com.ruoyi.order.controller.management;
import io.swagger.annotations.Api;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 售后表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequiredArgsConstructor
@RequestMapping("/mgt/order-return-request")
@Api(tags = {"管理后台-售后管理相关接口"}, value = "管理后台-售后管理相关接口")
public class MgtOrderReturnRequestController {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/dto/MgtMallOrderQuery.java
New file
@@ -0,0 +1,39 @@
package com.ruoyi.order.controller.management.dto;
import com.ruoyi.common.core.enums.OrderFromEnum;
import com.ruoyi.common.core.enums.OrderStatusEnum;
import com.ruoyi.common.core.web.page.BasePage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * @author mitao
 * @date 2024/6/12
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "商城订单查询对象")
public class MgtMallOrderQuery extends BasePage {
    private static final long serialVersionUID = 7466073766154410614L;
    @ApiModelProperty(value = "订单编号")
    private String orderNo;
    @ApiModelProperty(value = "订单来源 1=商品订单 2=秒杀订单 3=团购订单 4=拍卖订单")
    private OrderFromEnum orderFrom;
    @ApiModelProperty(value = "商品名称")
    private String skuName;
    @ApiModelProperty(value = "下单会员")
    private String nickname;
    @ApiModelProperty("联系方式")
    private String phone;
    @ApiModelProperty(value = "订单状态 1=待支付 2=待发货 3=待收货 4=已完成 5=已取消,6 售后")
    private OrderStatusEnum orderStatus;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/vo/MgtMallOrderVO.java
New file
@@ -0,0 +1,115 @@
package com.ruoyi.order.controller.management.vo;
import com.ruoyi.common.core.enums.OrderFromEnum;
import com.ruoyi.common.core.enums.OrderStatusEnum;
import com.ruoyi.common.core.enums.PaymentMethodEnum;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
/**
 * @author mitao
 * @date 2024/6/12
 */
@Data
@Api(value = "商城订单视图对象")
public class MgtMallOrderVO implements Serializable {
    private static final long serialVersionUID = -7047076906373189300L;
    @ApiModelProperty(value = "订单id")
    private Long id;
    @ApiModelProperty(value = "订单编号")
    private String orderNo;
    @ApiModelProperty(value = "下单时间")
    private LocalDateTime orderTime;
    @ApiModelProperty(value = "订单来源 1=商品订单 2=秒杀订单 3=团购订单 4=拍卖订单")
    private OrderFromEnum orderFrom;
    @ApiModelProperty(value = "会员id")
    private Long memberId;
    @ApiModelProperty(value = "会员姓名")
    private String nickname;
    @ApiModelProperty("联系方式")
    private String phone;
    @ApiModelProperty(value = "支付方式 1=微信 2=支付宝")
    private PaymentMethodEnum paymentMethod;
    @ApiModelProperty(value = "支付合计")
    private BigDecimal totalAmount;
    @ApiModelProperty(value = "订单状态 1=待支付 2=待发货 3=待收货 4=已完成 5=已取消,6 售后")
    private OrderStatusEnum orderStatus;
    @ApiModelProperty(value = "支付时间")
    private LocalDateTime payTime;
    @ApiModelProperty(value = "取消时间")
    private LocalDateTime cancelTime;
    @ApiModelProperty(value = "订单备注")
    private String orderRemark;
    @ApiModelProperty(value = "发货时间")
    private LocalDateTime deliveryTime;
    @ApiModelProperty(value = "确认收货时间")
    private LocalDateTime receiveTime;
    @ApiModelProperty(value = "优惠金额")
    private BigDecimal discountMoney;
    @ApiModelProperty(value = "商品数量")
    private Integer goodsQuantity;
    @ApiModelProperty(value = "快递单号")
    private String courierNumber;
    @ApiModelProperty(value = "收货人姓名")
    private String receiverName;
    @ApiModelProperty(value = "收货人电话")
    private String receiverphone;
    @ApiModelProperty(value = "城市")
    private String receiverCity;
    @ApiModelProperty(value = "详细地址")
    private String receiverDetailAddress;
    @ApiModelProperty(value = "开票状态 开票状态 1 待开票,2待审核,3 已开票,4 拒绝")
    private Integer invoiceStatus;
    @ApiModelProperty(value = "优惠券id")
    private Long couponId;
    @ApiModelProperty(value = "优惠券名称")
    private String couponName;
    @ApiModelProperty(value = "商品id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "商品名称")
    private String skuName;
    @ApiModelProperty(value = "封面图")
    private String coverPic;
    @ApiModelProperty(value = "商品价格")
    private BigDecimal price;
    @ApiModelProperty(value = "积分")
    private Integer points;
    @ApiModelProperty("售后信息")
    private MgtOrderReturnRequestVO returnRequestVO;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/vo/MgtOrderReturnRequestVO.java
New file
@@ -0,0 +1,63 @@
package com.ruoyi.order.controller.management.vo;
import com.ruoyi.common.core.enums.AuditStatusEnum;
import com.ruoyi.common.core.enums.RequestTypeEnum;
import com.ruoyi.common.core.enums.ReturnRequestStatusEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
/**
 * @author mitao
 * @date 2024/6/12
 */
@Data
@ApiModel(value = "售后信息视图对象", description = "售后信息视图对象")
public class MgtOrderReturnRequestVO implements Serializable {
    private static final long serialVersionUID = -8078959211637146770L;
    @ApiModelProperty(value = "售后id")
    private Long id;
    @ApiModelProperty(value = "订单id")
    private Long orderId;
    @ApiModelProperty(value = "申请时间")
    private LocalDateTime requestTime;
    @ApiModelProperty(value = "售后类型 1=退款 2=退款退货")
    private RequestTypeEnum requestType;
    @ApiModelProperty(value = "申请原因")
    private String requestReason;
    @ApiModelProperty(value = "售后状态 1=待审核 2=待退货 3=待平台收货 4=已完成 5=已拒绝")
    private ReturnRequestStatusEnum status;
    @ApiModelProperty(value = "审核状态 1=待审核 2=已通过 3=已拒绝")
    private AuditStatusEnum auditStatus;
    @ApiModelProperty(value = "拒绝理由")
    private String refuseReason;
    @ApiModelProperty(value = "详情图,不超过五张图片")
    private String album;
    @ApiModelProperty(value = "收件人姓名")
    private String recipientName;
    @ApiModelProperty(value = "收件人电话")
    private String recipientPhone;
    @ApiModelProperty(value = "详细地址")
    private String detailedAddress;
    @ApiModelProperty(value = "备注")
    private String remark;
    @ApiModelProperty(value = "快递单号")
    private String courierNumber;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderService.java
@@ -2,6 +2,8 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.order.controller.management.dto.MgtMallOrderQuery;
import com.ruoyi.order.controller.management.vo.MgtMallOrderVO;
import com.ruoyi.system.api.domain.Order;
import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO;
import com.ruoyi.system.api.domain.dto.MemberOrderDTO;
@@ -71,4 +73,12 @@
     * @return List<Order>
     */
    List<Order> getOrderByCouponIds(Collection<Long> couponIds);
    /**
     * 商城订单分页列表
     *
     * @param query 商城订单查询对象
     * @return PageDTO<MgtMallOrderVO>
     */
    PageDTO<MgtMallOrderVO> getMallOrderPage(MgtMallOrderQuery query);
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -12,6 +12,8 @@
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.order.controller.management.dto.MgtMallOrderQuery;
import com.ruoyi.order.controller.management.vo.MgtMallOrderVO;
import com.ruoyi.order.domain.Paylog;
import com.ruoyi.order.mapper.OrderAuctionBondMapper;
import com.ruoyi.order.mapper.OrderMapper;
@@ -628,4 +630,15 @@
        return this.lambdaQuery().in(Order::getCouponId, couponIds)
                .eq(Order::getOrderStatus, OrderStatusEnum.FINISHED).list();
    }
    /**
     * 商城订单分页列表
     *
     * @param query 商城订单查询对象
     * @return PageDTO<MgtMallOrderVO>
     */
    @Override
    public PageDTO<MgtMallOrderVO> getMallOrderPage(MgtMallOrderQuery query) {
        return null;
    }
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/management/MgtPromotionWishListController.java
@@ -12,6 +12,7 @@
import io.swagger.annotations.ApiParam;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@@ -31,7 +32,7 @@
@RestController
@RequestMapping("/mgt/promotion-wish-list")
@RequiredArgsConstructor
@Api(value = "管理后台-心愿求购管理相关接口", tags = "管理后台-心愿求购管理相关接口")
@Api(value = "管理后台-心愿求购管理相关接口", tags = "管理后台-心愿求购管理相关接口筛选条件为:用户发布")
public class MgtPromotionWishListController {
    private final IPromotionWishListService promotionWishListService;
@@ -73,4 +74,17 @@
        promotionWishListService.reply(dto);
        return R.ok();
    }
    /**
     * 删除
     *
     * @param id 心愿求购id
     */
    @ApiOperation("删除")
    @DeleteMapping("/{id}")
    public R<?> delete(
            @ApiParam(name = "id", value = "心愿求购id", required = true) @PathVariable("id") Long id) {
        promotionWishListService.removeById(id);
        return R.ok();
    }
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/management/dto/MgtCouponDTO.java
@@ -12,7 +12,6 @@
import java.time.LocalDateTime;
import java.util.List;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import lombok.Data;
@@ -79,7 +78,6 @@
    private Integer issuedQuantity;
    @ApiModelProperty(value = "会员id列表")
    @NotEmpty(message = "会员id列表不能为空", groups = {InsertGroup.class})
    private List<Long> memberIdList;
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/PromotionWishListServiceImpl.java
@@ -6,6 +6,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists;
import com.ruoyi.common.core.constant.SecurityConstants;
import com.ruoyi.common.core.enums.ReplyStatusEnum;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.utils.page.BeanUtils;
@@ -169,6 +170,7 @@
    public void reply(MgtPromotionWishListDTO dto) {
        PromotionWishList promotionWishList = this.getById(dto.getId());
        promotionWishList.setReplies(dto.getReplies());
        promotionWishList.setReplyStatus(ReplyStatusEnum.REPLIED);
        this.updateById(promotionWishList);
    }
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CustomConfigController.java
@@ -6,8 +6,10 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.system.api.domain.CustomConfig;
import com.ruoyi.system.domain.dto.PointsConfigDTO;
import com.ruoyi.system.domain.vo.CustomConfigVO;
import com.ruoyi.system.service.ICustomConfigService;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
@@ -15,6 +17,7 @@
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
@@ -40,6 +43,16 @@
    }
    /**
     * 获取积分设置
     *
     * @return List<CustomConfig>
     */
    @ApiOperation("获取积分设置")
    @GetMapping("/points")
    public R<List<CustomConfigVO>> getPointsConfig() {
        return R.ok(iCustomConfigService.getPointsConfig());
    }
    /**
     * 保存积分设置
     *
     * @param dto 积分配置数据传输对象
@@ -50,4 +63,28 @@
        iCustomConfigService.savePointsSettings(dto);
        return R.ok();
    }
    /**
     * 获取订单说明设置
     *
     * @return CustomConfigVO
     */
    @ApiOperation("获取订单说明设置")
    @GetMapping("/order-desc")
    public R<CustomConfigVO> getOrderDesc() {
        return R.ok(iCustomConfigService.getOrderDesc());
    }
    /**
     * 订单说明设置
     *
     * @param description 订单说明
     */
    @ApiOperation(value = "订单说明设置")
    @PostMapping("/save-order-desc")
    public R<?> saveOrderDescription(
            @RequestParam(value = "description", required = true) String description) {
        iCustomConfigService.saveOrderDescription(description);
        return R.ok();
    }
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CustomConfigVO.java
New file
@@ -0,0 +1,28 @@
package com.ruoyi.system.domain.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import lombok.Data;
/**
 * @author mitao
 * @date 2024/6/12
 */
@Data
@ApiModel(value = "系统配置视图对象", description = "系统配置视图对象")
public class CustomConfigVO implements Serializable {
    private static final long serialVersionUID = -3924918944203960354L;
    @ApiModelProperty(value = "配置id")
    private Integer configId;
    @ApiModelProperty(value = "配置键")
    private String configKey;
    @ApiModelProperty(value = "配置名")
    private String configName;
    @ApiModelProperty(value = "配置值")
    private String configValue;
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICustomConfigService.java
@@ -3,6 +3,8 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.api.domain.CustomConfig;
import com.ruoyi.system.domain.dto.PointsConfigDTO;
import com.ruoyi.system.domain.vo.CustomConfigVO;
import java.util.List;
/**
 * <p>
@@ -14,5 +16,32 @@
 */
public interface ICustomConfigService extends IService<CustomConfig> {
    /**
     * 保存积分设置
     *
     * @param dto 积分配置数据传输对象
     */
    void savePointsSettings(PointsConfigDTO dto);
    /**
     * 获取积分设置
     *
     * @return List<CustomConfig>
     */
    List<CustomConfigVO> getPointsConfig();
    /**
     * 获取订单说明设置
     *
     * @return CustomConfigVO
     */
    CustomConfigVO getOrderDesc();
    /**
     * 订单说明设置
     *
     * @param description 订单说明
     */
    void saveOrderDescription(String description);
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomConfigServiceImpl.java
@@ -2,11 +2,14 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists;
import com.ruoyi.common.core.utils.page.BeanUtils;
import com.ruoyi.system.api.constants.ConfigEnum;
import com.ruoyi.system.api.domain.CustomConfig;
import com.ruoyi.system.domain.dto.PointsConfigDTO;
import com.ruoyi.system.domain.vo.CustomConfigVO;
import com.ruoyi.system.mapper.CustomConfigMapper;
import com.ruoyi.system.service.ICustomConfigService;
import java.util.List;
import java.util.Optional;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
@@ -23,6 +26,11 @@
@Service
public class CustomConfigServiceImpl extends ServiceImpl<CustomConfigMapper, CustomConfig> implements ICustomConfigService {
    /**
     * 保存积分设置
     *
     * @param dto 积分配置数据传输对象
     */
    @Override
    @Transactional(propagation = Propagation.REQUIRES_NEW)
    public void savePointsSettings(PointsConfigDTO dto) {
@@ -54,4 +62,51 @@
                .eq(CustomConfig::getConfigType, key)
                .eq(CustomConfig::getDelFlag, 0).oneOpt();
    }
    /**
     * 获取积分设置
     *
     * @return List<CustomConfigVO>
     */
    @Override
    public List<CustomConfigVO> getPointsConfig() {
        List<CustomConfig> list = this.lambdaQuery()
                .in(CustomConfig::getConfigType, ConfigEnum.MEMBER_POINTS_MONEY.getKey(),
                        ConfigEnum.MEMBER_POINTS_POINTS.getKey())
                .eq(CustomConfig::getDelFlag, 0).list();
        return BeanUtils.copyList(list, CustomConfigVO.class);
    }
    /**
     * 获取订单说明设置
     *
     * @return CustomConfigVO
     */
    @Override
    public CustomConfigVO getOrderDesc() {
        CustomConfigVO vo;
        CustomConfig customConfig = getCustomConfigByKey(
                ConfigEnum.MALL_ORDER_DESCRIPTION.getKey()).orElse(new CustomConfig());
        vo = BeanUtils.copyBean(customConfig, CustomConfigVO.class);
        return vo;
    }
    /**
     * 订单说明设置
     *
     * @param description 订单说明
     */
    @Override
    public void saveOrderDescription(String description) {
        CustomConfig orderDescription = getCustomConfigByKey(
                ConfigEnum.MALL_ORDER_DESCRIPTION.getKey()).orElseGet(() -> {
            CustomConfig customConfig = new CustomConfig();
            customConfig.setConfigKey(ConfigEnum.MALL_ORDER_DESCRIPTION.getKey());
            customConfig.setConfigName(ConfigEnum.MALL_ORDER_DESCRIPTION.getKeyName());
            customConfig.setConfigType(ConfigEnum.MALL_ORDER_DESCRIPTION.getKeyType());
            return customConfig;
        });
        orderDescription.setConfigValue(description);
        this.saveOrUpdate(orderDescription);
    }
}