product
Yunfei Du 2024-03-03 14:36:00 +08:00
parent 1c064d826b
commit 17eee84e43
71 changed files with 811 additions and 339 deletions

View File

@ -14,10 +14,10 @@ spring:
nacos:
discovery:
# 服务注册地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
config:
# 配置中心地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
# 配置文件格式
file-extension: yml
# 共享配置

View File

@ -14,10 +14,10 @@ spring:
nacos:
discovery:
# 服务注册地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
config:
# 配置中心地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
# 配置文件格式
file-extension: yml
# 共享配置

View File

@ -14,10 +14,10 @@ spring:
nacos:
discovery:
# 服务注册地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
config:
# 配置中心地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
# 配置文件格式
file-extension: yml
# 共享配置

View File

@ -14,10 +14,10 @@ spring:
nacos:
discovery:
# 服务注册地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
config:
# 配置中心地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
# 配置文件格式
file-extension: yml
# 共享配置

View File

@ -14,10 +14,10 @@ spring:
nacos:
discovery:
# 服务注册地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
config:
# 配置中心地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
# 配置文件格式
file-extension: yml
# 共享配置

View File

@ -3,14 +3,15 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* as_attribute_group
@ -52,4 +53,10 @@ public class AsAttributeGroup extends BaseEntity {
.attributeId(attributeId)
.build();
}
public static AsAttributeGroup buildGroup (Long attributeGroupId) {
return AsAttributeGroup.builder()
.groupId(attributeGroupId)
.build();
}
}

View File

@ -3,14 +3,15 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* as_brand_project

View File

@ -3,14 +3,15 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* as_category_attribute
@ -45,4 +46,10 @@ public class AsCategoryAttribute extends BaseEntity {
private Long attributeId;
public static AsCategoryAttribute categoryBuild(Long categoryInfoId,Long attributeId){
return AsCategoryAttribute.builder()
.categoryId(categoryInfoId)
.attributeId(attributeId)
.build();
}
}

View File

@ -3,14 +3,15 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* as_category_attribute_group
@ -45,4 +46,10 @@ public class AsCategoryAttributeGroup extends BaseEntity {
private Long attributeGroupId;
public static AsCategoryAttributeGroup categoryAttributeGroup(Long categoryId,Long attributeGroupId){
return AsCategoryAttributeGroup.builder()
.categoryId(categoryId)
.attributeGroupId(attributeGroupId)
.build();
}
}

View File

@ -3,14 +3,15 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* as_category_brand
@ -44,4 +45,10 @@ public class AsCategoryBrand extends BaseEntity {
@ApiModelProperty(name = "品牌id", value = "品牌id", required = true)
private Long brandId;
public static AsCategoryBrand categoryBrand(Long categoryId,Long brandId){
return AsCategoryBrand.builder()
.categoryId(categoryId)
.brandId(brandId)
.build();
}
}

View File

@ -1,18 +1,17 @@
package com.muyu.product.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* as_product_attribute_info

View File

@ -1,21 +1,20 @@
package com.muyu.product.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import com.muyu.product.domain.req.AttributeGroupEditReq;
import com.muyu.product.domain.req.AttributeGroupQueryReq;
import com.muyu.product.domain.req.AttributeGroupSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.AttributeGroupQueryReq;
import com.muyu.product.domain.req.AttributeGroupSaveReq;
import com.muyu.product.domain.req.AttributeGroupEditReq;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* attribute_group

View File

@ -1,21 +1,20 @@
package com.muyu.product.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import com.muyu.product.domain.req.AttributeInfoEditReq;
import com.muyu.product.domain.req.AttributeInfoQueryReq;
import com.muyu.product.domain.req.AttributeInfoSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.AttributeInfoQueryReq;
import com.muyu.product.domain.req.AttributeInfoSaveReq;
import com.muyu.product.domain.req.AttributeInfoEditReq;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* attribute_info

View File

@ -3,17 +3,18 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import com.muyu.product.domain.req.BrandInfoEditReq;
import com.muyu.product.domain.req.BrandInfoQueryReq;
import com.muyu.product.domain.req.BrandInfoSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.BrandInfoQueryReq;
import com.muyu.product.domain.req.BrandInfoSaveReq;
import com.muyu.product.domain.req.BrandInfoEditReq;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* brand_info

View File

