|
@@ -108,13 +108,18 @@ public class SapUserService extends BaseService {
|
|
|
} else if (sapBlacklistService.findByUserId(sapUser.getPersonId()) != null) {
|
|
|
return SapUserResultEnum.BLACKLIST.getCode();
|
|
|
} else {
|
|
|
+ List<SapUser> sapUsers = selectListByPersonId(sapUser.getPersonId());
|
|
|
WxUser wxUser = wxUserService.selectById(sapUser.getPersonId(), sapUser.getEmail(),
|
|
|
DelFlagEnum.ENABLE.getCode());
|
|
|
+ sapUser.setSapPosition(getFullPosition(sapUsers));
|
|
|
+ sapUser.setSapFullDepart(getFullOrgName(sapUsers));
|
|
|
if (wxUser == null) {
|
|
|
return SapUserResultEnum.ENTRY.getCode();
|
|
|
} else {
|
|
|
- if (!wxUser.getPosition().equals(sapUser.getPosition()) || !wxUserService
|
|
|
- .getFullDepartName(sapUser.getPersonId()).equals(getFullOrgName(sapUser.getPersonId()))) {
|
|
|
+ sapUser.setWxPosition(wxUser.getPosition());
|
|
|
+ sapUser.setWxFullDepart(wxUserService.getFullDepartName(sapUser.getPersonId()));
|
|
|
+ if (!sapUser.getSapPosition().equals(sapUser.getWxPosition())
|
|
|
+ || !sapUser.getSapFullDepart().equals(sapUser.getWxFullDepart())) {
|
|
|
return SapUserResultEnum.SENSITIVE.getCode();
|
|
|
} else { // 因为上面已经验证过敏感数据,这次判断其他数据是否修改过 就可以
|
|
|
// name+mobile+email+telephone
|
|
@@ -142,6 +147,7 @@ public class SapUserService extends BaseService {
|
|
|
for (SapUser sapUser : normalList) {
|
|
|
String checkResult = getCheckResultByWx(sapUser);
|
|
|
if (StringUtils.isNotBlank(checkResult)) {
|
|
|
+ updateFullDepartAndPosition(sapUser);
|
|
|
updateResultByUserId(checkResult, sapUser.getUserId());
|
|
|
}
|
|
|
}
|
|
@@ -161,23 +167,23 @@ public class SapUserService extends BaseService {
|
|
|
/**
|
|
|
* 根据personId查询多个用户完整的机构名称信息
|
|
|
*
|
|
|
- * @param personId
|
|
|
+ * @param sapUsers
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
- public String getFullOrgName(String personId) throws Exception {
|
|
|
- List<SapUser> users = selectListByPersonId(personId);
|
|
|
+ public String getFullOrgName(List<SapUser> sapUsers) throws Exception {
|
|
|
StringBuffer sb = new StringBuffer();
|
|
|
- for (SapUser user : users) {
|
|
|
+ for (SapUser user : sapUsers) {
|
|
|
if (sb.indexOf(user.getFullOrgName()) < 0) {
|
|
|
sb.append(user.getFullOrgName()).append(";");
|
|
|
}
|
|
|
}
|
|
|
return sb.substring(0, sb.length() - 1);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
/**
|
|
|
* 拼接多用户的职务
|
|
|
+ *
|
|
|
* @param sapUsers
|
|
|
* @return
|
|
|
* @throws Exception
|
|
@@ -324,14 +330,6 @@ public class SapUserService extends BaseService {
|
|
|
departList.add(orgs);
|
|
|
}
|
|
|
sapUser.setDepartList(departList);
|
|
|
- sapUser.setSapPosition(sapUser.getPosition());
|
|
|
- sapUser.setSapFullDepart(getFullOrgName(sapUser.getPersonId()));
|
|
|
- WxUser wxUser = wxUserService.selectById(sapUser.getPersonId(), sapUser.getEmail(),
|
|
|
- DelFlagEnum.ENABLE.getCode());
|
|
|
- if (wxUser != null) {
|
|
|
- sapUser.setWxPosition(wxUser.getPosition());
|
|
|
- sapUser.setWxFullDepart(wxUserService.getFullDepartName(sapUser.getPersonId()));
|
|
|
- }
|
|
|
}
|
|
|
return sapUser;
|
|
|
}
|
|
@@ -360,6 +358,10 @@ public class SapUserService extends BaseService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ public void updateFullDepartAndPosition(SapUser sapUser) throws Exception {
|
|
|
+ update("SapUserMapper.updateFullDepartAndPosition", sapUser);
|
|
|
+ }
|
|
|
+
|
|
|
public void updateResultByUserId(String result, String userId) throws Exception {
|
|
|
SapUser sapUser = SapUser.builder().userId(userId).result(result).build();
|
|
|
update("SapUserMapper.updateResultByUserId", sapUser);
|