/// <summary>
        /// Fill the drop down
        /// </summary>
        private void FillPriorityRequestRadComboBox()
        {
            var requestTypeManager    = new RequestTypeManager();
            var submitRequestWorkFlow = new SubmitRequestWorkFlow();
            var q = submitRequestWorkFlow.GetWorkflowTasks();

            workFlowRadComboBox.DataTextField  = "TaskTitle";
            workFlowRadComboBox.DataValueField = "TaskID";
            workFlowRadComboBox.DataSource     = q;
            workFlowRadComboBox.DataBind();
        }
        private void PopulatePriorityTab()
        {
            var priorityManager = new PriorityManager();

            rblPriorities.DataSource = priorityManager.GetQuery().Select(p => new { Value = p.Weight, Text = p.Title });
            rblPriorities.DataBind();

            var ti = SubmitRequestWorkFlow.GetLastStateOfTaskInstance(RequestEntity);

            SetCurrentPriority(ti.PriorityID);
        }
        protected void btnEditPriority_Click(object sender, EventArgs e)
        {
            var priorityNo = rblPriorities.SelectedValue;

            var priority = string.IsNullOrEmpty(priorityNo) ? 10 : int.Parse(priorityNo);

            var ti = SubmitRequestWorkFlow.GetLastStateOfTaskInstance(RequestEntity);

            var wfService = new HelpdeskWorkflowService();

            wfService.UpdatePriority(ti.TaskInstanceID, priority);
            //Response.Redirect("<script>alert('الویت درخواست با موفقیت بروز رسانی شد')</script>");
        }
Beispiel #4
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         var requestTypeManager    = new RequestTypeManager();
         var submitRequestWorkFlow = new SubmitRequestWorkFlow();
         var _Statuse = submitRequestWorkFlow.GetWorkflowTasks();
         foreach (var stat in _Statuse)
         {
             var li = new RadComboBoxItem {
                 Text = stat.TaskTitle, Value = stat.TaskID.ToString()
             };
             RadComboBoxStatuse.Items.Add(li);
         }
     }
 }
Beispiel #5
0
        //-----------------------------------------------------------------------------------------
        #region "Request Status"

        private List <long> GetListRequestByStatus(long _Status, List <BusinessObjects.Request> _Requests)
        {
            List <long> status = new List <long>();

            var requests = _Requests.ToList();;
            var submitRequestWorkFlow = new SubmitRequestWorkFlow();

            var ridList = requests.Select(r => r.RequestID.ToString()).ToList();
            var dic     = submitRequestWorkFlow.LastTaskInstanceGetByEntityID(ridList).Where(t => t.Value.TaskID == _Status);;

            foreach (var r in dic)
            {
                status.Add(long.Parse(r.Key));
            }
            return(status);
        }
Beispiel #6
0
        public RequestBusinessActions(DateTime?toDate, DateTime?fromDate, long taskId, bool isWorkFlow)
        {
            if (isWorkFlow)
            {
                var q = new RequestManager().GetQuery();

                if (fromDate != null)
                {
                    q.Where(r => r.InsertDate >= fromDate);
                }
                if (toDate != null)
                {
                    q.Where(r => r.InsertDate <= toDate);
                }

                var requests = q.ToList();


                var submitRequestWorkFlow = new SubmitRequestWorkFlow();
                var ownnerEntityIdList    = requests.Select(r => r.OwnnerEntityID).Distinct().ToList();
                var entityQuery           = new EntityManager().GetSpecificEntityItem(ownnerEntityIdList);
                var ridList = requests.Select(r => r.RequestID.ToString()).ToList();
                var dic     = submitRequestWorkFlow.LastTaskInstanceGetByEntityID(ridList);

                RequestCollection = (from d in requests
                                     from i in dic
                                     from p in entityQuery
                                     where
                                     (
                                         d.RequestID.ToString() == i.Key &&
                                         d.OwnnerEntityID == p.EntityID &&
                                         i.Value.TaskID == taskId
                                     )
                                     select new RequestBusinessActions
                {
                    RequestId = d.RequestID,
                    RegisterByName = d.RegisterByName,
                    InsertDate = Convertor.ToPersianDate(d.InsertDate),
                    OptionalLocation = d.OptionalLocation,
                    //RequestPriority = d.RequestPriority,
                    CurrentStatusTitle = i.Value.TaskTitle,
                    RequertTypeId = d.RequestTypeID,
                    //RequestTypeTitle = d.RequestType.Title,
                    RequesterID = p.PersonalCardNo
                }).OrderBy(p => p.RequestTypeTitle).ToList();
            }
        }
