Beispiel #1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="requestAction"></param>
 /// <returns></returns>
 public bool MoveToNextStep(RequestComment requestAction)
 {
     SetCurrentAction(requestAction);
     if (dataworkflowRequest.ChangeStep(this.RequestID, this.CurrentStep, (int)this.Status, this.ActionSatus, this.LastActionBy, this.LastAction))
     {
         requestAction.Save();
     }
     return(true);
 }
Beispiel #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="requestAction"></param>
 private void SetCurrentAction(RequestComment requestAction)
 {
     UserAction               = GetAction(requestAction.StepID, requestAction.ActionID);
     this.LastAction          = requestAction.ActionID;
     this.LastActionBy        = requestAction.CommentedBy;
     this.RecentComment       = requestAction.Comments;
     this.CurrentStep         = UserAction.GetNextStep();
     this.ActionSatus         = UserAction.GetStatusAsText();
     requestAction.Status     = UserAction.GetStatusAsText();
     requestAction.NextStepID = this.CurrentStep;
 }
Beispiel #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="requestAction"></param>
        /// <returns></returns>
        public bool Retract(RequestComment requestAction)
        {
            RequestComment rc = this.RequestTracks.Where(a => a.NextStepID == this.CurrentStep && a.WorkflowID == this.ID).FirstOrDefault();

            if (dataworkflowRequest.ChangeStep(this.RequestID, rc.StepID, (int)this.Status, "Retracted", this.LastActionBy, this.LastAction))
            {
                if (rc.Delete())
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Beispiel #4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="requestedBy"></param>
        /// <param name="requestFor"></param>
        /// <param name="requestAction"></param>
        /// <returns></returns>
        public bool RaiseRequest(int requestedBy, int requestFor, RequestComment requestAction)
        {
            Core.Action _action = new Core.Action();
            _action = GetAction(requestAction.StepID, requestAction.ActionID);

            this.CurrentStep     = _action.GetNextStep();
            this.RequestedBy     = requestedBy;
            this.RequestedFor    = requestFor;
            this.LastAction      = requestAction.ActionID;
            this.LastActionBy    = requestAction.CommentedBy;
            this.RecentComment   = requestAction.Comments;
            this.ActionSatus     = _action.GetStatusAsText();
            requestAction.Status = _action.GetStatusAsText();

            if (this.RequestID > 0)
            {
                SetRequestNo();
                if (this.RequestNo == "-1")
                {
                    return(false);
                }
                this.RequestID = dataworkflowRequest.Save(this.RequestNo, Name, RequestedBy, RequestedFor, ID, CurrentStep, (int)Status,
                                                          ActionSatus, LastActionBy, LastAction);
                if (this.RequestID > 0)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Beispiel #5
0
        /// <summary>
        ///
        /// </summary>
        private void LoadComments()
        {
            DataTable dt = new DataTable();

            dt = dataworkflowRequest.GetRequestFlow(this.RequestID);
            foreach (DataRow dr in dt.Rows)
            {
                int    _step, actionid, commentedby = 0;
                string comments = "";
                actionid    = dr.IsNull("ActionID") == true ? -1 : (int)dr["ActionID"];
                commentedby = dr.IsNull("CommentedBy") == true ? -1 : (int)dr["CommentedBy"];
                _step       = dr.IsNull("StepID") == true ? -1 : (int)dr["stepID"];
                comments    = dr.IsNull("comments") == true ? "" : (string)dr["comments"];

                RequestComment rc = new RequestComment(_step, actionid, commentedby, comments);
                rc.RequestID   = this.RequestID;
                rc.WorkflowID  = this.ID;
                rc.CommentOn   = dr.IsNull("CommentsOn") == true ? DateTime.MinValue : (DateTime)dr["CommentsOn"];
                rc.NextStepID  = dr.IsNull("NextStepID") == true ? -1 : (int)dr["NextStepID"];
                rc.Status      = dr.IsNull("Status") == true ? "" : (string)dr["Status"];
                rc.Attachments = dr.IsNull("attachment") == true ? new List <string> (): dr["attachment"].ToString().Split(',').ToList();
                this.RequestTracks.Add(rc);
            }
        }