|
|
@@ -6,6 +6,7 @@ import com.fasterxml.jackson.core.type.TypeReference;
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
import com.payment.platform.module.payment.employee.entity.EmployeeEntity;
|
|
|
import com.payment.platform.module.payment.employee.mapper.EmployeeMapper;
|
|
|
+import com.payment.platform.module.payment.enterprise.mapper.EnterpriseMapper;
|
|
|
import com.payment.platform.module.payment.expense.institution.service.InstitutionScopeSyncService;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
@@ -32,6 +33,7 @@ import java.util.Map;
|
|
|
public class EmployeeHandler extends BaseNotifyHandler {
|
|
|
|
|
|
private final EmployeeMapper employeeMapper;
|
|
|
+ private final EnterpriseMapper enterpriseMapper;
|
|
|
private final InstitutionScopeSyncService scopeSyncService;
|
|
|
private static final ObjectMapper objectMapper = new ObjectMapper();
|
|
|
|
|
|
@@ -95,13 +97,13 @@ public class EmployeeHandler extends BaseNotifyHandler {
|
|
|
String enterpriseId = params.get("enterprise_id");
|
|
|
log.info("员工新增: employee_id={}, enterprise_id={}", employeeId, enterpriseId);
|
|
|
|
|
|
- EmployeeEntity existing = findByEmployeeId(employeeId, enterpriseId);
|
|
|
+ EmployeeEntity existing = employeeMapper.selectByEmployeeIdIgnoreTenant(employeeId, enterpriseId);
|
|
|
if (existing != null) {
|
|
|
updateEmployeeFromParams(existing, params);
|
|
|
- employeeMapper.updateById(existing);
|
|
|
+ employeeMapper.updateByIdIgnoreTenant(existing);
|
|
|
} else {
|
|
|
EmployeeEntity entity = buildEmployeeFromParams(params);
|
|
|
- employeeMapper.insert(entity);
|
|
|
+ employeeMapper.insertIgnoreTenant(entity);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -217,7 +219,7 @@ public class EmployeeHandler extends BaseNotifyHandler {
|
|
|
private EmployeeEntity findOrCreateEmployee(Map<String, String> params) {
|
|
|
String employeeId = params.get("employee_id");
|
|
|
String enterpriseId = params.get("enterprise_id");
|
|
|
- EmployeeEntity entity = findByEmployeeId(employeeId, enterpriseId);
|
|
|
+ EmployeeEntity entity = employeeMapper.selectByEmployeeIdIgnoreTenant(employeeId, enterpriseId);
|
|
|
if (entity == null) {
|
|
|
entity = new EmployeeEntity();
|
|
|
entity.setEmployeeId(employeeId);
|
|
|
@@ -230,7 +232,7 @@ public class EmployeeHandler extends BaseNotifyHandler {
|
|
|
EmployeeEntity entity = findOrCreateEmployee(params);
|
|
|
updateEmployeeFromParams(entity, params);
|
|
|
if (entity.getId() == null) {
|
|
|
- employeeMapper.insert(entity);
|
|
|
+ employeeMapper.insertIgnoreTenant(entity);
|
|
|
} else {
|
|
|
employeeMapper.updateById(entity);
|
|
|
}
|
|
|
@@ -253,6 +255,12 @@ public class EmployeeHandler extends BaseNotifyHandler {
|
|
|
EmployeeEntity entity = new EmployeeEntity();
|
|
|
entity.setEmployeeId(params.get("employee_id"));
|
|
|
entity.setEnterpriseId(params.get("enterprise_id"));
|
|
|
+ // 从企业记录取 tenantId(通知无认证上下文)
|
|
|
+ String eid = params.get("enterprise_id");
|
|
|
+ if (StrUtil.isNotBlank(eid)) {
|
|
|
+ var ent = enterpriseMapper.selectByEnterpriseIdIgnoreTenant(eid);
|
|
|
+ if (ent != null) entity.setTenantId(ent.getTenantId());
|
|
|
+ }
|
|
|
updateEmployeeFromParams(entity, params);
|
|
|
return entity;
|
|
|
}
|