/// <summary> /// 請假系統 /// </summary> /// <returns></returns> public ActionResult CreateLeave() { //建立ViewModel VMCreateLeave vmCreateLeave = new VMCreateLeave(); //取VM所需資料 //取得該部門所有員工 List <VMEmployee> emplist = (new VMEmployee()).getlist(db.tEmployees.Where(m => m.fDepartment == Department).ToList()); //該名員工 vmCreateLeave.employee = emplist.Where(m => m.id == EmployeeId).FirstOrDefault(); //該員工的請假統計 vmCreateLeave.leavecountList = db.tLeavecounts.Where(m => m.fEmployeeId == EmployeeId).ToList(); //該部門所有員工 vmCreateLeave.employeelist = emplist; //假別列表 vmCreateLeave.leavesortList = db.tleavesorts.ToList(); return(View(vmCreateLeave)); }
public ActionResult CreateLeave(VMCreateLeave vMCLeave) { //請假 tLeave tLeave = new tLeave(); tLeave.fEmployeeId = vMCLeave.employee.id; tLeave.fSort = vMCLeave.leavesort; tLeave.fApplyDate = DateTime.Now; tLeave.fActiveDate = vMCLeave.start; tLeave.fEndDate = vMCLeave.end; tLeave.fTimeCount = vMCLeave.timecount; tLeave.fReason = vMCLeave.reason; db.tLeaves.Add(tLeave); db.SaveChanges(); //簽核表 tSignoff tSignoff = new tSignoff(); tSignoff.fLeaveId = int.Parse(db.tLeaves .OrderByDescending(p => p.fId) .Select(r => r.fId) .First().ToString()); tSignoff.fSupervisorId = Convert.ToInt32(vMCLeave.supervisorId); tSignoff.fApplyClass = vMCLeave.leavesort; tSignoff.fStartdate = DateTime.Now; tSignoff.fEnddate = vMCLeave.start; db.tSignoffs.Add(tSignoff); db.SaveChanges(); return(RedirectToAction("AttendIndex")); }
public ActionResult CreateLeave() { //建立ViewModel VMCreateLeave vmCreateLeave = new VMCreateLeave(); //取VM所需資料 //取得部門 List <VMEmployee> emplist = new List <VMEmployee>(); foreach (tEmployee emp in db.tEmployees.Where(m => m.fDepartment == Department).ToList()) { emplist.Add(new VMEmployee().convert(emp)); } //該名員工 vmCreateLeave.employee = emplist.Where(m => m.id == EmployeeId).FirstOrDefault(); //該員工的請假統計 vmCreateLeave.leavecountList = db.tLeavecounts.Where(m => m.fEmployeeId == EmployeeId).ToList(); //該部門所有員工 vmCreateLeave.employeelist = emplist; return(View(vmCreateLeave)); }