From 5486b31f27e44fe28c4d909ced511daf6daefc54 Mon Sep 17 00:00:00 2001 From: "CHIEFSOFT\\ameye" Date: Sun, 17 Nov 2024 11:51:37 -0500 Subject: [PATCH] promo add list --- wrenchboard/src/shared_tool/market.cc | 43 ++++++++++++++++++++++++++ www-api/app/Config/Constants.php | 2 +- www-api/app/Controllers/PromoAdmin.php | 2 ++ 3 files changed, 46 insertions(+), 1 deletion(-) diff --git a/wrenchboard/src/shared_tool/market.cc b/wrenchboard/src/shared_tool/market.cc index b57526aa..07389e94 100644 --- a/wrenchboard/src/shared_tool/market.cc +++ b/wrenchboard/src/shared_tool/market.cc @@ -18,6 +18,7 @@ long WrenchMarketImport(CVars in, CVars &out); long WrenchPromoLoad(CVars in, CVars &out); long WrenchPromoAdminLogin(CVars in, CVars &out); +long WrenchPromoAddList(CVars in, CVars &out); long market_calls(CVars in, CVars &out) { logfmt(logINFO, "market_calls()"); @@ -38,6 +39,10 @@ long market_calls(CVars in, CVars &out) { case WRENCHBOARD_PROMOADMIN_LOGIN: return WrenchPromoAdminLogin(in, out); break; + //const WRENCHBOARD_PROMOADMIN_ADDLIST = 220015; + case WRENCHBOARD_PROMOADMIN_ADDLIST: + return WrenchPromoAddList(in, out); + break; } } catch (bad_parameter) { @@ -47,6 +52,44 @@ long market_calls(CVars in, CVars &out) { return ret; } +long WrenchPromoAddList(CVars in, CVars &out){ +logfmt(logINFO, "WrenchPromoAdminLogin()"); + char vname[30]; + long ret = PHP_API_BAD_PARAM; + CVars x; + + try { + REQ_STRING (in, "email", 5, 49, "(.*)"); + REQ_STRING (in, "firstname", 5, 25, "(.*)"); + REQ_STRING (in, "lastname", 5, 25, "(.*)"); + long admin_id = REQ_LONG(in, "promo_admin_id", 1, -1); + REQ_STRING (in, "admin_uid", 5, 19, "(.*)"); + OPTIONAL( in, "loc" ) REQ_STRING (in, "loc", 3, 15, "(.*)"); + + ret = load_db_record( out, "SELECT *,id AS promo_admin_id FROM promo_admin WHERE status=1 AND id=%lu AND uid::text='%s'", admin_id, in["uid"].c_str() ); + if (ret && out["promo_admin_id"].Long() > 0) { + + x["admin_id"] = admin_id; x["admin_id"].set_valid(true); + x["email"] = in["email"]; x["email"].set_valid(true); + x["firstname"] = in["firstname"]; x["firstname"].set_valid(true); + x["loc"] = in["loc"]; x["loc"].set_valid(true); + long sid = insert_db_record(DBS_VALID, "promo_member", "promo_member_id_seq", x); + + + // there will be promo action + + // pgsql_query("UPDATE promo_admin SET updated=now() WHERE id=%lu", out["promo_admin_id"].Long()); + ret = PHP_API_OK; + out["status"] = "OK"; + } + + } catch (bad_parameter) { + logfmt(logINFO, "ERROR CALL long WrenchMarketImport(CVars in, CVars &out)"); + } + logfmt(logINFO, "/WrenchPromoAdminLogin()"); + return ret; +} + long WrenchPromoAdminLogin(CVars in, CVars &out){ logfmt(logINFO, "WrenchPromoAdminLogin()"); char vname[30]; diff --git a/www-api/app/Config/Constants.php b/www-api/app/Config/Constants.php index 71e255b2..89ff6be6 100644 --- a/www-api/app/Config/Constants.php +++ b/www-api/app/Config/Constants.php @@ -482,6 +482,6 @@ const WRENCHBOARD_MARKET_PLAN01_START = 220001; const WRENCHBOARD_MARKET_PLAN01_NEXT1 = 220003; const WRENCHBOARD_PROMOADMIN_LOGIN = 220010; - +const WRENCHBOARD_PROMOADMIN_ADDLIST = 220015; const WRENCHBOARD_MARKET_END = 229999; diff --git a/www-api/app/Controllers/PromoAdmin.php b/www-api/app/Controllers/PromoAdmin.php index eba9df0a..fb45bf8c 100644 --- a/www-api/app/Controllers/PromoAdmin.php +++ b/www-api/app/Controllers/PromoAdmin.php @@ -22,6 +22,8 @@ class PromoAdmin extends BaseController $raw_json = file_get_contents('php://input'); $in = json_decode($raw_json, true); $out = []; + $in["action"] = WRENCHBOARD_PROMOADMIN_ADDLIST; + $ret = $this->wrenchboard->wrenchboard_api($in, $out); return $this->respond( $this->summaryReturnData($in,$out), 200); }