public ActionResult GetRepairPage(int page = 1, int pageSize = 10, string beginDate = "", string endDate = "", int isFinish = 2) { var repairService = new RepairService(); var where = PredicateBuilder.True <Repair>(); var ownerId = (Session["Account"] as AccountInfo).Id; where = where.And(f => f.OwnerId == ownerId); if (!string.IsNullOrEmpty(beginDate)) { DateTime begin; if (DateTime.TryParse(beginDate, out begin)) { where = where.And(f => f.ApplyDate >= begin); } } if (!string.IsNullOrEmpty(endDate)) { DateTime end; if (DateTime.TryParse(endDate, out end)) { where = where.And(f => f.ApplyDate <= end); } } if (isFinish == 1) { where = where.And(f => f.FinishDate != null); } else if (isFinish == 0) { where = where.And(f => f.FinishDate == null); } return(Json(repairService.QueryToPageByOwner(where, page, pageSize))); }