public async Task <IList <QualityCommittee> > QualityCommitteeList(QualityCommitteeIn QualityCommitteeInfo)
        {
            var query = _repository.GetAll().OrderByDescending(a => a.CreatedOn).Where(a => a.IsDelete == false);

            if (!string.IsNullOrEmpty(QualityCommitteeInfo.ClinicName))
            {
                query = query.Where(a => a.ClinicName.Contains(QualityCommitteeInfo.ClinicName));
            }
            if (!string.IsNullOrEmpty(QualityCommitteeInfo.DoctorName))
            {
                query = query.Where(a => a.DoctorName.Contains(QualityCommitteeInfo.DoctorName));
            }
            return(await query.ToListAsync());
        }
        public async Task <PagedResultDto <QualityCommittee> > QualityCommitteePage(QualityCommitteeIn QualityCommitteeInfo)
        {
            //初步过滤
            var query = _repository.GetAll().OrderByDescending(a => a.CreatedOn).Where(a => a.IsDelete == false);

            if (!string.IsNullOrEmpty(QualityCommitteeInfo.ClinicName))
            {
                query = query.Where(a => a.ClinicName.Contains(QualityCommitteeInfo.ClinicName));
            }
            if (!string.IsNullOrEmpty(QualityCommitteeInfo.DoctorName))
            {
                query = query.Where(a => a.DoctorName.Contains(QualityCommitteeInfo.DoctorName));
            }
            //获取总数
            var tasksCount = query.Count();
            //获取总数
            var totalpage            = tasksCount / QualityCommitteeInfo.MaxResultCount;
            var QualityCommitteeList = await query.PageBy(QualityCommitteeInfo.SkipTotal, QualityCommitteeInfo.MaxResultCount).ToListAsync();

            return(new PagedResultDto <QualityCommittee>(tasksCount, QualityCommitteeList.MapTo <List <QualityCommittee> >()));
        }
示例#3
0
        public async Task <PagedResultDto <QualityManager> > QualityDoctorInformation(QualityCommitteeIn clinic, IList <DoctorRelation> rel)
        {
            var doc        = _docrepository.GetAll();
            var user       = _userrepository.GetAll();
            var qualitycom = _qualitycomrepository.GetAll().Where(clinic.Expression);

            var query = from a in doc
                        join b in user on a.UserID equals b.Id
                        join d in qualitycom on a.Id equals d.DoctorID
                        where !a.IsDelete && !b.IsDelete && !d.IsDelete && a.CheckRes == "success" && d.QualityState == "success" && a.AuthCheckRes == "success"
                        select new QualityManager
            {
                UserImage        = b.UserImage,
                DoctorName       = a.DoctorName,
                DoctorLevel      = "4.1",
                UserID           = b.Id,
                HospitalName     = a.HospitalName,
                Department       = a.Department,
                Title            = a.Title,
                Status           = "1",
                Id               = a.Id,
                QualityControlId = d.Id,
                CreatedOn        = d.CreatedOn
            };

            if (!string.IsNullOrEmpty(clinic.KeyWord))
            {
                var labelrel = new int[rel.Count];
                for (var i = 0; i < rel.Count(); i++)
                {
                    labelrel[i] = rel[i].DoctorID;
                }
                if (labelrel.Count() > 0)
                {
                    query = query.OrderByDescending(a => a.CreatedOn).Where(t => labelrel.Contains(t.Id));
                }
                else
                {
                    query = query.OrderByDescending(a => a.CreatedOn).Where(t => t.DoctorName.Contains(clinic.KeyWord));
                }
            }
            //获取总数
            var tasksCount = query.Count();
            //获取总数
            var totalpage            = tasksCount / clinic.MaxResultCount;
            var ClinicInfomationList = await query.PageBy(clinic.SkipTotal, clinic.MaxResultCount).ToListAsync();

            return(new PagedResultDto <QualityManager>(tasksCount, ClinicInfomationList.MapTo <List <QualityManager> >()));
        }
示例#4
0
 /// <summary>
 /// 输出模型
 /// </summary>
 /// <param name="ClinicInfomationDto"></param>
 /// <param name="ClinicInfomationInfo"></param>
 public QualityDoctorInfoOut(PagedResultDto <QualityManager> ClinicInfomationDto, QualityCommitteeIn ClinicInfomationInfo)
 {
     Items          = ClinicInfomationDto.Items;
     TotalCount     = ClinicInfomationDto.TotalCount;
     TotalPage      = ClinicInfomationDto.TotalCount / ClinicInfomationInfo.MaxResultCount;
     SkipCount      = ClinicInfomationInfo.SkipCount;
     MaxResultCount = ClinicInfomationInfo.MaxResultCount;
 }