diff --git a/mall-admin/pom.xml b/mall-admin/pom.xml index b25093a..b6422fd 100644 --- a/mall-admin/pom.xml +++ b/mall-admin/pom.xml @@ -66,7 +66,6 @@ org.projectlombok lombok true - 1.18.20 @@ -97,6 +96,7 @@ 2.3.1 + diff --git a/mall-dao/src/main/java/com/buy507/mall/model/PmsProduct.java b/mall-dao/src/main/java/com/buy507/mall/model/PmsProduct.java index 6e345a2..96d86d5 100644 --- a/mall-dao/src/main/java/com/buy507/mall/model/PmsProduct.java +++ b/mall-dao/src/main/java/com/buy507/mall/model/PmsProduct.java @@ -188,6 +188,9 @@ public class PmsProduct implements Serializable { @ApiModelProperty(value = "会员中心:1->店长; 2->代理; 3->市代理") private Integer vipCenter; + + @ApiModelProperty(value = "商品积分价格") + private Integer intergrationPrice; public List getProductAttribute() { @@ -661,6 +664,10 @@ public class PmsProduct implements Serializable { public void setVipCenter(Integer vipCenter) {this.vipCenter = vipCenter;} + public Integer getintergrationPrice() {return intergrationPrice;} + + public void setIntergrationPrice(Integer intergrationPrice) {this.intergrationPrice = intergrationPrice;} + @Override public String toString() { StringBuilder sb = new StringBuilder(); diff --git a/mall-portal/src/main/java/com/buy507/mall/portal/controller/VipCenterController.java b/mall-portal/src/main/java/com/buy507/mall/portal/controller/VipCenterController.java new file mode 100644 index 0000000..f72f46c --- /dev/null +++ b/mall-portal/src/main/java/com/buy507/mall/portal/controller/VipCenterController.java @@ -0,0 +1,143 @@ +package com.buy507.mall.portal.controller; + +import com.buy507.mall.common.api.CommonResult; +import com.buy507.mall.mapper.OmsOrderMapper; +import com.buy507.mall.mapper.PmsProductMapper; +import com.buy507.mall.mapper.UmsMemberMapper; +import com.buy507.mall.model.OmsOrder; +import com.buy507.mall.model.UmsMember; +import com.buy507.mall.portal.service.OmsPortalOrderService; +import com.buy507.mall.portal.service.UmsMemberService; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + + + +/** + * ClassName:VipCenterController + * Description: + * + * @Author axin + * @Create 2025/2/19 11:09 + * @Version 1.0 + */ + +@Controller +@Api(tags = "VipCenterController", description = "会员中心") +@RequestMapping("/vipCenter") +public class VipCenterController { + @Autowired + private UmsMemberMapper memberMapper; + + @Autowired + private UmsMemberService memberService; + + + + @Autowired + private OmsOrderMapper orderMapper; + + //店长升级金额 + @Value("${storeManagerAmount}") + private BigDecimal storeManagerAmount; + + //代理升级金额 + @Value("${agentAmount}") + private BigDecimal agentAmount; + + //市代理升级金额 + @Value("${cityAgentAmount}") + private BigDecimal cityAgentAmount; + + @ApiOperation("查询当前登录人信息") + @RequestMapping("/getCurrentUserInfo") + public CommonResult getCurrentUserInfo(){ + //获取当前登录人的信息 + UmsMember member = memberMapper.selectByPrimaryKey(memberService.getCurrentMember().getId()); + + // 获取当前用户的会员等级ID + Long memberLevelId = member.getMemberLevelId(); + + String memberLevelName = "普通用户"; + if (memberLevelId == 1) { + memberLevelName = "普通用户"; + } else if (memberLevelId == 2) { + memberLevelName = "VIP会员"; + } else if (memberLevelId == 3) { + memberLevelName = "店长"; + } else if (memberLevelId == 4) { + memberLevelName = "代理"; + } else if (memberLevelId == 5) { + memberLevelName = "市代理"; + } + + // 返回当前用户的会员信息 + return CommonResult.success("当前登录用户: " + member.getUsername() + ", 会员等级: " + memberLevelName); + } + + @ApiOperation("创建会员中心订单") + @RequestMapping( value = "/createVipOrder", method = RequestMethod.POST) + public CommonResult createVipOrder(){ + //获取当前登录人的信息 + UmsMember member = memberMapper.selectByPrimaryKey(memberService.getCurrentMember().getId()); + + // 获取当前用户的会员等级ID + Long memberLevelId = member.getMemberLevelId(); + + //创建返回值 + Map result = new HashMap<>(); + + //生成订单 + OmsOrder order = new OmsOrder(); + // 根据会员等级ID动态设置订单金额 + // 店长 + if (memberLevelId == 3) { + order.setTotalAmount(storeManagerAmount); + order.setPayAmount(storeManagerAmount); + // 代理 + } else if (memberLevelId == 4) { + order.setTotalAmount(agentAmount); + order.setPayAmount(agentAmount); + // 市代理 + } else if (memberLevelId == 5) { + order.setTotalAmount(cityAgentAmount); + order.setPayAmount(cityAgentAmount); + } + order.setMemberId(member.getId()); + order.setCreateTime(new Date()); + order.setModifyTime(new Date()); + + // 支付方式,0为未支付 + order.setPayType(0); + // 订单状态,0为待付款 + order.setStatus(0); + // 虚拟订单 + order.setOrderType(3); + // 升级订单,无需实际收货人信息 + order.setReceiverName("会员升级"); + + // 保存订单 + orderMapper.insert(order); + + // 更新返回结果 + result.put("orderId", order.getId()); + + return CommonResult.success(result); + + } + + + + +} diff --git a/mall-portal/src/main/resources/application-prod.yml b/mall-portal/src/main/resources/application-prod.yml index 912b88e..9fbc383 100644 --- a/mall-portal/src/main/resources/application-prod.yml +++ b/mall-portal/src/main/resources/application-prod.yml @@ -104,4 +104,10 @@ alipay: # 成为vip金额 becomeVipAmount: 899 # 同等级分润比例 -sameLevelProfit: 10 \ No newline at end of file +sameLevelProfit: 10 +#店长升级金额 +storeManagerAmount: 1000 +#代理升级金额 +agentAmount: 1000 +#市代理升级金额 +cityAgentAmount: 1000 \ No newline at end of file