Ejemplo n.º 1
0
        /*-----------------------------------------------------*/

        public virtual void Submit(bool aForceGenFlag)
        {
            bool            aReportGenerated = true;
            String          aURL;
            cDataObjectList aReportDOList;

            if (aForceGenFlag)
            {
                aReportDOList = WfTaskAssignmentObject.GetRelatedPropertyDataObjectList("ReportOutput");

                aReportGenerated = aReportDOList.Count > 0 &&
                                   aReportDOList[0].GetPropertyInt("GenStatus") == -1 &&
                                   aReportDOList[0].GetPropertyValue("ReportOutputData") != null;
            }

            if (aReportGenerated)
            {
                Submit(null, PostSubmitModuleName, PostSubmitModuleConfig, "");
            }
            else
            {
                aURL = ModulePage_BuildPageKeyURL(PageKey);
                aURL = cWebLib.AddQuerystringParameter(aURL, "AppNotGenerated", "True");
                Response.Redirect(aURL);
            }
        }
Ejemplo n.º 2
0
        /*-----------------------------------------------------*/

        public virtual cWfTaskAssignment SelectThirdParty(String aPersonRelationshipID, String aRoleID, String aTaskID)
        {
            cXMLDoc     aXmlDoc;
            XmlNode     aDataObjectNode;
            XmlNode     aFiltersNode;
            cDataObject aWfTaskAssgObject;
            cDataObject aPersonRelationshipDataObject;
            cDataObject aWfTaskAssgRelationshipObject;

            if (aTaskID == "")
            {
                aTaskID = WfTaskAssignmentObject.GetPropertyString("WfTaskID");
            }
            //If no selection has been made, just refresh the page
            if (aPersonRelationshipID == null || aTaskID == "")
            {
                Redirect();
                return(null);
            }
            //get the Related Person Role
            aPersonRelationshipDataObject = WebSession.DataObjectFactory.GetDataObjectFromPrimaryKey("PersonRelationship", aPersonRelationshipID);

            //check to see if this person already has a third party
            aXmlDoc = WebSession.DataObjectFactory.CreateDataObjectNode("WfTaskAssignment", out aDataObjectNode, out aFiltersNode);
            aFiltersNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentNode(aXmlDoc, "Data", "WfTaskID", aTaskID));
            aFiltersNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentNode(aXmlDoc, "Data", "PersonID", aPersonRelationshipDataObject.GetPropertyString("RelatedPersonID")));
            aFiltersNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentNode(aXmlDoc, "Data", "WfTaskRoleID", "4"));
            aFiltersNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentNode(aXmlDoc, "Data", "RefereeRoleID", aRoleID));
            aFiltersNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentNode(aXmlDoc, "Data", "GranteeProjectID", ((cEGUser)ModuleUser).GranteeProjectID.ToString()));
            aWfTaskAssgObject = WebSession.DataObjectFactory.GetDataObject(aDataObjectNode);

            if (aWfTaskAssgObject == null)
            {
                WebSession.DataObjectFactory.CreateDataObjectNode("WfTaskAssignment", out aDataObjectNode, out aFiltersNode);
                aWfTaskAssgObject = WebSession.DataObjectFactory.GetNewDataObject(aDataObjectNode);

                aWfTaskAssgObject["WfTaskID"]         = aTaskID;
                aWfTaskAssgObject["GranteeProjectID"] = ((cEGUser)ModuleUser).GranteeProjectID.ToString();
                aWfTaskAssgObject["WfTaskStatusID"]   = 3;       //3-inactive
                aWfTaskAssgObject["PersonID"]         = aPersonRelationshipDataObject["RelatedPersonID"];
                aWfTaskAssgObject["WfTaskRoleID"]     = 4;
                aWfTaskAssgObject["RefereeRoleID"]    = aRoleID;
                WebSession.DataObjectFactory.SaveDataObject(aWfTaskAssgObject);

                //create WfTaskAssignmentPersonRelationship
                WebSession.DataObjectFactory.CreateDataObjectNode("WfTaskAssignmentPersonRelationship", out aDataObjectNode, out aFiltersNode);
                aWfTaskAssgRelationshipObject = WebSession.DataObjectFactory.GetNewDataObject(aDataObjectNode);
                aWfTaskAssgRelationshipObject["WfTaskAssignmentID"]   = aWfTaskAssgObject["WfTaskAssignmentID"];
                aWfTaskAssgRelationshipObject["PersonRelationshipID"] = aPersonRelationshipID;
                WebSession.DataObjectFactory.SaveDataObject(aWfTaskAssgRelationshipObject);
            }

            return((cWfTaskAssignment)aWfTaskAssgObject);
        }
