示例#1
0
        public async Task <IActionResult> PutSignEntries(int id, SignEntries signEntries)
        {
            if (id != signEntries.UserId)
            {
                return(BadRequest());
            }

            _context.Entry(signEntries).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!SignEntriesExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
示例#2
0
        public async Task <ActionResult <SignEntries> > PostSignEntries(SignEntries signEntries)
        {
            _context.SignEntries.Add(signEntries);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (SignEntriesExists(signEntries.UserId))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetSignEntries", new { id = signEntries.UserId }, signEntries));
        }
示例#3
0
        public async Task <IActionResult> ModifySignEntryByUserIdAndAttandanceId(LogAtt log)
        {
            SignEntries signEntry = _context.SignEntries.Where(s => s.UserId == log.userId && s.AppointmentId == log.attandanceId).First();
            string      field     = DateTime.Now.ToString().Split(" ")[0] + ",true";

            if (log.password == null)
            {
                log.password = "";
            }

            DateTime todayNow = DateTime.Today;
            DateTime today    = DateTime.Today;

            Appointments appointment = _context.Appointments.Where(a => a.Id == log.attandanceId).First();

            if (!appointment.Password.Equals(log.password))
            {
                return(NotFound("Netačna lozinka"));
            }

            TimeSpan minute        = (TimeSpan)appointment.OpenTime;
            int      currentMinute = DateTime.Now.Minute;

            if ((minute.TotalMinutes - currentMinute) <= 0 && appointment.Active == false)
            {
                return(NotFound("Zakasnili ste"));
            }

            Groups    group    = _context.Groups.Where(g => g.Id == appointment.GroupId).First();
            Lectures  lecture  = _context.Lectures.Where(l => l.Id == group.LectureId).First();
            Semesters semester = _context.Semesters.Where(s => s.Id == lecture.SemesterId).First();
            int       week     = GetCurrentWeek(semester);

            //for (int i = (int)today.Month; i >= (int)semester.StartMonth; i--)
            //{
            //    if (i == (int)semester.StartMonth)
            //        week += (int)(DateTime.DaysInMonth((int)today.Year, (int)today.Month) / 7) - ((int)(DateTime.DaysInMonth((int)today.Year, (int)today.Month) / 7) - (int)(todayNow.Day / 7));
            //    else
            //        week += (int)(DateTime.DaysInMonth((int)today.Year, (int)today.Month) / 7);
            //    today.AddMonths(-1);
            //}

            if ((signEntry.Week1 == null || signEntry.Week1 == "") && week == 1)
            {
                signEntry.Week1 = field;
            }
            else if ((signEntry.Week2 == null || signEntry.Week2 == "") && week == 2)
            {
                signEntry.Week2 = field;
            }
            else if ((signEntry.Week3 == null || signEntry.Week3 == "") && week == 3)
            {
                signEntry.Week3 = field;
            }
            else if ((signEntry.Week4 == null || signEntry.Week4 == "") && week == 4)
            {
                signEntry.Week4 = field;
            }
            else if ((signEntry.Week5 == null || signEntry.Week5 == "") && week == 5)
            {
                signEntry.Week5 = field;
            }
            else if ((signEntry.Week6 == null || signEntry.Week6 == "") && week == 6)
            {
                signEntry.Week6 = field;
            }
            else if ((signEntry.Week7 == null || signEntry.Week7 == "") && week == 7)
            {
                signEntry.Week7 = field;
            }
            else if ((signEntry.Week8 == null || signEntry.Week8 == "") && week == 8)
            {
                signEntry.Week8 = field;
            }
            else if ((signEntry.Week9 == null || signEntry.Week9 == "") && week == 9)
            {
                signEntry.Week9 = field;
            }
            else if ((signEntry.Week10 == null || signEntry.Week10 == "") && week == 10)
            {
                signEntry.Week10 = field;
            }
            else if ((signEntry.Week11 == null || signEntry.Week11 == "") && week == 11)
            {
                signEntry.Week11 = field;
            }
            else if ((signEntry.Week12 == null || signEntry.Week12 == "") && week == 12)
            {
                signEntry.Week12 = field;
            }
            else
            {
                return(NotFound("Prijava je već izvršena"));
            }

            _context.Entry(signEntry).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(Ok());
        }
示例#4
0
        public async Task <IActionResult> ModifySignEntryByUserIdAndAttandanceId(int id, int weekID, int user)
        {
            SignEntries signEntry = _context.SignEntries.Where(s => s.UserId == user && s.AppointmentId == id).First();

            switch (weekID)
            {
            case 1:
            {
                if (signEntry.Week1 == null || signEntry.Week1 == "" || signEntry.Week1.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week1 = signEntry.Week1.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week1 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week1 = signEntry.Week1.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week1 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 2:
            {
                if (signEntry.Week2 == null || signEntry.Week2 == "" || signEntry.Week2.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week2 = signEntry.Week2.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week2 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week2 = signEntry.Week2.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week2 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 3:
            {
                if (signEntry.Week3 == null || signEntry.Week3 == "" || signEntry.Week3.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week3 = signEntry.Week3.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week3 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week3 = signEntry.Week3.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week3 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 4:
            {
                if (signEntry.Week4 == null || signEntry.Week4 == "" || signEntry.Week4.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week4 = signEntry.Week4.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week4 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week4 = signEntry.Week4.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week4 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 5:
            {
                if (signEntry.Week5 == null || signEntry.Week5 == "" || signEntry.Week5.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week5 = signEntry.Week5.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week5 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week5 = signEntry.Week5.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week5 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 6:
            {
                if (signEntry.Week6 == null || signEntry.Week6 == "" || signEntry.Week6.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week6 = signEntry.Week6.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week6 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week6 = signEntry.Week6.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week6 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 7:
            {
                if (signEntry.Week7 == null || signEntry.Week7 == "" || signEntry.Week7.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week7 = signEntry.Week7.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week7 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week7 = signEntry.Week7.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week7 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 8:
            {
                if (signEntry.Week8 == null || signEntry.Week8 == "" || signEntry.Week8.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week8 = signEntry.Week8.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week8 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week8 = signEntry.Week8.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week8 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 9:
            {
                if (signEntry.Week9 == null || signEntry.Week9 == "" || signEntry.Week9.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week9 = signEntry.Week9.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week9 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week9 = signEntry.Week9.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week9 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 10:
            {
                if (signEntry.Week10 == null || signEntry.Week10 == "" || signEntry.Week10.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week10 = signEntry.Week10.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week10 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week10 = signEntry.Week10.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week10 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 11:
            {
                if (signEntry.Week11 == null || signEntry.Week11 == "" || signEntry.Week11.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week11 = signEntry.Week11.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week11 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week11 = signEntry.Week11.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week11 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 12:
            {
                if (signEntry.Week12 == null || signEntry.Week12 == "" || signEntry.Week12.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week12 = signEntry.Week12.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week12 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week12 = signEntry.Week12.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week12 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            case 13:
            {
                if (signEntry.Week13 == null || signEntry.Week13 == "" || signEntry.Week13.Split(",")[1].Equals("false"))
                {
                    try
                    {
                        signEntry.Week13 = signEntry.Week13.Split(",")[0] + ",true";
                    }
                    catch
                    {
                        signEntry.Week13 = DateTime.Now.ToString().Split(" ")[0] + ",true";
                    }
                }

                else
                {
                    try
                    {
                        signEntry.Week13 = signEntry.Week13.Split(",")[0] + ",false";
                    }
                    catch
                    {
                        signEntry.Week13 = DateTime.Now.ToString().Split(" ")[0] + ",false";
                    }
                }
                break;
            }

            default:
                return(NotFound("Greška"));
            }

            _context.Entry(signEntry).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(Ok());
        }