Esempio n. 1
0
 protected void grdResourceList_RowDataBound(object sender, GridViewRowEventArgs e)
 {
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         RequestFR     req        = (RequestFR)ViewState["req"];
         int           resID      = Convert.ToInt32(grdResourceList.DataKeys[e.Row.RowIndex].Value);
         BulletedList  bltoptions = (BulletedList)e.Row.FindControl("bltResOptions");
         OptionHandler opt        = new OptionHandler();
         List <Option> optlist    = opt.GetOptionListByResID(resID);
         bltoptions.DataSource    = optlist;
         bltoptions.DataTextField = "name";
         bltoptions.DataBind();
         GridView grdApprovedRequestList = (GridView)e.Row.FindControl("grdApprovedRequestList");
         approvedreqlist = RequestBussiness.GetRequestListBySessionDate_resID_status(pcal1.Text, resID, 2);
         grdApprovedRequestList.DataSource = approvedreqlist;
         grdApprovedRequestList.DataBind();
         GridView                grdPendingRequestList = (GridView)e.Row.FindControl("grdRequestPendingList");
         List <RequestFR>        perl  = RequestBussiness.GetRequestListBySessionDate_resID_status(pcal1.Text, resID, 1);
         IEnumerable <RequestFR> perl1 = null;
         //if (perl != null)
         //{
         //    perl1 = perl.Where(item => (item.Sessionstart_time >= req.Sessionstart_time)
         //                            && (item.Sessionstart_time < req.Sessionend_time));
         //}
         grdPendingRequestList.DataSource = perl1;
         grdPendingRequestList.DataBind();
         ViewState.Add("req", req);
     }
 }
Esempio n. 2
0
        private void BindData()
        {
            RequestFR req = new RequestFR();
            //reqid = Convert.ToInt32(Session["reqID"]);
            RequestHandler rq = new RequestHandler();

            req = rq.GetRequestDetails(reqid);
            lblRequestID.Text = req.ID.ToString();
            Category ct = new CategoryHandler().GetCategoryDetails(req.CatID);

            lblCategory.Text = ct.Name;
            // lblCourseName.Text = req.CourseName;
            lblLocation.Text    = req.Location;
            lblDescription.Text = req.Note;
            OptionHandler opt1     = new OptionHandler();
            List <Option> optlist1 = opt1.GetOptionListByReqID(req.ID);

            foreach (var item in optlist1)
            {
                chblOptions.Items.Add(item.Name);
                chblOptions.Items.FindByText(item.Name).Selected = true;
            }
            //lblSessionStart.Text = req.Sessionstart_time.ToString();
            //lblSessionEnd.Text = req.Sessionend_time.ToString();
            //pcal1.Text = req.Sessiondate;
            ResourceHandler rs      = new ResourceHandler();
            List <Resource> reslist = rs.GetResourceListByReqID(req.ID);

            grdResourceList.DataSource = reslist;
            grdResourceList.DataBind();
            ViewState.Add("req", req);
        }
Esempio n. 3
0
        //private bool TimeConflicted(RequestFR req)
        //{
        //    //bool start = false;
        //    //bool end = false;
        //    //start = approvedreqlist.Any(i => i.Sessionstart_time <= req.Sessionstart_time && i.Sessionend_time > req.Sessionstart_time);
        //    //end = approvedreqlist.Any(i => i.Sessionstart_time < req.Sessionend_time && i.Sessionend_time >= req.Sessionend_time);
        //    //return start || end;
        //}

        private void ApproveRequest(int resID, RequestFR req)
        {
            //req.ResourceID = resID;
            ResourceHandler Rc      = new ResourceHandler();
            string          resName = Rc.GetResourceDetails(resID).Name;

            userID        = Convert.ToInt32(Session[sessionNames.userID_Karbar]);
            req.ReplierID = userID; //this is office user ID that has to come from session !!!
            req.Status    = 2;      //2 means approved
            ResourceHandler resH     = new ResourceHandler();
            Resource        resource = resH.GetResourceDetails(resID);

            req.Answernote  = resource.Name + "برای شما تایید شده";
            req.Answer_time = DateTime.Now.ToPeString();

            try
            {
                RequestBussiness.UpdateRequest(req);
                string st = resName + " برای درخواست شماره " + req.ID + "تایید شد. ";
                //lblSuccess.Text = st;
                //RadWindow2.VisibleOnPageLoad = true;
                RadWindowManager1.RadAlert(st, 300, 200, "پیام سیستم", "redirectToLast");
            }
            catch (Exception)
            {
                RadWindowManager1.RadAlert(" متاسفانه خطایی در سیستم رخ داده است ، لطفا با مدیر سیستم تماس بگیرید.", 330, 220, "هشدار", "");
            }
        }
