|
|
@@ -313,12 +313,14 @@ public class PersonnelSyncServiceImpl implements PersonnelSyncService {
|
|
|
formData.put(conf.getFieldName(), String.valueOf(name).trim());
|
|
|
}
|
|
|
|
|
|
- // 员工编号 / 员工工号 <- job_number (员工工号在目标表 READONLY, 按需求强写覆盖)
|
|
|
+ // 员工编号 <- userid (钉钉用户唯一 ID, 与人员 EmployeeField 同源, 但写入 TextField 便于跨模块按字符串引用)
|
|
|
+ if (notBlank(conf.getFieldJobNumber())) {
|
|
|
+ formData.put(conf.getFieldJobNumber(), userid);
|
|
|
+ }
|
|
|
+ // 员工工号 <- job_number (目标表 READONLY, 按需求强写覆盖; 空则跳过)
|
|
|
Object jobNumber = ding.get("job_number");
|
|
|
- if (jobNumber != null && notBlank(String.valueOf(jobNumber))) {
|
|
|
- String jn = String.valueOf(jobNumber).trim();
|
|
|
- if (notBlank(conf.getFieldJobNumber())) formData.put(conf.getFieldJobNumber(), jn);
|
|
|
- if (notBlank(conf.getFieldJobNumber2())) formData.put(conf.getFieldJobNumber2(), jn);
|
|
|
+ if (notBlank(conf.getFieldJobNumber2()) && jobNumber != null && notBlank(String.valueOf(jobNumber))) {
|
|
|
+ formData.put(conf.getFieldJobNumber2(), String.valueOf(jobNumber).trim());
|
|
|
}
|
|
|
|
|
|
// 员工部门 <- dept_id_list 稳定排序后取首个 (钉钉返回顺序不固定, 避免 diff 抖动)
|