浏览代码

Merge branch 'dev' of http://123.60.180.165:4647/ZZYDOP/DOPCore into dev

tangdi 3 年之前
父节点
当前提交
70bb652eb1

+ 39 - 0
.gitignore

@@ -892,3 +892,42 @@ MicroServices/Business/Bussiness.MongoModel/obj/Debug/net6.0/Bussiness.MongoMode
 /MicroServices/Business/Buissness.UnitTest/obj
 /MicroServices/Business/Business.Test/bin/Debug/net6.0
 /MicroServices/Business/Business.Test/obj/Debug/net6.0
+MicroServices/Business/Bussiness.ApplicationTest/bin/Debug/net6.0/CoverletSourceRootsMapping
+MicroServices/Business/Bussiness.ApplicationTest/obj/Bussiness.ApplicationTest.csproj.nuget.dgspec.json
+MicroServices/Business/Bussiness.ApplicationTest/obj/Bussiness.ApplicationTest.csproj.nuget.g.props
+MicroServices/Business/Bussiness.ApplicationTest/obj/Bussiness.ApplicationTest.csproj.nuget.g.targets
+MicroServices/Business/Bussiness.ApplicationTest/obj/project.assets.json
+MicroServices/Business/Bussiness.ApplicationTest/obj/project.nuget.cache
+MicroServices/Business/Bussiness.ApplicationTest/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs
+MicroServices/Business/Bussiness.ApplicationTest/obj/Debug/net6.0/Bussiness.ApplicationTest.AssemblyInfo.cs
+MicroServices/Business/Bussiness.ApplicationTest/obj/Debug/net6.0/Bussiness.ApplicationTest.AssemblyInfoInputs.cache
+MicroServices/Business/Bussiness.ApplicationTest/obj/Debug/net6.0/Bussiness.ApplicationTest.assets.cache
+MicroServices/Business/Bussiness.ApplicationTest/obj/Debug/net6.0/Bussiness.ApplicationTest.csproj.AssemblyReference.cache
+MicroServices/Business/Bussiness.ApplicationTest/obj/Debug/net6.0/Bussiness.ApplicationTest.GeneratedMSBuildEditorConfig.editorconfig
+MicroServices/Business/Bussiness.ApplicationTest/obj/Debug/net6.0/Bussiness.ApplicationTest.GlobalUsings.g.cs
+MicroServices/Business/Bussiness.Domain.Test/bin/Debug/net6.0/CoverletSourceRootsMapping
+MicroServices/Business/Bussiness.Domain.Test/obj/Bussiness.Domain.Test.csproj.nuget.dgspec.json
+MicroServices/Business/Bussiness.Domain.Test/obj/Bussiness.Domain.Test.csproj.nuget.g.props
+MicroServices/Business/Bussiness.Domain.Test/obj/Bussiness.Domain.Test.csproj.nuget.g.targets
+MicroServices/Business/Bussiness.Domain.Test/obj/project.assets.json
+MicroServices/Business/Bussiness.Domain.Test/obj/project.nuget.cache
+MicroServices/Business/Bussiness.Domain.Test/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs
+MicroServices/Business/Bussiness.Domain.Test/obj/Debug/net6.0/Bussiness.Domain.Test.AssemblyInfo.cs
+MicroServices/Business/Bussiness.Domain.Test/obj/Debug/net6.0/Bussiness.Domain.Test.AssemblyInfoInputs.cache
+MicroServices/Business/Bussiness.Domain.Test/obj/Debug/net6.0/Bussiness.Domain.Test.assets.cache
+MicroServices/Business/Bussiness.Domain.Test/obj/Debug/net6.0/Bussiness.Domain.Test.csproj.AssemblyReference.cache
+MicroServices/Business/Bussiness.Domain.Test/obj/Debug/net6.0/Bussiness.Domain.Test.GeneratedMSBuildEditorConfig.editorconfig
+MicroServices/Business/Bussiness.Domain.Test/obj/Debug/net6.0/Bussiness.Domain.Test.GlobalUsings.g.cs
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/bin/Debug/net6.0/CoverletSourceRootsMapping
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Bussiness.EntityFrameworkCore.Test.csproj.nuget.dgspec.json
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Bussiness.EntityFrameworkCore.Test.csproj.nuget.g.props
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Bussiness.EntityFrameworkCore.Test.csproj.nuget.g.targets
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/project.assets.json
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/project.nuget.cache
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Debug/net6.0/Bussiness.EntityFrameworkCore.Test.AssemblyInfo.cs
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Debug/net6.0/Bussiness.EntityFrameworkCore.Test.AssemblyInfoInputs.cache
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Debug/net6.0/Bussiness.EntityFrameworkCore.Test.assets.cache
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Debug/net6.0/Bussiness.EntityFrameworkCore.Test.csproj.AssemblyReference.cache
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Debug/net6.0/Bussiness.EntityFrameworkCore.Test.GeneratedMSBuildEditorConfig.editorconfig
+MicroServices/Business/Bussiness.EntityFrameworkCore.Test/obj/Debug/net6.0/Bussiness.EntityFrameworkCore.Test.GlobalUsings.g.cs

