Example #1
0
        public XmlDocument SendEmailIB([FromBody] XmlDocument value)
        {
            XDocument   document    = value.ToXDocument();
            RequestInfo requestInfo = document.RequestInfo();

            try
            {
                if (requestInfo.Type == "SEND_EMAIL")
                {
                    SendEmailRequestDTO request = new SendEmailRequestDTO();
                    request.Body    = document.XPathSelectElement($"{ConsRequestDatapath}/Body").Value;
                    request.Subject = document.XPathSelectElement($"{ConsRequestDatapath}/Subject").Value;

                    request.Receivers = (from m in document.XPathSelectElements($"{ConsRequestDatapath}/Receivers/string") select m.Value).ToList();

                    request.Attachments = (from m in document.XPathSelectElements($"{ConsRequestDatapath}/Attachments/FileAttachment") select new FileAttachment
                    {
                        FileName = m.Element("FileName").Value,
                        Base64 = m.Element("Base64").Value,
                        FileType = m.Element("FileType").Value
                    }).ToList();

                    SendEmailResponseDTO response = SendEmail(request);
                    if (response.IsSuccess)
                    {
                        return(ServiceResponse("", ResponseInfo.SuccessResponse(requestInfo)));
                    }
                    else
                    {
                        return(ServiceResponse(string.Empty, ResponseInfo.ErrorResponse("APP-ERR-003", response.Error.Message, requestInfo)));
                    }
                }
                return(ServiceResponse(string.Empty, ResponseInfo.ErrorResponse("APP-ERR-002", $"Invalid Type ({requestInfo.Type})", requestInfo)));
            }
            catch (Exception ex)
            {
                return(ServiceResponse(string.Empty, ResponseInfo.ErrorResponse("APP-ERR-001", ex.Message, requestInfo)));
            }
        }