Commit 5657e3f9 authored by 王淑君's avatar 王淑君

同步人员

parent e8bc33ab
...@@ -51,10 +51,6 @@ public class SysUserController extends PaginationController<SysUser> { ...@@ -51,10 +51,6 @@ public class SysUserController extends PaginationController<SysUser> {
@Autowired @Autowired
private SysUserService userServiceImpl; private SysUserService userServiceImpl;
@Autowired
private SynchronizationTimeService synchronizationTimeServiceImpl;
@Autowired
MTCotactApiRequestClient mtCotactApiRequestClient;
/** /**
* 同步人员 * 同步人员
...@@ -65,49 +61,10 @@ public class SysUserController extends PaginationController<SysUser> { ...@@ -65,49 +61,10 @@ public class SysUserController extends PaginationController<SysUser> {
@GetMapping("/user/gets") @GetMapping("/user/gets")
@ApiOperation(value = "|personnels|同步人员", notes = "同步人员信息") @ApiOperation(value = "|personnels|同步人员", notes = "同步人员信息")
public Result synchronizedUsers(@RequestParam String corpId){ public Result synchronizedUsers(@RequestParam String corpId){
// public Result<List<MTUserInfoRspDTO>> synchronizedUsers(@RequestParam String corpId){ return Result.builder(new PersistModel(userServiceImpl.synchronizedUsers(corpId)),
SynchronizationTime synchronizationTime = synchronizationTimeServiceImpl.getById("1");
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //调用智信接口根据更新时间查询所有人员
if (null == synchronizationTime){
synchronizationTime = new SynchronizationTime();
synchronizationTime.setBusinessId("1");
synchronizationTime.setSynchronizationTime(new Date(1999,01,01,0,0,0));
synchronizationTimeServiceImpl.save(synchronizationTime);
}
String updateTime = df.format(synchronizationTime.getSynchronizationTime());
List<GetAllRspDTO> userGetRspDTOList = mtCotactApiRequestClient.accountGetMyInfoList(corpId,updateTime);
List<SysUser> personnelsList = new ArrayList<>();
int line = 0;
if (null !=userGetRspDTOList) {
for (GetAllRspDTO userInfo : userGetRspDTOList) {
SysUser personnels = new SysUser();
personnels.setCorpId(corpId);
personnels.setBusinessId(userInfo.getId()); //id
personnels.setName(userInfo.getName()); //姓名
personnels.setHeadPic(userInfo.getAvatar()); //头像
personnels.setPhone(userInfo.getMobile()); // 手机号
personnels.setDelFlag(userInfo.getIsDel()); //智信状态
// personnels.setAge(0);
// personnels.setGender(0);
personnels.setAccountId(userInfo.getAccountId());
personnelsList.add(personnels);
}
line = userServiceImpl.insertOrUpdateList(personnelsList);
}
if (line > 0){
// 同步成功后,更新同步时间
synchronizationTime.setSynchronizationTime(new Date());
synchronizationTimeServiceImpl.upadteById(synchronizationTime);
return Result.builder(new PersistModel(line),
MessageConstant.MESSAGE_ALERT_SUCCESS,
MessageConstant.MESSAGE_ALERT_ERROR,
"同步成功");
}else {
return Result.builder(new PersistModel(line),
MessageConstant.MESSAGE_ALERT_SUCCESS, MessageConstant.MESSAGE_ALERT_SUCCESS,
MessageConstant.MESSAGE_ALERT_ERROR, MessageConstant.MESSAGE_ALERT_ERROR,
"没有任何更新内容"); userServiceImpl.synchronizedUsers(corpId));
}
} }
......
...@@ -38,4 +38,6 @@ public interface SysUserService { ...@@ -38,4 +38,6 @@ public interface SysUserService {
Map<String,Object> queryAllDepart(); Map<String,Object> queryAllDepart();
int insertOrUpdateList(List<SysUser> sysUserList); int insertOrUpdateList(List<SysUser> sysUserList);
int synchronizedUsers(String corpId);
} }
...@@ -2,9 +2,16 @@ package org.rcisoft.sys.user.service.impl; ...@@ -2,9 +2,16 @@ package org.rcisoft.sys.user.service.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.rcisoft.business.synchronizationtime.entity.SynchronizationTime;
import org.rcisoft.business.synchronizationtime.service.SynchronizationTimeService;
import org.rcisoft.common.component.Global; import org.rcisoft.common.component.Global;
import org.rcisoft.common.util.feignDto.GetAllRspDTO;
import org.rcisoft.common.util.outClient.MTCotactApiRequestClient;
import org.rcisoft.core.aop.PageUtil; import org.rcisoft.core.aop.PageUtil;
import org.rcisoft.core.constant.MessageConstant;
import org.rcisoft.core.exception.ServiceException; import org.rcisoft.core.exception.ServiceException;
import org.rcisoft.core.model.PersistModel;
import org.rcisoft.core.result.Result;
import org.rcisoft.core.result.ResultServiceEnums; import org.rcisoft.core.result.ResultServiceEnums;
import org.rcisoft.core.util.UserUtil; import org.rcisoft.core.util.UserUtil;
import org.rcisoft.sys.menu.dao.SysMenuRepository; import org.rcisoft.sys.menu.dao.SysMenuRepository;
...@@ -21,6 +28,7 @@ import org.springframework.stereotype.Service; ...@@ -21,6 +28,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import static java.util.Arrays.asList; import static java.util.Arrays.asList;
...@@ -35,6 +43,12 @@ public class SysUserServiceImpl implements SysUserService { ...@@ -35,6 +43,12 @@ public class SysUserServiceImpl implements SysUserService {
@Autowired @Autowired
private SysMenuRepository sysMenuRepository; private SysMenuRepository sysMenuRepository;
@Autowired
private SynchronizationTimeService synchronizationTimeServiceImpl;
@Autowired
MTCotactApiRequestClient mtCotactApiRequestClient;
@Autowired @Autowired
private Global global; private Global global;
...@@ -204,4 +218,42 @@ public class SysUserServiceImpl implements SysUserService { ...@@ -204,4 +218,42 @@ public class SysUserServiceImpl implements SysUserService {
} }
return line; return line;
} }
@Override
public int synchronizedUsers(String corpId) {
SynchronizationTime synchronizationTime = synchronizationTimeServiceImpl.getById("1");
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //调用智信接口根据更新时间查询所有人员
if (null == synchronizationTime){
synchronizationTime = new SynchronizationTime();
synchronizationTime.setBusinessId("1");
synchronizationTime.setSynchronizationTime(new Date(1999,01,01,0,0,0));
synchronizationTimeServiceImpl.save(synchronizationTime);
}
String updateTime = df.format(synchronizationTime.getSynchronizationTime());
List<GetAllRspDTO> userGetRspDTOList = mtCotactApiRequestClient.accountGetMyInfoList(corpId,updateTime);
List<SysUser> personnelsList = new ArrayList<>();
int line = 0;
if (null !=userGetRspDTOList) {
for (GetAllRspDTO userInfo : userGetRspDTOList) {
SysUser personnels = new SysUser();
personnels.setCorpId(corpId);
personnels.setBusinessId(userInfo.getId()); //id
personnels.setName(userInfo.getName()); //姓名
personnels.setHeadPic(userInfo.getAvatar()); //头像
personnels.setPhone(userInfo.getMobile()); // 手机号
personnels.setDelFlag(userInfo.getIsDel()); //智信状态
// personnels.setAge(0);
// personnels.setGender(0);
personnels.setAccountId(userInfo.getAccountId());
personnelsList.add(personnels);
}
line = this.insertOrUpdateList(personnelsList);
}
if (line > 0){
// 同步成功后,更新同步时间
synchronizationTime.setSynchronizationTime(new Date());
synchronizationTimeServiceImpl.upadteById(synchronizationTime);
}
return line;
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment