public async Task <CobGeneralCobranza> InsertGeneralCobranza(CobGeneralCobranza generalCobranza) { SegUsuario user = await _unitOfWork.SegUsuarioRepository.GetUser(generalCobranza.UsuarioRegistro); if (user == null) { throw new Exception("usuario no existe"); } CobGeneralCobranza existenDocumentosPendientes = await _unitOfWork.GeneralCobranzaRepository.ExisteCobranzaPendienteEnviar(generalCobranza); if (existenDocumentosPendientes != null) { throw new BusinessException("Este cliente ya tiene un RC abierto pendiente por enviar N° " + existenDocumentosPendientes.Documento.ToString() + ".Agregue la cobranza a este RC.Si es necesario grabar otro RC a este cliente, envíe el que está pendiente a la administradora."); } MtrCliente cliente = await _mtrClienteService.GetByIdAsync(generalCobranza.IdCliente); MtrVendedor vendedor = await _mtrVendedorService.GetByIdAsync(cliente.Vendedor1); string vIn = cliente.OficinaVenta; short vOut = Convert.ToInt16(vIn); MtrOficina mtrOficina = await _mtrOficinaService.GetOficina(vOut); generalCobranza.SearchText = generalCobranza.IdCliente + "-" + cliente.Nombre + "-" + vendedor.Nombre + "-" + generalCobranza.Documento.ToString() + "-" + mtrOficina.NomOficina.Trim(); generalCobranza.OficinaVenta = cliente.OficinaVenta; await _unitOfWork.GeneralCobranzaRepository.Add(generalCobranza); await _unitOfWork.SaveChangesAsync(); CobGeneralCobranza result = await UpdateGeneralCobranza(generalCobranza); return(result); }
public async Task <CobGeneralCobranza> UpdateGeneralCobranza(CobGeneralCobranza generalCobranza) { CobGeneralCobranza cobranza = await GetGeneralCobranzaPorDocumento(generalCobranza.Documento); if (cobranza == null) { throw new Exception("Documento No existe"); } MtrCliente cliente = await _mtrClienteService.GetByIdAsync(generalCobranza.IdCliente); MtrVendedor vendedor = await _mtrVendedorService.GetByIdAsync(cliente.Vendedor1); string vIn = cliente.OficinaVenta; short vOut = Convert.ToInt16(vIn); MtrOficina mtrOficina = await _mtrOficinaService.GetOficina(vOut); string statusString = EstatusRecibo(generalCobranza); if (vendedor != null) { cobranza.SearchText = cobranza.IdCliente + "-" + cliente.Nombre.Trim() + "-" + vendedor.Nombre.Trim() + "-" + cobranza.Documento.ToString() + "-" + statusString + "-Ofic " + mtrOficina.NomOficina.Trim(); } else { cobranza.SearchText = cobranza.IdCliente + "-" + cliente.Nombre.Trim() + "-" + cobranza.Documento.ToString() + "-" + statusString + "-Ofic " + mtrOficina.NomOficina.Trim(); } cobranza.IdCliente = generalCobranza.IdCliente; cobranza.IdMtrTipoMoneda = generalCobranza.IdMtrTipoMoneda; cobranza.MontoTransaccion = generalCobranza.MontoTransaccion; cobranza.IdTipoTransaccion = generalCobranza.IdTipoTransaccion; cobranza.IdBanco = generalCobranza.IdBanco; cobranza.FechaTransaccion = generalCobranza.FechaTransaccion; cobranza.NumReferencia = generalCobranza.NumReferencia; cobranza.EmailCliente = generalCobranza.EmailCliente; cobranza.FechaRegistro = generalCobranza.FechaRegistro; cobranza.UsuarioRegistro = generalCobranza.UsuarioRegistro; cobranza.OficinaVenta = cliente.OficinaVenta; cobranza.TotalDetalleCobrado = cobranza.MontoTransaccion - _cobGrabacionCobranzasService.TotalDetalleRecibo(cobranza.Documento); await _unitOfWork.GeneralCobranzaRepository.Update(cobranza); await _unitOfWork.SaveChangesAsync(); return(await GetGeneralCobranzaPorDocumento(generalCobranza.Documento)); }
public async Task <ApiResponse <AppGeneralQuotesGetDto> > UpdateGeneralQuotes(AppGeneralQuotesUpdateDto appGeneralQuotesUpdateDto) { AppGeneralQuotesGetDto resultDto = new AppGeneralQuotesGetDto(); Metadata metadata = new Metadata { IsValid = true, Message = "" }; ApiResponse <AppGeneralQuotesGetDto> response = new ApiResponse <AppGeneralQuotesGetDto>(resultDto); try { AppGeneralQuotes appGeneralQuotes = await GetById(appGeneralQuotesUpdateDto.Id); if (appGeneralQuotes == null) { metadata.IsValid = false; metadata.Message = "Cotizacion No Existe!!! " + appGeneralQuotesUpdateDto.Cotizacion; response.Meta = metadata; response.Data = resultDto; return(response); } MtrCliente cliente = await _mtrClienteService.GetByIdAsync(appGeneralQuotesUpdateDto.IdCliente); if (cliente == null) { metadata.IsValid = false; metadata.Message = "Cliente No Existe!!! " + appGeneralQuotesUpdateDto.IdCliente; response.Meta = metadata; response.Data = resultDto; return(response); } MtrDirecciones direccionEntregarValidate = await _unitOfWork.MtrDireccionesRepository.GetById(appGeneralQuotesUpdateDto.IdDireccionEntregar); if (direccionEntregarValidate == null) { metadata.IsValid = false; metadata.Message = "Direccion Entregar No Existe!!! " + appGeneralQuotesUpdateDto.IdDireccionEntregar; response.Meta = metadata; response.Data = resultDto; return(response); } MtrContactos mtrContactosValidate = await _unitOfWork.MtrContactosRepository.GetById(appGeneralQuotesUpdateDto.IdContacto); if (mtrContactosValidate == null) { metadata.IsValid = false; metadata.Message = "Contacto No Existe!!! "; response.Meta = metadata; response.Data = resultDto; return(response); } MtrCondicionPago condicionPagoValidate = await _unitOfWork.MtrCondicionPagoRepository.GetById(appGeneralQuotesUpdateDto.IdCondPago); if (condicionPagoValidate == null) { metadata.IsValid = false; metadata.Message = "Condicion de Pago No Existe!!! "; response.Meta = metadata; response.Data = resultDto; return(response); } MtrTipoMoneda mtrTipoMonedaFind = await _unitOfWork.MtrTipoMonedaRepository.GetById(appGeneralQuotesUpdateDto.IdMtrTipoMoneda); if (mtrTipoMonedaFind == null) { metadata.IsValid = false; metadata.Message = "Moneda No Existe!!! "; response.Meta = metadata; response.Data = resultDto; return(response); } if (appGeneralQuotesUpdateDto.OrdenCompra.Length > 16) { metadata.IsValid = false; metadata.Message = "Longitud Maxima de Orden de Compra es 16 !!! "; response.Meta = metadata; response.Data = resultDto; return(response); } if (appGeneralQuotesUpdateDto.IdCliente != "000000") { appGeneralQuotesUpdateDto.Rif = cliente.NoRegTribut; appGeneralQuotesUpdateDto.RazonSocial = cliente.Nombre; appGeneralQuotesUpdateDto.Direccion = cliente.Direccion + " " + cliente.Direccion1; } appGeneralQuotes.Rif = appGeneralQuotesUpdateDto.Rif; appGeneralQuotes.RazonSocial = appGeneralQuotesUpdateDto.RazonSocial; appGeneralQuotes.Direccion = appGeneralQuotesUpdateDto.Direccion; appGeneralQuotes.IdCliente = appGeneralQuotesUpdateDto.IdCliente; if (appGeneralQuotesUpdateDto.IdCliente == "000000") { appGeneralQuotes.IdMunicipio = appGeneralQuotesUpdateDto.IdMunicipio; var municipio = await _unitOfWork.Winy243Repository.GetById(appGeneralQuotesUpdateDto.IdMunicipio); if (municipio != null) { appGeneralQuotes.DescripcionMunicipio = municipio.DescMunicipio; } } else { var municipio = await _unitOfWork.Winy243Repository.GetByEstadoMunicipio(direccionEntregarValidate.Estado, direccionEntregarValidate.Municipio); if (municipio != null) { appGeneralQuotes.IdMunicipio = municipio.Recnum; appGeneralQuotes.DescripcionMunicipio = municipio.DescMunicipio; } } if (appGeneralQuotesUpdateDto.IdCliente != "000000") { appGeneralQuotes.IdVendedor = cliente.Vendedor1.Trim(); } else { appGeneralQuotes.IdVendedor = appGeneralQuotesUpdateDto.UsuarioActualiza; } appGeneralQuotes.Observaciones = appGeneralQuotesUpdateDto.Observaciones; appGeneralQuotes.IdCondPago = appGeneralQuotesUpdateDto.IdCondPago; appGeneralQuotes.IdContacto = appGeneralQuotesUpdateDto.IdContacto; appGeneralQuotes.IdDireccionFacturar = (decimal)cliente.IdDireccion; appGeneralQuotes.IdDireccionEntregar = appGeneralQuotesUpdateDto.IdDireccionEntregar; appGeneralQuotes.OrdenCompra = appGeneralQuotesUpdateDto.OrdenCompra; appGeneralQuotes.UsuarioActualiza = appGeneralQuotesUpdateDto.UsuarioActualiza; appGeneralQuotes.FechaActualiza = DateTime.Now; appGeneralQuotes.Proximo = 0; appGeneralQuotes.IdMtrTipoMoneda = appGeneralQuotesUpdateDto.IdMtrTipoMoneda; if (appGeneralQuotesUpdateDto.FechaPostergada != null) { appGeneralQuotes.FechaPostergada = appGeneralQuotesUpdateDto.FechaPostergada; } if (appGeneralQuotesUpdateDto.ObservacionPostergar != "" && appGeneralQuotesUpdateDto.ObservacionPostergar != null) { appGeneralQuotes.ObservacionPostergar = appGeneralQuotesUpdateDto.ObservacionPostergar; } else { appGeneralQuotesUpdateDto.ObservacionPostergar = ""; } appGeneralQuotes.FijarPrecioBs = appGeneralQuotesUpdateDto.FijarPrecioBs; AppStatusQuote appStatusQuote = await _unitOfWork.AppStatusQuoteRepository.GetById(appGeneralQuotes.IdEstatus); MtrVendedor vendedor = _unitOfWork.MtrVendedorRepository.GetById(appGeneralQuotes.IdVendedor); if (appGeneralQuotesUpdateDto.IdCliente != "000000") { appGeneralQuotes.SearchText = $"{appGeneralQuotes.Cotizacion}-{appGeneralQuotes.IdVendedor}-{vendedor.Nombre.Trim()}-{appGeneralQuotes.IdCliente}-{cliente.Nombre.Trim()}{appGeneralQuotes.IdVendedor}-{vendedor.Nombre.Trim()}-{appGeneralQuotes.IdCliente}-{appGeneralQuotes.RazonSocial.Trim()}-{appStatusQuote.Descripcion.Trim()}"; } else { appGeneralQuotes.SearchText = $"{appGeneralQuotes.Cotizacion}-{appGeneralQuotes.IdVendedor}-{vendedor.Nombre.Trim()}-{appGeneralQuotes.IdCliente}-{appGeneralQuotes.RazonSocial.Trim()}-{appStatusQuote.Descripcion.Trim()}"; appGeneralQuotes.IdDireccionEntregar = 1; appGeneralQuotes.IdDireccionFacturar = 1; } AppGeneralQuotes AppGeneralQuotesUpdated = await Update(appGeneralQuotes); //await _cotizacionService.IntegrarCotizacion(AppGeneralQuotesUpdated.Id); if (AppGeneralQuotesUpdated != null) { resultDto = _mapper.Map <AppGeneralQuotesGetDto>(AppGeneralQuotesUpdated); MtrVendedor mtrVendedor = _unitOfWork.MtrVendedorRepository.GetById(resultDto.IdVendedor); if (mtrVendedor != null) { MtrVendedorDto mtrVendedorDto = _mapper.Map <MtrVendedorDto>(mtrVendedor); resultDto.MtrVendedorDto = mtrVendedorDto; } MtrCliente mtrCliente = _unitOfWork.MtrClienteRepository.GetById(resultDto.IdCliente); if (mtrCliente != null) { MtrClienteDto mtrClienteDto = _mapper.Map <MtrClienteDto>(mtrCliente); resultDto.MtrClienteDto = mtrClienteDto; } MtrContactos mtrContactos = await _unitOfWork.MtrContactosRepository.GetById(resultDto.IdContacto); if (mtrContactos != null) { MtrContactosDto mtrContactosDto = _mapper.Map <MtrContactosDto>(mtrContactos); resultDto.MtrContactosDto = mtrContactosDto; } MtrDirecciones direccionEntregar = await _unitOfWork.MtrDireccionesRepository.GetById(resultDto.IdDireccionEntregar); if (direccionEntregar != null) { MtrDireccionesDto direccionEntregarDto = _mapper.Map <MtrDireccionesDto>(direccionEntregar); resultDto.MtrDireccionesEntregarDto = direccionEntregarDto; } MtrDirecciones direccionFacturar = await _unitOfWork.MtrDireccionesRepository.GetById(resultDto.IdDireccionFacturar); if (direccionFacturar != null) { MtrDireccionesDto direccionFacturarDto = _mapper.Map <MtrDireccionesDto>(direccionFacturar); resultDto.MtrDireccionesFacturarDto = direccionFacturarDto; } MtrCondicionPago condicionPago = await _unitOfWork.MtrCondicionPagoRepository.GetById(resultDto.IdCondPago); if (condicionPago != null) { CondicionPagoDto condicionPagoDto = _mapper.Map <CondicionPagoDto>(condicionPago); resultDto.CondicionPagoDto = condicionPagoDto; } MtrTipoMoneda mtrTipoMoneda = await _unitOfWork.MtrTipoMonedaRepository.GetById(resultDto.IdMtrTipoMoneda); if (mtrTipoMoneda != null) { MtrTipoMonedaDto mtrTipoMonedaDto = _mapper.Map <MtrTipoMonedaDto>(mtrTipoMoneda); resultDto.MtrTipoMonedaDto = mtrTipoMonedaDto; } metadata.IsValid = true; metadata.Message = $"Cotizacion: {resultDto.Cotizacion} Actualizada Satisfactoriamente!!"; } else { metadata.IsValid = false; metadata.Message = "Registro No actualizado"; } response.Meta = metadata; response.Data = resultDto; return(response); } catch (Exception ex) { metadata.IsValid = false; metadata.Message = ex.InnerException.Message; response.Meta = metadata; response.Data = resultDto; return(response); } }
public async Task <AppGeneralQuotesGetDto> GetAppGeneralQuotes(AppGeneralQuotesQueryFilter filters) { filters.PageNumber = filters.PageNumber == 0 ? _paginationOptions.DefaultPageNumber : filters.PageNumber; filters.PageSize = filters.PageSize == 0 ? _paginationOptions.DefaultPageSize : filters.PageSize; AppGeneralQuotes quotes = await _unitOfWork.AppGeneralQuotesRepository.GetByCotizacions(filters.Cotizacion); if (quotes != null) { AppGeneralQuotesGetDto appGeneralQuotesGetDto = _mapper.Map <AppGeneralQuotesGetDto>(quotes); MtrVendedor mtrVendedor = _unitOfWork.MtrVendedorRepository.GetById(appGeneralQuotesGetDto.IdVendedor); if (mtrVendedor != null) { MtrVendedorDto mtrVendedorDto = _mapper.Map <MtrVendedorDto>(mtrVendedor); appGeneralQuotesGetDto.MtrVendedorDto = mtrVendedorDto; } MtrCliente mtrCliente = _unitOfWork.MtrClienteRepository.GetById(appGeneralQuotesGetDto.IdCliente); if (mtrCliente != null) { MtrClienteDto mtrClienteDto = _mapper.Map <MtrClienteDto>(mtrCliente); appGeneralQuotesGetDto.MtrClienteDto = mtrClienteDto; } MtrContactos mtrContactos = await _unitOfWork.MtrContactosRepository.GetById(appGeneralQuotesGetDto.IdContacto); if (mtrContactos != null) { //MtrContactosDto mtrContactosDto = new MtrContactosDto(); //mtrContactosDto.IdContacto = mtrContactos.IdContacto; //mtrContactosDto.Cargo = mtrContactos.Email; MtrContactosDto mtrContactosDto = _mapper.Map <MtrContactosDto>(mtrContactos); appGeneralQuotesGetDto.MtrContactosDto = mtrContactosDto; } MtrDirecciones direccionEntregar = await _unitOfWork.MtrDireccionesRepository.GetById(appGeneralQuotesGetDto.IdDireccionEntregar); if (direccionEntregar != null) { MtrDireccionesDto direccionEntregarDto = _mapper.Map <MtrDireccionesDto>(direccionEntregar); appGeneralQuotesGetDto.MtrDireccionesEntregarDto = direccionEntregarDto; } MtrDirecciones direccionFacturar = await _unitOfWork.MtrDireccionesRepository.GetById(appGeneralQuotesGetDto.IdDireccionFacturar); if (direccionFacturar != null) { MtrDireccionesDto direccionFacturarDto = _mapper.Map <MtrDireccionesDto>(direccionFacturar); appGeneralQuotesGetDto.MtrDireccionesFacturarDto = direccionFacturarDto; } MtrCondicionPago condicionPago = await _unitOfWork.MtrCondicionPagoRepository.GetById(appGeneralQuotesGetDto.IdCondPago); if (condicionPago != null) { CondicionPagoDto condicionPagoDto = _mapper.Map <CondicionPagoDto>(condicionPago); appGeneralQuotesGetDto.CondicionPagoDto = condicionPagoDto; } MtrTipoMoneda mtrTipoMoneda = await _unitOfWork.MtrTipoMonedaRepository.GetById(appGeneralQuotesGetDto.IdMtrTipoMoneda); if (mtrTipoMoneda != null) { MtrTipoMonedaDto mtrTipoMonedaDto = _mapper.Map <MtrTipoMonedaDto>(mtrTipoMoneda); appGeneralQuotesGetDto.MtrTipoMonedaDto = mtrTipoMonedaDto; } var actualizar = await _unitOfWork.AppGeneralQuotesRepository.VerificarStatus(appGeneralQuotesGetDto.Id); if (actualizar) { await _unitOfWork.SaveChangesAsync(); } AppStatusQuote appStatusQuote = await _unitOfWork.AppStatusQuoteRepository.GetById(appGeneralQuotesGetDto.IdEstatus); if (appStatusQuote != null) { AppStatusQuoteGetDto appStatusQuoteDto = _mapper.Map <AppStatusQuoteGetDto>(appStatusQuote); appGeneralQuotesGetDto.AppStatusQuoteGetDto = appStatusQuoteDto; } appGeneralQuotesGetDto.PorcFlete = await GetFleteByIdDireccionEntrega(appGeneralQuotesGetDto.IdDireccionEntregar); var permiteAdicionarDetalle = await _unitOfWork.AppGeneralQuotesRepository.PermiteAdicionarDetalle(appGeneralQuotesGetDto.Id); appGeneralQuotesGetDto.PermiteAdicionarDetalle = permiteAdicionarDetalle; appGeneralQuotesGetDto.AppGeneralQuotesActionSheetDto = await GetAppGeneralQuotesActionSheetDto(appGeneralQuotesGetDto.Id); ApiResponse <List <AppDetailQuotesGetDto> > listDetail = await _appDetailQuotesService.GetListAppDetailQuoteByAppGeneralQuotesId(appGeneralQuotesGetDto.Id); if (listDetail != null) { appGeneralQuotesGetDto.AppDetailQuotesGetDto = listDetail.Data; } return(appGeneralQuotesGetDto); } else { return(null); } }
public async Task <PagedList <AppGeneralQuotesGetDto> > GetAllAppGeneralQuotes(AppGeneralQuotesQueryFilter filters) { filters.PageNumber = filters.PageNumber == 0 ? _paginationOptions.DefaultPageNumber : filters.PageNumber; filters.PageSize = filters.PageSize == 0 ? _paginationOptions.DefaultPageSize : filters.PageSize; List <AppGeneralQuotes> quotes = await _unitOfWork.AppGeneralQuotesRepository.GetAll(filters); if (quotes.Count > 0) { List <AppGeneralQuotesGetDto> appGeneralQuotesGetDto = _mapper.Map <List <AppGeneralQuotesGetDto> >(quotes); foreach (AppGeneralQuotesGetDto item in appGeneralQuotesGetDto) { MtrVendedor mtrVendedor = _unitOfWork.MtrVendedorRepository.GetById(item.IdVendedor); if (mtrVendedor != null) { MtrVendedorDto mtrVendedorDto = _mapper.Map <MtrVendedorDto>(mtrVendedor); item.MtrVendedorDto = mtrVendedorDto; } MtrCliente mtrCliente = _unitOfWork.MtrClienteRepository.GetById(item.IdCliente); if (mtrCliente != null) { MtrClienteDto mtrClienteDto = _mapper.Map <MtrClienteDto>(mtrCliente); item.MtrClienteDto = mtrClienteDto; if (item.IdCliente == "000000") { item.MtrClienteDto.Descripcion = item.IdCliente.Trim() + "-" + item.RazonSocial.Trim() + " RIF: " + item.Rif.ToString(); } } MtrContactos mtrContactos = await _unitOfWork.MtrContactosRepository.GetById(item.IdContacto); if (mtrContactos != null) { MtrContactosDto mtrContactosDto = _mapper.Map <MtrContactosDto>(mtrContactos); item.MtrContactosDto = mtrContactosDto; } MtrDirecciones direccionEntregar = await _unitOfWork.MtrDireccionesRepository.GetById(item.IdDireccionEntregar); if (direccionEntregar != null) { MtrDireccionesDto direccionEntregarDto = _mapper.Map <MtrDireccionesDto>(direccionEntregar); item.MtrDireccionesEntregarDto = direccionEntregarDto; } MtrDirecciones direccionFacturar = await _unitOfWork.MtrDireccionesRepository.GetById(item.IdDireccionFacturar); if (direccionFacturar != null) { MtrDireccionesDto direccionFacturarDto = _mapper.Map <MtrDireccionesDto>(direccionFacturar); item.MtrDireccionesFacturarDto = direccionFacturarDto; } MtrCondicionPago condicionPago = await _unitOfWork.MtrCondicionPagoRepository.GetById(item.IdCondPago); if (condicionPago != null) { CondicionPagoDto condicionPagoDto = _mapper.Map <CondicionPagoDto>(condicionPago); item.CondicionPagoDto = condicionPagoDto; } MtrTipoMoneda mtrTipoMoneda = await _unitOfWork.MtrTipoMonedaRepository.GetById(item.IdMtrTipoMoneda); if (mtrTipoMoneda != null) { MtrTipoMonedaDto mtrTipoMonedaDto = _mapper.Map <MtrTipoMonedaDto>(mtrTipoMoneda); item.MtrTipoMonedaDto = mtrTipoMonedaDto; } var actualizar = await _unitOfWork.AppGeneralQuotesRepository.VerificarStatus(item.Id); if (actualizar) { await _unitOfWork.SaveChangesAsync(); } AppStatusQuote appStatusQuote = await _unitOfWork.AppStatusQuoteRepository.GetById(item.IdEstatus); if (appStatusQuote != null) { AppStatusQuoteGetDto appStatusQuoteDto = _mapper.Map <AppStatusQuoteGetDto>(appStatusQuote); item.AppStatusQuoteGetDto = appStatusQuoteDto; } if (item.IdCliente == "000000") { var municipio = await _unitOfWork.Winy243Repository.GetById(item.IdMunicipio); if (municipio != null) { item.PorcFlete = municipio.PorcFlete; MunicipioGetDto municipioGetDto = _mapper.Map <MunicipioGetDto>(municipio); item.MunicipioGetDto = municipioGetDto; } } else { item.PorcFlete = await GetFleteByIdDireccionEntrega(item.IdDireccionEntregar); var municipio = await _unitOfWork.Winy243Repository.GetByEstadoMunicipio(direccionEntregar.Estado, direccionEntregar.Municipio); if (municipio != null) { item.IdMunicipio = municipio.Recnum; item.descripcionMunicipio = municipio.DescMunicipio; MunicipioGetDto municipioGetDto = _mapper.Map <MunicipioGetDto>(municipio); item.MunicipioGetDto = municipioGetDto; } } var permiteAdicionarDetalle = await _unitOfWork.AppGeneralQuotesRepository.PermiteAdicionarDetalle(item.Id); item.PermiteAdicionarDetalle = permiteAdicionarDetalle; item.AppGeneralQuotesActionSheetDto = await GetAppGeneralQuotesActionSheetDto(item.Id); ApiResponse <List <AppDetailQuotesGetDto> > listDetail = await _appDetailQuotesService.GetListAppDetailQuoteByAppGeneralQuotesId(item.Id); if (listDetail != null) { item.AppDetailQuotesGetDto = listDetail.Data; } item.FechaString = item.Fecha.ToString("dd/MM/yyyy"); } PagedList <AppGeneralQuotesGetDto> pagedResult = PagedList <AppGeneralQuotesGetDto> .Create(appGeneralQuotesGetDto, filters.PageNumber, filters.PageSize); return(pagedResult); } else { return(null); } }
public async Task <ReciboDto> GeneraReciboDto(long recibo) { ReciboDto result = new ReciboDto(); CobGeneralCobranza cobGeneralCobranza = new CobGeneralCobranza(); List <CobGrabacionCobranzas> listaCobGrabacionCobranzas = new List <CobGrabacionCobranzas>(); try { //Crea Objeto General cobranzas cobGeneralCobranza = await GetGeneralCobranzaPorDocumento(recibo); CobGeneralCobranzaDto generalCobranzasDtos = _mapper.Map <CobGeneralCobranzaDto>(cobGeneralCobranza); MtrCliente cliente = await _mtrClienteService.GetByIdAsync(generalCobranzasDtos.IdCliente); MtrVendedor vendedor = await _mtrVendedorService.GetByIdAsync(cliente.Vendedor1); generalCobranzasDtos.NombreCliente = cliente.NoRegTribut + " " + cliente.Nombre.Trim(); generalCobranzasDtos.IdCliente = generalCobranzasDtos.IdCliente.Trim(); generalCobranzasDtos.FechaTransaccionString = generalCobranzasDtos.FechaTransaccion.ToShortDateString(); generalCobranzasDtos.NombreVendedor = vendedor.Nombre; generalCobranzasDtos.vendedor = vendedor.Codigo; generalCobranzasDtos.CorreoVendedor = vendedor.EMail; generalCobranzasDtos.TelefonoVendedor = vendedor.TlfCelular; decimal decimalValue = generalCobranzasDtos.MontoTransaccion; generalCobranzasDtos.MontoTransaccionString = string.Format("{0:N}", decimalValue); // 1,234,567.00 //creamos el objeto Moneda oMoneda = new Moneda(); //primer parametro es la cantidad en string //segundo parametro es si queremos que sea mayuscula //tercer parametro la moneda MtrTipoMoneda tipoMoneda = await _mtrTipoMonedaService.GetById((long)cobGeneralCobranza.IdMtrTipoMoneda); string MonedaString = tipoMoneda.Descripcion; string resultado = oMoneda.Convertir(generalCobranzasDtos.MontoTransaccion.ToString(), true, MonedaString); generalCobranzasDtos.MontoLetras = resultado; decimal?detalleValue = generalCobranzasDtos.TotalDetalleCobrado; generalCobranzasDtos.TotalDetalleCobradoString = string.Format("{0:N}", detalleValue); generalCobranzasDtos.Status = EstatusRecibo(cobGeneralCobranza); MtrBancos banco = await _mtrBancosService.GetByCodigo(generalCobranzasDtos.IdBanco); generalCobranzasDtos.NombreBanco = banco.Nombre; CobTipoTransaccion tipoTransaccion = await _cobTipoTransaccionService.GetById(generalCobranzasDtos.IdTipoTransaccion); generalCobranzasDtos.NombreTipoTransaccion = tipoTransaccion.NombreTipoTransaccion; generalCobranzasDtos.FlagImpuesto = tipoTransaccion.FlagImpuesto; MtrTipoMoneda mtrTipoMoneda = await _mtrTipoMonedaService.GetById((long)generalCobranzasDtos.IdMtrTipoMoneda); generalCobranzasDtos.NombreTipoMoneda = mtrTipoMoneda.Descripcion; listaCobGrabacionCobranzas = _unitOfWork.CobGrabacionCobranzasRepository.GetByDocumento(recibo); listaCobGrabacionCobranzas = listaCobGrabacionCobranzas.Where(x => x.DocumentoSap == "").ToList(); List <CobGrabacionCobranzaDto> listaCobGrabacionCobranzasDto = _mapper.Map <List <CobGrabacionCobranzaDto> >(listaCobGrabacionCobranzas); foreach (CobGrabacionCobranzaDto item in listaCobGrabacionCobranzasDto) { item.CuentaBancaria = banco.CodContable; item.Moneda = mtrTipoMoneda.Descripcion; if (item.Transaccion == "RU") { item.DocAfectaMostrar = item.Cotizacion; } else { item.DocAfectaMostrar = item.DocAfectaSap; } decimalValue = (decimal)item.Monto; item.MontoMostrar = string.Format("{0:N}", decimalValue); // 1,234,567.00 CobEstadoDeCuenta cobEstadoDeCuenta = await _cobEstadoCuentaService.GetEstadoCuentaById(item.DocAfecta); if (cobEstadoDeCuenta != null) { decimalValue = (decimal)cobEstadoDeCuenta.BaseImponible; item.BaseImponible = (decimal)cobEstadoDeCuenta.BaseImponible; item.BaseImponibleMostrar = string.Format("{0:N}", decimalValue); // 1,234,567.00 decimalValue = (decimal)cobEstadoDeCuenta.Iva; item.Iva = (decimal)cobEstadoDeCuenta.Iva; item.IvaMostrar = string.Format("{0:N}", decimalValue); // 1,234,567.00 decimalValue = (decimal)cobEstadoDeCuenta.MontoOriginal; item.MontoOriginalMostrar = string.Format("{0:N}", decimalValue); // 1,234,567.00 item.FechaDocumento = cobEstadoDeCuenta.FechaDocumento; DateTime fechaDocumento = (DateTime)cobEstadoDeCuenta.FechaDocumento; item.FechaDocumentoString = fechaDocumento.ToShortDateString(); } //List<CobPagosRetencionesDto> listCobPagosRetencionesDto = new List<CobPagosRetencionesDto>(); List <CobPagosRetenciones> listCobPagosRetenciones = _unitOfWork.CobPagosRetencionesRepository.GetByIdCobranzas(item.Id); List <CobPagosRetencionesDto> listCobPagosRetencionesDto = _mapper.Map <List <CobPagosRetencionesDto> >(listCobPagosRetenciones); if (listCobPagosRetencionesDto != null && listCobPagosRetencionesDto.Count > 0) { foreach (CobPagosRetencionesDto itemRet in listCobPagosRetencionesDto) { decimalValue = itemRet.Monto; itemRet.MontoString = string.Format("{0:N}", decimalValue); // 1,234,567.00 CobTransacciones transaccion = await _cobTransaccionesService.GetById(itemRet.IdTransaccion); if (transaccion != null) { itemRet.NombreTransaccion = transaccion.NombreTransaccion; itemRet.TxOrigen = transaccion.TipoSap; } itemRet.FechaComprobanteString = itemRet.FechaComprobante.ToShortDateString(); } } item.CobPagosRetencionesDto = listCobPagosRetencionesDto; } result.CobGeneralCobranzaDto = generalCobranzasDtos; result.CobGrabacionCobranzaDto = listaCobGrabacionCobranzasDto; return(result); } catch (Exception e) { string message = e.Message; throw; } }
public async Task <IActionResult> GetAllGrabacionCobranza(CobGrabacionCobranzasQueryFilter filters) { PagedList <CobGrabacionCobranzas> listaCobGrabacionCobranzas; listaCobGrabacionCobranzas = _cobGrabacionCobranzasService.GetCobGrabacionCobranzas(filters); IEnumerable <CobGrabacionCobranzaDto> listaCobGrabacionCobranzasDto = _mapper.Map <IEnumerable <CobGrabacionCobranzaDto> >(listaCobGrabacionCobranzas); foreach (CobGrabacionCobranzaDto item in listaCobGrabacionCobranzasDto) { if (item.Transaccion == "RU") { item.DocAfectaMostrar = item.Cotizacion; } else { item.DocAfectaMostrar = item.DocAfectaSap; } decimal decimalValue = (decimal)item.Monto; item.MontoMostrar = string.Format("{0:N}", decimalValue); // 1,234,567.00 CobEstadoDeCuenta cobEstadoDeCuenta = await _cobEstadoCuentaService.GetEstadoCuentaById(item.DocAfecta); if (cobEstadoDeCuenta != null) { decimalValue = (decimal)cobEstadoDeCuenta.BaseImponible; item.BaseImponible = (decimal)cobEstadoDeCuenta.BaseImponible; item.BaseImponibleMostrar = string.Format("{0:N}", decimalValue); // 1,234,567.00 decimalValue = (decimal)cobEstadoDeCuenta.Iva; item.Iva = (decimal)cobEstadoDeCuenta.Iva; item.IvaMostrar = string.Format("{0:N}", decimalValue); // 1,234,567.00 decimalValue = (decimal)cobEstadoDeCuenta.MontoOriginal; item.MontoOriginalMostrar = string.Format("{0:N}", decimalValue); // 1,234,567.00 item.FechaDocumento = cobEstadoDeCuenta.FechaDocumento; DateTime fechaDocumento = (DateTime)cobEstadoDeCuenta.FechaDocumento; item.FechaDocumentoString = fechaDocumento.ToShortDateString(); CobEstadoCuentaDto estadoCuentaDto = _mapper.Map <CobEstadoCuentaDto>(cobEstadoDeCuenta); MtrCliente cliente = await _mtrClienteService.GetByIdAsync(estadoCuentaDto.IdCliente); estadoCuentaDto.Saldo = estadoCuentaDto.Rpaap; decimalValue = (decimal)estadoCuentaDto.Saldo; estadoCuentaDto.SaldoString = string.Format("{0:N}", decimalValue); // 1,234,567.00 decimalValue = (decimal)estadoCuentaDto.Iva; estadoCuentaDto.IvaString = string.Format("{0:N}", decimalValue); // 1,234,567.00 decimalValue = (decimal)estadoCuentaDto.MontoOriginal; estadoCuentaDto.MontoOriginalString = string.Format("{0:N}", decimalValue); // 1,234,567.00 decimalValue = (decimal)estadoCuentaDto.BaseImponible; estadoCuentaDto.BaseImponibleString = string.Format("{0:N}", decimalValue); // 1,234,567.00 estadoCuentaDto.searchText = estadoCuentaDto.Rpdct + "-" + estadoCuentaDto.Rpdoc.ToString() + "- Cliente: " + cliente.Nombre.Trim() + "- Saldo: " + estadoCuentaDto.SaldoString; item.CobEstadoCuentaDto = estadoCuentaDto; } } Metadata metadata = new Metadata { TotalCount = listaCobGrabacionCobranzas.TotalCount, PageSize = listaCobGrabacionCobranzas.PageSize, CurrentPage = listaCobGrabacionCobranzas.CurrentPage, TotalPage = listaCobGrabacionCobranzas.TotalPage, HasNextPage = listaCobGrabacionCobranzas.HasNextPage, HasPreviousPage = listaCobGrabacionCobranzas.HasPreviousPage, NextPageUrl = "", // _uriService.GetGeneralCobranzaPaginationUri(filters, "").ToString(), PreviousPageUrl = "" // _uriService.GetGeneralCobranzaPaginationUri(filters, "").ToString(), }; ApiResponse <IEnumerable <CobGrabacionCobranzaDto> > response = new ApiResponse <IEnumerable <CobGrabacionCobranzaDto> >(listaCobGrabacionCobranzasDto) { Meta = metadata }; return(Ok(response)); }