Exemple #1
0
        /// <summary>
        /// 比例
        /// </summary>
        /// <param name="num"></param>
        /// <returns></returns>
        public static string Scale(PoliceInsurance data, string com, string num)
        {
            if (string.IsNullOrWhiteSpace(num))
            {
                return(string.Empty);
            }
            if (com == "企业")
            {    /*  四舍五入 = 1,
                  * 直接舍去 = 2,
                  * 直接进位 =3,
                  * 四舍六入五取偶=4*/
                switch ((int)(data.CompanySub))
                {
                case 1:
                    return(decimal.Round(decimal.Parse(num) * ((decimal)data.CompanyPercent) / 100, (int)data.CompanyDigit, MidpointRounding.AwayFromZero).ToString());

                case 2:

                    var pow = (int)((Math.Pow(10, ((double)data.CompanyDigit))));
                    return((decimal.Floor(decimal.Parse(num) * ((decimal)data.CompanyPercent) / 100 * pow) / pow).ToString());

                case 3:
                    var pow3 = (int)((Math.Pow(10, ((double)data.CompanyDigit))));
                    return((decimal.Ceiling(decimal.Parse(num) * ((decimal)data.CompanyPercent) / 100 * pow3) / pow3).ToString());

                case 4:
                    return(decimal.Round(decimal.Parse(num) * ((decimal)data.CompanyPercent) / 100, (int)data.CompanyDigit).ToString());

                default:
                    break;
                }
            }
            else
            {
                switch ((int)(data.EmployeeSub))
                {
                case 1:
                    return(decimal.Round(decimal.Parse(num) * ((decimal)data.EmployeePercent) / 100, (int)data.EmployeeDigit, MidpointRounding.AwayFromZero).ToString());

                case 2:

                    var pow = (int)((Math.Pow(10, ((double)data.EmployeeDigit))));
                    return((decimal.Floor(decimal.Parse(num) * ((decimal)data.EmployeePercent) / 100 * pow) / pow).ToString());

                case 3:
                    var pow3 = (int)((Math.Pow(10, ((double)data.EmployeeDigit))));
                    return((decimal.Ceiling(decimal.Parse(num) * ((decimal)data.EmployeePercent) / 100 * pow3) / pow3).ToString());

                case 4:
                    return(decimal.Round(decimal.Parse(num) * ((decimal)data.EmployeePercent) / 100, (int)data.EmployeeDigit).ToString());

                default:
                    break;
                }
            }
            return(string.Empty);
        }
Exemple #2
0
        public ActionResult Edit(string id)
        {
            ViewBag.Id = id;

            PoliceInsurance item = m_BLL.GetById(id);

            ViewBag.Id            = item.Insurance.Id + "-" + item.Insurance.Name;
            ViewBag.InsuranceName = item.Insurance.Name;
            return(View(item));
        }
 /// <summary>
 /// 创建一个社保政策
 /// </summary>
 /// <param name="validationErrors">返回的错误信息</param>
 /// <param name="db">数据库上下文</param>
 /// <param name="entity">一个社保政策</param>
 /// <returns></returns>
 public bool Create(ref ValidationErrors validationErrors, PoliceInsurance entity)
 {
     try
     {
         repository.Create(entity);
         return(true);
     }
     catch (Exception ex)
     {
         validationErrors.Add(ex.Message);
         ExceptionsHander.WriteExceptions(ex);
     }
     return(false);
 }
Exemple #4
0
        //缴纳基数

        /// <summary>
        /// 基数
        /// </summary>
        /// <param name="num"></param>
        /// <returns></returns>
        public static bool Between(PoliceInsurance data, string com, string num)
        {
            if (string.IsNullOrWhiteSpace(num))
            {
                return(false);
            }
            if (com == "企业")
            {
                return(!(Convert.ToDecimal(num) >= data.CompanyLowestNumber && Convert.ToDecimal(num) <= data.CompanyHighestNumber));
            }
            else
            {
                return(!(Convert.ToDecimal(num) >= data.EmployeeLowestNumber && Convert.ToDecimal(num) <= data.EmployeeHighestNumber));
            }
        }
Exemple #5
0
        /// <summary>
        /// 创建
        /// </summary>
        /// <param name="entity">实体对象</param>
        /// <returns></returns>
        public Common.ClientResult.Result Post([FromBody] PoliceInsurance entity)
        {
            Common.ClientResult.Result result = new Common.ClientResult.Result();
            if (entity != null && ModelState.IsValid)
            {
                //string currentPerson = GetCurrentPerson();
                //entity.CreateTime = DateTime.Now;
                //entity.CreatePerson = currentPerson;


                string returnValue = string.Empty;
                if (m_BLL.Create(ref validationErrors, entity))
                {
                    LogClassModels.WriteServiceLog(Suggestion.InsertSucceed + ",社保政策的信息的Id为" + entity.Id, "社保政策"
                                                   );//写入日志
                    result.Code    = Common.ClientCode.Succeed;
                    result.Message = Suggestion.InsertSucceed;
                    return(result); //提示创建成功
                }
                else
                {
                    if (validationErrors != null && validationErrors.Count > 0)
                    {
                        validationErrors.All(a =>
                        {
                            returnValue += a.ErrorMessage;
                            return(true);
                        });
                    }
                    LogClassModels.WriteServiceLog(Suggestion.InsertFail + ",社保政策的信息," + returnValue, "社保政策"
                                                   );//写入日志
                    result.Code    = Common.ClientCode.Fail;
                    result.Message = Suggestion.InsertFail + returnValue;
                    return(result); //提示插入失败
                }
            }

            result.Code    = Common.ClientCode.FindNull;
            result.Message = Suggestion.InsertFail + ",请核对输入的数据的格式"; //提示输入的数据的格式不对
            return(result);
        }
Exemple #6
0
        public ActionResult Details(string id)
        {
            PoliceInsurance item = m_BLL.GetById(id);

            return(View(item));
        }
Exemple #7
0
 public static bool Different(PoliceInsurance data, string com, string num)
 {
     return(true);//decimal.Round(decimal.Parse(num) * decimal.Parse("1"), 2).ToString();
 }
Exemple #8
0
        /// <summary>
        /// 根据ID获取数据模型
        /// </summary>
        /// <param name="id">编号</param>
        /// <returns></returns>
        public PoliceInsurance Get(int id)
        {
            PoliceInsurance item = m_BLL.GetById(id);

            return(item);
        }
Exemple #9
0
        /// <summary>
        /// 社保政策
        /// </summary>
        /// <param name="ID">政策手续id</param>
        /// <param name="PoliceAccountNatureid">户口性质id</param>
        /// <returns></returns>
        public ActionResult getPoliceInsuranceList(string City)
        {
            string PoliceInsuranceStatus = Status.启用.ToString();
            var    w = SysEntitiesO2O.InsuranceKind.Where(o => o.City == City);

            if (w.Count() > 0)
            {
                List <PoliceInsurance> PoliceInsuranceList = new List <PoliceInsurance>();
                foreach (var q in w)
                {
                    foreach (var e in q.PoliceInsurance)
                    {
                        PoliceInsurance PoliceInsuranceModle = new PoliceInsurance();
                        PoliceInsuranceModle.Id                    = e.Id;
                        PoliceInsuranceModle.Name                  = e.Name;
                        PoliceInsuranceModle.StartTime             = e.StartTime;
                        PoliceInsuranceModle.EndTime               = e.EndTime;
                        PoliceInsuranceModle.MaxPayMonth           = e.MaxPayMonth;
                        PoliceInsuranceModle.InsuranceAdd          = e.InsuranceAdd;
                        PoliceInsuranceModle.InsuranceReduce       = e.InsuranceReduce;
                        PoliceInsuranceModle.CompanyPercent        = e.CompanyPercent;
                        PoliceInsuranceModle.CompanyLowestNumber   = e.CompanyLowestNumber;
                        PoliceInsuranceModle.EmployeeLowestNumber  = e.EmployeeLowestNumber;
                        PoliceInsuranceModle.CompanyHighestNumber  = e.CompanyHighestNumber;
                        PoliceInsuranceModle.EmployeeHighestNumber = e.EmployeeHighestNumber;
                        PoliceInsuranceModle.EmployeePercent       = e.EmployeePercent;
                        PoliceInsuranceModle.IsDefault             = e.IsDefault;
                        PoliceInsuranceModle.State                 = e.State;


                        PoliceInsuranceModle.CreateTime   = e.CreateTime;
                        PoliceInsuranceModle.CreatePerson = e.CreatePerson;
                        PoliceInsuranceModle.UpdateTime   = e.UpdateTime;
                        PoliceInsuranceModle.UpdatePerson = e.UpdatePerson;

                        PoliceInsuranceList.Add(PoliceInsuranceModle);
                    }
                }
                var r = from c in PoliceInsuranceList

                        where c.State == PoliceInsuranceStatus
                        select new PoliceInsuranceModel
                {
                    Id                    = c.Id,
                    Name                  = c.Name,
                    StartTime             = c.StartTime == null ? "" : Convert.ToDateTime(c.StartTime).ToString("yyyy-MM-dd"),
                    EndTime               = c.EndTime == null ? "" : Convert.ToDateTime(c.EndTime).ToString("yyyy-MM-dd"),
                    MaxPayMonth           = c.MaxPayMonth,
                    InsuranceAdd          = c.InsuranceAdd,
                    InsuranceReduce       = c.InsuranceReduce,
                    CompanyPercent        = c.CompanyPercent * 100,
                    CompanyLowestNumber   = c.CompanyLowestNumber,
                    EmployeeLowestNumber  = c.EmployeeLowestNumber,
                    CompanyHighestNumber  = c.CompanyHighestNumber,
                    EmployeeHighestNumber = c.EmployeeHighestNumber,
                    EmployeePercent       = c.EmployeePercent * 100,
                    IsDefault             = c.IsDefault,
                    State                 = c.State,
                    CreateTime            = c.CreateTime == null ? "" : Convert.ToDateTime(c.CreateTime).ToString("yyyy-MM-dd"),
                    CreatePerson          = c.CreatePerson == null ? "" : c.CreatePerson,

                    UpdateTime   = c.UpdateTime == null ? "" : Convert.ToDateTime(c.UpdateTime).ToString("yyyy-MM-dd"),
                    UpdatePerson = c.UpdatePerson == null ? "" : c.UpdatePerson,
                };
                List <PoliceInsuranceModel> list = r.ToList();
                // join b in SysEntitiesO2O.InsuranceKind on c.InsuranceKindId equals b.P_ID
                jr.Data = new JsonMessageResult <List <PoliceInsuranceModel> >("0000", "成功!", list);
                return(jr);
            }
            return(null);
        }
