Example #1
0
        public ChargesData(Building b)
        {
            ObservableCollection <BuildingChargeBasisCategory> CategoriesNames;
            ObservableCollection <BuildingChargeGroupName>     GroupNames;

            using (var db = new DB.DomenaDBContext())
            {
                GroupBankAccounts = b != null ? new ObservableCollection <BuildingChargeGroupBankAccount>(db.BuildingChargeGroupBankAccounts.Where(x => !x.IsDeleted && x.Building.BuildingId == b.BuildingId).ToList()) : new ObservableCollection <BuildingChargeGroupBankAccount>();
                CategoriesNames   = new ObservableCollection <BuildingChargeBasisCategory>(db.CostCategories.Where(x => !x.IsDeleted).ToList());
                GroupNames        = new ObservableCollection <BuildingChargeGroupName>(db.GroupName.Where(x => !x.IsDeleted).ToList());
            }

            var values     = (CostDistribution[])Enum.GetValues(typeof(CostDistribution));
            var UnitsNames = new ObservableCollection <Helpers.CostDistributionCollectionItem>();

            foreach (var v in values)
            {
                var cdci = new Helpers.CostDistributionCollectionItem(v);
                UnitsNames.Add(cdci);
            }

            CostCollection = new ObservableCollection <CostListView>();
            if (b != null)
            {
                foreach (var c in b.CostCollection)
                {
                    var clv = new Helpers.CostListView {
                        BegginingDate = c.BegginingDate.Date, EndingDate = c.EndingDate.Date, Cost = c.CostPerUnit, CostUnit = UnitsNames.Where(x => x.EnumValue == c.BuildingChargeBasisDistribution).FirstOrDefault(), CategoryName = CategoriesNames.Where(x => x.BuildingChargeBasisCategoryId.Equals(c.BuildingChargeBasisCategoryId)).FirstOrDefault().CategoryName, CostGroup = GroupNames.Where(x => x.BuildingChargeGroupNameId == c.BuildingChargeGroupNameId).FirstOrDefault()
                    };
                    CostCollection.Add(clv);
                }
            }
        }
Example #2
0
        private void AddNewCost(object param)
        {
            if (SelectedCategoryName == null)
            {
                LabelError = "Wybierz kategorię";
                return;
            }
            if (SelectedUnitName == null)
            {
                LabelError = "Wybierz jednostkę";
                return;
            }
            decimal uc;

            if (!decimal.TryParse(UnitCost, out uc) && uc <= 0)
            {
                LabelError = "Podaj poprawny koszt";
                return;
            }
            if (CostBeggining == null)
            {
                LabelError = "Podaj poprawną datę początku obowiązywania";
                return;
            }
            if (SelectedGroupName == null)
            {
                LabelError = "Wybierz grupę";
                return;
            }
            var q = CostCollection.Where(x => x.BegginingDate.Date.CompareTo(CostBeggining.Date) == 0 && x.CategoryName == SelectedCategoryValue && x.CostGroup == SelectedGroupName).Count();

            if (q > 0)
            {
                LabelError = "Istnieje już rekord z taką samą kategorią i datą";
                return;
            }
            LabelError = null;
            var endingDate = new DateTime(1900, 01, 01);

            var c = new Helpers.CostListView()
            {
                BegginingDate = CostBeggining, CategoryName = SelectedCategoryValue, Cost = uc, CostUnit = SelectedUnitName, EndingDate = endingDate, CostGroup = SelectedGroupName
            };

            CostCollection.Add(c);
            CalculateCostsDates();
        }
Example #3
0
        public EditLegacyBuildingWizard(Building SelectedBuilding = null)
        {
            InitializeComponent();
            DataContext = this;

            MetersCollection = new ObservableCollection <MeterType>();
            InitializeCategoriesList();
            InitializeUnitsList();
            InitializeCostCollection();
            CostBeggining = DateTime.Today;
            if (SelectedBuilding != null)
            {
                _buildingLocalCopy = new Building(SelectedBuilding);

                BuildingName       = SelectedBuilding.Name;
                BuildingCity       = SelectedBuilding.City;
                BuildingZipCode    = SelectedBuilding.ZipCode;
                BuildingRoadName   = SelectedBuilding.RoadName;
                BuildingRoadNumber = SelectedBuilding.BuildingNumber;

                foreach (var c in SelectedBuilding.CostCollection)
                {
                    var clv = new Helpers.CostListView {
                        BegginingDate = c.BegginingDate.Date, EndingDate = c.EndingDate.Date, Cost = c.CostPerUnit, CostUnit = UnitsNames.Where(x => x.EnumValue == c.BuildingChargeBasisDistribution).FirstOrDefault(), CategoryName = CategoriesNames.Where(x => x.BuildingChargeBasisCategoryId.Equals(c.BuildingChargeBasisCategoryId)).FirstOrDefault().CategoryName, CostGroup = GroupNames.Where(x => x.BuildingChargeGroupNameId == c.BuildingChargeGroupNameId).FirstOrDefault()
                    };
                    CostCollection.Add(clv);
                }
                MetersCollection = new ObservableCollection <MeterType>(SelectedBuilding.MeterCollection);
            }
            if (_buildingLocalCopy != null)
            {
                GroupBankAccounts = new ObservableCollection <BuildingChargeGroupBankAccount>(GroupBankAccountsTotal.Where(x => !x.IsDeleted && x.Building.BuildingId == _buildingLocalCopy.BuildingId).ToList());
            }
            else
            {
                GroupBankAccounts = new ObservableCollection <BuildingChargeGroupBankAccount>();
            }
        }