Browse Source

fix 获取课程云盘链接

zoujiajian 3 years ago
parent
commit
7c232b959f

+ 6 - 0
netflix-dao/src/main/java/com/cyksj/model/entity/GoodsCoursewareFile.java

@@ -1,5 +1,6 @@
 package com.cyksj.model.entity;
 
+import com.fasterxml.jackson.annotation.JsonInclude;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -11,6 +12,7 @@ import lombok.Setter;
  */
 @Getter
 @Setter
+@JsonInclude(JsonInclude.Include.NON_NULL)
 public class GoodsCoursewareFile extends BaseEntity{
 	private Long goodsId;
 
@@ -25,5 +27,9 @@ public class GoodsCoursewareFile extends BaseEntity{
 
 	private String img;
 
+	private String link;
+
+	private String code;
+
 	private Boolean status;
 }

+ 3 - 0
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -1296,6 +1296,9 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 				} else if (GroupsTrips.Status.waiting.equals(groupsTrips.getStatus())) {
 					log.info("车位groupsId:{}未发车,修改订单号orderNo:{}订单为已付款状态:{}", groupsTrips.getId(), order.getOrderNo());
 					order.setStatus(OrderDon.Status.hasPayment);
+					if (goodsDon.getSpecialType() != null && goodsDon.getSpecialType() == GoodsDon.SpecialType.courseware) {
+						order.setStatus(OrderDon.Status.complete);
+					}
 				}
 				//下架POE会员车队
 				if (order.getGoodsId() != null && order.getGoodsId().equals(35l)) {

+ 24 - 0
netflix-web/src/main/java/com/cyksj/web/controller/group/GroupRelationController.java

@@ -103,6 +103,8 @@ public class GroupRelationController {
 
     private final ChatGptAuthService chatGptAuthService;
 
+    private final GoodsCoursewareFileMapper goodsCoursewareFileMapper;
+
     private final static Sequence SEQUENCE = new Sequence(0);
 
     @RequestMapping("/get/renewal")
@@ -542,4 +544,26 @@ public class GroupRelationController {
         groupRelationFrontService.sendCourseWare(request);
         return GatewayResponse.SUCCESS.newBuilder().toResult();
     }
+
+    //获取课程云盘链接
+    @GetMapping("/get/courseware")
+    public Result<GoodsCoursewareFile> getGoodsCourseware(Long relationId) {
+        long userId = StpUserUtil.getLoginIdAsLong();
+        List<Long> userIdList = userBindRelationService.getRelationUserIdList(userId, null);
+        GroupsRelationView relationView = beanSearcher.searchFirst(GroupsRelationView.class, MapUtils.builder()
+                .field(GroupsRelationView::getUserId, userIdList).op(Operator.InList)
+                .field(GroupsRelationView::getId, relationId).build());
+        if (relationView == null) {
+            throw BusinessRuntimeException.getInstance("您的车票不存在");
+        }
+        GoodsCoursewareFile goodsCoursewareFile = goodsCoursewareFileMapper.selectOne(Wrappers.lambdaQuery(GoodsCoursewareFile.class)
+                .eq(GoodsCoursewareFile::getGoodsId, relationView.getGoodsId())
+                .eq(GoodsCoursewareFile::getStatus, true)
+                .select(GoodsCoursewareFile::getLink, GoodsCoursewareFile::getCode)
+                .last("limit 1"));
+        if (goodsCoursewareFile == null) {
+            throw BusinessRuntimeException.getInstance("暂未配置课件链接地址,请联系客服");
+        }
+        return GatewayResponse.SUCCESS.newBuilder().toResult(goodsCoursewareFile);
+    }
 }