public IEnumerable <SysApplicationEntity> GetCanBindApplication(DependentSearchRequest request, PageItem pageItem) { StringBuilder command = new StringBuilder(); command.AppendLine("SELECT A.AppId,A.AppName,A.AppEName,A.AppTypeId,A.Owner,A.Status,"); command.AppendLine("CASE WHEN B.DependentAppId IS NOT NULL THEN 1 ELSE 0 END AS IsDependent"); command.AppendLine("FROM SysApplication A WITH(NOLOCK) "); command.AppendFormat("LEFT JOIN SysAppDependent B WITH(NOLOCK) ON A.APPID=B.DependentAppId AND B.APPID={0} ", request.AppId); command.AppendFormat("WHERE A.APPID<>{0} ", request.AppId); if (!string.IsNullOrEmpty(request.AppName)) { command.AppendFormat("AND (A.AppName LIKE '%{0}%' OR A.AppEName LIKE '%{0}%') ", request.AppName); } if (request.AppTypeId >= 0) { command.AppendFormat("AND A.AppTypeId={0} ", request.AppTypeId); } if (request.Bind >= 0) { if (request.Bind == 0) { command.AppendFormat("AND B.DependentAppId IS NULL ", request.Bind); } else { command.AppendFormat("AND B.DependentAppId IS NOT NULL ", request.Bind); } } if (request.Status >= 0) { command.AppendFormat("AND A.Status={0} ", request.Status); } if (request.SubSystemId >= 0) { command.AppendFormat("AND A.SubSystemId={0} ", request.SubSystemId); } command.AppendLine("ORDER BY AppId"); using (var conn = new SqlConnection(ConnectionStr.FxDb)) { conn.Open(); return(DapperHelper <SysApplicationEntity> .GetPageList(ConnectionStr.FxDb, command.ToString(), pageItem)); } }
public ActionResult Dependent(int id, AppDependentSearchArgs arg, int pageIndex = 1) { ViewBag.AppId = id; #region 查询参数 DependentSearchRequest request = new DependentSearchRequest() { SubSystemId = arg.SubSystemId, Status = arg.Status, AppTypeId = arg.AppTypeId, AppName = arg.AppName, Bind = arg.Bind, AppId = id }; #endregion PageItem pageItem = new PageItem { PageIndex = pageIndex, PageSize = 15 }; List <Entity.SysSubEntity> subSystemList = subSystemLogic.GetSubSystemList().ToList <Entity.SysSubEntity>(); List <Entity.SysAppTypeEntity> appTypeList = appTypeLogic.GetAppTypeList().ToList <Entity.SysAppTypeEntity>(); appTypeList.Insert(0, new SysAppTypeEntity() { AppTypeId = -1, TypeName = "全部" }); subSystemList.Insert(0, new SysSubEntity() { SubSystemId = -1, SystemName = "全部" }); ViewBag.AppTypeId = new SelectList(appTypeList, "AppTypeId", "TypeName"); ViewBag.SubSystemId = new SelectList(subSystemList, "SubSystemId", "SystemName"); ViewBag.AppState = new SelectList(EnumHelper.GetItemValueList <EntityStatus>(), "Key", "Value"); ViewBag.DictionaryAppType = appTypeList.ToDictionary(k => k.AppTypeId, v => v); List <SysApplicationEntity> sysApplicationList = logic.GetCanBindApplication(request, pageItem).ToList <SysApplicationEntity>(); ViewBag.SysApplicationList = new PagedList <SysApplicationEntity>(sysApplicationList, pageItem.PageIndex, pageItem.PageSize, pageItem.TotalCount); return(View(arg)); }
public IEnumerable <SysApplicationEntity> GetCanBindApplication(DependentSearchRequest request, PageItem pageItem = null) { return(sysApplicationDal.GetCanBindApplication(request, pageItem)); }