private void Frm_ListarServico_Load(object sender, EventArgs e) { ControllerOrdemServico controllerOS = new ControllerOrdemServico(); ControllerServico controllerServico = new ControllerServico(); List<String> ListaDeInformações = new List<string>(); bool TemInformacao = false; //Verifica se achou algo. foreach (var itemOS in controllerOS.LoadListFinalizadas()) //Carregando informações da Os { ListaDeInformações.Add(controllerOS.LoadOSFinalizada(itemOS).Identificador); ListaDeInformações.Add(controllerOS.LoadOSFinalizada(itemOS).Cliente); if (!string.IsNullOrWhiteSpace(controllerOS.LoadOSFinalizada(itemOS).Identificador)) { TemInformacao = true; } foreach (var item in controllerServico.LoadList()) //Carregando informações do serviço { ListaDeInformações.Add(controllerServico.Load(item).Descricao); ListaDeInformações.Add(controllerServico.Load(item).Valor.ToString()); } if (TemInformacao) { Data_Os.Rows.Add(ListaDeInformações[0], ListaDeInformações[1], ListaDeInformações[2], ListaDeInformações[3]); } } }
/// <summary> /// Finalizando ordem de serviço(Mudando o Status da OS), e criando um novo serviço. /// </summary> /// <returns>The O.</returns> public static string FinalizarOS(Servico InformacoesDoServico) { Spartacus.Database.Generic database; Spartacus.Database.Command cmd = new Spartacus.Database.Command(); cmd.v_text = "update OrdemDeServico set Situacao = #situacao# where ID = #id#"; cmd.AddParameter("situacao", Spartacus.Database.Type.STRING); cmd.AddParameter("id", Spartacus.Database.Type.INTEGER); cmd.SetValue("situacao", "Finalizado"); cmd.SetValue("id", InformacoesDoServico.IdOrdemDeServico.ToString()); try { database = new Spartacus.Database.Sqlite(DB.GetStrConection()); database.Execute(cmd.GetUpdatedText()); ControllerServico.Criar(InformacoesDoServico); //Gerar um trabalho, após ter alterado as informações da OS. return("A Ordem de serviço foi finalizda com sucesso."); } catch (Spartacus.Database.Exception ex) { ControllerArquivoLog.GeraraLog(ex); return(String.Format("Ocorreu um erro ao tentar finalizar a OS: {0}", ex.Message)); } }
/// <summary> /// Finalizando Ordem de serviço (Botão). /// </summary> private void finalizarToolStripMenuItem_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(Txt_OS.Text)) { OrdemServico OSbase = new OrdemServico(); Servico ServicoBase = new Servico(); ControllerOrdemServico controllerOS = new ControllerOrdemServico(); ControllerServico controllerServico = new ControllerServico(); ControllerEmail controllerEmail = new ControllerEmail(); bool Resultado = false; if (controllerOS.Verificar(Txt_OS.Text))//Verifica se a OS existe ou não { Resultado = controllerOS.FinalizarOS(Txt_OS.Text); if (Resultado) { MessageBox.Show("Ordem de serviço Finalizada com sucesso!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("Ocorreu um problema ao finalizar sua Ordem de serviço, informações foram salvas no arquivo log no diretorio do sue software", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } //Gerando o serviço controllerServico.Save(Txt_Descricao.Text, double.Parse(Txt_Valor.Text), Txt_OS.Text); if (MessageBox.Show("Enviar E-mail para o cliente informando sobre o término do serviço?", "Pergunta", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { Model.Email EmailBase = new Model.Email(); //Decodificando Email Base para enviar! String EmailDecoficado = controllerEmail.DecodificarEmailBase(RecuperandoEmailBase(), NomeEmpresa(), InformacaoCliente()[0]); string ResultadoEnvio = controllerEmail.Enviar(InformacaoCliente()[0], InformacaoCliente()[1], NomeEmpresa(), EmailDecoficado); MessageBox.Show(ResultadoEnvio, "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } else { MessageBox.Show("Informe o numero da ordem de serviço!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information); } }