Exemplo n.º 1
0
        public async Task <ActionResult> Create(Agent_Empresa agent_Empresa)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    //variables iniciales
                    var CompanyId = Guid.NewGuid();

                    //Creacion de la empresa
                    agent_Empresa.IdCompany = CompanyId;
                    db.Agent_Empresa.Add(agent_Empresa);

                    //Crear Usuario Admnistrador a la empresa
                    var _username = String.Concat("Ad_", agent_Empresa.Nombre.Replace(" ", "").Replace(".", "").ToLower().ToString());
                    var user      = new ApplicationUser {
                        UserName = _username, Email = agent_Empresa.Email, FirstName = agent_Empresa.Nombre, LastName = agent_Empresa.Rut
                    };
                    var Password = System.Web.Security.Membership.GeneratePassword(8, 1);
                    var result   = await UserManager.CreateAsync(user, Password);

                    if (result.Succeeded)
                    {
                        var Role = db.Roles.Where(r => r.Name.Equals("Admin")).SingleOrDefault();
                        await UserManager.AddToRoleAsync(user.Id, Role.Name);

                        var oUser = db.Users.Find(user.Id);
                        oUser.EmailConfirmed = true;
                        oUser.LockoutEnabled = false;

                        db.Entry(oUser).State = EntityState.Modified;

                        var ec = new EmailController();
                        ec.SendInvitation(oUser.Email, oUser.Email, Password);

                        await db.SaveChangesAsync();

                        var relation = new Agent_UserCompanies()
                        {
                            idUser    = Guid.Parse(oUser.Id),
                            IdCompany = CompanyId,
                        };

                        db.Agent_UserCompany.Add(relation);
                        db.SaveChanges();
                    }
                }
                //Rollback
                catch (Exception ex)
                {
                    if (agent_Empresa != null)
                    {
                        db.Agent_Empresa.Remove(agent_Empresa);
                        db.SaveChanges();
                    }
                }
            }
            return(RedirectToAction("Index", "Agent_Empresa"));
        }
Exemplo n.º 2
0
        public ActionResult DeleteConfirmed(Guid id)
        {
            Agent_Empresa agent_Empresa = db.Agent_Empresa.Find(id);

            db.Agent_Empresa.Remove(agent_Empresa);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemplo n.º 3
0
        public ActionResult Delete(Guid?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Agent_Empresa agent_Empresa = db.Agent_Empresa.Find(id);

            if (agent_Empresa == null)
            {
                return(HttpNotFound());
            }
            return(View(agent_Empresa));
        }
Exemplo n.º 4
0
        public object Login(object key)
        {
            ///cambios del dia 23/03/2019
            using (QueueContext ent = new QueueContext())
            {
                Response rp = new Response();
                try
                {
                    Agent_Empresa ae = ent.Agent_Empresa.Where(a => a.Key == key && a.status == true).SingleOrDefault();

                    if (ae != null)
                    {
                        var token = tvh.GenerateToken(ae.Nombre, ae.Rut, ae.IdCompany.ToString());


                        ResponseConfigurationDTO responseConfigurationDTO = (from c in ent.Agent_Configuration
                                                                             where c.Agent_Empresa.IdCompany == ae.IdCompany
                                                                             select new ResponseConfigurationDTO
                        {
                            Id_Configuration = c.Id_Configuration,
                            InactivityPeriod = c.InactivityPeriod,
                            UploadFrecuency = c.UploadFrecuency,
                            CaptureFrecuency = c.CaptureFrecuency,
                            token = token,
                            IsLogged = true
                        }).FirstOrDefault();

                        rp.data = responseConfigurationDTO;
                    }
                    else
                    {
                        //login invalido
                        return(autil.ReturnMesagge(ref rp, (int)GenericErrors.ErrorLogin, string.Empty, null));;
                    }

                    //retorna un response, con el campo data lleno con la respuesta.
                    return(autil.ReturnMesagge(ref rp, (int)GenericErrors.OK, null, null, HttpStatusCode.OK));
                }
                catch (Exception ex)
                {
                    //error general
                    return(autil.ReturnMesagge(ref rp, (int)GenericErrors.GeneralError, string.Empty, null, HttpStatusCode.InternalServerError));
                }
            }
        }
Exemplo n.º 5
0
        public ActionResult Edit(Agent_Empresa agent_Empresa)
        {
            if (ModelState.IsValid)
            {
                db.Entry(agent_Empresa).State = EntityState.Modified;

                if (agent_Empresa.string_status == "Inactive")
                {
                    agent_Empresa.status = false;
                }
                else
                {
                    agent_Empresa.status = true;
                }

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(agent_Empresa));
        }