public IActionResult edit([FromBody] Client client)
        {
            if (client.user.password != string.Empty)
            {
                client.user.password = Utils.GetMd5HashPassword(client.user.password);
            }

            using (var db = new FindThemContext())
            {
                try
                {
                    var user = db.Users.FirstOrDefault(x => x.id == client.user.id);

                    user.email = client.user.email;
                    user.name  = client.user.name;
                    user.photo = client.user.photo;

                    db.Users.Update(user);
                    db.SaveChanges();

                    client.user = user;

                    db.Clients.Update(client);
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    return(Ok(new { success = false, message = ex.Message }));
                }
            }

            return(Ok(new { success = true, message = "Register edited with success", data = client }));
        }
示例#2
0
        public IActionResult Create([FromBody] Provider provider)
        {
            using (var db = new FindThemContext())
            {
                try
                {
                    var user = db.Users.FirstOrDefault(x => x.email == provider.user.email);

                    provider.user.password = Utils.GetMd5HashPassword(provider.user.password);

                    if (provider.user.name == string.Empty)
                    {
                        provider.user.name = provider.name;
                    }

                    if (user == null)
                    {
                        provider.user = db.Users.Add(provider.user).Entity;
                        db.SaveChanges();
                    }
                    else
                    {
                        user.email    = provider.user.email;
                        user.name     = provider.user.name;
                        user.password = provider.user.password;
                        user.photo    = provider.user.photo;

                        db.Users.Update(user);
                        db.SaveChanges();

                        provider.user = user;
                    }

                    var utils = new Utils();

                    var addressComplete = string.Format("{0} {1} {2} {3} {4}", provider.address, provider.number, provider.neighborhood, provider.city, provider.state);

                    var geometry = utils.getLatitudeLongitude(_config["API_KEY_GOOGLE_MAPS"], addressComplete);

                    if (geometry != null)
                    {
                        provider.latitude  = geometry.location.lat;
                        provider.longitude = geometry.location.lng;
                    }

                    db.Providers.Add(provider);
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    return(Ok(new { success = false, message = ex.Message }));
                }
            }

            return(Ok(new { success = true, message = "Register created with success", data = provider }));
        }
示例#3
0
        public IActionResult Create([FromBody] Service service)
        {
            using (var db = new FindThemContext())
            {
                try
                {
                    var provider = db.Providers.Include(x => x.user).FirstOrDefault(x => x.id == service.provider.id);

                    if (provider == null)
                    {
                        throw new Exception("Provider not found.");
                    }

                    service.provider = provider;

                    db.Services.Add(service);
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    return(Ok(new { success = false, message = ex.Message }));
                }
            }

            return(Ok(new { success = true, message = "Register created with success", data = service }));
        }
示例#4
0
        public ActionResult set(Int64 requestID, [FromBody] Message message)
        {
            using (var db = new FindThemContext())
            {
                message = db.Messages
                          .Add(message).Entity;
                db.SaveChanges();
            }

            return(Ok(message));
        }
        public IActionResult create([FromBody] Client client)
        {
            using (var db = new FindThemContext())
            {
                try
                {
                    var user = db.Users.FirstOrDefault(x => x.email == client.user.email);

                    client.user.password = Utils.GetMd5HashPassword(client.user.password);

                    if (user == null)
                    {
                        db.Users.Add(client.user);
                        db.SaveChanges();
                        client.user = db.Users.Add(client.user).Entity;
                    }
                    else
                    {
                        user.email    = client.user.email;
                        user.name     = client.user.name;
                        user.password = client.user.password;
                        user.photo    = client.user.photo;

                        db.Users.Update(user);
                        db.SaveChanges();

                        client.user = user;
                    }

                    db.Clients.Add(client);
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    return(Ok(new { success = false, message = ex.InnerException.Message }));
                }
            }

            return(Ok(new { success = true, message = "Register created with success", data = client }));
        }
示例#6
0
        public IActionResult Set([FromBody] Rate rate)
        {
            using (var db = new FindThemContext())
            {
                try
                {
                    db.Rates.Add(rate);
                    db.SaveChanges();
                } catch (Exception ex)
                {
                    return(Ok(new { success = false, message = ex.Message }));
                }
            }

            return(Ok(new { success = true, message = "Register created with success", data = rate }));
        }
        public IActionResult Pay([FromBody] Payment payment)
        {
            using (var db = new FindThemContext())
            {
                try
                {
                    payment = db.Payments.Add(payment).Entity;
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Message));
                }
            }

            return(Ok(payment));
        }
示例#8
0
        public IActionResult Create([FromBody] Request request)
        {
            using (var db = new FindThemContext())
            {
                try
                {
                    var client = db.Clients
                                 .Where(x => x.id == request.client.id)
                                 .Include(x => x.user)
                                 .FirstOrDefault();

                    var provider = db.Providers
                                   .Where(x => x.id == request.provider.id)
                                   .Include(x => x.user)
                                   .FirstOrDefault();

                    var service = db.Services
                                  .Where(x => x.id == request.service.id)
                                  .Include(x => x.provider)
                                  .ThenInclude(x => x.user)
                                  .FirstOrDefault();

                    request.client   = client;
                    request.provider = provider;
                    request.service  = service;

                    db.Requests.Add(request);

                    db.Entry(request.client).State   = EntityState.Unchanged;
                    db.Entry(request.provider).State = EntityState.Unchanged;
                    db.Entry(request.service).State  = EntityState.Unchanged;

                    db.SaveChanges();
                } catch (Exception ex)
                {
                    return(Ok(new { success = false, message = ex.InnerException.Message }));
                }
            }

            return(Ok(new { success = true, message = "Request created with success", data = request }));
        }
        public IActionResult delete(Int64 id)
        {
            using (var db = new FindThemContext())
            {
                try
                {
                    var client = db.Clients
                                 .FirstOrDefault(x => x.id == id);

                    client.dateUpdated = DateTime.Now;
                    client.enabled     = false;

                    db.Clients.Update(client);
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    return(Ok(new { success = false, message = ex.Message }));
                }
            }

            return(Ok(new { success = true, message = "Register deleted with success" }));
        }