From 575eb0a8f826e52bda79e80772b7babf1e6b3cdd Mon Sep 17 00:00:00 2001 From: zhh Date: Mon, 6 Aug 2018 16:04:47 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=AD=E7=89=A9=E8=BD=A6=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/OmsCartItemController.java | 18 +++++++++++------- .../mall/portal/domain/MemberDetails.java | 4 ++++ .../mall/portal/service/UmsMemberService.java | 2 ++ .../service/impl/UmsMemberServiceImpl.java | 12 ++++++++++++ 4 files changed, 29 insertions(+), 7 deletions(-) diff --git a/mall-portal/src/main/java/com/macro/mall/portal/controller/OmsCartItemController.java b/mall-portal/src/main/java/com/macro/mall/portal/controller/OmsCartItemController.java index a75747b..12f2332 100644 --- a/mall-portal/src/main/java/com/macro/mall/portal/controller/OmsCartItemController.java +++ b/mall-portal/src/main/java/com/macro/mall/portal/controller/OmsCartItemController.java @@ -4,6 +4,7 @@ import com.macro.mall.model.OmsCartItem; import com.macro.mall.portal.domain.CartProduct; import com.macro.mall.portal.domain.CommonResult; import com.macro.mall.portal.service.OmsCartItemService; +import com.macro.mall.portal.service.UmsMemberService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -22,11 +23,14 @@ import java.util.List; public class OmsCartItemController { @Autowired private OmsCartItemService cartItemService; + @Autowired + private UmsMemberService memberService; @ApiOperation("添加商品到购物车") @RequestMapping(value = "/add", method = RequestMethod.POST) @ResponseBody public Object add(@RequestBody OmsCartItem cartItem) { + cartItem.setMemberId(memberService.getCurrentMember().getId()); int count = cartItemService.add(cartItem); if (count > 0) { return new CommonResult().success(count); @@ -35,10 +39,10 @@ public class OmsCartItemController { } @ApiOperation("获取某个会员的购物车列表") - @RequestMapping(value = "/list/{memberId}", method = RequestMethod.GET) + @RequestMapping(value = "/list", method = RequestMethod.GET) @ResponseBody - public Object list(@PathVariable Long memberId) { - List cartItemList = cartItemService.list(memberId); + public Object list() { + List cartItemList = cartItemService.list(memberService.getCurrentMember().getId()); return new CommonResult().success(cartItemList); } @@ -46,9 +50,8 @@ public class OmsCartItemController { @RequestMapping(value = "/update/quantity", method = RequestMethod.GET) @ResponseBody public Object updateQuantity(@RequestParam Long id, - @RequestParam Long memberId, @RequestParam Integer quantity) { - int count = cartItemService.updateQuantity(id,memberId,quantity); + int count = cartItemService.updateQuantity(id,memberService.getCurrentMember().getId(),quantity); if (count > 0) { return new CommonResult().success(count); } @@ -67,6 +70,7 @@ public class OmsCartItemController { @RequestMapping(value = "/update/attr", method = RequestMethod.POST) @ResponseBody public Object updateAttr(@RequestBody OmsCartItem cartItem) { + cartItem.setMemberId(memberService.getCurrentMember().getId()); int count = cartItemService.updateAttr(cartItem); if (count > 0) { return new CommonResult().success(count); @@ -77,8 +81,8 @@ public class OmsCartItemController { @ApiOperation("删除购物车中的某个商品") @RequestMapping(value = "/delete", method = RequestMethod.POST) @ResponseBody - public Object delete(@RequestParam Long memberId,@RequestParam("ids") List ids) { - int count = cartItemService.delete(memberId,ids); + public Object delete(@RequestParam("ids") List ids) { + int count = cartItemService.delete(memberService.getCurrentMember().getId(),ids); if (count > 0) { return new CommonResult().success(count); } diff --git a/mall-portal/src/main/java/com/macro/mall/portal/domain/MemberDetails.java b/mall-portal/src/main/java/com/macro/mall/portal/domain/MemberDetails.java index 5718757..ffca0d7 100644 --- a/mall-portal/src/main/java/com/macro/mall/portal/domain/MemberDetails.java +++ b/mall-portal/src/main/java/com/macro/mall/portal/domain/MemberDetails.java @@ -54,4 +54,8 @@ public class MemberDetails implements UserDetails { public boolean isEnabled() { return umsMember.getStatus()==1; } + + public UmsMember getUmsMember() { + return umsMember; + } } diff --git a/mall-portal/src/main/java/com/macro/mall/portal/service/UmsMemberService.java b/mall-portal/src/main/java/com/macro/mall/portal/service/UmsMemberService.java index ff7b8fe..8623ce5 100644 --- a/mall-portal/src/main/java/com/macro/mall/portal/service/UmsMemberService.java +++ b/mall-portal/src/main/java/com/macro/mall/portal/service/UmsMemberService.java @@ -30,4 +30,6 @@ public interface UmsMemberService { */ @Transactional CommonResult updatePassword(String telephone, String password, String authCode); + + UmsMember getCurrentMember(); } diff --git a/mall-portal/src/main/java/com/macro/mall/portal/service/impl/UmsMemberServiceImpl.java b/mall-portal/src/main/java/com/macro/mall/portal/service/impl/UmsMemberServiceImpl.java index b124473..e452376 100644 --- a/mall-portal/src/main/java/com/macro/mall/portal/service/impl/UmsMemberServiceImpl.java +++ b/mall-portal/src/main/java/com/macro/mall/portal/service/impl/UmsMemberServiceImpl.java @@ -7,9 +7,13 @@ import com.macro.mall.model.UmsMemberExample; import com.macro.mall.model.UmsMemberLevel; import com.macro.mall.model.UmsMemberLevelExample; import com.macro.mall.portal.domain.CommonResult; +import com.macro.mall.portal.domain.MemberDetails; import com.macro.mall.portal.service.UmsMemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.authentication.encoding.PasswordEncoder; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContext; +import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -96,4 +100,12 @@ public class UmsMemberServiceImpl implements UmsMemberService { return new CommonResult().success("密码修改成功",null); } + @Override + public UmsMember getCurrentMember() { + SecurityContext ctx = SecurityContextHolder.getContext(); + Authentication auth = ctx.getAuthentication(); + MemberDetails memberDetails = (MemberDetails) auth.getPrincipal(); + return memberDetails.getUmsMember(); + } + }