记得上下班打卡 | git大法好,push需谨慎

Commit 8cb1eaa9 authored by 张国柄's avatar 张国柄

~商品添加;

parent f9c4c2ad
......@@ -167,9 +167,9 @@ public class GoblinStoreMgtGoodsAddParam implements Serializable {
/**
* 生成SKU列表以及SPU规格等信息
*
* @param goodsInfoVo
* @param vos
* @param goodsSpecVos
* @param goodsInfoVo GoblinGoodsInfoVo
* @param vos List<GoblinGoodsSkuInfoVo>
* @param goodsSpecVos List<GoblinGoodsSpecVo>
*/
public void initGoodsSkuInfoVo(GoblinGoodsInfoVo goodsInfoVo, List<GoblinGoodsSkuInfoVo> vos,
List<GoblinGoodsSpecVo> goodsSpecVos) {
......@@ -224,6 +224,9 @@ public class GoblinStoreMgtGoodsAddParam implements Serializable {
vos.add(vo);
skuIdList.add(vo.getSkuId());
priceGe = priceGe.compareTo(vo.getPrice()) > 0 ? vo.getPrice() : priceGe;
priceLe = priceLe.compareTo(vo.getPrice()) < 0 ? vo.getPrice() : priceLe;
int specSize = skuSpecList.size();// SKU包含的规格数量
for (int j = 0; j < specSize; j++) {
GoblinGoodsSpecDto specDto = skuSpecList.get(j);
......
......@@ -6,27 +6,27 @@ import lombok.Data;
import java.io.Serializable;
@ApiModel(value = "GoblinSelfExtagVo", description = "音乐人、艺人、IP信息")
@ApiModel(value = "GoblinGoodsExtagVo", description = "商品关联音乐人、艺人、IP信息")
@Data
public class GoblinSelfExtagVo implements Serializable, Cloneable {
public class GoblinGoodsExtagVo implements Serializable, Cloneable {
private static final long serialVersionUID = 367926424789690081L;
@ApiModelProperty(position = 10, value = "标签ID")
private String tagId;
@ApiModelProperty(position = 11, value = "标签名称")
private String tagName;
@ApiModelProperty(position = 12, value = "排序[数值越小,排序越前]")
private Integer sort;
@ApiModelProperty(position = 13, value = "标签说明")
@ApiModelProperty(position = 12, value = "标签说明")
private String tagDesc;
@ApiModelProperty(position = 14, value = "标签图片")
@ApiModelProperty(position = 13, value = "标签图片")
private String tagPic;
@ApiModelProperty(position = 14, value = "排序[数值越小,排序越前]")
private Integer sort;
private static final GoblinSelfExtagVo obj = new GoblinSelfExtagVo();
public static GoblinSelfExtagVo getNew() {
private static final GoblinGoodsExtagVo obj = new GoblinGoodsExtagVo();
public static GoblinGoodsExtagVo getNew() {
try {
return (GoblinSelfExtagVo) obj.clone();
return (GoblinGoodsExtagVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new GoblinSelfExtagVo();
return new GoblinGoodsExtagVo();
}
}
}
......@@ -85,11 +85,11 @@ public class GoblinGoodsInfoVo implements Serializable, Cloneable {
@ApiModelProperty(position = 51, value = "规格信息")
private List<GoblinGoodsSpecVo> specVoList;
@ApiModelProperty(position = 52, value = "商品标签列表")
private List<GoblinSelfGoodsTagVo> tagVoList;
private List<GoblinGoodsTagVo> tagVoList;
@ApiModelProperty(position = 53, value = "商品服务支持列表")
private List<GoblinServiceSupportVo> serviceSupportVoList;
@ApiModelProperty(position = 54, value = "音乐人、艺术家、IP列表")
private List<GoblinSelfExtagVo> extagVoList;
private List<GoblinGoodsExtagVo> extagVoList;
@ApiModelProperty(position = 55, value = "活动Id")
private String marketId;
......
......@@ -6,9 +6,9 @@ import lombok.Data;
import java.io.Serializable;
@ApiModel(value = "GoblinSelfGoodsTagVo", description = "标签信息")
@ApiModel(value = "GoblinGoodsTagVo", description = "商品关联标签信息")
@Data
public class GoblinSelfGoodsTagVo implements Serializable, Cloneable {
public class GoblinGoodsTagVo implements Serializable, Cloneable {
private static final long serialVersionUID = -2342407105969740471L;
@ApiModelProperty(position = 11, value = "标签ID")
private String tagId;
......@@ -17,12 +17,18 @@ public class GoblinSelfGoodsTagVo implements Serializable, Cloneable {
@ApiModelProperty(position = 13, value = "排序[数值越小,排序越前]")
private Integer sort;
private static final GoblinSelfGoodsTagVo obj = new GoblinSelfGoodsTagVo();
public static GoblinSelfGoodsTagVo getNew() {
private static final GoblinGoodsTagVo obj = new GoblinGoodsTagVo();
public static GoblinGoodsTagVo getNew() {
try {
return (GoblinSelfGoodsTagVo) obj.clone();
return (GoblinGoodsTagVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new GoblinSelfGoodsTagVo();
return new GoblinGoodsTagVo();
}
}
public GoblinGoodsTagVo copy(GoblinSelfTagVo source) {
if (null == source) return this;
return this;
}
}
package com.liquidnet.service.goblin.dto.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@ApiModel(value = "GoblinSelfTagVo", description = "平台标签库")
@Data
public class GoblinSelfTagVo implements Serializable, Cloneable {
private static final long serialVersionUID = 972558538207500034L;
@ApiModelProperty(position = 10, value = "标签ID")
private String tagId;
@ApiModelProperty(position = 11, value = "标签名称")
private String tagName;
@ApiModelProperty(position = 12, value = "标签描述")
private String tagDesc;
@ApiModelProperty(position = 13, value = "标签图片")
private String tagPic;
@ApiModelProperty(position = 14, value = "标签类型[1-音乐人|2-艺术家|3-IP]")
private String tagType;
@ApiModelProperty(position = 15, value = "标签所属[0-普通标签|1-专属标签]")
private String tagBelong;
@ApiModelProperty(position = 16, value = "排序[数值越小,排序越前]")
private Integer sort;
private static final GoblinSelfTagVo obj = new GoblinSelfTagVo();
public static GoblinSelfTagVo getNew() {
try {
return (GoblinSelfTagVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new GoblinSelfTagVo();
}
}
}
......@@ -34,9 +34,9 @@ public class GoblinGoodsTag implements Serializable {
private String tagId;
/**
* 标签所属[0-普通标签|1-专属标签]
* 排序[数值越小,排序越前]
*/
private String tagBelong;
private Integer sort;
/**
* 删除标记[0-未删除|1-删除]
......
package com.liquidnet.service.goblin.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 平台商品标签
* </p>
*
* @author liquidnet
* @since 2021-12-27
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class GoblinSelfGoodsTag implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Long mid;
/**
* 标签id
*/
private String tagId;
/**
* 标签名称
*/
private String tagName;
/**
* 标签说明
*/
private String tagDesc;
/**
* 保留字段
*/
private String tagType;
/**
* 排序[数值越小,排序越前]
*/
private Integer sort;
/**
* 删除标记[0-未删除|1-删除]
*/
private String delFlg;
private String comment;
}
......@@ -16,7 +16,7 @@ import lombok.EqualsAndHashCode;
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class GoblinSelfExtag implements Serializable {
public class GoblinSelfTag implements Serializable {
private static final long serialVersionUID = 1L;
......@@ -49,9 +49,9 @@ public class GoblinSelfExtag implements Serializable {
private String tagType;
/**
* 排序[数值越小,排序越前]
* 标签所属[0-普通标签|1-专属标签]
*/
private Integer sort;
private String tagBelong;
/**
* 删除标记[0-未删除|1-删除]
......
package com.liquidnet.service.goblin.mapper;
import com.liquidnet.service.goblin.entity.GoblinSelfGoodsTag;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 平台商品标签 Mapper 接口
* </p>
*
* @author liquidnet
* @since 2021-12-27
*/
public interface GoblinSelfGoodsTagMapper extends BaseMapper<GoblinSelfGoodsTag> {
}
package com.liquidnet.service.goblin.mapper;
import com.liquidnet.service.goblin.entity.GoblinSelfExtag;
import com.liquidnet.service.goblin.entity.GoblinSelfTag;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
......@@ -11,6 +11,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author liquidnet
* @since 2021-12-27
*/
public interface GoblinSelfExtagMapper extends BaseMapper<GoblinSelfExtag> {
public interface GoblinSelfTagMapper extends BaseMapper<GoblinSelfTag> {
}
<?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.liquidnet.service.goblin.mapper.GoblinSelfGoodsTagMapper">
</mapper>
<?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.liquidnet.service.goblin.mapper.GoblinSelfExtagMapper">
<mapper namespace="com.liquidnet.service.goblin.mapper.GoblinSelfTagMapper">
</mapper>
......@@ -20,36 +20,52 @@ create table goblin_service_support
create unique index uidx_gss_service_support_id on goblin_service_support (ssid);
# -- >>------------------------------------------------------------------------------------
drop table if exists goblin_self_extag;
create table goblin_self_extag
drop table if exists goblin_self_tag;
create table goblin_self_tag
(
mid bigint auto_increment primary key,
tag_id varchar(30) not null comment '标签id',
tag_name varchar(50) not null comment '标签名称',
tag_desc varchar(128) null comment '标签描述',
tag_pic varchar(256) null comment '标签图片',
tag_type char null comment '标签类型[1-音乐人|2-艺术家|3-IP]',
sort int default 0 comment '排序[数值越小,排序越前]',
tag_type char null comment '标签类型[0-商品标签|1-音乐人|2-艺术家|3-IP]',
tag_belong char default '0' comment '标签所属[0-普通标签|1-专属标签]',
del_flg char default '0' comment '删除标记[0-未删除|1-删除]',
comment varchar(255)
) engine = InnoDB comment '平台专属标签';
) engine = InnoDB comment '平台标签库';
create unique index uidx_gse_tag_id on goblin_self_extag (tag_id);
create unique index uidx_gst_tag_id on goblin_self_tag (tag_id);
# -- >>------------------------------------------------------------------------------------
drop table if exists goblin_self_goods_tag;
create table goblin_self_goods_tag
(
mid bigint auto_increment primary key,
tag_id varchar(30) not null comment '标签id',
tag_name varchar(30) not null comment '标签名称',
tag_desc varchar(50) null comment '标签说明',
tag_type char default '0' comment '保留字段',
sort int default 0 comment '排序[数值越小,排序越前]',
del_flg char default '0' comment '删除标记[0-未删除|1-删除]',
comment varchar(255)
) engine = InnoDB comment '平台商品标签';
create unique index uidx_gsgt_tag_id on goblin_self_goods_tag (tag_id);
# drop table if exists goblin_self_extag;
# create table goblin_self_extag
# (
# mid bigint auto_increment primary key,
# tag_id varchar(30) not null comment '标签id',
# tag_name varchar(50) not null comment '标签名称',
# tag_desc varchar(128) null comment '标签描述',
# tag_pic varchar(256) null comment '标签图片',
# tag_type char null comment '标签类型[1-音乐人|2-艺术家|3-IP]',
# sort int default 0 comment '排序[数值越小,排序越前]',
# del_flg char default '0' comment '删除标记[0-未删除|1-删除]',
# comment varchar(255)
# ) engine = InnoDB comment '平台专属标签';
#
# create unique index uidx_gse_tag_id on goblin_self_extag (tag_id);
# # -- >>------------------------------------------------------------------------------------
# drop table if exists goblin_self_goods_tag;
# create table goblin_self_goods_tag
# (
# mid bigint auto_increment primary key,
# tag_id varchar(30) not null comment '标签id',
# tag_name varchar(30) not null comment '标签名称',
# tag_desc varchar(50) null comment '标签说明',
# tag_type char default '0' comment '保留字段',
# sort int default 0 comment '排序[数值越小,排序越前]',
# del_flg char default '0' comment '删除标记[0-未删除|1-删除]',
# comment varchar(255)
# ) engine = InnoDB comment '平台商品标签';
#
# create unique index uidx_gsgt_tag_id on goblin_self_goods_tag (tag_id);
# -- >>------------------------------------------------------------------------------------
drop table if exists goblin_self_goods_category;
create table goblin_self_goods_category
......@@ -207,7 +223,7 @@ create table goblin_goods_tag
mid bigint auto_increment primary key,
spu_id varchar(64) not null comment '商品id',
tag_id varchar(30) not null comment '标签id,对应 goblin_self_goods_tag.tag_id | goblin_self_extag.tag_id',
tag_belong char default '0' comment '标签所属[0-普通标签|1-专属标签]',
sort int default 0 comment '排序[数值越小,排序越前]',
del_flg char default '0' comment '删除标记[0-未删除|1-删除]',
comment varchar(255)
) engine = InnoDB comment '商品关联标签';
......
package com.liquidnet.service.goblin.service.impl.manage;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.service.base.PagedResult;
import com.liquidnet.service.goblin.dto.manage.GoblinStoreMgtGoodsActionParam;
......@@ -7,9 +8,7 @@ import com.liquidnet.service.goblin.dto.manage.GoblinStoreMgtGoodsAddParam;
import com.liquidnet.service.goblin.dto.manage.GoblinStoreMgtGoodsFilterParam;
import com.liquidnet.service.goblin.dto.manage.vo.GoblinStoreMgtGoodsInfoVo;
import com.liquidnet.service.goblin.dto.manage.vo.GoblinStoreMgtGoodsListVo;
import com.liquidnet.service.goblin.dto.vo.GoblinGoodsInfoVo;
import com.liquidnet.service.goblin.dto.vo.GoblinGoodsSkuInfoVo;
import com.liquidnet.service.goblin.dto.vo.GoblinGoodsSpecVo;
import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.goblin.service.manage.IGoblinstoreMgtGoodsService;
import com.liquidnet.service.goblin.util.GoblinMongoUtils;
import com.liquidnet.service.goblin.util.GoblinRedisUtils;
......@@ -50,9 +49,39 @@ public class GoblinStoreMgtGoodsServiceImpl implements IGoblinstoreMgtGoodsServi
List<GoblinGoodsSkuInfoVo> goodsSkuInfoVoList = ObjectUtil.getGoblinGoodsSkuInfoVoArrayList();
storeMgtGoodsAddParam.initGoodsSkuInfoVo(vo, goodsSkuInfoVoList, goodsSpecVoList);
{// 标签处理
List<String> goodsTagIdList = storeMgtGoodsAddParam.getTagList();
List<String> goodsExtagIdList = storeMgtGoodsAddParam.getExtagList();
boolean goodsTagIsEmpty = CollectionUtils.isEmpty(goodsTagIdList);
boolean goodsExtagIsEmpty = CollectionUtils.isEmpty(goodsExtagIdList);
ArrayList<String> tagIdList = CollectionUtil.arrayListString();
tagIdList.addAll(goodsTagIdList);
tagIdList.addAll(goodsExtagIdList);
if (!CollectionUtils.isEmpty(tagIdList)) {
List<GoblinSelfTagVo> selfTagVoList = goblinMongoUtils.getSelfTagVos(tagIdList);
if (!goodsTagIsEmpty) {
for (int i = 0; i < tagIdList.size(); i++) {
String tagId = tagIdList.get(i);
selfTagVoList.forEach(r -> {
if (r.getTagId().equals(tagId)) {
GoblinGoodsTagVo.getNew();
}
});
}
// vo.setTagVoList();
// vo.setServiceSupportVoList();
}
if (!goodsExtagIsEmpty) {
// vo.setExtagVoList();
}
}
}
vo.setServiceSupportVoList(goblinMongoUtils.getServiceSupportVo(storeMgtGoodsAddParam.getSsidList()));
goblinMongoUtils.setGoodsInfoVo(vo);
goblinMongoUtils.setGoodsSkuInfoVos(goodsSkuInfoVoList);
......
......@@ -19,6 +19,7 @@ import org.springframework.data.mongodb.core.convert.MongoConverter;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.HashMap;
......@@ -34,15 +35,31 @@ public class GoblinMongoUtils {
/* ---------------------------------------- 标签数据源 ---------------------------------------- */
//
public List<GoblinSelfGoodsTagVo> getGoodsTagVos(List<String> tagIds) {
public List<GoblinSelfTagVo> getSelfTagVos(List<String> tagIds) {
if (CollectionUtils.isEmpty(tagIds)) return ObjectUtil.getGoblinSelfTagVoArrayList();
return null;
}
public List<GoblinGoodsTagVo> getGoodsTagVos(List<String> tagIds) {
if (CollectionUtils.isEmpty(tagIds)) return ObjectUtil.getGoblinGoodsTagVoArrayList();
return null;
}
public List<GoblinGoodsExtagVo> getGoodsExtagVos(List<String> tagIds) {
if (CollectionUtils.isEmpty(tagIds)) return ObjectUtil.getGoblinGoodsExtagVoArrayList();
return null;
}
/* ---------------------------------------- 服务保障数据源 ---------------------------------------- */
public List<GoblinServiceSupportVo> getServiceSupportVo(List<String> ssids) {
if (CollectionUtils.isEmpty(ssids)) return ObjectUtil.getGoblinServiceSupportVoArrayList();
return null;
}
/* ---------------------------------------- 店铺数据源 ---------------------------------------- */
......
......@@ -18,6 +18,10 @@ public class ObjectUtil {
private static final ArrayList<GoblinStoreMgtThumbVo> goblinStoreMgtThumbVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinGoodsSkuInfoVo> goblinGoodsSkuInfoVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinGoodsSpecVo> goblinGoodsSpecVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinServiceSupportVo> goblinServiceSupportVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinSelfTagVo> goblinSelfTagVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinGoodsTagVo> goblinGoodsTagVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinGoodsExtagVo> goblinGoodsExtagVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinMarketSpuListVo> goblinMarketSpuListVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinStorePurchaseSkuVo> goblinStorePurchaseSkuVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinSelfZhengzaiSkuVo> goblinSelfZhengzaiSkuVoArrayList = new ArrayList<>();
......@@ -52,6 +56,22 @@ public class ObjectUtil {
return (ArrayList<GoblinGoodsSpecVo>) goblinGoodsSpecVoArrayList.clone();
}
public static ArrayList<GoblinServiceSupportVo> getGoblinServiceSupportVoArrayList() {
return (ArrayList<GoblinServiceSupportVo>) goblinServiceSupportVoArrayList.clone();
}
public static ArrayList<GoblinSelfTagVo> getGoblinSelfTagVoArrayList() {
return (ArrayList<GoblinSelfTagVo>) goblinSelfTagVoArrayList.clone();
}
public static ArrayList<GoblinGoodsTagVo> getGoblinGoodsTagVoArrayList() {
return (ArrayList<GoblinGoodsTagVo>) goblinGoodsTagVoArrayList.clone();
}
public static ArrayList<GoblinGoodsExtagVo> getGoblinGoodsExtagVoArrayList() {
return (ArrayList<GoblinGoodsExtagVo>) goblinGoodsExtagVoArrayList.clone();
}
public static ArrayList<GoblinMarketSpuListVo> getGoblinMarketSpuListVoArrayList() {
return (ArrayList<GoblinMarketSpuListVo>) goblinMarketSpuListVoArrayList.clone();
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment