public ContactTypeDto UpdateContactType(int id, [FromBody] CreateOrUpdateContactTypeRequestDto inDto)
        {
            var title     = inDto.Title;
            var sortOrder = inDto.SortOrder;

            if (!(_crmSecurity.IsAdmin))
            {
                throw _crmSecurity.CreateSecurityException();
            }

            if (id <= 0 || string.IsNullOrEmpty(title))
            {
                throw new ArgumentException();
            }

            var curListItemExist = _daoFactory.GetListItemDao().IsExist(id);

            if (!curListItemExist)
            {
                throw new ItemNotFoundException();
            }

            var listItem = new ListItem
            {
                ID        = id,
                Title     = title,
                SortOrder = sortOrder
            };

            _daoFactory.GetListItemDao().EditItem(ListType.ContactType, listItem);
            _messageService.Send(MessageAction.ContactTypeUpdated, _messageTarget.Create(listItem.ID), listItem.Title);

            return(_mapper.Map <ContactTypeDto>(listItem));
        }
        public ContactTypeDto CreateContactType([FromBody] CreateOrUpdateContactTypeRequestDto inDto)
        {
            var title     = inDto.Title;
            var sortOrder = inDto.SortOrder;

            if (!(_crmSecurity.IsAdmin))
            {
                throw _crmSecurity.CreateSecurityException();
            }

            var listItem = new ListItem
            {
                Title       = title,
                Description = string.Empty,
                SortOrder   = sortOrder
            };

            listItem.ID = _daoFactory.GetListItemDao().CreateItem(ListType.ContactType, listItem);
            _messageService.Send(MessageAction.ContactTypeCreated, _messageTarget.Create(listItem.ID), listItem.Title);

            return(_mapper.Map <ContactTypeDto>(listItem));
        }