Browse Source

opt: 拜访API

master
Yen 10 months ago
parent
commit
e3b68eee50
  1. 8
      src/main/java/com/qs/serve/common/framework/aop/SysLogAspect.java
  2. 2
      src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java
  3. 1
      src/main/java/com/qs/serve/common/util/CodeGenUtil.java
  4. 42
      src/main/java/com/qs/serve/modules/sys/controller/SysUserController.java
  5. 1
      src/main/java/com/qs/serve/modules/sys/service/impl/SysUserServiceImpl.java
  6. 89
      src/main/java/com/qs/serve/modules/visit/api/VisitMainInnerController.java
  7. 21
      src/main/java/com/qs/serve/modules/visit/api/VisitMainOuterApi.java
  8. 25
      src/main/java/com/qs/serve/modules/visit/common/VisitMainConst.java
  9. 50
      src/main/java/com/qs/serve/modules/visit/controller/VisitMainController.java
  10. 20
      src/main/java/com/qs/serve/modules/visit/entity/VisitMain.java
  11. 6
      src/main/java/com/qs/serve/modules/visit/service/VisitMainService.java
  12. 5
      src/main/java/com/qs/serve/modules/visit/service/impl/VisitMainServiceImpl.java
  13. 4
      src/main/java/com/qs/serve/modules/wx/api/WxSvcLoginApi.java
  14. 8
      src/main/java/com/qs/serve/modules/wx/controller/WxFormPushController.java
  15. 24
      src/main/java/com/qs/serve/modules/wx/controller/WxUserController.java
  16. 10
      src/main/resources/mapper/sys/SysUserMapper.xml

8
src/main/java/com/qs/serve/common/framework/aop/SysLogAspect.java

