Browse Source

添加我的选品接口,商品详情对象封装

zhangwl 3 weeks ago
parent
commit
2dd561b43c

+ 49 - 12
src/main/java/zs/payment/controller/YxSupplyChannelManualController.java

@@ -16,10 +16,12 @@ import zs.payment.req.*;
 import zs.payment.entity.Orders;
 import zs.payment.entity.Orders;
 import zs.payment.req.aftersales.AfterSalesOrderReq;
 import zs.payment.req.aftersales.AfterSalesOrderReq;
 import zs.payment.req.aftersales.AfterSalesOrderTypeReq;
 import zs.payment.req.aftersales.AfterSalesOrderTypeReq;
+import zs.payment.req.storage.StoragePageReq;
 import zs.payment.resp.Result;
 import zs.payment.resp.Result;
 import zs.payment.service.OrdersService;
 import zs.payment.service.OrdersService;
 import zs.payment.utils.HttpUtil;
 import zs.payment.utils.HttpUtil;
 import zs.payment.utils.RedisUtils;
 import zs.payment.utils.RedisUtils;
+import zs.payment.dto.OrderDetailDTO;
 
 
 import javax.validation.Valid;
 import javax.validation.Valid;
 import java.util.HashMap;
 import java.util.HashMap;
@@ -154,15 +156,18 @@ public class YxSupplyChannelManualController {
             log.info("查看商品详情失败,{}",req.getIds());
             log.info("查看商品详情失败,{}",req.getIds());
             return Result.fail(respJson.getString("msg"));
             return Result.fail(respJson.getString("msg"));
         }
         }
-        //添加到我的选品库
-        resp = HttpUtil.restTemplatePost(prefixUrl + "/supplyapi/app/product/storage/addStorage", params, headers);
-        JSONObject respJson2 = JSONObject.parseObject(resp);
-        if (respJson2.getIntValue("code") != 0) {
-            log.info("添加选品库失败,{}",req.getIds());
-            return Result.fail(respJson2.getString("msg"));
-        }
 
 
-        return Result.success(respJson.getJSONObject("data"));
+        List<OrderDetailDTO> list = JSONObject.parseArray(
+                respJson.getJSONObject("data").getJSONArray("list").toJSONString(),
+                OrderDetailDTO.class
+        );
+
+        //todo  导入到企云商城
+
+
+
+
+        return Result.success(list);
     }
     }
 
 
 
 
@@ -432,10 +437,10 @@ public class YxSupplyChannelManualController {
         JSONObject reqJson = JSONObject.parseObject(JSONObject.toJSONString(req));
         JSONObject reqJson = JSONObject.parseObject(JSONObject.toJSONString(req));
         String messageType = reqJson.getString("message_type");
         String messageType = reqJson.getString("message_type");
         //当 message_type == 商品类的事件 时跳过保存,其他类型才入库
         //当 message_type == 商品类的事件 时跳过保存,其他类型才入库
-        if (CallbackMessageType.GOODS_ALTER.equalsIgnoreCase(messageType) || CallbackMessageType.GOODS_UNDERCARRIAGE.equalsIgnoreCase(messageType)
-        || CallbackMessageType.GOODS_ON_SALE.equalsIgnoreCase(messageType) ||  CallbackMessageType.GOODS_DELETE.equalsIgnoreCase(messageType)) {
-            return result;
-        }
+//        if (CallbackMessageType.GOODS_ALTER.equalsIgnoreCase(messageType) || CallbackMessageType.GOODS_UNDERCARRIAGE.equalsIgnoreCase(messageType)
+//        || CallbackMessageType.GOODS_ON_SALE.equalsIgnoreCase(messageType) ||  CallbackMessageType.GOODS_DELETE.equalsIgnoreCase(messageType)) {
+//            return result;
+//        }
 
 
         //售后通过
         //售后通过
         if (CallbackMessageType.AFTER_SALES_PASS.equalsIgnoreCase(messageType)) {
         if (CallbackMessageType.AFTER_SALES_PASS.equalsIgnoreCase(messageType)) {
@@ -449,4 +454,36 @@ public class YxSupplyChannelManualController {
     }
     }
 
 
 
 
+    //================选品===========================
+    //我的选品库
+    @PostMapping("/getMyStorageIdsList")
+    public Result getMyStorageIdsList(@Valid @RequestBody StoragePageReq req){
+        String token = redisUtils.get(SUPPLY_TOKEN);
+        if (token == null || token.isEmpty()) {
+            Result tokenResult = fetchAndCacheToken();
+            if (!tokenResult.isSuccess()) {
+                return tokenResult;
+            }
+            token = (String) tokenResult.getBody().get("token");
+        }
+
+        Map<String, Object> params = new HashMap<>();
+        params.put("page", req.getPage());
+        params.put("pageSize",req.getPageSize());
+        params.put("create_sort",req.getCreateSort());
+
+        Map<String, String> headers = new HashMap<>();
+        headers.put("x-token", token);
+
+        String resp = HttpUtil.restTemplatePost(prefixUrl + "/supplyapi/app/product/storage/getMyStorageIdsList", params, headers);
+        JSONObject respJson = JSONObject.parseObject(resp);
+        if (respJson.getIntValue("code") != 0) {
+            return Result.fail(respJson.getString("msg"));
+        }
+
+
+        return Result.success(respJson.getJSONObject("data"));
+    }
+
+
 }
 }

