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);
            }
        }