コード例 #1
0
        /// <summary>
        /// 檔案上傳作業
        /// </summary>
        /// <param name="annex">上傳的檔案</param>
        /// <param name="HospID">醫事機代碼</param>
        /// <returns></returns>
        public ActionResult Async_Save(IEnumerable <HttpPostedFileBase> annex, string HospID)
        {
            foreach (var file in annex)
            {
                if (file != null && file.ContentLength > 0)
                {
                    if (!String.IsNullOrEmpty(HospID))
                    {
                        var    fileName       = Path.GetFileName(file.FileName);
                        var    fileExtendName = Path.GetExtension(file.FileName);
                        string sDir           = Server.MapPath("~/FileCloud") + @"/UploadFile/LISTemp/" + HospID;
                        //string sDir = @"\FileCloud\UploadFile\" + Session["HospID"].ToString().Trim();
                        if (Directory.Exists(sDir) == false)
                        {
                            DirectoryInfo di = Directory.CreateDirectory(sDir);
                        }

                        //Session["targetNewFileName"] = HospID + "_" + Guid.NewGuid().ToString() + "_" + fileName;
                        Session["targetNewFileName"] = HospID + "_" + Guid.NewGuid().ToString() + fileExtendName;

                        var destinationPath = Path.Combine(sDir + "/", Session["targetNewFileName"].ToString());
                        file.SaveAs(destinationPath);

                        // 把上傳的紀錄寫至 UploadServer
                        // USServerStatus : S=處理中、F=上傳失敗(log會帶code)、E=上傳資料完成
                        // USType : L=手動上傳檔案方式、P=手動指定匯入的 API 串接方式
                        var us = new sysUploadServer()
                        {
                            USRowid = Guid.NewGuid().ToString(),
                            //USHospRowid = Session["HospRowid"].ToString(),
                            USHospID       = HospID,
                            USLoadFilename = Session["targetNewFileName"].ToString(),
                            USLoadDateTime = DateTime.Now,
                            USServerStatus = "S",
                            USRecordCount  = 0,
                            USType         = "L"
                        };

                        db_zmcms.sysUploadServer.Add(us);
                        db_zmcms.SaveChanges();
                    }
                }
            }

            //Return an empty string to signify success.
            return(Content(""));
        }
コード例 #2
0
        public string PushAPISchedule(string HospID, string PSDate)
        {
            string sContent = String.Empty;

            if (PSDate != null)
            {
                try
                {
                    // 取得上傳資料的所屬醫事機資料序號
                    var db_hosp = (from sh in db_zmcms.sysHospital where sh.HospID == HospID select new { sh.HospRowid }).First();

                    // 把上傳的紀錄寫至 UploadServer
                    // USServerStatus : S=處理中、F=上傳失敗(log會帶code)、E=上傳資料完成
                    // USType : L=手動上傳檔案方式、P=手動指定匯入的 API 串接方式
                    var us = new sysUploadServer()
                    {
                        USRowid        = Guid.NewGuid().ToString(),
                        USHospRowid    = (db_hosp != null) ? db_hosp.HospRowid : "",
                        USHospID       = HospID,
                        USLoadFilename = "資料取得日期(API) : " + PSDate,
                        USLoadDateTime = DateTime.Now,
                        USServerStatus = "S",
                        USRecordCount  = 0,
                        USType         = "P"
                    };

                    db_zmcms.sysUploadServer.Add(us);
                    db_zmcms.SaveChanges();

                    sContent = "00";
                }
                catch (Exception e)
                {
                    sContent = "999";
                }
            }

            return(sContent);
        }