/// <summary> /// 上載現有標單資料 /// </summary> public string uploadProjectItem(HttpPostedFileBase file1) { string projectid = Request["id"]; logger.Debug("ProjectID=" + projectid + ",Upload ProjectItem=" + file1.FileName); TnderProjectService service = new TnderProjectService(); service.getProjectById(projectid); SYS_USER u = (SYS_USER)Session["user"]; if (null != file1 && file1.ContentLength != 0) { try { //2.解析Excel logger.Info("Parser Excel data:" + file1.FileName); //2.1 將上傳檔案存檔 var fileName = Path.GetFileName(file1.FileName); var path = Path.Combine(ContextService.strUploadPath + "/" + projectid, fileName); logger.Info("save excel file:" + path); file1.SaveAs(path); //2.2 解析Excel 檔案 //poiservice.ConvertDataForTenderProject(prj.PROJECT_ID, (int)prj.START_ROW_NO); ProjectItem2Excel poiservice = new ProjectItem2Excel(); poiservice.InitializeWorkbook(path); poiservice.ConvertDataForTenderProject(projectid); //2.3 記錄錯誤訊息 // < button type = "button" class="btn btn-primary" onclick="location.href='@Url.Action("ManagePlanItem","Plan", new { id = @Model.tndProject.PROJECT_ID})'; ">標單明細</button> //2.4 logger.Info("Delete Project_Item By Project ID"); service.delAllItemByProject(); //2.5 logger.Info("Add All Project_ITEM to DB"); service.refreshProjectItem(poiservice.lstProjectItem); } catch (Exception ex) { logger.Error(ex.StackTrace); return(ex.Message); } } if (service.strMessage != null) { return(service.strMessage); } else { return("匯入成功!!"); } }
/// <summary> /// 下載現有標單資料 /// </summary> public void downLoadProjectItem() { string projectid = Request["projectid"]; ProjectItem2Excel poiservice = new ProjectItem2Excel(); //產生檔案位置 poiservice.exportExcel(projectid); string fileLocation = "/UploadFile/" + projectid + "/" + projectid + "_標單明細.xlsx"; //檔案名稱 HttpUtility.UrlEncode預設會以UTF8的編碼系統進行QP(Quoted-Printable)編碼,可以直接顯示的7 Bit字元(ASCII)就不用特別轉換。 string filename = HttpUtility.UrlEncode(Path.GetFileName(fileLocation)); Response.Clear(); Response.Charset = "utf-8"; Response.ContentType = "text/xls"; Response.AddHeader("content-disposition", string.Format("attachment; filename={0}", filename)); ///"\\" + form.PROJECT_ID + "\\" + ContextService.quotesFolder + "\\" + form.FORM_ID + ".xlsx" Response.WriteFile(fileLocation); Response.End(); }