/// <summary> /// Valida o objeto /// </summary> /// <param name="db"></param> /// <param name="viewModelError"></param> /// <param name="objeto"></param> /// <param name="formModel"></param> /// <returns></returns> public static bool ValidarObjeto(SBSCEntities db, ref ViewModelErrors viewModelError, Emprestimo objeto, DevolucaoViewModel formModel) { if (formModel == null) throw new ArgumentNullException("formModel"); if (objeto == null) { viewModelError.AddModelError(string.Empty, Constantes.ORegistroNaoFoiEncontrado); return false; } if (formModel.DtDevolucao.HasValue) { if (formModel.DtDevolucao.Value.Date < objeto.DtEmprestimo.Date) viewModelError.AddModelError("DtDevolucao", "A data de devolução não deve ser menor do que a data de empréstimo."); if (formModel.DtDevolucao.Value.Date == objeto.DtEmprestimo.Date) viewModelError.AddModelError("DtDevolucao", "A data de devolução não deve ser igual a data de empréstimo."); } return viewModelError.IsValid; }
/// <summary> /// Valida o objeto /// </summary> /// <param name="db"></param> /// <param name="viewModelError"></param> /// <param name="objeto"></param> /// <param name="formModel"></param> /// <returns></returns> public static bool ValidarObjeto(SBSCEntities db, ref ViewModelErrors viewModelError, Livro objeto, LivroViewModel formModel) { if (formModel == null) throw new ArgumentNullException("formModel"); if (objeto == null) { viewModelError.AddModelError(string.Empty, Constantes.ORegistroNaoFoiEncontrado); return false; } #region Valida se já existe registro com título igual //var tituloIgual = db.Livro.Where(p => p.Titulo.ToLower().Equals(formModel.Titulo.Trim().ToLower())); //if (formModel.Id.HasValue) // tituloIgual = tituloIgual.Where(p => p.Id != formModel.Id.Value); //if (tituloIgual.FirstOrDefault() != null) // viewModelError.AddModelError("Titulo", "Já existe um livro com o 'Título' informado."); #endregion #region Valida se já existe registro com código igual if (!string.IsNullOrEmpty(formModel.Codigo)) { var codigoIgual = db.Livro.Where(p => p.Codigo.ToLower().Equals(formModel.Codigo.Trim().ToLower())); if (formModel.Id.HasValue) codigoIgual = codigoIgual.Where(p => p.Id != formModel.Id.Value); if (codigoIgual.FirstOrDefault() != null) viewModelError.AddModelError("Codigo", "Já existe um livro com o 'Código' informado."); } #endregion return viewModelError.IsValid; }
/// <summary> /// Valida o objeto /// </summary> /// <param name="db"></param> /// <param name="viewModelError"></param> /// <param name="objeto"></param> /// <param name="formModel"></param> /// <returns></returns> public static bool ValidarObjeto(SBSCEntities db, ref ViewModelErrors viewModelError, Emprestimo objeto, EmprestimoViewModel formModel) { if (formModel == null) throw new ArgumentNullException("formModel"); if (objeto == null) { viewModelError.AddModelError(string.Empty, Constantes.ORegistroNaoFoiEncontrado); return false; } #region Validações de livros var livroIndisponivel = string.Format("O livro está {0}.", EnumsHelper.GetText(Enumerations.Livro.StatusLivro.Indisponivel)); var livroJaSelecionado = "O livro já foi selecionado."; // Livro indisponível if (Livros.GetStatus(db, formModel.Livro1Id) == (int)Enumerations.Livro.StatusLivro.Indisponivel) { viewModelError.AddModelError("Livro1Id", livroIndisponivel); } if (formModel.Livro2Id.HasValue) { // Livro já selecionado if (formModel.Livro1Id.Equals(formModel.Livro2Id.Value)) viewModelError.AddModelError("Livro2Id", livroJaSelecionado); // Livro indisponível if (Livros.GetStatus(db, formModel.Livro2Id.Value) == (int)Enumerations.Livro.StatusLivro.Indisponivel) viewModelError.AddModelError("Livro2Id", livroIndisponivel); } if (formModel.Livro3Id.HasValue) { // Livro já selecionado if (formModel.Livro1Id.Equals(formModel.Livro3Id.Value)) viewModelError.AddModelError("Livro3Id", livroJaSelecionado); // Livro indisponível if (Livros.GetStatus(db, formModel.Livro3Id.Value) == (int)Enumerations.Livro.StatusLivro.Indisponivel) viewModelError.AddModelError("Livro3Id", livroIndisponivel); } if (formModel.Livro2Id.HasValue && formModel.Livro3Id.HasValue) { // Livro já selecionado if (formModel.Livro2Id.Equals(formModel.Livro3Id.Value)) viewModelError.AddModelError("Livro2Id", livroJaSelecionado); // Livro indisponível if (Livros.GetStatus(db, formModel.Livro2Id.Value) == (int)Enumerations.Livro.StatusLivro.Indisponivel) viewModelError.AddModelError("Livro2Id", livroIndisponivel); } #endregion var dateNow = Genericos.GetDateTimeFromBrazil(); if (formModel.DtEmprestimo.HasValue && formModel.DtPrevisaoDevolucao.HasValue) { if (formModel.DtPrevisaoDevolucao.Value.Date < formModel.DtEmprestimo.Value.Date) viewModelError.AddModelError("DtPrevisaoDevolucao", "A data de previsão de devolução não deve ser menor do que a data de empréstimo."); if (formModel.DtPrevisaoDevolucao.Value.Date == formModel.DtEmprestimo.Value.Date) viewModelError.AddModelError("DtPrevisaoDevolucao", "A data de previsão de devolução não deve ser igual a data de empréstimo."); } return viewModelError.IsValid; }
/// <summary> /// Valida o objeto /// </summary> /// <param name="db"></param> /// <param name="viewModelError"></param> /// <param name="objeto"></param> /// <param name="formModel"></param> /// <returns></returns> public static bool ValidarObjeto(SBSCEntities db, ref ViewModelErrors viewModelError, Pessoa objeto, PessoaViewModel formModel) { if (formModel == null) throw new ArgumentNullException("formModel"); if (objeto == null) { viewModelError.AddModelError(string.Empty, Constantes.ORegistroNaoFoiEncontrado); return false; } #region Valida se já existe registro com nome igual var nomeIgual = db.Pessoa.Where(p => p.Nome.ToLower().Equals(formModel.Nome.Trim().ToLower())); if (formModel.Id.HasValue) nomeIgual = nomeIgual.Where(p => p.Id != formModel.Id.Value); if (nomeIgual.FirstOrDefault() != null) viewModelError.AddModelError("Nome", "Já existe uma pessoa com o 'Nome' informado."); #endregion #region Valida se já existe registro com código/matrícula igual if (!string.IsNullOrEmpty(formModel.CodigoMatricula)) { var codigoMatriculaIgual = db.Pessoa.Where(p => p.CodigoMatricula.ToLower().Equals(formModel.CodigoMatricula.Trim().ToLower())); if (formModel.Id.HasValue) codigoMatriculaIgual = codigoMatriculaIgual.Where(p => p.Id != formModel.Id.Value); if (codigoMatriculaIgual.FirstOrDefault() != null) viewModelError.AddModelError("CodigoMatricula", "Já existe uma pessoa com o 'Código/Matrícula' informado."); } #endregion #region Valida se já existe registro com login igual e se senha preenchida se login preenchido if (!string.IsNullOrEmpty(formModel.Login)) { var loginIgual = db.Pessoa.Where(p => p.Login.ToLower().Equals(formModel.Login.Trim().ToLower())); if (formModel.Id.HasValue) loginIgual = loginIgual.Where(p => p.Id != formModel.Id.Value); if (loginIgual.FirstOrDefault() != null) viewModelError.AddModelError("Login", "Já existe uma pessoa com o 'Login' informado."); // Valida se a senha está preenchida quando o login é preenchido na tela de cadastro if (string.IsNullOrEmpty(formModel.Senha) && !string.IsNullOrEmpty(objeto.Login)) viewModelError.AddModelError("Senha", "O campo 'Senha' é obrigatório."); } #endregion return viewModelError.IsValid; }