@ -3,17 +3,22 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.TreeEntity;
import com.muyu.product.domain.model.CategoryInfoSaveModel;
import com.muyu.product.domain.req.CategoryInfoEditReq;
import com.muyu.product.domain.req.CategoryInfoQueryReq;
import com.muyu.product.domain.req.CategoryInfoSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.CategoryInfoQueryReq;
import com.muyu.product.domain.req.CategoryInfoSaveReq;
import com.muyu.product.domain.req.CategoryInfoEditReq;
import com.muyu.common.core.web.domain.TreeEntity;
import java.util.Date;
import java.util.function.Supplier;
/**
* category_info
@ -72,12 +77,27 @@ public class CategoryInfo extends TreeEntity {
/**
*
*/
public static CategoryInfo saveBuild(CategoryInfoSaveReq categoryInfoSaveReq){
public static CategoryInfo saveBuild(CategoryInfoSaveReq categoryInfoSaveReq, Supplier<String> supplier){
return CategoryInfo.builder()
.name(categoryInfoSaveReq.getName())
.image(categoryInfoSaveReq.getImage())
.start(categoryInfoSaveReq.getStart())
.introduction(categoryInfoSaveReq.getIntroduction())
.parentId(categoryInfoSaveReq.getParentId())
.createBy(supplier.get())
.createTime(new Date())
.build();
}
public static CategoryInfo saveModelBuild(CategoryInfoSaveModel categoryInfoSaveModel){
return CategoryInfo.builder()
.name(categoryInfoSaveModel.getName())
.image(categoryInfoSaveModel.getImage())
.start(categoryInfoSaveModel.getStart())
.introduction(categoryInfoSaveModel.getIntroduction())
.parentId(categoryInfoSaveModel.getParentId())
.createBy(categoryInfoSaveModel.getCreateBy())
.createTime(new Date())
.build();
}
@ -91,6 +111,7 @@ public class CategoryInfo extends TreeEntity {
.image(categoryInfoEditReq.getImage())
.start(categoryInfoEditReq.getStart())
.introduction(categoryInfoEditReq.getIntroduction())
.parentId(categoryInfoEditReq.getParentId())
.build();
}

View File

@ -3,17 +3,18 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import com.muyu.product.domain.req.CommentInfoEditReq;
import com.muyu.product.domain.req.CommentInfoQueryReq;
import com.muyu.product.domain.req.CommentInfoSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.CommentInfoQueryReq;
import com.muyu.product.domain.req.CommentInfoSaveReq;
import com.muyu.product.domain.req.CommentInfoEditReq;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* comment_info

View File

@ -3,17 +3,18 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import com.muyu.product.domain.req.CommentLikeInfoEditReq;
import com.muyu.product.domain.req.CommentLikeInfoQueryReq;
import com.muyu.product.domain.req.CommentLikeInfoSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.CommentLikeInfoQueryReq;
import com.muyu.product.domain.req.CommentLikeInfoSaveReq;
import com.muyu.product.domain.req.CommentLikeInfoEditReq;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* comment_like_info

View File

@ -3,17 +3,18 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import com.muyu.product.domain.req.ProjectInfoEditReq;
import com.muyu.product.domain.req.ProjectInfoQueryReq;
import com.muyu.product.domain.req.ProjectInfoSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.ProjectInfoQueryReq;
import com.muyu.product.domain.req.ProjectInfoSaveReq;
import com.muyu.product.domain.req.ProjectInfoEditReq;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* project_info

View File

@ -1,20 +1,22 @@
package com.muyu.product.domain;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import com.muyu.product.domain.req.ProjectSkuInfoEditReq;
import com.muyu.product.domain.req.ProjectSkuInfoQueryReq;
import com.muyu.product.domain.req.ProjectSkuInfoSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.ProjectSkuInfoQueryReq;
import com.muyu.product.domain.req.ProjectSkuInfoSaveReq;
import com.muyu.product.domain.req.ProjectSkuInfoEditReq;
import com.muyu.common.core.web.domain.BaseEntity;
import java.math.BigDecimal;
/**
* SKU project_sku_info

View File

@ -3,17 +3,18 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import com.muyu.product.domain.req.RuleAttrInfoEditReq;
import com.muyu.product.domain.req.RuleAttrInfoQueryReq;
import com.muyu.product.domain.req.RuleAttrInfoSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.RuleAttrInfoQueryReq;
import com.muyu.product.domain.req.RuleAttrInfoSaveReq;
import com.muyu.product.domain.req.RuleAttrInfoEditReq;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* rule_attr_info

View File

@ -3,17 +3,18 @@ package com.muyu.product.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import com.muyu.product.domain.req.RuleInfoEditReq;
import com.muyu.product.domain.req.RuleInfoQueryReq;
import com.muyu.product.domain.req.RuleInfoSaveReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.annotation.Excel;
import com.muyu.product.domain.req.RuleInfoQueryReq;
import com.muyu.product.domain.req.RuleInfoSaveReq;
import com.muyu.product.domain.req.RuleInfoEditReq;
import com.muyu.common.core.web.domain.BaseEntity;
/**
* rule_info

View File

@ -0,0 +1,13 @@
package com.muyu.product.domain.base;
/**
* @ClassName CategoryBase
* @Description
* @Author YunFei.Du
* @Date 2024/3/3 14:18
*/
public interface CategoryBase {
public Long getBaseId();
}

View File

@ -0,0 +1,63 @@
package com.muyu.product.domain.model;
import com.muyu.common.core.web.domain.TreeEntity;
import com.muyu.product.domain.req.CategoryInfoSaveReq;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.util.Date;
import java.util.List;
import java.util.function.Supplier;
/**
* @ClassName CategoryInfoSaveModel
* @Description
* @Author Xin.Yao
* @Date 2024/3/3 8:52
*/
@Data
@SuperBuilder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class CategoryInfoSaveModel extends TreeEntity {
private String name;
private String image;
private String start;
private String introduction;
/**
* ID
*/
private List<Long> attributeGroupIdList;
/**
* ID
*/
private List<Long> attributeIdList;
/**
* ID
*/
private List<Long> brandIdList;
/**
*
*/
public static CategoryInfoSaveModel saveBuild(CategoryInfoSaveReq categoryInfoSaveReq, Supplier<String> supplier){
return CategoryInfoSaveModel.builder()
.name(categoryInfoSaveReq.getName())
.image(categoryInfoSaveReq.getImage())
.start(categoryInfoSaveReq.getStart())
.introduction(categoryInfoSaveReq.getIntroduction())
.parentId(categoryInfoSaveReq.getParentId())
.attributeGroupIdList(categoryInfoSaveReq.getAttributeGroupIdList())
.attributeIdList(categoryInfoSaveReq.getAttributeIdList())
.brandIdList(categoryInfoSaveReq.getBrandIdList())
.createBy(supplier.get())
.createTime(new Date())
.build();
}
}

View File

@ -1,14 +1,14 @@
package com.muyu.product.domain.req;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.util.List;
/**
* attribute_group
@ -33,5 +33,8 @@ public class AttributeGroupEditReq extends BaseEntity {
@ApiModelProperty(name = "状态", value = "状态", required = true)
private String states;
private List<Long> attributeIdList;
}

View File

@ -1,14 +1,12 @@
package com.muyu.product.domain.req;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* attribute_group

View File

@ -1,16 +1,14 @@
package com.muyu.product.domain.req;
import java.util.Date;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.util.List;
/**
* attribute_group

View File

@ -1,14 +1,12 @@
package com.muyu.product.domain.req;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* attribute_info

View File

@ -1,14 +1,12 @@
package com.muyu.product.domain.req;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* attribute_info

View File

@ -1,14 +1,12 @@
package com.muyu.product.domain.req;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* attribute_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* brand_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* brand_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* brand_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.TreeEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* category_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.TreeEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* category_info

View File

@ -1,12 +1,14 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.TreeEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.util.List;
/**
* category_info
@ -48,4 +50,8 @@ public class CategoryInfoSaveReq extends TreeEntity {
@ApiModelProperty(name = "介绍", value = "介绍")
private String introduction;
private List<Long> attributeGroupIdList;
private List<Long> attributeIdList;
private List<Long> brandIdList;
}

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* comment_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* comment_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* comment_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* comment_like_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* comment_like_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* comment_like_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* project_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* project_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* project_info

View File

@ -1,13 +1,14 @@
package com.muyu.product.domain.req;
import java.math.BigDecimal;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* SKU project_sku_info

View File

@ -1,13 +1,14 @@
package com.muyu.product.domain.req;
import java.math.BigDecimal;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* SKU project_sku_info

View File

@ -1,13 +1,14 @@
package com.muyu.product.domain.req;
import java.math.BigDecimal;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* SKU project_sku_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* rule_attr_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* rule_attr_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* rule_attr_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* rule_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* rule_info

View File

@ -1,12 +1,12 @@
package com.muyu.product.domain.req;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.muyu.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* rule_info

View File

@ -0,0 +1,37 @@
package com.muyu.product.domain.resp;
import com.muyu.product.domain.AttributeGroup;
import com.muyu.product.domain.AttributeInfo;
import com.muyu.product.domain.BrandInfo;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @ClassName CategoryParentCommonElementResp
* @Description
* @Author Xin.Yao
* @Date 2024/3/3 8:15
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class CategoryParentCommonElementResp {
/**
*
*/
private List<AttributeInfo> attributeInfoList;
/**
*
*/
private List<AttributeGroup> attributeGroupList;
/**
*
*/
private List<BrandInfo> brandInfoList;
}

