Compare commits

...

122 Commits

Author SHA1 Message Date
胡超1 7a0e0bf823 修改git追踪 2 years ago
胡超1 aa0e7ea4de 添加命名空间 2 years ago
胡超1 679485b7a3 添加mysql的运行命令 2 years ago
胡超1 f9ba3ee7a6 修改dockersbuilder文件 2 years ago
胡超1 f33d35f4f6 修改docker 命令,升级版本号至1.0.1.8 2 years ago
胡超1 abdf52221a 超级管理员可以查看所有菜单 2 years ago
胡超1 6858816c51 当前人员查询新增角色时,只能添加自己有的权限,超管除外 2 years ago
胡超1 9c4f6bb468 设置超级管理员可以查看所有的角色 2 years ago
胡超1 8a1158edc3 忽略Properties文件 2 years ago
胡超1 550b68ea6d 调整log4net日志格式 2 years ago
胡超1 6b1bd6d844 修改登陆部分逻辑 2 years ago
胡超1 c916acc3d8 删除OnActionExecuting 方法 2 years ago
胡超1 43c2d78050 添加一个获取时间的静态类 2 years ago
胡超1 fde797656f 修改添加律师的接口,添加数据统计接口 2 years ago
胡超1 fd421e94b8 系统自动修改 2 years ago
胡超1 6b9f4e40aa Merge branch 'develop' of http://192.168.0.12:3000/Coder/24Hour.Service into develop 2 years ago
胡超1 1507fa2d8f 升级版本号至1.0.1.6 2 years ago
胡超1 03d4a9eaa3 修改本地配置信息,添加docker build命令 2 years ago
胡超1 582de973fd 添加自定义映射 2 years ago
胡超1 e87513074a 添加字段departmentPhoto,用于表示单位证明信息 2 years ago
胡超1 3a350d9211 登陆时同时返回用户证件图片信息 2 years ago
胡超1 ad72134195 添加三个方法,分别用于替换用户证件图片信息 2 years ago
胡超1 3583107d6a 优化代码 2 years ago
胡超1 9c857660a4 修改gitignore 2 years ago
胡超1 bd69bdef83 修改gitignore 2 years ago
胡超1 b514ba7065 添加2.0接口 查询2.0案件详情,及对应model 2 years ago
胡超1 db0c548b4d 升级版本号至1015 2 years ago
胡超1 f201dcc395 添加身份者图片字段 2 years ago
胡超1 fdd2ea4062 调整登录逻辑 2 years ago
胡超1 a5e7a55383 格式调整 2 years ago
胡超1 f95e5b17c5 添加对base64验证 2 years ago
胡超1 7bed988add 接口调整 2 years ago
胡超1 9ae3e80b25 添加docker 部署命令整合 2 years ago
胡超1 9464a252c6 修改样品数据输出 2 years ago
胡超1 b2fabd7f0e 升级版本号至1.0.1.2 2 years ago
胡超1 9cfa38310e 其他 2 years ago
胡超1 0972956fd3 dockerfile 端口修改 2 years ago
胡超1 094900f921 添加配置节点用以在离线时模拟2.0系统输出 2 years ago
胡超1 b413ab51e6 添加离线示例数据 2 years ago
胡超1 f6715403e6 添加非空判断,添加数据统计接口 2 years ago
胡超1 4126109ce9 系统自动修改 2 years ago
胡超1 c6cebcc75e 删除不用的文件 2 years ago
胡超1 beb3c7a932 Merge branch 'develop' of http://18t7i08736.yicp.fun:10018/Coder/24Hour.Service into develop 2 years ago
胡超1 77e24daa3a 系统自动修改 2 years ago
胡超1 f67ec0e6ff 系统自动修改 2 years ago
胡超1 772d46670d 添加dockerfile支持 2 years ago
胡超1 72d11306f6 修改律师阅卷从2.0系统解析数据的方法 2 years ago
胡超1 c4bbbeb070 a 2 years ago
胡超1 2950d60d8e 修改本地地址 2 years ago
胡超1 67b801b5f3 修改git追踪 2 years ago
胡超1 fda6f23b41 重命名CaseServiceTwentyClient 2 years ago
胡超1 4c3b8a5937 添加一个方法修改api缓存进度 2 years ago
liujiaqiang fa77f519c6 微信消息推送不了接口调整 2 years ago
胡超1 b70494fc6c 其他 2 years ago
胡超1 bcefee3e79 将2.0的代理集成到系统中 2 years ago
胡超1 a541764e69 添加字段 2 years ago
胡超1 a0e7994cd6 添加字段 2 years ago
胡超1 9459300bec App_Sys_AddLawyerInput添加工作证id,部门名称 2 years ago
胡超1 c2ac083042 添加字段 2 years ago
胡超1 c91e958884 添加log4net包 2 years ago
胡超1 a0a0b6704c 添加log4net日志配置文件 2 years ago
胡超1 497d366ff6 添加2.0系统代理客户端 2 years ago
胡超1 1003c2a105 添加log4net日志记录器 2 years ago
胡超1 d21a12d5b3 添加请求过滤日志输出 2 years ago
胡超1 defda9af96 修改内网律师阅卷模块 2 years ago
liujiaqiang e9855f7c8e 律师服务pc审核接口添加微信推送功能,及微信推送模板调整 2 years ago
liujiaqiang fef6d60e8c 我的预约信息接口添加返回参数 2 years ago
胡超1 e613eaa5a7 删除不要的命名空间 2 years ago
胡超1 73248f6676 修改mlsxh类型为int,方便排序 2 years ago
胡超1 73ecc7f1ba 新增当事人名字,身份证,案件名称字段 2 years ago
胡超1 e149148e8e 添加备注。更新mlsxh类型为int,方便排序 2 years ago
胡超1 06fc77ffae 修改bug。添加jzml排序 2 years ago
胡超1 006ebf451f 加密二维码从token获取数据 2 years ago
胡超1 e49e43e761 Merge branch 'develop' of http://18t7i08736.yicp.fun:10018/Coder/24Hour.Service into develop 2 years ago
胡超1 4c70aef494 新增添加律师的model及map配置 2 years ago
胡超1 0244d57ee7 新增单位编码 2 years ago
胡超1 5ade80a830 律师阅卷添加一个不需要严重的控制器 2 years ago
胡超1 2bfad77b64 注释原来的加密解密,新的加密方案由 身份证号,姓名 组成 2 years ago
胡超1 c12301c965 新增临时添加律师的接口(内网) 2 years ago
胡超1 7ad0183e05 新增根据单位编码获取该单位下所有的律师信息 2 years ago
liujiaqiang 9f0e2fa404 我的预约,我的待办接口调整 2 years ago
胡超1 ae046a5ec2 Merge branch 'develop' of http://192.168.0.12:3000/Coder/24Hour.Service into develop 2 years ago
胡超1 7b863004db 修改数据库连接为内网地址 2 years ago
胡超1 ea9269aeb2 冲突合并 2 years ago
胡超1 a3b1164fac 删除不需要的查询id 2 years ago
胡超1 938bc477a7 添加档案信息时不需要预约id 2 years ago
胡超1 98d5bd3ff8 修改dto映射规则 2 years ago
胡超1 5110c390d8 添加2。0系统的通信主机,添加http日志记录 2 years ago
胡超1 944197ff7d 抽象化对2.0系统的对接接口 2 years ago
胡超1 b81c9b1497 给一体机新增两个接口 2 years ago
胡超1 110a4e9d95 添加父级节点id及对应新增字段 2 years ago
胡超1 0d0513da48 添加导航字段及父级节点id 2 years ago
胡超1 ea1d2bfb3b 通过配置文件去确定是否需要开启定时从极光的api获取数据,并添加对应的配置点 2 years ago
胡超1 6b91056206 调整函数顺序 2 years ago
胡超1 c22a0f93b5 Merge branch 'develop' of http://192.168.0.12:3000/Coder/24Hour.Service into develop 2 years ago
胡超1 6241047214 state设置为可空(便于前端展示所有数据) 2 years ago
胡超1 cabed6fdff 修改注释内容 2 years ago
胡超1 13f6be3b83 统一卷宗查询格式,新增接口AddArchivesInfoByChildId 2 years ago
胡超1 fbe4c37afe 修改状态是同步同意时间 2 years ago
胡超1 ade3f5a05f jzwj设为可空 2 years ago
胡超1 a02bcc1227 添加可空字段 2 years ago
胡超1 7b2eb1232c 新增model 2 years ago
胡超1 940bb24d74 添加非空判断 2 years ago
胡超1 68029bde25 添加20接口的测试数据(修改过的) 2 years ago
胡超1 d6f5ad07b9 去除20model映射是的检查 2 years ago
胡超1 29df5f46b8 添加id字段 2 years ago
胡超1 9bdd6539f7 所有字段以可空标记,修改文件名 2 years ago
胡超1 342211e058 添加测试的20接口及入库接口 2 years ago
胡超1 acaf720b6c 新增律师阅卷模块对应的接口和model 2 years ago
胡超1 533898e71b 忽略日志文件和jpg文件 2 years ago
liujiaqiang 4d60cd0546 微信订阅号消息发送接口添加 2 years ago
liujiaqiang 64c0b7c183 调整修改添加用户并且添加选中的角色接口,获取角色下的菜单接口,添加角色菜单接口,获取当前用户权限菜单接口,获取树型菜单接口 2 years ago
liujiaqiang 1c2ed90e27 APP添加用户接口调整 2 years ago
liujiaqiang ca42870464 系统---根据当前登录人单位获取所有预约信息接口添加查询条件(当前登录人单位数据) 2 years ago
liujiaqiang 65be370197 代码冲突合并 2 years ago
liujiaqiang 8fc18b7fc8 注入AutoMapper,IMapper使用,添加Dto实体,根据当前登录人单位获取所有预约信息接口添饭返回结果参数单位名称,单位编码 2 years ago
胡超1 6abdb18317 调整格式,添加微信通信主机 2 years ago
胡超1 e9b6972018 添加用户绑定openid 2 years ago
胡超1 8e2c8ccf2d 添加微信登陆时律师身份验证 2 years ago
胡超1 f05e714e12 添加用户绑定微信openid和解除绑定 2 years ago
胡超1 afc0f25192 添加微信通信主机 2 years ago
胡超1 bf2d7fa840 添加微信openid获取及code=>openid=>login 2 years ago
  1. 14
      .gitignore
  2. 12
      24Hour.sln
  3. 64
      24Hour/24Hour.csproj
  4. 6
      24Hour/24Hour.csproj.user
  5. 367
      24Hour/Controllers/Common/CommonController.cs
  6. 1048
      24Hour/Controllers/Common/LawyerArchivesController.cs
  7. 158
      24Hour/Controllers/Common/LawyerArchivesUnAuthorizeController.cs
  8. 96
      24Hour/Controllers/Common/LawyerservicesController.cs
  9. 24
      24Hour/Controllers/Common/WebSocketController.cs
  10. 165
      24Hour/Controllers/LoginController.cs
  11. 578
      24Hour/Controllers/system/SystemControllerController.cs
  12. 26
      24Hour/Dockerfile
  13. 41
      24Hour/Filter/RequestLoggingFilter.cs
  14. 74
      24Hour/Program.cs
  15. 11
      24Hour/Properties/PublishProfiles/FolderProfile.pubxml.user
  16. 204
      24Hour/TwentySystemProxyClient.cs
  17. 215
      24Hour/WechatMessagerClient.cs
  18. 21
      24Hour/appsettings.json
  19. 111
      24Hour/build/dockerbuild.txt
  20. 152
      24Hour/caselist.txt
  21. 1890
      24Hour/jzlist.txt
  22. 24
      24Hour/log4net.config
  23. 119
      Elight.Entity/APPDto/App_CloudCabinetDto.cs
  24. 115
      Elight.Entity/APPDto/App_ConfessionDto.cs
  25. 119
      Elight.Entity/APPDto/App_DocumentDto.cs
  26. 135
      Elight.Entity/APPDto/App_HearingDto.cs
  27. 158
      Elight.Entity/APPDto/App_LawyerServicesDto.cs
  28. 121
      Elight.Entity/APPDto/App_ReceptionDto.cs
  29. 132
      Elight.Entity/APPDto/App_RemoteDto.cs
  30. 57
      Elight.Entity/APPDto/Lawyer/JZJBXXDto.cs
  31. 73
      Elight.Entity/APPDto/Lawyer/JZMLDto.cs
  32. 112
      Elight.Entity/APPDto/Lawyer/JZWJItemDto.cs
  33. 113
      Elight.Entity/APPDto/Lawyer/LawyerArchivesDto.cs
  34. 37
      Elight.Entity/APPDto/Lawyer/QRDto.cs
  35. 14
      Elight.Entity/APPDto/QRTransfter.cs
  36. 26
      Elight.Entity/AppMode/App_LawyerServicesModel.cs
  37. 171
      Elight.Entity/AppMode/Lawyer/DossierInfo.cs
  38. 65
      Elight.Entity/AppMode/Lawyer/JZJBXX.cs
  39. 82
      Elight.Entity/AppMode/Lawyer/JZML.cs
  40. 116
      Elight.Entity/AppMode/Lawyer/JZWJItem.cs
  41. 69
      Elight.Entity/AppMode/Lawyer/LawyerArchives.cs
  42. 64
      Elight.Entity/AuthManageProfile.cs
  43. 2
      Elight.Entity/Elight.Entity.csproj
  44. 37
      Elight.Entity/SystemDto/App_Sys_AddLawyerInput.cs
  45. 33
      Elight.Entity/SystemDto/App_Sys_RoleDto.cs
  46. 147
      Elight.Entity/SystemDto/App_Sys_UserDto.cs
  47. 2
      Elight.Entity/SystemModel/App_Sys_RoleMenuModel.cs
  48. 2
      Elight.Entity/SystemModel/App_Sys_RoleUserModel.cs
  49. 24
      Elight.Entity/SystemModel/App_Sys_UserModel.cs
  50. 9
      Elight.Entity/SystemModel/UpdateuserDto.cs
  51. 1
      Elight.Logic/Elight.Logic.csproj
  52. 21
      Elight.Logic/Job/QuartzHostedService.cs
  53. 2
      Elight.Logic/Model/App_LawyerServicesInput.cs
  54. 20
      Elight.Logic/Model/Lawyer/AddArchivesInfoInput.cs
  55. 64
      Elight.Logic/Model/Lawyer/LawyerArchivesInput.cs
  56. 2
      Elight.Logic/SystemModel/App_Sys_MenuTree.cs
  57. 2
      Elight.Logic/SystemModel/App_Sys_RoleMenuAdd.cs
  58. 1
      Elight.Utility/Elight.Utility.csproj
  59. 200
      Elight.Utility/Extensions/ConvertorHelper.cs
  60. 12
      Elight.Utility/Extensions/StringExtension.cs
  61. 16
      Elight.Utility/Result.cs
  62. 8
      Elight.Utility/User.cs
  63. 5
      WebApplication1/.config/dotnet-tools.json
  64. 371
      WebApplication1/Controllers/TwentySystemController.cs
  65. 142
      WebApplication1/ConvertorExtension.cs
  66. 26
      WebApplication1/Dockerfile
  67. 380
      WebApplication1/MDossier.cs
  68. 261
      WebApplication1/MDossierEntity.cs
  69. 76
      WebApplication1/MLogHelpe.cs
  70. 181
      WebApplication1/Models/AJDto.cs
  71. 282
      WebApplication1/Models/AKDto.cs
  72. 56
      WebApplication1/Models/Case_Card.cs
  73. 46
      WebApplication1/Models/Case_Card_Copy.cs
  74. 233
      WebApplication1/Models/Case_Info.cs
  75. 46
      WebApplication1/Models/Case_Info_Detail.cs
  76. 6
      WebApplication1/Models/Class.cs
  77. 122
      WebApplication1/Models/Data_Table.cs
  78. 45
      WebApplication1/Models/LCDto.cs
  79. 104
      WebApplication1/Models/MxbmDto.cs
  80. 32
      WebApplication1/Models/ResultDto.cs
  81. 128
      WebApplication1/Models/XxkDto.cs
  82. 30
      WebApplication1/Program.cs
  83. 21
      WebApplication1/Properties/PublishProfiles/FolderProfile.pubxml
  84. 11
      WebApplication1/Properties/PublishProfiles/FolderProfile.pubxml.user
  85. 38
      WebApplication1/Properties/launchSettings.json
  86. 13
      WebApplication1/WeatherForecast.cs
  87. 24
      WebApplication1/WebApplication1.csproj
  88. 10
      WebApplication1/WebApplication1.csproj.user
  89. 25
      WebApplication1/WebApplication1.sln
  90. 8
      WebApplication1/appsettings.Development.json
  91. 14
      WebApplication1/appsettings.json
  92. 26
      WebApplication1/bin/Debug/net6.0/Dockerfile
  93. 140
      WebApplication1/bin/Debug/net6.0/WebApplication1.deps.json
  94. 19
      WebApplication1/bin/Debug/net6.0/WebApplication1.runtimeconfig.json
  95. 8
      WebApplication1/bin/Debug/net6.0/appsettings.Development.json
  96. 14
      WebApplication1/bin/Debug/net6.0/appsettings.json
  97. 26
      WebApplication1/bin/Release/net6.0/Dockerfile
  98. 140
      WebApplication1/bin/Release/net6.0/WebApplication1.deps.json
  99. 20
      WebApplication1/bin/Release/net6.0/WebApplication1.runtimeconfig.json
  100. 8
      WebApplication1/bin/Release/net6.0/appsettings.Development.json
  101. Some files were not shown because too many files have changed in this diff Show More

14
.gitignore vendored

@ -64,10 +64,14 @@ dkms.conf
/Elight.Utility/obj
/Elight.Utility/Extension/ServiceConverter.cs
/24Hour/wwwroot/File
/24Hour/wwwroot/CaseFile/User
/24Hour/wwwroot/CaseFile/Detectionscheme/~$230301193901426.docx
/24Hour/wwwroot/CaseFile/Detectionscheme/20230301195021869.docx
/24Hour/wwwroot/CaseFile/Detectionscheme/20230301194942291.docx
/24Hour/wwwroot/CaseFile/Detectionscheme/20230301193901426.docx
/24Hour/24Hour.xml
/24Hour/Properties/launchSettings.json
*.png
*.log
*.txt
/WebApplication1/.vs
/WebApplication1/obj
/WebApplication1/bin
/24Hour/Properties/PublishProfiles/FolderProfile.pubxml.user
/WebApplication1/obj/WebApplication1.csproj.nuget.g.props
/WebApplication1/obj/project.assets.json

12
24Hour.sln

@ -5,11 +5,13 @@ VisualStudioVersion = 17.3.32901.215
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "24Hour", "24Hour\24Hour.csproj", "{9CC60D58-CC75-4BF7-A854-3220E725CD8C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elight.Entity", "Elight.Entity\Elight.Entity.csproj", "{DC5487D6-C400-4D8A-B44C-F4BE05AA4659}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Elight.Entity", "Elight.Entity\Elight.Entity.csproj", "{DC5487D6-C400-4D8A-B44C-F4BE05AA4659}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elight.Logic", "Elight.Logic\Elight.Logic.csproj", "{DE4F1117-9E0E-4570-885A-3E852CB96CB9}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Elight.Logic", "Elight.Logic\Elight.Logic.csproj", "{DE4F1117-9E0E-4570-885A-3E852CB96CB9}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elight.Utility", "Elight.Utility\Elight.Utility.csproj", "{A5CD41A8-3970-4BE0-B8CB-E827C2B00D15}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Elight.Utility", "Elight.Utility\Elight.Utility.csproj", "{A5CD41A8-3970-4BE0-B8CB-E827C2B00D15}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebApplication1", "WebApplication1\WebApplication1.csproj", "{BB831806-197B-4508-9AD5-5D3EDB7FCA27}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -33,6 +35,10 @@ Global
{A5CD41A8-3970-4BE0-B8CB-E827C2B00D15}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A5CD41A8-3970-4BE0-B8CB-E827C2B00D15}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A5CD41A8-3970-4BE0-B8CB-E827C2B00D15}.Release|Any CPU.Build.0 = Release|Any CPU
{BB831806-197B-4508-9AD5-5D3EDB7FCA27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BB831806-197B-4508-9AD5-5D3EDB7FCA27}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BB831806-197B-4508-9AD5-5D3EDB7FCA27}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BB831806-197B-4508-9AD5-5D3EDB7FCA27}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

64
24Hour/24Hour.csproj

@ -1,28 +1,48 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<RootNamespace>_24Hour</RootNamespace>
<GenerateDocumentationFile>True</GenerateDocumentationFile>
</PropertyGroup>
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<RootNamespace>_24Hour</RootNamespace>
<GenerateDocumentationFile>True</GenerateDocumentationFile>
<UserSecretsId>e485308c-2f05-470b-b0a4-68f1ec2b3412</UserSecretsId>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<AssemblyVersion>1.0.1.8</AssemblyVersion>
<Version>1.0.1.8</Version>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DocumentationFile></DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DocumentationFile></DocumentationFile>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="6.0.16" />
<PackageReference Include="Quartz" Version="3.6.3" />
<PackageReference Include="SqlSugarCore" Version="5.1.4.83" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.2.3" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="AutoMapper" Version="12.0.1" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="6.0.16" />
<PackageReference Include="Microsoft.Extensions.Logging.Log4Net.AspNetCore" Version="6.1.0" />
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.18.1" />
<PackageReference Include="Quartz" Version="3.6.3" />
<PackageReference Include="SqlSugarCore" Version="5.1.4.83" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.2.3" />
<PackageReference Include="System.Runtime.Caching" Version="7.0.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Elight.Entity\Elight.Entity.csproj" />
<ProjectReference Include="..\Elight.Logic\Elight.Logic.csproj" />
<ProjectReference Include="..\Elight.Utility\Elight.Utility.csproj" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Elight.Entity\Elight.Entity.csproj" />
<ProjectReference Include="..\Elight.Logic\Elight.Logic.csproj" />
<ProjectReference Include="..\Elight.Utility\Elight.Utility.csproj" />
</ItemGroup>
<ItemGroup>
<None Update="caselist.txt">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="Dockerfile">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="jzlist.txt">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>

6
24Hour/24Hour.csproj.user

@ -3,6 +3,10 @@
<PropertyGroup>
<Controller_SelectedScaffolderID>MvcControllerEmptyScaffolder</Controller_SelectedScaffolderID>
<Controller_SelectedScaffolderCategoryPath>root/Common/MVC/Controller</Controller_SelectedScaffolderCategoryPath>
<NameOfLastUsedPublishProfile>E:\24Hour.Service\24Hour\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
<NameOfLastUsedPublishProfile>C:\Users\admin\source\repos\24Hour.Service\24Hour\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
<ActiveDebugProfile>24Hour</ActiveDebugProfile>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DebuggerFlavor>ProjectDebugger</DebuggerFlavor>
</PropertyGroup>
</Project>

367
24Hour/Controllers/Common/CommonController.cs

@ -1,4 +1,6 @@
using com.sun.org.apache.xalan.@internal.xsltc.runtime;
using AutoMapper;
using com.sun.org.apache.xalan.@internal.xsltc.runtime;
using com.sun.tools.@internal.xjc.api;
using Elight.Entity;
using Elight.Entity.SystemModel;
using Elight.Logic;
@ -13,9 +15,11 @@ using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Quartz.Logging;
using SqlSugar;
using sun.security.x509;
using System.Drawing.Printing;
using System.Security.AccessControl;
using static com.sun.tools.@internal.xjc.reader.xmlschema.bindinfo.BIConversion;
using static sun.font.LayoutPathImpl;
using User = Elight.Utility.User;
namespace _24Hour.Controllers.Common
@ -35,9 +39,11 @@ namespace _24Hour.Controllers.Common
App_Sys_UserModel _userdata = new App_Sys_UserModel();//当前用户
private readonly List<App_Sys_UnitModel> _Unitdata;//当前用户
private readonly ILogger<LoginController> _logger;//日志
private readonly WechatMessagerClient _wechatMessagerClient;
private readonly IMapper _mapper;
DateTime unixStartTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
Result result = new Result();
public CommonController(ILogger<LoginController> logger, SqlSugarClient db, WriteSysLog logs, User user, WebSocketController SocketCon)
public CommonController(IMapper mapper, ILogger<LoginController> logger, SqlSugarClient db, WriteSysLog logs, User user, WebSocketController SocketCon, WechatMessagerClient wechatMessagerClient)
{
_logger = logger;
_db = db;
@ -45,6 +51,8 @@ namespace _24Hour.Controllers.Common
_userdata = user.Userdata();
_SocketCon = SocketCon;
_Unitdata = _db.Queryable<App_Sys_UnitModel>().Where(q => q.IsDelete == 0).ToList();
_mapper = mapper;
_wechatMessagerClient = wechatMessagerClient;
}
#endregion
@ -61,13 +69,15 @@ namespace _24Hour.Controllers.Common
{
RefAsync<int> totalNumber = 0;//总数据
var list = new List<dynamic>();
//获取单位Id
var Unitlist = await _db.Queryable<App_Sys_UnitModel>().ToListAsync();
//获取工作台信息
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.usertype == 0 ).ToArrayAsync();
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.usertype == 0).ToArrayAsync();
//获取律师服务预约记录
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.Where(q => q.IsDeleted == 0 ).ToListAsync();
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToListAsync();
Lawyerdata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -85,7 +95,8 @@ namespace _24Hour.Controllers.Common
ettime = "",
creationtime = q.creationtime,
username = q.createusername,
unitCode = q.unitCode,
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
handleId = q.receptionuser,
handleuser = q.receptionusername,
operatorId = q.operatorId,
@ -97,7 +108,7 @@ namespace _24Hour.Controllers.Common
//获取远程会见预约记录
var Remotedata = await _db.Queryable<App_RemoteModel>()
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.Where(q => q.IsDeleted == 0).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
Remotedata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -111,6 +122,8 @@ namespace _24Hour.Controllers.Common
matter = q.name,
sttime = q.sttime,
ettime = q.ettime,
unitCode = q.unitCode,
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
state = q.state,
creationtime = q.creationtime,
username = q.createusername,
@ -124,7 +137,7 @@ namespace _24Hour.Controllers.Common
//获取远程接待预约记录
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.Where(q => q.IsDeleted == 0).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
Receptiondata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -136,6 +149,8 @@ namespace _24Hour.Controllers.Common
color = da?.color,
icon = da?.icon,
matter = q.matter,
unitCode = q.unitCode,
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
sttime = q.sttime,
ettime = q.ettime,
state = q.state,
@ -152,7 +167,7 @@ namespace _24Hour.Controllers.Common
//获取认罪认罚预约记录
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.Where(q => q.IsDeleted == 0).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
Confessiondata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -167,6 +182,8 @@ namespace _24Hour.Controllers.Common
sttime = q.sttime,
ettime = "",
state = q.state,
unitCode = q.unitCode,
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
creationtime = q.creationtime,
username = q.createusername,
handleId = q.meetwitId,
@ -179,7 +196,7 @@ namespace _24Hour.Controllers.Common
//获取听证预约记录
var Hearingdata = await _db.Queryable<App_HearingModel>()
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.Where(q => q.IsDeleted == 0).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
Hearingdata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -195,6 +212,8 @@ namespace _24Hour.Controllers.Common
sttime = q.reservationtime,
ettime = "",
state = q.state,
unitCode = q.unitCode,
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
creationtime = q.creationtime,
username = q.lawyeruser,
handleId = q.receptionuser,
@ -208,7 +227,9 @@ namespace _24Hour.Controllers.Common
list = list.WhereIF(Commondata.username.NotNull(), x => $"{x.username}".Contains(Commondata.username))
.WhereIF(Commondata.handleuser.NotNull(), x => $"{x.handleuser}".Contains(Commondata.handleuser))
.WhereIF(Commondata.StartTime != null && Commondata.EndTime != null, q => q.creationtime >= Commondata.StartTime && q.creationtime < Commondata.EndTime.Value.AddDays(1)).ToList();
Commondata.RowsCount = list.Count();
list = list.OrderByDescending(q => q.creationtime).ToList()
.Skip(Commondata.PageSize * (Commondata.PageIndex - 1)).Take(Commondata.PageSize).ToList();
result.IsSucceed = true;
@ -243,84 +264,91 @@ namespace _24Hour.Controllers.Common
//获取律师服务预约记录
var list = await _db.Queryable<App_LawyerServicesModel>()
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
if (list.Count>0)
if (list.Count > 0)
{
var unitdal = _Unitdata.Where(q => q.unitCode == list.FirstOrDefault().unitCode).FirstOrDefault();
if (unitdal!= null)
var datalist = _mapper.Map<List<App_LawyerServicesModel>, List<App_LawyerServicesDto>>(list);
var unitdal = _Unitdata.Where(q => q.unitCode == datalist.FirstOrDefault()?.unitCode).FirstOrDefault();
if (unitdal != null)
{
list.FirstOrDefault().unitCode = unitdal.unitname;
datalist.FirstOrDefault().unitName = unitdal.unitname;
}
result.result = list.FirstOrDefault();
result.result = datalist.FirstOrDefault();
}
else
{
result.result =null;
result.result = null;
}
break;
case 1:
//获取远程会见预约记录
var Remotedata = await _db.Queryable<App_RemoteModel>()
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
if (Remotedata.Count>0)
if (Remotedata.Count > 0)
{
var unitdatote = _Unitdata.Where(q => q.unitCode == Remotedata.FirstOrDefault().unitCode).FirstOrDefault();
if (unitdatote!= null)
Remotedata.FirstOrDefault().unitCode = unitdatote.unitname;
result.result = Remotedata.FirstOrDefault();
var Remotedatalist = _mapper.Map<List<App_RemoteModel>, List<App_RemoteDto>>(Remotedata);
var unitdatote = _Unitdata.Where(q => q.unitCode == Remotedatalist.FirstOrDefault()?.unitCode).FirstOrDefault();
if (unitdatote != null)
Remotedatalist.FirstOrDefault().unitName = unitdatote.unitname;
result.result = Remotedatalist.FirstOrDefault();
}
break;
case 2:
//获取远程接待预约记录
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
if (Receptiondata.Count>0)
if (Receptiondata.Count > 0)
{
var unitdatR = _Unitdata.Where(q => q.unitCode == Receptiondata.FirstOrDefault().unitCode).FirstOrDefault();
if (unitdatR!= null)
Receptiondata.FirstOrDefault().unitCode = unitdatR.unitname;
result.result = Receptiondata.FirstOrDefault();
var Receptiondatalist = _mapper.Map<List<App_ReceptionModel>, List<App_ReceptionDto>>(Receptiondata);
var unitdatR = _Unitdata.Where(q => q.unitCode == Receptiondatalist.FirstOrDefault().unitCode).FirstOrDefault();
if (unitdatR != null)
Receptiondatalist.FirstOrDefault().unitName = unitdatR.unitname;
result.result = Receptiondatalist.FirstOrDefault();
}
break;
case 3:
//获取听证预约记录
var Hearingdata = await _db.Queryable<App_HearingModel>()
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
if (Hearingdata.Count>0)
if (Hearingdata.Count > 0)
{
var unitdata = _Unitdata.Where(q => q.unitCode == Hearingdata.FirstOrDefault().unitCode).FirstOrDefault();
if (unitdata!= null)
Hearingdata.FirstOrDefault().unitCode = unitdata.unitname;
result.result = Hearingdata.FirstOrDefault();
var Hearingdatalist = _mapper.Map<List<App_HearingModel>, List<App_HearingDto>>(Hearingdata);
var unitdata = _Unitdata.Where(q => q.unitCode == Hearingdatalist.FirstOrDefault().unitCode).FirstOrDefault();
if (unitdata != null)
Hearingdatalist.FirstOrDefault().unitName = unitdata.unitname;
result.result = Hearingdatalist.FirstOrDefault();
}
break;
case 4:
//获取文书签收记录
var Documentdata = await _db.Queryable<App_DocumentModel>()
.Where(q => q.Id == Id).ToListAsync();
if (Documentdata.Count>0)
if (Documentdata.Count > 0)
{
var unitda = _Unitdata.Where(q => q.unitCode == Documentdata.FirstOrDefault().dwbm).FirstOrDefault();
if (unitda!= null)
Documentdata.FirstOrDefault().dwbm = unitda.unitname;
result.result = Documentdata.FirstOrDefault();
var Documentdatalist = _mapper.Map<List<App_DocumentModel>, List<App_DocumentDto>>(Documentdata);
var unitda = _Unitdata.Where(q => q.unitCode == Documentdatalist.FirstOrDefault().dwbm).FirstOrDefault();
if (unitda != null)
Documentdatalist.FirstOrDefault().unitName = unitda.unitname;
result.result = Documentdatalist.FirstOrDefault();
}
break;
case 5:
//获取云柜记录
var CloudCabinetdata = await _db.Queryable<App_CloudCabinetModel>()
.Where(q => q.Id == Id).ToListAsync();
if (CloudCabinetdata.Count>0)
if (CloudCabinetdata.Count > 0)
{
var unitdat = _Unitdata.Where(q => q.unitCode == CloudCabinetdata.FirstOrDefault().dwbm).FirstOrDefault();
CloudCabinetdata.FirstOrDefault().dwbm = unitdat.unitname;
result.result = CloudCabinetdata.FirstOrDefault();
var CloudCabinetdatalist = _mapper.Map<List<App_CloudCabinetModel>, List<App_CloudCabinetDto>>(CloudCabinetdata);
var unitdat = _Unitdata.Where(q => q.unitCode == CloudCabinetdatalist.FirstOrDefault().dwbm).FirstOrDefault();
CloudCabinetdatalist.FirstOrDefault().unitName = unitdat.unitname;
result.result = CloudCabinetdatalist.FirstOrDefault();
}
break;
case 6:
//获取认罪认罚预约记录
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
if (Confessiondata.Count>0)
if (Confessiondata.Count > 0)
result.result = Confessiondata.FirstOrDefault();
break;
}
@ -374,12 +402,15 @@ namespace _24Hour.Controllers.Common
matter = q.matter,//事由
objectstr = q.objectstr,//访问对象(案件名称)
endtime = q.receptionEndtime,
lawyerunit = "",
location = "",
courtname = "",
casetype = "",
operatorId = q.operatorId,
operatorName = q.operatorName,
partyIDcard = q?.partyIDcard,
party = q?.party,
state = q.state,
reason = q.reason,
sttime = q.receptiontime,
@ -411,6 +442,9 @@ namespace _24Hour.Controllers.Common
icon = da?.icon,
unitCode = Unitdata?.unitCode,
Unitname = Unitdata?.unitname,
partyIDcard = "",
party = "",
endtime = "",
name = q.name,
phone = q.phone,
matter = "",//事由
@ -455,6 +489,9 @@ namespace _24Hour.Controllers.Common
icon = da?.icon,
Unitname = Unitdata?.unitname,
unitCode = Unitdata?.unitCode,
partyIDcard = "",
party = "",
endtime = "",
name = "",
phone = q.phone,
matter = q.matter,//事由
@ -499,6 +536,9 @@ namespace _24Hour.Controllers.Common
icon = da?.icon,
Unitname = Unitdata?.unitname,
unitCode = Unitdata?.unitCode,
partyIDcard = "",
party = "",
endtime = "",
name = "",
phone = q.phone,
matter = q.matter,//事由
@ -544,6 +584,9 @@ namespace _24Hour.Controllers.Common
icon = da?.icon,
Unitname = Unitdata?.unitname,
unitCode = Unitdata?.unitCode,
partyIDcard = "",
party = "",
endtime = "",
name = q.lawyeruser,//律师律师名称
lawyerunit = q.lawyerunit,//律师事务所
@ -610,14 +653,15 @@ namespace _24Hour.Controllers.Common
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
// .WhereIF(Commondata.state != null && Commondata.state == 1, x => x.state == 1)
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.receptionuser == _userdata.department)
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id||x.operatorId ==null)
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.receptionuser)).ToArrayAsync();
.WhereIF(!string.IsNullOrEmpty(_userdata.unitCode), x => x.unitCode == _userdata.unitCode)
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
.Where(q => q.IsDeleted == 0 /*&& !string.IsNullOrEmpty(q.receptionuser)*/).ToArrayAsync();
//.Where(q => q.IsDeleted == 0 && q.receptionuser == _userdata.department).ToArrayAsync();
Lawyerdata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
var Unitdata = _Unitdata.FirstOrDefault(x => x.unitCode == q.unitCode);
list.Add(new
{
type = 0,
@ -633,7 +677,10 @@ namespace _24Hour.Controllers.Common
handleuser = q.receptionusername,
operatorId = q.operatorId,
operatorName = q.operatorName,
lawyerunit = "",
party=q.party,
partyIDcard=q.partyIDcard,
endtime=q.receptionEndtime,
lawyerunit = Unitdata?.unitname,
location = "",
courtname = "",
casetype = "",
@ -658,12 +705,13 @@ namespace _24Hour.Controllers.Common
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId==_userdata.department)
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department)
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId)).ToArrayAsync();
Remotedata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
var Unitdata = _Unitdata.FirstOrDefault(x => x.unitCode == q.unitCode);
list.Add(new
{
type = 1,
@ -676,9 +724,12 @@ namespace _24Hour.Controllers.Common
matter = "",//事由
objectstr = "",//访问对象(案件名称)
party = "",
partyIDcard = "",
endtime = "",
operatorId = q.operatorId,
operatorName = q.operatorName,
lawyerunit = "",
lawyerunit = Unitdata?.unitname,
location = "",
courtname = "",
casetype = "",
@ -704,13 +755,14 @@ namespace _24Hour.Controllers.Common
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
// .WhereIF(Commondata.state != null && Commondata.state == 1, x => x.state == 1)
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId==_userdata.department)
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department)
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId)).ToArrayAsync();
//.Where(q => q.IsDeleted == 0 && q.meetwitId == _userdata.department).ToArrayAsync();
Receptiondata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
var Unitdata = _Unitdata.FirstOrDefault(x => x.unitCode == q.unitCode);
list.Add(new
{
type = 2,
@ -723,9 +775,12 @@ namespace _24Hour.Controllers.Common
matter = q.matter,//事由
objectstr = "",//访问对象(案件名称)
party = "",
partyIDcard = "",
endtime = "",
operatorId = q.operatorId,
operatorName = q.operatorName,
lawyerunit = "",
lawyerunit = Unitdata?.unitname,
location = "",
courtname = "",
casetype = "",
@ -751,7 +806,7 @@ namespace _24Hour.Controllers.Common
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
// .WhereIF(Commondata.state != null && Commondata.state == 1, x => x.state == 1)
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.receptionuser==_userdata.department)
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.receptionuser == _userdata.department)
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.receptionuser)).ToArrayAsync();
//.Where(q => q.IsDeleted == 0 && q.receptionuser == _userdata.department).ToArrayAsync();
@ -779,6 +834,9 @@ namespace _24Hour.Controllers.Common
matter = q.witnessrequest,//事由
objectstr = "",//访问对象(案件名称)
Code = "",
party = "",
partyIDcard = "",
endtime = "",
state = q.state,//状态
reason = q.reason,//原因
sttime = q.reservationtime,//预约时间
@ -818,6 +876,9 @@ namespace _24Hour.Controllers.Common
matter = q.ajmc,//案件名称
objectstr = "",//访问对象(案件名称)
Code = "",
party = "",
partyIDcard = "",
endtime = "",
state = q.zt,//状态
reason = "",//原因
sttime = unixStartTime.AddMilliseconds(long.Parse(q.zhxgsj)),//时间
@ -852,6 +913,9 @@ namespace _24Hour.Controllers.Common
icon = da?.icon,
name = $"{q.cljs}",//材料件数
party = "",
partyIDcard = "",
endtime = "",
lawyerunit = Unitdata?.unitname,//
location = "",//
phone = q.lxhm,//联系方式
@ -877,7 +941,7 @@ namespace _24Hour.Controllers.Common
//.WhereIF(Commondata.state != null && Commondata.state != 0, x => x.state == Commondata.state)
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId==_userdata.department)
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department)
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId)).ToArrayAsync();
//.Where(q => q.IsDeleted == 0 && q.meetwitId == _userdata.department).ToArrayAsync();
@ -896,6 +960,9 @@ namespace _24Hour.Controllers.Common
matter = q.matter,//事由
objectstr = "",//访问对象(案件名称)
party = "",
partyIDcard = "",
endtime = "",
operatorId = q.operatorId,
operatorName = q.operatorName,
lawyerunit = "",
@ -919,7 +986,7 @@ namespace _24Hour.Controllers.Common
});
});
list = list
.WhereIF(Commondata.matter.NotNull(), x => x?.matter.Contains(Commondata.matter) || x?.title.Contains(Commondata.matter) || x?.name.Contains(Commondata.matter) || x?.objectstr.Contains(Commondata.matter) || x?.lawyerunit.Contains(Commondata.matter)).OrderByDescending(q => q.creationtime).ToList();
.WhereIF(!string.IsNullOrEmpty(Commondata.matter), x => x?.matter.Contains(Commondata.matter) || x?.title.Contains(Commondata.matter) || x?.name.Contains(Commondata.matter) || x?.objectstr.Contains(Commondata.matter) || x?.lawyerunit.Contains(Commondata.matter)).OrderByDescending(q => q.creationtime).ToList();
Commondata.RowsCount = list.Count();
list = list.Skip(Commondata.PageSize * (Commondata.PageIndex - 1)).Take(Commondata.PageSize).ToList();
result.IsSucceed = true;
@ -952,13 +1019,14 @@ namespace _24Hour.Controllers.Common
if (string.IsNullOrEmpty(_userdata.department))
{
result.IsSucceed = true;
result.result=list;
result.result = list;
return result;
}
//获取律师服务预约记录
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>().WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.receptionuser==_userdata.department && (x.operatorId == _userdata.Id || x.operatorId == null))
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.receptionuser) && q.state != 2 && q.state != 3).ToArrayAsync();
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
//.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => /*x.receptionuser == _userdata.department &&*/ (x.operatorId == _userdata.Id || x.operatorId == null))
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.receptionuser) && q.state != 2 && q.state != 3&&q.unitCode==_userdata.unitCode).ToArrayAsync();
// .Where(q => q.IsDeleted == 0 && q.receptionuser == _userdata.department && q.state != 2 && q.state != 3).ToArrayAsync();
Lawyerdata.ToList().ForEach(q =>
{
@ -997,7 +1065,7 @@ namespace _24Hour.Controllers.Common
});
//获取远程会见预约记录
var Remotedata = await _db.Queryable<App_RemoteModel>().WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department && (x.operatorId == _userdata.Id || x.operatorId == null))
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId) && q.state != 2 && q.state != 3).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId) && q.state != 2 && q.state != 3).ToArrayAsync();
Remotedata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -1035,7 +1103,7 @@ namespace _24Hour.Controllers.Common
});
//获取远程接待预约记录
var Receptiondata = await _db.Queryable<App_ReceptionModel>().WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department && (x.operatorId == _userdata.Id || x.operatorId == null))
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId) && q.state != 2 && q.state != 3).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId) && q.state != 2 && q.state != 3).ToArrayAsync();
// .Where(q => q.IsDeleted == 0 && q.meetwitId == _userdata.department && q.state != 2 && q.state != 3).ToArrayAsync();
Receptiondata.ToList().ForEach(q =>
{
@ -1074,7 +1142,7 @@ namespace _24Hour.Controllers.Common
});
//获取认罪认罚预约记录
var Confessiondata = await _db.Queryable<App_ConfessionModel>().WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department && (x.operatorId == _userdata.Id || x.operatorId == null))
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId) && q.state != 2 && q.state != 3).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId) && q.state != 2 && q.state != 3).ToArrayAsync();
//.Where(q => q.IsDeleted == 0 && q.meetwitId == _userdata.department && q.state != 2 && q.state != 3).ToArrayAsync();
Confessiondata.ToList().ForEach(q =>
{
@ -1113,7 +1181,7 @@ namespace _24Hour.Controllers.Common
});
//获取听证服务预约记录
var Hearingdata = await _db.Queryable<App_HearingModel>().WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.receptionuser == _userdata.department && (x.operatorId == _userdata.Id || x.operatorId == null))
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.receptionuser) && q.state != 2 && q.state != 3).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.receptionuser) && q.state != 2 && q.state != 3).ToArrayAsync();
// .Where(q => q.IsDeleted == 0 && q.receptionuser == _userdata.department && q.state != 2 && q.state != 3).ToArrayAsync();
Hearingdata.ToList().ForEach(q =>
{
@ -1292,31 +1360,56 @@ namespace _24Hour.Controllers.Common
var Lawyerbol = await _db.Queryable<App_LawyerServicesModel>().Where(q => q.Id == dto.Id).ToListAsync();
if (Lawyerbol.Count() > 0)
{
var Lawyerboldata = Lawyerbol.FirstOrDefault();
if (dto.Type == 1)
{
//if (Lawyerbol.FirstOrDefault().operatorId!=null)
//{
// result.IsSucceed = false;
// result.result = "预约已受理";
// return result;
//}
Lawyerbol.FirstOrDefault().acceptancetime = dto.time;
Lawyerbol.FirstOrDefault().reason = dto.reason;
Lawyerbol.FirstOrDefault().state = Convert.ToInt32(dto.state);
Lawyerbol.FirstOrDefault().operatorId =newmodel.Id;
Lawyerbol.FirstOrDefault().operatorName = newmodel.name;
if (Lawyerboldata.operatorId != null)
{
result.IsSucceed = false;
result.result = "预约已受理";
return result;
}
Lawyerboldata.acceptancetime = dto.time;
Lawyerboldata.receptiontime = dto.starttime;
Lawyerboldata.receptionEndtime = dto.endtime;
Lawyerboldata.reason = dto.reason;
Lawyerboldata.state = Convert.ToInt32(dto.state);
Lawyerboldata.operatorId = newmodel.Id;
Lawyerboldata.operatorName = newmodel.name;
}
else
{
Lawyerbol.FirstOrDefault().receptionuser = dto.userId;
Lawyerbol.FirstOrDefault().receptionusername = dto.username;
Lawyerboldata.receptionuser = dto.userId;
Lawyerboldata.receptionusername = dto.username;
}
var userdata = await _db.Queryable<App_Sys_UserModel>()
.Where(q => q.Id == Lawyerboldata.createuserId).ToArrayAsync();
_db.BeginTran();
var num = await _db.Updateable(Lawyerbol.FirstOrDefault()).UpdateColumns(it => new { it.receptionuser, it.receptionusername, it.acceptancetime, it.reason, it.state, it.operatorId, it.operatorName }).ExecuteCommandAsync();
var num = await _db.Updateable(Lawyerboldata).UpdateColumns(it => new { it.receptionuser, it.receptionusername, it.acceptancetime, it.reason, it.state, it.operatorId, it.operatorName }).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
_SocketCon.system(dto.userId);
//获取单位信息
var unitname = _Unitdata.FirstOrDefault(q => q.unitCode == Lawyerboldata.unitCode)?.unitname;
await _SocketCon.system(dto.userId);
if (dto.Type == 1)
{
if (dto.state == 1)
{
//判单预约人是否有微信openId
if (!string.IsNullOrEmpty(userdata.FirstOrDefault()?.wechatId))
//发送晨成功订阅号消息
_wechatMessagerClient.wxts(userdata.FirstOrDefault()?.wechatId, Lawyerboldata?.operatorName, unitname, Lawyerboldata?.receptiontime, Lawyerboldata?.objectstr + "-" + Lawyerboldata?.matter, Lawyerboldata?.reason);
}
else
{
//判单预约人是否有微信openId
if (!string.IsNullOrEmpty(userdata.FirstOrDefault()?.wechatId))
//发送拒绝订阅号消息
_wechatMessagerClient.sbwxts(userdata.FirstOrDefault()?.wechatId, Lawyerboldata?.operatorName, unitname, Lawyerboldata?.receptiontime, Lawyerboldata?.matter, Lawyerboldata?.reason);
}
}
result.IsSucceed = true;
result.result = "修改成功";
}
@ -1325,20 +1418,19 @@ namespace _24Hour.Controllers.Common
var RemoteModelbol = await _db.Queryable<App_RemoteModel>().Where(q => q.Id == dto.Id).ToListAsync();
if (RemoteModelbol.Count() > 0)
{
if (dto.Type == 1)
{
//if (RemoteModelbol.FirstOrDefault().operatorId != null)
//{
// result.IsSucceed = false;
// result.result = "预约已受理";
// return result;
//}
if (RemoteModelbol.FirstOrDefault().operatorId != null)
{
result.IsSucceed = false;
result.result = "预约已受理";
return result;
}
RemoteModelbol.FirstOrDefault().acceptancetime = dto.time;
RemoteModelbol.FirstOrDefault().reason = dto.reason;
RemoteModelbol.FirstOrDefault().state = Convert.ToInt32(dto.state);
RemoteModelbol.FirstOrDefault().operatorId =newmodel.Id;
RemoteModelbol.FirstOrDefault().operatorName = newmodel.name;
RemoteModelbol.FirstOrDefault().operatorId = newmodel.Id;
RemoteModelbol.FirstOrDefault().operatorName = newmodel.name;
}
else
{
@ -1362,17 +1454,17 @@ namespace _24Hour.Controllers.Common
if (dto.Type == 1)
{
//if (Receptiondata.FirstOrDefault().operatorId != null)
//{
// result.IsSucceed = false;
// result.result = "预约已受理";
// return result;
//}
if (Receptiondata.FirstOrDefault().operatorId != null)
{
result.IsSucceed = false;
result.result = "预约已受理";
return result;
}
Receptiondata.FirstOrDefault().acceptancetime = dto.time;
Receptiondata.FirstOrDefault().reason = dto.reason;
Receptiondata.FirstOrDefault().state = Convert.ToInt32(dto.state);
Receptiondata.FirstOrDefault().operatorId =newmodel.Id;
Receptiondata.FirstOrDefault().operatorName = newmodel.name;
Receptiondata.FirstOrDefault().operatorId = newmodel.Id;
Receptiondata.FirstOrDefault().operatorName = newmodel.name;
}
else
{
@ -1395,17 +1487,17 @@ namespace _24Hour.Controllers.Common
{
if (dto.Type == 1)
{
//if (Confessiondata.FirstOrDefault().operatorId != null)
//{
// result.IsSucceed = false;
// result.result = "预约已受理";
// return result;
//}
if (Confessiondata.FirstOrDefault().operatorId != null)
{
result.IsSucceed = false;
result.result = "预约已受理";
return result;
}
Confessiondata.FirstOrDefault().acceptancetime = dto.time;
Confessiondata.FirstOrDefault().reason = dto.reason;
Confessiondata.FirstOrDefault().state =Convert.ToInt32(dto.state);
Confessiondata.FirstOrDefault().operatorId =newmodel.Id;
Confessiondata.FirstOrDefault().operatorName = newmodel.name;
Confessiondata.FirstOrDefault().state = Convert.ToInt32(dto.state);
Confessiondata.FirstOrDefault().operatorId = newmodel.Id;
Confessiondata.FirstOrDefault().operatorName = newmodel.name;
}
else
{
@ -1429,17 +1521,17 @@ namespace _24Hour.Controllers.Common
if (dto.Type == 1)
{
//if (Hearingdata.FirstOrDefault().operatorId != null)
//{
// result.IsSucceed = false;
// result.result = "预约已受理";
// return result;
//}
if (Hearingdata.FirstOrDefault().operatorId != null)
{
result.IsSucceed = false;
result.result = "预约已受理";
return result;
}
Hearingdata.FirstOrDefault().acceptancetime = dto.time;
Hearingdata.FirstOrDefault().reason = dto.reason;
Hearingdata.FirstOrDefault().state = Convert.ToInt32(dto.state);
Hearingdata.FirstOrDefault().operatorId =newmodel.Id;
Hearingdata.FirstOrDefault().operatorName = newmodel.name;
Hearingdata.FirstOrDefault().operatorId = newmodel.Id;
Hearingdata.FirstOrDefault().operatorName = newmodel.name;
}
else
{
@ -2131,7 +2223,7 @@ namespace _24Hour.Controllers.Common
{
type = 0,
Id = q.Id,
operatorId=q.operatorId,
operatorId = q.operatorId,
operatorName = userda?.name,
daId = da?.Id,
title = da?.title,
@ -2252,7 +2344,7 @@ namespace _24Hour.Controllers.Common
});
//获取听证预约记录
var Hearingdata = await _db.Queryable<App_HearingModel>()
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode&&q.acceptancetime!=null && q.operatorId != null).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId != null).ToArrayAsync();
Hearingdata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -2316,7 +2408,7 @@ namespace _24Hour.Controllers.Common
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.usertype == 0).ToArrayAsync();
//获取律师服务预约记录
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null &&q.operatorId== Commondata.Id).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
Lawyerdata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -2347,7 +2439,7 @@ namespace _24Hour.Controllers.Common
});
//获取远程会见预约记录
var Remotedata = await _db.Queryable<App_RemoteModel>()
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
Remotedata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -2380,7 +2472,7 @@ namespace _24Hour.Controllers.Common
});
//获取远程接待预约记录
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
Receptiondata.ToList().ForEach(q =>
{
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
@ -2499,7 +2591,7 @@ namespace _24Hour.Controllers.Common
}
}
result.IsSucceed = true;
result.result =new { GroupBy,satseGroupBy};
result.result = new { GroupBy, satseGroupBy };
}
catch (System.Exception ex)
@ -2562,6 +2654,55 @@ namespace _24Hour.Controllers.Common
return Json(outParm);
});
}
/// <summary>
/// 文件上传--附件
/// <param name="file"></param>
/// <returns></returns>
[HttpPost]
[Route("Upload_Files1")]
[AllowAnonymous]
public async Task<ActionResult> Upload_Files1(IFormFile file)
{
Result outParm = new Result();
return await Task.Run(() =>
{
if (file.Length <= 0)
{
outParm.IsSucceed = false;
outParm.Message = "请上传文件!";
return Json(outParm);
}
try
{
var size = Request.Form.Files.Sum(f => f.Length);
IFormFile file = Request.Form.Files.FirstOrDefault();
var fname = $@"{file.FileName}";
var hzname = $"{Path.GetExtension(fname)}";
var _path = $"/CaseFile/card/{DateTime.Now.ToString("yyyy-MM-dd")}";
var dic = Path.Combine(Environment.CurrentDirectory, "wwwroot");
if (!string.IsNullOrEmpty(_path))
dic += _path;
if (!System.IO.Directory.Exists(dic))
Directory.CreateDirectory(dic);
var filename = $"{DateTime.Now:yyyyMMddHHmmssfff}{Path.GetExtension(fname)}";
var filepath = Path.Combine(_path, $"{filename}");
var path = Path.Combine(dic, $"{filename}");
using (var stream = new FileStream(path, FileMode.OpenOrCreate))
{
file.CopyToAsync(stream).Wait();
}
var __path = $"{_path}/{filename}";
outParm.IsSucceed = true;
outParm.result = new { hzname = hzname, url = __path, tile = Path.GetFileNameWithoutExtension(file.FileName), size, DataPath = path, filePath = dic };
}
catch (Exception e)
{
outParm.IsSucceed = false;
outParm.Message = $"文件上传失败!{e.Message}";
}
return Json(outParm);
});
}
#endregion
}
}

1048
24Hour/Controllers/Common/LawyerArchivesController.cs

File diff suppressed because it is too large Load Diff

158
24Hour/Controllers/Common/LawyerArchivesUnAuthorizeController.cs

@ -0,0 +1,158 @@
using AutoMapper;
using Elight.Entity;
using Elight.Entity.APPDto.Lawyer;
using Elight.Entity.AppMode.Lawyer;
using Elight.Logic;
using Elight.Utility.Code;
using Elight.Utility.Extensions;
using Elight.Utility.logs;
using java.util;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using System.Text;
using static _24Hour.Controllers.Common.LawyerArchivesController;
namespace _24Hour.Controllers.Common
{
/// <summary>
/// 律师服务
/// </summary>
[ApiController]
[Route("api/LawyerUnAuthorize")]
public class LawyerArchivesUnAuthorizeController : Controller
{
#region Identity
private readonly SqlSugarClient _db;//数据库
private readonly ILogger<LawyerArchivesController> logger;//日志
private readonly IMapper mapper;
public LawyerArchivesUnAuthorizeController(ILogger<LawyerArchivesController> _logger, SqlSugarClient db, IMapper _mapper)
{
this.logger = _logger;
_db = db;
this.mapper = _mapper;
}
#endregion
/// <summary>
/// 一体机查询所有的未完成的预约信息
/// </summary>
/// <returns></returns>
[HttpGet("GetAllArchivesUncompleted")]
public async Task<Result<IEnumerable<LawyerArchivesDto>>> GetAllArchivesUncompleted(string unitcode)
{
var res = new Result<IEnumerable<LawyerArchivesDto>>();
var list = await _db.Queryable<LawyerArchives>()
.Where(x => x.IsDeleted == 0)
.Where(x => x.status != 2 && x.permissibleEndTime > DateTime.Now)
.Where(x => x.unitcode == unitcode)
.Where(x => x.IsDeleted == 0)
.ToListAsync();
var data = mapper.Map<IEnumerable<LawyerArchivesDto>>(list);
res.result = data;
res.IsSucceed = true;
return res;
}
/// <summary>
/// 获取卷宗下所有的文件信息
/// </summary>
/// <param name="jzid"></param>
/// <returns></returns>
[HttpPost("GetJzFileInfo")]
public async Task<Result> GetJzFileInfo(IEnumerable<string> jzids)
{
var result = new Result();
var list = await _db.Queryable<JZJBXX>()
.Includes(x => x.jzml, q => q.jzwj)
.Where(x => jzids.Contains(x.Id))
.ToListAsync();
var dtos = mapper.Map<List<JZJBXXDto>>(list);
var listdata = dtos.Select(x => new
{
jzid = x.Id,
files = x.jzml.OrderBy(x => x.mlsxh)
.SelectMany(e => e.jzwj.OrderBy(x => x.wjsxh))
.Select((q) => new
{
order = q.wjsxh,
fileid = q.Id,
filepath = q.jpgwjlj
}).OrderBy(x => x.order)
}).ToList();
result.result = listdata;
result.IsSucceed = true;
return result;
}
/// <summary>
/// 上传一体机的文件缓存状态
/// </summary>
/// <param name="dic"></param>
/// <returns></returns>
[HttpPost("UploadWJDownloadStatus")]
public async Task<Result> UploadWJDownloadStatus(IEnumerable<LawyerArchivesDto> dtos)
{
var result = new Result();
try
{
_db.BeginTran();
var updatelist = await _db.Queryable<LawyerArchives>().In(q => q.jzlbxxId, dtos.Select(x => x.jzlbxxId).ToList()).ToListAsync();
updatelist.ForEach(q =>
{
var value = dtos.FirstOrDefault(x => x.jzlbxxId == q.jzlbxxId);
q.downloadedCount = value?.downloadedCount;
});
var num = await _db.Updateable(updatelist).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
result.IsSucceed = true;
result.result = "更新成功";
}
}
catch (System.Exception ex)
{
_db.RollbackTran();
result.IsSucceed = false;
result.Message = ex.Message;
}
return result;
}
/// <summary>
/// 解密字符串信息
/// </summary>
/// <param name="basestr"></param>
/// <returns></returns>
[HttpPost]
[Route("DecodeData")]
public Task<Result<string>> DecodeData(DecodeQRDataModel data)
{
Result<string> result = new();
try
{
var qrdata = data.QRData;
var count = data.QRData.Length;
var a = count % 4;
if (a != 0)
{
for (int i = 0; i < a; i++)
{
qrdata += "=";
}
}
result.result = Encoding.UTF8.GetString(Convert.FromBase64String(qrdata));
result.IsSucceed = true;
return Task.FromResult(result);
}
catch (Exception ex)
{
logger.LogError(ex, "");
result.IsSucceed = false;
return Task.FromResult(result);
}
}
}
}

96
24Hour/Controllers/Common/LawyerservicesController.cs

@ -1,4 +1,6 @@
using Elight.Entity;
using com.sun.xml.@internal.bind.v2.model.core;
using Elight.Entity;
using Elight.Entity.APPDto.Lawyer;
using Elight.Logic;
using Elight.Utility;
using Elight.Utility.Code;
@ -6,9 +8,14 @@ using Elight.Utility.Extensions;
using Elight.Utility.logs;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using SqlSugar;
using System.Net.WebSockets;
using sun.security.x509;
using System.Net.WebSockets;
using System.Text;
using static com.sun.tools.@internal.xjc.reader.xmlschema.bindinfo.BIConversion;
using static java.security.cert.CertPathValidatorException;
using User = Elight.Utility.User;
namespace _24Hour.Controllers.Common
{
@ -20,19 +27,24 @@ namespace _24Hour.Controllers.Common
[Route("api/Lawyer")]
public class LawyerservicesController : Controller
{
private static Dictionary<string, WebSocket> CONNECT_POOL = new Dictionary<string, WebSocket>();//用户连接池
#region Identity
private readonly SqlSugarClient _db;//数据库
private readonly WriteSysLog _logs;//操作日志
App_Sys_UserModel _userdata = new App_Sys_UserModel();//当前用户
private readonly ILogger<LoginController> _logger;//日志
private readonly ILogger<LoginController> _logger;//日志
private readonly WechatMessagerClient _wechatMessagerClient;
private readonly List<App_Sys_UnitModel> _Unitdata;//当前用户
Result result = new Result();
public LawyerservicesController(ILogger<LoginController> logger, SqlSugarClient db, WriteSysLog logs, User user)
public LawyerservicesController(ILogger<LoginController> logger, SqlSugarClient db, WriteSysLog logs, User user, WechatMessagerClient wechatMessagerClient)
{
_logger = logger;
_db = db;
_logs = logs;
_userdata = user.Userdata();
_userdata = user.Userdata();
_Unitdata = _db.Queryable<App_Sys_UnitModel>().Where(q => q.IsDelete == 0).ToList();
_wechatMessagerClient = wechatMessagerClient;
}
#endregion
@ -75,12 +87,12 @@ namespace _24Hour.Controllers.Common
RefAsync<int> totalNumber = 0;//总数据
//查询律师服务
var list = await _db.Queryable<App_LawyerServicesModel>()
.WhereIF(Lawyerdata.name != null, q => q.name.Contains(Lawyerdata.name))
.WhereIF(Lawyerdata.objectstr != null, q => q.objectstr.Contains(Lawyerdata.objectstr))
.WhereIF(Lawyerdata.unitId != null, q => q.unitCode.Contains(Lawyerdata.unitId))
.WhereIF(Lawyerdata.state != null, q => q.state == Lawyerdata.state)
.WhereIF(Lawyerdata.StartTime != null && Lawyerdata.EndTime != null, q => q.receptiontime >= Lawyerdata.StartTime && q.receptiontime < Lawyerdata.EndTime.Value.AddDays(1))
.Where(q => q.IsDeleted == 0&&q.unitCode == _userdata.unitCode).ToPageListAsync(Lawyerdata.PageIndex, Lawyerdata.PageSize, totalNumber);
.WhereIF(Lawyerdata?.name != null, q => q.name.Contains(Lawyerdata.name))
.WhereIF(Lawyerdata?.objectstr != null, q => q.objectstr.Contains(Lawyerdata.objectstr))
.WhereIF(Lawyerdata?.unitId != null, q => q.unitCode.Contains(Lawyerdata.unitId))
.WhereIF(Lawyerdata?.state != null, q => q.state == Lawyerdata.state)
.WhereIF(Lawyerdata?.StartTime != null && Lawyerdata.EndTime != null, q => q.receptiontime >= Lawyerdata.StartTime && q.receptiontime < Lawyerdata.EndTime.Value.AddDays(1))
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).OrderByDescending(q => q.creationtime).ToPageListAsync(Lawyerdata.PageIndex, Lawyerdata.PageSize, totalNumber);
Lawyerdata.RowsCount = totalNumber;
var data = new QueryResult<App_LawyerServicesModel>(Lawyerdata, list.OrderByDescending(q => q.creationtime).ToList());
result.IsSucceed = true;
@ -109,7 +121,6 @@ namespace _24Hour.Controllers.Common
result.IsSucceed = true;
result.result = "添加成功";
}
}
catch (System.Exception ex)
{
@ -183,15 +194,19 @@ namespace _24Hour.Controllers.Common
_db.RollbackTran();
result.IsSucceed = false;
result.Message = ex.Message;
LogService.WriteLog(ex, "删除律师服务预约");
LogService.WriteLog(ex, "删除律师阅卷");
}
_logs.WriteSysLogadd("律师服务", "删除律师服务预约", result, _db);
return result;
}
}
#endregion
#region 律师预约修改办理人及状态修改
/// <summary>
/// 修改律师服务预约办理人
/// </summary>
@ -204,8 +219,8 @@ namespace _24Hour.Controllers.Common
{
try
{
var Lawyerbol = await _db.Queryable<App_LawyerServicesModel>().Where(q=>q.Id==Id).ToListAsync();
if (Lawyerbol.Count()>0)
var Lawyerbol = await _db.Queryable<App_LawyerServicesModel>().Where(q => q.Id == Id).ToListAsync();
if (Lawyerbol.Count() > 0)
{
Lawyerbol.FirstOrDefault().receptionuser = transactors;
_db.BeginTran();
@ -244,22 +259,51 @@ namespace _24Hour.Controllers.Common
/// <returns></returns>
[HttpGet]
[Route("UpdateLawyerstate")]
public async Task<Result> UpdateLawyerstate(string? Id, int state,string? reason)
public async Task<Result> UpdateLawyerstate(string? Id, int state, string? reason,DateTime starttime,DateTime endtime)
{
try
{
var Lawyerbol = await _db.Queryable<App_LawyerServicesModel>().Where(q => q.Id == Id).ToListAsync();
if (Lawyerbol.Any())
{
Lawyerbol.FirstOrDefault().state = state;
if(reason.NotNull())
Lawyerbol.FirstOrDefault().reason = reason;
Lawyerbol.FirstOrDefault().acceptancetime = DateTime.Now;
{
var Lawyerboldata = Lawyerbol.FirstOrDefault();
if (Lawyerboldata.state !=0)
{
result.IsSucceed = false;
result.result = "数据已被其他人接收处理!";
return result;
}
Lawyerboldata.receptiontime=starttime;
Lawyerboldata.receptionEndtime=endtime;
Lawyerboldata.state = state;
if (reason.NotNull())
Lawyerboldata.reason = reason;
Lawyerboldata.acceptancetime = DateTime.Now;
_db.BeginTran();
var num = await _db.Updateable(Lawyerbol.FirstOrDefault()).UpdateColumns(it => new { it.state, it.reason,it.acceptancetime }).ExecuteCommandAsync();
var num = await _db.Updateable(Lawyerboldata).UpdateColumns(it => new { it.state, it.reason, it.acceptancetime ,it.receptiontime,it
.receptionEndtime}).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
{
var userdata = await _db.Queryable<App_Sys_UserModel>()
.Where(q => q.Id == Lawyerboldata.createuserId).ToArrayAsync();
//获取单位信息
var unitname = _Unitdata.FirstOrDefault(q => q.unitCode == Lawyerboldata.unitCode)?.unitname;
if (state == 1)
{
//判单预约人是否有微信openId
if (!string.IsNullOrEmpty(userdata.FirstOrDefault()?.wechatId))
//发送晨成功订阅号消息
_wechatMessagerClient.wxts(userdata.FirstOrDefault()?.wechatId, Lawyerboldata?.operatorName, unitname, Lawyerboldata?.receptiontime, Lawyerboldata?.objectstr + "-" + Lawyerboldata?.matter, Lawyerboldata?.reason);
}
else
{
//判单预约人是否有微信openId
if (!string.IsNullOrEmpty(userdata.FirstOrDefault()?.wechatId))
//发送拒绝订阅号消息
_wechatMessagerClient.sbwxts(userdata.FirstOrDefault()?.wechatId, Lawyerboldata?.operatorName, unitname, Lawyerboldata?.receptiontime, Lawyerboldata?.matter, Lawyerboldata?.reason);
}
result.IsSucceed = true;
result.result = "同意";
}

24
24Hour/Controllers/Common/WebSocketController.cs

@ -28,17 +28,19 @@ namespace _24Hour.Controllers.Common
private readonly ILogger<LoginController> _logger;//日志
private readonly IConfiguration _configuration;
private static object obj = new object();
private readonly WechatMessagerClient _wechatMessagerClient;
Result result = new Result();
private static Dictionary<string, WebSocket> CONNECT_POOL = new Dictionary<string, WebSocket>();//用户连接池
private static Dictionary<string, Addressda> meeting_pool = new Dictionary<string, Addressda>();//会议连接池
private static Dictionary<string, string> userzx = new Dictionary<string, string>();//检察官在线池
//private static Dictionary<string, List<MessageInfo>> MESSAGE_POOL = new Dictionary<string, List<MessageInfo>>();//离线消息池
public WebSocketController(ILogger<LoginController> logger, SqlSugarClient db, User userdata, IConfiguration configuration)
public WebSocketController(ILogger<LoginController> logger, SqlSugarClient db, User userdata, WechatMessagerClient wechatMessagerClient, IConfiguration configuration)
{
_logger = logger;
_db = db;
_userdata = userdata.Userdata();
_configuration = configuration;
_wechatMessagerClient = wechatMessagerClient;
}
[HttpGet("/ws")]
public async Task WebSocketServer()
@ -543,6 +545,26 @@ namespace _24Hour.Controllers.Common
}
return true;
}
///// <summary>
///// 微信推送
///// </summary>
///// <param name="Id"></param>
///// <returns></returns>
//[HttpGet]
//[Route("wxts")]
//public async Task<bool> wxts()
//{
// try
// {
// _wechatMessagerClient.wxts();
// }
// catch (Exception)
// {
// }
// return true;
//}
}
/// <summary>

165
24Hour/Controllers/LoginController.cs

@ -13,6 +13,7 @@ using java.security;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;
using Microsoft.IdentityModel.Tokens;
using Newtonsoft.Json;
using SqlSugar;
@ -26,7 +27,7 @@ namespace _24Hour.Controllers
/// <summary>
/// 登录
/// </summary>
[HiddenApi]
// [HiddenApi]
[ApiController]
[Route("api/APP")]
public class LoginController : ControllerBase
@ -34,13 +35,15 @@ namespace _24Hour.Controllers
private readonly IConfiguration _configuration;
private readonly SqlSugarClient _db;//数据库
private readonly WriteSysLog _logs;//操作日志
private readonly ILogger<LoginController> _logger;//日志
private readonly ILogger<LoginController> _logger;//日志
private readonly WechatMessagerClient wechatMessagerClient;
Result ret = new Result();
public LoginController(ILogger<LoginController> logger, SqlSugarClient db, IConfiguration configuration)
public LoginController(ILogger<LoginController> logger, SqlSugarClient db, IConfiguration configuration, WechatMessagerClient _wechatMessagerClient)
{
_logger = logger;
_db = db;
_configuration = configuration;
this.wechatMessagerClient = _wechatMessagerClient;
}
[HttpPost]
@ -166,6 +169,7 @@ namespace _24Hour.Controllers
);
//var token = new JwtSecurityTokenHandler().CreateToken(jwttoken);
var tokenString = new JwtSecurityTokenHandler().WriteToken(jwttoken);
var Unitdate = await _db.Queryable<App_Sys_UnitModel>().FirstAsync(x => x.unitCode == date.unitCode);
ret.IsSucceed = true;
ret.result = new
{
@ -177,6 +181,7 @@ namespace _24Hour.Controllers
duties = date.duties,
identity = date.identity,
unitCode = date.unitCode,
unitname = Unitdate?.unitname,
department = date.department,
departmentName = date.departmentName,
token = tokenString
@ -301,7 +306,28 @@ namespace _24Hour.Controllers
LogService.WriteLog(ex, "登录");
}
return ret;
}
}
/// <summary>
/// 微信Code 登陆
/// </summary>
/// <param name="code"></param>
/// <returns></returns>
[HttpGet]
[Route("WeChatLoginCode")]
public async Task<Result> WeChatLoginByCode(string code)
{
var opendata = await GetOpenId(code);
if (opendata.IsSucceed == true)
{
return await WeChatLogin(opendata.result);
}
else
{
return opendata;
}
}
/// <summary>
/// 微信授权登录
@ -312,22 +338,30 @@ namespace _24Hour.Controllers
[Route("WeChatLogin")]
public async Task<Result> WeChatLogin(string openId)
{
var date = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.isdeactivate == 0 && q.wechatId == openId).FirstAsync();
var date = await _db.Queryable<App_Sys_UserModel>()
.Where(q => q.IsDeleted == 0 && q.wechatId == openId)
.OrderByDescending(x => x.createtime)
.FirstAsync();
if (date != null)
{
//if (date.usertype == 1 && date.audit == null)
//{
// ret.IsSucceed = false;
// ret.Message = "账号审核中!";
// return ret;
//}
//else if (date.usertype == 1 && date.audit == 1)
//{
// ret.IsSucceed = false;
// ret.Message = $"账号审核未通过,原因:{date.describe}!";
// return ret;
//}
//else
{
if (date.identity == "律师" && date.audit == 1)
{
ret.IsSucceed = false;
ret.Message = $"用户信息审核未通过,原因:{date.describe},请重新注册!";
return ret;
}
else if (date.identity == "律师" && date.audit == 2)
{
ret.IsSucceed = false;
ret.Message = "用户信息审核中!";
return ret;
}
if (date.isdeactivate == 1)
{
ret.IsSucceed = false;
ret.Message = "该账号已被禁用,请联系管理员!";
return ret;
}
if (date.usertype == 0 && date.becurrent == 1)
{
ret.IsSucceed = false;
@ -365,15 +399,20 @@ namespace _24Hour.Controllers
identity = date.identity,
usertype = date.usertype,
unitCode = date.unitCode,
token = tokenString
token = tokenString,
openId = date.wechatId,
departmentPhoto = date.departmentPhoto,
identityphoto = date.identityphoto,
cardIdphoto = date.cardIdphoto
};
#endregion
ret.IsSucceed = true;
}
else
{
ret.IsSucceed = false;
ret.Message = "微信未授权!";
ret.Message = "微信未授权,请先注册账号!";
}
return ret;
}
@ -388,8 +427,24 @@ namespace _24Hour.Controllers
public async Task<Result> AddUser1(App_Sys_UserModel UserModel)
{
try
{
var data = await _db.Queryable<App_Sys_UserModel>().Where(q => q.phone == UserModel.phone).FirstAsync();
{
_logger.LogInformation(UserModel.ConvertToJsonStr());
//if (string.IsNullOrEmpty(UserModel.wechatId) && await _db.Queryable<App_Sys_UserModel>().AnyAsync(x => x.wechatId == UserModel.wechatId && x.IsDeleted == 0))
//{
// ret.IsSucceed = false;
// ret.Message = "当前微信已与其他账号绑定";
// return ret;
//}
if (string.IsNullOrEmpty(UserModel.wechatId) == false)
{
if (await _db.Queryable<App_Sys_UserModel>().AnyAsync(x => x.wechatId == UserModel.wechatId && x.IsDeleted == 0 && x.audit != 1 && x.isdeactivate == 0))
{
ret.IsSucceed = false;
ret.Message = "当前微信已与其他账号绑定";
return ret;
}
}
var data = await _db.Queryable<App_Sys_UserModel>().Where(q => q.phone == UserModel.phone && q.IsDeleted == 0).FirstAsync();
if (UserModel.identity == "律师")
{
if (data != null && (data.identity != "律师" || data.audit == 0))
@ -409,7 +464,7 @@ namespace _24Hour.Controllers
{
_db.BeginTran();
data.audit = 2;
var num = await _db.Updateable(data).ExecuteCommandAsync();
var num = await _db.Updateable(data).IgnoreColumns(true).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
@ -503,7 +558,7 @@ namespace _24Hour.Controllers
[Route("cardIdLogin")]
public async Task<Result> cardIdLogin(string cardId, string name)
{
var date = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.isdeactivate == 0 && q.cardId == cardId).FirstAsync();
var date = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.cardId == cardId && q.name == name).FirstAsync();
if (date != null)
{
//if (date.usertype == 1 && date.audit == null)
@ -519,7 +574,7 @@ namespace _24Hour.Controllers
// return ret;
// }
// else
if (date.usertype == 0 && date.becurrent == 1)
if (date.usertype == 0 && date.becurrent == 1 && date.isdeactivate == 1)
{
ret.IsSucceed = false;
ret.Message = $"用户未授权无法登录,请联系管理员!";
@ -562,26 +617,52 @@ namespace _24Hour.Controllers
ret.IsSucceed = true;
}
else
{
var UserModel = new App_Sys_UserModel();
_db.BeginTran();
UserModel.Id = Guid.NewGuid().ToString();
UserModel.cardId = cardId;
UserModel.name = name;
UserModel.usertype = 1;
string cardIdpwa = UserModel.cardId.Substring(UserModel.cardId.Length - 6);
//默认密码身份证后六位
UserModel.Password = Elight.Utility.Encrypt.Md5.Encrypt32($"{cardIdpwa}").ToLower();
var num = await _db.Insertable(UserModel).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
ret.IsSucceed = true;
ret.result = "添加成功";
{
var datea = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.cardId == cardId).FirstAsync();
if (datea == null)
{
var UserModel = new App_Sys_UserModel();
_db.BeginTran();
UserModel.Id = Guid.NewGuid().ToString();
UserModel.cardId = cardId;
UserModel.name = name;
UserModel.usertype = 1;
string cardIdpwa = UserModel.cardId.Substring(UserModel.cardId.Length - 6);
//默认密码身份证后六位
UserModel.Password = Elight.Utility.Encrypt.Md5.Encrypt32($"{cardIdpwa}").ToLower();
var num = await _db.Insertable(UserModel).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
ret.IsSucceed = true;
ret.result = "添加成功";
}
}
else
{
ret.IsSucceed = false;
ret.Message = $"用户未授权无法登录,请联系管理员!";
return ret;
}
}
return ret;
}
/// <summary>
/// 小程序AppID
/// </summary>
private const string appid = "wx48108a0c98a3dab0";
/// <summary>
/// 小程序secretID
/// </summary>
private const string secid = "e752e4fba67526eca21313a18c96a58f";
/// <summary>
/// 获取微信openid
/// </summary>
/// <param name="code"></param>
/// <returns></returns>
[HttpGet("getOpenid")]
public Task<Result> GetOpenId(string code) => wechatMessagerClient.GetOpenId(code);
}

578
24Hour/Controllers/system/SystemControllerController.cs

@ -1,4 +1,7 @@
using com.sun.xml.@internal.ws.api.model;
using AutoMapper;
using com.sun.corba.se.spi.orbutil.fsm;
using com.sun.org.apache.bcel.@internal.generic;
using com.sun.xml.@internal.ws.api.model;
using Elight.Entity;
using Elight.Entity.SystemModel;
using Elight.Logic;
@ -28,13 +31,17 @@ namespace _24Hour.Controllers.system
private readonly WriteSysLog _logs;//操作日志
App_Sys_UserModel _userdata = new App_Sys_UserModel();//当前用户
private readonly ILogger<LoginController> _logger;//日志
private readonly WechatMessagerClient wechatMessagerClient;
private readonly IMapper _mapper;
Result result = new Result();
public SystemControllerController(ILogger<LoginController> logger, SqlSugarClient db, WriteSysLog logs, User user)
public SystemControllerController(IMapper mapper, ILogger<LoginController> logger, SqlSugarClient db, WriteSysLog logs, User user, WechatMessagerClient _wechatMessagerClient)
{
_logger = logger;
_db = db;
_logs = logs;
_userdata = user.Userdata();
this.wechatMessagerClient = _wechatMessagerClient;
_mapper = mapper;
}
#endregion
#region 用户管理
@ -61,7 +68,7 @@ namespace _24Hour.Controllers.system
[Route("QueryUserlist")]
public async Task<Result> QueryUserlist()
{
var Unitlist = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.isdeactivate == 0 && q.usertype == 0 && q.unitCode == _userdata.unitCode && q.phone != "admin"&& q.usertype == 0).ToListAsync();
var Unitlist = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.isdeactivate == 0 && q.usertype == 0 && q.unitCode == _userdata.unitCode && q.phone != "admin" && q.usertype == 0).ToListAsync();
result.IsSucceed = true;
result.result = Unitlist.OrderByDescending(q => q.createtime).ToList();
return result;
@ -77,15 +84,22 @@ namespace _24Hour.Controllers.system
{
RefAsync<int> totalNumber = 0;//总数据
var userlist = new List<dynamic>();
var Unitlist = await _db.Queryable<App_Sys_UnitModel>().Where(q => q.IsDelete == 0).ToListAsync();
var Departlist = await _db.Queryable<App_Sys_DepartModel>().Where(q => q.IsDelete == 0).ToListAsync();
//获取单位信息
var Unitlist = await _db.Queryable<App_Sys_UnitModel>().Where(q => q.IsDelete == 0).ToListAsync();
//获取部门信息
var Departlist = await _db.Queryable<App_Sys_DepartModel>().Where(q => q.IsDelete == 0).ToListAsync();
//获取角色信息
var RoleModel = _db.Queryable<App_Sys_RoleUserModel>()
.LeftJoin<App_Sys_RoleModel>((o, i) => o.roleId == i.Id && o.IsDelete == 0 && i.IsDeleted == 0)
.Select((o, i) => new App_Sys_RoleDto { Id = o.roleId, name = i.name, userId = o.roleuserId })
.ToList();
var list = await _db.Queryable<App_Sys_UserModel>()
.WhereIF(!UserModel.name.IsNull(), q => q.name.Contains(UserModel.name))
.WhereIF(!UserModel.phone.IsNull(), q => q.phone.Contains(UserModel.phone))
.WhereIF(!UserModel.duties.IsNull(), q => q.duties.Contains(UserModel.duties))
.WhereIF(!UserModel.cardId.IsNull(), q => q.cardId.Contains(UserModel.cardId))
.Where(q => q.IsDeleted == 0 &&q.phone!="admin" && q.usertype == 0)
.Where(q => q.IsDeleted == 0 && q.phone != "admin" && q.usertype == 0)
.ToPageListAsync(UserModel.PageIndex, UserModel.PageSize, totalNumber);
UserModel.RowsCount = totalNumber;
list.ForEach(q =>
@ -109,7 +123,9 @@ namespace _24Hour.Controllers.system
q.identity,
q.createtime,
unitname = Unitdata?.unitname,
departname = Departdata?.departname
departname = Departdata?.departname,
roleId = RoleModel.FirstOrDefault(x => x.userId == q.Id)?.Id,
roleName = RoleModel.FirstOrDefault(x => x.userId == q.Id)?.name,
});
});
var data = new { Paging = UserModel, Data = userlist };
@ -134,8 +150,10 @@ namespace _24Hour.Controllers.system
.WhereIF(!UserModel.phone.IsNull(), q => q.phone.Contains(UserModel.phone))
.WhereIF(!UserModel.duties.IsNull(), q => q.duties.Contains(UserModel.duties))
.WhereIF(!UserModel.cardId.IsNull(), q => q.cardId.Contains(UserModel.cardId))
.WhereIF(UserModel.audit!=null, q => q.audit==UserModel.audit)
.Where(q => q.IsDeleted == 0 && q.usertype == 1).ToPageListAsync(UserModel.PageIndex, UserModel.PageSize, totalNumber);
.WhereIF(UserModel.audit != null, q => q.audit == UserModel.audit)
.WhereIF(UserModel.isdeactivate >= 0, q => q.isdeactivate == UserModel.isdeactivate)
.Where(q => q.IsDeleted == 0 && q.usertype == 1)
.ToPageListAsync(UserModel.PageIndex, UserModel.PageSize, totalNumber);
UserModel.RowsCount = totalNumber;
var data = new QueryResult<App_Sys_UserModel>(UserModel, list);
result.IsSucceed = true;
@ -149,11 +167,12 @@ namespace _24Hour.Controllers.system
/// <returns></returns>
[HttpPost]
[Route("AddUser0")]
public async Task<Result> AddUser0(App_Sys_UserModel UserModel)
public async Task<Result> AddUser0(App_Sys_UserDto UserModel)
{
try
{
var data = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.phone == UserModel.phone || q.cardId == UserModel.cardId).FirstAsync();
{
var UserDate = _mapper.Map<App_Sys_UserDto, App_Sys_UserModel>(UserModel);
var data = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.phone == UserDate.phone || q.cardId == UserDate.cardId).FirstAsync();
if (data != null)
{
result.IsSucceed = false;
@ -161,13 +180,28 @@ namespace _24Hour.Controllers.system
return result;
}
_db.BeginTran();
UserModel.Id = Guid.NewGuid().ToString();
UserModel.createuserId = _userdata.Id.ToString();
UserModel.createusername = _userdata.name;
UserModel.usertype = 0;
UserDate.Id = Guid.NewGuid().ToString();
UserDate.createuserId = _userdata.Id.ToString();
UserDate.createusername = _userdata.name;
UserDate.usertype = 0;
//默认密码
UserModel.Password = string.IsNullOrEmpty(UserModel.Password) ? Elight.Utility.Encrypt.Md5.Encrypt32($"mr123456").ToLower() : Elight.Utility.Encrypt.Md5.Encrypt32(UserModel.Password).ToLower();
var num = await _db.Insertable(UserModel).ExecuteCommandAsync();
UserDate.Password = string.IsNullOrEmpty(UserDate.Password) ? Elight.Utility.Encrypt.Md5.Encrypt32($"mr123456").ToLower() : Elight.Utility.Encrypt.Md5.Encrypt32(UserDate.Password).ToLower();
var roledata = new App_Sys_RoleUserModel();
if (!string.IsNullOrEmpty(UserModel.roleId))
{
//添加角色用户信息
roledata = new App_Sys_RoleUserModel()
{
Id = Guid.NewGuid().ToString(),
roleId = UserModel.roleId,
roleuserId = UserDate.Id,
userId = _userdata.Id.ToString(),
username = _userdata.name,
};
}
var num = await _db.Insertable(UserDate).ExecuteCommandAsync();
if (roledata.Id != null)
await _db.Insertable(roledata).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
@ -196,7 +230,7 @@ namespace _24Hour.Controllers.system
{
try
{
var model = await _db.Queryable<App_Sys_UserModel>().Where(x => x.Id== UserModel.Id).FirstAsync();
var model = await _db.Queryable<App_Sys_UserModel>().Where(x => x.Id == UserModel.Id).FirstAsync();
if (model == null)
{
result.IsSucceed = false;
@ -211,10 +245,10 @@ namespace _24Hour.Controllers.system
return result;
}
model.Password= newpass;
model.Password = newpass;
_db.BeginTran();
var num = await _db.Updateable(model).UpdateColumns(it => new { it.Password }).ExecuteCommandAsync();
var num = await _db.Updateable(model).UpdateColumns(it => new { it.Password }).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
@ -230,8 +264,7 @@ namespace _24Hour.Controllers.system
}
_logs.WriteSysLogadd("用户管理", "修改人员信息", result, _db);
return result;
}
}
/// <summary>
/// 修改用户
/// </summary>
@ -239,24 +272,48 @@ namespace _24Hour.Controllers.system
/// <returns></returns>
[HttpPost]
[Route("UpdateUser")]
public async Task<Result> UpdateUser(App_Sys_UserModel UserModel)
public async Task<Result> UpdateUser(App_Sys_UserDto UserModel)
{
try
{
var model = await _db.Queryable<App_Sys_UserModel>().Where(x => x.Id== UserModel.Id).FirstAsync();
var model = await _db.Queryable<App_Sys_UserModel>().Where(x => x.Id == UserModel.Id).FirstAsync();
if (model != null)
{
model.unitCode=UserModel.unitCode;
model.department=UserModel.department;
model.name=UserModel.name;
model.sex=UserModel.sex;
model.duties=UserModel.duties;
model.phone=UserModel.phone;
model.cardId=UserModel.cardId;
}
model.unitCode = UserModel.unitCode;
model.department = UserModel.department;
model.name = UserModel.name;
model.sex = UserModel.sex;
model.duties = UserModel.duties;
model.phone = UserModel.phone;
model.cardId = UserModel.cardId;
}
_db.BeginTran();
var num = await _db.Updateable(model).UpdateColumns(it => new { it.unitCode, it.department, it.name, it.sex, it.duties, it.phone, it.cardId }).ExecuteCommandAsync();
//var num = await _db.Updateable(UserModel).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync();
//判断角色不等于空进
if (!string.IsNullOrEmpty(UserModel.roleId))
{
if (_db.Queryable<App_Sys_RoleUserModel>().Any(x => x.IsDelete == 0 && x.roleuserId == UserModel.Id))
{
//查询角色用户是否存在
var rolemodel = await _db.Queryable<App_Sys_RoleUserModel>().Where(x => x.IsDelete == 0 && x.roleuserId == UserModel.Id).FirstAsync();
rolemodel.roleId = UserModel.roleId;
await _db.Updateable(rolemodel).UpdateColumns(it => new { it.roleId }).ExecuteCommandAsync();
}
else
{
var rolemodel = new App_Sys_RoleUserModel()
{
Id = Guid.NewGuid().ToString(),
roleId = UserModel.roleId,
roleuserId = UserModel.Id,
userId = _userdata.Id.ToString(),
username = _userdata.name,
};
if (rolemodel != null)
await _db.Insertable(rolemodel).ExecuteCommandAsync();
}
}
_db.CommitTran();
if (num > 0)
{
@ -272,6 +329,89 @@ namespace _24Hour.Controllers.system
}
_logs.WriteSysLogadd("用户管理", "修改人员信息", result, _db);
return result;
}
[HttpGet]
[Route("UserUnbindWechat")]
public async Task<Result> UserUnbindWechat()
{
try
{
var model = await _db.Queryable<App_Sys_UserModel>()
.FirstAsync(x => x.Id == _userdata.Id && x.IsDeleted == 0);
if (model != null)
{
model.wechatId = string.Empty;
}
_db.BeginTran();
var num = await _db.Updateable(model).UpdateColumns(it => new { it.wechatId }).ExecuteCommandAsync();
//var num = await _db.Updateable(UserModel).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
result.IsSucceed = true;
result.result = "";
}
}
catch (System.Exception ex)
{
_db.RollbackTran();
result.IsSucceed = false;
result.Message = ex.Message;
}
_logs.WriteSysLogadd("用户管理", "修改人员信息", result, _db);
return result;
}
/// <summary>
/// 用户绑定微信openid
/// </summary>
/// <param name="openid"></param>
/// <returns></returns>
[HttpGet]
[Route("UserBindWechat")]
public async Task<Result> UserBindWechat(string code)
{
try
{
var getopenid = await wechatMessagerClient.GetOpenId(code);
if (getopenid.IsSucceed == false)
{
return getopenid;
}
string openid = getopenid.result;
if (await _db.Queryable<App_Sys_UserModel>().AnyAsync(x => x.wechatId == openid && x.IsDeleted == 0))
{
result.IsSucceed = false;
result.Message = "当前微信已与其他账号绑定";
return result;
}
var model = await _db.Queryable<App_Sys_UserModel>().Where(x => x.Id == _userdata.Id && x.IsDeleted == 0).FirstAsync();
if (model != null)
{
model.wechatId = getopenid.result;
}
_db.BeginTran();
var num = await _db.Updateable(model).UpdateColumns(it => new { it.wechatId }).ExecuteCommandAsync();
//var num = await _db.Updateable(UserModel).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
result.IsSucceed = true;
result.result = getopenid.result;
}
}
catch (System.Exception ex)
{
_db.RollbackTran();
result.IsSucceed = false;
result.Message = ex.Message;
}
_logs.WriteSysLogadd("用户管理", "修改人员信息", result, _db);
return result;
}
/// <summary>
@ -493,6 +633,114 @@ namespace _24Hour.Controllers.system
_logs.WriteSysLogadd("用户管理", "用户头像替换", result, _db);
return result;
}
/// <summary>
/// 修改部门证件 departmentPhoto
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
[HttpGet]
[Route("EditDepartmentPhoto")]
public async Task<Result> EditDepartmentPhoto(string photo)
{
try
{
_db.BeginTran();
var userlist = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.Id == _userdata.Id).ToListAsync();
userlist.ForEach(q =>
{
//头像地址
q.departmentPhoto = photo;
});
var num = await _db.Updateable(userlist).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
result.IsSucceed = true;
result.result = "替换成功";
}
}
catch (System.Exception ex)
{
_db.RollbackTran();
result.IsSucceed = false;
result.Message = ex.Message;
LogService.WriteLog(ex, "用户部门证件替换");
}
_logs.WriteSysLogadd("用户管理", "用户部门证件替换", result, _db);
return result;
}
/// <summary>
/// 修改身份证件 Identityphoto
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
[HttpGet]
[Route("EditIdentityphoto")]
public async Task<Result> EditIdentityphoto(string photo)
{
try
{
_db.BeginTran();
var userlist = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.Id == _userdata.Id).ToListAsync();
userlist.ForEach(q =>
{
//头像地址
q.identityphoto = photo;
});
var num = await _db.Updateable(userlist).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
result.IsSucceed = true;
result.result = "替换成功";
}
}
catch (System.Exception ex)
{
_db.RollbackTran();
result.IsSucceed = false;
result.Message = ex.Message;
LogService.WriteLog(ex, "用户身份证件替换");
}
_logs.WriteSysLogadd("用户管理", "用户身份证件替换", result, _db);
return result;
}
/// <summary>
/// 修改身份证 cardIdphoto
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
[HttpGet]
[Route("EditCardIdphoto")]
public async Task<Result> EditCardIdphoto(string photo)
{
try
{
_db.BeginTran();
var userlist = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.Id == _userdata.Id).ToListAsync();
userlist.ForEach(q =>
{
//头像地址
q.cardIdphoto = photo;
});
var num = await _db.Updateable(userlist).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
result.IsSucceed = true;
result.result = "替换成功";
}
}
catch (System.Exception ex)
{
_db.RollbackTran();
result.IsSucceed = false;
result.Message = ex.Message;
LogService.WriteLog(ex, "用户身份证替换");
}
_logs.WriteSysLogadd("用户管理", "用户身份证替换", result, _db);
return result;
}
/// <summary>
/// app--认证接口
@ -503,7 +751,7 @@ namespace _24Hour.Controllers.system
/// <returns>律师信息审核认证</returns>
[HttpGet]
[Route("Examine")]
public async Task<Result> Examine(string Id, int status,string describe)
public async Task<Result> Examine(string Id, int status, string describe)
{
try
{
@ -519,7 +767,7 @@ namespace _24Hour.Controllers.system
if (num > 0)
{
result.IsSucceed = true;
result.result = status==0?"认证通过":"认证不通过";
result.result = status == 0 ? "认证通过" : "认证不通过";
}
}
catch (System.Exception ex)
@ -543,11 +791,12 @@ namespace _24Hour.Controllers.system
[HttpPost]
[Route("QueryRole")]
public async Task<Result> QueryRole(App_Sys_RoleInput roledata)
{
{
RefAsync<int> totalNumber = 0;//总数据
var list = await _db.Queryable<App_Sys_RoleModel>()
.WhereIF(roledata.name.NotNull(), q => q.name.Contains(roledata.name))
.WhereIF(roledata.unitCode.NotNull(), q => q.unitCode.Contains(roledata.unitCode))
.WhereIF(_userdata.phone != "admin", x => x.userId == _userdata.Id)
.Where(q => q.IsDeleted == 0).ToPageListAsync(roledata.PageIndex, roledata.PageSize, totalNumber);
roledata.RowsCount = totalNumber;
var data = new QueryResult<App_Sys_RoleModel>(roledata, list);
@ -657,7 +906,7 @@ namespace _24Hour.Controllers.system
#region 角色菜单管理
/// <summary>
/// 获取角色下的所有菜单信息
/// 获取角色下的所有菜单Id
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
@ -668,11 +917,13 @@ namespace _24Hour.Controllers.system
var totalCount = 0;
var list = await _db.Queryable<App_Sys_RoleMenuModel>()
.WhereIF(!roledata.roleId.IsNull(), q => q.roleId == roledata.roleId)
.Where(q => q.IsDeleted == 0).Select(x => x.menuId).ToListAsync();
.Where(q => q.IsDelete == 0).Select(x => x.menuId).ToListAsync();
//roledata.PageCount = totalCount;
//var data = new QueryResult<App_Sys_RoleModel>(roledata, list);
var ids = "";
list.ForEach(x => ids += $"{x},");
result.IsSucceed = true;
result.result = list;
result.result = ids.Trim(',').Split(",");
return result;
}
@ -687,20 +938,36 @@ namespace _24Hour.Controllers.system
{
try
{
if (string.IsNullOrEmpty(RoleMenudata.RoleMenuIds))
{
result.IsSucceed = false;
result.result = "没有选中项";
return result;
}
//查询角色下的菜单
var list = await _db.Queryable<App_Sys_RoleMenuModel>().Where(q => q.roleId== RoleMenudata.Id).ToListAsync();
var list = await _db.Queryable<App_Sys_RoleMenuModel>().Where(q => q.roleId == RoleMenudata.Id).ToListAsync();
_db.BeginTran();
//删除角色下的菜单
await _db.Deleteable(list).ExecuteCommandAsync();
//添加角色菜单
RoleMenudata.RoleMenulist.ForEach(data =>
{
data.Id = Guid.NewGuid().ToString();
data.roleId = RoleMenudata.Id;
data.userId = _userdata.Id.ToString();
data.username = _userdata.name;
});
var num = await _db.Insertable(RoleMenudata.RoleMenulist).ExecuteCommandAsync();
var RoleMenulist = RoleMenudata.RoleMenuIds.Split(",").ToList();
var menulist = new List<App_Sys_RoleMenuModel>();
if (RoleMenulist.Count > 0)
{
//添加角色菜单
for (int i = 0; i < RoleMenulist.Count; i++)
{
var App_Sys_RoleMenuModel = new App_Sys_RoleMenuModel()
{
Id = Guid.NewGuid().ToString(),
roleId = RoleMenudata.Id,
userId = _userdata.Id.ToString(),
username = _userdata.name,
menuId = RoleMenulist[i],
};
menulist.Add(App_Sys_RoleMenuModel);
}
}
var num = await _db.Insertable(menulist).ExecuteCommandAsync();
_db.CommitTran();
if (num > 0)
{
@ -733,7 +1000,7 @@ namespace _24Hour.Controllers.system
var userlist = await _db.Queryable<App_Sys_RoleMenuModel>().Where(q => q.roleId == Currency.tyId).In(q => q.menuId, Currency.id).ToListAsync();
userlist.ForEach(q =>
{
q.IsDeleted = 1;
q.IsDelete = 1;
});
var num = await _db.Updateable(userlist).ExecuteCommandAsync();
_db.CommitTran();
@ -768,7 +1035,7 @@ namespace _24Hour.Controllers.system
//获取角色下得所有用户id
var list = await _db.Queryable<App_Sys_RoleUserModel>()
.WhereIF(roledata.roleId.IsNull(), q => q.roleId == roledata.roleId)
.Where(q => q.IsDeleted == 0).Select(x => x.roleuserId).ToListAsync();
.Where(q => q.IsDelete == 0).Select(x => x.roleuserId).ToListAsync();
//roledata.PageCount = totalCount;
//var data = new QueryResult<App_Sys_RoleMenuModel>(roledata, list);
result.IsSucceed = true;
@ -832,7 +1099,7 @@ namespace _24Hour.Controllers.system
var userlist = await _db.Queryable<App_Sys_RoleUserModel>().Where(q => q.roleId == Currency.tyId).In(q => q.roleuserId, Currency.id).ToListAsync();
userlist.ForEach(q =>
{
q.IsDeleted = 1;
q.IsDelete = 1;
});
var num = await _db.Updateable(userlist).ExecuteCommandAsync();
_db.CommitTran();
@ -1073,7 +1340,7 @@ namespace _24Hour.Controllers.system
try
{
//添加单位前判断单位编码是否重复
var data = await _db.Queryable<App_Sys_DepartModel>().Where(q => q.departCode == Departdata.departCode && q.IsDelete==0).FirstAsync();
var data = await _db.Queryable<App_Sys_DepartModel>().Where(q => q.departCode == Departdata.departCode && q.IsDelete == 0).FirstAsync();
if (data != null)
{
@ -1115,7 +1382,7 @@ namespace _24Hour.Controllers.system
try
{
//判断单位编码是否已存在
var data = await _db.Queryable<App_Sys_DepartModel>().Where(q => q.departCode == Departdata.departCode && q.IsDelete==0).FirstAsync();
var data = await _db.Queryable<App_Sys_DepartModel>().Where(q => q.departCode == Departdata.departCode && q.IsDelete == 0).FirstAsync();
if (data != null)
{
@ -1189,30 +1456,79 @@ namespace _24Hour.Controllers.system
[Route("GetQueryMenulist")]
public async Task<Result> GetQueryMenulist()
{
var list = await _db.Queryable<App_Sys_MenuModel>().Where(q => q.IsDelete == 0 || q.pid==null || q.pid == "").Select(q => new { q.Id, q.name }).ToListAsync();
var list = await _db.Queryable<App_Sys_MenuModel>().Where(q => q.IsDelete == 0 || q.pid == null || q.pid == "").Select(q => new { q.Id, q.name }).ToListAsync();
result.IsSucceed = true;
result.result = list;
return result;
}
/// <summary>
/// 单树型查询
/// 单树型查询
/// </summary>
/// <param name="info"></param>
/// <param name="Menudata"></param>
/// <returns></returns>
[HttpPost]
[Route("QueryMenuTree")]
public async Task<Result> QueryMenuTree(App_Sys_MenuInput Menudata)
{
{
var roleids = new List<string?>();
if (_userdata.phone != "admin")
{
var userroleinfo = await _db.Queryable<App_Sys_RoleUserModel>().FirstAsync(x => x.roleuserId == _userdata.Id);
roleids = await _db.Queryable<App_Sys_RoleMenuModel>()
.WhereIF(!userroleinfo.roleId.IsNull(), q => q.roleId == userroleinfo.roleId)
.Where(q => q.IsDelete == 0).Select(x => x.menuId).ToListAsync();
}
var treelist = await _db.Queryable<App_Sys_MenuTree>()
.WhereIF(!Menudata.name.IsNull(), q => q.name.Contains(Menudata.name))
.WhereIF(!Menudata.title.IsNull(), q => q.title.Contains(Menudata.title))
.Where(q => q.IsDelete == 0).OrderBy(q => q.sortnum, OrderByType.Desc).ToTreeAsync(it => it.children, it => it.pid, null);
result.IsSucceed = true;
result.result = treelist;
return result;
.Where(q => q.IsDelete == 0)
.OrderBy(q => q.sortnum, OrderByType.Asc)
.ToTreeAsync(it => it.children, it => it.pid, null);
if (_userdata.phone != "admin")
{
foreach (var item in treelist)
{
if (roleids.Contains(item.Id))
{
if (item.children != null)
{
item.children = item.children.Where(x => roleids.Contains(x.Id)).ToList();
}
}
else
{
if (item.children == null)
{
item.IsDelete = -1;
}
else
{
if (item.children.Any(x => roleids.Contains(x.Id)))
{
item.children = item.children.Where(x => roleids.Contains(x.Id)).ToList();
}
else
{
item.IsDelete = -1;
}
}
}
}
treelist = treelist.Where(x => x.IsDelete != -1).ToList();
result.IsSucceed = true;
result.result = treelist;
return result;
}
else
{
result.IsSucceed = true;
result.result = treelist;
return result;
}
}
/// <summary>
/// 菜单分页查询
/// </summary>
@ -1357,60 +1673,86 @@ namespace _24Hour.Controllers.system
{
var list = new List<dynamic>();
//获取父级菜单
var pidlist = await _db.Queryable<App_Sys_MenuModel>().Where(q => q.IsDelete == 0).ToListAsync();
var pidlist = await _db.Queryable<App_Sys_MenuModel>().Where(q => q.IsDelete == 0 && string.IsNullOrEmpty(q.pid)).ToListAsync();
//联表查询该用户菜单
var menulist = await _db.Queryable<App_Sys_RoleUserModel>().Where(q => q.roleuserId == _userdata.Id)
.LeftJoin<App_Sys_RoleMenuModel>((o, cus) => o.roleId == cus.roleId)
.LeftJoin<App_Sys_MenuModel>((o, cus, menu) => o.roleId == cus.roleId)
.Where((o, cus, menu) => o.IsDeleted == 0 && cus.IsDeleted == 0 && menu.IsDelete == 0)
.Select((o, cus, menu) => menu)
.ToListAsync();
//通过分组父级菜单
var datalist = menulist.GroupBy(q => q.pid).Select(q => new { pid = q.Key, dalist = q.ToList() }).ToList();
datalist.ForEach(item =>
{
var data = pidlist.Where(q => q.Id == item.pid).FirstOrDefault();
if (data != null)
{
var childrenlist = new List<dynamic>();
//添加子菜单
item.dalist.ForEach(it =>
{
childrenlist.Add(new
{
path = it.path,
name = it.name,
component = it.component,
//redirect = it.redirect,
meta = new
{
title = it.title,
//hideMenu = it.hideMenu,
//hideBreadcrumb = it.hideBreadcrumb,
//currentActiveMenu = it.currentActiveMenu,
icon = it.icon,
},
});
});
//添加父级菜单
list.Add(new
{
path = data.path,
name = data.name,
component = data.component,
//redirect = data.redirect,
meta = new
{
title = data.title,
//hideChildrenInMenu = data.hideChildrenInMenu,
icon = data.icon,
},
children = childrenlist
});
}
});
var menulist = await Task.Run(async () =>
{
if (_userdata.phone == "admin")
{
return await _db.Queryable<App_Sys_MenuModel>()
.Where(x => x.IsDelete == 0)
.ToListAsync();
}
else
{
return await _db.Queryable<App_Sys_RoleUserModel>()
.Where(x => x.roleuserId == _userdata.Id)
.LeftJoin<App_Sys_RoleMenuModel>((o, cus) => o.roleId == cus.roleId)
.LeftJoin<App_Sys_MenuModel>((o, cus, menu) => cus.menuId == menu.Id)
.Where((o, cus, menu) => o.IsDelete == 0 && cus.IsDelete == 0 && menu.IsDelete == 0)
.Select((o, cus, menu) => menu)
.ToListAsync();
}
});
//通过分组父级菜单
var datalist = menulist.OrderBy(q => q.sortnum)
.GroupBy(q => q.pid)
.Select(q => new { pid = q.Key, dalist = q.OrderBy(q => q.sortnum).ToList() })
.ToList();
if (datalist.Count > 0)
{
pidlist.OrderBy(q => q.sortnum).ToList().ForEach(item =>
{
var data = datalist.Where(q => q.pid == item.Id).FirstOrDefault();
var childrenlist = new List<dynamic>();
if (data != null)
{
//添加子菜单
data.dalist.ForEach(it =>
{
childrenlist.Add(new
{
path = it.path,
name = it.name,
component = it.component,
//redirect = it.redirect,
meta = new
{
title = it.title,
//hideMenu = it.hideMenu,
//hideBreadcrumb = it.hideBreadcrumb,
//currentActiveMenu = it.currentActiveMenu,
icon = it.icon,
},
});
});
}
var fjdata = datalist.Where(q => string.IsNullOrEmpty(q.pid)).FirstOrDefault()?.dalist.FirstOrDefault(q => q.Id == item.Id);
if (childrenlist.Count > 0 || fjdata != null)
{
//添加父级菜单
list.Add(new
{
path = item.path,
name = item.name,
component = item.component,
//redirect = data.redirect,
meta = new
{
title = item.title,
//hideChildrenInMenu = data.hideChildrenInMenu,
icon = item.icon,
},
children = childrenlist
});
}
});
}
result.IsSucceed = true;
result.result = list;

26
24Hour/Dockerfile

@ -0,0 +1,26 @@
# 选择从什么镜像基础上创建我们的镜像,相当于选择我们依赖的环境
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
LABEL description=""
LABEL version="1.0"
# 指定工作目录
WORKDIR /app
# 把当前目录复制到镜像的 app目录
COPY . .
#时区设置
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
# 暴露的端口
#EXPOSE 80
EXPOSE 8098
ENV ASPNETCORE_URLS=http://+:8098
ENV ASPNETCORE_ENVIRONMENT Production
# 最后设置启动的dll
ENTRYPOINT ["dotnet", "24Hour.dll"]

41
24Hour/Filter/RequestLoggingFilter.cs

@ -0,0 +1,41 @@
using Elight.Utility.Extensions;
using Microsoft.AspNetCore.Mvc.Filters;
using System.Diagnostics;
namespace _24Hour.Filter
{
public class RequestLoggingFilter : IActionFilter
{
private readonly ILogger<RequestLoggingFilter> logger;//注入serilog
private Stopwatch _stopwatch;//统计程序耗时
public RequestLoggingFilter(ILogger<RequestLoggingFilter> logger)
{
this.logger = logger;
_stopwatch = Stopwatch.StartNew();
}
public async void OnActionExecuted(ActionExecutedContext context)
{
_stopwatch.Stop();
var request = context.HttpContext.Request;
var response = context.HttpContext.Response;
var info = $"End Required metod:[{request.Method}],Path:[{request.Path}],StatusCode:[{response.StatusCode}],Times[{_stopwatch.Elapsed.TotalMilliseconds}],QueryString[{request.QueryString}],Result[{context.Result.ConvertToJsonStr()}]";
if (info.Length>1024)
{
info = info.Substring(0, 1024);
}
logger.LogInformation(info);
}
public void OnActionExecuting(ActionExecutingContext context)
{
//var request = context.HttpContext.Request;
//var info = $"Start request method:[{request?.Method}] path:[{request?.Path}]";
//if (info.Length > 1024)
//{
// info = info.Substring(0, 1024);
//}
//logger.LogInformation(info);
}
}
}

74
24Hour/Program.cs

@ -16,15 +16,35 @@ using Quartz.Spi;
using Microsoft.IdentityModel.Logging;
using System.Collections.Specialized;
using System.Runtime.InteropServices;
using AutoMapper;
using System.Reflection;
using Elight.Entity;
using _24Hour;
using Microsoft.Extensions.DependencyInjection;
using _24Hour.Filter;
#region builder
Console.Title = "24HourServer";
var builder = WebApplication.CreateBuilder(args);
var Configuration = builder.Configuration;
builder.WebHost.UseUrls(Configuration.GetSection("UrlsConfiguration:Urls").Value.Split(","));
// Add services to the container.
builder.Services.AddControllers().AddJsonOptions(options =>
#region
AutoMapper.IConfigurationProvider config = new MapperConfiguration(cfg =>
{
cfg.AddProfile<AuthManageProfile>();
});
builder.Services.AddSingleton(config);
builder.Services.AddScoped<IMapper, Mapper>();
#endregion
builder.Services.AddControllers(ops =>
{
ops.Filters.Add<RequestLoggingFilter>();
}).AddJsonOptions(options =>
{
options.JsonSerializerOptions.PropertyNamingPolicy = null;
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.DateTimeNullableConverter());
@ -34,10 +54,17 @@ builder.Services.AddControllers().AddJsonOptions(options =>
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<decimal>());
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<float>());
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<Guid>());
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<bool>());
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<bool>());
});
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Host.ConfigureLogging(opt =>
{
});
#region Swagger文件
builder.Services.AddSwaggerGen(c =>
{
@ -47,8 +74,14 @@ builder.Services.AddSwaggerGen(c =>
c.OrderActionsBy(o => o.RelativePath);
var basePath = System.AppDomain.CurrentDomain.BaseDirectory;//获取应用程序所在目录(绝对,不受工作目录影响,建议采用此方法获取路径)
var xmlPath = Path.Combine(basePath, "24Hour.xml");
var xmlPathentity = Path.Combine(basePath, "Elight.Entity.xml");
var xmlPathlogic = Path.Combine(basePath, "Elight.Logic.xml");
if (File.Exists(xmlPath))//避免没有该文件时报错
c.IncludeXmlComments(xmlPath, true);
c.IncludeXmlComments(xmlPath, true);
if (File.Exists(xmlPathentity))//避免没有该文件时报错
c.IncludeXmlComments(xmlPathentity, true);
if (File.Exists(xmlPathlogic))//避免没有该文件时报错
c.IncludeXmlComments(xmlPathlogic, true);
//添加Jwt验证设置
c.AddSecurityRequirement(new OpenApiSecurityRequirement()
{
@ -83,6 +116,8 @@ builder.Services.AddCors(policy =>
.AllowAnyMethod()
.WithExposedHeaders("X-Pagination"));
});
//builder.Services.AddCors(options => options.AddPolicy("CorsPolicy",
//c =>
//{
@ -152,6 +187,20 @@ builder.Services.AddAuthentication(options =>
}).AddScheme<AuthenticationSchemeOptions, ResponseAuthenticationHandler>(nameof(ResponseAuthenticationHandler), o => { });
builder.Services.AddHttpClient<WechatMessagerClient>(opt =>
{
opt.BaseAddress = new Uri("https://api.weixin.qq.com/sns");
});
builder.Services.AddHttpClient<TwentySystemProxyClient>(opt =>
{
opt.BaseAddress = new Uri(Configuration.GetSection("CaseTwenty:SysAddress").Value);
});
var mysqlconnstr = Configuration.GetSection("CaseTwenty:SysAddress").Value;
var BaseAddress = Configuration.GetSection("ConnectionStrings:MySQLConnString").Value;
Console.WriteLine($"Mysql Connstring : {mysqlconnstr}");
Console.WriteLine($"Mysql Connstring : {BaseAddress}");
//builder.Services.AddAuthorization();
builder.Services.AddHttpContextAccessor();
builder.Services.AddScoped<WebSocketController>();
@ -169,6 +218,11 @@ builder.Services.AddScoped<SqlSugarClient>(sp =>
});
return db;
});
//添加httpclient 日志记录
builder.Services.AddHttpLogging(logging =>
{
logging.LoggingFields = Microsoft.AspNetCore.HttpLogging.HttpLoggingFields.All;
});
#region 定时任务
// 配置Quartz.NET调度器
@ -178,6 +232,9 @@ builder.Services.TryAddSingleton<WsJob>();
builder.Services.TryAddSingleton<YgJob>();
builder.Services.AddHostedService<QuartzHostedService>(); // 注册Quartz.NET的托管服务
builder.Logging.AddLog4Net("log4net.config");
//Task.Factory.StartNew(() =>
//{
// try
@ -218,6 +275,10 @@ app.UseWebSockets(new WebSocketOptions
app.UseStaticFiles();
//app.UseHttpsRedirection();
//路由
//使用httpclient日志记录 必须在UseStaticFiles下面
app.UseHttpLogging();
app.UseRouting();
app.UseAuthentication(); // 启用身份验证中间件
app.UseAuthorization(); // 启用授权中间件
@ -231,7 +292,8 @@ app.UseSwagger();//
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "24小时一体机 API V1");
c.RoutePrefix = string.Empty;
c.RoutePrefix = string.Empty;
});
#endregion

11
24Hour/Properties/PublishProfiles/FolderProfile.pubxml.user

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project>
<PropertyGroup>
<_PublishTargetUrl>D:\24小时发布</_PublishTargetUrl>
<History>True|2023-07-01T19:22:32.2918206Z;True|2023-07-02T02:25:58.6238404+08:00;True|2023-07-02T02:21:25.4053957+08:00;True|2023-07-02T02:09:02.6137949+08:00;True|2023-07-02T00:23:44.4442673+08:00;True|2023-07-01T23:42:35.7302162+08:00;True|2023-07-01T23:24:47.4663991+08:00;True|2023-07-01T22:22:56.9799185+08:00;True|2023-07-01T22:04:26.8941882+08:00;True|2023-07-01T21:40:11.5842496+08:00;True|2023-07-01T21:12:07.0048729+08:00;True|2023-07-01T18:55:25.7547257+08:00;True|2023-07-01T15:55:14.1686837+08:00;True|2023-07-01T15:52:20.6931207+08:00;True|2023-07-01T15:16:19.0847303+08:00;True|2023-07-01T14:32:30.7938970+08:00;True|2023-07-01T14:11:46.9198753+08:00;True|2023-07-01T13:52:41.7443973+08:00;True|2023-07-01T12:05:00.1914915+08:00;True|2023-07-01T11:35:15.2688362+08:00;True|2023-07-01T11:15:50.0622714+08:00;True|2023-07-01T10:12:33.0301410+08:00;True|2023-06-30T20:53:10.2775714+08:00;True|2023-06-30T20:47:24.3123829+08:00;True|2023-06-30T18:44:10.1995292+08:00;True|2023-06-30T18:35:05.6876552+08:00;True|2023-06-30T14:33:30.1363930+08:00;True|2023-06-30T14:17:02.8263130+08:00;True|2023-06-30T14:16:41.6529398+08:00;True|2023-06-30T10:20:34.2470363+08:00;True|2023-06-30T09:51:41.3251931+08:00;True|2023-06-29T16:07:09.3334291+08:00;True|2023-06-29T15:56:52.9510718+08:00;True|2023-06-29T15:49:16.8161173+08:00;True|2023-06-27T18:06:12.3724487+08:00;True|2023-06-27T17:22:11.4211972+08:00;True|2023-06-27T15:48:34.1728433+08:00;True|2023-06-13T18:05:11.2568840+08:00;False|2023-06-13T18:04:56.9546003+08:00;</History>
<LastFailureDetails />
</PropertyGroup>
</Project>

204
24Hour/TwentySystemProxyClient.cs

@ -0,0 +1,204 @@
using com.sun.xml.@internal.xsom;
using Elight.Entity.APPDto.Lawyer;
using Elight.Utility;
using Elight.Utility.Code;
using Elight.Utility.Extensions;
using Microsoft.AspNetCore.DataProtection;
namespace _24Hour
{
public class TwentySystemProxyClient
{
private readonly HttpClient httpCliet;
private readonly IConfiguration configuration;
public TwentySystemProxyClient(HttpClient _httpCliet, IConfiguration _configuration)
{
this.httpCliet = _httpCliet;
this.configuration = _configuration;
httpCliet.DefaultRequestHeaders.Add("Accept", "application/json");
httpCliet.DefaultRequestHeaders.Add("User-Agent", "HttpClientFactory-Sample");
httpCliet.DefaultRequestHeaders.ConnectionClose = true;
}
public async Task<Result<QueryResult<CaseInfo>>> GetCaseList(string? casename, string? bmsah, string? dwbm, DateTime? starttime, DateTime? endtime, int page, int size)
{
Result<QueryResult<CaseInfo>> Result = new();
var param = new
{
casename = casename ?? "",
bmsah = bmsah ?? "",
dwbm = dwbm ?? "",
starttime = starttime ?? DateTime.Now.AddDays(-100),
endtime = endtime ?? DateTime.Now,
page,
size
}.ConvertToGetParam();
try
{
var response = await Task.Run(async () =>
{
var connectionString = configuration.GetSection("CaseTwenty:UseOfflineData").Value;
if (connectionString=="false")
{
var request = await httpCliet.GetAsync($"/TwentySystem/GetCaseInfo{param}");
var response = await request.EnsureSuccessStatusCode().Content.ReadAsStringAsync();
return response;
}
else
{
return await File.ReadAllTextAsync(Path.Combine(Environment.CurrentDirectory,"caselist.txt"));
}
});
if (string.IsNullOrEmpty(response) == false)
{
var data = response.ConvertToModel<Result<Paging<CaseInfo>>>();
if (data.result != null)
{
var a = new QueryResult<CaseInfo>(new Paging()
{
PageCount = data.result.pages ?? 0,
PageIndex = data.result.pageNum ?? 0,
PageSize = data.result.pageSize ?? 0,
RowsCount = data.result.total ?? 0
}, data.result.List.ToList());
Result.IsSucceed = true;
Result.result = a;
}
else
{
Result.IsSucceed = true;
Result.Message = data.Message ?? "查询成功";
Result.result = new QueryResult<CaseInfo>(new Paging()
{
PageCount = 0,
PageIndex = 0,
PageSize = 0,
RowsCount = 0,
}, new List<CaseInfo>());
}
}
else
{
Result.IsSucceed = false;
Result.Message = "查询失败";
}
}
catch (Exception ex)
{
Result.IsSucceed = false;
Result.Message = ex.Message;
}
return Result;
}
public async Task<Result<JZJBXXDto>> GetArchivesInfo(string bmsah, string dwbm)
{
var result = new Result<JZJBXXDto>();
//var path = Path.Combine(Environment.CurrentDirectory, "datajson.txt");
//var json = await System.IO.File.ReadAllTextAsync(path);
var param = new
{
bmsah = bmsah,
dwbm = dwbm
}.ConvertToGetParam();
var json = await Task.Run(async() =>
{
var connectionString = configuration.GetSection("CaseTwenty:UseOfflineData").Value;
if (connectionString == "false")
{
var request = await httpCliet.GetAsync($"/TwentySystem/GetJZXX{param}");
var jsonstr = await request.EnsureSuccessStatusCode().Content.ReadAsStringAsync();
return jsonstr;
}
else
{
return await File.ReadAllTextAsync(Path.Combine(Environment.CurrentDirectory, "jzlist.txt"));
}
});
var res = json.ConvertToModel<Result<JZJBXXDto>>();
if (res.IsSucceed == true)
{
if (res.result == null)
{
result.IsSucceed = false;
result.Message = "卷宗目录为空";
return result;
}
var convert = res.result;
if (convert == null)
{
result.IsSucceed = false;
result.Message = "未找到对应卷宗";
return result;
}
convert.Id = Guid.NewGuid().ToString();
if (convert?.jzml?.Any() == true)
{
await Task.Delay(5);
foreach (var ml in convert.jzml)
{
ml.Id = Guid.NewGuid().ToString();
ml.jzId = convert.Id;
await Task.Delay(5);
foreach (var item in ml.jzwj)
{
item.jzmlId = ml.Id;
item.Id = Guid.NewGuid().ToString();
}
}
}
result.IsSucceed = true;
result.result = convert;
}
else
{
result.IsSucceed = false;
result.Message = res.Message;
}
return result;
}
public class Paging<T>
{
public int? pageNum { get; set; }
public int? pageSize { get; set; }
public int? total { get; set; }
public int? pages { get; set; }
public IEnumerable<T>? List { get; set; }
}
public class CaseInfo
{
public string? jzbh { get; set; }
public string? ajmc { get; set; }
public string? bmsah { get; set; }
public string? cbdwbm { get; set; }
public string? rybm { get; set; }
public string? rymc { get; set; }
public int? cs { get; set; }
public int? ys { get; set; }
public DateTime? cjsj { get; set; }
public DateTime? cjrq { get; set; }
public string? zzr { get; set; }
public string? zzrbm { get; set; }
public string? zzzt { get; set; }
public string? jzms { get; set; }
public string? jzxh { get; set; }
public string? nfbd { get; set; }
public string? jzsd { get; set; }
public string? ajlbbm { get; set; }
public string? ajlbmc { get; set; }
public DateTime? slrq { get; set; }
public string? jzocrzt { get; set; }
public string? id { get; set; }
public string? yjzmc { get; set; }
public string? sfck { get; set; }
public string? sfkcz { get; set; }
public string? qlzt { get; set; }
}
}
}

215
24Hour/WechatMessagerClient.cs

@ -0,0 +1,215 @@
using com.sun.org.apache.bcel.@internal.generic;
using com.sun.xml.@internal.xsom;
using Elight.Utility;
using Elight.Utility.Code;
using Elight.Utility.Extensions;
using java.lang.annotation;
using Microsoft.IdentityModel.Logging;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System.Runtime.Caching;
using static java.security.cert.CertPathValidatorException;
namespace _24Hour
{
public class WechatMessagerClient
{
private readonly HttpClient httpCliet;
// 实例化MemoryCache对象
MemoryCache cache = MemoryCache.Default;
private readonly IConfiguration _configuration;
/// <summary>
/// 小程序AppID
/// </summary>
private string appid = "wx48108a0c98a3dab0";
/// <summary>
/// 小程序AppID
/// </summary>
private string secret = "wx48108a0c98a3dab0";
/// <summary>
/// 小程序secretID
/// </summary>
private string secid = "e752e4fba67526eca21313a18c96a58f";
public WechatMessagerClient(HttpClient _httpCliet, IConfiguration configuration)
{
this.httpCliet = _httpCliet;
httpCliet.DefaultRequestHeaders.Add("Accept", "application/json");
httpCliet.DefaultRequestHeaders.Add("User-Agent", "HttpClientFactory-Sample");
httpCliet.DefaultRequestHeaders.ConnectionClose = true;
_configuration = configuration;
appid = $"{configuration.GetSection("Wechat:appid").Value}";
secret = $"{configuration.GetSection("Wechat:secret").Value}";
secid = $"{configuration.GetSection("Wechat:secid").Value}";
}
public async Task<Result> GetOpenId(string code)
{
var ret = new Result();
var reponse = await httpCliet.GetAsync($"/sns/jscode2session?appid={appid}&secret={secid}&js_code={code}&grant_type=authorization_code");
var opendata = await reponse.EnsureSuccessStatusCode().Content.ReadAsStringAsync();
var data = JsonConvert.DeserializeAnonymousType(opendata, new
{
openid = default(string),
session_key = default(string),
unionid = default(string),
errcode = default(int),
errmsg = default(string),
});
if (data.errcode == 0)
{
ret.IsSucceed = true;
ret.result = data.openid;
}
else
{
ret.IsSucceed = false;
ret.Message = data.errmsg;
}
return ret;
}
/// <summary>
/// 律师预约微信消息提醒,成功
/// </summary>
/// <returns></returns>
public bool wxts(string? useropenId, string? name, string? unit, DateTime? datetime, string? matter,string? attention)
{
try
{
var token = "";
// 获取缓存
token = cache.Get("token")?.ToString();
if (string.IsNullOrEmpty(token))
{
string geturl = $"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={appid}&secret={secret}";
var re1 = HttpHelper.Get(geturl);
if (re1.Jsonstr("errcode") == null)
{
token = re1.Jsonstr("access_token");
// 移除缓存
cache.Remove("token");
// 添加缓存
cache.Add("token", token, new CacheItemPolicy { AbsoluteExpiration = DateTime.Now.AddMinutes(120) });
}
}
string url = $"https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=";//发送地址
try
{
object msg = null;
string posturl = $"{url}{token}";//发送地址
var thing4 = matter;
var thing5 = attention;
if (!string.IsNullOrEmpty(matter) && matter.Length>20)
thing4 = matter.Substring(0, 17)+"...";
if (!string.IsNullOrEmpty(attention) && attention.Length > 20)
thing5 = attention.Substring(0, 17) + "...";
msg = new
{
touser = useropenId,
template_id = "mRfzPnc_3JuV9cPhjKrRL3jX1C_JJoBGYtqEnbfadRM",
page= "pages/selfService/reception/reception",
miniprogram_state= $"{_configuration.GetSection("Wechat:miniprogram_state").Value}",
lang ="zh_CN",
data = new
{
//name1 = new { value = $"{name}"},//
thing2 = new { value = $"{unit}"},//
date3 = new { value = $"{datetime:yyyy年MM月dd日 HH:mm}"},//
thing4 = new { value = $"{thing4}"},//
thing5 = new { value = $"{thing5}", color = "#173177" },//
},
};
var re = HttpHelper.Post(posturl, msg);
if (re.Jsonstr("errcode") == "0")
return true;
return false;
}
catch (Exception ex)
{
}
return true;
}
catch (Exception ex)
{
}
return false;
}
/// <summary>
/// 律师预约微信消息提醒,失败
/// </summary>
/// <returns></returns>
public bool sbwxts(string? useropenId,string? name,string? unit,DateTime? datetime,string? matter,string? reason)
{
try
{
var token = "";
// 获取缓存
var tokenss = cache.Get("token");
if (string.IsNullOrEmpty(token))
{
string geturl = $"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wx48108a0c98a3dab0&secret=e752e4fba67526eca21313a18c96a58f";
var re1 = HttpHelper.Get(geturl);
if (re1.Jsonstr("errcode") == null)
{
token = re1.Jsonstr("access_token");
// 移除缓存
cache.Remove("token");
// 添加缓存
cache.Add("token", token, new CacheItemPolicy { AbsoluteExpiration = DateTime.Now.AddMinutes(120) });
}
}
string url = $"https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=";//发送地址
try
{
object msg = null;
string posturl = $"{url}{token}";//发送地址
var thing4 = matter;
if (!string.IsNullOrEmpty(matter)&&matter.Length > 20)
thing4 = matter.Substring(0, 17) + "...";
var thing5 = reason;
if (!string.IsNullOrEmpty(reason) && reason.Length > 20)
thing5 = reason.Substring(0, 17) + "...";
msg = new
{
touser = useropenId,
template_id = "sPbZd6ro14L4uCR_TyDlB_nKKBq-iSvVBlOCmtTDDt0",
page = "pages/selfService/reception/reception",
miniprogram_state = $"{_configuration.GetSection("Wechat:miniprogram_state").Value}",
lang = "zh_CN",
data = new
{
//thing1 = new { value = $"{name}" },//访问人
thing2 = new { value = $"{unit}" },//访问单位
time3 = new { value = $"{datetime:yyyy年MM月dd日 HH:mm}" },//预约时间
thing4 = new { value = $"{thing4}" },//事由
thing5 = new { value = $"{thing5}" },//事由
},
};
var re = HttpHelper.Post(posturl, msg);
if (re.Jsonstr("errcode") == "0")
return true;
return false;
}
catch (Exception ex)
{
}
return true;
}
catch (Exception ex)
{
}
return false;
}
}
}

21
24Hour/appsettings.json

@ -6,10 +6,10 @@
}
},
"AllowedHosts": "*",
"ConnectionStrings": {
"DBType": "MySQL",
"MySQLConnString": "server=192.168.0.251;Database=equipmentrearend;Uid=root;Pwd=sa@admin;Allow User Variables=True;SslMode=none;AllowPublicKeyRetrieval=True;"
},
"ConnectionStrings": {
"DBType": "MySQL",
"MySQLConnString": "server=192.168.0.251;Database=equipmentrearend;Uid=root;Pwd=sa@admin;Allow User Variables=True;SslMode=none;AllowPublicKeyRetrieval=True;"
},
//JwtConfig
"JwtConfiguration": {
/*JwtConfig Issuer=http://127.0.0.1:api*/
@ -44,5 +44,18 @@
"Videoaddress": {
"rtmp": "rtmp://192.168.0.24:1935/live/",
"rtsp": "rtsp://192.168.0.24:8554/live/"
},
"Wechat": {
"appid": "wx48108a0c98a3dab0",
"secret": "e752e4fba67526eca21313a18c96a58f",
"secid": "e752e4fba67526eca21313a18c96a58f",
"miniprogram_state": "trial"
},
"CaseTwenty": {
"SysAddress": "http://127.0.0.1:5194",
"UseOfflineData": "true"
},
"SyncDataFromJiguang": {
"enable": "false"
}
}

111
24Hour/build/dockerbuild.txt

@ -0,0 +1,111 @@
create images
docker build -t twentyfoursvc:1.0.1.2 .
docker on windows for fake data
create container
docker run --name twentyfoursvc -p 8098:8098 -v D://dockerconfigs/24hourconfig/appsettings.json:/app/appsettings.json -v /etc/localtime:/etc/localtime -d twentyfoursvc:1.0.1.5
docker on linux with network bridge
create birdge:
docker network create twentytotwneyfour
for 24hourserver
docker run \
--name twentyfoursvc \
-p 8098:8098 \
-v /home/24hour/logs:/app/logs \
-v /home/24hour/wwwroot:/app/wwwroot \
-v /home/24hour/config/appsettings.json:/app/appsettings.json \
-v /etc/localtime:/etc/localtime \
--restart=always \
--link mysql \
--network twentytotwneyfour \
--network-alias twentyfour \
-d twentyfoursvc:1.0.1.5
docker run
--name twentyfoursvc
-p 8098:8098
-v /home/24hour/config/appsettings.json:/app/appsettings.json
-v /etc/localtime:/etc/localtime
--restart=always
-d twentyfoursvc:1.0.1.5
for 2.0 proxyclient
docker run --name twentysysproxy -p 5194:5194 -v /home/twentysysproxy/config/appsettings.json:/app/appsettings.json -v /etc/localtime:/etc/localtime --restart=always --link mysql --network twentytotwneyfour --network-alias twentyproxy -d twentysysproxy:1.1
docker run --name twentyfoursvc1018 \
-p 8098:8098 \
-v /home/24hour/config/appsettings.json:/app/appsettings.json \
-v /home/24hour/config/log4net.config:/app/log4net.config \
-v /home/24hour/config/caselist.txt:/app/caselist.txt \
-v /home/24hour/config/jzlist.txt:/app/jzlist.txt \
-v /home/24hour/wwwroot:/app/wwwroot \
-v /home/24hour/logs:/app/logs \
-v /etc/localtime:/etc/localtime \
--restart=always -d twentyfoursvc:1.0.1.8
docker run -itd --name mysql80 -p 3306:3306 -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql

152
24Hour/caselist.txt

@ -0,0 +1,152 @@
{
"result": {
"pageNum": 10,
"pageSize": 5,
"total": 679,
"pages": 136,
"list": [
{
"jzbh": "c17a65444c035e7fcfdcba40cf45030a",
"ajmc": "(简案)xxx涉嫌危险驾驶案",
"bmsah": "xxx检刑诉受[2023]xxx01号",
"cbdwbm": "410503",
"rybm": "4105030074",
"rymc": "检察官",
"cs": 2,
"ys": 62,
"cjsj": "2023-10-11T08:22:14.006+08:00",
"cjrq": "2023-10-11T00:00:00",
"zzr": "检察官",
"zzrbm": "4105030074",
"zzzt": "制作完成",
"jzms": null,
"jzxh": null,
"nfbd": "N",
"jzsd": "Y",
"ajlbbm": "2001",
"ajlbmc": "一审公诉案件",
"slrq": "2023-10-11T00:00:00+08:00",
"jzocrzt": "识别完成",
"id": "1414454461",
"yjzmc": null,
"sfck": null,
"sfkcz": "true",
"qlzt": "0"
},
{
"jzbh": "61d022b24fe0fd9a7725d36a20e9399d",
"ajmc": "xxx涉嫌寻衅滋事案 ",
"bmsah": "xxx刑诉受[2023]xxx02号",
"cbdwbm": "410503",
"rybm": "4105030074",
"rymc": "检察官",
"cs": 8,
"ys": 873,
"cjsj": "2023-10-10T08:57:13.411+08:00",
"cjrq": "2023-10-10T00:00:00",
"zzr": "检察官",
"zzrbm": "4105030074",
"zzzt": "制作完成",
"jzms": null,
"jzxh": null,
"nfbd": "N",
"jzsd": "Y",
"ajlbbm": "2001",
"ajlbmc": "一审公诉案件",
"slrq": "2023-10-10T00:00:00+08:00",
"jzocrzt": "正在识别",
"id": "736168250",
"yjzmc": "2023.07.21xxx寻衅滋事案",
"sfck": "N",
"sfkcz": "true",
"qlzt": "0"
},
{
"jzbh": "e2ace19934f9ee4d7d0e336c616e91a4",
"ajmc": "李桂波涉嫌介绍卖淫案",
"bmsah": "xxx检刑诉受[2023]xxx03号",
"cbdwbm": "410503",
"rybm": "4105030074",
"rymc": "检察官",
"cs": 4,
"ys": 390,
"cjsj": "2023-10-10T08:23:21.351+08:00",
"cjrq": "2023-10-10T00:00:00",
"zzr": "检察官",
"zzrbm": "4105030074",
"zzzt": "制作完成",
"jzms": null,
"jzxh": null,
"nfbd": "N",
"jzsd": "Y",
"ajlbbm": "2001",
"ajlbmc": "一审公诉案件",
"slrq": "2023-10-10T00:00:00+08:00",
"jzocrzt": "正在识别",
"id": "39335843",
"yjzmc": null,
"sfck": null,
"sfkcz": "true",
"qlzt": "0"
},
{
"jzbh": "bce4ae03ae003a91af2af34b716ced5e",
"ajmc": "xxx涉嫌盗窃案",
"bmsah": "xxx检刑捕受[2023]xxx04号",
"cbdwbm": "410503",
"rybm": "4105030074",
"rymc": "检察官",
"cs": 2,
"ys": 134,
"cjsj": "2023-10-09T10:41:47.205+08:00",
"cjrq": "2023-10-09T00:00:00",
"zzr": "检察官",
"zzrbm": "4105030074",
"zzzt": "制作完成",
"jzms": null,
"jzxh": null,
"nfbd": "N",
"jzsd": "Y",
"ajlbbm": "2031",
"ajlbmc": "审查逮捕案件",
"slrq": "2023-10-09T00:00:00+08:00",
"jzocrzt": "正在识别",
"id": "-1133317722",
"yjzmc": null,
"sfck": null,
"sfkcz": "true",
"qlzt": "0"
},
{
"jzbh": "99a46d5b7ae0bcbe14a86c089845c1c1",
"ajmc": "xxx涉嫌危险驾驶案",
"bmsah": "xxx检刑诉受[2023]xxx05号",
"cbdwbm": "410503",
"rybm": "4105030074",
"rymc": "检察官",
"cs": 2,
"ys": 56,
"cjsj": "2023-10-09T09:27:42.033+08:00",
"cjrq": "2023-10-09T00:00:00",
"zzr": "检察官",
"zzrbm": "4105030074",
"zzzt": "制作完成",
"jzms": null,
"jzxh": null,
"nfbd": "N",
"jzsd": "Y",
"ajlbbm": "2001",
"ajlbmc": "一审公诉案件",
"slrq": "2023-10-09T00:00:00+08:00",
"jzocrzt": "正在识别",
"id": "1944744018",
"yjzmc": null,
"sfck": null,
"sfkcz": "true",
"qlzt": "0"
}
]
},
"isSucceed": true,
"message": "操作成功"
}

1890
24Hour/jzlist.txt

File diff suppressed because it is too large Load Diff

24
24Hour/log4net.config

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender" >
<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
<file value="logs/" />
<datePattern value="yyyyMMdd-HH'.txt'"/>
<appendToFile value="true" />
<!--<rollingStyle value="Date" />-->
<staticLogFileName value="false"/>
<rollingStyle value="Composite" />
<maxSizeRollBackups value="50"/>
<maximumFileSize value="5MB"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date| %-5level%c %newline%message%newline--------------------------------%newline" />
</layout>
</appender>
<root>
<!--输出控制级别,从高到低分别是: OFF > FATAL > ERROR > WARN > INFO > DEBUG > ALL -->
<appender-ref ref="RollingFileAppender" />
<level value="Debug" />
</root>
</log4net>

119
Elight.Entity/APPDto/App_CloudCabinetDto.cs

@ -0,0 +1,119 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity
{
/// <summary>
/// 云柜管理
/// </summary>
[DataContract]
public class App_CloudCabinetDto
{
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 编号
/// </summary>
[DataMember]
public string? bh { get; set; }
/// <summary>
/// 身份证
/// </summary>
[DataMember]
public string? sfzh { get; set; }
/// <summary>
/// 姓名
/// </summary>
[DataMember]
public string? xm { get; set; }
/// <summary>
/// 地址
/// </summary>
[DataMember]
public string? zz { get; set; }
/// <summary>
/// 联系号码
/// </summary>
[DataMember]
public string? lxhm { get; set; }
/// <summary>
///
/// </summary>
[DataMember]
public string? jhlxbh { get; set; }
/// <summary>
///
/// </summary>
[DataMember]
public string? jhlxmc { get; set; }
/// <summary>
/// 材料件数
/// </summary>
[DataMember]
public string? cljs { get; set; }
/// <summary>
/// 备注
/// </summary>
[DataMember]
public string? bz { get; set; }
/// <summary>
/// 创建时间
/// </summary>
[DataMember]
public string? cjsj { get; set; }
/// <summary>
/// 取件时间
/// </summary>
[DataMember]
public string? qjsj { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string? dwbm { get; set; }
/// <summary>
/// 取件码
/// </summary>
[DataMember]
public string? wbkqmm { get; set; }
/// <summary>
/// 干警取件码
/// </summary>
[DataMember]
public string? gjkqmm { get; set; }
/// <summary>
/// 状态
/// </summary>
[DataMember]
public string? zt { get; set; }
/// <summary>
/// 干警手机号
/// </summary>
[DataMember]
public string? gjlxhm { get; set; }
/// <summary>
/// 菜单类型
/// </summary>
[DataMember]
public string? reservationId { get; set; }
/// <summary>
/// 单位名称
/// </summary>
[DataMember]
public string? unitName { get; set; }
}
}

115
Elight.Entity/APPDto/App_ConfessionDto.cs

@ -0,0 +1,115 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity
{
/// <summary>
/// 认罪认罚
/// </summary>
[DataContract]
public class App_ConfessionDto
{
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 操作人id
/// </summary>
[DataMember]
public string? operatorId { get; set; }
/// <summary>
/// 操作人
/// </summary>
[DataMember]
public string? operatorName { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string? unitCode { get; set; }
/// <summary>
/// 预约手机号
/// </summary>
[DataMember]
public string? phone { get; set; }
/// <summary>
/// 预约事由
/// </summary>
[DataMember]
public string? matter { get; set; }
[DataMember]
public string? reason { get; set; }
/// <summary>
/// 预约时间
/// </summary>
[DataMember]
public DateTime? sttime { get; set; }
/// <summary>
/// 同意受理时间
/// </summary>
[DataMember]
public DateTime? acceptancetime { get; set; }
/// <summary>
/// 会见人Id
/// </summary>
[DataMember]
public string? meetwitId { get; set; }
/// <summary>
/// 会见人
/// </summary>
[DataMember]
public string? meetwitname { get; set; }
/// <summary>
/// 预约类型
/// </summary>
[DataMember]
public string? reservationId { get; set; }
/// <summary>
/// 备注
/// </summary>
[DataMember]
public string? notes { get; set; }
/// <summary>
/// 状态 0:待办理,1:同意,2:拒绝,3:结束
/// </summary>
[DataMember]
public int state { get; set; }
[DataMember]
public string? createusername { get; set; }
[DataMember]
public string? createuserId { get; set; }
/// <summary>
/// 创建日期
/// </summary>
[DataMember]
public DateTime? creationtime { get; set; } = DateTime.Now;
/// <summary>
/// 是否删除:0:未删除、1:删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
/// <summary>
/// 单位名称
/// </summary>
[DataMember]
public string? unitName { get; set; }
}
}

119
Elight.Entity/APPDto/App_DocumentDto.cs

@ -0,0 +1,119 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity
{
/// <summary>
/// 文书签收
/// </summary>
[DataContract]
public class App_DocumentDto
{
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 文书编号
/// </summary>
[DataMember]
public string? wsslbh { get; set; }
/// <summary>
/// 文书名称
/// </summary>
[DataMember]
public string? wsmc { get; set; }
/// <summary>
/// 部门手受案号
/// </summary>
[DataMember]
public string? bmsah { get; set; }
/// <summary>
/// 单位编号
/// </summary>
[DataMember]
public string? dwbm { get; set; }
/// <summary>
/// 案件名称
/// </summary>
[DataMember]
public string? ajmc { get; set; }
/// <summary>
/// 姓名
/// </summary>
[DataMember]
public string? zrrxm { get; set; }
/// <summary>
/// 联系号码
/// </summary>
[DataMember]
public string? zrrlshm { get; set; }
/// <summary>
/// 身份证
/// </summary>
[DataMember]
public string? zjhm { get; set; }
/// <summary>
/// 文书名称
/// </summary>
[DataMember]
public string? fwqwjmc { get; set; }
/// <summary>
/// 登记时间
/// </summary>
[DataMember]
public string? djsj { get; set; }
/// <summary>
/// 办案检察官
/// </summary>
[DataMember]
public string? cbjcgbm { get; set; }
/// <summary>
/// 办案检察官手机号
/// </summary>
[DataMember]
public string? dhhm { get; set; }
/// <summary>
/// 存放时间
/// </summary>
[DataMember]
public string? sdsj { get; set; }
/// <summary>
/// 签收时间
/// </summary>
[DataMember]
public string? qmsj { get; set; }
/// <summary>
/// 状态 00:新建:01:待发送;02:已发送;03:待签收;04:已签收 ;99:已入卷
/// </summary>
[DataMember]
public string? zt { get; set; }
/// <summary>
/// 最新更新时间
/// </summary>
[DataMember]
public string? zhxgsj { get; set; }
/// <summary>
/// 菜单类型
/// </summary>
[DataMember]
public string? reservationId { get; set; }
/// <summary>
/// 单位名称
/// </summary>
[DataMember]
public string? unitName { get; set; }
}
}

135
Elight.Entity/APPDto/App_HearingDto.cs

@ -0,0 +1,135 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity
{
/// <summary>
/// 听证服务
/// </summary>
[DataContract]
public class App_HearingDto
{
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string? Id { get; set; }
///// <summary>
///// 操作人id
///// </summary>
//[DataMember]
public string? operatorId { get; set; }
/// <summary>
/// 操作人
/// </summary>
[DataMember]
public string? operatorName { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string? unitCode { get; set; }
/// <summary>
/// 律师所名称
/// </summary>
[DataMember]
public string? lawyerunit { get; set; }
/// <summary>
/// 律师人名称
/// </summary>
[DataMember]
public string? lawyeruser { get; set; }
/// <summary>
/// 联系方式
/// </summary>
[DataMember]
public string? contact { get; set; }
/// <summary>
/// 预约时间
/// </summary>
[DataMember]
public DateTime? reservationtime { get; set; }
/// <summary>
/// 同意受理时间
/// </summary>
[DataMember]
public DateTime? acceptancetime { get; set; }
/// <summary>
/// 所在地
/// </summary>
[DataMember]
public string? location { get; set; }
/// <summary>
/// 听证请求原因
/// </summary>
[DataMember]
public string? witnessrequest { get; set; }
/// <summary>
/// 备注
/// </summary>
[DataMember]
public string? notes { get; set; }
/// <summary>
/// 预约类型
/// </summary>
[DataMember]
public string? reservationId { get; set; }
/// <summary>
/// 接待人Id
/// </summary>
[DataMember]
public string? receptionuser { get; set; }
/// <summary>
/// 接待人
/// </summary>
[DataMember]
public string? receptionusername { get; set; }
/// <summary>
/// 0:待办理,1:同意 2:拒绝
/// </summary>
[DataMember]
public int? state { get; set; }
/// <summary>
/// 拒绝原因
/// </summary>
[DataMember]
public string? reason { get; set; }
[DataMember]
public string? createusername { get; set; }
[DataMember]
public string? createuserId { get; set; }
/// <summary>
/// 创建日期
/// </summary>
[DataMember]
public DateTime? creationtime { get; set; } = DateTime.Now;
/// <summary>
/// 是否删除:0:未删除、1:删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
/// <summary>
/// 单位名称
/// </summary>
[DataMember]
public string? unitName { get; set; }
}
}

158
Elight.Entity/APPDto/App_LawyerServicesDto.cs

@ -0,0 +1,158 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity
{
/// <summary>
/// 律师服务
/// </summary>
[DataContract]
public class App_LawyerServicesDto
{
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string? unitCode { get; set; }
/// <summary>
/// 预约类型
/// </summary>
[DataMember]
public string? reservationId { get; set; }
/// <summary>
/// 律师名称
/// </summary>
[DataMember]
public string? name { get; set; }
/// <summary>
/// 手机号
/// </summary>
[DataMember]
public string? phone { get; set; }
/// <summary>
/// 访问日期
/// </summary>
[DataMember]
public DateTime? receptiontime { get; set; }
/// <summary>
/// 同意受理时间
/// </summary>
[DataMember]
public DateTime? acceptancetime { get; set; }
/// <summary>
/// 访问结束时间
/// </summary>
public DateTime? receptionEndtime { get; set; }
/// <summary>
/// 访问事由
/// </summary>
[DataMember]
public string? matter { get; set; }
/// <summary>
/// 访问对象
/// </summary>
[DataMember]
public string? objectstr { get; set; }
/// <summary>
/// 接待人Id
/// </summary>
[DataMember]
public string? receptionuser { get; set; }
/// <summary>
/// 接待人名称
/// </summary>
[DataMember]
public string? receptionusername { get; set; }
/// <summary>
/// 备注
/// </summary>
[DataMember]
public string? notes { get; set; }
/// <summary>
/// 拒绝原因
/// </summary>
[DataMember]
public string? reason { get; set; }
/// <summary>
/// 0:待办理,1:同意 ,2:拒绝 3, 结束
/// </summary>
[DataMember]
public int state { get; set; }
/// <summary>
/// 创建人
/// </summary>
[DataMember]
public string? createusername { get; set; }
/// <summary>
/// 创建人Id
/// </summary>
[DataMember]
public string? createuserId { get; set; }
/// <summary>
/// 操作人id
/// </summary>
[DataMember]
public string? operatorId { get; set; }
/// <summary>
/// 操作人
/// </summary>
[DataMember]
public string? operatorName { get; set; }
/// <summary>
/// 创建日期
/// </summary>
[DataMember]
public DateTime? creationtime { get; set; } = DateTime.Now;
/// <summary>
/// 是否删除:0:未删除、1:删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
/// <summary>
/// 附件
/// </summary>
[DataMember]
public string annex { get; set; }
/// <summary>
/// 单位名称
/// </summary>
[DataMember]
public string? unitName { get; set; }
/// <summary>
/// 当事人姓名
/// </summary>
[DataMember]
public string party { get;set;}
/// <summary>
/// 当事人身份证
/// </summary>
[DataMember]
public string partyIDcard { get;set;}
}
}

121
Elight.Entity/APPDto/App_ReceptionDto.cs

@ -0,0 +1,121 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity
{
/// <summary>
/// 预约接待
/// </summary>
[DataContract]
public class App_ReceptionDto
{
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string? unitCode { get; set; }
/// <summary>
/// 操作人id
/// </summary>
[DataMember]
public string? operatorId { get; set; }
/// <summary>
/// 操作人
/// </summary>
[DataMember]
public string? operatorName { get; set; }
/// <summary>
/// 预约手机号
/// </summary>
[DataMember]
public string? phone { get; set; }
/// <summary>
/// 预约事由
/// </summary>
[DataMember]
public string? matter { get; set; }
[DataMember]
public string? reason { get; set; }
/// <summary>
/// 开始时间
/// </summary>
[DataMember]
public DateTime? sttime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
[DataMember]
public DateTime? ettime { get; set; }
/// <summary>
/// 同意受理时间
/// </summary>
[DataMember]
public DateTime? acceptancetime { get; set; }
/// <summary>
/// 会见人Id
/// </summary>
[DataMember]
public string? meetwitId { get; set; }
/// <summary>
/// 会见人
/// </summary>
[DataMember]
public string? meetwitname { get; set; }
/// <summary>
/// 预约类型
/// </summary>
[DataMember]
public string? reservationId { get; set; }
/// <summary>
/// 备注
/// </summary>
[DataMember]
public string? notes { get; set; }
/// <summary>
/// 状态 0:待办理,1:同意,2:拒绝,3:结束
/// </summary>
[DataMember]
public int state { get; set; }
[DataMember]
public string? createusername { get; set; }
[DataMember]
public string? createuserId { get; set; }
/// <summary>
/// 创建日期
/// </summary>
[DataMember]
public DateTime? creationtime { get; set; } = DateTime.Now;
/// <summary>
/// 是否删除:0:未删除、1:删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
/// <summary>
/// 单位名称
/// </summary>
[DataMember]
public string? unitName { get; set; }
}
}

132
Elight.Entity/APPDto/App_RemoteDto.cs

@ -0,0 +1,132 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity
{
/// <summary>
/// 远程会见
/// </summary>
[DataContract]
public class App_RemoteDto
{
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 操作人id
/// </summary>
[DataMember]
public string? operatorId { get; set; }
/// <summary>
/// 操作人
/// </summary>
[DataMember]
public string? operatorName { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string? unitCode { get; set; }
/// <summary>
/// 手机推流地址
/// </summary>
[DataMember]
public string? appurl { get; set; }
/// <summary>
/// 会议号
/// </summary>
[DataMember]
public string? Code { get; set; }
/// <summary>
/// 会议名称
/// </summary>
[DataMember]
public string? name { get; set; }
/// <summary>
/// 预约人手机号
/// </summary>
[DataMember]
public string? phone { get; set; }
[DataMember]
public string? reason { get; set; }
/// <summary>
/// 开始时间
/// </summary>
[DataMember]
public DateTime? sttime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
[DataMember]
public DateTime? ettime { get; set; }
/// <summary>
/// 同意受理时间
/// </summary>
[DataMember]
public DateTime? acceptancetime { get; set; }
/// <summary>
/// 会见人Id
/// </summary>
[DataMember]
public string? meetwitId { get; set; }
/// <summary>
/// 会见人
/// </summary>
[DataMember]
public string? meetwitname { get; set; }
/// <summary>
/// 预约类型
/// </summary>
[DataMember]
public string? reservationId { get; set; }
/// <summary>
/// 备注
/// </summary>
[DataMember]
public string? notes { get; set; }
/// <summary>
/// 0:待开始,1已结束,2:会议取消
/// </summary>
[DataMember]
public int state { get; set; }
[DataMember]
public string? createusername { get; set; }
[DataMember]
public string? createuserId { get; set; }
/// <summary>
/// 创建日期
/// </summary>
[DataMember]
public DateTime? creationtime { get; set; } = DateTime.Now;
/// <summary>
/// 是否删除:0:未删除、1:删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
/// <summary>
/// 单位名称
/// </summary>
[DataMember]
public string? unitName { get; set; }
}
}

57
Elight.Entity/APPDto/Lawyer/JZJBXXDto.cs

@ -0,0 +1,57 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.APPDto.Lawyer
{
/// <summary>
/// 卷宗基本信息
/// </summary>
public class JZJBXXDto
{
/// <summary>
/// 部门受案号 v
/// </summary>
public string? Id { get; set; }
public string? bmsah { get; set; }
/// <summary>
/// 卷宗编号v
/// </summary>
public string? jzbh { get; set; }
/// <summary>
/// 单位编码
/// </summary>
public string? dwbm { get; set; }
/// <summary>
/// (简案)王奇涉嫌危险驾驶案 v
/// </summary>
public string? jzmc { get; set; }
/// <summary>
/// 卷宗制作人
/// </summary>
public string? jzzzr { get; set; }
/// <summary>
/// 案件类别编码
/// </summary>
public string? ajlbbm { get; set; }
/// <summary>
/// 案件类别名称
/// </summary>
public string? ajlbmc { get; set; }
/// <summary>
/// 卷宗目录 v
/// </summary>
public List<JZMLDto>? jzml { get; set; }
}
}

73
Elight.Entity/APPDto/Lawyer/JZMLDto.cs

@ -0,0 +1,73 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.APPDto.Lawyer
{
/// <summary>
/// 卷宗目录
/// </summary>
public class JZMLDto
{
public string? Id { get; set; }
/// <summary>
/// 卷宗Id
/// </summary>
public string? jzId { get; set; }
/// <summary>
///
/// </summary>
public string? taskid { get; set; }
/// <summary>
/// 卷宗编号
/// </summary>
public string? jzbh { get; set; }
/// <summary>
/// 目录编号
/// </summary>
public string? mlbh { get; set; }
/// <summary>
/// 父目录编号
/// </summary>
public string? fmlbh { get; set; }
/// <summary>
/// 目录显示名称
/// </summary>
public string? mlxsmc { get; set; }
/// <summary>
/// 目录信息
/// </summary>
public string? mlxx { get; set; }
/// <summary>
/// 目录顺序号
/// </summary>
public int? mlsxh { get; set; }
/// <summary>
/// 目录类型 卷,目录看,文件
/// </summary>
public string? mllx { get; set; }
/// <summary>
/// 单位编码
/// </summary>
public string? dwbm { get; set; }
public List<JZWJItemDto> jzwj { get; set; }
}
}

112
Elight.Entity/APPDto/Lawyer/JZWJItemDto.cs

@ -0,0 +1,112 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.APPDto.Lawyer
{
/// <summary>
/// 卷宗文件
/// </summary>
public class JZWJItemDto
{
/// <summary>
/// 文件唯一标识
/// </summary>
public string? Id { get; set; }
/// <summary>
/// 卷宗目录Id
/// </summary>
public string? jzmlId { get; set; }
public string? wjxh { get; set; }
/// <summary>
/// 目录编号
/// </summary>
public string? mlbh { get; set; }
/// <summary>
/// 源文件路径
/// </summary>
public string? ywjlj { get; set; }
/// <summary>
/// 缩略图文件路径
/// </summary>
public string? sltwjlj { get; set; }
/// <summary>
/// pdf文件路径
/// </summary>
public string? pdfwjlj { get; set; }
/// <summary>
/// 图片实际显示路径!
/// </summary>
public string? jpgwjlj { get; set; }
/// <summary>
/// 文件页码
/// </summary>
public string? wjym { get; set; }
/// <summary>
/// 文件类型
/// </summary>
public string? wjlx { get; set; }
/// <summary>
///
/// </summary>
public string? wjscbz { get; set; }
/// <summary>
/// 文件顺序号 排序
/// </summary>
public int? wjsxh { get; set; }
/// <summary>
/// 文件显示名称 第二页
/// </summary>
public string? wjxsmc { get; set; }
/// <summary>
/// 卷宗编号
/// </summary>
public string? jzbh { get; set; }
/// <summary>
/// 文件ocr识别状态
/// </summary>
public string? wjocrsbzt { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public string? cjsj { get; set; }
/// <summary>
/// 上传时间
/// </summary>
public string? time { get; set; }
public string? taskid { get; set; }
/// <summary>
/// 文件标识
/// </summary>
public string? wjbs { get; set; }
/// <summary>
/// 标识编号
/// </summary>
public string? bsbh { get; set; }
}
}

113
Elight.Entity/APPDto/Lawyer/LawyerArchivesDto.cs

@ -0,0 +1,113 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.APPDto.Lawyer
{
public class LawyerArchivesDto
{
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 卷宗id
/// </summary>
[DataMember]
public string? jzlbxxId { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string? unitcode { get; set; }
/// <summary>
/// 部门受案号
/// </summary>
[DataMember]
public string? bmsah { get; set; }
/// <summary>
/// 律师id
/// </summary>
[DataMember]
public string? lawyerId { get; set; }
/// <summary>
/// 律师名字
/// </summary>
[DataMember]
public string? lawyerName { get; set; }
/// <summary>
/// 当事人姓名
/// </summary>
[DataMember]
public string? party { get; set; }
/// <summary>
/// 当事人身份证
/// </summary>
[DataMember]
public string? partycardId { get; set; }
/// <summary>
/// 案件名称
/// </summary>
[DataMember]
public string? casename { get; set; }
/// <summary>
/// 授权的开始阅卷时间
/// </summary>
[DataMember]
public DateTime? permissibleStartTime { get; set; }
/// <summary>
/// 授权的结束阅卷时间
/// </summary>
[DataMember]
public DateTime? permissibleEndTime { get; set; }
/// <summary>
/// 时间阅卷开始时间
/// </summary>
[DataMember]
public DateTime? actualStartTime { get; set; }
/// <summary>
/// 实际阅卷结束时间
/// </summary>
[DataMember]
public DateTime? actualEndTime { get; set; }
/// <summary>
/// 状态 0 待查阅 1查阅中 2 已查阅
/// </summary>
[DataMember]
public ushort? status { get; set; }
/// <summary>
/// 拷贝限制 0 未复制 1打印 2刻录 3 both
/// </summary>
[DataMember]
public ushort? copyStatus { get; set; }
/// <summary>
/// 0 不限制 1限制打印 2 限制刻录 3全部禁止
/// </summary>
[DataMember]
public ushort? copyLimit { get; set; }
/// <summary>
/// 备注
/// </summary>
[DataMember]
public string? remake { get; set; }
[DataMember]
public DateTime? createTime { get; set; }
[DataMember]
public string? createrId { get; set; }
/// <summary>
/// 已缓存的文件计数
/// </summary>
public int? downloadedCount { get; set; }
/// <summary>
/// 总的文件数计数
/// </summary>
public int? jwCount { get; set; }
/// <summary>
/// 是否删除:0:未删除、1:删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
}
}

37
Elight.Entity/APPDto/Lawyer/QRDto.cs

@ -0,0 +1,37 @@
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.APPDto.Lawyer
{
public class QRUserDto
{
public string? Id { get; set; }
public string? unitCode { get; set; }
public string? name { get; set; }
public string? phone { get; set; }
public string? cardId { get; set; }
}
public class QRLawyerServiceDto
{
public string? Id { get; set; }
public string? unitCode { get; set; }
public string? phone { get; set; }
public string? matter { get; set; }
public string? reason { get; set; }
public DateTime? acceptancetime { get; set; }
/// <summary>
/// 访问对象
/// </summary>
public string? objectstr { get; set; }
public string? reservationId { get; set; }
public string? notes { get; set; }
public int state { get; set; }
public string? createusername { get; set; }
public string? createuserId { get; set; }
}
}

14
Elight.Entity/APPDto/QRTransfter.cs

@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.APPDto
{
public class QRTransfterDto
{
}
}

26
Elight.Entity/AppMode/App_LawyerServicesModel.cs

@ -48,6 +48,11 @@ namespace Elight.Entity
[DataMember]
public DateTime? receptiontime { get; set; }
/// <summary>
/// 访问结束时间
/// </summary>
public DateTime? receptionEndtime { get; set; }
/// <summary>
/// 同意受理时间
/// </summary>
@ -104,9 +109,9 @@ namespace Elight.Entity
/// 创建人Id
/// </summary>
[DataMember]
public string? createuserId { get; set; }
public string? createuserId { get; set; }
/// <summary>
/// 操作人id
/// </summary>
@ -134,6 +139,19 @@ namespace Elight.Entity
/// 附件
/// </summary>
[DataMember]
public string annex { get; set; }
public string? annex { get; set; }
/// <summary>
/// 当事人姓名
/// </summary>
[DataMember]
public string? party { get;set;}
/// <summary>
/// 当事人身份证
/// </summary>
[DataMember]
public string? partyIDcard { get;set;}
}
}

171
Elight.Entity/AppMode/Lawyer/DossierInfo.cs

@ -0,0 +1,171 @@
//using System;
//using System.Collections.Generic;
//using System.Linq;
//using System.Text;
//using System.Threading.Tasks;
//namespace Elight.Entity.AppMode.Lawyer
//{
// /// <summary>
// /// 卷宗基本信息
// /// </summary>
// public class JZJBXX
// {
// /// <summary>
// /// 部门受案号 v
// /// </summary>
// public string bmsah { get; set; }
// /// <summary>
// /// 卷宗编号v
// /// </summary>
// public string jzbh { get; set; }
// /// <summary>
// /// 单位编码
// /// </summary>
// public string dwbm { get; set; }
// /// <summary>
// /// (简案)王奇涉嫌危险驾驶案 v
// /// </summary>
// public string jzmc { get; set; }
// /// <summary>
// /// 卷宗制作人
// /// </summary>
// public string jzzzr { get; set; }
// /// <summary>
// /// 案件类别编码
// /// </summary>
// public string ajlbbm { get; set; }
// /// <summary>
// /// 案件类别名称
// /// </summary>
// public string ajlbmc { get; set; }
// /// <summary>
// /// 卷宗目录 v
// /// </summary>
// public List<JZML> jzml { get; set; }
// }
// /// <summary>
// /// 卷宗目录
// /// </summary>
// public class JZML
// {
// /// <summary>
// ///
// /// </summary>
// public string taskid { get; set; }
// /// <summary>
// /// 卷宗编号
// /// </summary>
// public string jzbh { get; set; }
// /// <summary>
// /// 目录编号
// /// </summary>
// public string mlbh { get; set; }
// /// <summary>
// /// 父目录编号
// /// </summary>
// public string fmlbh { get; set; }
// /// <summary>
// /// 目录显示名称
// /// </summary>
// public string mlxsmc { get; set; }
// /// <summary>
// /// 目录信息
// /// </summary>
// public string mlxx { get; set; }
// /// <summary>
// /// 目录顺序号
// /// </summary>
// public string mlsxh { get; set; }
// /// <summary>
// /// 目录类型 卷,目录看,文件
// /// </summary>
// public string mllx { get; set; }
// /// <summary>
// /// 单位编码
// /// </summary>
// public string dwbm { get; set; }
// public List<JZWJItem> jzwj { get; set; }
// }
// /// <summary>
// /// 卷宗文件
// /// </summary>
// public class JZWJItem
// {
// /// <summary>
// /// 文件唯一标识
// /// </summary>
// public string wjxh { get; set; }
// /// <summary>
// /// 目录编号
// /// </summary>
// public string mlbh { get; set; }
// /// <summary>
// /// 源文件路径
// /// </summary>
// public string ywjlj { get; set; }
// /// <summary>
// /// 缩略图文件路径
// /// </summary>
// public string sltwjlj { get; set; }
// /// <summary>
// /// pdf文件路径
// /// </summary>
// public string pdfwjlj { get; set; }
// /// <summary>
// /// 图片实际显示路径!
// /// </summary>
// public string jpgwjlj { get; set; }
// /// <summary>
// /// 文件页码
// /// </summary>
// public string wjym { get; set; }
// /// <summary>
// /// 文件类型
// /// </summary>
// public string wjlx { get; set; }
// /// <summary>
// ///
// /// </summary>
// public string wjscbz { get; set; }
// /// <summary>
// /// 文件顺序号 排序
// /// </summary>
// public int wjsxh { get; set; }
// /// <summary>
// /// 文件显示名称 第二页
// /// </summary>
// public string wjxsmc { get; set; }
// /// <summary>
// /// 卷宗编号
// /// </summary>
// public string jzbh { get; set; }
// /// <summary>
// /// 文件ocr识别状态
// /// </summary>
// public string wjocrsbzt { get; set; }
// /// <summary>
// /// 创建时间
// /// </summary>
// public string cjsj { get; set; }
// /// <summary>
// /// 上传时间
// /// </summary>
// public string time { get; set; }
// public string taskid { get; set; }
// /// <summary>
// /// 文件标识
// /// </summary>
// public string wjbs { get; set; }
// /// <summary>
// /// 标识编号
// /// </summary>
// public string bsbh { get; set; }
// }
//}

65
Elight.Entity/AppMode/Lawyer/JZJBXX.cs

@ -0,0 +1,65 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.AppMode.Lawyer
{
/// <summary>
/// 卷宗基本信息
/// </summary>
[Serializable]
[DataContract]
[SugarTable("case_jzlbxx")]
public class JZJBXX
{
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
/// <summary>
/// 部门受案号 v
/// </summary>
[DataMember]
public string bmsah { get; set; }
[DataMember]
/// <summary>
/// 卷宗编号v
/// </summary>
public string jzbh { get; set; }
[DataMember]
/// <summary>
/// 单位编码
/// </summary>
public string dwbm { get; set; }
[DataMember]
/// <summary>
/// (简案)王奇涉嫌危险驾驶案 v
/// </summary>
public string jzmc { get; set; }
[DataMember]
/// <summary>
/// 卷宗制作人
/// </summary>
public string jzzzr { get; set; }
[DataMember]
/// <summary>
/// 案件类别编码
/// </summary>
public string ajlbbm { get; set; }
[DataMember]
/// <summary>
/// 案件类别名称
/// </summary>
public string ajlbmc { get; set; }
/// <summary>
/// 导航
/// </summary>
[Navigate(NavigateType.OneToMany, nameof(JZML.jzId))]//BookA表中的studenId
public List<JZML> jzml { get; set; }//注意禁止给books手动赋值
}
}

82
Elight.Entity/AppMode/Lawyer/JZML.cs

@ -0,0 +1,82 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.AppMode.Lawyer
{
/// <summary>
/// 卷宗目录
/// </summary>
[Serializable]
[DataContract]
[SugarTable("case_jzml")]
public class JZML
{
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
/// <summary>
/// 卷宗Id
/// </summary>
public string? jzId { get; set; }
/// <summary>
///
/// </summary>
public string taskid { get; set; }
[DataMember]
/// <summary>
/// 卷宗编号
/// </summary>
public string jzbh { get; set; }
[DataMember]
/// <summary>
/// 目录编号
/// </summary>
public string mlbh { get; set; }
[DataMember]
/// <summary>
/// 父目录编号
/// </summary>
public string fmlbh { get; set; }
[DataMember]
/// <summary>
/// 目录显示名称
/// </summary>
public string mlxsmc { get; set; }
[DataMember]
/// <summary>
/// 目录信息
/// </summary>
public string mlxx { get; set; }
[DataMember]
/// <summary>
/// 目录顺序号
/// </summary>
public int mlsxh { get; set; }
[DataMember]
/// <summary>
/// 目录类型 卷,目录看,文件
/// </summary>
public string mllx { get; set; }
[DataMember]
/// <summary>
/// 单位编码
/// </summary>
public string dwbm { get; set; }
/// <summary>
/// 导航
/// </summary>
[Navigate(NavigateType.OneToMany, nameof(JZWJItem.jzmlId))]//BookA表中的studenId
public List<JZWJItem> jzwj { get; set; }//注意禁止给books手动赋值
}
}

116
Elight.Entity/AppMode/Lawyer/JZWJItem.cs

@ -0,0 +1,116 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.AppMode.Lawyer
{
/// <summary>
/// 卷宗文件
/// </summary>
[Serializable]
[DataContract]
[SugarTable("case_jzwjitem")]
public class JZWJItem
{
/// <summary>
/// 文件唯一标识
/// </summary>
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
/// <summary>
/// 卷宗目录Id
/// </summary>
public string? jzmlId { get; set; }
[DataMember]
public string wjxh { get; set; }
[DataMember]
/// <summary>
/// 目录编号
/// </summary>
public string mlbh { get; set; }
[DataMember]
/// <summary>
/// 源文件路径
/// </summary>
public string ywjlj { get; set; }
[DataMember]
/// <summary>
/// 缩略图文件路径
/// </summary>
public string sltwjlj { get; set; }
[DataMember]
/// <summary>
/// pdf文件路径
/// </summary>
public string pdfwjlj { get; set; }
[DataMember]
/// <summary>
/// 图片实际显示路径!
/// </summary>
public string jpgwjlj { get; set; }
[DataMember]
/// <summary>
/// 文件页码
/// </summary>
public string wjym { get; set; }
[DataMember]
/// <summary>
/// 文件类型
/// </summary>
public string wjlx { get; set; }
[DataMember]
/// <summary>
///
/// </summary>
public string wjscbz { get; set; }
[DataMember]
/// <summary>
/// 文件顺序号 排序
/// </summary>
public string wjsxh { get; set; }
[DataMember]
/// <summary>
/// 文件显示名称 第二页
/// </summary>
public string wjxsmc { get; set; }
[DataMember]
/// <summary>
/// 卷宗编号
/// </summary>
public string jzbh { get; set; }
[DataMember]
/// <summary>
/// 文件ocr识别状态
/// </summary>
public string wjocrsbzt { get; set; }
[DataMember]
/// <summary>
/// 创建时间
/// </summary>
public string cjsj { get; set; }
[DataMember]
/// <summary>
/// 上传时间
/// </summary>
public string time { get; set; }
[DataMember]
public string taskid { get; set; }
[DataMember]
/// <summary>
/// 文件标识
/// </summary>
public string wjbs { get; set; }
[DataMember]
/// <summary>
/// 标识编号
/// </summary>
public string bsbh { get; set; }
}
}

69
Elight.Entity/AppMode/Lawyer/LawyerArchives.cs

@ -0,0 +1,69 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity.AppMode.Lawyer
{
[Serializable]
[DataContract]
[SugarTable("case_lawyerarchives")]
public class LawyerArchives
{
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string? Id { get; set; }
[DataMember]
public string? unitcode { get; set; }
[DataMember]
public string? jzlbxxId { get; set; }
[DataMember]
public string? bmsah { get; set; }
[DataMember]
public string? lawyerId { get; set; }
[DataMember]
public string? lawyerName { get; set; }
[DataMember]
public string? party { get; set; }
[DataMember]
public string? partycardId { get; set; }
[DataMember]
public string? casename { get; set; }
[DataMember]
public DateTime? permissibleStartTime { get; set; }
[DataMember]
public DateTime? permissibleEndTime { get; set; }
[DataMember]
public DateTime? actualStartTime { get; set; }
[DataMember]
public DateTime? actualEndTime { get; set; }
[DataMember]
public ushort? status { get; set; }
[DataMember]
public ushort? copyStatus { get; set; }
[DataMember]
public ushort? copyLimit { get; set; }
[DataMember]
public string? remake { get; set; }
[DataMember]
public DateTime? createTime { get; set; }
[DataMember]
public string? createrId { get; set; }
/// <summary>
/// 已缓存的文件计数
/// </summary>
public int? downloadedCount { get; set; }
/// <summary>
/// 总的文件数计数
/// </summary>
public int? jwCount { get; set; }
/// <summary>
/// 是否删除:0:未删除、1:删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
}
}

64
Elight.Entity/AuthManageProfile.cs

@ -0,0 +1,64 @@
using AutoMapper;
using Elight.Entity.APPDto.Lawyer;
using Elight.Entity.AppMode.Lawyer;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity
{
public class AuthManageProfile : Profile
{
public AuthManageProfile()
{
this.CreateCusMap<App_Sys_AddLawyerInput, App_Sys_UserModel>();
CreateMap<JZJBXX, JZJBXXDto>().ReverseMap();
CreateMap<JZML, JZMLDto>().ReverseMap();
CreateMap<JZWJItem, JZWJItemDto>().ReverseMap();
CreateMap<LawyerArchives, LawyerArchivesDto>().ReverseMap();
CreateMap<App_LawyerServicesModel, QRLawyerServiceDto>().ReverseMap();
CreateMap<App_Sys_UserModel, QRUserDto>().ReverseMap();
//CreateMap<App_Sys_AddLawyerInput, App_Sys_UserModel>();
CreateMap<App_CloudCabinetModel, App_CloudCabinetDto>();
CreateMap<App_ConfessionModel, App_ConfessionDto>();
CreateMap<App_DocumentModel, App_DocumentDto>();
CreateMap<App_HearingModel, App_HearingDto>();
CreateMap<App_LawyerServicesModel, App_LawyerServicesDto>();
CreateMap<App_ReceptionModel, App_ReceptionDto>();
CreateMap<App_RemoteModel, App_RemoteDto>();
//用户管理
CreateMap<App_Sys_UserDto, App_Sys_UserModel>();
}
}
public static class AutoMapperProFileExtension
{
public static void CreateCusMap<Source, Destination>(this Profile profile)
{
profile.CreateMap<Source, Destination>().ForAllMembers(opt =>
{
opt.UseDestinationValue();
opt.Condition((s, e, r, t) =>
{
if (r == null)
{
return false;
}
else { return true; }
});
});
}
}
}

2
Elight.Entity/Elight.Entity.csproj

@ -4,9 +4,11 @@
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<GenerateDocumentationFile>True</GenerateDocumentationFile>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="AutoMapper" Version="12.0.1" />
<PackageReference Include="SqlSugarCore" Version="5.1.4.83" />
</ItemGroup>

37
Elight.Entity/SystemDto/App_Sys_AddLawyerInput.cs

@ -0,0 +1,37 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Entity
{
public class App_Sys_AddLawyerInput
{
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 身份证号码
/// </summary>
[DataMember]
public string? cardId { get; set; }
/// <summary>
/// 电话号码
/// </summary>
[DataMember]
public string? phone { get; set; }
/// <summary>
/// 名称
/// </summary>
[DataMember]
public string? name { get; set; }
[DataMember]
public string? identitycardId { get; set; }
/// <summary>
/// 部门
/// </summary>
[DataMember]
public string? departmentName { get; set; }
}
}

33
Elight.Entity/SystemDto/App_Sys_RoleDto.cs

@ -0,0 +1,33 @@

using SqlSugar;
using System;
using System.Runtime.Serialization;
namespace Elight.Entity
{
/// <summary>
/// 角色表(扩展)
/// </summary>
[DataContract]
public class App_Sys_RoleDto
{
/// <summary>
/// 角色Id
/// </summary>
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 角色名称
/// </summary>
[DataMember]
public string? name { get; set; }
/// <summary>
/// 角色用户
/// </summary>
[DataMember]
public string? userId { get; set; }
}
}

147
Elight.Entity/SystemDto/App_Sys_UserDto.cs

@ -0,0 +1,147 @@

using SqlSugar;
using System;
using System.Runtime.Serialization;
namespace Elight.Entity
{
/// <summary>
/// 用户信息表(app_sys_user)
/// </summary>
[DataContract]
public class App_Sys_UserDto
{
/// <summary>
/// 表里用户唯一标识符,自增长Id
/// </summary>
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string? unitCode { get; set; }
/// <summary>
/// 部门id
/// </summary>
[DataMember]
public string? department { get; set; }
/// <summary>
/// 部门
/// </summary>
[DataMember]
public string? departmentName { get; set; }
/// <summary>
/// 单位证明 律师事务所证明
/// </summary>
public string? departmentPhoto { get; set; }
/// <summary>
/// 密码
/// </summary>
[DataMember]
public string? Password { get; set; }
/// <summary>
/// 名称
/// </summary>
[DataMember]
public string? name { get; set; }
/// <summary>
/// 职务
/// </summary>
[DataMember]
public string? duties { get; set; }
/// <summary>
/// 电话号码
/// </summary>
[DataMember]
public string? phone { get; set; }
/// <summary>
/// 身份证号码
/// </summary>
[DataMember]
public string? cardId { get; set; }
/// <summary>
/// 身份(检察官,律师,当事人)
/// </summary>
[DataMember]
public string? identity { get; set; }
/// <summary>
/// 微信Id
/// </summary>
[DataMember]
public string? wechatId { get; set; }
/// <summary>
/// 账号类型0:系统,1:APP
/// </summary>
[DataMember]
public int? usertype { get; set; }
/// <summary>
/// 是否停用 0:启用,1禁用
/// </summary>
[DataMember]
public int? isdeactivate { get; set; } = 0;
/// <summary>
/// 是否App通用:0:通用,1:不通用
/// </summary>
[DataMember]
public int? becurrent { get; set; }
/// <summary>
/// 头像地址
/// </summary>
[DataMember]
public string? photo { get; set; }
/// <summary>
/// 性别 0:女 1:男
/// </summary>
[DataMember]
public int? sex { get; set; }
/// <summary>
/// 是否删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
/// <summary>
/// 审核状态
/// </summary>
[DataMember]
public int? audit { get; set; }
/// <summary>
/// 审核描述
/// </summary>
[DataMember]
public string? describe { get; set; }
/// <summary>
/// 创建人Id
/// </summary>
[DataMember]
public string? createuserId { get; set; }
/// <summary>
/// 创建人
/// </summary>
[DataMember]
public string? createusername { get; set; }
/// <summary>
/// 角色ID
/// </summary>
[DataMember]
public string? roleId { get; set; }
/// <summary>
/// 创建时间
/// </summary>
[DataMember]
public DateTime? createtime { get; set; } = DateTime.Now;
}
}

2
Elight.Entity/SystemModel/App_Sys_RoleMenuModel.cs

@ -54,7 +54,7 @@ namespace Elight.Entity
/// 是否删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
public int? IsDelete { get; set; } = 0;
}
}

2
Elight.Entity/SystemModel/App_Sys_RoleUserModel.cs

@ -54,7 +54,7 @@ namespace Elight.Entity
/// 是否删除
/// </summary>
[DataMember]
public int? IsDeleted { get; set; } = 0;
public int? IsDelete { get; set; } = 0;
}
}

24
Elight.Entity/SystemModel/App_Sys_UserModel.cs

@ -37,6 +37,10 @@ namespace Elight.Entity
/// </summary>
[DataMember]
public string? departmentName { get; set; }
/// <summary>
/// 单位证明 律师事务所证明
/// </summary>
public string? departmentPhoto { get; set; }
/// <summary>
/// 密码
/// </summary>
@ -65,13 +69,27 @@ namespace Elight.Entity
/// 身份证号码
/// </summary>
[DataMember]
public string? cardId { get; set; }
public string? cardId { get; set; }
/// <summary>
/// 身份证照片
/// </summary>
[DataMember]
public string? cardIdphoto { get; set; }
/// <summary>
/// 身份(检察官,律师,当事人)
/// </summary>
[DataMember]
public string? identity { get; set; }
public string? identity { get; set; }
/// <summary>
/// 身份证件号码
/// </summary>
[DataMember]
public string? identitycardId { get; set; }
/// <summary>
/// 身份 证件照片
/// </summary>
[DataMember]
public string? identityphoto { get; set; }
/// <summary>
/// 微信Id
/// </summary>

9
Elight.Entity/SystemModel/UpdateuserDto.cs

@ -36,6 +36,15 @@ namespace Elight.Entity.SystemModel
/// 选择时间
/// </summary>
public DateTime? time { get; set; }
/// <summary>
/// 开始
/// </summary>
public DateTime? starttime { get; set; }
/// <summary>
/// 结束
/// </summary>
public DateTime? endtime { get; set; }
public int? Type { get; set; }
}

1
Elight.Logic/Elight.Logic.csproj

@ -4,6 +4,7 @@
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<GenerateDocumentationFile>True</GenerateDocumentationFile>
</PropertyGroup>
<ItemGroup>

21
Elight.Logic/Job/QuartzHostedService.cs

@ -2,6 +2,7 @@
using Elight.Utility.logs;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using Quartz;
using Quartz.Spi;
using SqlSugar;
@ -19,16 +20,30 @@ namespace Elight.Logic.Job
private readonly ISchedulerFactory _schedulerFactory;
private readonly IJobFactory _jobFactory;
private readonly WsJob _myJob;
private readonly IConfiguration configuration;
private readonly ILogger<QuartzHostedService> logger;
public QuartzHostedService(ISchedulerFactory schedulerFactory, IJobFactory jobFactory, WsJob myJob, IConfiguration configuration)
public QuartzHostedService(ISchedulerFactory schedulerFactory, IJobFactory jobFactory, WsJob myJob, IConfiguration _configuration, ILogger<QuartzHostedService> _logger)
{
_schedulerFactory = schedulerFactory;
_jobFactory = jobFactory;
_myJob = myJob;
this.configuration = _configuration;
this.logger = _logger;
}
public async Task StartAsync(CancellationToken cancellationToken)
{
{
if (configuration.GetSection("SyncDataFromJiguang:enable").Value == "false")
{
logger.LogInformation("disabled data sync from jiguang api");
return;
}
else
{
logger.LogInformation("enable data sync from jiguang api ");
}
try
{
IScheduler scheduler = await _schedulerFactory.GetScheduler(cancellationToken);
@ -63,7 +78,7 @@ namespace Elight.Logic.Job
}
catch (Exception ex)
{
LogService.WriteLog(ex.Message+"___"+ex.InnerException, "同步程序错误");
LogService.WriteLog(ex.Message + "___" + ex.InnerException, "同步程序错误");
}
#endregion
}

2
Elight.Logic/Model/App_LawyerServicesInput.cs

@ -81,6 +81,6 @@ namespace Elight.Logic
/// 0:待办理,1:同意 ,2:拒绝
/// </summary>
[DataMember]
public int state { get; set; }
public int? state { get; set; }
}
}

20
Elight.Logic/Model/Lawyer/AddArchivesInfoInput.cs

@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Logic.Model.Lawyer
{
public class AddArchivesInfoInput
{
/// <summary>
/// 部门受案号
/// </summary>
public string Bmsah { get; set; }
/// <summary>
/// 被选中的三级id
/// </summary>
public List<string> Ids { get; set; }
}
}

64
Elight.Logic/Model/Lawyer/LawyerArchivesInput.cs

@ -0,0 +1,64 @@
using Elight.Utility.Code;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Elight.Logic.Model.Lawyer
{
public class LawyerArchivesInput:Paging
{
/// <summary>
/// 阅卷Id
/// </summary>
[DataMember]
public string? Id { get; set; }
/// <summary>
/// 部门受案号
/// </summary>
[DataMember]
public string? bmsah { get; set; }
/// <summary>
/// 律师姓名
/// </summary>
[DataMember]
public string? lawyerName { get; set; }
/// <summary>
/// 案件名称
/// </summary>
[DataMember]
public string? caseName { get; set; }
/// <summary>
/// <summary>
/// 当事人姓名
/// </summary>
[DataMember]
public string? party { get; set; }
/// <summary>
/// 当事人身份证
/// </summary>
[DataMember]
public string? partyCardId { get; set; }
/// <summary>
/// 单位Id
/// </summary>
[DataMember]
public string? unitCode { get; set; }
/// <summary>
/// 接待人Id
/// </summary>
[DataMember]
public string? receptionuserId { get; set; }
/// <summary>
/// 0:待办理,1:同意 ,2:拒绝 预约申请状态
/// </summary>
[DataMember]
public int? state { get; set; }
public int? Isdelete { get; set; }
}
}

