Beispiel #1
0
        public HttpResponseMessage Search([FromUri] SearchCriteria criteria)
        {
            var response = default(HttpResponseMessage);

            Action <Dictionary <string, string>, string, string> addCriteria = (collection, key, value) =>
            {
                if (!string.IsNullOrEmpty(value))
                {
                    if (collection.ContainsKey(key))
                    {
                        collection[key] = value;
                    }
                    else
                    {
                        collection.Add(key, value);
                    }
                }
            };

            using (var engine = new P8CEUnderwriting())
            {
                var underwritingCriteria = new Dictionary <string, string>();

                addCriteria(underwritingCriteria, "uwPolicyID", criteria.PolicyId);
                addCriteria(underwritingCriteria, "uwDocType", criteria.DocumentType);

                var results = engine.SearchUnderwriting(underwritingCriteria);

                response = Request.CreateResponse(HttpStatusCode.OK, results);
            }

            return(response);
        }
Beispiel #2
0
        public HttpResponseMessage GetByPolicyId(string policyId)
        {
            var response = default(HttpResponseMessage);

            using (var engine = new P8CEUnderwriting())
            {
                var results = engine.SearchUnderwriting(new Dictionary <string, string>
                {
                    { "uwPolicyID", policyId }
                });

                response = Request.CreateResponse(HttpStatusCode.OK, results);
            }

            return(response);
        }
Beispiel #3
0
        public HttpResponseMessage Get(Guid id)
        {
            var response = default(HttpResponseMessage);

            using (var engine = new P8CEUnderwriting())
            {
                var underwritingDocument = new Underwriting2014Document();

                var document = engine.GetDocumentProperties(id, null, os, dc);

                document.MapToFileNet(underwritingDocument, true, true);

                response = Request.CreateResponse(HttpStatusCode.OK, underwritingDocument);
            }

            return(response);
        }
Beispiel #4
0
        public Task <HttpResponseMessage> Upload()
        {
            if (!Request.Content.IsMimeMultipartContent())
            {
                throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
            }

            var provider = new CustomMultipartFormDataStreamProvider();

            return(Request.Content.ReadAsMultipartAsync(provider).ContinueWith(t =>
            {
                var content = default(byte[]);
                var location = default(string);

                if (t.IsFaulted || t.IsCanceled)
                {
                    return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, t.Exception);
                }

                foreach (var file in provider.CustomFileData)
                {
                    var details = new
                    {
                        MimeType = MimeTypeUtility.GetMimeType(file.LocalFileName),
                        LocalName = file.LocalFileName,
                        FileName = file.Headers.ContentDisposition.FileName,
                        Size = file.Headers.ContentDisposition.Size,
                        Type = file.Headers.ContentType,

                        Stream = file.MemoryStream,

                        Metadata = file.Metadata
                    };

                    using (var stream = details.Stream)
                    {
                        content = stream.ToArray();
                    }

                    using (var engine = new P8CEUnderwriting())
                    {
                        var results = engine.UploadUnderwritingDocuments(new[] {
                            new Underwriting2014Document
                            {
                                Name = details.FileName,
                                MimeType = details.MimeType,
                                Content = content
                            }
                        });

                        if (results != null && results.Any())
                        {
                            location = results.First().ToString("B");
                        }
                    }
                }

                var response = Request.CreateResponse(HttpStatusCode.Created);

                response.Headers.Location = new Uri(location);

                return response;
            }));
        }