View File

@ -49,8 +49,7 @@ public class AttributeGroupController extends BaseController {
@GetMapping("/list")
public Result<TableDataInfo<AttributeGroupPageResp>> list(AttributeGroupQueryReq attributeGroupQueryReq) {
startPage();
TableDataInfo<AttributeGroupPageResp> tableDataInfo =
attributeGroupService.page(AttributeGroup.queryBuild(attributeGroupQueryReq));
TableDataInfo<AttributeGroupPageResp> tableDataInfo = attributeGroupService.page(AttributeGroup.queryBuild(attributeGroupQueryReq));
return Result.success(tableDataInfo);
}
@ -70,6 +69,7 @@ public class AttributeGroupController extends BaseController {
/**
*
*/
@ApiOperation("获取属性组详细信息")
@RequiresPermissions("product:attributeGroup:query")
@GetMapping(value = "/{id}")
@ -99,6 +99,10 @@ public class AttributeGroupController extends BaseController {
@PutMapping("/{id}")
@ApiOperation("修改属性组")
public Result<String> edit(@PathVariable Long id, @RequestBody AttributeGroupEditReq attributeGroupEditReq) {
/**
*
*/
attributeGroupService.updateAsAttributeGrop(attributeGroupEditReq,id);
return toAjax(attributeGroupService.updateById(AttributeGroup.editBuild(id,attributeGroupEditReq)));
}
@ -111,6 +115,10 @@ public class AttributeGroupController extends BaseController {
@ApiOperation("删除属性组")
@ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4")
public Result<String> remove(@PathVariable List<Long> ids) {
/**
*
*/
attributeGroupService.deleteAsAttributeGroupByIds(ids);
return toAjax(attributeGroupService.removeBatchByIds(ids));
}
}

View File

@ -3,6 +3,7 @@ package com.muyu.product.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.muyu.product.service.AsAttributeGroupService;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@ -51,6 +52,7 @@ public class AttributeInfoController extends BaseController {
return getDataTable(list);
}
/**
*
*/

View File

@ -3,6 +3,9 @@ package com.muyu.product.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.muyu.common.security.utils.SecurityUtils;
import com.muyu.product.domain.model.CategoryInfoSaveModel;
import com.muyu.product.domain.resp.CategoryParentCommonElementResp;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@ -81,7 +84,7 @@ public class CategoryInfoController extends BaseController {
@PostMapping
@ApiOperation("新增品类信息")
public Result<String> add(@RequestBody CategoryInfoSaveReq categoryInfoSaveReq) {
return toAjax(categoryInfoService.save(CategoryInfo.saveBuild(categoryInfoSaveReq)));
return toAjax(categoryInfoService.save( CategoryInfoSaveModel.saveBuild(categoryInfoSaveReq, SecurityUtils::getUsername ))); //获取用户名称
}
/**
@ -106,4 +109,18 @@ public class CategoryInfoController extends BaseController {
public Result<String> remove(@PathVariable List<Long> ids) {
return toAjax(categoryInfoService.removeBatchByIds(ids));
}
/**
* ID,,
* @param categoryId
* @return ,,
*/
@GetMapping("parentCommonElement/{categoryId}")
@ApiOperation("通过品类ID获取父级以上的属性,属性组,品牌集合")
@ApiImplicitParam(name = "categoryId", value = "categoryId", required = true, dataType = "Long", paramType = "Long", dataTypeClass = Long.class, example = "1")
public Result< CategoryParentCommonElementResp > parentCommonElement(@PathVariable(value = "categoryId") Long categoryId){
return Result.success ( categoryInfoService.parentCommonElement(categoryId) );
}
}

View File

@ -3,6 +3,7 @@ package com.muyu.product.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.muyu.product.domain.AsAttributeGroup;
import org.apache.ibatis.annotations.Param;
/**
* Mapper
@ -12,4 +13,7 @@ import com.muyu.product.domain.AsAttributeGroup;
*/
public interface AsAttributeGroupMapper extends BaseMapper<AsAttributeGroup> {
void deleteAsAttributeGroup(@Param ("attributeIds") List<Long> attributeIds);
void deleteAsAttributeGroupByIds(@Param("ids") List< Long> ids);
}

View File

@ -19,4 +19,6 @@ public interface AsAttributeGroupService extends IService<AsAttributeGroup> {
*/
public List<AsAttributeGroup> list(AsAttributeGroup asAttributeGroup);
void deleteAsAttributeGroupByIds(List< Long> ids);
}

View File

@ -7,6 +7,7 @@ import com.muyu.product.domain.AttributeGroup;
import com.baomidou.mybatisplus.extension.service.IService;
import com.muyu.product.domain.AttributeInfo;
import com.muyu.product.domain.model.AttributeGroupSaveModel;
import com.muyu.product.domain.req.AttributeGroupEditReq;
import com.muyu.product.domain.resp.AttributeGroupPageResp;
/**
@ -39,4 +40,13 @@ public interface AttributeGroupService extends IService<AttributeGroup> {
*/
public Boolean save(AttributeGroupSaveModel attributeGroupSaveModel);
/**
*
* @param attributeGroupEditReq
* @param id
*/
void updateAsAttributeGrop(AttributeGroupEditReq attributeGroupEditReq, Long id);
void deleteAsAttributeGroupByIds(List< Long> ids);
}

View File

@ -1,8 +1,14 @@
package com.muyu.product.service;
import java.util.List;
import com.muyu.product.domain.AttributeGroup;
import com.muyu.product.domain.AttributeInfo;
import com.muyu.product.domain.BrandInfo;
import com.muyu.product.domain.CategoryInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.muyu.product.domain.model.CategoryInfoSaveModel;
import com.muyu.product.domain.resp.CategoryParentCommonElementResp;
/**
* Service
@ -18,5 +24,40 @@ public interface CategoryInfoService extends IService<CategoryInfo> {
* @return
*/
public List<CategoryInfo> list(CategoryInfo categoryInfo);
/**
* *
* * @param categoryInfoSaveModel
* * @return
* */
public boolean save(CategoryInfoSaveModel categoryInfoSaveModel);
/**
* ID
* @param categoryId ID
* @return
*/
List< AttributeGroup > getAttributeGroup (Long categoryId);
/**
* ID
* @param categoryId ID
* @return
*/
List< BrandInfo > getBrand (Long categoryId);
/**
* ID
* @param categoryId ID
* @return
*/
List< AttributeInfo > getAttribute (Long categoryId);
/**
* ID,,
* @param categoryId
* @return ,,
*/
CategoryParentCommonElementResp parentCommonElement(Long categoryId);
}

View File

@ -4,6 +4,7 @@ import java.util.List;
import com.muyu.common.core.utils.ObjUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.muyu.product.mapper.AsAttributeGroupMapper;
import com.muyu.product.domain.AsAttributeGroup;
@ -27,6 +28,8 @@ public class AsAttributeGroupServiceImpl extends ServiceImpl<AsAttributeGroupMap
* @param asAttributeGroup
* @return
*/
@Autowired
private AsAttributeGroupMapper asAttributeGroupMapper;
@Override
public List<AsAttributeGroup> list(AsAttributeGroup asAttributeGroup) {
LambdaQueryWrapper<AsAttributeGroup> queryWrapper = new LambdaQueryWrapper<>();
@ -41,9 +44,13 @@ public class AsAttributeGroupServiceImpl extends ServiceImpl<AsAttributeGroupMap
}
return list(queryWrapper);
}
@Override
public void deleteAsAttributeGroupByIds(List< Long > ids) {
asAttributeGroupMapper.deleteAsAttributeGroupByIds ( ids );
}
}

