username@email.com
2021-08-19 0b78a8e7557d020e98fe855d259a7a310fb96bb0
zhengcaioa/Services/HrSalaryService.cs
@@ -136,19 +136,38 @@
                    //计算预发工资
                    if (user.advancewages.HasValue && user.advancewages.Value>0)
                    {
                        //上一次的工资
                        var bf= _context.HrSalaries.Where(c => c.Userid == user.Id && c.Islock== "Q" && c.RecStatus=="A").
                            OrderByDescending(c=>c.Year).ThenByDescending(c=>c.Month).FirstOrDefault();
                        var pc = user.advancewages.Value;
                        if (sum_f - sum_k > pc)
                        {
                            updatepltRole.Daozhanggongzi = sum_f - sum_k;
                            updatepltRole.Daozhanggongzi = sum_f - sum_k;
                            updatepltRole.Yufagongzi = 0;
                            if(bf!=null)
                            {
                                updatepltRole.Yufagongziheji = bf.Yufagongziheji??0 - (updatepltRole.Daozhanggongzi-pc);
                            }
                            else
                            {
                                updatepltRole.Yufagongziheji = (pc - updatepltRole.Daozhanggongzi);
                            }
                        }
                        else
                        {
                            //预发
                            updatepltRole.Daozhanggongzi = pc;
                            updatepltRole.Yufagongzi = pc - (sum_f - sum_k);
                            updatepltRole.Yufagongziheji += updatepltRole.Yufagongzi;
                            if (bf != null)
                            {
                                updatepltRole.Yufagongziheji =bf.Yufagongziheji??0+ updatepltRole.Yufagongzi;
                            }
                            else
                            {
                                updatepltRole.Yufagongziheji = updatepltRole.Yufagongzi;
                            }
                        }
                    }
                    else
                    {
@@ -350,7 +369,7 @@
            if (searchEntity.totalrows == 0)
            //if (searchEntity.totalrows == 0)
                searchEntity.totalrows = query.Count();
            var rolelist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
@@ -415,7 +434,7 @@
                          && (string.IsNullOrWhiteSpace(searchEntity.Usernumber) || f.Usernumber == searchEntity.Usernumber.Trim())
                            && (string.IsNullOrWhiteSpace(searchEntity.DeptId) || f.DeptId == searchEntity.DeptId.Trim())
                              && (string.IsNullOrWhiteSpace(searchEntity.UserName) || f.UserName.Contains(searchEntity.UserName.Trim()))
                              && ( (a.Year == year && a.Month == month))
                              && (string.IsNullOrWhiteSpace(searchEntity.YearMonth) || ( a.Year == year && a.Month == month ))
                         select new HrSalaryDTO
                         {
                             Id = a.Id,
@@ -488,7 +507,7 @@
            if (searchEntity.totalrows == 0)
            //if (searchEntity.totalrows == 0)
                searchEntity.totalrows = query.Count();
            var rolelist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
            if(rolelist!=null && rolelist.Count>0)
@@ -696,7 +715,9 @@
                        temp.reason = model.reason;
                        temp.amount = model.amount;
                        temp.basis = model.basis;
                        temp.sub_time = DateTime.Now;
                        temp.shenpi_status = model.shenpi_status;
                    }
                    else
                    {
@@ -727,12 +748,20 @@
        /// <param name="id"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        public HrSalaryAppeal GetAppeal(string id,string user)
        public HrSalaryAppeal GetAppeal(string id = "", string user = "", string salaryId = "")
        {
            HrSalaryAppeal hd = new HrSalaryAppeal();
            try
            {
                hd = _context.HrSalaryAppeal.Where(e => e.salary_id == id && e.sub_user == user).SingleOrDefault();
                if (!string.IsNullOrEmpty(salaryId))
                {
                    hd = _context.HrSalaryAppeal.Where(e => e.salary_id == salaryId && e.sub_user == user && e.status == "A").FirstOrDefault();
                }
                else
                {
                    hd = _context.HrSalaryAppeal.Where(e => e.id == id && e.status == "A").FirstOrDefault();
                }
            }
            catch (Exception er)
            {
@@ -780,7 +809,10 @@
                          && (string.IsNullOrWhiteSpace(searchEntity.Usernumber) || f.Usernumber == searchEntity.Usernumber.Trim())
                            && (string.IsNullOrWhiteSpace(searchEntity.DeptId) || f.DeptId == searchEntity.DeptId.Trim())
                              && (string.IsNullOrWhiteSpace(searchEntity.UserName) || f.UserName.Contains(searchEntity.UserName.Trim()))
                         select new HrSalaryDTO
                               && (string.IsNullOrWhiteSpace(searchEntity.UserId) || a.Userid.Contains(searchEntity.UserId.Trim()))
                        select new HrSalaryDTO
                         {
                             Id = a.Id,
@@ -850,7 +882,7 @@
                         }).OrderByDescending(x => x.Modifytime).ToList();
            if (searchEntity.totalrows == 0)
            //if (searchEntity.totalrows == 0)
                searchEntity.totalrows = list.Count();
            var rolelist = list.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
            if (rolelist != null && rolelist.Count > 0)