+ 34 - 0
MicroServices/Business/Business.Application.Contracts/ResourceExamineManagement/Dto/PriorityDto.cs

@@ -0,0 +1,34 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Business.ResourceExamineManagement.Dto
+{
+    /// <summary>
+    /// 优先级Dto
+    /// </summary>
+    public class PriorityDto
+    {
+        /// <summary>
+        /// 主键
+        /// </summary>
+        public long id { get; set; }
+
+        /// <summary>
+        /// 加急级别
+        /// </summary>
+        public int urgent { get; set; }
+
+        /// <summary>
+        /// 级别
+        /// </summary>
+        public int level { get; set; }
+
+        /// <summary>
+        /// 交期
+        /// </summary>
+        public DateTime? plan_date { get; set; }
+    }
+}

+ 55 - 0
MicroServices/Business/Business.Application/PriorityManagement/PriorityAppService.cs

@@ -0,0 +1,55 @@
+using Business.ResourceExamineManagement.Dto;
+using Bussiness.Model.MES.IC;
+using Bussiness.Model.Sale;
+using Bussiness.MongoModel.MES.IC;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Services;
+
+namespace Business.PriorityManagement
+{
+    /// <summary>
+    /// 优先级算法
+    /// </summary>
+    public class PriorityAppService : ApplicationService
+    {
+        /// <summary>
+        /// 计算订单优先级
+        /// </summary>
+        /// <param name="seorders">订单数据</param>
+        /// <param name="sentrys">订单行数据</param>
+        /// <returns></returns>
+        public List<PriorityDto> CalcOrderPriority(List<crm_seorder> seorders, List<crm_seorderentry> sentrys)
+        {
+            //数据处理:取主表数据
+            var rtn = seorders.Select(p=>new PriorityDto { 
+                id = p.Id,
+                urgent = p.urgent.GetValueOrDefault(),
+                level = p.custom_level.GetValueOrDefault()
+            }).AsQueryable<PriorityDto>().ToList(); ;
+            
+            //子表数据处理:根据订单id分组取出客户要求交期交期最大的数据
+            var entrys = from t in sentrys
+                         group t by t.seorder_id into temp
+                         select new
+                         {
+                             id = temp.Key,
+                             plan_date = temp.Max(x => x.plan_date.GetValueOrDefault())
+                         };
+            foreach (var item in rtn)
+            {
+                var entry = entrys.FirstOrDefault(p => p.id == item.id);
+                if (entry != null)
+                {
+                    item.plan_date = entry.plan_date;
+                }
+            }
+            //根据紧急级别倒序,客户级别升序,交期升序排序
+            rtn = rtn.OrderByDescending(p => p.urgent).ThenBy(m => m.level).ThenBy(n => n.plan_date).ToList();
+            return rtn;
+        }
+    }
+}

+ 1 - 1
MicroServices/Business/Bussiness.Model/Sale/crm_seorder.cs

@@ -79,7 +79,7 @@ namespace Bussiness.Model.Sale
         /// </summary>
         [StringLength(80)]
         [Comment("客户级别")]
-        public string? custom_level { get; set; }
+        public int? custom_level { get; set; }
 
         /// <summary>
         /// 签订日期

+ 1 - 1
MicroServices/Business/Bussiness.Model/SystemData/crm_customer.cs

@@ -39,7 +39,7 @@ namespace Bussiness.Model.SystemData
         /// </summary>
         [StringLength(255)]
         [Comment("客户级别")]
-        public string? customer_level { get; set; }
+        public int? customer_level { get; set; }
 
         /// <summary>
         /// 手机号码