Browse Source

2023-08-08

master
wangpengfei 2 years ago
parent
commit
797cdd2fe1
  1. 7
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserMapper.java
  2. 18
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserRest.java
  3. 43
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserService.java
  4. 5
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/wx/WxSysUserRest.java
  5. 18
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenid.java
  6. 17
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidDto.java
  7. 42
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidMapper.java
  8. 45
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidMapper.xml
  9. 17
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidQuery.java
  10. 74
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidRest.java
  11. 103
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidService.java
  12. 17
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidVo.java

7
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserMapper.java

@ -6,13 +6,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.supervise.system.sysstaffinfo.SysStaffinfoVo;
import com.yxt.supervise.system.sysuser.app.AppUserOrgInfoVo;
import com.yxt.supervise.system.sysuser.wx.SysUserWxBindMobileDto;
import com.yxt.supervise.system.sysuser.wx.WxHomePageVo;
import com.yxt.supervise.system.sysuser.wx.WxMySysUserInfoVo;
import com.yxt.supervise.system.sysuser.wx.WxSysUserVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.apache.ibatis.annotations.*;
import java.util.List;
import java.util.Map;
@ -182,4 +180,5 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
String selectIdBySid(@Param("list") List<String> stringList);
List<SysUserVo> getUserMessageByRole(@Param("roleSid") String roleSid,@Param("levelOrgSid") String levelOrgSid, @Param("list") List<String> stringList);
}

18
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserRest.java

