ck před 4 roky
rodič
revize
c84934e0ec

+ 4 - 3
data_manage/public_analysis.py

@@ -5,17 +5,18 @@ from model.CommonUtils import *
 du = DateUtils()
 log = logger()
 
-def book_rank(start,end,book,stage,page,page_size,order_by,order):
+def book_rank(start,end,book,stage,type,page,page_size,order_by,order):
     db=MysqlUtils()
     op1=f" and book='{book}'" if book else ''
     op2 = f" and dt>='{start}' " if start else ''
     op3 = f" and dt<='{end}' " if end else ''
     op4 = f" order by {order_by} {order}" if order_by and order else ''
     op5=f" and stage='{stage}'" if stage else ''
+    op6=f" and type={type}" if type else ''
 
     sql=f"""select 
 concat(DATE_FORMAT(min(dt),'%Y/%m/%d') ,'~',DATE_FORMAT(max(dt),'%Y/%m/%d')) date,
-pitcher,book,stage,
+pitcher,book,stage,type,
 sum(cost) cost,
 sum(view_count) view_count,
 sum(click_count) click_count,
@@ -27,7 +28,7 @@ sum(first_order_amount) first_amount,
 sum(reg_order_amount) reg_amount,
 round(sum(first_order_amount)/sum(cost),4) first_roi,
 round(sum(reg_order_amount)/sum(cost),4) roi
-from dw_channel where 1=1 {op1} {op2} {op3} {op5} GROUP BY channel,book,pitcher,stage
+from dw_channel where 1=1 {op1} {op2} {op3} {op5} GROUP BY channel,book,pitcher,stage,type
  {op4}"""
     print(sql)
     return getLimitData(db.dm,sql,page,page_size)

+ 2 - 1
handlers/PublicAnalysisHandler.py

@@ -13,6 +13,7 @@ class BookRank(BaseHandler):
         date_range=arg.get("date_range")
         book=arg.get("book")
         stage=arg.get("stage")
+        type=arg.get("type")
         page = arg.get("page",1)
         page_size = arg.get("page_size",30)
         order_by = arg.get("order_by", 'cost')
@@ -20,7 +21,7 @@ class BookRank(BaseHandler):
         if date_range:
             end=self.get_n_days(0)
             start=self.get_n_days(-int(date_range)+1)
-        data,total=book_rank(start,end,book,stage,page,page_size,order_by,order)
+        data,total=book_rank(start,end,book,stage,type,page,page_size,order_by,order)
         self.write_json(data=data,total=total)