//TODO: Integrate Solr here to accept a search string and find the relevant contracts.

        public GetContractsOutput FullTextSearch(string searchstring)
        {
            //GetContractText();



            //Perform Solr calls and stuff here to get back a list of relevant contract numbers

            var results         = SolrContractService.QueryByField("Contract", searchstring);
            var contractNumbers = new List <string>();

            foreach (SolrContract result in results)
            {
                contractNumbers.Add(result.ContractNumber);
            }


            //foreach (string number in contractNumbers)
            {
                //System.Diagnostics.Debug.WriteLine(number + "\n");
            }


            return(GetAllContractsWithNumbers(contractNumbers));
        }
        public void CreateContract(CreateContractInput input)
        {
            string filepath = System.Web.HttpContext.Current.Server.MapPath("~") + @"BINARYFILES\file." + input.Contract;
            string fileText = SolrContractService.BinaryDocumentUpload(filepath);

            var contract = new Contract
            {
                //FullContractNum is set by Contract constructor
                CRN                              = input.CRN,
                StartDate                        = input.StartDate,
                EndDate                          = input.EndDate,
                Title                            = input.Title,
                CommonName                       = input.CommonName,
                ContractStatus                   = input.ContractStatus,
                CeilingCost                      = input.CeilingCost,
                CeilingFee                       = input.CeilingFee,
                CeilingValue                     = input.CeilingValue,
                ProjectControlAnalyst            = input.ProjectControlAnalyst,
                Representative                   = input.Representative,
                LaborCertificationRequired       = input.LaborCertificationRequired,
                OneLaborCategoryPerPerson        = input.OneLaborCategoryPerPerson,
                LaborCertificationResumeRequired = input.LaborCertificationResumeRequired,
                OrgID                            = input.OrgID,
                ProgramManager                   = input.ProgramManager,
                Customer                         = input.Customer,
                ContractType                     = input.ContractType,
                ExportControlLicense             = input.ExportControlLicense,
                ContractRecTypeCode              = input.ContractRecTypeCode,
                IsKeyPersonnel                   = input.IsKeyPersonnel,
                BillingFrequency                 = input.BillingFrequency
            };
            var contractText = new ContractText
            {
                ContractNumber = contract.FullContractNum,
                Contract       = fileText//input.Contract
            };

            _contractRepository.Insert(contract);
            _contractTextRepository.Insert(contractText);
            SolrContractService.ExecuteDataImportHandler();
            //System.Diagnostics.Debug.WriteLine("testing...");
            return;
        }
        public string getContractText(string contractNumber)
        {
            var results = SolrContractService.GetContract(contractNumber);

            return(results[0].ContractText);
        }
 public void DeltaImport()
 {
     SolrContractService.ExecuteDataImportHandler();
 }