public IHttpActionResult Post(UsuarioViewModel usuarioViewModel) { using (var db = new SIGAEntities()) { try { Persona persona = new Persona(); persona.Per_Dni = usuarioViewModel.UsuarioItem.Per_Dni; persona.Per_Nombre = usuarioViewModel.UsuarioItem.Per_Nombre; persona.Per_ApePaterno = usuarioViewModel.UsuarioItem.Per_ApePaterno; persona.Per_ApeMaterno = usuarioViewModel.UsuarioItem.Per_ApeMaterno; persona.Per_Sexo = usuarioViewModel.UsuarioItem.Per_Sexo; persona.Per_Dir = usuarioViewModel.UsuarioItem.Per_Dir; persona.Per_Cel = usuarioViewModel.UsuarioItem.Per_Cel; persona.Per_Tel = usuarioViewModel.UsuarioItem.Per_Tel; persona.Per_Email = usuarioViewModel.UsuarioItem.Per_Email; db.Persona.Add(persona); TipoUsuario tipoUsuario = new TipoUsuario(); string tipoUserValue = usuarioViewModel.UsuarioItem.TipoUser_Descrip; var tipoUserId = db.TipoUsuario.Where(t => t.TipoUser_Descrip == tipoUserValue).FirstOrDefault(); Usuario usuario = new Usuario(); usuario.Per_Id = persona.Per_Id; usuario.TipoUser_Id = Convert.ToInt16(tipoUserId.TipoUser_Id); usuario.User_Nombre = usuarioViewModel.UsuarioItem.User_Nombre; //usuario.User_Pass = ""; db.Usuario.Add(usuario); if (tipoUserValue == "Alumno") { Alumno alumno = new Alumno(); alumno.User_Id = usuario.User_Id; alumno.Alu_Apoderado = usuarioViewModel.UsuarioItem.AlumnoItem.Alu_Apoderado; alumno.Alu_FechaIngreso = (DateTime)usuarioViewModel.UsuarioItem.AlumnoItem.Alu_FechaIngreso; alumno.Alu_FechaRegistro = DateTime.UtcNow; alumno.Alu_Estado = true; db.Alumno.Add(alumno); } if (tipoUserValue == "Profesor") { Profesor profesor = new Profesor(); profesor.User_Id = usuario.User_Id; profesor.Cur_Id = usuarioViewModel.UsuarioItem.ProfesorItem.Cur_Id; profesor.Prof_Especialidad = usuarioViewModel.UsuarioItem.ProfesorItem.Prof_Especialidad; profesor.Prof_Procedencia = usuarioViewModel.UsuarioItem.ProfesorItem.Prof_Procedencia; profesor.Prof_LugarEstudio = usuarioViewModel.UsuarioItem.ProfesorItem.Prof_LugarEstudio; db.Profesor.Add(profesor); } if (tipoUserValue == "Administrador") { Administrador administrador = new Administrador(); // add code db.Administrador.Add(administrador); } db.SaveChanges(); } catch (Exception e) { throw; } return CreatedAtRoute("DefaultApi", new { id = usuarioViewModel.UsuarioItem.User_Id }, usuarioViewModel); } }
public IHttpActionResult Put(UsuarioViewModel usuarioViewModel) { using (var db = new SIGAEntities()) { try { TipoUsuario tipoUsuario = new TipoUsuario(); string tipoUserValue = usuarioViewModel.UsuarioItem.TipoUser_Descrip; // collection["UsuarioItem.TipoUser_Descrip"]; var tipoUserId = db.TipoUsuario.Where(t => t.TipoUser_Descrip == tipoUserValue).FirstOrDefault(); Usuario usuario = db.Usuario.First(u => u.User_Id == usuarioViewModel.UsuarioItem.User_Id); usuario.TipoUser_Id = Convert.ToInt16(tipoUserId.TipoUser_Id); usuario.User_Nombre = "usename"; // persona.Per_Nombre.Substring(0, persona.Per_Nombre.Length) + " " + persona.Per_ApeMaterno.Substring(0, 0); usuario.User_Pass = ""; Persona persona = db.Persona.First(p => p.Per_Id == usuario.Per_Id); persona.Per_Dni = usuarioViewModel.UsuarioItem.Per_Dni; // Convert.ToInt32(collection["UsuarioItem.Per_Dni"]); persona.Per_Nombre = usuarioViewModel.UsuarioItem.Per_Nombre; // collection["UsuarioItem.Per_Nombre"]; persona.Per_ApePaterno = usuarioViewModel.UsuarioItem.Per_ApePaterno; // collection["UsuarioItem.Per_ApePaterno"]; persona.Per_ApeMaterno = usuarioViewModel.UsuarioItem.Per_ApeMaterno; // collection["UsuarioItem.Per_ApeMaterno"]; persona.Per_Sexo = usuarioViewModel.UsuarioItem.Per_Sexo; // collection["UsuarioItem.Per_Sexo"]; persona.Per_Dir = usuarioViewModel.UsuarioItem.Per_Dir; // collection["UsuarioItem.Per_Dir"]; persona.Per_Cel = usuarioViewModel.UsuarioItem.Per_Cel; // collection["UsuarioItem.Per_Cel"]; persona.Per_Tel = usuarioViewModel.UsuarioItem.Per_Tel; // collection["UsuarioItem.Per_Tel"]; persona.Per_Email = usuarioViewModel.UsuarioItem.Per_Email; // collection["UsuarioItem.Per_Email"]; if (tipoUserValue == "Alumno") { Alumno alumno = db.Alumno.First(a => a.User_Id == usuarioViewModel.UsuarioItem.User_Id); alumno.Alu_Apoderado = usuarioViewModel.UsuarioItem.AlumnoItem.Alu_Apoderado; // collection["UsuarioItem.AlumnoItem.Alu_Apoderado"]; alumno.Alu_FechaIngreso = Convert.ToDateTime(usuarioViewModel.UsuarioItem.AlumnoItem.Alu_FechaIngreso); // Convert.ToDateTime(collection["UsuarioItem.AlumnoItem.Alu_FechaIngreso"]); alumno.Alu_FechaRegistro = Convert.ToDateTime(usuarioViewModel.UsuarioItem.AlumnoItem.Alu_FechaRegistro); // Convert.ToDateTime(collection["UsuarioItem.AlumnoItem.Alu_FechaRegistro"]); //DateTime.UtcNow; alumno.Alu_Estado = true; } if (tipoUserValue == "Profesor") { Profesor profesor = db.Profesor.First(a => a.User_Id == usuarioViewModel.UsuarioItem.User_Id); profesor.Cur_Id = usuarioViewModel.UsuarioItem.ProfesorItem.Cur_Id; profesor.Prof_Especialidad = usuarioViewModel.UsuarioItem.ProfesorItem.Prof_Especialidad; profesor.Prof_Procedencia = usuarioViewModel.UsuarioItem.ProfesorItem.Prof_Procedencia; profesor.Prof_LugarEstudio = usuarioViewModel.UsuarioItem.ProfesorItem.Prof_LugarEstudio; } if (tipoUserValue == "Administrador") { Administrador administrador = new Administrador(); // add code db.Administrador.Add(administrador); } db.SaveChanges(); } catch (Exception e) { throw; } return StatusCode(HttpStatusCode.NoContent); } }