public async Task <ActionResult> Create(ClassAttendanceViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var userId = User.Identity.GetUserId();
                var user   = await db.Users.FirstOrDefaultAsync(x => x.Id == userId);

                var scheduledClass = await db.ScheduledClasses.FirstOrDefaultAsync(x => x.Id == viewModel.ScheduledClassId);

                var classAttendance = new ClassAttendance()
                {
                    Id               = Guid.NewGuid().ToString(),
                    EnrolledDate     = DateTime.UtcNow,
                    ScheduledClasses = scheduledClass,
                    NoShow           = false,
                    Attendee         = user
                };

                db.ClassAttendances.Add(classAttendance);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            return(View(viewModel));
        }
        public ActionResult MarkAttendance4(string id)
        {
            bool j = true;

            foreach (StudentAttendance i in db.StudentAttendances)
            {
                if (i.StudentID == Convert.ToInt32(id) && i.ClassAttendance.AttendanceDate.Date == DateTime.Now.Date)
                {
                    j = false;
                }
            }
            if (j == false)
            {
                TempData["msg"] = "<script>alert('You have already taken Student Attendance for today.');</script>";
            }
            else
            {
                StudentAttendance u = new StudentAttendance();
                ClassAttendance   v = new ClassAttendance();
                u.StudentID        = Convert.ToInt32(id);
                u.AttendanceStatus = "Leave";
                v.AttendanceDate   = DateTime.Now.Date;
                db.StudentAttendances.Add(u);
                db.ClassAttendances.Add(v);
                db.SaveChanges();
            }
            return(RedirectToAction("TakeAttendance", "Teacher"));
        }
