XH.LAB.UTILS 6.26.500.27

dotnet add package XH.LAB.UTILS --version 6.26.500.27
                    
NuGet\Install-Package XH.LAB.UTILS -Version 6.26.500.27
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="XH.LAB.UTILS" Version="6.26.500.27" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="XH.LAB.UTILS" Version="6.26.500.27" />
                    
Directory.Packages.props
<PackageReference Include="XH.LAB.UTILS" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add XH.LAB.UTILS --version 6.26.500.27
                    
#r "nuget: XH.LAB.UTILS, 6.26.500.27"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package XH.LAB.UTILS@6.26.500.27
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=XH.LAB.UTILS&version=6.26.500.27
                    
Install as a Cake Addin
#tool nuget:?package=XH.LAB.UTILS&version=6.26.500.27
                    
Install as a Cake Tool

XH.LAB.UTILS

介绍

XH.LAB通用方法库

  • PathCombine方法优化,兼容了原来系统的Path Combine因为第二个参数前有/导致无法正常拼接路径的问题

  • 引用公共组件后,业务代码需做一下相应修改:

  • 1、AutofacModuleRegister类增加一下代码,注册依赖注入

    //文件上传 builder.RegisterType<UploadFileService>().As<IUploadFileService>().InstancePerLifetimeScope() .EnableInterfaceInterceptors()//启用拦截器 .InterceptedBy(interceptType.ToArray());

    //权限服务 builder.RegisterType<AuthorityService>().As<IAuthorityService>().InstancePerLifetimeScope() .EnableInterfaceInterceptors()//启用拦截器 .InterceptedBy(interceptType.ToArray());

  • 2、SugarDbContext_Base类(也有其它命名,总之是SugarUnitOfWork的继承类)更改基类,如:

    public class SugarDbContext_Base : SugarUnitOfWork   
    
    更改为:
    
    public class SugarDbContext_Base : SugarDbContext_Base_Utils
    
  • 3、Program.cs 增加语句 //启用全程序集扫描 AppSettingsProvider.ContextScanAll = true;

  • 4、删除或修改本地重名模型、更新引用

  • IAuthorityService相关服务功能介绍

  • 1、 方法 GetUserMenuList 用于获取用户的岗位权限许可的功能菜单列表(或按钮列表,权限类列表)

  • 2、 方法 CheckUserMenuPermission 用于判断用户在具体条件下(医院、科室、专业)是否存在某一权限(页面/按钮/权限类),常用于操作权限校验

  • 3、 方法 GetUserPermissionPgroup 用于获取用户某一权限(页面/按钮/权限类)下的专业组列表,返回结果包含所有状态的专业组,业务代码需要做无效过滤

  • 4、 方法 GetUserPermissionLab 用于获取用户某一权限(页面/按钮/权限类)下的科室列表,返回结果包含所有状态的科室

  • 6、 方法 GetAreaGroupTree 用于按条件查询权限范围的管理专业组-检验专业组树(tree是以树结构多层节点返回,line是相同对象以平铺列表返回),各系统使用此方法重构专业组树

  • 7、 方法 GetAreaLabGroupTree 按条件查询权限范围的科室/管理专业组-检验专业组树(tree是以树结构多层节点返回,line是相同对象以平铺列表返回),树顶部可带有科室节点,各系统使用此方法重构专业组树

  • 8、 方法 GetAreaGroupDropDownList 按条件查询权限范围的院区-检验专业组两层下拉列表,各系统使用此方法重构专业组树下拉列表

  • 5、增加2个中间件

  • 1、LabExceptionMiddleware:异常日志记录中间件 Program.cs里用法:全局异常中间件app.UseMiddleware<LabExceptionMiddleware>();
    **原来的是app.UseMiddleware<GlobalExceptionMiddleware>(); **

  • 2、LabTimeWatchMiddleware:超时长打印日志中间件 超时长打印 默认的计数是超500ms打印,如需修改,在任一地方调用LabTimeWatchMiddleware.SetSpanTimeWarnLine Program.cs里用法:app.UseMiddleware<TraceResposeHeadMiddleware>();app.UseMiddleware<LabTimeWatchMiddleware>(); 日志会在接口超过设置的预警毫秒数时打印出 【接口超时阀值预警】 关键字,这样可以时不时定位下现场哪个接口存在性能问题

  • 6、修复下entity代码

  • 7、1.0.30 ⇒ 上次访问记录增加科室、院区id

  • 8、1.0.35 ⇒ 增加添加一系列枚举工具方法

  • 9、1.0.37 ⇒ 1)增加科室病区专业组树接口IAuthorityService.GetLabAreaGroupTree 2)支持模块ID(如“H98”)通配模块全部权限 3)支持返回模块全部带XhDict特性的字典,支持IsIgnore跳过字典项

  • 10、1.0.37.6 ⇒ 枚举工具方法增加Fill方法(用于枚举输出(通用名.key)、value)和FillByID方法(用于通过枚举的ID,转换并输出(通用名.key)、value)

  • 11、1.0.37.8 ⇒ 增加上传返回文件完整预览地址及PDF封面Base64

  • 11、1.0.38.2 ⇒ 更新公司框架

  • 12、1.0.38.3 ⇒ 科室下增加检验专业组节点

  • 13、1.0.38.4 ⇒ 增加上传文件增加原始文件及预览等字段

  • 14、1.0.38.5 ⇒ 去除OFFICE复杂操作,解耦.后续office操作慢慢从公共库移除,留下DTO跟ENTITY

  • 15、1.0.38.6 ⇒ 升级.net库为3.4.30版本

  • 16、1.0.38.7 ⇒ 修复水印报错问题

  • 17、1.0.38.8 ⇒ 公司框架回退至 3.4.15

  • 18、1.0.38.9-pre1 ⇒ 公司框架切换至 3.4.22

  • 19、1.0.39 ⇒ SqlSugar单独升级到5.1.4.162

  • 20、1.0.39.1 ⇒ 添加页眉页脚代码115代理

  • 21、1.0.40 ⇒ 增加资源代码中间件

  • 22、1.0.40.1 ⇒ 增加清单的公共方法和排序的公共方法

  • 23、1.0.40.2 ⇒ AddVisLocation新增当前模块访问记录3个入参转成可空类型

  • 24、1.0.40.5 ⇒ 增加接口:按条件查询权限范围的院区列表

  • 24、1.0.40.6 ⇒ 设备请求资源最长时间默认为10分钟

  • 25、1.0.40.7 ⇒ 增加接口:按条件查询权限范围的用户树(格式为:科室/管理专业组-检验专业组-用户)

  • 26、1.0.40.8 ⇒ 检验专业组树节点管理专业组无效时,也放在科室节点下

  • 27、1.0.40.9 ⇒ 文件上传增加获取PDF总数字段及请求条件

  • 28、1.0.40.10 ⇒ 异常中间件添加异常处理分支,支持鉴权异常返回401、业务异常(BIZ)返回200、其他异常返回500响应、业务系统中尽可能暴露明确异常

  • 29、1.0.40.11 ⇒ 调整清单功能的GetTemplateList接口、补充OfficeFlag入参

  • 30、1.0.40.13 ⇒ 专业组树增加SOURCE_PATH业务主键路径字段_

  • 31、1.0.40.14 ⇒ 更新框架组的依赖版本为6.24.8

  • 32、1.0.40.15 ⇒ 因业务系统依赖easyCache,故框架组的依赖版本降低为6.24.7(6.24.8以移除easyCache)

  • 33、1.0.40.16 ⇒ 补充H115通用接口GetServiceAndCallBackUrl

  • 34、1.0.40.19 ⇒ 专业组树方法排除外送专业组

  • 35、1.0.40.20 ⇒ 增加生安登录选择机构、科室、备案实验室列表接口

  • 36、1.0.40.21 ⇒ 增加树节点类型等

  • 37、1.0.40.22 ⇒ 小注释

  • 38、1.0.40.23 ⇒ 增加公共树服务、接口及生安相关实体

  • 39、1.0.40.24 ⇒ Utility升级到6.24.13 用到redis模块需自行更改

  • 40、1.0.40.27 ⇒ 中间版本

  • 41、1.0.40.28 ⇒ Utility退回到6.24.7 优化公共树服务

  • 42、1.0.40.29 ⇒ 补充yarp反向代理中间件拓展方法 AddCustomReverseProxy()

  • 43、1.0.40.30 ⇒ 优化树的计数

  • 44、1.0.40.31 ⇒ 实现编号Lab_A、Lab_B的公共方法,增加规评方案实体与dto

  • 45、1.0.40.32 ⇒ 增加自动去重树节点计数方法RefreshTreeUnique

  • 46、1.0.40.35 ⇒ 返回生安登录选择机构、科室、备案实验室列表各级增加机构ID、科室ID

  • 47、1.0.40.36 ⇒ 备案实验室树节点名称取CNAME

  • 48、1.0.40.37 ⇒ 登录入口选择方法GetLogonHospitalLabList的备案实验室名称取CNAME

  • 49、1.0.40.39 ⇒ 增加生安组织节点实体SMBL_DEPT_NODE

  • 50、1.0.40.40 ⇒ 生安机构树过滤掉非生安科室

  • 51、1.0.40.41 ⇒ 增加规评方案适用类型、规评方案类型等枚举

  • 52、1.0.40.42 ⇒ 更新OaEvaluatePlanDict的必填性等

  • 53、1.0.40.43 ⇒ 规评几个实体迁移到公共库

  • 54、1.0.40.44 ⇒ 增加生安目录树(机构-科室-管理专业组-备案实验室)接口GetOrgTreeType_Smbl_C

  • 55、1.0.40.46 ⇒ 规评实体小修改

  • 56、1.0.40.47 ⇒ 增加岗位、岗位角色等

  • 57、1.0.40.48 ⇒ 生安目录树补充机构节点

  • 58、1.0.40.50 ⇒ 增加目录树方法:RefreshTreeWithoutNum(只更新SOURCE_PATH、NODE_NO,不更新NUM计数);RefreshTreeAddedNum(更新SOURCE_PATH、NODE_NO,累计叶子节点NUM计数(叶子节点NUM由业务代码赋值))

  • 59、1.0.40.51 ⇒ 生安入口查询接口不判断备案实验室数据权限,增加有效性校验

  • 60、1.0.40.52 ⇒ 生安目录树(机构-科室-管理专业组-备案实验室)

  • 61、1.0.40.53 ⇒ 增加_httpContext.GetSmblLabId()获取前端登录备案实验室ID(机构ID、科室ID同理);增加生安目录树修复备案实验室过滤问题

  • 62、1.0.40.54 ⇒ 增加FileConvertPdfDto的图片水印相关字段

  • 63、1.0.40.55 ⇒ 更新规评用户结果实体等

  • 64、1.0.40.56 ⇒ 上传文件增加图片增加水印

  • 65、1.0.40.57 ⇒ 上传图片增加水印调整调用H115接口

  • 66、1.0.40.60 ⇒ 新增H05模块相关消息接口,通用消息发送、取消已发送消息、查询个人发送消息列表

  • 66、1.0.40.62 ⇒ 新增写入人员规评结果公共方法:WriteEvaluatePlanUserResult

  • 67、1.0.40.63 ⇒ 新增备案实验室时间更新方法,支持批量、单个UpdateSmblLabTimeByIds UpdateSmblLabTimeById

  • 66、1.0.40.64 ⇒ 新增获取拥有某一权限(页面/按钮/权限类)下的用户列表的方法:IAuthorityService.GetPermissionUser

  • 67、1.0.40.65 ⇒ 更新生安入口获取接口(IAuthorityService.GetLogonHospitalLabList)逻辑,改为以科室权限判断

  • 68、1.0.40.66 ⇒ SYS6_USER实体增加VSIGNATURE_PIC字段

  • 69、1.0.40.67 ⇒ IAuthorityService.GetPermissionUser修复

  • 70、1.0.40.68 ⇒ 增加SYS6_USER_CLASS_DICT实体

  • 71、1.0.41.0 ⇒ 新增S10统一平台的调用方法

  • 72、1.0.41.1 ⇒ 增加SYS6_USER_TYPE_DICT实体

  • 73、1.0.41.2 ⇒ 增加OA_BASE_DATA实体

  • 74、1.0.41.3 ⇒ 根据权限获取检验专业组增加更严格的判断条件

  • 75、1.0.41.10 ⇒ 更新权限查询条件

  • 76、1.0.41.16 ⇒ 修复

  • 77、1.0.41.18 ⇒ 录入规评结果时生成规评事件

  • 78、1.0.41.19 ⇒ 权限判断增加规评限权

  • 79、1.0.41.28 ⇒ 修复

  • 80、1.0.41.29 ⇒ 增加用户岗位有效期判断

  • 81、1.0.41.30 ⇒ OA_EVALUATE_PLAN_USER增加EPLAN_ID字段

  • 81、1.0.41.31 ⇒ 添加业务消息取消接口CancelCorrelationInfo

  • 82、1.0.41.32 ⇒ CancelCorrelationInfo调整报错信息

  • 83、1.0.41.33 ⇒ 登录系统生安入口选取单元增加权限过滤

  • 84、1.0.41.39 ⇒ 修复或完善

  • 85、1.0.42.1 ⇒ 配合系统数据修改最新人岗权逻辑

  • 86、1.0.42.2=> 补充消息发送模型字段

  • 87、1.0.42.4=> 补充消息发送接口-取消个人消息

  • 88、1.0.42.5=> 补充消息发送接口-修改字段名MSG_WARNING_TIME

  • 89、1.0.42.7=> 生安树增加备案实验室排序

  • 90、1.0.43.1=> 解决管理专业组的配置问题

  • 91、1.0.43.2=> 树节点增加标签列表属性

  • 92、1.0.43.3=> 增加EntityHelper公共方法

  • 93、6.25.300-pre2=> 按多管理单元进行重构

  • 94、6.25.300-pre6=> 增加CheckUserMenuPermission接口

  • 95、6.25.300-pre7=> 增加GetH07UserPostInfo接口

  • 96、6.25.300-pre8=> 增加文件sop链接关系相关方法

  • 97、6.25.300-pre13=> 增加人岗权相关查询接口方法

  • 98、6.25.300-pre14=> 调整sop文件方法

  • 99、6.25.300-pre15=> 更新树组件

  • 100、6.25.300-pre16=> 增加GetH07UserMenuInfo

  • 101、6.25.300-pre18=> 补充科室下无管理专业组的检验专业组

  • 102、6.25.300-pre20=> 增加岗位树和岗位角色树

  • 103、6.25.300-pre21=> 参数调整。稳定版本

  • 102、6.25.300-pre22=> 增加SYS6_ROLE_COM_INFO表及其它字段

  • 102、6.25.300-pre23=> 增加两棵院区树;SYS6_ROLE_COM_INFO增加ROLECOM_CLASS字段

  • 102、6.25.300-pre24=> 直调H07的接口更新、获取有权限的备案实验室接口

  • 103、6.25.300-pre25=> 调整SOURCE_ID返回

  • 104、6.25.300-pre26=> 调整院区SOURCE_ID返回

  • 105、6.25.300-pre28=> 实现GetPermissionUser方法

  • 106、6.25.300-pre29=> OrgTreeNode增加方法ChildAddByIndex

  • 107、6.25.300-pre30=> 实现GetOrgTreeType_Smbl_C方法

  • 108、6.25.300-pre33=> 修复GetOrgTreeType_Lab_A方法

  • 109、6.25.300-pre36=> 人员树增加是否判断权限参数

  • 110、6.25.300-pre38=> 增加初始化数据自动导入功能

  • 110、6.25.300-pre39=> 消息接口补充token填充方法

  • 111、6.25.300-pre41=> 优化数据导入及树

  • 112、6.25.300-pre42=> 实现常用人岗权接口数据缓存

  • 113、6.25.300=> Xinghe.Utility更新至6.25.206版本

  • 114、6.25.301=> fix 附件查询删除模块限制(如H82需要和H91sop文件查询互通

  • 115、6.25.301.12=> 增加帮助方法

  • 116、6.25.301.13=> 修复获取权限人员方法

  • 117、6.25.301.16=> 解决GetMeunUserPostInfo接口不返回新人岗权数据的问题

  • 118、6.25.301.22=> 修改人员缓存Key

  • 119、6.25.301.23=> 完善数据导入功能

  • 120、6.25.301.26=> 增加POCT、采血外援相关实体

  • 121、6.25.329.12=> 增加获取POCT管理委员会列表接口

  • 122、6.25.329.13=> 更正OA基础数据双主键标注

  • 123、6.25.329.15=> 增加可初始化调用的方法组

  • 124、6.25.329.18=> 增加POCT管理委员会登录单元的支持

  • 125、6.25.329.20=> 获取登录时POCT管理委员会单元切换成正式逻辑(原来为了便于调试写死的)

  • 126、6.25.329.21=> 增加POCT、采血外援等规评单元类型

  • 127、6.25.329.22=> SYS6_USER实体添加字段USER_JSON

  • 128、6.25.329.25=> 增加3个采血外援岗位接口

  • 129、6.25.329.26=> 增加异常捕获

  • 130、6.25.329.28=> 文件上传相关处理

  • 131、6.25.329.29=> 文件上传相关处理完善

  • 132、6.25.335.11=> 用户表FILE_MODULE_ID

  • 133、6.25.335.12=> 采血外援岗去掉是否规评条件

  • 134、6.25.335.13=> SYS6_ROLE_COM_INFO实体增加ROLECOM_SCENE字段

  • 135、6.25.335.15=> 查询人员菜单功能切换接口(系统数据改造)解决URL过长问题

  • 136、6.25.337.16=> 用户规评结果增加信息

  • 137、6.25.337.18=> SYS6_POST增加PERSON_PTAG字段

  • 138、6.25.339.12=> 多机构支持功能

  • 139、6.25.339.15=> 增加 OrgTreeNode.CreateNode 方法

  • 140、6.25.339.16=> 增加SYS6_MENU_HOSP对象

  • 141、6.25.344.11=> 权限Redis缓存列表Key优化

  • 142、6.25.346.11=> 权限菜单查询去掉redis缓存

  • 143、6.25.346.12=> 修复

  • 144、6.25.450.11=> 增加获取POCT岗位相关的三个方法

  • 145、6.25.450.12=> GetH07UserUnitInfo

  • 146、6.25.450.13=> 获取POCT岗位相关的三个方法增加参数manageId(POCT管理委员会ID)

  • 147、6.25.450.14=> 增加OfficeHelper.isUseNewSpire,由业务控制是否用新版spire.net

  • 148、6.25.450.15=> 去除spire.net引用

  • 149、6.25.450.16=> 数据初始化功能的完善

  • 150、6.25.450.17=> 生安场景人员树没有所属检验专业组的人员放在机构或科室节点

  • 151、6.25.450.18=> 系统数据触发及服务启动时自动执行的模块初始化功能,集成数据初始化、自启动方法、表结构检测、工具箱excel导入功能

  • 152、6.25.450.20=> 增加减少字符串字节数至指定长度公共方法等,启动问题修复等、

  • 153、6.25.450.21=> fix异常捕获中间件日志打印问题

  • 154、6.25.450.22=> 增加表结构检查是否包括生安相关表的判断(config参数)

  • 155、6.25.450.25=> skiasharp临时删除测试

  • 156、6.25.450.26=> 帮助类增加了工具方法,及表结构检查优化,增加DbContext类的实体检测,去重处理等

  • 157、6.26.500.11=> 更新Xinghe.Utility公司组件至6.25.206版本

  • 158、6.26.500.12=> OfficeHelper增加方法CheckSuffixAllowUpload用于上传文件类型限制

  • 159、6.26.500.18=> 文件上传方法增加保存封面功能

  • 160、6.26.500.20=> 更新获取模块内部URL方法及单例RestClient

  • 161、6.26.500.21=> 修复H115调用问题及新增ISO机构树方法GetOrgTreeType_Hospital_A

  • 162、6.26.500.22=> 修复H05消息服务调用问题

  • 163、6.26.500.23=> 人员管理支持科室级

  • 164、6.26.500.24=> 增加通过方法:字符转日期类型(自动匹配各种格式,转换失败则返回null)

  • 165、6.26.500.25=> 标记待办消息已处理

  • 166、6.26.500.26=> 获取权限菜单方法增加isCollapased返回

  • 167、6.26.500.27=> 菜单是否折叠增加参数 IsCollapasedBySys6MenuHosp :菜单是否折叠参数是否读取SYS6_MENU_HOSP表,默认SYS6_MENU表

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
6.26.500.27 162 6/2/2026
6.26.500.26 162 5/27/2026
6.26.500.25 153 5/26/2026
6.26.500.23 185 4/3/2026
6.26.500.22 160 3/26/2026
6.26.500.21 170 3/26/2026
6.26.500.20 156 3/20/2026
6.26.500.19 166 3/11/2026
6.26.500.18 171 3/7/2026
6.26.500.16 141 3/7/2026
6.26.500.15 165 3/7/2026
6.26.500.13 148 3/7/2026
6.26.500.12 192 2/11/2026
6.26.500.11 168 2/9/2026
6.25.450.26 170 1/26/2026
6.25.450.25 186 1/24/2026
6.25.450.23 192 1/16/2026
6.25.450.22 176 1/14/2026
6.25.450.21 187 1/13/2026
6.25.450.20 174 1/8/2026
Loading failed

升级XH.Utility版本为6.24.14