2
Elight.Logic/SystemModel/App_Sys_MenuTree.cs

@ -73,7 +73,7 @@ namespace Elight.Logic.SystemModel
public int? IsDelete { get; set; }
[SqlSugar.SugarColumn(IsIgnore = true)]
public List<App_Sys_UnitTree>? children { get; set; }
public List<App_Sys_MenuTree>? children { get; set; }
}
}

2
Elight.Logic/SystemModel/App_Sys_RoleMenuAdd.cs

@ -20,7 +20,7 @@ namespace Elight.Logic.SystemModel
/// 角色菜单集合
/// </summary>
[DataMember]
public List<App_Sys_RoleMenuModel>? RoleMenulist { get; set; }
public string? RoleMenuIds { get; set; }
}
}

1
Elight.Utility/Elight.Utility.csproj

@ -13,6 +13,7 @@
<PackageReference Include="Microsoft.Extensions.Identity.Stores" Version="7.0.5" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.2" />
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerGen" Version="6.2.3" />
<PackageReference Include="System.Drawing.Common" Version="6.0.0" />
</ItemGroup>
<ItemGroup>

200
Elight.Utility/Extensions/ConvertorHelper.cs

@ -0,0 +1,200 @@
using Newtonsoft.Json;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using System;
using System.Text.RegularExpressions;
namespace Elight.Utility.Extensions
{
public static class ConvertorHelper
{
/// <summary>
/// model=>json string
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="t"></param>
/// <returns></returns>
private readonly static JsonSerializerSettings settings = new JsonSerializerSettings()
{
NullValueHandling = NullValueHandling.Ignore,
ReferenceLoopHandling = ReferenceLoopHandling.Ignore
};
public static string ConvertToJsonStr<T>(this T t)
{
try
{
return JsonConvert.SerializeObject(t, Formatting.None, settings);
}
catch
{
return default;
}
}
public static T DeepCopy<T>(this T t)
{
return t.ConvertToJsonStr().ConvertToModel<T>();
}
/// <summary>
/// json转为匿名对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="json"></param>
/// <param name="anonymousTypeObject"></param>
/// <returns></returns>
public static T ConvertToAnonymousType<T>(this object json, T anonymousTypeObject)
{
try
{
return JsonConvert.DeserializeAnonymousType(json.ToString(), anonymousTypeObject);
}
catch
{
return default;
}
}
/// <summary>
/// object 转匿名类
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="anonymous"></param>
/// <param name="anonymousType"></param>
/// <returns></returns>
public static T ConvertToAnonymous<T>(this object anonymous, T anonymousType)
{
try
{
if (anonymous != null)
{
return (T)anonymous;
}
else
{
return default;
}
}
catch
{
return default;
}
}
/// <summary>
/// json string=>mdoel
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="str"></param>
/// <returns></returns>
public static T ConvertToModel<T>(this string str, [CallerMemberName] string methodname = "")
{
try
{
return JsonConvert.DeserializeObject<T>(str);
}
catch (Exception)
{
return default;
}
}
public static string ConvertToBase64(this string str)
{
return Convert.ToBase64String(Encoding.Default.GetBytes(str));
}
public static string ConvertToGetParam(this object obj)
{
StringBuilder strBui = new StringBuilder();
System.Reflection.PropertyInfo[] proArray = obj.GetType().GetProperties();
foreach (System.Reflection.PropertyInfo pro in proArray)
{
if (strBui.Length < 1)
{
strBui.Append("?");
}
else
{
strBui.Append("&");
}
strBui.Append(string.Format("{0}={1}", pro.Name, pro.GetValue(obj, null)));
}
return strBui.ToString();
}
// DateTime --> long
public static long ConvertDateTimeToLong(DateTime dt)
{
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
TimeSpan toNow = dt.Subtract(dtStart);
long timeStamp = toNow.Ticks;
timeStamp = long.Parse(timeStamp.ToString().Substring(0, timeStamp.ToString().Length - 4));
return timeStamp;
}
// long --> DateTime
public static DateTime ConvertLongToDateTime(long d)
{
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
long lTime = long.Parse(d + "0000");
TimeSpan toNow = new TimeSpan(lTime);
DateTime dtResult = dtStart.Add(toNow);
return dtResult;
}
}
public static class DateHelper
{
public static DateTime GetStartDateOfDay(DateTime date)
{
return date.Date;
}
public static DateTime GetEndDateOfDay(DateTime date)
{
return date.Date.AddDays(1).AddSeconds(-1);
}
public static DateTime GetStartDateOfMonth(DateTime date)
{
return date.AddDays(1 - date.Day).Date;
}
public static DateTime GetEndDateOfMonth(DateTime date)
{
return GetStartDateOfMonth(date).AddMonths(1).AddSeconds(-1);
}
public static DateTime GetStartDateOfYear(DateTime date)
{
return date.AddDays(1 - date.Day).AddMonths(1 - date.Month).Date;
}
public static DateTime GetEndDateOfYear(DateTime date)
{
return GetStartDateOfYear(date).AddYears(1).AddSeconds(-1);
}
public static List<DateTime> GetArrayByDay(DateTime starttime, DateTime endtime)
{
var list = new List<DateTime>();
for (DateTime dt = starttime; dt.Date <= endtime.Date; dt = dt.AddDays(1))
{
list.Add(dt.Date);
}
return list;
}
public static List<DateTime> GetArrayByMonth(DateTime starttime, DateTime endtime)
{
var list = new List<DateTime>();
for (DateTime dt = starttime; dt.Date <= endtime.Date; dt = dt.AddMonths(1))
{
list.Add(GetStartDateOfMonth(dt.Date));
}
return list;
}
public static List<DateTime> GetArrayByYear(DateTime starttime, DateTime endtime)
{
var list = new List<DateTime>();
for (DateTime dt = starttime; dt.Date <= endtime.Date; dt = dt.AddYears(1))
{
list.Add(GetStartDateOfYear(dt.Date));
}
return list;
}
}
}

