+ Добавлены проверки на обновление/добавление/удаление номера
+ Реализовано: просмотр и удаление SMS
- Необходим рефакторинг (убрать повторяющийся код в JS), оптимизировать
- Объединить запросы в D в модули (подпапки)
This commit is contained in:
Alexander Zhirov 2023-06-03 02:28:18 +03:00
parent de17e88d37
commit ab4b8c6bad
20 changed files with 467 additions and 33 deletions

View file

@ -200,3 +200,96 @@ bool sqlInsertNumber(NumberDB number) {
}
return true;
}
SMSDB[] sqlGetSMSNumbers() {
SMSDB[] numbers;
try {
auto queryResult = pgsql.sql(
"select distinct da_to from da_sms"
);
foreach (row; queryResult) {
SMSDB data;
data.to = row["da_to"];
numbers ~= data;
}
} catch (Exception e) {
log.e("Не удалось выполнить запрос к БД. " ~ e.msg);
}
return numbers;
}
SMSDB[] sqlGetListSMS(string to) {
SMSDB[] sms;
try {
auto queryResult = pgsql.sql(
"select
da_id,
to_char(da_date, 'YYYY.MM.DD HH24:MI:SS') da_date,
da_to,
da_from,
da_text
from da_sms
where da_to = ?
order by da_date desc",
to
);
foreach (row; queryResult) {
SMSDB data;
data.id = row["da_id"].to!int;
data.date = row["da_date"];
data.to = row["da_to"];
data.from = row["da_from"];
data.text = row["da_text"];
sms ~= data;
}
} catch (Exception e) {
log.e("Не удалось выполнить запрос к БД. " ~ e.msg);
}
return sms;
}
SMSDB sqlGetSMS(int idsms) {
SMSDB data;
try {
auto queryResult = pgsql.sql(
"select
da_id,
to_char(da_date, 'YYYY.MM.DD HH24:MI:SS') da_date,
da_to,
da_from,
da_text
from da_sms
where da_id = ?",
idsms
);
foreach (row; queryResult) {
data.id = row["da_id"].to!int;
data.date = row["da_date"];
data.to = row["da_to"];
data.from = row["da_from"];
data.text = row["da_text"];
}
} catch (Exception e) {
log.e("Не удалось выполнить запрос к БД. " ~ e.msg);
}
return data;
}
bool sqlDeleteSMS(int idsms) {
try {
pgsql.sql(
"delete from da_sms where da_id = ?", idsms
);
} catch (Exception e) {
log.e("Ошибка удаления SMS в БД. " ~ e.msg);
return false;
}
return true;
}