提交修改

This commit is contained in:
quyixiao 2025-08-21 09:20:18 +08:00
parent cec6347e90
commit 2b6fbece7e
29 changed files with 1316 additions and 38 deletions

View File

@ -39,7 +39,7 @@ public interface VvCategoryDao extends BaseMapper<VvCategoryEntity> {
List<VvCategoryEntity> selectVvCategoryAll();
@OrderBy(VvCategoryEntity.level_)
@OrderBy(VvCategoryEntity.default_sort)
List<VvCategoryEntity> selectVvCategoryByParentId(Integer parentId);

View File

@ -9,8 +9,13 @@ package com.heyu.api.data.dao.vv;
*/
import com.heyu.api.data.entity.vv.VvProductEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lz.mybatis.plugin.annotations.IN;
import com.lz.mybatis.plugin.annotations.OrderBy;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface VvProductDao extends BaseMapper<VvProductEntity> {
@ -32,5 +37,10 @@ public interface VvProductDao extends BaseMapper<VvProductEntity> {
int deleteVvProductById(@Param("id")Long id);
@OrderBy(VvProductEntity.default_sort)
List<VvProductEntity> selectVvProductByFrontPage(Integer frontPage);
List<VvProductEntity> selectVvProductByIds(@IN List<Long> id);
}

View File

@ -7,10 +7,14 @@ package com.heyu.api.data.dao.vv;
* @author quyixiao
* @since 2025-08-20
*/
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.heyu.api.data.entity.vv.VvPropertyEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface VvPropertyDao extends BaseMapper<VvPropertyEntity> {
@ -33,4 +37,6 @@ public interface VvPropertyDao extends BaseMapper<VvPropertyEntity> {
int deleteVvPropertyById(@Param("id")Long id);
List<VvPropertyEntity> selectVvProperByCondition(IPage page, String propertyName, String categoryName, Long categoryId);
}

View File

@ -0,0 +1,36 @@
package com.heyu.api.data.dao.vv;
/**
* <p>
* 属性值表 服务类
* </p>
*
* @author quyixiao
* @since 2025-08-20
*/
import com.heyu.api.data.entity.vv.VvPropertyValueEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface VvPropertyValueDao extends BaseMapper<VvPropertyValueEntity> {
VvPropertyValueEntity selectVvPropertyValueById(@Param("id")Long id);
Long insertVvPropertyValue(VvPropertyValueEntity vvPropertyValue);
Long insertOrUpdateVvPropertyValue(VvPropertyValueEntity vvPropertyValue);
int updateVvPropertyValueById(VvPropertyValueEntity vvPropertyValue);
int updateCoverVvPropertyValueById(VvPropertyValueEntity vvPropertyValue);
int deleteVvPropertyValueById(@Param("id")Long id);
}

View File

@ -0,0 +1,36 @@
package com.heyu.api.data.dao.vv;
/**
* <p>
* sku 的属性值表 服务类
* </p>
*
* @author quyixiao
* @since 2025-08-21
*/
import com.heyu.api.data.entity.vv.VvSkuPropertyValueEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface VvSkuPropertyValueDao extends BaseMapper<VvSkuPropertyValueEntity> {
VvSkuPropertyValueEntity selectVvSkuPropertyValueById(@Param("id")Long id);
Long insertVvSkuPropertyValue(VvSkuPropertyValueEntity vvSkuPropertyValue);
Long insertOrUpdateVvSkuPropertyValue(VvSkuPropertyValueEntity vvSkuPropertyValue);
int updateVvSkuPropertyValueById(VvSkuPropertyValueEntity vvSkuPropertyValue);
int updateCoverVvSkuPropertyValueById(VvSkuPropertyValueEntity vvSkuPropertyValue);
int deleteVvSkuPropertyValueById(@Param("id")Long id);
}

View File

@ -21,14 +21,15 @@ private static final long serialVersionUID = 1L;
public final static String CLASS_NAME ="com.heyu.api.data.entity.vv.VvCategoryEntity:";
public final static String all = CLASS_NAME + "*";
public final static String id_ = CLASS_NAME + "id"; //
public final static String is_delete = CLASS_NAME + "is_delete"; // 是否删除0 1 删除
public final static String create_time = CLASS_NAME + "create_time"; // 创建时间
public final static String modify_time = CLASS_NAME + "modify_time"; // 修改时间
public final static String parent_id = CLASS_NAME + "parent_id"; // 父亲类目id
public final static String image_url = CLASS_NAME + "image_url"; // 图片url
public final static String name_ = CLASS_NAME + "name"; // 名称
public final static String level_ = CLASS_NAME + "level"; // 层级
public final static String id_ = CLASS_NAME + "id"; //
public final static String is_delete = CLASS_NAME + "is_delete"; // 是否删除0 1 删除
public final static String create_time = CLASS_NAME + "create_time"; // 创建时间
public final static String modify_time = CLASS_NAME + "modify_time"; // 修改时间
public final static String parent_id = CLASS_NAME + "parent_id"; // 父亲类目id
public final static String image_url = CLASS_NAME + "image_url"; // 图片url
public final static String name_ = CLASS_NAME + "name"; // 名称
public final static String level_ = CLASS_NAME + "level"; // 层级
public final static String default_sort = CLASS_NAME + "default_sort"; // 排序
//
@TableId(value = "id", type = IdType.AUTO)
private Long id;
@ -46,6 +47,8 @@ private static final long serialVersionUID = 1L;
private String name;
//层级
private Integer level;
//排序
private Integer defaultSort;
/**
*
* @return
@ -166,6 +169,21 @@ private static final long serialVersionUID = 1L;
this.level = level;
}
/**
* 排序
* @return
*/
public Integer getDefaultSort() {
return defaultSort;
}
/**
* 排序
* @param defaultSort
*/
public void setDefaultSort(Integer defaultSort) {
this.defaultSort = defaultSort;
}
@Override
public String toString() {
return "VvCategoryEntity{" +
@ -177,6 +195,7 @@ private static final long serialVersionUID = 1L;
",imageUrl=" + imageUrl +
",name=" + name +
",level=" + level +
",defaultSort=" + defaultSort +
"}";
}
}

View File

@ -36,6 +36,7 @@ private static final long serialVersionUID = 1L;
public final static String category_id_one = CLASS_NAME + "category_id_one"; // 一级类目id
public final static String category_id_two = CLASS_NAME + "category_id_two"; // 二级类目
public final static String category_id_three = CLASS_NAME + "category_id_three"; // 三级类目
public final static String front_page = CLASS_NAME + "front_page"; // 是否是首页
//
@TableId(value = "id", type = IdType.AUTO)
private Long id;
@ -67,6 +68,8 @@ private static final long serialVersionUID = 1L;
private Integer categoryIdTwo;
//三级类目
private Integer categoryIdThree;
//是否是首页
private Integer frontPage;
/**
*
* @return
@ -292,6 +295,21 @@ private static final long serialVersionUID = 1L;
this.categoryIdThree = categoryIdThree;
}
/**
* 是否是首页
* @return
*/
public Integer getFrontPage() {
return frontPage;
}
/**
* 是否是首页
* @param frontPage
*/
public void setFrontPage(Integer frontPage) {
this.frontPage = frontPage;
}
@Override
public String toString() {
return "VvProductEntity{" +
@ -310,6 +328,7 @@ private static final long serialVersionUID = 1L;
",categoryIdOne=" + categoryIdOne +
",categoryIdTwo=" + categoryIdTwo +
",categoryIdThree=" + categoryIdThree +
",frontPage=" + frontPage +
"}";
}
}

View File

@ -10,7 +10,7 @@ import java.util.Date;import java.util.Date;
/**
*属性表
* @author quyixiao
* @since 2025-08-20
* @since 2025-08-21
*/
@Data
@ -21,12 +21,14 @@ private static final long serialVersionUID = 1L;
public final static String CLASS_NAME ="com.heyu.api.data.entity.vv.VvPropertyEntity:";
public final static String all = CLASS_NAME + "*";
public final static String id_ = CLASS_NAME + "id"; //
public final static String is_delete = CLASS_NAME + "is_delete"; // 是否删除0 1 删除
public final static String create_time = CLASS_NAME + "create_time"; // 创建时间
public final static String modify_time = CLASS_NAME + "modify_time"; // 修改时间
public final static String property_name = CLASS_NAME + "property_name"; // 属性名
public final static String property_value = CLASS_NAME + "property_value"; // 属性值
public final static String id_ = CLASS_NAME + "id"; //
public final static String is_delete = CLASS_NAME + "is_delete"; // 是否删除0 1 删除
public final static String create_time = CLASS_NAME + "create_time"; // 创建时间
public final static String modify_time = CLASS_NAME + "modify_time"; // 修改时间
public final static String property_name = CLASS_NAME + "property_name"; // 属性名
public final static String default_sort = CLASS_NAME + "default_sort"; // 默认排序
public final static String category_id = CLASS_NAME + "category_id"; // 类目id
public final static String category_name = CLASS_NAME + "category_name"; // 类目id
//
@TableId(value = "id", type = IdType.AUTO)
private Long id;
@ -38,8 +40,12 @@ private static final long serialVersionUID = 1L;
private Date modifyTime;
//属性名
private String propertyName;
//属性值
private String propertyValue;
//默认排序
private Integer defaultSort;
//类目id
private Long categoryId;
//类目id
private Integer categoryName;
/**
*
* @return
@ -116,18 +122,48 @@ private static final long serialVersionUID = 1L;
}
/**
* 属性值
* 默认排序
* @return
*/
public String getPropertyValue() {
return propertyValue;
public Integer getDefaultSort() {
return defaultSort;
}
/**
* 属性值
* @param propertyValue
* 默认排序
* @param defaultSort
*/
public void setPropertyValue(String propertyValue) {
this.propertyValue = propertyValue;
public void setDefaultSort(Integer defaultSort) {
this.defaultSort = defaultSort;
}
/**
* 类目id
* @return
*/
public Long getCategoryId() {
return categoryId;
}
/**
* 类目id
* @param categoryId
*/
public void setCategoryId(Long categoryId) {
this.categoryId = categoryId;
}
/**
* 类目id
* @return
*/
public Integer getCategoryName() {
return categoryName;
}
/**
* 类目id
* @param categoryName
*/
public void setCategoryName(Integer categoryName) {
this.categoryName = categoryName;
}
@Override
@ -138,7 +174,9 @@ private static final long serialVersionUID = 1L;
",createTime=" + createTime +
",modifyTime=" + modifyTime +
",propertyName=" + propertyName +
",propertyValue=" + propertyValue +
",defaultSort=" + defaultSort +
",categoryId=" + categoryId +
",categoryName=" + categoryName +
"}";
}
}

View File

@ -0,0 +1,163 @@
package com.heyu.api.data.entity.vv;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.lz.mybatis.plugin.annotations.AS;
import java.math.BigDecimal;
import java.util.Date;import java.util.Date;
/**
*属性值表
* @author quyixiao
* @since 2025-08-21
*/
@Data
@TableName("vv_property_value")
public class VvPropertyValueEntity implements java.io.Serializable {
private static final long serialVersionUID = 1L;
public final static String CLASS_NAME ="com.heyu.api.data.entity.vv.VvPropertyValueEntity:";
public final static String all = CLASS_NAME + "*";
public final static String id_ = CLASS_NAME + "id"; //
public final static String is_delete = CLASS_NAME + "is_delete"; // 是否删除0 1 删除
public final static String create_time = CLASS_NAME + "create_time"; // 创建时间
public final static String modify_time = CLASS_NAME + "modify_time"; // 修改时间
public final static String value_ = CLASS_NAME + "value"; // 具体的属性
public final static String default_sort = CLASS_NAME + "default_sort"; // 排序
public final static String property_id = CLASS_NAME + "property_id"; // 属性id
//
@TableId(value = "id", type = IdType.AUTO)
private Long id;
//是否删除0 1 删除
private Integer isDelete;
//创建时间
private Date createTime;
//修改时间
private Date modifyTime;
//具体的属性
private String value;
//排序
private Integer defaultSort;
//属性id
private Long propertyId;
/**
*
* @return
*/
public Long getId() {
return id;
}
/**
*
* @param id
*/
public void setId(Long id) {
this.id = id;
}
/**
* 是否删除0 1 删除
* @return
*/
public Integer getIsDelete() {
return isDelete;
}
/**
* 是否删除0 1 删除
* @param isDelete
*/
public void setIsDelete(Integer isDelete) {
this.isDelete = isDelete;
}
/**
* 创建时间
* @return
*/
public Date getCreateTime() {
return createTime;
}
/**
* 创建时间
* @param createTime
*/
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
/**
* 修改时间
* @return
*/
public Date getModifyTime() {
return modifyTime;
}
/**
* 修改时间
* @param modifyTime
*/
public void setModifyTime(Date modifyTime) {
this.modifyTime = modifyTime;
}
/**
* 具体的属性
* @return
*/
public String getValue() {
return value;
}
/**
* 具体的属性
* @param value
*/
public void setValue(String value) {
this.value = value;
}
/**
* 排序
* @return
*/
public Integer getDefaultSort() {
return defaultSort;
}
/**
* 排序
* @param defaultSort
*/
public void setDefaultSort(Integer defaultSort) {
this.defaultSort = defaultSort;
}
/**
* 属性id
* @return
*/
public Long getPropertyId() {
return propertyId;
}
/**
* 属性id
* @param propertyId
*/
public void setPropertyId(Long propertyId) {
this.propertyId = propertyId;
}
@Override
public String toString() {
return "VvPropertyValueEntity{" +
",id=" + id +
",isDelete=" + isDelete +
",createTime=" + createTime +
",modifyTime=" + modifyTime +
",value=" + value +
",defaultSort=" + defaultSort +
",propertyId=" + propertyId +
"}";
}
}

View File

@ -28,6 +28,7 @@ private static final long serialVersionUID = 1L;
public final static String image_url = CLASS_NAME + "image_url"; // 图片url
public final static String sale_price = CLASS_NAME + "sale_price"; // 销售价
public final static String origin_price = CLASS_NAME + "origin_price"; // 原价
public final static String default_sort = CLASS_NAME + "default_sort"; // 排序
//
@TableId(value = "id", type = IdType.AUTO)
private Long id;
@ -43,6 +44,8 @@ private static final long serialVersionUID = 1L;
private BigDecimal salePrice;
//原价
private BigDecimal originPrice;
//排序
private Integer defaultSort;
/**
*
* @return
@ -148,6 +151,21 @@ private static final long serialVersionUID = 1L;
this.originPrice = originPrice;
}
/**
* 排序
* @return
*/
public Integer getDefaultSort() {
return defaultSort;
}
/**
* 排序
* @param defaultSort
*/
public void setDefaultSort(Integer defaultSort) {
this.defaultSort = defaultSort;
}
@Override
public String toString() {
return "VvSkuEntity{" +
@ -158,6 +176,7 @@ private static final long serialVersionUID = 1L;
",imageUrl=" + imageUrl +
",salePrice=" + salePrice +
",originPrice=" + originPrice +
",defaultSort=" + defaultSort +
"}";
}
}

