Esempio n. 1
0
        public int GenerateAfFile(string basePath, RipsFilter ripsFilter, IEnumerable <Rips> rips)
        {
            var consecutive = Path.GetFileName(basePath);
            var afFiles     = rips.Select(rip => new RipsAfFile
            {
                ProviderCode             = rip.ProviderCode,
                BusinessName             = rip.BusinessName,
                InitialDate              = rip.InitialDate.Replace("-", "/"),
                FinalDate                = rip.FinalDate.Replace("-", "/"),
                AdomIdentiticationNumber = rip.AdomIdentificationNumber,
                AdomIdentiticationTypeId = rip.AdomIdentificationType,
                Comission                = 0,
                EntityCode               = rip.EntityCode,
                EntityName               = rip.EntityName,
                ContractNumber           = "",
                BenefitPlan              = "",
                PolicyNumber             = "",
                InvoiceDate              = ripsFilter.InvoiceDate.Replace("-", "/"),
                InvoiceNumber            = ripsFilter.InvoiceNumber,
                NetValue               = ripsFilter.NetValue,
                OtherValuesReceived    = rip.OtherValuesReceived,
                TotalCopaymentReceived = ripsFilter.Copayment
            }).ToList();
            var filePath = string.Format(@"{0}\AF{1}.txt", basePath, consecutive);

            using (var streamWriter = File.CreateText(filePath))
            {
                var writer = new CsvWriter(streamWriter);
                writer.Configuration.HasHeaderRecord = false;
                writer.WriteRecords(afFiles);
            }
            return(afFiles.Count);
        }
Esempio n. 2
0
        public int GenerateApFile(string basePath, RipsFilter ripsFilter, IEnumerable <Rips> rips)
        {
            var consecutive = Path.GetFileName(basePath);
            var apFiles     = (
                from rip in rips
                where rip.ClassificationId == 2
                select new RipsApFile
            {
                ProviderCode = rip.ProviderCode,
                DocumentTypeName = rip.DocumentTypeAbbreviation,
                PatientDocument = rip.PatientDocument,
                InvoiceNumber = ripsFilter.InvoiceNumber,
                FinalDate = ripsFilter.FinalDateIni.Replace("-", "/"),
                AuthorizationNumber = rip.AuthorizationNumber,
                RealizationScope = "1",
                ProcedurePurpose = "2",
                AttendandPerson = "4",
                Cie10 = rip.Cie10,
                Cups = rip.Cups,
                Rate = rip.Rate,
            }).ToList();

            var filePath = string.Format(@"{0}\AP{1}.txt", basePath, consecutive);

            using (var streamWriter = File.CreateText(filePath))
            {
                var writer = new CsvWriter(streamWriter);
                writer.Configuration.HasHeaderRecord = false;
                writer.WriteRecords(apFiles);
            }
            return(apFiles.Count);
        }
Esempio n. 3
0
        public int GenerateAtFile(string basePath, RipsFilter ripsFilter, IEnumerable <Rips> rips)
        {
            var consecutive = Path.GetFileName(basePath);
            var atFiles     = new List <RipsAtFile>();

            foreach (var rip in rips)
            {
                var supplies = _ripsRepository.GetServiceSupplies(rip.AssignServiceId);
                atFiles.AddRange(supplies.Select(sup => new RipsAtFile
                {
                    InvoiceNumber       = ripsFilter.InvoiceNumber,
                    PatientDocument     = rip.PatientDocument,
                    ProviderCode        = rip.ProviderCode,
                    AuthorizationNumber = rip.AuthorizationNumber,
                    DocumentTypeName    = rip.DocumentTypeAbbreviation,
                    ServiceType         = "1",
                    SupplyCode          = sup.SupplyCode,
                    SupplyQuantity      = sup.Quantity,
                    SupplyName          = sup.SupplyName,
                    SupplyTotalValue    = (0 * sup.Quantity)
                }));
            }
            var filePath = string.Format(@"{0}\AT{1}.txt", basePath, consecutive);

            using (var streamWriter = File.CreateText(filePath))
            {
                var writer = new CsvWriter(streamWriter);
                writer.Configuration.HasHeaderRecord = false;
                writer.WriteRecords(atFiles);
            }
            return(atFiles.Count);
        }
