Beispiel #1
0
        public override Process DoBusinessProcess(RuleBusiness rule, BusinessObjectExecute <TView> businessObject)
        {
            switch (rule.CodeMessage)
            {
            case "PREZ-INIT01":
                break;

            case "PREZ-INIT02":
                break;

            case "PREZ-INIT03":
                break;

            case "PREZ-INIT04":
                break;

            case "PREZ-INIT05":
                break;

            case "PREZ-INIT06":
                break;

            default:
                break;
            }
        }
Beispiel #2
0
        public override Process DoBusinessProcess(RuleBusiness rule, BusinessObjectExecute <ObjectPresenter <TView> > businessObject)
        {
            TProcess proc = new TProcess();

            //permet d'initier la vue dans declancher l'initialisatoin de la page.
            proc.AssignView(businessObject.Parameter.GetView);


            switch (rule.CodeMessage)
            {
            case "ERR_PRES":
                try
                {
                    proc.Initialisation(false, businessObject.Parameter.GetView, businessObject.Parameter.Presenter);
                    businessObject.Parameter.Process = proc;
                }
                catch (Exception ex)
                {
                    Utile.DiscriminationError <TView>(ex, proc, businessObject.Parameter.GetView);

                    return(Process.SuccessAddMessage);
                }
                break;
            }



            return(Process.Succeed);
        }
        private void Fill_GridRules_Rules(LoadState Ls, int pageSize, int pageIndex, string searchTerm)
        {
            var retMessage = new string[4];
            IList <RuleTemplateProxy> RulesProxyList = null;

            try
            {
                this.InitializeCulture();
                switch (Ls)
                {
                case LoadState.Normal:
                    RulesProxyList = RuleBusiness.GetAllByPageBySearch(pageIndex, pageSize, string.Empty);
                    break;

                case LoadState.Search:
                    RulesProxyList = RuleBusiness.GetAllByPageBySearch(pageIndex, pageSize, searchTerm);
                    break;
                }

                foreach (var ruleTemplateProxy in RulesProxyList)
                {
                    ruleTemplateProxy.Type = GetLocalResourceObject(ruleTemplateProxy.Type).ToString();
                    if (ruleTemplateProxy.OperationalArea == 0)
                    {
                        ruleTemplateProxy.OperationalAreaName = GetLocalResourceObject("Daily").ToString();
                    }
                    else if (ruleTemplateProxy.OperationalArea == 2)
                    {
                        ruleTemplateProxy.OperationalAreaName = GetLocalResourceObject("Monthly").ToString();
                    }
                    else
                    {
                        ruleTemplateProxy.OperationalAreaName = "";
                    }
                }

                this.GridRules_Rules.DataSource = RulesProxyList;
                this.GridRules_Rules.DataBind();
            }
            catch (UIValidationExceptions ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.UIValidationExceptions, ex, retMessage);
                this.ErrorHiddenField_Rules.Value = this.exceptionHandler.CreateErrorMessage(retMessage);
            }
            catch (UIBaseException ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.UIBaseException, ex, retMessage);
                this.ErrorHiddenField_Rules.Value = this.exceptionHandler.CreateErrorMessage(retMessage);
            }
            catch (OutOfExpectedRangeException ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ex, retMessage);
                this.ErrorHiddenField_Rules.Value = this.exceptionHandler.CreateErrorMessage(retMessage);
            }
            catch (Exception ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.Exception, ex, retMessage);
                this.ErrorHiddenField_Rules.Value = this.exceptionHandler.CreateErrorMessage(retMessage);
            }
        }
