From e649be7905be7e74f6e09d8d74a7bd7bcd3923b7 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期二, 27 七月 2021 16:17:35 +0800
Subject: [PATCH] 修改

---
 zhengcaioa/Services/HrSalaryService.cs |   68 +++++++++++++++++++++++++++++----
 1 files changed, 59 insertions(+), 9 deletions(-)

diff --git a/zhengcaioa/Services/HrSalaryService.cs b/zhengcaioa/Services/HrSalaryService.cs
index 5a28eb1..20af5ad 100644
--- a/zhengcaioa/Services/HrSalaryService.cs
+++ b/zhengcaioa/Services/HrSalaryService.cs
@@ -93,7 +93,7 @@
             return resultEntity;
         }
 
-        public ResultEntity SaveCheckSalary(HrSalaryDTO dto)
+        public ResultEntity SaveCheckSalary(HrSalaryUpDTO dto)
         {
             ResultEntity resultEntity = new ResultEntity();
             try
@@ -101,6 +101,13 @@
                 var updatepltRole = _context.HrSalaries.Where(c=>c.Id==dto.Id).SingleOrDefault();
                 if(updatepltRole!=null)
                 {
+                    //鏇存柊鐢佃瘽璐圭敤鐘舵��
+                    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();
+                    foreach(var item in sim)
+                    {
+                        item.status = "1";
+                    }
+
                     var user = _context.PltUsers.Where(c => c.Id == updatepltRole.Userid).SingleOrDefault();
 
                     updatepltRole.Jiangjin = dto.Jiangjin;
@@ -178,7 +185,7 @@
                         }
                     }
 
-                    updatepltRole.Islock = "Q";
+                    updatepltRole.Islock = "H";
                     updatepltRole.Modifier = dto.Modifier;
                     updatepltRole.Modifytime =DateTime.Now;
                     var count= _context.SaveChanges();
@@ -373,7 +380,7 @@
 
 
 
-            if (searchEntity.totalrows == 0)
+            //if (searchEntity.totalrows == 0)
                 searchEntity.totalrows = query.Count();
             var rolelist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
 
@@ -505,7 +512,7 @@
 
 
 
-            if (searchEntity.totalrows == 0)
+            //if (searchEntity.totalrows == 0)
                 searchEntity.totalrows = query.Count();
             var rolelist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
 
@@ -546,6 +553,26 @@
             return list;
         }
 
+
+
+        /// <summary>
+        /// 鑾峰彇鎵�鏈夋湁鏁堣鑹�
+        /// </summary>
+        /// <returns></returns>
+        public HrSalaryDTO GetListByUser(string Userid, int year, int month)
+        {
+
+
+            var listPosition = _context.HrSalaries.Where(r => r.RecStatus == "A" && r.Userid == Userid && r.Year == year && r.Month == month).FirstOrDefault();
+
+            HrSalaryDTO hrSalaryDTO = null;
+            if (listPosition != null)
+            {
+                hrSalaryDTO = _mapper.Map<HrSalaryDTO>(listPosition);
+            }
+
+            return hrSalaryDTO;
+        }
         /// <summary>
         /// 宸ヨ祫鏍稿
         /// </summary>
@@ -558,7 +585,7 @@
             var entity = (from a in _context.HrSalaries
                           join b in _context.PltUsers on a.Userid equals b.Id
                           join c in _context.HrDepts on b.DeptId equals c.Id
-                          where a.RecStatus=="A" && a.Userid == userid && a.Year == year && a.Month==month
+                          where a.RecStatus=="A" && a.Islock!="D" && a.Userid == userid && a.Year == year && a.Month==month
                           select new HrSalaryDTO()
                           {
                               Id = a.Id,
@@ -650,10 +677,13 @@
                         temp.reason = model.reason;
                         temp.amount = model.amount;
                         temp.basis = model.basis;
-                        temp.sub_time = DateTime.Now;
+                        temp.shenpi_status = model.shenpi_status;
+
+
                     }
                     else
                     {
+                        model.id = Guid.NewGuid().ToString();
                         model.sub_time = DateTime.Now;
                         model.status = "A";
                         _context.HrSalaryAppeal.Add(model);
@@ -678,12 +708,20 @@
         /// <param name="id"></param>
         /// <param name="user"></param>
         /// <returns></returns>
-        public HrSalaryAppeal GetAppeal(string id,string user)
+        public HrSalaryAppeal GetAppeal(string id = "", string user = "", string salaryId = "")
         {
             HrSalaryAppeal hd = new HrSalaryAppeal();
             try
             {
-                hd = _context.HrSalaryAppeal.Where(e => e.salary_id == id && e.sub_user == user).SingleOrDefault();
+                if (!string.IsNullOrEmpty(salaryId))
+                {
+                    hd = _context.HrSalaryAppeal.Where(e => e.salary_id == salaryId && e.sub_user == user && e.status == "A").FirstOrDefault();
+                }
+                else
+                {
+                    hd = _context.HrSalaryAppeal.Where(e => e.id == id && e.status == "A").FirstOrDefault();
+                }
+               
             }
             catch (Exception er)
             {
@@ -792,12 +830,24 @@
                          }).OrderByDescending(x => x.Modifytime).ToList();
 
 
-            if (searchEntity.totalrows == 0)
+            //if (searchEntity.totalrows == 0)
                 searchEntity.totalrows = list.Count();
             var rolelist = list.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
 
             data.LoadData(searchEntity, rolelist);
             return data;
         }
+
+        public void AutoCheck()
+        {
+            try
+            {
+                var salary = _context.Database.ExecuteSqlRaw("update [hr_salary] set islock='Q',[modifier]='e4c93811-b9b1-4998-89f5-c416ebab0c07',modifytime=getdate() where islock = 'H' and DATEDIFF(hh,[modifytime], getdate()) > 72");
+            }
+            catch (Exception)
+            {
+                throw;
+            }
+        }
     }
 }

--
Gitblit v1.9.1