rocket-a


git -C '/home/opc/rocketa.git' show 2c52faf -- oci_func/click/func.py

commit 2c52faf0656e662f272318d3a3924c20b8f22cae
Author: Satoshi Ujihara <satoshi_ujihara@fivegate.jp>
Date:   Wed Oct 22 12:37:41 2025 +0900

    エラーコードを追加

diff --git a/oci_func/click/func.py b/oci_func/click/func.py
index 346a71a..a0b986b 100644
--- a/oci_func/click/func.py
+++ b/oci_func/click/func.py
@@ -97,19 +97,19 @@ def handler(ctx, data: io.BytesIO = None):
     if query_params.get('ad_id') is not None:
         ad_id = query_params.get('ad_id', [None])[0]
     else:
-        error = 1
+        error = 101
 
     if query_params.get('client_id') is not None:
         client_id = query_params.get('client_id', [None])[0]
 
     else:
-        error = 1
+        error = 102
 
     if query_params.get('media_id') is not None:
         media_id = query_params.get('media_id', [None])[0]
 
     else:
-        error = 1
+        error = 103
 
     if query_params.get('media_uid') is not None:
         uid = query_params.get('media_uid', [None])[0]
@@ -219,7 +219,7 @@ def handler(ctx, data: io.BytesIO = None):
                 if dv_pc == 0:
                     error = 2
         else:
-            error = 1
+            error = 301
 
 
         
@@ -386,11 +386,11 @@ def handler(ctx, data: io.BytesIO = None):
 
         else:
             #報酬額データがない
-            error=1
+            error=302
 
     #報酬額データがない
     if net_price is None or net_price_unit is None or gross_price is None or gross_price_unit is None:
-        error=1
+        error=302
         logging.info(f"■■■424■■■■報酬額ない")
     # sidと遷移情報を保存
     if error == 0:
@@ -451,7 +451,7 @@ def handler(ctx, data: io.BytesIO = None):
         logging.info(f"■■■445■■■{text(sql_query)}")
         # トランザクションをコミットして変更を永続化
         connection.commit()
-
+        """
         # 広告ページへ遷移
         if '?' in url:
             # ソケット通信の時はパラメータはデフォ
@@ -561,26 +561,58 @@ def handler(ctx, data: io.BytesIO = None):
 
         if uid != '' and int(result_method) != 4:
             url += '&media_uid=' + uid
+        """
+        params = {
+            "sid": sid,
+            "ad_id": ad_id,
+            "client_id": client_id,
+            "media_id": media_id,
+        }
 
-        logging.info(f"■■■917■■■{url}")
-        return response.Response(
-            ctx,
-            status_code=302, 
-            headers={"Location": url}
-        )
+        formatter = string.Formatter()
+        fields = [fname for _, fname, _, _ in formatter.parse(url) if fname]
+        missing = [f for f in fields if f not in params]
+        if missing:
+            params = {
+                "sid": sid,
+                "ad_id": ad_id,
+                "client_id": client_id,
+                "media_id": media_id,
+                "media_uid": uid,
+            }
+            formatter = string.Formatter()
+            fields = [fname for _, fname, _, _ in formatter.parse(url) if fname]
+            missing = [f for f in fields if f not in params]
 
-    else:
-        # エラーページへ遷移
-        error_page = 'https://api.rocket-a.com/service/error'
-        if error == 2:
-            error_page = 'https://api.rocket-a.com/service/device_error'
+            if missing or uid == '':
+                error = 401
+                logging.info(f"■■■589■■■パラメータエラー")
+            else:
+                url = url.format(sid=sid, ad_id=ad_id, client_id=client_id, media_id=media_id, media_uid=uid)
+        else:
+            url = url.format(sid=sid, ad_id=ad_id, client_id=client_id, media_id=media_id)
 
+        logging.info(f"■■■595■■■{url}")
 
-        return response.Response(
-            ctx,
-            status_code=302, 
-            headers={"Location": error_page}
-        )
+        if error == 0:
+            return response.Response(
+                ctx,
+                status_code=302, 
+                headers={"Location": url}
+            )
+
+    
+    # エラーページへ遷移
+    error_page = 'https://api.rocket-a.com/service/error?error=' + str(error)
+    if error == 2:
+        error_page = 'https://api.rocket-a.com/service/device_error'
+
+
+    return response.Response(
+        ctx,
+        status_code=302, 
+        headers={"Location": error_page}
+    )
 
 '''
         # testdic = click_data._asdict()

diff.txt · 最終更新: by root