parent
bc5ce255b2
commit
20222626a7
|
|
@ -1,5 +1,7 @@
|
|||
package com.zcloud.certificate.command;
|
||||
|
||||
import com.jjb.saas.framework.auth.model.SSOUser;
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.certificate.domain.gateway.UserCertificateGateway;
|
||||
import com.zcloud.certificate.domain.model.UserCertificateE;
|
||||
import com.zcloud.certificate.dto.UserCertificateAddCmd;
|
||||
|
|
@ -27,6 +29,8 @@ public class UserCertificateAddExe {
|
|||
UserCertificateE userCertificateE = new UserCertificateE();
|
||||
BeanUtils.copyProperties(cmd, userCertificateE);
|
||||
|
||||
SSOUser ssoUser = AuthContext.getCurrentUser();
|
||||
|
||||
Boolean certificate = userCertificateGateway.checkCertificateExist(userCertificateE);
|
||||
if (certificate) {
|
||||
throw new BizException("证书编号已存在");
|
||||
|
|
@ -34,6 +38,7 @@ public class UserCertificateAddExe {
|
|||
|
||||
boolean res = false;
|
||||
try {
|
||||
userCertificateE.setCorpinfoId(ssoUser != null ? ssoUser.getTenantId() : null);
|
||||
res = userCertificateGateway.add(userCertificateE);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.zcloud.certificate.command.convertor;
|
||||
|
||||
import com.zcloud.certificate.domain.model.UserCertificateE;
|
||||
import com.zcloud.certificate.dto.clientobject.UserCertificateCO;
|
||||
import com.zcloud.certificate.dto.clientobject.UserCertificateStatCO;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserCertificateDO;
|
||||
|
|
@ -26,5 +27,7 @@ public interface UserCertificateCoConvertor {
|
|||
UserCertificateCO converDOToCO(UserCertificateDO userCertificateDO);
|
||||
|
||||
List<UserCertificateStatCO> converStatDOsToStatCOs(List<UserCertificateStatDO> userCertificateStatDOs);
|
||||
|
||||
UserCertificateCO converEToCO(UserCertificateE userCertificateE);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -65,19 +65,9 @@ public class CorpCertificateQueryExe {
|
|||
|
||||
public PageResponse<CertificateStatisticsCO> statPage(CorpCertificateStatPageQry qry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
|
||||
PageResponse<CorpInfoDO> pageResponse =
|
||||
corpCertificateRepository.statPage(params);
|
||||
|
||||
List<CertificateStatisticsCO> cos =
|
||||
corpCertificateStatCoConvertor.convertRowsToCOs(pageResponse.getData());
|
||||
|
||||
return PageResponse.of(
|
||||
cos,
|
||||
pageResponse.getTotalCount(),
|
||||
pageResponse.getPageSize(),
|
||||
pageResponse.getPageIndex()
|
||||
);
|
||||
PageResponse<CorpInfoDO> pageResponse = corpCertificateRepository.statPage(params);
|
||||
List<CertificateStatisticsCO> cos = corpCertificateStatCoConvertor.convertRowsToCOs(pageResponse.getData());
|
||||
return PageResponse.of(cos, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,24 +1,23 @@
|
|||
package com.zcloud.certificate.command.query;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jjb.saas.framework.auth.model.SSOUser;
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.certificate.command.convertor.UserCertificateCoConvertor;
|
||||
import com.zcloud.certificate.domain.model.UserCertificateE;
|
||||
import com.zcloud.certificate.dto.CorpCertificateStatPageQry;
|
||||
import com.zcloud.certificate.dto.UserCertificatePageQry;
|
||||
import com.zcloud.certificate.dto.clientobject.UserCertificateCO;
|
||||
import com.zcloud.certificate.dto.clientobject.UserCertificateStatCO;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserCertificateDO;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserCertificateStatDO;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserDO;
|
||||
import com.zcloud.certificate.persistence.repository.UserCertificateRepository;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -38,42 +37,31 @@ public class UserCertificateQueryExe {
|
|||
* @return
|
||||
*/
|
||||
public UserCertificateCO queryById(Long id) {
|
||||
UserCertificateCO userCertificateCO = userCertificateCoConvertor.converDOToCO(userCertificateRepository.getById(id));
|
||||
if (userCertificateCO == null) {
|
||||
UserCertificateDO certDO = userCertificateRepository.getById(id);
|
||||
if (certDO == null) {
|
||||
return null;
|
||||
}
|
||||
// 查询用户名 在职状态并设置
|
||||
UserDO userDO = userCertificateRepository.getUserNamesByUserIds(Collections.singletonList(userCertificateCO.getUserId())).stream().findFirst().orElse(null);
|
||||
if (userDO != null) {
|
||||
userCertificateCO.setUserName(userDO.getUserName());
|
||||
userCertificateCO.setEmploymentStatus(userDO.getEmploymentStatus());
|
||||
userCertificateCO.setPostName(userDO.getPostName());
|
||||
userCertificateCO.setDepartmentName(userDO.getDepartmentName());
|
||||
userCertificateCO.setCorpinfoName(userDO.getCorpinfoName());
|
||||
}
|
||||
return userCertificateCO;
|
||||
UserCertificateE e = new UserCertificateE();
|
||||
BeanUtils.copyProperties(certDO, e);
|
||||
com.zcloud.certificate.domain.model.UserBasicInfo userBasicInfo = userCertificateRepository.getUserNamesByUserIds(Collections.singletonList(e.getUserId())).stream().findFirst().orElse(null);
|
||||
e.attach(userBasicInfo);
|
||||
return userCertificateCoConvertor.converEToCO(e);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public PageResponse<UserCertificateCO> execute(UserCertificatePageQry qry) {
|
||||
if (qry.getIsAppQuery() != null) {
|
||||
SSOUser ssoUser = AuthContext.getCurrentUser();
|
||||
qry.setEqUserId(ssoUser.getUserId());
|
||||
}
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
|
||||
IPage<UserCertificateDO> iPage = userCertificateRepository.listPageWithUser(new Page<>(qry.getPageIndex(), qry.getPageSize()), params);
|
||||
List<UserCertificateCO> cos = Optional.ofNullable(iPage.getRecords())
|
||||
.orElse(Collections.emptyList())
|
||||
.stream()
|
||||
.map(userCertificateCoConvertor::converDOToCO)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
return PageResponse.of(
|
||||
cos,
|
||||
(int) iPage.getTotal(),
|
||||
(int) iPage.getSize(),
|
||||
(int) iPage.getCurrent()
|
||||
);
|
||||
PageResponse<UserCertificateDO> iPage = userCertificateRepository.listPageWithUser(params);
|
||||
List<UserCertificateCO> cos = userCertificateCoConvertor.converDOsToCOs(iPage.getData());
|
||||
return PageResponse.of(cos, iPage.getTotalCount(), iPage.getPageSize(), iPage.getPageIndex());
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -81,25 +69,9 @@ public class UserCertificateQueryExe {
|
|||
*/
|
||||
public PageResponse<UserCertificateStatCO> execute(CorpCertificateStatPageQry qry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
|
||||
IPage<UserCertificateStatDO> page = new Page<>(
|
||||
qry.getPageIndex(),
|
||||
qry.getPageSize()
|
||||
);
|
||||
|
||||
IPage<UserCertificateStatDO> result =
|
||||
userCertificateRepository.selectCorpCertificateStatPage(page, params);
|
||||
|
||||
List<UserCertificateStatCO> cos = userCertificateCoConvertor.converStatDOsToStatCOs(
|
||||
Optional.ofNullable(result.getRecords()).orElse(Collections.emptyList())
|
||||
);
|
||||
|
||||
return PageResponse.of(
|
||||
cos,
|
||||
(int)result.getTotal(),
|
||||
(int) result.getSize(),
|
||||
(int) result.getCurrent()
|
||||
);
|
||||
PageResponse<UserCertificateStatDO> result = userCertificateRepository.selectCorpCertificateStatPage(params);
|
||||
List<UserCertificateStatCO> cos = userCertificateCoConvertor.converStatDOsToStatCOs(result.getData());
|
||||
return PageResponse.of(cos, result.getTotalCount(), result.getPageSize(), result.getPageIndex());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -30,6 +30,9 @@ public class UserCertificatePageQry extends PageQuery {
|
|||
@ApiModelProperty(value = "姓名", name = "likeUserName")
|
||||
private String likeUserName;
|
||||
|
||||
@ApiModelProperty(value = "用户ID", name = "eqUserId")
|
||||
private Long eqUserId;
|
||||
|
||||
/**
|
||||
* 操作类别
|
||||
*/
|
||||
|
|
@ -53,5 +56,17 @@ public class UserCertificatePageQry extends PageQuery {
|
|||
*/
|
||||
@ApiModelProperty(value = "企业ID", name = "eqCorpinfoId")
|
||||
private Long eqCorpinfoId;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@ApiModelProperty(value = "岗位名称", name = "likePostName")
|
||||
private String likePostName;
|
||||
|
||||
/**
|
||||
* app 端查询表示
|
||||
*/
|
||||
@ApiModelProperty(value = "app 端查询表示", name = "isAppQuery")
|
||||
private Integer isAppQuery;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
package com.zcloud.certificate.persistence.dataobject;
|
||||
package com.zcloud.certificate.domain.model;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class UserDO {
|
||||
public class UserBasicInfo {
|
||||
|
||||
@ApiModelProperty(value = "用户ID")
|
||||
private Long userId;
|
||||
|
|
@ -55,5 +55,22 @@ public class UserCertificateE extends BaseE {
|
|||
private LocalDate certificateDateEnd;
|
||||
//复审日期
|
||||
private LocalDate reviewDate;
|
||||
//用户名
|
||||
private String userName;
|
||||
//在职状态
|
||||
private Integer employmentStatus;
|
||||
//部门名称
|
||||
private String departmentName;
|
||||
//企业名称
|
||||
private String corpinfoName;
|
||||
|
||||
public void attach(UserBasicInfo userBasicInfo) {
|
||||
if (userBasicInfo == null) return;
|
||||
this.userName = userBasicInfo.getUserName();
|
||||
this.employmentStatus = userBasicInfo.getEmploymentStatus();
|
||||
this.departmentName = userBasicInfo.getDepartmentName();
|
||||
this.corpinfoName = userBasicInfo.getCorpinfoName();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|||
import com.zcloud.certificate.persistence.dataobject.UserCertificateDO;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserCertificateStatDO;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
|
@ -22,7 +21,7 @@ public interface UserCertificateMapper extends BaseMapper<UserCertificateDO> {
|
|||
/**
|
||||
* 根据批量userId查询用户名称
|
||||
*/
|
||||
List<UserDO> selectUserNamesByUserIds(List<Long> userIds);
|
||||
List<com.zcloud.certificate.domain.model.UserBasicInfo> selectUserNamesByUserIds(List<Long> userIds);
|
||||
|
||||
/**
|
||||
* 分页查询用户证书信息,包含用户名称
|
||||
|
|
@ -32,7 +31,7 @@ public interface UserCertificateMapper extends BaseMapper<UserCertificateDO> {
|
|||
/**
|
||||
* 根据企业/相关方类型查询各企业/相关方各类人员证书数量
|
||||
*/
|
||||
IPage<UserCertificateStatDO> selectCorpCertificateStatPage(IPage<UserCertificateStatDO> page, @Param("params") Map<String, Object> params);
|
||||
IPage<UserCertificateStatDO> selectCorpCertificateStatPage(IPage<UserCertificateDO> page, @Param("params") Map<String, Object> params);
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,8 @@ package com.zcloud.certificate.persistence.repository;
|
|||
|
||||
import com.zcloud.certificate.persistence.dataobject.UserCertificateDO;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.jjb.saas.framework.repository.repo.BaseRepository;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserCertificateStatDO;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
|
@ -22,19 +20,16 @@ public interface UserCertificateRepository extends BaseRepository<UserCertificat
|
|||
/**
|
||||
* 根据批量userId查询用户名称
|
||||
*/
|
||||
List<UserDO> getUserNamesByUserIds(List<Long> userIds);
|
||||
List<com.zcloud.certificate.domain.model.UserBasicInfo> getUserNamesByUserIds(List<Long> userIds);
|
||||
|
||||
/**
|
||||
* 分页查询包含用户信息
|
||||
*/
|
||||
IPage<UserCertificateDO> listPageWithUser(IPage<UserCertificateDO> page, Map<String, Object> params);
|
||||
PageResponse<UserCertificateDO> listPageWithUser(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
* 根据企业/相关方类型查询各企业/相关方各类人员证书数量
|
||||
*/
|
||||
IPage<UserCertificateStatDO> selectCorpCertificateStatPage(
|
||||
IPage<UserCertificateStatDO> page,
|
||||
@Param("params") Map<String, Object> params
|
||||
);
|
||||
PageResponse<UserCertificateStatDO> selectCorpCertificateStatPage(@Param("params") Map<String, Object> params);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package com.zcloud.certificate.persistence.repository.impl;
|
|||
|
||||
import com.zcloud.certificate.persistence.dataobject.UserCertificateDO;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserCertificateStatDO;
|
||||
import com.zcloud.certificate.persistence.dataobject.UserDO;
|
||||
import com.zcloud.certificate.persistence.mapper.UserCertificateMapper;
|
||||
import com.zcloud.certificate.persistence.repository.UserCertificateRepository;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
|
|
@ -15,7 +14,6 @@ import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
|
|||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -40,18 +38,22 @@ public class UserCertificateRepositoryImpl extends BaseRepositoryImpl<UserCertif
|
|||
}
|
||||
|
||||
@Override
|
||||
public List<UserDO> getUserNamesByUserIds(List<Long> userIds) {
|
||||
public List<com.zcloud.certificate.domain.model.UserBasicInfo> getUserNamesByUserIds(List<Long> userIds) {
|
||||
return userCertificateMapper.selectUserNamesByUserIds(userIds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public IPage<UserCertificateDO> listPageWithUser(IPage<UserCertificateDO> page, Map<String, Object> params) {
|
||||
return userCertificateMapper.selectPageWithUser(page, params);
|
||||
public PageResponse<UserCertificateDO> listPageWithUser(Map<String, Object> params) {
|
||||
IPage<UserCertificateDO> page = new Query<UserCertificateDO>().getPage(params);
|
||||
IPage<UserCertificateDO> iPage = userCertificateMapper.selectPageWithUser(page, params);
|
||||
return PageHelper.pageToResponse(iPage, iPage.getRecords());
|
||||
}
|
||||
|
||||
@Override
|
||||
public IPage<UserCertificateStatDO> selectCorpCertificateStatPage(IPage<UserCertificateStatDO> page, Map<String, Object> params) {
|
||||
return userCertificateMapper.selectCorpCertificateStatPage(page, params);
|
||||
public PageResponse<UserCertificateStatDO> selectCorpCertificateStatPage(Map<String, Object> params) {
|
||||
IPage<UserCertificateDO> page = new Query<UserCertificateDO>().getPage(params);
|
||||
IPage<UserCertificateStatDO> iPage = userCertificateMapper.selectCorpCertificateStatPage(page, params);
|
||||
return PageHelper.pageToResponse(iPage, iPage.getRecords());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -44,12 +44,18 @@
|
|||
<if test="params.eqCorpinfoId != null and params.eqCorpinfoId != ''">
|
||||
AND uc.corpinfo_id = #{params.eqCorpinfoId}
|
||||
</if>
|
||||
<if test="params.likePostName != null and params.likePostName != ''">
|
||||
AND uc.post_name LIKE CONCAT('%', #{params.likePostName}, '%')
|
||||
</if>
|
||||
<if test="params.eqUserId != null and params.eqUserId != ''">
|
||||
AND uc.user_id = #{params.eqUserId}
|
||||
</if>
|
||||
|
||||
ORDER BY uc.create_time DESC
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectUserNamesByUserIds" resultType="com.zcloud.certificate.persistence.dataobject.UserDO">
|
||||
<select id="selectUserNamesByUserIds" resultType="com.zcloud.certificate.domain.model.UserBasicInfo">
|
||||
SELECT
|
||||
u.id AS userId,
|
||||
u.name AS userName,
|
||||
|
|
|
|||
Loading…
Reference in New Issue