Browse Source

Merge branch 'master' of https://gogs.tjp.com.cn/maoming/python-fastapi-mm-zhcs-yj-api

libushang 6 days ago
parent
commit
01e2d75242
1 changed files with 47 additions and 8 deletions
  1. 47 8
      routers/api/videoResource/videoinfo.py

+ 47 - 8
routers/api/videoResource/videoinfo.py

@@ -21,7 +21,9 @@ router = APIRouter()
 
 
 @router.get("/video/region/tree/{parent_id}")
-def read_all_regions(parent_id:str = 'root00000000',db: Session = Depends(get_db)):
+def read_all_regions(parent_id:str = '0',
+                    user_id=Depends(valid_access_token),
+                     db: Session = Depends(get_db)):
     def parent_id_get_region_info(parent_id):
         query = db.query(TPVideoRegion)
         query = query.filter(TPVideoRegion.parentIndexCode == parent_id)
@@ -30,20 +32,57 @@ def read_all_regions(parent_id:str = 'root00000000',db: Session = Depends(get_db
         query = db.query(TPVideoRegion)
         query = query.filter(TPVideoRegion.indexCode == id)
         return query.first()
+    def unint_id_get_video_list(unint_id):
+        query = db.query(TPVideoInfo)
+        query = query.filter(TPVideoInfo.unitIndexCode==unint_id)
+        return query.all()
     try:
-        region_info = id_get_region_info(parent_id)
+        # region_info = id_get_region_info(parent_id)
         region_list = parent_id_get_region_info(parent_id)
+        user_video_list = []
+        video_list = unint_id_get_video_list(parent_id)
         data = []
         for info in region_list:
-            isShowSelect = True
-            if parent_id_get_region_info(info.indexCode):
-                isShowSelect=False
+            isShowSelect1 = True
+            if parent_id_get_region_info(info.indexCode) or unint_id_get_video_list(info.indexCode):
+                isShowSelect1=False
             if info.indexCode=='84021e2f6eba4e6b8ccc7d750fb833fa':
                 continue
+
             data.append({'id': info.indexCode,
-                'label': info.name,
-                'isShowSelect': isShowSelect,
-                'parentLabel': region_info.name})
+                             'label': info.name,
+                             'isShowSelect': isShowSelect1,
+                            "isVideo":False
+                             })
+        if video_list:
+            videoIds = user_id_get_user_videoIds(db, user_id)
+            user_video_list = [i.video_code_int for i in videoIds]
+        for video in  video_list:
+            tag_list = get_video_tag_list(db, video.gbIndexCode)
+            tag = []
+            tag_lable = []
+            for info in tag_list:
+                tag_info = get_dict_data_info(db, 'video_type', info.dict_value)
+                if tag_info:
+                    if tag_info.dict_label not in tag_lable and tag_info.dict_label != '全量视频':
+                        tag.append({"id": info.id,
+                                    "video_code": video.gbIndexCode,
+                                    "dict_type": info.dict_type,
+                                    "dict_value": info.dict_value,
+                                    "dict_label": tag_info.dict_label,
+                                    "dict_code": tag_info.dict_code})
+                        tag_lable.append(tag_info.dict_label)
+            data.append({'id': video.gbIndexCode,
+                         'label': video.name,
+                         'isShowSelect': True,
+                         "isVideo":True,
+
+                         "isUserVideos":video.gbIndexCode in user_video_list,
+                         "video_code": video.gbIndexCode,
+                         "isTag" : len(tag_list)>0,
+                         "tag" : tag,
+                         "tagLabels" : "、".join(tag_lable),
+                         })
         return {
                 "code": 200,
                 "msg": "成功",