diff --git a/gulimall-common/src/main/java/com/forth/common/to/MemberPrice.java b/gulimall-common/src/main/java/com/forth/common/to/MemberPrice.java new file mode 100644 index 0000000000000000000000000000000000000000..02a3539a828da2ce10e29c2c3f4ba4914ab18f7d --- /dev/null +++ b/gulimall-common/src/main/java/com/forth/common/to/MemberPrice.java @@ -0,0 +1,21 @@ +/** + * Copyright 2019 bejson.com + */ +package com.forth.common.to; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class MemberPrice { + + private Long id; + private String name; + private BigDecimal price; + +} \ No newline at end of file diff --git a/gulimall-common/src/main/java/com/forth/common/to/SkuReductionTo.java b/gulimall-common/src/main/java/com/forth/common/to/SkuReductionTo.java new file mode 100644 index 0000000000000000000000000000000000000000..273a80975d11352d8ac551ce4218f5631f4ad9f0 --- /dev/null +++ b/gulimall-common/src/main/java/com/forth/common/to/SkuReductionTo.java @@ -0,0 +1,19 @@ +package com.forth.common.to; + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +@Data +public class SkuReductionTo { + + private Long skuId; + private int fullCount; + private BigDecimal discount; + private int countStatus; + private BigDecimal fullPrice; + private BigDecimal reducePrice; + private int priceStatus; + private List memberPrice; +} diff --git a/gulimall-common/src/main/java/com/forth/common/to/SpuBoundTo.java b/gulimall-common/src/main/java/com/forth/common/to/SpuBoundTo.java new file mode 100644 index 0000000000000000000000000000000000000000..b5950bbbe88ef07abea3c28205f0acc5cf95be19 --- /dev/null +++ b/gulimall-common/src/main/java/com/forth/common/to/SpuBoundTo.java @@ -0,0 +1,13 @@ +package com.forth.common.to; + +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class SpuBoundTo { + + private Long spuId; + private BigDecimal buyBounds; + private BigDecimal growBounds; +} diff --git a/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/controller/SkuFullReductionController.java b/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/controller/SkuFullReductionController.java index 9b480ad295cf790c152f7358e9a6700538760859..f8bbcef87a3d1a9170f8aab3c073603bbe03ce6b 100644 --- a/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/controller/SkuFullReductionController.java +++ b/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/controller/SkuFullReductionController.java @@ -4,12 +4,9 @@ import java.util.Arrays; import java.util.Map; //import org.apache.shiro.authz.annotation.RequiresPermissions; +import com.forth.common.to.SkuReductionTo; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.forth.gulimall.coupon.entity.SkuFullReductionEntity; import com.forth.gulimall.coupon.service.SkuFullReductionService; @@ -31,6 +28,13 @@ public class SkuFullReductionController { @Autowired private SkuFullReductionService skuFullReductionService; + @PostMapping("/saveinfo") + public R saveInfo(@RequestBody SkuReductionTo skuReductionTo){ + skuFullReductionService.saveSkuReduction(skuReductionTo); + return R.ok(); + } + + /** * 列表 */ diff --git a/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/controller/SpuBoundsController.java b/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/controller/SpuBoundsController.java index d47402e29c5f9e51361e45b419e4e00ab2c7c8f1..c27c7340325505026ce194e854f58a8938fc16e0 100644 --- a/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/controller/SpuBoundsController.java +++ b/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/controller/SpuBoundsController.java @@ -5,11 +5,7 @@ import java.util.Map; //import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.forth.gulimall.coupon.entity.SpuBoundsEntity; import com.forth.gulimall.coupon.service.SpuBoundsService; @@ -57,7 +53,7 @@ public class SpuBoundsController { /** * 保存 */ - @RequestMapping("/save") + @PostMapping("/save") //@RequiresPermissions("coupon:spubounds:save") public R save(@RequestBody SpuBoundsEntity spuBounds){ spuBoundsService.save(spuBounds); diff --git a/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/service/SkuFullReductionService.java b/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/service/SkuFullReductionService.java index 24041adea117a63870a8bf1c9491fa486854c136..5a6366fd7f2e82fe5f5c76bdf55a92ac2907a07f 100644 --- a/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/service/SkuFullReductionService.java +++ b/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/service/SkuFullReductionService.java @@ -1,6 +1,7 @@ package com.forth.gulimall.coupon.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.forth.common.to.SkuReductionTo; import com.forth.common.utils.PageUtils; import com.forth.gulimall.coupon.entity.SkuFullReductionEntity; @@ -16,5 +17,7 @@ import java.util.Map; public interface SkuFullReductionService extends IService { PageUtils queryPage(Map params); + + void saveSkuReduction(SkuReductionTo skuReductionTo); } diff --git a/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/service/impl/SkuFullReductionServiceImpl.java b/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/service/impl/SkuFullReductionServiceImpl.java index 4d3e4b02e58193bd6a01b957a2ffc8add24eb249..ecbca794c1da49b0a4809a259c5fa11e0196e7d7 100644 --- a/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/service/impl/SkuFullReductionServiceImpl.java +++ b/gulimall-coupon/src/main/java/com/forth/gulimall/coupon/service/impl/SkuFullReductionServiceImpl.java @@ -1,7 +1,20 @@ package com.forth.gulimall.coupon.service.impl; +import com.forth.common.to.MemberPrice; +import com.forth.common.to.SkuReductionTo; +import com.forth.gulimall.coupon.entity.MemberPriceEntity; +import com.forth.gulimall.coupon.entity.SkuLadderEntity; +import com.forth.gulimall.coupon.service.MemberPriceService; +import com.forth.gulimall.coupon.service.SkuLadderService; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + +import java.math.BigDecimal; +import java.util.List; import java.util.Map; +import java.util.stream.Collectors; + import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -16,6 +29,12 @@ import com.forth.gulimall.coupon.service.SkuFullReductionService; @Service("skuFullReductionService") public class SkuFullReductionServiceImpl extends ServiceImpl implements SkuFullReductionService { + @Autowired + private SkuLadderService skuLadderService; + + @Autowired + private MemberPriceService memberPriceService; + @Override public PageUtils queryPage(Map params) { IPage page = this.page( @@ -26,4 +45,41 @@ public class SkuFullReductionServiceImpl extends ServiceImplsms_sku_ladder\sms_sku_full_reduction\sms_member_price + //sms_sku_ladder + SkuLadderEntity skuLadderEntity = new SkuLadderEntity(); + skuLadderEntity.setSkuId(skuReductionTo.getSkuId()); + skuLadderEntity.setFullCount(skuReductionTo.getFullCount()); + skuLadderEntity.setDiscount(skuReductionTo.getDiscount()); + skuLadderEntity.setAddOther(skuReductionTo.getCountStatus()); + if (skuReductionTo.getFullCount()>0){ + skuLadderService.save(skuLadderEntity); + } + + //sms_sku_full_reduction + SkuFullReductionEntity reductionEntity = new SkuFullReductionEntity(); + BeanUtils.copyProperties(skuReductionTo,reductionEntity); + if (reductionEntity.getFullPrice().compareTo(new BigDecimal("0"))==1){ + this.save(reductionEntity); + } + + //sms_member_price + List memberPrice = skuReductionTo.getMemberPrice(); + List collect = memberPrice.stream().map(item -> { + MemberPriceEntity priceEntity = new MemberPriceEntity(); + priceEntity.setSkuId(skuReductionTo.getSkuId()); + priceEntity.setMemberLevelId(item.getId()); + priceEntity.setMemberLevelName(item.getName()); + priceEntity.setMemberPrice(item.getPrice()); + priceEntity.setAddOther(1); + return priceEntity; + }).filter(item->{ + return item.getMemberPrice().compareTo(new BigDecimal("0"))==1; + }).collect(Collectors.toList()); + + memberPriceService.saveBatch(collect); + } + } \ No newline at end of file diff --git a/gulimall-gateway/src/main/resources/application.yml b/gulimall-gateway/src/main/resources/application.yml index 5e1ec67c9173d15053589b6aba3c80b2c62defb9..93e099a7d8ad2c20e695fc338e1c0b6f4bce8693 100644 --- a/gulimall-gateway/src/main/resources/application.yml +++ b/gulimall-gateway/src/main/resources/application.yml @@ -32,7 +32,7 @@ spring: - Host=cart.gulimall.com - id: product_route - uri: lb://gulimall-product + uri: lb://product predicates: - Path=/api/product/** filters: @@ -45,6 +45,13 @@ spring: filters: - RewritePath=/api/thirdparty/(?/?.*), /$\{segment} + - id: member_route + uri: lb://member + predicates: + - Path=/api/member/** + filters: + - RewritePath=/api/(?/?.*), /$\{segment} + - id: admin_route uri: lb://renren-fast predicates: diff --git a/gulimall-product/pom.xml b/gulimall-product/pom.xml index d65cd4bbfe0ad23193a4fb66303ef05ac135d8ff..7b0a2bdce902ff291ab2db45f9916ad504f0ba08 100644 --- a/gulimall-product/pom.xml +++ b/gulimall-product/pom.xml @@ -52,11 +52,6 @@ - - - org.springframework.session - spring-session-data-redis - diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/GulimallProductApplication.java b/gulimall-product/src/main/java/com/forth/gulimall/product/GulimallProductApplication.java index dbcee2eeccfcc3d094d04d0b8843d0643becfcc1..0a71933549a46c7ed958a66cff32c9e5d502d283 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/GulimallProductApplication.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/GulimallProductApplication.java @@ -4,7 +4,9 @@ import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; +import org.springframework.cloud.openfeign.EnableFeignClients; +@EnableFeignClients(basePackages = "com.forth.gulimall.product.feign") @EnableDiscoveryClient @MapperScan("com.forth.gulimall.product.dao") @SpringBootApplication diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/AttrController.java b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/AttrController.java index 433b865c336f93bef0c453378c1e041186bff912..86be4098b6a591143caf00603edfaf9a956fe95c 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/AttrController.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/AttrController.java @@ -1,9 +1,12 @@ package com.forth.gulimall.product.controller; import java.util.Arrays; +import java.util.List; import java.util.Map; //import org.apache.shiro.authz.annotation.RequiresPermissions; +import com.forth.gulimall.product.entity.ProductAttrValueEntity; +import com.forth.gulimall.product.service.ProductAttrValueService; import com.forth.gulimall.product.vo.AttrGroupRelationVo; import com.forth.gulimall.product.vo.AttrRespVo; import com.forth.gulimall.product.vo.AttrVo; @@ -30,6 +33,15 @@ public class AttrController { @Autowired private AttrService attrService; + @Autowired + private ProductAttrValueService productAttrValueService; + + @GetMapping("/base/listforspu/{spuId}") + public R baseAttrlistforspu(@PathVariable("spuId") Long spuId){ + List entities = productAttrValueService.baseAttrlistforspu(spuId); + return R.ok().put("data",entities); + } + @GetMapping("/{attrType}/list/{catelogId}") public R baseAttrList(@RequestParam Map params, @PathVariable("attrType") String type, @@ -49,7 +61,6 @@ public class AttrController { return R.ok().put("page", page); } - /** * 信息 */ @@ -83,6 +94,13 @@ public class AttrController { return R.ok(); } + @PostMapping("/update/{spuId}") + public R updateSpuAttr(@PathVariable("spuId") Long spuId, + @RequestBody List entities){ + productAttrValueService.updateSpuAttr(spuId,entities); + return R.ok(); + } + /** * 删除 */ diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/AttrGroupController.java b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/AttrGroupController.java index 45788af32c8f2b57748dd8e408b72ee759792c1a..61ba20e57bfaea5efe1f61efb73f98984c2772e6 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/AttrGroupController.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/AttrGroupController.java @@ -10,6 +10,7 @@ import com.forth.gulimall.product.service.AttrAttrgroupRelationService; import com.forth.gulimall.product.service.AttrService; import com.forth.gulimall.product.service.CategoryService; import com.forth.gulimall.product.vo.AttrGroupRelationVo; +import com.forth.gulimall.product.vo.AttrGroupWithAttrsVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -42,12 +43,31 @@ public class AttrGroupController { @Autowired private AttrAttrgroupRelationService relationService; + /** + * + * @param vos + * @return + */ @PostMapping("/attr/relation") public R addRelation(@RequestBody List vos){ relationService.saveBatch(vos); return R.ok(); } + @GetMapping("/{catelogId}/withattr") + public R getAttrGroupWithAttrs(@PathVariable("catelogId") Long catelogId){ + + //1.查出当前分类下的所有属性分组 + //2.查出每个属性分组的所有属性 + List vos = attrGroupService.getAttrGroupWithAttrsByCatelogId(catelogId); + return R.ok().put("data",vos); + } + + /** + * + * @param attrgroupId + * @return + */ @GetMapping("/{attrgroupId}/attr/relation") public R attrRelation(@PathVariable("attrgroupId") Long attrgroupId){ List entities = attrService.getRelationAttr(attrgroupId); diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/CategoryBrandRelationController.java b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/CategoryBrandRelationController.java index 3f61dae5386ba9cfe9ebb57431c9aecc58177051..faa04cb175341905f358ca09bc2eebe81bcd7686 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/CategoryBrandRelationController.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/CategoryBrandRelationController.java @@ -3,9 +3,12 @@ package com.forth.gulimall.product.controller; import java.util.Arrays; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; //import org.apache.shiro.authz.annotation.RequiresPermissions; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.forth.gulimall.product.entity.BrandEntity; +import com.forth.gulimall.product.vo.BrandVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -41,6 +44,19 @@ public class CategoryBrandRelationController { return R.ok().put("data", data); } + @GetMapping("/brands/list") + public R relationBrandsList(@RequestParam(value = "catId",required = true) Long catId){ + List vos = categoryBrandRelationService.getBrandsByCatId(catId); + List collect = vos.stream().map(item -> { + BrandVo brandVo = new BrandVo(); + brandVo.setBrandId(item.getBrandId()); + brandVo.setBrandName(item.getName()); + return brandVo; + }).collect(Collectors.toList()); + return R.ok().put("data",collect); + } + + /** * 列表 */ diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/SkuInfoController.java b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/SkuInfoController.java index 14f36e3ba86b375d0e80c9ba053a7fd95ace097f..d057c278d0038ff8ca1ae281f6a98d6dd8e5a2ff 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/SkuInfoController.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/SkuInfoController.java @@ -37,7 +37,7 @@ public class SkuInfoController { @RequestMapping("/list") //@RequiresPermissions("product:skuinfo:list") public R list(@RequestParam Map params){ - PageUtils page = skuInfoService.queryPage(params); + PageUtils page = skuInfoService.queryPageByCondition(params); return R.ok().put("page", page); } diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/SpuInfoController.java b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/SpuInfoController.java index 221a976720e123aaaefcde6a9ee4a30e75e9d917..36994d95a563a297097eece93950ac89669dfea7 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/controller/SpuInfoController.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/controller/SpuInfoController.java @@ -4,6 +4,7 @@ import java.util.Arrays; import java.util.Map; //import org.apache.shiro.authz.annotation.RequiresPermissions; +import com.forth.gulimall.product.vo.SpuSaveVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; @@ -37,7 +38,7 @@ public class SpuInfoController { @RequestMapping("/list") //@RequiresPermissions("product:spuinfo:list") public R list(@RequestParam Map params){ - PageUtils page = spuInfoService.queryPage(params); + PageUtils page = spuInfoService.queryPageByCondition(params); return R.ok().put("page", page); } @@ -59,8 +60,8 @@ public class SpuInfoController { */ @RequestMapping("/save") //@RequiresPermissions("product:spuinfo:save") - public R save(@RequestBody SpuInfoEntity spuInfo){ - spuInfoService.save(spuInfo); + public R save(@RequestBody SpuSaveVo vo){ + spuInfoService.saveSpuInfo(vo); return R.ok(); } diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/entity/SpuInfoDescEntity.java b/gulimall-product/src/main/java/com/forth/gulimall/product/entity/SpuInfoDescEntity.java index b8a360732c291a4ee78b83485dc4390db507e42c..9162e9abc5203245096be028a5acb1599e6fbab1 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/entity/SpuInfoDescEntity.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/entity/SpuInfoDescEntity.java @@ -1,5 +1,6 @@ package com.forth.gulimall.product.entity; +import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -22,7 +23,7 @@ public class SpuInfoDescEntity implements Serializable { /** * 商品id */ - @TableId + @TableId(type = IdType.INPUT) private Long spuId; /** * 商品介绍 diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/feign/CouponFeignService.java b/gulimall-product/src/main/java/com/forth/gulimall/product/feign/CouponFeignService.java new file mode 100644 index 0000000000000000000000000000000000000000..7ca6a4845995a9103d4e30f8a4b332db6ee2566e --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/feign/CouponFeignService.java @@ -0,0 +1,18 @@ +package com.forth.gulimall.product.feign; + +import com.forth.common.to.SkuReductionTo; +import com.forth.common.to.SpuBoundTo; +import com.forth.common.utils.R; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +@FeignClient("coupon") +public interface CouponFeignService { + + @PostMapping("/coupon/spubounds/save") + R saveSpuBounds(@RequestBody SpuBoundTo spuBoundTo); + + @PostMapping("/coupon/skufullreduction/saveinfo") + R saveSkuReduction(@RequestBody SkuReductionTo skuReductionTo); +} diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/AttrGroupService.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/AttrGroupService.java index e8bbeacd36b3fc46b99e05a862d853a7f8a4c855..a59f86ad91c2ae9ad2172615e50fab3b6cba143a 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/AttrGroupService.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/AttrGroupService.java @@ -3,7 +3,9 @@ package com.forth.gulimall.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.forth.common.utils.PageUtils; import com.forth.gulimall.product.entity.AttrGroupEntity; +import com.forth.gulimall.product.vo.AttrGroupWithAttrsVo; +import java.util.List; import java.util.Map; /** @@ -19,5 +21,6 @@ public interface AttrGroupService extends IService { PageUtils queryPage(Map params, Long catelogId); + List getAttrGroupWithAttrsByCatelogId(Long catelogId); } diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/CategoryBrandRelationService.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/CategoryBrandRelationService.java index 0c348cfce0cfaa92e772732cd29dc922fa19c0fb..b7cb1e15497a74ac6730183e9414a432844bab0c 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/CategoryBrandRelationService.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/CategoryBrandRelationService.java @@ -2,8 +2,10 @@ package com.forth.gulimall.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.forth.common.utils.PageUtils; +import com.forth.gulimall.product.entity.BrandEntity; import com.forth.gulimall.product.entity.CategoryBrandRelationEntity; +import java.util.List; import java.util.Map; /** @@ -22,5 +24,7 @@ public interface CategoryBrandRelationService extends IService getBrandsByCatId(Long catId); } diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/ProductAttrValueService.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/ProductAttrValueService.java index aa55f4faa34c67eb569938e2d4d4c7c0c675ca20..fd35d57828504ca2676dc4bee86e9a5480d2d501 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/ProductAttrValueService.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/ProductAttrValueService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.forth.common.utils.PageUtils; import com.forth.gulimall.product.entity.ProductAttrValueEntity; +import java.util.List; import java.util.Map; /** @@ -16,5 +17,11 @@ import java.util.Map; public interface ProductAttrValueService extends IService { PageUtils queryPage(Map params); + + void saveProductAttr(List collect); + + List baseAttrlistforspu(Long spuId); + + void updateSpuAttr(Long spuId, List entities); } diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/SkuInfoService.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/SkuInfoService.java index 9812dafe84e4f321d7eb982d25113dbf7abc411e..829cbb43d3092d3617471e5e9e9af70db4a2a07e 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/SkuInfoService.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/SkuInfoService.java @@ -16,5 +16,9 @@ import java.util.Map; public interface SkuInfoService extends IService { PageUtils queryPage(Map params); + + void saveSkuInfo(SkuInfoEntity skuInfoEntity); + + PageUtils queryPageByCondition(Map params); } diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuImagesService.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuImagesService.java index 1a976c88555a0a530daa3c0949a18994f866bd2c..994638803f5c6047e81cb38055a08cfee58143f6 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuImagesService.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuImagesService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.forth.common.utils.PageUtils; import com.forth.gulimall.product.entity.SpuImagesEntity; +import java.util.List; import java.util.Map; /** @@ -16,5 +17,7 @@ import java.util.Map; public interface SpuImagesService extends IService { PageUtils queryPage(Map params); + + void saveImages(Long id, List images); } diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuInfoDescService.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuInfoDescService.java index bdd86c9303776126da0a8a1186424a34f75056e0..c11ef90a8199bb8f62d9f3c22374bb69d0ceebf0 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuInfoDescService.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuInfoDescService.java @@ -16,5 +16,8 @@ import java.util.Map; public interface SpuInfoDescService extends IService { PageUtils queryPage(Map params); + + void saveSpuInfoDesc(SpuInfoDescEntity descEntity); + } diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuInfoService.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuInfoService.java index e3b5f21b480af189eb0c656c129605083d3cf125..5cdafea1927452e650ca03ac9c4d2f9917d1739b 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuInfoService.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/SpuInfoService.java @@ -2,7 +2,9 @@ package com.forth.gulimall.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.forth.common.utils.PageUtils; +import com.forth.gulimall.product.entity.SpuInfoDescEntity; import com.forth.gulimall.product.entity.SpuInfoEntity; +import com.forth.gulimall.product.vo.SpuSaveVo; import java.util.Map; @@ -16,5 +18,11 @@ import java.util.Map; public interface SpuInfoService extends IService { PageUtils queryPage(Map params); + + void saveSpuInfo(SpuSaveVo vo); + + void saveBaseSpuInfo(SpuInfoEntity infoEntity); + + PageUtils queryPageByCondition(Map params); } diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/AttrGroupServiceImpl.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/AttrGroupServiceImpl.java index 427829a3fb093fc77f053438acb4a61c2190869f..b39d0b6322df80eba563619ac58106f271b962f3 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/AttrGroupServiceImpl.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/AttrGroupServiceImpl.java @@ -1,7 +1,16 @@ package com.forth.gulimall.product.service.impl; +import com.forth.gulimall.product.entity.AttrEntity; +import com.forth.gulimall.product.service.AttrService; +import com.forth.gulimall.product.vo.AttrGroupWithAttrsVo; +import org.springframework.beans.BeanUtils; +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; + import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -17,6 +26,9 @@ import org.springframework.util.StringUtils; @Service("attrGroupService") public class AttrGroupServiceImpl extends ServiceImpl implements AttrGroupService { + @Autowired + private AttrService attrService; + @Override public PageUtils queryPage(Map params) { IPage page = this.page( @@ -47,4 +59,24 @@ public class AttrGroupServiceImpl extends ServiceImpl getAttrGroupWithAttrsByCatelogId(Long catelogId) { + //1.查询分组信息 + List attrGroupEntities = this.list(new QueryWrapper().eq("catelog_id", catelogId)); + //2.查询所有属性 + List collect = attrGroupEntities.stream().map(group -> { + AttrGroupWithAttrsVo attrsVo = new AttrGroupWithAttrsVo(); + BeanUtils.copyProperties(group,attrsVo); + List attrs = attrService.getRelationAttr(attrsVo.getAttrGroupId()); + attrsVo.setAttrs(attrs); + return attrsVo; + }).collect(Collectors.toList()); + return collect; + } + } \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/CategoryBrandRelationServiceImpl.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/CategoryBrandRelationServiceImpl.java index 000bd66cd4b980ce7afafee3c423327d7f2d0e34..e8d65930b2b349c6f690c1872490f5a975494e2a 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/CategoryBrandRelationServiceImpl.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/CategoryBrandRelationServiceImpl.java @@ -5,9 +5,14 @@ import com.forth.gulimall.product.dao.BrandDao; import com.forth.gulimall.product.dao.CategoryDao; import com.forth.gulimall.product.entity.BrandEntity; import com.forth.gulimall.product.entity.CategoryEntity; +import com.forth.gulimall.product.service.BrandService; 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; + import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -28,6 +33,12 @@ public class CategoryBrandRelationServiceImpl extends ServiceImpl params) { IPage page = this.page( @@ -65,4 +76,16 @@ public class CategoryBrandRelationServiceImpl extends ServiceImpl getBrandsByCatId(Long catId) { + List catelogId = relationDao.selectList(new QueryWrapper().eq("catelog_id", catId)); + List collect = catelogId.stream().map(item -> { + Long brandId = item.getBrandId(); + BrandEntity byId = brandService.getById(brandId); + return byId; + }).collect(Collectors.toList()); + return collect; + + } + } \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/ProductAttrValueServiceImpl.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/ProductAttrValueServiceImpl.java index c3cfe3c80d660eb30c01610d669d9c30386dc956..486f2ec47bee20c6b553f17d5c42ee5ab8cb85f6 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/ProductAttrValueServiceImpl.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/ProductAttrValueServiceImpl.java @@ -1,7 +1,11 @@ package com.forth.gulimall.product.service.impl; import org.springframework.stereotype.Service; + +import java.util.List; import java.util.Map; +import java.util.stream.Collectors; + import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,6 +15,7 @@ import com.forth.common.utils.Query; import com.forth.gulimall.product.dao.ProductAttrValueDao; import com.forth.gulimall.product.entity.ProductAttrValueEntity; import com.forth.gulimall.product.service.ProductAttrValueService; +import org.springframework.transaction.annotation.Transactional; @Service("productAttrValueService") @@ -26,4 +31,39 @@ public class ProductAttrValueServiceImpl extends ServiceImpl collect) { + this.saveBatch(collect); + } + + @Override + public List baseAttrlistforspu(Long spuId) { + List entities = this.baseMapper.selectList(new QueryWrapper().eq("spu_id", spuId)); + return entities; + } + + @Transactional + @Override + public void updateSpuAttr(Long spuId, List entities) { + //1.删除这个spuId之前对应的所有属性 + this.baseMapper.delete(new QueryWrapper().eq("spu_id",spuId)); + + List collect = entities.stream().map(item -> { + item.setSpuId(spuId); + return item; + }).collect(Collectors.toList()); + this.saveBatch(collect); + } + + + + + + + + + + + + } \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SkuInfoServiceImpl.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SkuInfoServiceImpl.java index c5f33ca744e3b43e7de853d8b70b4f5fe0369cd7..89e2b8c968c43c3c32133977dc8180c9f881267b 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SkuInfoServiceImpl.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SkuInfoServiceImpl.java @@ -1,6 +1,8 @@ package com.forth.gulimall.product.service.impl; import org.springframework.stereotype.Service; + +import java.math.BigDecimal; import java.util.Map; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -11,6 +13,7 @@ import com.forth.common.utils.Query; import com.forth.gulimall.product.dao.SkuInfoDao; import com.forth.gulimall.product.entity.SkuInfoEntity; import com.forth.gulimall.product.service.SkuInfoService; +import org.springframework.util.StringUtils; @Service("skuInfoService") @@ -26,4 +29,54 @@ public class SkuInfoServiceImpl extends ServiceImpl i return new PageUtils(page); } + @Override + public void saveSkuInfo(SkuInfoEntity skuInfoEntity) { + this.baseMapper.insert(skuInfoEntity); + } + + @Override + public PageUtils queryPageByCondition(Map params) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + + String key = (String) params.get("key"); + if (!StringUtils.isEmpty(key)){ + queryWrapper.and((wrapper)->{ + wrapper.eq("sku_id",key).or().like("sku_name",key); + }); + } + + String catelogId = (String) params.get("catelogId"); + if (!StringUtils.isEmpty(catelogId) && !"0".equalsIgnoreCase(catelogId)){ + queryWrapper.eq("catalog_id",catelogId); + } + + String brandId = (String) params.get("brandId"); + if (!StringUtils.isEmpty(brandId) && !"0".equalsIgnoreCase(brandId)){ + queryWrapper.eq("brand_id",brandId); + } + + String min = (String) params.get("min"); + if (!StringUtils.isEmpty(min)){ + queryWrapper.ge("price",min); + } + + String max = (String) params.get("max"); + if (!StringUtils.isEmpty(max)){ + try { + BigDecimal bigDecimal = new BigDecimal(max); + if (bigDecimal.compareTo(new BigDecimal("0"))==1){ + queryWrapper.le("price",max); + } + }catch (Exception e){ + + } + } + + IPage page = this.page( + new Query().getPage(params), + queryWrapper + ); + return new PageUtils(page); + } + } \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SpuImagesServiceImpl.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SpuImagesServiceImpl.java index 273f6853de4a7074e50cf0a005c268b9bfc3f0c9..535b47f2441bb31eccae2d3055b266ce75a7011d 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SpuImagesServiceImpl.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SpuImagesServiceImpl.java @@ -1,7 +1,11 @@ package com.forth.gulimall.product.service.impl; import org.springframework.stereotype.Service; + +import java.util.List; import java.util.Map; +import java.util.stream.Collectors; + import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -26,4 +30,20 @@ public class SpuImagesServiceImpl extends ServiceImpl images) { + if (images == null || images.size() == 0){ + + }else { + List collect = images.stream().map(img -> { + SpuImagesEntity spuImagesEntity = new SpuImagesEntity(); + spuImagesEntity.setSpuId(id); + spuImagesEntity.setImgUrl(img); + return spuImagesEntity; + }).collect(Collectors.toList()); + + this.saveBatch(collect); + } + } + } \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SpuInfoDescServiceImpl.java b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SpuInfoDescServiceImpl.java index 153e0f76d7d9726969d1185ef8f68967f41fe49c..e9e9476661a975e5cc74212c2d70cce803a15601 100644 --- a/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SpuInfoDescServiceImpl.java +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/service/impl/SpuInfoDescServiceImpl.java @@ -26,4 +26,9 @@ public class SpuInfoDescServiceImpl extends ServiceImpl implements SpuInfoService { + @Autowired + private SpuInfoDescService spuInfoDescService; + + @Autowired + private SpuImagesService imagesService; + + @Autowired + private AttrService attrService; + + @Autowired + private ProductAttrValueService attrValueService; + + @Autowired + private SkuInfoService skuInfoService; + + @Autowired + private SkuImagesService skuImagesService; + + @Autowired + private SkuSaleAttrValueService skuSaleAttrValueService; + + @Autowired + private CouponFeignService couponFeignService; + @Override public PageUtils queryPage(Map params) { IPage page = this.page( @@ -26,4 +65,157 @@ public class SpuInfoServiceImpl extends ServiceImpl i return new PageUtils(page); } + /** + * //TODO 高级部分完善 + * @param vo + */ + @Transactional + @Override + public void saveSpuInfo(SpuSaveVo vo) { + + //1.保存spu基本信息 pms_spu_info + SpuInfoEntity infoEntity = new SpuInfoEntity(); + BeanUtils.copyProperties(vo,infoEntity); + infoEntity.setCreateTime(new Date()); + infoEntity.setUpdateTime(new Date()); + this.saveBaseSpuInfo(infoEntity); + + //2.保存spu的描述图片 pms_spu_info_desc + List decript = vo.getDecript(); + SpuInfoDescEntity descEntity = new SpuInfoDescEntity(); + descEntity.setSpuId(infoEntity.getId()); + descEntity.setDecript(String.join(",",decript)); + spuInfoDescService.saveSpuInfoDesc(descEntity); + + //3.保存spu的图片集 pms_spu_images + List images = vo.getImages(); + imagesService.saveImages(infoEntity.getId(),images); + + //4.保存spu的规格参数 pms_product_attr_value + List baseAttrs = vo.getBaseAttrs(); + List collect = baseAttrs.stream().map(attr -> { + ProductAttrValueEntity valueEntity = new ProductAttrValueEntity(); + valueEntity.setAttrId(attr.getAttrId()); + AttrEntity id = attrService.getById(attr.getAttrId()); + valueEntity.setAttrName(id.getAttrName()); + valueEntity.setAttrValue(attr.getAttrValues()); + valueEntity.setQuickShow(attr.getShowDesc()); + valueEntity.setSpuId(infoEntity.getId()); + return valueEntity; + }).collect(Collectors.toList()); + attrValueService.saveProductAttr(collect); + + //5.保存spu的积分信息 gulimall_sms->sms_spu_bounds + Bounds bounds = vo.getBounds(); + SpuBoundTo spuBoundTo = new SpuBoundTo(); + BeanUtils.copyProperties(bounds,spuBoundTo); + spuBoundTo.setSpuId(infoEntity.getId()); + R r = couponFeignService.saveSpuBounds(spuBoundTo); + if (r.getCode()==0){ + log.error("远程保存spu积分信息失败"); + } + + //6.保存当前spu对应的所有sku信息 + List skus = vo.getSkus(); + if (skus!=null && skus.size()>0){ + skus.forEach(item->{ + String defaultImg = ""; + for (Images image : item.getImages()) { + if (image.getDefaultImg() == 1){ + defaultImg = image.getImgUrl(); + } + } + SkuInfoEntity skuInfoEntity = new SkuInfoEntity(); + BeanUtils.copyProperties(item,skuInfoEntity); + skuInfoEntity.setBrandId(infoEntity.getBrandId()); + skuInfoEntity.setCatalogId(infoEntity.getCatalogId()); + skuInfoEntity.setSaleCount(0L); + skuInfoEntity.setSpuId(infoEntity.getId()); + skuInfoEntity.setSkuDefaultImg(defaultImg); + //6.1)sku的基本信息 pms_sku_info + skuInfoService.saveSkuInfo(skuInfoEntity); + + Long skuId = skuInfoEntity.getSkuId(); + + List imagesEntities = item.getImages().stream().map(img -> { + SkuImagesEntity skuImagesEntity = new SkuImagesEntity(); + skuImagesEntity.setSkuId(skuId); + skuImagesEntity.setImgUrl(img.getImgUrl()); + skuImagesEntity.setDefaultImg(img.getDefaultImg()); + return skuImagesEntity; + }).filter(entity->{ + //返回true需要,false去除 + return !StringUtils.isEmpty(entity.getImgUrl()); + }).collect(Collectors.toList()); + + //6.2)sku的图片信息 pms_sku_images + skuImagesService.saveBatch(imagesEntities); + + //6.3)sku的销售属性 pms_sku_sale_attr_value + List attr = item.getAttr(); + List skuSaleAttrValueEntities = attr.stream().map(a -> { + SkuSaleAttrValueEntity attrValueEntity = new SkuSaleAttrValueEntity(); + BeanUtils.copyProperties(a, attrValueEntity); + attrValueEntity.setSkuId(skuId); + return attrValueEntity; + }).collect(Collectors.toList()); + skuSaleAttrValueService.saveBatch(skuSaleAttrValueEntities); + + //6.4)sku的优惠 gulimall_sms->sms_sku_ladder\sms_sku_full_reduction\sms_member_price + SkuReductionTo skuReductionTo = new SkuReductionTo(); + BeanUtils.copyProperties(item,skuReductionTo); + skuReductionTo.setSkuId(skuId); + if (skuReductionTo.getFullCount()>0 && skuReductionTo.getFullPrice().compareTo(new BigDecimal("0"))==1){ + R r1 = couponFeignService.saveSkuReduction(skuReductionTo); + if (r1.getCode()==0){ + log.error("远程保存spu优惠信息失败"); + } + } + }); + } + + + + + + } + + @Override + public void saveBaseSpuInfo(SpuInfoEntity infoEntity) { + this.baseMapper.insert(infoEntity); + } + + @Override + public PageUtils queryPageByCondition(Map params) { + QueryWrapper wrapper = new QueryWrapper<>(); + + String key = (String) params.get("key"); + if (!StringUtils.isEmpty(key)){ + wrapper.and((w)->{ + w.eq("id",key).or().like("spu_name",key); + }); + } + + String status = (String) params.get("status"); + if (!StringUtils.isEmpty(status)){ + wrapper.eq("publish_status",status); + } + + String brandId = (String) params.get("brandId"); + if (!StringUtils.isEmpty(brandId) && !"0".equalsIgnoreCase(brandId)){ + wrapper.eq("brand_id",brandId); + } + String catelogId = (String) params.get("catelogId"); + if (!StringUtils.isEmpty(catelogId) && !"0".equalsIgnoreCase(catelogId)){ + wrapper.eq("catalog_id",catelogId); + } + IPage page = this.page( + new Query().getPage(params), + wrapper + ); + + return new PageUtils(page); + } + + } \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Attr.java b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Attr.java new file mode 100644 index 0000000000000000000000000000000000000000..a5dc01aa6641bc73deff4b52adb2bea6d9ae274e --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Attr.java @@ -0,0 +1,19 @@ +/** + * Copyright 2019 bejson.com + */ +package com.forth.gulimall.product.vo; + +import lombok.Data; + +/** + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class Attr { + + private Long attrId; + private String attrName; + private String attrValue; + +} \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/vo/AttrGroupWithAttrsVo.java b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/AttrGroupWithAttrsVo.java new file mode 100644 index 0000000000000000000000000000000000000000..db85caabee9bf1c5a5ffa89ebfb0db806f191bf0 --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/AttrGroupWithAttrsVo.java @@ -0,0 +1,38 @@ +package com.forth.gulimall.product.vo; + + +import com.forth.gulimall.product.entity.AttrEntity; +import lombok.Data; + +import java.util.List; + +@Data +public class AttrGroupWithAttrsVo { + + /** + * 分组id + */ + private Long attrGroupId; + /** + * 组名 + */ + private String attrGroupName; + /** + * 排序 + */ + private Integer sort; + /** + * 描述 + */ + private String descript; + /** + * 组图标 + */ + private String icon; + /** + * 所属分类id + */ + private Long catelogId; + + private List attrs; +} diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/vo/BaseAttrs.java b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/BaseAttrs.java new file mode 100644 index 0000000000000000000000000000000000000000..f5fb0b6617b82686ed97a3bdb9cdcebce9496691 --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/BaseAttrs.java @@ -0,0 +1,21 @@ +/** + * Copyright 2019 bejson.com + */ +package com.forth.gulimall.product.vo; + +import lombok.Data; + +/** + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class BaseAttrs { + + private Long attrId; + private String attrValues; + private int showDesc; + + + +} \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Bounds.java b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Bounds.java new file mode 100644 index 0000000000000000000000000000000000000000..101a260f70b35614887243217cc0be58ed86abef --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Bounds.java @@ -0,0 +1,21 @@ +/** + * Copyright 2019 bejson.com + */ +package com.forth.gulimall.product.vo; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class Bounds { + + private BigDecimal buyBounds; + private BigDecimal growBounds; + + +} \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/vo/BrandVo.java b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/BrandVo.java new file mode 100644 index 0000000000000000000000000000000000000000..8dbe49224c8bc3ffc2e5342935ea34590afe6063 --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/BrandVo.java @@ -0,0 +1,16 @@ +package com.forth.gulimall.product.vo; + +import lombok.Data; + +@Data +public class BrandVo { + + /** + * brandId:0 + * brandName:"string" + */ + + private Long brandId; + + private String brandName; +} diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Images.java b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Images.java new file mode 100644 index 0000000000000000000000000000000000000000..2a8ab29d3f4c690f40f5828d12f4ef73fb4d0923 --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Images.java @@ -0,0 +1,19 @@ +/** + * Copyright 2019 bejson.com + */ +package com.forth.gulimall.product.vo; + +import lombok.Data; + +/** + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class Images { + + private String imgUrl; + private int defaultImg; + + +} \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/vo/MemberPrice.java b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/MemberPrice.java new file mode 100644 index 0000000000000000000000000000000000000000..503f82c5856084dd44a1f831366650a37fd6d7ac --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/MemberPrice.java @@ -0,0 +1,21 @@ +/** + * Copyright 2019 bejson.com + */ +package com.forth.gulimall.product.vo; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class MemberPrice { + + private Long id; + private String name; + private BigDecimal price; + +} \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Skus.java b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Skus.java new file mode 100644 index 0000000000000000000000000000000000000000..b65885fbfe8c2102a84b5630f34b62f4c48a6c8f --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/Skus.java @@ -0,0 +1,33 @@ +/** + * Copyright 2019 bejson.com + */ +package com.forth.gulimall.product.vo; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +/** + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class Skus { + + private List attr; + private String skuName; + private BigDecimal price; + private String skuTitle; + private String skuSubtitle; + private List images; + private List descar; + private int fullCount; + private BigDecimal discount; + private int countStatus; + private BigDecimal fullPrice; + private BigDecimal reducePrice; + private int priceStatus; + private List memberPrice; + + +} \ No newline at end of file diff --git a/gulimall-product/src/main/java/com/forth/gulimall/product/vo/SpuSaveVo.java b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/SpuSaveVo.java new file mode 100644 index 0000000000000000000000000000000000000000..9ec49e5cb225133e4f9a7d78a0459c20c1c12cf3 --- /dev/null +++ b/gulimall-product/src/main/java/com/forth/gulimall/product/vo/SpuSaveVo.java @@ -0,0 +1,32 @@ +/** + * Copyright 2019 bejson.com + */ +package com.forth.gulimall.product.vo; + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +/** + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class SpuSaveVo { + + private String spuName; + private String spuDescription; + private Long catalogId; + private Long brandId; + private BigDecimal weight; + private int publishStatus; + private List decript; + private List images; + private Bounds bounds; + private List baseAttrs; + private List skus; + + + +} \ No newline at end of file diff --git a/gulimall-product/src/main/resources/application.yml b/gulimall-product/src/main/resources/application.yml index 6bcb286a0cb56922b39556b7c1a16a23b493e40f..d6f463cd17623cb09c4d97c980f8c549727c8a37 100644 --- a/gulimall-product/src/main/resources/application.yml +++ b/gulimall-product/src/main/resources/application.yml @@ -17,6 +17,9 @@ spring: endpoint: oss-cn-beijing.aliyuncs.com application: name: product + jackson: + date-format: yyyy-MM-dd HH:mm:ss + mybatis-plus: mapper-locations: classpath:/mapper/**/*.xml global-config: diff --git a/renren-fast/src/main/resources/application.yml b/renren-fast/src/main/resources/application.yml index 98b588d5b865d0e2617d32b0e9cf3003a3c6d364..6c4055d5a6479a339fed0d8eda4b240df487d051 100644 --- a/renren-fast/src/main/resources/application.yml +++ b/renren-fast/src/main/resources/application.yml @@ -42,7 +42,7 @@ spring: cloud: nacos: discovery: - server-addr: 39.97.249.66:8848 + server-addr: 127.0.0.1:8848 # resources: # add-mappings: false