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/zhengcaioa/Timer/TimedBackgroundService.cs |   96 ++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 88 insertions(+), 8 deletions(-)

diff --git a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs
index 83a593d..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()
         {
@@ -238,14 +257,20 @@
 
             ResultEntity resultEntity = new ResultEntity();
             resultEntity.Result = false;
-
+            var Month = DateTime.Now.Month - 1;
+            var Year = DateTime.Now.Year;
+            if (Month == 0)
+            {
+                Month = 12;
+                Year = Year - 1;
+            }
             //鏌ヨ鎵�鏈夌殑鏈夋晥浜哄憳
-            List<PltUserDTO> userList = _userService.GetListjisuankaoqin(new DateTime(DateTime.Now.Year, DateTime.Now.Month - 1, 1), new DateTime(DateTime.Now.Year, DateTime.Now.Month - 1, 1).AddMonths(1));//.Where(x => x.UserSn == "yang").ToList();
+            List<PltUserDTO> userList = _userService.GetListjisuankaoqin(new DateTime(Year, Month, 1), new DateTime(Year, Month, 1).AddMonths(1));//.Where(x => x.UserSn == "yang").ToList();
             for (int a = 0; a < userList.Count; a++)
             {
                 _logger.LogInformation("寮�濮嬭绠�" + userList[a].UserName + "鑰冨嫟");
                 //寮�濮嬭绠楄�冨嫟
-                DateTime dateminkaoqin = new DateTime(DateTime.Now.Year, DateTime.Now.Month - 1, 1);
+                DateTime dateminkaoqin = new DateTime(Year, Month, 1);
                 DateTime datemaxkaoqin = dateminkaoqin.AddMonths(1);
                 List<AdmAskLeaveDTO> admAskLeaveDTOs = _signinService.GetAskLeaveByUserId(userList[a].Id);
                 List<AdmAskLeaveOffDTO> admAskLeaveOffDTOs = _signinService.GetAskLeaveOffByUserId(userList[a].Id);
@@ -341,7 +366,7 @@
                         admSignInDTO = new AdmSignInDTO();
                     }
                     //鏌ヨ璇峰亣   璇峰亣鏃堕棿涓嶈兘閲嶅彔
-                    List<AdmAskLeaveDTO> admAskLeaveDTOMin = admAskLeaveDTOs.Where(x =>x.Lavetype != "2" &&  x.StratTime < dateminkaoqin.AddDays(1) && x.EndTime > dateminkaoqin).OrderByDescending(x=>x.Createtime).ToList();
+                    List<AdmAskLeaveDTO> admAskLeaveDTOMin = admAskLeaveDTOs.Where(x =>/*x.Lavetype != "2" &&*/  x.StratTime < dateminkaoqin.AddDays(1) && x.EndTime > dateminkaoqin).OrderByDescending(x=>x.Createtime).ToList();
                     //鏌ヨ閿�鍋�   閿�鍋囨椂闂翠笉鑳介噸鍙�
                     List<AdmAskLeaveOffDTO> admAskLeaveOffDTOMin = admAskLeaveOffDTOs.Where(x => x.StratTime < dateminkaoqin.AddDays(1) && x.EndTime > dateminkaoqin).OrderByDescending(x => x.Createtime).ToList();
                    
@@ -629,7 +654,7 @@
                         //璁$畻褰撳ぉ璇峰亣
                         List<DateBiJiaoDTO> qingjias = new List<DateBiJiaoDTO>();
 
-                        var feichuqinjia = admAskLeaveDTOMin.Where(x => x.Lavetype != "4" && x.Lavetype != "7" && x.Lavetype != "3").ToList();
+                        var feichuqinjia = admAskLeaveDTOMin.Where(x => x.Lavetype != "4" && x.Lavetype != "7" && x.Lavetype != "3" && x.Lavetype != "9").ToList();
                         foreach (var admAskLeave in feichuqinjia)
                         {
                             
@@ -1022,7 +1047,7 @@
                             //璁$畻褰撳ぉ璇峰亣
                             List<DateBiJiaoDTO> qingjias = new List<DateBiJiaoDTO>();
 
-                            var feichuqinjia = admAskLeaveDTOMin.Where(x => x.Lavetype != "4" && x.Lavetype != "7" && x.Lavetype != "3").ToList();
+                            var feichuqinjia = admAskLeaveDTOMin.Where(x => x.Lavetype != "4" && x.Lavetype != "7" && x.Lavetype != "3" && x.Lavetype != "9").ToList();
                             foreach (var admAskLeave in feichuqinjia)
                             {
 
@@ -1298,8 +1323,15 @@
         //璁$畻宸ヨ祫
         public async Task jisuangongziAsync()
         {
+            var Month = DateTime.Now.Month - 1;
+            var Year = DateTime.Now.Year;
+            if (Month == 0)
+            {
+                Month = 12;
+                Year = Year - 1;
+            }
             //鏌ヨ鎵�鏈夌殑鏈夋晥浜哄憳
-            DateTime dateminkaoqin = new DateTime(DateTime.Now.Year, DateTime.Now.Month - 1, 1);
+            DateTime dateminkaoqin = new DateTime(Year, Month, 1);
             DateTime datemaxkaoqin = dateminkaoqin.AddMonths(1);
             List<PltUserDTO> userList = _userService.GetListjisuankaoqin(dateminkaoqin, datemaxkaoqin);//.Where(x => x.UserSn == "yang").ToList();
             List<HrJibengongziDTO> hrJibengongziDTOs = _JibengongziService.GetList().Where(x=>  x.Effecttime < datemaxkaoqin).ToList();
@@ -1827,6 +1859,50 @@
                     //var feijijiandengji = fiPiecerateDTOs.Where(x => x.Standard == "A");
                     //var  jijiandengji =    fiPiecerateDTOs.Where(x => x.Standard == "A");
 
+                    #region 閲囪喘鍏憡褰曞叆
+
+                    var caigougonggaoDTOsyue = _projectService.GetcaigougonggaoListsalary(userList[i].Id, dateminkaoqin, datemaxkaoqin);
+                    if (caigougonggaoDTOsyue != null && caigougonggaoDTOsyue.Count > 0)
+                    {
+                        var jijianidddd = fiPiecerateDTOs.Where(x => x.Project == "閲囪喘鍏憡褰曞叆").FirstOrDefault();
+                        if (jijianidddd != null)
+                        {
+                            var jixiaotichengfangan = hrJixiaotichengThis.Where(x => x.PiecerateId == jijianidddd.Id).OrderByDescending(x => x.Effecttime).FirstOrDefault();
+                            if (jixiaotichengfangan != null && jixiaotichengfangan.Ticheng.HasValue && jixiaotichengfangan.Renwu.HasValue)
+                            {
+                                if (jixiaotichengfangan.Renwustandard == "01")
+                                {
+                                    decimal renwujishu = admAttendanceDTO.Yingchuqin * jixiaotichengfangan.Renwu.Value;
+                                    if (jixiaotichengfangan.Tichengstandard == "01")
+                                    {
+                                        decimal youxiaojijian = caigougonggaoDTOsyue.Count - renwujishu;
+                                        if (youxiaojijian > 0)
+                                        {
+                                            hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2);
+                                        }
+
+                                    }
+
+                                }
+                                else if (jixiaotichengfangan.Renwustandard == "02")
+                                {
+                                    decimal renwujishu = jixiaotichengfangan.Renwu.Value;
+                                    if (jixiaotichengfangan.Tichengstandard == "01")
+                                    {
+                                        decimal youxiaojijian = caigougonggaoDTOsyue.Count - renwujishu;
+                                        if (youxiaojijian > 0)
+                                        {
+                                            hrSalaryDTO.Jixiaoticheng += Math.Round(jixiaotichengfangan.Ticheng.Value * youxiaojijian, 2);
+                                        }
+
+                                    }
+                                }
+                            }
+
+                        }
+                    }
+                    #endregion
+
                     #region 閲囪喘椤圭洰褰曞叆
 
                     var projectDTOsyue = _projectService.GetListsalary(userList[i].Id, dateminkaoqin, datemaxkaoqin);
@@ -1871,8 +1947,12 @@
                     }
                     #endregion
 
+
+
+                 
+
                     #region 瀹㈡埛璧勬枡褰曞叆
-                    
+
                     var _intentionCustomerDTOs = _intentionCustomerService.GetListsalary(userList[i].Id, dateminkaoqin, datemaxkaoqin);
                     if (_intentionCustomerDTOs!=null && _intentionCustomerDTOs.Count > 0)
                     {

--
Gitblit v1.9.1