Example #1
0
        /// <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("匯入成功!!");
            }
        }
Example #2
0
        /// <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();
        }