コード例 #1
0
        public string[] UpdateManagersWorkFlow_ManagersWorkFlowPage(string FlowState, string FlowID, string IsActiveFlow, string IsMainFlow, string strFlowPartsList)
        {
            string[] retMessage = new string[4];
            this.InitializeCulture();

            try
            {
                AttackDefender.CSRFDefender(this.Page);
                UIActionType FS           = (UIActionType)Enum.Parse(typeof(UIActionType), this.StringBuilder.CreateString(FlowState).ToUpper());
                decimal      flowID       = decimal.Parse(this.StringBuilder.CreateString(FlowID), CultureInfo.InvariantCulture);
                bool         isActiveFlow = bool.Parse(this.StringBuilder.CreateString(IsActiveFlow).ToLower());
                bool         isMainFlow   = bool.Parse(this.StringBuilder.CreateString(IsMainFlow).ToLower());
                strFlowPartsList = this.StringBuilder.CreateString(strFlowPartsList);
                IList <ManagerProxy> ManagerProxyList = new List <ManagerProxy>();

                JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
                object[]             ParamsBatchs = (object[])jsSerializer.DeserializeObject(strFlowPartsList);
                foreach (object paramBatch in ParamsBatchs)
                {
                    ManagerProxy managerProxy = new ManagerProxy();
                    managerProxy.Level = int.Parse(((Dictionary <string, object>)paramBatch)["Level"].ToString(), CultureInfo.InvariantCulture);
                    ManagerType managerType = (ManagerType)Enum.ToObject(typeof(ManagerType), int.Parse(((Dictionary <string, object>)paramBatch)["Type"].ToString(), CultureInfo.InvariantCulture));
                    managerProxy.ManagerType = managerType;
                    managerProxy.OwnerID     = Int64.Parse(((Dictionary <string, object>)paramBatch)["TypeID"].ToString(), CultureInfo.InvariantCulture);
                    ManagerProxyList.Add(managerProxy);
                }

                switch (FS)
                {
                case UIActionType.ADD:
                    this.FlowBusiness.UpdateManagerFlows_onOrganizationFlowInsert(flowID, isActiveFlow, isMainFlow, ManagerProxyList);
                    break;

                case UIActionType.EDIT:
                    this.FlowBusiness.UpdateManagerFlows_onOrganizationFlowUpdate(flowID, isActiveFlow, isMainFlow, ManagerProxyList);
                    break;
                }

                retMessage[0] = GetLocalResourceObject("RetSuccessType").ToString();
                retMessage[1] = GetLocalResourceObject("OperationComplete").ToString();
                retMessage[2] = "success";
                return(retMessage);
            }
            catch (UIValidationExceptions ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.UIValidationExceptions, ex, retMessage);
                return(retMessage);
            }
            catch (UIBaseException ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.UIBaseException, ex, retMessage);
                return(retMessage);
            }
            catch (Exception ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.Exception, ex, retMessage);
                return(retMessage);
            }
        }
コード例 #2
0
        public void Update_DeleteExtraManagerFlowTest2()
        {
            ManagerProxy mf = new ManagerProxy();

            mf.Level       = 3;
            mf.OwnerID     = ADOManager2.OrganizationUnit.PersonID;
            mf.ManagerType = ManagerType.Person;
            List <ManagerProxy> mngFlows = new List <ManagerProxy>();

            mngFlows.Add(mf);
            busflow.UpdateManagerFlows(ADOFlow1.ID, false, false, mngFlows);
            ClearSession();
            flow_testObject = new Flow();
            flow_testObject = busflow.GetByID(ADOFlow1.ID);
            Assert.AreEqual(3, flow_testObject.ManagerFlowList.Count);
            Assert.AreEqual(3, flow_testObject.ManagerFlowList[2].Level);
            Assert.AreEqual(false, flow_testObject.ActiveFlow);
        }
コード例 #3
0
 /// <summary>
 /// لیستی از مدیران یک جریان به همراه اولویت هر یک را برمیگرداند
 /// </summary>
 /// <param name="flowID"></param>
 /// <returns></returns>
 public IList <ManagerProxy> GetAllManagers(decimal flowID)
 {
     try
     {
         EntityRepository <ManagerFlow> managerFlowRep = new EntityRepository <ManagerFlow>(false);
         IList <ManagerProxy>           list           = new List <ManagerProxy>();
         IList <ManagerFlow>            mnagers        = managerFlowRep.GetByCriteria(new CriteriaStruct(Utility.GetPropertyName(() => new ManagerFlow().Flow), new Flow()
         {
             ID = flowID
         }),
                                                                                      new CriteriaStruct(Utility.GetPropertyName(() => new ManagerFlow().Active), true));
         foreach (ManagerFlow mngFlow in mnagers)
         {
             ManagerProxy proxy = new ManagerProxy();
             if (mngFlow.Manager.ManagerType == ManagerAssignType.Person)
             {
                 proxy.ManagerType = ManagerType.Person;
                 proxy.OwnerID     = mngFlow.Manager.Person.ID;
                 proxy.Name        = mngFlow.Manager.Person.Name;
             }
             else if (mngFlow.Manager.ManagerType == ManagerAssignType.OrganizationUnit)
             {
                 proxy.ManagerType = ManagerType.OrganizationUnit;
                 proxy.OwnerID     = mngFlow.Manager.OrganizationUnit.ID;
                 proxy.Name        = mngFlow.Manager.OrganizationUnit.Name;
             }
             else
             {
                 proxy.ManagerType = ManagerType.None;
             }
             proxy.ID    = mngFlow.ID;
             proxy.Level = mngFlow.Level;
             list.Add(proxy);
         }
         return(list);
     }
     catch (Exception ex)
     {
         LogException(ex, "BFlow", "GetAllManagers");
         throw ex;
     }
 }
コード例 #4
0
        public void GetManagerFlow_AfterUpdate_Test()
        {
            dataAccessMngTA.Insert(BUser.CurrentUser.ID, null, true);

            ManagerProxy mf = new ManagerProxy();

            mf.Level       = 3;
            mf.OwnerID     = ADOManager2.OrganizationUnit.ID;
            mf.ManagerType = ManagerType.OrganizationUnit;
            List <ManagerProxy> mngFlows = new List <ManagerProxy>();

            mngFlows.Add(mf);
            busflow.UpdateManagerFlows(ADOFlow1.ID, false, false, mngFlows);
            ClearSession();
            flow_testObject = new Flow();

            IList <Manager> list = busflow.GetManagerFlow(ADOFlow1.ID);

            Assert.AreEqual(1, list.Count);
        }
コード例 #5
0
 public FindBestFriendControl()
 {
     InitializeComponent();
     m_EngineManager = ManagerProxy.GetEngineManager();
 }
コード例 #6
0
 public UserFriends()
 {
     m_Engine      = ManagerProxy.GetEngineManager();
     m_UserFriends = m_Engine.GetFriends();
 }
コード例 #7
0
 public FeaturesFacade(Control i_ContainerScreen)
 {
     m_ContainerScreen = i_ContainerScreen;
     m_EngineManager   = ManagerProxy.GetEngineManager();
     initialControls();
 }
コード例 #8
0
 public SortingFriendsControl()
 {
     InitializeComponent();
     m_EngineManager = ManagerProxy.GetEngineManager();
 }