public ContactStatusDto CreateContactStatus(
            [FromBody] CreateOrUpdateContactStatusRequestDto inDto)
        {
            var title       = inDto.Title;
            var description = inDto.Description;
            var color       = inDto.Color;
            var sortOrder   = inDto.SortOrder;

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

            var listItem = new ListItem
            {
                Title       = title,
                Description = description,
                Color       = color,
                SortOrder   = sortOrder
            };

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

            return(_mapper.Map <ContactStatusDto>(listItem));
        }
        public ContactStatusDto UpdateContactStatus(
            [FromRoute] int id,
            [FromBody] CreateOrUpdateContactStatusRequestDto inDto)
        {
            var title       = inDto.Title;
            var description = inDto.Description;
            var color       = inDto.Color;
            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,
                Description = description,
                Color       = color,
                SortOrder   = sortOrder
            };

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

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