12
Elight.Utility/Extensions/StringExtension.cs

@ -1,4 +1,5 @@
using System;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
@ -61,6 +62,15 @@ namespace Elight.Utility.Extensions
string str = string.Concat(s.First().ToString().ToLower(), s.AsSpan(1));
return str;
}
public static string Jsonstr(this string str, string key)
{
JObject esult = JObject.Parse(str);
if (esult != null && esult[key] != null)
{
return $"{esult[key]}";
}
return null;
}
/// <summary>
/// 首字母转大写

16
Elight.Utility/Result.cs

@ -23,19 +23,19 @@ namespace Elight.Utility.Code
/// </summary>
[DataMember]
public string Message { get; set; }
/// <summary>
/// 消息
/// </summary>
[DataMember]
public dynamic result { get; set; }
}
/// <summary>
/// 消息
/// </summary>
[DataMember]
public dynamic result { get; set; }
}
/// <summary>
/// 消息
/// </summary>
[Serializable]
[DataContract]
public class ResultData:Result
public class ResultData : Result
{
/// <summary>
/// 数据
@ -56,6 +56,6 @@ namespace Elight.Utility.Code
/// 扩展数据
/// </summary>
[DataMember]
public T Data { get; set; }
public new T result { get; set; }
}
}

8
Elight.Utility/User.cs

@ -34,8 +34,12 @@ namespace Elight.Utility
public App_Sys_UserModel Userdata()
{
var data = _accessor?.HttpContext?.User?.FindFirst(ClaimTypes.UserData);
var da = JsonConvert.DeserializeObject<App_Sys_UserModel>(data.Value);
return da;
if (data!=null)
{
var da = JsonConvert.DeserializeObject<App_Sys_UserModel>(data.Value);
return da;
}else
return null;
}
}
}

5
WebApplication1/.config/dotnet-tools.json

@ -0,0 +1,5 @@
{
"version": 1,
"isRoot": true,
"tools": {}
}

371
WebApplication1/Controllers/TwentySystemController.cs

@ -0,0 +1,371 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.ViewFeatures;
using Newtonsoft.Json;
using System.Net.Http;
using System.Runtime;
using System.Runtime.Serialization;
using test;
using WebApplication1.Models;
namespace WebApplication1.Controllers
{
[ApiController]
[Route("[controller]/[action]")]
public class TwentySystemController : ControllerBase
{
private readonly HttpClient httpClient;
private string ip, port;
public TwentySystemController(IHttpClientFactory httpClientFactory, IConfiguration configuration)
{
ip = configuration.GetSection("Configs:SystemIp").Value;
port = configuration.GetSection("Configs:Port").Value;
httpClient = httpClientFactory.CreateClient();
httpClient.BaseAddress = new Uri($"http://{ip}:{port}");
httpClient.DefaultRequestHeaders.Add("Accept", "application/json");
httpClient.DefaultRequestHeaders.Add("User-Agent", "HttpClientFactory-Sample");
httpClient.DefaultRequestHeaders.ConnectionClose = true;
}
[HttpGet]
public async Task<Result<JZJBXX>> GetJZXX(string dwbm, string bmsah)
{
try
{
MDossier dossier = new MDossier(dwbm, $"{ip}:{port}");
var data = await dossier.GetJZXX(dwbm, bmsah);
return new Result<JZJBXX>()
{
IsSucceed = true,
Message = "操作成功",
result = data
};
}
catch (Exception ex)
{
return new Result<JZJBXX>()
{
IsSucceed = false,
Message = "操作失败" + ex.Message
};
}
}
[HttpGet]
public async Task<Result<Paging<JZInfo>>> GetCaseInfo(string? casename, string? bmsah, string? dwbm, DateTime? starttime, DateTime? endtime, int page, int size)
{
await Task.Delay(10);
var param = new
{
ksslrq = starttime?.ToString("yyyy-MM-dd") ?? DateTime.Now.AddDays(-100).ToString("yyyy-MM-dd"),
jsslrq = endtime?.ToString("yyyy-MM-dd") ?? DateTime.Now.ToString("yyyy-MM-dd"),
bmsah = bmsah,
zzzt = "",
ajlbbms = new string[] { "2801", "2802", "2803", "1602", "2001", "2002", "2003", "2004", "2005", "2006", "2007", "2009", "2010", "2011", "2012", "2013", "2015", "2016", "2017", "2018", "2019", "2020", "2021", "2022", "2023", "2024", "2025", "2026", "2027", "2029", "2031", "2032", "2033", "2034", "2035", "2036", "2037", "2039", "2040", "2041", "2042", "2043", "2044", "2048", "2049", "2050", "2051", "2052", "2053", "2054", "2055", "2056", "2058", "2059", "2062", "2077", "2078", "1603", "1604", "1608", "1611", "1614", "1619", "1621", "1622", "1625", "1626", "1630", "1631", "1632", "1633", "1634", "1635", "1636", "1637", "1638", "1650", "1801", "1802", "1803", "1805", "1806", "1807", "1808", "1809", "1810", "1812", "1813", "1901", "1902", "1903", "1904", "1905", "1906", "1907", "1908", "1909", "1910", "1911", "1912", "1913", "1914", "1915", "1916", "1917", "1918", "1919", "0701", "0702", "0703", "0704", "0705", "0706", "0707", "0708", "0709", "0710", "0711", "0712", "0713", "0714", "0715", "0716", "0717", "0718", "0719", "0720", "0721", "0722", "0723", "0724", "0725", "0726", "0727", "1701", "1702", "1703", "1704", "1705", "1706", "1708", "1709", "1710", "1711", "1712", "1713", " 1714", "1715", "1716", "1718", "1719", "1720", "1722", "1723", "1724", "1725", "1726", "1727", "1728", "1729", "1730", "1731", "1732", "1733", "1734", "1736", "1737", "1738", "1740", "1741", "1742", "1743", "1744", "1745", "1747", "1748", "1749", "1750", "1752", "1753", "1754", "1756", "1757", "1758", "1759", "1760", "1761", "1762", "1768", "1769", "1770", "1771", "1772", "1773", "1774", "1775", "1778", "1779", "1780", "1781", "1782", "1784", "1785", "1786", "1787", "1788", "1789", "1790", "1791", "1792", "2701", "2702", "2703", "2704", "2705", "2706", "2707", "2708", "2710", "2711", "2712", "2713", "2714", "2715", "2716", "2717", "2718", "2719", "2721", "2722", "2723", "2724", "2726", "2727", "2728", "2729", "2730", "2731", "2732", "2733", "2734", "2735", "2736", "2737", "0801", "0802", "0803", "0804", "0805", "0806", "0808", "0809", "0810", "0811", "0812", "0813", "0814", "0815", "0816", "0817", "0818", "0819", "0820", "0821", "0822", "0823", "0824", "0825", "0826", "0827", "0828", "1401", "1402", "1403", "1404", "1405", "1406", "1408", "1409", "1410", "1411", "1412", "1413", "1414", "1415", "1101", "1102", "1103", "1104", "1105", "1107", "1108", "1109", "1111", "1112", "1302", "1303", "1304", "1305", "2202", "2203", "2204", "2205", "2207", "2209", "2301", "2302", "2303", "2401", "2402", "2101", "2102", "2103", "2104", "2105", "2106", "2107", "2108", "2109", "2110", "2111", "2112", "2113", "2114", "2115", "2116", "2117", "2118", "2119", "2120", "2122", "2123", "2124", "2130", "2501", "2502", "2509", "2601", "2602", "2603", "2604", "0301", "3001", "3002" },
ajmc = casename,
sfsy = "",
sfbd = "",
dwbms = new string[]
{
dwbm
},
page = page.ToString(),
size = size.ToString()
};
httpClient.DefaultRequestHeaders.Add("X-IDENTITY", "eyJkbGJtIjoi5rGk6Lev5bmzIiwicnlibSI6IjQxMDUwMzAwNzQiLCJkd2JtIjoiNDEwNTAzIiwiZHdtYyI6IuWMl+WFs+WMuumZoiIsInJ5bWMiOiLmsaTot6/lubMifQ==");
var request = await httpClient.PostAsJsonAsync("/dzjzzz-service/api/dzjzzz/dzjzzzYxJzjbxx/getDzzjzList", param);
var data = await request.EnsureSuccessStatusCode().Content.ReadAsStringAsync();
var result = data.ConvertToAnonymousType(new
{
code = default(string),
success = default(bool),
message = default(string),
data = new
{
pageNum = default(int),
pageSize = default(int),
total = default(int),
pages = default(int),
list = new[]
{
default(JZInfo)
}
}
});
if (result.success == true)
{
if (result.data == null)
{
return new Result<Paging<JZInfo>>()
{
IsSucceed = true,
Message = result.message ?? "查询成功"
};
}
else
{
var res = new Result<Paging<JZInfo>>()
{
IsSucceed = true,
Message = "操作成功",
result = new Paging<JZInfo>()
{
pageNum = result?.data?.pageNum,
pageSize = result?.data?.pageSize,
total = result?.data?.total,
pages = result?.data?.pages,
List = result?.data?.list?.ToList()
}
};
return res;
}
}
else
{
return new Result<Paging<JZInfo>>()
{
IsSucceed = false,
Message = result.message ?? "查询失败"
};
}
}
public static string? dttjMapdata;
/// <summary>
/// 案件协同添加
/// </summary>
/// <param name="bmsah">部门受案号</param>
/// <param name="dwbm">单位编码</param>
/// <returns></returns>
[HttpGet]
public async Task<List<dynamic>> CaseAdd(string bmsah, string dwbm)
{
// 测试参数
// string bmsah = "安北检未捕受[2023]410503000012号";
// string dwbm = "410503";
List<dynamic> list = new List<dynamic>();
try
{
List<string> untis = new List<string>();
// 接口地址 127.0.0.1:8080
var list_da = new List<Case_Info>(); //案件信息
var list_dad = new List<Case_Card_Copy>(); //案件信息案卡
var list_xxk = new List<Data_Table>(); //案件信息案卡选项卡信息
var list_akdad = new List<Case_Card>(); //添加数据到案件信息案卡
var infolist = new List<Case_Info>();
var detail = new List<Case_Info_Detail>();
string dqjdbh = string.Empty;
string dqjdmc = string.Empty;
// 案件信息参数
var lcJson = new
{
bmsah = bmsah // 部门受案号
};
// 案件信息接口
//var lcUrl = HttpHelper.Post("http://ajmx-service/api/caseCommon/getCaseBaseInfoAndSendLog", lcJson);
var request = await httpClient.PostAsJsonAsync("/ajmx-service/api/caseCommon/getCaseBaseInfoAndSendLog", lcJson);
var lcUrl = await request.EnsureSuccessStatusCode().Content.ReadAsStringAsync();
var lcModel = JsonConvert.DeserializeObject<ResultDto<LCDto>>(lcUrl);
if (lcModel.code == "0" && lcModel.success == true)
{
dqjdmc = lcModel.Data.dqjdmc;
dqjdbh = lcModel.Data.dqjdbh;
}
var uniquedata = infolist.Where(q => q.case_bmsah == bmsah).ToList();
if (uniquedata.Count == 0)
{
// 获取模型编码接口参数
var mxbmparm = new
{
dwbm = dwbm, // 单位编码
mxbm = lcModel.Data.ajmxbm // 案件模型编码
};
// 案件模型接口
//var mxbmstr = HttpHelper.Post("http://" + ajUrl + "/ajmx-service/api/model/getModelBaseInfo", mxbmparm);
var requestmxbmstr = await httpClient.PostAsJsonAsync("/ajmx-service/api/model/getModelBaseInfo", mxbmparm);
var mxbmstr = await requestmxbmstr.EnsureSuccessStatusCode().Content.ReadAsStringAsync();
var mxbm = JsonConvert.DeserializeObject<ResultDto<List<MxbmDto>>>(mxbmstr);
if (mxbm.code == "0" && mxbm.success == true)
{
foreach (var mxbmDto in mxbm.Data)
{
var mxbmsjmxbm = mxbmDto.sjmxbm;
// 案卡树信息参数
var akparm = new
{
mxbm = mxbm.Data[0].mxbm, // 模型编码
rootData = bmsah // 部门受案号
};
// 案卡树信息接口
var requestmxbmstra = await httpClient.PostAsJsonAsync("/ajmx-service/api/caseForm/getRunningTreetData", akparm);
var akstr = await requestmxbmstra.EnsureSuccessStatusCode().Content.ReadAsStringAsync();
var akdata = JsonConvert.DeserializeObject<ResultDto<List<AKDto>>>(akstr);
if (akdata.code == "0" && akdata.success == true)
{
foreach (var ak in akdata.Data)
{
if (ak.stbmList == null || ak.stbmList.Count == 0)
{
if (ak.children != null && ak.children.Count > 0)
{
foreach (var children in ak.children)
{
// 案件案卡信息参数
var xxk = new
{
zbZjMap = new { bmsah = bmsah },
dwbm = dwbm,
sjmxbm = mxbmsjmxbm,
stbmjh = children.stbmList,
xtbs = children.bdbs,
dttjMap = dttjMapdata,
zjMap = children.zjjh
};
#region 获取嫌疑人编号
// 获取嫌疑人编号
var xyrbm = "";
try
{
xyrbm = children.zjjh.ZRRBM;
}
catch (Exception ex)
{
xyrbm = "";
}
#endregion
// 案件案卡信息接口
//var xxkstr = HttpHelper.Post("http://" + ajUrl + "/ajmx-service/api/caseForm/getAkFormData", xxk);
var requestmxbmstrb = await httpClient.PostAsJsonAsync("/ajmx-service/api/caseForm/getAkFormData", xxk);
var xxkstr = await requestmxbmstrb.EnsureSuccessStatusCode().Content.ReadAsStringAsync();
var my_obj = JsonConvert.DeserializeObject<ResultDto<List<XxkDto>>>(xxkstr);
if (my_obj.code == "0" && my_obj.success == true)
{
string case_yszm = string.Empty;
string case_yszm_code = string.Empty;
for (var i = 0; i < my_obj.Data[0].zdsj.Count; i++)
{
if (my_obj.Data[0].zdsj[i].zdmc == "YSAY") // 移送案由代码
{
case_yszm = my_obj.Data[0].zdsj[i].bgqzdwbz; // 移诉罪名名称
case_yszm_code = my_obj.Data[0].zdsj[i].bgqzdbmz; // 移诉罪名编码
list.Add(new
{
yszmmc = case_yszm,
yszmbm = case_yszm_code // 在线标识
});
break;
}
}
}
}
}
}
}
}
}
}
}
//ret.IsSucceed = true;
//return Json(ret);
}
catch (Exception ex)
{
//ret.IsSucceed = false;
//ret.Message = "添加失败请联系技术人员!";
//return Json(ret);
}
return list;
}
}
public class Paging<T>
{
public int? pageNum { get; set; }
public int? pageSize { get; set; }
public int? total { get; set; }
public int? pages { get; set; }
public IEnumerable<T>? List { get; set; }
}
public class Result
{
/// <summary>
/// 成功/失败
/// </summary>
[DataMember]
public bool IsSucceed { get; set; }
/// <summary>
/// 消息
/// </summary>
[DataMember]
public string Message { get; set; }
/// <summary>
/// 消息
/// </summary>
[DataMember]
public dynamic result { get; set; }
}
public class Result<T> : Result
{
/// <summary>
/// 扩展数据
/// </summary>
[DataMember]
public new T result { get; set; }
}
public class JZInfo
{
public string? jzbh { get; set; }
public string? ajmc { get; set; }
public string? bmsah { get; set; }
public string? cbdwbm { get; set; }
public string? rybm { get; set; }
public string? rymc { get; set; }
public int? cs { get; set; }
public int? ys { get; set; }
public DateTime? cjsj { get; set; }
public DateTime? cjrq { get; set; }
public string? zzr { get; set; }
public string? zzrbm { get; set; }
public string? zzzt { get; set; }
public string? jzms { get; set; }
public string? jzxh { get; set; }
public string? nfbd { get; set; }
public string? jzsd { get; set; }
public string? ajlbbm { get; set; }
public string? ajlbmc { get; set; }
public DateTime? slrq { get; set; }
public string? jzocrzt { get; set; }
public string? id { get; set; }
public string? yjzmc { get; set; }
public string? sfck { get; set; }
public string? sfkcz { get; set; }
public string? qlzt { get; set; }
}
}

