//報名頁面 public ActionResult Sign_up(int id) { string Ep_Code = Request.Cookies["account"].Value; tEmployee Ep = db.tEmployee.Where(a => a.fEp_Code == Ep_Code).Single(); if (db.tRegistrationDetail.Where(a => a.fEp_ID == Ep.fEp_ID && a.fSt_ID != 5).ToList().Select(a => a.tTravelCase.tDayTravel.Last().fDT_Date.Year).Where(a => a == DateTime.Now.Year).Any()) { return(RedirectToAction("CaseDetail", "TraveCase", new { area = "EmployeeTrave", id = id, had = true })); } tTravelCase TC = db.tTravelCase.Find(id); int grantyear = 4500; int gotday = (((DateTime.Now) - (db.tEmployee.Where(a => a.fEp_ID == Ep.fEp_ID).Single().fEp_Seniority)).Days); int grant = gotday > 365 ? grantyear : (gotday / 30 * (grantyear / 12)); List <tRegistrationDetail> Case1 = db.tRegistrationDetail.Where(a => a.fTC_ID == id).ToList(); int Sum = 0; Sum += Case1.Where(a => a.fSt_ID != 5).Count(); foreach (int rdID in Case1.Where(a => a.fSt_ID != 5).Select(a => a.fRD_ID)) { Sum += db.tFamily.Where(a => a.fRD_ID == rdID && a.fFa_Car == true).Count(); Sum += db.tDependentsTravel.Where(a => a.fRD_ID == rdID && a.fDT_Car == true).Count(); } ViewBag.SumNow = Sum; ViewBag.RD_Grant = grant; ViewBag.Ep_De = db.tDependents.Where(a => a.fEp_ID == Ep.fEp_ID).ToList(); ViewBag.Employee = Ep; ViewBag.TravelCase = TC; return(View()); }
//讀取二進為圖檔 public ActionResult GetImage(int id) { tTravelCase photo = db.tTravelCase.Find(id); byte[] file = photo.fTC_Picture; return(File(file, "image/jpeg")); }
//出團 public ActionResult GOGO(int id) { tTravelCase GO = db.tTravelCase.Find(id); GO.fTC_LorD = db.tTravelCase.Where(a => a.fTC_LorD > 0).Count() + 1; db.Entry(GO).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(new EmptyResult()); }
//流團 public ActionResult GameOver(int id) { tTravelCase Over = db.tTravelCase.Find(id); Over.fTC_LorD = -1; db.Entry(Over).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(new EmptyResult()); }
public ActionResult CreateCase() { tTravelCase newtrave = new tTravelCase(); newtrave.fTC_Title = "新方案"; newtrave.fTC_Top = 0; newtrave.fTC_Gate = 0; newtrave.fTC_Cost = 0; newtrave.fTC_TDate = "(無行程)"; newtrave.fTC_Content = ""; newtrave.fTC_Notes = ""; newtrave.fTC_LorD = 0; newtrave.fCC_ID = 2; newtrave.fTC_PerL = 2; newtrave.fTC_Car = 0; newtrave.fTC_Eat = 0; newtrave.fTC_hotel = 0; db.tTravelCase.Add(newtrave); db.SaveChanges(); return(new EmptyResult()); }
public ActionResult TravelEditEnd(tTravelCase TCback, HttpPostedFileBase Image) { int TC_ID = TCback.fTC_ID; if (ModelState.IsValid) { if (Image != null && Image.ContentLength > 0) { //將上傳的圖轉成二進位 var imgSize = Image.ContentLength; byte[] imgByte = new byte[imgSize]; Image.InputStream.Read(imgByte, 0, imgSize); TCback.fTC_Picture = imgByte; } db.Entry(TCback).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } return(RedirectToAction("TravelEdit", "TraveCase", new { area = "EmployeeTrave", id = TC_ID })); }
//旅遊詳細 public ActionResult CaseDetail(int id, bool had = false) { ViewBag.had = had; tTravelCase Status = db.tTravelCase.Find(id); if (Status.fTC_LorD != 0 | !Status.tRegistrationOpen.Any()) { ViewBag.end = true; } else { if (Status.tRegistrationOpen.OrderByDescending(a => a.fRO_ID).First().fRO_CDate < DateTime.Now) { ViewBag.end = true; } else { ViewBag.end = false; } } return(View(db.tTravelCase.Find(id))); }
public ActionResult DeleteCase(int id) { foreach (tRegistrationDetail ep in db.tRegistrationDetail.Where(a => a.fTC_ID == id)) { int RD_ID = ep.fRD_ID; foreach (tFamily fa in db.tFamily.Where(a => a.fRD_ID == RD_ID)) { db.tFamily.Remove(fa); } foreach (tDependentsTravel dt in db.tDependentsTravel.Where(a => a.fRD_ID == RD_ID)) { db.tDependentsTravel.Remove(dt); } db.SaveChanges(); db.tRegistrationDetail.Remove(ep); } foreach (tDayTravel DT in db.tDayTravel.Where(a => a.fTC_ID == id)) { db.tDayTravel.Remove(DT); } foreach (tRegistrationOpen RO in db.tRegistrationOpen.Where(a => a.fTC_ID == id)) { db.tRegistrationOpen.Remove(RO); } foreach (tPenalty Pe in db.tPenalty.Where(a => a.fTC_ID == id)) { db.tPenalty.Remove(Pe); } db.SaveChanges(); tTravelCase delete = db.tTravelCase.Find(id); db.tTravelCase.Remove(delete); db.SaveChanges(); return(new EmptyResult()); }
public ActionResult SignSave(tTravelCase TraveCase) { int TC_ID = TraveCase.fTC_ID; return(RedirectToAction("SignStatus", "TraveCase", new { area = "EmployeeTrave", id = TC_ID })); }