Пример #1
0
        public ActionResult <List <Organization> > Get()
        {
            var db = new SmartPulseContext();
            List <Organization> organizations = db.Organizations.OrderBy(x => x.organizationName).ToList();

            return(Ok(organizations));
        }
Пример #2
0
        public IActionResult Post([FromBody] SavedGrid grid)
        {
            var auth  = new AuthenticationController();
            var db    = new SmartPulseContext();
            var token = Request.Cookies["token"];
            var user  = auth.isLogin(token);

            if (user != null)
            {
                var exist = db.SavedGrids.FirstOrDefault(g => g.name == grid.name && g.user.email == user.email);
                if (exist != null)
                {
                    exist.header = grid.header;
                    exist.rows   = grid.rows;
                    db.SaveChanges();
                    return(Ok(new { message = "success" }));
                }
                var thisUser = db.Users.FirstOrDefault(u => u.email == user.email);
                grid.user = thisUser;
                db.SavedGrids.Add(grid);
                db.SaveChanges();
                return(Ok(new { message = "success" }));
            }
            return(Unauthorized(new { message = "unauthorized" }));
        }
Пример #3
0
        public IActionResult Get(string name)
        {
            var auth  = new AuthenticationController();
            var db    = new SmartPulseContext();
            var token = Request.Cookies["token"];
            var user  = auth.isLogin(token);

            if (user != null)
            {
                if (name != null)
                {
                    var watchList = db.WatchLists.Where(w => w.user == user && w.name == name).FirstOrDefault();
                    if (watchList != null)
                    {
                        return(Ok(new { name = watchList.name, json = watchList.json }));
                    }
                }
                else
                {
                    var           watchList  = db.WatchLists.Where(w => w.user == user).ToList();
                    List <string> watchNames = new List <string>();
                    foreach (var item in watchList)
                    {
                        watchNames.Add(item.name);
                    }
                    return(Ok(watchNames));
                }
                return(NotFound(new { message = "name not found" }));
            }

            return(Unauthorized(new { message = "failed" }));
        }
Пример #4
0
        public IActionResult Post([FromBody] User user)
        {
            Thread.Sleep(3000);
            var db   = new SmartPulseContext();
            var temp = db.Users.Where(u => u.token == user.token).FirstOrDefault();

            if (temp != null)
            {
                temp.token = "";
                db.SaveChanges();
                Response.Cookies.Append("token", "");
                return(Ok(new { message = "success" }));
            }
            return(Ok(new { message = "error" }));
        }
Пример #5
0
        public ActionResult <List <OrganizationShortDefine> > Get(string etso)
        {
            var db = new SmartPulseContext();

            string[] etsos = etso.Split(",");
            List <OrganizationShortDefine> listOfCentrals = new List <OrganizationShortDefine>();

            foreach (var etsoCode in etsos)
            {
                Organization organization = db.Organizations.Where(x => x.organizationETSOCode == etsoCode).FirstOrDefault();
                if (organization != null) // If there is an existing organization with this etso code
                {
                    string centrals;
                    if (db.Centrals.Where(x => x.organization == organization).ToList().Count() == 0)
                    {
                        centrals = Api.GetRequest($"https://seffaflik.epias.com.tr/transparency/service/production/dpp-injection-unit-name?organizationEIC={etsoCode}");
                        if (centrals == "-1")
                        {
                            continue;
                        }
                        JsonElement units = JsonDocument.Parse(centrals).RootElement.GetProperty("body").GetProperty("injectionUnitNames");

                        foreach (var item in units.EnumerateArray())
                        {
                            Central temp = JsonSerializer.Deserialize <Central>(item.GetRawText());
                            temp.organization = organization;
                            db.Centrals.Add(temp);
                            db.SaveChanges();
                        }
                    }
                    List <Central> centralList = db.Centrals.Where(x => x.organization == organization).Select(s => new Central
                    {
                        id   = s.id,
                        name = s.name,
                        eic  = s.eic
                    }).ToList();
                    OrganizationShortDefine centralTemp = new OrganizationShortDefine
                    {
                        centrals = centralList,
                        name     = organization.organizationName,
                        etso     = organization.organizationETSOCode
                    };
                    listOfCentrals.Add(centralTemp);
                }
            }

            return(Ok(listOfCentrals));
        }
Пример #6
0
        public IActionResult Post()
        {
            var auth  = new AuthenticationController();
            var db    = new SmartPulseContext();
            var token = Request.Cookies["token"];
            var user  = auth.isLogin(token);

            if (user != null)
            {
                var grids = db.SavedGrids.Where(g => g.user.email == user.email).Select(s => new
                {
                    name = s.name
                }).ToList();
                return(Ok(grids));
            }
            return(Unauthorized(new { message = "unauthorized" }));
        }