Beispiel #4
0
        /// <summary>
        /// Exécution des processus métiers en fonction de la liste des règles.
        /// Pour chacune des règles le sequenceur va appeler le DoBusinessProcess afin d'exécuter chacune des règles
        /// </summary>
        /// <param name="rule">Règle à exécuter</param>
        /// <param name="businessObject">Objet de traitement d'affaire, il contient un ensmble d'information en provenance du Sequenceur</param>
        /// <returns>Retour un résultat en fonction de l'exécution</returns>
        public override Process DoBusinessProcess(RuleBusiness rule, BusinessObjectAdd <ObjContact> businessObject)
        {
            //Les règles sont exécutés en seéquence en fonction de l'ordre insctit dans le GetProcessRules
            switch (rule.CodeMessage)
            {
            case "NOM_INTERDIT":     //Code de règle
                //Traitement
                if (businessObject.Parameter.Nom.ToUpper() == "MECHANT")
                {
                    return(Process.FailedThrow);   //Indique qu'il y a un erreur.
                }
                break;

            case "NOM_EXISTANT":
                EXP.Metier.BusinessMetierContact bm = new BusinessMetierContact();
                if (bm.Select(businessObject.Parameter) != null)
                {
                    return(Process.FailedThrow);   //Le nom est existant
                }
                break;

            default:
                break;
            }

            return(Process.Succeed);
        }
        public override Process DoBusinessProcess(RuleBusiness rule, BusinessObjectExecute <ObjectProcess <TView> > businessObject)
        {
            IOperation <TView> p = businessObject.Parameter.GetProcess;

            switch (rule.CodeMessage)
            {
            case "ERR_CMD_ACTION":
                try
                {
                    p.OnCommand(businessObject.Parameter.Command, businessObject.Parameter.Args, businessObject.Parameter.GetView, businessObject.Parameter.Presenter);

                    return(Process.Succeed);
                }
                catch (Exception ex)
                {
                    Utile.DiscriminationError <TView>(ex, p, businessObject.Parameter.GetView);

                    return(Process.SuccessAddMessage);
                }

            case "ERR_CMD_SHOW":
                bool isError = false;
                if (businessObject.Parameter.GetView.ViewLogics.BusinessMessages != null)
                {
                    isError = true;
                    p.ShowBusinessValidation(Resources.CoreResources.CA_PROCESS, "", businessObject.Parameter.GetView.ViewLogics.BusinessMessages);
                }
                if (businessObject.Parameter.GetView.ViewLogics.ContextValidationMessage != null)
                {
                    isError = true;
                    p.ShowContextValidation(Resources.CoreResources.CA_PROCESS, "", businessObject.Parameter.GetView.ViewLogics.ContextValidationMessage);
                }
                if (businessObject.Parameter.GetView.ViewLogics.ReservationMessages != null)
                {
                    isError = true;
                    p.ShowReservation(Resources.CoreResources.CA_PROCESS, "", businessObject.Parameter.GetView.ViewLogics.ReservationMessages);
                }
                if (businessObject.Parameter.GetView.ViewLogics.SecurityMessages != null)
                {
                    isError = true;
                    p.ShowSecurity(Resources.CoreResources.CA_PROCESS, "", businessObject.Parameter.GetView.ViewLogics.SecurityMessages);
                }

                if (isError)
                {
                    return(Process.FailedStopRules);
                }


                break;

            default:
                break;
            }

            return(Process.Succeed);
        }
Beispiel #6
0
 public override Process DoBusinessProcess(RuleBusiness rule, BusinessObjectAdd <Personne> businessObject)
 {
     switch (rule.CodeMessage)
     {
     case "NOM_INTERDIT":
         if (businessObject.Parameter.Nom.ToUpper() == "STEPHANE")
         {
             return(Process.FailedThrow);
         }
         break;
     }
     return(Process.Succeed);
 }
Beispiel #7
0
        public Process DoBusinessProcess(RuleBusiness rule, ref IBusinessObject businessObject)
        {
            TBusinessObject businessObjectAdd = (TBusinessObject)businessObject;

            return(DoBusinessProcess(rule, businessObjectAdd, contracts));
        }
