浏览代码

新增教研分析回调

wangliang 3 年之前
父节点
当前提交
53b6504b62

+ 10 - 1
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/templete/strategy/CalculateTaskTemplate.java

@@ -6,9 +6,11 @@ import com.qmth.boot.api.exception.ApiException;
 import com.qmth.teachcloud.common.config.DictionaryConfig;
 import com.qmth.teachcloud.common.contant.SpringContextHolder;
 import com.qmth.teachcloud.common.contant.SystemConstant;
+import com.qmth.teachcloud.common.entity.BasicSchool;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
 import com.qmth.teachcloud.common.enums.TaskResultEnum;
 import com.qmth.teachcloud.common.enums.TaskStatusEnum;
+import com.qmth.teachcloud.common.service.CommonCacheService;
 import com.qmth.teachcloud.common.util.*;
 import com.qmth.teachcloud.report.business.bean.params.CalculateParams;
 import com.qmth.teachcloud.report.business.entity.TBSyncTask;
@@ -120,6 +122,7 @@ public abstract class CalculateTaskTemplate {
     protected void callback(CalculateParams calculateParams) throws IOException {
         log.info("callback come in");
         DictionaryConfig dictionaryConfig = SpringContextHolder.getBean(DictionaryConfig.class);
+        CommonCacheService commonCacheService = SpringContextHolder.getBean(CommonCacheService.class);
         TBSyncTask tbSyncTask = calculateParams.getTbSyncTask();
 
         Long time = System.currentTimeMillis();
@@ -131,7 +134,13 @@ public abstract class CalculateTaskTemplate {
         jsonObject.put("time", time);
 
         String sign = URLEncoder.encode(Base64Util.encode(ShaUtils.sha1(dictionaryConfig.printOpenDomain().getCallbackPwd() + jsonObject.toJSONString())), SystemConstant.CHARSET_NAME);
-        String callbackResult = HttpUtil.postJson(dictionaryConfig.printOpenDomain().getHostUrl() + dictionaryConfig.printOpenDomain().getCallbackUrlApi(), jsonObject.toJSONString(), sign, time);
+        String hostUrl = dictionaryConfig.printOpenDomain().getHostUrl();
+        BasicSchool basicSchool = commonCacheService.schoolCache(calculateParams.getSchoolId());
+        if (hostUrl.contains("*")) {
+            hostUrl = hostUrl.replace("*", basicSchool.getCode());
+        }
+
+        String callbackResult = HttpUtil.postJson(hostUrl + dictionaryConfig.printOpenDomain().getCallbackUrlApi(), jsonObject.toJSONString(), sign, time);
         if (Objects.nonNull(callbackResult)) {
             log.info("callbackResult:{}", JacksonUtil.parseJson(callbackResult));
         }