Пример #1
0
        public async Task Create_Criteria_Test()
        {
            var           clientLocationName = "UT Southwestern Medical Center Professional";
            IDbConnection smartAgentDb       = new SqlConnection(ConfigurationManager.ConnectionStrings[_devAppConfigName].ConnectionString);
            var           kernel             = new StandardKernel(new RepoTestsModule(smartAgentDb));

            var criteriaRepo       = new CreateSmartAgentUserRepo(smartAgentDb);
            var criteriaSearchRepo = kernel.Get <IAsyncRepository <CriteriaDetails> >();
            var clientLocationRepo = kernel.Get <IAsyncRepository <ClientLocations> >();

            var clientLocation = await clientLocationRepo.FindByName(clientLocationName);

            if (clientLocation.Any())
            {
                var  l                 = clientLocation.FirstOrDefault();
                var  clientkey         = new Guid("2a5f3da7-0f1d-466b-9df4-55b5b677f106");
                var  clientLocationKey = new Guid("f68c2bc6-95db-4f73-a453-5ef66e808930");
                var  criteriaSetname   = "UT Southwestern Medical Center Professional ";
                Guid scriptKey         = Guid.Empty;
                var  criteriaSetKey    = Guid.NewGuid();
                var  iprkey            = "";

                var c = Criteria.CreateCriteria
                        (
                    criteriaSetname,
                    criteriaSetKey,
                    scriptKey,
                    iprkey,
                    clientkey,
                    clientLocationKey,
                    "kris.lindsey",
                    ""
                        );


                var critera = await criteriaSearchRepo.FindByName(clientLocationName);

                if (critera.Any())
                {
                    Console.WriteLine("Found records! nothing to do hear :)");
                    return;
                }

                else
                {
                    var result = await criteriaRepo.CreateCriteraRecords(c);

                    Console.WriteLine("criteria created: ", result);
                }
            }
        }
Пример #2
0
        public async Task Create_Client_Test()
        {
            // Get connection prepare for data entry
            IDbConnection smartAgentDb = new SqlConnection(ConfigurationManager.ConnectionStrings[_devAppConfigName].ConnectionString);

            // Instantiate Repositories needed for data entry
            var kernel = new StandardKernel(new RepoTestsModule(smartAgentDb));

            // Start client creation process.
            var clientName   = "Community Health Systems (CHS)";
            var clientKey    = new Guid("5ee74d8b-f1f9-4464-a1e3-aa7c4335d12d");
            var howToDeliver = "OCSVC";

            if (clientKey == new Guid("00000000-0000-0000-0000-000000000000"))
            {
                clientKey = Guid.NewGuid();
            }

            var client = new ClientMaster(clientName: clientName, clientKey: clientKey, howToDeliver: howToDeliver);

            var    clientLocationName = "CHS - Deaconess Med Ctr";
            var    clientId           = "109781";
            string facilityId         = "VAC";
            var    tpId       = "178995";
            var    lastUserId = "kris.lindsey";

            IEnumerable <ClientMaster> clients = new List <ClientMaster>();

            var clientMasterRepo   = kernel.Get <IAsyncRepository <ClientMaster> >();
            var clientLocationRepo = kernel.Get <IAsyncRepository <ClientLocations> >();

            //Check to see if client already exists in data
            clients = await clientMasterRepo.FindByName(client.ClientName);

            // If one exits add location data
            if (clients.Any())
            {
                var locations         = new List <ClientLocations>();
                var clientLocationKey = Guid.NewGuid();

                var clientLocation = ClientLocations.CreateClientLocation
                                     (
                    clientLocationName,
                    clientKey,
                    clientLocationKey,
                    clientId,
                    tpId,
                    facilityId
                                     );

                clientLocation.LastUserId = lastUserId;

                locations.Add(clientLocation);
                var clientLocationEntryResult = await clientLocationRepo.AddAsync(locations);

                if (clientLocationEntryResult == clientLocation.ClientLocationKey)
                {
                    var facilityRepo = kernel.Get <IAsyncRepository <FacilityMaster> >();

                    var newFacility = FacilityMaster.CreateFaciltiy
                                      (
                        clientLocation.ClientLocationName,
                        Guid.NewGuid(),
                        "0144300301443003",
                        clientLocation.ClientKey,
                        clientLocation.ClientLocationKey
                                      );

                    var facilites = new List <FacilityMaster>();

                    facilites.Add(newFacility);
                    var result = await facilityRepo.AddAsync(facilites);

                    var mappingValues = new List <PayerWebsiteMappingValue>();

                    var newMappingValue = PayerWebsiteMappingValue.CreateWebisteMappingValue
                                          (
                        clientKey,
                        clientLocationKey
                                          );

                    mappingValues.Add(newMappingValue);

                    var pwmvRepo = kernel.Get <IAsyncRepository <PayerWebsiteMappingValue> >();
                    var mvresult = await pwmvRepo.AddAsync(mappingValues);

                    if (!string.IsNullOrWhiteSpace(clientLocationName))
                    {
                        var criteriaRepo       = new CreateSmartAgentUserRepo(smartAgentDb);
                        var criteriaSearchRepo = kernel.Get <IAsyncRepository <CriteriaDetails> >();
                        //var criteriaSetName = "";

                        var insuranceName   = "Emblem Submit";
                        var clientkey       = new Guid("6648E492-D332-443B-8273-77992C36CD3E");
                        var criteriaSetname = clientName + insuranceName;
                        var scriptKey       = new Guid("CD2D1C15-D197-E211-B890-000C29729DFF");
                        var criteriaSetKey  = Guid.NewGuid();
                        var iprkey          = "PCEMBLEM01";

                        var c = Criteria.CreateCriteria
                                (
                            criteriaSetname,
                            criteriaSetKey,
                            scriptKey,
                            iprkey,
                            clientkey,
                            clientLocationKey,
                            "kris.lindsey",
                            ""
                                );

                        var critera = await criteriaSearchRepo.FindByName(clientLocationName);

                        if (critera.Any())
                        {
                            Console.WriteLine("Found records! nothing to do hear :)");
                            return;
                        }

                        else
                        {
                            var results = await criteriaRepo.CreateCriteraRecords(c);

                            Console.WriteLine("criteria created: ", result);
                        }
                    }
                }
            }
            //If not create client master record and then procedd to enter client data.
            else
            {
                var cs = new List <ClientMaster>();
                cs.Add(client);
                var result = await clientMasterRepo.AddAsync(cs);

                if (result == clientKey)
                {
                }
            }

            foreach (var item in clients)
            {
                writeToConsole(item.ClientName + " ", item.ClientKey);
            }
        }