/// <summary> /// Inicia uma nova instância da classe <see cref="ListaDto"/>. /// </summary> /// <param name="acertoCheque">O acerto do cheque que será retornado.</param> public ListaDto(AcertoCheque acertoCheque) { this.Id = (int)acertoCheque.IdAcertoCheque; this.Funcionario = acertoCheque.NomeFunc; this.Data = acertoCheque.DataAcerto; this.Valor = acertoCheque.ValorAcerto; this.Situacao = acertoCheque.DescrSituacao; this.Observacao = acertoCheque.Obs; this.Permissoes = new PermissoesDto { Cancelar = acertoCheque.CancelVisible, LogCancelamento = LogCancelamentoDAO.Instance.TemRegistro(LogCancelamento.TabelaCancelamento.AcertoCheque, acertoCheque.IdAcertoCheque), }; }
/// <summary> /// Cria um cheque, na tabela cheques_acerto_cheque, a partir de uma string. /// </summary> public void InserirPelaString(GDASession sessao, AcertoCheque acertoCheque, IEnumerable <string> dadosChequesRecebimento) { if ((dadosChequesRecebimento?.Where(f => !string.IsNullOrWhiteSpace(f)).Count()).GetValueOrDefault() == 0) { return; } foreach (var dadosChequeRecebimento in dadosChequesRecebimento.Where(f => !string.IsNullOrWhiteSpace(f))) { // Divide o cheque para pegar suas propriedades. var propriedadesCheque = dadosChequeRecebimento.Split('\t'); var tipoCheque = ChequesDAO.Instance.GetTipo(propriedadesCheque[0]); // Insere cheque no BD. Insert(sessao, new ChequesAcertoCheque { IdAcertoCheque = (int)acertoCheque.IdAcertoCheque, IdLoja = propriedadesCheque[22].StrParaInt(), // Recupera a conta bancária através da agência e conta do cheque, caso a conta bancária não tenha sido informada e o tipo do cheque seja Próprio. IdContaBanco = tipoCheque == 1 && propriedadesCheque[1].StrParaIntNullable().GetValueOrDefault() == 0 ? (int?)ContaBancoDAO.Instance.GetIdByAgenciaConta(propriedadesCheque[16], propriedadesCheque[17]) : propriedadesCheque[1].StrParaIntNullable(), CpfCnpj = propriedadesCheque[21].Replace(".", string.Empty).Replace("-", string.Empty).Replace("/", string.Empty), Num = propriedadesCheque[2].StrParaInt(), DigitoNum = propriedadesCheque[3], Banco = propriedadesCheque[15], Agencia = propriedadesCheque[16], Conta = propriedadesCheque[17], Titular = propriedadesCheque[4], Valor = decimal.Parse(propriedadesCheque[5], NumberStyles.AllowDecimalPoint), DataVenc = DateTime.Parse(propriedadesCheque[6]), Origem = propriedadesCheque[8].StrParaInt(), Tipo = tipoCheque, Obs = propriedadesCheque[19] }); } }
protected void Page_Load(object sender, EventArgs e) { Cheques cheque = ChequesDAO.Instance.GetElementByPrimaryKey(Glass.Conversoes.StrParaUint(Request["IdCheque"])); string localizacao = String.Empty; if (cheque.Origem == (int)Cheques.OrigemCheque.FinanceiroPagto) { localizacao += "Cheque avulso. "; } localizacao += "Cadastrado em: " + cheque.DataCad + ", por " + FuncionarioDAO.Instance.GetNome(cheque.Usucad) + " "; // Verifica se este cheque foi utilizado em algum depósito if (cheque.IdDeposito > 0) { DepositoCheque deposito = DepositoChequeDAO.Instance.GetElement(cheque.IdDeposito.Value); if (deposito == null) { localizacao += "Depósito não localizado."; } else { localizacao += "Este cheque foi utilizado no depósito número " + cheque.IdDeposito + ". O depósito foi efetuado na conta bancária: " + deposito.DescrContaBanco + ", no dia " + deposito.DataDeposito.ToString("dd/MM/yyyy") + " por " + deposito.NomeFuncDeposito + ". "; } } if (cheque.IdAcertoCheque > 0) { AcertoCheque acertoCheque = AcertoChequeDAO.Instance.GetElement(cheque.IdAcertoCheque.Value); localizacao += "Este cheque foi utilizado no acerto de cheque número " + cheque.IdAcertoCheque + ". O acerto de cheque foi feito no dia " + acertoCheque.DataAcerto.ToString("dd/MM/yyyy") + " por " + acertoCheque.NomeFunc + ". "; } else { // Verifica se o cheque foi utilizado em algum pagamento uint idPagto = PagtoChequeDAO.Instance.GetPagtoByCheque(cheque.IdCheque); if (idPagto > 0) { Pagto pagto = PagtoDAO.Instance.GetPagto(idPagto); localizacao += "Este cheque foi utilizado no pagamento número " + idPagto + ". O pagamento foi efetuado no dia " + pagto.DataPagto.ToString("dd/MM/yyyy") + " por " + pagto.NomeFuncPagto + ". "; if (pagto.IdFornec > 0) { localizacao += "Fornecedor pago: " + pagto.NomeFornec + ". "; } if (cheque.DataReceb != null) { localizacao += "Este cheque foi compensado no dia " + cheque.DataReceb.Value.ToString("dd/MM/yyyy") + ". "; } } else if (cheque.IdDeposito == 0) { localizacao += "Localização do cheque desconhecida. "; } } if (cheque.Situacao == (int)Cheques.SituacaoCheque.Trocado) { // Verifica se há alguma movimentação no caixa geral de quitação deste cheque CaixaGeral[] lstCxGeral = CaixaGeralDAO.Instance.GetByCheque(cheque.IdCheque); localizacao += "Este cheque foi trocado"; foreach (CaixaGeral c in lstCxGeral) { if (c.IdConta == UtilsPlanoConta.GetPlanoConta(UtilsPlanoConta.PlanoContas.RecChequeDevDinheiro)) { localizacao += " por " + c.ValorMov.ToString("C") + " em dinheiro,"; } else if (c.IdConta == UtilsPlanoConta.GetPlanoConta(UtilsPlanoConta.PlanoContas.RecChequeDevCartao)) { localizacao += " por " + c.ValorMov.ToString("C") + " pago no cartão,"; } else if (c.IdConta == UtilsPlanoConta.GetPlanoConta(UtilsPlanoConta.PlanoContas.RecChequeDevDeposito)) { localizacao += " por " + c.ValorMov.ToString("C") + " pago por depósito em conta,"; } else if (c.IdConta == UtilsPlanoConta.GetPlanoConta(UtilsPlanoConta.PlanoContas.RecChequeDevCheque)) { localizacao += " por um cheque no valor de " + c.ValorMov.ToString("C") + ","; } } localizacao = localizacao.TrimEnd(',') + "."; } else if (cheque.Situacao == (int)Cheques.SituacaoCheque.Quitado) { // Verifica se há alguma movimentação no caixa geral de quitação deste cheque CaixaGeral[] lstCxGeral = CaixaGeralDAO.Instance.GetByCheque(cheque.IdCheque); localizacao += "Este cheque foi quitado"; var idsAcertoCheque = ItemAcertoChequeDAO.Instance.GetIdsAcertoByCheque(null, cheque.IdCheque, true); if (!String.IsNullOrEmpty(idsAcertoCheque)) { localizacao += " no(s) acerto(s) de cheques " + idsAcertoCheque; } foreach (CaixaGeral c in lstCxGeral) { if (c.IdConta == UtilsPlanoConta.GetPlanoConta(UtilsPlanoConta.PlanoContas.RecChequeDevDinheiro)) { localizacao += " por " + c.ValorMov.ToString("C") + " em dinheiro,"; } else if (c.IdConta == UtilsPlanoConta.GetPlanoConta(UtilsPlanoConta.PlanoContas.RecChequeDevCartao)) { localizacao += " por " + c.ValorMov.ToString("C") + " pago no cartão,"; } else if (c.IdConta == UtilsPlanoConta.GetPlanoConta(UtilsPlanoConta.PlanoContas.RecChequeDevDeposito)) { localizacao += " por " + c.ValorMov.ToString("C") + " pago por depósito em conta,"; } else if (c.IdConta == UtilsPlanoConta.GetPlanoConta(UtilsPlanoConta.PlanoContas.RecChequeDevCheque)) { localizacao += " por um cheque no valor de " + c.ValorMov.ToString("C") + ","; } } localizacao = localizacao.TrimEnd(',') + "."; } lblLocalizacao.Text = localizacao; }
/// <summary> /// Cria o Log de Cancelamento para o acerto de cheque. /// </summary> /// <param name="acertoCheque"></param> /// <param name="motivo"></param> /// <param name="manual"></param> public void LogAcertoCheque(AcertoCheque acertoCheque, string motivo, bool manual) { InserirLog(UserInfo.GetUserInfo.CodUser, LogCancelamento.TabelaCancelamento.AcertoCheque, acertoCheque.IdAcertoCheque, acertoCheque, motivo, manual); }