Notifications

This commit is contained in:
CHIEFSOFT\ameye
2023-12-09 10:45:38 -05:00
parent 20d20843d8
commit d60dd65078
6 changed files with 82 additions and 15 deletions
+5 -1
View File
@@ -340,7 +340,11 @@ long account_calls(CVars in, CVars &out) {
case WRENCHBOARD_ACCOUNT_PENDJOB: // user pending job
return WrenchReturnPendingJobList(in, out);
break;
case WRENCHBOARD_ACCT_NOTIFICATIONS:
return WrenchReturnMemberNotifications(in, out);
break;
case WRENCHBOARD_ACCOUNT_DASHDATA:
return WrenchLoadDashData(in, out);
break;
@@ -14,7 +14,67 @@
#include "payments.h"
#include "account.h"
long WrenchReturnMemberNotifications(CVars in, CVars &out){
/*
wrenchboard=> SELECT uid,icon,msg,added FROM members_notification WHERE member_id = 224 ORDER BY id DESC LIMIT 20;
uid | icon | msg | added
--------------------------------------+-----------+---------------------------------------------------------+----------------------------
ea666d19-fc60-46a0-810c-1adafffd34f8 | alert.svg | You have received a new offer waiting for you to start! | 2023-12-08 04:40:32.205169
5374d9d4-87cf-4c2b-b374-48da88b917f3 | alert.svg | You have received a new offer waiting for you to start! | 2023-12-07 22:40:05.01972
98d0d413-eb1f-4f5e-b11b-ad8ef8a819c6 | alert.svg | You have received a new offer waiting for you to start! | 2023-12-07 16:40:01.842667
(3 rows)
*/
logfmt(logINFO, "WrenchReturnMemberNotifications()");
char vname[30];
long ret = PHP_API_BAD_PARAM;
try {
long limit = REQ_LONG(in, "limit", 1, -1);
long member_id = REQ_LONG(in, "member_id", 1, -1);
REQ_LONG(in, "page", 1, -1);
out["total_record"] = "0";
const PGresult *res;
res = pgsql_query("SELECT uid,icon,msg,added FROM members_notification WHERE member_id = %lu ORDER BY id DESC LIMIT 20", in["member_id"].Long(),limit);
if (res != NULL && pgsql_num_rows(res) > 0) {
out["total_record"] = pgsql_num_rows(res);
for (int i = 0, n = pgsql_num_rows(res); i < n; i++) {
map<const char*, const char*>f = pgsql_fetch_assoc(res, i);
if (f.empty()) continue;
CVars rec;
map_to_cvars(f, rec);
snprintf(vname, sizeof (vname), "uid_%05d", i);
out[vname] = rec["uid"];
snprintf(vname, sizeof (vname), "icon_%05d", i);
out[vname] = rec["icon"];
snprintf(vname, sizeof (vname), "msg_%05d", i);
out[vname] = rec["msg"];
snprintf(vname, sizeof (vname), "added_%05d", i);
out[vname] = rec["added"];
}
}
ret = PHP_API_OK;
out["status"] = "OK";
} catch (bad_parameter) {
logfmt(logINFO, "ERROR CALL long WrenchReturnMemberNotifications(CVars in, CVars &out)");
}
logfmt(logINFO, "/WrenchReturnMemberNotifications()");
return ret;
return 0;
}
long WrenchReturnMemberBankAccount(CVars in, CVars &out) {
logfmt(logINFO, "WrenchReturnMemberBankAccount()");