public bool PublicarPacote(Package pacote) { try { using (var ctx = new AdminContext()) { var pkgCurrent = ctx.PackageDao.Find(pacote.IdPacote); var pkgNew = new Package(); //passa tudo do pacote atual pro novo pkgNew.Update(pkgCurrent); //novo status pkgNew.Status = Enumeradores.TypeStatusPackage.Publicado; foreach (var anx in pacote.Anexos) { var anxSalvar = new AnexoPackage(anx.DataFile, anx.FileName, anx.PathFile); pkgNew.Anexos.Add(anxSalvar); } var bytes = SerializeIts.SerializeObject(pkgNew); SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "IT Solution package| *.itspkg"; //sfd.FilterIndex = 0; //sfd.DefaultExt = ".itsPkg"; sfd.FileName = "ITS_Package_" + pkgNew.NumeroPacote; var op = sfd.ShowDialog(); if (op == DialogResult.OK) { if (FileManagerIts.WriteBytesToFile(sfd.FileName, bytes)) { //publicar o pacote pkgCurrent.Publish(DateTime.Now, bytes); var transation = ctx.PackageDao.Update(pkgCurrent); if (transation) { XMessageIts.Mensagem("Pacote publicado com sucesso!"); pacote.Update(pkgCurrent); return(transation); } } } return(false); } } catch (Exception ex) { XMessageIts.ExceptionMessage(ex, "Falha ao publicar pacote", "Publicação de Pacote"); return(false); } }
public Package SaveFilePacote(Package pacote) { try { var pkgSalvar = new Package(); pkgSalvar.DataCriacao = pacote.DataCriacao; pkgSalvar.DataPublicacao = pacote.DataPublicacao; pkgSalvar.Descricao = pacote.Descricao; pkgSalvar.NumeroPacote = pacote.NumeroPacote; pkgSalvar.Sintoma = pacote.Sintoma; pkgSalvar.Status = pacote.Status; pkgSalvar.Tratamento = pacote.Tratamento; foreach (var anx in pacote.Anexos) { var anxSalvar = new AnexoPackage(); anxSalvar.DataFile = anx.DataFile; anxSalvar.FileName = anx.FileName; anxSalvar.PathFile = anx.PathFile; pkgSalvar.Anexos.Add(anxSalvar); } var bytes = SerializeIts.SerializeObject(pkgSalvar); SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "IT Solution package| *.itspkg"; sfd.FileName = "ITS_Package_" + pkgSalvar.NumeroPacote; var op = sfd.ShowDialog(); if (op == DialogResult.OK) { if (FileManagerIts.WriteBytesToFile(sfd.FileName, bytes)) { XMessageIts.Mensagem("Pacote salvo com sucesso!"); } } return(pkgSalvar); } catch (Exception ex) { XMessageIts.ExceptionMessage(ex); return(null); } }