Commit a27db550 by zhangxingmin

Merge remote-tracking branch 'origin/test' into prod

parents 12be9e77 d9080f77
...@@ -6,7 +6,7 @@ LABEL maintainer="zxm<2060197959@qq.com>" ...@@ -6,7 +6,7 @@ LABEL maintainer="zxm<2060197959@qq.com>"
RUN mkdir -p /home/app RUN mkdir -p /home/app
# 拷贝项目jar - 使用可执行的 fat JAR # 拷贝项目jar - 使用可执行的 fat JAR
COPY target/yd-user-api-1.0-SNAPSHOT-exec.jar /home/app/yd-user-api.jar COPY target/yd-user-api-1.0-SNAPSHOT-exec.jar /home/app/yd-user-api.jar
# 执行命令启动jar # 执行命令启动jar,并设置JVM内存参数
ENTRYPOINT ["java", "-jar", "/home/app/yd-user-api.jar"] ENTRYPOINT ["java", "-Xmx256m", "-Xms128m", "-jar", "/home/app/yd-user-api.jar"]
# 暴露端口 # 暴露端口
EXPOSE 9003 EXPOSE 9003
...@@ -4,9 +4,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,9 +4,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.api.service.ApiClientUserService; import com.yd.user.api.service.ApiClientUserService;
import com.yd.user.feign.client.clientuser.ApiClientUserFeignClient; import com.yd.user.feign.client.clientuser.ApiClientUserFeignClient;
import com.yd.user.feign.request.clientuser.ApiClientUserDetailBodyRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserEditApprovalStatusRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest; import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserSaveRequest;
import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse; import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse;
import com.yd.user.feign.response.clientuser.ApiClientUserPageResponse; import com.yd.user.feign.response.clientuser.ApiClientUserPageResponse;
import com.yd.user.feign.response.clientuser.ApiClientUserSaveResponse;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
...@@ -60,4 +64,40 @@ public class ApiClientUserController implements ApiClientUserFeignClient { ...@@ -60,4 +64,40 @@ public class ApiClientUserController implements ApiClientUserFeignClient {
return apiClientUserService.clientUserBizIdList(tenantBizId,projectBizId); return apiClientUserService.clientUserBizIdList(tenantBizId,projectBizId);
} }
/**
* 获取客户端用户详情 body入参
* @return
*/
@Override
public Result<ApiClientUserDetailResponse> detail(ApiClientUserDetailBodyRequest request) {
return apiClientUserService.detail(request);
}
/**
* 保存客户端用户信息(新增或者编辑)
* @return
*/
@Override
public Result<ApiClientUserSaveResponse> save(ApiClientUserSaveRequest request) {
return apiClientUserService.save(request);
}
/**
* 编辑-客户端用户审批状态
* @return
*/
@Override
public Result editApprovalStatus(ApiClientUserEditApprovalStatusRequest request) {
return apiClientUserService.editApprovalStatus(request);
}
/**
* 编辑-客户端用户openId
* @return
*/
@Override
public Result editOpenId(String clientUserBizId,String openId) {
return apiClientUserService.editOpenId(clientUserBizId,openId);
}
} }
...@@ -7,13 +7,17 @@ import com.yd.user.feign.client.reltenantproject.ApiRelTenantProjectFeignClient; ...@@ -7,13 +7,17 @@ import com.yd.user.feign.client.reltenantproject.ApiRelTenantProjectFeignClient;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantproject.QueryRelTenantProjectListRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.feign.response.reltenantproject.QueryRelTenantProjectListResponse;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* 租户-项目关系信息(租户管理-项目配置) * 租户-项目关系信息(租户管理-项目配置)
* *
...@@ -67,4 +71,14 @@ public class ApiRelTenantProjectController implements ApiRelTenantProjectFeignCl ...@@ -67,4 +71,14 @@ public class ApiRelTenantProjectController implements ApiRelTenantProjectFeignCl
public Result<IPage<ApiRelTenantProjectSelectPageResponse>> selectProjectPage(ApiRelTenantProjectSelectPageRequest request) { public Result<IPage<ApiRelTenantProjectSelectPageResponse>> selectProjectPage(ApiRelTenantProjectSelectPageRequest request) {
return apiRelTenantProjectService.selectProjectPage(request); return apiRelTenantProjectService.selectProjectPage(request);
} }
/**
* 根据条件查询租户和项目关系数据
* @param request
* @return
*/
@Override
public Result<List<QueryRelTenantProjectListResponse>> queryRelTenantProjectList(QueryRelTenantProjectListRequest request) {
return apiRelTenantProjectService.queryRelTenantProjectList(request);
}
} }
...@@ -6,6 +6,7 @@ import com.yd.user.api.service.ApiSysProjectService; ...@@ -6,6 +6,7 @@ import com.yd.user.api.service.ApiSysProjectService;
import com.yd.user.feign.client.sysproject.ApiSysProjectFeignClient; import com.yd.user.feign.client.sysproject.ApiSysProjectFeignClient;
import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectListRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
...@@ -14,6 +15,8 @@ import org.springframework.validation.annotation.Validated; ...@@ -14,6 +15,8 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* 项目信息 * 项目信息
* *
...@@ -39,6 +42,16 @@ public class ApiSysProjectController implements ApiSysProjectFeignClient { ...@@ -39,6 +42,16 @@ public class ApiSysProjectController implements ApiSysProjectFeignClient {
} }
/** /**
* 项目列表查询
* @param request
* @return
*/
@Override
public Result<List<ApiSysProjectDetailResponse>> list(ApiSysProjectListRequest request) {
return apiSysProjectService.list(request);
}
/**
* 获取项目详情 * 获取项目详情
* @param projectBizId 项目唯一标识(业务ID) * @param projectBizId 项目唯一标识(业务ID)
* @return * @return
......
...@@ -2,9 +2,13 @@ package com.yd.user.api.service; ...@@ -2,9 +2,13 @@ package com.yd.user.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.feign.request.clientuser.ApiClientUserDetailBodyRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserEditApprovalStatusRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest; import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserSaveRequest;
import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse; import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse;
import com.yd.user.feign.response.clientuser.ApiClientUserPageResponse; import com.yd.user.feign.response.clientuser.ApiClientUserPageResponse;
import com.yd.user.feign.response.clientuser.ApiClientUserSaveResponse;
import java.util.List; import java.util.List;
...@@ -14,6 +18,14 @@ public interface ApiClientUserService { ...@@ -14,6 +18,14 @@ public interface ApiClientUserService {
Result<ApiClientUserDetailResponse> detail(String clientUserBizId); Result<ApiClientUserDetailResponse> detail(String clientUserBizId);
Result<ApiClientUserDetailResponse> detail(ApiClientUserDetailBodyRequest request);
Result<ApiClientUserSaveResponse> save(ApiClientUserSaveRequest request);
Result editApprovalStatus(ApiClientUserEditApprovalStatusRequest request);
Result editOpenId(String clientUserBizId, String openId);
Result saveClientUserList(List<String> userBizIdList, Result saveClientUserList(List<String> userBizIdList,
String tenantBizId, String tenantBizId,
String projectBizId); String projectBizId);
......
...@@ -5,8 +5,10 @@ import com.yd.common.result.Result; ...@@ -5,8 +5,10 @@ import com.yd.common.result.Result;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantproject.QueryRelTenantProjectListRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.feign.response.reltenantproject.QueryRelTenantProjectListResponse;
import java.util.List; import java.util.List;
...@@ -28,4 +30,5 @@ public interface ApiRelTenantProjectService { ...@@ -28,4 +30,5 @@ public interface ApiRelTenantProjectService {
Result delRelByTenantBizId(String tenantBizId); Result delRelByTenantBizId(String tenantBizId);
Result<List<QueryRelTenantProjectListResponse>> queryRelTenantProjectList(QueryRelTenantProjectListRequest request);
} }
...@@ -4,14 +4,19 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,14 +4,19 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectListRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
import java.util.List;
public interface ApiSysProjectService { public interface ApiSysProjectService {
Result<IPage<ApiSysProjectPageResponse>> page(ApiSysProjectPageRequest request); Result<IPage<ApiSysProjectPageResponse>> page(ApiSysProjectPageRequest request);
Result<List<ApiSysProjectDetailResponse>> list(ApiSysProjectListRequest request);
Result<ApiSysProjectDetailResponse> detail(String projectBizId); Result<ApiSysProjectDetailResponse> detail(String projectBizId);
Result add(ApiSysProjectAddRequest request); Result add(ApiSysProjectAddRequest request);
......
...@@ -13,9 +13,13 @@ import com.yd.common.utils.RandomStringGenerator; ...@@ -13,9 +13,13 @@ import com.yd.common.utils.RandomStringGenerator;
import com.yd.csf.feign.client.agentreferralrelation.ApiAgentReferralRelationFeignClient; import com.yd.csf.feign.client.agentreferralrelation.ApiAgentReferralRelationFeignClient;
import com.yd.csf.feign.request.agentreferralrelation.ApiAgentReferralRelationSaveRequest; import com.yd.csf.feign.request.agentreferralrelation.ApiAgentReferralRelationSaveRequest;
import com.yd.user.api.service.ApiClientUserService; import com.yd.user.api.service.ApiClientUserService;
import com.yd.user.feign.request.clientuser.ApiClientUserDetailBodyRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserEditApprovalStatusRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest; import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserSaveRequest;
import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse; import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse;
import com.yd.user.feign.response.clientuser.ApiClientUserPageResponse; import com.yd.user.feign.response.clientuser.ApiClientUserPageResponse;
import com.yd.user.feign.response.clientuser.ApiClientUserSaveResponse;
import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse; import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse;
import com.yd.user.service.dto.ClientUserDto; import com.yd.user.service.dto.ClientUserDto;
import com.yd.user.service.dto.SysUserDto; import com.yd.user.service.dto.SysUserDto;
...@@ -23,14 +27,13 @@ import com.yd.user.service.model.ClientUser; ...@@ -23,14 +27,13 @@ import com.yd.user.service.model.ClientUser;
import com.yd.user.service.model.SysUser; import com.yd.user.service.model.SysUser;
import com.yd.user.service.service.IClientUserService; import com.yd.user.service.service.IClientUserService;
import com.yd.user.service.service.ISysUserService; import com.yd.user.service.service.ISysUserService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List; import java.util.*;
import java.util.Objects;
import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Service @Service
...@@ -68,10 +71,105 @@ public class ApiClientUserServiceImpl implements ApiClientUserService { ...@@ -68,10 +71,105 @@ public class ApiClientUserServiceImpl implements ApiClientUserService {
ClientUser clientUser = result.getData(); ClientUser clientUser = result.getData();
ApiClientUserDetailResponse response = new ApiClientUserDetailResponse(); ApiClientUserDetailResponse response = new ApiClientUserDetailResponse();
BeanUtils.copyProperties(clientUser,response); BeanUtils.copyProperties(clientUser,response);
response.setBankFileUrlList(StringUtils.isNotBlank(clientUser.getBankFileUrl()) ? Arrays.stream(clientUser.getBankFileUrl().split(";"))
.map(String::trim)
.filter(s -> !s.isEmpty())
.collect(Collectors.toList()) : new ArrayList<>());
response.setIdCardFileUrlList(StringUtils.isNotBlank(clientUser.getIdCardFileUrl()) ? Arrays.stream(clientUser.getIdCardFileUrl().split(";"))
.map(String::trim)
.filter(s -> !s.isEmpty())
.collect(Collectors.toList()) : new ArrayList<>());
return Result.success(response);
}
/**
* 获取客户端用户详情 body入参
* @return
*/
@Override
public Result<ApiClientUserDetailResponse> detail(ApiClientUserDetailBodyRequest request) {
ApiClientUserDetailResponse response = null;
List<ClientUser> clientUserList = iClientUserService.queryList(ClientUserDto.builder()
.tenantBizId(request.getTenantBizId())
.projectBizId(request.getProjectBizId())
.clientUserBizId(request.getClientUserBizId())
.build());
if (!CollectionUtils.isEmpty(clientUserList)) {
response = new ApiClientUserDetailResponse();
ClientUser clientUser = clientUserList.get(0);
BeanUtils.copyProperties(clientUser,response);
response.setBankFileUrlList(StringUtils.isNotBlank(clientUser.getBankFileUrl()) ? Arrays.stream(clientUser.getBankFileUrl().split(";"))
.map(String::trim)
.filter(s -> !s.isEmpty())
.collect(Collectors.toList()) : new ArrayList<>());
response.setIdCardFileUrlList(StringUtils.isNotBlank(clientUser.getIdCardFileUrl()) ? Arrays.stream(clientUser.getIdCardFileUrl().split(";"))
.map(String::trim)
.filter(s -> !s.isEmpty())
.collect(Collectors.toList()) : new ArrayList<>());
}
return Result.success(response); return Result.success(response);
} }
/** /**
* 保存客户端用户信息(新增或者编辑)
* @return
*/
@Override
public Result<ApiClientUserSaveResponse> save(ApiClientUserSaveRequest request) {
if (StringUtils.isNotBlank(request.getClientUserBizId())) {
//客户端用户表唯一业务ID不为空做编辑更新
ClientUser clientUser = iClientUserService.queryOne(request.getClientUserBizId());
if (Objects.isNull(clientUser)) {
throw new BusinessException("客户端用户信息不存在");
}
BeanUtils.copyProperties(request,clientUser);
clientUser.setBankFileUrl(!CollectionUtils.isEmpty(request.getBankFileUrlList()) ? String.join(";",request.getBankFileUrlList()) : "");
clientUser.setIdCardFileUrl(!CollectionUtils.isEmpty(request.getIdCardFileUrlList()) ? String.join(";",request.getIdCardFileUrlList()) : "");
iClientUserService.saveOrUpdate(clientUser);
}else {
//为空做新增
ClientUser clientUser = new ClientUser();
BeanUtils.copyProperties(request,clientUser);
clientUser.setClientUserBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_CLIENT_USER.getCode()));
clientUser.setBankFileUrl(!CollectionUtils.isEmpty(request.getBankFileUrlList()) ? String.join(";",request.getBankFileUrlList()) : "");
clientUser.setIdCardFileUrl(!CollectionUtils.isEmpty(request.getIdCardFileUrlList()) ? String.join(";",request.getIdCardFileUrlList()) : "");
iClientUserService.saveOrUpdate(clientUser);
}
return Result.success();
}
/**
* 编辑-客户端用户审批状态
* @return
*/
@Override
public Result editApprovalStatus(ApiClientUserEditApprovalStatusRequest request) {
ClientUser clientUser = iClientUserService.queryOne(request.getClientUserBizId());
if (Objects.isNull(clientUser)) {
throw new BusinessException("客户端用户信息不存在");
}
clientUser.setApprovalStatus(request.getApprovalStatus());
clientUser.setRemark(request.getRemark());
iClientUserService.saveOrUpdate(clientUser);
return Result.success();
}
/**
* 编辑-客户端用户openId
* @return
*/
@Override
public Result editOpenId(String clientUserBizId, String openId) {
ClientUser clientUser = iClientUserService.queryOne(clientUserBizId);
if (Objects.isNull(clientUser)) {
throw new BusinessException("客户端用户信息不存在");
}
clientUser.setOpenId(openId);
iClientUserService.saveOrUpdate(clientUser);
return Result.success();
}
/**
* 同步sys_user系统用户,批量更新客户端用户表数据 * 同步sys_user系统用户,批量更新客户端用户表数据
* @param userBizIdList * @param userBizIdList
* @param tenantBizId * @param tenantBizId
......
...@@ -9,8 +9,10 @@ import com.yd.user.api.service.ApiRelTenantProjectService; ...@@ -9,8 +9,10 @@ import com.yd.user.api.service.ApiRelTenantProjectService;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantproject.QueryRelTenantProjectListRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.feign.response.reltenantproject.QueryRelTenantProjectListResponse;
import com.yd.user.service.model.RelTenantProject; import com.yd.user.service.model.RelTenantProject;
import com.yd.user.service.service.IRelTenantProjectService; import com.yd.user.service.service.IRelTenantProjectService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -139,5 +141,17 @@ public class ApiRelTenantProjectServiceImpl implements ApiRelTenantProjectServic ...@@ -139,5 +141,17 @@ public class ApiRelTenantProjectServiceImpl implements ApiRelTenantProjectServic
return Result.success(); return Result.success();
} }
/**
* 根据条件查询租户和项目关系数据
* @param request
* @return
*/
@Override
public Result<List<QueryRelTenantProjectListResponse>> queryRelTenantProjectList(QueryRelTenantProjectListRequest request) {
if (CollectionUtils.isEmpty(request.getProjectBizIdList())) {
return Result.success();
}
List<QueryRelTenantProjectListResponse> list = iRelTenantProjectService.queryRelTenantProjectList(request);
return Result.success(list);
}
} }
...@@ -14,6 +14,7 @@ import com.yd.user.api.service.ApiRelTenantProjectService; ...@@ -14,6 +14,7 @@ import com.yd.user.api.service.ApiRelTenantProjectService;
import com.yd.user.api.service.ApiSysProjectService; import com.yd.user.api.service.ApiSysProjectService;
import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectListRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse;
import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectPageResponse;
...@@ -30,8 +31,11 @@ import org.springframework.beans.BeanUtils; ...@@ -30,8 +31,11 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors;
@Service @Service
public class ApiSysProjectServiceImpl implements ApiSysProjectService { public class ApiSysProjectServiceImpl implements ApiSysProjectService {
...@@ -72,6 +76,28 @@ public class ApiSysProjectServiceImpl implements ApiSysProjectService { ...@@ -72,6 +76,28 @@ public class ApiSysProjectServiceImpl implements ApiSysProjectService {
} }
/** /**
* 项目列表查询
* @param request
* @return
*/
@Override
public Result<List<ApiSysProjectDetailResponse>> list(ApiSysProjectListRequest request) {
if (CollectionUtils.isEmpty(request.getProjectBizIdList())) {
return Result.success();
}
List<ApiSysProjectDetailResponse> responses = new ArrayList<>();
List<SysProject> sysProjectList = iSysProjectService.queryList(SysProjectDto.builder().projectBizIdList(request.getProjectBizIdList()).build());
if (!CollectionUtils.isEmpty(sysProjectList)) {
responses = sysProjectList.stream().map(dto -> {
ApiSysProjectDetailResponse response = new ApiSysProjectDetailResponse();
BeanUtils.copyProperties(dto,response);
return response;
}).collect(Collectors.toList());
}
return Result.success(responses);
}
/**
* 获取项目详情 * 获取项目详情
* @param projectBizId 项目唯一标识(业务ID) * @param projectBizId 项目唯一标识(业务ID)
* @return * @return
......
...@@ -2,15 +2,17 @@ package com.yd.user.feign.client.clientuser; ...@@ -2,15 +2,17 @@ package com.yd.user.feign.client.clientuser;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.feign.fallback.clientuser.ApiClientUserFeignFallbackFactory; import com.yd.user.feign.fallback.clientuser.ApiClientUserFeignFallbackFactory;
import com.yd.user.feign.request.clientuser.ApiClientUserDetailBodyRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserEditApprovalStatusRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest; import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserSaveRequest;
import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse; import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse;
import com.yd.user.feign.response.clientuser.ApiClientUserSaveResponse;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import java.util.List; import java.util.List;
...@@ -48,4 +50,33 @@ public interface ApiClientUserFeignClient { ...@@ -48,4 +50,33 @@ public interface ApiClientUserFeignClient {
@GetMapping("/clientUserBizIdList") @GetMapping("/clientUserBizIdList")
Result<List<String>> clientUserBizIdList(@RequestParam(value = "tenantBizId") String tenantBizId, Result<List<String>> clientUserBizIdList(@RequestParam(value = "tenantBizId") String tenantBizId,
@RequestParam(value = "projectBizId") String projectBizId); @RequestParam(value = "projectBizId") String projectBizId);
/**
* 查询-客户端用户详情 body入参
* @return
*/
@PostMapping("/body/detail")
Result<ApiClientUserDetailResponse> detail(@Validated @RequestBody ApiClientUserDetailBodyRequest request);
/**
* 保存-客户端用户信息(新增或者编辑)
* @return
*/
@PostMapping("/save")
Result<ApiClientUserSaveResponse> save(@Validated @RequestBody ApiClientUserSaveRequest request);
/**
* 编辑-客户端用户审批状态
* @return
*/
@PutMapping("/edit/approvalStatus")
Result editApprovalStatus(@Validated @RequestBody ApiClientUserEditApprovalStatusRequest request);
/**
* 编辑-客户端用户openId
* @return
*/
@PutMapping("/edit/openId")
Result editOpenId(@NotBlank(message = "客户端用户表唯一业务ID不能为空") @RequestParam(value = "clientUserBizId") String clientUserBizId,
@NotBlank(message = "openId不能为空") @RequestParam(value = "openId") String openId);
} }
...@@ -5,6 +5,8 @@ import com.yd.user.feign.fallback.reltenantproject.ApiRelTenantProjectFeignFallb ...@@ -5,6 +5,8 @@ import com.yd.user.feign.fallback.reltenantproject.ApiRelTenantProjectFeignFallb
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantproject.QueryRelTenantProjectListRequest;
import com.yd.user.feign.response.reltenantproject.QueryRelTenantProjectListResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.DeleteMapping;
...@@ -12,11 +14,12 @@ import org.springframework.web.bind.annotation.PostMapping; ...@@ -12,11 +14,12 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.util.List;
/** /**
* 用户服务:租户-项目关系信息Feign客户端 * 用户服务:租户-项目关系信息Feign客户端
*/ */
@FeignClient(name = "yd-user-api", fallbackFactory = ApiRelTenantProjectFeignFallbackFactory.class) @FeignClient(name = "yd-user-api",path = "/user/api/relTenantProject",fallbackFactory = ApiRelTenantProjectFeignFallbackFactory.class)
public interface ApiRelTenantProjectFeignClient { public interface ApiRelTenantProjectFeignClient {
/** /**
...@@ -51,4 +54,12 @@ public interface ApiRelTenantProjectFeignClient { ...@@ -51,4 +54,12 @@ public interface ApiRelTenantProjectFeignClient {
*/ */
@PostMapping("/select/project/page") @PostMapping("/select/project/page")
Result selectProjectPage(@RequestBody ApiRelTenantProjectSelectPageRequest request); Result selectProjectPage(@RequestBody ApiRelTenantProjectSelectPageRequest request);
/**
* 根据条件查询租户和项目关系数据
* @param request
* @return
*/
@PostMapping("/queryRelTenantProjectList")
Result<List<QueryRelTenantProjectListResponse>> queryRelTenantProjectList(@Validated @RequestBody QueryRelTenantProjectListRequest request);
} }
...@@ -19,7 +19,7 @@ import java.util.List; ...@@ -19,7 +19,7 @@ import java.util.List;
/** /**
* 用户服务-字典类型信息信息Feign客户端 * 用户服务-字典类型信息信息Feign客户端
*/ */
@FeignClient(name = "yd-user-api", fallbackFactory = ApiSysDictFeignFallbackFactory.class) @FeignClient(name = "yd-user-api", path = "/user/api/sysDict", fallbackFactory = ApiSysDictFeignFallbackFactory.class)
public interface ApiSysDictFeignClient { public interface ApiSysDictFeignClient {
/** /**
......
...@@ -4,6 +4,7 @@ import com.yd.common.result.Result; ...@@ -4,6 +4,7 @@ import com.yd.common.result.Result;
import com.yd.user.feign.fallback.sysproject.ApiSysProjectFeignFallbackFactory; import com.yd.user.feign.fallback.sysproject.ApiSysProjectFeignFallbackFactory;
import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectListRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
...@@ -12,11 +13,12 @@ import org.springframework.web.bind.annotation.*; ...@@ -12,11 +13,12 @@ import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.util.List;
/** /**
* 用户服务-系统项目信息Feign客户端 * 用户服务-系统项目信息Feign客户端
*/ */
@FeignClient(name = "yd-user-api", fallbackFactory = ApiSysProjectFeignFallbackFactory.class) @FeignClient(name = "yd-user-api",path = "/user/api/sysProject",fallbackFactory = ApiSysProjectFeignFallbackFactory.class)
public interface ApiSysProjectFeignClient { public interface ApiSysProjectFeignClient {
/** /**
...@@ -28,6 +30,14 @@ public interface ApiSysProjectFeignClient { ...@@ -28,6 +30,14 @@ public interface ApiSysProjectFeignClient {
Result page(@RequestBody ApiSysProjectPageRequest request); Result page(@RequestBody ApiSysProjectPageRequest request);
/** /**
* 项目列表查询
* @param request
* @return
*/
@PostMapping("/list")
Result<List<ApiSysProjectDetailResponse>> list(@RequestBody ApiSysProjectListRequest request);
/**
* 获取项目详情 * 获取项目详情
* @param projectBizId 项目唯一标识(业务ID) * @param projectBizId 项目唯一标识(业务ID)
* @return * @return
......
...@@ -2,8 +2,12 @@ package com.yd.user.feign.fallback.clientuser; ...@@ -2,8 +2,12 @@ package com.yd.user.feign.fallback.clientuser;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.user.feign.client.clientuser.ApiClientUserFeignClient; import com.yd.user.feign.client.clientuser.ApiClientUserFeignClient;
import com.yd.user.feign.request.clientuser.ApiClientUserDetailBodyRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserEditApprovalStatusRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest; import com.yd.user.feign.request.clientuser.ApiClientUserPageRequest;
import com.yd.user.feign.request.clientuser.ApiClientUserSaveRequest;
import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse; import com.yd.user.feign.response.clientuser.ApiClientUserDetailResponse;
import com.yd.user.feign.response.clientuser.ApiClientUserSaveResponse;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory; import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -32,6 +36,26 @@ public class ApiClientUserFeignFallbackFactory implements FallbackFactory<ApiCli ...@@ -32,6 +36,26 @@ public class ApiClientUserFeignFallbackFactory implements FallbackFactory<ApiCli
public Result<List<String>> clientUserBizIdList(String tenantBizId, String projectBizId) { public Result<List<String>> clientUserBizIdList(String tenantBizId, String projectBizId) {
return null; return null;
} }
@Override
public Result<ApiClientUserDetailResponse> detail(ApiClientUserDetailBodyRequest request) {
return null;
}
@Override
public Result<ApiClientUserSaveResponse> save(ApiClientUserSaveRequest request) {
return null;
}
@Override
public Result editApprovalStatus(ApiClientUserEditApprovalStatusRequest request) {
return null;
}
@Override
public Result editOpenId(String clientUserBizId,String openId) {
return null;
}
}; };
} }
} }
...@@ -5,10 +5,14 @@ import com.yd.user.feign.client.reltenantproject.ApiRelTenantProjectFeignClient; ...@@ -5,10 +5,14 @@ import com.yd.user.feign.client.reltenantproject.ApiRelTenantProjectFeignClient;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListAddRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantproject.QueryRelTenantProjectListRequest;
import com.yd.user.feign.response.reltenantproject.QueryRelTenantProjectListResponse;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory; import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List;
/** /**
* 用户服务:租户-项目关系信息Feign降级处理 * 用户服务:租户-项目关系信息Feign降级处理
*/ */
...@@ -37,6 +41,11 @@ public class ApiRelTenantProjectFeignFallbackFactory implements FallbackFactory< ...@@ -37,6 +41,11 @@ public class ApiRelTenantProjectFeignFallbackFactory implements FallbackFactory<
public Result selectProjectPage(ApiRelTenantProjectSelectPageRequest request) { public Result selectProjectPage(ApiRelTenantProjectSelectPageRequest request) {
return null; return null;
} }
@Override
public Result<List<QueryRelTenantProjectListResponse>> queryRelTenantProjectList(QueryRelTenantProjectListRequest request) {
return null;
}
}; };
} }
} }
...@@ -4,12 +4,15 @@ import com.yd.common.result.Result; ...@@ -4,12 +4,15 @@ import com.yd.common.result.Result;
import com.yd.user.feign.client.sysproject.ApiSysProjectFeignClient; import com.yd.user.feign.client.sysproject.ApiSysProjectFeignClient;
import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectAddRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectEditRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectListRequest;
import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest; import com.yd.user.feign.request.sysproject.ApiSysProjectPageRequest;
import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse; import com.yd.user.feign.response.sysproject.ApiSysProjectDetailResponse;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.openfeign.FallbackFactory; import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List;
/** /**
* 用户服务-系统项目信息Feign降级处理 * 用户服务-系统项目信息Feign降级处理
*/ */
...@@ -25,6 +28,11 @@ public class ApiSysProjectFeignFallbackFactory implements FallbackFactory<ApiSys ...@@ -25,6 +28,11 @@ public class ApiSysProjectFeignFallbackFactory implements FallbackFactory<ApiSys
} }
@Override @Override
public Result<List<ApiSysProjectDetailResponse>> list(ApiSysProjectListRequest request) {
return null;
}
@Override
public Result<ApiSysProjectDetailResponse> detail(String projectBizId) { public Result<ApiSysProjectDetailResponse> detail(String projectBizId) {
return null; return null;
} }
......
package com.yd.user.feign.request.clientuser;
import lombok.Data;
@Data
public class ApiClientUserDetailBodyRequest {
/**
* 客户端用户表唯一业务ID
*/
private String clientUserBizId;
/**
* 所属租户唯一业务ID(冗余)
*/
private String tenantBizId;
/**
* 所属项目唯一业务ID(冗余)
*/
private String projectBizId;
}
package com.yd.user.feign.request.clientuser;
import lombok.Data;
import javax.validation.constraints.NotBlank;
@Data
public class ApiClientUserEditApprovalStatusRequest {
/**
* 客户端用户表唯一业务ID
*/
@NotBlank(message = "客户端用户表唯一业务ID不能为空")
private String clientUserBizId;
/**
* 审批状态
*/
@NotBlank(message = "审批状态不能为空")
private String approvalStatus;
/**
* 通用备注
*/
private String remark;
}
...@@ -4,6 +4,8 @@ import com.yd.common.dto.PageDto; ...@@ -4,6 +4,8 @@ import com.yd.common.dto.PageDto;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import java.util.List;
@Data @Data
public class ApiClientUserPageRequest extends PageDto { public class ApiClientUserPageRequest extends PageDto {
...@@ -31,7 +33,22 @@ public class ApiClientUserPageRequest extends PageDto { ...@@ -31,7 +33,22 @@ public class ApiClientUserPageRequest extends PageDto {
private String userBizId; private String userBizId;
/** /**
* 手机号(精确查询)
*/
private String phone;
/**
* 审批状态 * 审批状态
*/ */
private String approvalStatus; private String approvalStatus;
/**
* 客户端用户邀请码
*/
private String invitationCode;
/**
* 客户端用户ID列表
*/
private List<String> clientUserBizIdList;
} }
package com.yd.user.feign.request.clientuser;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.util.List;
@Data
public class ApiClientUserSaveRequest {
/**
* 客户端用户表唯一业务ID 有值做编辑,无值做新增
*/
private String clientUserBizId;
/**
* 头像
*/
private String avatar;
/**
* 姓名
*/
@NotBlank(message = "姓名不能为空")
private String name;
/**
* 手机号
*/
@NotBlank(message = "手机号不能为空")
@Pattern(regexp = "^(?:(?:\\+|00)86)?1[3-9]\\d{9}$", message = "手机号格式不正确")
private String phone;
/**
* 邮箱
*/
private String email;
/**
* 证件类型
*/
@NotBlank(message = "证件类型不能为空")
private String idCardType;
/**
* 证件号码
*/
@NotBlank(message = "证件号码不能为空")
private String idCardNumber;
/**
* 证件文件url列表
*/
@NotEmpty(message = "证件文件url列表不能为空")
private List<String> idCardFileUrlList;
/**
* 银行卡号
*/
@NotBlank(message = "银行卡号不能为空")
private String bankNumber;
/**
* 开户行
*/
@NotBlank(message = "开户行不能为空")
private String openBank;
/**
* 银行卡文件url列表
*/
@NotEmpty(message = "银行卡文件url列表不能为空")
private List<String> bankFileUrlList;
/**
* 登录密码
*/
private String password;
/**
* 客户端用户邀请码
*/
private String invitationCode;
/**
* 状态(0:停用 1:启用)
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 审批状态
*/
@NotBlank(message = "审批状态不能为空")
private String approvalStatus;
/**
* 注册来源(PC、小程序等)默认小程序 - MINI_PROGRAM
*/
@NotBlank(message = "注册来源不能为空")
private String registerSource;
/**
* 所属租户唯一业务ID(冗余)
*/
@NotBlank(message = "所属租户唯一业务ID不能为空")
private String tenantBizId;
/**
* 所属项目唯一业务ID(冗余)
*/
@NotBlank(message = "所属项目唯一业务ID不能为空")
private String projectBizId;
/**
* 小程序的openId
*/
private String openId;
}
package com.yd.user.feign.request.reltenantproject;
import lombok.Data;
import java.util.List;
@Data
public class QueryRelTenantProjectListRequest {
/**
* 项目业务ID列表
*/
private List<String> projectBizIdList;
}
package com.yd.user.feign.request.sysproject;
import lombok.Data;
import java.util.List;
@Data
public class ApiSysProjectListRequest {
private List<String> projectBizIdList;
}
...@@ -2,6 +2,7 @@ package com.yd.user.feign.response.clientuser; ...@@ -2,6 +2,7 @@ package com.yd.user.feign.response.clientuser;
import lombok.Data; import lombok.Data;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List;
@Data @Data
public class ApiClientUserDetailResponse { public class ApiClientUserDetailResponse {
...@@ -105,4 +106,40 @@ public class ApiClientUserDetailResponse { ...@@ -105,4 +106,40 @@ public class ApiClientUserDetailResponse {
* 更新时间 * 更新时间
*/ */
private LocalDateTime updateTime; private LocalDateTime updateTime;
/**
* 头像
*/
private String avatar;
/**
* 证件文件url列表
*/
private List<String> idCardFileUrlList;
/**
* 银行卡号
*/
private String bankNumber;
/**
* 开户行
*/
private String openBank;
/**
* 银行卡文件url列表
*/
private List<String> bankFileUrlList;
/**
* 注册来源(PC、小程序等)默认小程序 - MINI_PROGRAM
*/
private String registerSource;
/**
* 小程序的openId
*/
private String openId;
} }
...@@ -85,4 +85,9 @@ public class ApiClientUserPageResponse { ...@@ -85,4 +85,9 @@ public class ApiClientUserPageResponse {
* 更新时间 * 更新时间
*/ */
private LocalDateTime updateTime; private LocalDateTime updateTime;
/**
* 小程序的openId
*/
private String openId;
} }
package com.yd.user.feign.response.clientuser;
import lombok.Data;
@Data
public class ApiClientUserSaveResponse {
/**
* 主键ID
*/
private Long id;
/**
* 客户端用户表唯一业务ID
*/
private String clientUserBizId;
}
package com.yd.user.feign.response.reltenantproject;
import lombok.Data;
@Data
public class QueryRelTenantProjectListResponse {
//========租户信息start=========
/**
* 租户唯一标识(业务ID)
*/
private String tenantBizId;
/**
* 租户名称
*/
private String tenantName;
/**
* 租户编码(用于API标识)
*/
private String tenantCode;
//========租户信息end=========
//========租户项目关系信息start=========
private Long tenantProjectId;
//========租户项目关系信息end=========
//========项目信息start=========
/**
* 项目类型(PC、客户端)
*/
private String projectType;
/**
* 项目唯一标识(业务ID)
*/
private String projectBizId;
/**
* 项目名称
*/
private String projectName;
/**
* 项目编码(租户内唯一)
*/
private String projectCode;
//========项目信息end=========
}
...@@ -74,4 +74,9 @@ public class ApiSysProjectPageResponse { ...@@ -74,4 +74,9 @@ public class ApiSysProjectPageResponse {
* 项目类型(PC、客户端) * 项目类型(PC、客户端)
*/ */
private String projectType; private String projectType;
/**
* 项目编码(租户内唯一)
*/
private String projectCode;
} }
...@@ -4,13 +4,17 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -4,13 +4,17 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantproject.QueryRelTenantProjectListRequest;
import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest; import com.yd.user.feign.request.sysuser.ApiSysUserPageRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.feign.response.reltenantproject.QueryRelTenantProjectListResponse;
import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse; import com.yd.user.feign.response.sysuser.ApiSysUserPageResponse;
import com.yd.user.service.model.RelTenantProject; import com.yd.user.service.model.RelTenantProject;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* <p> * <p>
* 租户-项目关系表(正常来说一对多,加关系表方便扩展) Mapper 接口 * 租户-项目关系表(正常来说一对多,加关系表方便扩展) Mapper 接口
...@@ -31,4 +35,6 @@ public interface RelTenantProjectMapper extends BaseMapper<RelTenantProject> { ...@@ -31,4 +35,6 @@ public interface RelTenantProjectMapper extends BaseMapper<RelTenantProject> {
*/ */
IPage<ApiRelTenantProjectSelectPageResponse> selectProjectPage(@Param("page") IPage<ApiRelTenantProjectSelectPageResponse> page, @Param("request") ApiRelTenantProjectSelectPageRequest request); IPage<ApiRelTenantProjectSelectPageResponse> selectProjectPage(@Param("page") IPage<ApiRelTenantProjectSelectPageResponse> page, @Param("request") ApiRelTenantProjectSelectPageRequest request);
List<QueryRelTenantProjectListResponse> queryRelTenantProjectList(@Param("request") QueryRelTenantProjectListRequest request);
} }
...@@ -4,7 +4,6 @@ import lombok.AllArgsConstructor; ...@@ -4,7 +4,6 @@ import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.util.List; import java.util.List;
@Data @Data
...@@ -14,6 +13,11 @@ import java.util.List; ...@@ -14,6 +13,11 @@ import java.util.List;
public class ClientUserDto { public class ClientUserDto {
/** /**
* 客户端用户表唯一业务ID
*/
private String clientUserBizId;
/**
* 所属租户唯一业务ID(冗余) * 所属租户唯一业务ID(冗余)
*/ */
private String tenantBizId; private String tenantBizId;
......
...@@ -37,6 +37,12 @@ public class ClientUser implements Serializable { ...@@ -37,6 +37,12 @@ public class ClientUser implements Serializable {
private String clientUserBizId; private String clientUserBizId;
/** /**
* 头像
*/
@TableField("avatar")
private String avatar;
/**
* 姓名 * 姓名
*/ */
@TableField("name") @TableField("name")
...@@ -67,6 +73,30 @@ public class ClientUser implements Serializable { ...@@ -67,6 +73,30 @@ public class ClientUser implements Serializable {
private String idCardNumber; private String idCardNumber;
/** /**
* 证件文件url(多个分号分开)
*/
@TableField("id_card_file_url")
private String idCardFileUrl;
/**
* 银行卡号
*/
@TableField("bank_number")
private String bankNumber;
/**
* 开户行
*/
@TableField("open_bank")
private String openBank;
/**
* 银行卡文件url(多个分号分开)
*/
@TableField("bank_file_url")
private String bankFileUrl;
/**
* 登录密码 * 登录密码
*/ */
@TableField("password") @TableField("password")
...@@ -115,6 +145,12 @@ public class ClientUser implements Serializable { ...@@ -115,6 +145,12 @@ public class ClientUser implements Serializable {
private String userBizId; private String userBizId;
/** /**
* 小程序的openId
*/
@TableField("open_id")
private String openId;
/**
* 通用备注 * 通用备注
*/ */
@TableField("remark") @TableField("remark")
......
...@@ -54,6 +54,12 @@ public class SysDept implements Serializable { ...@@ -54,6 +54,12 @@ public class SysDept implements Serializable {
@TableField("dept_name") @TableField("dept_name")
private String deptName; private String deptName;
/**
* 部门编码
*/
@TableField("dept_code")
private String deptCode;
/** /**
* 父部门ID * 父部门ID
*/ */
......
...@@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantproject.QueryRelTenantProjectListRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.feign.response.reltenantproject.QueryRelTenantProjectListResponse;
import com.yd.user.service.dto.RelTenantProjectDto; import com.yd.user.service.dto.RelTenantProjectDto;
import com.yd.user.service.dto.SysTenantDto; import com.yd.user.service.dto.SysTenantDto;
import com.yd.user.service.model.RelTenantProject; import com.yd.user.service.model.RelTenantProject;
...@@ -42,4 +44,6 @@ public interface IRelTenantProjectService extends IService<RelTenantProject> { ...@@ -42,4 +44,6 @@ public interface IRelTenantProjectService extends IService<RelTenantProject> {
void delRelByProjectBizIdNeTenantBizIdList(String projectBizId, List<String> tenantBizIdList); void delRelByProjectBizIdNeTenantBizIdList(String projectBizId, List<String> tenantBizIdList);
void delRelByTenantBizId(String tenantBizId); void delRelByTenantBizId(String tenantBizId);
List<QueryRelTenantProjectListResponse> queryRelTenantProjectList(QueryRelTenantProjectListRequest request);
} }
...@@ -45,6 +45,7 @@ public class ClientUserServiceImpl extends ServiceImpl<ClientUserMapper, ClientU ...@@ -45,6 +45,7 @@ public class ClientUserServiceImpl extends ServiceImpl<ClientUserMapper, ClientU
List<ClientUser> list = baseMapper.selectList(new LambdaQueryWrapper<ClientUser>() List<ClientUser> list = baseMapper.selectList(new LambdaQueryWrapper<ClientUser>()
.eq(StringUtils.isNotBlank(dto.getTenantBizId()),ClientUser::getTenantBizId,dto.getTenantBizId()) .eq(StringUtils.isNotBlank(dto.getTenantBizId()),ClientUser::getTenantBizId,dto.getTenantBizId())
.eq(StringUtils.isNotBlank(dto.getProjectBizId()),ClientUser::getProjectBizId,dto.getProjectBizId()) .eq(StringUtils.isNotBlank(dto.getProjectBizId()),ClientUser::getProjectBizId,dto.getProjectBizId())
.eq(StringUtils.isNotBlank(dto.getClientUserBizId()),ClientUser::getClientUserBizId,dto.getClientUserBizId())
.in(!CollectionUtils.isEmpty(dto.getUserBizIdList()),ClientUser::getUserBizId,dto.getUserBizIdList()) .in(!CollectionUtils.isEmpty(dto.getUserBizIdList()),ClientUser::getUserBizId,dto.getUserBizIdList())
); );
return list; return list;
......
...@@ -5,8 +5,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -5,8 +5,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectListPageRequest;
import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest; import com.yd.user.feign.request.reltenantproject.ApiRelTenantProjectSelectPageRequest;
import com.yd.user.feign.request.reltenantproject.QueryRelTenantProjectListRequest;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectListPageResponse;
import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse; import com.yd.user.feign.response.reltenantproject.ApiRelTenantProjectSelectPageResponse;
import com.yd.user.feign.response.reltenantproject.QueryRelTenantProjectListResponse;
import com.yd.user.service.dto.RelTenantProjectDto; import com.yd.user.service.dto.RelTenantProjectDto;
import com.yd.user.service.model.RelTenantProject; import com.yd.user.service.model.RelTenantProject;
import com.yd.user.service.dao.RelTenantProjectMapper; import com.yd.user.service.dao.RelTenantProjectMapper;
...@@ -127,4 +129,14 @@ public class RelTenantProjectServiceImpl extends ServiceImpl<RelTenantProjectMap ...@@ -127,4 +129,14 @@ public class RelTenantProjectServiceImpl extends ServiceImpl<RelTenantProjectMap
public void delRelByTenantBizId(String tenantBizId) { public void delRelByTenantBizId(String tenantBizId) {
this.remove(new LambdaQueryWrapper<RelTenantProject>().eq(RelTenantProject::getTenantBizId,tenantBizId)); this.remove(new LambdaQueryWrapper<RelTenantProject>().eq(RelTenantProject::getTenantBizId,tenantBizId));
} }
/**
* 根据条件查询租户和项目关系数据
* @param request
* @return
*/
@Override
public List<QueryRelTenantProjectListResponse> queryRelTenantProjectList(QueryRelTenantProjectListRequest request) {
return baseMapper.queryRelTenantProjectList(request);
}
} }
...@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine; ...@@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
public class MyBatisPlusCodeGenerator { public class MyBatisPlusCodeGenerator {
public static void main(String[] args) { public static void main(String[] args) {
FastAutoGenerator.create("jdbc:mysql://localhost:3306/yd?serverTimezone=GMT%2B8", "root", "123456") FastAutoGenerator.create("jdbc:mysql://139.224.145.34:3308/yd?serverTimezone=GMT%2B8", "root", "Zxm7320017")
.globalConfig(builder -> { .globalConfig(builder -> {
builder.author("zxm") builder.author("zxm")
// .outputDir("src/main/java/com/yd/user/service"); // .outputDir("src/main/java/com/yd/user/service");
...@@ -21,7 +21,7 @@ public class MyBatisPlusCodeGenerator { ...@@ -21,7 +21,7 @@ public class MyBatisPlusCodeGenerator {
}) })
.strategyConfig(builder -> { .strategyConfig(builder -> {
builder.addInclude( builder.addInclude(
"client_user" "user_sign_expand","user_sale_expand"
// "rel_dept_user", "rel_group_role", "rel_group_user", // "rel_dept_user", "rel_group_role", "rel_group_user",
// "rel_project_menu", "rel_project_role", "rel_project_user", // "rel_project_menu", "rel_project_role", "rel_project_user",
// "rel_project_user_group", "rel_role_menu", "rel_tenant_dept", // "rel_project_user_group", "rel_role_menu", "rel_tenant_dept",
......
...@@ -22,6 +22,19 @@ ...@@ -22,6 +22,19 @@
<if test="request.approvalStatus != null and request.approvalStatus != ''"> <if test="request.approvalStatus != null and request.approvalStatus != ''">
and cu.approval_status = #{request.approvalStatus} and cu.approval_status = #{request.approvalStatus}
</if> </if>
<if test="request.phone != null and request.phone != ''">
and cu.phone = #{request.phone}
</if>
<if test="request.invitationCode != null and request.invitationCode != ''">
and cu.invitation_code = #{request.invitationCode}
</if>
<if test="request.clientUserBizIdList != null and request.clientUserBizIdList.size > 0">
and cu.client_user_biz_id in
<foreach collection="request.clientUserBizIdList" item="item" index="index" open="(" separator=","
close=")">
#{item}
</foreach>
</if>
and cu.is_deleted = 0 and cu.is_deleted = 0
</where> </where>
order by cu.create_time desc order by cu.create_time desc
......
...@@ -42,4 +42,21 @@ ...@@ -42,4 +42,21 @@
</select> </select>
<select id="queryRelTenantProjectList"
resultType="com.yd.user.feign.response.reltenantproject.QueryRelTenantProjectListResponse">
select st.*,sp.*,rtp.id as tenantProjectId
from rel_tenant_project rtp
left join sys_tenant st on st.tenant_biz_id = rtp.tenant_biz_id and st.is_deleted = 0
left join sys_project sp on sp.project_biz_id = rtp.project_biz_id and sp.is_deleted = 0
<where>
<if test="request.projectBizIdList != null and request.projectBizIdList.size > 0">
and rtp.project_biz_id in
<foreach collection="request.projectBizIdList" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</if>
and rtp.is_deleted = 0
</where>
</select>
</mapper> </mapper>
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
sp.start_time,sp.end_time, sp.start_time,sp.end_time,
sp.logo_url,sp.scope, sp.logo_url,sp.scope,
sp.tenant_biz_id,sp.is_in, sp.tenant_biz_id,sp.is_in,
sp.project_code,
(select st.tenant_name from sys_tenant st where st.tenant_biz_id = sp.tenant_biz_id limit 1) as tenantName (select st.tenant_name from sys_tenant st where st.tenant_biz_id = sp.tenant_biz_id limit 1) as tenantName
from sys_project sp from sys_project sp
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment