示例#1
0
        public OperateResult Add(BenefitInfo model)
        {
            using (SystemDB db = new SystemDB())
            {
                try
                {
                    var match = from m in db.benefitInfoList
                                where m.code.Equals(model.code)
                                select m;
                    if (match.Count() > 0)
                    {
                        return(new OperateResult
                        {
                            content = "该绩效代码已经存在",
                        });
                    }

                    db.benefitInfoList.Add(model);
                    db.SaveChanges();

                    return(new OperateResult
                    {
                        status = OperateStatus.Success,
                    });
                }
                catch (Exception ex)
                {
                    return(new OperateResult
                    {
                        content = ex.Message,
                    });
                }
            }
        }
示例#2
0
        private void CalculateForIndividual(IBenefitPerson person, BenefitInfo benefitsSummary)
        {
            _benefitDiscountPolicy.CalculateDiscount(person);

            benefitsSummary.BaseAnnualCost       += person.Benefits.BaseAnnualCost;
            benefitsSummary.DiscountedAnnualCost += person.Benefits.DiscountedAnnualCost;
            benefitsSummary.DiscountApplied       = benefitsSummary.DiscountApplied || person.Benefits.DiscountApplied;
        }
示例#3
0
        public BenefitInfo Calculate(Employee employee)
        {
            var benefitsSummary = new BenefitInfo();

            CalculateForIndividual(employee, benefitsSummary);

            foreach (var d in employee.Dependents)
            {
                CalculateForIndividual(d, benefitsSummary);
            }

            employee.BenefitSummary = benefitsSummary;
            return(benefitsSummary);
        }
 public BenefitInfo[] GetBenefitsList()
 {
     //  HttpContext.Current.Trace.IsEnabled = true;
     HttpContext.Current.Trace.Warn("Benefit component", "Beginning of GetBenefitsList");
     BenefitInfo[] benefitsArray = new BenefitInfo[4];
     benefitsArray[0].benefitName = "Dental";
     benefitsArray[0].benefitPage = "dental.aspx";
     benefitsArray[1].benefitName = "Medical";
     benefitsArray[1].benefitPage = "medical.aspx";
     benefitsArray[2].benefitName = "Life Insurance";
     benefitsArray[2].benefitPage = "life.aspx";
     benefitsArray[3].benefitName = "Retirement Account";
     benefitsArray[3].benefitPage = "retirement.aspx";
     HttpContext.Current.Trace.Warn("Benefit component", "Ending of GetBenefitsList");
     return(benefitsArray);
 }
示例#5
0
        public ActionResult EditEntity(BenefitInfo model)
        {
            if (!ModelState.IsValid)
            {
                return(Json(
                           new OperateResult
                {
                    content = Model.Utility.GetModelStateErrors(ModelState),
                },
                           JsonRequestBehavior.AllowGet
                           ));
            }

            OperateResult or = BenefitManager.Update(model);

            return(Json(or, JsonRequestBehavior.AllowGet));
        }
示例#6
0
        public static OperateResult  Update(BenefitInfo model)
        {
            try
            {
                using (SystemDB db = new SystemDB())
                {
                    var elements = (from e in db.benefitInfoList
                                    where e.id != model.id && e.code == model.code
                                    select e
                                    ).ToList();
                    if (elements.Count() >= 1)
                    {
                        return(new OperateResult
                        {
                            content = "已经存在同名的效益代码",
                        });
                    }


                    db.Entry(model).State = EntityState.Modified;

                    db.SaveChanges();

                    LogManager.Add(new LogRecord
                    {
                        userId  = SessionHelper.GetUserId(),
                        time    = DateTime.Now,
                        type    = "Info",
                        content = "修改效益代码:" + model.code
                    });

                    return(new OperateResult
                    {
                        status = OperateStatus.Success,
                        content = "更新成功"
                    });
                }
            }
            catch (Exception ex)
            {
                return(new OperateResult
                {
                    content = Model.Utility.Utility.GetExceptionMsg(ex),
                });
            }
        }
示例#7
0
        public ActionResult CreateEntity(BenefitInfo model)
        {
            if (!ModelState.IsValid)
            {
                return(Json(
                           new OperateResult
                {
                    content = Model.Utility.GetModelStateErrors(ModelState),
                },
                           JsonRequestBehavior.AllowGet
                           ));
            }

            BenefitManager manager = new BenefitManager();

            OperateResult or = manager.Add(model);

            return(Json(or, JsonRequestBehavior.AllowGet));
        }
示例#8
0
        public static OperateResult  Add(BenefitInfo model)
        {
            try
            {
                using (SystemDB db = new SystemDB())
                {
                    var match = from m in db.benefitInfoList
                                where m.code.Equals(model.code)
                                select m;
                    if (match.Count() > 0)
                    {
                        return(new OperateResult
                        {
                            content = "该绩效代码已经存在",
                        });
                    }

                    db.benefitInfoList.Add(model);
                    db.SaveChanges();

                    LogManager.Add(new LogRecord
                    {
                        userId  = SessionHelper.GetUserId(),
                        time    = DateTime.Now,
                        type    = "Info",
                        content = "添加效益代码:" + model.code
                    });

                    return(new OperateResult
                    {
                        status = OperateStatus.Success,
                    });
                }
            }
            catch (Exception ex)
            {
                return(new OperateResult
                {
                    content = Model.Utility.Utility.GetExceptionMsg(ex),
                });
            }
        }
示例#9
0
        public bool BenefitAddStub()
        {
            for (var i = 0; i < BenefitStubSize; i++)
            {
                BenefitInfo e = new BenefitInfo();

                e.code           = "B-" + i;
                e.benefitRewards = 2000 + i * 500;

                OperateResult or = BenefitManager.Add(e);
                if (or.status == OperateStatus.Error)
                {
                    StackTrace st  = new StackTrace(new StackFrame(true));
                    string     msg = $"App Trace >>> in file: {st.GetFrame(0).GetFileName()} " +
                                     $"line {st.GetFrame(0).GetFileLineNumber()} message: {or.content}";
                    Trace.WriteLine(msg);
                    return(false);
                }
            }

            return(true);
        }
示例#10
0
        public OperateResult Update(BenefitInfo model)
        {
            using (SystemDB db = new SystemDB())
            {
                try
                {
                    var elements = (from e in db.benefitInfoList
                                    where e.id != model.id && e.code == model.code
                                    select e
                                    ).ToList();
                    if (elements.Count() >= 1)
                    {
                        return(new OperateResult
                        {
                            content = "已经存在同名的效益代码",
                        });
                    }


                    db.Entry(model).State = EntityState.Modified;

                    db.SaveChanges();

                    return(new OperateResult
                    {
                        status = OperateStatus.Success,
                        content = "更新成功"
                    });
                }
                catch (Exception ex)
                {
                    return(new OperateResult
                    {
                        content = ex.Message,
                    });
                }
            }
        }