定期检查资质证书过期数据
This commit is contained in:
parent
d1809af5e4
commit
c5975f90ae
|
|
@ -14,4 +14,9 @@ public class CertificateConstants {
|
||||||
|
|
||||||
/**营业执照*/
|
/**营业执照*/
|
||||||
public static final String BUSINESS_LICENSE = "business_license";
|
public static final String BUSINESS_LICENSE = "business_license";
|
||||||
|
|
||||||
|
/**资质证书*/
|
||||||
|
public static final String QUALIFICATON_CERTIFICATE = "qualification_certificate";
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package com.bonus.mainDataBase.mapper;
|
||||||
|
|
||||||
import com.bonus.common.domain.mainDatabase.dto.QualificationDto;
|
import com.bonus.common.domain.mainDatabase.dto.QualificationDto;
|
||||||
import com.bonus.common.domain.mainDatabase.po.Qualification;
|
import com.bonus.common.domain.mainDatabase.po.Qualification;
|
||||||
|
import com.bonus.common.domain.mainDatabase.vo.EnterpriseVo;
|
||||||
import com.bonus.common.domain.mainDatabase.vo.QualificationVo;
|
import com.bonus.common.domain.mainDatabase.vo.QualificationVo;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
@ -58,4 +59,13 @@ public interface IMDQualificationMapper {
|
||||||
* @date 2025/10/30 14:10
|
* @date 2025/10/30 14:10
|
||||||
*/
|
*/
|
||||||
QualificationVo getQualificationData(QualificationDto dto);
|
QualificationVo getQualificationData(QualificationDto dto);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询资质库过期证件
|
||||||
|
* @return List<ErrorInfo>
|
||||||
|
* @author csy
|
||||||
|
* @date 2025/11/16 20:30
|
||||||
|
*/
|
||||||
|
List<QualificationVo> queryExpiredCertificate();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.bonus.mainDataBase.service;
|
package com.bonus.mainDataBase.service;
|
||||||
|
|
||||||
import com.bonus.common.domain.mainDatabase.dto.QualificationDto;
|
import com.bonus.common.domain.mainDatabase.dto.QualificationDto;
|
||||||
|
import com.bonus.common.domain.mainDatabase.po.ErrorInfo;
|
||||||
import com.bonus.common.domain.mainDatabase.po.Qualification;
|
import com.bonus.common.domain.mainDatabase.po.Qualification;
|
||||||
import com.bonus.common.domain.mainDatabase.vo.QualificationVo;
|
import com.bonus.common.domain.mainDatabase.vo.QualificationVo;
|
||||||
|
|
||||||
|
|
@ -52,4 +53,13 @@ public interface IMDQualificationService {
|
||||||
* @date 2025/10/30 10:32
|
* @date 2025/10/30 10:32
|
||||||
*/
|
*/
|
||||||
QualificationVo getQualificationData(QualificationDto dto);
|
QualificationVo getQualificationData(QualificationDto dto);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询资质库过期证件
|
||||||
|
* @return List<ErrorInfo>
|
||||||
|
* @author csy
|
||||||
|
* @date 2025/11/16 20:29
|
||||||
|
*/
|
||||||
|
List<ErrorInfo> queryExpiredCertificate();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,21 @@
|
||||||
package com.bonus.mainDataBase.service.impl;
|
package com.bonus.mainDataBase.service.impl;
|
||||||
|
|
||||||
|
import com.bonus.common.constant.CertificateConstants;
|
||||||
import com.bonus.common.domain.mainDatabase.dto.QualificationDto;
|
import com.bonus.common.domain.mainDatabase.dto.QualificationDto;
|
||||||
import com.bonus.common.domain.mainDatabase.po.Qualification;
|
import com.bonus.common.domain.mainDatabase.po.Qualification;
|
||||||
|
import com.bonus.common.domain.mainDatabase.po.ErrorInfo;
|
||||||
import com.bonus.common.domain.mainDatabase.vo.QualificationVo;
|
import com.bonus.common.domain.mainDatabase.vo.QualificationVo;
|
||||||
import com.bonus.mainDataBase.mapper.IMDQualificationMapper;
|
import com.bonus.mainDataBase.mapper.IMDQualificationMapper;
|
||||||
import com.bonus.mainDataBase.service.IMDQualificationService;
|
import com.bonus.mainDataBase.service.IMDQualificationService;
|
||||||
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
|
import com.bonus.common.utils.CertificateUtil;
|
||||||
|
import com.bonus.common.constant.TableConstants;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.ArrayList;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.List;
|
import java.util.*;
|
||||||
import java.util.Optional;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @className:MDQualificationServiceImpl
|
* @className:MDQualificationServiceImpl
|
||||||
|
|
@ -86,4 +90,45 @@ public class MDQualificationServiceImpl implements IMDQualificationService {
|
||||||
return new QualificationVo();
|
return new QualificationVo();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<ErrorInfo> queryExpiredCertificate() {
|
||||||
|
try {
|
||||||
|
List<ErrorInfo> errorInfos = new ArrayList<>();
|
||||||
|
// 定义日期格式化器(根据实际需求调整格式,如yyyy-MM-dd)
|
||||||
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||||
|
// 查询所有资质信息
|
||||||
|
List<QualificationVo> qualificationList = Optional.ofNullable(imdQualificationMapper.queryExpiredCertificate())
|
||||||
|
.orElse(new ArrayList<>());
|
||||||
|
|
||||||
|
if (CollectionUtils.isNotEmpty(qualificationList)) {
|
||||||
|
for (QualificationVo vo : qualificationList) {
|
||||||
|
// 将Date类型的证书截止日期转换为String类型
|
||||||
|
String certificateEndDateStr = null;
|
||||||
|
Date endDate = vo.getCertificateEndDate();
|
||||||
|
if (endDate != null) {
|
||||||
|
certificateEndDateStr = sdf.format(endDate);
|
||||||
|
}
|
||||||
|
// 调用工具类检查证书状态(传入转换后的字符串)
|
||||||
|
ErrorInfo errorInfo = CertificateUtil.checkCertificateState(
|
||||||
|
certificateEndDateStr, // 转换后的String类型截止日期
|
||||||
|
CertificateConstants.QUALIFICATON_CERTIFICATE,
|
||||||
|
vo.getQualificationId(),
|
||||||
|
vo.getEnterpriseId(),
|
||||||
|
TableConstants.TB_ENTERPRISE_QUALIFICATION
|
||||||
|
);
|
||||||
|
if (Objects.nonNull(errorInfo)) {
|
||||||
|
errorInfos.add(errorInfo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return errorInfos;
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("查询过期资质证书异常", e);
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -168,4 +168,14 @@
|
||||||
and qualification_id = #{qualificationId}
|
and qualification_id = #{qualificationId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="queryExpiredCertificate" resultMap="qualificationResult">
|
||||||
|
SELECT
|
||||||
|
q.qualification_id AS qualificationId,
|
||||||
|
q.enterprise_id AS enterpriseId,
|
||||||
|
q.certificate_name AS certificateName,
|
||||||
|
q.certificate_end_date AS certificateEndDate
|
||||||
|
FROM tb_enterprise_qualification q
|
||||||
|
WHERE q.del_flag = '0'
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import com.bonus.common.domain.mainDatabase.po.ErrorInfo;
|
||||||
import com.bonus.mainDataBase.service.IMDEnterpriseService;
|
import com.bonus.mainDataBase.service.IMDEnterpriseService;
|
||||||
import com.bonus.mainDataBase.service.IMDErrorInfoService;
|
import com.bonus.mainDataBase.service.IMDErrorInfoService;
|
||||||
import com.bonus.mainDataBase.service.IMDPersonnelService;
|
import com.bonus.mainDataBase.service.IMDPersonnelService;
|
||||||
|
import com.bonus.mainDataBase.service.IMDQualificationService;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
@ -33,6 +34,9 @@ public class ScanCertificateTask {
|
||||||
@Resource(name = "IMDPersonnelService")
|
@Resource(name = "IMDPersonnelService")
|
||||||
private IMDPersonnelService imdPersonnelService;
|
private IMDPersonnelService imdPersonnelService;
|
||||||
|
|
||||||
|
@Resource(name = "IMDQualificationService")
|
||||||
|
private IMDQualificationService imdQualificationService;
|
||||||
|
|
||||||
public void scanCertificate() {
|
public void scanCertificate() {
|
||||||
log.info("开始扫描证件是否过期");
|
log.info("开始扫描证件是否过期");
|
||||||
List<ErrorInfo> totalList = new ArrayList<>();
|
List<ErrorInfo> totalList = new ArrayList<>();
|
||||||
|
|
@ -62,6 +66,10 @@ public class ScanCertificateTask {
|
||||||
List<ErrorInfo> personnelCertificateList = handlePersonnelCertificateErrorInfo();
|
List<ErrorInfo> personnelCertificateList = handlePersonnelCertificateErrorInfo();
|
||||||
errorInfos.addAll(personnelCertificateList);
|
errorInfos.addAll(personnelCertificateList);
|
||||||
break;
|
break;
|
||||||
|
case TableConstants.TB_ENTERPRISE_QUALIFICATION: // 人员证件
|
||||||
|
List<ErrorInfo> qualificaitonList = handleQualificationErrorInfo();
|
||||||
|
errorInfos.addAll(qualificaitonList);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -87,6 +95,18 @@ public class ScanCertificateTask {
|
||||||
* @author cwchen
|
* @author cwchen
|
||||||
* @date 2025/11/17 14:50
|
* @date 2025/11/17 14:50
|
||||||
*/
|
*/
|
||||||
|
private List<ErrorInfo> handleQualificationErrorInfo() {
|
||||||
|
List<ErrorInfo> expiredList = imdQualificationService.queryExpiredCertificate();
|
||||||
|
return filterNotExistErrorInfo(expiredList, TableConstants.TB_PERSONNEL_CERTIFICATE);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 处理资质证件过期异常数据
|
||||||
|
*
|
||||||
|
* @return List<ErrorInfo>
|
||||||
|
* @author lhdhy
|
||||||
|
* @date 2025/11/17 16:50
|
||||||
|
*/
|
||||||
private List<ErrorInfo> handlePersonnelCertificateErrorInfo() {
|
private List<ErrorInfo> handlePersonnelCertificateErrorInfo() {
|
||||||
List<ErrorInfo> expiredList = imdPersonnelService.queryExpiredCertificate();
|
List<ErrorInfo> expiredList = imdPersonnelService.queryExpiredCertificate();
|
||||||
return filterNotExistErrorInfo(expiredList, TableConstants.TB_PERSONNEL_CERTIFICATE);
|
return filterNotExistErrorInfo(expiredList, TableConstants.TB_PERSONNEL_CERTIFICATE);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue