/// <summary>
        /// 根据患者搜索输入分页获取患者实体列表
        /// </summary>
        /// <param name="input">患者搜索输入</param>
        /// <returns>患者实体列表</returns>
        public async Task <Tuple <List <Patient>, int> > GetPatientPageList(PatientSearchInput input)
        {
            var query = _context.Patient.Include(i => i.Hospital).Include(i => i.Doctor).AsQueryable();

            if (!string.IsNullOrEmpty(input.PatientName))
            {
                query = query.Where(i => i.PatientName.Contains(input.PatientName));
            }
            if (input.Sex != -1)
            {
                query = query.Where(i => i.Sex == input.Sex);
            }
            if (input.UserStatus != -1)
            {
                query = query.Where(i => i.UserStatus == input.UserStatus);
            }
            if (input.HospitalId != -1)
            {
                query = query.Where(i => i.HospitalId == input.HospitalId);
            }

            int total       = query.Count();
            var patientList = await query.OrderBy(i => i.Id).Skip(input.PageSize * (input.PageIndex - 1)).Take(input.PageSize).ToListAsync();

            return(new Tuple <List <Patient>, int>(patientList, total));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 首页
        /// </summary>
        /// <returns></returns>
        public IActionResult Index(int pageIndex = 1)
        {
            var search = new PatientSearchInput {
                PageIndex = pageIndex
            };

            return(View(search));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 根据患者搜索输入分页获取患者列表
        /// </summary>
        /// <param name="input">患者搜索输入</param>
        /// <returns>患者列表</returns>
        public async Task <Tuple <List <PatientViewDto>, int> > GetPatientPageList(PatientSearchInput input)
        {
            var result = await _repository.GetPatientPageList(input);

            var tuple = new Tuple <List <PatientViewDto>, int>(Mapper.Map <List <Patient>, List <PatientViewDto> >(result.Item1), result.Item2);

            return(tuple);
        }
        /// <summary>
        /// 首页
        /// </summary>
        /// <returns></returns>
        public async Task <IActionResult> Index(int pageIndex = 1, long hospitalId = -1)
        {
            await ShowHospitalList(true);

            var search = new PatientSearchInput {
                HospitalId = hospitalId, PageIndex = pageIndex
            };

            return(View(search));
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 患者列表
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <IActionResult> List(PatientSearchInput input)
        {
            var model = new Page <PatientViewDto>();

            var items = await _service.GetPatientPageList(input);

            model.CurrentPage  = input.PageIndex;
            model.Items        = items.Item1;
            model.TotalRecords = items.Item2;

            return(PartialView("_ListPartial", model));
        }
        /// <summary>
        /// 根据患者搜索输入分页获取患者实体列表
        /// </summary>
        /// <param name="input">患者搜索输入</param>
        /// <returns>患者实体列表</returns>
        public async Task <Tuple <List <Patient>, int> > GetPatientPageList(PatientSearchInput input)
        {
            var query = _context.Patients.AsQueryable();

            if (!string.IsNullOrEmpty(input.PatientName))
            {
                query = query.Where(i => i.PatientName.Contains(input.PatientName));
            }

            int total       = query.Count();
            var patientList = await query.OrderBy(i => i.Id).Skip(input.PageSize * (input.PageIndex - 1)).Take(input.PageSize).ToListAsync();

            return(new Tuple <List <Patient>, int>(patientList, total));
        }
        /// <summary>
        /// 患者列表
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <IActionResult> List(PatientSearchInput input)
        {
            var model = new Page <PatientViewDto>();

            if (CurrentLoginUser.HospitalId.HasValue)
            {
                input.HospitalId = CurrentLoginUser.HospitalId.Value;
            }
            var items = await _service.GetPatientPageList(input);

            model.CurrentPage  = input.PageIndex;
            model.TotalRecords = items.Item2;
            model.Items        = items.Item1;

            ViewBag.HospitalId = input.HospitalId;

            return(PartialView("_ListPartial", model));
        }