Ejemplo n.º 1
0
        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"));
        }
Ejemplo n.º 2
0
        /// <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);
        }
Ejemplo n.º 3
0
        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]);
                }
            }
        }
Ejemplo n.º 5
0
        /// <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();
        }