public static void CheckSendMail(RuleException ruleExp)
        {
            if (ruleExp != null)
            {
                string adjusterEmail = string.Empty;
                string supervisorEmail = string.Empty;
                bool sendAdjuster = false;
                bool sendSupervisor = false;
                string recipient = string.Empty;
                int claimId = 0;

                BusinessRuleManager objRuleManager = new BusinessRuleManager();
                BusinessRule objRule = new BusinessRule();
                CRM.Data.Entities.Claim objClaim = new CRM.Data.Entities.Claim();
                CRM.Data.Entities.SecUser objSecUser = new Data.Entities.SecUser();
                AdjusterMaster adjustermaster = new AdjusterMaster();

                int businessRuleID = ruleExp.BusinessRuleID ?? 0;
                objRule = objRuleManager.GetBusinessRule(businessRuleID);
                if (objRule != null)
                {
                    claimId = ruleExp.ObjectID ?? 0;

                    objClaim = objRuleManager.GetClaim(claimId);
                    adjustermaster = objRuleManager.GetAdjuster(objClaim.AdjusterID ?? 0);
                    objSecUser = objRuleManager.GetSupervisor(objClaim.SupervisorID ?? 0);
                    if (objSecUser != null)
                    {
                        adjusterEmail = adjustermaster.email;
                        supervisorEmail = objSecUser.Email;

                        sendAdjuster = objRule.EmailAdjuster;
                        sendSupervisor = objRule.EmailSupervisor;

                        if (sendAdjuster == true && sendSupervisor == true)
                        {
                            recipient = adjusterEmail + "," + supervisorEmail;
                            notifyUser(objRule.Description, claimId, recipient);
                        }
                        else if (sendAdjuster == false && sendSupervisor == true)
                        {
                            recipient = supervisorEmail;
                            notifyUser(objRule.Description, claimId, recipient);
                        }
                        else if (sendAdjuster == true && sendSupervisor == false)
                        {

                            recipient = adjusterEmail;
                            notifyUser(objRule.Description, claimId, recipient);
                        }
                    }
                }
            }
        }
Пример #2
0
        public void Evaluating_Specification_That_Returns_True_Performs_Action()
        {
            ISpecification<object> mockSpec = MockRepository.GenerateMock<ISpecification<object>>();
            mockSpec.Expect(x => x.IsSatisfiedBy(null))
                .IgnoreArguments()
                .Return(true);

            bool actionPerformed = false;
            BusinessRule<object> rule = new BusinessRule<object>(mockSpec, x => actionPerformed = true);
            rule.Evaluate(new object());

            mockSpec.VerifyAllExpectations();
            Assert.That(actionPerformed);
        }
Пример #3
0
        public void no_action_is_performed_when_specification_returns_false()
        {
            ISpecification<object> mockSpec = MockRepository.GenerateMock<ISpecification<object>>();
            mockSpec.Expect(x => x.IsSatisfiedBy(null))
                .IgnoreArguments()
                .Return(false);

            bool actionPerformed = false;
            BusinessRule<object> rule = new BusinessRule<object>(mockSpec, x => actionPerformed = true);
            rule.Evaluate(new object());

            mockSpec.VerifyAllExpectations();
            Assert.That(!actionPerformed);
        }
Пример #4
0
        public void AndOperator_CombinesRules_AndResultsInViolationListThatIncludeBoth()
        {
            BusinessRule rule1 = new RuleThatAlwaysHasOneViolation();
            BusinessRule rule2 = new RuleThatAlwaysHasTwoViolations();

            BusinessRule result = rule1 & rule2;

            IEnumerable <BusinessRuleViolation> violations = result.CheckRule();

            Assert.AreEqual(3, violations.Count());
            Assert.IsTrue(violations.Any(v => v.ViolationMessage == "Always one violation"));
            Assert.IsTrue(violations.Any(v => v.ViolationMessage == "First violation"));
            Assert.IsTrue(violations.Any(v => v.ViolationMessage == "Second violation"));
        }
Пример #5
0
        public IResult Update(User user)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfUserExist(user.Id)
                             );

            if (result != null)
            {
                return(result);
            }

            return(new SuccessResult(UserMessages.UserUpdated));
        }
Пример #6
0
        public IResult Add(Rental rental)
        {
            var result = BusinessRule.Run(CarRentedCheck(rental),
                                          FindeksScoreCheck(rental.CustomerId, rental.CarId),
                                          UpdateCustomerFindexPoint(rental.CustomerId, rental.CarId));

            if (result != null)
            {
                return(result);
            }

            _rentalDal.Add(rental);
            return(new SuccessResult(Messages.RentalAdded));
        }
