From 67a0042c5f29e4bb0e0b82f6190f2bc51480b45c Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期二, 28 二月 2023 13:25:09 +0800
Subject: [PATCH] 工资绩效改版

---
 zhengcaioa/Services/HrSalaryService.cs |  131 ++++++++++++++++++++++++++++---------------
 1 files changed, 84 insertions(+), 47 deletions(-)

diff --git a/zhengcaioa/Services/HrSalaryService.cs b/zhengcaioa/Services/HrSalaryService.cs
index 3be0447..5c82b2a 100644
--- a/zhengcaioa/Services/HrSalaryService.cs
+++ b/zhengcaioa/Services/HrSalaryService.cs
@@ -106,6 +106,15 @@
                 var updatepltRole = _context.HrSalaries.Where(c=>c.Id==dto.Id).SingleOrDefault();
                 if(updatepltRole!=null)
                 {
+                    //濡傛灉鏈夋湭瀹屾垚鐨勫伐浣滀氦鎺ワ紝涓嶈兘鏍稿噯宸ヨ祫
+                 var admAskJiaojies  =  _context.AdmAskJiaojies.Where(x => x.Creater == updatepltRole.Userid &&  x.RecStatus == "A" && x.ShenpiStatus == "D").ToList();
+                    if(admAskJiaojies!=null && admAskJiaojies.Count > 0)
+                    {
+                        resultEntity.Result = false;
+                        resultEntity.Message = "鏈夋湭瀹屾垚鐨勫伐浣滀氦鎺ワ紝涓嶈兘鏍稿噯宸ヨ祫";
+                        return resultEntity;
+                    }
+
                     //鏇存柊鐢佃瘽璐圭敤鐘舵��
                     var sim = _context.SimCost.Where(c => c.bill_year == updatepltRole.Year && c.bill_month <= updatepltRole.Month && c.user_id == updatepltRole.Userid && c.status == "0").ToList();
                     if(sim!=null)
@@ -117,62 +126,90 @@
                     }                    
 
                     var user = _context.PltUsers.Where(c => c.Id == updatepltRole.Userid).SingleOrDefault();
+                    var buchangqian = (updatepltRole.Jiangjin??0) + (updatepltRole.Bufagongzi ?? 0) + (updatepltRole.Jiucuo ?? 0) + (updatepltRole.Peichang ?? 0);
+                    var buchanghou = (dto.Jiangjin ?? 0) + (dto.Bufagongzi ?? 0) + (dto.Jiucuo ?? 0) + (dto.Peichang ?? 0);
+
+
+                    updatepltRole.Daozhanggongzi += (buchanghou - buchangqian);
+                    if (user.advancewages.HasValue && user.advancewages.Value > 0)
+                    {
+
+                        updatepltRole.Yufagongziheji += (buchanghou - buchangqian);
+
+                    }
+
 
                     updatepltRole.Jiangjin = dto.Jiangjin;
                     updatepltRole.Bufagongzi = dto.Bufagongzi;
-
-                    var sum_f = ((updatepltRole.Jibengongzi ?? 0) + (updatepltRole.Baomifei ?? 0) + (updatepltRole.Gongzuobutie ?? 0) +
-                        (updatepltRole.Jiabangongzi ?? 0) + (updatepltRole.Shebao ?? 0) + (updatepltRole.Dianhuabutie ?? 0) +
-                        (updatepltRole.Quanqinjiang ?? 0) + (updatepltRole.Jiaotngbutie ?? 0) + (updatepltRole.Jixiaoticheng ?? 0) +
-                        dto.Jiangjin + dto.Bufagongzi) + dto.Jiucuo; ;
-
                     updatepltRole.Peichang = dto.Peichang;
                     updatepltRole.Jiucuo = dto.Jiucuo;
+                    updatepltRole.Yufagongziheji = dto.Yufagongziheji;
+                    //updatepltRole.Daozhanggongzi = (updatepltRole.Daozhanggongzi ?? 0) + (updatepltRole.Jiangjin ?? 0) + (updatepltRole.Bufagongzi ?? 0) + (updatepltRole.Peichang ?? 0) + (updatepltRole.Jiucuo ?? 0); 
+                    //    //updatepltRole.Yufagongziheji = (updatepltRole.Yufagongziheji ?? 0) + (updatepltRole.Jiangjin ?? 0) + (updatepltRole.Bufagongzi ?? 0) + (updatepltRole.Peichang ?? 0) + (updatepltRole.Jiucuo ?? 0);
 
