Browse Source

timelimit

dss 2 years ago
parent
commit
e638f74b0e

+ 14 - 0
src/Hotline.Repository.SqlSugar/Orders/TimeLimitRepository.cs

@@ -0,0 +1,14 @@
+using Hotline.Orders;
+using Hotline.Repository.SqlSugar.DataPermissions;
+using SqlSugar;
+using XF.Domain.Dependency;
+
+namespace Hotline.Repository.SqlSugar.Orders
+{
+    public class TimeLimitRepository : BaseRepository<TimeLimit>, ITimeLimitRepository, IScopeDependency
+    {
+        public TimeLimitRepository(ISugarUnitOfWork<HotlineDbContext> uow, IDataPermissionFilterBuilder dataPermissionFilterBuilder) : base(uow, dataPermissionFilterBuilder)
+        {
+        }
+    }
+}

+ 19 - 0
src/Hotline.Share/Enums/Order/ETimeLimitState.cs

@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Hotline.Share.Enums.Order
+{
+    public enum ETimeLimitState
+    {
+        [Description("草稿")]
+        Draft = 0,
+        [Description("启用")]
+        Enable = 1,
+        [Description("禁用")]
+        Disable =2,
+    }
+}

+ 7 - 0
src/Hotline/Orders/ITimeLimitDomainService.cs

@@ -0,0 +1,7 @@
+
+namespace Hotline.Orders
+{
+    public interface ITimeLimitDomainService
+    {
+    }
+}

+ 9 - 0
src/Hotline/Orders/ITimeLimitRepository.cs

@@ -0,0 +1,9 @@
+using XF.Domain.Repository;
+
+namespace Hotline.Orders
+{
+    public interface ITimeLimitRepository: IRepository<TimeLimit>
+    {
+
+    }
+}

+ 103 - 2
src/Hotline/Orders/TimeLimit.cs

@@ -1,11 +1,112 @@
-using XF.Domain.Repository;
+using Hotline.Share.Enums.Order;
+using SqlSugar;
+using XF.Domain.Repository;
 
 
 namespace Hotline.Orders
 namespace Hotline.Orders
 {
 {
     public class TimeLimit: CreationEntity
     public class TimeLimit: CreationEntity
     {
     {
+
         public string TimeLimitName { get; set; }
         public string TimeLimitName { get; set; }
 
 
-        //public string 
+        public string WorkflowName { get; set; }
+        
+        public string WorkflowCode { get; set; }
+
+        public ETimeLimitState TimeLimitState { get; set; }
+
+        [SugarColumn(ColumnDataType = "longtext", IsJson = true)]
+        public List<ParamTypeModel> ParamArr { get; set; }
+
+        [SugarColumn(ColumnDataType = "longtext", IsJson = true)]
+        public List<PriorityModel> Priority { get; set; }
+
+        [SugarColumn(ColumnDataType = "longtext", IsJson = true)]
+        public List<CombinationModel> Combination { get; set; }
+
+
+    }
+
+    public class CombinationModel
+    {
+        /// <summary>
+        /// 组合ID
+        /// </summary>
+        public string Id { get; set; }
+
+        /// <summary>
+        /// 组合名称
+        /// </summary>
+        public string CombinationName { get; set; }
+
+
+        /// <summary>
+        /// 组合参数
+        /// </summary>
+        public List<CombinationParamModel> CombinationParam { get; set; }
+
+
+        /// <summary>
+        /// 时限
+        /// </summary>
+        public int TimeLimitValue { get; set; }
+        /// <summary>
+        /// 时限类型
+        /// </summary>
+        public string TimeLimit { get; set; }
+
+        /// <summary>
+        /// 换算时间(小时)
+        /// </summary>
+        public int Hour { get; set; }
+    }
+
+
+    public class CombinationParamModel
+    {
+        public string Id { get; set; }
+
+        public string ParamName { get; set; }
+    }
+
+
+
+    public class PriorityModel
+    {
+        public string Id { get; set; }
+
+        public string ParamTypeName { get; set; }
+
+        public int Sort { get; set; }
+    }
+
+
+    public class ParamTypeModel
+    {
+        public string ParamType { get; set; }
+
+        public List<ParamValueModel> ParamValue { get; set; }
+    }
+
+    public class ParamValueModel
+    {
+        public string Id { get; set; }
+        /// <summary>
+        /// 
+        /// </summary>
+        public string ParamTypeName { get; set; }
+        /// <summary>
+        /// 时限
+        /// </summary>
+        public int TimeLimitValue { get; set; }
+        /// <summary>
+        /// 时限类型
+        /// </summary>
+        public string TimeLimit { get; set; }
+
+        /// <summary>
+        /// 换算时间(小时)
+        /// </summary>
+        public int Hour { get; set; }
     }
     }
 }
 }

+ 8 - 0
src/Hotline/Orders/TimeLimitDomainService.cs

@@ -0,0 +1,8 @@
+using XF.Domain.Dependency;
+
+namespace Hotline.Orders
+{
+    public class TimeLimitDomainService: ITimeLimitDomainService, IScopeDependency
+    {
+    }
+}

+ 1 - 1
src/Hotline/Settings/SysDicTypeConsts.cs

@@ -101,7 +101,7 @@ public class SysDicTypeConsts
     public const string PushType = "PushType";
     public const string PushType = "PushType";
 
 
     /// <summary>
     /// <summary>
-    /// 事件对象
+    /// 投诉举报目标
     /// </summary>
     /// </summary>
     public const string AffairTarget = "AffairTarget";
     public const string AffairTarget = "AffairTarget";
 }
 }