Пример #7
0
        // GET: BusinessRules/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            BusinessRule businessRule = db.BusinessRules.Find(id);

            if (businessRule == null)
            {
                return(HttpNotFound());
            }
            return(View(businessRule));
        }
        public IDataResult <OperationClaim> GetById(int id)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfClaimExist(id)
                             );

            if (result != null)
            {
                return(new ErrorDataResult <OperationClaim>(result.Message));
            }

            return(new SuccessDataResult <OperationClaim>(_operationClaimDal.Get(op => op.Id == id)));
        }
        public IResult Update(OperationClaim operationClaim)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfClaimExist(operationClaim.Id)
                             );

            if (result != null)
            {
                return(result);
            }
            _operationClaimDal.Update(operationClaim);
            return(new SuccessResult(OperationClaimMessages.Updated));
        }
        public IDataResult <List <OperationClaim> > GetAll()
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfClaimsExist()
                             );

            if (result != null)
            {
                return(new ErrorDataResult <List <OperationClaim> >(result.Message));
            }

            return(new SuccessDataResult <List <OperationClaim> >(_operationClaimDal.GetAll()));
        }
Пример #11
0
        public static void NewBRDataRow(DataTable dataSet, BusinessRule businessRule)
        {
            var row = dataSet.NewRow();

            row[0] = businessRule.Identifier.Id;
            row[1] = businessRule.Identifier.EntityId.Name;
            row[2] = businessRule.Priority;
            row[3] = businessRule.Status;
            row[4] = businessRule.Identifier.Name;
            row[5] = businessRule.Description;
            row[6] = businessRule.RuleConditionText;
            row[7] = businessRule.RuleActionText;
            dataSet.Rows.Add(row);
        }
Пример #12
0
        public ActionResult DeleteConfirmed(int id)
        {
            if (!User.CanDelete("Condition"))
            {
                return(RedirectToAction("Index", "Error"));
            }
            Condition    condition = db.Conditions.Find(id);
            BusinessRule BR        = dbRuleConditions.BusinessRules.Where(br => br.Id == condition.RuleConditionsID).FirstOrDefault();

            db.Conditions.Remove(condition);
            db.SaveChanges();
            //,Hash = "Condition"
            return(RedirectToAction("Edit", "BusinessRule", new { id = BR.Id }));
        }
Пример #13
0
        public IDataResult <List <User> > GetAll()
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfUsersExist()
                             );

            if (result != null)
            {
                return(new ErrorDataResult <List <User> >(result.Message));
            }

            return(new SuccessDataResult <List <User> >(_userDal.GetAll()));
        }
Пример #14
0
        public IDataResult <User> GetByMail(string email)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfUserExistWithMail(email)
                             );

            if (result != null)
            {
                return(new ErrorDataResult <User>(result.Message));
            }

            return(new SuccessDataResult <User>(_userDal.Get(u => u.Email == email)));
        }
Пример #15
0
        public IDataResult <List <OperationClaim> > GetClaims(int userId)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfUserExist(userId)
                             );

            if (result != null)
            {
                return(new ErrorDataResult <List <OperationClaim> >(result.Message));
            }

            return(new SuccessDataResult <List <OperationClaim> >(_userDal.GetClaimsByUser(userId).Data));
        }
Пример #16
0
        public IDataResult <User> GetById(int id)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfUserExist(id)
                             );

            if (result != null)
            {
                return(new ErrorDataResult <User>(result.Message));
            }

            return(new SuccessDataResult <User>(_userDal.Get(u => u.Id == id)));
        }
Пример #17
0
        public IResult Delete(CarImage carImage)
        {
            var oldpath = Path.GetFullPath(Path.Combine(AppContext.BaseDirectory, "..\\..\\..\\wwwroot")) + _carImageDal.Get(I => I.Id == carImage.Id).ImagePath;

            var result = BusinessRule.Run(FileHelper.DeleteAsync(oldpath));

            if (result != null)
            {
                return(result);
            }

            _carImageDal.Delete(carImage);
            return(new SuccessResult(Messages.DeletedCarImage));
        }
Пример #18
0
        public IResult Add(Communication communication)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfCommunicationAlreadyExist(communication.Id)
                             );

            if (result != null)
            {
                return(result);
            }

            _communicationDal.Add(communication);
            return(new SuccessResult());
        }
