Ejemplo n.º 1
0
        public override void OnModify(DbPropertyValues originalValues, DbPropertyValues currentValues)
        {
            base.OnModify(originalValues, currentValues);

            var reflectionHelper  = new ReflectionHelper <BookingRequestDO>();
            var statePropertyName = reflectionHelper.GetPropertyName(br => br.State);

            if (!MiscUtils.AreEqual(originalValues[statePropertyName], currentValues[statePropertyName]))
            {
                var state = (int)currentValues[statePropertyName];
                switch (state)
                {
                case BookingRequestState.NeedsBooking:
                    AlertManager.BookingRequestNeedsProcessing(Id);
                    break;

                case BookingRequestState.Resolved:
                    AlertManager.BookingRequestMarkedProcessed(Id, BookerID);
                    break;
                }
            }
        }