Пример #3
0
    public void UpdateAttendancesStatus(int classRunningID, int runningInstructorID, int runningAssistantID, string notes, int[] values)
    {
        ClassRunning classRunning = ctx.ClassRunnings.SingleOrDefault(cls => cls.ID == classRunningID);

        if (classRunning != null)
        {
            classRunning.RunningInstructorID = runningInstructorID;
            classRunning.RunningAssistantID  = runningAssistantID == 0 ? (int?)null : runningAssistantID;
            classRunning.Notes = notes;

            if (!classRunning.RunningStartWhen.HasValue)
            {
                classRunning.RunningStartWhen = DateTime.Now;
            }

            var attendances = ctx.ClassAttendances.Where(cls => cls.ClassRunningID == classRunningID);
            foreach (var attendance in attendances)
            {
                attendance.IsAttend = false;
            }

            foreach (var value in values)
            {
                ClassAttendance attendance =
                    ctx.ClassAttendances.SingleOrDefault(
                        att => att.ClassRunningID == classRunningID && att.CustomerID == value);
                if (attendance != null)
                {
                    attendance.IsAttend = true;
                }
            }

            ctx.SubmitChanges();
        }
    }
        public ActionResult MarkAttendance1(string id)
        {
            bool j = true;

            foreach (StudentAttendance i in db.StudentAttendances)
            {
                if (i.StudentID == Convert.ToInt32(id) && i.ClassAttendance.AttendanceDate.Date == DateTime.Now.Date)
                {
                    j = false;
                }
            }
            if (j == false)
            {
                ModelState.AddModelError("", "unable to save changes");
            }
            else
            {
                StudentAttendance u = new StudentAttendance();
                ClassAttendance   v = new ClassAttendance();
                u.StudentID        = Convert.ToInt32(id);
                u.AttendanceStatus = "Absent";
                v.AttendanceDate   = DateTime.Now.Date;
                db.StudentAttendances.Add(u);
                db.ClassAttendances.Add(v);
                db.SaveChanges();
            }
            return(RedirectToAction("TakeAttendance", "Teacher"));
        }
        public async Task <ActionResult> DeleteConfirmed(string id)
        {
            ClassAttendance classAttendance = await db.ClassAttendances.FindAsync(id);

            db.ClassAttendances.Remove(classAttendance);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
Пример #6
0
        public void DeleteParticipant(int classRunningID, int customerID)
        {
            ClassAttendance classAttendance = context.ClassAttendances.SingleOrDefault(att => att.ClassRunningID == classRunningID && att.CustomerID == customerID);

            if (classAttendance != null)
            {
                context.Delete(classAttendance);
                context.SaveChanges();
            }
        }
Пример #7
0
    public void AddParticipant(int classRunningID, int customerID)
    {
        ClassAttendance classAttendance = new ClassAttendance();

        classAttendance.ClassRunningID = classRunningID;
        classAttendance.CustomerID     = customerID;
        classAttendance.IsAttend       = false;
        ctx.ClassAttendances.InsertOnSubmit(classAttendance);
        ctx.SubmitChanges();
    }
Пример #8
0
    public void DeleteParticipant(int classRunningID, int customerID)
    {
        ClassAttendance classAttendance = ctx.ClassAttendances.SingleOrDefault(att => att.ClassRunningID == classRunningID && att.CustomerID == customerID);

        if (classAttendance != null)
        {
            ctx.ClassAttendances.DeleteOnSubmit(classAttendance);
            ctx.SubmitChanges();
        }
    }
Пример #9
0
        public void AddParticipant(int classRunningID, int customerID)
        {
            ClassAttendance classAttendance = new ClassAttendance();

            classAttendance.ClassRunningID = classRunningID;
            classAttendance.CustomerID     = customerID;
            classAttendance.IsAttend       = false;
            context.Add(classAttendance);
            context.SaveChanges();
        }
        public async Task <ActionResult> Edit([Bind(Include = "Id,EnrolledDate,NoShow")] ClassAttendance classAttendance)
        {
            if (ModelState.IsValid)
            {
                db.Entry(classAttendance).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(classAttendance));
        }
Пример #11
0
        public async Task <IActionResult> AddClient(int ID, int clientID)
        {
            ClassAttendance classAttendance = new ClassAttendance
            {
                Class  = await _context.Class.SingleAsync(c => c.ID == ID).ConfigureAwait(false),
                Client = await _context.Client.SingleAsync(c => c.ID == clientID).ConfigureAwait(false)
            };

            _context.ClassAttendance.Add(classAttendance);
            await _context.SaveChangesAsync().ConfigureAwait(false);

            return(RedirectToAction(nameof(Details), new { ID }));
        }
        // GET: ClassAttendance/Details/5
        public async Task <ActionResult> Details(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ClassAttendance classAttendance = await db.ClassAttendances.FindAsync(id);

            if (classAttendance == null)
            {
                return(HttpNotFound());
            }
            return(View(classAttendance));
        }
Пример #13
0
        private void BindChildViewHolder(CachingViewHolder holder, ClassAttendance violation, int position)
        {
            TextView _violation = holder.FindCachedViewById <TextView>(Resource.Id.AttendancePenaltyListItem);

            holder.DeleteBinding(_violation);
            var _violationBinding = new Binding <string, string>
                                    (
                violation,
                () => violation.Date,
                _violation,
                () => _violation.Text
                                    );

            holder.SaveBinding(_violation, _violationBinding);
        }
        public ActionResult Attendance(ClassAttendanceViewModel Collection)
        {
            DBSmartSchoolWebPortalEntities111 db = new DBSmartSchoolWebPortalEntities111();
            ClassAttendance ClassAtt             = new ClassAttendance();

            ClassAtt.ClassId   = Collection.ClassId;
            ClassAtt.SectionId = Collection.SectionId;
            ClassAtt.Date      = Collection.Date;
            ClassIdGlobal      = Collection.ClassId;
            SectionIdGlobal    = Collection.SectionId;
            GlobalDate         = Collection.Date;
            db.ClassAttendances.Add(ClassAtt);
            db.SaveChanges();
            return(RedirectToAction("StudentAttendance"));
        }
        public ActionResult viewattendance(int id)
        {
            List <string>   StudentList = new List <string>();
            ClassAttendance a           = new ClassAttendance();

            foreach (ClassAttendance s in db.ClassAttendances)
            {
                var v = db.ClassAttendances.Where(x => x.StudentID == id).ToList();
                foreach (var item in v)
                {
                    a.StudentList.Add(item);
                }
            }

            return(View(a));
        }
Пример #16
0
        public void InitializeStatic()
        {
            for (int count = 0; count < 5; count++)
            {
                Course current = new Course {
                    Id = "1", CourseName = $"Class {count}"
                };
                Classes.Add(current);
            }

            for (int inner = 0; inner < 4; inner++)
            {
                ClassAttendance violation = new ClassAttendance {
                    CourseId = "1", Date = "May 10", ViolationType = App.ViolationTypes.Absence
                };
                Violations.Add(violation);
            }

            for (int inner = 0; inner < 4; inner++)
            {
                ClassAttendance violation = new ClassAttendance {
                    CourseId = "1", Date = "May 10", ViolationType = App.ViolationTypes.PendingAbsence
                };
                Violations.Add(violation);
            }

            for (int inner = 0; inner < 4; inner++)
            {
                ClassAttendance violation = new ClassAttendance {
                    CourseId = "1", Date = "May 10", ViolationType = App.ViolationTypes.Tardy
                };
                Violations.Add(violation);
            }

            for (int inner = 0; inner < 4; inner++)
            {
                ClassAttendance violation = new ClassAttendance {
                    CourseId = "1", Date = "May 10", ViolationType = App.ViolationTypes.PendingTardy
                };
                Violations.Add(violation);
            }
            GetViolations();
        }
        public ActionResult markatt(ClassAttendance c)
        {
            DB49Entities      db          = new DB49Entities();
            List <Department> departments = db.Departments.ToList();

            ViewBag.DepartmentList = new SelectList(departments, "DepartmentID", "DepartmentName");
            List <Sectionss> sections = db.Sectionsses.ToList();

            ViewBag.sectionlist = new SelectList(sections, "SectionID", "SectionName");
            List <status> statuses = db.status.ToList();

            ViewBag.statuslist = new SelectList(statuses, "ID", "Status1");
            List <Student> student = db.Students.ToList();

            ViewBag.studnetlist = new SelectList(student, "StudentId", "RegistrationNumber");
            List <Course> courses = db.Courses.ToList();

            ViewBag.course = new SelectList(courses, "CourseID", "CourseName");

            List <Session> sessions = db.Sessions.ToList();

            ViewBag.SessionList = new SelectList(sessions, "SessionID", "Session1");
            ClassAttendance k = new ClassAttendance();

            k.StudentID  = c.StudentID;
            k.statusid   = c.statusid;
            k.Department = c.Department;
            k.CourseId   = c.CourseId;
            k.Session    = c.Session;
            k.SectionID  = c.SectionID;
            k.Semester   = c.Semester;
            k.Date       = DateTime.Now;
            db.ClassAttendances.Add(k);
            db.SaveChanges();


            return(View());
        }
Пример #18
0
        public bool AddClassAttendance(ClassAttendanceDto dto)
        {
            try
            {
                var attendee       = _context.Users.FirstOrDefault(x => x.Id == dto.AttendeeId);
                var scheduledClass = _context.ScheduledClasses.FirstOrDefault(x => x.Id == dto.ScheduledClassId);

                if (attendee == null || scheduledClass == null)
                {
                    _logger.Warn($"Attendee ID {dto.AttendeeId} or ScheduledClass ID {dto.ScheduledClassId} not found in database");
                    return(false);
                }

                var classAttendance = new ClassAttendance()
                {
                    Id               = dto.Id,
                    EnrolledDate     = dto.EnrolledDate,
                    EnrolledBy       = dto.EnrolledBy,
                    AttendeeId       = dto.AttendeeId,
                    Attendee         = attendee,
                    ScheduledClass   = scheduledClass,
                    ScheduledClassId = dto.ScheduledClassId,
                    NoShow           = dto.NoShow
                };

                _context.ClassAttendances.Add(classAttendance);
                _context.SaveChanges();

                return(true);
            }
            catch (Exception e)
            {
                _logger.Error(e);
                return(false);
            }
        }
Пример #19
0
        public async Task <bool> addNewClassInstance(ClassAttendance classToGet)
        {
            context.Add(classToGet);

            return((await context.SaveChangesAsync()) > 0);
        }
Пример #20
0
        private void btnLogin_Click(System.Object sender, System.EventArgs e)
        {
            #region Disable Code
            //Check login information from database
            //			ACMSLogic.User oUser = new User();
            //			bool chkUserLogin = false;
            //
            //			chkUserLogin = System.Convert.ToBoolean(oUser.Login(txtUsername.Text, txtPassword.Text));
            //
            //			if (chkUserLogin)
            //			{
            //				if (cmbModule.Text == "ACMS Branch")
            //				{
            //					//Show AMCS Branch
            //					if (modInitForms.fBranch == null)
            //					{
            //						modInitForms.fBranch = new frmBranch();
            //						modInitForms.fBranch.initData(oUser);
            //						modInitForms.fBranch.Show();
            //					}
            //
            //					modInitForms.fLogin.Hide();
            //				}
            //
            //				if (cmbModule.Text == "ACMS POS")
            //				{
            //					//Show AMCS POS
            //					if (modInitForms.fPOS == null)
            //					{
            //						modInitForms.fPOS = new frmPOS();
            //						modInitForms.fPOS.Show();
            //					}
            //
            //					modInitForms.fLogin.Hide();
            //				}
            //
            //				if (cmbModule.Text == "ACMS Staff")
            //				{
            //					//Show AMCS POS
            //					if (modInitForms.fStaff == null)
            //					{
            //						modInitForms.fStaff = new frmStaff();
            //						modInitForms.fStaff.Show();
            //					}
            //
            //					modInitForms.fLogin.Hide();
            //				}
            //			}
            //			else
            //			{
            //				MessageBox.Show(this, "Incorrect username and password, please try again");
            //			}
            #endregion
            //DateTime start = DateTime.Now;
            if (this.txtUsername.Text == "" | this.txtPassword.Text == "")
            {
                ACMS.Utils.UI.ShowErrorMessage(this, "Empty Username & Password!", "Error");
            }

            else
            {
                try
                {
                    ACMSLogic.Login.Login login = new ACMSLogic.Login.Login();
                    //Do.Employee emplogin = login.GetEmployeeByIdAndPassword(this.txtUsername.Text, this.txtPassword.Text);

                    //MessageBox.Show(this, emplogin.Id.ToString()+" "+emplogin.Department.Id+" "+emplogin.RightsLevel.RightsLevelEntrys.Count.ToString());

                    //Rp.EmployeeRepository er = new Rp.EmployeeRepository();
                    Do.Employee emp = login.GetEmployeeByIdAndPassword(this.txtUsername.Text, this.txtPassword.Text);                    //er.GetEmployeeByIdAndPassword(this.txtUsername.Text, this.txtPassword.Text);

                    System.Security.Principal.WindowsIdentity userLogin = System.Security.Principal.WindowsIdentity.GetCurrent();

                    if (login.Check_Concurrent() == false)
                    {
                        ACMS.Utils.UI.ShowErrorMessage(this, "Number of Login Exceed Users Limit!", "Authorisation");
                    }
                    else
                    {
                        //Rp.TerminalUserRepository tup = new Rp.TerminalUserRepository();
                        if (emp != null)
                        {
                            Acms.Core.Domain.TerminalUser tu = login.GetTerminalUserByUserId(userLogin.Name) as Acms.Core.Domain.TerminalUser;                            //tup.GetTerminalUserByUserId(userLogin.Name) as Acms.Core.Domain.TerminalUser;

                            //Show AMCS Branch
                            bool Valid = numberUser();
                            //bool Valid = true;
                            if (emp.CanAccess("AB_LOGIN", tu.Branch.Id) && Valid)
                            {
                                //smell tandas code
                                ACMSDAL.TblTerminalUser UserLog = new TblTerminalUser();
                                UserLog.StrTerminalUserCode = userLogin.Name;
                                UserLog.UpdateSession(true, DateTime.Now);

                                modInitForms.fLogin.Hide();
                                ACMSLogic.User.BranchCode = tu.Branch.Id;
                                ACMSLogic.User.EmployeeID = emp.Id;
                                if (emp.Department != null)
                                {
                                    ACMSLogic.User.DepartmentID = emp.Department.Id;
                                }
                                if (emp.StrEmployeeName != null)
                                {
                                    ACMSLogic.User.EmployeeName = emp.StrEmployeeName;
                                }
                                if (emp.JobPosition.Id != null)
                                {
                                    ACMSLogic.User.JobPositionCode = emp.JobPosition.Id;
                                }
                                if (emp.RightsLevel != null)
                                {
                                    ACMSLogic.User.RightsLevelID = emp.RightsLevel.Id;
                                }
                                try
                                {
                                    ClassAttendance.CreateClassInstance();
                                    PackageCode.CreateUnLinkPackage();
                                }
                                catch (Exception ex)
                                {
                                    return;
                                }
                                ACMSLogic.User oUser = new User();

                                if (modInitForms.fBranch != null)
                                {
                                    modInitForms.fBranch.IsLogin = true;
                                    modInitForms.fBranch.Close();
                                    modInitForms.fBranch.Dispose();
                                    if (modInitForms.fStaff != null)
                                    {
                                        modInitForms.fStaff.Close();
                                        modInitForms.fStaff.Dispose();
                                    }
                                    if (modInitForms.fManager != null)
                                    {
                                        modInitForms.fManager.Close();
                                        modInitForms.fManager.Dispose();
                                    }
                                }
                                modInitForms.fBranch = new frmBranch(cmbLanguage.EditValue.ToString());
                                modInitForms.fBranch.SetEmployeeRecord(emp);
                                modInitForms.fBranch.SetTerminalUser(tu);
                                modInitForms.fBranch.OpenDayShift();

                                //						if (UnclosedShift == true)
                                //							MessageBox.Show("There is unclosed shift. Please close the shift.");

                                modInitForms.fBranch.initData(oUser);
                                modInitForms.fBranch.Show();

                                //DateTime end = DateTime.Now;
                                //TimeSpan diff = end.Subtract(start);
                                //MessageBox.Show(diff.TotalSeconds.ToString(),"Time");
                            }
                            else if (emp.CanAccess("AB_TIMECARD_LOGIN", tu.Branch.Id))
                            {
                                modInitForms.fLogin.Hide();
                                //Show AMCS Time Card
                                if (modInitForms.fTimeCard == null)
                                {
                                    modInitForms.fTimeCard = new frmTimeCard(tu.Branch.Id);
                                    modInitForms.fTimeCard.Show();
                                }
                            }
                            else
                            {
                                MessageBox.Show(this, "Invalid username and password or you don't have access to this Branch, please try again");
                            }
                        }
                        else
                        {
                            MessageBox.Show(this, "Invalid username and password, Please try again");
                        }
                    }
                }
                catch (Exception ex)
                {
                    return;
                }
            }
        }
Пример #21
0
        private void simpleButtonOK_Click(object sender, EventArgs e)
        {
            //this.DialogResult = DialogResult.OK;  //DEREK

            if (this.NClassInstanceID != -1)
            {
                //myMemberPackage.NewClassAttendance(MemberPackagePackageID, currMembershipID,
                TblClassInstance clsInstance = new TblClassInstance();
                clsInstance.NClassInstanceID = this.NClassInstanceID;
                clsInstance.SelectOne();
                int nType = this.IsGym ? 1 : 0;

                if (!ClassAttendance.VerifyMemberPackageAllowCertainClass(myPackageID, clsInstance.StrClassCode.Value))
                {
                    MessageBox.Show(this, "The package you wish to use is not allow to attend the class. Please use other package.");
                    //return;
                }
                else if (clsInstance.NActualInstructorID.IsNull)
                {
                    MessageBox.Show(this, "The Instructor has Not punch in yet.");
                    //return;
                }
                else
                {
                    try
                    {
                        //Edited by Albert on 20-Dec-06
                        //Change the User.BranchCode to frm.strBranchID.
                        //To get the branch id from the dialog form.

                        MemberPackage myMemberPackage = new MemberPackage();

                        myMemberPackage.NewClassAttendance(myPackageID, myMemberShipID, this.NClassInstanceID,
                                                           nType, this.strBranchID, clsInstance.DtDate.Value, clsInstance.DtStartTime.Value, clsInstance.DtEndTime.Value, this.Refunded);

                        this.DialogResult = DialogResult.OK;
                    }
                    catch (Exception ex)
                    {
                        this.DialogResult = DialogResult.None;

                        MessageBox.Show(this, ex.Message);
                    }
                }
            }
            else
            {
                try
                {
                    ClassAttendance myClassAttendance = new ClassAttendance();
                    myClassAttendance.MarkGymAttendance(myPackageID, myMemberShipID, this.AttendanceDate, this.StartTime, this.EndTime, true);

                    this.DialogResult = DialogResult.OK;
                }
                catch (Exception ex)
                {
                    this.DialogResult = DialogResult.None;

                    MessageBox.Show(this, ex.Message);
                }
            }
        }
Пример #22
0
        public async Task <ActionResult <bool> > deregisterUserFromClass(RegisterUserForClassRequest register)
        {
            if (await classRepository.getClassById(register.ClassId) == null)
            {
                return(StatusCode(StatusCodes.Status404NotFound, "The class the user wants to signup for does not exist!"));
            }

            if (await userRepository.getUser(register.Username) == null)
            {
                return(StatusCode(StatusCodes.Status404NotFound, "The user does not exist!"));
            }

            ClassRegister existingRegister = await registerRepository.getSpecificUserAndClass(register.Username, register.ClassId);

            if (existingRegister == null)
            {
                return(StatusCode(StatusCodes.Status404NotFound, "User is not signed up for the class!"));
            }

            if (await registerRepository.removeRegister(existingRegister))
            {
                DayOfWeek  today = DateTime.Today.DayOfWeek;
                DateTime   date;
                GymClasses targetClass = await classRepository.getClassById(register.ClassId);

                if (today.ToString().ToLower() == targetClass.Day.ToLower())
                {
                    date = DateTime.Today.Date;
                }
                else
                {
                    DayOfWeek dayOfClass;

                    switch (targetClass.Day.ToLower())
                    {
                    case "monday":
                        dayOfClass = DayOfWeek.Monday;
                        break;

                    case "tuesday":
                        dayOfClass = DayOfWeek.Tuesday;
                        break;

                    case "wednesday":
                        dayOfClass = DayOfWeek.Wednesday;
                        break;

                    case "thursday":
                        dayOfClass = DayOfWeek.Thursday;
                        break;

                    case "friday":
                        dayOfClass = DayOfWeek.Friday;
                        break;

                    case "saturday":
                        dayOfClass = DayOfWeek.Saturday;
                        break;

                    default:
                        dayOfClass = DayOfWeek.Sunday;
                        break;
                    }

                    int difference = days[(int)today, (int)dayOfClass];

                    date = DateTime.Today.AddDays(difference).Date;
                }

                ClassAttendance classToChange = await classAttendanceRepository.getClassInstance(register.ClassId, date);

                if (classToChange == null)
                {
                    ClassAttendance newClass = new ClassAttendance();
                    newClass.Date             = date;
                    newClass.ClassId          = targetClass.ClassId;
                    newClass.Capacity         = targetClass.MaxCapacity;
                    newClass.Class            = targetClass;
                    newClass.NumberOfStudents = targetClass.CurrentStudents;

                    await classAttendanceRepository.addNewClassInstance(newClass);
                }
                else
                {
                    await classAttendanceRepository.editClassAttendance(classToChange.ClassId, classToChange.Date, -1);
                }


                return(Ok(true));
            }
            else
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, "An error occurred while attempting to remove the register from the database!"));
            }
        }