Esempio n. 1
0
        public void CreateActionLog(DTO.ActionLog createdActionLog)
        {
            CheckHelper.ArgumentNotNull(createdActionLog, "createdActionLog");
            CheckHelper.ArgumentWithinCondition(createdActionLog.IsNew(), "Action Log is not new.");

            var securityService = Container.Get <ISecurityService>();

            CheckHelper.WithinCondition(securityService.IsLoggedIn, "User is not logged in.");

            Container.Get <IValidateService>().CheckIsValid(createdActionLog);

            var persistentService = Container.Get <IPersistentService>();
            var actionLogType     = persistentService.GetEntityById <ActionLogType>(createdActionLog.ActionLogType.Id);
            var currentUser       = persistentService.GetEntityById <User>(securityService.CurrentUser.Id);

            var utcNow = Container.Get <ITimeService>().UtcNow;

            var actionLog =
                new DataAccess.ActionLog
            {
                Text            = createdActionLog.Text,
                DocumentId      = createdActionLog.DocumentId,
                ActionLogType   = actionLogType,
                ActionLogTypeId = actionLogType.Id,
                CreateUser      = currentUser,
                CreateUserId    = currentUser.Id,
                CreateDate      = utcNow
            };

            persistentService.Add(actionLog);

            persistentService.SaveChanges();

            createdActionLog.Id         = actionLog.Id;
            createdActionLog.CreateDate = actionLog.CreateDate;
            createdActionLog.CreateUser = actionLog.CreateUser.GetFullName();
        }