|
@@ -38,16 +38,37 @@ public class UserFvTimeServiceImpl extends ServiceImpl<UserFvTimeMapper, UserFvT
|
|
private UserMapper userMapper;
|
|
private UserMapper userMapper;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public void syncUserFvTime(Integer specialCompanyId) {
|
|
|
|
|
|
+ public void syncUserFvTime(Integer specialCompanyId, String userId, String startDate, String endDate) {
|
|
RestTemplate restTemplate = new RestTemplate();
|
|
RestTemplate restTemplate = new RestTemplate();
|
|
String sumUrl = PREFIX_URL+"/dataCollect/getWorkDayDataSum";
|
|
String sumUrl = PREFIX_URL+"/dataCollect/getWorkDayDataSum";
|
|
String listUrl = PREFIX_URL+"/dataCollect/getWorkDayDataList";
|
|
String listUrl = PREFIX_URL+"/dataCollect/getWorkDayDataList";
|
|
|
|
|
|
try {
|
|
try {
|
|
|
|
+ List<UserFvTime> toAddList = new ArrayList<>();
|
|
|
|
+ List<UserFvTime> toUpdateList = new ArrayList<>();
|
|
|
|
+ LambdaQueryWrapper<User> eq = new LambdaQueryWrapper<User>().eq(User::getCompanyId, specialCompanyId);
|
|
|
|
+ if (StringUtils.isNotBlank(userId)) {
|
|
|
|
+ eq.eq(User::getId, userId);
|
|
|
|
+ }
|
|
|
|
+ List<User> users = userMapper.selectList(eq);
|
|
|
|
+ String targetJobNumber = null;
|
|
|
|
+ //获取指定用户的考勤
|
|
|
|
+ if (StringUtils.isNotBlank(userId)) {
|
|
|
|
+ targetJobNumber = users.get(0).getJobNumber();
|
|
|
|
+ }
|
|
|
|
+ Map<String, Object> requestBody = new HashMap<>();
|
|
|
|
+ requestBody.put("jobNumber", targetJobNumber);
|
|
|
|
+ requestBody.put("startDate", startDate);
|
|
|
|
+ requestBody.put("endDate", endDate);
|
|
|
|
+ requestBody.put("pageNo", 0);
|
|
|
|
+ requestBody.put("pageSize", 0);
|
|
|
|
+ HttpHeaders headers = new HttpHeaders();
|
|
|
|
+ headers.setContentType(MediaType.APPLICATION_JSON);
|
|
|
|
+ HttpEntity<Object> requestEntity = new HttpEntity<>(requestBody, headers);
|
|
ResponseEntity<String> sumResponse = restTemplate.exchange(
|
|
ResponseEntity<String> sumResponse = restTemplate.exchange(
|
|
sumUrl,
|
|
sumUrl,
|
|
- HttpMethod.GET,
|
|
|
|
- null,
|
|
|
|
|
|
+ HttpMethod.POST,
|
|
|
|
+ requestEntity,
|
|
String.class
|
|
String.class
|
|
);
|
|
);
|
|
Integer totalNum = 0;
|
|
Integer totalNum = 0;
|
|
@@ -59,18 +80,12 @@ public class UserFvTimeServiceImpl extends ServiceImpl<UserFvTimeMapper, UserFvT
|
|
if(totalNum > 0){
|
|
if(totalNum > 0){
|
|
int pageSize = 1000;
|
|
int pageSize = 1000;
|
|
int offset = 0;
|
|
int offset = 0;
|
|
- List<UserFvTime> toAddList = new ArrayList<>();
|
|
|
|
- List<UserFvTime> toUpdateList = new ArrayList<>();
|
|
|
|
- List<User> users = userMapper.selectList(new LambdaQueryWrapper<User>().eq(User::getCompanyId, specialCompanyId));
|
|
|
|
|
|
+
|
|
Map<String, User> userMap = users.stream().filter(t -> StringUtils.isNotBlank(t.getJobNumber()))
|
|
Map<String, User> userMap = users.stream().filter(t -> StringUtils.isNotBlank(t.getJobNumber()))
|
|
.collect(Collectors.toMap(User::getJobNumber, t -> t));
|
|
.collect(Collectors.toMap(User::getJobNumber, t -> t));
|
|
while (offset < totalNum) {
|
|
while (offset < totalNum) {
|
|
- HttpHeaders headers = new HttpHeaders();
|
|
|
|
- headers.setContentType(MediaType.APPLICATION_JSON);
|
|
|
|
- Map<String, Object> requestBody = new HashMap<>();
|
|
|
|
requestBody.put("pageNo", offset);
|
|
requestBody.put("pageNo", offset);
|
|
requestBody.put("pageSize", pageSize);
|
|
requestBody.put("pageSize", pageSize);
|
|
- HttpEntity<Object> requestEntity = new HttpEntity<>(requestBody, headers);
|
|
|
|
ResponseEntity<List<UserFvTime>> listResponse = restTemplate.exchange(
|
|
ResponseEntity<List<UserFvTime>> listResponse = restTemplate.exchange(
|
|
listUrl,
|
|
listUrl,
|
|
HttpMethod.POST,
|
|
HttpMethod.POST,
|
|
@@ -118,6 +133,8 @@ public class UserFvTimeServiceImpl extends ServiceImpl<UserFvTimeMapper, UserFvT
|
|
toAddList.clear();
|
|
toAddList.clear();
|
|
offset += pageSize;
|
|
offset += pageSize;
|
|
}
|
|
}
|
|
|
|
+ } else {
|
|
|
|
+ System.out.println("无数据");
|
|
}
|
|
}
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
System.out.println("请求发生异常: " + e.getMessage());
|
|
System.out.println("请求发生异常: " + e.getMessage());
|