View File

@ -0,0 +1,239 @@
package com.heyu.api.data.entity.vv;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.lz.mybatis.plugin.annotations.AS;
import java.math.BigDecimal;
import java.util.Date;import java.util.Date;
/**
*sku 的属性值表
* @author quyixiao
* @since 2025-08-21
*/
@Data
@TableName("vv_sku_property_value")
public class VvSkuPropertyValueEntity implements java.io.Serializable {
private static final long serialVersionUID = 1L;
public final static String CLASS_NAME ="com.heyu.api.data.entity.vv.VvSkuPropertyValueEntity:";
public final static String all = CLASS_NAME + "*";
public final static String id_ = CLASS_NAME + "id"; //
public final static String is_delete = CLASS_NAME + "is_delete"; // 是否删除0 1 删除
public final static String create_time = CLASS_NAME + "create_time"; // 创建时间
public final static String modify_time = CLASS_NAME + "modify_time"; // 修改时间
public final static String property_id = CLASS_NAME + "property_id"; // 属性id
public final static String sku_id = CLASS_NAME + "sku_id"; // skuid
public final static String category_id = CLASS_NAME + "category_id"; // 类目id
public final static String property_name = CLASS_NAME + "property_name"; // 属性名称
public final static String category_name = CLASS_NAME + "category_name"; // 类目名称
public final static String property_value = CLASS_NAME + "property_value"; // sku 属性值表
public final static String defalut_sort = CLASS_NAME + "defalut_sort"; // 默认排序
//
@TableId(value = "id", type = IdType.AUTO)
private Long id;
//是否删除0 1 删除
private Integer isDelete;
//创建时间
private Date createTime;
//修改时间
private Date modifyTime;
//属性id
private Long propertyId;
//skuid
private Long skuId;
//类目id
private Long categoryId;
//属性名称
private String propertyName;
//类目名称
private String categoryName;
//sku 属性值表
private String propertyValue;
//默认排序
private Integer defalutSort;
/**
*
* @return
*/
public Long getId() {
return id;
}
/**
*
* @param id
*/
public void setId(Long id) {
this.id = id;
}
/**
* 是否删除0 1 删除
* @return
*/
public Integer getIsDelete() {
return isDelete;
}
/**
* 是否删除0 1 删除
* @param isDelete
*/
public void setIsDelete(Integer isDelete) {
this.isDelete = isDelete;
}
/**
* 创建时间
* @return
*/
public Date getCreateTime() {
return createTime;
}
/**
* 创建时间
* @param createTime
*/
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
/**
* 修改时间
* @return
*/
public Date getModifyTime() {
return modifyTime;
}
/**
* 修改时间
* @param modifyTime
*/
public void setModifyTime(Date modifyTime) {
this.modifyTime = modifyTime;
}
/**
* 属性id
* @return
*/
public Long getPropertyId() {
return propertyId;
}
/**
* 属性id
* @param propertyId
*/
public void setPropertyId(Long propertyId) {
this.propertyId = propertyId;
}
/**
* skuid
* @return
*/
public Long getSkuId() {
return skuId;
}
/**
* skuid
* @param skuId
*/
public void setSkuId(Long skuId) {
this.skuId = skuId;
}
/**
* 类目id
* @return
*/
public Long getCategoryId() {
return categoryId;
}
/**
* 类目id
* @param categoryId
*/
public void setCategoryId(Long categoryId) {
this.categoryId = categoryId;
}
/**
* 属性名称
* @return
*/
public String getPropertyName() {
return propertyName;
}
/**
* 属性名称
* @param propertyName
*/
public void setPropertyName(String propertyName) {
this.propertyName = propertyName;
}
/**
* 类目名称
* @return
*/
public String getCategoryName() {
return categoryName;
}
/**
* 类目名称
* @param categoryName
*/
public void setCategoryName(String categoryName) {
this.categoryName = categoryName;
}
/**
* sku 属性值表
* @return
*/
public String getPropertyValue() {
return propertyValue;
}
/**
* sku 属性值表
* @param propertyValue
*/
public void setPropertyValue(String propertyValue) {
this.propertyValue = propertyValue;
}
/**
* 默认排序
* @return
*/
public Integer getDefalutSort() {
return defalutSort;
}
/**
* 默认排序
* @param defalutSort
*/
public void setDefalutSort(Integer defalutSort) {
this.defalutSort = defalutSort;
}
@Override
public String toString() {
return "VvSkuPropertyValueEntity{" +
",id=" + id +
",isDelete=" + isDelete +
",createTime=" + createTime +
",modifyTime=" + modifyTime +
",propertyId=" + propertyId +
",skuId=" + skuId +
",categoryId=" + categoryId +
",propertyName=" + propertyName +
",categoryName=" + categoryName +
",propertyValue=" + propertyValue +
",defalutSort=" + defalutSort +
"}";
}
}

