Ejemplo n.º 1
0
        public Task <HttpResponseMessage> Get(string data)
        {
            try
            {
                if (!string.IsNullOrEmpty(data))
                {
                    BaseParam param  = CommonFunction.DeserializeObject <BaseParam>(data);
                    Token     oToken = null;
                    if (tokenRep.ValidateToken(param.TokenID, ref oToken))
                    {
                        HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);

                        IBaseReportRepository rep = this.GetRep(param);

                        byte[] xlsInBytes = rep.ExportExcel(param);

                        result.Content = new ByteArrayContent(xlsInBytes);
                        result.Content.Headers.ContentType                 = new MediaTypeHeaderValue("application/octet-stream");
                        result.Content.Headers.ContentDisposition          = new ContentDispositionHeaderValue("attachment");
                        result.Content.Headers.ContentDisposition.FileName = $"{Guid.NewGuid()}.xls";
                        result.Content.Headers.ContentLength               = xlsInBytes.Length;
                        return(Task.FromResult(result));
                    }
                    else
                    {
                        return(Task.FromResult(new HttpResponseMessage(HttpStatusCode.Unauthorized)));
                    }
                }
            }
            catch (Exception ex)
            {
                CommonFunction.CommonLogError(ex);
            }
            return(Task.FromResult(new HttpResponseMessage(HttpStatusCode.InternalServerError)));
        }
Ejemplo n.º 2
0
        public HttpResponseMessage Get()
        {
            try
            {
                string tokenId      = HttpContext.Current.Request.QueryString[Commonkey.TokenID],
                       downloadFrom = HttpContext.Current.Request.QueryString[Commonkey.DF];

                int   eDownloadFrom = (int)MT.Library.Enummation.DowloadFrom.Upload;
                Token oToken        = null;
                if (tokenRep.ValidateToken(tokenId, ref oToken))
                {
                    string fileResourceID = HttpContext.Current.Request.QueryString["ID"];
                    bool   isTemp         = Convert.ToBoolean(HttpContext.Current.Request.QueryString["IsTemp"]);
                    string fileType       = HttpContext.Current.Request.QueryString["FT"];
                    var    filePath       = string.Empty;
                    if (isTemp)
                    {
                        filePath = HttpContext.Current.Server.MapPath(mscTEMP);
                    }
                    else
                    {
                        int.TryParse(downloadFrom, out eDownloadFrom);
                        if (eDownloadFrom == (int)MT.Library.Enummation.DowloadFrom.ProjectServey)
                        {
                            filePath = MT.Library.CommonFunction.GetMapPathProjectServey();
                        }
                        else
                        {
                            filePath = HttpContext.Current.Server.MapPath(mscUPLOAD);
                        }
                    }

                    var destinationPath = Path.Combine(filePath, $"{fileResourceID}{fileType}");
                    if (File.Exists(destinationPath))
                    {
                        HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
                        var stream = new FileStream(destinationPath, FileMode.Open);
                        result.Content = new StreamContent(stream);
                        result.Content.Headers.ContentType                 = new MediaTypeHeaderValue("application/octet-stream");
                        result.Content.Headers.ContentDisposition          = new ContentDispositionHeaderValue("attachment");
                        result.Content.Headers.ContentDisposition.FileName = $"{fileResourceID}{fileType}";
                        return(result);
                    }
                    else
                    {
                        return(new HttpResponseMessage(HttpStatusCode.NotFound));
                    }
                }
                else
                {
                    return(new HttpResponseMessage(HttpStatusCode.BadRequest));
                }
            }
            catch (Exception)
            {
                return(new HttpResponseMessage(HttpStatusCode.BadRequest));
            }
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Kiem tra thong  tin dang nhap nhap con hieu luc khong
 /// </summary>
 /// <param name="tokenId">Token da luu</param>
 /// <returns>true: thanh cong, nguoc lai thats bai</returns>
 /// Create by: dvthang:12.1.2018
 public bool ValidateToken(string tokenId, ref Token oToken)
 {
     return(tokenRep.ValidateToken(tokenId, ref oToken));
 }