+ Реализовано: обновление/добавление/удаление номера
+ Добавлена кнопка обновления активной вкладки
- Доработать проверки на обновление/добавление/удаление номера
This commit is contained in:
Alexander Zhirov 2023-06-02 00:36:21 +03:00
parent c0290cd753
commit de17e88d37
13 changed files with 283 additions and 56 deletions

View file

@ -6,7 +6,7 @@ import structures;
import std.conv;
GroupDB[] getListGroups() {
GroupDB[] sqlGetListGroups() {
GroupDB[] groups;
try {
auto queryResult = pgsql.sql(
@ -31,7 +31,7 @@ GroupDB[] getListGroups() {
return groups;
}
NumberDB[] getListNumbers(string group) {
NumberDB[] sqlGetListNumbers(string group) {
NumberDB[] numbers;
try {
auto queryResult = pgsql.sql(
@ -44,7 +44,8 @@ NumberDB[] getListNumbers(string group) {
dan.da_comment
from da_numbers dan
left join da_lists dal on dal.da_name = dan.da_list
where dan.da_group = ?",
where dan.da_group = ?
order by dan.da_number",
group
);
foreach (row; queryResult) {
@ -66,7 +67,7 @@ NumberDB[] getListNumbers(string group) {
return numbers;
}
NumberDB getDataNumber(string number) {
NumberDB sqlGetDataNumber(string number) {
NumberDB data;
try {
auto queryResult = pgsql.sql(
@ -98,7 +99,7 @@ NumberDB getDataNumber(string number) {
return data;
}
GroupDB[] getGroups() {
GroupDB[] sqlGetGroups() {
GroupDB[] groups;
try {
auto queryResult = pgsql.sql(
@ -119,7 +120,7 @@ GroupDB[] getGroups() {
return groups;
}
ListDB[] getLists() {
ListDB[] sqlGetLists() {
ListDB[] lists;
try {
auto queryResult = pgsql.sql(
@ -139,3 +140,63 @@ ListDB[] getLists() {
return lists;
}
bool sqlUpdateNumber(NumberDB number) {
try {
pgsql.sql(
"update da_numbers set
da_group = ?,
da_list = ?,
da_all_cc = ?,
da_white_cc = ?,
da_black_cc = ?,
da_comment = ?
where da_number = ?",
number.group,
number.list,
number.all_cc,
number.white_cc,
number.black_cc,
number.comment,
number.number
);
} catch (Exception e) {
log.e("Ошибка обновления номера в БД. " ~ e.msg);
return false;
}
return true;
}
bool sqlDeleteNumber(string number) {
try {
pgsql.sql(
"delete from da_numbers where da_number = ?", number
);
} catch (Exception e) {
log.e("Ошибка удаления номера в БД. " ~ e.msg);
return false;
}
return true;
}
bool sqlInsertNumber(NumberDB number) {
try {
pgsql.sql(
"insert into da_numbers
(da_number, da_group, da_list, da_all_cc, da_white_cc, da_black_cc, da_comment)
values
(?, ?, ?, ?, ?, ?, ?)",
number.number,
number.group,
number.list,
number.all_cc,
number.white_cc,
number.black_cc,
number.comment
);
} catch (Exception e) {
log.error("Ошибка добавления номера телефона в БД. " ~ e.msg);
return false;
}
return true;
}