Example #1
0
        public static string GravarFaturamento(TRegistro_LanFaturamento val, TRegistro_LanMudanca rMudanca, BancoDados.TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_LanMudanca qtb_mud      = new TCD_LanMudanca();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_mud.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_mud.Banco_Dados = banco;
                }
                //Gravar Nota Fiscal
                CamadaNegocio.Faturamento.NotaFiscal.TCN_LanFaturamento.GravarFaturamento(val, null, qtb_mud.Banco_Dados);
                //Gravar Mudança_X_NFSe
                TCN_Mudanca_X_NFSe.Gravar(
                    new TRegistro_Mudanca_X_NFSe()
                {
                    Cd_empresa      = val.Cd_empresa,
                    Nr_LanctoFiscal = val.Nr_lanctofiscal,
                    Id_mudanca      = rMudanca.Id_mudanca
                }, qtb_mud.Banco_Dados);
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar faturamento: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_mud.deletarBanco_Dados();
                }
            }
        }
Example #2
0
        public static TList_ParcelasMud Calcula_Parcelas(TRegistro_LanMudanca val)
        {
            TList_ParcelasMud retorno = new TList_ParcelasMud();

            if (val.Vl_mudanca > 0)
            {
                TList_Parcelas Lista_Parcela = TLanCalcParcelas.CalcularParcelas(val.Vl_mudanca,
                                                                                 val.Vl_mudanca,
                                                                                 CamadaDados.UtilData.Data_Servidor(),
                                                                                 val.QTD_parcelas.Equals(decimal.Zero) ? 1 : val.QTD_parcelas,
                                                                                 val.QTD_diasdesdobro);
                Lista_Parcela.ForEach(p =>
                {
                    retorno.Add(
                        new CamadaDados.Mudanca.TRegistro_ParcelasMud()
                    {
                        DiaVencto  = p.Dt_vencimento.Value.Subtract(CamadaDados.UtilData.Data_Servidor()).Days,
                        Vl_parcela = p.Vl_parcela,
                    });
                });
            }
            return(retorno);
        }
Example #3
0
        public static string ProcessarMudanca(TRegistro_LanMudanca val, BancoDados.TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_LanMudanca qtb_mud      = new TCD_LanMudanca();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_mud.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_mud.Banco_Dados = banco;
                }
                //Gravar Duplicata
                if (val.lDup.Count > 0)
                {
                    TCN_LanDuplicata.GravarDuplicata(val.lDup, false, qtb_mud.Banco_Dados);
                    val.Nr_lancto = val.lDup[0].Nr_lancto;
                }
                //Gravar lançamento almoxarifado
                val.lMaterialMud.ForEach(p =>
                {
                    //Buscar Almoxarifado
                    CamadaDados.Almoxarifado.TList_CadAlmoxarifado lAlmox =
                        new CamadaDados.Almoxarifado.TCD_CadAlmoxarifado().Select(
                            new Utils.TpBusca[]
                    {
                        new Utils.TpBusca()
                        {
                            vNM_Campo = string.Empty,
                            vOperador = "exists",
                            vVL_Busca = "(select 1 from tb_amx_almox_x_empresa x " +
                                        "where x.id_almox = a.id_almox " +
                                        "and x.cd_empresa = '" + val.Cd_empresa.Trim() + "')"
                        }
                    }, 1, string.Empty);
                    if (lAlmox.Count == 0)
                    {
                        throw new Exception("Não existe configuração de almoxarifado para a empresa!");
                    }
                    //Criar registro movimentação
                    CamadaDados.Almoxarifado.TRegistro_Movimentacao rMov =
                        new CamadaDados.Almoxarifado.TRegistro_Movimentacao();
                    rMov.Ds_observacao = "PRODUTO RETIRADO PELO MÓDULO MUDANÇA";
                    rMov.Cd_empresa    = val.Cd_empresa;
                    rMov.Id_almoxstr   = lAlmox[0].Id_almoxString;
                    rMov.Cd_produto    = p.Cd_produto;
                    rMov.Quantidade    = p.Quantidade;
                    rMov.Vl_unitario   = CamadaNegocio.Almoxarifado.TCN_SaldoAlmoxarifado.Vl_Custo_Almox_Prod(val.Cd_empresa,
                                                                                                              lAlmox[0].Id_almoxString,
                                                                                                              p.Cd_produto,
                                                                                                              qtb_mud.Banco_Dados);
                    rMov.Tp_movimento    = "S";
                    rMov.LoginAlmoxarife = Utils.Parametros.pubLogin;
                    rMov.Dt_movimento    = CamadaDados.UtilData.Data_Servidor();
                    rMov.St_registro     = "A";
                    //Gravar Movimentação
                    CamadaNegocio.Almoxarifado.TCN_Movimentacao.Gravar(rMov, qtb_mud.Banco_Dados);
                    //Gravar Material mudança
                    p.Id_movimento = rMov.Id_movimento;
                    TCN_MaterialMud.Gravar(p, qtb_mud.Banco_Dados);
                });
                val.St_registro = "4";//Processada
                //Gravar processamento mudança
                qtb_mud.Gravar(val);
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro Gravar registro: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_mud.deletarBanco_Dados();
                }
            }
        }
