当前位置: 首页 > news >正文

【.net core】yisha框架 SQL SERVER数据库 反向递归查询部门(子查父)

 业务service.cs中ListFilter方法中内容

//反向递归查询部门列表List<DepartmentEntity> departmentList = await departmentService.GetReverseRecurrenceList(new DepartmentListParam() { Ids = operatorInfo.DepartmentId.ToString() });if (departmentList != null && departmentList.Count > 0){//查找列表中为根节点的部门DepartmentEntity department = departmentList.Find(a => a.ParentId == 0);if (department != null){strSql.Append(" AND a.AffiliatedUnit = @AffiliatedUnit");parameter.Add(DbParameterExtension.CreateDbParameter("@AffiliatedUnit", department.Id));}}

DepartmentService.cs中内容

public async Task<List<DepartmentEntity>> GetReverseRecurrenceList(DepartmentListParam param){var strSql = new StringBuilder();List<DbParameter> filter = ListFilter(param, strSql);var list = await this.BaseRepository().FindList<DepartmentEntity>(strSql.ToString(), filter.ToArray());return list.ToList();}private List<DbParameter> ListFilter(DepartmentListParam param, StringBuilder strSql, bool bNewsContent = false){//param.ids需为单个IDstrSql.Append($@"with temp as ( select * from SysDepartment where id = {(!string.IsNullOrEmpty(param.Ids) ? param.Ids : "0")}union all select a.* from SysDepartment a inner join temp on temp.[parentId]  =  a.[id]) select * from temp");var parameter = new List<DbParameter>();//strSql.Append(@" ORDER BY cast(ISNULL(BuildingNumber, '0') as int) asc,cast(ISNULL(Floor, '0') as int) asc,HouseCode asc ");return parameter;}

mysql数据库中参考mysql 递归语法修改sql

http://www.lryc.cn/news/188948.html

相关文章:

  • java处理时间-去除节假日以及双休日
  • 快讯|Tubi 有 Rabbit AI 啦
  • Zookeeper从入门到精通
  • 10.11作业
  • 如何对比github中不同commits的区别
  • 串的基本操作(数据结构)
  • ctfshow-web12(glob绕过)
  • hive3.1核心源码思路
  • LATR:3D Lane Detection from Monocular Images with Transformer
  • 什么是UI自动化测试工具?
  • 计算顺序表中值在100到500之间的元素个数
  • 【问题总结】级数的括号可以拆吗?
  • 抖音自动养号脚本+抖音直播控场脚本
  • uvm中transaction的response和id的解读
  • 第四节(1):EXCEL中判断一个WORD文件是否被打开
  • java.util.concurrent.locks.Condition详解
  • 选择适合变更管理的产品开发工具的要点和建议
  • 小程序 词云图 echarts-for-weixin-wordcloud
  • VScode配置Jupyter
  • java模拟GPT流式问答
  • 【好玩】如何在github主页放一条贪吃蛇
  • 顶顶通ASR安装配置说明
  • VMware和别的服务器 ,组建局域网那些事 。
  • 自监督DINO论文笔记
  • 计算机视觉: 基于隐式BRDF自编码器的文生三维技术
  • 分类预测 | MATLAB实现KOA-CNN-BiLSTM开普勒算法优化卷积双向长短期记忆神经网络数据分类预测
  • Java队列相关面试题
  • 水库大坝除险加固安全监测系统解决方案
  • android native C++编程实现数据库加密sqlcipher
  • 第五节 C++ 循环结构(算法)