|
@@ -33,14 +33,13 @@ import org.apache.commons.lang3.BooleanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
+import org.springframework.web.bind.annotation.GetMapping;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.io.IOException;
|
|
|
import java.sql.Timestamp;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.*;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
|
|
import static com.boman.common.core.utils.obj.ObjectUtils.isEmpty;
|
|
@@ -79,7 +78,7 @@ public class TaskService {
|
|
|
|
|
|
@Resource
|
|
|
private IAccountingDataService accountingDataService;
|
|
|
- private static final String tableName= "attendance_table";
|
|
|
+ private static final String tableName = "attendance_table";
|
|
|
|
|
|
/**
|
|
|
* 每月1号往考勤记录表根据用户插入当月的数据 每月一号00:00分
|
|
@@ -90,15 +89,15 @@ public class TaskService {
|
|
|
List<String> monthEveryDays = DateUtils.getMonthEveryDays(date);
|
|
|
//获取所有用户
|
|
|
List<SysUser> sysUsers = remoteUserService.selectUserListAll();
|
|
|
- if (sysUsers != null && sysUsers.size() > 0){
|
|
|
+ if (sysUsers != null && sysUsers.size() > 0) {
|
|
|
if (monthEveryDays != null) {
|
|
|
JSONObject condition = new JSONObject();
|
|
|
//需要ATTENDANCE_TABLE_TODAYTIME字段是查询可见
|
|
|
- condition.put(ATTENDANCE_TABLE_TODAYTIME,monthEveryDays);
|
|
|
- condition.put(IS_DEL,"N");
|
|
|
+ condition.put(ATTENDANCE_TABLE_TODAYTIME, monthEveryDays);
|
|
|
+ condition.put(IS_DEL, "N");
|
|
|
//先去查询是否已经存在当前日期的记录
|
|
|
List<JSONObject> byMap = commonService.getByMap(tableName, condition);
|
|
|
- if (byMap != null){
|
|
|
+ if (byMap != null) {
|
|
|
List<String> days = new ArrayList<>();
|
|
|
for (JSONObject jsonObject : byMap) {
|
|
|
String day = jsonObject.get(ATTENDANCE_TABLE_TODAYTIME).toString();
|
|
@@ -109,12 +108,12 @@ public class TaskService {
|
|
|
for (String monthEveryDay : monthEveryDays) {
|
|
|
for (SysUser sysUser : sysUsers) {
|
|
|
JSONObject commitData = new JSONObject();
|
|
|
- commitData.put(ATTENDANCE_USER_NAME,sysUser.getUserName());
|
|
|
+ commitData.put(ATTENDANCE_USER_NAME, sysUser.getUserName());
|
|
|
commitData.put(ATTENDANCE_USER_ID, sysUser.getId());
|
|
|
- commitData.put(ATTENDANCE_DEPT_ID,sysUser.getDeptId());
|
|
|
- commitData.put(ATTENDANCE_TABLE_TODAYTIME,monthEveryDay);
|
|
|
- commitData.put(ATTENDANCE_TABLE_CREATE_TIME,DateUtils.getNowDate());
|
|
|
- commitData.put(ATTENDANCE_TABLE_CREATE_BY,"admin");
|
|
|
+ commitData.put(ATTENDANCE_DEPT_ID, sysUser.getDeptId());
|
|
|
+ commitData.put(ATTENDANCE_TABLE_TODAYTIME, monthEveryDay);
|
|
|
+ commitData.put(ATTENDANCE_TABLE_CREATE_TIME, DateUtils.getNowDate());
|
|
|
+ commitData.put(ATTENDANCE_TABLE_CREATE_BY, "admin");
|
|
|
FormDataDto dto = new FormDataDto();
|
|
|
dto.setObjId(-1L);
|
|
|
dto.setTable(tableName);
|
|
@@ -148,7 +147,7 @@ public class TaskService {
|
|
|
List<SysDept> townsDepts = new ArrayList<>(16);
|
|
|
|
|
|
for (SysDept allDept : allDepts) {
|
|
|
- if (isEmpty(allDept.getParentId())){
|
|
|
+ if (isEmpty(allDept.getParentId())) {
|
|
|
continue;
|
|
|
}
|
|
|
if (allDept.getParentId() == (1L)) {
|
|
@@ -170,7 +169,7 @@ public class TaskService {
|
|
|
results.put("cun", isEmpty(cunDepts) ? 0 : cunDepts.size());
|
|
|
//查找潜山市户籍人口总数
|
|
|
List<Czrk> czrkList = czrkMapper.getAllCzrkRegionId("340882000000");
|
|
|
- if(czrkList==null){
|
|
|
+ if (czrkList == null) {
|
|
|
czrkList = new ArrayList<>();
|
|
|
}
|
|
|
//潜山市户籍人口总数
|
|
@@ -183,14 +182,14 @@ public class TaskService {
|
|
|
|
|
|
//循环所有人判断当前总人数,该镇 户籍人口今日新增,该镇 户籍人口今日减少
|
|
|
for (Czrk czrk : czrkList) {
|
|
|
- if(!"1".equals(czrk.getStatus())){
|
|
|
+ if (!"1".equals(czrk.getStatus())) {
|
|
|
hjzrs--;
|
|
|
}
|
|
|
//判断是否是在今天操作的人员信息
|
|
|
- if(s.before(czrk.getUpdateTime()) && czrk.getUpdateTime().before(e)){
|
|
|
- if(!"1".equals(czrk.getStatus())){
|
|
|
+ if (s.before(czrk.getUpdateTime()) && czrk.getUpdateTime().before(e)) {
|
|
|
+ if (!"1".equals(czrk.getStatus())) {
|
|
|
hjjs++;
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
hjxz++;
|
|
|
}
|
|
|
}
|
|
@@ -206,7 +205,7 @@ public class TaskService {
|
|
|
|
|
|
//查找潜山市常驻人口信息
|
|
|
List<CzrkJzdz> czrkJzdzList = czrkJzdzService.selectCzrkJzdzListByRegionId("340882000000");
|
|
|
- if(czrkJzdzList==null){
|
|
|
+ if (czrkJzdzList == null) {
|
|
|
czrkJzdzList = new ArrayList<>();
|
|
|
}
|
|
|
//潜山市居住人口总数
|
|
@@ -219,14 +218,14 @@ public class TaskService {
|
|
|
|
|
|
//循环所有人判断当前总人数,该镇 户籍人口今日新增,该镇 户籍人口今日减少
|
|
|
for (CzrkJzdz czrkJzdz : czrkJzdzList) {
|
|
|
- if("N".equals(czrkJzdz.getStatus())){
|
|
|
+ if ("N".equals(czrkJzdz.getStatus())) {
|
|
|
czzrs--;
|
|
|
}
|
|
|
//判断是否是在今天操作的人员信息
|
|
|
- if(s.before(czrkJzdz.getUpdateTime()) && czrkJzdz.getUpdateTime().before(e)){
|
|
|
- if("N".equals(czrkJzdz.getStatus())){
|
|
|
+ if (s.before(czrkJzdz.getUpdateTime()) && czrkJzdz.getUpdateTime().before(e)) {
|
|
|
+ if ("N".equals(czrkJzdz.getStatus())) {
|
|
|
czjs++;
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
czxz++;
|
|
|
}
|
|
|
}
|
|
@@ -266,7 +265,7 @@ public class TaskService {
|
|
|
//czrkList czrkJzdzList
|
|
|
for (SysDept townsDept : townsDepts) {
|
|
|
JSONObject townsResult = new JSONObject(16);
|
|
|
- townSts(townsResult, townsDept, czrkList, czrkJzdzList,hjzrs, czzrs);
|
|
|
+ townSts(townsResult, townsDept, czrkList, czrkJzdzList, hjzrs, czzrs);
|
|
|
towsDataList.add(townsResult);
|
|
|
}
|
|
|
|
|
@@ -278,7 +277,7 @@ public class TaskService {
|
|
|
|
|
|
//镇数据存入redis
|
|
|
for (SysDept townsDept : townsDepts) {
|
|
|
- townSts(resultz, townsDept, czrkList, czrkJzdzList,hjzrs, czzrs);
|
|
|
+ townSts(resultz, townsDept, czrkList, czrkJzdzList, hjzrs, czzrs);
|
|
|
// redisService.setCacheObject(packRedisKey("town:" + deptId), result, 1L, TimeUnit.DAYS);
|
|
|
setIntoRedis(packRedisKey("town:" + townsDept.getId()), resultz);
|
|
|
}
|
|
@@ -291,7 +290,7 @@ public class TaskService {
|
|
|
resultc.put("dqdw", deptName);
|
|
|
|
|
|
//查找村的数据
|
|
|
- if(czrkList==null){
|
|
|
+ if (czrkList == null) {
|
|
|
czrkList = new ArrayList<>();
|
|
|
}
|
|
|
//该村户籍人口总数
|
|
@@ -304,15 +303,15 @@ public class TaskService {
|
|
|
|
|
|
//循环所有人判断当前总人数,该村 户籍人口今日新增,该镇 户籍人口今日减少
|
|
|
for (Czrk czrk : czrkList) {
|
|
|
- if(StringUtils.isNotEmpty(czrk.getVillageId()) && czrk.getVillageId().equals(areaId)){
|
|
|
- if("1".equals(czrk.getStatus())){
|
|
|
+ if (StringUtils.isNotEmpty(czrk.getVillageId()) && czrk.getVillageId().equals(areaId)) {
|
|
|
+ if ("1".equals(czrk.getStatus())) {
|
|
|
hjzrsc++;
|
|
|
}
|
|
|
//判断是否是在今天操作的人员信息
|
|
|
- if(s.before(czrk.getUpdateTime()) && czrk.getUpdateTime().before(e)){
|
|
|
- if(!"1".equals(czrk.getStatus())){
|
|
|
+ if (s.before(czrk.getUpdateTime()) && czrk.getUpdateTime().before(e)) {
|
|
|
+ if (!"1".equals(czrk.getStatus())) {
|
|
|
hjjsc++;
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
hjxzc++;
|
|
|
}
|
|
|
}
|
|
@@ -324,7 +323,7 @@ public class TaskService {
|
|
|
resultc.put("hjbfb", NumberUtils.percent(hjzrs, czzrs));
|
|
|
|
|
|
|
|
|
- if(czrkJzdzList==null){
|
|
|
+ if (czrkJzdzList == null) {
|
|
|
czrkJzdzList = new ArrayList<>();
|
|
|
}
|
|
|
//该镇户籍人口总数
|
|
@@ -337,15 +336,15 @@ public class TaskService {
|
|
|
|
|
|
//循环所有人判断当前总人数,该镇 户籍人口今日新增,该镇 户籍人口今日减少
|
|
|
for (CzrkJzdz czrkJzdz : czrkJzdzList) {
|
|
|
- if(StringUtils.isNotEmpty(czrkJzdz.getVillageId()) && czrkJzdz.getVillageId().equals(areaId)){
|
|
|
- if("Y".equals(czrkJzdz.getStatus())){
|
|
|
+ if (StringUtils.isNotEmpty(czrkJzdz.getVillageId()) && czrkJzdz.getVillageId().equals(areaId)) {
|
|
|
+ if ("Y".equals(czrkJzdz.getStatus())) {
|
|
|
czzrsc++;
|
|
|
}
|
|
|
//判断是否是在今天操作的人员信息
|
|
|
- if(s.before(czrkJzdz.getUpdateTime()) && czrkJzdz.getUpdateTime().before(e)){
|
|
|
- if("N".equals(czrkJzdz.getStatus())){
|
|
|
+ if (s.before(czrkJzdz.getUpdateTime()) && czrkJzdz.getUpdateTime().before(e)) {
|
|
|
+ if ("N".equals(czrkJzdz.getStatus())) {
|
|
|
czjsc++;
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
czxzc++;
|
|
|
}
|
|
|
}
|
|
@@ -385,7 +384,7 @@ public class TaskService {
|
|
|
System.out.println("定时任务");
|
|
|
}
|
|
|
|
|
|
- private void townSts(JSONObject result, SysDept sysDept, List<Czrk> czrkList, List<CzrkJzdz> czrkJzdzList ,int shjzrs, int sczzrs) {
|
|
|
+ private void townSts(JSONObject result, SysDept sysDept, List<Czrk> czrkList, List<CzrkJzdz> czrkJzdzList, int shjzrs, int sczzrs) {
|
|
|
String startTime = DateUtils.getTodayStartStr();
|
|
|
String endTime = DateUtils.getTodayEndStr();
|
|
|
Timestamp s = Timestamp.valueOf(startTime);
|
|
@@ -421,7 +420,7 @@ public class TaskService {
|
|
|
zrs = czrkMapper.countAll();
|
|
|
}*/
|
|
|
|
|
|
- if(czrkList==null){
|
|
|
+ if (czrkList == null) {
|
|
|
czrkList = new ArrayList<>();
|
|
|
}
|
|
|
//该镇户籍人口总数
|
|
@@ -434,15 +433,15 @@ public class TaskService {
|
|
|
|
|
|
//循环所有人判断当前总人数,该镇 户籍人口今日新增,该镇 户籍人口今日减少
|
|
|
for (Czrk czrk : czrkList) {
|
|
|
- if(StringUtils.isNotEmpty(czrk.getVillageTownsId()) && String.valueOf(czrk.getVillageTownsId()).equals(areaId)){
|
|
|
- if("1".equals(czrk.getStatus())){
|
|
|
+ if (StringUtils.isNotEmpty(czrk.getVillageTownsId()) && String.valueOf(czrk.getVillageTownsId()).equals(areaId)) {
|
|
|
+ if ("1".equals(czrk.getStatus())) {
|
|
|
hjzrs++;
|
|
|
}
|
|
|
//判断是否是在今天操作的人员信息
|
|
|
- if(s.before(czrk.getUpdateTime()) && czrk.getUpdateTime().before(e)){
|
|
|
- if(!"1".equals(czrk.getStatus())){
|
|
|
+ if (s.before(czrk.getUpdateTime()) && czrk.getUpdateTime().before(e)) {
|
|
|
+ if (!"1".equals(czrk.getStatus())) {
|
|
|
hjjs++;
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
hjxz++;
|
|
|
}
|
|
|
}
|
|
@@ -454,7 +453,7 @@ public class TaskService {
|
|
|
result.put("hjbfb", NumberUtils.percent(hjzrs, shjzrs));
|
|
|
|
|
|
|
|
|
- if(czrkJzdzList==null){
|
|
|
+ if (czrkJzdzList == null) {
|
|
|
czrkJzdzList = new ArrayList<>();
|
|
|
}
|
|
|
//该镇户籍人口总数
|
|
@@ -467,15 +466,15 @@ public class TaskService {
|
|
|
|
|
|
//循环所有人判断当前总人数,该镇 户籍人口今日新增,该镇 户籍人口今日减少
|
|
|
for (CzrkJzdz czrkJzdz : czrkJzdzList) {
|
|
|
- if(StringUtils.isNotEmpty(czrkJzdz.getTownId()) && czrkJzdz.getTownId().equals(areaId)){
|
|
|
- if("Y".equals(czrkJzdz.getStatus())){
|
|
|
+ if (StringUtils.isNotEmpty(czrkJzdz.getTownId()) && czrkJzdz.getTownId().equals(areaId)) {
|
|
|
+ if ("Y".equals(czrkJzdz.getStatus())) {
|
|
|
czzrs++;
|
|
|
}
|
|
|
//判断是否是在今天操作的人员信息
|
|
|
- if(s.before(czrkJzdz.getUpdateTime()) && czrkJzdz.getUpdateTime().before(e)){
|
|
|
- if("N".equals(czrkJzdz.getStatus())){
|
|
|
+ if (s.before(czrkJzdz.getUpdateTime()) && czrkJzdz.getUpdateTime().before(e)) {
|
|
|
+ if ("N".equals(czrkJzdz.getStatus())) {
|
|
|
czjs++;
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
czxz++;
|
|
|
}
|
|
|
}
|
|
@@ -543,15 +542,15 @@ public class TaskService {
|
|
|
return STS_CZRK_ + deptId + ":" + DateUtils.getDate();
|
|
|
}
|
|
|
|
|
|
- public void getNewborn(){
|
|
|
+ public void getNewborn() {
|
|
|
Map<String, String> paramMap = new HashMap<>();
|
|
|
- paramMap.put("client_id","acdf50bd13be4901b64c62b1fee862c0");
|
|
|
- paramMap.put("client_secret","a3650d67fc034b2d8ea259182b3d99f3");
|
|
|
+ paramMap.put("client_id", "acdf50bd13be4901b64c62b1fee862c0");
|
|
|
+ paramMap.put("client_secret", "a3650d67fc034b2d8ea259182b3d99f3");
|
|
|
String http = "http://172.27.189.244:9090/oauth/tocken";
|
|
|
try {
|
|
|
- String data = HttpClientUtils.doGet(http,paramMap);
|
|
|
+ String data = HttpClientUtils.doGet(http, paramMap);
|
|
|
|
|
|
- List<BirthRecords> birthRecordsList = JSONObject.parseArray(data,BirthRecords.class);
|
|
|
+ List<BirthRecords> birthRecordsList = JSONObject.parseArray(data, BirthRecords.class);
|
|
|
for (BirthRecords birthRecords : birthRecordsList) {
|
|
|
birthRecords.setIsDel("N");
|
|
|
birthRecords.setCreateBy("系统");
|
|
@@ -567,18 +566,17 @@ public class TaskService {
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
* 获取政务网token
|
|
|
*/
|
|
|
- public String getToken(){
|
|
|
+ public String getToken() {
|
|
|
String token = "";
|
|
|
Map<String, String> paramMap = new HashMap<>();
|
|
|
- paramMap.put("client_id","acdf50bd13be4901b64c62b1fee862c0");
|
|
|
- paramMap.put("client_secret","a3650d67fc034b2d8ea259182b3d99f3");
|
|
|
- String http = "http://60.171.171.235:9090/oauth/tocken";
|
|
|
+ paramMap.put("client_id", "acdf50bd13be4901b64c62b1fee862c0");
|
|
|
+ paramMap.put("client_secret", "a3650d67fc034b2d8ea259182b3d99f3");
|
|
|
+ String http = "http://60.171.171.235:9090/oauth/token";
|
|
|
try {
|
|
|
- String data = HttpClientUtils.doGet(http,paramMap);
|
|
|
+ String data = HttpClientUtils.doGet(http, paramMap);
|
|
|
JSONObject jsonObject = JSONObject.parseObject(data);
|
|
|
token = jsonObject.getString("access_token");
|
|
|
} catch (IOException e) {
|
|
@@ -586,26 +584,39 @@ public class TaskService {
|
|
|
}
|
|
|
return token;
|
|
|
}
|
|
|
- /***
|
|
|
- * 抓取核酸数据每10分钟抓取一次
|
|
|
- */
|
|
|
- @Scheduled(cron = "0 0/10 * * * ? ")
|
|
|
+
|
|
|
/**
|
|
|
* 抓取核酸数据每10分钟抓取一次,新增到accounting_data
|
|
|
*/
|
|
|
- public void insertAccountingData(){
|
|
|
+ @Scheduled(cron = "0 0/10 * * * ? ")
|
|
|
+ public void insertAccountingData() {
|
|
|
String token = getToken();
|
|
|
- if (StringUtils.isNotBlank(token)){
|
|
|
+ if (StringUtils.isNotBlank(token)) {
|
|
|
+ String startTime = redisService.getCacheObject("startTime");
|
|
|
Map<String, String> paramMap = new HashMap<>();
|
|
|
- paramMap.put("client_id","acdf50bd13be4901b64c62b1fee862c0");
|
|
|
- paramMap.put("access_token",token);
|
|
|
- paramMap.put("sfzhm","");
|
|
|
+ paramMap.put("client_id", "acdf50bd13be4901b64c62b1fee862c0");
|
|
|
+ paramMap.put("access_token", token);
|
|
|
+ paramMap.put("sfzhm", "");
|
|
|
+ if (StringUtils.isBlank(startTime)) {
|
|
|
+ //第一次抓取当前时间到之前的10分钟的数据
|
|
|
+ Date nowDate = DateUtils.getNowDate();
|
|
|
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ String endTime = format.format(nowDate);
|
|
|
+ startTime = DateUtils.plusSeconds(endTime, 10);
|
|
|
+ redisService.setCacheObject("startTime", endTime);
|
|
|
+ }
|
|
|
+ String endTime = DateUtils.formatString(new Date());
|
|
|
+ redisService.setCacheObject("startTime", endTime);
|
|
|
+ endTime = endTime.replace(" ", "%20");
|
|
|
+ startTime = startTime.replace(" ", "%20");
|
|
|
+ paramMap.put("start_time", startTime);
|
|
|
+ paramMap.put("end_time", endTime);
|
|
|
String http = "http://60.171.171.235:9090/service/api/wjw/qshssjsjc";
|
|
|
try {
|
|
|
- String data = HttpClientUtils.doGet(http,paramMap);
|
|
|
- if (StringUtils.isNotBlank(data)){
|
|
|
+ String data = HttpClientUtils.doGet(http, paramMap);
|
|
|
+ if (StringUtils.isNotBlank(data)) {
|
|
|
List<AccountingData> list = JSONObject.parseArray(data, AccountingData.class);
|
|
|
- if (list != null && list.size() > 0){
|
|
|
+ if (list != null && list.size() > 0) {
|
|
|
//插入数据
|
|
|
accountingDataService.insertAccountingData(list);
|
|
|
}
|