Esempio n. 4
0
 protected void grdResourceList_RowCommand(object sender, GridViewCommandEventArgs e)
 {
     if (e.CommandName == "Add")
     {
         int            resID = Convert.ToInt32(e.CommandArgument);
         RequestFR      req   = (RequestFR)ViewState["req"];
         RequestHandler rq    = new RequestHandler();
         //approvedreqlist = rq.GetRequestListBySessionDate_resID_status(req.Sessiondate, resID, 2);
         //if (BeforeToday(req.Sessiondate))
         //{
         //    string scrp = "alert('تاریخ درخواست قبل از امروز می باشد ، شما فقط می توانید درخواست را ویرایش یا رد نمایید');";
         //    ScriptManager.RegisterClientScriptBlock(this, GetType(), ClientID, scrp, true);
         //}
         //else
         //{
         //    if (approvedreqlist != null)
         //    {
         //        if (TimeConflicted(req))
         //        {
         //            string scrp1 = "alert('تداخل در ساعات درخواست فعلی و درخواست های از قبل تایید شده !');";
         //            ScriptManager.RegisterClientScriptBlock(this, GetType(), ClientID, scrp1, true);
         //        }
         //        else
         //        {
         //            SendReq(resID, req);
         //        }
         //    }
         //    else
         //    {
         //        SendReq(resID, req);
         //    }
         //}
     }
 }
Esempio n. 5
0
        protected void grdResourceList_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "approve")
            {
                int       resID = Convert.ToInt32(e.CommandArgument);
                RequestFR req   = (RequestFR)ViewState["req"];

                //approvedreqlist = RequestBussiness.GetRequestListBySessionDate_resID_status(req.Sessiondate, resID, 2);
                //if (BeforeToday(req.Sessiondate))
                //{
                //    RadWindowManager1.RadAlert(" تاریخ درخواست قبل از امروز می باشد ، شما فقط می توانید این درخواست را رد نمایید", 330, 220, "هشدار", "");
                //}
                //else
                //{
                //    if (approvedreqlist != null)
                //    {
                //        if (TimeConflicted(req))
                //        {
                //            RadWindowManager1.RadAlert(" تداخل در ساعات درخواست جاری و درخواست های از قبل تایید شده برای این کلاس ، شما فقط می توانید این درخواست را رد نمایید.", 330, 220, "هشدار", "");
                //        }
                //        else
                //        {
                //            ApproveRequest(resID, req);
                //        }
                //    }
                //    else
                //    {
                //        ApproveRequest(resID, req);
                //    }
                //}
            }
        }
Esempio n. 6
0
        private bool TimeConflicted(RequestFR req)
        {
            bool start = false;
            bool end   = false;

            //start = approvedreqlist.Any(i => i.Sessionstart_time <= req.Sessionstart_time && i.Sessionend_time > req.Sessionstart_time);
            //end = approvedreqlist.Any(i => i.Sessionstart_time < req.Sessionend_time && i.Sessionend_time >= req.Sessionend_time);
            return(start || end);
        }
Esempio n. 7
0
        protected void grdProfessorReview_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "cancel1")
            {
                string confirmValue = Request.Form["confirm_value"];

                if (confirmValue == "بله")
                {
                    RequestHandler reqH = new RequestHandler();

                    var userId = Convert.ToInt32(Session[sessionNames.userID_StudentOstad]);
                    var comman = new CommonBusiness();
                    comman.InsertIntoStudentLog(userId.ToString(), "", 11, 29, "حذف درخواست کلاس توسط استاد");

                    reqH.DeleteRequest(Convert.ToInt32(e.CommandArgument));
                    BindGrid(drpRequestStatus.SelectedIndex + 1);
                }
                else
                {
                    BindGrid(drpRequestStatus.SelectedIndex + 1);
                }
            }
            if (e.CommandName == "showTime")
            {
                List <RequestDateTime> timeList = new List <RequestDateTime>();
                int reqID = Convert.ToInt32(e.CommandArgument);

                GridViewRow curruntRow = (GridViewRow)(((Button)e.CommandSource).NamingContainer);
                lblDarsName.Text    = curruntRow.Cells[2].Text;
                lblRequestId.Text   = curruntRow.Cells[1].Text;
                imgStatus2.ImageUrl = ((Image)curruntRow.Cells[2].FindControl("imgStatus")).ImageUrl;

                RequestFR request = RequestList.Where(i => i.ID == reqID)
                                    .First();

                timeList = RequestList.Where(i => i.ID == reqID)
                           .SelectMany(j => j.DateTimeRange)
                           .OrderBy(x => x.Date)
                           .ToList()
                ;

                grdDateTime.DataSource = timeList;
                grdDateTime.DataBind();

                Page.ClientScript.RegisterStartupScript(GetType(), "key", "Sys.Application.add_load(showWindow);", true);
            }
            if (e.CommandName == "History")
            {
                CommonBusiness cmb = new CommonBusiness();

                lst_history.DataSource = cmb.GetUserLogByModifyId(int.Parse(e.CommandArgument.ToString()), 11);
                lst_history.DataBind();

                ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "openModal();", true);
            }
        }