Esempio n. 4
0
        public ServiceResult <IEnumerable <Rips> > GetRipsServices(RipsFilter ripsFilter)
        {
            var result = _ripsRepository.GetServiceRips(ripsFilter);

            return(new ServiceResult <IEnumerable <Rips> >
            {
                Result = result,
                Errors = new[] { string.Empty },
                Success = true
            });
        }
Esempio n. 5
0
        public ServiceResult <IEnumerable <Rips> > Get([FromQuery] RipsFilter ripsFilter)
        {
            ServiceResult <IEnumerable <Rips> > result;

            try
            {
                result = _ripsDomainService.GetRipsServices(ripsFilter);
            }
            catch (Exception ex)
            {
                result         = new ServiceResult <IEnumerable <Rips> >();
                result.Errors  = new[] { ex.Message };
                result.Success = false;
            }

            return(result);
        }
Esempio n. 6
0
        public int GenerateAcFile(string basePath, RipsFilter ripsFilter, IEnumerable <Rips> rips)
        {
            var consecutive = Path.GetFileName(basePath);
            var acFiles     = new List <RipsAcFile>();

            foreach (var rip in rips)
            {
                var details = _ripsRepository.GetServiceDetail(rip.AssignServiceId);
                acFiles.AddRange(details.Select(item => new RipsAcFile
                {
                    ProviderCode        = rip.ProviderCode,
                    DocumentTypeName    = rip.DocumentTypeAbbreviation?.Replace("\"", "").Trim(),
                    PatientDocument     = rip.PatientDocument?.Replace("\"", "").Trim(),
                    InvoiceNumber       = ripsFilter.InvoiceNumber?.Replace("\"", "").Trim(),
                    FinalDate           = item.DateVisit?.Replace("-", "/"),
                    AuthorizationNumber = rip.AuthorizationNumber?.Replace("\"", "").Trim(),
                    Cups                = rip.Cups?.Replace("\"", "").Trim(),
                    Rate                = rip.Rate,
                    Consultation        = rip.Consultation,
                    Cie10               = rip.Cie10?.Replace("\"", "").Trim(),
                    DiagnosticType      = "2",
                    External            = rip.External,
                    CopaymentPerSession = rip.CoPaymentAmount,
                    NetValuePerSession  = rip.Rate - rip.CoPaymentAmount
                }));
            }
            var filePath = string.Format(@"{0}\AC{1}.txt", basePath, consecutive);

            using (var streamWriter = File.CreateText(filePath))
            {
                var writer = new CsvWriter(streamWriter);
                writer.Configuration.HasHeaderRecord = false;
                writer.WriteRecords(acFiles);
            }
            return(acFiles.Count);
        }
Esempio n. 7
0
        public IEnumerable <Rips> GetServiceRips(RipsFilter ripsFilter)
        {
            var whereClause = new StringBuilder("WHERE ags.StateId = 2 ");

            if (ripsFilter.EntityId > 0)
            {
                whereClause.Append("AND ent.EntityId = @EntityId ");
            }
            if (ripsFilter.EntityPlanId > 0)
            {
                whereClause.Append("AND pe.PlanEntityId = @EntityPlanId ");
            }
            if (ripsFilter.ServiceTypeId > 0)
            {
                whereClause.Append("AND ser.ServiceTypeId = @ServiceTypeId ");
            }
            if (!string.IsNullOrEmpty(ripsFilter.InitialDateIni))
            {
                whereClause.Append("AND CONVERT(DATETIME,ags.InitialDate) >= CONVERT(DATETIME,@InitialDateIni, 105) ");
            }
            if (!string.IsNullOrEmpty(ripsFilter.InitialDateEnd))
            {
                whereClause.Append("AND CONVERT(DATETIME,ags.InitialDate) <= CONVERT(DATETIME,@InitialDateEnd, 105) ");
            }
            if (!string.IsNullOrEmpty(ripsFilter.FinalDateIni))
            {
                whereClause.Append("AND CONVERT(DATETIME,ags.FinalDate) >= CONVERT(DATETIME,@FinalDateIni, 105) ");
            }
            if (!string.IsNullOrEmpty(ripsFilter.FinalDateEnd))
            {
                whereClause.Append("AND CONVERT(DATETIME,ags.FinalDate) <= CONVERT(DATETIME,@FinalDateEnd, 105) ");
            }
            var finalQuery = string.Format("{0} {1}", RipsQuerys.GetServiceRips, whereClause);

            return(_dbConnection.Query <Rips>(finalQuery, ripsFilter));
        }