コード例 #1
0
ファイル: CloseoutManager.cs プロジェクト: ognjenm/egle
        /// <summary>
        /// Creates a closeout
        /// </summary>
        /// <param name="closeout">Close out</param>
        public void CreateCloseout(Closeout closeout)
        {
            // Validate input
            if (closeout.IsValid())
            {
                // Retrieve room details
                Model.Room.Room room = roomDao.GetByKey(closeout.RoomId, closeout.BusinessId);

                if (room == null)
                {
                    throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30016,
                                                                                 "CloseoutManager.CreateCloseout",
                                                                                 additionalDescriptionParameters:
                                                                                     (new object[] {closeout.RoomId})));
                }

                // Check if the room is active.
                if (room.RoomStatus.Code != RoomStatusCodes.ACTIVE)
                {
                    throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30015,
                                                                                 "CloseoutManager.CreateCloseout",
                                                                                 arguments: new object[] {this}));
                }

                // Create closeout
                closeoutDao.Create(closeout);
            }
        }
コード例 #2
0
ファイル: CloseoutManager.cs プロジェクト: ognjenm/egle
        /// <summary>
        /// Modify a Closeout
        /// </summary>
        /// <param name="closeout">Closeout object</param>
        public void Modify(Closeout closeout)
        {
            if(closeout.IsValid())
            {
                // Retrieve room details
                Model.Room.Room room = roomDao.GetByKey(closeout.RoomId, closeout.BusinessId);

                if (room == null)
                {
                    throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30016,
                                                                                 "CloseoutManager.Modify",
                                                                                 additionalDescriptionParameters:
                                                                                     (new object[] { closeout.RoomId })));
                }

                // Check if the room is active.
                if (room.RoomStatus.Code != RoomStatusCodes.ACTIVE)
                {
                    throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30015,
                                                                                 "CloseoutManager.Modify",
                                                                                 arguments: new object[] { this }));
                }
                // CurrentCloseOut to compare
                Closeout currentCloseout = closeoutDao.GetByKey(closeout.Id.Value, closeout.BusinessId);
                if(currentCloseout == null)
                {
                    throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30024,
                                                                                 "CloseoutManager.Modify",
                                                                                 additionalDescriptionParameters:
                                                                                     (new object[] { closeout.Id, closeout.BusinessId }),
                                                                                 arguments:
                                                                                     new object[] { closeout.Id, closeout.BusinessId }));
                } 
                
                closeoutDao.Modify(closeout);
 
            }
            
        }