Beispiel #8
0
 public abstract Process DoBusinessProcess(RuleBusiness rule, TBusinessObject businessObject, List <IContract> contractCollection);
        protected void CallBackSaveRules_Rules_OnCallBack(object sender, CallBackEventArgs e)
        {
            string ID                 = e.Parameters[0];
            string IdentifierCode     = e.Parameters[1];
            string Name               = e.Parameters[2];
            string CustomCategoryCode = e.Parameters[3];
            string TypeId             = e.Parameters[4];
            string UserDefined        = e.Parameters[5];
            string Script             = e.Parameters[6];
            string CSharpCode         = e.Parameters[7];
            string JsonObject         = e.Parameters[8];
            string PageState          = e.Parameters[9];

            this.InitializeCulture();

            UIValidationExceptions uiValidationExceptions = new UIValidationExceptions();

            string[] retMessage = new string[4];

            decimal      iID         = 0;
            RuleTemplate RuleRecived = new RuleTemplate();

            RuleRecived.ID = Convert.ToDecimal(StringBuilder.CreateString(ID));

            PageState = StringBuilder.CreateString(PageState);
            if (PageState != "Delete")
            {
                RuleRecived.IdentifierCode     = Convert.ToDecimal(StringBuilder.CreateString(IdentifierCode));
                RuleRecived.Name               = StringBuilder.CreateString(Name);
                RuleRecived.CustomCategoryCode = StringBuilder.CreateString(CustomCategoryCode);
                RuleRecived.TypeId             = Convert.ToDecimal(StringBuilder.CreateString(TypeId));
                RuleRecived.UserDefined        = bool.Parse(StringBuilder.CreateString(UserDefined));
                RuleRecived.Script             = StringBuilder.CreateString(Script);
                RuleRecived.CSharpCode         = StringBuilder.CreateString(CSharpCode);
                RuleRecived.JsonObject         = JsonObject;
            }

            #region Effect on DB

            try
            {
                #region Set UIActionType Enum
                UIActionType uiActionType = UIActionType.ADD;
                switch (PageState.ToUpper())
                {
                    #region Add
                case "ADD":
                    uiActionType = UIActionType.ADD;
                    iID          = RuleBusiness.InsertRule(RuleRecived);
                    break;

                    #endregion
                    #region Edit
                case "EDIT":
                    uiActionType = UIActionType.EDIT;
                    if (RuleRecived.ID == 0)
                    {
                        retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.Exception, new Exception(GetLocalResourceObject("NoRuleSelectedforEdit").ToString()), retMessage);
                        hfCallBackDataSaveRules_Rules.Value = Newtonsoft.Json.JsonConvert.SerializeObject(retMessage);
                        this.hfCallBackDataSaveRules_Rules.RenderControl(e.Output);
                    }

                    var concept = RuleBusiness.GetByID(RuleRecived.ID);
                    RuleBusiness.Copy(RuleRecived, ref concept);

                    iID = RuleBusiness.UpdateRule(concept);
                    break;

                    #endregion
                    #region Delete
                case "DELETE":
                    uiActionType = UIActionType.DELETE;
                    if (RuleRecived.ID == 0)
                    {
                        retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.Exception, new Exception(GetLocalResourceObject("NoRuleSelectedforDelete").ToString()), retMessage);
                        hfCallBackDataSaveRules_Rules.Value = Newtonsoft.Json.JsonConvert.SerializeObject(retMessage);
                        this.hfCallBackDataSaveRules_Rules.RenderControl(e.Output);
                    }
                    iID = RuleBusiness.DeleteRule(RuleRecived);
                    break;

                    #endregion
                default:
                    break;
                }
                #endregion

                retMessage[0] = GetLocalResourceObject("RetSuccessType").ToString();
                string SuccessMessageBody = string.Empty;
                switch (uiActionType)
                {
                case UIActionType.ADD:
                    SuccessMessageBody = GetLocalResourceObject("AddComplete").ToString();
                    break;

                case UIActionType.EDIT:
                    SuccessMessageBody = GetLocalResourceObject("EditComplete").ToString();
                    break;

                case UIActionType.DELETE:
                    SuccessMessageBody = GetLocalResourceObject("DeleteComplete").ToString();
                    break;

                default:
                    break;
                }
                retMessage[1] = SuccessMessageBody;
                retMessage[2] = "success";
                retMessage[3] = iID.ToString(CultureInfo.InvariantCulture);

                hfCallBackDataSaveRules_Rules.Value = Newtonsoft.Json.JsonConvert.SerializeObject(retMessage);
                this.hfCallBackDataSaveRules_Rules.RenderControl(e.Output);
            }
            catch (UIValidationExceptions ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.UIValidationExceptions, ex, retMessage);
                hfCallBackDataSaveRules_Rules.Value = Newtonsoft.Json.JsonConvert.SerializeObject(retMessage);
                this.hfCallBackDataSaveRules_Rules.RenderControl(e.Output);
            }
            catch (UIBaseException ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.UIBaseException, ex, retMessage);
                hfCallBackDataSaveRules_Rules.Value = Newtonsoft.Json.JsonConvert.SerializeObject(retMessage);
                this.hfCallBackDataSaveRules_Rules.RenderControl(e.Output);
            }
            catch (Exception ex)
            {
                retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.Exception, ex, retMessage);
                hfCallBackDataSaveRules_Rules.Value = Newtonsoft.Json.JsonConvert.SerializeObject(retMessage);
                this.hfCallBackDataSaveRules_Rules.RenderControl(e.Output);
            }
            #endregion
        }
        public string[] UpdateRule_RulesPage(
            string ID,
            string IdentifierCode,
            string Name,
            string CustomCategoryCode,
            string TypeId,
            string UserDefined,
            string RuleOrder,
            string RuleOperationalAreaId,
            //string Script,
            //string CSharpCode,
            //string DesinegRuleID,
            //string JsonObject,
            //string ParameterObject,
            //string VariableObject,
            //string RuleObject,
            //string RuleStateobject,
            //string RulePriority,
            //string RuleTemplateID,
            string PageState)
        {
            this.InitializeCulture();

            UIValidationExceptions uiValidationExceptions = new UIValidationExceptions();

            string[] retMessage = new string[4];

            decimal      iID         = 0;
            RuleTemplate RuleRecived = new RuleTemplate();

            //DesignedRule DesignedRuleObj = new DesignedRule();
            //RuleRecived.OperationalArea = 0;
            RuleRecived.ID = Convert.ToDecimal(StringBuilder.CreateString(ID));
            //DesignedRuleObj.ID = Convert.ToDecimal(StringBuilder.CreateString(DesinegRuleID));
            PageState = StringBuilder.CreateString(PageState);
            if (PageState != "Delete")
            {
                //Decimal RuleId = Convert.ToDecimal(StringBuilder.CreateString(IdentifierCode));
                //Decimal RuleIdentifierCode = this.RuleIdentifierCode(RuleId);
                RuleRecived.Name = StringBuilder.CreateString(Name);
                RuleRecived.CustomCategoryCode = StringBuilder.CreateString(CustomCategoryCode);
                RuleRecived.TypeId             = Convert.ToDecimal(StringBuilder.CreateString(TypeId));
                Decimal TypeID = Convert.ToDecimal(StringBuilder.CreateString(TypeId));
                RuleRecived.IdentifierCode = this.RuleIdentifierCode(TypeID);

                RuleRecived.UserDefined     = bool.Parse(StringBuilder.CreateString(UserDefined));
                RuleRecived.Order           = Convert.ToInt32(StringBuilder.CreateString(RuleOrder));
                RuleRecived.OperationalArea = Convert.ToDecimal(StringBuilder.CreateString(RuleOperationalAreaId));
            }

            #region Effect on DB

            try
            {
                #region Set UIActionType Enum
                UIActionType uiActionType = UIActionType.ADD;
                switch (PageState.ToUpper())
                {
                    #region Add
                case "ADD":
                    uiActionType = UIActionType.ADD;
                    iID          = RuleBusiness.InsertRule(RuleRecived);
                    break;

                    #endregion
                    #region Edit
                case "EDIT":
                    uiActionType = UIActionType.EDIT;
                    if (RuleRecived.ID == 0)
                    {
                        retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.Exception, new Exception(GetLocalResourceObject("NoRuleSelectedforEdit").ToString()), retMessage);
                        return(retMessage);
                    }

                    var concept = RuleBusiness.GetByID(RuleRecived.ID);
                    RuleBusiness.Copy(RuleRecived, ref concept);

                    iID = RuleBusiness.UpdateRule(concept);
                    break;

                    #endregion
                    #region Delete
                case "DELETE":
                    uiActionType = UIActionType.DELETE;
                    if (RuleRecived.ID == 0)
                    {
                        retMessage = this.exceptionHandler.HandleException(this.Page, ExceptionTypes.Exception, new Exception(GetLocalResourceObject("NoRuleSelectedforDelete").ToString()), retMessage);
                        return(retMessage);
                    }
                    iID = RuleBusiness.DeleteRule(RuleRecived);
                    break;

                    #endregion
                default:
                    break;
                }
                #endregion

                retMessage[0] = GetLocalResourceObject("RetSuccessType").ToString();
                string SuccessMessageBody = string.Empty;
                switch (uiActionType)
                {
                case UIActionType.ADD:
                    SuccessMessageBody = GetLocalResourceObject("AddComplete").ToString();
                    break;

                case UIActionType.EDIT:
                    SuccessMessageBody = GetLocalResourceObject("EditComplete").ToString();
                    break;

                case UIActionType.DELETE:
                    SuccessMessageBody = GetLocalResourceObject("DeleteComplete").ToString();
                    break;

                default:
                    break;
                }
                retMessage[1] = SuccessMessageBody;
                retMessage[2] = "success";
                retMessage[3] = iID.ToString();
                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);
            }
            #endregion
        }
Beispiel #11
0
 private void init()
 {
     RuleBusiness ruleBusiness = new RuleBusiness();
 }