Пример #19
0
        public IResult Update(Communication communication)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfCommunicationExist(communication.Id)
                             );

            if (result != null)
            {
                return(result);
            }

            _communicationDal.Update(communication);
            return(new SuccessResult());
        }
        public IResult Add(OperationClaim operationClaim)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfClaimAlreadyExist(operationClaim.Name)
                             );

            if (result != null)
            {
                return(result);
            }

            _operationClaimDal.Add(operationClaim);
            return(new SuccessResult());
        }
Пример #21
0
        public IResult Add(CarImage carImage, FileDto fileDto)
        {
            var result = BusinessRule.Run(CheckIfCarImageCountInRange(carImage.Id));

            if (result != null)
            {
                return(result);
            }

            carImage.ImagePath = fileDto.FullPath;
            carImage.Date_     = DateTime.Now;

            _carImageDal.Add(carImage);
            return(new SuccessResult());
        }
Пример #22
0
        public IResult Add(IFormFile file, CarImage carImage)
        {
            var result = BusinessRule.Run(CheckCarImageLimit(carImage));

            if (result != null)
            {
                return(result);
            }

            carImage.ImagePath = FileHelper.AddAsync(file);
            carImage.Date      = DateTime.Now;
            _carImageDal.Add(carImage);

            return(new SuccessResult(Messages.AddedCarImage));
        }
Пример #23
0
        public bool checkSupervisorSendMail(int businessRuleId)
        {
            BusinessRuleManager businessRuleManagerObj = new BusinessRuleManager();
            BusinessRule        businessRuleObj        = new BusinessRule();

            businessRuleObj = businessRuleManagerObj.GetBusinessRule(businessRuleId);
            if (businessRuleObj.EmailSupervisor && businessRuleObj.IsActive == true)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Пример #24
0
        public IResult Add(Car car)
        {
            IResult result = BusinessRule.Run(
                CheckBrandCountCorrect(car.BrandId)
                , CheckDuplicateCarName(car.CarName)
                , CheckBrandLimit()
                );

            if (result != null)
            {
                return(result);
            }
            _carDal.Add(car);
            return(new SuccessResult(Messages.ProductAdded));
        }
Пример #25
0
        public IResult Update(UserDetail userDetail)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfUserDetailExist(userDetail.Id)
                             );

            if (result != null)
            {
                return(result);
            }

            _userDetailDal.Update(userDetail);
            return(new SuccessResult());
        }
Пример #26
0
        protected void ddlRules_SelectedIndexChanged(object sender, EventArgs e)
        {
            BusinessRule businessRule = null;
            int          ruleTypeID   = 0;

            ruleTypeID = Convert.ToInt32(ddlRules.SelectedValue);

            hidePanels();
            Session["ruleId"] = ddlRules.SelectedValue;
            if (ruleTypeID > 0)
            {
                businessRule = new BusinessRule();
                editBusinessRule(ruleTypeID, ddlRules.SelectedItem.Text, businessRule);
            }
        }
Пример #27
0
        public IDataResult <Channel> GetById(int id)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfChannelExist(id),
                CheckIfChannelPhotoEmpty(_channelDal.Get(channel => channel.Id == id), _path)
                             );

            if (result != null)
            {
                return(new ErrorDataResult <Channel>(result.Message));
            }

            return(new SuccessDataResult <Channel>(CheckIfChannelPhotoEmpty(_channelDal.Get(c => c.Id == id), _path).Data));
        }
Пример #28
0
        public IDataResult <UserDetail> GetById(int id)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfUserDetailExist(id),
                CheckIfProfilePhotoEmpty(_userDetailDal.Get(ud => ud.Id == id), _path)
                             );

            if (result != null)
            {
                return(new ErrorDataResult <UserDetail>(result.Message));
            }

            return(new SuccessDataResult <UserDetail>(CheckIfProfilePhotoEmpty(_userDetailDal.Get(ud => ud.Id == id), _path).Data));
        }
Пример #29
0
        public IResult Update(Subscriber subscriber)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfSubscriberExist(subscriber.Id)
                             );

            if (result != null)
            {
                return(result);
            }

            _subscriberDal.Update(subscriber);
            return(new SuccessResult());
        }
Пример #30
0
        public IResult Add(Subscriber subscriber)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfSubscriberAlreadyExist(subscriber.Id)
                             );

            if (result != null)
            {
                return(result);
            }

            _subscriberDal.Add(subscriber);
            return(new SuccessResult());
        }
Пример #31
0
        public IResult Add(Dislike dislike)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfDislikeAlreadyExist(dislike.Id)
                             );

            if (result != null)
            {
                return(result);
            }

            _dislikeDal.Add(dislike);
            return(new SuccessResult());
        }