Beispiel #7
0
        private void SetRequestCollection(List <Request> requests)
        {
            var submitRequestWorkFlow = new SubmitRequestWorkFlow();
            var ownnerEntityIdList    = requests.Select(r => r.OwnnerEntityID).Distinct().ToList();
            var entityQuery           = new EntityManager().GetSpecificEntityItem(ownnerEntityIdList);
            var ridList = requests.Select(r => r.RequestID.ToString()).ToList();
            var dic     = submitRequestWorkFlow.LastTaskInstanceGetByEntityID(ridList);

            RequestCollection = (from r in requests
                                 join d in dic on r.RequestID.ToString() equals d.Key
                                 join t in entityQuery on r.OwnnerEntityID equals t.EntityID
                                 select new RequestBusinessActions
            {
                RequestId = r.RequestID,
                RegisterByName = r.RegisterByName,
                InsertDate = Convertor.ToPersianDate(r.InsertDate).ToPersinDigit(),
                OptionalLocation = r.OptionalLocation,
                //RequestPriorityID = r.RequestPriority,
                CurrentStatusTitle = d.Value.TaskTitle,
                RequertTypeId = r.RequestTypeID,
                //RequestTypeTitle = r.RequestType.Title,
                RequesterID = t.PersonalCardNo
            }).OrderBy(r => r.RequestTypeTitle).ToList();
        }
Beispiel #8
0
        //-----------------------------------------------------------------------------------------
        protected void RadButtonOk_Click(object sender, EventArgs e)
        {
            EntityManager entityManager = new EntityManager();
            TaskManager   taskManager   = new TaskManager();
            var           _Requests     = new RequestManager().GetQuery().ToList();

            #region " Where Date"
            //-----  Where Date ----
            if (CheckBoxRequestDate.Checked)
            {
                var fromDate = FromDateTextBox.Text.ConvertToDateTime();
                var toDate   = ToDateTextBox.Text.ConvertToDateTime();

                if (FromDateTextBox.Text != "")
                {
                    _Requests = _Requests.Where(r => r.InsertDate >= fromDate).ToList();
                }

                if (ToDateTextBox.Text != "")
                {
                    _Requests = _Requests.Where(r => r.InsertDate <= toDate).ToList();
                }
            }

            // ----  Where RequestType ----
            if (CheckBoxRequestType.Checked)
            {
                long _Type = Convert.ToInt64(ValueRequestType.Value);
                if (_Type != 0)
                {
                    var ListType = GetListType(_Type);
                    _Requests = _Requests.Where(r => ListType.Contains(r.RequestTypeID)).ToList();
                }
            }

            // ----- Where RequestOwnner ----
            if (CheckBoxRequestOwnner.Checked)
            {
                long _Ownner = Convert.ToInt64(ValueRequestOwnner.Value);
                if (_Ownner != 0)
                {
                    var ListOwnner = GetListUser(_Ownner);
                    _Requests = _Requests.Where(r => ListOwnner.Contains(r.RegisteredByEntityID.Value)).ToList();
                }
            }

            // ---- where RequestRegister ------

            if (CheckBoxRequestRegisterer.Checked)
            {
                long _Registerer = Convert.ToInt64(ValueRequestRegisterer.Value);
                if (_Registerer != 0)
                {
                    var ListRegisterer = GetListUser(_Registerer);
                    _Requests = _Requests.Where(r => ListRegisterer.Contains(r.OwnnerEntityID.Value)).ToList();
                }
            }

            // ----  Where RequestLocation ----
            if (CheckBoxRequestLocation.Checked)
            {
                long _Location = Convert.ToInt64(ValueRequestLocation.Value);
                if (_Location != 0)
                {
                    var ListLocation = GetListLocation(_Location);
                    _Requests = _Requests.Where(r => ListLocation.Contains(r.OptionalLocationID.Value)).ToList();
                }
            }

            // ----  Where RequestOrganization ----
            if (CheckBoxRequestOrganization.Checked)
            {
                long _Organization = Convert.ToInt64(ValueRequestOrganization.Value);
                if (_Organization != 0)
                {
                    var ListOrganization = GetListOrganization(_Organization);
                    var _entitys         = entityManager.GetQuery().Where(en => ListOrganization.Contains(en.OrganizationID1.Value)).Select(c => c.EntityID).ToList();
                    _Requests = _Requests.Where(r => _entitys.Contains(r.RegisteredByEntityID.Value)).ToList();
                }
            }

            // ----  Where RequestPriority ----
            if (CheckBoxRequestPriority.Checked)
            {
                long _Priority = Convert.ToInt64(ValueRequestPriority.Value);
                if (_Priority != 0)
                {
                    _Requests = _Requests.Where(r => r.RequestPriority == _Priority).ToList();
                }
            }

            // ----  Where RequestAssetNummber ----
            if (CheckBoxRequestAssetNummber.Checked)
            {
                if (ValueRequestAssetNummber.Value.Trim() != "")
                {
                    long _AssetNummber = Convert.ToInt64(ValueRequestAssetNummber.Value);
                    if (_AssetNummber != 0)
                    {
                        string _Asset = _AssetNummber.ToString();
                        _Requests = _Requests.Where(r => r.AssetNummber == _Asset).ToList();
                    }
                }
            }

            // ----  Where RequestStatus ----
            if (CheckBoxRequestStatus.Checked)
            {
                long _Status = Convert.ToInt64(ValueRequestStatus.Value);
                if (_Status != 0)
                {
                    var ListStatus = GetListRequestByStatus(_Status, _Requests);
                    _Requests = _Requests.Where(r => ListStatus.Contains(r.RequestID)).ToList();
                }
            }

            // ----  Where RequestWorker ----
            var _ListWorkerClass = new List <Worker>();

            if (CheckBoxRequestWorker.Checked)
            {
                long _Worker = Convert.ToInt64(ValueRequestWorker.Value);
                if (_Worker != 0)
                {
                    var ListWorkerClass = GetListRequestByWorker(_Worker, _Requests);
                    _ListWorkerClass = ListWorkerClass;
                    var ListWorker = ListWorkerClass.Select(c => c.RequestID);
                    _Requests = _Requests.Where(r => ListWorker.Contains(r.RequestID)).ToList();
                }
            }



            #region " Report for Expert SuperVisor"


            // Report for Expert SuperVisor

            EntityManager _entityManager = new EntityManager();

            MemberManager memberManager = new MemberManager();
            //var rol = memberManager.GetGroupOfUser(Utility.CurrentUserID).FirstOrDefault();
            var rol = memberManager.FirstOrDefault(p => p.EntityID2 == Utility.CurrentUserID).Entity;

            if (rol.EntityID != 10186)// for Operating Group
            {
                var ListWorkerClass = GetListRequestByWorker(Utility.CurrentUserID, _Requests);
                _ListWorkerClass = ListWorkerClass;
                var ListWorker = ListWorkerClass.Select(c => c.RequestID);
                _Requests = _Requests.Where(r => ListWorker.Contains(r.RequestID)).ToList();
            }



            #endregion

            #endregion
            #region " Import Date in SendRequest Report"
            //------------- Import Date in SendRequest Report------------

            var submitRequestWorkFlow = new SubmitRequestWorkFlow();
            var _ListSendReport       = new List <SendReport>();

            foreach (var r in _Requests)
            {
                SendReport _SendReport = new SendReport();
                _SendReport.RequestID         = r.RequestID;
                _SendReport.Location          = (r.OptionalLocation == null || r.OptionalLocation == "") ? " " : r.OptionalLocation;
                _SendReport.OrginalInsertDate = r.InsertDate;
                if (CheckBoxShowInsertDate.Checked)
                {
                    _SendReport.InsertDate = UIUtils.ToPersianDate(r.InsertDate).ToPersianDigit();
                }
                if (CheckBoxShowOwnnerName.Checked)
                {
                    _SendReport.OwnnerName = entityManager.GetQuery(it => it.EntityID == r.RegisteredByEntityID).FirstOrDefault().Title.ToString();
                }
                if (CheckBoxShowRegisteredName.Checked)
                {
                    _SendReport.RegisteredName = entityManager.GetQuery(it => it.EntityID == r.OwnnerEntityID).FirstOrDefault().Title.ToString();
                }

                if (CheckBoxShowRequestPriority.Checked)
                {
                    _SendReport.RequestPriority = r.Priority.Title;
                }

                if (CheckBoxShowRequestType.Checked)
                {
                    _SendReport.RequestType = r.RequestType.Title;
                }

                if (CheckBoxShowStatus.Checked)
                {
                    var s1 = submitRequestWorkFlow.LastTaskInstanceGetByEntityID(new List <string> {
                        r.RequestID.ToString()
                    }).FirstOrDefault().Value;
                    string stat = (s1 == null) ? "بررسی درخواست توسط پیشخوان" : s1.TaskTitle.ToString();
                    _SendReport.Status = stat;
                }

                _SendReport.AssetNummber = r.AssetNummber != null ? r.AssetNummber:" ";

                if (CheckBoxShowOrganization.Checked)
                {
                    if (entityManager.GetQuery(it => it.EntityID == r.RegisteredByEntityID).FirstOrDefault().OrganizationChart != null)
                    {
                        _SendReport.Organization = entityManager.GetQuery(it => it.EntityID == r.RegisteredByEntityID).FirstOrDefault().OrganizationChart.Title.ToString();
                    }
                    else
                    {
                        _SendReport.Organization = "ساختار سازمانی ندارد";
                    }
                }


                if (CheckBoxShowWorker.Checked)
                {
                    var WorkerCode = _ListWorkerClass.Where(it => it.RequestID == r.RequestID).FirstOrDefault();
                    if (WorkerCode != null)
                    {
                        string WorkerName = entityManager.GetQuery(p => p.PersonalCardNo == WorkerCode.WorkerPersonalCardNo).FirstOrDefault().Title.ToString();
                        _SendReport.WorkerName = WorkerName;
                    }
                }

                _ListSendReport.Add(_SendReport);
            }
            #endregion



            #region " Sorting Column"
            // --- Sorting Column
            string sortingValue = RadComboBoxSorting.SelectedValue.ToString();
            switch (sortingValue)
            {
            case "0000":
                break;

            case "RequestType":
                _ListSendReport = _ListSendReport.OrderBy(c => c.RequestType).ThenBy(c => c.OrginalInsertDate).ToList();
                break;

            case "OwnnerName":
                _ListSendReport = _ListSendReport.OrderBy(c => c.OwnnerName).ThenBy(c => c.OrginalInsertDate).ToList();
                break;

            case "Location":
                _ListSendReport = _ListSendReport.OrderBy(c => c.Location).ThenBy(c => c.OrginalInsertDate).ToList();
                break;

            case "RegisteredName":
                _ListSendReport = _ListSendReport.OrderBy(c => c.RegisteredName).ThenBy(c => c.OrginalInsertDate).ToList();
                break;

            case "Status":
                _ListSendReport = _ListSendReport.OrderBy(c => c.Status).ThenBy(c => c.OrginalInsertDate).ToList();
                break;

            case "Organization":
                _ListSendReport = _ListSendReport.OrderBy(c => c.Organization).ThenBy(c => c.OrginalInsertDate).ToList();
                break;

            case "RequestID":
                _ListSendReport = _ListSendReport.OrderBy(c => c.RequestID).ThenBy(c => c.OrginalInsertDate).ToList();
                break;

            case "RequestPriority":
                _ListSendReport = _ListSendReport.OrderBy(c => c.RequestPriority).ThenBy(c => c.OrginalInsertDate).ToList();
                break;

            case "AssetNummber":
                _ListSendReport = _ListSendReport.OrderBy(c => c.AssetNummber).ThenBy(c => c.OrginalInsertDate).ToList();
                break;

            case "Worker":
                _ListSendReport = _ListSendReport.OrderBy(c => c.WorkerName).ThenBy(c => c.OrginalInsertDate).ToList();
                break;
            }

            #endregion
            #region " Send to Stimul Reporter"

            // ----   Send to Stimul Reporter
            var report = new StiReport();

            string path         = "";
            double _WidthColumn = WidthColumn();
            if (_WidthColumn < 18)
            {
                path = Server.MapPath("PublicRequestReport.mrt");
            }
            else
            {
                path = Server.MapPath("PublicRequestReportLandScape.mrt");
            }
            report.Load(path);
            report.Compile();
            report.RegBusinessObject("PublicReport", "PublicReport", _ListSendReport);
            report.RegBusinessObject("PublicReport", "PublicReport", _ListSendReport);
            var persianDate = ReportTextHelper.GetPersianDate();
            report["TodayDate"] = persianDate;


            //Show Column in stimul

            if (CheckBoxShowRequestID.Checked)
            {
                report["ShowRequestID"] = "true";
            }
            else
            {
                report["ShowRequestID"] = "false";
            }

            if (CheckBoxShowRequestType.Checked)
            {
                report["ShowRequestType"] = "true";
            }
            else
            {
                report["ShowRequestType"] = "false";
            }

            if (CheckBoxShowRequestPriority.Checked)
            {
                report["ShowRequestPriority"] = "true";
            }
            else
            {
                report["ShowRequestPriority"] = "false";
            }

            if (CheckBoxShowOwnnerName.Checked)
            {
                report["ShowOwnnerName"] = "true";
            }
            else
            {
                report["ShowOwnnerName"] = "false";
            }

            if (CheckBoxShowRegisteredName.Checked)
            {
                report["ShowRegisteredName"] = "true";
            }
            else
            {
                report["ShowRegisteredName"] = "false";
            }

            if (CheckBoxShowLocation.Checked)
            {
                report["ShowLocation"] = "true";
            }
            else
            {
                report["ShowLocation"] = "false";
            }

            if (CheckBoxShowStatus.Checked)
            {
                report["ShowStatus"] = "true";
            }
            else
            {
                report["ShowStatus"] = "false";
            }

            if (CheckBoxShowInsertDate.Checked)
            {
                report["ShowInsertDate"] = "true";
            }
            else
            {
                report["ShowInsertDate"] = "false";
            }

            if (CheckBoxShowAssetNummber.Checked)
            {
                report["ShowAssetNummber"] = "true";
            }
            else
            {
                report["ShowAssetNummber"] = "false";
            }

            if (CheckBoxShowOrganization.Checked)
            {
                report["ShowOrganization"] = "true";
            }
            else
            {
                report["ShowOrganization"] = "false";
            }

            if (CheckBoxShowWorker.Checked)
            {
                report["ShowWorkerName"] = "true";
            }
            else
            {
                report["ShowWorkerName"] = "false";
            }


            Session["Stimul"] = report;
            if (_WidthColumn < 18)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "ShowDivStimul_onclick2", "javascript:window.open('ReportPopups/ViewStimul.aspx' ,'گزارش','width=930px,height=600px,directories=yes,scrollbars=yes,copyhistory=no,resizable=yes');", true);
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "ShowDivStimul_onclick2", "javascript:window.open('ReportPopups/ViewStimulLandScape.aspx' ,'گزارش','width=1000px,height=500px,directories=yes,scrollbars=yes,copyhistory=no,resizable=yes');", true);
            }

            #endregion
        }