|
|
@@ -0,0 +1,107 @@
|
|
|
+package com.xjrsoft.module.job;
|
|
|
+
|
|
|
+import com.google.gson.JsonArray;
|
|
|
+import com.google.gson.JsonObject;
|
|
|
+import com.google.gson.JsonParser;
|
|
|
+import com.xjrsoft.XjrSoftApplication;
|
|
|
+import com.xjrsoft.common.mybatis.SqlRunnerAdapter;
|
|
|
+import com.xjrsoft.module.schedule.util.DataUtil;
|
|
|
+import com.xjrsoft.module.schedule.util.ScheduleUtil;
|
|
|
+import org.junit.jupiter.api.Test;
|
|
|
+import org.junit.runner.RunWith;
|
|
|
+import org.springframework.boot.test.context.SpringBootTest;
|
|
|
+import org.springframework.test.context.junit4.SpringRunner;
|
|
|
+
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.HashSet;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.Set;
|
|
|
+
|
|
|
+import static org.junit.jupiter.api.Assertions.*;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author dzx
|
|
|
+ * @date 2025/2/20
|
|
|
+ */
|
|
|
+@RunWith(SpringRunner.class)
|
|
|
+@SpringBootTest(classes = XjrSoftApplication.class)
|
|
|
+class JianyuekbScheduleTaskTest3 {
|
|
|
+
|
|
|
+
|
|
|
+ @Test
|
|
|
+ void test() throws Exception {
|
|
|
+ String startDate = "2025-02-24";
|
|
|
+ String endDate = "2025-03-02";
|
|
|
+ String classSerialNo = "CLA000001422";
|
|
|
+ String url = ScheduleUtil.apiUrl + "TimeTable/List";
|
|
|
+ JsonObject pageJson = new JsonObject();
|
|
|
+ pageJson.addProperty("classSerialNo", classSerialNo);
|
|
|
+ pageJson.addProperty("startDate", startDate);
|
|
|
+ pageJson.addProperty("endDate", endDate);
|
|
|
+ JsonParser parser = new JsonParser();
|
|
|
+
|
|
|
+ long timestamp = System.currentTimeMillis();
|
|
|
+ String sign = ScheduleUtil.createSign(timestamp);
|
|
|
+
|
|
|
+
|
|
|
+ String doPost = ScheduleUtil.doPost(url, pageJson.toString(), sign, timestamp);
|
|
|
+ System.out.println(doPost);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Test
|
|
|
+ void test1() throws Exception {
|
|
|
+ DataUtil dataUtil = new DataUtil();
|
|
|
+ String startDate = "2025-02-24";
|
|
|
+ String endDate = "2025-03-02";
|
|
|
+ String classSerialNo = "CLA000001422";
|
|
|
+ JsonArray scheduleInfo = dataUtil.getScheduleInfoByClass(classSerialNo, startDate, endDate);
|
|
|
+ doExecute(scheduleInfo, startDate, endDate);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ void doExecute(JsonArray scheduleInfo, String startDate, String endDate){
|
|
|
+ String sql = "SELECT distinct table_name FROM jianyue_data WHERE 1 = 1";
|
|
|
+ List<Map<String, Object>> query = SqlRunnerAdapter.db().selectList(sql);
|
|
|
+ Set<String> tables = new HashSet<>();
|
|
|
+ for (Map<String, Object> jianyueData : query) {
|
|
|
+ tables.add(jianyueData.get("table_name").toString());
|
|
|
+ }
|
|
|
+ sql = "SELECT * FROM jianyue_data WHERE 0 = 0";
|
|
|
+ List<Map<String, Object>> list = SqlRunnerAdapter.db().selectList(sql);
|
|
|
+ Map<String, Map<String, String>> dataMap = new HashMap<>();
|
|
|
+ for (String table : tables) {
|
|
|
+ Map<String, String> tableData = new HashMap<>();
|
|
|
+ for (Map<String, Object> jianyueData : list) {
|
|
|
+ if(!table.equals(jianyueData.get("table_name").toString())){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ tableData.put(jianyueData.get("jianyue_id").toString(), jianyueData.get("source_id").toString());
|
|
|
+ }
|
|
|
+ dataMap.put(table, tableData);
|
|
|
+ }
|
|
|
+ DataUtil dataUtil = new DataUtil();
|
|
|
+ //获取年级
|
|
|
+ String tableName = "base_grade";
|
|
|
+// Map<String, Long> gradeMap = dataMap.get(tableName);
|
|
|
+ //获取学期
|
|
|
+ tableName = "base_semester";
|
|
|
+ Map<String, String> semesterMap = dataMap.get(tableName);
|
|
|
+ //获取课程
|
|
|
+ tableName = "base_course_subject";
|
|
|
+ Map<String, String> courseMap = dataMap.get(tableName);
|
|
|
+ //获取教职工
|
|
|
+ tableName = "base_teacher";
|
|
|
+ Map<String, String> teacherMap = dataMap.get(tableName);
|
|
|
+ //获取行政班
|
|
|
+ tableName = "base_class";
|
|
|
+ Map<String, String> classMap = dataMap.get(tableName);
|
|
|
+
|
|
|
+ tableName = "base_classroom";
|
|
|
+ Map<String, String> classroomMap = dataMap.get(tableName);
|
|
|
+
|
|
|
+ dataUtil.insertCourseTableEntiy(scheduleInfo, classroomMap, courseMap, semesterMap, teacherMap, classMap, null, startDate, endDate);
|
|
|
+ dataUtil.insertClassTime(scheduleInfo);
|
|
|
+ }
|
|
|
+
|
|
|
+}
|