Esempio n. 1
0
 public CalWorkTime(PunchCardRepository repository, ApplyOvertimeRepository applyRepository,
                    IHttpContextAccessor httpContextAccessor)
 {
     this.Repository  = repository;
     this.aRepository = applyRepository;
     this.punchCardFn = new punchCardFunction(repository, httpContextAccessor);
     psCode           = new punchStatusCode();
 }
 public punchCardFunction(PunchCardRepository repository, IHttpContextAccessor httpContextAccessor)
 {
     this.Repository = repository;
     if (httpContextAccessor.HttpContext != null)
     {
         this._session          = httpContextAccessor.HttpContext.Session;
         this.loginID           = _session.GetInt32("loginID");
         this.loginDepartmentID = _session.GetInt32("loginDepartmentID");
     }
     this.psCode = new punchStatusCode();
 }
        public void AddUpPunchCardLog_convertToDic(ref Dictionary <string, string> Dic, PunchCardLog data)
        {
            var code   = new punchStatusCode();
            var status = " ";

            data   = (data == null? new PunchCardLog() : data);
            status = (data.punchStatus & code.lateIn) > 0 ? status += "遲到/" : status;
            status = (data.punchStatus & code.earlyOut) > 0 ? status += "早退/" : status;
            status = (data.punchStatus & code.overtime) > 0 ? status += "加班/" : status;
            status = (data.punchStatus & code.hadLost) > 0 ? status += "缺卡/" : status;
            status = (data.punchStatus & code.takeLeave) > 0 ? status += "請假/" : status;
            status = (data.punchStatus & code.noWork) > 0 ? status += "曠職" : status;
            status = (data.punchStatus & code.normal) > 0 && status == " " ? status += "正常" : status;
            status = status[status.Length - 1] == '/' ? status.Substring(0, status.Length - 1) :status;
            Dic.Add("operateID", data.lastOperaAccID.ToString());
            Dic.Add("accID", data.accountID.ToString());
            Dic.Add("logDate", data.logDate.ToString("yyyy-MM-dd"));
            Dic.Add("onTime", data.onlineTime.Year == 1?"無" : data.onlineTime.ToString("HH:mm:ss"));
            Dic.Add("offTime", data.offlineTime.Year == 1?"無" : data.offlineTime.ToString("HH:mm:ss"));
            Dic.Add("status", status);
        }