/// <summary>
        /// Convert to the message counts get request.
        /// </summary>
        /// <param name="src">The source.</param>
        /// <returns></returns>
        public static MessageCountsGetRequest ToMessageCountsGetRequest(this SummaryModel src)
        {
            var dest = new MessageCountsGetRequest();

            dest.SiteCode       = src.SearchCriteriaSiteCode;
            dest.JobseekerId    = src.SearchCriteriaJobseekerID;
            dest.CreatedAfterDT = src.SearchCriteriaCreatedAfterDate.ToString("dMMMyyyy HH:mm:ss");
            dest.ManagedBy      = src.SearchCriteriaManagedBy;
            return(dest);
        }
Exemple #2
0
        /// <summary>
        /// Gets a list of noticeboard messages from "MNB"
        /// </summary>
        /// <param name="siteCode">Users site code.</param>
        /// <param name="dateTime">Users date time.</param>
        /// <returns>Noticeboard messages.</returns>
        public IEnumerable <MiniNoticeboardModel> GetSpecificMessages(string siteCode, DateTime dateTime)
        {
            IEnumerable <MiniNoticeboardModel> messages;
            var keymodel = new KeyModel("GetSpecificMessages").Add(siteCode).Add(dateTime.Date);

            if (!CacheService.TryGet(keymodel, out messages))
            {
                var request = new MessageCountsGetRequest
                {
                    RequestDT    = dateTime.ToString("dMMMyyyy HH:mm:ss"),
                    SiteCode     = siteCode,
                    MessageTypes = ConvertMessageTypes(GetMessageTypesFromMNB())
                };
                ValidateRequest(request);

                try
                {
                    var service = Client.Create <INoticeboardMessages>("NoticeboardMessages.svc");

                    var response = service.MessageCountsGet(request);

                    var miniNoticeboardModel = GetDescfromAdw(response.MessageCounts).ToList();

                    CacheService.Set(keymodel, miniNoticeboardModel, new TimeSpan(0, 0, 5, 0));

                    return(miniNoticeboardModel);
                }
                catch (FaultException <ValidationFault> vf)
                {
                    throw vf.ToServiceValidationException();
                }
                catch (FaultException fe)
                {
                    throw fe.ToServiceValidationException();
                }
            }
            return(messages);
        }