View File

@ -0,0 +1,68 @@
package com.heyu.api.data.service.impl.vv;
/**
* <p>
* 属性值表 服务类
* </p>
*
* @author quyixiao
* @since 2025-08-20
*/
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.heyu.api.data.dao.vv.VvPropertyValueDao;
import com.heyu.api.data.entity.vv.VvPropertyValueEntity;
import com.heyu.api.data.service.vv.VvPropertyValueService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class VvPropertyValueServiceImpl extends ServiceImpl<VvPropertyValueDao, VvPropertyValueEntity> implements VvPropertyValueService {
@Autowired
private VvPropertyValueDao vvPropertyValueDao;
@Override
public VvPropertyValueEntity selectVvPropertyValueById(Long id){
return vvPropertyValueDao.selectVvPropertyValueById(id);
}
@Override
public Long insertVvPropertyValue(VvPropertyValueEntity vvPropertyValue){
return vvPropertyValueDao.insertVvPropertyValue(vvPropertyValue);
}
@Override
public Long insertOrUpdateVvPropertyValue(VvPropertyValueEntity vvPropertyValue){
return vvPropertyValueDao.insertOrUpdateVvPropertyValue(vvPropertyValue);
}
@Override
public int updateVvPropertyValueById(VvPropertyValueEntity vvPropertyValue){
return vvPropertyValueDao.updateVvPropertyValueById(vvPropertyValue);
}
@Override
public int updateCoverVvPropertyValueById(VvPropertyValueEntity vvPropertyValue){
return vvPropertyValueDao.updateCoverVvPropertyValueById(vvPropertyValue);
}
@Override
public int deleteVvPropertyValueById(Long id){
return vvPropertyValueDao.deleteVvPropertyValueById(id);
}
}