142
WebApplication1/ConvertorExtension.cs

@ -0,0 +1,142 @@
using Newtonsoft.Json;
using System.Runtime.CompilerServices;
using System.Text;
namespace WebApplication1
{
public static class ConvertorExtension
{
/// <summary>
/// model=>json string
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="t"></param>
/// <returns></returns>
private readonly static JsonSerializerSettings settings = new JsonSerializerSettings()
{
NullValueHandling = NullValueHandling.Ignore,
ReferenceLoopHandling = ReferenceLoopHandling.Ignore
};
public static string ConvertToJsonStr<T>(this T t)
{
try
{
return JsonConvert.SerializeObject(t, Formatting.None, settings);
}
catch
{
return default;
}
}
public static T DeepCopy<T>(this T t)
{
return t.ConvertToJsonStr().ConvertToModel<T>();
}
/// <summary>
/// json转为匿名对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="json"></param>
/// <param name="anonymousTypeObject"></param>
/// <returns></returns>
public static T ConvertToAnonymousType<T>(this object json, T anonymousTypeObject)
{
try
{
return JsonConvert.DeserializeAnonymousType(json.ToString(), anonymousTypeObject);
}
catch
{
return default;
}
}
/// <summary>
/// object 转匿名类
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="anonymous"></param>
/// <param name="anonymousType"></param>
/// <returns></returns>
public static T ConvertToAnonymous<T>(this object anonymous, T anonymousType)
{
try
{
if (anonymous != null)
{
return (T)anonymous;
}
else
{
return default;
}
}
catch
{
return default;
}
}
/// <summary>
/// json string=>mdoel
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="str"></param>
/// <returns></returns>
public static T ConvertToModel<T>(this string str, [CallerMemberName] string methodname = "")
{
try
{
return JsonConvert.DeserializeObject<T>(str);
}
catch (Exception)
{
return default;
}
}
public static string ConvertToBase64(this string str)
{
return Convert.ToBase64String(Encoding.Default.GetBytes(str));
}
public static string ConvertToGetParam(this object obj)
{
StringBuilder strBui = new StringBuilder();
System.Reflection.PropertyInfo[] proArray = obj.GetType().GetProperties();
foreach (System.Reflection.PropertyInfo pro in proArray)
{
if (strBui.Length < 1)
{
strBui.Append("?");
}
else
{
strBui.Append("&");
}
strBui.Append(string.Format("{0}={1}", pro.Name, pro.GetValue(obj, null)));
}
return strBui.ToString();
}
// DateTime --> long
public static long ConvertDateTimeToLong(DateTime dt)
{
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
TimeSpan toNow = dt.Subtract(dtStart);
long timeStamp = toNow.Ticks;
timeStamp = long.Parse(timeStamp.ToString().Substring(0, timeStamp.ToString().Length - 4));
return timeStamp;
}
// long --> DateTime
public static DateTime ConvertLongToDateTime(long d)
{
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
long lTime = long.Parse(d + "0000");
TimeSpan toNow = new TimeSpan(lTime);
DateTime dtResult = dtStart.Add(toNow);
return dtResult;
}
}
}

26
WebApplication1/Dockerfile

@ -0,0 +1,26 @@
# 选择从什么镜像基础上创建我们的镜像,相当于选择我们依赖的环境
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
LABEL description=""
LABEL version="1.0"
# 指定工作目录
WORKDIR /app
# 把当前目录复制到镜像的 app目录
COPY . .
#时区设置
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
# 暴露的端口
#EXPOSE 80
EXPOSE 5194
ENV ASPNETCORE_URLS=http://+:5194
ENV ASPNETCORE_ENVIRONMENT Production
# 最后设置启动的dll
ENTRYPOINT ["dotnet", "WebApplication1.dll"]

380
WebApplication1/MDossier.cs

@ -0,0 +1,380 @@
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
namespace test
{
internal class MDossier
{
private string TyywAddr
{
get;
set;
}
private string DWBM
{
get;
set;
}
public MDossier(string _dwbm, string _TyywAddr)
{
DWBM = _dwbm;
TyywAddr = _TyywAddr;
}
#region 获取卷宗信息操作
public async Task<JZJBXX> GetJZXX(string dwbm, string bmsah)
{
JZJBXX jbxx = new JZJBXX();
#region POST
string apiUrl = "http://" + TyywAddr + "/dzjz-service/api/dzjz/getDzjzInfo"; // 接口
//创建一个HTTP请求
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(apiUrl);
//Post请求方式
request.Method = "POST";
//内容类型
request.ContentType = "application/json";
//设置参数,并进行URL编码
string paraUrlCoded = "{\"bmsah\":\"" + bmsah + "\",\"dwbm\":\"" + dwbm + "\"}";
byte[] payload;
//将Json字符串转化为字节
payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded);
//设置请求的ContentLength
request.ContentLength = payload.Length;
//发送请求,获得请求流
Stream writer;
try
{
//获取用于写入请求数据的Stream对象
writer = request.GetRequestStream();
}
catch (Exception ex)
{
LogHelpe.WriteInfoLog("接口 1 参数序列化失败:" + ex.Message);
return jbxx;
}
//将请求参数写入流
writer.Write(payload, 0, payload.Length);
writer.Close();//关闭请求流
HttpWebResponse response;
try
{
//获得响应流
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
LogHelpe.WriteInfoLog("接口 1 请求异常:" + ex.Message);
return jbxx;
}
if (response != null)
{
Stream s = response.GetResponseStream();
StreamReader sRead = new StreamReader(s);
string postContent = sRead.ReadToEnd();
sRead.Close();
s.Close();
try
{
var jsonObj = JsonConvert.DeserializeObject<JBXXStruct>(postContent);
if (jsonObj != null)
{
if (jsonObj.jzjbxx != null)
{
if (jsonObj.jzjbxx.Count > 0)
{
jbxx = jsonObj.jzjbxx[0];
List<JZML> jzml = await GetJZML(bmsah);
jbxx.jzml = jzml;
}
}
}
}
catch (Exception ex)
{
LogHelpe.WriteErrorLog($"接口 1 失败原因:{ex.Message}");
}
}
return jbxx;
#endregion
}
private async Task<List<JZML>> GetJZML(string bmsah)
{
List<JZML> jzml = new List<JZML>();
#region POST
string apiUrl = "http://" + TyywAddr + "/dzjzzz-service/api/dzjz/getDzjzMlWjInfo"; // 集中部署
//创建一个HTTP请求
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(apiUrl);
//Post请求方式
request.Method = "POST";
//内容类型
request.ContentType = "application/json";
//设置参数,并进行URL编码
string paraUrlCoded = "{\"bmsah\":\"" + bmsah + "\"}";
byte[] payload;
//将Json字符串转化为字节
payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded);
//设置请求的ContentLength
request.ContentLength = payload.Length;
//发送请求,获得请求流
Stream writer;
try
{
//获取用于写入请求数据的Stream对象
writer = request.GetRequestStream();
}
catch (Exception ex)
{
LogHelpe.WriteInfoLog("接口 2 参数序列化失败:" + ex.Message);
return jzml;
}
//将请求参数写入流
writer.Write(payload, 0, payload.Length);
writer.Close();//关闭请求流
HttpWebResponse response;
try
{
//获得响应流
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
LogHelpe.WriteInfoLog("接口 2 请求异常:" + ex.Message);
return jzml;
}
if (response != null)
{
Stream s = response.GetResponseStream();
StreamReader sRead = new StreamReader(s);
string postContent = sRead.ReadToEnd();
sRead.Close();
s.Close();
try
{
var jsonObj = JsonConvert.DeserializeObject<JZMLStruct>(postContent);
if (jsonObj != null)
{
jzml = jsonObj.data.jzml;
if (jsonObj.data != null)
{
LogHelpe.WriteInfoLog("目录数据:" + jsonObj.data.jzml.Count);
foreach (var item in jzml)
{
// 文件接口的参数
var mlbh = item.mlbh;
var jzbh = item.jzbh;
//获取卷或目录下的所有文件列表
List<JZWJItem> wjlist = await GetJZMLWJ(mlbh, jzbh);
if (jsonObj.data.jzmlwj != null)
{
for (int i = 0; i < wjlist.Count; i++)
{
var wj = jsonObj.data.jzmlwj.Where(w => w.wjxh.Equals(wjlist[i].wjxh)).FirstOrDefault();
if (wj != null)
{
wjlist[i].bsbh = jsonObj.data.jzmlwj[i].bsbh;
}
}
}
item.jzwj = wjlist;
}
return jzml;
}
}
}
catch (Exception ex)
{
LogHelpe.WriteErrorLog($"接口 2 失败原因:{ex.Message}");
return jzml;
}
}
return jzml;
#endregion
}
/// <summary>
/// 获取卷或目录下的所有文件列表
/// </summary>
private async Task<List<JZWJItem>> GetJZMLWJ(string mlbh, string jzbh)
{
string apiUrl = "http://" + TyywAddr + "/dzjzzz-service/api/dzjzzz/dzjzzzYxJzmlwj/getJzmlwjInfo"; // 集中部署
LogHelpe.WriteInfoLog($"请求地址:{apiUrl}"); //创建一个HTTP请求
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(apiUrl);
//Post请求方式
request.Method = "POST";
//内容类型
request.ContentType = "application/json";
//设置参数,并进行URL编码
string paraUrlCoded = "{\"mlbh\":\"" + mlbh + "\",\"jzbh\": \"" + jzbh + "\"}";
byte[] payload;
//将Json字符串转化为字节
payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded);
//设置请求的ContentLength
request.ContentLength = payload.Length;
//发送请求,获得请求流
Stream writer;
try
{
//获取用于写入请求数据的Stream对象
writer = request.GetRequestStream();
}
catch (Exception ex)
{
LogHelpe.WriteInfoLog("接口 3 参数序列化失败:" + ex.Message);
return new List<JZWJItem>();
}
//将请求参数写入流
writer.Write(payload, 0, payload.Length);
writer.Close();//关闭请求流
HttpWebResponse response;
try
{
//获得响应流
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
LogHelpe.WriteInfoLog("接口 3 请求异常:" + ex.Message);
return new List<JZWJItem>();
}
if (response != null)
{
Stream s = response.GetResponseStream();
StreamReader sRead = new StreamReader(s);
string postContent = sRead.ReadToEnd();
s.Close();
sRead.Close();
try
{
var jsonObj = JsonConvert.DeserializeObject<JZWJStruct>(postContent);
if (jsonObj != null)
{
if (jsonObj.code == "0" && jsonObj.success == "true")
{
if (jsonObj.data != null && jsonObj.data.Count > 0)
{
List<JZWJItem> mLWJItems = jsonObj.data;
return mLWJItems;
}
}
}
}
catch (Exception ex)
{
LogHelpe.WriteErrorLog($"接口 3 失败原因:{ex.Message}");
}
}
return new List<JZWJItem>();
}
#endregion
#region 下载文件
//任务数据队列
private List<string> lst_bmsah = new List<string>();
private bool taskStatus = true;
private int taskCount = 0;
public async void DownJZFiles(JZJBXX jbxx, string dirPath, bool cacheFile = true)
{
if (jbxx != null)
{
if (jbxx.jzml != null && jbxx.jzml.Count > 0)
{
for (int m = 0; m < jbxx.jzml.Count; m++)
{
if (jbxx.jzml[m].jzwj != null && jbxx.jzml[m].jzwj.Count > 0)
{
for (int j = 0; j < jbxx.jzml[m].jzwj.Count; j++)
{
if (!Directory.Exists(dirPath))
{
Directory.CreateDirectory(dirPath);
}
if (Directory.Exists(dirPath))
{
string filePath = Path.Combine(dirPath, Path.GetFileName(jbxx.jzml[m].jzwj[j].wjxh + ".jpg"));
byte[] jpgBytes = DownJZWJFile(jbxx.jzml[m].jzwj[j].jpgwjlj, jbxx.jzml[m].jzwj[j].wjxsmc, jbxx.jzml[m].mlxsmc, filePath, cacheFile);
}
}
}
}
}
}
}
//下载图片
private byte[] DownJZWJFile(string url, string wjxsmc, string mlxsmc, string filePath, bool cacheFile = true)
{
byte[] jpgByte = new byte[] { };
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
//发送请求并获取相应回应数据
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
Stream responseStream = response.GetResponseStream();
try
{
#region 正式
MemoryStream memory = new MemoryStream();
byte[] bArr = new byte[1024];
int size = responseStream.Read(bArr, 0, (int)bArr.Length);
while (size > 0)
{
memory.Write(bArr, 0, size);
size = responseStream.Read(bArr, 0, (int)bArr.Length);
}
if (cacheFile)
{
//文件落地(本地存放)
using (var fileStream = File.Create(filePath))
{
memory.Seek(0, SeekOrigin.Begin);
memory.CopyTo(fileStream);
}
}
jpgByte = memory.ToArray();
// 关闭请求流
memory.Close();
responseStream.Close();
#endregion
}
catch (Exception ex)
{
LogHelpe.WriteErrorLog(string.Format("文件下载失败,文件名:{0}/{1},{2}", wjxsmc, mlxsmc, ex.Message));
}
}
catch (Exception ex)
{
LogHelpe.WriteErrorLog($"GetBytesFromUrl失败原因:{ex.Message}");
}
return jpgByte;
}
#endregion
}
}

261
WebApplication1/MDossierEntity.cs

@ -0,0 +1,261 @@
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
/// <summary>
/// 目录结构
/// </summary>
public class JZML
{
/// <summary>
///
/// </summary>
public string taskid { get; set; }
/// <summary>
///
/// </summary>
public string jzbh { get; set; }
/// <summary>
///
/// </summary>
public string mlbh { get; set; }
/// <summary>
///
/// </summary>
public string fmlbh { get; set; }
/// <summary>
/// 新增卷
/// </summary>
public string mlxsmc { get; set; }
/// <summary>
///
/// </summary>
public string mlxx { get; set; }
/// <summary>
///
/// </summary>
public string mlsxh { get; set; }
/// <summary>
///
/// </summary>
public string mllx { get; set; }
/// <summary>
///
/// </summary>
public string dwbm { get; set; }
public List<JZWJItem> jzwj { get; set; }
}
public class JZMLData
{
public List<JZML> jzml { get; set; }
//public List<JzmlwjItem> jzwj { get; set; }
public List<JzmlwjItem> jzmlwj { get; set; }
}
public class JZMLStruct
{
public string code { get; set; }
public string success { get; set; }
// 获取电子卷件信息成功
public string message { get; set; }
public JZMLData data { get; set; }
}
public class JzmlwjItem
{
/// <summary>
///
/// </summary>
public string wjxh { get; set; }
/// <summary>
///
/// </summary>
public string mlbh { get; set; }
/// <summary>
///
/// </summary>
public string wjym { get; set; }
/// <summary>
///
/// </summary>
public string wjlx { get; set; }
/// <summary>
///
/// </summary>
public string wjscbz { get; set; }
/// <summary>
///
/// </summary>
public int wjsxh { get; set; }
/// <summary>
/// 目录
/// </summary>
public string wjxsmc { get; set; }
/// <summary>
///
/// </summary>
public string jzbh { get; set; }
/// <summary>
///
/// </summary>
public string wjlj { get; set; }
/// <summary>
///
/// </summary>
public string wjmc { get; set; }
/// <summary>
///
/// </summary>
public string wjhz { get; set; }
/// <summary>
///
/// </summary>
public string bsbh { get; set; }
/// <summary>
///
/// </summary>
public string wjksy { get; set; }
/// <summary>
///
/// </summary>
public string wjjsy { get; set; }
}
public class JZWJItem
{
public string wjxh { get; set; }
public string mlbh { get; set; }
public string ywjlj { get; set; }
public string sltwjlj { get; set; }
public string pdfwjlj { get; set; }
public string jpgwjlj { get; set; }
public string wjym { get; set; }
public string wjlx { get; set; }
public string wjscbz { get; set; }
public int wjsxh { get; set; }
public string wjxsmc { get; set; }
public string jzbh { get; set; }
public string wjocrsbzt { get; set; }
public string cjsj { get; set; }
public string time { get; set; }
public string taskid { get; set; }
public string wjbs { get; set; }
public string bsbh { get; set; }
}
public class JZWJStruct
{
public string code { get; set; }
public string success { get; set; }
public string message { get; set; }
public List<JZWJItem> data { get; set; }
}
public class JZJBXX
{
/// <summary>
/// 部门受案号
/// </summary>
public string bmsah { get; set; }
/// <summary>
/// 卷宗编号
/// </summary>
public string jzbh { get; set; }
/// <summary>
/// 单位编码
/// </summary>
public string dwbm { get; set; }
/// <summary>
/// (简案)王奇涉嫌危险驾驶案
/// </summary>
public string jzmc { get; set; }
/// <summary>
/// 汤路平
/// </summary>
public string jzzzr { get; set; }
/// <summary>
/// 案件类别编码
/// </summary>
public string ajlbbm { get; set; }
/// <summary>
/// 案件类别名称
/// </summary>
public string ajlbmc { get; set; }
public List<JZML> jzml { get; set; }
}
public class JBXXStruct
{
public List<JZJBXX> jzjbxx { get; set; }
}
public class ApiResponse
{
/// <summary>
/// 返回代码 200:成功 300:系统错误 400:自定义错误 500:ORC识别错误
/// </summary>
[JsonProperty(PropertyName = "code")]
public int Code { get; set; }
/// <summary>
/// 错误信息
/// </summary>
[JsonProperty(PropertyName = "Message")]
public string Message { get; set; }
/// <summary>
/// 结果
/// </summary>
[JsonProperty(PropertyName = "data")]
public object Data { get; set; }
}
public class ImagesRoot
{
/// <summary>
///
/// </summary>
public ImagesData Data { get; set; }
/// <summary>
///
/// </summary>
public int Code { get; set; }
/// <summary>
/// PDF转图片成功
/// </summary>
public string Message { get; set; }
}
public class ImagesData
{
/// <summary>
///
/// </summary>
public int code { get; set; }
/// <summary>
///
/// </summary>
public List<List<string>> data { get; set; }
public List<string> file_base64 { get; set; }
/// <summary>
///
/// </summary>
public string errMsg { get; set; }
}

76
WebApplication1/MLogHelpe.cs

@ -0,0 +1,76 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace test
{
/// <summary>
/// 自定义日志
/// </summary>
public class LogHelpe
{
/// <summary>
/// 信息日志
/// </summary>
/// <param name="str"></param>
public static void WriteInfoLog(string str, string dirName = @"logs")
{
//return;
try
{
var status = 1;//int.Parse(ConfigurationManager.AppSettings["LogStatus"]);
if (status == 0) // 0不输出日志,1输出日志
{
return;
}
else
{
if (string.IsNullOrEmpty(str)) return;
var baseDir = AppDomain.CurrentDomain.BaseDirectory + dirName;
if (!Directory.Exists(baseDir))
{
Directory.CreateDirectory(baseDir);
}
string filePath = Path.Combine(baseDir, DateTime.Now.ToString("yyyy-MM-dd") + "_infolog.txt");
using (StreamWriter sw = File.AppendText(filePath))
{
sw.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff ") + "[" + str + "]" + "\r\n");
sw.Flush();
}
}
}
catch { }
}
/// <summary>
/// 错误日志
/// </summary>
/// <param name="str"></param>
public static void WriteErrorLog(string str, string dirName = @"logs")
{
//return;
try
{
if (string.IsNullOrEmpty(str)) return;
var baseDir = AppDomain.CurrentDomain.BaseDirectory + dirName;
if (!Directory.Exists(baseDir))
{
Directory.CreateDirectory(baseDir);
}
string filePath = Path.Combine(baseDir, DateTime.Now.ToString("yyyy-MM-dd") + "_errorlog.txt");
using (StreamWriter sw = File.AppendText(filePath))
{
sw.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff ") + "[" + str + "]" + "\r\n");
sw.Flush();
}
}
catch { }
}
}
}

181
WebApplication1/Models/AJDto.cs

@ -0,0 +1,181 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
public class AJDto
{
/// <summary>
///
/// </summary>
public List<AJDetailDto> records { get; set; }
/// <summary>
///
/// </summary>
public int total { get; set; }
/// <summary>
///
/// </summary>
public int size { get; set; }
/// <summary>
///
/// </summary>
public int current { get; set; }
/// <summary>
///
/// </summary>
public string searchCount { get; set; }
/// <summary>
///
/// </summary>
public int pages { get; set; }
}
public class AJDetailDto
{
/// <summary>
/// 鄂孝检必审受[2022]420900000001号
/// </summary>
public string bmsah { get; set; }
/// <summary>
///
/// </summary>
public string aqzy { get; set; }
/// <summary>
///
/// </summary>
public string tysah { get; set; }
/// <summary>
///
/// </summary>
public string ajmc { get; set; }
/// <summary>
///
/// </summary>
public string cbdwbm { get; set; }
/// <summary>
/// 孝感市院
/// </summary>
public string cbdwmc { get; set; }
/// <summary>
///
/// </summary>
public string ywbm { get; set; }
/// <summary>
/// 刑事检察
/// </summary>
public string ywmc { get; set; }
/// <summary>
///
/// </summary>
public string ajlbbm { get; set; }
/// <summary>
/// 侦查/审判阶段羁押必要性审查案件
/// </summary>
public string ajlbmc { get; set; }
/// <summary>
///
/// </summary>
public string ajzt { get; set; }
/// <summary>
///
/// </summary>
public string yjzt { get; set; }
/// <summary>
///
/// </summary>
public string cbjcgbm { get; set; }
/// <summary>
///
/// </summary>
public string cbjcg { get; set; }
/// <summary>
///
/// </summary>
public string cbjcgsfzhm { get; set; }
/// <summary>
///
/// </summary>
public string slrq { get; set; }
/// <summary>
///
/// </summary>
public string slrqStr { get; set; }
/// <summary>
///
/// </summary>
public string blts { get; set; }
/// <summary>
///
/// </summary>
public string dqrq { get; set; }
/// <summary>
///
/// </summary>
public string bjrq { get; set; }
/// <summary>
///
/// </summary>
public string wcrq { get; set; }
/// <summary>
///
/// </summary>
public string wcrqStr { get; set; }
/// <summary>
///
/// </summary>
public string gdrq { get; set; }
/// <summary>
///
/// </summary>
public string mxbm { get; set; }
/// <summary>
/// 普通类模型(羁押必要性审查案件(执检))
/// </summary>
public string mxmc { get; set; }
/// <summary>
///
/// </summary>
public string cbjcgsfdm { get; set; }
/// <summary>
///
/// </summary>
public string cbjcgsf { get; set; }
/// <summary>
///
/// </summary>
public string batdbm { get; set; }
/// <summary>
///
/// </summary>
public string batdmc { get; set; }
/// <summary>
///
/// </summary>
public string batdlx { get; set; }
/// <summary>
///
/// </summary>
public string cbbmbm { get; set; }
/// <summary>
/// 第一检察部
/// </summary>
public string cbbmmc { get; set; }
/// <summary>
///
/// </summary>
public string dqjdbh { get; set; }
/// <summary>
///
/// </summary>
public string dqjdmc { get; set; }
/// <summary>
///
/// </summary>
public string sfkcz { get; set; }
}
}

282
WebApplication1/Models/AKDto.cs

@ -0,0 +1,282 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
public class AKDto
{
/// <summary>
///
/// </summary>
public string? mxbm { get; set; }
/// <summary>
///
/// </summary>
public List<string>? stbmList { get; set; }
/// <summary>
///
/// </summary>
public string? mxbdbh { get; set; }
/// <summary>
///
/// </summary>
public string? mxbdpzbm { get; set; }
/// <summary>
///
/// </summary>
public string? fmxbdpzbm { get; set; }
/// <summary>
///
/// </summary>
public string? bdbs { get; set; }
/// <summary>
/// 案件信息
/// </summary>
public string? bdmc { get; set; }
/// <summary>
///
/// </summary>
public int? px { get; set; }
/// <summary>
///
/// </summary>
public string? dwbm { get; set; }
/// <summary>
///
/// </summary>
public string? sfzf { get; set; }
/// <summary>
///
/// </summary>
public string? sfjzzjcd { get; set; }
/// <summary>
///
/// </summary>
public int? zjsl { get; set; }
/// <summary>
///
/// </summary>
public string? sfsxnzj { get; set; }
/// <summary>
///
/// </summary>
public string? zjglbdbh { get; set; }
/// <summary>
///
/// </summary>
public string? zjcdxgb { get; set; }
/// <summary>
///
/// </summary>
public string? bjxgb { get; set; }
/// <summary>
///
/// </summary>
public string? gldsjzj { get; set; }
/// <summary>
///
/// </summary>
public bool? sfxnml { get; set; }
/// <summary>
///
/// </summary>
public string? xsmcl { get; set; }
/// <summary>
///
/// </summary>
public string? zjcdgltj { get; set; }
/// <summary>
///
/// </summary>
public string? zjsfyxtj { get; set; }
/// <summary>
///
/// </summary>
public string? zjsfyxsc { get; set; }
/// <summary>
///
/// </summary>
public bool? sfksc { get; set; }
/// <summary>
///
/// </summary>
public string? pxzd { get; set; }
/// <summary>
///
/// </summary>
public ZRRLX? zjcdgltjMap { get; set; }
/// <summary>
///
/// </summary>
public Zjjh? zjjh { get; set; }
/// <summary>
///
/// </summary>
public string? dgsd { get; set; }
/// <summary>
/// _鄂孝检刑(不)捕审受[2022]420900000001号
/// </summary>
public string? zjString { get; set; }
/// <summary>
///
/// </summary>
public bool? sfsrk { get; set; }
/// <summary>
///
/// </summary>
public string? zrrlxtj { get; set; }
/// <summary>
///
/// </summary>
public List<ChildrenItem>? children { get; set; }
}
public class ZRRLX
{
public string ZRRLX_DM { get; set; }
}
public class Zjjh
{
/// <summary>
/// 鄂孝检必审受[2022]420900000001号
/// </summary>
public string BMSAH { get; set; }
public string ZRRBM { get; set; }
}
public class ChildrenItem
{
/// <summary>
///
/// </summary>
public string mxbm { get; set; }
/// <summary>
///
/// </summary>
public List<string> stbmList { get; set; }
/// <summary>
///
/// </summary>
public string mxbdbh { get; set; }
/// <summary>
///
/// </summary>
public string mxbdpzbm { get; set; }
/// <summary>
///
/// </summary>
public string fmxbdpzbm { get; set; }
/// <summary>
///
/// </summary>
public string bdbs { get; set; }
/// <summary>
/// 申诉审查案件信息
/// </summary>
public string bdmc { get; set; }
/// <summary>
///
/// </summary>
public int? px { get; set; }
/// <summary>
///
/// </summary>
public string dwbm { get; set; }
/// <summary>
///
/// </summary>
public string sfzf { get; set; }
/// <summary>
///
/// </summary>
public string sfjzzjcd { get; set; }
/// <summary>
///
/// </summary>
public string zjsl { get; set; }
/// <summary>
///
/// </summary>
public string sfsxnzj { get; set; }
/// <summary>
///
/// </summary>
public string zjglbdbh { get; set; }
/// <summary>
///
/// </summary>
public string zjcdxgb { get; set; }
/// <summary>
///
/// </summary>
public string bjxgb { get; set; }
/// <summary>
///
/// </summary>
public string gldsjzj { get; set; }
/// <summary>
///
/// </summary>
public bool sfxnml { get; set; }
/// <summary>
///
/// </summary>
public string xsmcl { get; set; }
/// <summary>
///
/// </summary>
public string zjcdgltj { get; set; }
/// <summary>
///
/// </summary>
public string zjsfyxtj { get; set; }
/// <summary>
///
/// </summary>
public string zjsfyxsc { get; set; }
/// <summary>
///
/// </summary>
public bool sfksc { get; set; }
/// <summary>
///
/// </summary>
public string pxzd { get; set; }
/// <summary>
///
/// </summary>
public ZRRLX zjcdgltjMap { get; set; }
/// <summary>
///
/// </summary>
public Zjjh zjjh { get; set; }
/// <summary>
///
/// </summary>
public string dgsd { get; set; }
/// <summary>
/// 4028821f6c14c33c016c240b3bf3001a_鄂孝检刑(不)捕审受[2022]420900000001号
/// </summary>
public string zjString { get; set; }
/// <summary>
///
/// </summary>
public bool sfsrk { get; set; }
/// <summary>
///
/// </summary>
public string zrrlxtj { get; set; }
/// <summary>
///
/// </summary>
public List<string> children { get; set; }
}
}

