Пример #1
0
        public static void UpdateRule(Guid ruleId, Guid ruleEngineId, Guid organizationId, Guid?instanceId, string name, string displayName, int orderNumber, bool active)
        {
            if (ruleId.Equals(Guid.Empty) || ruleEngineId.Equals(Guid.Empty) || string.IsNullOrEmpty(name))
            {
                throw new ArgumentNullException("ruleId", Properties.Resources.ExceptionMessage_ArgumentsIsEmpty);
            }

            ClientDataSet.RuleDataTable table = new ClientDataSet.RuleDataTable();

            using (RuleTableAdapter adapter = new RuleTableAdapter(OrganizationProvider.GetConnectionString(organizationId)))
            {
                table = adapter.GetRule(ruleId);

                ClientDataSet.RuleRow row = ((table.Count > 0) ? table[0] : null);

                if (row == null)
                {
                    row                = table.NewRuleRow();
                    row.RuleId         = ruleId;
                    row.RuleEngineId   = ruleEngineId;
                    row.OrganizationId = organizationId;
                    if (instanceId.HasValue)
                    {
                        row.InstanceId = instanceId.Value;
                    }
                    else
                    {
                        row.SetInstanceIdNull();
                    }
                    row.UsedQty = 0;
                    row.SetLastUsedUserNull();
                    row.SetLastUsedDateNull();
                    row.CreatedBy   = UserContext.Current != null ? UserContext.Current.UserId : Guid.Empty;
                    row.CreatedDate = DateTime.UtcNow;
                }

                row.Name        = name;
                row.DisplayName = displayName;
                row.Active      = active;
                row.OrderNumber = orderNumber;

                if (row.RowState == DataRowState.Detached)
                {
                    table.AddRuleRow(row);
                }

                adapter.Update(row);
            }
        }
Пример #2
0
        protected void FormRuleView_DataBound(object sender, EventArgs e)
        {
            ClientDataSet.RuleRow row = FormRoleView.DataItem as ClientDataSet.RuleRow;
            Label LabelUserName       = FormRoleView.FindControl("LabelUserName") as Label;
            Label LabelUserDate       = FormRoleView.FindControl("LabelUserDate") as Label;

            if (row != null && LabelUserName != null && LabelUserDate != null)
            {
                if (!row.IsLastUsedUserNull())
                {
                    LabelUserName.Text = RuleEngineProvider.GetDisplayUserName(row.LastUsedUser, row.OrganizationId);
                }
                if (!row.IsLastUsedDateNull())
                {
                    LabelUserDate.Text = row.LastUsedDate.ToString("g", CultureInfo.CurrentCulture);
                }
            }
        }
Пример #3
0
        internal static Rule Create(ClientDataSet.RuleRow row)
        {
            if (row == null)
            {
                return(null);
            }
            Rule rule = new Rule();

            rule.RuleId         = row.RuleId;
            rule.RulesEngineId  = row.RuleEngineId;
            rule.OrganizationId = row.OrganizationId;
            rule.InstanceId     = row.IsInstanceIdNull() ? new Guid?() : new Guid?(row.InstanceId);
            rule.Name           = row.Name;
            rule.DisplayName    = row.DisplayName;
            rule.UsedQty        = row.UsedQty;
            rule.LastUsedUserId = row.IsLastUsedUserNull() ? new Guid?() : new Guid?(row.LastUsedUser);
            rule.LastUsedDate   = row.IsLastUsedDateNull() ? new DateTime?() : new DateTime?(row.LastUsedDate);
            rule.CreatedUserId  = row.CreatedBy;
            rule.CreatedDate    = row.CreatedDate;
            rule.OrderNumber    = row.OrderNumber;
            rule.Active         = row.Active;
            return(rule);
        }