Exemplo n.º 1
0
        private void novoClifor()
        {
            if (tpModo != TTpModo.tm_Insert)
            {
                return;
            }

            //Cliente não cadastrado
            if (!string.IsNullOrEmpty(txtDados.Text) && !string.IsNullOrEmpty(nome_clifor.Text))
            {
                cd_clifor = TCN_CliFor.Gravar(
                    new TRegistro_Clifor()
                {
                    celular   = txtDados.Text.Trim().SoNumero(),
                    Nm_clifor = nome_clifor.Text.Trim().ToUpper()
                }, null);
                tpModo = TTpModo.tm_busca;
            }
            else if (!string.IsNullOrEmpty(nome_clifor.Text))
            {
                using (TFConsultaClifor fconsulta = new TFConsultaClifor())
                {
                    fconsulta.nome = nome_clifor.Text.Trim();
                    if (fconsulta.ShowDialog() == DialogResult.OK)
                    {
                        txtDados.Text    = fconsulta.rClifor.celular;
                        nome_clifor.Text = fconsulta.rClifor.Nm_clifor;
                        cd_clifor        = fconsulta.rClifor.Cd_clifor;
                        tpModo           = TTpModo.tm_busca;
                    }
                    else
                    {
                        tpModo = TTpModo.tm_Standby;
                        afternovo();
                    }
                }
            }
        }
Exemplo n.º 2
0
        private void buscarClifor()
        {
            if (tpModo != TTpModo.tm_Insert)
            {
                return;
            }
            if (string.IsNullOrEmpty(txtDados.Text))
            {
                return;
            }

            TpBusca[] tps = new TpBusca[0];
            Estruturas.CriarParametro(ref tps, "a.celular", "'%" + txtDados.Text.Trim().SoNumero() + "'", "like");
            TList_Clifor rClifor = new TCD_Clifor().Select(tps, 0, string.Empty);

            //Cliente não existe (método: novoClifor)
            if (rClifor.Count.Equals(0))
            {
                nome_clifor.Focus(); return;
            }

            //Vários clientes com o mesmo número de telefone
            if (rClifor.Count > 1)
            {
                if (tpModo == TTpModo.tm_Insert)
                {
                    using (TFConsultaClifor fconsulta = new TFConsultaClifor())
                    {
                        fconsulta.nome = txtDados.Text.Trim().SoNumero();
                        if (fconsulta.ShowDialog() == DialogResult.OK)
                        {
                            txtDados.Text    = fconsulta.rClifor.celular;
                            nome_clifor.Text = fconsulta.rClifor.Nm_clifor;
                            cd_clifor        = fconsulta.rClifor.Cd_clifor;
                            tpModo           = TTpModo.tm_busca;
                        }
                        else
                        {
                            tpModo = TTpModo.tm_Standby;
                            afternovo();
                        }
                    }
                }
            }
            else
            {
                nome_clifor.Text = rClifor[0].Nm_clifor;
                cd_clifor        = rClifor[0].Cd_clifor;
                tpModo           = TTpModo.tm_busca;
            }

            //Validar necessidade de atualizar o cadastro do clifor
            tps = new TpBusca[0];
            Estruturas.CriarParametro(ref tps, "a.ds_parametro", "'DIAS_RENOVACAO_CADASTRO_CLIFOR'");
            object vlNumerico = new CamadaDados.ConfigGer.TCD_ParamGer().BuscarEscalar(tps, "a.vl_numerico");

            if (vlNumerico != null && !string.IsNullOrEmpty(vlNumerico.ToString()))
            {
                //Buscar data de alteração do cadastro do clifor
                tps = new TpBusca[0];
                Estruturas.CriarParametro(ref tps, "a.cd_clifor", rClifor[0].Cd_clifor);
                object dtAlt = new CamadaDados.Financeiro.Cadastros.TCD_CadClifor().BuscarEscalar(tps, "a.dt_alt");
                if (dtAlt != null && !string.IsNullOrEmpty(vlNumerico.ToString()))
                {
                    try
                    {
                        //Validar diferenca das datas
                        double dif = CamadaDados.UtilData.Data_Servidor().Subtract(Convert.ToDateTime(dtAlt)).TotalDays;
                        if (dif > Convert.ToDouble(vlNumerico))
                        {
                            atualizarCadastroClifor(rClifor[0]);
                        }
                    }
                    catch { }
                }
            }
        }