Esempio n. 1
0
        public void Update(IEnumerable <IReservationProcessInfo> insert, IEnumerable <IReservationProcessInfo> update, IEnumerable <IReservationProcessInfo> delete)
        {
            if (insert != null)
            {
                foreach (var item in insert)
                {
                    var rpi = new ReservationProcessInfo
                    {
                        Active            = item.Active,
                        ChargeMultiplier  = item.ChargeMultiplier,
                        ProcessInfoLineID = item.ProcessInfoLineID,
                        ReservationID     = item.ReservationID,
                        RunNumber         = item.RunNumber,
                        Special           = item.Special,
                        Value             = item.Value
                    };

                    Session.Save(rpi);
                }
            }

            if (update != null)
            {
                foreach (var item in update)
                {
                    var rpi = Require <ReservationProcessInfo>(item.ReservationProcessInfoID);

                    rpi.Active            = item.Active;
                    rpi.ChargeMultiplier  = item.ChargeMultiplier;
                    rpi.ProcessInfoLineID = item.ProcessInfoLineID;
                    rpi.ReservationID     = item.ReservationID;
                    rpi.RunNumber         = item.RunNumber;
                    rpi.Special           = item.Special;
                    rpi.Value             = item.Value;

                    Session.Update(rpi);
                }
            }

            if (delete != null)
            {
                foreach (var item in delete)
                {
                    var rpi = Require <ReservationProcessInfo>(item.ReservationProcessInfoID);
                    Session.Delete(rpi);
                }
            }
        }
Esempio n. 2
0
        public IReservationProcessInfo AddReservationProcessInfo(int reservationId, int processInfoLineId, double value, bool special, int runNumber, double chargeMultiplier, bool active)
        {
            var rpi = new ReservationProcessInfo()
            {
                ReservationID     = reservationId,
                ProcessInfoLineID = processInfoLineId,
                Value             = value,
                Special           = special,
                RunNumber         = runNumber,
                ChargeMultiplier  = chargeMultiplier,
                Active            = active
            };

            Session.Save(rpi);

            return(rpi.CreateModel <IReservationProcessInfo>());
        }
Esempio n. 3
0
        public void UpdateReservationProcessInfo(ReservationProcessInfoItem item)
        {
            var rpi = Session.Get <ReservationProcessInfo>(item.ReservationProcessInfoID);

            if (rpi != null)
            {
                if (item.ProcessInfoLineID == 0)
                {
                    // Delete the record.
                    // This happens when an existing record is changed to "None" (i.e. removed).
                    Session.Delete(rpi);
                    return;
                }
            }
            else
            {
                // Insert a new record if it doesn't exist.
                // This happens when a reservation is modified and an addtional process info is selected.
                rpi = new ReservationProcessInfo()
                {
                    ProcessInfoLineID = item.ProcessInfoLineID,
                    ReservationID     = item.ReservationID
                };

                Session.Save(rpi);

                item.ReservationProcessInfoID = rpi.ReservationProcessInfoID;
            }

            // still here?

            if (item.ProcessInfoLineID != rpi.ProcessInfoLineID)
            {
                // This happens when the ProcessInfo is changed to different ProcessInfoLine
                rpi.ProcessInfoLineID = item.ProcessInfoLineID;
            }

            rpi.Value            = item.Value;
            rpi.Special          = item.Special;
            rpi.RunNumber        = item.RunNumber;
            rpi.ChargeMultiplier = item.ChargeMultiplier;
            rpi.Active           = item.Active;

            Session.Update(rpi);
        }
Esempio n. 4
0
        public void InsertReservationProcessInfo(ReservationProcessInfoItem item)
        {
            // This happens when a new reservation is created.

            ReservationProcessInfo rpi = null;

            if (item.ProcessInfoLineID > 0)
            {
                rpi = new ReservationProcessInfo()
                {
                    ProcessInfoLineID = item.ProcessInfoLineID,
                    ReservationID     = item.ReservationID,
                    Value             = item.Value,
                    Special           = item.Special,
                    RunNumber         = item.RunNumber,
                    ChargeMultiplier  = item.ChargeMultiplier,
                    Active            = item.Active
                };

                Session.Save(rpi);

                item.ReservationProcessInfoID = rpi.ReservationProcessInfoID;
            }
        }