dev:人员资格证书管理v1.0

main
SondonYong 2025-11-07 16:22:00 +08:00
parent 5fdfd00513
commit b329c67de6
18 changed files with 217 additions and 56 deletions

View File

@ -20,13 +20,15 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Objects;
/**
* web-adapter
* @Author SondonYong
* @Date 2025-10-31 09:50:26
*/
@Api(tags = "用户资质信息")
@Api(tags = "人员资格证书管理")
@RequestMapping("/${application.gateway}/userQualificationInfo")
@RestController
@AllArgsConstructor
@ -40,29 +42,36 @@ public class UserQualificationInfoController {
return userQualificationInfoService.add(cmd);
}
@ApiOperation("修改")
@PutMapping("/edit")
public SingleResponse edit(@Validated @RequestBody UserQualificationInfoUpdateCmd userQualificationInfoUpdateCmd) {
userQualificationInfoService.edit(userQualificationInfoUpdateCmd);
return SingleResponse.buildSuccess();
}
@ApiOperation("分页")
@PostMapping("/list")
public PageResponse<UserQualificationInfoCO> page(@RequestBody UserQualificationInfoPageQry qry) {
public PageResponse<UserQualificationInfoCO> page(@Validated @RequestBody UserQualificationInfoPageQry qry) {
return userQualificationInfoService.listPage(qry);
}
@ApiOperation("所有数据")
@GetMapping("/listAll")
public MultiResponse<UserQualificationInfoCO> listAll() {
return MultiResponse.of(new ArrayList<UserQualificationInfoCO>());
@PostMapping("/listAll")
public MultiResponse<UserQualificationInfoCO> listAll(@Validated @RequestBody UserQualificationInfoPageQry qry) {
return userQualificationInfoService.list(qry);
}
@ApiOperation("详情")
@GetMapping("/getInfoById")
public SingleResponse<UserQualificationInfoCO> getInfoById(@RequestParam(value = "id") String id) {
Long idLong = Long.parseLong(id);
Long idLong = Long.valueOf(id);
return userQualificationInfoService.getInfoById(idLong);
}
@ApiOperation("删除")
@PutMapping("/remove")
public Response remove(@RequestParam(value = "id") String id) {
Long idLong = Long.parseLong(id);
Long idLong = Long.valueOf(id);
userQualificationInfoService.remove(idLong);
return SingleResponse.buildSuccess();
}
@ -70,15 +79,18 @@ public class UserQualificationInfoController {
@ApiOperation("删除多个")
@PutMapping("/removeBatch")
public Response removeBatch(@Validated @RequestBody UserQualificationInfoRemoveCmd cmd) {
// 数据类型转换
if(cmd.getIdsString() != null && cmd.getIdsString().length > 0){
cmd.setIds(Arrays.stream(cmd.getIdsString())
.filter(Objects::nonNull) // 过滤掉null
.filter(str -> !str.trim().isEmpty()) // 过滤掉空字符串
.map(Long::valueOf)
.toArray(Long[]::new));
}
userQualificationInfoService.removeBatch(cmd.getIds());
return SingleResponse.buildSuccess();
}
@ApiOperation("修改")
@PutMapping("/edit")
public SingleResponse edit(@Validated @RequestBody UserQualificationInfoUpdateCmd userQualificationInfoUpdateCmd) {
userQualificationInfoService.edit(userQualificationInfoUpdateCmd);
return SingleResponse.buildSuccess();
}
}

View File

@ -1,15 +1,20 @@
package com.zcloud.basic.info.command;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jjb.saas.framework.auth.utils.AuthContext;
import com.zcloud.basic.info.domain.gateway.UserQualificationInfoGateway;
import com.zcloud.basic.info.domain.model.UserQualificationInfoE;
import com.zcloud.basic.info.dto.UserQualificationInfoAddCmd;
import com.alibaba.cola.exception.BizException;
import com.zcloud.basic.info.persistence.dataobject.UserQualificationInfoDO;
import com.zcloud.basic.info.persistence.repository.UserQualificationInfoRepository;
import lombok.AllArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
@ -21,9 +26,24 @@ import org.springframework.transaction.annotation.Transactional;
@AllArgsConstructor
public class UserQualificationInfoAddExe {
private final UserQualificationInfoGateway userQualificationInfoGateway;
private final UserQualificationInfoRepository userQualificationInfoRepository;
@Transactional(rollbackFor = Exception.class)
public boolean execute(UserQualificationInfoAddCmd cmd) {
if(StringUtils.isNotEmpty(cmd.getUserIdString())){
cmd.setUserId(Long.valueOf(cmd.getUserIdString()));
}
// 证书编号验重
QueryWrapper<UserQualificationInfoDO> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("certificate_no", cmd.getCertificateNo());
queryWrapper.eq("delete_enum", "FALSE");
List<UserQualificationInfoDO> list = userQualificationInfoRepository.list(queryWrapper);
if(list != null && list.size() > 0){
throw new BizException("该证书编号重复");
}
UserQualificationInfoE userQualificationInfoE = new UserQualificationInfoE();
BeanUtils.copyProperties(cmd, userQualificationInfoE);
boolean res = false;

View File

@ -1,15 +1,19 @@
package com.zcloud.basic.info.command;
import com.alibaba.cola.exception.BizException;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zcloud.basic.info.domain.gateway.UserQualificationInfoGateway;
import com.zcloud.basic.info.domain.model.UserQualificationInfoE;
import com.zcloud.basic.info.dto.UserQualificationInfoUpdateCmd;
import com.zcloud.basic.info.persistence.dataobject.UserQualificationInfoDO;
import com.zcloud.basic.info.persistence.repository.UserQualificationInfoRepository;
import lombok.AllArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
@ -21,9 +25,28 @@ import org.springframework.transaction.annotation.Transactional;
@AllArgsConstructor
public class UserQualificationInfoUpdateExe {
private final UserQualificationInfoGateway userQualificationInfoGateway;
private final UserQualificationInfoRepository userQualificationInfoRepository;
@Transactional(rollbackFor = Exception.class)
public void execute(UserQualificationInfoUpdateCmd userQualificationInfoUpdateCmd) {
if(StringUtils.isNotEmpty(userQualificationInfoUpdateCmd.getIdString())){
userQualificationInfoUpdateCmd.setId(Long.valueOf(userQualificationInfoUpdateCmd.getIdString()));
}
if(StringUtils.isNotEmpty(userQualificationInfoUpdateCmd.getUserIdString())){
userQualificationInfoUpdateCmd.setUserId(Long.valueOf(userQualificationInfoUpdateCmd.getUserIdString()));
}
// 证书编号验重
QueryWrapper<UserQualificationInfoDO> queryWrapper = new QueryWrapper<>();
queryWrapper.ne("id", userQualificationInfoUpdateCmd.getId());
queryWrapper.eq("certificate_no", userQualificationInfoUpdateCmd.getCertificateNo());
queryWrapper.eq("delete_enum", "FALSE");
List<UserQualificationInfoDO> list = userQualificationInfoRepository.list(queryWrapper);
if(list != null && list.size() > 0){
throw new BizException("该证书编号重复,请检查后重新输入。");
}
UserQualificationInfoE userQualificationInfoE = new UserQualificationInfoE();
BeanUtils.copyProperties(userQualificationInfoUpdateCmd, userQualificationInfoE);
boolean res = userQualificationInfoGateway.update(userQualificationInfoE);

View File

@ -56,7 +56,7 @@ public class PostQueryExe {
Map<String, Object> params = PageQueryHelper.toHashMap(postPageQry);
PageResponse<PostDO> pageResponse = postRepository.listPage(params);
if (CollUtil.isEmpty(pageResponse.getData())) {
if (pageResponse == null || CollUtil.isEmpty(pageResponse.getData())) {
List<PostCO> postCOList = new ArrayList<>();
return PageResponse.of(postCOList, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
}

View File

@ -1,14 +1,17 @@
package com.zcloud.basic.info.command.query;
import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.basic.info.command.convertor.UserQualificationInfoCoConvertor;
import com.zcloud.basic.info.dto.UserQualificationInfoPageQry;
import com.zcloud.basic.info.dto.clientobject.UserQualificationInfoCO;
import com.zcloud.basic.info.persistence.dataobject.UserQualificationInfoDO;
import com.zcloud.basic.info.persistence.repository.ImgFilesRepository;
import com.zcloud.basic.info.persistence.repository.UserQualificationInfoRepository;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
import lombok.AllArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
@ -27,6 +30,7 @@ import java.util.Map;
public class UserQualificationInfoQueryExe {
private final UserQualificationInfoRepository userQualificationInfoRepository;
private final UserQualificationInfoCoConvertor userQualificationInfoCoConvertor;
private final ImgFilesRepository imgFilesRepository;
/**
*
@ -35,17 +39,54 @@ public class UserQualificationInfoQueryExe {
* @return
*/
public PageResponse<UserQualificationInfoCO> execute(UserQualificationInfoPageQry userQualificationInfoPageQry) {
if(userQualificationInfoPageQry != null && StringUtils.isNotEmpty(userQualificationInfoPageQry.getUserIdString())){
userQualificationInfoPageQry.setEqUserId(Long.valueOf(userQualificationInfoPageQry.getUserIdString()));
}
if(userQualificationInfoPageQry != null && StringUtils.isNotEmpty(userQualificationInfoPageQry.getCorpinfoIdString())){
userQualificationInfoPageQry.setEqCorpinfoId(Long.valueOf(userQualificationInfoPageQry.getCorpinfoIdString()));
}
Map<String,Object> params = PageQueryHelper.toHashMap(userQualificationInfoPageQry);
PageResponse<UserQualificationInfoDO> pageResponse = userQualificationInfoRepository.listPage(params);
if(pageResponse != null && pageResponse.getData() != null && pageResponse.getData().size() > 0){
List<UserQualificationInfoCO> examCenterCOS = userQualificationInfoCoConvertor.converDOsToCOs(pageResponse.getData());
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
}else {
return PageResponse.of(0, 0);
}
}
public MultiResponse<UserQualificationInfoCO> executeList(UserQualificationInfoPageQry userQualificationInfoPageQry) {
if(userQualificationInfoPageQry != null && StringUtils.isNotEmpty(userQualificationInfoPageQry.getUserIdString())){
userQualificationInfoPageQry.setEqUserId(Long.valueOf(userQualificationInfoPageQry.getUserIdString()));
}
if(userQualificationInfoPageQry != null && StringUtils.isNotEmpty(userQualificationInfoPageQry.getCorpinfoIdString())){
userQualificationInfoPageQry.setEqCorpinfoId(Long.valueOf(userQualificationInfoPageQry.getCorpinfoIdString()));
}
Map<String,Object> params = PageQueryHelper.toHashMap(userQualificationInfoPageQry);
MultiResponse<UserQualificationInfoDO> listResponse = userQualificationInfoRepository.list(params);
if(listResponse != null && listResponse.getData() != null && listResponse.getData().size() > 0){
List<UserQualificationInfoCO> examCenterCOS = userQualificationInfoCoConvertor.converDOsToCOs(listResponse.getData());
return MultiResponse.of(examCenterCOS);
}else {
return MultiResponse.of(null);
}
}
public SingleResponse<UserQualificationInfoCO> execute(Long id) {
SingleResponse<UserQualificationInfoDO> userQualificationInfoDO = userQualificationInfoRepository.getInfoById(id);
SingleResponse<UserQualificationInfoCO> userQualificationInfoCO = new SingleResponse<>();
BeanUtils.copyProperties(userQualificationInfoDO,userQualificationInfoCO);
UserQualificationInfoCO co = new UserQualificationInfoCO();
if(userQualificationInfoDO != null && userQualificationInfoDO.getData() != null){
BeanUtils.copyProperties(userQualificationInfoDO.getData(),co);
userQualificationInfoCO.setData(co);
}
return userQualificationInfoCO;
}
}

View File

@ -1,5 +1,6 @@
package com.zcloud.basic.info.service;
import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.basic.info.api.UserQualificationInfoServiceI;
import com.zcloud.basic.info.command.UserQualificationInfoAddExe;
import com.zcloud.basic.info.command.UserQualificationInfoRemoveExe;
@ -30,10 +31,14 @@ public class UserQualificationInfoServiceImpl implements UserQualificationInfoSe
@Override
public PageResponse<UserQualificationInfoCO> listPage(UserQualificationInfoPageQry qry){
return userQualificationInfoQueryExe.execute(qry);
}
@Override
public MultiResponse<UserQualificationInfoCO> list(UserQualificationInfoPageQry qry) {
return userQualificationInfoQueryExe.executeList(qry);
}
@Override
public SingleResponse<UserQualificationInfoCO> getInfoById(Long id) {
return userQualificationInfoQueryExe.execute(id);
@ -41,7 +46,6 @@ public class UserQualificationInfoServiceImpl implements UserQualificationInfoSe
@Override
public SingleResponse add(UserQualificationInfoAddCmd cmd) {
userQualificationInfoAddExe.execute(cmd);
return SingleResponse.buildSuccess();
}

View File

@ -1,5 +1,6 @@
package com.zcloud.basic.info.api;
import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.basic.info.dto.UserQualificationInfoAddCmd;
import com.zcloud.basic.info.dto.UserQualificationInfoPageQry;
import com.zcloud.basic.info.dto.UserQualificationInfoUpdateCmd;
@ -16,6 +17,8 @@ import com.alibaba.cola.dto.SingleResponse;
public interface UserQualificationInfoServiceI {
PageResponse<UserQualificationInfoCO> listPage(UserQualificationInfoPageQry qry);
MultiResponse<UserQualificationInfoCO> list(UserQualificationInfoPageQry qry);
SingleResponse<UserQualificationInfoCO> getInfoById(Long id);
SingleResponse<UserQualificationInfoCO> add(UserQualificationInfoAddCmd cmd);

View File

@ -8,6 +8,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
import java.time.LocalDate;
import java.util.Date;
/**
@ -21,26 +22,30 @@ import java.util.Date;
@AllArgsConstructor
public class UserQualificationInfoAddCmd extends Command {
@ApiModelProperty(value = "人员资质id", name = "userQualificationinfoId", required = true)
@NotEmpty(message = "人员资质id")
@ApiModelProperty(value = "人员资质id", name = "userQualificationinfoId")
private String userQualificationinfoId;
@ApiModelProperty(value = "企业id", name = "corpinfoId", required = true)
@NotNull(message = "企业id不能为空")
@ApiModelProperty(value = "企业id", name = "corpinfoId")
private Long corpinfoId;
@ApiModelProperty(value = "用户id", name = "userId", required = true)
@NotNull(message = "用户id不能为空")
@ApiModelProperty(value = "用户id", name = "userIdString", required = true)
@NotEmpty(message = "用户id不能为空")
private String userIdString;
private Long userId;
@ApiModelProperty(value = "资质名称", name = "qualificationName", required = true)
@NotEmpty(message = "资质名称不能为空")
private String qualificationName;
@ApiModelProperty(value = "人员资质证书有效期", name = "validityTime", required = true)
@NotNull(message = "人员资质证书有效期不能为空")
@ApiModelProperty(value = "人员资质证书有效期-开始时间", name = "startValidityTime", required = true)
@NotNull(message = "人员资质证书有效期开始时间不能为空")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date validityTime;
private Date startValidityTime;
@ApiModelProperty(value = "人员资质证书有效期-结束时间", name = "endValidityTime", required = true)
@NotNull(message = "人员资质证书有效期结束时间不能为空")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date endValidityTime;
@ApiModelProperty(value = "证书编号", name = "certificateNo", required = true)
@NotEmpty(message = "证书编号不能为空")

View File

@ -1,9 +1,12 @@
package com.zcloud.basic.info.dto;
import com.alibaba.cola.dto.PageQuery;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
import java.util.Date;
/**
@ -24,19 +27,24 @@ public class UserQualificationInfoPageQry extends PageQuery {
* - `le`:
* - `ne`: SQL!=
*/
@ApiModelProperty(value = "企业id", name = "eqCorpinfoId")
@ApiModelProperty(value = "企业id", name = "corpinfoIdString", required = true)
@NotEmpty(message = "企业id不能为空")
private String corpinfoIdString;
private Long eqCorpinfoId;
@ApiModelProperty(value = "用户id", name = "eqUserId")
@ApiModelProperty(value = "用户id", name = "userIdString")
private String userIdString;
private Long eqUserId;
@ApiModelProperty(value = "证书名称编号模糊查询", name = "keyWords")
private String keyWords;
@ApiModelProperty(value = "结束时间", name = "startDate")
private String leValidityTime;
@ApiModelProperty(value = "结束时间", name = "geEndValidityTime")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date geEndValidityTime;
@ApiModelProperty(value = "开始时间", name = "endDate")
private String geValidityTime;
@ApiModelProperty(value = "开始时间", name = "leStartValidityTime")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date leStartValidityTime;
}

View File

@ -23,8 +23,9 @@ import java.util.Date;
@AllArgsConstructor
public class UserQualificationInfoRemoveCmd extends Command {
@ApiModelProperty(value = "主键", name = "ids", required = true)
@ApiModelProperty(value = "主键", name = "idsString", required = true)
@NotNull(message = "主键不能为空")
private String[] idsString;
private Long[] ids;
}

View File

@ -8,6 +8,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
import java.time.LocalDate;
import java.util.Date;
/**
@ -20,25 +21,34 @@ import java.util.Date;
@NoArgsConstructor
@AllArgsConstructor
public class UserQualificationInfoUpdateCmd extends Command {
@ApiModelProperty(value = "主键", name = "id", required = true)
@NotNull(message = "主键不能为空")
@ApiModelProperty(value = "主键", name = "String", required = true)
@NotEmpty(message = "主键不能为空")
private String idString;
private Long id;
@ApiModelProperty(value = "业务主键id", name = "userQualificationinfoId", required = true)
@NotEmpty(message = "业务主键id不能为空")
private String userQualificationinfoId;
@ApiModelProperty(value = "企业id", name = "corpinfoId", required = true)
@NotNull(message = "企业id不能为空")
private Long corpinfoId;
@ApiModelProperty(value = "用户id", name = "userId", required = true)
@NotNull(message = "用户id不能为空")
@ApiModelProperty(value = "用户id", name = "userIdString", required = true)
@NotEmpty(message = "用户id不能为空")
private String userIdString;
private Long userId;
@ApiModelProperty(value = "资质名称", name = "qualificationName", required = true)
@NotEmpty(message = "资质名称不能为空")
private String qualificationName;
@ApiModelProperty(value = "人员资质证书有效期", name = "validityTime", required = true)
@NotNull(message = "人员资质证书有效期不能为空")
@ApiModelProperty(value = "人员资质证书有效期开始时间", name = "startValidityTime", required = true)
@NotNull(message = "人员资质证书有效期开始时间不能为空")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date validityTime;
private Date startValidityTime;
@ApiModelProperty(value = "人员资质证书有效期结束时间", name = "endValidityTime", required = true)
@NotNull(message = "人员资质证书有效期结束时间不能为空")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date endValidityTime;
@ApiModelProperty(value = "证书编号", name = "certificateNo", required = true)
@NotEmpty(message = "证书编号不能为空")
private String certificateNo;

View File

@ -6,6 +6,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
@ -59,7 +60,7 @@ public class PostCO extends ClientObject {
//创建时间
@ApiModelProperty(value = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime createTime;
private Date createTime;
//更新人
@ApiModelProperty(value = "更新人")
private Long updateId;
@ -69,7 +70,7 @@ public class PostCO extends ClientObject {
//更新时间
@ApiModelProperty(value = "更新时间")
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime updateTime;
private Date updateTime;
//是否删除
@ApiModelProperty(value = "是否删除")
private String deleteEnum;

View File

@ -6,6 +6,8 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;
@ -32,9 +34,12 @@ public class UserQualificationInfoCO extends ClientObject {
@ApiModelProperty(value = "资质名称")
private String qualificationName;
//人员资质证书有效期
@ApiModelProperty(value = "人员资质证书有效期")
@ApiModelProperty(value = "人员资质证书有效期开始时间")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date validityTime;
private Date startValidityTime;
@ApiModelProperty(value = "人员资质证书有效期结束时间")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date endValidityTime;
//证书编号
@ApiModelProperty(value = "证书编号")
private String certificateNo;
@ -52,10 +57,12 @@ public class UserQualificationInfoCO extends ClientObject {
private Integer version;
//创建时间
@ApiModelProperty(value = "创建时间")
private String createTime;
@JsonFormat(pattern = "yyyy-MM-dd ")
private Date createTime;
//修改时间
@ApiModelProperty(value = "修改时间")
private String updateTime;
@JsonFormat(pattern = "yyyy-MM-dd")
private Date updateTime;
//创建人id
@ApiModelProperty(value = "创建人id")
private Long createId;

View File

@ -5,6 +5,7 @@ import com.jjb.saas.framework.domain.model.BaseE;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;
@ -28,7 +29,8 @@ public class UserQualificationInfoE extends BaseE {
//资质名称
private String qualificationName;
//人员资质证书有效期
private Date validityTime;
private Date startValidityTime;
private Date endValidityTime;
//证书编号
private String certificateNo;

View File

@ -1,5 +1,6 @@
package com.zcloud.basic.info.gatewayimpl;
import com.jjb.saas.framework.auth.utils.AuthContext;
import com.zcloud.basic.info.domain.gateway.UserQualificationInfoGateway;
import com.zcloud.basic.info.domain.model.UserQualificationInfoE;
import com.zcloud.basic.info.persistence.dataobject.UserQualificationInfoDO;
@ -29,6 +30,8 @@ public class UserQualificationInfoGatewayImpl implements UserQualificationInfoGa
if(StringUtils.isEmpty(d.getUserQualificationinfoId())){
d.setUserQualificationinfoId(UuidUtil.get32UUID());
}
// 当前登录账号企业id/租户id
d.setCorpinfoId(AuthContext.getTenantId());
userQualificationInfoRepository.save(d);
return true;
}

View File

@ -7,6 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.time.LocalDate;
import java.util.Date;
/**
@ -34,7 +35,9 @@ public class UserQualificationInfoDO extends BaseDO {
private String qualificationName;
//人员资质证书有效期
@ApiModelProperty(value = "人员资质证书有效期")
private Date validityTime;
private Date startValidityTime;
@ApiModelProperty(value = "人员资质证书有效期")
private Date endValidityTime;
//证书编号
@ApiModelProperty(value = "证书编号")
private String certificateNo;

View File

@ -1,5 +1,6 @@
package com.zcloud.basic.info.persistence.repository;
import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.SingleResponse;
import com.zcloud.basic.info.persistence.dataobject.UserQualificationInfoDO;
import com.alibaba.cola.dto.PageResponse;
@ -13,6 +14,7 @@ import java.util.Map;
*/
public interface UserQualificationInfoRepository extends BaseRepository<UserQualificationInfoDO> {
PageResponse<UserQualificationInfoDO> listPage(Map<String,Object> params);
MultiResponse<UserQualificationInfoDO> list(Map<String,Object> params);
SingleResponse<UserQualificationInfoDO> getInfoById(Long id);
}

View File

@ -1,5 +1,6 @@
package com.zcloud.basic.info.persistence.repository.impl;
import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.SingleResponse;
import com.jjb.saas.framework.repository.common.PageHelper;
import com.zcloud.basic.info.persistence.dataobject.UserQualificationInfoDO;
@ -14,6 +15,8 @@ import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
import com.zcloud.gbscommon.utils.Tools;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
@ -40,6 +43,19 @@ public class UserQualificationInfoRepositoryImpl extends BaseRepositoryImpl<User
return PageHelper.pageToResponse(result, result.getRecords());
}
@Override
public MultiResponse<UserQualificationInfoDO> list(Map<String, Object> params) {
Object keyWords = params.get("keyWords");
QueryWrapper<UserQualificationInfoDO> queryWrapper = new QueryWrapper<>();
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
if (keyWords != null && !Tools.isEmpty(keyWords.toString())) {
queryWrapper.and(i -> i.like("qualification_name", keyWords).or().like("certificate_no", keyWords));
}
queryWrapper.orderByDesc("create_time");
List<UserQualificationInfoDO> result = userQualificationInfoMapper.selectList(queryWrapper);
return MultiResponse.of(result);
}
@Override
public SingleResponse<UserQualificationInfoDO> getInfoById(Long id) {
return SingleResponse.of(userQualificationInfoMapper.selectById(id));