Compare commits
3 Commits
5a9ba1e46c
...
cb9e98a4de
Author | SHA1 | Date | |
---|---|---|---|
cb9e98a4de | |||
e321804d46 | |||
2269c0eb42 |
@ -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<String, Object> map = new HashMap<>();
|
||||
map.put("path", path);
|
||||
map.put("query", "noticeId="+query+"&navigatePath=index");
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
SysUser user = loginUser.getUser();
|
||||
// 角色集合
|
||||
Set<String> 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));
|
||||
|
@ -138,10 +138,10 @@ public class BusiNoticeServiceImpl extends ServiceImpl<BusiNoticeMapper,BusiNoti
|
||||
if (StringUtils.isNotEmpty(data.getThirdUrl())&&StringUtils.isNotEmpty(busiNotice.getThirdUrl())){
|
||||
if (data.getThirdUrl().equals(busiNotice.getThirdUrl())){
|
||||
//title 和 detail 相似度大于70% 待审核
|
||||
data.setApprovalStatus("0");
|
||||
data.setApprovalStatus("8");
|
||||
data.setSimilarityIds(Optional.ofNullable(data.getSimilarityIds()).orElse("")+busiNotice.getId()+",");
|
||||
result.put("code",500);
|
||||
result.put("msg","该通告已被人抢先一步上传,等待平台审核");
|
||||
result.put("msg","通告查重,下次早点上传哦!");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -223,10 +223,10 @@ public class BusiNoticeServiceImpl extends ServiceImpl<BusiNoticeMapper,BusiNoti
|
||||
if (StringUtils.isNotEmpty(data.getThirdUrl())&&StringUtils.isNotEmpty(busiNotice.getThirdUrl())){
|
||||
if (data.getThirdUrl().equals(busiNotice.getThirdUrl())){
|
||||
//title 和 detail 相似度大于70% 待审核
|
||||
data.setApprovalStatus("0");
|
||||
data.setApprovalStatus("8");
|
||||
data.setSimilarityIds(Optional.ofNullable(data.getSimilarityIds()).orElse("")+busiNotice.getId()+",");
|
||||
result.put("code",500);
|
||||
result.put("msg","该通告已被人抢先一步上传,等待平台审核");
|
||||
result.put("msg","通告查重,下次早点上传哦!");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -325,7 +325,7 @@ public class BusiNoticeServiceImpl extends ServiceImpl<BusiNoticeMapper,BusiNoti
|
||||
if (StringUtils.isNotEmpty(data.getThirdUrl())&&StringUtils.isNotEmpty(busiNotice.getThirdUrl())){
|
||||
if (data.getThirdUrl().equals(busiNotice.getThirdUrl())){
|
||||
//title 和 detail 相似度大于70% 待审核
|
||||
data.setApprovalStatus("0");
|
||||
data.setApprovalStatus("8");
|
||||
data.setSimilarityIds(Optional.ofNullable(data.getSimilarityIds()).orElse("")+busiNotice.getId()+",");
|
||||
}
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ public interface IMemberUserService extends IService<MemberUser> {
|
||||
* @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保存会员信息
|
||||
|
@ -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 ServiceImpl<MemberOrderMapper, Membe
|
||||
private IMemberCardService cardService;
|
||||
@Resource
|
||||
private IMemberCouponService couponService;
|
||||
@Autowired
|
||||
private IMemberPointsService memberPointsService;
|
||||
@Autowired
|
||||
private ISysConfigService sysConfigService;
|
||||
@Autowired
|
||||
private ISysUserService userService;
|
||||
|
||||
|
||||
/**
|
||||
@ -75,11 +87,26 @@ public class MemberOrderServiceImpl extends ServiceImpl<MemberOrderMapper, Membe
|
||||
} else {
|
||||
couponService.dealMemberCoupon(memberOrder);
|
||||
}
|
||||
//如果当前用户存在邀请人则给邀请人回传
|
||||
/*3、处理订单表数据*/
|
||||
memberOrder.setPayTime(new Date());
|
||||
memberOrder.setIsPay(1);
|
||||
memberOrder.setPayWay("02");
|
||||
updateById(memberOrder);
|
||||
SysUser sysUser = userService.selectUserById(memberOrder.getUserId());
|
||||
String tc = sysConfigService.selectConfigByKey("tc");
|
||||
double v = Double.parseDouble(tc);
|
||||
if (ObjectUtil.isNotEmpty(sysUser.getInviteId())&&v>0){
|
||||
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);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -186,7 +186,7 @@ public class MemberUserServiceImpl extends ServiceImpl<MemberUserMapper, MemberU
|
||||
**/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public String wxLogin(String openid, String decryptResult,String unionid) {
|
||||
public String wxLogin(String openid, String decryptResult,String unionid,Long inviteId) {
|
||||
//字符串转json
|
||||
JSONObject jsonObject = JSONObject.parseObject(decryptResult);
|
||||
//手机号
|
||||
@ -214,6 +214,7 @@ public class MemberUserServiceImpl extends ServiceImpl<MemberUserMapper, MemberU
|
||||
user.setSex("2");
|
||||
user.setCreateTime(DateUtils.getNowDate());
|
||||
user.setUnionId(unionid);
|
||||
user.setInviteId(inviteId);
|
||||
//新增 用户
|
||||
userMapper.insertUser(user);
|
||||
//插入用户扩展信息表数据
|
||||
|
@ -101,7 +101,7 @@ public class SysLoginController
|
||||
|
||||
if (StringUtils.hasText(decryptResult)){
|
||||
//如果解析成功,获取token
|
||||
String token = memberUserService.wxLogin(openid,decryptResult,jsonObject.getString("unionid"));
|
||||
String token = memberUserService.wxLogin(openid,decryptResult,jsonObject.getString("unionid"),wxLoginBody.getInviteId());
|
||||
AjaxResult ajax = AjaxResult.success();
|
||||
ajax.put(Constants.TOKEN, token);
|
||||
return ajax;
|
||||
|
@ -28,7 +28,8 @@ public class SysUser extends BaseEntity
|
||||
/** 部门ID */
|
||||
@Excel(name = "部门编号", type = Type.IMPORT)
|
||||
private Long deptId;
|
||||
|
||||
// 邀请人id
|
||||
private Long inviteId;
|
||||
/** 用户账号 */
|
||||
@Excel(name = "登录名称")
|
||||
private String userName;
|
||||
@ -355,4 +356,12 @@ public class SysUser extends BaseEntity
|
||||
public void setUnionId(String unionId) {
|
||||
this.unionId = unionId;
|
||||
}
|
||||
|
||||
public Long getInviteId() {
|
||||
return inviteId;
|
||||
}
|
||||
|
||||
public void setInviteId(Long inviteId) {
|
||||
this.inviteId = inviteId;
|
||||
}
|
||||
}
|
||||
|
@ -12,6 +12,7 @@ public class WxLoginBody {
|
||||
|
||||
/** 加密数据 */
|
||||
private String encryptedData;
|
||||
private Long inviteId;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
|
@ -18,7 +18,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<result property="openId" column="open_id" />
|
||||
<result property="wxOpenId" column="wx_open_id" />
|
||||
<result property="unionId" column="union_id" />
|
||||
<result property="delFlag" column="del_flag" />
|
||||
<result property="inviteId" column="invite_id" />
|
||||
<result property="delFlag" column="del_flag" />
|
||||
<result property="loginIp" column="login_ip" />
|
||||
<result property="loginDate" column="login_date" />
|
||||
<result property="createBy" column="create_by" />
|
||||
@ -50,7 +51,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectUserVo">
|
||||
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"
|
||||
</sql>
|
||||
|
||||
<select id="selectUserList" parameterType="SysUser" resultMap="SysUserResult">
|
||||
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, 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, d.dept_name, d.leader from sys_user u
|
||||
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, 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_name, d.leader from sys_user u
|
||||
left join sys_dept d on u.dept_id = d.dept_id
|
||||
where u.del_flag = '0'
|
||||
<if test="userId != null and userId != 0">
|
||||
@ -89,7 +90,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</select>
|
||||
|
||||
<select id="selectAllocatedList" parameterType="SysUser" resultMap="SysUserResult">
|
||||
select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status,u.open_id,u.wx_open_id,u.union_id, u.create_time
|
||||
select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status,u.open_id,u.wx_open_id,u.union_id,u.invite_id,u.create_time
|
||||
from sys_user u
|
||||
left join sys_dept d on u.dept_id = d.dept_id
|
||||
left join sys_user_role ur on u.user_id = ur.user_id
|
||||
@ -106,7 +107,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</select>
|
||||
|
||||
<select id="selectUnallocatedList" parameterType="SysUser" resultMap="SysUserResult">
|
||||
select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status,u.open_id,u.wx_open_id,u.union_id, u.create_time
|
||||
select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status,u.open_id,u.wx_open_id,u.union_id,u.invite_id,u.create_time
|
||||
from sys_user u
|
||||
left join sys_dept d on u.dept_id = d.dept_id
|
||||
left join sys_user_role ur on u.user_id = ur.user_id
|
||||
@ -160,6 +161,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<if test="openId != null and openId != ''">open_id,</if>
|
||||
<if test="wxOpenId != null and wxOpenId != ''">wx_open_id,</if>
|
||||
<if test="unionId != null and unionId != ''">union_id,</if>
|
||||
<if test="inviteId != null and inviteId != ''">invite_id,</if>
|
||||
<if test="createBy != null and createBy != ''">create_by,</if>
|
||||
<if test="remark != null and remark != ''">remark,</if>
|
||||
create_time
|
||||
@ -177,6 +179,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<if test="openId != null and openId != ''">#{openId},</if>
|
||||
<if test="wxOpenId != null and wxOpenId != ''">#{wxOpenId},</if>
|
||||
<if test="unionId != null and unionId != ''">#{unionId},</if>
|
||||
<if test="inviteId != null and inviteId != ''">#{inviteId},</if>
|
||||
<if test="createBy != null and createBy != ''">#{createBy},</if>
|
||||
<if test="remark != null and remark != ''">#{remark},</if>
|
||||
sysdate()
|
||||
@ -197,7 +200,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<if test="openId != null and openId != ''">open_id = #{openId},</if>
|
||||
<if test="wxOpenId != null and wxOpenId != ''">wx_open_id = #{wxOpenId},</if>
|
||||
<if test="unionId != null and unionId != ''">union_id =#{unionId},</if>
|
||||
|
||||
<if test="inviteId != null and inviteId != ''">invite_id =#{inviteId},</if>
|
||||
<if test="loginIp != null and loginIp != ''">login_ip = #{loginIp},</if>
|
||||
<if test="loginDate != null">login_date = #{loginDate},</if>
|
||||
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
|
||||
@ -241,6 +244,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<if test="unionId!=null and unionId!=''">
|
||||
and u.union_id = #{unionId}
|
||||
</if>
|
||||
<if test="inviteId!=null and inviteId!=''">
|
||||
and u.invite_id = #{inviteId}
|
||||
</if>
|
||||
<if test="phone!=null and phone!=''">
|
||||
and u.user_name = #{phone}
|
||||
</if>
|
||||
|
Loading…
Reference in New Issue
Block a user