示例#1
0
        // Общая информация по заявке
        // 1. Номер заявки
        // 2. Дата / время поступления.
        //    Если поступила сегодня – отображается время,
        //    если поступила вчера – отображается текст «Вчера»,
        //    если поступила еще ранее – отображается дата поступления
        // 3. Приоритет. Кружок определенного цвета.
        //    Цвет берется с сервера из справочника «Таблица приоритетов»
        // 4. Краткое описание заявки
        // 5. Клиент
        // 6. Владелец / Исполнитель заявки.
        //    Если в заявке поле Исполнитель пустое – то отображается Владелец,
        //    если заполнено – то отображается Исполнитель.
        //    Исполнителем может быть не только человек, но и группа.
        /// <summary>
        /// The get call info.
        /// </summary>
        /// <param name="callDto">
        /// The call.
        /// </param>
        /// <returns>
        /// The <see cref="object"/>.
        /// </returns>
        public object GetCallInfo(CallDto callDto)
        {
            // Receipt date/time
            // Today, Yesterday, Date
            string date;

            if (DateTime.Compare(callDto.UtcDateOpened ?? DateTime.MinValue, DateTime.Today) > 0)
            {
                date = $"{callDto.UtcDateOpened:HH:mm}";
            }
            else if (DateTime.Compare(callDto.UtcDateOpened ?? DateTime.MinValue, DateTime.Today.AddDays(-1)) > 0)
            {
                date = "Вчера";
            }
            else
            {
                date = $"{callDto.UtcDateOpened:yyyy:dd:MM-HH:mm}";
            }

            var callInfo = new
            {
                callDto.Number,
                Date          = date,
                PriorityColor = callDto.Priority.Color,
                SummaryName   = callDto.CallSummaryName,
                Client        = callDto.ClientFullName,
                Role          = callDto.OwnerId.HasValue ? "Исполнитель" : "Владелец"
            };

            return(callInfo);
        }
示例#2
0
        /// <summary>
        /// The get call general data.
        /// </summary>
        /// <param name="callDto">
        /// The call.
        /// </param>
        /// <returns>
        /// The <see cref="object"/>.
        /// </returns>
        public object GetCallGeneralData(CallDto callDto)
        {
            var term = new
            {
                DateCreate = callDto.UtcDateOpened ?? DateTime.MinValue,
                DateRegist = callDto.UtcDateRegistered ?? DateTime.MinValue,
                DateClose  = callDto.UtcDateClosed ?? DateTime.MinValue
            };

            var people = new
            {
                Client       = callDto.ClientFullName,
                Owner        = callDto.OwnerFullName,
                Executor     = callDto.ExecutorFullName,
                Accomplisher = callDto.AccomplisherFullName
            };

            var classification = new
            {
                Type            = callDto.CallType.Name,
                CallReceiptType = (CallReceiptType)callDto.ReceiptType,
                Sercice         = callDto.ServiceItemFullName
            };

            var essenceOfTask = new
            {
                Description = callDto.Htmldescription, Solution = callDto.Htmlsolution,

                // Attachments =
            };

            var general = new
            {
                Terms          = term,
                People         = people,
                Classification = classification,
                EssenceOfTask  = essenceOfTask
            };

            return(general);
        }