View File

@ -9,6 +9,7 @@ import com.muyu.product.domain.AsAttributeGroup;
import com.muyu.product.domain.AttributeGroup;
import com.muyu.product.domain.AttributeInfo;
import com.muyu.product.domain.model.AttributeGroupSaveModel;
import com.muyu.product.domain.req.AttributeGroupEditReq;
import com.muyu.product.domain.resp.AttributeGroupPageResp;
import com.muyu.product.mapper.AttributeGroupMapper;
import com.muyu.product.service.AsAttributeGroupService;
@ -19,6 +20,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Function;
import java.util.stream.Stream;
@ -33,12 +35,11 @@ import java.util.stream.Stream;
@Service
public class AttributeGroupServiceImpl extends ServiceImpl<AttributeGroupMapper, AttributeGroup> implements AttributeGroupService {
@Autowired
private AsAttributeGroupService attributeGroupService;
@Autowired
private AttributeInfoService attributeInfoService;
@Autowired
private AsAttributeGroupService asAttributeGroupService;
/**
*
*
@ -62,6 +63,7 @@ public class AttributeGroupServiceImpl extends ServiceImpl<AttributeGroupMapper,
.build();
}
/**
*
*
@ -100,11 +102,53 @@ public class AttributeGroupServiceImpl extends ServiceImpl<AttributeGroupMapper,
Long attributeGroupId = attributeGroup.getId();
List<Long> attributeIdList = attributeGroupSaveModel.getAttributeIdList();
attributeGroupService.saveBatch(
asAttributeGroupService.saveBatch(
attributeIdList.stream()
.map(attributeId -> AsAttributeGroup.buildGroup(attributeGroupId, attributeId))
.toList()
);
return save;
}
/**
*
* @param attributeGroupEditReq
* @param groupId
*/
@Override
public void updateAsAttributeGrop(AttributeGroupEditReq attributeGroupEditReq, Long groupId) {
// 根据传入的 groupId 构建 AsAttributeGroup 对象
AsAttributeGroup asAttributeGroup = AsAttributeGroup.buildGroup(groupId);
// 查询符合条件的 AsAttributeGroup 列表
List<AsAttributeGroup> list = asAttributeGroupService.list(asAttributeGroup);
// 创建一个空列表用于存储 AsAttributeGroup 的 id
ArrayList<Long> asAttributeGroupIds = new ArrayList<> ();
// 遍历查询到的 AsAttributeGroup 列表,将 id 添加到列表中
for (AsAttributeGroup attributeGroup : list) {
asAttributeGroupIds.add(attributeGroup.getId());
}
// 批量删除查询到的 AsAttributeGroup 对象
asAttributeGroupService.removeBatchByIds(asAttributeGroupIds);
// 获取 attributeGroupEditReq 中的 attributeIdList
List<Long> attributeIdList = attributeGroupEditReq.getAttributeIdList();
// 构建新的 AsAttributeGroup 对象,并批量保存
asAttributeGroupService.saveBatch(
// 将 attributeIdList 转换为一个流,这样可以对列表中的元素进行流式操作。
attributeIdList.stream()
// 使用 map 操作,将流中的每个 attributeId 转换为相应的 AsAttributeGroup 对象
.map(attributeId -> AsAttributeGroup.buildGroup(groupId, attributeId))
// toList() 将流中的元素收集到一个新的列表中
.toList()
// 最后,将收集到的新列表作为参数传递给 asAttributeGroupService.saveBatch() 方法,这个方法的作用是批量保存这些 AsAttributeGroup 对象。
);
}
@Override
public void deleteAsAttributeGroupByIds(List< Long > ids) {
asAttributeGroupService.deleteAsAttributeGroupByIds(ids);
}
}