-                    var sum_k = (updatepltRole.Shebaokou ?? 0) + (updatepltRole.Geshui ?? 0) + (updatepltRole.Dianhuafei ?? 0) +
-                        (updatepltRole.Queqin ?? 0) + (updatepltRole.Fakuan ?? 0) + dto.Peichang;
+                    //var sum_f = (updatepltRole.Jibengongzi ?? 0) + (updatepltRole.Baomifei ?? 0) + (updatepltRole.Gongzuobutie ?? 0) +
+                    //    (updatepltRole.Jiabangongzi ?? 0) + (updatepltRole.Shebao ?? 0) +
+                    //    (updatepltRole.Quanqinjiang ?? 0) + (updatepltRole.Jiaotngbutie ?? 0) + (updatepltRole.Jixiaoticheng ?? 0);
 
 
-                    //璁$畻棰勫彂宸ヨ祫
-                    if (user.advancewages.HasValue && user.advancewages.Value>0)
-                    {
-                        //涓婁竴娆$殑宸ヨ祫
-                        var bf= _context.HrSalaries.Where(c => c.Userid == user.Id && c.Islock== "Q" && c.RecStatus=="A").
-                            OrderByDescending(c=>c.Year).ThenByDescending(c=>c.Month).FirstOrDefault();
+                    //decimal dianhuafei = 0;
+                    //if ((updatepltRole.Dianhuabutie ?? 0) - (updatepltRole.Dianhuafei ?? 0) <= 0)
+                    //{
+                    //    dianhuafei = (updatepltRole.Dianhuafei ?? 0)-(updatepltRole.Dianhuabutie ?? 0);
+                    //}
 
-                        var pc = user.advancewages.Value;
-                        if (sum_f - sum_k > pc)
-                        {
-                            updatepltRole.Daozhanggongzi = sum_f - sum_k;
-                            updatepltRole.Yufagongzi = 0;
-                            if(bf!=null)
-                            {
-                                updatepltRole.Yufagongziheji = bf.Yufagongziheji??0 - (updatepltRole.Daozhanggongzi-pc);
-                            }
-                            else
-                            {
-                                updatepltRole.Yufagongziheji = (pc - updatepltRole.Daozhanggongzi);
-                            }
-                        }
-                        else
-                        {
-                            //棰勫彂
-                            updatepltRole.Daozhanggongzi = pc;
-                            updatepltRole.Yufagongzi = pc - (sum_f - sum_k);
-                            if (bf != null)
-                            {
-                                updatepltRole.Yufagongziheji =bf.Yufagongziheji??0+ updatepltRole.Yufagongzi;
-                            }
-                            else
-                            {
-                                updatepltRole.Yufagongziheji = updatepltRole.Yufagongzi;
-                            }
-                        }
-                    }
-                    else
-                    {
-                        updatepltRole.Daozhanggongzi = sum_f - sum_k;
-                    }
+
+
+                    //var sum_k = (updatepltRole.Shebaokou ?? 0) + (updatepltRole.Geshui ?? 0) + dianhuafei +
+                    //    (updatepltRole.Queqin ?? 0) + (updatepltRole.Fakuan ?? 0);
+
+                    //updatepltRole.Daozhanggongzi = sum_f - sum_k;
+
+
+
+
+
+
+                    ////璁$畻棰勫彂宸ヨ祫
+
+                    //{
+                    //    //涓婁竴娆$殑宸ヨ祫
+                    //    var bf= _context.HrSalaries.Where(c => c.Userid == user.Id && c.Islock== "Q" && c.RecStatus=="A").
+                    //        OrderByDescending(c=>c.Year).ThenByDescending(c=>c.Month).FirstOrDefault();
+
+                    //    var pc = user.advancewages.Value;
+                    //    if (sum_f - sum_k > pc)
+                    //    {
+                    //        updatepltRole.Daozhanggongzi = sum_f - sum_k;
+                    //        updatepltRole.Yufagongzi = 0;
+                    //        if(bf!=null)
+                    //        {
+                    //            updatepltRole.Yufagongziheji = bf.Yufagongziheji??0 - (updatepltRole.Daozhanggongzi-pc);
+                    //        }
+                    //        else
+                    //        {
+                    //            updatepltRole.Yufagongziheji = (pc - updatepltRole.Daozhanggongzi);
+                    //        }
+                    //    }
+                    //    else
+                    //    {
+                    //        //棰勫彂
+                    //        updatepltRole.Daozhanggongzi = pc;
+                    //        updatepltRole.Yufagongzi = pc - (sum_f - sum_k);
+                    //        if (bf != null)
+                    //        {
+                    //            updatepltRole.Yufagongziheji =bf.Yufagongziheji??0+ updatepltRole.Yufagongzi;
+                    //        }
+                    //        else
+                    //        {
+                    //            updatepltRole.Yufagongziheji = updatepltRole.Yufagongzi;
+                    //        }
+                    //    }
+                    //}
+                    //else
+                    //{
+                    //    updatepltRole.Daozhanggongzi = sum_f - sum_k;
+                    //}
 
                     updatepltRole.Islock = "H";
                     updatepltRole.Modifier = dto.Modifier;

--
Gitblit v1.9.1