public async Task <ActionResult> PopulateDetails(int courseId, int semesterId, int timetableId)
        {
            AttendanceMaster param = new AttendanceMaster
            {
                CourseId    = courseId,
                SemesterId  = semesterId,
                TimetableId = timetableId
            };
            //List<SAMS.Models.Student> students = await _repo.GetStudents(param);
            List <SAMS.Models.Student> students = new List <Models.Student> {
                new Models.Student {
                    Id = 1, Name = "Sam Smith"
                },
                new Models.Student {
                    Id = 2, Name = "Anil Einstine"
                },
            };

            List <AttendanceDetailViewModel> details = students.Select(x => new AttendanceDetailViewModel
            {
                StudentId   = x.Id,
                StudentName = x.Name
            }).ToList();

            return(PartialView(details));
        }
 public async Task <JsonResult> GetStudentList(int courseId, int semesterId, int timetableId)
 {
     try
     {
         AttendanceMaster param = new AttendanceMaster
         {
             CourseId    = courseId,
             SemesterId  = semesterId,
             TimetableId = timetableId
         };
         List <SAMS.Models.Student> students;
         if (HttpContext.IsDebuggingEnabled)
         {
             students = new List <Models.Student> {
                 new Models.Student {
                     Id = 1, Name = "Sam Smith"
                 },
                 new Models.Student {
                     Id = 2, Name = "Anil Einstine"
                 },
             };
         }
         else
         {
             students = await _repo.GetStudents(param);
         }
         return(Json(students, JsonRequestBehavior.AllowGet));
     }
     catch (Exception ex)
     {
         return(Json(new { IsError = true, Message = ex.Message }, JsonRequestBehavior.AllowGet));
     }
 }
Exemplo n.º 3
0
        public AttendanceMaster ViewAttendance(int id)
        {
            AttendanceMaster attendanceMaster = new AttendanceMaster();
            string           qry = @"SELECT A.Id 
                                , M.Id as ModuleId, M.Name as ModuleName
                                , T.Id as TimetableId, concat(T.StartTime, ' - ', T.EndTime, ' (', T.Day, ')') as ClassInformation
                                , C.Id as CourseId, C.Name as CourseName
                                , S.Id as SemesterId, S.Name as SemesterName
                            FROM AttendanceMast A
                                INNER JOIN Timetable T on T.Id = A.TimetableId
                                INNER JOIN Module M on M.Id = T.ModuleId
                                INNER JOIN Course C on C.Id = T.CourseId
                                INNER JOIN Semester S on S.Id = T.SemesterId
                            WHERE A.Id = @id
                            
                            SELECT d.id, s.Id as StudentId, s.name as studentName, d.[status], d.remarks
                            FROM AttendanceDetl D
                                INNER JOIN STUDENT S ON d.StudentId = s.Id
                            WHERE D.MastId = @id";

            List <SqlParam> parameters = new List <SqlParam>()
            {
                new SqlParam("@id", SqlDbType.Int, id),
            };

            DataSet ds = _dao.ExecuteDataSet(qry, parameters);

            if (ds != null && ds.Tables[0].Rows.Count > 0)
            {
                attendanceMaster         = ds.Tables[0].ToList <AttendanceMaster>().FirstOrDefault();
                attendanceMaster.details = ds.Tables[1].ToList <AttendanceDetail>();
            }

            return(attendanceMaster);
        }
Exemplo n.º 4
0
        public async Task <bool> SaveAttendance(AttendanceMaster data)
        {
            string qry = @"USP_UPDATE_ATTENDANCE";

            DataTable dtDetails = data.details.Select(x => new
            {
                Id        = (int)x.Id,
                MastId    = (int)x.MastId,
                StudentId = (int)x.StudentId,
                Status    = x.Status ?? "",
                Remarks   = x.Remarks ?? ""
            }
                                                      ).ToList().ToDataTable();

            List <SqlParam> parameters = new List <SqlParam>()
            {
                new SqlParam("@AttendanceId", SqlDbType.Int, data.Id),
                new SqlParam("@ModuleId", SqlDbType.Int, data.ModuleId),
                new SqlParam("@AttendanceDate", SqlDbType.Date, data.AttendanceDate),
                new SqlParam("@TimetableId", SqlDbType.Int, data.TimetableId),
                new SqlParam("@ATTENDANCE_DETAILS", SqlDbType.Structured, dtDetails),
            };

            return(await _dao.ExecuteNonQueryAsync(qry, parameters, CommandType.StoredProcedure));
        }
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            AttendanceMaster attendanceMaster = await db.AttendanceMasters.FindAsync(id);

            db.AttendanceMasters.Remove(attendanceMaster);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
        public async Task <ActionResult> Edit([Bind(Include = "Id")] AttendanceMaster attendanceMaster)
        {
            if (ModelState.IsValid)
            {
                db.Entry(attendanceMaster).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(attendanceMaster));
        }
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            AttendanceMaster attendanceMaster = await db.AttendanceMasters.FindAsync(id);

            if (attendanceMaster == null)
            {
                return(HttpNotFound());
            }
            return(View(attendanceMaster));
        }
        // GET: Attendance/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            AttendanceMaster attendanceMaster = _repo.ViewAttendance((int)id);

            if (attendanceMaster == null)
            {
                return(HttpNotFound());
            }
            return(View(attendanceMaster));
        }
Exemplo n.º 9
0
        public async Task <List <Student> > GetStudents(int moduleId)
        {
            AttendanceMaster attendanceMaster = new AttendanceMaster();
            string           qry = @"SELECT s.id, s.rollNumber, s.Name
                        FROM STUDENT S 
                            INNER JOIN STUDENTMODULEMAPPING ST ON s.Id = st.StudentId
                        where st.ModuleId = @moduleId";

            List <SqlParam> parameters = new List <SqlParam>()
            {
                new SqlParam("@moduleId", SqlDbType.Int, moduleId),
            };

            List <Student> list = await _dao.FetchListAsync <Student>(qry, parameters);

            return(list);
        }
Exemplo n.º 10
0
        public async Task <List <Timetable> > GetTimetable(AttendanceMaster data)
        {
            string qry = @"SELECT  T.Id, concat(M.Name, ' | ', isnull(T.StartTime, ''), ' - ', isnull(T.EndTime, ''), ' (', isnull(cast(T.Day as varchar), ''), ')') as ClassDetails
                FROM Timetable T
                    INNER JOIN Module M on M.Id = T.ModuleId
                WHERE T.CourseId = @CourseId
                    and T.SemesterId = @SemesterId
                    and T.day = @day"    ;

            List <SqlParam> parameters = new List <SqlParam>()
            {
                new SqlParam("@CourseId", SqlDbType.Int, data.CourseId),
                new SqlParam("@SemesterId", SqlDbType.Int, data.SemesterId),
                new SqlParam("@day", SqlDbType.Int, data.Day),
            };

            return(await _dao.FetchListAsync <Timetable>(qry, parameters));
        }
        public async Task <JsonResult> SaveAttendance(AttendanceMaster data)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    data.AttendanceDate = DateTime.Now;
                    await _repo.SaveAttendance(data);

                    return(Json(new { Success = true }));
                }
                return(Json(new { Success = false, Error = "Invalid Input Data" }));
            }
            catch (Exception ex)
            {
                return(Json(new { Success = false, Error = ex.Message }));
            }
        }
        public async Task <ActionResult> SaveAttendance(AttendanceMaster data)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    if (!HttpContext.IsDebuggingEnabled)
                    {
                        await _repo.SaveAttendance(data);
                    }
                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
            }

            return(View(data));
        }