ck 4 년 전
부모
커밋
ae9b368d19
4개의 변경된 파일47개의 추가작업 그리고 34개의 파일을 삭제
  1. 9 3
      app/etl/data_stat_run.py
  2. 0 31
      app/etl/ods/ods_book_info_daily.py
  3. 0 0
      app/etl/src/__init__.py
  4. 38 0
      app/etl/src/src_book_info.py

+ 9 - 3
app/etl/data_stat_run.py

@@ -6,7 +6,7 @@ from sync_to_ck_task import *
 from app.etl.dm.dm_pitcher_daily_overview import dm_pitcher_daily_overview
 from app.etl.dw.dw_channel_daily import dw_daily_channel,dw_channel
 from app.etl.dw.dw_pitcher_daily import dw_pitcher_trend
-from app.etl.ods.ods_book_info_daily import book_info_daily
+from app.etl.src.src_book_info import src_book_info
 log=logger()
 du = DateUtils()
 
@@ -22,7 +22,6 @@ def do_cost(st,et):
         print(i)
         channel_by_account_daily(i)
         channel_info_daily(i)
-        # book_info_daily(i)
         dw_daily_channel_cost(i)
         dw_order_channel_cost_sync_ck(i)
 
@@ -31,6 +30,7 @@ def main(st,et):
     try:
         do_order(st,et)
         do_cost(st,et)
+        src_book_info()  # 书籍卡点信息
         dw_daily_channel()
         dw_channel()
         dw_pitcher_trend()
@@ -54,4 +54,10 @@ def daily():
 
 
 if __name__ == '__main__':
-    hourly()
+    # hourly()
+    do_cost('2019-09-01','2021-01-01')
+
+
+
+
+    # do_order('2020-10-29','2021-02-03')

+ 0 - 31
app/etl/ods/ods_book_info_daily.py

@@ -1,31 +0,0 @@
-
-import time
-from model.DateUtils import DateUtils
-from model.DataBaseUtils import MysqlUtils,CkUtils
-du = DateUtils()
-db= MysqlUtils()
-ck = CkUtils()
-
-
-def book_info_daily(ymd):
-
-    sql=f"""SELECT '{ymd}' dt,b.book_name book,c.platform_name  platform,node_price require_roi,ratio require_mult from
-(
-select y.platform_book_id,node_price,ratio FROM
-(select max(create_time) create_time,platform_book_id from t_platform_book_ratio where effect_day<='{ymd}' and del_flag=0 GROUP BY platform_book_id ) x
-left join t_platform_book_ratio y on x.platform_book_id=x.platform_book_id 
-and x.create_time=y.create_time
-) a
-left join t_platform_book b on a.platform_book_id=b.id 
-left join t_platform_novel c on b.platform_id=c.id 
-    """
-    data =db.zx.getData(sql)
-    print(data)
-    db.quchen_text.executeMany("replace into ods_book_info_daily values(%s,%s,%s,%s,%s)",data)
-
-
-if __name__ == '__main__':
-    # get_book_info('2021-01-28')
-    book_info_daily()
-
-

+ 0 - 0
app/etl/src/__init__.py


+ 38 - 0
app/etl/src/src_book_info.py

@@ -0,0 +1,38 @@
+
+import time
+from model.DateUtils import DateUtils
+from model.DataBaseUtils import MysqlUtils,CkUtils
+du = DateUtils()
+db= MysqlUtils()
+ck = CkUtils()
+
+def src_book_info():
+    sql="""SELECT  date_format(a.effect_day,'%Y-%m-%d'),a.type,b.book_name,c.platform_name,a.node_price from t_platform_book_ratio a 
+            left join  t_platform_book b on a.platform_book_id=b.id 
+            left join t_platform_novel c on b.platform_id=c.id """
+
+    data =db.zx.getData(sql)
+
+    di={}
+    for i in data:
+        thedate = i[0]
+        while True:
+            if thedate>du.get_n_days(0):
+                break
+            else:
+                di[thedate+','+i[1]+','+i[2]+','+i[3]]=i[4]
+                thedate=du.add_days(thedate,1)
+
+    li=[]
+    for i,j in di.items():
+        li.append(i.split(',')+[j])
+    db.dm.execute("truncate table src_book_info")
+    db.dm.executeMany("insert into src_book_info values (%s,%s,%s,%s,%s)",li)
+
+
+
+if __name__ == '__main__':
+
+    src_book_info()
+
+