Переглянути джерело

店铺管理--商品自定义属性区分站点

Gaosheng 3 днів тому
батько
коміт
bf1e486487

+ 1 - 0
xinkeaboard-server/b2b2c-core/src/main/resources/i18n_en.properties

@@ -410,6 +410,7 @@ labelIds格式错误,请重试=labelIds format error, please try again
 parametersIds格式错误,请重试=parametersIds format error, please try again
 自定义属性不能为空=Custom attributes can not be empty
 属性分组不能为空,请重试!=Attribute grouping can not be empty, please try again!
+分组发布渠道不能为空,请重试!=Group release channel can not be empty, please try again!
 分组名称不能为空,请重试!=Group name can not be empty, please try again!
 groupIds格式错误,请重试=groupIds format error, please try again
 属性分组不能为空=Attribute can not be null packet

+ 3 - 0
xinkeaboard-server/b2b2c-entity/src/main/java/com/slodon/b2b2c/goods/dto/GoodsParameterGroupAddDTO.java

@@ -9,6 +9,9 @@ import java.io.Serializable;
 public class GoodsParameterGroupAddDTO implements Serializable {
     private static final long serialVersionUID = -5204389277400759015L;
 
+    @ApiModelProperty("分组发布渠道")
+    private String distributionChannel;
+
     @ApiModelProperty(value = "分组名称",required = true)
     private String groupName;
 

+ 3 - 0
xinkeaboard-server/b2b2c-entity/src/main/java/com/slodon/b2b2c/goods/dto/GoodsParameterGroupUpdateDTO.java

@@ -11,6 +11,9 @@ public class GoodsParameterGroupUpdateDTO implements Serializable {
     @ApiModelProperty(value = "分组id", required = true)
     private Integer groupId;
 
+    @ApiModelProperty("分组发布渠道")
+    private String distributionChannel;
+
     @ApiModelProperty("分组名称")
     private String groupName;
 

+ 1 - 1
xinkeaboard-server/b2b2c-entity/src/main/java/com/slodon/b2b2c/goods/dto/GoodsRelatedTemplateAddDTO.java

@@ -13,7 +13,7 @@ public class GoodsRelatedTemplateAddDTO implements Serializable {
     private String templateName;
 
     @ApiModelProperty("模版渠道")
-    private String distributionChannel ;
+    private String distributionChannel;
 
     @ApiModelProperty("模版位置(1-顶部,2-底部)")
     private Integer templatePosition;

+ 5 - 0
xinkeaboard-server/b2b2c-entity/src/main/java/com/slodon/b2b2c/goods/example/GoodsParameterGroupExample.java

@@ -26,6 +26,11 @@ public class GoodsParameterGroupExample implements Serializable {
     private Integer groupId;
 
     /**
+     * 分组发布渠道
+     */
+    private String distributionChannel;
+
+    /**
      * 分组名称
      */
     private String groupName;

+ 3 - 0
xinkeaboard-server/b2b2c-entity/src/main/java/com/slodon/b2b2c/goods/pojo/GoodsParameterGroup.java

@@ -16,6 +16,9 @@ public class GoodsParameterGroup implements Serializable {
     @ApiModelProperty("分组id")
     private Integer groupId;
 
+    @ApiModelProperty("分组发布渠道")
+    private String distributionChannel;
+
     @ApiModelProperty("分组名称")
     private String groupName;
 

+ 8 - 6
xinkeaboard-server/b2b2c-web/src/main/java/com/slodon/b2b2c/controller/goods/seller/GoodsParameterGroupController.java

@@ -26,10 +26,7 @@ import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.util.CollectionUtils;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
@@ -57,6 +54,7 @@ public class GoodsParameterGroupController extends BaseController {
         Vendor vendor = UserUtil.getUser(request, Vendor.class);
         //验证参数
         AssertUtil.notNull(goodsParameterGroupAddDTO, "属性分组不能为空,请重试!");
+        AssertUtil.notEmpty(goodsParameterGroupAddDTO.getDistributionChannel(), "分组发布渠道不能为空,请重试!");
         AssertUtil.notEmpty(goodsParameterGroupAddDTO.getGroupName(), "分组名称不能为空,请重试!");
         goodsParameterGroupModel.saveGoodsParameterGroup(goodsParameterGroupAddDTO, vendor);
         return SldResponse.success("添加成功", goodsParameterGroupAddDTO.getGroupName());
@@ -97,12 +95,13 @@ public class GoodsParameterGroupController extends BaseController {
 
     @ApiOperation("属性分组列表")
     @ApiImplicitParams({
+            @ApiImplicitParam(name = "distributionChannel", value = "分组发布渠道", paramType = "query"),
             @ApiImplicitParam(name = "groupName", value = "分组名称", paramType = "query"),
             @ApiImplicitParam(name = "pageSize", value = "分页大小", defaultValue = "20", paramType = "query"),
             @ApiImplicitParam(name = "current", value = "当前页面位置", defaultValue = "1", paramType = "query")
     })
     @GetMapping("list")
-    public JsonResult<PageVO<GoodsParameterGroupVO>> getList(HttpServletRequest request, String groupName) {
+    public JsonResult<PageVO<GoodsParameterGroupVO>> getList(HttpServletRequest request, String groupName,@RequestParam (value = "distributionChannel", required = false, defaultValue = "1") String distributionChannel) {
         Vendor vendor = UserUtil.getUser(request, Vendor.class);
 
         //分页设置
@@ -110,6 +109,7 @@ public class GoodsParameterGroupController extends BaseController {
         //根据条件查询集合
         GoodsParameterGroupExample example = new GoodsParameterGroupExample();
         example.setStoreId(vendor.getStoreId());
+        example.setDistributionChannel(distributionChannel);
         example.setGroupNameLike(groupName);
         List<GoodsParameterGroup> list = goodsParameterGroupModel.getGoodsParameterGroupList(example, pager);
         List<GoodsParameterGroupVO> vos = new ArrayList<>();
@@ -124,17 +124,19 @@ public class GoodsParameterGroupController extends BaseController {
 
     @ApiOperation("可用属性分组列表")
     @ApiImplicitParams({
+            @ApiImplicitParam(name = "distributionChannel", value = "分组发布渠道", paramType = "query"),
             @ApiImplicitParam(name = "pageSize", value = "分页大小", defaultValue = "20", paramType = "query"),
             @ApiImplicitParam(name = "current", value = "当前页面位置", defaultValue = "1", paramType = "query")
     })
     @GetMapping("canUseList")
-    public JsonResult<PageVO<GoodsParameterGroupVO>> canUseList(HttpServletRequest request) {
+    public JsonResult<PageVO<GoodsParameterGroupVO>> canUseList(HttpServletRequest request,@RequestParam (value = "distributionChannel", required = false, defaultValue = "1") String distributionChannel) {
         Vendor vendor = UserUtil.getUser(request, Vendor.class);
 
         //分页设置
         PagerInfo pager = WebUtil.handlerPagerInfo(request);
         //根据条件查询集合
         GoodsParameterGroupExample example = new GoodsParameterGroupExample();
+        example.setDistributionChannel(distributionChannel);
         example.setStoreId(vendor.getStoreId());
         example.setIsShow(GoodsConst.IS_ATTRIBUTE_YES);
         example.setOrderBy("sort asc, create_time desc");

+ 2 - 0
xinkeaboard-server/b2b2c-web/src/main/java/com/slodon/b2b2c/model/goods/GoodsParameterGroupModel.java

@@ -56,6 +56,7 @@ public class GoodsParameterGroupModel {
         //查重
         GoodsParameterGroupExample example = new GoodsParameterGroupExample();
         example.setStoreId(vendor.getStoreId());
+        example.setDistributionChannel(goodsParameterGroupAddDTO.getDistributionChannel());
         example.setGroupName(goodsParameterGroupAddDTO.getGroupName());
         List<GoodsParameterGroup> list = goodsParameterGroupReadMapper.listByExample(example);
         if (!CollectionUtils.isEmpty(list)) {
@@ -150,6 +151,7 @@ public class GoodsParameterGroupModel {
             example.setStoreId(storeId);
             example.setGroupName(goodsParameterGroupUpdateDTO.getGroupName());
             example.setGroupIdNotEquals(goodsParameterGroupUpdateDTO.getGroupId());
+            example.setDistributionChannel(goodsParameterGroupUpdateDTO.getDistributionChannel());
             List<GoodsParameterGroup> list = goodsParameterGroupReadMapper.listByExample(example);
             if (!CollectionUtils.isEmpty(list)) {
                 throw new MallException("属性分组名称重复,请重新填写");

+ 4 - 0
xinkeaboard-server/b2b2c-web/src/main/java/com/slodon/b2b2c/vo/goods/GoodsParameterGroupVO.java

@@ -10,6 +10,9 @@ public class GoodsParameterGroupVO {
     @ApiModelProperty("分组id")
     private Integer groupId;
 
+    @ApiModelProperty("分组发布渠道")
+    private String distributionChannel;
+
     @ApiModelProperty("分组名称")
     private String groupName;
 
@@ -21,6 +24,7 @@ public class GoodsParameterGroupVO {
 
     public GoodsParameterGroupVO(GoodsParameterGroup goodsParameterGroup) {
         this.groupId=goodsParameterGroup.getGroupId();
+        this.distributionChannel = goodsParameterGroup.getDistributionChannel();
         this.groupName = goodsParameterGroup.getGroupName();
         this.sort =goodsParameterGroup.getSort();
         this.isShow =goodsParameterGroup.getIsShow();

+ 4 - 0
xinkeaboard-server/b2b2c-web/src/main/resources/mapper/read/goods/GoodsParameterGroupReadMapper.xml

@@ -3,6 +3,7 @@
 <mapper namespace="com.slodon.b2b2c.dao.read.goods.GoodsParameterGroupReadMapper">
   <resultMap id="resultMap" type="com.slodon.b2b2c.goods.pojo.GoodsParameterGroup">
     <id column="group_id" property="groupId" />
+    <result column="distribution_channel" property="distributionChannel" />
     <result column="group_name" property="groupName" />
     <result column="store_id" property="storeId" />
     <result column="create_vendor_id" property="createVendorId" />
@@ -24,6 +25,9 @@
         <if test="example.groupIdIn != null">
           AND `group_id` in (${example.groupIdIn})
         </if>
+        <if test="example.distributionChannel != null">
+          AND `distribution_channel` = #{example.distributionChannel}
+        </if>
         <if test="example.groupName != null">
           AND `group_name` = #{example.groupName}
         </if>

+ 16 - 0
xinkeaboard-server/b2b2c-web/src/main/resources/mapper/write/goods/GoodsParameterGroupWriteMapper.xml

@@ -3,6 +3,7 @@
 <mapper namespace="com.slodon.b2b2c.dao.write.goods.GoodsParameterGroupWriteMapper">
   <resultMap id="resultMap" type="com.slodon.b2b2c.goods.pojo.GoodsParameterGroup">
     <id column="group_id" property="groupId" />
+    <result column="distribution_channel" property="distributionChannel" />
     <result column="group_name" property="groupName" />
     <result column="store_id" property="storeId" />
     <result column="create_vendor_id" property="createVendorId" />
@@ -13,6 +14,9 @@
   <!--除主键外的所有字段,用于插入操作-->
   <sql id="columns">
     <trim suffixOverrides=",">
+      <if test="distributionChannel != null">
+        `distribution_channel`,
+      </if>
       <if test="groupName != null">
         `group_name`,
       </if>
@@ -47,6 +51,9 @@
         <if test="example.groupIdIn != null">
           AND `group_id` in (${example.groupIdIn})
         </if>
+        <if test="example.distributionChannel != null">
+          AND `distribution_channel` = #{example.distributionChannel}
+        </if>
         <if test="example.groupName != null">
           AND `group_name` = #{example.groupName}
         </if>
@@ -196,6 +203,9 @@
     )
     VALUES(
     <trim suffixOverrides=",">
+      <if test="distributionChannel != null">
+        #{distributionChannel},
+      </if>
       <if test="groupName != null">
         #{groupName},
       </if>
@@ -221,6 +231,9 @@
   <update id="updateByExampleSelective">
     UPDATE `goods_parameter_group`
     <trim prefix="SET" suffixOverrides=",">
+      <if test="record.distributionChannel != null">
+        `distribution_channel` = #{record.distributionChannel},
+      </if>
       <if test="record.groupName != null">
         `group_name` = #{record.groupName},
       </if>
@@ -246,6 +259,9 @@
   <update id="updateByPrimaryKeySelective">
     UPDATE `goods_parameter_group`
     <trim prefix="SET" suffixOverrides=",">
+      <if test="distributionChannel != null">
+        `distribution_channel` = #{distributionChannel},
+      </if>
       <if test="groupName != null">
         `group_name` = #{groupName},
       </if>

+ 2 - 3
xinkeaboard-server/doc/DDL/update.sql

@@ -3,15 +3,14 @@ ADD COLUMN country VARCHAR(100) NULL COMMENT '国家',
 ADD COLUMN city VARCHAR(100) NULL COMMENT '城市',
 ADD COLUMN TINYINT NOT NULL DEFAULT 1 COMMENT '会员类型 1:海外门户 2:国内分销门户';
 
-
 ALTER TABLE goods
 ADD COLUMN distribution_channel TINYINT NOT NULL DEFAULT 1 COMMENT '发布渠道 1:国外站 2:国内站' AFTER goods_id;
 
 ALTER TABLE product
     ADD COLUMN distribution_channel TINYINT NOT NULL DEFAULT 1 COMMENT '发布渠道 1:国外站 2:国内站' AFTER product_id;
 
-
 ALTER TABLE enquiry ADD COLUMN channel TINYINT NOT NULL DEFAULT 1 COMMENT '询盘渠道 1:海外门户 2:国内分销门户';
 
+ALTER TABLE goods_related_template ADD COLUMN distribution_channel TINYINT NOT NULL DEFAULT 1 COMMENT '渠道 1:海外门户 2:国内分销门户';
 
-ALTER TABLE goods_related_template ADD COLUMN distribution_channel TINYINT NOT NULL DEFAULT 1 COMMENT '渠道 1:海外门户 2:国内分销门户';
+ALTER TABLE goods_parameter_group ADD COLUMN distribution_channel TINYINT NOT NULL DEFAULT 1 COMMENT '渠道 1:海外门户 2:国内分销门户';