Răsfoiți Sursa

fix midjourney、gpt规格暗改

zoujiajian 3 ani în urmă
părinte
comite
7c64f7ecaf

+ 4 - 0
netflix-common/src/main/java/com/cyksj/common/constant/Constant.java

@@ -79,4 +79,8 @@ public interface Constant {
 	List<String> registerAccount = List.of("apple", "spotify", "google");
 
 	String SUCCESS = "success";
+
+	List<Long> CHAT_GPT_SKU_IDS = List.of(161l, 168l);
+
+	List<Long> MIDJOURNEY_SKU_IDS = List.of(175l, 185l, 186l);
 }

+ 5 - 0
netflix-dao/src/main/java/com/cyksj/model/manage/views/GroupsRelationView.java

@@ -32,6 +32,7 @@ public class GroupsRelationView {
     private Long skuId;
 
     @DbField("a.account")
+    @JsonIgnore
     private String tripsAccount;
 
     @DbField("g.id")
@@ -65,6 +66,7 @@ public class GroupsRelationView {
     private Date expiryTime;
 
     @DbField("gr.num")
+    @JsonIgnore
     private Integer num;
 
     @DbField("u.nickname")
@@ -86,18 +88,21 @@ public class GroupsRelationView {
      * 创建时间
      */
     @DbField("gr.created_time")
+    @JsonIgnore
     private Date createdTime;
 
     /**
      * 创建时间
      */
     @DbField("gr.update_time")
+    @JsonIgnore
     private Date update_time;
 
     /**
      * 账号
      */
     @DbField("gr.account")
+    @JsonIgnore
     private String account;
 
     @DbIgnore

+ 2 - 0
netflix-dao/src/main/java/com/cyksj/model/views/GroupsView.java

@@ -29,12 +29,14 @@ public class GroupsView {
      * 车位数量
      */
     @DbField("g.num")
+    @JsonIgnore
     private Integer num;
 
     /**
      * 可用车位数
      */
     @DbField("g.available_num")
+    @JsonIgnore
     private Integer availableNum;
 
     /**

+ 44 - 19
netflix-web/src/main/java/com/cyksj/web/controller/group/GroupController.java

@@ -1,10 +1,9 @@
 package com.cyksj.web.controller.group;
 
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.cyksj.common.constant.Constant;
 import com.cyksj.dto.Result;
 import com.cyksj.enums.GatewayResponse;
 import com.cyksj.mapper.GoodsDonSkuMapper;
-import com.cyksj.model.entity.GoodsDonSku;
 import com.cyksj.model.manage.views.GroupsRelationView;
 import com.cyksj.model.views.GroupsView;
 import com.ejlchina.searcher.BeanSearcher;
@@ -19,8 +18,6 @@ import org.springframework.web.bind.annotation.RestController;
 import javax.servlet.http.HttpServletRequest;
 import java.util.Comparator;
 import java.util.List;
-import java.util.Set;
-import java.util.stream.Collectors;
 
 /**
  * @author chan
@@ -39,28 +36,56 @@ public class GroupController {
     private final GoodsDonSkuMapper goodsDonSkuMapper;
 
     @GetMapping("/get")
-    public Result<SearchResult<GroupsView>> get(Long skuId) {
+    public Result<SearchResult<GroupsView>> get() {
         SearchResult<GroupsView> search = beanSearcher.search(GroupsView.class, MapUtils.flatBuilder(request.getParameterMap())
                 .orderBy(GroupsView::getOrderBy).asc()
                 .orderBy(GroupsView::getId).desc().build()
         );
-        List<GoodsDonSku> goodsDonSkus = goodsDonSkuMapper.selectList(Wrappers.lambdaQuery(GoodsDonSku.class).eq(GoodsDonSku::getGoodsId, 18).select(GoodsDonSku::getId));
-        Set<Long> skuIds = goodsDonSkus.stream().map(GoodsDonSku::getId).collect(Collectors.toSet());
-        if (skuIds.contains(skuId)) {
-            search.getDataList().forEach((groupsView)->{
-                groupsView.setRelations(beanSearcher.searchAll(GroupsRelationView.class, MapUtils.builder()
+        search.getDataList().forEach((groupsView) -> {
+            if (Constant.CHAT_GPT_SKU_IDS.contains(groupsView.getSkuId())) {
+                List<GroupsRelationView> relationViewList = beanSearcher.searchAll(GroupsRelationView.class, MapUtils.builder()
                         .field(GroupsRelationView::getGroupsId, groupsView.getId())
                         .orderBy(GroupsRelationView::getUpdate_time).desc()
-                        .build()));
-            });
-            search.getDataList().sort(Comparator.comparing(GroupsView::getOrderBy));
-        }else {
-            search.getDataList().forEach((groupsView) -> {
+                        .build());
+                List<GroupsRelationView> all = null;
+                //GPT 月付 暗改成20个 展示10个
+                if (groupsView.getSkuId().equals(Constant.CHAT_GPT_SKU_IDS.get(0))) {
+                    all = relationViewList.subList(0, 5);
+                    List<GroupsRelationView> after = relationViewList.subList(relationViewList.size() - 5, 20);
+                    all.addAll(after);
+                }
+                //GPT 4人月付暗改成6个 展示4个
+                if (groupsView.getSkuId().equals(Constant.CHAT_GPT_SKU_IDS.get(1))) {
+                    all = relationViewList.subList(0, 2);
+                    List<GroupsRelationView> after = relationViewList.subList(relationViewList.size() - 2, 6);
+                    all.addAll(after);
+                }
+                groupsView.setRelations(all);
+            } else if (Constant.MIDJOURNEY_SKU_IDS.contains(groupsView.getSkuId()) && groupsView.getNum() == 15) {
+                List<GroupsRelationView> relationViewList = beanSearcher.searchAll(GroupsRelationView.class, MapUtils.builder()
+                        .field(GroupsRelationView::getGroupsId, groupsView.getId())
+                        .orderBy(GroupsRelationView::getUpdate_time).desc()
+                        .build());
+                List<GroupsRelationView> all = null;
+                //MIDJOURNEY 月付5个 暗改15个 展示5个
+                if (groupsView.getSkuId() == Constant.MIDJOURNEY_SKU_IDS.get(0)) {
+                    all = relationViewList.subList(0, 5);
+                    List<GroupsRelationView> after = relationViewList.subList(relationViewList.size() - 1, 15);
+                    all.addAll(after);
+                }
+                //MIDJOURNEY 标准会员月付10个 暗改15个 展示10个
+                if (groupsView.getSkuId() == Constant.MIDJOURNEY_SKU_IDS.get(1) || groupsView.getSkuId() == Constant.MIDJOURNEY_SKU_IDS.get(2)) {
+                    all = relationViewList.subList(0, 5);
+                    List<GroupsRelationView> after = relationViewList.subList(relationViewList.size() - 5, 15);
+                    all.addAll(after);
+                }
+                groupsView.setRelations(all);
+            } else {
                 groupsView.setRelations(beanSearcher.searchAll(GroupsRelationView.class, MapUtils.builder().field(GroupsRelationView::getGroupsId, groupsView.getId()).build()));
-            });
-        }
+            }
+
+        });
+        search.getDataList().sort(Comparator.comparing(GroupsView::getOrderBy));
         return GatewayResponse.SUCCESS.newBuilder().toResult(search);
     }
-
-
 }