Family Request
This commit is contained in:
@@ -130,6 +130,7 @@ long test() {
|
||||
long WrenchTestWalletCapability(CVars in, CVars &out);
|
||||
long WrenchImportContacts(CVars in, CVars &out);
|
||||
long WrenchRequestVirtualCard(CVars in, CVars &out);
|
||||
long WrenchRequestFamilyVirtualCard(CVars in, CVars &out);
|
||||
|
||||
long account_calls(CVars in, CVars &out) {
|
||||
logfmt(logINFO, "account_calls()");
|
||||
@@ -511,12 +512,69 @@ long account_calls(CVars in, CVars &out) {
|
||||
case WRENCHBOARD_VIRTUAL_CARDADD:
|
||||
return WrenchRequestVirtualCard(in, out);
|
||||
break;
|
||||
|
||||
case WRENCHBOARD_VIRTUAL_FAMILY_CARD:
|
||||
return WrenchRequestFamilyVirtualCard(in, out);
|
||||
break;
|
||||
}
|
||||
logfmt(logINFO, "/account_calls()");
|
||||
return ret;
|
||||
}
|
||||
|
||||
#define PHP_API_TRANSFER_COMPLETE 200
|
||||
#define PHP_API_TRANSFER_COMPLETE 200
|
||||
|
||||
long WrenchRequestFamilyVirtualCard(CVars in, CVars &out) {
|
||||
CVars x;
|
||||
long ret = PHP_API_BAD_PARAM;
|
||||
logfmt(logINFO, "long WrenchRequestFamilyVirtualCard(CVars in, CVars out)");
|
||||
|
||||
try{
|
||||
long member_id = REQ_LONG(in, "member_id", 1, -1);
|
||||
long request_type = REQ_LONG(in, "request_type", 1, -1);
|
||||
|
||||
REQ_STRING(in, "uid", 20, 100, "(.*)");
|
||||
REQ_STRING(in, "family_uid", 20, 100, "(.*)");
|
||||
REQ_STRING(in, "address", 5, 150, "(.*)");
|
||||
REQ_STRING(in, "city", 2, 50, "(.*)");
|
||||
REQ_STRING(in, "state", 1, 15, "(.*)");
|
||||
REQ_STRING(in, "country", 1, 3, "(.*)");
|
||||
REQ_STRING(in, "postal_code", 1, 10, "(.*)");
|
||||
REQ_STRING(in, "phone_number", 5, 15, "(.*)");
|
||||
|
||||
long dob_day = REQ_LONG(in, "dob_day", 1, -1);
|
||||
long dob_month = REQ_LONG(in, "dob_month", 1, -1);
|
||||
long dob_year = REQ_LONG(in, "dob_year", 1, -1);
|
||||
|
||||
const PGresult *res = pgsql_query("SELECT m.uid::text AS target_uid FROM members_family f LEFT JOIN members m ON m.id = f.family_member_id WHERE f.uid::text='%s'", in["family_uid"].c_str());
|
||||
if (res != NULL && pgsql_num_rows(res) > 0) {
|
||||
map<const char*, const char*>f = pgsql_fetch_assoc(res, 0);
|
||||
CVars rec;
|
||||
map_to_cvars(f, rec);
|
||||
|
||||
x["member_id"] = member_id; x["member_id"].set_valid(true);
|
||||
x["member_uid"] = in["uid"]; x["member_uid"].set_valid(true);
|
||||
x["target_uid"] = rec["target_uid"]; x["target_uid"].set_valid(true); //
|
||||
x["address"] = in["address"]; x["address"].set_valid(true);
|
||||
x["request_type"] = in["request_type"]; x["request_type"].set_valid(true);
|
||||
x["city"] = in["city"]; x["city"].set_valid(true);
|
||||
x["state"] = in["state"]; x["state"].set_valid(true);
|
||||
x["country"] = in["country"]; x["country"].set_valid(true);
|
||||
x["postal_code"] = in["postal_code"]; x["postal_code"].set_valid(true);
|
||||
x["phone_number"] = in["phone_number"]; x["phone_number"].set_valid(true);
|
||||
x["dob_day"] = in["dob_day"]; x["dob_day"].set_valid(true);
|
||||
x["dob_month"] = in["dob_month"]; x["dob_month"].set_valid(true);
|
||||
x["dob_year"] = in["dob_year"]; x["dob_year"].set_valid(true);
|
||||
return WrenchRequestVirtualCard( x, out );
|
||||
} else {
|
||||
|
||||
|
||||
|
||||
}
|
||||
} catch (bad_parameter) {
|
||||
out["status"] = "ERROR";
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
long WrenchRequestVirtualCard(CVars in, CVars &out) {
|
||||
CVars x;
|
||||
|
||||
@@ -401,10 +401,10 @@ long AssignVirtualCardWallet(CVars in,CVars out){
|
||||
REQ_STRING(in, "request_uid", 12, 160, "(.*)");
|
||||
long request_id = REQ_LONG(in, "request_id", 0, -1);
|
||||
|
||||
if ( load_db_record( y, "SELECT * FROM members_card_request WHERE status = %lu AND uid::text ='%s' AND id =%lu",CARD_ACTIVATE_CARD, in["request_uid"].c_str(),request_id ) > 0 )
|
||||
if ( load_db_record( y, "SELECT r.*,m.id AS target_member_id FROM members_card_request r LEFT JOIN members m ON m.uid::text=r.target_uid::text WHERE r.status = %lu AND r.uid::text ='%s' AND r.id =%lu",CARD_ACTIVATE_CARD, in["request_uid"].c_str(),request_id ) > 0 )
|
||||
{
|
||||
CVars x;
|
||||
x["member_id"] = y["member_id"]; x["member_id"].set_valid( true );
|
||||
x["member_id"] = y["target_member_id"]; x["member_id"].set_valid( true );
|
||||
x["currency"] = "VUSD"; x["currency"].set_valid( true );
|
||||
x["transfer_limit"] = "100000"; x["transfer_limit"].set_valid( true );
|
||||
x["card_issue_id"] = y["card_issue_id"]; x["card_issue_id"].set_valid( true );
|
||||
|
||||
Reference in New Issue
Block a user