From bbee75bed3a133978ff3dd5a540e35c652de1a69 Mon Sep 17 00:00:00 2001 From: yuanjunzhe <1374457292@qq.com> Date: Mon, 1 Apr 2024 14:31:00 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/muyu/common/cache/HashCache.java | 111 ++++++++++++++++ .../muyu/common/cache/abs/HashCacheAbs.java | 125 ++++++++++++++++++ .../cache/decoration/DecorationKey.java | 22 +++ .../common/redis/service/RedisService.java | 2 +- muyu-common/pom.xml | 1 + .../muyu-product/muyu-product-cache/pom.xml | 10 +- .../muyu/product/cache/ProjectInfoCache.java | 1 + .../product/cache/ProjectSkuStockCache.java | 16 +++ .../{ => datasource}/ProjectInfoData.java | 2 +- .../cache/datasource/ProjectSkuData.java | 28 ++++ .../muyu/product/cache/projectSkuCache.java | 16 +++ .../muyu-product/muyu-product-service/pom.xml | 7 + .../cache/impl/ProjectInfoDataImpl.java | 29 ++++ .../cache/impl/ProjectSkuDataImpl.java | 48 +++++++ .../muyu-shop-cart-common/pom.xml | 27 ++++ .../com/muyu/shop/cart/domain/CartInfo.java | 106 +++++++++++++++ .../shop/cart/domain/req/CartInfoEditReq.java | 46 +++++++ .../cart/domain/req/CartInfoQueryReq.java | 46 +++++++ .../shop/cart/domain/req/CartInfoSaveReq.java | 56 ++++++++ .../muyu-shop-cart-remote/pom.xml | 29 ++++ .../muyu-shop-cart-service/pom.xml | 118 +++++++++++++++++ .../shop/cart/MuYuShopCartApplication.java | 22 +++ .../cart/controller/CartInfoController.java | 106 +++++++++++++++ .../muyu/shop/cart/mapper/CartInfoMapper.java | 14 ++ .../shop/cart/service/CartInfoService.java | 23 ++++ .../shop/cart/service/ICartInfoService.java | 62 +++++++++ .../service/impl/CartInfoServiceImpl.java | 61 +++++++++ .../src/main/resources/banner.txt | 2 + .../src/main/resources/bootstrap.yml | 28 ++++ .../src/main/resources/logback.xml | 74 +++++++++++ .../mapper/shopCart/CartInfoMapper.xml | 24 ++++ muyu-modules/muyu-shop-cart/pom.xml | 25 ++++ muyu-modules/pom.xml | 1 + pom.xml | 54 +++----- 34 files changed, 1298 insertions(+), 44 deletions(-) create mode 100644 muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/HashCache.java create mode 100644 muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/abs/HashCacheAbs.java create mode 100644 muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/decoration/DecorationKey.java create mode 100644 muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectSkuStockCache.java rename muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/{ => datasource}/ProjectInfoData.java (88%) create mode 100644 muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/ProjectSkuData.java create mode 100644 muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/projectSkuCache.java create mode 100644 muyu-modules/muyu-product/muyu-product-service/src/main/java/com/muyu/product/cache/impl/ProjectInfoDataImpl.java create mode 100644 muyu-modules/muyu-product/muyu-product-service/src/main/java/com/muyu/product/cache/impl/ProjectSkuDataImpl.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-common/pom.xml create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/CartInfo.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoEditReq.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoQueryReq.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoSaveReq.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-remote/pom.xml create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/pom.xml create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/MuYuShopCartApplication.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/controller/CartInfoController.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/mapper/CartInfoMapper.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/CartInfoService.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/ICartInfoService.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/impl/CartInfoServiceImpl.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/banner.txt create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/bootstrap.yml create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/logback.xml create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/mapper/shopCart/CartInfoMapper.xml create mode 100644 muyu-modules/muyu-shop-cart/pom.xml diff --git a/muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/HashCache.java b/muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/HashCache.java new file mode 100644 index 0000000..47a58ba --- /dev/null +++ b/muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/HashCache.java @@ -0,0 +1,111 @@ +package com.muyu.common.cache; + +import com.muyu.common.cache.decoration.DecorationKey; + +import java.util.List; +import java.util.Map; +import java.util.function.Function; + +/** + * @Author:yjz + * @Package:com.muyu.common.cache + * @Project:cloud_service + * @name:HashCache + * @Date:2024/3/31 15:51 + */ +public interface HashCache extends DecorationKey { + + + /** + * 编码 + * @param hashkey Id + * @return 键 + */ + + public String encodeHashKey(HK hashkey); + + /** + * 解码 + * @param redisHashKey 数据库键 + * @return ID + */ + public HK decodeHashKey(String redisHashKey); + + + /** + * 通过Key获取所有map + * @param key 数据库键 + * @return 所有集合Map + */ + + public Map get(K key); + + + /** + * 通过键和hashKey获取数据库hashValue + * @param key 键 + * @param hashKey hash键 + * @return hash值 + */ + public HV get(K key,HK hashKey); + + /** + * 通过键和hashKey获取数据库hashValue + * @param key 键 + * @param hashKeyList hash键集合 + * @return hash值 + */ + public List get(K key,HK... hashKeyList); + + /** + * 获取hash值集合 + * @param key 键 + * @return hash值集合 + */ + public List getToList(K key); + + + /** + * 存储数据 + * @param key redis键 + * @param map hashMap集合 + */ + public void put(K key,Mapmap); + + + /** + * 存储数据 + * @param key redis键 + * @param dataList 数据值 + * @param hashKey hash键 + */ + public void put(K key, List dataList, FunctionhashKey); + + + /** + * 存储数据 + * @param key redis键 + * @param hashKey hash键 + * @param hashValue hash值 + */ + public void put(K key,HK hashKey,HV hashValue); + + + /** + * 通过redis键删除 + * @param key hash键 + */ + public void remove(K key); + + + /** + * 通过redis键和hash键删除 + * @param key redis键 + * @param hashKey hash键 + */ + + public void remove(K key,HK hashKey); + + + +} diff --git a/muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/abs/HashCacheAbs.java b/muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/abs/HashCacheAbs.java new file mode 100644 index 0000000..0880680 --- /dev/null +++ b/muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/abs/HashCacheAbs.java @@ -0,0 +1,125 @@ +package com.muyu.common.cache.abs;/** + * @Author:yjz + * @Package:com.muyu.common.cache.abs + * @Project:cloud_service + * @name:HashCacheAbs + * @Date:2024/3/31 16:01 + */ + +import com.muyu.common.cache.HashCache; +import com.muyu.common.redis.service.RedisService; +import org.springframework.beans.factory.annotation.Autowired; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.function.Function; + +/** + *@ClassName HashCacheAbs + *@Description 描述 + *@Author JunZhe.Yuan + *@Date 2024/3/31 16:01 + */ +public abstract class HashCacheAbs implements HashCache { + + @Autowired + private RedisService redisService; + + + @Override + public String encode(K key) { + + return keyPre()+key; + } + + @Override + public String encodeHashKey(HK hashkey) { + return hashkey.toString(); + } + + @Override + public Map get(K key) { + return decodeMap(redisService.getCacheMap(encode(key))); + } + + @Override + public HV get(K key, HK hashKey) { + return redisService.getCacheMapValue(encode(key),encodeHashKey(hashKey)); + } + + @Override + public List get(K key, HK... hashKeyList) { + List encodeHashKeyList = Arrays.stream(hashKeyList).map(this::encodeHashKey).toList(); + return redisService.getMultiCacheMapValue(encode(key),encodeHashKeyList); + } + + @Override + public List getToList(K key) { + Map hkhvMap = get(key); + return hkhvMap.values().stream().toList(); + } + + @Override + public void put(K key, Map map) { + redisService.setCacheMap(encode(key),encodeMap(map)); + } + + @Override + public void put(K key, List dataList, Function hashKey) { + HashMap dataMap = new HashMap<>(); + dataList.forEach((data) -> dataMap.put(hashKey.apply(data),data)); + redisService.setCacheMap(encode(key),encodeMap(dataMap)); + } + + @Override + public void put(K key, HK hashKey, HV hashValue) { + redisService.setCacheMapValue(encode(key),encodeHashKey(hashKey),hashValue); + } + + @Override + public void remove(K key) { + redisService.deleteObject(encode(key)); + } + + @Override + public void remove(K key, HK hashKey) { + redisService.deleteCacheMapValue(encode(key),encodeHashKey(hashKey)); + } + + + /** + * 原始数据转编码数据 + * @param dataMap 原始数据 + * @return 编码数据 + */ + + private Map encodeMap(Map dataMap){ + Map encodeDataMap = new HashMap<>(); + dataMap.forEach((hashKey,HashValue) -> encodeDataMap.put(encodeHashKey(hashKey),HashValue)); + return encodeDataMap; + } + + + + private Map decodeMap(Map encodeDataMap){ + + Map dataMap = new HashMap<>(); + + encodeDataMap.forEach(((hashKey, hashValue) -> dataMap.put(decodeHashKey(hashKey),hashValue))); + + return dataMap; + } + + public abstract Map getData(K key); + + public abstract HV getData(K key,HK hashKey); + + + public abstract Map defaultValue(); + + + public abstract HV defaultHashValue(); + +} diff --git a/muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/decoration/DecorationKey.java b/muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/decoration/DecorationKey.java new file mode 100644 index 0000000..27e2afd --- /dev/null +++ b/muyu-common/muyu-common-cache/src/main/java/com/muyu/common/cache/decoration/DecorationKey.java @@ -0,0 +1,22 @@ +package com.muyu.common.cache.decoration; + +/** + * @Author:yjz + * @Package:com.muyu.common.cache.decoration + * @Project:cloud_service + * @name:DecorationKey + * @Date:2024/3/29 20:46 + */ +public interface DecorationKey { + + + public String keyPre(); + + + public String encode(K key); + + + + public K decode(String redisKey); + +} diff --git a/muyu-common/muyu-common-redis/src/main/java/com/muyu/common/redis/service/RedisService.java b/muyu-common/muyu-common-redis/src/main/java/com/muyu/common/redis/service/RedisService.java index db90c1e..9446559 100644 --- a/muyu-common/muyu-common-redis/src/main/java/com/muyu/common/redis/service/RedisService.java +++ b/muyu-common/muyu-common-redis/src/main/java/com/muyu/common/redis/service/RedisService.java @@ -229,7 +229,7 @@ public class RedisService { * * @return Hash对象集合 */ - public List getMultiCacheMapValue (final String key, final Collection hKeys) { + public List getMultiCacheMapValue (final String key, final Collection hKeys) { return redisTemplate.opsForHash().multiGet(key, hKeys); } diff --git a/muyu-common/pom.xml b/muyu-common/pom.xml index 3689cd6..a54b9c0 100644 --- a/muyu-common/pom.xml +++ b/muyu-common/pom.xml @@ -10,6 +10,7 @@ muyu-common-log + muyu-common-cache muyu-common-core muyu-common-redis muyu-common-seata diff --git a/muyu-modules/muyu-product/muyu-product-cache/pom.xml b/muyu-modules/muyu-product/muyu-product-cache/pom.xml index f0df5c0..58456ad 100644 --- a/muyu-modules/muyu-product/muyu-product-cache/pom.xml +++ b/muyu-modules/muyu-product/muyu-product-cache/pom.xml @@ -30,14 +30,8 @@ com.muyu muyu-product-common - - com.muyu - muyu-common-core - - - com.muyu - muyu-product-common - + + \ No newline at end of file diff --git a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoCache.java b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoCache.java index f84afa4..6fa970a 100644 --- a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoCache.java +++ b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoCache.java @@ -2,6 +2,7 @@ package com.muyu.product.cache; import com.muyu.common.cache.abs.CacheAbs; import com.muyu.common.core.text.Convert; +import com.muyu.product.cache.datasource.ProjectInfoData; import com.muyu.product.domain.ProjectInfo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; diff --git a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectSkuStockCache.java b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectSkuStockCache.java new file mode 100644 index 0000000..66c0bc7 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectSkuStockCache.java @@ -0,0 +1,16 @@ +package com.muyu.product.cache;/** + * @Author:yjz + * @Package:com.muyu.product.cache.datasource + * @Project:cloud_service + * @name:ProjectSkuStockCache + * @Date:2024/3/29 20:52 + */ + +/** + *@ClassName ProjectSkuStockCache + *@Description 描述 + *@Author JunZhe.Yuan + *@Date 2024/3/29 20:52 + */ +public class ProjectSkuStockCache { +} diff --git a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoData.java b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/ProjectInfoData.java similarity index 88% rename from muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoData.java rename to muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/ProjectInfoData.java index 00a8c57..0fb0000 100644 --- a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoData.java +++ b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/ProjectInfoData.java @@ -1,4 +1,4 @@ -package com.muyu.product.cache; +package com.muyu.product.cache.datasource; import com.muyu.product.domain.ProjectInfo; diff --git a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/ProjectSkuData.java b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/ProjectSkuData.java new file mode 100644 index 0000000..2ba57d5 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/ProjectSkuData.java @@ -0,0 +1,28 @@ +package com.muyu.product.cache.datasource;/** + * @Author:yjz + * @Package:com.muyu.product.cache.datasource + * @Project:cloud_service + * @name:ProjectSkuData + * @Date:2024/4/1 14:17 + */ + +import com.muyu.product.domain.ProjectSkuInfo; + +import java.util.Map; + +/** + *@ClassName ProjectSkuData + *@Description 描述 + *@Author JunZhe.Yuan + *@Date 2024/4/1 14:17 + */ +public interface ProjectSkuData { + + + public Map getData(Long projectId); + + + public ProjectSkuInfo getData(Long projectId,String projectSku); + + +} diff --git a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/projectSkuCache.java b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/projectSkuCache.java new file mode 100644 index 0000000..49c1e9d --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/projectSkuCache.java @@ -0,0 +1,16 @@ +package com.muyu.product.cache;/** + * @Author:yjz + * @Package:com.muyu.product.cache.datasource + * @Project:cloud_service + * @name:projectSkuCache + * @Date:2024/3/29 20:52 + */ + +/** + *@ClassName projectSkuCache + *@Description 描述 + *@Author JunZhe.Yuan + *@Date 2024/3/29 20:52 + */ +public class projectSkuCache { +} diff --git a/muyu-modules/muyu-product/muyu-product-service/pom.xml b/muyu-modules/muyu-product/muyu-product-service/pom.xml index 3593af4..86d3294 100644 --- a/muyu-modules/muyu-product/muyu-product-service/pom.xml +++ b/muyu-modules/muyu-product/muyu-product-service/pom.xml @@ -18,6 +18,13 @@ + + + + com.muyu + muyu-product-cache + + com.muyu muyu-product-common diff --git a/muyu-modules/muyu-product/muyu-product-service/src/main/java/com/muyu/product/cache/impl/ProjectInfoDataImpl.java b/muyu-modules/muyu-product/muyu-product-service/src/main/java/com/muyu/product/cache/impl/ProjectInfoDataImpl.java new file mode 100644 index 0000000..d50dedd --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-service/src/main/java/com/muyu/product/cache/impl/ProjectInfoDataImpl.java @@ -0,0 +1,29 @@ +package com.muyu.product.cache.impl;/** + * @Author:yjz + * @Package:com.muyu.product.cache.impl + * @Project:cloud_service + * @name:ProJectInfoDataImpl + * @Date:2024/4/1 14:16 + */ + +import com.muyu.product.cache.datasource.ProjectInfoData; +import com.muyu.product.domain.ProjectInfo; +import com.muyu.product.service.ProjectInfoService; +import org.springframework.beans.factory.annotation.Autowired; + +/** + *@ClassName ProjectInfoDataImpl + *@Description 描述 + *@Author JunZhe.Yuan + *@Date 2024/4/1 14:16 + */ +public class ProjectInfoDataImpl implements ProjectInfoData { + @Autowired + private ProjectInfoService projectInfoService; + + + @Override + public ProjectInfo getData(Long key) { + return projectInfoService.getById(key); + } +} diff --git a/muyu-modules/muyu-product/muyu-product-service/src/main/java/com/muyu/product/cache/impl/ProjectSkuDataImpl.java b/muyu-modules/muyu-product/muyu-product-service/src/main/java/com/muyu/product/cache/impl/ProjectSkuDataImpl.java new file mode 100644 index 0000000..4ee4d9a --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-service/src/main/java/com/muyu/product/cache/impl/ProjectSkuDataImpl.java @@ -0,0 +1,48 @@ +package com.muyu.product.cache.impl;/** + * @Author:yjz + * @Package:com.muyu.product.cache.impl + * @Project:cloud_service + * @name:ProjectSkuDataImpl + * @Date:2024/4/1 14:15 + */ + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.muyu.product.cache.datasource.ProjectSkuData; +import com.muyu.product.domain.ProjectSkuInfo; +import com.muyu.product.service.ProjectSkuInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + *@ClassName ProjectSkuDataImpl + *@Description 描述 + *@Author JunZhe.Yuan + *@Date 2024/4/1 14:15 + */ +@Service +public class ProjectSkuDataImpl implements ProjectSkuData { + + @Autowired + private ProjectSkuInfoService projectSkuInfoService; + + @Override + public Map getData(Long projectId) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ProjectSkuInfo::getProjectId,projectId); + List projectSkuInfoList = projectSkuInfoService.list(queryWrapper); + return projectSkuInfoList.stream().collect(Collectors.toMap(ProjectSkuInfo ::getSku,projectSkuInfo -> projectSkuInfo)); + } + + @Override + public ProjectSkuInfo getData(Long projectId, String projectSku) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ProjectSkuInfo::getProjectId,projectId); + queryWrapper.eq(ProjectSkuInfo::getSku,projectSku); + ProjectSkuInfo skuInfo = projectSkuInfoService.getOne(queryWrapper); + return skuInfo; + } +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/pom.xml b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/pom.xml new file mode 100644 index 0000000..f269bba --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/pom.xml @@ -0,0 +1,27 @@ + + + 4.0.0 + + com.muyu + muyu-shop-cart + 3.6.3 + + + muyu-shop-cart-common + + + 17 + 17 + UTF-8 + + + + + com.muyu + muyu-common-core + + + + \ No newline at end of file diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/CartInfo.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/CartInfo.java new file mode 100644 index 0000000..e3b0aea --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/CartInfo.java @@ -0,0 +1,106 @@ +package com.muyu.shop.cart.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.shop.cart.domain.req.CartInfoEditReq; +import com.muyu.shop.cart.domain.req.CartInfoQueryReq; +import com.muyu.shop.cart.domain.req.CartInfoSaveReq; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 购物车对象 cart_info + * + * @author DongZeLiang + * @date 2024-03-29 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@TableName("cart_info") +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "CartInfo", description = "购物车") +public class CartInfo extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 主键 */ + @TableId(value = "id",type = IdType.AUTO) + @ApiModelProperty(name = "主键", value = "主键") + private Long id; + + /** 商品 */ + @Excel(name = "商品") + @ApiModelProperty(name = "商品", value = "商品", required = true) + private Long projectId; + + /** SKU */ + @Excel(name = "SKU") + @ApiModelProperty(name = "SKU", value = "SKU", required = true) + private String projectSku; + + /** 用户 */ + @Excel(name = "用户") + @ApiModelProperty(name = "用户", value = "用户", required = true) + private Long userId; + + /** 数量 */ + @Excel(name = "数量") + @ApiModelProperty(name = "数量", value = "数量", required = true) + private Long num; + + /** 是否选中 */ + @Excel(name = "是否选中") + @ApiModelProperty(name = "是否选中", value = "是否选中", required = true) + private String isSelected; + + /** + * 查询构造器 + */ + public static CartInfo queryBuild( CartInfoQueryReq cartInfoQueryReq){ + return CartInfo.builder() + .projectId(cartInfoQueryReq.getProjectId()) + .projectSku(cartInfoQueryReq.getProjectSku()) + .userId(cartInfoQueryReq.getUserId()) + .num(cartInfoQueryReq.getNum()) + .isSelected(cartInfoQueryReq.getIsSelected()) + .build(); + } + + /** + * 添加构造器 + */ + public static CartInfo saveBuild(CartInfoSaveReq cartInfoSaveReq){ + return CartInfo.builder() + .projectId(cartInfoSaveReq.getProjectId()) + .projectSku(cartInfoSaveReq.getProjectSku()) + .userId(cartInfoSaveReq.getUserId()) + .num(cartInfoSaveReq.getNum()) + .isSelected(cartInfoSaveReq.getIsSelected()) + .build(); + } + + /** + * 修改构造器 + */ + public static CartInfo editBuild(Long id, CartInfoEditReq cartInfoEditReq){ + return CartInfo.builder() + .id(id) + .projectId(cartInfoEditReq.getProjectId()) + .projectSku(cartInfoEditReq.getProjectSku()) + .userId(cartInfoEditReq.getUserId()) + .num(cartInfoEditReq.getNum()) + .isSelected(cartInfoEditReq.getIsSelected()) + .build(); + } + +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoEditReq.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoEditReq.java new file mode 100644 index 0000000..26f4ed4 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoEditReq.java @@ -0,0 +1,46 @@ +package com.muyu.shop.cart.domain.req; + +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; + +/** + * 购物车对象 cart_info + * + * @author DongZeLiang + * @date 2024-03-29 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "CartInfoEditReq", description = "购物车") +public class CartInfoEditReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 商品 */ + @ApiModelProperty(name = "商品", value = "商品", required = true) + private Long projectId; + + /** SKU */ + @ApiModelProperty(name = "SKU", value = "SKU", required = true) + private String projectSku; + + /** 用户 */ + @ApiModelProperty(name = "用户", value = "用户", required = true) + private Long userId; + + /** 数量 */ + @ApiModelProperty(name = "数量", value = "数量", required = true) + private Long num; + + /** 是否选中 */ + @ApiModelProperty(name = "是否选中", value = "是否选中", required = true) + private String isSelected; + +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoQueryReq.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoQueryReq.java new file mode 100644 index 0000000..551b4a4 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoQueryReq.java @@ -0,0 +1,46 @@ +package com.muyu.shop.cart.domain.req; + +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; + +/** + * 购物车对象 cart_info + * + * @author DongZeLiang + * @date 2024-03-29 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "CartInfoQueryReq", description = "购物车") +public class CartInfoQueryReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 商品 */ + @ApiModelProperty(name = "商品", value = "商品") + private Long projectId; + + /** SKU */ + @ApiModelProperty(name = "SKU", value = "SKU") + private String projectSku; + + /** 用户 */ + @ApiModelProperty(name = "用户", value = "用户") + private Long userId; + + /** 数量 */ + @ApiModelProperty(name = "数量", value = "数量") + private Long num; + + /** 是否选中 */ + @ApiModelProperty(name = "是否选中", value = "是否选中") + private String isSelected; + +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoSaveReq.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoSaveReq.java new file mode 100644 index 0000000..7f0e2b1 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/req/CartInfoSaveReq.java @@ -0,0 +1,56 @@ +package com.muyu.shop.cart.domain.req; + +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; + +/** + * 购物车对象 cart_info + * + * @author DongZeLiang + * @date 2024-03-29 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "CartInfoSaveReq", description = "购物车") +public class CartInfoSaveReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 主键 */ + + @ApiModelProperty(name = "主键", value = "主键") + private Long id; + + /** 商品 */ + + @ApiModelProperty(name = "商品", value = "商品", required = true) + private Long projectId; + + /** SKU */ + + @ApiModelProperty(name = "SKU", value = "SKU", required = true) + private String projectSku; + + /** 用户 */ + + @ApiModelProperty(name = "用户", value = "用户", required = true) + private Long userId; + + /** 数量 */ + + @ApiModelProperty(name = "数量", value = "数量", required = true) + private Long num; + + /** 是否选中 */ + + @ApiModelProperty(name = "是否选中", value = "是否选中", required = true) + private String isSelected; + +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-remote/pom.xml b/muyu-modules/muyu-shop-cart/muyu-shop-cart-remote/pom.xml new file mode 100644 index 0000000..a76391e --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-remote/pom.xml @@ -0,0 +1,29 @@ + + + 4.0.0 + + com.muyu + muyu-shop-cart + 3.6.3 + + + muyu-shop-cart-remote + + + 17 + 17 + UTF-8 + + + + + com.muyu + muyu-shop-cart-common + ${muyu.version} + + + + + \ No newline at end of file diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/pom.xml b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/pom.xml new file mode 100644 index 0000000..6ff483e --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/pom.xml @@ -0,0 +1,118 @@ + + + 4.0.0 + + com.muyu + muyu-shop-cart + 3.6.3 + + + muyu-shop-cart-service + + + 17 + 17 + UTF-8 + + + + + + + com.muyu + muyu-shop-cart-common + ${muyu.version} + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-sentinel + + + + + org.springframework.boot + spring-boot-starter-actuator + + + + + io.springfox + springfox-swagger-ui + ${swagger.fox.version} + + + + + com.mysql + mysql-connector-j + + + + + com.muyu + muyu-common-datasource + + + + + com.muyu + muyu-common-datascope + + + + + com.muyu + muyu-common-log + + + + + com.muyu + muyu-common-swagger + + + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + + \ No newline at end of file diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/MuYuShopCartApplication.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/MuYuShopCartApplication.java new file mode 100644 index 0000000..759f553 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/MuYuShopCartApplication.java @@ -0,0 +1,22 @@ +package com.muyu.shop.cart; + +import com.muyu.common.security.annotation.EnableCustomConfig; +import com.muyu.common.security.annotation.EnableMyFeignClients; +import com.muyu.common.swagger.annotation.EnableCustomSwagger2; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +/** + * 购物车服务 + * + * @author muyu + */ +@EnableCustomConfig +@EnableCustomSwagger2 +@EnableMyFeignClients +@SpringBootApplication +public class MuYuShopCartApplication { + public static void main (String[] args) { + SpringApplication.run(MuYuShopCartApplication.class, args); + } +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/controller/CartInfoController.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/controller/CartInfoController.java new file mode 100644 index 0000000..5b27631 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/controller/CartInfoController.java @@ -0,0 +1,106 @@ +package com.muyu.shop.cart.controller; + +import com.muyu.common.core.domain.Result; +import com.muyu.common.core.utils.poi.ExcelUtil; +import com.muyu.common.core.web.controller.BaseController; +import com.muyu.common.core.web.page.TableDataInfo; +import com.muyu.common.log.annotation.Log; +import com.muyu.common.log.enums.BusinessType; +import com.muyu.common.security.annotation.RequiresPermissions; +import com.muyu.shop.cart.domain.CartInfo; +import com.muyu.shop.cart.domain.req.CartInfoEditReq; +import com.muyu.shop.cart.domain.req.CartInfoQueryReq; +import com.muyu.shop.cart.domain.req.CartInfoSaveReq; +import com.muyu.shop.cart.service.CartInfoService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 购物车Controller + * + * @author DongZeLiang + * @date 2024-03-29 + */ +@Api(tags = "购物车") +@RestController +@RequestMapping("/Info") +public class CartInfoController extends BaseController { + @Autowired + private CartInfoService cartInfoService; + + /** + * 查询购物车列表 + */ + @ApiOperation("获取购物车列表") + @RequiresPermissions("shopCart:Info:list") + @GetMapping("/list") + public Result> list(CartInfoQueryReq cartInfoQueryReq) { + startPage(); + List list = cartInfoService.list(CartInfo.queryBuild(cartInfoQueryReq)); + return getDataTable(list); + } + + /** + * 导出购物车列表 + */ + @ApiOperation("导出购物车列表") + @RequiresPermissions("shopCart:Info:export") + @Log(title = "购物车", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, CartInfo cartInfo) { + List list = cartInfoService.list(cartInfo); + ExcelUtil util = new ExcelUtil(CartInfo.class); + util.exportExcel(response, list, "购物车数据"); + } + + /** + * 获取购物车详细信息 + */ + @ApiOperation("获取购物车详细信息") + @RequiresPermissions("shopCart:Info:query") + @GetMapping(value = "/{id}") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) + public Result getInfo(@PathVariable("id") Long id) { + return Result.success(cartInfoService.getById(id)); + } + + /** + * 新增购物车 + */ + @RequiresPermissions("shopCart:Info:add") + @Log(title = "购物车", businessType = BusinessType.INSERT) + @PostMapping + @ApiOperation("新增购物车") + public Result add(@RequestBody CartInfoSaveReq cartInfoSaveReq) { + return toAjax(cartInfoService.save(CartInfo.saveBuild(cartInfoSaveReq))); + } + + /** + * 修改购物车 + */ + @RequiresPermissions("shopCart:Info:edit") + @Log(title = "购物车", businessType = BusinessType.UPDATE) + @PutMapping("/{id}") + @ApiOperation("修改购物车") + public Result edit(@PathVariable Long id, @RequestBody CartInfoEditReq cartInfoEditReq) { + return toAjax(cartInfoService.updateById(CartInfo.editBuild(id,cartInfoEditReq))); + } + + /** + * 删除购物车 + */ + @RequiresPermissions("shopCart:Info:remove") + @Log(title = "购物车", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + @ApiOperation("删除购物车") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") + public Result remove(@PathVariable List ids) { + return toAjax(cartInfoService.removeBatchByIds(ids)); + } +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/mapper/CartInfoMapper.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/mapper/CartInfoMapper.java new file mode 100644 index 0000000..1e54852 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/mapper/CartInfoMapper.java @@ -0,0 +1,14 @@ +package com.muyu.shop.cart.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.shop.cart.domain.CartInfo; + +/** + * 购物车Mapper接口 + * + * @author DongZeLiang + * @date 2024-03-29 + */ +public interface CartInfoMapper extends BaseMapper { + +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/CartInfoService.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/CartInfoService.java new file mode 100644 index 0000000..e1602fb --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/CartInfoService.java @@ -0,0 +1,23 @@ +package com.muyu.shop.cart.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.shop.cart.domain.CartInfo; + +import java.util.List; + +/** + * 购物车Service接口 + * + * @author DongZeLiang + * @date 2024-03-29 + */ +public interface CartInfoService extends IService { + /** + * 查询购物车列表 + * + * @param cartInfo 购物车 + * @return 购物车集合 + */ + public List list(CartInfo cartInfo); + +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/ICartInfoService.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/ICartInfoService.java new file mode 100644 index 0000000..af553a0 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/ICartInfoService.java @@ -0,0 +1,62 @@ +package com.muyu.shop.cart.service; + +import com.muyu.shop.cart.domain.CartInfo; + +import java.util.List; + +/** + * 购物车Service接口 + * + * @author yuanjunzhe + * @date 2024-03-29 + */ +public interface ICartInfoService +{ + /** + * 查询购物车 + * + * @param id 购物车主键 + * @return 购物车 + */ + public CartInfo selectCartInfoById(Long id); + + /** + * 查询购物车列表 + * + * @param cartInfo 购物车 + * @return 购物车集合 + */ + public List selectCartInfoList(CartInfo cartInfo); + + /** + * 新增购物车 + * + * @param cartInfo 购物车 + * @return 结果 + */ + public int insertCartInfo(CartInfo cartInfo); + + /** + * 修改购物车 + * + * @param cartInfo 购物车 + * @return 结果 + */ + public int updateCartInfo(CartInfo cartInfo); + + /** + * 批量删除购物车 + * + * @param ids 需要删除的购物车主键集合 + * @return 结果 + */ + public int deleteCartInfoByIds(Long[] ids); + + /** + * 删除购物车信息 + * + * @param id 购物车主键 + * @return 结果 + */ + public int deleteCartInfoById(Long id); +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/impl/CartInfoServiceImpl.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/impl/CartInfoServiceImpl.java new file mode 100644 index 0000000..aad76a0 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/java/com/muyu/shop/cart/service/impl/CartInfoServiceImpl.java @@ -0,0 +1,61 @@ +package com.muyu.shop.cart.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.common.core.utils.ObjUtils; +import com.muyu.shop.cart.domain.CartInfo; +import com.muyu.shop.cart.mapper.CartInfoMapper; +import com.muyu.shop.cart.service.CartInfoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 购物车Service业务层处理 + * + * @author DongZeLiang + * @date 2024-03-29 + */ +@Slf4j +@Service +public class CartInfoServiceImpl extends ServiceImpl implements CartInfoService { + + /** + * 查询购物车列表 + * + * @param cartInfo 购物车 + * @return 购物车 + */ + @Override + public List list(CartInfo cartInfo) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + + + if (ObjUtils.notNull(cartInfo.getProjectId())){ + queryWrapper.eq(CartInfo::getProjectId, cartInfo.getProjectId()); + } + + if (ObjUtils.notNull(cartInfo.getProjectSku())){ + queryWrapper.eq(CartInfo::getProjectSku, cartInfo.getProjectSku()); + } + + if (ObjUtils.notNull(cartInfo.getUserId())){ + queryWrapper.eq(CartInfo::getUserId, cartInfo.getUserId()); + } + + if (ObjUtils.notNull(cartInfo.getNum())){ + queryWrapper.eq(CartInfo::getNum, cartInfo.getNum()); + } + + if (ObjUtils.notNull(cartInfo.getIsSelected())){ + queryWrapper.eq(CartInfo::getIsSelected, cartInfo.getIsSelected()); + } + + + + + + return list(queryWrapper); + } +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/banner.txt b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/banner.txt new file mode 100644 index 0000000..0dd5eee --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/banner.txt @@ -0,0 +1,2 @@ +Spring Boot Version: ${spring-boot.version} +Spring Application Name: ${spring.application.name} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/bootstrap.yml b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/bootstrap.yml new file mode 100644 index 0000000..f24139c --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/bootstrap.yml @@ -0,0 +1,28 @@ +# Tomcat +server: + port: 9506 + +# Spring +spring: + application: + # 应用名称 + name: muyu-shop-cart + profiles: + # 环境配置 + active: dev + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 124.221.192.127:8848 + config: + # 配置中心地址 + server-addr: 124.221.192.127:8848 + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} +logging: + level: + com.muyu.shop.cart.mapper: DEBUG diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/logback.xml b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/logback.xml new file mode 100644 index 0000000..aa340cd --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/logback.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + + + + + + + + + + + diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/mapper/shopCart/CartInfoMapper.xml b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/mapper/shopCart/CartInfoMapper.xml new file mode 100644 index 0000000..304219e --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-service/src/main/resources/mapper/shopCart/CartInfoMapper.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + select id, project_id, project_sku, user_id, num, is_selected, remark, create_by, create_time, update_by, update_time from cart_info + + diff --git a/muyu-modules/muyu-shop-cart/pom.xml b/muyu-modules/muyu-shop-cart/pom.xml new file mode 100644 index 0000000..091c7a4 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/pom.xml @@ -0,0 +1,25 @@ + + + 4.0.0 + + com.muyu + muyu-modules + 3.6.3 + + + muyu-shop-cart + pom + + muyu-shop-cart-remote + muyu-shop-cart-service + + + + 17 + 17 + UTF-8 + + + \ No newline at end of file diff --git a/muyu-modules/pom.xml b/muyu-modules/pom.xml index 760c5c2..24447f2 100644 --- a/muyu-modules/pom.xml +++ b/muyu-modules/pom.xml @@ -14,6 +14,7 @@ muyu-job muyu-file muyu-product + muyu-shop-cart muyu-modules diff --git a/pom.xml b/pom.xml index bd349cb..c5deebd 100644 --- a/pom.xml +++ b/pom.xml @@ -219,6 +219,25 @@ + + com.muyu + muyu-shop-cart-common + ${muyu.version} + + + + com.muyu + muyu-shop-cart-remote + ${muyu.version} + + + + com.muyu + muyu-common-cache + ${muyu.version} + + + @@ -228,7 +247,6 @@ muyu-visual muyu-modules muyu-common - muyu-common/muyu-common-cache pom @@ -245,6 +263,7 @@ org.apache.maven.plugins maven-compiler-plugin + 3.8.1 ${java.version} ${java.version} @@ -287,37 +306,4 @@ - - - releases - releases - http://nexus.muyu.com:8081/repository/maven-releases/ - - - - - - public - aliyun nexus - http://nexus.muyu.com:8081/repository/maven-public/ - - true - - - - - - - public - aliyun nexus - http://nexus.muyu.com:8081/repository/maven-public/ - - true - - - false - - - -