View File

@ -1,5 +1,6 @@
package com.muyu.product.service.impl;
import java.util.ArrayList;
import java.util.List;
import com.muyu.common.core.exception.ServiceException;
@ -39,6 +40,7 @@ public class AttributeInfoServiceImpl extends ServiceImpl<AttributeInfoMapper, A
LambdaQueryWrapper<AttributeInfo> queryWrapper = new LambdaQueryWrapper<>();
if (ObjUtils.notNull(attributeInfo.getName())){
queryWrapper.like(AttributeInfo::getName, attributeInfo.getName());
}
@ -64,6 +66,10 @@ public class AttributeInfoServiceImpl extends ServiceImpl<AttributeInfoMapper, A
}
LambdaQueryWrapper<AsAttributeGroup> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(AsAttributeGroup::getGroupId, groupId);
List<Long> longs = asAttributeGroupService.list(queryWrapper).stream()
.map(AsAttributeGroup::getAttributeId)
.toList();
List<Long> longs1 = new ArrayList<> ();
return this.listByIds(
asAttributeGroupService.list(queryWrapper).stream()
.map(AsAttributeGroup::getAttributeId)

View File

@ -1,15 +1,24 @@
package com.muyu.product.service.impl;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Stream;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.muyu.common.core.utils.ObjUtils;
import com.muyu.product.domain.*;
import com.muyu.product.domain.base.CategoryBase;
import com.muyu.product.domain.model.CategoryInfoSaveModel;
import com.muyu.product.domain.resp.CategoryParentCommonElementResp;
import com.muyu.product.service.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.muyu.product.mapper.CategoryInfoMapper;
import com.muyu.product.domain.CategoryInfo;
import com.muyu.product.service.CategoryInfoService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.springframework.transaction.annotation.Transactional;
/**
* Service
@ -21,6 +30,19 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@Service
public class CategoryInfoServiceImpl extends ServiceImpl<CategoryInfoMapper, CategoryInfo> implements CategoryInfoService {
@Autowired
private AsCategoryAttributeGroupService asCategoryAttributeGroupService;
@Autowired
private AsCategoryAttributeService asCategoryAttributeService;
@Autowired
private AsCategoryBrandService asCategoryBrandService;
@Autowired
private AttributeGroupService attributeGroupService;
@Autowired
private BrandInfoService brandInfoService;
@Autowired
private AttributeInfoService attributeInfoService;
/**
*
*
@ -51,11 +73,133 @@ public class CategoryInfoServiceImpl extends ServiceImpl<CategoryInfoMapper, Cat
if (ObjUtils.notNull(categoryInfo.getIntroduction())){
queryWrapper.eq(CategoryInfo::getIntroduction, categoryInfo.getIntroduction());
}
return list(queryWrapper);
}
/**
* ID,,
* @param categoryId ID
* @return ,,
*/
@Override
public CategoryParentCommonElementResp parentCommonElement(Long categoryId) {
return CategoryParentCommonElementResp.builder ( )
.attributeInfoList(getCommon(categoryId, asCategoryAttributeService, attributeInfoService))
.attributeGroupList(getCommon(categoryId, asCategoryAttributeGroupService, attributeGroupService))
.brandInfoList(getCommon(categoryId, asCategoryBrandService, brandInfoService))
.build ();
}
@Override
public boolean save(CategoryInfoSaveModel categoryInfoSaveModel) {
CategoryInfo categoryInfo = CategoryInfo.saveModelBuild(categoryInfoSaveModel);
boolean save = this.save(categoryInfo);
Long categoryInfoId = categoryInfo.getId();
List<Long> attributeIdList = categoryInfoSaveModel.getAttributeIdList();
if (attributeIdList != null && !attributeIdList.isEmpty()){
asCategoryAttributeService.saveBatch(
attributeIdList.stream()
.map(attributeId -> AsCategoryAttribute.categoryBuild(categoryInfoId, attributeId))
.toList()
);
}
List<Long> attributeGroupIdList = categoryInfoSaveModel.getAttributeGroupIdList();
if (attributeGroupIdList != null && !attributeGroupIdList.isEmpty()){
asCategoryAttributeGroupService.saveBatch(
attributeGroupIdList.stream()
.map(attributeGroupId -> AsCategoryAttributeGroup.categoryAttributeGroup(categoryInfoId, attributeGroupId))
.toList()
);
}
List<Long> brandIdList = categoryInfoSaveModel.getBrandIdList();
if (brandIdList != null && !brandIdList.isEmpty()){
asCategoryBrandService.saveBatch(
brandIdList.stream()
.map(brandId -> AsCategoryBrand.categoryBrand (categoryInfoId, brandId))
.toList()
);
}
return save;
}
/**
*
* @param categoryId
* @return
*/
public <T,AS> List<T> getCommon(Long categoryId, IService<AS> iService, IService<T> bsiService){
List<T> list = new ArrayList();
QueryWrapper<AS> asQueryWrapper = new QueryWrapper<> ();
asQueryWrapper.eq("category_id", categoryId);
List<AS> asList = iService.list(asQueryWrapper);
if (asList != null && !asList.isEmpty()){
List<Long> baseIdList = asList.stream()
.map(as -> {
if (as instanceof CategoryBase categoryBase){
return categoryBase.getBaseId();
}
return null;
})
.toList();
list.addAll(bsiService.listByIds(baseIdList));
}
CategoryInfo categoryInfo = this.getById(categoryId);
if (categoryInfo.getParentId() != 0){
if (list.isEmpty()){
list.addAll(getCommon(categoryInfo.getParentId(), iService, bsiService));
}else {
List<T> commonList = getCommon(categoryInfo.getParentId(), iService, bsiService);
commonList.forEach(common -> {
if (!list.contains(common)){
list.add(common);
}
});
}
}
return list;
}
@Override
public List< AttributeGroup> getAttributeGroup(Long categoryId) {
ArrayList< AttributeGroup > attributeGroupList = new ArrayList<> ( );
LambdaQueryWrapper< AsCategoryAttributeGroup > queryWrapper = new LambdaQueryWrapper<> ( );
queryWrapper.eq ( AsCategoryAttributeGroup::getAttributeGroupId,categoryId );
List< AsCategoryAttributeGroup > asCategoryAttributeGroupList = asCategoryAttributeGroupService.list ( queryWrapper );
if(asCategoryAttributeGroupList!=null && !asCategoryAttributeGroupList.isEmpty ()){
List< Long > attributeGroupIdList = asCategoryAttributeGroupList.stream ( )
.map ( AsCategoryAttributeGroup::getAttributeGroupId )
.toList ( );
attributeGroupList.addAll(attributeGroupService.listByIds(attributeGroupIdList));
}
CategoryInfo categoryInfo = this.getById ( categoryId );
if (categoryInfo.getParentId ()!=null){
attributeGroupList.addAll ( getAttributeGroup ( categoryInfo.getParentId () ) );
}else {
List< AttributeGroup > attributeGroups = getAttributeGroup ( categoryInfo.getParentId ( ) );
attributeGroups.forEach ( attributeGroup -> {
if (!attributeGroupList.add ( attributeGroup )){
attributeGroupList.add ( attributeGroup );
}
} );
}
return attributeGroupList;
}
@Override
public List< BrandInfo > getBrand(Long categoryId) {
return null;
}
@Override
public List< AttributeInfo > getAttribute(Long categoryId) {
return null;
}
}

