Commit 1afc774be4ec258bdaa213e26e4f5f2917b0c69f

Authored by 芋道源码
Committed by GitHub
2 parents 256280e8 8a96d60f

Merge pull request #1211 from dadiyang/fix/hrm-convert-employee-channel-field-exempt

[BUG] HRM:管理端「候选人转员工」恒失败——服务端回填 channelId 与 createEmployee 隐藏字段校验互斥(1050100034)
yudao-module-hrm/src/main/java/cn/iocoder/yudao/module/hrm/service/employee/config/HrmEmployeeFieldConfigServiceImpl.java
@@ -106,7 +106,11 @@ public class HrmEmployeeFieldConfigServiceImpl implements HrmEmployeeFieldConfig @@ -106,7 +106,11 @@ public class HrmEmployeeFieldConfigServiceImpl implements HrmEmployeeFieldConfig
106 public void validateEmployeeCreateFields(HrmEmployeeSaveReqVO reqVO, Integer entryStatus) { 106 public void validateEmployeeCreateFields(HrmEmployeeSaveReqVO reqVO, Integer entryStatus) {
107 for (HrmEmployeeFieldConfigRespVO field : getEmployeeCreateFieldConfigList(entryStatus)) { 107 for (HrmEmployeeFieldConfigRespVO field : getEmployeeCreateFieldConfigList(entryStatus)) {
108 if (Boolean.TRUE.equals(field.getVisible()) 108 if (Boolean.TRUE.equals(field.getVisible())
109 - || HrmEmployeeCreateFieldEnum.CANDIDATE_ID.getName().equals(field.getName())) { 109 + || HrmEmployeeCreateFieldEnum.CANDIDATE_ID.getName().equals(field.getName())
  110 + // 候选人转员工(convert 来源,请求携带 candidateId):channelId 由服务端从候选人记录回填,
  111 + // 与 candidateId 同属服务端赋值字段,默认隐藏时同样放行(渠道存在性仍由 createEmployee 校验兜底)
  112 + || (reqVO.getCandidateId() != null
  113 + && HrmEmployeeCreateFieldEnum.CHANNEL_ID.getName().equals(field.getName()))) {
110 continue; 114 continue;
111 } 115 }
112 if (ObjectUtil.isNotEmpty(BeanUtil.getFieldValue(reqVO, field.getName()))) { 116 if (ObjectUtil.isNotEmpty(BeanUtil.getFieldValue(reqVO, field.getName()))) {