From 6e2b929cf381e2320ba6e7dec56c0371124d2b51 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期六, 27 八月 2022 15:03:00 +0800
Subject: [PATCH] 提交

---
 zhengcaioa/Services/AdmSigninService.cs |   73 +++++++++++++++++++++++++++++++++++-
 1 files changed, 71 insertions(+), 2 deletions(-)

diff --git a/zhengcaioa/Services/AdmSigninService.cs b/zhengcaioa/Services/AdmSigninService.cs
index 59502a8..2713363 100644
--- a/zhengcaioa/Services/AdmSigninService.cs
+++ b/zhengcaioa/Services/AdmSigninService.cs
@@ -20,6 +20,7 @@
         }
 
         #region 鑰冨嫟鎵撳崱
+
         public ResultEntity save(string id, int signinType)
         {
             ResultEntity resultEntity = new ResultEntity();
@@ -37,6 +38,12 @@
                     switch (signinType)
                     {
                         case 10:
+                            if (signIn.MorningIn.HasValue)
+                            {
+                                resultEntity.Result = false;
+                                resultEntity.Message = "宸茬粡鎵撲笂鍗堜笂鐝紝璇蜂笉瑕侀噸澶嶆墦鍗�";
+                                return resultEntity;
+                            }
                             signIn.MorningIn = DateTime.Now;
                             break;
                         case 11:
@@ -44,12 +51,24 @@
                             break;
 
                         case 20:
+                            if (signIn.AfternoonIn.HasValue)
+                            {
+                                resultEntity.Result = false;
+                                resultEntity.Message = "宸茬粡鎵撲笅鍗堜笂鐝崱锛岃涓嶈閲嶅鎵撳崱";
+                                return resultEntity;
+                            }
                             signIn.AfternoonIn = DateTime.Now;
                             break;
                         case 21:
                             signIn.AfternoonOut = DateTime.Now;
                             break;
                         case 30:
+                            if (signIn.AfternoonIn.HasValue)
+                            {
+                                resultEntity.Result = false;
+                                resultEntity.Message = "宸茬粡鎵撳姞鐝崱锛岃涓嶈閲嶅鎵撳崱";
+                                return resultEntity;
+                            }
                             signIn.OvertimeIn = DateTime.Now;
                             break;
                         case 31:
@@ -83,6 +102,20 @@
             AdmSignInDTO signin = _mapper.Map<AdmSignInDTO>(entity);
             return signin;
         }
+
+        public AdmSignInDTO GetByUserAndDate(string userid, DateTime sgninDate)
+        {
+            AdmSignIn entity = _context.AdmSignIns.Where(x=>x.RecStatus == "A" &&  x.UserId == userid && x.SgninDate == sgninDate).FirstOrDefault();
+            AdmSignInDTO signin = null;
+            if (entity != null)
+            {
+                signin = _mapper.Map<AdmSignInDTO>(entity);
+            }
+            
+            return signin;
+        }
+
+        
 
         public AdmSignInDTO GetTodaySignin(string userId)
         {
@@ -208,7 +241,7 @@
                           Afternoon = virtity(a.AfternoonIn, a.AfternoonOut),
                           Overtime = virtity(a.OvertimeIn, a.OvertimeOut)
                       }).ToList();
-            if (searchEntity.totalrows == 0)
+            //if (searchEntity.totalrows == 0)
                 searchEntity.totalrows = dt.Count();
             var signinList = dt.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
             list = _mapper.Map<List<SigninListDTO>>(signinList);
@@ -344,7 +377,43 @@
             return leaveDTO;
 
         }
-       
+
+        public List<AdmAskLeaveDTO> GetAskLeaveByUserId(string UserId)
+        {
+            List<AdmAskLeave> admAskLeaveDTOs = _context.AdmAskLeaves.Where(e => e.RecStatus == "A" && e.ShenpiStatus == "A" && e.Creater == UserId).ToList();
+
+            List<AdmAskLeaveDTO> leaveDTOs = _mapper.Map< List <AdmAskLeaveDTO>  >(admAskLeaveDTOs);
+            return leaveDTOs;
+
+        }
+
+        public List<AdmAskLeaveDTO> GetAskLeaveChongdie(string UserId, DateTime StratTime, DateTime EndTime)
+        {
+            List<AdmAskLeave> admAskLeaveDTOs = _context.AdmAskLeaves.Where(e => e.RecStatus == "A"  && e.Creater == UserId &&  (( e.StratTime <= StratTime && e.EndTime > StratTime) || (e.StratTime < EndTime && e.EndTime >= EndTime) )).ToList();
+
+            List<AdmAskLeaveDTO> leaveDTOs = _mapper.Map<List<AdmAskLeaveDTO>>(admAskLeaveDTOs);
+            return leaveDTOs;
+
+        }
+
+        public List<AdmAskLeaveOffDTO> GetAskLeaveOffByUserId(string UserId)
+        {
+            List<AdmAskLeaveOff> admAskLeaveOffs = _context.AdmAskLeaveOffs.Where(e => e.RecStatus == "A" && e.ShenpiStatus == "A" && e.Creater == UserId).ToList();
+
+            List<AdmAskLeaveOffDTO> leaveDTOs = _mapper.Map<List<AdmAskLeaveOffDTO>>(admAskLeaveOffs);
+            return leaveDTOs;
+
+        }
+
+        public List<AdmAskLeaveOffDTO> GetAskLeaveOffChongdie(string UserId, DateTime StratTime, DateTime EndTime)
+        {
+            List<AdmAskLeaveOff> admAskLeaveOffs = _context.AdmAskLeaveOffs.Where(e => e.RecStatus == "A" && e.Creater == UserId && ((e.StratTime <= StratTime && e.EndTime > StratTime) || (e.StratTime < EndTime && e.EndTime >= EndTime))).ToList();
+
+            List<AdmAskLeaveOffDTO> leaveDTOs = _mapper.Map<List<AdmAskLeaveOffDTO>>(admAskLeaveOffs);
+            return leaveDTOs;
+
+        }
+
         public AdmAskLeaveOffDTO GetAskLeaveOff(string Id)
         {
             AdmAskLeaveOff entity = _context.AdmAskLeaveOffs.Where(e => e.RecStatus == "A" && e.Id == Id ).FirstOrDefault();

--
Gitblit v1.9.1