public void SetUp() { var dalManagerFactory = new DalManagerFactory(); var repositoryFactory = new RepositoryFactory(); this.customerRepository = repositoryFactory.GetRepository <Customer>( dalManagerFactory.GetMsSqlServerDalManager( "Data Source=DIMA; Initial Catalog=LawFirm;Integrated Security=True")); }
/// <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); }
public void DoQueryTest() { var hospitalizationDataManager = DalManagerFactory.CreateHospitalizationDataManager("stub"); var queryProcessorManager = new QueryProcessorManager(hospitalizationDataManager); var reportName = "form16"; var startDate = new DateTime(2007, 1, 1, 7, 59, 0); // 7:59:00 01.01.2007 var endDate = new DateTime(2007, 1, 11, 8, 0, 0); // 8:00:00 11.01.2007 // DateTime startDate = new DateTime(2007, 2, 4, 7, 59, 0); // 7:59:00 04.02.2007 // DateTime endDate = new DateTime(2007, 2, 13, 8, 0, 0); // 8:00:00 13.02.2007 /* * 1 - хирургия1; * 2 - хирургия2; * 3 - хирургия3; */ var departmentIdCollection = new List <int> { 1, 2, 3 }; var data = queryProcessorManager.DoQuery(reportName, startDate, endDate, departmentIdCollection); /* foreach (DataRow dataRow in data.Rows) * { * foreach (var item in dataRow.ItemArray) * { * Console.WriteLine(item); * } * }*/ Console.WriteLine("Report :" + reportName); Console.WriteLine(startDate + " - " + endDate); foreach (DataRow row in data.Rows) { Console.WriteLine("--- Row ---"); foreach (DataColumn column in data.Columns) { Console.Write("Item: "); Console.Write(column.ColumnName); Console.Write(" -- \t"); Console.WriteLine(row[column]); } } }
public void TotalAmountOfDepartmentTest() { var hospitalizationDataManager = DalManagerFactory.CreateHospitalizationDataManager("stub"); var startDate = new DateTime(2006, 1, 1, 7, 59, 0); // 7:59:00 01.01.2007 var endDate = new DateTime(2008, 1, 11, 8, 0, 0); // 8:00:00 11.01.2007 IList <HospitalizationBase> hospitalizationCollection = hospitalizationDataManager.GetHospitalizationCollection(startDate, endDate); Form16QueryProcessor form16QueryProcessor = new Form16QueryProcessor(hospitalizationCollection); var departmentIdCollection = new List <int> { 1, 2, 3, 4 }; var dataTable = form16QueryProcessor.GetDataForForm(startDate, endDate, departmentIdCollection); DepartmentManager departmentManager = new DepartmentManager(); var globalDepartmentDictionary = departmentManager.GetDepartmentWithChildrenCollectionId(); foreach (KeyValuePair <int, List <int> > keyValuePair in globalDepartmentDictionary) { Console.WriteLine("--Begin--"); Console.WriteLine(keyValuePair.Key); foreach (int i in keyValuePair.Value) { Console.Write(i + " , "); } Console.WriteLine("\n --End--"); } foreach (KeyValuePair <int, List <int> > keyValuePair in globalDepartmentDictionary) { Dictionary <string, int> totalByDepartment = new Dictionary <string, int>(); foreach (DataColumn dataColumn in dataTable.Columns) { if (dataColumn.DataType == typeof(int)) { var total = dataTable.AsEnumerable(). Where(y => keyValuePair.Value.Contains((y.Field <int>("DepartmentId")))). Sum(x => x.Field <int>(dataColumn.ColumnName)); totalByDepartment.Add(dataColumn.ColumnName, total); } } DataRow resultRow = dataTable.Select("DepartmentId=" + keyValuePair.Key).FirstOrDefault(); if (resultRow != null) { foreach (KeyValuePair <string, int> pair in totalByDepartment) { resultRow[pair.Key] = pair.Value; } } } // Print result Console.WriteLine("Form 16 :"); Console.WriteLine(startDate + " - " + endDate); foreach (DataRow row in dataTable.Rows) { Console.WriteLine("--- Row ---"); foreach (DataColumn column in dataTable.Columns) { Console.Write("Item: "); Console.Write(column.ColumnName); Console.Write("\t "); Console.WriteLine(row[column]); } } }
/// <summary> /// The main. /// </summary> /// <param name="args"> /// The args. /// </param> private static void Main(string[] args) { // var hospitalizationDataManager = DalManagerFactory.CreateHospitalizationDataManager("stub"); var hospitalizationDataManager = DalManagerFactory.CreateHospitalizationDataManager("default"); var queryProcessorManager = new QueryProcessorManager(hospitalizationDataManager); var reportName = "form16"; var startDate = new DateTime(2014, 1, 1, 7, 59, 0); // 7:59:00 01.01.2014 var endDate = new DateTime(2014, 7, 11, 8, 0, 0); // 8:00:00 11.10.2014 // DateTime startDate = new DateTime(2007, 2, 4, 7, 59, 0); // 7:59:00 04.02.2007 // DateTime endDate = new DateTime(2007, 2, 13, 8, 0, 0); // 8:00:00 13.02.2007 /* * 1 - хирургия1; * 2 - хирургия2; * 3 - хирургия3; */ var departmentIdCollection = new List <int> { 2, 3, 4, 5, 6 }; // DataTable data = queryProcessorManager.DoQuery(reportName, startDate, endDate, departmentIdCollection); var xml = queryProcessorManager.DoQueryXML(reportName, startDate, endDate, departmentIdCollection); Console.WriteLine(xml); /* * Console.WriteLine("Form 7 :"); * Console.WriteLine(startDate + " - " + endDate); * foreach (DataRow row in data.Rows) * { * Console.WriteLine("--- Row ---"); * foreach (DataColumn column in data.Columns) * { * Console.Write("Item: "); * Console.Write(column.ColumnName); * Console.Write(" "); * Console.WriteLine(row[column]); * } * } * * * Console.WriteLine("Age check :"); * DateTime birthDate = new DateTime(2000, 2, 29); * DateTime now = new DateTime(2009, 2, 28); * int age = now.Year - birthDate.Year; * * if (now.Month < birthDate.Month || (now.Month == birthDate.Month && now.Day < birthDate.Day)) * { * age--; * } * * Console.WriteLine("Age = " + age); */ /* Console.WriteLine("Span check :"); * var EnterDateTime = new DateTime(2007, 2, 5, 21, 50, 20); // 21:50:20 05.02.2007 * var EndDateTime = new DateTime(2007, 9, 6, 21, 50, 0); // 21:50:10 06.02.2007 * * var span = EndDateTime.Subtract(EnterDateTime); * Console.WriteLine("Span.Hours = " + span.Hours); * Console.WriteLine("Span.Days = " + span.Days); * * if (span.Days == 0) * { * Console.WriteLine("Yes, prior to day..."); * } * else * { * Console.WriteLine("No, prior to day..."); * } * * var dt = new DateTime(2007, 1, 1, 18, 15, 20); // 18:15:20 03.02.2007 * Console.WriteLine("dt = " + dt); * var dt2 = dt.AddDays(-1); * Console.WriteLine("dt2 = " + dt2); * * var reportProcessorManager = new ReportProcessorManager(); * var resultXml = reportProcessorManager.GetFillXmlReport( * reportName, * startDate, * endDate, * departmentIdCollection); * * // Console.WriteLine(resultXml); */ Console.ReadLine(); }