From 56fde6ea4d065e0a3688e89576e4099cedcefab3 Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期四, 12 九月 2024 16:03:02 +0800
Subject: [PATCH] 新增一些带有判断的接口

---
 Yw.Service.Repair.Core/04-dal/03-sqlite/01-request/RepairRequestForm.cs |  112 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 111 insertions(+), 1 deletions(-)

diff --git a/Yw.Service.Repair.Core/04-dal/03-sqlite/01-request/RepairRequestForm.cs b/Yw.Service.Repair.Core/04-dal/03-sqlite/01-request/RepairRequestForm.cs
index 400a7da..30365e5 100644
--- a/Yw.Service.Repair.Core/04-dal/03-sqlite/01-request/RepairRequestForm.cs
+++ b/Yw.Service.Repair.Core/04-dal/03-sqlite/01-request/RepairRequestForm.cs
@@ -456,9 +456,13 @@
             )
         {
             if (PageIndex < 1)
+            {
                 PageIndex = 1;
+            }
             if (PageSize < 1)
+            {
                 PageSize = 1;
+            }
             var exp = Expressionable.Create<Entity.RepairRequestForm>();
             exp.And(x => x.CreateUserID == CreateUserID);
             exp.AndIF(FormStatus.HasValue, x => x.FormStatus == FormStatus.Value);
@@ -493,9 +497,13 @@
             )
         {
             if (PageIndex < 1)
+            {
                 PageIndex = 1;
+            }
             if (PageSize < 1)
+            {
                 PageSize = 1;
+            }
             var exp = Expressionable.Create<Entity.RepairRequestForm>();
             exp.AndIF(EquipmentIds != null && EquipmentIds.Count > 0, x => EquipmentIds.Contains(x.EquipmentID));
             exp.AndIF(CreateUserID.HasValue, x => x.CreateUserID == CreateUserID);
@@ -515,9 +523,57 @@
         }
 
         /// <summary>
+        /// 鑾峰彇璁惧妯$硦鍒嗛〉鍒楄〃
+        /// </summary>
+        public List<Entity.RepairRequestForm> GetFluzzyPageListOfEquipmentIds
+          (
+                 List<long> EquipmentIds,
+                 long? CreateUserID,
+                 int? FormStatus,
+                 int? Urgency,
+                 string FormNo,
+                 DateTime? StartTime,
+                 DateTime? EndTime,
+                 int PageIndex,
+                 int PageSize,
+                 ref int Total
+            )
+        {
+            if (EquipmentIds == null || EquipmentIds.Count < 1)
+            {
+                return default;
+            }
+            if (PageIndex < 1)
+            {
+                PageIndex = 1;
+            }
+            if (PageSize < 1)
+            {
+                PageSize = 1;
+            }
+
+            var exp = Expressionable.Create<Entity.RepairRequestForm>();
+            exp.And(x => EquipmentIds.Contains(x.EquipmentID));
+            exp.AndIF(CreateUserID.HasValue, x => x.CreateUserID == CreateUserID);
+            exp.AndIF(FormStatus.HasValue, x => x.FormStatus == FormStatus.Value);
+            exp.AndIF(Urgency.HasValue, x => x.Urgency == Urgency.Value);
+            exp.AndIF(!string.IsNullOrEmpty(FormNo), x => x.FormNo.Contains(FormNo));
+            exp.AndIF(StartTime.HasValue, x => x.CreateTime >= StartTime.Value);
+            exp.AndIF(EndTime.HasValue, x => x.CreateTime <= EndTime.Value);
+
+            using (var db = new SqlSugarClient(ConnectionConfig))
+            {
+                return db.Queryable<Entity.RepairRequestForm>()
+                    .Where(exp.ToExpression())
+                    .OrderBy(x => x.CreateTime, OrderByType.Desc)
+                    .ToPageList(PageIndex, PageSize, ref Total); ;
+            }
+        }
+
+        /// <summary>
         /// 鑾峰彇寰呮淳鍗曞垎椤靛垪琛�
         /// </summary>
-        public List<Tuple<Entity.RepairRequestForm, Entity.RepairTaskForm>> GetJustAccepedPageList
+        public List<Tuple<Entity.RepairRequestForm, Entity.RepairTaskForm>> GetJustAcceptedPageList
           (
                  List<long> EquipmentIds,
                  long? CreateUserID,
@@ -531,9 +587,13 @@
             )
         {
             if (PageIndex < 1)
+            {
                 PageIndex = 1;
+            }
             if (PageSize < 1)
+            {
                 PageSize = 1;
+            }
             var exp = Expressionable.Create<Entity.RepairRequestForm, Entity.RepairTaskForm>();
             exp.AndIF(EquipmentIds != null && EquipmentIds.Count > 0, (x, y) => EquipmentIds.Contains(x.EquipmentID));
             exp.AndIF(CreateUserID.HasValue, (x, y) => x.CreateUserID == CreateUserID);
@@ -557,6 +617,56 @@
             }
         }
 
+        /// <summary>
+        /// 鑾峰彇璁惧寰呮淳鍗曞垎椤靛垪琛�
+        /// </summary>
+        public List<Tuple<Entity.RepairRequestForm, Entity.RepairTaskForm>> GetJustAcceptedPageListOfEquipmentIds
+          (
+                 List<long> EquipmentIds,
+                 long? CreateUserID,
+                 int? Urgency,
+                 string FormNo,
+                 DateTime? StartTime,
+                 DateTime? EndTime,
+                 int PageIndex,
+                 int PageSize,
+                 ref int Total
+            )
+        {
+            if (EquipmentIds == null || EquipmentIds.Count < 1)
+            {
+                return default;
+            }
+            if (PageIndex < 1)
+            {
+                PageIndex = 1;
+            }
+            if (PageSize < 1)
+            {
+                PageSize = 1;
+            }
+            var exp = Expressionable.Create<Entity.RepairRequestForm, Entity.RepairTaskForm>();
+            exp.And((x, y) => EquipmentIds.Contains(x.EquipmentID));
+            exp.AndIF(CreateUserID.HasValue, (x, y) => x.CreateUserID == CreateUserID);
+            exp.And((x, y) => x.FormStatus == (int)eRequestStatus.Accepted);
+            exp.AndIF(Urgency.HasValue, (x, y) => x.Urgency == Urgency.Value);
+            exp.AndIF(!string.IsNullOrEmpty(FormNo), (x, y) => x.FormNo.Contains(FormNo));
+            exp.AndIF(StartTime.HasValue, (x, y) => x.CreateTime >= StartTime.Value);
+            exp.AndIF(EndTime.HasValue, (x, y) => x.CreateTime <= EndTime.Value);
+            exp.And((x, y) => y.FormStatus == (int)eTaskStatus.Accepted);
+
+
+            using (var db = new SqlSugarClient(ConnectionConfig))
+            {
+                var list = db.Queryable<Entity.RepairRequestForm>()
+                            .InnerJoin<Entity.RepairTaskForm>((x, y) => y.RequestID != null && x.ID == y.RequestID.Value)
+                            .Where(exp.ToExpression())
+                            .OrderBy(x => x.CreateTime, OrderByType.Desc)
+                            .Select((x, y) => new { x, y })
+                            .ToPageList(PageIndex, PageSize, ref Total);
+                return list?.Select(x => new Tuple<Entity.RepairRequestForm, Entity.RepairTaskForm>(x.x, x.y)).ToList();
+            }
+        }
 
 
 

--
Gitblit v1.9.3