コード例 #1
0
        /// <summary>
        /// Updates an email recipient type with data from the provided email recipient type
        /// </summary>
        /// <param name="emailRecipientType"></param>
        public void Update(EmailRecipientTypeDomain emailRecipientType)
        {
            var emailRecipientTypeDb = _context.EmailRecipientType.FirstOrDefault(x => x.EmailRecipientTypeId == emailRecipientType.Id);

            emailRecipientTypeDb.UpdateFromDomainModel(emailRecipientType);
            _context.SaveChanges();
        }
コード例 #2
0
 private void ValidateEmailRecipientTypeModel(EmailRecipientTypeDomain emailRecipientType)
 {
     ValidationHelper.NotNull(emailRecipientType, NotificationMessages.EmailRecipientTypeNotProvided);
     ValidationHelper.NotNullOrWhitespace(emailRecipientType.Code, NotificationMessages.EmailRecipientTypeCodeEmpty);
     ValidationHelper.MaxLength(emailRecipientType.Code, 100, NotificationMessages.EmailRecipientTypeCodeLengthExceeded);
     ValidationHelper.MaxLength(emailRecipientType.Name, 100, NotificationMessages.EmailRecipientTypeNameLengthExceeded);
 }
コード例 #3
0
        /// <summary>
        /// Adds a new email recipient type to the database
        /// </summary>
        /// <param name="emailRecipientType">Email recipient type information to be added. Instance of <see cref="EmailRecipientTypeDomain"/></param>
        /// <returns>EmailRecipientTypeId of the created email recipient type</returns>
        public int Add(EmailRecipientTypeDomain emailRecipientType)
        {
            var emailRecipientTypeDb = new EmailRecipientType().FromDomainModel(emailRecipientType);

            _context.EmailRecipientType.Add(emailRecipientTypeDb);
            _context.SaveChanges();
            return(emailRecipientTypeDb.EmailRecipientTypeId);
        }
コード例 #4
0
 /// <summary>
 /// Update an email recipient type
 /// </summary>
 /// <param name="emailRecipientType"></param>
 public void UpdateEmailRecipientType(EmailRecipientTypeDomain emailRecipientType)
 {
     if (emailRecipientType == null)
     {
         throw new NsiArgumentException(NotificationMessages.EmailRecipientTypeWithIdDoesNotExist);
     }
     ValidationHelper.GreaterThanZero(emailRecipientType.Id, NotificationMessages.EmailRecipientTypeIdInvalid);
     ValidationHelper.NotNull(_emailRecipientTypeRepository.GetById(emailRecipientType.Id), NotificationMessages.EmailRecipientTypeWithIdDoesNotExist);
     _emailRecipientTypeRepository.Update(emailRecipientType);
 }
コード例 #5
0
        /// <summary>
        /// Deletes a single email recipient type with provided ID
        /// </summary>
        /// <param name="emailRecipientType"></param>
        public void Delete(EmailRecipientTypeDomain emailRecipientType)
        {
            var emailRecipientTypeDb = _context.EmailRecipientType.First(x => x.EmailRecipientTypeId == emailRecipientType.Id);

            if (emailRecipientTypeDb != null)
            {
                emailRecipientTypeDb.FromDomainModel(emailRecipientType);
                _context.EmailRecipientType.Remove(emailRecipientTypeDb);
                _context.SaveChanges();
            }
        }
コード例 #6
0
        /// <summary>
        /// Adda single email recipient type
        /// </summary>
        /// <param name="emailRecipientType"></param>
        /// <returns></returns>
        public int AddEmailRecipientType(EmailRecipientTypeDomain emailRecipientType)
        {
            ValidateEmailRecipientTypeModel(emailRecipientType);

            var emailRecipientTypeWithProvidedcode = _emailRecipientTypeRepository.GetByCode(emailRecipientType.Code.SafeTrim());

            if (emailRecipientTypeWithProvidedcode != null)
            {
                throw new NsiArgumentException(NotificationMessages.EmailRecipientTypeCodeAlreadyExists, Common.Enumerations.SeverityEnum.Warning);
            }

            return(_emailRecipientTypeRepository.Add(emailRecipientType));
        }
コード例 #7
0
        public IHttpActionResult AddEmailRecipientType(AddEmailRecipientTypeRequest request)
        {
            request.ValidateNotNull();

            var emailRecipientTypeDomain = new EmailRecipientTypeDomain()
            {
                Name = request.Name,
                Code = request.Code
            };

            return(Ok(new AddEmailRecipientTypeResponse()
            {
                Data = _emailRecipientTypeManipulation.AddEmailRecipientType(emailRecipientTypeDomain),
                Success = Common.Enumerations.ResponseStatus.Succeeded
            }));
        }
コード例 #8
0
        public IHttpActionResult UpdateEmailRecipientType(UpdateEmailRecipientTypeRequest request)
        {
            request.ValidateNotNull();

            var emailRecipientTypeDomain = new EmailRecipientTypeDomain()
            {
                Id   = request.Id,
                Name = request.Name
            };

            _emailRecipientTypeManipulation.UpdateEmailRecipientType(emailRecipientTypeDomain);

            return(Ok(new UpdateEmailRecipientTypeResponse()
            {
                Data = NotificationMessages.Updated,
                Success = Common.Enumerations.ResponseStatus.Succeeded
            }));
        }
コード例 #9
0
 public static EmailRecipientType UpdateFromDomainModel(this EmailRecipientType obj, EmailRecipientTypeDomain domain)
 {
     obj.Name = domain.Name;
     return(obj);
 }
コード例 #10
0
        public static EmailRecipientType FromDomainModel(this EmailRecipientType obj, EmailRecipientTypeDomain domain)
        {
            if (obj == null)
            {
                obj = new EmailRecipientType();
            }

            obj.EmailRecipientTypeId = domain.Id;
            obj.Name = domain.Name;
            obj.Code = domain.Code;
            return(obj);
        }