@ -97,10 +97,10 @@ public class SysLogAspect {
if (loginUser != null) { if (loginUser != null) {
operLog.setUserId(loginUser.getUserId()); operLog.setUserId(loginUser.getUserId());
operLog.setUserType(loginUser.getTypeFlag().getCode()); operLog.setUserType(loginUser.getTypeFlag().getCode());
SysUser sysUser = sysUserService.getById(loginUser.getUserId()); //SysUser sysUser = sysUserService.getById(loginUser.getUserId());
if(sysUser!=null){ // if(sysUser!=null){
operLog.setCreatorName(sysUser.getName()); // operLog.setCreatorName(sysUser.getName());
} // }
} }
if (e != null) { if (e != null) {
operLog.setErrMsg(StringUtils.substring(e.getMessage(), 0, 2500)); operLog.setErrMsg(StringUtils.substring(e.getMessage(), 0, 2500));

2
src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java

@ -26,7 +26,7 @@ public class AsyncFactory {
return new TimerTask() { return new TimerTask() {
@Override @Override
public void run() { public void run() {
SpringUtils.getBean(SysOperationLogMapper.class).saveLog(operationLog); //SpringUtils.getBean(SysOperationLogMapper.class).saveLog(operationLog);
} }
}; };
} }

1
src/main/java/com/qs/serve/common/util/CodeGenUtil.java

@ -42,6 +42,7 @@ public class CodeGenUtil {
TagInfo("T","TagInfo"), TagInfo("T","TagInfo"),
SaleRegion("S","SaleRegion"), SaleRegion("S","SaleRegion"),
BizRegion("B","BizRegion"), BizRegion("B","BizRegion"),
VISIT("VS","VISIT"),
ActivityPayCondition("K","ActivityPayCondition"); ActivityPayCondition("K","ActivityPayCondition");
private String prefix; private String prefix;
private String code; private String code;

42
src/main/java/com/qs/serve/modules/sys/controller/SysUserController.java

@ -46,8 +46,42 @@ public class SysUserController {
private SysPostService sysPostService; private SysPostService sysPostService;
private SysRoleService sysRoleService; private SysRoleService sysRoleService;
private WxUserService wxUserService; private WxUserService wxUserService;
private final SysUserRoleService userRoleService;
private final SysMenuMapper sysMenuMapper; private final SysMenuMapper sysMenuMapper;
/**
* (个人)密码更新
* @param param
* @return
*/
@SysLog(title = "人员",desc = "个人密码更新",biz = BizType.UPDATE)
@PostMapping("/updatePwd")
public R<?> updatePwd(@RequestBody @Valid SysUserPwdParam param){
LoginUser loginUser = AuthContextUtils.getLoginUser();
SysUser dbUser = sysUserService.getById(loginUser.getUserId());
if(dbUser.getPassword().equalsIgnoreCase(SecureUtil.md5(param.getOldPassword()))){
SysUser sysUser = new SysUser();
sysUser.setId(loginUser.getUserId());
sysUser.setPassword(SecureUtil.md5(param.getNewPassword()));
sysUser.setUpdateTime(LocalDateTime.now());
sysUserService.updateById(sysUser);
return R.ok();
}
return R.error();
}
/**
* 检查是否默认密码
* @return truefalse字符串
*/
@GetMapping("/checkDefaultPassword")
public R<String> checkDefaultPassword(){
SysUser sysUser = sysUserService.getById(AuthContextUtils.getSysUserId());
if(sysUser.getPassword().equals("25d55ad283aa400af464c76d713c07ad")){
return R.ok("true","ok");
}
return R.ok("false","ok");
}
@GetMapping("/getChildList") @GetMapping("/getChildList")
public R<List<SysPostUser>> getChildList(){ public R<List<SysPostUser>> getChildList(){
@ -122,7 +156,13 @@ public class SysUserController {
List<String> deptIds = deptList.stream().map(SysDept::getId).distinct().collect(Collectors.toList()); List<String> deptIds = deptList.stream().map(SysDept::getId).distinct().collect(Collectors.toList());
param.setMultiDeptIds(deptIds); param.setMultiDeptIds(deptIds);
} }
//PageUtil.startPage(); //取消关联CRM的角色,使用该系统角色
if(CollectionUtil.isNotEmpty(param.getRoleIds())){
List<SysUserRole> userRoles = userRoleService.list(new LambdaQueryWrapper<SysUserRole>()
.in(SysUserRole::getRoleId,param.getRoleIds()));
List<String> ids = userRoles.stream().map(SysUserRole::getUserId).collect(Collectors.toList());
param.setSelectIds(ids);
}
PageHelper.startPage(param.getPageNum(),param.getPageSize()); PageHelper.startPage(param.getPageNum(),param.getPageSize());
List<SysUser> list = sysUserService.listUser(param); List<SysUser> list = sysUserService.listUser(param);
//前端页面展示参数 //前端页面展示参数

1
src/main/java/com/qs/serve/modules/sys/service/impl/SysUserServiceImpl.java

@ -40,7 +40,6 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
private final SysUserRoleService sysUserRoleService; private final SysUserRoleService sysUserRoleService;
private final SysPermitService sysPermitService; private final SysPermitService sysPermitService;
private final SysRoleService sysRoleService; private final SysRoleService sysRoleService;
private final SysUserRoleService userRoleService;
private final SysDeptMapper sysDeptMapper; private final SysDeptMapper sysDeptMapper;
private final SysMenuMapper sysMenuMapper; private final SysMenuMapper sysMenuMapper;
private final SeeYonProperties seeYonProperties; private final SeeYonProperties seeYonProperties;

89
src/main/java/com/qs/serve/modules/visit/api/VisitMainInnerController.java

@ -0,0 +1,89 @@
package com.qs.serve.modules.visit.api;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.qs.serve.common.model.annotation.SysLog;
import com.qs.serve.common.model.dto.PageVo;
import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.model.enums.BizType;
import com.qs.serve.common.model.enums.SystemModule;
import com.qs.serve.common.util.AuthContextUtils;
import com.qs.serve.common.util.PageUtil;
import com.qs.serve.common.util.StringUtils;
import com.qs.serve.modules.sys.entity.SysUser;
import com.qs.serve.modules.sys.service.SysUserService;
import com.qs.serve.modules.visit.common.VisitMainConst;
import com.qs.serve.modules.visit.entity.VisitMain;
import com.qs.serve.modules.visit.service.VisitMainService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.time.LocalDateTime;
import java.util.List;
/**
* API 拜访(内部人员)
* @author YenHex
* @since 2024-09-11
*/
@Slf4j
@AllArgsConstructor
@RestController
@RequestMapping("/mApi/visit")
public class VisitMainInnerController {
private VisitMainService visitMainService;
private SysUserService sysUserService;
/**
* 翻页
* @param param
* @return
*/
@GetMapping("/page")
public R<PageVo<VisitMain>> getPage(VisitMain param){
LambdaQueryWrapper<VisitMain> lqw = new LambdaQueryWrapper<>(param);
PageUtil.startPage();
lqw.eq(VisitMain::getCheckUserId, AuthContextUtils.getSysUserId());
List<VisitMain> list = visitMainService.list(lqw);
return R.byPageHelperList(list);
}
/**
* ID查询
* @param id
* @return
*/
@GetMapping("/getById/{id}")
@SysLog(module = SystemModule.VISIT, title = "拜访", biz = BizType.QUERY)
public R<VisitMain> getById(@PathVariable("id") String id){
VisitMain visitMain = visitMainService.getById(id);
return R.ok(visitMain);
}
/**
* 核对信息
* @param id
* @return
*/
@GetMapping("/checkIn/{id}")
@SysLog(module = SystemModule.VISIT, title = "拜访", biz = BizType.QUERY)
public R<VisitMain> checkIn(@PathVariable("id") String id){
VisitMain visitMain = visitMainService.getById(id);
if(visitMain.getCheckState().equals(VisitMainConst.CheckState_1)
&&visitMain.getVisitStatus().equals(VisitMainConst.VisitStatus_1)){
SysUser sysUser = sysUserService.getById(AuthContextUtils.getSysUserId());
visitMain.setCheckUserId(sysUser.getId());
visitMain.setCheckUserCode(sysUser.getCode());
visitMain.setCheckUserName(sysUser.getName());
visitMain.setVisitTime(LocalDateTime.now());
visitMain.setVisitStatus(VisitMainConst.VisitStatus_3);
visitMainService.updateById(visitMain);
return R.ok();
}
return R.ok();
}
}

21
src/main/java/com/qs/serve/modules/visit/api/VisitMainApi.java → src/main/java/com/qs/serve/modules/visit/api/VisitMainOuterApi.java

@ -22,7 +22,7 @@ import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**
* 系统 拜访 * API 拜访(外部人员)
* @author YenHex * @author YenHex
* @since 2024-09-11 * @since 2024-09-11
*/ */
@ -30,7 +30,7 @@ import java.util.List;
@AllArgsConstructor @AllArgsConstructor
@RestController @RestController
@RequestMapping("/api/visit") @RequestMapping("/api/visit")
public class VisitMainApi { public class VisitMainOuterApi {
private WxUserService wxUserService; private WxUserService wxUserService;
private VisitMainService visitMainService; private VisitMainService visitMainService;
@ -51,7 +51,7 @@ public class VisitMainApi {
List<VisitMain> list = visitMainService.list(lqw); List<VisitMain> list = visitMainService.list(lqw);
return R.byPageHelperList(list); return R.byPageHelperList(list);
} }
return R.byEmptyList(); return R.error("用户角色暂不支持");
} }
/** /**
@ -76,8 +76,6 @@ public class VisitMainApi {
public R<?> updateById(@RequestBody @Valid VisitMain param){ public R<?> updateById(@RequestBody @Valid VisitMain param){
WxUser wxUser = wxUserService.getCurrentWxUser(); WxUser wxUser = wxUserService.getCurrentWxUser();
if(wxUser.getUserType().equals(WxUserTypeConst.UMS_MEMBER)){ if(wxUser.getUserType().equals(WxUserTypeConst.UMS_MEMBER)){
//memberId
param.setVisitorId(wxUser.getUserId());
param.setCheckState(null); param.setCheckState(null);
param.setDeptId(null); param.setDeptId(null);
param.setDeptName(null); param.setDeptName(null);
@ -85,11 +83,24 @@ public class VisitMainApi {
param.setUserCode(null); param.setUserCode(null);
param.setUserName(null); param.setUserName(null);
param.setSubmitTime(null); param.setSubmitTime(null);
boolean result = visitMainService.updateById(param); boolean result = visitMainService.updateById(param);
return R.isTrue(result); return R.isTrue(result);
} }
return R.error("用户角色暂不支持"); return R.error("用户角色暂不支持");
} }
/**
* 提交到OA
* @param id
* @return
*/
@PostMapping("/submit")
@SysLog(module = SystemModule.VISIT, title = "拜访", biz = BizType.SUBMIT)
public R<?> submit(String id){
visitMainService.submitOaFlow(id);
return R.ok();
}
} }

25
src/main/java/com/qs/serve/modules/visit/common/VisitMainConst.java

@ -0,0 +1,25 @@
package com.qs.serve.modules.visit.common;
/**
* @author YenHex
* @since 2024/9/18
*/
public interface VisitMainConst {
/** 审批状态:-1=草稿; 0=审批中;1=完成;2-中止;3-回滚;4-作废;5-关闭 */
int CheckState_INIT = -1;
int CheckState_0 = 0;
int CheckState_1 = 1;
int CheckState_2 = 2;
int CheckState_3 = 3;
int CheckState_4 = 4;
int CheckState_5 = 5;
/** 拜访状态:0-默认;1-等待来访;2-取消;3-完成; 4-过期; */
int VisitStatus_0 = 0;
int VisitStatus_1 = 1;
int VisitStatus_2 = 2;
int VisitStatus_3 = 3;
int VisitStatus_4 = 4;
}

50
src/main/java/com/qs/serve/modules/visit/controller/VisitMainController.java

@ -6,9 +6,10 @@ import com.qs.serve.common.model.dto.PageVo;
import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.model.enums.BizType; import com.qs.serve.common.model.enums.BizType;
import com.qs.serve.common.model.enums.SystemModule; import com.qs.serve.common.model.enums.SystemModule;
import com.qs.serve.common.util.PageUtil; import com.qs.serve.common.util.*;
import com.qs.serve.common.util.CopierUtil; import com.qs.serve.modules.sys.entity.SysUser;
import com.qs.serve.common.util.StringUtils; import com.qs.serve.modules.sys.service.SysUserService;
import com.qs.serve.modules.visit.common.VisitMainConst;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
@ -32,6 +33,7 @@ import java.util.List;
public class VisitMainController { public class VisitMainController {
private VisitMainService visitMainService; private VisitMainService visitMainService;
private SysUserService sysUserService;
/** /**
* 翻页 * 翻页
@ -46,6 +48,20 @@ public class VisitMainController {
return R.byPageHelperList(list); return R.byPageHelperList(list);
} }
/**
* 翻页(我的)
* @param param
* @return
*/
@GetMapping("/pageMy")
public R<PageVo<VisitMain>> getPageMy(VisitMain param){
LambdaQueryWrapper<VisitMain> lqw = new LambdaQueryWrapper<>(param);
lqw.eq(VisitMain::getUserId,AuthContextUtils.getSysUserId());
PageUtil.startPage();
List<VisitMain> list = visitMainService.list(lqw);
return R.byPageHelperList(list);
}
/** /**
* ID查询 * ID查询
* @param id * @param id
@ -67,10 +83,32 @@ public class VisitMainController {
@SysLog(module = SystemModule.VISIT, title = "拜访", biz = BizType.UPDATE) @SysLog(module = SystemModule.VISIT, title = "拜访", biz = BizType.UPDATE)
public R<?> updateById(@RequestBody @Valid VisitMain param){ public R<?> updateById(@RequestBody @Valid VisitMain param){
param.setCheckState(null); param.setCheckState(null);
param.setVisitStatus(null);
boolean result = visitMainService.updateById(param); boolean result = visitMainService.updateById(param);
return R.isTrue(result); return R.isTrue(result);
} }
/**
* 取消/恢复
* @param id
* @param option 0-恢复 1-取消(默认)
* @return
*/
@PostMapping("/cancel/{id}/{option}")
public R<?> cancel(@PathVariable("id") String id,@PathVariable("option")Integer option){
VisitMain visitMain = visitMainService.getById(id);
if(visitMain.getCheckState() > VisitMainConst.CheckState_0){
Assert.throwEx("发起流程后无法取消操作");
}
if(option.equals(0)){
visitMain.setVisitStatus(VisitMainConst.VisitStatus_0);
}else {
visitMain.setVisitStatus(VisitMainConst.VisitStatus_2);
}
visitMainService.updateById(visitMain);
return R.ok();
}
/** /**
* 新增 * 新增
* @param param * @param param
@ -79,6 +117,12 @@ public class VisitMainController {
@PostMapping("/save") @PostMapping("/save")
@SysLog(module = SystemModule.VISIT, title = "拜访", biz = BizType.INSERT) @SysLog(module = SystemModule.VISIT, title = "拜访", biz = BizType.INSERT)
public R<?> save(@RequestBody @Valid VisitMain param){ public R<?> save(@RequestBody @Valid VisitMain param){
SysUser sysUser = sysUserService.getById(AuthContextUtils.getSysUserId());
param.setVisitCode(CodeGenUtil.getDataCode(CodeGenUtil.SourceDataKey.VISIT));
param.setUserId(sysUser.getId());
param.setUserCode(sysUser.getCode());
param.setUserName(sysUser.getName());
param.setCheckState(VisitMainConst.CheckState_INIT);
boolean result = visitMainService.save(param); boolean result = visitMainService.save(param);
return R.isTrue(result); return R.isTrue(result);
} }

20
src/main/java/com/qs/serve/modules/visit/entity/VisitMain.java

@ -31,9 +31,15 @@ public class VisitMain implements Serializable {
@TableId(type = IdType.ASSIGN_UUID) @TableId(type = IdType.ASSIGN_UUID)
private String id; private String id;
/** 审批状态 */ /** 拜访编码 */
private String visitCode;
/** 审批状态: 0=审批中;1=完成;2-中止;3-回滚;4-作废;5-关闭 */
private Integer checkState; private Integer checkState;
/** 拜访状态:0-默认;1-等待来访;2-已取消;3-完成; 4-过期 */
private Integer visitStatus;
/** 部门id */ /** 部门id */
@Length(max = 255,message = "部门id长度不能超过255字") @Length(max = 255,message = "部门id长度不能超过255字")
private String deptId; private String deptId;
@ -54,6 +60,18 @@ public class VisitMain implements Serializable {
@Length(max = 255,message = "用户名称长度不能超过255字") @Length(max = 255,message = "用户名称长度不能超过255字")
private String userName; private String userName;
/** 门卫id */
@Length(max = 255,message = "用户id长度不能超过255字")
private String checkUserId;
/** 门卫编码 */
@Length(max = 255,message = "用户编码长度不能超过255字")
private String checkUserCode;
/** 门卫名称 */
@Length(max = 255,message = "用户名称长度不能超过255字")
private String checkUserName;
/** 预约拜访日期 */ /** 预约拜访日期 */
@NotNull(message = "预约拜访日期不能为空") @NotNull(message = "预约拜访日期不能为空")
@DateTimeFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd")

6
src/main/java/com/qs/serve/modules/visit/service/VisitMainService.java

@ -10,5 +10,11 @@ import com.qs.serve.modules.visit.entity.VisitMain;
*/ */
public interface VisitMainService extends IService<VisitMain> { public interface VisitMainService extends IService<VisitMain> {
/**
* 提交方法到OA
* @param id
*/
void submitOaFlow(String id);
} }

5
src/main/java/com/qs/serve/modules/visit/service/impl/VisitMainServiceImpl.java

@ -18,5 +18,10 @@ import com.qs.serve.modules.visit.mapper.VisitMainMapper;
@AllArgsConstructor @AllArgsConstructor
public class VisitMainServiceImpl extends ServiceImpl<VisitMainMapper,VisitMain> implements VisitMainService { public class VisitMainServiceImpl extends ServiceImpl<VisitMainMapper,VisitMain> implements VisitMainService {
@Override
public void submitOaFlow(String id) {
}
} }

4
src/main/java/com/qs/serve/modules/wx/api/WxSvcLoginApi.java

@ -143,7 +143,7 @@ public class WxSvcLoginApi {
* 公众号测试登录 * 公众号测试登录
*/ */
@PostMapping("/mptest") @PostMapping("/mptest")
public R<?> login(HttpServletRequest request){ public R<?> login(HttpServletRequest request,@RequestBody @Valid WxLoginUser wxLoginUser){
Map<String,Object> objectMap = new HashMap<>(); Map<String,Object> objectMap = new HashMap<>();
String token = IdUtil.fastSimpleUUID(); String token = IdUtil.fastSimpleUUID();
//微信登录ID //微信登录ID
@ -153,6 +153,7 @@ public class WxSvcLoginApi {
LoginUser loginUser = new LoginUser("1","微信测试用户","", LoginUser loginUser = new LoginUser("1","微信测试用户","",
ServletUtils.getIp(request), LoginUserType.APP_USER,new ArrayList<>(),null,AuthContextUtils.getTenant()); ServletUtils.getIp(request), LoginUserType.APP_USER,new ArrayList<>(),null,AuthContextUtils.getTenant());
objectMap.put("token",token); objectMap.put("token",token);
String userType = wxLoginUser.getUserType();
String sysUserId = "1"; String sysUserId = "1";
Map<String,Object> tokenMap = new HashMap<>(10); Map<String,Object> tokenMap = new HashMap<>(10);
String client = "wx_app"; String client = "wx_app";
@ -160,6 +161,7 @@ public class WxSvcLoginApi {
String pctoken = JwtUtils.generateToken(sysUserId,loginUser.getTypeFlag(),client); String pctoken = JwtUtils.generateToken(sysUserId,loginUser.getTypeFlag(),client);
redisService.set(redisKey,pctoken); redisService.set(redisKey,pctoken);
tokenMap.put("token", pctoken); tokenMap.put("token", pctoken);
tokenMap.put("userType", userType);
tokenMap.put("userId", sysUserId); tokenMap.put("userId", sysUserId);
tokenMap.put("IP", loginUser.getLoginIp()); tokenMap.put("IP", loginUser.getLoginIp());
tokenMap.put("loginType",client); tokenMap.put("loginType",client);

8
src/main/java/com/qs/serve/modules/wx/controller/WxFormPushController.java

@ -125,7 +125,7 @@ public class WxFormPushController {
WxApp app = wxAppService.getOne(new LambdaQueryWrapper<>(),false); WxApp app = wxAppService.getOne(new LambdaQueryWrapper<>(),false);
LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>();
lqw.eq(WxUser::getAppId,app.getId()); lqw.eq(WxUser::getAppId,app.getId());
lqw.in(WxUser::getSysUserCode,userCodes); lqw.in(WxUser::getUserCode,userCodes);
List<WxUser> wxUserList = wxUserService.list(lqw); List<WxUser> wxUserList = wxUserService.list(lqw);
Set<String> wxUserIdSet = new HashSet<>(); Set<String> wxUserIdSet = new HashSet<>();
for (WxUser wxUser : wxUserList) { for (WxUser wxUser : wxUserList) {
@ -177,7 +177,7 @@ public class WxFormPushController {
WxApp app = wxAppService.getOne(new LambdaQueryWrapper<>(),false); WxApp app = wxAppService.getOne(new LambdaQueryWrapper<>(),false);
LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>();
lqw.eq(WxUser::getAppId,app.getId()); lqw.eq(WxUser::getAppId,app.getId());
lqw.in(WxUser::getSysUserId,userIds); lqw.in(WxUser::getUserId,userIds);
List<WxUser> wxUserList = wxUserService.list(lqw); List<WxUser> wxUserList = wxUserService.list(lqw);
Set<String> wxUserIdSet = new HashSet<>(); Set<String> wxUserIdSet = new HashSet<>();
int successCount = 0; int successCount = 0;
@ -267,7 +267,7 @@ public class WxFormPushController {
LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>();
WxApp app = wxAppService.getOne(new LambdaQueryWrapper<>(),false); WxApp app = wxAppService.getOne(new LambdaQueryWrapper<>(),false);
lqw.eq(WxUser::getAppId,app.getId()); lqw.eq(WxUser::getAppId,app.getId());
lqw.in(WxUser::getSysUserId,userIds); lqw.in(WxUser::getUserId,userIds);
List<WxUser> wxUserList = wxUserService.list(lqw); List<WxUser> wxUserList = wxUserService.list(lqw);
List<WxFormPushUser> pushUserList = new ArrayList<>(); List<WxFormPushUser> pushUserList = new ArrayList<>();
Set<String> wxUserIdSet = new HashSet<>(); Set<String> wxUserIdSet = new HashSet<>();
@ -275,7 +275,7 @@ public class WxFormPushController {
for (SysUser sysUser : sysUserList) { for (SysUser sysUser : sysUserList) {
int pushOk = 0; int pushOk = 0;
for (WxUser wxUser : wxUserList) { for (WxUser wxUser : wxUserList) {
if(wxUser.getSysUserId().equals(sysUser.getId())){ if(wxUser.getUserId().equals(sysUser.getId())){
if (wxUser.getOpenId().equals("0")) { if (wxUser.getOpenId().equals("0")) {
continue; continue;
} }

24
src/main/java/com/qs/serve/modules/wx/controller/WxUserController.java

@ -76,7 +76,7 @@ public class WxUserController {
@PostMapping("/bind") @PostMapping("/bind")
public R<?> bind(@RequestBody @Valid WxUserBindBo param){ public R<?> bind(@RequestBody @Valid WxUserBindBo param){
WxUser wxUser = wxUserService.getById(param.getWxUserId()); WxUser wxUser = wxUserService.getById(param.getWxUserId());
if(StringUtils.hasText(wxUser.getSysUserId())&&!wxUser.getSysUserId().equals("0")){ if(StringUtils.hasText(wxUser.getUserId())&&!wxUser.getUserId().equals("0")){
return R.error("该微信用户已被绑定"); return R.error("该微信用户已被绑定");
} }
SysUser sysUser = sysUserService.getById(param.getSysUserId()); SysUser sysUser = sysUserService.getById(param.getSysUserId());
@ -86,8 +86,8 @@ public class WxUserController {
if(!StringUtils.hasText(wxUser.getUnionId())){ if(!StringUtils.hasText(wxUser.getUnionId())){
WxUser updVo = new WxUser(); WxUser updVo = new WxUser();
updVo.setId(wxUser.getId()); updVo.setId(wxUser.getId());
updVo.setSysUserId(sysUser.getId()); updVo.setUserId(sysUser.getId());
updVo.setSysUserCode(sysUser.getCode()); updVo.setUserCode(sysUser.getCode());
updVo.setEmpName(sysUser.getName()); updVo.setEmpName(sysUser.getName());
updVo.setPhone(sysUser.getMobile()); updVo.setPhone(sysUser.getMobile());
wxUserService.updateById(updVo); wxUserService.updateById(updVo);
@ -95,8 +95,8 @@ public class WxUserController {
LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>();
lqw.eq(WxUser::getUnionId,wxUser.getUnionId()); lqw.eq(WxUser::getUnionId,wxUser.getUnionId());
WxUser updVo = new WxUser(); WxUser updVo = new WxUser();
updVo.setSysUserId(sysUser.getId()); updVo.setUserId(sysUser.getId());
updVo.setSysUserCode(sysUser.getCode()); updVo.setUserCode(sysUser.getCode());
updVo.setEmpName(sysUser.getName()); updVo.setEmpName(sysUser.getName());
updVo.setPhone(sysUser.getMobile()); updVo.setPhone(sysUser.getMobile());
wxUserService.update(updVo,lqw); wxUserService.update(updVo,lqw);
@ -115,11 +115,11 @@ public class WxUserController {
String wxUserId = null; String wxUserId = null;
if(StringUtils.hasText(param.getWxUserId())){ if(StringUtils.hasText(param.getWxUserId())){
WxUser wxUser = wxUserService.getById(param.getWxUserId()); WxUser wxUser = wxUserService.getById(param.getWxUserId());
sysUserId = wxUser.getSysUserId(); sysUserId = wxUser.getUserId();
wxUserId = wxUser.getId(); wxUserId = wxUser.getId();
if(!StringUtils.hasText(wxUser.getUnionId())){ if(!StringUtils.hasText(wxUser.getUnionId())){
wxUser.setSysUserId("0"); wxUser.setUserId("0");
wxUser.setSysUserCode(""); wxUser.setUserCode("");
wxUser.setEmpName(wxUser.getNickName()); wxUser.setEmpName(wxUser.getNickName());
wxUser.setPhone(""); wxUser.setPhone("");
wxUserService.updateById(wxUser); wxUserService.updateById(wxUser);
@ -127,8 +127,8 @@ public class WxUserController {
LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<WxUser> lqw = new LambdaQueryWrapper<>();
lqw.eq(WxUser::getUnionId,wxUser.getUnionId()); lqw.eq(WxUser::getUnionId,wxUser.getUnionId());
WxUser updVo = new WxUser(); WxUser updVo = new WxUser();
updVo.setSysUserId("0"); updVo.setUserId("0");
wxUser.setSysUserCode(""); wxUser.setUserCode("");
updVo.setEmpName(wxUser.getNickName()); updVo.setEmpName(wxUser.getNickName());
updVo.setPhone(""); updVo.setPhone("");
wxUserService.update(updVo,lqw); wxUserService.update(updVo,lqw);
@ -138,8 +138,8 @@ public class WxUserController {
SysUser sysUser = sysUserService.getById(param.getSysUserId()); SysUser sysUser = sysUserService.getById(param.getSysUserId());
List<WxUser> wxUserList = wxUserService.getBySysUserId(sysUser.getId()); List<WxUser> wxUserList = wxUserService.getBySysUserId(sysUser.getId());
for (WxUser wxUser : wxUserList) { for (WxUser wxUser : wxUserList) {
wxUser.setSysUserId("0"); wxUser.setUserId("0");
wxUser.setSysUserCode(""); wxUser.setUserCode("");
wxUser.setEmpName(wxUser.getNickName()); wxUser.setEmpName(wxUser.getNickName());
wxUser.setPhone(""); wxUser.setPhone("");
wxUserService.updateById(wxUser); wxUserService.updateById(wxUser);

10
src/main/resources/mapper/sys/SysUserMapper.xml

@ -58,10 +58,6 @@
<select id="listUser" parameterType="com.qs.serve.modules.sys.entity.SysUser" resultMap="sysUserMap"> <select id="listUser" parameterType="com.qs.serve.modules.sys.entity.SysUser" resultMap="sysUserMap">
SELECT <include refid="sysUserSql"/> FROM sys_user sys_user SELECT <include refid="sysUserSql"/> FROM sys_user sys_user
<if test="query.roleIds!=null and query.roleIds.size > 0">
left join sys_user_role sys_user_role ON sys_user_role.user_id = sys_user.id
</if>
<if test="query.selectPostIds!=null and query.selectPostIds.size > 0"> <if test="query.selectPostIds!=null and query.selectPostIds.size > 0">
left join sys_post_user sys_post_user ON sys_post_user.user_id = sys_user.id left join sys_post_user sys_post_user ON sys_post_user.user_id = sys_user.id
</if> </if>
@ -95,12 +91,6 @@
#{muDeptId} #{muDeptId}
</foreach> </foreach>
</if> </if>
<if test="query.roleIds!=null and query.roleIds.size > 0">
and sys_user_role.del_flag = '0' and sys_user_role.role_id in
<foreach collection="query.roleIds" item ="roleId" index="i" open="(" close=")" separator=",">
#{roleId}
</foreach>
</if>
<if test="query.selectIds!=null and query.selectIds.size > 0"> <if test="query.selectIds!=null and query.selectIds.size > 0">
and sys_user.id in and sys_user.id in
<foreach collection="query.selectIds" item ="selectId" index="i" open="(" close=")" separator=","> <foreach collection="query.selectIds" item ="selectId" index="i" open="(" close=")" separator=",">

Loading…
Cancel
Save