View File

@ -14,10 +14,10 @@ spring:
nacos:
discovery:
# 服务注册地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
config:
# 配置中心地址
server-addr: 43.142.44.217
server-addr: 111.229.102.61
# 配置文件格式
file-extension: yml
# 共享配置

View File

@ -15,7 +15,24 @@
<result property="updateTime" column="update_time" />
</resultMap>
<delete id="deleteAsAttributeGroup">
delete from as_attribute_group where attribute_id in (
<foreach collection="attributeIds" item="attributeId" separator=",">
#{attributeId}
</foreach>
)
</delete>
<delete id="deleteAsAttributeGroupByIds">
delete from as_attribute_group where group_id in (
<foreach collection="ids" item="id" separator=",">
#{id}
</foreach>
)
</delete>
<sql id="selectAsAttributeGroupVo">
select id, group_id, attribute_id, remark, create_by, create_time, update_by, update_time from as_attribute_group
</sql>
</mapper>

View File

@ -10,12 +10,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="states" column="states" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updataBy" column="updata_by" />
<result property="updataTime" column="updata_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
</resultMap>
<sql id="selectAttributeGroupVo">
select id, name, states, create_by, create_time, updata_by, updata_time, remark from attribute_group
select id, name, states, create_by, create_time, update_by, update_time, remark from attribute_group
</sql>
</mapper>

View File

@ -6,16 +6,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<resultMap type="com.muyu.product.domain.AttributeInfo" id="AttributeInfoResult">
<result property="id" column="id" />
<result property="code" column="code" />
<result property="name" column="name" />
<result property="groupId" column="group_id" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updataBy" column="updata_by" />
<result property="updataTime" column="updata_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
</resultMap>
<sql id="selectAttributeInfoVo">
select id, name, group_id, create_by, create_time, updata_by, updata_time, remark from attribute_info
select id, code, name, create_by, create_time, update_by, update_time, remark from attribute_info
</sql>
</mapper>

View File

@ -14,10 +14,10 @@ spring:
nacos:
discovery:
# 服务注册地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
config:
# 配置中心地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
# 配置文件格式
file-extension: yml
# 共享配置

View File

@ -14,10 +14,10 @@ spring:
nacos:
discovery:
# 服务注册地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
config:
# 配置中心地址
server-addr: 43.142.44.217:8848
server-addr: 111.229.102.61:8848
# 配置文件格式
file-extension: yml
# 共享配置