f
This commit is contained in:
@@ -825,6 +825,31 @@ func (s *CertificationApplicationServiceImpl) AdminApproveSubmitRecord(ctx conte
|
||||
if err != nil {
|
||||
return fmt.Errorf("加载认证信息失败: %w", err)
|
||||
}
|
||||
|
||||
// 兼容线上脏数据:认证已进入「已提交企业信息」或更后续状态,但提交记录仍是 pending,
|
||||
// 此时无需再走「待审核->通过」的状态机,只需要把提交记录补齐为 approved,避免管理端无法操作。
|
||||
// 说明:后续状态(如已企业认证/合同状态/完成)都意味着企业信息审核已经通过。
|
||||
switch cert.Status {
|
||||
case enums.StatusInfoSubmitted,
|
||||
enums.StatusEnterpriseVerified,
|
||||
enums.StatusContractApplied,
|
||||
enums.StatusContractSigned,
|
||||
enums.StatusCompleted,
|
||||
enums.StatusContractRejected,
|
||||
enums.StatusContractExpired:
|
||||
record.MarkManualApproved(adminID, remark)
|
||||
if err := s.enterpriseInfoSubmitRecordService.Save(ctx, record); err != nil {
|
||||
return fmt.Errorf("保存提交记录失败: %w", err)
|
||||
}
|
||||
s.logger.Info("已补齐提交记录人工审核为通过(认证已进入后续状态)",
|
||||
zap.String("record_id", recordID),
|
||||
zap.String("admin_id", adminID),
|
||||
zap.String("user_id", record.UserID),
|
||||
zap.String("certification_status", string(cert.Status)),
|
||||
)
|
||||
return nil
|
||||
}
|
||||
|
||||
// 兼容线上脏数据:提交记录已落库但当时事务失败导致认证仍为「待认证」,先同步为待审核再执行通过
|
||||
if cert.Status != enums.StatusInfoPendingReview {
|
||||
if err := s.syncCertToPendingReviewIfRecordPending(ctx, cert, record); err != nil {
|
||||
|
||||
Reference in New Issue
Block a user