|
@@ -3,6 +3,7 @@ package org.fouram.service;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
import org.fouram.core.base.service.BaseService;
|
|
import org.fouram.core.base.service.BaseService;
|
|
import org.fouram.core.plugin.weixin.cp.util.WXCpUserUtil;
|
|
import org.fouram.core.plugin.weixin.cp.util.WXCpUserUtil;
|
|
import org.fouram.core.util.DateUtil;
|
|
import org.fouram.core.util.DateUtil;
|
|
@@ -26,11 +27,18 @@ public class TaskService extends BaseService {
|
|
public void syncWeixinUser() {
|
|
public void syncWeixinUser() {
|
|
LoggerUtil.info("同步开始->" + DateUtil.getTime());
|
|
LoggerUtil.info("同步开始->" + DateUtil.getTime());
|
|
try {
|
|
try {
|
|
- // 更新数据删除
|
|
|
|
|
|
+ // 更新所有数据删除
|
|
sapUserService.updateAllDelete();
|
|
sapUserService.updateAllDelete();
|
|
|
|
+
|
|
|
|
+ // 获取SAP所有用户数据
|
|
List<SapUser> getSapUsers = sapUserService.getSapUsers();
|
|
List<SapUser> getSapUsers = sapUserService.getSapUsers();
|
|
|
|
+
|
|
|
|
+ // 对应更新机构id信息
|
|
Map<String, Long> orgWxDepartMap = sapOrgService.updateAllWxDepartId();
|
|
Map<String, Long> orgWxDepartMap = sapOrgService.updateAllWxDepartId();
|
|
|
|
+
|
|
LoggerUtil.info("接口获取所有有效数据->" + getSapUsers.size());
|
|
LoggerUtil.info("接口获取所有有效数据->" + getSapUsers.size());
|
|
|
|
+
|
|
|
|
+ // 遍历用户,企业微信用户没有,新增用户并且同步企业微信;数据已有情况,数据未发生变化的,更新为未删除;数据发生变化的,同步微信用户,更新为未删除
|
|
for (int i = 0; i < getSapUsers.size(); i ++) {
|
|
for (int i = 0; i < getSapUsers.size(); i ++) {
|
|
SapUser sapUser = getSapUsers.get(i);
|
|
SapUser sapUser = getSapUsers.get(i);
|
|
sapUser.setFirstOrgWxDepartId(orgWxDepartMap.get(sapUser.getFirstOrgId()));
|
|
sapUser.setFirstOrgWxDepartId(orgWxDepartMap.get(sapUser.getFirstOrgId()));
|
|
@@ -49,20 +57,24 @@ public class TaskService extends BaseService {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ // 更新用户头像
|
|
List<SapUser> successUsers = sapUserService.selectSuccessList();
|
|
List<SapUser> successUsers = sapUserService.selectSuccessList();
|
|
for (SapUser sapUser : successUsers) {
|
|
for (SapUser sapUser : successUsers) {
|
|
WxCpUser user = WXCpUserUtil.getById(sapUser.getPersonId());
|
|
WxCpUser user = WXCpUserUtil.getById(sapUser.getPersonId());
|
|
- if(user != null) {
|
|
|
|
|
|
+ if(user != null && StringUtils.isNotBlank(user.getAvatar())) {
|
|
sapUser.setAvatar(user.getAvatar());
|
|
sapUser.setAvatar(user.getAvatar());
|
|
sapUserService.updateAvatar(sapUser);
|
|
sapUserService.updateAvatar(sapUser);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
// 查询未更新delFlag数据对应企业微信账号
|
|
// 查询未更新delFlag数据对应企业微信账号
|
|
List<SapUser> deleteSapUsers = sapUserService.selectDeleteList();
|
|
List<SapUser> deleteSapUsers = sapUserService.selectDeleteList();
|
|
LoggerUtil.info("SAP删除数据->" + deleteSapUsers.size());
|
|
LoggerUtil.info("SAP删除数据->" + deleteSapUsers.size());
|
|
// for(SapUser sapUser : deleteSapUsers) {
|
|
// for(SapUser sapUser : deleteSapUsers) {
|
|
// WXCpUserUtil.delete(sapUser.getPersonId());
|
|
// WXCpUserUtil.delete(sapUser.getPersonId());
|
|
// }
|
|
// }
|
|
|
|
+
|
|
// 部分数据插入微信未成功,处理数据后,重新插入
|
|
// 部分数据插入微信未成功,处理数据后,重新插入
|
|
List<SapUser> unSyncSapUsers = sapUserService.selectUnSyncList();
|
|
List<SapUser> unSyncSapUsers = sapUserService.selectUnSyncList();
|
|
LoggerUtil.info("部分未成功插入数据->" + unSyncSapUsers.size());
|
|
LoggerUtil.info("部分未成功插入数据->" + unSyncSapUsers.size());
|