//Realizar os tratamentos necessários //Salvar um novo registro //Salvar o arquivo no banco de dados //Verificar se deve-se atualizar um registro existente ou criar um novo public bool salvar(MaterialApoio OMaterial, HttpPostedFileBase OArquivo) { bool flagSucesso = false; if (OMaterial.id > 0) { flagSucesso = this.atualizar(OMaterial); } if (OMaterial.id == 0) { flagSucesso = this.inserir(OMaterial); } if (flagSucesso && OArquivo != null) { var OArquivoUpload = new ArquivoUpload(); OArquivoUpload.idReferenciaEntidade = OMaterial.id; OArquivoUpload.entidade = EntityTypes.MATERIAL_APOIO; OArquivoUpload.titulo = OMaterial.titulo; this.OArquivoUploadDocumentoBL.salvar(OArquivoUpload, OArquivo); } return(flagSucesso); }
//Persistir o objecto e salvar na base de dados private bool inserir(MaterialApoio OMaterialApoio) { OMaterialApoio.idUnidade = User.idUnidade(); OMaterialApoio.setDefaultInsertValues <MaterialApoio>(); db.MaterialApoio.Add(OMaterialApoio); db.SaveChanges(); return(OMaterialApoio.id > 0); }
//Exclusao logica de registros public UtilRetorno excluir(int id) { MaterialApoio OMaterialApoio = this.carregar(id); if (OMaterialApoio == null) { return(UtilRetorno.newInstance(true, "O registro não foi localizado.")); } OMaterialApoio.flagExcluido = "S"; OMaterialApoio.idUsuarioAlteracao = User.id(); OMaterialApoio.dtAlteracao = DateTime.Now; db.SaveChanges(); return(UtilRetorno.newInstance(false, "O registro foi removido com sucesso.")); }
//Persistir o objecto e atualizar informações private bool atualizar(MaterialApoio OMaterialApoio) { //Localizar existentes no banco var dbMaterialApoio = this.carregar(OMaterialApoio.id); if (dbMaterialApoio == null) { return(false); } OMaterialApoio.setDefaultUpdateValues(); var MaterialEntry = db.Entry(dbMaterialApoio); MaterialEntry.CurrentValues.SetValues(OMaterialApoio); MaterialEntry.ignoreFields <MaterialApoio>(); db.SaveChanges(); return(OMaterialApoio.id > 0); }