Ejemplo n.º 1
0
        private void DevinePriceWork()
        {
            double currentConsume = consumeMonth;

            for (double i = 1; i <= rankElectricWorkList.Count; i++)
            {
                var    E             = (rankElectricWork)rankElectricWorkList[i];
                double moneyEachRank = E.Price * E.quantityAllowed;

                if (currentConsume < moneyEachRank)
                {
                    E.usedPrice             = currentConsume;
                    currentConsume          = 0;
                    rankElectricWorkList[i] = E;

                    break;
                }
                else
                {
                    currentConsume         -= moneyEachRank;
                    E.usedPrice             = moneyEachRank;
                    rankElectricWorkList[i] = E;
                }
            }

            double           index = rankElectricWorkList.Count;
            rankElectricWork El    = (rankElectricWork)rankElectricWorkList[index];

            El.usedPrice += currentConsume;
            rankElectricWorkList[index] = El;
        }
Ejemplo n.º 2
0
        private void ReadDataExcel(int index)
        {
            try
            {
                rankE = null;
                soGioNangHashtable.Clear();
                rankE = new SortedList <object, rankElectricWork>();

                string path = @Properties.Settings.Default.pathDataExcel;
                using (ExcelPackage MaNS =
                           new ExcelPackage(new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)))
                {
                    ExcelWorksheet workSheet = MaNS.Workbook.Worksheets[0];

                    for (int i = workSheet.Dimension.Start.Row + 1; i <= workSheet.Dimension.End.Row; i++)
                    {
                        soGioNangHashtable.Add(workSheet.Cells[i, 2].Value, workSheet.Cells[i, 3].Value);
                    }


                    workSheet = MaNS.Workbook.Worksheets[index];
                    switch (index)
                    {
                    case 1:
                    {
                        for (int i = workSheet.Dimension.Start.Row + 1; i <= workSheet.Dimension.End.Row; i++)
                        {
                            rankElectricWork E = new rankElectricWork();
                            E.Price           = (double)workSheet.Cells[i, 2].Value;
                            E.quantityAllowed = (double)workSheet.Cells[i, 3].Value;
                            rankE.Add(workSheet.Cells[i, 1].Value, E);

                            // rankElectricWorkPrice.Add(, );
                            // rankElectricWorkCount.Add(workSheet.Cells[i, 1].Value, );
                            normalConsume = new NormalConsume()
                            {
                                rankElectricWorkList = rankE
                            };
                        }
                        break;
                    }

                    default:
                        for (int i = workSheet.Dimension.Start.Row + 1; i <= workSheet.Dimension.End.Row; i++)
                        {
                            rankElectricWork E = new rankElectricWork();
                            E.Price = (double)workSheet.Cells[i, 2].Value;
                            rankE.Add(workSheet.Cells[i, 1].Value, E);
                            // rankElectricWorkPrice.Add(, );
                            // rankElectricWorkCount.Add(workSheet.Cells[i, 1].Value, );
                            normalConsume = new NormalConsume()
                            {
                                rankElectricWorkList = rankE
                            };
                        }
                        break;
                    }
                    // normalConsume = new NormalConsume(700, 3100, 1000)
                    // normalConsume = new NormalConsume(5000000)
                    // {
                    //     rankElectricWorkList = rankE
                    // };
                }

                khuvucComboBox.ItemsSource = soGioNangHashtable.Keys;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                throw;
            }
        }