/// <summary> /// Initializes a new instance of the <see cref="QueryProcessorManager"/> class. /// </summary> /// <param name="hospitalizationDataManager"> /// The hospitalization Data Manager. /// </param> public QueryProcessorManager(IHospitalizationDataManager hospitalizationDataManager) { accordanceProcessorDictionary = new Dictionary <string, IQueryProcessor>(); this.hospitalizationDataManager = hospitalizationDataManager; // DalManagerFactory.Initialize(); // this.hospitalizationDataManager = DalManagerFactory.Config.HospitalizationDataManagerStub; // this.hospitalizationBaseCollection = new List<HospitalizationBase>(); }
/// <summary> /// The get fill xml report. /// </summary> /// <param name="reportName"> /// The report name. /// </param> /// <param name="startDateTime"> /// The start date time. /// </param> /// <param name="endDateTime"> /// The end date time. /// </param> /// <param name="departmentIdCollection"> /// The department id collection. /// </param> /// <returns> /// The <see cref="string"/>. /// </returns> public string GetFillXmlReport( string reportName, DateTime startDateTime, DateTime endDateTime, List <int> departmentIdCollection) { // this.hospitalizationDataManager = DalManagerFactory.CreateHospitalizationDataManager("stub"); this.hospitalizationDataManager = DalManagerFactory.CreateHospitalizationDataManager("default"); this.queryProcessorManager = new QueryProcessorManager(this.hospitalizationDataManager); var dataTable = this.queryProcessorManager.DoQuery( reportName, startDateTime, endDateTime, departmentIdCollection); var xmlData = DataTableToXMLConverter.ConvertDataTableToXML(dataTable); string resultReport = null; // XDocument dataReport = XDocument.Parse(xmlData); // string dataForFormFileName = reportName + ".data" + ".xml"; // dataReport.Save(dataForFormFileName); // var outputFormFileName = reportName + ".output" + ".xml"; var hospital = "Больница № 6"; var reportNameBuilder = new StringBuilder(); foreach (var departmentId in departmentIdCollection) { var departmentInfo = this.departmentCollection.FirstOrDefault(d => d.DepartmentId == departmentId); reportNameBuilder.Append(departmentInfo.DepartmentName + ", "); } reportNameBuilder.Length -= 2; var departmentNameCollection = reportNameBuilder.ToString(); if (this.accordanceTemplateFormDictionary.ContainsKey(reportName)) { resultReport = this.DoTransformWithArg( this.accordanceTemplateFormDictionary[reportName], xmlData, startDateTime, endDateTime, departmentNameCollection, hospital); } return(resultReport); }
/// <summary> /// The create hospitalization data manager. /// </summary> /// <param name="type"> /// The type. /// </param> /// <returns> /// The <see cref="IHospitalizationDataManager"/>. /// </returns> public static IHospitalizationDataManager CreateHospitalizationDataManager(string type) { IHospitalizationDataManager hospitalizationDataManager = null; switch (type) { case "stub": hospitalizationDataManager = HospitalizationDataManagerStub; break; case "default": hospitalizationDataManager = HospitalizationDataManager; break; default: break; } return(hospitalizationDataManager); }