View File

@ -0,0 +1,68 @@
package com.heyu.api.data.service.impl.vv;
/**
* <p>
* sku 的属性值表 服务类
* </p>
*
* @author quyixiao
* @since 2025-08-21
*/
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.heyu.api.data.dao.vv.VvSkuPropertyValueDao;
import com.heyu.api.data.entity.vv.VvSkuPropertyValueEntity;
import com.heyu.api.data.service.vv.VvSkuPropertyValueService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class VvSkuPropertyValueServiceImpl extends ServiceImpl<VvSkuPropertyValueDao, VvSkuPropertyValueEntity> implements VvSkuPropertyValueService {
@Autowired
private VvSkuPropertyValueDao vvSkuPropertyValueDao;
@Override
public VvSkuPropertyValueEntity selectVvSkuPropertyValueById(Long id){
return vvSkuPropertyValueDao.selectVvSkuPropertyValueById(id);
}
@Override
public Long insertVvSkuPropertyValue(VvSkuPropertyValueEntity vvSkuPropertyValue){
return vvSkuPropertyValueDao.insertVvSkuPropertyValue(vvSkuPropertyValue);
}
@Override
public Long insertOrUpdateVvSkuPropertyValue(VvSkuPropertyValueEntity vvSkuPropertyValue){
return vvSkuPropertyValueDao.insertOrUpdateVvSkuPropertyValue(vvSkuPropertyValue);
}
@Override
public int updateVvSkuPropertyValueById(VvSkuPropertyValueEntity vvSkuPropertyValue){
return vvSkuPropertyValueDao.updateVvSkuPropertyValueById(vvSkuPropertyValue);
}
@Override
public int updateCoverVvSkuPropertyValueById(VvSkuPropertyValueEntity vvSkuPropertyValue){
return vvSkuPropertyValueDao.updateCoverVvSkuPropertyValueById(vvSkuPropertyValue);
}
@Override
public int deleteVvSkuPropertyValueById(Long id){
return vvSkuPropertyValueDao.deleteVvSkuPropertyValueById(id);
}
}

