package org.springblade.modules.investigate;
|
|
import com.alibaba.druid.support.json.JSONUtils;
|
import lombok.AllArgsConstructor;
|
import org.json.JSONArray;
|
import org.json.JSONObject;
|
import org.springblade.common.utils.InvestigateUtil;
|
import org.springblade.core.tool.api.R;
|
import org.springblade.core.tool.jackson.JsonUtil;
|
import org.springblade.modules.system.entity.User;
|
import org.springblade.modules.system.service.IUserService;
|
import org.springframework.retry.backoff.Sleeper;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
import java.util.function.BiConsumer;
|
import java.util.function.Consumer;
|
|
/**
|
* @author zhongrj
|
*
|
* 资格审核测试接口
|
*/
|
@RestController
|
@AllArgsConstructor
|
public class Investigate {
|
|
private final IUserService userService;
|
|
/**
|
* 单个人员审查
|
* @param idCardNo 身份证号码
|
* @return
|
*/
|
@GetMapping("/investigate")
|
public String getInvestigate(String idCardNo,
|
@RequestParam(defaultValue = "1")Integer pageNum,
|
@RequestParam(defaultValue = "10")Integer pageSize){
|
return InvestigateUtil.httpGetOne(idCardNo);
|
}
|
|
/**
|
* 枪支定位
|
* @param idCardNo 护卫员身份证号
|
* @param deptName 所在单位名称
|
* @param startTime 定位开始时间
|
* @param endTime 定位结束时间
|
*/
|
@GetMapping("/investigate/gun")
|
public String getInvestigateGun(String idCardNo,
|
String deptName,
|
String startTime,
|
String endTime,
|
@RequestParam(defaultValue = "1")Integer pageNum,
|
@RequestParam(defaultValue = "10")Integer pageSize){
|
return InvestigateUtil.httpGetGunPosition(idCardNo,deptName,startTime,endTime,pageNum,pageSize);
|
}
|
|
|
|
|
// /**
|
// *
|
// * @return
|
// */
|
// @GetMapping("/investigate/byUser")
|
// public R investigateByUser(){
|
// //查询用户数据,未删除的
|
// List<User> users = userService.getAllUserList();
|
// //遍历
|
// users.forEach(InvestigateUtil.consumerWithIndex((user,index) ->{
|
// if (index==80){
|
// try {
|
// Thread.sleep(500);
|
// } catch (InterruptedException e) {
|
// e.printStackTrace();
|
// }
|
// }
|
// String body = InvestigateUtil.httpGet(user.getCardid());
|
// JSONObject jsonObject = new JSONObject(body);
|
// Object data = jsonObject.get("data");
|
// JSONObject jsonData = new JSONObject(data.toString());
|
// JSONArray res = jsonData.getJSONArray("res");
|
// if (res.length()==0){
|
// //没有数据正常
|
// user.setExaminationType("0");
|
// }else {
|
// user.setExaminationType("1");
|
// user.setExaminationMx(res.getJSONObject(0).get("zdxsfzqkry").toString());
|
// }
|
// //更新用户数据
|
// userService.updateById(user);
|
// }));
|
// return R.data(users.size());
|
// }
|
|
/**
|
* 人员审查
|
* @return
|
*/
|
@GetMapping("/investigate/byUser")
|
public R investigateByUser(@RequestParam(defaultValue = "1") Integer pageNum,
|
@RequestParam(defaultValue = "1000")Integer pageSize){
|
//查询用户数据,未删除的,未审核的
|
List<User> users = userService.getNotAuditAllUserList();
|
//遍历
|
users.forEach(InvestigateUtil.consumerWithIndex((user,index) ->{
|
if (null!=user.getCardid() && user.getCardid()!="") {
|
if (index == 1000) {
|
try {
|
Thread.sleep(1000);
|
} catch (InterruptedException e) {
|
e.printStackTrace();
|
}
|
}
|
String body = InvestigateUtil.httpGetOne(user.getCardid());
|
JSONObject jsonObject = new JSONObject(body);
|
Object data = jsonObject.get("data");
|
JSONObject jsonData = new JSONObject(data.toString());
|
JSONArray res = jsonData.getJSONArray("res");
|
if (res.length() == 0) {
|
//没有数据正常
|
user.setExaminationType("0");
|
} else {
|
int count = 0;
|
user.setExaminationType("1");
|
for (int i = 0; i < res.length(); i++) {
|
if (res.getJSONObject(i).get("zdrylbjh").toString() != null
|
&& res.getJSONObject(i).get("zdrylbjh").toString() != ""
|
&& res.getJSONObject(i).get("zdrylbjh").toString() != "null"
|
) {
|
user.setExaminationMx(res.getJSONObject(i).get("zdrylbjh").toString());
|
//更新用户数据
|
userService.updateById(user);
|
break;
|
}
|
if (res.getJSONObject(i).get("zdryxlmc").toString() != null
|
&& res.getJSONObject(i).get("zdryxlmc").toString() != ""
|
&& res.getJSONObject(i).get("zdryxlmc").toString() != "null"
|
) {
|
user.setExaminationMx(res.getJSONObject(i).get("zdryxlmc").toString());
|
//更新用户数据
|
userService.updateById(user);
|
break;
|
}
|
if (res.getJSONObject(i).get("ztrylx").toString() != null
|
&& res.getJSONObject(i).get("ztrylx").toString() != ""
|
&& res.getJSONObject(i).get("ztrylx").toString() != "null"
|
) {
|
user.setExaminationMx(res.getJSONObject(i).get("ztrylx").toString());
|
//更新用户数据
|
userService.updateById(user);
|
break;
|
}
|
// if (res.getJSONObject(i).get("ajlbmc").toString() != null
|
// && res.getJSONObject(i).get("ajlbmc").toString() != "") {
|
// user.setExaminationMx(res.getJSONObject(i).get("ajlbmc").toString());
|
// //更新用户数据
|
// userService.updateById(user);
|
// break;
|
// }
|
count++;
|
//条件中的数据都为空,则审查为正常
|
if (count==res.length()){
|
//更新用户数据,设为正常
|
user.setExaminationType("0");
|
userService.updateById(user);
|
}
|
}
|
}
|
//更新用户数据
|
userService.updateById(user);
|
}
|
}));
|
return R.data(users.size());
|
}
|
|
/**
|
* 数据反向测试
|
* @param body 数据反向测试
|
* @return
|
*/
|
@PostMapping("/investigate/testBody")
|
public R testBody(@RequestBody String body){
|
JSONObject jsonObject = new JSONObject(body);
|
Object data = jsonObject.get("data");
|
JSONObject jsonData = new JSONObject(data.toString());
|
JSONArray res = jsonData.getJSONArray("res");
|
User user = new User();
|
if (res.length()>0){
|
// String zdxsfzqkry = res.getJSONObject(0).get("zdxsfzqkry").toString();
|
int count = 0;
|
for (int i = 0; i < res.length(); i++) {
|
System.out.println("res.length() =" + res.length());
|
if (res.getJSONObject(i).get("zdrylbjh").toString() != null
|
&& res.getJSONObject(i).get("zdrylbjh").toString() != ""
|
&& res.getJSONObject(i).get("zdrylbjh").toString() != "null"
|
) {
|
user.setExaminationMx(res.getJSONObject(i).get("zdrylbjh").toString());
|
//更新用户数据
|
userService.updateById(user);
|
break;
|
}
|
if (res.getJSONObject(i).get("zdryxlmc").toString() != null
|
&& res.getJSONObject(i).get("zdryxlmc").toString() != ""
|
&& res.getJSONObject(i).get("zdryxlmc").toString() != "null"
|
) {
|
user.setExaminationMx(res.getJSONObject(i).get("zdryxlmc").toString());
|
//更新用户数据
|
userService.updateById(user);
|
break;
|
}
|
if (res.getJSONObject(i).get("ztrylx").toString() != null
|
&& res.getJSONObject(i).get("ztrylx").toString() != ""
|
&& res.getJSONObject(i).get("ztrylx").toString() != "null"
|
) {
|
user.setExaminationMx(res.getJSONObject(i).get("ztrylx").toString());
|
//更新用户数据
|
userService.updateById(user);
|
break;
|
}
|
count++;
|
System.out.println("count = " + count);
|
// if (res.getJSONObject(i).get("ajlbmc").toString() != null
|
// && res.getJSONObject(i).get("ajlbmc").toString() != ""
|
// && res.getJSONObject(i).get("ajlbmc").toString() != "null"
|
// ) {
|
// user.setExaminationMx(res.getJSONObject(i).get("ajlbmc").toString());
|
// //更新用户数据
|
// userService.updateById(user);
|
// break;
|
// }
|
}
|
return R.data(user);
|
}
|
return null;
|
}
|
}
|