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