diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderBuyerDTO.java b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderBuyerDTO.java new file mode 100644 index 00000000..a6010186 --- /dev/null +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderBuyerDTO.java @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.common.modules.order.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "MchOrderBuyerDTO 对象", description = "商家版订单里的买家实体类") +public class MchOrderBuyerDTO implements Serializable { + private static final long serialVersionUID = 1L; + // 买家信息 + @ApiModelProperty(value = "买家编号") + private Integer buyer_user_id; + + @ApiModelProperty(value = "买家姓名") + private String da_name; + + @ApiModelProperty(value = "买家手机号") + private String da_mobile; + + @ApiModelProperty(value = "买家留言备注") + private String order_message; + + @ApiModelProperty(value = "买家收货地址维度") + private String da_latitude; + + @ApiModelProperty(value = "买家收货地址经度") + private String da_longitude; + + @ApiModelProperty(value = "省份") + private String da_province; + + @ApiModelProperty(value = "城市") + private String da_city; + + @ApiModelProperty(value = "县乡镇") + private String da_county; + + @ApiModelProperty(value = "买家收货地址") + private String da_address; +} diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderInfoDTO.java b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderInfoDTO.java new file mode 100644 index 00000000..0abb3841 --- /dev/null +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderInfoDTO.java @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.common.modules.order.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "MchOrderInfoDTO 对象", description = "商家版订单信息实体类") +public class MchOrderInfoDTO implements Serializable { + private static final long serialVersionUID = 1L; + // 买家信息 + MchOrderBuyerDTO buyer_info; + // 店铺信息 + MchOrderStoreDTO store_info; + // 订单里的商品信息 + List order_items; + // 顺丰同城配送信息 + MchSFOrderDTO sf_order_info; + + // 订单信息 + @ApiModelProperty(value = "订单编号") + private String order_id; + @ApiModelProperty(value = "订单标题") + private String order_title; + @ApiModelProperty(value = "同城配送取单号") + private String order_pickup_num; + @ApiModelProperty(value = "下单时间") + private Date order_time; + @ApiModelProperty(value = "支付时间") + private Date payment_time; + @ApiModelProperty(value = "预计达到时间戳") + private Long arrival_time; + @ApiModelProperty(value = "订单原价") + private BigDecimal order_product_amount; + @ApiModelProperty(value = "应付金额/应支付金额:order_goods_amount - order_discount_amount + order_shipping_fee - order_voucher_price - order_points_fee - order_adjust_fee") + private BigDecimal order_payment_amount; + @ApiModelProperty(value = "货币编号") + private Integer currency_id; + @ApiModelProperty(value = "订单状态(LIST):2011-待订单审核;2013-待财务审核;2020-待配货/待出库审核;2030-待发货;2040-已发货/待收货确认;2060-已完成/已签收;2070-已取消/已作废;") + private Integer order_state_id; + @ApiModelProperty(value = "配送方式: 1-快递配送(运费 10 元)5-自提;10-普通快递;16-顺丰同城;") + private Integer delivery_type_id; + @ApiModelProperty(value = "订单运费") + private BigDecimal order_shipping_fee; + @ApiModelProperty(value = "两点距离,单位米") + private Integer distance; + + // 快递鸟物流信息 +} diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderItemDTO.java b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderItemDTO.java new file mode 100644 index 00000000..0d02c56c --- /dev/null +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderItemDTO.java @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.common.modules.order.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.math.BigDecimal; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "MchOrderItemDTO 对象", description = "商家版订单商品子项实体类") +public class MchOrderItemDTO implements Serializable { + private static final long serialVersionUID = 1L; + + // 店铺信息 + @ApiModelProperty(value = "产品编号") + private Long product_id; + + @ApiModelProperty(value = "货品编号") + private Integer item_id; + + @ApiModelProperty(value = "商品名称") + private String item_name; + + @ApiModelProperty(value = "商品数量") + private Integer order_item_quantity; + + @ApiModelProperty(value = "商品价格单价") + private BigDecimal item_unit_price; + + @ApiModelProperty(value = "商品成本金额") + private BigDecimal item_cost_price; + + @ApiModelProperty(value = "商品条码") + private String item_barcode; + + @ApiModelProperty(value = "商品图片") + private String order_item_image; + + @ApiModelProperty(value = "商品规格描述") + private String spec_info; +} diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderStoreDTO.java b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderStoreDTO.java new file mode 100644 index 00000000..e3714a96 --- /dev/null +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderStoreDTO.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.common.modules.order.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "MchOrderStoreDTO 对象", description = "商家版订单里的店铺实体类") +public class MchOrderStoreDTO implements Serializable { + private static final long serialVersionUID = 1L; + // 店铺信息 + @ApiModelProperty(value = "卖家店铺编号") + private Integer store_id; + @ApiModelProperty(value = "卖家店铺名称") + private String store_name; + @ApiModelProperty(value = "卖家店铺名称") + private String store_logo; + @ApiModelProperty(value = "卖家店铺维度") + private String store_latitude; + @ApiModelProperty(value = "卖家店铺经度") + private String store_longitude; + @ApiModelProperty(value = "卖家店铺地址") + private String store_area; + @ApiModelProperty(value = "卖家店铺地址") + private String store_address; + @ApiModelProperty(value = "卖家店铺等级ID") + private String store_grade_id; + @ApiModelProperty(value = "卖家店铺等级") + private String store_grade_name; +} diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchSFOrderDTO.java b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchSFOrderDTO.java new file mode 100644 index 00000000..7cf99889 --- /dev/null +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchSFOrderDTO.java @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2025. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan. + * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna. + * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus. + * Vestibulum commodo. Ut rhoncus gravida arcu. + */ + +package com.suisung.mall.common.modules.order.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "MchSFOrderDTO 对象", description = "商家版顺丰订单信息实体类") +public class MchSFOrderDTO implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "顺丰订单号") + private String sf_order_id; + + @ApiModelProperty(value = "配送员姓名") + private String operator_name; + + @ApiModelProperty(value = "配送员手机号") + private String operator_phone; + + @ApiModelProperty(value = "配送员经度") + private String rider_lng; + + @ApiModelProperty(value = "配送员纬度") + private String rider_lat; + + @ApiModelProperty(value = "顺丰订单状态码") + private String order_status; + + @ApiModelProperty(value = "顺丰订单状态说明") + private String status_desc; + + @ApiModelProperty(value = "顺丰订单取消码") + private String cancel_code; + + @ApiModelProperty(value = "顺丰订单取消原因") + private String cancel_reason; + + @ApiModelProperty(value = "顺丰订单推送时间") + private String push_time; + + @ApiModelProperty(value = "顺丰订单配送轨迹H5页面URL") + private String h5_url; + + @ApiModelProperty(value = "顺丰订单状态流轨迹JSON格式") + private String feed; + +} diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/order/controller/mobile/UserOrderController.java b/mall-shop/src/main/java/com/suisung/mall/shop/order/controller/mobile/UserOrderController.java index 13960d88..d0ce1131 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/order/controller/mobile/UserOrderController.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/order/controller/mobile/UserOrderController.java @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.suisung.mall.common.api.CommonResult; @@ -23,10 +24,7 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.io.Serializable; import java.util.HashMap; @@ -219,6 +217,12 @@ public class UserOrderController extends BaseControllerImpl { return CommonResult.success(shopOrderBaseService.listsOrderAndsProduct(pageNum, pageSize)); } + @ApiOperation(value = "查询移动商家端订单数据(新)", notes = "查询移动商家端订单数据(新)") + @RequestMapping(value = "/mch/order/list", method = RequestMethod.POST) + public CommonResult selectMchOrderPageList(@RequestBody JSONObject params) { + return CommonResult.success(shopOrderBaseService.selectMchOrderPageList(params.getInt("storeId"), params.getStr("keyword"), params.getInt("status"), params.getInt("pageNum"), params.getInt("pageSize"))); + } + @ApiOperation(value = "查询移动商家端订单详情数据", notes = "查询移动商家端订单详情数据") @RequestMapping(value = "/getOrderDetail", method = RequestMethod.GET) public CommonResult getOrderDetail(@RequestParam(name = "order_id") String order_id) { diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/order/mapper/ShopOrderBaseMapper.java b/mall-shop/src/main/java/com/suisung/mall/shop/order/mapper/ShopOrderBaseMapper.java index 7a4fb5c6..84125ec5 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/order/mapper/ShopOrderBaseMapper.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/order/mapper/ShopOrderBaseMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.suisung.mall.common.modules.order.ShopOrderBase; +import com.suisung.mall.common.modules.order.dto.MchOrderInfoDTO; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -58,4 +59,14 @@ public interface ShopOrderBaseMapper extends BaseMapper { * @return */ Map getOrderPrintInfo(@Param("orderId") String orderId, Integer payState); + + /** + * 商家版订单列表(新) + * + * @param storeId 店铺Id + * @param keyword 关键字 + * @param status 订单状态 + * @return + */ + IPage selectMchOrderPageList(@Param("storeId") Integer storeId, @Param("keyword") String keyword, @Param("status") Integer status, IPage page); } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/ShopOrderBaseService.java b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/ShopOrderBaseService.java index fcc0676d..8b73c494 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/ShopOrderBaseService.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/ShopOrderBaseService.java @@ -1,9 +1,11 @@ package com.suisung.mall.shop.order.service; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.suisung.mall.common.api.CommonResult; import com.suisung.mall.common.modules.order.ShopOrderBase; import com.suisung.mall.common.modules.order.ShopOrderInfo; import com.suisung.mall.common.modules.order.ShopOrderLogistics; +import com.suisung.mall.common.modules.order.dto.MchOrderInfoDTO; import com.suisung.mall.common.pojo.req.SFCreateOrderReq; import com.suisung.mall.core.web.service.IBaseService; import com.suisung.mall.shop.order.vo.OrdeListVo; @@ -530,4 +532,18 @@ public interface ShopOrderBaseService extends IBaseService { * @return */ SFCreateOrderReq buildSFOrderData(Integer devId, String orderId, Long orderPickupNum); + + + /** + * 商家版订单列表(新) + * + * @param storeId + * @param keyword + * @param status + * @param pageNum + * @param pageSize + * @return + */ + IPage selectMchOrderPageList(Integer storeId, String keyword, Integer status, Integer pageNum, Integer pageSize); + } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderBaseServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderBaseServiceImpl.java index 44208c5e..b1b9fb97 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderBaseServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderBaseServiceImpl.java @@ -48,6 +48,7 @@ import com.suisung.mall.common.modules.invoicing.InvoicingStockBill; import com.suisung.mall.common.modules.invoicing.InvoicingStockBillItem; import com.suisung.mall.common.modules.invoicing.InvoicingWarehouseBase; import com.suisung.mall.common.modules.order.*; +import com.suisung.mall.common.modules.order.dto.MchOrderInfoDTO; import com.suisung.mall.common.modules.pay.*; import com.suisung.mall.common.modules.product.ShopProductAnalytics; import com.suisung.mall.common.modules.product.ShopProductIndex; @@ -8479,4 +8480,21 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl selectMchOrderPageList(Integer storeId, String keyword, Integer status, Integer pageNum, Integer pageSize) { + //订单状态(LIST):2011-待订单审核;2013-待财务审核;2020-待配货/待出库审核;2030-待发货;2040-已发货/待收货确认;2060-已完成/已签收;2070-已取消/已作废; + Page page = new Page<>(pageNum, pageSize); + return shopOrderBaseMapper.selectMchOrderPageList(storeId, keyword, status, page); + } } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStoreBizCategoryAdminController.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStoreBizCategoryAdminController.java index 84c3a97f..22328dcc 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStoreBizCategoryAdminController.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStoreBizCategoryAdminController.java @@ -53,7 +53,7 @@ public class ShopStoreBizCategoryAdminController extends BaseControllerImpl { return shopStoreBizCategoryService.modify(params); } - @ApiOperation(value = "屏蔽店铺分类(类目)", notes = "屏蔽店铺分类(类目)") + @ApiOperation(value = "屏蔽/开启店铺分类(类目)", notes = "屏蔽/开启店铺分类(类目)") @RequestMapping(value = "/status/modify", method = RequestMethod.POST) public CommonResult shopStoreBusinessCategoryDisable(@RequestBody JSONObject params) { return shopStoreBizCategoryService.modifyStatus(params); diff --git a/mall-shop/src/main/resources/mapper/order/ShopOrderBaseMapper.xml b/mall-shop/src/main/resources/mapper/order/ShopOrderBaseMapper.xml index 9afd9e53..6c56f3a7 100644 --- a/mall-shop/src/main/resources/mapper/order/ShopOrderBaseMapper.xml +++ b/mall-shop/src/main/resources/mapper/order/ShopOrderBaseMapper.xml @@ -1,7 +1,6 @@ - order_id @@ -170,24 +169,21 @@ @@ -515,13 +511,13 @@ and shop_order_info.subsite_id=#{subsite_id} - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +