Beispiel #1
0
        public AttendanceCL viewAttendanceById(int attendanceId)
        {
            Attendance   queryAttendanceDB = (from x in dbcontext.Attendances where x.Id == attendanceId && x.IsDeleted == false select x).FirstOrDefault();
            AttendanceCL attendanceCL      = new AttendanceCL();

            if (queryAttendanceDB == null)
            {
                attendanceCL.studentLeaveTypeId = -1;
            }
            else
            {
                attendanceCL.dateCreated      = queryAttendanceDB.DateCreated;
                attendanceCL.studentLeaveType = queryAttendanceDB.StudentLeaveType.Name;
                attendanceCL.dateModified     = queryAttendanceDB.DateModified;
                attendanceCL.date             = queryAttendanceDB.Date;
                attendanceCL.id                 = queryAttendanceDB.Id;
                attendanceCL.isDeleted          = queryAttendanceDB.IsDeleted;
                attendanceCL.studentId          = queryAttendanceDB.StudentId;
                attendanceCL.studentLeaveTypeId = queryAttendanceDB.StudentLeaveTypeId;
                attendanceCL.classId            = queryAttendanceDB.Student.ClassId;
                attendanceCL.class1             = queryAttendanceDB.Student.Class.Class1;
                attendanceCL.section            = queryAttendanceDB.Student.Class.Section;
            }
            return(attendanceCL);
        }
Beispiel #2
0
        public void deleteAttendanceCL(AttendanceCL attendanceInput)
        {
            Attendance attendanceQuery = (from x in dbcontext.Attendances where x.Id == attendanceInput.id select x).FirstOrDefault();

            attendanceQuery.IsDeleted = true;
            dbcontext.SaveChanges();
        }
        protected void UpdateData()
        {
            sessionId = Convert.ToInt32(Session["sessionId"]);
            int classId = Convert.ToInt32(Request.QueryString["classId"]);
            Collection <AttendanceCL> attendanceCL = new Collection <AttendanceCL>();

            foreach (GridViewRow item in grdStudent.Rows)
            {
                int          studentId           = Convert.ToInt32(grdStudent.DataKeys[item.RowIndex].Value.ToString());
                AttendanceCL getAttendance       = attendanceBLL.viewAttendanceByStudentIdandDate(studentId, Convert.ToDateTime(txtDate.Text));
                StudentCL    studentCL           = studentBLL.viewStudentById(studentId, sessionId);
                DropDownList ddlStudentLeaveType = item.FindControl("ddlGrdStudentLeaveType") as DropDownList;
                if (Convert.ToInt32(ddlStudentLeaveType.SelectedValue) != -1)
                {
                    attendanceCL.Add(new AttendanceCL()
                    {
                        classId            = classId,
                        date               = Convert.ToDateTime(txtDate.Text),
                        dateCreated        = DateTime.Now,
                        dateModified       = DateTime.Now,
                        isDeleted          = false,
                        studentId          = studentId,
                        studentLeaveType   = ddlStudentLeaveType.SelectedItem.ToString(),
                        studentLeaveTypeId = Convert.ToInt32(ddlStudentLeaveType.SelectedValue),
                        id = getAttendance.id,
                    });
                }
                else
                {
                    if (getAttendance.studentLeaveTypeId != -1)
                    {
                        AttendanceCL deletedAttendance = new AttendanceCL()
                        {
                            id = getAttendance.id,
                        };
                        attendanceBLL.deleteAttendanceCL(deletedAttendance);
                    }
                }
            }
            AttendanceCL attendanceUpdated = attendanceBLL.updateAttendance(attendanceCL);

            lblUpdate.Text = " Entries have been updated. The page will refresh in 5 seconds";
            Response.AppendHeader("Refresh", "5;url=index.aspx");
        }
Beispiel #4
0
        public AttendanceCL updateAttendance(Collection <AttendanceCL> attendanceInput)
        {
            AttendanceCL returnAttendance = new AttendanceCL();

            foreach (AttendanceCL item in attendanceInput)
            {
                Attendance attendanceQuery = (from x in dbcontext.Attendances where x.Id == item.id select x).FirstOrDefault();
                if (attendanceQuery == null)
                {
                    Attendance attendanceQueryAdd = dbcontext.Attendances.Add(new Attendance
                    {
                        DateCreated        = item.dateCreated,
                        DateModified       = item.dateModified,
                        Date               = item.date,
                        Id                 = item.id,
                        IsDeleted          = item.isDeleted,
                        StudentId          = item.studentId,
                        StudentLeaveTypeId = item.studentLeaveTypeId,
                    });
                    dbcontext.SaveChanges();
                }
                else
                {
                    attendanceQuery.Date               = item.date;
                    attendanceQuery.DateCreated        = item.dateCreated;
                    attendanceQuery.DateModified       = item.dateModified;
                    attendanceQuery.Id                 = item.id;
                    attendanceQuery.IsDeleted          = item.isDeleted;
                    attendanceQuery.StudentId          = item.studentId;
                    attendanceQuery.StudentLeaveTypeId = item.studentLeaveTypeId;
                    dbcontext.SaveChanges();
                    returnAttendance.classId = attendanceQuery.Student.ClassId;
                    returnAttendance.date    = attendanceQuery.Date;
                }
            }
            return(returnAttendance);
        }
        protected void ddlClass_SelectedIndexChanged(object sender, EventArgs e)
        {
            Collection <StudentCL>             studentCL   = studentBLL.viewStudentsByClassId(Convert.ToInt32(ddlClass.SelectedValue));
            Collection <AttendanceUpdateEntry> studentGrid = new Collection <AttendanceUpdateEntry>();

            foreach (StudentCL item in studentCL)
            {
                AttendanceCL attendanceCL = attendanceBLL.viewAttendanceByStudentIdandDate(item.id, date);
                studentGrid.Add(new AttendanceUpdateEntry()
                {
                    admissionNo        = item.admissionNo,
                    classId            = item.classId,
                    date               = date,
                    gender             = item.gender,
                    id                 = item.id,
                    studentLeaveTypeId = attendanceCL.studentLeaveTypeId,
                    studentName        = item.studentName,
                    attendanceId       = attendanceCL.id,
                    studentId          = item.id,
                });
            }
            grdStudent.DataSource = studentGrid;
            grdStudent.DataBind();
        }
Beispiel #6
0
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            string SMSTemplate = lstSMSTemplate.SelectedItem.ToString();
            int    count       = 0;

            foreach (GridViewRow item in grdAttendance.Rows)
            {
                DropDownList ddlSelection = item.FindControl("ddlSelection") as DropDownList;
                if (ddlSelection.SelectedValue == "0")
                {
                    int                    attendanceId  = Convert.ToInt32(grdAttendance.DataKeys[item.RowIndex].Value.ToString());
                    AttendanceCL           getAttendance = attendanceBLL.viewAttendanceById(attendanceId);
                    Collection <StudentCL> studentCol    = studentBLL.viewStudentsByClassId(getAttendance.classId);
                    foreach (StudentCL x in studentCol)
                    {
                        AttendanceCL attendanceCL = attendanceBLL.viewAttendanceByStudentIdandDate(x.id, getAttendance.date);
                        if (attendanceCL.studentLeaveTypeId == getAttendance.studentLeaveTypeId && x.studentCategoryId != 6)
                        {
                            //Your authentication key
                            string authKey = "136481ASa0LIdW5870d589";
                            //Multiple mobiles numbers separated by comma
                            string mobileNumber = x.fatherMobileNumber;
                            //Sender ID,While using route4 sender id should be 6 characters long.
                            string senderId = "RAINBO";
                            //Your message to send, Add URL encoding here.
                            string message = SMSTemplate.Replace("<&admNo>", x.admissionNo.ToString()).Replace("<&studentName>", x.studentName).Replace("<&fatherName>", x.fatherName).Replace("<&motherName>", x.motherName).Replace("<&class>", x.classSection).Replace("<&date>", getAttendance.date.ToString("dd MMM yyyy"));

                            //Prepare you post parameters
                            StringBuilder sbPostData = new StringBuilder();
                            sbPostData.AppendFormat("authkey={0}", authKey);
                            sbPostData.AppendFormat("&mobiles={0}", mobileNumber);
                            sbPostData.AppendFormat("&message={0}", message);
                            sbPostData.AppendFormat("&sender={0}", senderId);
                            sbPostData.AppendFormat("&route={0}", "4");

                            try
                            {
                                //Call Send SMS API
                                string sendSMSUri = "https://control.msg91.com/api/sendhttp.php";
                                //Create HTTPWebrequest
                                HttpWebRequest httpWReq = (HttpWebRequest)WebRequest.Create(sendSMSUri);
                                //Prepare and Add URL Encoded data
                                UTF8Encoding encoding = new UTF8Encoding();
                                byte[]       data     = encoding.GetBytes(sbPostData.ToString());
                                //Specify post method
                                httpWReq.Method        = "POST";
                                httpWReq.ContentType   = "application/x-www-form-urlencoded";
                                httpWReq.ContentLength = data.Length;
                                using (Stream stream = httpWReq.GetRequestStream())
                                {
                                    stream.Write(data, 0, data.Length);
                                }
                                //Get the response
                                HttpWebResponse response       = (HttpWebResponse)httpWReq.GetResponse();
                                StreamReader    reader         = new StreamReader(response.GetResponseStream());
                                string          responseString = reader.ReadToEnd();

                                //Close the response
                                reader.Close();
                                response.Close();
                                attendanceBLL.addSMSEntry(new SMSEntryCL
                                {
                                    attendanceId  = attendanceCL.id,
                                    dateCreated   = DateTime.Now,
                                    isDeleted     = false,
                                    smsTemplateId = Convert.ToInt32(lstSMSTemplate.SelectedValue),
                                });
                            }
                            catch (SystemException ex)
                            {
                                throw (new Exception(ex.Message));
                            }
                            count++;
                        }
                    }
                }
            }
            if (count == 0)
            {
                lblUpdate.Text = "Attendance Not Selected.";
            }
            else
            {
                lblUpdate.Text = "SMS sent to " + count + "Entries/Columns. The page will redirect in 10 seconds.";
                Response.AppendHeader("Refresh", "10;url=index.aspx");
            }
        }
        protected Collection <AttendanceUpdateEntry> FetchControls1()
        {
            classId = Convert.ToInt32(Request.QueryString["classId"]);
            date    = Convert.ToDateTime(Request.QueryString["date"]);
            Collection <StudentLeaveTypeCL> stlCol   = stlBLL.viewStudentLeaveTypes();
            Collection <ClassCL>            classCol = classBLL.viewClasses(Convert.ToInt16(Session["sessionId"]));

            if (Request.QueryString["classId"] != null)
            {
                int studentId = Convert.ToInt32(Request.QueryString["studentId"]);
                Collection <AttendanceUpdateEntry> studentGrid = new Collection <AttendanceUpdateEntry>();
                Collection <StudentCL>             studentCL   = studentBLL.viewStudentsByClassId(Convert.ToInt32(ddlClass.SelectedValue));
                txtDate.Text = date.ToString("yyyy-MM-dd");
                int count = 1;
                foreach (StudentCL item in studentCL)
                {
                    AttendanceCL attendanceCL = attendanceBLL.viewAttendanceByStudentIdandDate(item.id, date);
                    if (attendanceCL.studentLeaveTypeId == -1)
                    {
                        studentGrid.Add(new AttendanceUpdateEntry()
                        {
                            admissionNo        = item.admissionNo,
                            classId            = item.classId,
                            date               = date,
                            gender             = item.gender,
                            id                 = count,
                            studentLeaveTypeId = attendanceCL.studentLeaveTypeId,
                            studentName        = item.studentName,
                            studentLeaveType   = "Present",
                            studentId          = item.id,
                            attendanceId       = attendanceCL.id,
                            studentCategory    = item.studentCategory,
                        });
                        count++;
                    }
                    else
                    {
                        studentGrid.Add(new AttendanceUpdateEntry()
                        {
                            admissionNo        = item.admissionNo,
                            classId            = item.classId,
                            date               = date,
                            gender             = item.gender,
                            id                 = count,
                            studentLeaveTypeId = attendanceCL.studentLeaveTypeId,
                            studentName        = item.studentName,
                            studentLeaveType   = attendanceCL.studentLeaveType,
                            studentId          = item.id,
                            attendanceId       = attendanceCL.id,
                            studentCategory    = item.studentCategory,
                        });
                        count++;
                    }
                }
                return(studentGrid);
            }
            else
            {
                Collection <StudentCL>             studentCL   = studentBLL.viewStudentsByClassId(Convert.ToInt32(ddlClass.SelectedValue));
                Collection <AttendanceUpdateEntry> studentGrid = new Collection <AttendanceUpdateEntry>();
                int count = 1;
                foreach (StudentCL item in studentCL)
                {
                    AttendanceCL attendanceCL = attendanceBLL.viewAttendanceByStudentIdandDate(item.id, date);
                    if (attendanceCL.studentLeaveTypeId == -1)
                    {
                        studentGrid.Add(new AttendanceUpdateEntry()
                        {
                            admissionNo        = item.admissionNo,
                            classId            = item.classId,
                            date               = date,
                            gender             = item.gender,
                            id                 = count,
                            studentLeaveTypeId = attendanceCL.studentLeaveTypeId,
                            studentName        = item.studentName,
                            studentLeaveType   = "Present",
                            studentId          = item.id,
                            attendanceId       = attendanceCL.id,
                            studentCategory    = item.studentCategory,
                        });
                        count++;
                    }
                    else
                    {
                        studentGrid.Add(new AttendanceUpdateEntry()
                        {
                            admissionNo        = item.admissionNo,
                            classId            = item.classId,
                            date               = date,
                            gender             = item.gender,
                            id                 = count,
                            studentLeaveTypeId = attendanceCL.studentLeaveTypeId,
                            studentName        = item.studentName,
                            studentLeaveType   = attendanceCL.studentLeaveType,
                            studentId          = item.id,
                            attendanceId       = attendanceCL.id,
                            studentCategory    = item.studentCategory,
                        });
                        count++;
                    }
                }
                return(studentGrid);
            }
        }
        protected Collection <AttendanceUpdateEntry> FetchControls()
        {
            sessionId = Convert.ToInt32(Session["sessionId"]);
            classId   = Convert.ToInt32(Request.QueryString["classId"]);
            date      = Convert.ToDateTime(Request.QueryString["date"]);
            Collection <StudentLeaveTypeCL> stlCol   = stlBLL.viewStudentLeaveTypes();
            Collection <ClassCL>            classCol = classBLL.viewClasses(Convert.ToInt32(Session["sessionId"]));

            if (Request.QueryString["classId"] != null)
            {
                ddlClass.Enabled = false;
                txtDate.Enabled  = false;
                int studentId = Convert.ToInt32(Request.QueryString["studentId"]);
                Collection <AttendanceUpdateEntry> studentGrid = new Collection <AttendanceUpdateEntry>();
                lblHeading.Text = "Update Attendance Entry";
                btnSubmit.Text  = "Update";
                ddlStudentLeaveType.DataSource     = stlCol;
                ddlStudentLeaveType.DataValueField = "id";
                ddlStudentLeaveType.DataTextField  = "name";
                ddlStudentLeaveType.DataBind();
                ddlStudentLeaveType.Items.Insert(0, new ListItem("Present", "-1"));
                ddlClass.DataSource     = classCol;
                ddlClass.DataValueField = "id";
                ddlClass.DataTextField  = "classSection";
                ddlClass.DataBind();
                ddlClass.SelectedValue = classId.ToString();
                ddlClass.Enabled       = false;
                Collection <StudentCL> studentCL = studentBLL.viewStudentsByClassId(Convert.ToInt32(ddlClass.SelectedValue));
                txtDate.Text = date.ToString("yyyy-MM-dd");
                int count = 1;
                foreach (StudentCL item in studentCL)
                {
                    AttendanceCL attendanceCL = attendanceBLL.viewAttendanceByStudentIdandDate(item.id, date);
                    if (attendanceCL.studentLeaveTypeId == -1)
                    {
                        studentGrid.Add(new AttendanceUpdateEntry()
                        {
                            admissionNo        = item.admissionNo,
                            classId            = item.classId,
                            date               = date,
                            gender             = item.gender,
                            id                 = count,
                            studentLeaveTypeId = attendanceCL.studentLeaveTypeId,
                            studentName        = item.studentName,
                            studentLeaveType   = "Present",
                            studentId          = item.id,
                            attendanceId       = attendanceCL.id,
                            studentCategory    = item.studentCategory,
                        });
                        count++;
                    }
                    else
                    {
                        studentGrid.Add(new AttendanceUpdateEntry()
                        {
                            admissionNo        = item.admissionNo,
                            classId            = item.classId,
                            date               = date,
                            gender             = item.gender,
                            id                 = count,
                            studentLeaveTypeId = attendanceCL.studentLeaveTypeId,
                            studentName        = item.studentName,
                            studentLeaveType   = attendanceCL.studentLeaveType,
                            studentId          = item.id,
                            attendanceId       = attendanceCL.id,
                            studentCategory    = item.studentCategory,
                        });
                        count++;
                    }
                }
                return(studentGrid);
            }
            else
            {
                lblHeading.Text         = "Add Attendance Entry";
                btnSubmit.Text          = "Submit";
                btnDelete.Visible       = false;
                ddlClass.DataSource     = classCol;
                ddlClass.DataValueField = "id";
                ddlClass.DataTextField  = "classSection";
                ddlClass.DataBind();
                ddlStudentLeaveType.DataSource     = stlCol;
                ddlStudentLeaveType.DataValueField = "id";
                ddlStudentLeaveType.DataTextField  = "name";
                ddlStudentLeaveType.DataBind();
                ddlStudentLeaveType.Items.Insert(0, new ListItem("Present", "-1"));
                Collection <StudentCL>             studentCL   = studentBLL.viewStudentsByClassId(Convert.ToInt32(ddlClass.SelectedValue));
                Collection <AttendanceUpdateEntry> studentGrid = new Collection <AttendanceUpdateEntry>();
                int count = 1;
                foreach (StudentCL item in studentCL)
                {
                    AttendanceCL attendanceCL = attendanceBLL.viewAttendanceByStudentIdandDate(item.id, date);
                    if (attendanceCL.studentLeaveTypeId == -1)
                    {
                        studentGrid.Add(new AttendanceUpdateEntry()
                        {
                            admissionNo        = item.admissionNo,
                            classId            = item.classId,
                            date               = date,
                            gender             = item.gender,
                            id                 = count,
                            studentLeaveTypeId = attendanceCL.studentLeaveTypeId,
                            studentName        = item.studentName,
                            studentLeaveType   = "Present",
                            studentId          = item.id,
                            attendanceId       = attendanceCL.id,
                            studentCategory    = item.studentCategory,
                        });
                        count++;
                    }
                    else
                    {
                        studentGrid.Add(new AttendanceUpdateEntry()
                        {
                            admissionNo        = item.admissionNo,
                            classId            = item.classId,
                            date               = date,
                            gender             = item.gender,
                            id                 = count,
                            studentLeaveTypeId = attendanceCL.studentLeaveTypeId,
                            studentName        = item.studentName,
                            studentLeaveType   = attendanceCL.studentLeaveType,
                            studentId          = item.id,
                            attendanceId       = attendanceCL.id,
                            studentCategory    = item.studentCategory,
                        });
                        count++;
                    }
                }
                return(studentGrid);
            }
        }