public Form2(Form PUNCHOUT)
 {
     punchOut = PUNCHOUT;
     InitializeComponent();
 }
Example #2
0
        public JsonResult GetAttendanceHistory(string fromDate, string DateTo, string leaveType)
        {
            Dictionary <string, dynamic> dictionary = new Dictionary <string, dynamic>();
            //string fromdate = "";
            //string Tdate = "";
            //DateTime fromDate1 = DateTime.Parse(fromDate);
            //DateTime todate1 = DateTime.Parse(todate);
            var userInfo = (User)Session["UserName"];

            if (fromDate == "" || DateTo == "")
            {
                dictionary.Add("@fromDate", fromDate);
                dictionary.Add("@todate", DateTo);
                dictionary.Add("@empNo", userInfo.EmpCode);
                dictionary.Add("@FSts", leaveType);
            }
            else
            {
                var dd          = fromDate.Split('-');
                var newDateFrom = dd[2] + "-" + dd[1] + "-" + dd[0];
                var dd1         = DateTo.Split('-');
                var newDateTo   = dd1[2] + "-" + dd1[1] + "-" + dd1[0];

                dictionary.Add("@fromDate", newDateFrom);
                dictionary.Add("@todate", newDateTo);
                dictionary.Add("@empNo", userInfo.EmpCode);
                dictionary.Add("@FSts", leaveType);
            }

            ArrayList arr = new ArrayList();
            var       LeaveAvailHistory = Models.DAL.storedProc2(HRStoredProcedureName.GetAttendanceHistory, dictionary, DBName.HR);

            //PunchDate,ShiftIn,ShiftOut,ShiftLate,FPunchIn,FPunchOut,FSts
            foreach (DataRow item in LeaveAvailHistory.Rows)
            {
                var      PunchDate = Convert.ToDateTime(item["PunchDate"]).ToString("dd-MM-yyy");
                var      ShiftIn   = Convert.ToDateTime(item["ShiftIn"]).ToString("hh:mm:ss");
                var      ShiftOut  = Convert.ToDateTime(item["ShiftOut"]).ToString("hh:mm:ss");
                var      ShiftLate = Convert.ToDateTime(item["ShiftLate"]).ToString("hh:mm:ss");
                var      FPunchIn  = item["FPunchIn"].ToString() == "" ? "" : Convert.ToDateTime(item["FPunchIn"]).ToString("hh:mm:ss");
                var      FPunchOut = item["FPunchOut"].ToString() == "" ? "" : Convert.ToDateTime(item["FPunchOut"]).ToString("hh:mm:ss");
                TimeSpan PunchOut;
                TimeSpan ShiftO;
                TimeSpan additionTime;
                TimeSpan latetime;
                TimeSpan PunchIn;
                TimeSpan ShiftL;
                TimeSpan.TryParse("00:00:00", out additionTime);
                TimeSpan.TryParse("00:00:00", out latetime);
                var    ShiftName = item["ShiftName"].ToString();
                string atime     = string.Empty;
                string ltime     = string.Empty;

                if (FPunchIn != "")
                {
                    TimeSpan.TryParse(FPunchIn, out PunchIn);

                    TimeSpan.TryParse(ShiftLate, out ShiftL);
                    if (PunchIn > ShiftL)
                    {
                        latetime = PunchIn.Subtract(ShiftL); // (-00:30:00)

                        var s = latetime.Seconds.ToString().Length == 1 ? "0" + latetime.Seconds.ToString() : latetime.Seconds.ToString();
                        var m = latetime.Minutes.ToString().Length == 1 ? "0" + latetime.Minutes.ToString() : latetime.Minutes.ToString();
                        var h = latetime.Hours.ToString().Length == 1 ? "0" + latetime.Hours.ToString() : latetime.Hours.ToString();
                        ltime = h + ":" + m + ":" + s;
                    }
                }

                if (FPunchOut != "")
                {
                    TimeSpan.TryParse(FPunchOut, out PunchOut);

                    TimeSpan.TryParse(ShiftOut, out ShiftO);
                    if (PunchOut > ShiftO)
                    {
                        additionTime = PunchOut.Subtract(ShiftO); // (-00:30:00)

                        var s = additionTime.Seconds.ToString().Length == 1 ? "0" + additionTime.Seconds.ToString() : additionTime.Seconds.ToString();
                        var m = additionTime.Minutes.ToString().Length == 1 ? "0" + additionTime.Minutes.ToString() : additionTime.Minutes.ToString();
                        var h = additionTime.Hours.ToString().Length == 1 ? "0" + additionTime.Hours.ToString() : additionTime.Hours.ToString();
                        atime = h + ":" + m + ":" + s;
                    }
                }


                var FSts = item["FSts"].ToString();

                var obj = new
                {
                    PunchDate    = PunchDate,
                    ShiftName    = ShiftName,
                    ShiftIn      = ShiftIn,
                    ShiftOut     = ShiftOut,
                    FPunchIn     = FPunchIn,
                    FPunchOut    = FPunchOut,
                    ShiftLate    = ltime,
                    additionTime = atime,
                    FSts         = FSts
                };
                arr.Add(obj);
            }

            //    var results = JsonConvert.SerializeObject(LeaveAvailHistory);
            return(new JsonResult {
                Data = arr
            });
        }