+ 18 - 0
src/main/java/zs/payment/dto/AttrsDTO.java

@@ -0,0 +1,18 @@
+package zs.payment.dto;
+
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+/**
+ * 商品属性
+ */
+@Setter
+@Getter
+@NoArgsConstructor
+public class AttrsDTO {
+    //属性名称
+    private String name;
+    //属性值
+    private String value;
+}

+ 19 - 0
src/main/java/zs/payment/dto/CategoryDTO.java

@@ -0,0 +1,19 @@
+package zs.payment.dto;
+
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Setter
+@Getter
+@NoArgsConstructor
+public class CategoryDTO {
+
+    //分类id
+    private Integer id;
+    //分类名称
+    private String name;
+    private Integer level;
+    private Integer parent_id;
+
+}

+ 15 - 0
src/main/java/zs/payment/dto/GalleryDTO.java

@@ -0,0 +1,15 @@
+package zs.payment.dto;
+
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+@Setter
+@Getter
+@NoArgsConstructor
+public class GalleryDTO {
+    //类型,目前没用
+    private Integer type;
+    //图片
+    private String src;
+}

+ 114 - 0
src/main/java/zs/payment/dto/OrderDetailDTO.java

@@ -0,0 +1,114 @@
+package zs.payment.dto;
+
+import com.alibaba.fastjson.annotation.JSONField;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * 商品详情
+ */
+@Setter
+@Getter
+@NoArgsConstructor
+public class OrderDetailDTO {
+
+    private Long id;
+    private Long created_at;
+    private Long updated_at;
+    //商品名称
+    private String title;
+    //原价(分)
+    private Integer origin_price;
+    //指导价(分)
+    private Integer guide_price;
+    //售价(分)
+    private Integer price;
+    //营销价格(分)
+    private Integer activity_price;
+    //库存
+    private Integer stock;
+    //销售数量
+    private Integer sales;
+    private Integer feedback_rate;
+    //商品编号
+    private String sn;
+    //
+    private Integer is_new;
+    //
+    private Integer is_recommend;
+    private Integer is_hot;
+    private Integer is_promotion;
+    // 上下架 0下 1上
+    private Integer is_display;
+    //商品描述
+    private String desc;
+    //商品主图
+    private String image_url;
+    //商品单位
+    private String unit;
+    //商品条码
+    private String barcode;
+    @JSONField(name = "long")
+    private Integer longVal;
+    private Integer wide;
+    private Integer high;
+    private Integer volume;
+    private Integer freight;
+    private Integer freight_type;
+    private Integer maxPrice;
+    private Integer minPrice;
+    private Object qualifications;
+    //商品详情
+    private String detail_images;
+
+    //商品组图
+    private List<GalleryDTO> gallery;
+
+    //商品属性
+    private List<AttrsDTO> attrs;
+
+    //商品规格
+    private List<SkuDTO> skus;
+
+    //供应商
+    private SupplierDTO supplier;
+
+    //供应链
+    private GatherSupplyDTO gather_supply;
+    private Integer brand_id;
+    private Integer supplier_id;
+    private Integer gather_supply_id;
+    private Integer category1_id;
+    private Integer category2_id;
+    private Integer category3_id;
+    private Integer freight_template_id;
+    private Integer source;
+    private Long source_goods_id;
+    private Integer freeze;
+    private Integer shop_level;
+    private Integer des_level;
+    private Integer express_level;
+    private Integer level;
+
+    //品牌
+    private BrandDTO brand;
+    //一级分类
+    private CategoryDTO category_1;
+    //二级分类
+    private CategoryDTO category_2;
+    //三级分类
+    private CategoryDTO category_3;
+    //协议价
+    private Integer agreement_price;
+    //市场价
+    private Integer market_price;
+    //售价
+    private Integer sale_price;
+    //成本价
+    private Integer cost_price;
+    private Integer origin_rate;
+    private Integer activity_rate;
+}

+ 23 - 0
src/main/java/zs/payment/req/storage/StoragePageReq.java

@@ -0,0 +1,23 @@
+package zs.payment.req.storage;
+
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+@Setter
+@Getter
+@NoArgsConstructor
+public class StoragePageReq {
+
+    //页数
+    @NotNull(message = "页数不能为空")
+    private Integer page;
+    //每页个数
+    @NotNull(message = "每页个数不能为空")
+    private Integer pageSize;
+    //是否加入时间倒叙(可选) 1倒序 2升序
+    private Integer createSort;
+
+}