protected void SubmitButton_Click(object sender, EventArgs e) { using (TpsDbContext tps = new TpsDbContext()) { StaffRequest request = new StaffRequest(); request.ContractID = int.Parse(ContractDropDownList.SelectedValue); int[] chosenStaff = (int[])ViewState["ChosenStaff"]; for (int i = 0; i < chosenStaff.Length; i++) { int id = chosenStaff[i]; if (id == 0) { continue; } if (i == 0) { request.Staff1 = tps.Users.Where(u => u.UserID == id).Single(); } else if (i == 1) { request.Staff2 = tps.Users.Where(u => u.UserID == id).Single(); } else if (i == 2) { request.Staff3 = tps.Users.Where(u => u.UserID == id).Single(); } } tps.Requests.Add(request); tps.SaveChanges(); } Response.Redirect("~/MyStaffingRequests.aspx"); }
public async Task <ActionResult> Post([FromForm] StaffRequest request) { var result = await _staffService.PostAsync(request); if (result != null) { return(Ok(result)); } return(NotFound()); }
public StaffResponse Staffs([FromUri] StaffRequest request) { var result = new StaffResponse(); result.rows = GetData().Skip(request.start).Take(request.limit).Select(item => item).ToList(); result.total = result.rows.Count; result.success = true; return(result); }
// // GET: /OA/Staff/ public ActionResult Index(StaffRequest request) { var branchList = this.OAService.GetBranchList(null); this.ViewBag.branchId = new SelectList(branchList, "ID", "Name"); var roleList = this.AccountService.GetRoleList(null); this.ViewBag.roleId = new SelectList(Evisou.Framework.Utility.EnumHelper.GetAllItemList <EnumPosition>());//new SelectList(roleList, "ID", "Name"); this.ViewBag.position = new SelectList(EnumHelper.GetItemValueList <EnumPosition>(), "Key", "Value"); var result = this.OAService.GetStaffList(request); return(View(result)); }
public IEnumerable <Staff> GetStaffList(StaffRequest request = null) { request = request ?? new StaffRequest(); using (var dbContext = new HRDbContext()) { IQueryable <Staff> staffs = dbContext.Staffs.Include("Branch"); if (!string.IsNullOrEmpty(request.Name)) { staffs = staffs.Where(u => u.Name.Contains(request.Name)); } if (request.BranchId > 0) { staffs = staffs.Where(u => u.BranchId == request.BranchId); } return(staffs.OrderByDescending(u => u.ID).ToPagedList(request.PageIndex, request.PageSize)); } }
public HttpResponseMessage Save(StaffRequest req) { StaffResponse res = new StaffResponse { Status = "OK" }; if (IsValid(req.SecurityToken)) { var studentSvc = new StaffService(this._dbContext); res.Staff = studentSvc.Save(req.Staff); } else { res = new StaffResponse { Status = "Error", ErrorCode = "ERR1001", ErrorMessage = "Invalid or expired token" }; CurrentLoggerProvider.Info(string.Format("Invalid Request. Student Id: {0}", req.Staff.StaffId)); } return(Request.CreateResponse(HttpStatusCode.OK, res)); }
protected void RequestsGridView_RowUpdating(object sender, GridViewUpdateEventArgs e) { DropDownList staffDropDownList = (DropDownList)RequestsGridView.Rows[e.RowIndex].FindControl("StaffDropDownList"); using (TpsDbContext tps = new TpsDbContext()) { int requestId = (int)e.Keys[0]; StaffRequest request = tps.Requests.Where(r => r.RequestID == requestId).Single(); if (staffDropDownList.SelectedValue == "0") { request.Status = "Denied"; } else { int staffId = int.Parse(staffDropDownList.SelectedValue); request.Status = "Approved"; request.Contract.Staff = tps.Users.Where(u => u.UserID == staffId).Single(); } tps.SaveChanges(); } }
protected void RequestsGridView_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.DataItem != null) { StaffRequest request = (StaffRequest)e.Row.DataItem; if (request.Status != "In Review") { e.Row.Cells[5].Visible = false; } DropDownList staffDropDownList = (DropDownList)e.Row.FindControl("StaffDropDownList"); if (staffDropDownList != null) { staffDropDownList.Items.Add(new ListItem("Denied", "0")); if (request.Staff1 != null) { staffDropDownList.Items.Add(new ListItem(string.Format("Approved: {0}, {1}", request.Staff1.LastName, request.Staff1.FirstName), request.Staff1.UserID.ToString())); } if (request.Staff2 != null) { staffDropDownList.Items.Add(new ListItem(string.Format("Approved: {0}, {1}", request.Staff2.LastName, request.Staff2.FirstName), request.Staff2.UserID.ToString())); } if (request.Staff3 != null) { staffDropDownList.Items.Add(new ListItem(string.Format("Approved: {0}, {1}", request.Staff3.LastName, request.Staff3.FirstName), request.Staff3.UserID.ToString())); } } } }
// // GET: /OA/Staff/ public ActionResult Index(StaffRequest request) { var result = this.OAService.GetStaffList(request); return(View(result)); }
public ActionResult Datatable(StaffRequest request) { #region 自定义动作 if (!string.IsNullOrEmpty(request.customActionType)) { string[] id_Array = Request.Params.GetValues("id[]"); List <int> ids = new List <int>(); foreach (string i in id_Array) { ids.Add(int.Parse(i)); } switch (request.customActionType) { case "group_action": switch (request.customActionName) { case "delete": this.OAService.DeleteStaff(ids); break; } break; case "delete": this.OAService.DeleteStaff(ids); break; } } #endregion var allStaff = this.OAService.GetStaffList(null); IEnumerable <Staff> filterStaff = allStaff; #region 搜索 if (!string.IsNullOrEmpty(request.search)) { var isNameSearchable = Convert.ToBoolean(Request["columns[1][searchable]"]); } else if (request.action == "filter") { var NameFilter = Convert.ToString(Request["name"]).ToLower().Trim(); var PositionFilter = Convert.ToString(Request["position"]).ToLower().Trim(); var BranchFilter = Convert.ToString(Request["branchId"]).ToLower().Trim(); var GenderFilter = Convert.ToString(Request["gender"]).ToLower().Trim(); var BrithFromFilter = Convert.ToString(Request["brith_from"]).ToLower().Trim(); var BrithToFilter = Convert.ToString(Request["brith_to"]).ToLower().Trim(); var EmailFilter = Convert.ToString(Request["email"]).ToLower().Trim(); var TelFilter = Convert.ToString(Request["tel"]).ToLower().Trim(); // var AddressFilter = Convert.ToString(Request["address"]).Trim().ToLower(); var isNameSearchable = Convert.ToBoolean(Request["columns[1][searchable]"].ToString()); if (isNameSearchable) { filterStaff = filterStaff.Where(c => c.Name.ToLower().Contains(NameFilter)); } var isPositionSearchable = Convert.ToBoolean(Request["columns[2][searchable]"].ToString()); if (isPositionSearchable && !string.IsNullOrEmpty(PositionFilter)) { filterStaff = filterStaff.Where(c => c.Position == PositionFilter.ToInt()); } var isBranchSearchable = Convert.ToBoolean(Request["columns[3][searchable]"].ToString()); if (isBranchSearchable) { // filterStaff = filterStaff.Where(c => c.Branch != null && c.Branch.ID == BranchFilter.ToInt()); } var isGenderSearchable = Convert.ToBoolean(Request["columns[4][searchable]"].ToString()); if (isGenderSearchable) { filterStaff = filterStaff.Where(c => Evisou.Framework.Utility.EnumHelper.GetEnumTitle((EnumGender)c.Gender).ToLower().Contains(GenderFilter)); } var isBirthSearchable = Convert.ToBoolean(Request["columns[5][searchable]"].ToString()); if (isBirthSearchable && !string.IsNullOrEmpty(BrithFromFilter) && !string.IsNullOrEmpty(BrithToFilter)) { filterStaff = filterStaff.Where(c => c.BirthDate >= DateTime.Parse(BrithFromFilter) && c.BirthDate <= DateTime.Parse(BrithToFilter)); } var isEmailSearchable = Convert.ToBoolean(Request["columns[6][searchable]"].ToString()); if (isEmailSearchable) { filterStaff = filterStaff.Where(c => c.Email.ToLower().Contains(EmailFilter)); } var isTelSearchable = Convert.ToBoolean(Request["columns[7][searchable]"].ToString()); if (isTelSearchable) { filterStaff = filterStaff.Where(c => c.Tel.ToLower().Contains(TelFilter)); } var isAddressSearchable = Convert.ToBoolean(Request["columns[8][searchable]"].ToString()); if (isAddressSearchable) { // filterStaff = filterStaff.Where(c => c.Address.ToLower().Contains(AddressFilter)); //filterStaff = filterStaff.Where(c => (!string.IsNullOrEmpty(c.Address))).Where(c => c.Address.ToLower().Contains(AddressFilter)); } } else if (request.action == "filter_cancel") { filterStaff = allStaff; } else { filterStaff = allStaff; } #endregion #region 排序 var isNameSortable = Convert.ToBoolean(Request["columns[1][orderable]"]); var isPositionSortable = Convert.ToBoolean(Request["columns[2][orderable]"]); var isBranchSortable = Convert.ToBoolean(Request["columns[3][orderable]"]); var isGenderSortable = Convert.ToBoolean(Request["columns[4][orderable]"]); var isBirthSortable = Convert.ToBoolean(Request["columns[5][orderable]"]); var isEmailSortable = Convert.ToBoolean(Request["columns[6][orderable]"]); var isTelSortable = Convert.ToBoolean(Request["columns[7][orderable]"]); var isAddressSortable = Convert.ToBoolean(Request["columns[8][orderable]"]); var sortColumnIndex = Convert.ToInt32(Request["order[0][column]"]); Func <Staff, string> orderingFunction = (c => sortColumnIndex == 1 && isNameSortable ? c.Name : sortColumnIndex == 2 && isPositionSortable ? Evisou.Framework.Utility.EnumHelper.GetEnumTitle((EnumPosition)c.Position): sortColumnIndex == 3 && isBranchSortable && c.Branch != null ? c.Branch.Name : sortColumnIndex == 4 && isGenderSortable ? Evisou.Framework.Utility.EnumHelper.GetEnumTitle((EnumGender)c.Gender) : sortColumnIndex == 5 && isBirthSortable ? c.BirthDate.ToCnDataString() : sortColumnIndex == 6 && isEmailSortable ? c.Email : sortColumnIndex == 7 && isTelSortable ? c.Tel : sortColumnIndex == 8 && isAddressSortable ? c.Address: ""); var sortDirection = Request["order[0][dir]"]; // asc or desc if (sortDirection == "asc") { filterStaff = filterStaff.OrderBy(orderingFunction); } if (sortDirection == "desc") { filterStaff = filterStaff.OrderByDescending(orderingFunction); } #endregion var displayedStaff = filterStaff.Skip(request.start).Take(request.length); var result = from c in displayedStaff select new[] { Convert.ToString(c.ID) , c.Name , Evisou.Framework.Utility.EnumHelper.GetEnumTitle((EnumPosition)c.Position) , c.Branch == null ? "未分配" : c.Branch.Name , Evisou.Framework.Utility.EnumHelper.GetEnumTitle((EnumGender)c.Gender) , c.BirthDate.ToCnDataString() , c.Email , c.Tel , c.Address , Convert.ToString(c.ID) }; return(Json(new { draw = request.draw, //param.sEcho, recordsTotal = allStaff.Count(), //alltransactions.Count(), recordsFiltered = filterStaff.Count(), data = result }, JsonRequestBehavior.AllowGet)); }