Пример #32
0
        public IResult Update(Like like)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfLikeExist(like.Id)
                             );

            if (result != null)
            {
                return(result);
            }

            _likeDal.Update(like);
            return(new SuccessResult());
        }
Пример #33
0
        public IResult Add(UserDetail userDetail)
        {
            IResult result = BusinessRule.Run
                             (
                CheckIfUserDetailAlreadyExist(userDetail.Id)
                             );

            if (result != null)
            {
                return(result);
            }

            _userDetailDal.Add(userDetail);
            return(new SuccessResult());
        }
Пример #34
0
        protected void ddlRules_SelectedIndexChanged(object sender, EventArgs e)
        {
            BusinessRule businessRule = null;
            int ruleTypeID = 0;

            ruleTypeID = Convert.ToInt32(ddlRules.SelectedValue);

            hidePanels();
            Session["ruleId"] = ddlRules.SelectedValue;
            if (ruleTypeID > 0)
            {
                businessRule = new BusinessRule();
                editBusinessRule(ruleTypeID, ddlRules.SelectedItem.Text, businessRule);

            }
        }
Пример #35
0
        public void bindData(BusinessRule businessRule)
        {
            int clientID = SessionHelper.getClientId();

            IQueryable<AdjusterMaster> adjusters = null;

            adjusters = AdjusterManager.GetAll(clientID);

            ddlAdjuster.DataSource = adjusters.ToList();
            ddlAdjuster.DataValueField = "AdjusterId";
            ddlAdjuster.DataTextField = "adjusterName";
            ddlAdjuster.DataBind();
            ddlAdjuster.Items.Insert(0, new ListItem("--- Select ---", "0"));

            //CollectionManager.FillCollection(ddlAdjuster, "AdjusterId", "adjusterName", adjusters);

            ViewState["businessRuleID"] = businessRule.BusinessRuleID.ToString();

            clearFields();

            if (businessRule.BusinessRuleID == 0) {
                // for new rules only.
                cbxActive.Checked = true;
            }
            else {
                // edit
                XElement ruleXML = XElement.Parse(businessRule.RuleXML);
                cbxActive.Checked = businessRule.IsActive;
                cbxEmailAdjuster.Checked = businessRule.EmailAdjuster;
                cbxEmailSupervisor.Checked = businessRule.EmailSupervisor;
                txtDescription.Text = businessRule.Description;

                using (RuleHelper ruleHelper = new RuleHelper()) {
                    XElement invoiceCondition = ruleHelper.GetElement(ruleXML, "Claim");
                    txtNumberOfClaims.Text = invoiceCondition.Element("value").Value;

                    XElement adjusterCondition = ruleHelper.GetElement(ruleXML, "AdjusterID");
                    ddlAdjuster.SelectedValue = adjusterCondition.Element("value").Value;
                }

                //.Where(x => x.Element("property").Value == "Invoice").FirstOrDefault();
            }
        }
Пример #36
0
        public List<Claim> TestRule(BusinessRule rule)
        {
            //List<BusinessRule> rules = null;
            List<Claim> claims = null;
            int lapsedTime = 0;
            DateTime now = DateTime.Now;

            //// get business rules for client/rule type id
            //using (BusinessRuleManager repository = new BusinessRuleManager()) {
            //	rules = repository.GetBusinessRules(Globals.RuleType.ClaimAssingmentReview);
            //}

            XElement ruleXML = XElement.Parse(rule.RuleXML);

            // get lapse time units: number of hours or days
            int.TryParse(GetElementValue(ruleXML, "LapseTime"), out lapsedTime);

            // get lapse time type: hours or days
            string lapseTimeType = GetElementValue(ruleXML, "LapseTimeType");

            Expression<Func<Claim, bool>> predicate = null;

            // query filters
            predicate = PredicateBuilder.True<CRM.Data.Entities.Claim>();
            //predicate = predicate.And(x => x.LeadPolicy.Lead.ClientID == clientID);			// claims for this client only
            predicate = predicate.And(x => x.IsActive == true);							// active claims
            predicate = predicate.And(x => x.LastStatusUpdate != null);
            predicate = predicate.And(x => x.ProgressStatusID == (int)Globals.ClaimProgressStatus.ClaimAssignedNotAcceptedYet);

            // determine time lapsed
            if (lapseTimeType == "1") {		// hours
                predicate = predicate.And(x => EntityFunctions.DiffHours(x.LastProgressChanged, now) > lapsedTime);
            }
            else if (lapseTimeType == "2") {	// days
                predicate = predicate.And(x => EntityFunctions.DiffDays(x.LastProgressChanged, now) > lapsedTime);
            }

            using (ClaimManager repository = new ClaimManager()) {
                claims = repository.SearchClaim(predicate);
            }

            return claims;
        }
 public BusinessRuleException(BusinessRule rule, string message)
     : base(message)
 {
     BusinessRule = rule;
 }
 public BusinessRuleException(BusinessRule rule, string message, Exception inner)
     : base(message, inner)
 {
     BusinessRule = rule;
 }
 public BusinessRuleException(BusinessRule rule)
     : this(rule, rule.ToString())
 {
 }
