public bool AddProfessional(ProfessionalBE pobjDtoEntity, int userId, int nodeId) { try { DatabaseContext dbContext = new DatabaseContext(); pobjDtoEntity.d_InsertDate = DateTime.Now; pobjDtoEntity.i_InsertUserId = userId; pobjDtoEntity.i_IsDeleted = 0; dbContext.Professional.Add(pobjDtoEntity); dbContext.SaveChanges(); return(true); } catch (Exception ex) { return(false); } }
public static MessageCustom AddSystemUserExternal(PersonDto pobjPerson, ProfessionalBE pobjProfessional, SystemUserDto pobjSystemUser, List <ProtocolSystemUserBE> ListProtocolSystemUser, int userId, int nodeId) { pobjSystemUser.v_Password = SecurityDal.Encrypt(pobjSystemUser.v_Password.Trim()); return(new PacientDal().AddSystemUserExternal(pobjPerson, pobjProfessional, pobjSystemUser, ListProtocolSystemUser, userId, nodeId)); }
public MessageCustom AddSystemUserExternal(PersonDto pobjPerson, ProfessionalBE pobjProfessional, SystemUserDto pobjSystemUser, List <ProtocolSystemUserBE> ListProtocolSystemUser, int userId, int nodeId) { //mon.IsActive = true; string newId = string.Empty; int systemUserId = -1; MessageCustom msg = new MessageCustom(); OperationResult objOperationResult = new OperationResult(); try { using (var ts = new TransactionScope()) { #region Validations // Validar el DNI de la persona DatabaseContext dbContext = new DatabaseContext(); if (pobjPerson != null) { if (pobjSystemUser.i_SystemUserId == -1) //-1 es nuevo { // Grabar Persona var _recordCount1 = GetPersonCount(pobjPerson.v_DocNumber); if (_recordCount1 != 0) { throw new Exception("El número de documento <strong>" + pobjPerson.v_DocNumber + "</strong> ya se encuentra registrado. Por favor ingrese otro número de documento."); } pobjPerson.d_InsertDate = DateTime.Now; pobjPerson.i_InsertUserId = userId; pobjPerson.i_IsDeleted = 0; // Autogeneramos el Pk de la tabla newId = new Common.Utils().GetPrimaryKey(nodeId, 8, "PP"); pobjPerson.v_PersonId = newId; dbContext.Person.Add(pobjPerson); dbContext.SaveChanges(); // Grabar Profesional pobjProfessional.v_PersonId = pobjPerson.v_PersonId; bool resultProf = AddProfessional(pobjProfessional, userId, nodeId); if (!resultProf) { throw new Exception("Sucedió un error al guardar el profesional, por favor actualice la pagina y vuelva a intentar"); } } else {//actualiza var objPerson = dbContext.Person.Where(x => x.v_PersonId == pobjPerson.v_PersonId).FirstOrDefault(); objPerson.v_FirstName = pobjPerson.v_FirstName; objPerson.v_FirstLastName = pobjPerson.v_FirstLastName; objPerson.v_SecondLastName = pobjPerson.v_SecondLastName; objPerson.i_DocTypeId = pobjPerson.i_DocTypeId; objPerson.v_DocNumber = pobjPerson.v_DocNumber; objPerson.i_SexTypeId = pobjPerson.i_SexTypeId; objPerson.i_MaritalStatusId = pobjPerson.i_MaritalStatusId; objPerson.i_LevelOfId = pobjPerson.i_LevelOfId; objPerson.v_Mail = pobjPerson.v_Mail; objPerson.v_BirthPlace = pobjPerson.v_BirthPlace; objPerson.v_TelephoneNumber = pobjPerson.v_TelephoneNumber; objPerson.d_Birthdate = pobjPerson.d_Birthdate; objPerson.v_AdressLocation = pobjPerson.v_AdressLocation; objPerson.i_UpdateUserId = userId; objPerson.d_UpdateDate = DateTime.Now; dbContext.SaveChanges(); var objProfessional = dbContext.Professional.Where(x => x.v_PersonId == pobjPerson.v_PersonId).FirstOrDefault(); objProfessional.i_ProfessionId = pobjProfessional.i_ProfessionId; objProfessional.v_ProfessionalCode = pobjProfessional.v_ProfessionalCode; objProfessional.v_ProfessionalInformation = pobjProfessional.v_ProfessionalInformation; objProfessional.i_UpdateUserId = userId; objProfessional.d_UpdateDate = DateTime.Now; dbContext.SaveChanges(); } } // Validar existencia de UserName en la BD if (pobjSystemUser != null) { if (pobjSystemUser.i_SystemUserId == -1) { OperationResult objOperationResult7 = new OperationResult(); var _recordCount2 = new SecurityDal().GetSystemUserCount(pobjSystemUser.v_UserName); if (_recordCount2 != 0) { throw new Exception("El nombre de usuario <strong>" + pobjSystemUser.v_UserName + "</strong> ya se encuentra registrado.<br> Por favor ingrese otro nombre de usuario."); } } } #endregion // Grabar Usuario if (pobjSystemUser != null) { if (pobjSystemUser.i_SystemUserId == -1)//-1 es nuevo { pobjSystemUser.v_PersonId = pobjPerson.v_PersonId; pobjSystemUser.i_SystemUserTypeId = (int)SystemUserTypeId.External; pobjSystemUser.i_RolVentaId = -1; pobjSystemUser.v_SystemUserByOrganizationId = ListProtocolSystemUser != null?OrganizationDal.GetOrganizationIdByProtocolId(ListProtocolSystemUser[0].v_ProtocolId) : ""; systemUserId = new SecurityDal().AddSystemUSer(pobjSystemUser, userId, nodeId); if (systemUserId == -1) { throw new Exception("Sucedió un error al guardar el usuario, por favor actualice la pagina y vuelva a intentar"); } } else {//actualiza var objUser = dbContext.SystemUser.Where(x => x.i_SystemUserId == pobjSystemUser.i_SystemUserId).FirstOrDefault(); objUser.v_UserName = pobjSystemUser.v_UserName; objUser.v_Password = pobjSystemUser.v_Password; objUser.d_ExpireDate = pobjSystemUser.d_ExpireDate; objUser.i_UpdateUserId = userId; objUser.d_UpdateDate = DateTime.Now; systemUserId = objUser.i_SystemUserId; dbContext.SaveChanges(); } } #region GRABA ProtocolSystemUser if (ListProtocolSystemUser != null) { if (pobjSystemUser.i_SystemUserId == -1)//-1 es nuevo { bool resultProt = new ProtocolSystemUserDal().AddProtocolSystemUser(ListProtocolSystemUser, systemUserId, userId, nodeId); if (!resultProt) { throw new Exception("Sucedió un error al guardar los protocolos del usuario, por favor actualice la pagina y vuelva a intentar"); } } else //actualiza { bool deletedProt = ProtocolSystemUserDal.DeletedProtocolSystemUser(systemUserId, userId); if (!deletedProt) { throw new Exception("Sucedió un error al actualizar los protocolos del usuario, por favor actualice la pagina y vuelva a intentar"); } bool resultProt = new ProtocolSystemUserDal().AddProtocolSystemUser(ListProtocolSystemUser, systemUserId, userId, nodeId); if (!resultProt) { throw new Exception("Sucedió un error al actualizar los protocolos del usuario, por favor actualice la pagina y vuelva a intentar"); } } } #endregion msg.Error = false; msg.Status = (int)HttpStatusCode.Created; msg.Message = "Se guardó correctamente"; ts.Complete(); } return(msg); } catch (Exception ex) { msg.Error = true; msg.Status = (int)HttpStatusCode.BadRequest; msg.Message = ex.Message; return(msg); } }