Example #4
0
        public static void AprovarMudanca(TRegistro_LanMudanca val, BancoDados.TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_LanMudanca qtb_mud      = new TCD_LanMudanca();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_mud.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_mud.Banco_Dados = banco;
                }
                val.St_registro = "1";//Aprovado
                //Gravar Viagem
                if (!val.Id_viagem.HasValue)
                {
                    CamadaDados.Frota.TRegistro_Viagem rViagem = new CamadaDados.Frota.TRegistro_Viagem();
                    rViagem.Cd_empresa    = val.Cd_empresa;
                    rViagem.Id_veiculostr = val.Id_veiculostr;
                    rViagem.Cd_motorista  = val.Cd_motorista;
                    rViagem.Dt_viagemstr  = val.Dt_coletastr;
                    rViagem.Ds_viagem     = "VIAGEM REALIZADA PELA MUDANÇA Nº" + val.Id_mudancastr;
                    rViagem.St_viagem     = "E";
                    CamadaNegocio.Frota.TCN_Viagem.Gravar(rViagem, qtb_mud.Banco_Dados);
                    val.Id_viagem = rViagem.Id_viagem;
                }
                //Gravar Guarda Volume
                if (val.St_utilizaguardamoveisbool)
                {
                    TRegistro_GuardaVolume rGuarda = new TRegistro_GuardaVolume();
                    rGuarda.Cd_empresa      = val.Cd_empresa;
                    rGuarda.Cd_clifor       = val.Cd_clifor;
                    rGuarda.Cd_endereco     = val.Cd_endereco;
                    rGuarda.Id_mudanca      = val.Id_mudanca;
                    rGuarda.Dt_registro     = CamadaDados.UtilData.Data_Servidor();
                    rGuarda.Dt_prevretirada = CamadaDados.UtilData.Data_Servidor().AddDays(Convert.ToDouble(val.NR_DiasGuardaMoveis.ToString()));
                    rGuarda.NR_GuardaVol    = val.Nr_guardavol;
                    rGuarda.St_registro     = "A";
                    val.lItensMud.ForEach(p =>
                    {
                        rGuarda.lItensGuardaVolume.Add(
                            new TRegistro_ItensGuardaVolume()
                        {
                            Id_item     = p.Id_item,
                            Dt_locacao  = rGuarda.Dt_registro,
                            Quantidade  = p.Quantidade,
                            St_registro = "A"
                        });
                    });
                    TCN_GuardaVolume.Gravar(rGuarda, qtb_mud.Banco_Dados);
                }
                //Gravar Aprovação
                qtb_mud.Gravar(val);
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.Commit_Tran();
                }
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro aprovar orçamento: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_mud.deletarBanco_Dados();
                }
            }
        }