Пример #40
0
        // Create a new business rule and publish the rule to enable it in the validation process.
        private static void CreateAndPublishBR(string modelName, string entityName, string ruleName)
        {
            try
            {
                // Set Model and Entity objects.
                Identifier modelId = new Identifier { Name = modelName };
                Identifier entityId = new Identifier { Name = entityName };

                // Create the request object.
                MDSTestService.BusinessRulesCreateRequest ruleCreateRequest = new MDSTestService.BusinessRulesCreateRequest();
                ruleCreateRequest.ReturnCreatedIdentifiers = true;
                ruleCreateRequest.BusinessRuleSet = new MDSTestService.BusinessRules();

                // Create a new business rule.
                BusinessRule newRule = new BusinessRule();
                ruleCreateRequest.BusinessRuleSet.BusinessRulesMember = new System.Collections.ObjectModel.Collection<BusinessRule> { };
                ruleCreateRequest.BusinessRuleSet.BusinessRulesMember.Add(newRule);

                newRule.Identifier = new MemberTypeContextIdentifier
                {
                    Name = ruleName,
                    ModelId = modelId,
                    EntityId = entityId,
                    MemberType = MemberType.Leaf
                };

                newRule.Priority = 10;
                newRule.BRConditionTree = new BRConditionTreeNode();
                newRule.BRConditionTree.LogicalOperator = LogicalOperator.And;
                newRule.BRConditionTree.Sequence = 1;

                // Create the rule condition "Code equals ABC".
                BRCondition ruleCondition = new BRCondition();
                newRule.BRConditionTree.BRConditions = new System.Collections.ObjectModel.Collection<BRCondition> { };
                newRule.BRConditionTree.BRConditions.Add(ruleCondition);
                ruleCondition.Sequence = 1;

                // Create the condition prefix argument for Code attribute.
                BRAttributeArgument conditionPrefix = new BRAttributeArgument();
                ruleCondition.PrefixArgument = conditionPrefix;
                conditionPrefix.PropertyName = BRPropertyName.Anchor;
                conditionPrefix.AttributeId = new Identifier { Name = "Code" };

                // Set the condition operator.
                ruleCondition.Operator = BRItemType.IsEqual;

                // Set the postfix argument "ABC".
                BRFreeformArgument conditionPostfix = new BRFreeformArgument();
                ruleCondition.PostfixArguments = new System.Collections.ObjectModel.Collection<object> { };
                ruleCondition.PostfixArguments.Add(conditionPostfix);
                conditionPostfix.PropertyName = BRPropertyName.Value;
                conditionPostfix.Value = "ABC";

                // Create the rule action "Name must be equal to Test".
                BRAction ruleAction = new BRAction();
                newRule.BRActions = new System.Collections.ObjectModel.Collection<BRAction> { };
                newRule.BRActions.Add(ruleAction);
                ruleAction.Sequence = 1;

                // Set the action prefix argument for Name attribute.
                BRAttributeArgument actionPrefix = new BRAttributeArgument();
                ruleAction.PrefixArgument = actionPrefix;
                actionPrefix.PropertyName = BRPropertyName.Anchor;
                actionPrefix.AttributeId = new Identifier { Name = "Name" };

                // Set the action operator.
                ruleAction.Operator = BRItemType.MustBeEqual;

                // Set the action postfix argument.
                BRFreeformArgument actionPostfix = new BRFreeformArgument();
                ruleAction.PostfixArguments = new System.Collections.ObjectModel.Collection<object> { };
                ruleAction.PostfixArguments.Add(actionPostfix);
                actionPostfix.PropertyName = BRPropertyName.Value;
                actionPostfix.Value = "Test";

                // Create the business rule.
                MDSTestService.BusinessRulesCreateResponse ruleCreateResponse = clientProxy.BusinessRulesCreate(ruleCreateRequest);

                HandleOperationErrors(ruleCreateResponse.OperationResult);

                // Create the request object.
                MDSTestService.BusinessRulesPublishRequest rulePublishRequest = new MDSTestService.BusinessRulesPublishRequest();
                rulePublishRequest.BRPublishCriteria = new BRPublishCriteria();
                rulePublishRequest.BRPublishCriteria.EntityId = entityId;
                rulePublishRequest.BRPublishCriteria.ModelId = modelId;
                rulePublishRequest.BRPublishCriteria.MemberType = BREntityMemberType.Leaf;

                // Publish the business rule.
                MDSTestService.MessageResponse rulePublishResponse = clientProxy.BusinessRulesPublish(rulePublishRequest);

                HandleOperationErrors(rulePublishResponse.OperationResult);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: {0}", ex);
            }
        }
Пример #41
0
        public BusinessRule Save(BusinessRule rule)
        {
            if (rule.BusinessRuleID == 0)
                claimRulerDBContext.BusinessRule.Add(rule);

            rule.UpdateDate = DateTime.Now;

            claimRulerDBContext.SaveChanges();

            return rule;
        }
Пример #42
0
        protected void lbtnNewRule_Click(object sender, EventArgs e)
        {
            int ruleTypeID = 0;
            ruleTypeID = Convert.ToInt32(ddlRules.SelectedValue);
            BusinessRule businessRule = new BusinessRule();

            pnlNew.Visible = true;

            pnlGrid.Visible = false;
            hidePanels();
        }
Пример #43
0
 protected void AddBrokenRule(BusinessRule businessRule)
 {
     _brokenRules.Add(businessRule);
 }
Пример #44
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            BusinessRule rule = null;
            int businessRuleID = 0;

            Page.Validate("rule");
            if (!Page.IsValid)
                return;

            businessRuleID = Convert.ToInt32(ViewState["businessRuleID"]);
            lblMessage.Text = "";
            lblMessage.Visible = false;

            try
            {
                using (BusinessRuleManager repository = new BusinessRuleManager())
                {

                    if (businessRuleID == 0)
                    {
                        rule = new BusinessRule();
                        BusinessRules businessRulesObj = new BusinessRules();
                        rule.RuleID = Convert.ToInt32(Session["ruleId"]);
                        rule.ClientID = SessionHelper.getClientId();
                        rule.CarrierId = Convert.ToInt32(this.ddlCarrier.SelectedValue);
                    }
                    else
                    {
                        rule = repository.GetBusinessRule(businessRuleID);
                    }

                    if (rule != null)
                    {
                        rule.IsActive = cbxActive.Checked;
                        rule.EmailAdjuster = cbxEmailAdjuster.Checked;
                        rule.EmailSupervisor = cbxEmailSupervisor.Checked;
                        rule.CarrierId = Convert.ToInt32(this.ddlCarrier.SelectedValue);
                        rule.Description = txtDescription.Text;
                        ViewState["businessRuleID"] = rule.BusinessRuleID.ToString();
                        rule.RuleXML = buildRule().ToString();
                        rule = repository.Save(rule);
                        string str_query = @"update BusinessRule set
                                            CarrierId = @CarrierId

                                    where

                                        BusinessRuleID=@BusinessRuleID
                                ";

                        using (SqlConnection conn = new SqlConnection(connectionString))
                        using (SqlCommand cmd = new SqlCommand(str_query, conn))
                        {

                            cmd.Parameters.AddWithValue("@BusinessRuleID ", rule.BusinessRuleID);
                            cmd.Parameters.AddWithValue("@CarrierId", rule.CarrierId);

                            conn.Open();

                            cmd.ExecuteNonQuery();
                            conn.Close();
                            conn.Dispose();

                            conn.Close();
                        }

                        lblMessage.Text = "Rule saved successfully.";
                        // notifyUser(txtDescription.Text, SessionHelper.getClientId());
                        lblMessage.CssClass = "ok";
                        lblMessage.Visible = true;
                    }
                }

                Login login = new Login();
                login.setGlobalSession();
                login.formatException();
                login.setRulexception();
            }
            catch (Exception ex)
            {
                Core.EmailHelper.emailError(ex);
                lblMessage.Text = "Rule not saved.";
                lblMessage.CssClass = "error";
                lblMessage.Visible = true;
            }
        }
Пример #45
0
        public bool checkSupervisorSendMail(int businessRuleId)
        {
            BusinessRuleManager businessRuleManagerObj = new BusinessRuleManager();
            BusinessRule businessRuleObj = new BusinessRule();
            businessRuleObj = businessRuleManagerObj.GetBusinessRule(businessRuleId);
            if (businessRuleObj.EmailSupervisor && businessRuleObj.IsActive == true)
            {

                return true;
            }
            else
            {
                return false;
            }
        }
Пример #46
0
        public void adjusterSendMail(int BusinessRuleID, int clientId, int userId, int claimId)
        {
            BusinessRuleManager businessRuleManagerObj = new BusinessRuleManager();
            BusinessRule businessRuleObj = new BusinessRule();
            businessRuleObj = businessRuleManagerObj.GetBusinessRule(BusinessRuleID);

            List<string> emailData = new List<string>();
            emailData = getEmailData(claimId, BusinessRuleID);

            string adjusterEmail = emailData[0];
            string adjusterName = emailData[1];
            string superVisorEmail = emailData[2];
            string superVisorName = emailData[3];
            string adjusterClaimNumber = emailData[4];
            string dateRecieved = emailData[5];
            string businessDescription = emailData[6];
            string redFlagName = emailData[7];
            string insuredName = emailData[8];
            string encryptedClaimNumber = emailData[9];
            StringBuilder mailContent = mail_content(adjusterEmail, adjusterName, superVisorEmail, superVisorName, adjusterClaimNumber, dateRecieved, businessDescription, redFlagName, insuredName, encryptedClaimNumber);
            string subjectString = get_mail_content(adjusterEmail, adjusterName, superVisorEmail, superVisorName, adjusterClaimNumber, dateRecieved, businessDescription, redFlagName, insuredName, encryptedClaimNumber);

            if (adjusterEmail != "")
            {
                sendMail(adjusterEmail, adjusterName, mailContent, subjectString);
            }
        }
Пример #47
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            BusinessRule rule = null;
            int businessRuleID = 0;

            Page.Validate("rule");
            if (!Page.IsValid)
                return;

            businessRuleID = Convert.ToInt32(ViewState["businessRuleID"]);
            lblMessage.Text = "";
            lblMessage.Visible = false;

            try {
                using (BusinessRuleManager repository = new BusinessRuleManager()) {

                    if (businessRuleID == 0) {
                        rule = new BusinessRule();
                        rule.RuleID = (int)Globals.RuleType.AdjusterClaimReview;
                        rule.ClientID = SessionHelper.getClientId();
                    }
                    else {
                        rule = repository.GetBusinessRule(businessRuleID);
                    }

                    if (rule != null) {
                        rule.UpdateDate = DateTime.Now;

                        rule.IsActive = cbxActive.Checked;
                        rule.EmailAdjuster = cbxEmailAdjuster.Checked;
                        rule.EmailSupervisor = cbxEmailSupervisor.Checked;

                        rule.Description = txtDescription.Text;

                        rule.RuleXML = buildRule().ToString();

                        rule = repository.Save(rule);

                        ViewState["businessRuleID"] = rule.BusinessRuleID.ToString();

                        lblMessage.Text = "Rule saved successfully.";
                        lblMessage.CssClass = "ok";
                        lblMessage.Visible = true;
                    }
                }
            }
            catch (Exception ex) {
                Core.EmailHelper.emailError(ex);
                lblMessage.Text = "Rule not saved.";
                lblMessage.CssClass = "error";
                lblMessage.Visible = true;
            }
        }
Пример #48
0
        public List<string> getEmailData(int claimId, int BusinessRuleID)
        {
            List<string> emailData = new List<string>();
            string adjusterEmail = "";

            int adjusterId = 0;
            int superVisorId = 0;
            string adjusterClaimNumber = "";
            string dateRecieved = "";
            int ruleId = 0;
            string businessDescription = "";
            string redFlagName = "";
            string insuredName = "";
            string adjusterName = "";
            ClaimManager ClaimManagerObj = new ClaimManager();
            Claim claimObj = new Claim();
            claimObj = ClaimManagerObj.Get(claimId);
            if (claimObj != null && claimObj.AdjusterID != null)
            {
                adjusterId = Convert.ToInt32(claimObj.AdjusterID);
            }

            if (claimObj != null && claimObj.InsurerClaimNumber != null)
            {
                adjusterClaimNumber = claimObj.InsurerClaimNumber;

            }

            if (claimObj != null && claimObj.DateOpenedReported != null)
            {
                dateRecieved = Convert.ToString(claimObj.DateOpenedReported);
            }

            AdjusterMaster adjusterMasterObj = new AdjusterMaster();

            if (claimObj != null) { adjusterMasterObj = claimObj.AdjusterMaster; }
            if (adjusterMasterObj != null && adjusterMasterObj.email != null)
            {
                adjusterEmail = Convert.ToString(adjusterMasterObj.email);
            }

            if (adjusterMasterObj != null && adjusterMasterObj.adjusterName != null)
            {
                adjusterName = Convert.ToString(adjusterMasterObj.adjusterName);
            }

            if (adjusterMasterObj != null && adjusterMasterObj.SupervisorID != null)
            {
                superVisorId = Convert.ToInt32(adjusterMasterObj.SupervisorID);
            }

            CRM.Data.Entities.SecUser secUserObj = new CRM.Data.Entities.SecUser();

            secUserObj = getSecUser(superVisorId);
            insuredName = claimObj.LeadPolicy.Leads.insuredName;

            BusinessRuleManager BusinessRuleManagerObj = new BusinessRuleManager();
            BusinessRule BusinessRuleObj = new BusinessRule();
            BusinessRuleObj = BusinessRuleManagerObj.GetBusinessRule(BusinessRuleID);
            if (BusinessRuleObj.RuleID != null)
            {
                ruleId = Convert.ToInt32(BusinessRuleObj.RuleID);
            };
            businessDescription = BusinessRuleObj.Description;

            CRM.Data.Entities.Rule ruleObj = new CRM.Data.Entities.Rule();
            ruleObj = BusinessRuleManagerObj.GetRule(ruleId);
            redFlagName = ruleObj.RuleName;
            string encryptedClaimNumber = Core.SecurityManager.EncryptQueryString(claimId.ToString());

            emailData.Add(adjusterEmail);
            emailData.Add(adjusterName);
            emailData.Add(secUserObj.Email);
            emailData.Add(secUserObj.UserName);
            emailData.Add(adjusterClaimNumber);
            emailData.Add(dateRecieved);
            emailData.Add(businessDescription);
            emailData.Add(redFlagName);
            emailData.Add(insuredName);
            emailData.Add(encryptedClaimNumber);
            return emailData;
        }
Пример #49
0
        public void bindData(BusinessRule businessRule)
        {
            int clientID = SessionHelper.getClientId();

            ViewState["businessRuleID"] = businessRule.BusinessRuleID.ToString();

            clearFields();

            if (businessRule.BusinessRuleID == 0)
            {
                // for new rules only.
                cbxActive.Checked = true;
                carriers = CarrierManager.GetCarriers(clientID).ToList();
                CollectionManager.FillCollection(ddlCarrier, "CarrierID", "CarrierName", carriers);
            }
            else
            {
                // edit
                XElement ruleXML = XElement.Parse(businessRule.RuleXML);
                cbxActive.Checked = businessRule.IsActive;
                cbxEmailAdjuster.Checked = businessRule.EmailAdjuster;
                cbxEmailSupervisor.Checked = businessRule.EmailSupervisor;

                txtDescription.Text = businessRule.Description;

                carriers = CarrierManager.GetCarriers(clientID).ToList();
                CollectionManager.FillCollection(ddlCarrier, "CarrierID", "CarrierName", carriers);

                string str_query = @"SELECT * FROM BusinessRule WHERE BusinessRuleID = @BusinessRuleId
                                       ";
                using (SqlConnection conn = new SqlConnection(connectionString))
                using (SqlCommand cmd = new SqlCommand(str_query, conn))
                {
                    cmd.Parameters.AddWithValue("@BusinessRuleId", businessRule.BusinessRuleID);

                    conn.Open();
                    SqlDataReader reader = cmd.ExecuteReader();
                    while (reader.Read())
                    {
                        BusinessRule businessRuleObj = new BusinessRule();

                        businessRuleObj.BusinessRuleID = Convert.ToInt32(reader["BusinessRuleID"]);
                        if (reader["CarrierId"] == DBNull.Value)
                        {
                            ddlCarrierId = 0;
                        }
                        else {
                            ddlCarrierId = Convert.ToInt32(reader["CarrierId"]);
                        }

                    }

                    conn.Close();
                }
                ddlCarrier.SelectedValue = Convert.ToString(ddlCarrierId);

                using (RuleHelper ruleHelper = new RuleHelper())
                {
                    XElement conditionLapseTime = ruleHelper.GetElement(ruleXML, "LapseTime");
                    txtDayHours.Value = conditionLapseTime.Element("value").Value;

                    XElement conditionLapseTimeType = ruleHelper.GetElement(ruleXML, "LapseTimeType");
                    setValue(this.ddlhourday, conditionLapseTimeType.Element("value").Value);
                }
            }
        }