| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209 |
- using System.Runtime.Serialization;
- namespace OASystem.Domain
- {
- public class Result
- {
- public int Code { get; set; } = -1;
- public string Msg { get; set; } = "未知错误";
- public dynamic? Data { get; set; } = new { };
- public Result() { }
- public Result(int code, string msg)
- {
- Code = code;
- Msg = msg;
- Data = null;
- }
- public Result(int code, string msg, dynamic? data = null)
- {
- Code = code;
- Msg = msg;
- Data = data;
- }
- }
- /// <summary>
- /// 业务异常基类
- /// </summary>
- [Serializable] // 核心:添加序列化特性(IIS识别的关键)
- public class BusinessException : Exception
- {
- /// <summary>
- /// 错误代码
- /// </summary>
- public int Code { get; set; }
- /// <summary>
- /// 错误消息
- /// </summary>
- public string Msg { get; set; }
- /// <summary>
- /// 错误详情
- /// </summary>
- public new object Data { get; set; }
- // 无参构造函数(序列化必备,即使不直接使用)
- public BusinessException() : base() { }
- public BusinessException(string message) : base(message)
- {
- Code = 400;
- Msg = message;
- }
- public BusinessException(int code, string message) : base(message)
- {
- Code = code;
- Msg = message;
- }
- public BusinessException(string message, object details) : base(message)
- {
- Code = 400;
- Msg = message;
- Data = details;
- }
- public BusinessException(int code, string message, object details) : base(message)
- {
- Code = code;
- Msg = message;
- Data = details;
- }
- public BusinessException(string message, Exception innerException)
- : base(message, innerException)
- {
- Code = 400;
- Msg = message;
- }
- // 核心:序列化构造函数(IIS反序列化时必须调用)
- protected BusinessException(SerializationInfo info, StreamingContext context)
- : base(info, context)
- {
- // 读取序列化的自定义属性(和GetObjectData对应)
- Code = info.GetInt32(nameof(Code));
- Msg = info.GetString(nameof(Msg));
- Data = info.GetValue(nameof(Data), typeof(object));
- }
- // 核心:重写GetObjectData(序列化自定义属性)
- public override void GetObjectData(SerializationInfo info, StreamingContext context)
- {
- base.GetObjectData(info, context);
- // 写入自定义属性到序列化流
- info.AddValue(nameof(Code), Code);
- info.AddValue(nameof(Msg), Msg);
- info.AddValue(nameof(Data), Data);
- }
- }
- /// <summary>
- /// 公共静态数据
- /// </summary>
- public static class SharingStaticData
- {
- /// <summary>
- /// 端口静态数据
- /// </summary>
- public static List<int> PortTypes = new() { 1, 2, 3 };
- }
- /// <summary>
- /// 消息 Tips
- /// </summary>
- public static class MsgTips
- {
- /// <summary>
- /// 成功 消息提示
- /// </summary>
- public static string Succeed = "操作成功!";
- /// <summary>
- /// 失败 消息提示
- /// </summary>
- public static string Fail = "操作失败!";
- /// <summary>
- /// 添加成功
- /// </summary>
- public static string AddSucceed = "添加成功!";
- /// <summary>
- /// 添加成功
- /// </summary>
- public static string AddFail = "添加失败!";
- /// <summary>
- /// 修改成功
- /// </summary>
- public static string EditSucceed = "修改成功!";
- /// <summary>
- /// 修改成功
- /// </summary>
- public static string EditFail = "修改失败!";
- /// <summary>
- /// 端口错误消息提示
- /// </summary>
- public static string Port = "请检查端口值是否正确!“portType”:1:WEB;2:ANDROID;3:IOS;";
- /// <summary>
- /// 端口错误消息提示-Mobile
- /// </summary>
- public static string MobilePort = "请检查端口值是否正确!“portType”:2:ANDROID;3:IOS;";
- /// <summary>
- /// PageIndex 错误消息提示
- /// </summary>
- public static string PageIndex = "请检查当前页面(pageIndex)是否正确!";
- /// <summary>
- /// PageSize 错误消息提示
- /// </summary>
- public static string PageSize = "请检查每页长度(pageSize)是否正确!";
- /// <summary>
- /// 团组Id错误消息提示
- /// </summary>
- public static string DiId = "请检查团组Id是否正确!";
- /// <summary>
- /// 数据Id错误消息提示
- /// </summary>
- public static string Id = "请检查数据Id(id)是否正确!";
- /// <summary>
- /// 数据Id错误消息提示
- /// </summary>
- public static string Status = "请检查状态Id(Status)是否正确!1 添加 2 修改";
- /// <summary>
- /// UserId错误消息提示
- /// </summary>
- public static string UserId = "请检查UserId是否正确!";
- /// <summary>
- /// OperateId错误消息提示
- /// </summary>
- public static string OperateId = "请传入有效的操作类型Id";
- /// <summary>
- /// PageId错误消息提示
- /// </summary>
- public static string PageId = "请检查PageId是否正确!";
- /// <summary>
- /// CheckAuth 错误消息提示
- /// </summary>
- public static string CheckAuth = "您没有查看权限!";
- }
- }
|