v0.0.3
- Добавлено модальное окно редактирования номера
This commit is contained in:
parent
cf3962d71d
commit
c0290cd753
12 changed files with 294 additions and 128 deletions
|
@ -18,6 +18,7 @@ import structures;
|
|||
|
||||
import requests.listsgroups;
|
||||
import requests.groupnumbers;
|
||||
import requests.editnumber;
|
||||
|
||||
static ServerInfo serverInfo;
|
||||
|
||||
|
@ -169,10 +170,10 @@ void postReq(HTTPServerRequest req, HTTPServerResponse res) {
|
|||
|
||||
switch (query) {
|
||||
case "listsgroups":
|
||||
listsgroups(req, res);
|
||||
listsGroups(req, res);
|
||||
break;
|
||||
case "groupnumbers":
|
||||
groupnumbers(req, res);
|
||||
groupNumbers(req, res);
|
||||
break;
|
||||
// case "authorization":
|
||||
// authorization(req, res);
|
||||
|
@ -189,9 +190,9 @@ void postReq(HTTPServerRequest req, HTTPServerResponse res) {
|
|||
// case "write":
|
||||
// writeNumber(req, res);
|
||||
// break;
|
||||
// case "edit":
|
||||
// editNumber(req, res);
|
||||
// break;
|
||||
case "editnumber":
|
||||
editNumber(req, res);
|
||||
break;
|
||||
// case "update":
|
||||
// updateNumber(req, res);
|
||||
// break;
|
||||
|
|
|
@ -11,10 +11,10 @@ GroupDB[] getListGroups() {
|
|||
try {
|
||||
auto queryResult = pgsql.sql(
|
||||
"select distinct
|
||||
n.da_group,
|
||||
g.da_comment
|
||||
from da_numbers n
|
||||
left join da_groups g ON g.da_name = n.da_group"
|
||||
dan.da_group,
|
||||
dag.da_comment
|
||||
from da_numbers dan
|
||||
left join da_groups dag ON dag.da_name = dan.da_group"
|
||||
);
|
||||
foreach (row; queryResult) {
|
||||
GroupDB data;
|
||||
|
@ -43,8 +43,8 @@ NumberDB[] getListNumbers(string group) {
|
|||
dan.da_black_cc,
|
||||
dan.da_comment
|
||||
from da_numbers dan
|
||||
left join da_lists dal on dal.da_name = dan.da_list
|
||||
where da_group = ?",
|
||||
left join da_lists dal on dal.da_name = dan.da_list
|
||||
where dan.da_group = ?",
|
||||
group
|
||||
);
|
||||
foreach (row; queryResult) {
|
||||
|
@ -65,3 +65,77 @@ NumberDB[] getListNumbers(string group) {
|
|||
|
||||
return numbers;
|
||||
}
|
||||
|
||||
NumberDB getDataNumber(string number) {
|
||||
NumberDB data;
|
||||
try {
|
||||
auto queryResult = pgsql.sql(
|
||||
"select
|
||||
da_number,
|
||||
da_group,
|
||||
da_list,
|
||||
da_all_cc,
|
||||
da_white_cc,
|
||||
da_black_cc,
|
||||
da_comment
|
||||
from da_numbers
|
||||
where da_number = ?",
|
||||
number
|
||||
);
|
||||
foreach (row; queryResult) {
|
||||
data.number = row["da_number"];
|
||||
data.group = row["da_group"];
|
||||
data.list = row["da_list"];
|
||||
data.all_cc = row["da_all_cc"].to!int;
|
||||
data.white_cc = row["da_white_cc"].to!int;
|
||||
data.black_cc = row["da_black_cc"].to!int;
|
||||
data.comment = row["da_comment"];
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.e("Не удалось выполнить запрос к БД. " ~ e.msg);
|
||||
}
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
GroupDB[] getGroups() {
|
||||
GroupDB[] groups;
|
||||
try {
|
||||
auto queryResult = pgsql.sql(
|
||||
"select da_name, da_comment from da_groups"
|
||||
);
|
||||
foreach (row; queryResult) {
|
||||
GroupDB data;
|
||||
|
||||
data.name = row["da_name"];
|
||||
data.comment = row["da_comment"];
|
||||
|
||||
groups ~= data;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.e("Не удалось выполнить запрос к БД. " ~ e.msg);
|
||||
}
|
||||
|
||||
return groups;
|
||||
}
|
||||
|
||||
ListDB[] getLists() {
|
||||
ListDB[] lists;
|
||||
try {
|
||||
auto queryResult = pgsql.sql(
|
||||
"select da_name, da_comment from da_lists"
|
||||
);
|
||||
foreach (row; queryResult) {
|
||||
ListDB data;
|
||||
|
||||
data.name = row["da_name"];
|
||||
data.comment = row["da_comment"];
|
||||
|
||||
lists ~= data;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.e("Не удалось выполнить запрос к БД. " ~ e.msg);
|
||||
}
|
||||
|
||||
return lists;
|
||||
}
|
||||
|
|
15
source/requests/editnumber.d
Normal file
15
source/requests/editnumber.d
Normal file
|
@ -0,0 +1,15 @@
|
|||
module requests.editnumber;
|
||||
|
||||
import vibe.vibe;
|
||||
import response;
|
||||
import data;
|
||||
import singlog;
|
||||
|
||||
void editNumber(HTTPServerRequest req, HTTPServerResponse res) {
|
||||
auto jsr = req.json;
|
||||
bool edit = true;
|
||||
auto dataNumber = getDataNumber(jsr["number"].get!string);
|
||||
auto groups = getGroups();
|
||||
auto lists = getLists();
|
||||
render!("edit-number.dt", edit, dataNumber, groups, lists)(res);
|
||||
}
|
|
@ -5,7 +5,7 @@ import response;
|
|||
import data;
|
||||
import singlog;
|
||||
|
||||
void groupnumbers(HTTPServerRequest req, HTTPServerResponse res) {
|
||||
void groupNumbers(HTTPServerRequest req, HTTPServerResponse res) {
|
||||
auto jsr = req.json;
|
||||
res.writeJsonBody(getListNumbers(jsr["group"].get!string).serializeToJson());
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@ import vibe.vibe;
|
|||
import response;
|
||||
import data;
|
||||
|
||||
void listsgroups(HTTPServerRequest req, HTTPServerResponse res) {
|
||||
void listsGroups(HTTPServerRequest req, HTTPServerResponse res) {
|
||||
auto listGroups = getListGroups();
|
||||
render!("group-numbers-list.dt", listGroups)(res);
|
||||
}
|
||||
|
|
|
@ -22,6 +22,11 @@ struct GroupDB {
|
|||
string comment;
|
||||
}
|
||||
|
||||
struct ListDB {
|
||||
string name;
|
||||
string comment;
|
||||
}
|
||||
|
||||
struct NumberDB {
|
||||
string number;
|
||||
string group;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue