public void TestSetup()
        {
            validationGroup_testObject = new UIValidationGroup();
            busValidationGroup         = new BUIValidationGroup();

            ruleTA.InsertQuery(111000111, "TestRule1", "000-001", true);
            ruleTA.InsertQuery(111000112, "TestRule2", "000-002", true);

            DatabaseGateway.TA_UIValidationRuleDataTable ruleTable = ruleTA.GetDataByCode("000-001");
            ADORule1.ID = (ruleTable.Rows[0] as DatabaseGateway.TA_UIValidationRuleRow).UIRle_ID;

            ruleTable   = ruleTA.GetDataByCode("000-002");
            ADORule2.ID = (ruleTable.Rows[0] as DatabaseGateway.TA_UIValidationRuleRow).UIRle_ID;

            paramTmpTA.Insert(0, "Rule TMP Param Test 1", ADORule1.ID);
            paramTmpTA.Insert(1, "Rule TMP Param Test 2", ADORule1.ID);
            paramTmpTA.Insert(2, "Rule TMP Param Test 3", ADORule1.ID);

            validationGroupTA.InsertQuery("TestGroup00");
            DatabaseGateway.TA_UIValidationGroupDataTable groupTable = validationGroupTA.GetDataByName("TestGroup00");
            ADOGroup1.ID = (groupTable.Rows[0] as DatabaseGateway.TA_UIValidationGroupRow).UIValGrp_ID;

            validationGroupTA.InsertQuery("TestGroup01");
            groupTable   = validationGroupTA.GetDataByName("TestGroup01");
            ADOGroup2.ID = (groupTable.Rows[0] as DatabaseGateway.TA_UIValidationGroupRow).UIValGrp_ID;


            groupingTA.Insert(ADORule1.ID, ADOGroup1.ID, false, true);

            personTA.UpdateValidationGroup(ADOGroup1.ID, ADOPerson1.ID);
        }
示例#2
0
        public void InsertRequestSubstitute(Request request)
        {
            try
            {
                RequestSubstitute            requestSubstitute                     = null;
                Person                       person                                = null;
                Precard                      precardAlias                          = null;
                UIValidationGroup            uiValidationGroupAlias                = null;
                UIValidationRule             uiValidationRuleAlias                 = null;
                UIValidationRuleGroup        uiValidationRuleGroupAlias            = null;
                UIValidationRuleGroupPrecard uiValidationRuleGroupPrecardAlias     = null;
                const string                 requestSubstituteUIValidationRuleCode = "33";
                BPerson                      bPerson                               = new BPerson();
                BUIValidationGroup           bUIValidationGroup                    = new BUIValidationGroup();
                UIValidationRuleGroup        RuleGroup                             = new UIValidationRuleGroup();
                JavaScriptSerializer         JsSerializer                          = new JavaScriptSerializer();
                NHibernate.IQueryOver <UIValidationRuleGroup, UIValidationRuleGroup> uiValidationRuleGroup = null;

                if (request != null && request.Person != null && request.Person.ID != 0)
                {
                    person = NHSession.QueryOver <Person>()
                             .Where(x => x.ID == request.Person.ID)
                             .SingleOrDefault();
                    if (person != null && person.PersonTASpec != null && person.PersonTASpec.UIValidationGroup != null)
                    {
                        uiValidationRuleGroup = this.NHSession.QueryOver <UIValidationRuleGroup>(() => uiValidationRuleGroupAlias)
                                                .JoinAlias(() => uiValidationRuleGroupAlias.ValidationGroup, () => uiValidationGroupAlias)
                                                .JoinAlias(() => uiValidationRuleGroupAlias.ValidationRule, () => uiValidationRuleAlias)
                                                .JoinAlias(() => uiValidationRuleGroupAlias.PrecardList, () => uiValidationRuleGroupPrecardAlias)
                                                .JoinAlias(() => uiValidationRuleGroupPrecardAlias.Precard, () => precardAlias)
                                                .Where(() => uiValidationGroupAlias.ID == person.PersonTASpec.UIValidationGroup.ID &&
                                                       uiValidationRuleGroupAlias.Active &&
                                                       uiValidationRuleAlias.ExistTag &&
                                                       uiValidationRuleAlias.CustomCode == requestSubstituteUIValidationRuleCode &&
                                                       uiValidationRuleGroupPrecardAlias.Active &&
                                                       precardAlias.ID == request.Precard.ID
                                                       );

                        if (request.Person.ID != request.User.Person.ID)
                        {
                            RuleGroup = uiValidationRuleGroup.Where(x => uiValidationRuleGroupPrecardAlias.Operator).SingleOrDefault();
                        }
                        else
                        {
                            RuleGroup = uiValidationRuleGroup.SingleOrDefault();
                        }
                        if (RuleGroup != null && RuleGroup.Tag != null && RuleGroup.Tag != string.Empty)
                        {
                            R33_UiValidationRuleTagValueProxy r33_UiValidationRuleTagValueProxy = JsSerializer.Deserialize <R33_UiValidationRuleTagValueProxy>(RuleGroup.Tag);
                            if (r33_UiValidationRuleTagValueProxy.IsForceConfirmByRequestSubstitute)
                            {
                                requestSubstitute                  = new RequestSubstitute();
                                requestSubstitute.Request          = request;
                                requestSubstitute.SubstitutePerson = request.SubstitutePerson;
                                requestSubstitute.OperationDate    = DateTime.Now;
                                this.SaveChanges(requestSubstitute, UIActionType.ADD);
                            }
                        }
                    }
                    NHSession.Evict(person);
                }
            }
            catch (Exception ex)
            {
                BaseBusiness <RequestSubstitute> .LogException(ex, "BRequestSubstitute", "InsertRequestSubstitute");

                throw ex;
            }
        }