Ejemplo n.º 3
0
        /*-----------------------------------------------------*/

        public virtual void NotifyThirdParty(String aWfTaskAssignmentID, String aRedirectFlag)
        {
            cWfTaskAssignment aWfTaskAssgObject;

            aWfTaskAssgObject             = (cWfTaskAssignment)WebSession.DataObjectFactory.GetDataObjectFromPrimaryKey("WfTaskAssignment", aWfTaskAssignmentID);
            aWfTaskAssgObject["OpenDate"] = System.DBNull.Value;
            aWfTaskAssgObject.SaveData();
            aWfTaskAssgObject.SetWfTaskOutcome(WebSession.BuildOutcomeConfig(aWfTaskAssgObject.GetWfProjectTask()));
            aWfTaskAssgObject["WfTaskStatusID"] = 1;     //incomplete
            aWfTaskAssgObject["OpenDate"]       = DateTime.Now;
            WebSession.DataObjectFactory.SaveDataObject(aWfTaskAssgObject);
            WfTaskAssignmentObject.Notify_DataModified(WebSession.DataObjectFactory, null);

            WfTaskAssignmentObject.Notify_DataModified(WebSession.DataObjectFactory, null);

            if (aRedirectFlag == "True")
            {
                ModulePage.Redirect();
            }
        }
Ejemplo n.º 4
0
        /*====================================================*/

        ///<summary>
        ///selects a third party by taking a PersonRelationShip and:
        ///* creating a WfTaskAssighment for this third party role
        ///* note that the user already exists
        ///</summary>
        public virtual cWfTaskAssignment SelectThirdParty(String aPersonRelationshipID)
        {
            cDataObjectList aChildProjectTasksObjectList;

            // This following code needs to be modified if there are mutiple third parties for one project task.
            aChildProjectTasksObjectList = WfTaskAssignmentObject.GetRelatedPropertyDataObjectList("WfProjectTask.ChildProjectTasks");
            if (aChildProjectTasksObjectList.Count > 1)
            {
                cDataObject aPersonRelationshipDO = WebSession.DataObjectFactory.GetDataObjectFromPrimaryKey("PersonRelationship", aPersonRelationshipID);
                cXMLDoc     aXmlDoc;
                XmlNode     aDataObjectNode, aFiltersNode, aArgNode;
                aXmlDoc = WebSession.DataObjectFactory.CreateDataObjectNode("WfProjectTask", out aDataObjectNode, out aFiltersNode);
                aFiltersNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentNode(aXmlDoc, "Data", "ParentProjectTaskID", WfTaskAssignmentObject.GetRelatedPropertyString("WfProjectTask.WfProjectTaskID")));
                aArgNode = aFiltersNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentNode(aXmlDoc, "Data", "ID", aPersonRelationshipDO.GetPropertyString("RelatedPersonRoleID")));
                aArgNode.AppendChild(WebSession.DataObjectFactory.CreateArgumentRelatedPropertyNode(aXmlDoc, "AssignToRoleWorkgroupStaffcontact"));
                cDataObject aChildProjectTaskDO = WebSession.DataObjectFactory.GetDataObject(aDataObjectNode);
                return(SelectThirdParty(aPersonRelationshipID, aChildProjectTaskDO.GetPropertyString("WfTaskID")));
            }
            else if (aChildProjectTasksObjectList.Count == 1)
            {
                return(SelectThirdParty(aPersonRelationshipID, aChildProjectTasksObjectList[0].GetPropertyString("WfTaskID")));
            }
            return(null);
        }
Ejemplo n.º 5
0
        /*-----------------------------------------------------*/

        private cXMLDoc BuildOutcomeConfig()
        {
            cDataObject aWfProjectTask = WfTaskAssignmentObject.GetWfProjectTask();

            return(WebSession.BuildOutcomeConfig(aWfProjectTask));
        }