Przeglądaj źródła

bugfix:在门户新建课程后于EAI同步创建

XiaoYu 1 rok temu
rodzic
commit
2bde39b7db

+ 3 - 0
seecoder-portal-common/src/main/java/cn/seecoder/seecoderportalcommon/vo/CourseVO.java

@@ -1,7 +1,10 @@
 package cn.seecoder.seecoderportalcommon.vo;
 
+import lombok.Data;
+
 import java.time.OffsetDateTime;
 
+@Data
 public class CourseVO {
     private Long id;
 

+ 9 - 4
seecoder-portal-server/pom.xml

@@ -152,15 +152,20 @@
             <artifactId>commons-io</artifactId>
             <version>2.4</version>
         </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.apache.poi</groupId>-->
+<!--            <artifactId>poi-scratchpad</artifactId>-->
+<!--            <version>3.8</version>-->
+<!--        </dependency>-->
         <dependency>
             <groupId>org.apache.poi</groupId>
             <artifactId>poi-scratchpad</artifactId>
-            <version>3.8</version>
+            <version>4.1.2</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.poi</groupId>
-            <artifactId>poi-scratchpad</artifactId>
-            <version>4.1.2</version>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <scope>provided</scope>
         </dependency>
     </dependencies>
 

+ 3 - 3
seecoder-portal-server/src/main/java/cn/seecoder/seecoderportalserver/serviceImpl/CourseServiceImpl.java

@@ -74,12 +74,12 @@ public class CourseServiceImpl implements CourseService {
         if (courseVO.getEaiId() != null) {
             JSONObject eaiRes = eaiService.createCourse(courseVO);
             System.out.println("eai creating");
-            if (!eaiRes.containsKey("res")) {
+            if (!(eaiRes.get("msg").equals("Success"))) {
                 throw new CustomErrorException("EAI: " + eaiRes.get("msg"));
             } else {
-                JSONObject eaiCourse = (JSONObject) eaiRes.get("res");
+                JSONObject eaiCourse = (JSONObject) eaiRes.get("data");
                 System.out.println("EAICourse:"+eaiCourse);
-                eaiId = (Integer) eaiCourse.get("id");
+                eaiId = (Integer) eaiCourse.get("courseId");
                 courseVO.setEaiId(eaiId);
             }
         }

+ 11 - 1
seecoder-portal-server/src/main/java/cn/seecoder/seecoderportalserver/serviceImpl/subsystem/EaiService.java

@@ -5,6 +5,7 @@ import cn.seecoder.seecoderportalserver.service.HttpService;
 import cn.seecoder.seecoderportalserver.service.subsystem.SubsystemService;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
@@ -17,6 +18,7 @@ import java.util.List;
  * @date 2025/2/24 下午6:44
  * @description: EaiService
  */
+@Slf4j
 @Service
 public class EaiService implements SubsystemService {
     private final HttpService httpService;
@@ -29,6 +31,8 @@ public class EaiService implements SubsystemService {
 
     @Override
     public JSONObject createCourse(CourseVO courseVO) {
+//        log.info("EAI新建课程:", courseVO);
+        System.out.println("EAI新建课程:" + courseVO.toString());
         String uri = eaiHost + "/api/course";
         String token = httpService.getToken();
         JSONObject requestBody = new JSONObject();
@@ -40,7 +44,8 @@ public class EaiService implements SubsystemService {
         courseImages.add(courseVO.getImageUrl());
 
         List<Long> teacherIds = new ArrayList<>();
-        teacherIds.add(courseVO.getId());
+        teacherIds.add(courseVO.getTeacher().getId());
+        System.out.println(courseVO.getTeacher());
 
         //对应eai中的CourseDT0
         requestBody.put("courseName", courseVO.getName());
@@ -49,6 +54,9 @@ public class EaiService implements SubsystemService {
         requestBody.put("startTime", Date.from(courseVO.getStartTime().toInstant()));
         requestBody.put("endTime", Date.from(courseVO.getEndTime().toInstant()));
         requestBody.put("description", courseVO.getDescription());
+        requestBody.put("enrollCode", courseVO.getInvitationCode());
+
+
 
         //对应eai中的CourseVO
 //        requestBody.put("courseName", courseVO.getName());
@@ -65,6 +73,8 @@ public class EaiService implements SubsystemService {
         String result = null;
         try {
             result = httpService.sendPost(uri, requestBody, null, token);
+//            log.info("EAI新建课程结果: " ,result);
+            System.out.println("EAI新建课程结果: " + result);
         } catch (Exception e) {
             e.printStackTrace();
         }