From 5421f9a6e5e2b28cc32aa8aa6dec9becd0c1eb3c Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期三, 04 一月 2023 10:19:57 +0800
Subject: [PATCH] 业务经理意向和合作客户只能1000,90天意向不转合作就制空业务经理,查询没有业务经理的档案客户和合作客户

---
 zhengcaioa/Services/CooperatecustomCustomerService.cs                           |   51 +++++++++++++++-
 zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs                           |   19 ++++++
 zhengcaioa/DTO/IntentionCustomerDTO.cs                                          |    2 
 zhengcaioa/Services/IntentionCustomerService.cs                                 |   49 +++++++++++++++
 zhengcaioa/DTO/CooperatecustomCustomerDTO.cs                                    |    2 
 zhengcaioa/zhengcaioa/Controllers/Customer/CooperatecustomCustomerController.cs |    5 +
 zhengcaioa/Model/IntentionCustomer.cs                                           |    2 
 zhengcaioa/zhengcaioa/Controllers/Customer/IntentionCustomerController.cs       |    5 +
 zhengcaioa/Model/CooperatecustomCustomer.cs                                     |    3 
 zhengcaioa/Model/zhengcaioaContext.cs                                           |    8 ++
 10 files changed, 137 insertions(+), 9 deletions(-)

diff --git a/zhengcaioa/DTO/CooperatecustomCustomerDTO.cs b/zhengcaioa/DTO/CooperatecustomCustomerDTO.cs
index 8452147..3fcd11f 100644
--- a/zhengcaioa/DTO/CooperatecustomCustomerDTO.cs
+++ b/zhengcaioa/DTO/CooperatecustomCustomerDTO.cs
@@ -82,6 +82,8 @@
         public string Customertype { get; set; }
         public string Hezuoyewu { get; set; }
 
+        public DateTime? Ywjltime { get; set; }
+
     }
 
     public class CooperatecustomCustomerDTOSearch : SearchEntity
diff --git a/zhengcaioa/DTO/IntentionCustomerDTO.cs b/zhengcaioa/DTO/IntentionCustomerDTO.cs
index 6827f02..62d9225 100644
--- a/zhengcaioa/DTO/IntentionCustomerDTO.cs
+++ b/zhengcaioa/DTO/IntentionCustomerDTO.cs
@@ -67,6 +67,8 @@
 
         public int? Visittimes { get; set; }
         public string Viscustomer { get; set; }
+
+        public DateTime? Ywjltime { get; set; }
     }
 
     public class IntentionCustomerDTOSearch : SearchEntity
diff --git a/zhengcaioa/Model/CooperatecustomCustomer.cs b/zhengcaioa/Model/CooperatecustomCustomer.cs
index 3f69236..14d5ec5 100644
--- a/zhengcaioa/Model/CooperatecustomCustomer.cs
+++ b/zhengcaioa/Model/CooperatecustomCustomer.cs
@@ -50,6 +50,7 @@
         public decimal? Shouxinedu { get; set; }
         public decimal? Shenyushouxin { get; set; }
         public int? Taocanjianshu { get; set; }
-        
+
+        public DateTime? Ywjltime { get; set; }
     }
 }
diff --git a/zhengcaioa/Model/IntentionCustomer.cs b/zhengcaioa/Model/IntentionCustomer.cs
index 9b1825f..370bb5c 100644
--- a/zhengcaioa/Model/IntentionCustomer.cs
+++ b/zhengcaioa/Model/IntentionCustomer.cs
@@ -50,5 +50,7 @@
         public string Weixiner { get; set; }
         public DateTime? Weixintime { get; set; }
         public string HuiyuanId { get; set; }
+
+        public DateTime? Ywjltime { get; set; }
     }
 }
diff --git a/zhengcaioa/Model/zhengcaioaContext.cs b/zhengcaioa/Model/zhengcaioaContext.cs
index 2fa3a83..cde8ff5 100644
--- a/zhengcaioa/Model/zhengcaioaContext.cs
+++ b/zhengcaioa/Model/zhengcaioaContext.cs
@@ -2720,6 +2720,10 @@
                     .HasColumnType("datetime")
                     .HasColumnName("weixintime");
 
