public ActionResult GetRequestFile(string status) { var req = new ListRequest(); req.EqualityFilter = new Dictionary <string, object>(); req.EqualityFilter.Add("Submit", status); using (var connection = SqlConnections.NewByKey("Default")) { var spsHelper = new SpreedSheetHelper(Server.MapPath("~/Content/templates/export/result/ais/CapNhatPhongBanUser.xlsx")); var stream = spsHelper.ExportXls <MyRow>(new MyController().List(connection, req).Entities); return(ExcelContentResult.Create(stream.GetBuffer())); } }
public ActionResult GetResultFromFile(string status) { HttpPostedFileBase file = this.HttpContext.Request.Files[0]; if (file == null) { throw new ArgumentNullException("file"); } if (file.FileName.IsEmptyOrNull()) { throw new ArgumentNullException("filename"); } try { ListContainer <MyRow> list = new ListContainer <MyRow>(); var spsHelper = new SpreedSheetHelper(Server.MapPath("~/Content/templates/import/result/ais/CapNhatPhongBanUser.xlsx")); var stream = new MemoryStream(); file.InputStream.CopyTo(stream); list = spsHelper.ReadFromFile(list, stream); stream.Seek(0, SeekOrigin.Begin); var response = this.ExecuteMethod(() => HandleUploadRequest(file, stream, spsHelper.HasError)); AisFileRow fileRow = ((UploadResponse <AisFileRow>)response.Data).UploadedFile; if (fileRow != null) { if (spsHelper.HasError) { return(new Result <ServiceResponse>(new ServiceResponse { Error = new ServiceError() { Code = "FileErr", Message = fileRow.FilePath } })); } var fileRowResponse = this.InTransaction("Default", (uow) => { var saveFileResponse = new Ais.Repositories.AisFileRepository().Create(uow, new SaveRequest <AisFileRow> { Entity = fileRow }); if (saveFileResponse.EntityId.HasValue) { foreach (var item in list.Entities) { var saveresponse = new AisUserChangeOURepository().UpdateResult(uow, new SaveRequest <MyRow> { Entity = item }); if (saveresponse.EntityId.HasValue) { new Ais.Repositories.AisFileResultsRepository().Create(uow, new SaveRequest <AisFileResultsRow> { Entity = new AisFileResultsRow { FileId = Convert.ToInt32(saveFileResponse.EntityId), ReqId = Convert.ToInt32(saveresponse.EntityId), ReqType = 3 } }); } } } return(saveFileResponse); }).Data; } if (!(Request.Headers["Accept"] ?? "").Contains("json")) { response.ContentType = "text/plain"; } ((UploadResponse <AisFileRow>)response.Data).UploadedFile = null; return(response); } catch (Exception ex) { return(new Result <ServiceResponse>(new ServiceResponse { Error = new ServiceError() { Code = "Exception", Message = ex.Message } })); } }