View File

@ -0,0 +1,34 @@
package com.heyu.api.data.service.vv;
/**
* <p>
* 属性值表 服务类
* </p>
*
* @author quyixiao
* @since 2025-08-20
*/
import com.baomidou.mybatisplus.extension.service.IService;
import com.heyu.api.data.entity.vv.VvPropertyValueEntity;
public interface VvPropertyValueService extends IService<VvPropertyValueEntity> {
VvPropertyValueEntity selectVvPropertyValueById(Long id);
Long insertVvPropertyValue(VvPropertyValueEntity vvPropertyValue);
Long insertOrUpdateVvPropertyValue(VvPropertyValueEntity vvPropertyValue);
int updateVvPropertyValueById(VvPropertyValueEntity vvPropertyValue);
int updateCoverVvPropertyValueById(VvPropertyValueEntity vvPropertyValue);
int deleteVvPropertyValueById(Long id);
}

View File

@ -0,0 +1,34 @@
package com.heyu.api.data.service.vv;
/**
* <p>
* sku 的属性值表 服务类
* </p>
*
* @author quyixiao
* @since 2025-08-21
*/
import com.baomidou.mybatisplus.extension.service.IService;
import com.heyu.api.data.entity.vv.VvSkuPropertyValueEntity;
public interface VvSkuPropertyValueService extends IService<VvSkuPropertyValueEntity> {
VvSkuPropertyValueEntity selectVvSkuPropertyValueById(Long id);
Long insertVvSkuPropertyValue(VvSkuPropertyValueEntity vvSkuPropertyValue);
Long insertOrUpdateVvSkuPropertyValue(VvSkuPropertyValueEntity vvSkuPropertyValue);
int updateVvSkuPropertyValueById(VvSkuPropertyValueEntity vvSkuPropertyValue);
int updateCoverVvSkuPropertyValueById(VvSkuPropertyValueEntity vvSkuPropertyValue);
int deleteVvSkuPropertyValueById(Long id);
}

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.heyu.api.data.dao.vv.VvPropertyValueDao">
</mapper>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.heyu.api.data.dao.vv.VvSkuPropertyValueDao">
</mapper>