+                entity.Property(e => e.Ywjltime)
+                    .HasColumnType("datetime")
+                    .HasColumnName("ywjltime");
+
                 entity.Property(e => e.YwName)
                     .HasMaxLength(500)
                     .HasColumnName("yw_name")
@@ -4192,6 +4196,10 @@
                     .HasColumnType("datetime")
                     .HasColumnName("weixintime");
 
+                entity.Property(e => e.Ywjltime)
+                  .HasColumnType("datetime")
+                  .HasColumnName("ywjltime");
+
                 entity.Property(e => e.Yixiang).HasMaxLength(50);
 
                 entity.Property(e => e.Yixiangtime).HasColumnType("datetime");
diff --git a/zhengcaioa/Services/CooperatecustomCustomerService.cs b/zhengcaioa/Services/CooperatecustomCustomerService.cs
index 2a60265..36b9928 100644
--- a/zhengcaioa/Services/CooperatecustomCustomerService.cs
+++ b/zhengcaioa/Services/CooperatecustomCustomerService.cs
@@ -55,12 +55,43 @@
 
                 if (String.IsNullOrEmpty(cooperatecustomCustomer.Id))
                 {
+                    if (!string.IsNullOrEmpty(cooperatecustomCustomer.Ywjl))
+                    {
+                        cooperatecustomCustomer.Ywjltime = DateTime.Now;
+                        var Cooper = _context.CooperatecustomCustomers.Count(x => x.RecStatus == "A" && x.Ywjl == cooperatecustomCustomer.Ywjl);
+                        var Inten = _context.IntentionCustomers.Count(x => x.RecStatus == "A" && x.Ywjl == cooperatecustomCustomer.Ywjl);
+                        if (Cooper + Inten >= 1000)
+                        {
+                            resultEntity.Result = false;
+                            resultEntity.Message = "璇ヤ笟鍔$粡鐞嗭紝瀹㈡埛鍗曚綅鍜屽悎浣滃鎴峰悎璁¤秴杩�1000锛�";
+                            return resultEntity;
+                        }
+                    }
+
                     cooperatecustomCustomer.Id = Guid.NewGuid().ToString();
                     _context.CooperatecustomCustomers.Add(cooperatecustomCustomer);
                 }
                 else
                 {
                     var updateproject = _context.CooperatecustomCustomers.Find(cooperatecustomCustomer.Id);
+
+                    if (!string.IsNullOrEmpty(cooperatecustomCustomer.Ywjl) && (string.IsNullOrEmpty(updateproject.Ywjl) || !string.IsNullOrEmpty(updateproject.Ywjl) && cooperatecustomCustomer.Ywjl != updateproject.Ywjl))
+                    {
+                        updateproject.Ywjltime = DateTime.Now;
+                        var Cooper = _context.CooperatecustomCustomers.Count(x => x.RecStatus == "A" && x.Ywjl == cooperatecustomCustomer.Ywjl);
+                        var Inten = _context.IntentionCustomers.Count(x => x.RecStatus == "A" && x.Ywjl == cooperatecustomCustomer.Ywjl);
+                        if (Cooper + Inten >= 1000)
+                        {
+                            resultEntity.Result = false;
+                            resultEntity.Message = "璇ヤ笟鍔$粡鐞嗭紝瀹㈡埛鍗曚綅鍜屽悎浣滃鎴峰悎璁¤秴杩�1000锛�";
+                            return resultEntity;
+                        }
+                    }
+                    if (string.IsNullOrEmpty(cooperatecustomCustomer.Ywjl))
+                    {
+                        updateproject.Ywjltime = DateTime.Now;
+                    }
+
 
                     updateproject.Sheng = cooperatecustomCustomer.Sheng;
                     updateproject.City = cooperatecustomCustomer.City;
@@ -272,7 +303,7 @@
                           && (string.IsNullOrWhiteSpace(searchEntity.Khly) || a.Khly == searchEntity.Khly.Trim())
                            && (string.IsNullOrWhiteSpace(searchEntity.Hyfl) || a.Hyfl == searchEntity.Hyfl.Trim())
                             && (string.IsNullOrWhiteSpace(searchEntity.Khlx) || a.Khlx == searchEntity.Khlx.Trim())
-                             && (string.IsNullOrWhiteSpace(searchEntity.Ywjl) || a.Ywjl == searchEntity.Ywjl.Trim())
+                             //&& (string.IsNullOrWhiteSpace(searchEntity.Ywjl) || a.Ywjl == searchEntity.Ywjl.Trim())
                               && (string.IsNullOrWhiteSpace(searchEntity.Sheng) || a.Sheng == searchEntity.Sheng.Trim())
                                && (string.IsNullOrWhiteSpace(searchEntity.City) || a.City == searchEntity.City.Trim())
                                 && (string.IsNullOrWhiteSpace(searchEntity.AreaId) || a.AreaId == searchEntity.AreaId.Trim())
@@ -340,17 +371,29 @@
                              Taocanjianshu = a.Taocanjianshu ?? 0,
                              Customertype = "鍚堜綔瀹㈡埛",
                          }
-                        ).OrderByDescending(x => x.Modifytime).ToList();
+                        );
+
+            if (!string.IsNullOrWhiteSpace(searchEntity.Ywjl))
+            {
+                if (searchEntity.Ywjl != "11111")
+                {
+                    query = query.Where(a => a.Ywjl == searchEntity.Ywjl.Trim());
+                }
+                else
+                {
+                    query = query.Where(a => a.Ywjl == null);
+                }
 
 
+            }
 
             //if (searchEntity.totalrows == 0)
-                searchEntity.totalrows = query.Count();
+            searchEntity.totalrows = query.Count();
             data.Heji1 = Math.Round(query.Sum(x => x.Yufukuan) ?? 0, 2);
             data.Heji2 = Math.Round(query.Sum(x => x.Shouxinedu) ?? 0, 2);
             data.Heji3 = Math.Round(query.Sum(x => x.Shenyushouxin) ?? 0, 2);
             data.Heji4 = Math.Round(query.Sum(x => x.Moneycountde) ?? 0, 2);
-            var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
+            var lianlist = query.OrderByDescending(x => x.Modifytime).Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
             data.DangyeHeji1 = Math.Round(lianlist.Sum(x => x.Yufukuan) ?? 0, 2);
             data.DangyeHeji2 = Math.Round(lianlist.Sum(x => x.Shouxinedu) ?? 0, 2);
             data.DangyeHeji3 = Math.Round(lianlist.Sum(x => x.Shenyushouxin) ?? 0, 2);
diff --git a/zhengcaioa/Services/IntentionCustomerService.cs b/zhengcaioa/Services/IntentionCustomerService.cs
index 8a8d309..8371d13 100644
--- a/zhengcaioa/Services/IntentionCustomerService.cs
+++ b/zhengcaioa/Services/IntentionCustomerService.cs
@@ -49,12 +49,43 @@
 
             if (String.IsNullOrEmpty(intentionCustomer.Id))
             {
+                    if (!string.IsNullOrEmpty(intentionCustomer.Ywjl))
+                    {
+                        intentionCustomer.Ywjltime = DateTime.Now;
+                        var Cooper = _context.CooperatecustomCustomers.Count(x => x.RecStatus == "A" && x.Ywjl == intentionCustomer.Ywjl);
+                        var Inten = _context.IntentionCustomers.Count(x => x.RecStatus == "A" && x.Ywjl == intentionCustomer.Ywjl);
+                        if(Cooper+ Inten >= 1000)
+                        {
+                            resultEntity.Result = false;
+                            resultEntity.Message = "璇ヤ笟鍔$粡鐞嗭紝瀹㈡埛鍗曚綅鍜屽悎浣滃鎴峰悎璁¤秴杩�1000锛�";
+                            return resultEntity;
+                        }
+                    }
+
                     intentionCustomer.Id = Guid.NewGuid().ToString();
                 _context.IntentionCustomers.Add(intentionCustomer);
             }
             else
             {
-                var updateproject = _context.IntentionCustomers.Find(intentionCustomer.Id);
+                    var updateproject = _context.IntentionCustomers.Find(intentionCustomer.Id);
+                    if (!string.IsNullOrEmpty(intentionCustomer.Ywjl) && (string.IsNullOrEmpty(updateproject.Ywjl) || !string.IsNullOrEmpty(updateproject.Ywjl) && intentionCustomer.Ywjl!= updateproject.Ywjl ))
+                    {
+                        updateproject.Ywjltime = DateTime.Now;
+                        var Cooper = _context.CooperatecustomCustomers.Count(x => x.RecStatus == "A" && x.Ywjl == intentionCustomer.Ywjl);
+                        var Inten = _context.IntentionCustomers.Count(x => x.RecStatus == "A" && x.Ywjl == intentionCustomer.Ywjl);
+                        if (Cooper + Inten >= 1000)
+                        {
+                            resultEntity.Result = false;
+                            resultEntity.Message = "璇ヤ笟鍔$粡鐞嗭紝瀹㈡埛鍗曚綅鍜屽悎浣滃鎴峰悎璁¤秴杩�1000锛�";
+                            return resultEntity;
+                        }
+                    }
+
+                    if (string.IsNullOrEmpty(intentionCustomer.Ywjl)){
+                        updateproject.Ywjltime = null;
+                    }
+
+
 
                 updateproject.Sheng = intentionCustomer.Sheng;
                 updateproject.City = intentionCustomer.City;
@@ -250,7 +281,7 @@
                       && (string.IsNullOrWhiteSpace(searchEntity.Khly) || a.Khly == searchEntity.Khly.Trim())
                        && (string.IsNullOrWhiteSpace(searchEntity.Hyfl) || a.Hyfl == searchEntity.Hyfl.Trim())
                         && (string.IsNullOrWhiteSpace(searchEntity.Khlx) || a.Khlx == searchEntity.Khlx.Trim())
-                         && (string.IsNullOrWhiteSpace(searchEntity.Ywjl) || a.Ywjl == searchEntity.Ywjl.Trim())
+                         //&& (string.IsNullOrWhiteSpace(searchEntity.Ywjl) || a.Ywjl == searchEntity.Ywjl.Trim())
                           && (string.IsNullOrWhiteSpace(searchEntity.Sheng) || a.Sheng == searchEntity.Sheng.Trim())
                            && (string.IsNullOrWhiteSpace(searchEntity.City) || a.City == searchEntity.City.Trim())
                             && (string.IsNullOrWhiteSpace(searchEntity.AreaId) || a.AreaId == searchEntity.AreaId.Trim())
@@ -328,6 +359,20 @@
             {
                 query = query.Where( a=>a.Shifoutianjiaweixin == searchEntity.Shifouweixin.Trim());
             }
+
+            if (!string.IsNullOrWhiteSpace(searchEntity.Ywjl))
+            {
+                if(searchEntity.Ywjl != "11111")
+                {
+                    query = query.Where(a => a.Ywjl == searchEntity.Ywjl.Trim());
+                }else
+                {
+                    query = query.Where(a => a.Ywjl == null   );
+                }
+
+              
+            }
+
             if (!string.IsNullOrWhiteSpace(searchEntity.ShifouDianhua))
             {
                 if (searchEntity.ShifouDianhua != "A")
diff --git a/zhengcaioa/zhengcaioa/Controllers/Customer/CooperatecustomCustomerController.cs b/zhengcaioa/zhengcaioa/Controllers/Customer/CooperatecustomCustomerController.cs
index abc77a8..9fea049 100644
--- a/zhengcaioa/zhengcaioa/Controllers/Customer/CooperatecustomCustomerController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/Customer/CooperatecustomCustomerController.cs
@@ -137,9 +137,12 @@
             ViewBag.khly = _liaotianService.GetSYScode("CooperatecustomCustomer", "khly").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
             ViewBag.hyfl = _liaotianService.GetSYScode("CooperatecustomCustomer", "hyfl").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
             ViewBag.shifou = _liaotianService.GetSYScode("system", "shifou").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
-            ViewBag.users = _userService.GetList().Where(x => x.IsYwjl == "A").Select(x => new { code = x.Id, label = x.UserName }).ToList();
 
 
+            var users = _userService.GetList().Where(x => x.IsYwjl == "A").Select(x => new { code = x.Id, label = x.UserName }).ToList();
+            users.Insert(0, new { code = "11111", label = "鏃犱笟鍔$粡鐞�" });
+
+            ViewBag.users = users;
 
 
             var areaDTOs = _projectService.Getsheng().ToList();
diff --git a/zhengcaioa/zhengcaioa/Controllers/Customer/IntentionCustomerController.cs b/zhengcaioa/zhengcaioa/Controllers/Customer/IntentionCustomerController.cs
index 70ebb6f..886a536 100644
--- a/zhengcaioa/zhengcaioa/Controllers/Customer/IntentionCustomerController.cs
+++ b/zhengcaioa/zhengcaioa/Controllers/Customer/IntentionCustomerController.cs
@@ -162,7 +162,10 @@
             ViewBag.khly = _liaotianService.GetSYScode("IntentionCustomer", "khly").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
             ViewBag.hyfl = _liaotianService.GetSYScode("CooperatecustomCustomer", "hyfl").Select(x => new { code = x.CodeSn, label = x.Comments }).ToList();
 
-            ViewBag.users = _userService.GetList().Where(x => x.IsYwjl == "A").Select(x => new { code = x.Id, label = x.UserName }).ToList();
+            var users = _userService.GetList().Where(x => x.IsYwjl == "A").Select(x => new { code = x.Id, label = x.UserName }).ToList();
+            users.Insert(0, new { code = "11111", label = "鏃犱笟鍔$粡鐞�" });
+
+            ViewBag.users = users;
 
             ViewBag.Creater = _userService.GetList().Select(x => new { code = x.Id, label = x.UserName }).ToList();
 
diff --git a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs
index 0c1b434..7430db2 100644
--- a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs
+++ b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs
@@ -104,6 +104,11 @@
 
                     try
                     {
+                        _logger.LogInformation("鎶婅秴杩�90澶╄繕娌℃湁杞寲鐨勬。妗堝鎴风殑涓氬姟缁忕悊褰掍负鏃�");
+                        this.ywjlguiling();
+
+                        _logger.LogInformation("鎶婅秴杩�90澶╄繕娌℃湁杞寲鐨勬。妗堝鎴风殑涓氬姟缁忕悊褰掍负鏃犳墽琛岀粨鏉�");
+
                         _logger.LogInformation("鍒ゆ柇鏄惁鏄浜斾釜宸ヤ綔鏃ョ粨鏉�");
                         DateTime diwutian = this.diwugongzuori();
                         //绗簲涓伐浣滄棩缁撴潫鍚庡紑濮嬭绠�
@@ -207,6 +212,20 @@
             return diwutian;
         }
 
+
+        //鎶婅秴杩�90澶╄繕娌℃湁杞寲鐨勬。妗堝鎴风殑涓氬姟缁忕悊褰掍负鏃�
+        public void ywjlguiling()
+        {
+          var intentionCustomerDTOs  =  _intentionCustomerService.GetList().Where(x=>x.Ywjltime < DateTime.Now.AddDays(-90)).ToList();
+
+            foreach(var intentionCustomerDTO in intentionCustomerDTOs)
+            {
+                intentionCustomerDTO.Ywjl = null;
+                intentionCustomerDTO.Ywjltime = null;
+                _intentionCustomerService.save(intentionCustomerDTO);
+            }
+        }
+
         //璁$畻鑰冨嫟
         public void jisuankaoqin()
         {

--
Gitblit v1.9.1