|
|
@@ -76,11 +76,6 @@ class HikvisionBaseDataTaskTest {
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
@Test
|
|
|
void test() throws Exception {
|
|
|
String sql = "SELECT distinct table_name FROM hikvision_data WHERE 1 = 1";
|
|
|
@@ -106,14 +101,14 @@ class HikvisionBaseDataTaskTest {
|
|
|
}
|
|
|
// DataUtil dataUtil = new DataUtil();
|
|
|
String tableName = "xjr_department";
|
|
|
-// Map<String, String> department = dataUtil.insertDepartment(use, tableName, dataMap.get(tableName));
|
|
|
-// if(department.isEmpty() && dataMap.get(tableName) != null){
|
|
|
-// department = dataMap.get(tableName);
|
|
|
-// }
|
|
|
+ Map<String, String> department = dataMap.get(tableName);//dataUtil.insertDepartment(use, tableName, dataMap.get(tableName));
|
|
|
+ if(department.isEmpty() && dataMap.get(tableName) != null){
|
|
|
+ department = dataMap.get(tableName);
|
|
|
+ }
|
|
|
//
|
|
|
// //推送教职工
|
|
|
-// tableName = "base_teacher";
|
|
|
-// dataUtil.insertTeacher(use, tableName, dataMap.get(tableName), department);
|
|
|
+ tableName = "base_teacher";
|
|
|
+ insertTeacher(tableName, dataMap.get(tableName), department);
|
|
|
//
|
|
|
//推送车辆
|
|
|
|
|
|
@@ -129,7 +124,7 @@ class HikvisionBaseDataTaskTest {
|
|
|
|
|
|
tableName = "base_student";
|
|
|
Map<String, String> baseStudent = dataMap.get(tableName);
|
|
|
- Map<String, String> student = insertStudentOne(tableName, baseStudent);
|
|
|
+ // Map<String, String> student = insertStudentOne(tableName, baseStudent);
|
|
|
|
|
|
// selectOrg(use, "base_class");
|
|
|
|
|
|
@@ -137,7 +132,7 @@ class HikvisionBaseDataTaskTest {
|
|
|
// String carTableName = "car_message_apply";
|
|
|
// selectCar(use, carTableName);
|
|
|
|
|
|
- outInRecordUtil.GetVehicleRecord(faceImportMapper);
|
|
|
+// outInRecordUtil.GetVehicleRecord(faceImportMapper);
|
|
|
// outInRecordUtil.GetTeacherAndStudentRecords(faceImportMapper);
|
|
|
//// selecAllPersonById(use);
|
|
|
// selectResource(use);
|
|
|
@@ -177,8 +172,8 @@ class HikvisionBaseDataTaskTest {
|
|
|
" INNER JOIN base_class t3 ON t2.class_id = t3.id" +
|
|
|
" INNER JOIN base_grade t4 ON t3.grade_id = t4.id" +
|
|
|
" WHERE t1.delete_mark = 0 AND t2.delete_mark = 0" +
|
|
|
- " AND t3.class_type IS NOT NULL";
|
|
|
- //" AND t1.name IN ('宋成男','白江龙','李松阳')";
|
|
|
+ " AND t3.class_type IS NOT NULL" +
|
|
|
+ " AND t1.name IN ('陆晓峰','李星兴')";
|
|
|
List<Map<String, Object>> list = SqlRunnerAdapter.db().selectList(sql, String[].class);
|
|
|
Map<Integer, String> clientMap = new HashMap<>();
|
|
|
|
|
|
@@ -188,7 +183,7 @@ class HikvisionBaseDataTaskTest {
|
|
|
Map<String, String> header = new HashMap<>();
|
|
|
header.put("tagId", "insert_student");
|
|
|
|
|
|
- for(int i = 1; i < list.size(); i ++){
|
|
|
+ for(int i = 0; i < list.size(); i ++){
|
|
|
Map<String, Object> objectMap = list.get(i);
|
|
|
String apiPath = "/api/resource/v2/person/single/add";
|
|
|
|
|
|
@@ -286,16 +281,30 @@ class HikvisionBaseDataTaskTest {
|
|
|
|
|
|
|
|
|
|
|
|
- void selecAllPersonById(Db db) throws SQLException {
|
|
|
+ @Test
|
|
|
+ void selecAllPersonById() throws SQLException {
|
|
|
String apiPath = "/api/resource/v2/person/advance/personList";
|
|
|
+
|
|
|
+ String sql = "SELECT * FROM xjr_user WHERE id IN (" +
|
|
|
+ " SELECT source_id FROM hikvision_data WHERE table_name IN( 'base_teacher','base_student')" +
|
|
|
+ " AND hikvision_id LIKE '%-%'" +
|
|
|
+ " )";
|
|
|
+ List<Map<String, Object>> maps = SqlRunnerAdapter.db().selectList(sql);
|
|
|
+ ApiUtil apiUtil = new ApiUtil();
|
|
|
JsonObject jsonObject = new JsonObject();
|
|
|
jsonObject.addProperty("pageNo", 1);
|
|
|
jsonObject.addProperty("pageSize", 500);
|
|
|
- jsonObject.addProperty("personIds", "654321987655613");
|
|
|
+ jsonObject.addProperty("personName", "胡玉");
|
|
|
+ String result = apiUtil.doPost(apiPath, jsonObject.toString(), null, null);
|
|
|
+ System.out.println(result);
|
|
|
|
|
|
|
|
|
- ApiUtil apiUtil = new ApiUtil();
|
|
|
- String result = apiUtil.doPost(apiPath, jsonObject.toString(), null, null);
|
|
|
+ for (Map<String, Object> map : maps) {
|
|
|
+ String name = map.get("name").toString();
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|
|
|
void selecAllPerson(Db db) throws SQLException {
|
|
|
@@ -371,4 +380,114 @@ class HikvisionBaseDataTaskTest {
|
|
|
System.out.println(result);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ public Map<String, String> insertTeacher(String tableName, Map<String, String> tableData, Map<String, String> deptMap){
|
|
|
+ String sql = "SELECT distinct t1.id,t1.name,t1.gender,t3.dept_id,t1.birth_date,t1.mobile,t1.email,t1.credential_type,t1.credential_number,t1.user_name FROM xjr_user t1" +
|
|
|
+ " INNER JOIN " + tableName + " t2 ON t1.id = t2.user_id" +
|
|
|
+ " INNER JOIN xjr_user_dept_relation t3 ON t1.id = t3.user_id" +
|
|
|
+ " INNER JOIN xjr_department t4 ON t3.dept_id = t4.id " +
|
|
|
+ " WHERE t1.delete_mark = 0 AND t2.delete_mark = 0 AND t4.delete_mark = 0" +
|
|
|
+ " AND t1.name = '黄文宇'";
|
|
|
+ List<Map<String, Object>> list = SqlRunnerAdapter.db().selectList(sql, String[].class);
|
|
|
+ JsonArray paramArray = new JsonArray();
|
|
|
+ Map<Integer, String> clientMap = new HashMap<>();
|
|
|
+ for(int i = 0; i < list.size(); i ++){
|
|
|
+ Map<String, Object> objectMap = list.get(i);
|
|
|
+ if(tableData != null && tableData.containsKey(objectMap.get("id").toString())){
|
|
|
+ //continue;
|
|
|
+ }
|
|
|
+ JsonObject paramJson = new JsonObject();
|
|
|
+ paramJson.addProperty("clientId", i);
|
|
|
+ paramJson.addProperty("personId", objectMap.get("id").toString() + i);
|
|
|
+ paramJson.addProperty("personName", objectMap.get("name").toString());
|
|
|
+ paramJson.addProperty("orgIndexCode", objectMap.get("dept_id").toString());
|
|
|
+ paramJson.addProperty("phoneNo", objectMap.get("mobile")==null?"":objectMap.get("mobile").toString());
|
|
|
+ paramJson.addProperty("jobNo", objectMap.get("user_name").toString());
|
|
|
+ paramJson.addProperty("birthday", objectMap.get("birth_date")==null?"":objectMap.get("birth_date").toString());
|
|
|
+ paramJson.addProperty("personType", 1);
|
|
|
+
|
|
|
+ int gender;
|
|
|
+ switch (objectMap.get("gender").toString()) {
|
|
|
+ case "SB10001":
|
|
|
+ gender = 1;
|
|
|
+ break;
|
|
|
+ case "SB10002":
|
|
|
+ gender = 2;
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ gender = 0;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ paramJson.addProperty("gender", gender);
|
|
|
+ paramArray.add(paramJson);
|
|
|
+
|
|
|
+ clientMap.put(i, objectMap.get("id").toString());
|
|
|
+ }
|
|
|
+
|
|
|
+ String apiPath = "/api/resource/v1/person/batch/add";
|
|
|
+ Map<String, String> idMap = new HashMap<>();
|
|
|
+ JsonParser jsonParser = new JsonParser();
|
|
|
+ ApiUtil apiUtil = new ApiUtil();
|
|
|
+ Map<String, String> header = new HashMap<>();
|
|
|
+ header.put("tagId", "insert_teacher");
|
|
|
+
|
|
|
+ String result = apiUtil.doPost(apiPath, paramArray.toString(), null, header);
|
|
|
+ JsonElement parse = jsonParser.parse(result);
|
|
|
+ JsonObject resultJson = parse.getAsJsonObject();
|
|
|
+ if("0".equals(resultJson.get("code").getAsString()) && "success".equals(resultJson.get("msg").getAsString())){
|
|
|
+ JsonArray array = resultJson.get("data").getAsJsonObject().get("successes").getAsJsonArray();
|
|
|
+ for (JsonElement jsonElement : array) {
|
|
|
+ JsonObject jsonObject = jsonElement.getAsJsonObject();
|
|
|
+ idMap.put(clientMap.get(jsonObject.get("clientId").getAsInt()), jsonObject.get("personId").getAsString());
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+
|
|
|
+ }
|
|
|
+ //插入记录表
|
|
|
+
|
|
|
+ insertRecord(tableName, idMap);
|
|
|
+ return idMap;
|
|
|
+ }
|
|
|
+
|
|
|
+ void insertRecord(String tableName, Map<?, String> idsMap){
|
|
|
+ if (idsMap.isEmpty()) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ for (var entry : idsMap.entrySet()) {
|
|
|
+ var sourceId = entry.getKey();
|
|
|
+ String sql = "INSERT INTO hikvision_data(create_date, table_name, source_id, hikvision_id) " +
|
|
|
+ "VALUES(now(), '" + tableName + "', '" + sourceId + "', '" + entry.getValue() + "')";
|
|
|
+ SqlRunnerAdapter.db().insert(sql);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Test
|
|
|
+ void deletePerson() throws SQLException {
|
|
|
+ String sql = "SELECT * FROM xjr_user WHERE id IN (\n" +
|
|
|
+ "SELECT source_id FROM hikvision_data WHERE table_name IN( 'base_teacher','base_student')\n" +
|
|
|
+ "AND hikvision_id LIKE '%-%'\n" +
|
|
|
+ "AND hikvision_id NOT IN('14954805813957-14','14954812448325-19','14954812339909-17','14954812392774-18')\n" +
|
|
|
+ ") AND id NOT IN ('14954807016389', '14954806910277')\n";
|
|
|
+ List<Map<String, Object>> maps = SqlRunnerAdapter.db().selectList(sql);
|
|
|
+
|
|
|
+
|
|
|
+ String apiPath = "/api/resource/v1/person/batch/delete";
|
|
|
+ JsonObject paramJson = new JsonObject();
|
|
|
+ JsonArray personIds = new JsonArray();
|
|
|
+ for (Map<String, Object> map : maps) {
|
|
|
+
|
|
|
+ personIds.add(map.get("id").toString());
|
|
|
+ }
|
|
|
+ paramJson.add("personIds", personIds);
|
|
|
+
|
|
|
+ ApiUtil apiUtil = new ApiUtil();
|
|
|
+
|
|
|
+ Map<String, String> header = new HashMap<>();
|
|
|
+ header.put("tagId", "delete_teacher");
|
|
|
+ String result = apiUtil.doPost(apiPath, paramJson.toString(), null, header);
|
|
|
+
|
|
|
+ System.out.println(result);
|
|
|
+ }
|
|
|
+
|
|
|
}
|