Exemple #1
0
        // GET: 下載工率excel表格
        public ActionResult Index(string id, FormCollection form)
        {
            log.Info("get project item :projectid=" + id);
            //取得專案基本資料
            ViewBag.projectid = id;
            service.getProjectId(id);
            WageFormToExcel poi = new WageFormToExcel();

            poi.exportExcel(service.wageTable, service.wageTableItem);
            TND_PROJECT p = service.getProjectById(id);

            ViewBag.projectName = p.PROJECT_NAME;
            return(View());
        }
Exemple #2
0
        public ActionResult uploadWageTable(HttpPostedFileBase fileWage)
        {
            string projectid = Request["projectid"];

            log.Info("Upload Wage Table for projectid=" + projectid);
            string message = "";

            //檔案變數名稱需要與前端畫面對應
            if (null != fileWage && fileWage.ContentLength != 0)
            {
                //2.解析Excel
                log.Info("Parser Excel data:" + fileWage.FileName);
                //2.1 設定Excel 檔案名稱
                var fileName = Path.GetFileName(fileWage.FileName);
                var path     = Path.Combine(ContextService.strUploadPath + "/" + projectid, fileName);
                log.Info("save excel file:" + path);
                fileWage.SaveAs(path);
                //2.2 開啟Excel 檔案
                log.Info("Parser Excel File Begin:" + fileWage.FileName);
                WageFormToExcel wageservice = new WageFormToExcel();
                wageservice.InitializeWorkbook(path);
                //解析工率數量
                List <TND_WAGE> lstWage = wageservice.ConvertDataForWage(projectid);
                //2.3 記錄錯誤訊息
                message = wageservice.errorMessage;
                //2.4
                log.Info("Delete TND_WAGE By Project ID");
                service.delWageByProject(projectid);
                message = message + "<br/>舊有資料刪除成功 !!";
                //2.5
                log.Info("Add All TND_WAGE to DB");
                service.refreshWage(lstWage);
                message = message + "<br/>資料匯入完成 !!";
            }
            TempData["result"] = message;
            // 將工率乘數寫入工率Table的Price欄位
            int k = service.updateWagePrice(projectid);

            return(RedirectToAction("WageTable/" + projectid));
        }