Esempio n. 8
0
        private void SendReq(int resID, RequestFR req)
        {
            //req.ResourceID = resID;
            req.SenderID  = userID; //this is education user ID that has to come from session !!!
            req.Status    = 1;      //1 means sent status
            req.Send_time = DateTime.Now.ToPeString();
            RequestHandler rq = new RequestHandler();

            rq.UpdateRequest(req);
            Response.Redirect("EducationUserReview.aspx");
        }
Esempio n. 9
0
 protected void grdPendingRequestList_RowDataBound(object sender, GridViewRowEventArgs e)
 {
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         RequestFR req = (RequestFR)ViewState["req"];
         if (Convert.ToInt32(e.Row.Cells[0].Text) == req.ID)
         {
             e.Row.Attributes.Add("class", "bg-danger");
         }
     }
 }
Esempio n. 10
0
        protected void btnDenyRequest_Click(object sender, EventArgs e)
        {
            RequestFR req = (RequestFR)ViewState["req"];

            userID          = Convert.ToInt32(Session[sessionNames.userID_Karbar]);
            req.ReplierID   = userID;//education user ID
            req.Answernote  = txtAnswerNote.Text;
            req.Answer_time = DateTime.Now.ToPeString();
            req.Status      = 3;//3 means request has been denied .

            requestBussiness.UpdateRequest(req);
            Response.Redirect("EducationUserReview.aspx?id=" + generaterandomstr() + "@A" + "0" + "-" + generaterandomstr());
        }
Esempio n. 11
0
        protected void btnDenyRequest_Click(object sender, EventArgs e)
        {
            RequestFR req = (RequestFR)ViewState["req"];

            req.ReplierID   = 2;//education user ID
            req.Answernote  = txtAnswerNote.Text;
            req.Answer_time = DateTime.Now.ToPeString();
            req.Status      = 3;//3 means request has been denied .
            RequestHandler rq = new RequestHandler();

            rq.UpdateRequest(req);
            Response.Redirect("EducationUserReview.aspx");
        }
        protected void btnDenyRequest1_OnClick(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(txtDenyMessage1.Text.Trim()))
            {
                lblalertMessage.Visible = true;
                return;
            }

            var userID = Convert.ToInt32(Session[sessionNames.userID_Karbar]);

            RequestFR req = new RequestFR();

            userID = Convert.ToInt32(Session["UserId"]);
            req.ID = Convert.ToInt32(hdnfDenyReqId1.Value);


            req.ReplierID   = userID;//education user ID
            req.Answernote  = txtDenyMessage1.Text;
            req.Answer_time = DateTime.Now.ToPeString();

            req.IsRejectFinancial = true;

            req.Status = (int)ResourceControlEnums.RequestDefenceStaus.denied;//3 means request has been denied .

            RequestHandler requestBusiness = new RequestHandler();

            _requestHandler.UpdateIsRejectFinancial(req.ID, true);
            int id     = requestBusiness.DenyRequest(req);
            var comman = new CommonBusiness();

            if (_requestHandler.DeleteStudentRequest(req.ID))
            {
                comman.InsertIntoUserLog(userID, DateTime.Now.ToString("HH:mm"), 11, 254, string.Format("{0}", "لغو درخواست جلسه دفاع توسط مالی"), req.ID);
                txtDenyMessage1.Text = string.Empty;
                string smsText   = "  دفاع شما با شماره درخواست" + req.ID + "توسط مالی لغو گردید ";
                var    acceptSms = _requestHandler.SendSMSForFinacial(hdnfDenyStcode.Value, smsText);


                string denyMessage = "درخواست شماره " + req.ID.ToString() + " لغو گردید.";
                RadWindowManager1.RadAlert(denyMessage, 300, 100, "پیام سیستم", "closeRadWindow3");
            }
            else
            {
                txtDenyMessage1.Text = string.Empty;


                txtDenyMessage1.Text = string.Empty;
                string denyMessage = "لغو درخواست با  شماره " + req.ID.ToString() + " با مشکل روبه رو گردید.";
                RadWindowManager1.RadAlert(denyMessage, 300, 100, "پیام سیستم", "closeRadWindow3");
            }
        }
Esempio n. 13
0
        private void ResolveImageUrl(GridViewRowEventArgs e)
        {
            Image     img     = (Image)e.Row.FindControl("imgStatus");
            RequestFR dataRow = (RequestFR)e.Row.DataItem;

            switch (dataRow.Status)
            {
            case 0:
                img.ImageUrl = GetImage(dataRow.Status);
                img.ToolTip  = "در حال بررسی آموزش";
                break;

            case 1:
                img.ImageUrl = GetImage(dataRow.Status);
                img.ToolTip  = "منتظر تایید اداری";
                break;

            case 2:
                img.ImageUrl = GetImage(dataRow.Status);
                img.ToolTip  = "تایید اداری";
                break;

            case 3:
                img.ImageUrl = GetImage(dataRow.Status);
                img.ToolTip  = "رد شده";   //"تایید شده";
                break;

            case 4:
                img.ImageUrl = GetImage(dataRow.Status);
                img.ToolTip  = "اطلاع رسانی شده";
                break;

            case 5:
                img.ImageUrl = GetImage(dataRow.Status);
                img.ToolTip  = "از دست رفته";
                break;

            case 6:
                img.ImageUrl = GetImage(dataRow.Status);
                img.ToolTip  = "تایید فنی";
                break;

            default:
                img.ImageUrl = GetImage(dataRow.Status);
                img.ToolTip  = "نامشخص";
                break;
            }
        }
Esempio n. 14
0
        protected void btnDenyRequest_Click(object sender, EventArgs e)
        {
            RequestFR req = (RequestFR)ViewState["req"];

            userID          = Convert.ToInt32(Session[sessionNames.userID_Karbar]);
            req.ReplierID   = userID;//office user ID.
            req.Answernote  = txtAnswerNote.Text;
            req.Answer_time = DateTime.Now.ToPeString();
            req.Status      = 0;//0 means request has been returned to education user.

            RequestBussiness.UpdateRequest(req);
            string st = "  درخواست شماره " + req.ID + " رد شد و برای پیگیری به فرستنده آن برگردانده شد. ";

            //lblSuccess.Text = st;
            //RadWindow2.VisibleOnPageLoad = true;
            RadWindowManager1.RadAlert(st, 300, 200, "پیام سیستم", "redirectToLast");
        }
Esempio n. 15
0
        private void SendReq(int resID, RequestFR req)
        {
            //req.ResourceID = resID;
            ResourceHandler Rc      = new ResourceHandler();
            string          resName = Rc.GetResourceDetails(resID).Name;

            userID        = Convert.ToInt32(Session[sessionNames.userID_Karbar]);
            req.SenderID  = userID; //this is education user ID that has to come from session !!!
            req.Status    = 1;      //1 means sent status
            req.Send_time = DateTime.Now.ToPeString();

            try
            {
                requestBussiness.UpdateRequest(req);
                string st = resName + " برای درخواست شماره " + req.ID + " پیشنهاد و برا ی تایید به کاربر اداری ارسال شد. ";
                RadWindowManager1.RadAlert(st, 350, 200, "پیام سیستم", "redirectToLast");
                //Response.Redirect("EducationUserReview.aspx?id=" + generaterandomstr() + "@A" + "0" + "-" + generaterandomstr());
            }
            catch (Exception)
            {
                RadWindowManager1.RadAlert(" متاسفانه خطایی در سیستم رخ داده است ، لطفا با مدیر سیستم تماس بگیرید.", 330, 220, "هشدار", "");
            }
        }
        protected void btnDenyRequest_Click(object sender, EventArgs e)
        {
            if (IsValid)
            {
                RequestFR req = new RequestFR();

                userID          = Convert.ToInt32(Session[sessionNames.userID_Karbar]);
                req.ID          = Convert.ToInt32(hdnfDenyReqId.Value);
                req.ReplierID   = userID;//education user ID
                req.Answernote  = txtDenyMessage.Text;
                req.Answer_time = DateTime.Now.ToPeString();
                req.Status      = 3;//3 means request has been denied .

                RequestHandler requestBusiness = new RequestHandler();
                int            id = requestBusiness.DenyRequest(req);

                var comman = new CommonBusiness();
                comman.InsertIntoUserLog(userID, DateTime.Now.ToString("HH:mm"), 11, 124, string.Format("{0} :{1}", "حذف درخواست کلاس توسط آموزش", txtDenyMessage.Text), req.ID);
                txtDenyMessage.Text = string.Empty;
                string denyMessage = "درخواست شماره " + id.ToString() + " رد شد.";
                RadWindowManager1.RadAlert(denyMessage, 300, 100, "پیام سیستم", "closeRadWindow2");
            }
        }
Esempio n. 17
0
        protected void btnEditRequest_Click(object sender, EventArgs e)
        {
            if (Page.IsValid)
            {
                RequestFR      req = new RequestFR();
                RequestHandler rqH = new RequestHandler();
                req       = rqH.GetRequestDetails(reqID);
                req.CatID = Convert.ToInt32(drpCategory.SelectedValue);
                RC_User        user = new RC_User();
                RC_UserHandler us   = new RC_UserHandler();
                user         = us.Get_Ostad_Details(req.IssuerID);
                req.Subject  = "nosub";
                req.Note     = txtDescription.Text;
                req.Location = drpLocation.SelectedValue;
                if (chbRepeat.Checked == false)
                {
                    if (CheckReqDate(pcal1.Text))
                    {
                        RequestDateTime rdt = new RequestDateTime();
                        rdt.Date          = pcal1.Text;
                        rdt.StartTime     = RadTimePicker1.SelectedTime.Value.Ticks;
                        rdt.EndTime       = RadTimePicker2.SelectedTime.Value.Ticks;
                        rdt.RequestId     = req.ID;
                        req.DateTimeRange = new List <RequestDateTime>();
                        req.DateTimeRange.Add(rdt);
                    }
                    else
                    {
                        string scrp = "تاریخ درخواست باید بعد از تاریخ امروز باشد.";
                        RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");
                        //ScriptManager.RegisterStartupScript(this, this.GetType(), "alert", scrp, true);
                        return;
                    }
                }
                else
                {
                    if (CheckReqDate(pcal1.Text) && CheckReqDate(pcal2.Text))
                    {
                        req.DateTimeRange = FillRequestDateTime(pcal1.Text, pcal2.Text, RadTimePicker1.SelectedTime, RadTimePicker2.SelectedTime, chblWeekDates, req.ID);
                    }
                    else
                    {
                        string scrp = "تاریخ درخواست باید بعد از تاریخ امروز باشد.";//باید این پیام عوض شود.
                        RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");
                        //ScriptManager.RegisterStartupScript(this, this.GetType(), "alert", scrp, true);
                        return;
                    }
                }
                req.IssuerID   = user.ID;
                req.IssuerName = user.Name;
                if ((bool)Session["isMeeting"])
                {
                    trProfCrs.Visible = false;
                }
                CourseHandler corH = new CourseHandler();
                courselist = corH.GetCourseListByUserID(user.ID);
                int coursedid = Convert.ToInt32(drpCourse.SelectedValue);
                req.Capacity   = courselist.Find(i => i.DID == coursedid).Capacity;
                req.CourseName = drpCourse.SelectedItem.ToString();
                req.DaneshID   = courselist.Find(i => i.DID == coursedid).DaneshID;
                req.CourseDID  = coursedid;
                req.Capacity   = Convert.ToInt32(txtCapacity.Text);
                req.Issue_time = DateTime.Now.ToPeString();
                if (CheckReqDate(pcal1.Text))
                {
                    //req.Sessiondate = pcal1.Text;
                }
                else
                {
                    string scrp = "تاریخ درخواست باید بعد از تاریخ امروز باشد";
                    RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");
                    return;
                }

                optlist = new List <Option>();
                foreach (ListItem item in chblOptions.Items)
                {
                    Option optstat = new Option();
                    optstat.ID       = Convert.ToInt32(item.Value);
                    optstat.Name     = item.Text;
                    optstat.IsActive = item.Selected;
                    optlist.Add(optstat);
                }
                if (RequestHandler.IsNotSpecifiedDay(DayOfWeek.Friday, req.DateTimeRange))
                {
                    string scrp = "در روز جمعه امکان برگزاری وجود ندارد";
                    RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");

                    return;
                }
                try
                {
                    RequestHandler rq = new RequestHandler();
                    req.Status = 1;//sent
                    int reqid = rq.EditRequest(req, optlist);


                    var commanBusiness = new CommonBusiness();
                    userID = Convert.ToInt32(Session[sessionNames.userID_Karbar]);
                    commanBusiness.InsertIntoUserLog(userID, "", 11, 115, "تایید آموزش درخواست رزرواسیون", reqid);



                    var    address       = ViewState["GoBackTo"].ToString();
                    string resdirectFunc = "function redirectToLast(){ window.location= '" + address + "' ; }";
                    string scrp          = "درخواست شما با شماره " + reqid.ToString() + " با موفقیت ویرایش و ثبت گردید";
                    RadWindowManager1.RadAlert(scrp, 300, 100, "پیام سیستم", resdirectFunc);
                }
                catch (Exception)
                {
                    throw;
                }
            }
        }
        private void CreateRequest()
        {
            RequestFR req = new RequestFR();

            req.CatID    = Convert.ToInt32(drpCategory.SelectedValue);
            req.Subject  = "nosub";
            req.Note     = txtDescription.Text;
            req.Location = drpLocation.SelectedValue;
            RC_User        user  = new RC_User();
            RC_UserHandler us    = new RC_UserHandler();
            var            user1 = Session["UserName"].ToString();

            //user = us.Get_Ostad_DetailsByCourseId(Convert.ToInt32(drpCourse.SelectedValue));
            req.IssuerID   = int.Parse(Session[sessionNames.userID_Karbar].ToString());
            req.IssuerName = Session["UserName"].ToString();
            //int coursedid = Convert.ToInt32(drpCourse.SelectedValue);
            req.Capacity   = Convert.ToInt32(txtCapacity.Text);
            req.CourseName = txt_courseName.Text;
            req.DaneshID   = 5;//dorehaye kootah modat
            req.CourseDID  = 0;
            req.Issue_time = DateTime.Now.ToPeString();
            req.Status     = (int)RequestStatus.sent;
            if (chbRepeat.Checked == false)
            {
                if (CheckReqDate(pcal1.Text))
                {
                    RequestDateTime rdt = new RequestDateTime();
                    rdt.Date          = pcal1.Text;
                    rdt.StartTime     = RadTimePicker1.SelectedTime.Value.Ticks;
                    rdt.EndTime       = RadTimePicker2.SelectedTime.Value.Ticks;
                    req.DateTimeRange = new List <RequestDateTime>();
                    req.DateTimeRange.Add(rdt);
                }
                else
                {
                    string scrp = "تاریخ درخواست باید بعد از تاریخ امروز باشد.";
                    RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");
                    //ScriptManager.RegisterStartupScript(this, this.GetType(), "alert", scrp, true);
                    return;
                }
            }
            else
            {
                if (CheckReqDate(pcal1.Text) && CheckReqDate(pcal2.Text))
                {
                    req.DateTimeRange = FillRequestDateTime(pcal1.Text, pcal2.Text, RadTimePicker1.SelectedTime, RadTimePicker2.SelectedTime, chblWeekDates);
                }
                else
                {
                    string scrp = "تاریخ درخواست باید بعد از تاریخ امروز باشد.";//باید این پیام عوض شود.
                    RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");
                    //ScriptManager.RegisterStartupScript(this, this.GetType(), "alert", scrp, true);
                    return;
                }
            }

            optlist = new List <Option>();
            foreach (ListItem item in chblOptions.Items)
            {
                if (item.Selected)
                {
                    Option opt = new Option();
                    opt.ID       = Convert.ToInt32(item.Value);
                    opt.Name     = item.Text;
                    opt.IsActive = item.Selected;
                    optlist.Add(opt);
                }
            }
            RequestHandler rqh = new RequestHandler();

            //DataTable dt = rqh.HasRequestBefore(req.IssuerID, req.DateTimeRange);
            //if (dt.Rows.Count > 0)
            //{
            //    if (dt.Select().ToList().Exists(row => row["MayConflict"].ToString() == "1"))
            //    {
            //        string scrp = "تداخل در ساعت و تاریخ درخواست ، با ساعات درخواست های پیشین این استاد.";
            //        RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");

            //        return;
            //    }
            //}
            if (RequestHandler.IsNotSpecifiedDay(DayOfWeek.Friday, req.DateTimeRange))
            {
                string scrp = "در روز جمعه امکان برگزاری وجود ندارد";
                RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");

                return;
            }
            try
            {
                var address = ViewState["GoBackTo"].ToString();
                int reqid   = rqh.AddNewRequest(req, optlist, Session[sessionNames.userID_Karbar].ToString());

                var comman = new CommonBusiness();
                comman.InsertIntoUserLog(Convert.ToInt32(Session[sessionNames.userID_Karbar].ToString()), "", 11, 114, "ثبت درخواست کلاس دوره کوتاه مدت", reqid);

                string resdirectFunc = "function redirectToLast(){ window.location= '" + address + "' ; }";
                string scrp          = "درخواست شما با شماره " + reqid.ToString() + " با موفقیت ثبت گردید";
                RadWindowManager1.RadAlert(scrp, 300, 100, "پیام سیستم", resdirectFunc);
            }
            catch (Exception)
            {
                throw;
            }
        }
        private void CreateRequest()
        {
            RequestFR req = new RequestFR();

            req.CatID    = Convert.ToInt32(drpCategory.SelectedValue);
            req.Subject  = "nosub";
            req.Note     = txtDescription.Text;
            req.Location = drpLocation.SelectedValue;
            req.Status   = (int)RequestStatus.sent;
            RC_User        user = new RC_User();
            RC_UserHandler us   = new RC_UserHandler();
            CourseHandler  corH = new CourseHandler();

            if (chkMeeting.Checked == true)
            {
                req.IssuerID   = Convert.ToInt32(Session[sessionNames.userID_Karbar].ToString());
                user.Name      = Session["UserName"].ToString();
                req.IssuerName = user.Name;
                if (drpCategory.SelectedIndex == 3)
                {
                    req.CourseName = "درخواست جلسه";
                }
                else
                {
                    req.CourseName = "درخواست کلاس بدون استاد";
                }
                Session["isMeeting"] = true;
                daneshID             = Convert.ToInt32(Session["DaneshId"]);
                req.DaneshID         = daneshID;
                req.Capacity         = Convert.ToInt32(txtCapacity.Text);
            }
            else
            {
                if (UtilityFunction.IsMasouleDaftarUser(roleID))
                {
                    req.IssuerID   = Convert.ToInt32(Session[sessionNames.userID_Karbar].ToString());
                    user.Name      = Session["UserName"].ToString();
                    req.IssuerName = user.Name;
                    if (drpCategory.SelectedIndex == 3)
                    {
                        req.CourseName = "درخواست جلسه";
                    }
                    else
                    {
                        req.CourseName = "درخواست کلاس بدون استاد";
                    }
                    Session["isMeeting"] = true;
                    daneshID             = Convert.ToInt32(Session["DaneshId"]);
                    req.DaneshID         = daneshID;
                    req.Capacity         = Convert.ToInt32(txtCapacity.Text);
                }
                else
                {
                    req.IssuerID = Convert.ToInt32(RadComboBoxField.SelectedValue.ToString());

                    user           = us.Get_Ostad_Details(req.IssuerID);
                    req.IssuerName = user.Name;
                    courselist     = corH.GetCourseListByUserID(req.IssuerID);
                    int coursedid = Convert.ToInt32(drpCourse.SelectedValue);
                    req.Capacity   = Convert.ToInt32(txtCapacity.Text);
                    req.CourseName = drpCourse.SelectedItem.ToString();
                    req.DaneshID   = courselist.Find(i => i.DID == coursedid).DaneshID;
                    req.CourseDID  = coursedid;
                }
            }
            req.Issue_time = DateTime.Now.ToPeString();

            if (chbRepeat.Checked == false)
            {
                if (CheckReqDate(pcal1.Text))
                {
                    RequestDateTime rdt = new RequestDateTime();
                    rdt.Date          = pcal1.Text;
                    rdt.StartTime     = RadTimePicker1.SelectedTime.Value.Ticks;
                    rdt.EndTime       = RadTimePicker2.SelectedTime.Value.Ticks;
                    req.DateTimeRange = new List <RequestDateTime>();
                    req.DateTimeRange.Add(rdt);
                }
                else
                {
                    string scrp = "تاریخ درخواست باید بعد از تاریخ امروز باشد.";
                    RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");
                    //ScriptManager.RegisterStartupScript(this, this.GetType(), "alert", scrp, true);
                    return;
                }
            }
            else
            {
                if (CheckReqDate(pcal1.Text) && CheckReqDate(pcal2.Text))
                {
                    req.DateTimeRange = FillRequestDateTime(pcal1.Text, pcal2.Text, RadTimePicker1.SelectedTime, RadTimePicker2.SelectedTime, chblWeekDates);
                }
                else
                {
                    string scrp = "تاریخ درخواست باید بعد از تاریخ امروز باشد.";//باید این پیام عوض شود.
                    RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");
                    //ScriptManager.RegisterStartupScript(this, this.GetType(), "alert", scrp, true);
                    return;
                }
            }

            optlist = new List <Option>();
            foreach (ListItem item in chblOptions.Items)
            {
                if (item.Selected)
                {
                    Option opt = new Option();
                    opt.ID       = Convert.ToInt32(item.Value);
                    opt.Name     = item.Text;
                    opt.IsActive = item.Selected;
                    optlist.Add(opt);
                }
            }
            RequestHandler rqh = new RequestHandler();
            DataTable      dt  = rqh.HasRequestBefore(req.IssuerID, req.DateTimeRange);

            if (dt.Rows.Count > 0)
            {
                if (dt.Select().ToList().Exists(row => row["MayConflict"].ToString() == "1"))
                {
                    string scrp = "تداخل در ساعت و تاریخ درخواست ، با ساعات درخواست های پیشین این استاد.";
                    RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");

                    return;
                }
            }

            if (RequestHandler.IsNotSpecifiedDay(DayOfWeek.Friday, req.DateTimeRange))
            {
                string scrp = "در روز جمعه امکان برگزاری وجود ندارد";
                RadWindowManager1.RadAlert(scrp, 300, 100, "خطا", "");

                return;
            }
            try
            {
                int reqid  = rqh.AddNewRequest(req, optlist, Session[sessionNames.userID_Karbar].ToString());
                var comman = new CommonBusiness();
                comman.InsertIntoUserLog(userID, "", 11, 114, "ثبت درخواست کلاس ", reqid);



                string scrp          = "درخواست شما با شماره " + reqid.ToString() + " با موفقیت ثبت گردید";
                string address       = prevPage + "?id=" + generaterandomstr() + "@A" + "0" + "-" + generaterandomstr();
                string resdirectFunc = "function redirectToLast(){ window.location= '" + address + "' ; }";
                RadWindowManager1.RadAlert(scrp, 300, 100, "پیام سیستم", resdirectFunc);

                //ScriptManager.RegisterStartupScript(this, this.GetType(), "alert", scrp, true);
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 20
0
        private void ToEditMode(int reqID)
        {
            trOptions.Visible   = true;
            chblOptions.Enabled = true;
            drpLocation.Enabled = false;
            RequestHandler  reqH = new RequestHandler();
            RequestFR       req  = reqH.GetRequestDetails(reqID);
            CategoryHandler cth  = new CategoryHandler();

            catlist = cth.GetCategoryList();
            drpCategory.DataSource     = catlist;
            drpCategory.DataTextField  = "name";
            drpCategory.DataValueField = "ID";
            drpCategory.DataBind();
            drpCategory.Items.Insert(0, "انتخاب کنید");
            drpCategory.Items.FindByValue(req.CatID.ToString()).Selected = true;
            OptionHandler opt = new OptionHandler();

            optlist = opt.GetOptionListByCatID(req.CatID);
            chblOptions.DataSource     = optlist;
            chblOptions.DataTextField  = "name";
            chblOptions.DataValueField = "ID";
            chblOptions.DataBind();
            List <Req_Opt_Junc> res_opt_junlist = new List <Req_Opt_Junc>();
            Req_Opt_JuncHandler rsopt           = new Req_Opt_JuncHandler();

            res_opt_junlist = rsopt.GetReq_Opt_JuncListByReqID(reqID);
            if (res_opt_junlist != null)
            {
                for (int i = 0; i < res_opt_junlist.Count; i++)
                {
                    if (res_opt_junlist[i].IsActive == true)
                    {
                        chblOptions.Items.FindByValue(res_opt_junlist[i].Opt_id.ToString()).Selected = true;
                    }
                }
            }
            RC_UserHandler usrh  = new RC_UserHandler();
            RC_User        ostad = usrh.Get_Ostad_Details(req.IssuerID);

            drpProfessor.Items.Insert(0, ostad.Name);
            drpProfessor.Enabled = false;

            CourseHandler corH = new CourseHandler();

            courselist               = corH.GetCourseListByUserID(req.IssuerID);
            drpCourse.DataSource     = courselist;
            drpCourse.DataTextField  = "name";
            drpCourse.DataValueField = "DID";
            drpCourse.DataBind();
            if (req.CourseName == "درخواست جلسه")
            {
                Session["isMeeting"] = true;
            }
            else
            {
                Session["isMeeting"] = false;
            }
            if ((bool)Session["isMeeting"])
            {
                trProfCrs.Visible = false;
            }
            LocationHandler locH = new LocationHandler();

            drpLocation.DataSource     = locH.GetLocationListByCatID(Convert.ToInt32(drpCategory.SelectedValue));
            drpLocation.DataTextField  = "name";
            drpLocation.DataValueField = "ID";
            drpLocation.DataBind();
            drpLocation.Items.FindByText(req.Location).Selected = true;
            txtCapacity.Text    = req.Capacity.ToString();
            txtDescription.Text = req.Note;
            if (req.CourseDID != 0)
            {
                drpCourse.Items.FindByValue(req.CourseDID.ToString()).Selected = true;
            }

            var datetimelist = req.DateTimeRange;

            //Set a Time and Date of Request

            var requestStartTime = datetimelist.FirstOrDefault(c => c.StartTime != 0);

            if (requestStartTime != null)
            {
                var startTime = TimeSpan.FromTicks(requestStartTime.StartTime);
                RadTimePicker1.SelectedTime = startTime;
            }

            var requestEndTime = datetimelist.FirstOrDefault(c => c.StartTime != 0);

            if (requestEndTime != null)
            {
                var endTime = TimeSpan.FromTicks(requestEndTime.EndTime);
                RadTimePicker2.SelectedTime = endTime;
            }

            var requestDateTime = datetimelist.FirstOrDefault(c => c.StartTime != 0);

            if (requestDateTime != null)
            {
                pcal1.Text = requestDateTime.Date;
            }

            if (datetimelist.Count > 1)
            {
                chbRepeat.Checked = true;
                dvEndDate.Visible = true;
                string scrp2 = "var objCal1 = new AMIB.persianCalendar('ContentPlaceHolder1_pcal2', {extraInputID: 'ContentPlaceHolder1_pcal2',extraInputFormat: 'yyyy/mm/dd'}); ";
                ScriptManager.RegisterStartupScript(this, GetType(), ClientID, scrp2, true);
                var listOfDay = new List <string>();
                foreach (RequestDateTime dateTime in datetimelist.OrderBy(c => c.Date))
                {
                    var dateSplit = dateTime.Date.Split('/');
                    var d         = new DateTime(Convert.ToInt32(dateSplit[0]), Convert.ToInt32(dateSplit[1]), Convert.ToInt32(dateSplit[2]), new PersianCalendar());
                    listOfDay.Add(d.DayOfWeek.ToString());
                }


                var listOfDayforRequest = listOfDay.Distinct();

                var lastOrDefault = datetimelist.OrderBy(d => d.Date).LastOrDefault();
                if (lastOrDefault != null)
                {
                    var endDateRequest = lastOrDefault.Date;
                    pcal2.Text = endDateRequest;
                }
                foreach (var day in listOfDayforRequest)
                {
                    switch (day)
                    {
                    case "Friday":

                        chblWeekDates.Items[6].Selected = true;
                        break;

                    case "Saturday":
                        chblWeekDates.Items[0].Selected = true;
                        break;

                    case "Sunday":
                        chblWeekDates.Items[1].Selected = true;
                        break;

                    case "Monday":
                        chblWeekDates.Items[2].Selected = true;
                        break;

                    case "Tuesday":
                        chblWeekDates.Items[3].Selected = true;
                        break;

                    case "Wednesday":
                        chblWeekDates.Items[4].Selected = true;
                        break;

                    case "Thursday":
                        chblWeekDates.Items[5].Selected = true;
                        break;
                    }
                }
            }

            grdOldDateTime.DataSource = datetimelist.OrderBy(d => d.Date);
            grdOldDateTime.DataBind();

            btnEditRequest.Enabled = true;
            btnEditRequest.Visible = true;

            if (drpCategory.SelectedIndex == 1)
            {
                txtCapacity.Text     = 1.ToString();
                txtCapacity.ReadOnly = true;
            }
        }