upgrade
parent
93b573109f
commit
be5c92d1d9
|
|
@ -23,6 +23,8 @@ public interface OrgPersonnelConvertor {
|
|||
@Mapping(target = "changeCount", ignore = true)
|
||||
@Mapping(target = "resignApplyId", ignore = true)
|
||||
@Mapping(target = "resignAuditStatus", ignore = true)
|
||||
@Mapping(target = "registeredSafetyEngineerCert", ignore = true)
|
||||
@Mapping(target = "evaluatorCert", ignore = true)
|
||||
OrgPersonnelCO toCO(OrgPersonnelEntity entity);
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -13,11 +13,14 @@ import org.qinan.safetyeval.app.support.OrgPersonnelChangeRecorder;
|
|||
import org.qinan.safetyeval.app.support.OrgPersonnelExcelImporter;
|
||||
import org.qinan.safetyeval.app.support.OrgPersonnelViewEnricher;
|
||||
import org.qinan.safetyeval.client.api.OrgPersonnelApi;
|
||||
import org.qinan.safetyeval.client.co.OrgPersonnelCertCO;
|
||||
import org.qinan.safetyeval.client.co.OrgPersonnelCO;
|
||||
import org.qinan.safetyeval.client.co.OrgPersonnelImportResultCO;
|
||||
import org.qinan.safetyeval.client.co.PersonnelProfessionalCapabilityCO;
|
||||
import org.qinan.safetyeval.client.co.QualFilingPersonnelInfoCO;
|
||||
import org.qinan.safetyeval.client.dto.*;
|
||||
import org.qinan.safetyeval.domain.constant.CertTypeCodeEnum;
|
||||
import org.qinan.safetyeval.domain.entity.OrgPersonnelCertEntity;
|
||||
import org.qinan.safetyeval.domain.entity.OrgPersonnelEntity;
|
||||
import org.qinan.safetyeval.domain.entity.OrgPositionEntity;
|
||||
import org.qinan.safetyeval.domain.exception.BizException;
|
||||
|
|
@ -26,11 +29,13 @@ import org.qinan.safetyeval.domain.gateway.FaceCompareGateway;
|
|||
import org.qinan.safetyeval.domain.gateway.OrgResignApplyGateway;
|
||||
import org.qinan.safetyeval.domain.query.OrgPersonnelQuery;
|
||||
import org.qinan.safetyeval.domain.query.PageResult;
|
||||
import org.qinan.safetyeval.domain.service.OrgPersonnelCertDomainService;
|
||||
import org.qinan.safetyeval.domain.service.OrgPersonnelDomainService;
|
||||
import org.qinan.safetyeval.domain.service.OrgPositionDomainService;
|
||||
import org.qinan.safetyeval.infrastructure.adapter.ThreadLocalUserInfoAdapter;
|
||||
import org.qinan.safetyeval.infrastructure.adapter.auth.AuthUserContextAdapter;
|
||||
import org.qinan.safetyeval.infrastructure.adapter.gbs.GbsUserFacadeClient;
|
||||
import org.qinan.safetyeval.infrastructure.convertor.OrgPersonnelCertConvertor;
|
||||
import org.qinan.safetyeval.infrastructure.dataobject.OrgPersonnelDO;
|
||||
import org.qinan.safetyeval.infrastructure.mapper.OrgPersonnelMapper;
|
||||
import org.qinan.safetyeval.infrastructure.mapper.QualFilingPersonnelCertMapper;
|
||||
|
|
@ -73,6 +78,13 @@ public class OrgPersonnelExecutor implements OrgPersonnelApi {
|
|||
@Autowired
|
||||
private OrgPersonnelConvertor orgPersonnelConvertor;
|
||||
|
||||
@Lazy
|
||||
@Autowired(required = false)
|
||||
private OrgPersonnelCertDomainService orgPersonnelCertDomainService;
|
||||
|
||||
@Autowired
|
||||
private OrgPersonnelCertConvertor orgPersonnelCertConvertor;
|
||||
|
||||
@Autowired(required = false)
|
||||
private OrgResignApplyGateway orgResignApplyGateway;
|
||||
|
||||
|
|
@ -120,6 +132,9 @@ public class OrgPersonnelExecutor implements OrgPersonnelApi {
|
|||
}
|
||||
OrgPersonnelCO co = orgPersonnelConvertor.toCO(result);
|
||||
enrich(co);
|
||||
// 保存证书信息
|
||||
savePersonnelCerts(cmd, result.getId());
|
||||
fillCerts(co, result.getId());
|
||||
UserAddCmd userAddCmd = new UserAddCmd();
|
||||
userAddCmd.setId(result.getId());
|
||||
userAddCmd.setAccount(result.getAccount());
|
||||
|
|
@ -148,6 +163,7 @@ public class OrgPersonnelExecutor implements OrgPersonnelApi {
|
|||
OrgPersonnelEntity entity = orgPersonnelDomainService.get(id);
|
||||
OrgPersonnelCO co = orgPersonnelConvertor.toCO(entity);
|
||||
enrich(co);
|
||||
fillCerts(co, id);
|
||||
return SingleResponse.success(co);
|
||||
}
|
||||
|
||||
|
|
@ -326,6 +342,48 @@ public class OrgPersonnelExecutor implements OrgPersonnelApi {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存人员内嵌的注安证书和评价师证书
|
||||
*/
|
||||
private void savePersonnelCerts(OrgPersonnelAddCmd cmd, Long personnelId) {
|
||||
if (orgPersonnelCertDomainService == null) {
|
||||
return;
|
||||
}
|
||||
if (cmd.getRegisteredSafetyEngineerCert() != null) {
|
||||
OrgPersonnelCertEntity certEntity = orgPersonnelCertConvertor.addCmdToEntity(cmd.getRegisteredSafetyEngineerCert());
|
||||
certEntity.setPersonnelId(personnelId);
|
||||
certEntity.setCertTypeCode(CertTypeCodeEnum.REGISTERED_SAFETY_ENGINEER.getCode());
|
||||
orgPersonnelCertDomainService.add(certEntity);
|
||||
}
|
||||
if (cmd.getEvaluatorCert() != null) {
|
||||
OrgPersonnelCertEntity certEntity = orgPersonnelCertConvertor.addCmdToEntity(cmd.getEvaluatorCert());
|
||||
certEntity.setPersonnelId(personnelId);
|
||||
certEntity.setCertTypeCode(CertTypeCodeEnum.EVALUATOR.getCode());
|
||||
orgPersonnelCertDomainService.add(certEntity);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据人员ID查询证书并填充到CO中
|
||||
*/
|
||||
private void fillCerts(OrgPersonnelCO co, Long personnelId) {
|
||||
if (orgPersonnelCertDomainService == null || personnelId == null) {
|
||||
return;
|
||||
}
|
||||
List<OrgPersonnelCertEntity> certs = orgPersonnelCertDomainService.listByPersonnelId(personnelId);
|
||||
if (certs == null) {
|
||||
return;
|
||||
}
|
||||
for (OrgPersonnelCertEntity cert : certs) {
|
||||
OrgPersonnelCertCO certCO = orgPersonnelCertConvertor.entityToCO(cert);
|
||||
if (CertTypeCodeEnum.REGISTERED_SAFETY_ENGINEER.getCode().equals(cert.getCertTypeCode())) {
|
||||
co.setRegisteredSafetyEngineerCert(certCO);
|
||||
} else if (CertTypeCodeEnum.EVALUATOR.getCode().equals(cert.getCertTypeCode())) {
|
||||
co.setEvaluatorCert(certCO);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public SingleResponse<OrgPersonnelCO> updateOriginFace(OrgPersonnelUpdateOriginFaceCmd cmd) {
|
||||
OrgPersonnelEntity existing = orgPersonnelDomainService.get(cmd.getId());
|
||||
|
|
|
|||
|
|
@ -151,6 +151,12 @@ public class OrgPersonnelCO {
|
|||
@ApiModelProperty(value = "离职申请审核状态(列表展示,非持久化)")
|
||||
private Integer resignAuditStatus;
|
||||
|
||||
@ApiModelProperty(value = "注安证书信息")
|
||||
private OrgPersonnelCertCO registeredSafetyEngineerCert;
|
||||
|
||||
@ApiModelProperty(value = "评价师证书信息")
|
||||
private OrgPersonnelCertCO evaluatorCert;
|
||||
|
||||
@ApiModelProperty(value = "租户ID")
|
||||
private Long tenantId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import java.util.List;
|
|||
import javax.validation.constraints.Pattern;
|
||||
import javax.validation.constraints.Size;
|
||||
import lombok.Data;
|
||||
import org.qinan.safetyeval.client.co.OrgPersonnelCertCO;
|
||||
import org.qinan.safetyeval.domain.entity.CapabilityAssessmentDTO;
|
||||
import org.qinan.safetyeval.domain.entity.TitleCodeCo;
|
||||
|
||||
|
|
@ -131,6 +132,12 @@ public class OrgPersonnelAddCmd {
|
|||
@ApiModelProperty(value = "能力认定")
|
||||
private List<CapabilityAssessmentDTO> capabilityAssessment;
|
||||
|
||||
@ApiModelProperty(value = "注安证书信息")
|
||||
private OrgPersonnelCertAddCmd registeredSafetyEngineerCert;
|
||||
|
||||
@ApiModelProperty(value = "评价师证书信息")
|
||||
private OrgPersonnelCertAddCmd evaluatorCert;
|
||||
|
||||
@ApiModelProperty(value = "是否技术负责人")
|
||||
private Boolean technicalDirectorFlag;
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import org.qinan.safetyeval.domain.gateway.OrgPersonnelCertGateway;
|
|||
import org.qinan.safetyeval.domain.query.OrgPersonnelCertQuery;
|
||||
import org.qinan.safetyeval.domain.query.PageResult;
|
||||
|
||||
import java.util.List;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
|
@ -29,6 +30,10 @@ public class OrgPersonnelCertDomainService {
|
|||
return orgPersonnelCertGateway.get(id);
|
||||
}
|
||||
|
||||
public List<OrgPersonnelCertEntity> listByPersonnelId(Long personnelId) {
|
||||
return orgPersonnelCertGateway.listByPersonnelId(personnelId);
|
||||
}
|
||||
|
||||
public OrgPersonnelCertEntity modify(OrgPersonnelCertEntity entity) {
|
||||
OrgPersonnelCertEntity existing = orgPersonnelCertGateway.get(entity.getId());
|
||||
if (existing == null) {
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import cn.hutool.json.JSONUtil;
|
|||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
import org.mapstruct.Named;
|
||||
import org.qinan.safetyeval.domain.entity.CapabilityAssessmentDTO;
|
||||
import org.qinan.safetyeval.domain.entity.OrgPersonnelEntity;
|
||||
import org.qinan.safetyeval.domain.entity.TitleCodeCo;
|
||||
import org.qinan.safetyeval.infrastructure.dataobject.OrgPersonnelDO;
|
||||
|
|
@ -25,6 +26,7 @@ public interface OrgPersonnelDoConvertor {
|
|||
* @return
|
||||
*/
|
||||
@Mapping(target = "titleCodeArr", source = "titleCodeArr", qualifiedByName = "titleCodeListToJson")
|
||||
@Mapping(target = "capabilityAssessment", source = "capabilityAssessment", qualifiedByName = "capabilityAssessmentListToJson")
|
||||
OrgPersonnelDO convertEeToDo(OrgPersonnelEntity orgPersonnelEntity);
|
||||
|
||||
/**
|
||||
|
|
@ -54,4 +56,14 @@ public interface OrgPersonnelDoConvertor {
|
|||
default String titleCodeListToJson(List<TitleCodeCo> list) {
|
||||
return list == null || list.isEmpty() ? null : JSONUtil.toJsonStr(list);
|
||||
}
|
||||
|
||||
@Named("jsonToCapabilityAssessmentList")
|
||||
default List<CapabilityAssessmentDTO> jsonToCapabilityAssessmentList(String json) {
|
||||
return json == null || json.isEmpty() ? null : JSONUtil.toList(json, CapabilityAssessmentDTO.class);
|
||||
}
|
||||
|
||||
@Named("capabilityAssessmentListToJson")
|
||||
default String capabilityAssessmentListToJson(List<CapabilityAssessmentDTO> list) {
|
||||
return list == null || list.isEmpty() ? null : JSONUtil.toJsonStr(list);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue