From 3c86fc3958efa938d619de8b1d8e19ad48e0a1b5 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期三, 16 六月 2021 13:32:44 +0800 Subject: [PATCH] 提交 --- zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs | 46 +++++++++++++++++++++++++++++++++------------- 1 files changed, 33 insertions(+), 13 deletions(-) diff --git a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs index a2b31ad..4924041 100644 --- a/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs +++ b/zhengcaioa/zhengcaioa/Timer/TimedBackgroundService.cs @@ -1341,7 +1341,7 @@ //鏌ヨ鏄惁鏈変笉绉拌亴鐨勫伐浣滆�冭瘎 var admEvaluateDTOs = _admEvaluateService.GetListsalary(userList[i].Id, dateminkaoqin, datemaxkaoqin).Where(x=>x.EvaluateValue == "03").ToList(); //褰撴湀鍑哄嫟鐜� - decimal chuqinlv = Math.Round((admAttendanceDTO.Shijichuqin- admEvaluateDTOs.Count) / admAttendanceDTO.Yingchuqin,4); + decimal chuqinlv = Math.Round(admAttendanceDTO.Shijichuqin / admAttendanceDTO.Yingchuqin,4); //鏌ヨ褰撳墠鍛樺伐鑱屽姟鐨勫熀鏈伐璧勯厤缃� @@ -1364,11 +1364,23 @@ var Shebaogeren = hrJibengongzi.Shebaogeren.HasValue ? hrJibengongzi.Shebaogeren.Value : 0; decimal yingnashuie = 0; hrSalaryDTO.Queqin = 0; + hrSalaryDTO.Fakuan = 0; hrSalaryDTO.Gongzuobutie = 0; hrSalaryDTO.Jiabangongzi = 0; decimal shiyongqichuqintianshu = 0; decimal shiyongqichuqinlv = 0; - + + + + decimal BasicPrice = 0; + if (!decimal.TryParse(userList[i].BasicPrice, out BasicPrice)) + { + _logger.LogInformation(userList[i].UserName + ": 鍛樺伐娌℃湁缁存姢宸ヨ祫"); + continue; + } + + + if (userList[i].ShiyongDate.HasValue && userList[i].ShiyongDateEnd.HasValue && dateminkaoqin>= userList[i].ShiyongDate.Value && dateminkaoqin <= userList[i].ShiyongDateEnd.Value) { if (!userList[i].ShiyongPrice.HasValue) @@ -1376,6 +1388,10 @@ _logger.LogInformation(userList[i].UserName + ": 鍛樺伐澶勪簬璇曠敤鏈燂紝浣嗘槸璇曠敤鏈熷伐璧勪负绌�"); continue; } + //鏌ヨ鏄惁鏈変笉绉拌亴鐨勫伐浣滆�冭瘎 + var admEvaluateDTOsshiyongqi = _admEvaluateService.GetListsalary(userList[i].Id, dateminkaoqin, userList[i].ShiyongDateEnd.Value.AddDays(1)).Where(x => x.EvaluateValue == "03").ToList(); + + //璇曠敤鏈熺殑鍑哄嫟鐜� shiyongqichuqinlv = chuqinlv; if(userList[i].ShiyongDateEnd.Value< datemaxkaoqin.AddDays(-1)) @@ -1397,11 +1413,14 @@ } } - //鏌ヨ鏄惁鏈変笉绉拌亴鐨勫伐浣滆�冭瘎 - var admEvaluateDTOsshiyongqi = _admEvaluateService.GetListsalary(userList[i].Id, dateminkaoqin, userList[i].ShiyongDateEnd.Value.AddDays(1)).Where(x => x.EvaluateValue == "03").ToList(); + - shiyongqichuqinlv = Math.Round((shiyongqichuqintianshu- admEvaluateDTOsshiyongqi.Count) / admAttendanceDTO.Yingchuqin, 4); + shiyongqichuqinlv = Math.Round(shiyongqichuqintianshu / admAttendanceDTO.Yingchuqin, 4); + + //宸ヤ綔璇勪环涓嶅悎鏍肩綒娆� + hrSalaryDTO.Fakuan += Math.Round(userList[i].ShiyongPrice.Value * admEvaluateDTOsshiyongqi.Count / admAttendanceDTO.Yingchuqin + BasicPrice * (admEvaluateDTOs.Count - admEvaluateDTOsshiyongqi.Count) / admAttendanceDTO.Yingchuqin, 2); + } else { @@ -1414,6 +1433,9 @@ } } hrSalaryDTO.Jiabangongzi += Math.Round((admAttendanceDTO.Jiaban / jiabangongzibiaozhun) * userList[i].ShiyongPrice.Value, 2); + + //宸ヤ綔璇勪环涓嶅悎鏍肩綒娆� + hrSalaryDTO.Fakuan += Math.Round(userList[i].ShiyongPrice.Value * admEvaluateDTOs.Count / admAttendanceDTO.Yingchuqin, 2); } @@ -1421,7 +1443,7 @@ hrSalaryDTO.Gongzuobutie += Math.Round( (userList[i].ShiyongPrice.Value - hrJibengongzi.Baomifei.Value- hrJibengongzi.Jibengongzi.Value ) * shiyongqichuqinlv, 2); - + //yingnashuie = userList[i].ShiyongPrice.Value - Shebaogeren - geshuiqizheng; @@ -1429,16 +1451,15 @@ } + else + { + //宸ヤ綔璇勪环缃氭 + hrSalaryDTO.Fakuan += Math.Round(BasicPrice * admEvaluateDTOs.Count/ admAttendanceDTO.Yingchuqin , 2); + } if(true) { - decimal BasicPrice = 0; - if(!decimal.TryParse(userList[i].BasicPrice,out BasicPrice)) - { - _logger.LogInformation(userList[i].UserName + ": 鍛樺伐娌℃湁缁存姢宸ヨ祫"); - continue; - } //杞鍚庣殑鍑哄嫟鐜� decimal zhuanzhengchuqinlv = chuqinlv- shiyongqichuqinlv; if (userList[i].ShiyongDate.HasValue && userList[i].ShiyongDateEnd.HasValue && userList[i].ShiyongDateEnd.Value >= dateminkaoqin && userList[i].ShiyongDateEnd.Value <= datemaxkaoqin.AddDays(-1)) @@ -1750,7 +1771,6 @@ - hrSalaryDTO.Fakuan = 0; //宸ヤ綔瀹夋帓缃氭 List<AdmMemoBookDTO> admMemoBookDTOs = _DailyManageService.GetRemindsalary(userList[i].Id, dateminkaoqin, datemaxkaoqin,"2"); if (admMemoBookDTOs.Count > 0) -- Gitblit v1.9.1