56
WebApplication1/Models/Case_Card.cs

@ -0,0 +1,56 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
/// <summary>
/// 选项卡
/// </summary>
[Serializable]
[DataContract]
public class Case_Card
{
[DataMember]
public string Id { get; set; }
/// <summary>
/// 父级
/// </summary>
[DataMember]
public string pid { get; set; }
/// <summary>
/// 名称
/// </summary>
[DataMember]
public string name { get; set; }
/// <summary>
/// 编号
/// </summary>
[DataMember]
public string card_no { get; set; }
/// <summary>
/// 状态是否是选项卡
/// </summary>
[DataMember]
public int state { get; set; }
/// <summary>
/// 排序
/// </summary>
[DataMember]
public string sort { get; set; }
/// <summary>
/// 排序
/// </summary>
//[DataMember]
//public string aj_type { get; set; }
/// <summary>
/// 是否删除
/// </summary>
[DataMember]
public int Isdelete { get; set; }
}
}

46
WebApplication1/Models/Case_Card_Copy.cs

@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
/// <summary>
/// 案卡信息
/// </summary>
[Serializable]
[DataContract]
public class Case_Card_Copy
{
[DataMember]
public string Id { get; set; }
/// <summary>
/// 案件信息id
/// </summary>
[DataMember]
public string caseID { get; set; }
/// <summary>
/// 案卡树形json
/// </summary>
[DataMember]
public string akjson { get; set; }
/// <summary>
/// 状态是否是选项卡
/// </summary>
[DataMember]
public int state { get; set; }
/// <summary>
/// 排序
/// </summary>
[DataMember]
public string sort { get; set; }
/// <summary>
/// 是否删除
/// </summary>
[DataMember]
public int Isdelete { get; set; }
}
}

233
WebApplication1/Models/Case_Info.cs

@ -0,0 +1,233 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
/// <summary>
/// 案件表
/// </summary>
[Serializable]
[DataContract]
/// <summary>
/// 数据表
/// </summary>
public class Case_Info
{
[DataMember]
public string case_id { get; set; }
/// <summary>
/// 案件名称
/// </summary>
[DisplayName("案件名称")]
[DataMember]
public string case_ajmc { get; set; }
/// <summary>
/// 案件类型
/// </summary>
[DataMember]
public string case_ajlx { get; set; }
/// <summary>
/// 部门受案号
/// </summary>
[DisplayName("部门受案号")]
[DataMember]
///
public string case_bmsah { get; set; }
/// <summary>
/// 统一受案号
/// </summary>
[DataMember]
public string case_tysah { get; set; }
/// <summary>
/// 承办人
/// </summary>
[DataMember]
public string? case_cbr { get; set; }
/// <summary>
/// 公开情况
/// </summary>
[DataMember]
public string? case_gkqk { get; set; }
/// <summary>
/// 流程阶段
/// </summary>
[DataMember]
public string? case_lcjd { get; set; }
/// <summary>
/// 受理时间
/// </summary>
[DataMember]
public string? case_slrq { get; set; }
/// <summary>
/// 到期时间
/// </summary>
[DataMember]
public string? case_dqrq { get; set; }
/// <summary>
/// 审查时间
/// </summary>
[DataMember]
public string? case_scrq { get; set; }
/// <summary>
/// 删除状态
/// </summary>
[DataMember]
public int isdelete { get; set; }
/// <summary>
/// 创建时间
/// </summary>
[DataMember]
public DateTime? case_cjsj { get; set; }
/// <summary>
/// 自检状态 0:待检验 1:待校正 2:已校正
/// </summary>
[DataMember]
[DisplayName("自检状态")]
public int case_state { get; set; }
/// <summary>
/// 承办单位编码
/// </summary>
[DataMember]
public string? case_cbdwBm { get; set; }
/// <summary>
/// 承办单位名称
/// </summary>
[DataMember]
public string? case_cbdwMc { get; set; }
/// <summary>
/// 承办部门编码
/// </summary>
[DataMember]
public string? case_cbbmBm { get; set; }
/// <summary>
/// 承办部门名称
/// </summary>
[DataMember]
public string? case_cbbmMc { get; set; }
/// <summary>
/// 业务编码
/// </summary>
[DataMember]
public string? case_ywbm { get; set; }
/// <summary>
/// 业务名称
/// </summary>
[DataMember]
public string? case_ywmc { get; set; }
/// <summary>
/// 案件类别bianma
/// </summary>
[DataMember]
public string? case_ajlbBm { get; set; }
/// <summary>
/// 案件类别名称
/// </summary>
[DataMember]
public string? case_ajlbMc { get; set; }
/// <summary>
/// 案件状态
/// </summary>
[DataMember]
public string? case_ajzt { get; set; }
/// <summary>
/// 预警状态
/// </summary>
[DataMember]
public string? case_yjzt { get; set; }
/// <summary>
/// 承办检察官编码
/// </summary>
[DataMember]
public string? case_cbjcgbm { get; set; }
/// <summary>
/// 承办检察官身份号码
/// </summary>
[DataMember]
public string? case_cbjcgsfzhm { get; set; }
/// <summary>
/// 办结天数
/// </summary>
[DataMember]
public string? case_blts { get; set; }
/// <summary>
/// 办结日期
/// </summary>
[DataMember]
public string? case_bjrq { get; set; }
/// <summary>
/// 完成日期
/// </summary>
[DataMember]
public string? case_wcrq { get; set; }
/// <summary>
/// 归档日期
/// </summary>
[DataMember]
public string? case_gdrq { get; set; }
/// <summary>
/// 模型编码
/// </summary>
[DataMember]
public string? case_mxbm { get; set; }
/// <summary>
/// 模型名称
/// </summary>
[DataMember]
public string? case_mxmc { get; set; }
/// <summary>
/// 检察官身份编码
/// </summary>
[DataMember]
public string? case_cbjcgsfDm { get; set; }
/// <summary>
/// 检察官身份
/// </summary>
[DataMember]
public string? case_cbjcgsf { get; set; }
/// <summary>
/// 办案团队编码
/// </summary>
[DataMember]
public string? case_batdbm { get; set; }
/// <summary>
/// 办案团队名称
/// </summary>
[DataMember]
public string? case_batdmc { get; set; }
/// <summary>
/// 办案团队类别
/// </summary>
[DataMember]
public string? case_batdlx { get; set; }
/// <summary>
/// 当前节点编号
/// </summary>
[DataMember]
public string? case_dqjdbh { get; set; }
/// <summary>
/// 当前节点名称
/// </summary>
[DataMember]
public string? case_dqjdmc { get; set; }
/// <summary>
/// 回传状态 0未开始 ,1 成功 ,2 失败
/// </summary>
[DataMember]
public int? comes_back { get; set; }
/// <summary>
/// 错误信息
/// </summary>
[DataMember]
public string message { get; set; }
}
}

46
WebApplication1/Models/Case_Info_Detail.cs

@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
[Serializable]
[DataContract]
public class Case_Info_Detail
{
[DataMember]
public string id { get; set; }
[DataMember]
public string case_id { get; set; }
[DataMember]
public string zdsj_data { get; set; }
[DataMember]
public string cbsj_data { get; set; }
[DataMember]
public string name { get; set; }
[DataMember]
public string sjmxbm { get; set; }
[DataMember]
public string bmsah { get; set; }
[DataMember]
public string bdbm { get; set; }
[DataMember]
public string pid { get; set; }
}
}

6
WebApplication1/Models/Class.cs

@ -0,0 +1,6 @@
namespace WebApplication1.Models
{
public class Class
{
}
}

122
WebApplication1/Models/Data_Table.cs

@ -0,0 +1,122 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
/// <summary>
/// 数据表
/// </summary>
[Serializable]
[DataContract]
public class Data_Table
{
#region Model
[DataMember]
public string Id { get; set; }
/// <summary>
/// 部门受案号
/// </summary>
[DataMember]
public string case_bmsah { get; set; }
/// <summary>
/// 统一受案号
/// </summary>
[DataMember]
public string case_tysah { get; set; }
/// <summary>
/// 名称
/// </summary>
[DataMember]
public string data_name { get; set; }
/// <summary>
/// 字段
/// </summary>
[DataMember]
public string field { get; set; }
/// <summary>
/// 字段_id
/// </summary>
[DataMember]
public string field_id { get; set; }
/// <summary>
/// 分组
/// </summary>
[DataMember]
public string groupings { get; set; }
/// <summary>
/// 数据值
/// </summary>
[DataMember]
public string data_value { get; set; }
/// <summary>
/// 数据值1
/// </summary>
[DataMember]
public string data_value1 { get; set; }
/// <summary>
/// 创建时间
/// </summary>
[DataMember]
public DateTime Creationtime { get; set; }
/// <summary>
/// 状态
/// </summary>
[DataMember]
public int state { get; set; }
/// <summary>
/// 排序
/// </summary>
[DataMember]
public string sort { get; set; }
/// <summary>
/// 值Id
/// </summary>
[DataMember]
public string valueid { get; set; }
/// <summary>
/// 数据id
/// </summary>
[DataMember]
public string case_id { get; set; }
/// <summary>
/// 表名
/// </summary>
[DataMember]
public string table_name { get; set; }
/// <summary>
/// 表名+字段
/// </summary>
[DataMember]
public string table_namefield { get; set; }
/// <summary>
/// 选项卡名称
/// /// </summary>
[DataMember]
public string LxName { get; set; }
[DataMember]
public string zdlx { get; set; }
[DataMember]
public string sfzj { get; set; }
[DataMember]
public string zjsccl { get; set; }
[DataMember]
public string bgsj { get; set; }
[DataMember]
public string znht { get; set; }
[DataMember]
public string detailId { get; set; }
[DataMember]
public int level { get; set; }
#endregion Model
}
}

45
WebApplication1/Models/LCDto.cs

@ -0,0 +1,45 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
public class LCDto
{
public object bmsah { get; set; }
public object tysah { get; set; }
public object ajmc { get; set; }
public object cbdwbm { get; set; }
public object cbdwmc { get; set; }
public object cbbmbm { get; set; }
public object cbbmmc { get; set; }
public object batdbm { get; set; }
public object batdmc { get; set; }
public object batdlx { get; set; }
public object cbjcgsfdm { get; set; }
public object cbjcgsf { get; set; }
public object cbjcgbm { get; set; }
public object cbjcg { get; set; }
public object ywbm { get; set; }
public object ywmc { get; set; }
public object ajlbbm { get; set; }
public object ajlbmc { get; set; }
public object ajzt { get; set; }
public object slrq { get; set; }
public object cjsj { get; set; }
public object blts { get; set; }
public object ajmxbm { get; set; }
public object ajmxmc { get; set; }
public string dqjdbh { get; set; }
public string dqjdmc { get; set; }
public object bjrq { get; set; }
public object dqrq { get; set; }
public object gdrq { get; set; }
public object wcrq { get; set; }
public object sfkcz { get; set; }
public object sjly { get; set; }
}
}

104
WebApplication1/Models/MxbmDto.cs

@ -0,0 +1,104 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
public class MxbmDto
{
/// <summary>
///
/// </summary>
public string mxbm { get; set; }
/// <summary>
///
/// </summary>
public string sjmxbm { get; set; }
/// <summary>
///
/// </summary>
public string sfsc { get; set; }
/// <summary>
///
/// </summary>
public string cjsj { get; set; }
/// <summary>
///
/// </summary>
public string zhxgsj { get; set; }
/// <summary>
///
/// </summary>
public string sjbsbh { get; set; }
/// <summary>
/// 普通类模型(羁押必要性审查案件(执检))
/// </summary>
public string mxmc { get; set; }
/// <summary>
///
/// </summary>
public string ajlbbm { get; set; }
/// <summary>
/// 侦查/审判阶段羁押必要性审查案件
/// </summary>
public string ajlbmc { get; set; }
/// <summary>
///
/// </summary>
public string mxbz { get; set; }
/// <summary>
///
/// </summary>
public string sfqy { get; set; }
/// <summary>
///
/// </summary>
public string dwbm { get; set; }
/// <summary>
///
/// </summary>
public string ywlbbm { get; set; }
/// <summary>
///
/// </summary>
public string ywlbmc { get; set; }
/// <summary>
///
/// </summary>
public string sfgjysy { get; set; }
/// <summary>
///
/// </summary>
public string sfsjysy { get; set; }
/// <summary>
///
/// </summary>
public string sfszysy { get; set; }
/// <summary>
///
/// </summary>
public string sfjcysy { get; set; }
/// <summary>
///
/// </summary>
public string jmbj { get; set; }
/// <summary>
///
/// </summary>
public string zybl { get; set; }
/// <summary>
///
/// </summary>
public string zxh { get; set; }
/// <summary>
///
/// </summary>
public object xyhjInputDtos { get; set; }
/// <summary>
///
/// </summary>
public string ajzybd { get; set; }
}
}

32
WebApplication1/Models/ResultDto.cs

@ -0,0 +1,32 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
public class ResultDto
{
/// <summary>
///
/// </summary>
public string code { get; set; }
/// <summary>
///
/// </summary>
public bool success { get; set; }
/// <summary>
/// 获取成功
/// </summary>
public string message { get; set; }
}
public class ResultDto<T> : ResultDto
{
/// <summary>
/// 扩展数据
/// </summary>
public T Data { get; set; }
}
}

128
WebApplication1/Models/XxkDto.cs

@ -0,0 +1,128 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
public class XxkDto
{
/// <summary>
///
/// </summary>
public string stbm { get; set; }
/// <summary>
///
/// </summary>
public string lbbm { get; set; }
/// <summary>
///
/// </summary>
public string dttj { get; set; }
/// <summary>
/// stbm=T_TYYW_ZJ_BS_AJ&BMSAH=鄂孝检必审受[2022]420900000001号
/// </summary>
public string id { get; set; }
/// <summary>
///
/// </summary>
public string fid { get; set; }
/// <summary>
///
/// </summary>
public string sjbs { get; set; }
/// <summary>
///
/// </summary>
public List<ZdsjItem> zdsj { get; set; }
/// <summary>
///
/// </summary>
public List<CbsjItem> cbsj { get; set; }
}
public class ZdsjItem
{
/// <summary>
///
/// </summary>
public string zdmc { get; set; }
/// <summary>
/// 部门受案号
/// </summary>
public string zdzwmc { get; set; }
/// <summary>
///
/// </summary>
public string sfzj { get; set; }
/// <summary>
///
/// </summary>
public string zjsccl { get; set; }
/// <summary>
///
/// </summary>
public string zdlx { get; set; }
/// <summary>
/// 鄂孝检必审受[2022]420900000001号
/// </summary>
public string bgqzdbmz { get; set; }
/// <summary>
///
/// </summary>
public string bgqzdwbz { get; set; }
/// <summary>
///
/// </summary>
public string bghzdbmz { get; set; }
/// <summary>
///
/// </summary>
public string bghzdwbz { get; set; }
/// <summary>
///
/// </summary>
public string bgsj { get; set; }
/// <summary>
///
/// </summary>
public string znht { get; set; }
}
public class CbsjItem
{
/// <summary>
///
/// </summary>
public string stbm { get; set; }
/// <summary>
///
/// </summary>
public string lbbm { get; set; }
/// <summary>
///
/// </summary>
public string dttj { get; set; }
/// <summary>
/// stbm=T_TYYW_GG_AQZY&BMSAH=鄂孝检必审受[2022]420900000001号
/// </summary>
public string id { get; set; }
/// <summary>
/// stbm=T_TYYW_ZJ_BS_AJ&BMSAH=鄂孝检必审受[2022]420900000001号
/// </summary>
public string fid { get; set; }
/// <summary>
///
/// </summary>
public string sjbs { get; set; }
/// <summary>
///
/// </summary>
public List<ZdsjItem> zdsj { get; set; }
/// <summary>
///
/// </summary>
public List<CbsjItem> cbsj { get; set; }
}
}

30
WebApplication1/Program.cs

@ -0,0 +1,30 @@
Console.Title = "2.0 System Proxy Client";
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.Services.AddControllers();
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
builder.Services.AddHttpClient();
#if DEBUG
//builder.WebHost.UseUrls("http://143.122.26.141:5194", "http://127.0.0.1:5194");
#endif
var app = builder.Build();
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
app.UseSwagger();
app.UseSwaggerUI();
}
app.UseAuthorization();
app.MapControllers();
app.Run();

21
WebApplication1/Properties/PublishProfiles/FolderProfile.pubxml

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project>
<PropertyGroup>
<DeleteExistingFiles>true</DeleteExistingFiles>
<ExcludeApp_Data>false</ExcludeApp_Data>
<LaunchSiteAfterPublish>true</LaunchSiteAfterPublish>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<PublishProvider>FileSystem</PublishProvider>
<PublishUrl>bin\Release\net6.0\publish\</PublishUrl>
<WebPublishMethod>FileSystem</WebPublishMethod>
<_TargetId>Folder</_TargetId>
<SiteUrlToLaunchAfterPublish />
<TargetFramework>net6.0</TargetFramework>
<ProjectGuid>bb831806-197b-4508-9ad5-5d3edb7fca27</ProjectGuid>
<SelfContained>false</SelfContained>
</PropertyGroup>
</Project>

11
WebApplication1/Properties/PublishProfiles/FolderProfile.pubxml.user

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project>
<PropertyGroup>
<_PublishTargetUrl>C:\Users\callm\source\repos\24Hour.Service\WebApplication1\bin\Release\net6.0\publish\</_PublishTargetUrl>
<History>True|2023-11-01T10:41:19.1109757Z;True|2023-11-01T18:39:07.4539146+08:00;True|2023-11-01T18:16:01.9167676+08:00;True|2023-11-01T18:15:52.7184209+08:00;</History>
<LastFailureDetails />
</PropertyGroup>
</Project>

38
WebApplication1/Properties/launchSettings.json

@ -0,0 +1,38 @@
{
"profiles": {
"WebApplication1": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "swagger",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"dotnetRunMessages": true,
"applicationUrl": "https://localhost:7156;http://localhost:5194"
},
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "swagger",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"Docker": {
"commandName": "Docker",
"launchBrowser": true,
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/swagger",
"publishAllPorts": true,
"useSSL": true
}
},
"$schema": "https://json.schemastore.org/launchsettings.json",
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:34369",
"sslPort": 44333
}
}
}

13
WebApplication1/WeatherForecast.cs

@ -0,0 +1,13 @@
namespace WebApplication1
{
public class WeatherForecast
{
public DateTime Date { get; set; }
public int TemperatureC { get; set; }
public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
public string? Summary { get; set; }
}
}

24
WebApplication1/WebApplication1.csproj

@ -0,0 +1,24 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UserSecretsId>ae1f7aa6-e320-4393-ac3f-984b92923499</UserSecretsId>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<AssemblyVersion>1.0.1.0</AssemblyVersion>
<Version>1.0.1.0</Version>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.18.1" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.0.0" />
</ItemGroup>
<ItemGroup>
<None Update="Dockerfile">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>

10
WebApplication1/WebApplication1.csproj.user

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DebuggerFlavor>ProjectDebugger</DebuggerFlavor>
</PropertyGroup>
<PropertyGroup>
<ActiveDebugProfile>WebApplication1</ActiveDebugProfile>
<NameOfLastUsedPublishProfile>C:\Users\callm\source\repos\24Hour.Service\WebApplication1\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
</PropertyGroup>
</Project>

25
WebApplication1/WebApplication1.sln

@ -0,0 +1,25 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.6.33829.357
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebApplication1", "WebApplication1.csproj", "{1CFB55C9-4B8D-4D99-B444-5EB6EBF6B3E7}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1CFB55C9-4B8D-4D99-B444-5EB6EBF6B3E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1CFB55C9-4B8D-4D99-B444-5EB6EBF6B3E7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1CFB55C9-4B8D-4D99-B444-5EB6EBF6B3E7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1CFB55C9-4B8D-4D99-B444-5EB6EBF6B3E7}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {0B59E350-8D7E-441E-8F31-D555F1C290E1}
EndGlobalSection
EndGlobal

8
WebApplication1/appsettings.Development.json

@ -0,0 +1,8 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
}
}

14
WebApplication1/appsettings.json

@ -0,0 +1,14 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*",
"Configs": {
"SystemIp": "143.120.5.25",
"Port": "8080"
}
}

26
WebApplication1/bin/Debug/net6.0/Dockerfile

@ -0,0 +1,26 @@
# 选择从什么镜像基础上创建我们的镜像,相当于选择我们依赖的环境
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
LABEL description=""
LABEL version="1.0"
# 指定工作目录
WORKDIR /app
# 把当前目录复制到镜像的 app目录
COPY . .
#时区设置
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
# 暴露的端口
#EXPOSE 80
EXPOSE 5194
ENV ASPNETCORE_URLS=http://+:5194
ENV ASPNETCORE_ENVIRONMENT Production
# 最后设置启动的dll
ENTRYPOINT ["dotnet", "WebApplication1.dll"]

140
WebApplication1/bin/Debug/net6.0/WebApplication1.deps.json

@ -0,0 +1,140 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"WebApplication1/1.0.1.0": {
"dependencies": {
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets": "1.18.1",
"Newtonsoft.Json": "13.0.3",
"Swashbuckle.AspNetCore": "6.0.0"
},
"runtime": {
"WebApplication1.dll": {}
}
},
"Microsoft.Extensions.ApiDescription.Server/3.0.0": {},
"Microsoft.OpenApi/1.2.3": {
"runtime": {
"lib/netstandard2.0/Microsoft.OpenApi.dll": {
"assemblyVersion": "1.2.3.0",
"fileVersion": "1.2.3.0"
}
}
},
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.18.1": {},
"Newtonsoft.Json/13.0.3": {
"runtime": {
"lib/net6.0/Newtonsoft.Json.dll": {
"assemblyVersion": "13.0.0.0",
"fileVersion": "13.0.3.27908"
}
}
},
"Swashbuckle.AspNetCore/6.0.0": {
"dependencies": {
"Microsoft.Extensions.ApiDescription.Server": "3.0.0",
"Swashbuckle.AspNetCore.Swagger": "6.0.0",
"Swashbuckle.AspNetCore.SwaggerGen": "6.0.0",
"Swashbuckle.AspNetCore.SwaggerUI": "6.0.0"
}
},
"Swashbuckle.AspNetCore.Swagger/6.0.0": {
"dependencies": {
"Microsoft.OpenApi": "1.2.3"
},
"runtime": {
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.0.0"
}
}
},
"Swashbuckle.AspNetCore.SwaggerGen/6.0.0": {
"dependencies": {
"Swashbuckle.AspNetCore.Swagger": "6.0.0"
},
"runtime": {
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.0.0"
}
}
},
"Swashbuckle.AspNetCore.SwaggerUI/6.0.0": {
"runtime": {
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.0.0"
}
}
}
}
},
"libraries": {
"WebApplication1/1.0.1.0": {
"type": "project",
"serviceable": false,
"sha512": ""
},
"Microsoft.Extensions.ApiDescription.Server/3.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-LH4OE/76F6sOCslif7+Xh3fS/wUUrE5ryeXAMcoCnuwOQGT5Smw0p57IgDh/pHgHaGz/e+AmEQb7pRgb++wt0w==",
"path": "microsoft.extensions.apidescription.server/3.0.0",
"hashPath": "microsoft.extensions.apidescription.server.3.0.0.nupkg.sha512"
},
"Microsoft.OpenApi/1.2.3": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Nug3rO+7Kl5/SBAadzSMAVgqDlfGjJZ0GenQrLywJ84XGKO0uRqkunz5Wyl0SDwcR71bAATXvSdbdzPrYRYKGw==",
"path": "microsoft.openapi/1.2.3",
"hashPath": "microsoft.openapi.1.2.3.nupkg.sha512"
},
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.18.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-RtNQEQQ/bgaxzrsZEkPB+/DFaUgNiq8GtZz/R4lt+mKXPcEvEuawlbl0PB1s7ND9kvkUVZtMphPxE9Ma1VGiFg==",
"path": "microsoft.visualstudio.azure.containers.tools.targets/1.18.1",
"hashPath": "microsoft.visualstudio.azure.containers.tools.targets.1.18.1.nupkg.sha512"
},
"Newtonsoft.Json/13.0.3": {
"type": "package",
"serviceable": true,
"sha512": "sha512-HrC5BXdl00IP9zeV+0Z848QWPAoCr9P3bDEZguI+gkLcBKAOxix/tLEAAHC+UvDNPv4a2d18lOReHMOagPa+zQ==",
"path": "newtonsoft.json/13.0.3",
"hashPath": "newtonsoft.json.13.0.3.nupkg.sha512"
},
"Swashbuckle.AspNetCore/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-VxukQYrUrxNUWQocOxmxua/4fZOPBdGCLSaoZYRNthZae0UXB+fzjTBTlj24fZEQrP+QTnsRwSygN9jNBqm/hg==",
"path": "swashbuckle.aspnetcore/6.0.0",
"hashPath": "swashbuckle.aspnetcore.6.0.0.nupkg.sha512"
},
"Swashbuckle.AspNetCore.Swagger/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-onkGK5eDFmyNy605E5ZaT5oXEGsQJz2UEKsUOqYCZRBC2Fi6MbByUl+qznyl3pZ9/4nTvukUjt9+v28qvJPk/Q==",
"path": "swashbuckle.aspnetcore.swagger/6.0.0",
"hashPath": "swashbuckle.aspnetcore.swagger.6.0.0.nupkg.sha512"
},
"Swashbuckle.AspNetCore.SwaggerGen/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-RXY21STD/yo4Uzy1L5GoRrEQQWoOosw0QBYo572VwcjePmpV1yFFHsTeThlMNBWKoTt6xadIdSjZj0FmDFYL2A==",
"path": "swashbuckle.aspnetcore.swaggergen/6.0.0",
"hashPath": "swashbuckle.aspnetcore.swaggergen.6.0.0.nupkg.sha512"
},
"Swashbuckle.AspNetCore.SwaggerUI/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-VusRaCFt2As3SXBJmUOGA40IGr6ao+vsvDi7jbCS4AFx69kUUm8zxIHeJVqGov3w4lQowVxv8gmonRXDRh1FvQ==",
"path": "swashbuckle.aspnetcore.swaggerui/6.0.0",
"hashPath": "swashbuckle.aspnetcore.swaggerui.6.0.0.nupkg.sha512"
}
}
}

19
WebApplication1/bin/Debug/net6.0/WebApplication1.runtimeconfig.json

@ -0,0 +1,19 @@
{
"runtimeOptions": {
"tfm": "net6.0",
"frameworks": [
{
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
},
{
"name": "Microsoft.AspNetCore.App",
"version": "6.0.0"
}
],
"configProperties": {
"System.GC.Server": true,
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}

8
WebApplication1/bin/Debug/net6.0/appsettings.Development.json

@ -0,0 +1,8 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
}
}

14
WebApplication1/bin/Debug/net6.0/appsettings.json

@ -0,0 +1,14 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*",
"Configs": {
"SystemIp": "143.120.5.25",
"Port": "8080"
}
}

26
WebApplication1/bin/Release/net6.0/Dockerfile

@ -0,0 +1,26 @@
# 选择从什么镜像基础上创建我们的镜像,相当于选择我们依赖的环境
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
LABEL description=""
LABEL version="1.0"
# 指定工作目录
WORKDIR /app
# 把当前目录复制到镜像的 app目录
COPY . .
#时区设置
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
# 暴露的端口
#EXPOSE 80
EXPOSE 5194
ENV ASPNETCORE_URLS=http://+:5194
ENV ASPNETCORE_ENVIRONMENT Production
# 最后设置启动的dll
ENTRYPOINT ["dotnet", "WebApplication1.dll"]

140
WebApplication1/bin/Release/net6.0/WebApplication1.deps.json

@ -0,0 +1,140 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"WebApplication1/1.0.1.0": {
"dependencies": {
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets": "1.18.1",
"Newtonsoft.Json": "13.0.3",
"Swashbuckle.AspNetCore": "6.0.0"
},
"runtime": {
"WebApplication1.dll": {}
}
},
"Microsoft.Extensions.ApiDescription.Server/3.0.0": {},
"Microsoft.OpenApi/1.2.3": {
"runtime": {
"lib/netstandard2.0/Microsoft.OpenApi.dll": {
"assemblyVersion": "1.2.3.0",
"fileVersion": "1.2.3.0"
}
}
},
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.18.1": {},
"Newtonsoft.Json/13.0.3": {
"runtime": {
"lib/net6.0/Newtonsoft.Json.dll": {
"assemblyVersion": "13.0.0.0",
"fileVersion": "13.0.3.27908"
}
}
},
"Swashbuckle.AspNetCore/6.0.0": {
"dependencies": {
"Microsoft.Extensions.ApiDescription.Server": "3.0.0",
"Swashbuckle.AspNetCore.Swagger": "6.0.0",
"Swashbuckle.AspNetCore.SwaggerGen": "6.0.0",
"Swashbuckle.AspNetCore.SwaggerUI": "6.0.0"
}
},
"Swashbuckle.AspNetCore.Swagger/6.0.0": {
"dependencies": {
"Microsoft.OpenApi": "1.2.3"
},
"runtime": {
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.0.0"
}
}
},
"Swashbuckle.AspNetCore.SwaggerGen/6.0.0": {
"dependencies": {
"Swashbuckle.AspNetCore.Swagger": "6.0.0"
},
"runtime": {
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.0.0"
}
}
},
"Swashbuckle.AspNetCore.SwaggerUI/6.0.0": {
"runtime": {
"lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.0.0"
}
}
}
}
},
"libraries": {
"WebApplication1/1.0.1.0": {
"type": "project",
"serviceable": false,
"sha512": ""
},
"Microsoft.Extensions.ApiDescription.Server/3.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-LH4OE/76F6sOCslif7+Xh3fS/wUUrE5ryeXAMcoCnuwOQGT5Smw0p57IgDh/pHgHaGz/e+AmEQb7pRgb++wt0w==",
"path": "microsoft.extensions.apidescription.server/3.0.0",
"hashPath": "microsoft.extensions.apidescription.server.3.0.0.nupkg.sha512"
},
"Microsoft.OpenApi/1.2.3": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Nug3rO+7Kl5/SBAadzSMAVgqDlfGjJZ0GenQrLywJ84XGKO0uRqkunz5Wyl0SDwcR71bAATXvSdbdzPrYRYKGw==",
"path": "microsoft.openapi/1.2.3",
"hashPath": "microsoft.openapi.1.2.3.nupkg.sha512"
},
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.18.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-RtNQEQQ/bgaxzrsZEkPB+/DFaUgNiq8GtZz/R4lt+mKXPcEvEuawlbl0PB1s7ND9kvkUVZtMphPxE9Ma1VGiFg==",
"path": "microsoft.visualstudio.azure.containers.tools.targets/1.18.1",
"hashPath": "microsoft.visualstudio.azure.containers.tools.targets.1.18.1.nupkg.sha512"
},
"Newtonsoft.Json/13.0.3": {
"type": "package",
"serviceable": true,
"sha512": "sha512-HrC5BXdl00IP9zeV+0Z848QWPAoCr9P3bDEZguI+gkLcBKAOxix/tLEAAHC+UvDNPv4a2d18lOReHMOagPa+zQ==",
"path": "newtonsoft.json/13.0.3",
"hashPath": "newtonsoft.json.13.0.3.nupkg.sha512"
},
"Swashbuckle.AspNetCore/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-VxukQYrUrxNUWQocOxmxua/4fZOPBdGCLSaoZYRNthZae0UXB+fzjTBTlj24fZEQrP+QTnsRwSygN9jNBqm/hg==",
"path": "swashbuckle.aspnetcore/6.0.0",
"hashPath": "swashbuckle.aspnetcore.6.0.0.nupkg.sha512"
},
"Swashbuckle.AspNetCore.Swagger/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-onkGK5eDFmyNy605E5ZaT5oXEGsQJz2UEKsUOqYCZRBC2Fi6MbByUl+qznyl3pZ9/4nTvukUjt9+v28qvJPk/Q==",
"path": "swashbuckle.aspnetcore.swagger/6.0.0",
"hashPath": "swashbuckle.aspnetcore.swagger.6.0.0.nupkg.sha512"
},
"Swashbuckle.AspNetCore.SwaggerGen/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-RXY21STD/yo4Uzy1L5GoRrEQQWoOosw0QBYo572VwcjePmpV1yFFHsTeThlMNBWKoTt6xadIdSjZj0FmDFYL2A==",
"path": "swashbuckle.aspnetcore.swaggergen/6.0.0",
"hashPath": "swashbuckle.aspnetcore.swaggergen.6.0.0.nupkg.sha512"
},
"Swashbuckle.AspNetCore.SwaggerUI/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-VusRaCFt2As3SXBJmUOGA40IGr6ao+vsvDi7jbCS4AFx69kUUm8zxIHeJVqGov3w4lQowVxv8gmonRXDRh1FvQ==",
"path": "swashbuckle.aspnetcore.swaggerui/6.0.0",
"hashPath": "swashbuckle.aspnetcore.swaggerui.6.0.0.nupkg.sha512"
}
}
}

20
WebApplication1/bin/Release/net6.0/WebApplication1.runtimeconfig.json

@ -0,0 +1,20 @@
{
"runtimeOptions": {
"tfm": "net6.0",
"frameworks": [
{
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
},
{
"name": "Microsoft.AspNetCore.App",
"version": "6.0.0"
}
],
"configProperties": {
"System.GC.Server": true,
"System.Reflection.Metadata.MetadataUpdater.IsSupported": false,
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}

8
WebApplication1/bin/Release/net6.0/appsettings.Development.json

@ -0,0 +1,8 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
}
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save