View File

@ -94,13 +94,8 @@ public class MysqlMain_insert {
List<TablesBean> list = new ArrayList<TablesBean>();
list.add(new TablesBean("vv_sku"));
list.add(new TablesBean("vv_product"));
list.add(new TablesBean("vv_category"));
list.add(new TablesBean("vv_property"));
list.add(new TablesBean("vv_sku_property"));
list.add(new TablesBean("vv_product_detail"));
list.add(new TablesBean("vv_category_property"));
list.add(new TablesBean("vv_sku_property_value"));
List<TablesBean> list2 = new ArrayList<TablesBean>();
Map<String, String> map = MysqlUtil2ShowCreateTable.getComments();

View File

@ -33,7 +33,7 @@ public class MysqlMain_update {
MysqlMain_insert.save_path = dir + "src/test/tmp";
System.out.println(MysqlMain_insert.save_path);
String packageName = "api";
String packageName = "vv";
MysqlMain_insert.initApi(packageName);
@ -47,7 +47,17 @@ public class MysqlMain_update {
System.out.println(fileName);
}
List<TablesBean> list = new ArrayList<TablesBean>();
list.add(new TablesBean("api_recharge_money"));
String a = "vv_property,vv_property_value";
for (String s : a.split(",")) {
list.add(new TablesBean(s));
}
Map<String, String> map = MysqlUtil2ShowCreateTable.getComments();

View File

@ -0,0 +1,12 @@
package com.heyu.api.alibaba.request.mm;
import lombok.Data;
@Data
public class FrontManagerIndexSortRequest {
private Long productId;
private Integer defaultSort;
}

View File

@ -0,0 +1,12 @@
package com.heyu.api.alibaba.request.mm;
import lombok.Data;
@Data
public class FrontManagerRequest {
}

View File

@ -0,0 +1,14 @@
package com.heyu.api.alibaba.request.mm;
import lombok.Data;
import java.util.List;
@Data
public class FrontManagerSortRequest {
private List<Long> productIds;
}

View File

@ -0,0 +1,18 @@
package com.heyu.api.alibaba.request.mm;
import lombok.Data;
@Data
public class VvCategoryIndexSortRequest {
private Long categoryId;
private int defaultSort;
}

View File

@ -0,0 +1,32 @@
package com.heyu.api.alibaba.request.mm;
import lombok.Data;
@Data
public class VvPropertyRequest {
private Integer pageNum;
private Integer pageSize;
/***
* 属性名称
*/
private String propertyName;
/***
* 类目名称
*/
private String categoryName;
/***
* 类目id
*/
private Long categoryId;
}

View File

@ -0,0 +1,47 @@
/*
* The MIT License (MIT)
*
* Copyright (c) 2014-2017 abel533@gmail.com
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
package com.heyu.api.utils;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
/**
* 分页查询接口
*
* @author liuzh_3nofxnp
* @since 2015-12-18 18:51
*/
@FunctionalInterface
public interface ISelect {
/**
* 在接口中调用自己的查询方法不要在该方法内写过多代码只要一行查询方法最好
*/
List doSelect(IPage page);
}

View File

@ -0,0 +1,136 @@
/**
* Copyright (c) 2020 fumeiai All rights reserved.
* <p>
* <p>
* <p>
* 版权所有侵权必究
*/
package com.heyu.api.utils;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.io.Serializable;
import java.util.List;
/**
* 分页工具类
*
* @author Mark sunlightcs@gmail.com
*/
public class PPageUtils<E> implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 总记录数
*/
private int total;
/**
* 每页记录数
*/
private int pageSize;
/**
* 总页数
*/
private int totalPage;
/**
* 当前页数
*/
private int pageNum;
/**
* 列表数据
*/
private List<?> rows;
/**
* 分页
*
* @param rows 列表数据
* @param total 总记录数
* @param pageSize 每页记录数
* @param pageNum 当前页数
*/
public PPageUtils(List<?> rows, int total, int pageSize, int pageNum) {
this.rows = rows;
this.total = total;
this.pageSize = pageSize;
this.pageNum = pageNum;
this.totalPage = (int) Math.ceil((double) total / pageSize);
}
public PPageUtils() {
}
public <E> PPageUtils<E> doSelect(ISelect select) {
IPage page = new Page(this.pageNum, this.pageSize);
rows = select.doSelect(page);
page.setRecords(rows);
return new PPageUtils<E>(page);
}
/**
* 开始分页
*
* @param pageNum 页码
* @param pageSize 每页显示数量
*/
public static <E> PPageUtils<E> startPage(int pageNum, int pageSize) {
IPage<E> page = new Page<E>(pageNum, pageSize);
return new PPageUtils<E>(page);
}
/**
* 分页
*/
public PPageUtils(IPage<?> page) {
this.rows = page.getRecords();
this.total = (int) page.getTotal();
this.pageSize = (int) page.getSize();
this.pageNum = (int) page.getCurrent();
this.totalPage = (int) page.getPages();
}
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getPageNum() {
return pageNum;
}
public void setPageNum(int pageNum) {
this.pageNum = pageNum;
}
public List<?> getRows() {
return rows;
}
public void setRows(List<?> rows) {
this.rows = rows;
}
}

View File

@ -1,6 +1,7 @@
package com.heyu.api.controller.mm;
import com.heyu.api.alibaba.request.mm.VvCategoryIndexSortRequest;
import com.heyu.api.alibaba.request.mm.VvCategoryRequest;
import com.heyu.api.alibaba.request.mm.VvCategorySortRequest;
import com.heyu.api.data.dao.vv.VvCategoryDao;
@ -42,6 +43,9 @@ public class CategoryController {
return R.ok().setData(vvCategoryDTOS);
}
/***
* 插入或更新
* @param vvCategoryEntity
@ -56,18 +60,32 @@ public class CategoryController {
/***
* 排序
*/
@RequestMapping("/sortLevel")
public R sortLevel(VvCategorySortRequest vvCategorySortRequest) {
@RequestMapping("/sort")
public R sort(VvCategorySortRequest vvCategorySortRequest) {
List<VvCategoryEntity> list = vvCategoryDao.selectVvCategoryByIds(vvCategorySortRequest.getCategoryIds());
List<Long> categoryIds = vvCategorySortRequest.getCategoryIds();
for (VvCategoryEntity vvCategoryEntity : list) {
int index = categoryIds.indexOf(vvCategoryEntity.getId()) + 1 ;
int index = categoryIds.indexOf(vvCategoryEntity.getId()) + 1;
vvCategoryEntity.setLevel(index);
vvCategoryDao.updateVvCategoryById(vvCategoryEntity);
}
return R.ok().setData("保存成功");
}
/***
* 排序
*/
@RequestMapping("/update/sort/index")
public R updateSortIndex(VvCategoryIndexSortRequest vvCategorySortRequest) {
VvCategoryEntity vvCategory = vvCategoryDao.selectVvCategoryById(vvCategorySortRequest.getCategoryId());
vvCategory.setDefaultSort(vvCategorySortRequest.getDefaultSort());
vvCategoryDao.updateVvCategoryById(vvCategory);
return R.ok().setData("保存成功");
}
public boolean hasChild(VvCategoryEntity vvCategoryEntity, List<VvCategoryEntity> vvCategoryEntities) {
for (VvCategoryEntity categoryEntity : vvCategoryEntities) {
if (vvCategoryEntity.getId().equals(categoryEntity.getParentId())) {

View File

@ -0,0 +1,62 @@
package com.heyu.api.controller.mm;
import com.heyu.api.alibaba.request.mm.FrontManagerIndexSortRequest;
import com.heyu.api.alibaba.request.mm.FrontManagerRequest;
import com.heyu.api.alibaba.request.mm.FrontManagerSortRequest;
import com.heyu.api.data.dao.vv.VvProductDao;
import com.heyu.api.data.entity.vv.VvProductEntity;
import com.heyu.api.data.utils.R;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Slf4j
@RestController
@RequestMapping("/mm/front/manager")
public class FrontManagerController {
@Autowired
private VvProductDao vvProductDao;
/***
* 列表
*/
@RequestMapping("/list")
public R list(FrontManagerRequest vvCategoryRequest) {
List<VvProductEntity> vvProductEntityList = vvProductDao.selectVvProductByFrontPage(1);
return R.ok().setData(vvProductEntityList);
}
/***
* 排序
*/
@RequestMapping("/sort")
public R sort(FrontManagerSortRequest sortRequest) {
List<VvProductEntity> list = vvProductDao.selectVvProductByIds(sortRequest.getProductIds());
List<Long> categoryIds = sortRequest.getProductIds();
for (VvProductEntity vvProduct : list) {
int index = categoryIds.indexOf(vvProduct.getId()) + 1;
vvProduct.setDefaultSort(index);
vvProductDao.updateVvProductById(vvProduct);
}
return R.ok().setData("保存成功");
}
/***
* 排序
*/
@RequestMapping("/update/sort/index")
public R updateSortIndex(FrontManagerIndexSortRequest frontManagerIndexSortRequest) {
VvProductEntity vvProduct = vvProductDao.selectVvProductById(frontManagerIndexSortRequest.getProductId());
vvProduct.setDefaultSort(frontManagerIndexSortRequest.getDefaultSort());
vvProductDao.updateVvProductById(vvProduct);
return R.ok().setData("保存成功");
}
}

View File

@ -0,0 +1,121 @@
package com.heyu.api.controller.mm;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.heyu.api.alibaba.request.mm.VvCategoryIndexSortRequest;
import com.heyu.api.alibaba.request.mm.VvCategoryRequest;
import com.heyu.api.alibaba.request.mm.VvCategorySortRequest;
import com.heyu.api.alibaba.request.mm.VvPropertyRequest;
import com.heyu.api.data.dao.vv.VvPropertyDao;
import com.heyu.api.data.dao.vv.VvPropertyValueDao;
import com.heyu.api.data.entity.vv.VvCategoryEntity;
import com.heyu.api.data.utils.R;
import com.heyu.api.utils.ISelect;
import com.heyu.api.utils.PPageUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Slf4j
@RestController
@RequestMapping("/mm/property")
public class PropertyController {
@Autowired
private VvPropertyDao vvPropertyDao;
@Autowired
private VvPropertyValueDao vvPropertyValueDao;
/***
* 列表
*/
@RequestMapping("/list")
public R list(VvPropertyRequest vvPropertyRequest) {
PPageUtils pageUtils = PPageUtils.startPage(vvPropertyRequest.getPageNum(), vvPropertyRequest.getPageSize())
.doSelect(new ISelect() {
@Override
public List doSelect(IPage page) {
return vvPropertyDao.selectVvProperByCondition(page,
vvPropertyRequest.getPropertyName(),
vvPropertyRequest.getCategoryName(),
vvPropertyRequest.getCategoryId()
);
}
});
return R.ok().setData(pageUtils);
}
/***
* 属性列表
*/
@RequestMapping("/category/list")
public R list(VvCategoryRequest vvCategoryRequest) {
return R.ok().setData("");
}
/***
* 插入或更新
* @param vvCategoryEntity
* @return
*/
@RequestMapping("/insertOrUpdate")
public R insert(VvCategoryEntity vvCategoryEntity) {
return R.ok().setData("保存成功");
}
/***
* 排序
*/
@RequestMapping("/sort")
public R sort(VvCategorySortRequest vvCategorySortRequest) {
return R.ok().setData("保存成功");
}
/***
* 排序
*/
@RequestMapping("/update/sort/index")
public R updateSortIndex(VvCategoryIndexSortRequest vvCategorySortRequest) {
return R.ok().setData("保存成功");
}
}