|
@@ -8,6 +8,9 @@ import cn.rankin.apiweb.service.product.ProductService;
|
|
import cn.rankin.common.utils.api.model.APICode;
|
|
import cn.rankin.common.utils.api.model.APICode;
|
|
import cn.rankin.common.utils.api.model.APIResult;
|
|
import cn.rankin.common.utils.api.model.APIResult;
|
|
import cn.rankin.common.utils.constant.DownloadStatus;
|
|
import cn.rankin.common.utils.constant.DownloadStatus;
|
|
|
|
+import cn.rankin.common.utils.enums.BaseStatusEnum;
|
|
|
|
+import cn.rankin.common.utils.enums.EventTypeEnum;
|
|
|
|
+import cn.rankin.common.utils.util.HttpUtil;
|
|
import cn.rankin.data.api.app.vo.DeviceUserVo;
|
|
import cn.rankin.data.api.app.vo.DeviceUserVo;
|
|
import cn.rankin.data.api.product.entity.Course;
|
|
import cn.rankin.data.api.product.entity.Course;
|
|
import cn.rankin.data.api.product.entity.Lesson;
|
|
import cn.rankin.data.api.product.entity.Lesson;
|
|
@@ -58,10 +61,20 @@ public class CallbackController {
|
|
public APIResult<Boolean> addDownloadInfo(HttpServletRequest request, @NeedUser DeviceUserVo user ,
|
|
public APIResult<Boolean> addDownloadInfo(HttpServletRequest request, @NeedUser DeviceUserVo user ,
|
|
@RequestParam("courseId") String courseId,
|
|
@RequestParam("courseId") String courseId,
|
|
@RequestParam("lessonId") String lessonId,
|
|
@RequestParam("lessonId") String lessonId,
|
|
- @RequestParam("downloadStatus") int downloadStatus,
|
|
|
|
|
|
+ @RequestParam("resTotal") int resTotal,
|
|
|
|
+ @RequestParam("resSize") int resSize,
|
|
@RequestParam("data") String data) {
|
|
@RequestParam("data") String data) {
|
|
|
|
|
|
|
|
+ String ip = HttpUtil.getClientIp(request);
|
|
|
|
+ log.info("ip={}",ip);
|
|
|
|
|
|
|
|
+ String mac = HttpUtil.getMacAddrByIp(request);
|
|
|
|
+
|
|
|
|
+ log.info("mac={}",mac);
|
|
|
|
+
|
|
|
|
+ String systemInfo = HttpUtil.getSystemInfo(request);
|
|
|
|
+
|
|
|
|
+ log.info("systemInfo={}",systemInfo);
|
|
|
|
|
|
/**
|
|
/**
|
|
* 1.获得客户机信息
|
|
* 1.获得客户机信息
|
|
@@ -118,7 +131,14 @@ public class CallbackController {
|
|
dto.setMerchantId(user.getMerchantId());
|
|
dto.setMerchantId(user.getMerchantId());
|
|
dto.setUserId(user.getUid());
|
|
dto.setUserId(user.getUid());
|
|
dto.setDeviceType(device);
|
|
dto.setDeviceType(device);
|
|
- dto.setDownloadStatus(downloadStatus);
|
|
|
|
|
|
+ dto.setDownloadStatus(DownloadStatus.PROCESS_DOWNLOAD);
|
|
|
|
+ dto.setEventType(EventTypeEnum.DOWNLOAD);
|
|
|
|
+ dto.setStatus(BaseStatusEnum.NORMAL);
|
|
|
|
+ dto.setNeedUpdate(0);
|
|
|
|
+ dto.setResTotal(resTotal);
|
|
|
|
+ dto.setResSize(resSize);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
|
|
DownloadInfo downloadInfo = downloadInfoService.add(dto);
|
|
DownloadInfo downloadInfo = downloadInfoService.add(dto);
|
|
if(downloadInfo != null){
|
|
if(downloadInfo != null){
|
|
@@ -163,5 +183,27 @@ public class CallbackController {
|
|
return APIResult.ok();
|
|
return APIResult.ok();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @RequestMapping(value = "/download/update/resource/size", method = RequestMethod.PUT)
|
|
|
|
+ public APIResult<Boolean> updateResourceByLessonUserId(@NeedUser DeviceUserVo user,@RequestParam("lessonId") String lessonId) {
|
|
|
|
+ DownloadInfo downloadInfo = downloadInfoService.findByLessonUserId(user.getUid(),lessonId);
|
|
|
|
+ if(downloadInfo == null){
|
|
|
|
+ APIResult.error(APICode.OPERATE_ERROR);
|
|
|
|
+ }else{
|
|
|
|
+ int resSize = downloadInfo.getResSize() + 1 ;
|
|
|
|
+ int resTotal = downloadInfo.getResTotal();
|
|
|
|
+ if(resSize == resTotal){
|
|
|
|
+ downloadInfo.setDownloadStatus(DownloadStatus.FINISH_DOWNLOAD);
|
|
|
|
+ }
|
|
|
|
+ downloadInfo.setResSize(resSize);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ DownloadInfo update = downloadInfoService.update(downloadInfo);
|
|
|
|
+ if(update == null){
|
|
|
|
+ APIResult.error(APICode.OPERATE_ERROR);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return APIResult.ok();
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|