Esempio n. 1
0
 /// <summary>
 /// Uplata novca dobivenog iz pricuve
 /// </summary>
 /// <param name="bill">racun</param>
 public virtual void ReceivePaymentFor(Bill bill)
 {
     // moze se samo naplatiti pricuva iz racuna za pricuvu, odnosno ako ga je izdala zgrada
     if (bill.Reserve != null && bill.To != null) {
         bill.SetPaid();
         money += bill.TotalAmountWithTax;
     } else {
         var businessEx = new BusinessRulesException<Reserve>();
         businessEx.AddErrorForModel("Nije moguce naplatiti pričuvu iz računa koji nije račun za pričuvu.");
     }
 }
Esempio n. 2
0
        /// <summary>
        /// Dodjeljuje izvodaca radova na popravak ili odrzavanje
        /// </summary>
        /// <param name="contractor">izvodac radova</param>
        public virtual void SetContractor(Contractor contractor)
        {
            var errors = new BusinessRulesException<Maintenance>();

            if (!BuildingManager.Contractors.Contains(contractor)) {
                errors.AddErrorForModel("Contractor is not working for BuildingManager, so it's invalid.");
            }

            if (!contractor.RepairServices.Contains(ServiceType)) {
                errors.AddErrorForModel("This Contractor can't do needed service.");
            }

            if (errors.Errors.Any()) {
                throw errors;
            }

            this.contractor = new PersonSnapshot(contractor.LegalPerson);
            statusOfMaintenance = StatusOfMaintenance.InProgress;
        }