Browse Source

接口传可空参数报错调整,新增验证配置

master
liujiaqiang 2 years ago
parent
commit
2efb01a7db
  1. 3
      24Hour/Controllers/Common/ReservationController.cs
  2. 3
      24Hour/Controllers/Common/StagingController.cs
  3. 41
      24Hour/Controllers/Common/WebSocketController.cs
  4. 8
      24Hour/Controllers/LoginController.cs
  5. 2
      24Hour/Controllers/system/SystemControllerController.cs
  6. 54
      24Hour/Program.cs
  7. 6
      24Hour/Properties/launchSettings.json
  8. 18
      24Hour/appsettings.json
  9. 4
      Elight.Entity/AppMode/App_ReceptionModel.cs
  10. 16
      Elight.Entity/AppMode/StagingModel.cs
  11. 8
      Elight.Entity/AppMode/StagingNumModel.cs
  12. 14
      Elight.Entity/SystemModel/App_Sys_DepartModel.cs
  13. 20
      Elight.Entity/SystemModel/App_Sys_MenuModel.cs
  14. 10
      Elight.Entity/SystemModel/App_Sys_RoleMenuModel.cs
  15. 10
      Elight.Entity/SystemModel/App_Sys_RoleModel.cs
  16. 10
      Elight.Entity/SystemModel/App_Sys_RoleUserModel.cs
  17. 14
      Elight.Entity/SystemModel/App_Sys_UnitModel.cs
  18. 28
      Elight.Entity/SystemModel/App_Sys_UserModel.cs
  19. 26
      Elight.Entity/SystemModel/Func_Dossier_LogRecordModel.cs
  20. 14
      Elight.Logic/Model/App_ReceptionInput.cs
  21. 12
      Elight.Logic/Model/StagingInput.cs
  22. 8
      Elight.Logic/Model/StagingNumInput.cs
  23. 2
      Elight.Logic/SystemModel/App_Sys_UnitTree.cs
  24. 36
      Elight.Utility/NullableConverter.cs

3
24Hour/Controllers/Common/ReservationController.cs

@ -9,6 +9,9 @@ using SqlSugar;
namespace _24Hour.Controllers.Common
{
/// <summary>
/// 预约接待
/// </summary>
[Authorize]
[ApiController]
[Route("api/reception")]

3
24Hour/Controllers/Common/StagingController.cs

@ -8,6 +8,9 @@ using SqlSugar;
namespace _24Hour.Controllers.Common
{
/// <summary>
/// 工作台
/// </summary>
[Authorize]
[ApiController]
[Route("api/Staging")]

41
24Hour/Controllers/Common/WebSocketController.cs

@ -1,11 +1,25 @@
using Microsoft.AspNetCore.Authorization;
using Elight.Entity;
using Elight.Logic;
using Elight.Utility;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using System.Net.WebSockets;
namespace _24Hour.Controllers.Common
{
[Authorize]
//[Authorize]
public class WebSocketController : Controller
{
//private readonly SqlSugarClient _db;//数据库
//App_Sys_UserModel _userdata = new App_Sys_UserModel();//当前用户
//private readonly ILogger<LoginController> _logger;//日志
//public WebSocketController(ILogger<LoginController> logger, SqlSugarClient db, User user)
//{
// _logger = logger;
// _db = db;
// _userdata = user.Userdata();
//}
[HttpGet("/ws")]
public async Task WebSocketServer()
{
@ -14,11 +28,32 @@ namespace _24Hour.Controllers.Common
try
{
var socket = await HttpContext.WebSockets.AcceptWebSocketAsync();
//ProcessChat(socket);
}
catch (Exception ex)
{
}
}
}
//private async Task ProcessChat(WebSockets context)
//{
// WebSocket socket = context.WebSocket;
// while (true)
// {
// if (socket.State == WebSocketState.Open)
// {
// ArraySegment<byte> buffer = new ArraySegment<byte>(new byte[2048]);
// WebSocketReceiveResult result = await socket.ReceiveAsync(buffer, CancellationToken.None);
// string userMsg = Encoding.UTF8.GetString(buffer.Array, 0, result.Count);
// userMsg = "你发送了:" + userMsg + "于" + DateTime.Now.ToLongTimeString();
// buffer = new ArraySegment<byte>(Encoding.UTF8.GetBytes(userMsg));
// await socket.SendAsync(buffer, WebSocketMessageType.Text, true, CancellationToken.None);
// }
// else
// {
// break;
// }
// }
//}
}
}
}

8
24Hour/Controllers/LoginController.cs

@ -75,8 +75,8 @@ namespace _24Hour.Controllers
var signingCredentials = new SigningCredentials(key, SecurityAlgorithms.HmacSha256);
//Token
var jwttoken = new JwtSecurityToken(
issuer: "https://127.0.0.1:7246",
audience: "https://127.0.0.1:7246",
issuer: _configuration.GetSection("JwtConfiguration:Issuer").Value,
audience: _configuration.GetSection("JwtConfiguration:Audience").Value,
claims: claims,
notBefore: DateTime.Now,
expires: DateTime.Now.AddDays(1),
@ -147,8 +147,8 @@ namespace _24Hour.Controllers
var signingCredentials = new SigningCredentials(key, SecurityAlgorithms.HmacSha256);
//Token
var jwttoken = new JwtSecurityToken(
issuer: "https://127.0.0.1:7246",
audience: "https://127.0.0.1:7246",
issuer: _configuration.GetSection("JwtConfiguration:Issuer").Value,
audience: _configuration.GetSection("JwtConfiguration:Audience").Value,
claims: claims,
notBefore: DateTime.Now,
expires: DateTime.Now.AddDays(1),

2
24Hour/Controllers/system/SystemControllerController.cs

@ -566,7 +566,7 @@ namespace _24Hour.Controllers.system
.WhereIF(!Unitdata.unitname.IsNullOrEmpty(), q => q.unitname.Contains(Unitdata.unitname))
.WhereIF(!Unitdata.unitjc.IsNullOrEmpty(), q => q.unitjc.Contains(Unitdata.unitjc))
.WhereIF(Unitdata.StartTime != null && Unitdata.EndTime != null, q => q.createtime >= Unitdata.StartTime && q.createtime < Unitdata.EndTime.Value.AddDays(1))
.Where(q => q.IsDelete == 0).ToTreeAsync(it => it.Child, it => it.pid, null);
.Where(q => q.IsDelete == 0).ToTreeAsync(it => it.children, it => it.pid, null);
result.IsSucceed = true;
result.result = treelist;
return result;

54
24Hour/Program.cs

@ -2,6 +2,8 @@ using Elight.Logic;
using Elight.Utility;
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc.Authorization;
using Microsoft.AspNetCore.Mvc.Controllers;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection.Extensions;
@ -10,20 +12,33 @@ using Microsoft.OpenApi.Models;
using SqlSugar;
using System.Data;
using System.Text;
using System.Text.Json.Serialization;
using System.Text.Json;
using Microsoft.AspNetCore.Http.Json;
#region builder
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();
builder.Services.AddControllers().AddJsonOptions(options =>
{
options.JsonSerializerOptions.PropertyNamingPolicy = null;
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<DateTime>());
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<DateTimeOffset>());
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<long>());
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<int>());
options.JsonSerializerOptions.Converters.Add(new Elight.Utility.NullableConverter<double>());
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>());
});
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
#region
#endregion
#region Swagger文件
builder.Services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
@ -58,9 +73,11 @@ builder.Services.AddSwaggerGen(c =>
Type = SecuritySchemeType.ApiKey
});
});
builder.Services.AddControllers().AddJsonOptions(options =>
#endregion
builder.Services.AddMvc(config =>
{
options.JsonSerializerOptions.PropertyNamingPolicy = null;
config.Filters.Add(new AllowAnonymousFilter());
});
// Ìí¼ÓÉí·ÝÑéÖ¤·þÎñ
builder.Services.AddAuthentication(options =>
@ -84,13 +101,13 @@ builder.Services.AddAuthentication(options =>
ClockSkew = TimeSpan.Zero
};
////重点在于这里;判断是SignalR的路径(https://www.cnblogs.com/fger/p/11811190.html)
//重点在于这里;判断是WebSocket的路径(https://www.cnblogs.com/fger/p/11811190.html)
options.Events = new JwtBearerEvents
{
OnMessageReceived = (context) =>
{
if (!context.HttpContext.Request.Path.HasValue) return Task.CompletedTask;
//重点在于这里;判断是SignalR的路径
//重点在于这里;判断是WebSocket的路径
var accessToken = context.HttpContext.Request.Query["access_token"];
var path = context.HttpContext.Request.Path;
if (string.IsNullOrWhiteSpace(accessToken) || !path.StartsWithSegments("/ws")) return Task.CompletedTask;
@ -149,7 +166,14 @@ if (app.Environment.IsDevelopment())
app.UseSwagger();
app.UseSwaggerUI();
}
#region websockets配置
app.UseWebSockets(new WebSocketOptions
{
KeepAliveInterval = TimeSpan.FromMinutes(2)
});
//app.UseMiddleware<WebSocketMiddleware>();
#endregion
app.UseStaticFiles();
app.UseHttpsRedirection();
//·ÓÉ
app.UseRouting();
@ -168,15 +192,5 @@ app.UseSwaggerUI(c =>
c.RoutePrefix = string.Empty;
});
#endregion
#region websockets配置
app.UseWebSockets(new WebSocketOptions
{
KeepAliveInterval = TimeSpan.FromMinutes(120)
});
//app.UseMiddleware<WebSocketMiddleware>();
#endregion
app.Run();
#endregion

6
24Hour/Properties/launchSettings.json

@ -11,13 +11,11 @@
"profiles": {
"_24Hour": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"launchUrl": "swagger",
"applicationUrl": "https://localhost:7246",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"applicationUrl": "http://localhost:8099"
},
"IIS Express": {
"commandName": "IISExpress",

18
24Hour/appsettings.json

@ -8,16 +8,16 @@
"AllowedHosts": "*",
"ConnectionStrings": {
"DBType": "MySQL",
"MySQLConnString": "server=192.168.0.251;Database=equipmentrearend;Uid=root;Pwd=sa@admin;Allow User Variables=True;",
"MySQLConnString": "server=192.168.0.251;Database=equipmentrearend;Uid=root;Pwd=sa@admin;Allow User Variables=True;"
},
//JwtConfig
"JwtConfiguration": {
/*JwtConfig Issuer=http://127.0.0.1:api*/
//
"Issuer": "https://127.0.0.1:7246",
"Issuer": "http://127.0.0.1:8098",
/* JwtConfig Audience=http://127.0.0.1:api*/
//
"Audience": "https://127.0.0.1:7246",
"Audience": "http://127.0.0.1:8098",
//RefreshToken
"RefreshTokenAudience": null,
//Key
@ -28,5 +28,17 @@
"RefreshTokenExpires": 1440,
//
"ClockSkew": 1
},
//Urls
"UrlsConfiguration": {
/* Urls["http://*:api端口号"] */
"Urls": "http://*:8098",
//"协议+域名+端口"
/* IP */
"CorUrls": [ "http://localhost:8002", "http://114.115.168.247:9111", "http://47.109.20.59:8937", "http://47.109.20.59:8942", "http://localhost:8080", "http://localhost:4223" ],
/* DomainUrl["http://localhost:api端口号"] */
"DomainUrl": "http://localhost:8006",
"HubCorUrls": []
}
}

4
Elight.Entity/AppMode/App_ReceptionModel.cs

@ -58,10 +58,10 @@ namespace Elight.Entity
[DataMember]
public string createusername { get; set; }
public string? createusername { get; set; }
[DataMember]
public string createuserId { get; set; }
public string? createuserId { get; set; }
/// <summary>
/// 创建日期

16
Elight.Entity/AppMode/StagingModel.cs

@ -18,44 +18,44 @@ namespace Elight.Entity
{
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 跳转地址
/// </summary>
[DataMember]
public string path { get; set; }
public string? path { get; set; }
/// <summary>
/// 图标地址
/// </summary>
[DataMember]
public string icon { get; set; }
public string? icon { get; set; }
/// <summary>
/// 颜色
/// </summary>
[DataMember]
public string color { get; set; }
public string? color { get; set; }
/// <summary>
/// 名称
/// </summary>
[DataMember]
public string title { get; set; }
public string? title { get; set; }
/// <summary>
/// 类型
/// </summary>
[DataMember]
public string titletype { get; set; }
public string? titletype { get; set; }
[DataMember]
public string username { get; set; }
public string? username { get; set; }
[DataMember]
public string userId { get; set; }
public string? userId { get; set; }
/// <summary>
/// 创建日期

8
Elight.Entity/AppMode/StagingNumModel.cs

@ -18,13 +18,13 @@ namespace Elight.Entity
{
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 工作台Id
/// </summary>
[DataMember]
public string stagingId { get; set; }
public string? stagingId { get; set; }
/// <summary>
/// 使用数
@ -32,12 +32,12 @@ namespace Elight.Entity
[DataMember]
public int num { get; set; }
[DataMember]
public string username { get; set; }
public string? username { get; set; }
/// <summary>
/// 用户Id
/// </summary>
[DataMember]
public string userId { get; set; }
public string? userId { get; set; }
/// <summary>
/// 创建日期

14
Elight.Entity/SystemModel/App_Sys_DepartModel.cs

@ -17,29 +17,29 @@ namespace Elight.Entity
/// </summary>
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 单位Id
/// </summary>
[DataMember]
public string unitId { get; set; }
public string? unitId { get; set; }
/// <summary>
/// 部门编码
/// </summary>
[DataMember]
public string departCode { get; set; }
public string? departCode { get; set; }
/// <summary>
/// 部门名称
/// </summary>
[DataMember]
public string departname { get; set; }
public string? departname { get; set; }
/// <summary>
/// 部门简称
/// </summary>
[DataMember]
public string departjc { get; set; }
public string? departjc { get; set; }
/// <summary>
/// 是否删除 0否,1是
@ -51,13 +51,13 @@ namespace Elight.Entity
/// 创建人Id
/// </summary>
[DataMember]
public string createuserId { get; set; }
public string? createuserId { get; set; }
/// <summary>
/// 创建人
/// </summary>
[DataMember]
public string createusername { get; set; }
public string? createusername { get; set; }
/// <summary>
/// 创建时间
/// </summary>

20
Elight.Entity/SystemModel/App_Sys_MenuModel.cs

@ -18,41 +18,41 @@ namespace Elight.Entity
/// </summary>
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 父级
/// </summary>
[DataMember]
public string pid { get; set; }
public string? pid { get; set; }
/// <summary>
/// 路径
/// </summary>
[DataMember]
public string path { get; set; }
public string? path { get; set; }
/// <summary>
/// 菜单名称
/// </summary>
[DataMember]
public string name { get; set; }
public string? name { get; set; }
/// <summary>
/// 页面组件路径
/// </summary>
[DataMember]
public string component { get; set; }
public string? component { get; set; }
/// <summary>
/// 直接跳转路径
/// </summary>
[DataMember]
public string redirect { get; set; }
public string? redirect { get; set; }
/// <summary>
/// 页面标题
/// </summary>
[DataMember]
public string title { get; set; }
public string? title { get; set; }
/// <summary>
/// 是否隐藏子菜单
@ -64,7 +64,7 @@ namespace Elight.Entity
/// 图标
/// </summary>
[DataMember]
public string icon { get; set; }
public string? icon { get; set; }
/// <summary>
/// 当前菜单在列表中显示时 激活的菜单
/// </summary>
@ -96,13 +96,13 @@ namespace Elight.Entity
/// 创建人Id
/// </summary>
[DataMember]
public string createuserId { get; set; }
public string? createuserId { get; set; }
/// <summary>
/// 创建人
/// </summary>
[DataMember]
public string createusername { get; set; }
public string? createusername { get; set; }
/// <summary>
/// 创建时间
/// </summary>

10
Elight.Entity/SystemModel/App_Sys_RoleMenuModel.cs

@ -18,31 +18,31 @@ namespace Elight.Entity
/// </summary>
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 角色Id
/// </summary>
[DataMember]
public string roleId { get; set; }
public string? roleId { get; set; }
/// <summary>
/// 菜单Id
/// </summary>
[DataMember]
public string menuId { get; set; }
public string? menuId { get; set; }
/// <summary>
/// 用户Id
/// </summary>
[DataMember]
public string userId { get; set; }
public string? userId { get; set; }
/// <summary>
/// 用户名称
/// </summary>
[DataMember]
public string username { get; set; }
public string? username { get; set; }
/// <summary>
/// 创建时间

10
Elight.Entity/SystemModel/App_Sys_RoleModel.cs

@ -18,31 +18,31 @@ namespace Elight.Entity
/// </summary>
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string unitCode { get; set; }
public string? unitCode { get; set; }
/// <summary>
/// 角色名称
/// </summary>
[DataMember]
public string name { get; set; }
public string? name { get; set; }
/// <summary>
/// 用户Id
/// </summary>
[DataMember]
public string userId { get; set; }
public string? userId { get; set; }
/// <summary>
/// 用户名称
/// </summary>
[DataMember]
public string username { get; set; }
public string? username { get; set; }
/// <summary>
/// 创建时间

10
Elight.Entity/SystemModel/App_Sys_RoleUserModel.cs

@ -18,31 +18,31 @@ namespace Elight.Entity
/// </summary>
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string roleId { get; set; }
public string? roleId { get; set; }
/// <summary>
/// 角色用户Id
/// </summary>
[DataMember]
public string roleuserId { get; set; }
public string? roleuserId { get; set; }
/// <summary>
/// 用户Id
/// </summary>
[DataMember]
public string userId { get; set; }
public string? userId { get; set; }
/// <summary>
/// 用户名称
/// </summary>
[DataMember]
public string username { get; set; }
public string? username { get; set; }
/// <summary>
/// 创建时间

14
Elight.Entity/SystemModel/App_Sys_UnitModel.cs

@ -18,29 +18,29 @@ namespace Elight.Entity
/// </summary>
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 父级
/// </summary>
[DataMember]
public string pid { get; set; }
public string? pid { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string unitCode { get; set; }
public string? unitCode { get; set; }
/// <summary>
/// 单位名称
/// </summary>
[DataMember]
public string unitname { get; set; }
public string? unitname { get; set; }
/// <summary>
/// 单位简称
/// </summary>
[DataMember]
public string unitjc { get; set; }
public string? unitjc { get; set; }
/// <summary>
/// 是否删除 0否,1是
@ -52,13 +52,13 @@ namespace Elight.Entity
/// 创建人Id
/// </summary>
[DataMember]
public string createuserId { get; set; }
public string? createuserId { get; set; }
/// <summary>
/// 创建人
/// </summary>
[DataMember]
public string createusername { get; set; }
public string? createusername { get; set; }
/// <summary>
/// 创建时间
/// </summary>

28
Elight.Entity/SystemModel/App_Sys_UserModel.cs

@ -18,60 +18,60 @@ namespace Elight.Entity
/// </summary>
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string unitCode { get; set; }
public string? unitCode { get; set; }
/// <summary>
/// 部门
/// </summary>
[DataMember]
public string department { get; set; }
public string? department { get; set; }
/// <summary>
/// 密码
/// </summary>
[DataMember]
public string Password { get; set; }
public string? Password { get; set; }
/// <summary>
/// 名称
/// </summary>
[DataMember]
public string name { get; set; }
public string? name { get; set; }
/// <summary>
/// 职务
/// </summary>
[DataMember]
public string duties { get; set; }
public string? duties { get; set; }
/// <summary>
/// 电话号码
/// </summary>
[DataMember]
public string phone { get; set; }
public string? phone { get; set; }
/// <summary>
/// 身份证号码
/// </summary>
[DataMember]
public string cardId { get; set; }
public string? cardId { get; set; }
/// <summary>
/// 身份(检察官,律师,当事人)
/// </summary>
[DataMember]
public string identity { get; set; }
public string? identity { get; set; }
/// <summary>
/// 微信Id
/// </summary>
[DataMember]
public string wechatId { get; set; }
public string? wechatId { get; set; }
/// <summary>
/// 账号类型0:系统,1:APP
@ -95,7 +95,7 @@ namespace Elight.Entity
/// 头像地址
/// </summary>
[DataMember]
public string photo { get; set; }
public string? photo { get; set; }
/// <summary>
/// 性别 0:女 1:男
@ -117,17 +117,17 @@ namespace Elight.Entity
/// 审核描述
/// </summary>
[DataMember]
public string describe { get; set; }
public string? describe { get; set; }
/// <summary>
/// 创建人Id
/// </summary>
[DataMember]
public string createuserId { get; set; }
public string? createuserId { get; set; }
/// <summary>
/// 创建人
/// </summary>
[DataMember]
public string createusername { get; set; }
public string? createusername { get; set; }
/// <summary>
/// 创建时间
/// </summary>

26
Elight.Entity/SystemModel/Func_Dossier_LogRecordModel.cs

@ -21,79 +21,79 @@ namespace Elight.Entity.SystemModel
/// 序号
/// </summary>
[DataMember]
public string SerialNumber { get; set; }
public string? SerialNumber { get; set; }
/// <summary>
/// 单位编码
/// </summary>
[DataMember]
public string UnitCode { get; set; }
public string? UnitCode { get; set; }
/// <summary>
/// 单位名称
/// </summary>
[DataMember]
public string NameEntity { get; set; }
public string? NameEntity { get; set; }
/// <summary>
/// 部门编码
/// </summary>
[DataMember]
public string DepartmentCode { get; set; }
public string? DepartmentCode { get; set; }
/// <summary>
/// 部门名称
/// </summary>
[DataMember]
public string DepartmentName { get; set; }
public string? DepartmentName { get; set; }
/// <summary>
/// 操作人工号
/// </summary>
[DataMember]
public string OperatingManual { get; set; }
public string? OperatingManual { get; set; }
/// <summary>
/// 操作人
/// </summary>
[DataMember]
public string Operation { get; set; }
public string? Operation { get; set; }
/// <summary>
/// 操作时间
/// </summary>
[DataMember]
public string OperatingTime { get; set; }
public string? OperatingTime { get; set; }
/// <summary>
/// 操作IP
/// </summary>
[DataMember]
public string OperationIp { get; set; }
public string? OperationIp { get; set; }
/// <summary>
/// 操作类型
/// </summary>
[DataMember]
public string OperationType { get; set; }
public string? OperationType { get; set; }
/// <summary>
/// 日志内容
/// </summary>
[DataMember]
public string LogContents { get; set; }
public string? LogContents { get; set; }
/// <summary>
/// 操作案件部门受案号
/// </summary>
[DataMember]
public string OpeCasDepAccCas { get; set; }
public string? OpeCasDepAccCas { get; set; }
/// <summary>
/// 分区列 创建时间取年份,触发器完成
/// </summary>
[DataMember]
public string ParColCreTimTakYeaTri { get; set; }
public string? ParColCreTimTakYeaTri { get; set; }
/// <summary>
/// 是否删除

14
Elight.Logic/Model/App_ReceptionInput.cs

@ -15,7 +15,7 @@ namespace Elight.Logic
public class App_ReceptionInput : Paging
{
[DataMember]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 预约时间
@ -27,25 +27,25 @@ namespace Elight.Logic
/// 部门
/// </summary>
[DataMember]
public string depart { get; set; }
public string? depart { get; set; }
/// <summary>
/// 接待人
/// </summary>
[DataMember]
public string receptionuser { get; set; }
public string? receptionuser { get; set; }
/// <summary>
/// 事由
/// </summary>
[DataMember]
public string matter { get; set; }
public string? matter { get; set; }
/// <summary>
/// 预约接待类型
/// </summary>
[DataMember]
public string receptionId { get; set; }
public string? receptionId { get; set; }
/// <summary>
/// 0:代办,1已完成
@ -57,12 +57,12 @@ namespace Elight.Logic
/// 创建人名称
/// </summary>
[DataMember]
public string createusername { get; set; }
public string? createusername { get; set; }
/// <summary>
/// 创建人Id
/// </summary>
[DataMember]
public string createuserId { get; set; }
public string? createuserId { get; set; }
}
}

12
Elight.Logic/Model/StagingInput.cs

@ -17,36 +17,36 @@ namespace Elight.Logic
public class StagingInput:Paging
{
[DataMember]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 跳转地址
/// </summary>
[DataMember]
public string path { get; set; }
public string? path { get; set; }
/// <summary>
/// 图标地址
/// </summary>
[DataMember]
public string icon { get; set; }
public string? icon { get; set; }
/// <summary>
/// 颜色
/// </summary>
[DataMember]
public string color { get; set; }
public string? color { get; set; }
/// <summary>
/// 名称
/// </summary>
[DataMember]
public string title { get; set; }
public string? title { get; set; }
/// <summary>
/// 类型
/// </summary>
[DataMember]
public string titletype { get; set; }
public string? titletype { get; set; }
}
}

8
Elight.Logic/Model/StagingNumInput.cs

@ -17,21 +17,21 @@ namespace Elight.Logic
{
[DataMember]
[SugarColumn(IsPrimaryKey = true)]
public string Id { get; set; }
public string? Id { get; set; }
/// <summary>
/// 工作台Id
/// </summary>
[DataMember]
public string stagingId { get; set; }
public string? stagingId { get; set; }
/// <summary>
/// 使用数
/// </summary>
[DataMember]
public string num { get; set; }
public string? num { get; set; }
[DataMember]
public string username { get; set; }
public string? username { get; set; }
/// <summary>
/// 用户Id
/// </summary>

2
Elight.Logic/SystemModel/App_Sys_UnitTree.cs

@ -67,7 +67,7 @@ namespace Elight.Logic.SystemModel
public DateTime? createtime { get; set; } = DateTime.Now;
[SqlSugar.SugarColumn(IsIgnore = true)]
public List<App_Sys_UnitTree>? Child { get; set; }
public List<App_Sys_UnitTree>? children { get; set; }
}
}

36
Elight.Utility/NullableConverter.cs

@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.Json;
using System.Text.Json.Serialization;
using System.Threading.Tasks;
namespace Elight.Utility
{
/// <summary>
/// 自定义 NullableConverter 解决可为空类型字段入参“”空字符触发转换异常问题
/// </summary>
/// <typeparam name="T"></typeparam>
public class NullableConverter<T> : JsonConverter<T?> where T:struct
{
public override T? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
if (reader.TokenType == JsonTokenType.String)
{
if (string.IsNullOrEmpty(reader.GetString()) || string.IsNullOrWhiteSpace(reader.GetString()))
{
return null;
}
}
return JsonSerializer.Deserialize<T>(ref reader, options);
}
public override void Write(Utf8JsonWriter writer, T? value, JsonSerializerOptions options)
{
JsonSerializer.Serialize(writer, value!.Value, options);
}
}
}
Loading…
Cancel
Save