111
This commit is contained in:
1 parent
51b7cfc96b
commit
88b23c696a
5 files changed
+53
-49
No files matched your search
+7
-9
@@ -19,18 +19,13 @@
|
||||
|
||||
package com.bsd.pjcloud.admin.api.feign;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.bsd.pjcloud.admin.api.dto.UserDTO;
|
||||
import com.bsd.pjcloud.admin.api.dto.UserInfo;
|
||||
import com.bsd.pjcloud.admin.api.entity.SysUser;
|
||||
import com.bsd.pjcloud.admin.api.vo.UserVO;
|
||||
import com.bsd.pjcloud.common.core.constant.ServiceNameConstants;
|
||||
import com.bsd.pjcloud.common.core.exception.ErrorCodes;
|
||||
import com.bsd.pjcloud.common.core.util.MsgUtils;
|
||||
import com.bsd.pjcloud.common.core.util.R;
|
||||
import com.bsd.pjcloud.common.feign.annotation.NoToken;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@@ -45,6 +40,9 @@ import java.util.Set;
|
||||
@FeignClient(contextId = "remoteUserService", value = ServiceNameConstants.UPMS_SERVICE)
|
||||
public interface RemoteUserService {
|
||||
|
||||
@PostMapping("/user/inner-page")
|
||||
R<List<UserVO>> getRemoteUserPage(@RequestParam Long current, @RequestParam Long size, @RequestBody UserDTO userDTO);
|
||||
|
||||
/**
|
||||
* 通过用户名查询用户、角色信息
|
||||
*
|
||||
@@ -173,6 +171,7 @@ public interface RemoteUserService {
|
||||
|
||||
/**
|
||||
* 根据ids获取map集合
|
||||
*
|
||||
* @param userIds
|
||||
* @return
|
||||
*/
|
||||
@@ -180,9 +179,8 @@ public interface RemoteUserService {
|
||||
R<Map<Long, SysUser>> getUserMap(@RequestParam(value = "userIds") Set<Long> userIds);
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/user/getLikeNameOrByMobileScope")
|
||||
R< List<SysUser>> getLikeNameOrByMobileScope(@RequestParam(value = "name",required = false) String name,
|
||||
@RequestParam(value = "mobile",required = false) String mobile);
|
||||
R<List<SysUser>> getLikeNameOrByMobileScope(@RequestParam(value = "name", required = false) String name,
|
||||
@RequestParam(value = "mobile", required = false) String mobile);
|
||||
|
||||
}
|
||||
+19
-7
@@ -21,7 +21,9 @@ package com.bsd.pjcloud.admin.controller;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
|
||||
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.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.bsd.pjcloud.admin.api.dto.UserDTO;
|
||||
@@ -199,10 +201,6 @@ public class SysUserController {
|
||||
|
||||
/**
|
||||
* 分页查询用户
|
||||
*
|
||||
* @param page 参数集
|
||||
* @param userDTO 查询参数列表
|
||||
* @return 用户集合
|
||||
*/
|
||||
@GetMapping("/page")
|
||||
public R getUserPage(@ParameterObject Page page, @ParameterObject UserDTO userDTO) {
|
||||
@@ -210,6 +208,20 @@ public class SysUserController {
|
||||
return R.ok(userService.getUsersWithRolePage(page, userDTO));
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询用户
|
||||
*/
|
||||
@PostMapping("/inner-page")
|
||||
public R<List<UserVO>> getRemoteUserPage(@RequestParam Long current, @RequestParam Long size, @RequestBody UserDTO userDTO) {
|
||||
if (ObjectUtil.isEmpty(userDTO.getIsFindCheckUser())) {
|
||||
userDTO.setIsFindCheckUser(true);
|
||||
}
|
||||
Page pageParams = new Page();
|
||||
pageParams.setCurrent(1);
|
||||
pageParams.setSize(size);
|
||||
return R.ok(userService.getUsersWithRolePage(pageParams, userDTO).getRecords());
|
||||
}
|
||||
|
||||
/**
|
||||
* 管理员更新用户信息
|
||||
*
|
||||
@@ -417,10 +429,10 @@ public class SysUserController {
|
||||
|
||||
@Inner
|
||||
@GetMapping("/getLikeNameOrByMobileScope")
|
||||
public R< List<SysUser>> getLikeNameOrByMobileScope(@RequestParam(value = "name",required = false) String name,
|
||||
@RequestParam(value = "mobile",required = false) String mobile) {
|
||||
public R<List<SysUser>> getLikeNameOrByMobileScope(@RequestParam(value = "name", required = false) String name,
|
||||
@RequestParam(value = "mobile", required = false) String mobile) {
|
||||
List<SysUser> user = userService.listScopeByLikeNameOrByMobileScope(Wrappers.<SysUser>query().lambda()
|
||||
.like(StringUtils.isNotBlank(name),SysUser::getName, name).eq(StringUtils.isNotBlank(mobile),SysUser::getPhone, mobile));
|
||||
.like(StringUtils.isNotBlank(name), SysUser::getName, name).eq(StringUtils.isNotBlank(mobile), SysUser::getPhone, mobile));
|
||||
if (user == null) {
|
||||
return R.failed(MsgUtils.getMessage(ErrorCodes.SYS_USER_USERINFO_EMPTY, name, mobile));
|
||||
}
|
||||
|
||||
+1
-1
@@ -59,7 +59,7 @@ public interface SysUserService extends IService<SysUser> {
|
||||
* @param userDTO 参数列表
|
||||
* @return
|
||||
*/
|
||||
IPage getUsersWithRolePage(Page page, UserDTO userDTO);
|
||||
IPage<UserVO> getUsersWithRolePage(Page page, UserDTO userDTO);
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
|
||||
+1
-1
@@ -239,7 +239,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public IPage getUsersWithRolePage(Page page, UserDTO userDTO) {
|
||||
public IPage<UserVO> getUsersWithRolePage(Page page, UserDTO userDTO) {
|
||||
IPage<UserVO> list = baseMapper.getUserVosPage(page, userDTO, DataScope.of());
|
||||
if (ObjectUtil.isNotEmpty(list.getRecords())) {
|
||||
List<Long> userIds = list.getRecords().stream().map(UserVO::getUserId).distinct().toList();
|
||||
|
||||
+25
-31
@@ -4,16 +4,16 @@ import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.LocalDateTimeUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.bsd.pjcloud.admin.api.dto.UserInfo;
|
||||
import com.bsd.pjcloud.admin.api.dto.UserDTO;
|
||||
import com.bsd.pjcloud.admin.api.entity.SysDept;
|
||||
import com.bsd.pjcloud.admin.api.entity.SysRole;
|
||||
import com.bsd.pjcloud.admin.api.feign.RemoteDeptService;
|
||||
import com.bsd.pjcloud.admin.api.feign.RemoteRoleService;
|
||||
import com.bsd.pjcloud.admin.api.feign.RemoteUserService;
|
||||
import com.bsd.pjcloud.admin.api.vo.UserVO;
|
||||
import com.bsd.pjcloud.common.core.constant.enums.YesNoEnum;
|
||||
import com.bsd.pjcloud.common.data.datascope.DataScope;
|
||||
import com.bsd.pjcloud.common.data.datascope.DataScopeFuncEnum;
|
||||
import com.bsd.pjcloud.thirdparty.api.feign.RemoterThirdZyService;
|
||||
import com.bsd.pjcloud.thirdparty.dto.zy.mer.ZyMerSyncAccClassInfoDto;
|
||||
import com.bsd.pjcloud.thirdparty.dto.zy.mer.ZyMerSyncAccountInfoDto;
|
||||
@@ -234,37 +234,31 @@ public class WalletThirdZyServiceImpl implements WalletThirdZyService {
|
||||
|
||||
|
||||
private int syncAllUserGroup(Page page, Long userId, Long roleId, Long walletTypeId, List<Long> syncZyDeptIds) {
|
||||
WalletManageDto query = new WalletManageDto();
|
||||
query.setWalletTypeId(walletTypeId);
|
||||
if (ObjectUtil.isNotEmpty(userId)) query.setUserId(userId);
|
||||
DataScope dataScope = DataScope.of();
|
||||
dataScope.func(DataScopeFuncEnum.ALL);
|
||||
Page<WalletManageVo> userPage = walletManageService.scopePageList(page, query, dataScope);
|
||||
if (ObjectUtil.isEmpty(userPage.getRecords())) return 0;
|
||||
UserDTO query = new UserDTO();
|
||||
if (ObjectUtil.isNotEmpty(userId)) {
|
||||
query.setUserId(userId);
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(syncZyDeptIds)) {
|
||||
query.setDeptIds(syncZyDeptIds);
|
||||
}
|
||||
List<UserVO> userVOList = remoteUserService.getRemoteUserPage(page.getCurrent(), page.getSize(), query).getData();
|
||||
if (ObjectUtil.isEmpty(userVOList)) return 0;
|
||||
List<ZyMerSyncAccountInfoDto> syncList = new ArrayList<>();
|
||||
String syncAllMchVersion = getSyncAllMchVersion();
|
||||
for (WalletManageVo v : userPage.getRecords()) {
|
||||
// 查询用户
|
||||
UserInfo user = remoteUserService.getByUserId(v.getUserId()).getData();
|
||||
if (ObjectUtil.isEmpty(user)) {
|
||||
log.error("|{}|syncAllUserGroup用户不存在WalletManageVo为空|{}|", TAG, JSONUtil.toJsonStr(v));
|
||||
continue;
|
||||
}
|
||||
// 校验用户是否在可以同步的正元部门下面
|
||||
if (!syncZyDeptIds.contains(user.getSysUser().getDeptId())) {
|
||||
log.error("|{}|syncAllUserGroup用户不在可以同步的正元部门下面|{}|", TAG, JSONUtil.toJsonStr(v));
|
||||
continue;
|
||||
}
|
||||
MchManageVo mch = mchManageService.getFirstMchByDeptId(user.getSysUser().getDeptId());
|
||||
for (UserVO v : userVOList) {
|
||||
MchManageVo mch = mchManageService.getFirstMchByDeptId(v.getDeptId());
|
||||
// 查询是在商户下
|
||||
if (ObjectUtil.isEmpty(mch)) {
|
||||
log.error("|{}|syncAllUserGroup用户部门商户id为空WalletManageVo|{}|", TAG, JSONUtil.toJsonStr(v));
|
||||
continue;
|
||||
}
|
||||
if (ObjectUtil.isEmpty(v.getCardNumber())) {
|
||||
// 查询用户钱包
|
||||
WalletManageEntity userWallet = walletManageService.getWallet(v.getUserId(), walletTypeId);
|
||||
if (ObjectUtil.isEmpty(userWallet) || ObjectUtil.isEmpty(userWallet.getCardNumber())) {
|
||||
walletManageService.createWallet(v.getUserId());
|
||||
WalletManageEntity wallet = walletManageService.getWallet(v.getId());
|
||||
WalletManageEntity wallet = walletManageService.getWallet(v.getUserId(), walletTypeId);
|
||||
if (ObjectUtil.isNotEmpty(wallet) && ObjectUtil.isNotEmpty(wallet.getCardNumber())) {
|
||||
v.setCardNumber(wallet.getCardNumber());
|
||||
userWallet = wallet;
|
||||
} else {
|
||||
continue;
|
||||
}
|
||||
@@ -272,13 +266,13 @@ public class WalletThirdZyServiceImpl implements WalletThirdZyService {
|
||||
ZyMerSyncAccountInfoDto item = new ZyMerSyncAccountInfoDto();
|
||||
item.setAccName(v.getUsername());
|
||||
item.setAccNum(v.getUserId().toString());
|
||||
item.setCardAccNum(v.getId());
|
||||
item.setCardSID(v.getCardNumber());
|
||||
item.setCardStatus(getCardStatus(v.getStatus()));
|
||||
item.setEPID(user.getSysUser().getDeptId().toString());
|
||||
item.setCardAccNum(userWallet.getId());
|
||||
item.setCardSID(userWallet.getCardNumber());
|
||||
item.setCardStatus(getCardStatus(userWallet.getStatus()));
|
||||
item.setEPID(v.getDeptId().toString());
|
||||
item.setPerCode(v.getUserId().toString());
|
||||
item.setAccClassID(roleId.toString());
|
||||
item.setPhoneNo(v.getUserMobile());
|
||||
item.setPhoneNo(v.getPhone());
|
||||
item.setFixId(syncAllMchVersion);
|
||||
syncList.add(item);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user