From cb9e98a4def7135c4f307a4f22632aa93a607969 Mon Sep 17 00:00:00 2001 From: 13405411873 <1994398261@qq.com> Date: Fri, 6 Jun 2025 16:20:16 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ruoyi/api/WxApi.java | 15 +++++++++++ .../member/service/IMemberUserService.java | 2 +- .../service/impl/MemberOrderServiceImpl.java | 27 +++++++++++++++++++ .../service/impl/MemberUserServiceImpl.java | 3 ++- .../controller/system/SysLoginController.java | 2 +- .../common/core/domain/entity/SysUser.java | 11 +++++++- .../common/core/domain/model/WxLoginBody.java | 1 + .../resources/mapper/system/SysUserMapper.xml | 18 ++++++++----- 8 files changed, 69 insertions(+), 10 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/WxApi.java b/ruoyi-admin/src/main/java/com/ruoyi/api/WxApi.java index de910c8..491a520 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/WxApi.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/WxApi.java @@ -10,13 +10,18 @@ import com.ruoyi.busi.utils.WeChatUtils; import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.GzhLoginBody; +import com.ruoyi.common.core.domain.model.LoginUser; +import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.framework.web.service.SysPermissionService; import com.ruoyi.member.service.IMemberUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.Map; +import java.util.Set; @RestController @RequestMapping("/wxApi") @@ -29,6 +34,9 @@ public class WxApi { private IBusiNoticeService busiNoticeService; @Autowired private IBaseCategoryService baseCategoryService; + @Autowired + private SysPermissionService permissionService; + @GetMapping("/getCodeUrl") @@ -65,6 +73,13 @@ public class WxApi { Map map = new HashMap<>(); map.put("path", path); map.put("query", "noticeId="+query+"&navigatePath=index"); + LoginUser loginUser = SecurityUtils.getLoginUser(); + SysUser user = loginUser.getUser(); + // 角色集合 + Set roles = permissionService.getRolePermission(user); + if (roles.contains("xsry")) { + map.put("query", "noticeId="+query+"&navigatePath=index"+"&inviteId="+user.getUserId()); + } map.put("expire_type", 1); map.put("expire_interval", 30); String post = HttpUtil.post("https://api.weixin.qq.com/wxa/generate_urllink?access_token=" + token, com.alibaba.fastjson2.JSONObject.toJSONString(map)); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/member/service/IMemberUserService.java b/ruoyi-admin/src/main/java/com/ruoyi/member/service/IMemberUserService.java index 28f1dc7..a861417 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/member/service/IMemberUserService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/member/service/IMemberUserService.java @@ -69,7 +69,7 @@ public interface IMemberUserService extends IService { * @author vinjor-M * @date 15:55 2025/3/26 **/ - String wxLogin(String openid, String decryptResult,String unionId); + String wxLogin(String openid, String decryptResult,String unionId,Long inviteId); /** * uniApp保存会员信息 diff --git a/ruoyi-admin/src/main/java/com/ruoyi/member/service/impl/MemberOrderServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/member/service/impl/MemberOrderServiceImpl.java index 4d05595..8e892ab 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/member/service/impl/MemberOrderServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/member/service/impl/MemberOrderServiceImpl.java @@ -1,19 +1,25 @@ package com.ruoyi.member.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.domain.DlBaseEntity; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.member.domain.MemberOrder; +import com.ruoyi.member.domain.MemberPoints; import com.ruoyi.member.mapper.MemberOrderMapper; import com.ruoyi.member.service.IMemberCardService; import com.ruoyi.member.service.IMemberCouponService; import com.ruoyi.member.service.IMemberOrderService; +import com.ruoyi.member.service.IMemberPointsService; import com.ruoyi.member.vo.MemberOrderVO; +import com.ruoyi.system.service.ISysConfigService; +import com.ruoyi.system.service.ISysUserService; import lombok.SneakyThrows; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -37,6 +43,12 @@ public class MemberOrderServiceImpl extends ServiceImpl0){ + double points = memberOrder.getGoodsPrice().doubleValue()*v; + //如果审核通过 + MemberPoints memberPoints =new MemberPoints(); + memberPoints.setUserId(sysUser.getInviteId()); + memberPoints.setPoints(points); + memberPoints.setType("1"); + memberPoints.setTitle("邀请用户消费"+memberOrder.getGoodsPrice()+"元,得"+points*10+"积分"); + memberPointsService.savePoints(memberPoints); + } + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/member/service/impl/MemberUserServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/member/service/impl/MemberUserServiceImpl.java index 186205c..91ed438 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/member/service/impl/MemberUserServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/member/service/impl/MemberUserServiceImpl.java @@ -186,7 +186,7 @@ public class MemberUserServiceImpl extends ServiceImpl - + + @@ -50,7 +51,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status,u.open_id,u.wx_open_id,u.union_id, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, + select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status,u.open_id,u.wx_open_id,u.union_id,u.invite_id,u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status, r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status from sys_user u @@ -60,7 +61,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"