Exemple #10
0
        public override bool Calculate(DAL.MYResult entity)
        {
            /*
             *                  <option value="养老保险">养老保险</option>
             *                  <option value="医疗保险">医疗保险</option>
             *                  <option value="失业保险">失业保险</option>
             *                  <option value="工伤保险">工伤保险</option>
             *                  <option value="生育保险">生育保险</option>
             *                  <option value="住房公积金">住房公积金</option>
             *                  <option value="补充养老保险">补充养老保险</option>
             *                  <option value="大病或者特种病">大病或者特种病</option>
             */
            //获取养老的政策
            PoliceInsuranceBLL pi   = new PoliceInsuranceBLL();
            PoliceInsurance    data = new PoliceInsurance();
            var policeInsurance     = pi.GetByVertion(entity.Vertion, entity.InsuranceId, list[City].Value, list[InsuranceStyle].Value);

            //以下为修改的地方
            data = policeInsurance.Where(w => w.InsuranceKindId == "养老保险").FirstOrDefault();
            if (data != null)
            {
                list[10].Red       = Between(data, "企业", list[10].Value);
                list[11].Calculate = data.CompanyPercent.ToString() + "%";
                list[12].Calculate = Scale(data, "企业", list[10].Value);
                list[13].Calculate = data.EmployeePercent.ToString() + "%";
                list[14].Calculate = Scale(data, "个人", list[10].Value);
                //list[11].Red = Different(data, "企业", list[11].Value);//错误配置,因为在第34行已经为其赋值了,就会自动对比是否相同
            }

            data = policeInsurance.Where(w => w.InsuranceKindId == "医疗保险").FirstOrDefault();
            if (data != null)
            {
                list[15].Red       = Between(data, "企业", list[15].Value);
                list[16].Calculate = data.CompanyPercent.ToString() + "%";
                list[17].Calculate = Scale(data, "企业", list[15].Value);
                list[18].Calculate = data.EmployeePercent.ToString() + "%";
                list[19].Calculate = Scale(data, "个人", list[15].Value);
            }

            data = policeInsurance.Where(w => w.InsuranceKindId == "失业保险").FirstOrDefault();
            if (data != null)
            {
                list[20].Red       = Between(data, "企业", list[20].Value);
                list[21].Calculate = data.CompanyPercent.ToString() + "%";
                list[22].Calculate = Scale(data, "企业", list[20].Value);
                list[23].Calculate = data.EmployeePercent.ToString() + "%";
                list[24].Calculate = Scale(data, "个人", list[20].Value);
            }

            data = policeInsurance.Where(w => w.InsuranceKindId == "生育保险").FirstOrDefault();
            if (data != null)
            {
                list[25].Red       = Between(data, "企业", list[25].Value);
                list[26].Calculate = data.CompanyPercent.ToString() + "%";
                list[27].Calculate = Scale(data, "企业", list[25].Value);
            }

            data = policeInsurance.Where(w => w.InsuranceKindId == "工伤保险").FirstOrDefault();
            if (data != null)
            {
                list[28].Red       = Between(data, "企业", list[28].Value);
                list[29].Calculate = data.CompanyPercent.ToString() + "%";
                list[30].Calculate = Scale(data, "企业", list[28].Value);
            }

            data = policeInsurance.Where(w => w.InsuranceKindId == "住房公积金").FirstOrDefault();
            if (data != null)
            {
                list[31].Red       = Between(data, "企业", list[31].Value);
                list[32].Calculate = data.CompanyPercent.ToString() + "%";
                list[33].Calculate = Scale(data, "企业", list[31].Value);
                list[34].Calculate = data.EmployeePercent.ToString() + "%";
                list[35].Calculate = Scale(data, "个人", list[31].Value);
            }
            return(true);
        }