Example #5
0
        public static string Excluir(TRegistro_LanMudanca val, BancoDados.TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_LanMudanca qtb_mud      = new TCD_LanMudanca();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_mud.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_mud.Banco_Dados = banco;
                }
                try
                {
                    //Excluir
                    qtb_mud.Excluir(val);
                }
                catch
                {
                    //Cancelar
                    val.St_registro = "3";
                    qtb_mud.Gravar(val);
                }
                //Verificar se Mudança possui Orçamento
                TList_Orcamento lOrcamento =
                    new TCD_Orcamento(qtb_mud.Banco_Dados).Select(
                        new Utils.TpBusca[]
                {
                    new Utils.TpBusca()
                    {
                        vNM_Campo = "a.id_mudanca",
                        vOperador = "=",
                        vVL_Busca = val.Id_mudancastr
                    },
                    new Utils.TpBusca()
                    {
                        vNM_Campo = "a.cd_empresa",
                        vOperador = "=",
                        vVL_Busca = "'" + val.Cd_empresa.Trim() + "'"
                    }
                }, 0, string.Empty);
                lOrcamento.ForEach(p =>
                {
                    p.St_registro   = "0";
                    p.Id_mudancastr = string.Empty;
                    TCN_Orcamento.Gravar(p, qtb_mud.Banco_Dados);
                });
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.Commit_Tran();
                }
                return(val.Id_mudancastr);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro excluir mudança: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_mud.deletarBanco_Dados();
                }
            }
        }
Example #6
0
        public static string Gravar(TRegistro_LanMudanca val, BancoDados.TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_LanMudanca qtb_mud      = new TCD_LanMudanca();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_mud.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_mud.Banco_Dados = banco;
                }
                val.Id_mudancastr = CamadaDados.TDataQuery.getPubVariavel(qtb_mud.Gravar(val), "@P_ID_MUDANCA");
                //Excluir Itens Mudança
                val.lItensMudDel.ForEach(p => TCN_LanItensMud.Excluir(p, qtb_mud.Banco_Dados));
                //Gravar Itens Mudança
                val.lItensMud.ForEach(p =>
                {
                    p.Cd_empresa = val.Cd_empresa;
                    p.Id_mudanca = val.Id_mudanca;
                    TCN_LanItensMud.Gravar(p, qtb_mud.Banco_Dados);
                });
                //Excluir Serviços Mudança
                val.lServicosMudDel.ForEach(p => TCN_LanServicosMud.Excluir(p, qtb_mud.Banco_Dados));
                //Gravar Serviços Mudança
                val.lServicosMud.ForEach(p =>
                {
                    p.Cd_empresa = val.Cd_empresa;
                    p.Id_mudanca = val.Id_mudanca;
                    TCN_LanServicosMud.Gravar(p, qtb_mud.Banco_Dados);
                });
                //Excluir Parcelas Mudança
                val.lParcelasMudDel.ForEach(p => TCN_ParcelasMud.Excluir(p, qtb_mud.Banco_Dados));
                //Gravar Parcelas Mudança
                val.lParcelasMud.ForEach(p =>
                {
                    p.Cd_empresa = val.Cd_empresa;
                    p.Id_mudanca = val.Id_mudanca;
                    TCN_ParcelasMud.Gravar(p, qtb_mud.Banco_Dados);
                });
                //Excluir Material Mudança
                val.lMaterialMudDel.ForEach(p => TCN_MaterialMud.Excluir(p, qtb_mud.Banco_Dados));
                //Gravar Material Mudança
                val.lMaterialMud.ForEach(p =>
                {
                    p.Cd_empresa = val.Cd_empresa;
                    p.Id_mudanca = val.Id_mudanca;
                    TCN_MaterialMud.Gravar(p, qtb_mud.Banco_Dados);
                });
                //Excluir Ajudantes Mudança
                val.lAjudantesMudDel.ForEach(p => TCN_AjudantesMud.Excluir(p, qtb_mud.Banco_Dados));
                //Gravar Ajudantes Mudança
                val.lAjudantesMud.ForEach(p =>
                {
                    p.Cd_empresa = val.Cd_empresa;
                    p.Id_mudanca = val.Id_mudanca;
                    TCN_AjudantesMud.Gravar(p, qtb_mud.Banco_Dados);
                });
                //Gravar Orcamento
                val.lOrcamento.ForEach(p =>
                {
                    p.Id_mudancastr = val.Id_mudancastr;
                    p.St_registro   = "1";
                    TCN_Orcamento.Gravar(p, qtb_mud.Banco_Dados);
                    TCN_LanMudanca.AprovarMudanca(val, qtb_mud.Banco_Dados);
                });
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.Commit_Tran();
                }
                return(val.Id_mudancastr);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar mudança: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_mud.deletarBanco_Dados();
                }
            }
        }