@ -181,12 +181,6 @@ public class SysUserRest implements SysUserFeign {
//用户类型
int userType = dto.getUserType();
//部门sid
// String deptSid = dto.getDeptSid();
// //岗位sid
// String postSid = dto.getPostSid();
//验证码
// String verificationCode = dto.getVerificationCode();
if (StringUtils.isBlank(mobile)) {
return new ResultBean<SysUserVo>().fail().setMsg("手机号不能为空");
} else {
@ -201,21 +195,11 @@ public class SysUserRest implements SysUserFeign {
if (userType == 0) {
return new ResultBean<SysUserVo>().fail().setMsg("用户类型不能为空");
}
//取消验证码
// if (StringUtils.isBlank(verificationCode)) {
// return new ResultBean<SysUserVo>().fail().setMsg("验证码不能为空");
// } else {
// Map<String, Object> stringObjectMap = sysUserService.mobileValidateRegister(mobile, verificationCode);
// String code = stringObjectMap.get("code").toString();
// String details = stringObjectMap.get("details").toString();
// if (Tools.CODE_FAIL.equals(code)) {
// return ResultBean.fireFail().setMessage(details).setMsg(details);
// }
// }
//"15097329653";
String password = mobile.substring(5, 11);
String md5 = Encodes.md5(password);
SysUser su = new SysUser();
su.setSid(UUID.randomUUID().toString());
dto.fillEntity(su);
su.setStaffSid(dto.getBankMessageSid());
su.setUserName(mobile);

43
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserService.java

@ -581,6 +581,11 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
* @return
*/
public ResultBean sendVerificationCodeForApp(String mobile, String type) {
ResultBean rb=new ResultBean().fireFail();
SysUser sysUser = baseMapper.selectOne(new QueryWrapper<SysUser>().eq("mobile",mobile));
if(null==sysUser){
return rb.setMsg("您的平台应用未被授权,请联系工作人员。");
}
Date date = new Date();
String redisKey = "";
if (type.equals("1")) {
@ -1203,6 +1208,44 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
sysUser.setToken(sysUserVo.getToken());
return rb.success().setData(sysUser);
}
/**
* 微信静默登录
* @param wxCode 临时凭证code值
* @return ResultBean data:Token
* 登陆成功后data返回用户Sid
* 聂金毅 2022/6/8 2030 创建
*/
public ResultBean<SysUserLoginVo> SilentLogin(String wxCode) {
ResultBean rb = ResultBean.fireFail();
// 通过wxCode获取unionid,失败返回微信的错误提示。
ResultBean<JSONObject> rbJsonObject = wxLogin(wxCode,APP_ID,SECRET);
if (!rbJsonObject.getSuccess()){
JSONObject jsonObject = rbJsonObject.getData();
String errcode = jsonObject.get("errcode").toString();
String errmsg = jsonObject.get("errmsg").toString();
return rb.setMsg(errmsg).setCode(errcode);
}
// 判断存在不存在unionid,用户在开放平台的唯一标识符,若当前小程序已绑定到微信开放平台帐号下会返回,详见 UnionID 机制说明。、
JSONObject jsonObject = rbJsonObject.getData();
if (!jsonObject.containsKey("openid")){
return rb.setMsg("未获得openid,请联系管理员");
}
// String unionid = jsonObject.get("unionid").toString();
String openid = jsonObject.get("openid").toString();
// 判断用户登陆授权表是否存在该用户unionid和openid,如果不存在就增加一条返回
// SysUser sysUser=baseMapper.selectOne(new QueryWrapper<SysUser>().eq("appletOpenid",openid));
// Map<String,String> map=new HashMap<>();
// map.put("openid",openid);
// map.put("unionid",unionid);
// if(sysUser==null){
// return rb.setMsg("此微信没有绑定用户").setCode("100").setData(openid);
// }
return rb.success().setData(openid);
}
/**
* 授权登录
* @param wxCode 临时凭证code值

5
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/wx/WxSysUserRest.java

@ -386,6 +386,11 @@ public class WxSysUserRest implements WxSysUserFeign {
public ResultBean<SysUserLoginVo> wxSilentLogin(@RequestParam(value = "wxCode") String wxCode) {
return sysUserService.wxSilentLogin(wxCode);
}
@ApiOperation(value = "微信静默登录")
@GetMapping("/SilentLogin")
public ResultBean<SysUserLoginVo> SilentLogin(@RequestParam(value = "wxCode") String wxCode) {
return sysUserService.SilentLogin(wxCode);
}
@ApiOperation(value = "微信授权登录")
@GetMapping("/wxAuthLogin")
public ResultBean<SysUserLoginVo> wxAuthLogin(@RequestParam(value = "wxCode") String wxCode) {

18
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenid.java

@ -0,0 +1,18 @@
package com.yxt.supervise.system.useropenid;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/8/8 16:31
*/
@Data
@TableName("user_openid")
public class UserOpenid {
private String id;
private String sid;
private String mobile;
private String openid;
private String state;
}

17
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidDto.java

@ -0,0 +1,17 @@
package com.yxt.supervise.system.useropenid;
import com.yxt.common.core.dto.Dto;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/8/8 16:32
*/
@Data
public class UserOpenidDto implements Dto {
private String id;
private String sid;
private String mobile;
private String openid;
private String state;
}

42
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidMapper.java

@ -0,0 +1,42 @@
package com.yxt.supervise.system.useropenid;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@Mapper
public interface UserOpenidMapper extends BaseMapper<UserOpenid> {
IPage<UserOpenidVo> selectPageVo(IPage<UserOpenid> page, @Param(Constants.WRAPPER) Wrapper<UserOpenid> qw);
List<UserOpenidVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<UserOpenid> qw);
@Select("select * from sys_staff_post")
List<UserOpenidVo> selectListVo();
@Delete("delete from sys_staff_post where staffSid=#{staffSid} ")
void deleteByStaffSid(String staffSid);
/**
* 根据员工sid查询员工的岗位信息
*
* @param sid 员工的sid
* @return
*/
UserOpenid selectByStaffSid(@Param("sid") String sid, @Param("postSid") String postSid);
String selectPost(String sid);
List<String> getPost(String staffSid);
}

45
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidMapper.xml

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.supervise.system.useropenid.UserOpenidMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.supervise.system.useropenid.UserOpenidVo">
SELECT *
FROM sys_staff_post
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selectListAllVo" resultType="com.yxt.supervise.system.useropenid.UserOpenidVo">
SELECT *
FROM sys_staff_post
<where>
${ew.sqlSegment}
</where>
</select>
<!--根据员工的sid查询员工的岗位信息-->
<select id="selectByStaffSid" resultType="com.yxt.supervise.system.useropenid.UserOpenid">
select *
from sys_staff_post
where staffSid = #{sid}
and postSid = #{postSid}
</select>
<select id="selectPost" resultType="java.lang.String">
select sr.sid
from sys_staff_post ssp
left join sys_post sp on sp.sid = ssp.postSid
left join sys_role sr on sp.parentSid = sr.postSid
where ssp.staffSid = #{sid}
</select>
<select id="getPost" resultType="java.lang.String">
select sp.name
from sys_staff_post ssp
left join sys_post sp on ssp.postSid = sp.sid
where ssp.staffSid = #{staffSid}
</select>
</mapper>

17
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidQuery.java

@ -0,0 +1,17 @@
package com.yxt.supervise.system.useropenid;
import com.yxt.common.core.query.Query;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/8/8 16:32
*/
@Data
public class UserOpenidQuery implements Query {
private String id;
private String sid;
private String mobile;
private String openid;
private String state;
}

74
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidRest.java

@ -0,0 +1,74 @@
package com.yxt.supervise.system.useropenid;
import com.yxt.common.base.config.RedisUtil;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.system.sysuser.SysUser;
import com.yxt.supervise.system.sysuser.SysUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* @author wangpengfei
* @date 2023/8/8 16:32
*/
@Api(tags = "用户和微信小程序openid")
@RestController
@RequestMapping("useropenid")
public class UserOpenidRest {
@Autowired
private UserOpenidService UserOpenidService;
public ResultBean<PagerVo<UserOpenidVo>> listPage(@RequestBody PagerQuery<UserOpenidQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<UserOpenidVo> pv = UserOpenidService.listPageVo(pq);
return rb.success().setData(pv);
}
public ResultBean<List<UserOpenidVo>> listAll(@RequestBody UserOpenidQuery query) {
ResultBean rb = ResultBean.fireFail();
List<UserOpenidVo> list = UserOpenidService.listAllVo(query);
return rb.success().setData(list);
}
public ResultBean<List<UserOpenidVo>> list() {
ResultBean rb = ResultBean.fireFail();
List<UserOpenidVo> list = UserOpenidService.listVo();
return rb.success().setData(list);
}
@ApiOperation(value = "保存")
@PostMapping("/save")
public ResultBean save(@RequestBody UserOpenidDto dto) {
ResultBean rb = ResultBean.fireFail();
UserOpenidService.saveOrUpdateDto(dto);
return rb.success();
}
@ApiOperation(value = "修改")
@PostMapping("/update")
public ResultBean update(@RequestBody UserOpenidDto dto, String sid) {
ResultBean rb = ResultBean.fireFail();
UserOpenidService.updateBySid(dto.toMap(), sid);
return rb.success();
}
public ResultBean del(String ids) {
ResultBean rb = ResultBean.fireFail();
UserOpenidService.delByIds(ids);
return rb.success();
}
}

103
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidService.java

@ -0,0 +1,103 @@
package com.yxt.supervise.system.useropenid;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.UUID;
/**
* @author wangpengfei
* @date 2023/8/8 16:32
*/
@Service
public class UserOpenidService extends MybatisBaseService<UserOpenidMapper, UserOpenid> {
public PagerVo<UserOpenid> listPage(PagerQuery<UserOpenidQuery> pq) {
UserOpenidQuery query = pq.getParams();
QueryWrapper<UserOpenid> qw = new QueryWrapper<>();
IPage<UserOpenid> page = PagerUtil.queryToPage(pq);
IPage<UserOpenid> pagging = baseMapper.selectPage(page, qw);
PagerVo<UserOpenid> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public List<UserOpenid> listAll(UserOpenidQuery query) {
QueryWrapper<UserOpenid> qw = new QueryWrapper<>();
return baseMapper.selectList(qw);
}
// private QueryWrapper<UserOpenid> createQueryWrapper(UserOpenidQuery query) {
// // todo: 这里根据具体业务调整查询条件
// // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
// QueryWrapper<UserOpenid> qw = new QueryWrapper<>();
//
//
// if (StringUtils.isNotBlank(query.getStaffSid())) {
// qw.eq("staffSid", query.getStaffSid());
// }
//
// if (StringUtils.isNotBlank(query.getOrgSid())) {
// qw.eq("orgSid", query.getOrgSid());
// }
//
// if (StringUtils.isNotBlank(query.getPostSid())) {
// qw.eq("postSid", query.getPostSid());
// }
//
// if (query.getStartDateStart() != null) {
// qw.ge("startDate", query.getStartDateStart());
// }
// if (query.getStartDateEnd() != null) {
// qw.le("startDate", query.getStartDateEnd());
// }
//
// if (query.getIsDepetHead() != null) {
// qw.eq("isDepetHead", query.getIsDepetHead());
// }
// return qw;
// }
public PagerVo<UserOpenidVo> listPageVo(PagerQuery<UserOpenidQuery> pq) {
UserOpenidQuery query = pq.getParams();
QueryWrapper<UserOpenid> qw = new QueryWrapper<>();
IPage<UserOpenid> page = PagerUtil.queryToPage(pq);
IPage<UserOpenidVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<UserOpenidVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public List<UserOpenidVo> listAllVo(UserOpenidQuery query) {
QueryWrapper<UserOpenid> qw = new QueryWrapper<>();
return baseMapper.selectListAllVo(qw);
}
public List<UserOpenidVo> listVo() {
return baseMapper.selectListVo();
}
public void saveOrUpdateDto(UserOpenidDto dto) {
UserOpenid entity = new UserOpenid();
BeanUtil.copyProperties(dto, entity, "id", "sid");
entity.setSid(UUID.randomUUID().toString());
this.saveOrUpdate(entity);
}
public UserOpenidVo fetchByIdVo(String id) {
UserOpenid entity = this.fetchById(id);
UserOpenidVo vo = new UserOpenidVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
}

17
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/useropenid/UserOpenidVo.java

@ -0,0 +1,17 @@
package com.yxt.supervise.system.useropenid;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/8/8 16:32
*/
@Data
public class UserOpenidVo implements Vo {
private String id;
private String sid;
private String mobile;
private String openid;
private String state;
}
Loading…
Cancel
Save