Пример #7
0
        public IActionResult Post([FromBody] User user)
        {
            var db = new SmartPulseContext();

            if (user.email == null || user.email == "" || !new EmailAddressAttribute().IsValid(user.email))
            {
                return(BadRequest(new { message = "email is invalid" }));
            }
            if (user.name == null || user.name == "" || user.name.Length < 2)
            {
                return(BadRequest(new { message = "name is invalid" }));
            }
            if (user.surname == null || user.surname == "" || user.surname.Length < 2)
            {
                return(BadRequest(new { message = "surname is invalid" }));
            }
            if (user.password == null || user.password == "" || user.password.Length < 8)
            {
                return(BadRequest(new { message = "password is invalid" }));
            }
            var u = db.Users.Where(u => u.email == user.email).FirstOrDefault();

            if (u == null)
            {
                RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
                byte[] buffer = new byte[512];

                rng.GetBytes(buffer);
                string salt   = BitConverter.ToString(buffer);
                var    auth   = new AuthenticationController();
                var    hashed = auth.CreatePassword(user.password, salt);
                user.password = hashed;
                user.salt     = salt;
                db.Users.Add(user);
                db.SaveChanges();
                return(Ok(new { message = "success" }));
            }
            else
            {
                return(Ok(new { message = "email is exist" }));
            }
        }
Пример #8
0
        public IActionResult Post(string name)
        {
            var auth  = new AuthenticationController();
            var db    = new SmartPulseContext();
            var token = Request.Cookies["token"];
            var user  = auth.isLogin(token);

            if (user != null)
            {
                var grid = db.SavedGrids.FirstOrDefault(g => g.name == name && g.user.email == user.email);
                if (grid != null)
                {
                    return(Ok(grid));
                }
                else
                {
                    return(NotFound(new { message = "not found" }));
                }
            }
            return(Unauthorized(new { message = "unauthorized" }));
        }
Пример #9
0
        public IActionResult Post(string name)
        {
            var auth  = new AuthenticationController();
            var db    = new SmartPulseContext();
            var token = Request.Cookies["token"];
            var user  = auth.isLogin(token);

            if (user != null)
            {
                if (name != null)
                {
                    var watch = db.WatchLists.FirstOrDefault(w => w.name == name && w.user.email == user.email);
                    if (watch != null)
                    {
                        db.Remove(watch);
                        db.SaveChanges();
                        return(Ok(new { message = "success" }));
                    }
                }
            }
            return(BadRequest("qwe"));
        }
Пример #10
0
        public User isLogin(string token)
        {
            var db    = new SmartPulseContext();
            var email = ValidateJwtToken(token);

            if (token == null)
            {
                return(null);
            }
            if (email != null)
            {
                var user = db.Users.FirstOrDefault(u => u.email == email);
                if (user != null)
                {
                    if (user.token == token)
                    {
                        return(user);
                    }
                }
            }
            return(null);
        }
Пример #11
0
        public IActionResult Post([FromBody] WatchList watchList)
        {
            var    auth  = new AuthenticationController();
            var    db    = new SmartPulseContext();
            string token = Request.Cookies["token"];
            var    user  = auth.isLogin(token);

            if (user != null)
            {
                var w = db.WatchLists.FirstOrDefault(w => w.name == watchList.name);
                if (w != null)
                {
                    w.json = watchList.json;
                    db.SaveChanges();
                    return(Ok(new { message = "update success" }));
                }
                var thisUser = db.Users.FirstOrDefault(u => u.email == user.email);
                watchList.user = thisUser;
                db.WatchLists.Add(watchList);
                db.SaveChanges();
                return(Ok(new { message = "success" }));
            }
            return(Unauthorized(new { message = "failed" }));
        }
Пример #12
0
        public IActionResult Post([FromBody] User user)
        {
            var db   = new SmartPulseContext();
            var auth = new AuthenticationController();

            if (Request.Cookies["token"] != null && Request.Cookies["token"] != "")
            {
                var tempUser       = db.Users.FirstOrDefault(u => u.token == Request.Cookies["token"]);
                var emailFromToken = auth.ValidateJwtToken(Request.Cookies["token"]);
                if (tempUser != null)
                {
                    if (tempUser.email == emailFromToken)
                    {
                        return(Ok(new { message = "success", token = user.token }));
                    }
                    Response.Cookies.Append("token", "");
                    tempUser.token = "";
                    db.SaveChanges();
                }
            }
            var temp = db.Users.Where(u => u.email == user.email).FirstOrDefault();

            if (temp != null)
            {
                var isLogin = auth.ValidatePassword(user.password, temp.password, temp.salt);
                if (isLogin)
                {
                    var token = auth.GenerateJwtToken(temp.email);
                    temp.token = token;
                    db.SaveChanges();
                    Response.Cookies.Append("token", token);
                    return(Ok(new { message = "success", token = token }));
                }
            }
            return(Unauthorized(new { message = "email or password incorrect" }));
        }