From db227144dedfb5fb5b1e94e8c8b14eab9eb7462f Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期四, 01 十二月 2022 13:32:50 +0800 Subject: [PATCH] 中国政采网的四川数据 发送验证码 --- zhengcaioa/Services/HrSalaryService.cs | 790 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 721 insertions(+), 69 deletions(-) diff --git a/zhengcaioa/Services/HrSalaryService.cs b/zhengcaioa/Services/HrSalaryService.cs index 9db306b..5c82b2a 100644 --- a/zhengcaioa/Services/HrSalaryService.cs +++ b/zhengcaioa/Services/HrSalaryService.cs @@ -93,16 +93,193 @@ return resultEntity; } + /// <summary> + /// 淇濆瓨宸ヨ祫鏍稿噯 + /// </summary> + /// <param name="dto"></param> + /// <returns></returns> + public ResultEntity SaveCheckSalary(HrSalaryUpDTO dto) + { + ResultEntity resultEntity = new ResultEntity(); + try + { + var updatepltRole = _context.HrSalaries.Where(c=>c.Id==dto.Id).SingleOrDefault(); + if(updatepltRole!=null) + { + //濡傛灉鏈夋湭瀹屾垚鐨勫伐浣滀氦鎺ワ紝涓嶈兘鏍稿噯宸ヨ祫 + var admAskJiaojies = _context.AdmAskJiaojies.Where(x => x.Creater == updatepltRole.Userid && x.RecStatus == "A" && x.ShenpiStatus == "D").ToList(); + if(admAskJiaojies!=null && admAskJiaojies.Count > 0) + { + resultEntity.Result = false; + resultEntity.Message = "鏈夋湭瀹屾垚鐨勫伐浣滀氦鎺ワ紝涓嶈兘鏍稿噯宸ヨ祫"; + return resultEntity; + } + + //鏇存柊鐢佃瘽璐圭敤鐘舵�� + var sim = _context.SimCost.Where(c => c.bill_year == updatepltRole.Year && c.bill_month <= updatepltRole.Month && c.user_id == updatepltRole.Userid && c.status == "0").ToList(); + if(sim!=null) + { + foreach (var item in sim) + { + item.status = "1"; + } + } + + var user = _context.PltUsers.Where(c => c.Id == updatepltRole.Userid).SingleOrDefault(); + var buchangqian = (updatepltRole.Jiangjin??0) + (updatepltRole.Bufagongzi ?? 0) + (updatepltRole.Jiucuo ?? 0) + (updatepltRole.Peichang ?? 0); + var buchanghou = (dto.Jiangjin ?? 0) + (dto.Bufagongzi ?? 0) + (dto.Jiucuo ?? 0) + (dto.Peichang ?? 0); + + + updatepltRole.Daozhanggongzi += (buchanghou - buchangqian); + if (user.advancewages.HasValue && user.advancewages.Value > 0) + { + + updatepltRole.Yufagongziheji += (buchanghou - buchangqian); + + } + + + updatepltRole.Jiangjin = dto.Jiangjin; + updatepltRole.Bufagongzi = dto.Bufagongzi; + updatepltRole.Peichang = dto.Peichang; + updatepltRole.Jiucuo = dto.Jiucuo; + updatepltRole.Yufagongziheji = dto.Yufagongziheji; + //updatepltRole.Daozhanggongzi = (updatepltRole.Daozhanggongzi ?? 0) + (updatepltRole.Jiangjin ?? 0) + (updatepltRole.Bufagongzi ?? 0) + (updatepltRole.Peichang ?? 0) + (updatepltRole.Jiucuo ?? 0); + // //updatepltRole.Yufagongziheji = (updatepltRole.Yufagongziheji ?? 0) + (updatepltRole.Jiangjin ?? 0) + (updatepltRole.Bufagongzi ?? 0) + (updatepltRole.Peichang ?? 0) + (updatepltRole.Jiucuo ?? 0); + + //var sum_f = (updatepltRole.Jibengongzi ?? 0) + (updatepltRole.Baomifei ?? 0) + (updatepltRole.Gongzuobutie ?? 0) + + // (updatepltRole.Jiabangongzi ?? 0) + (updatepltRole.Shebao ?? 0) + + // (updatepltRole.Quanqinjiang ?? 0) + (updatepltRole.Jiaotngbutie ?? 0) + (updatepltRole.Jixiaoticheng ?? 0); + + + //decimal dianhuafei = 0; + //if ((updatepltRole.Dianhuabutie ?? 0) - (updatepltRole.Dianhuafei ?? 0) <= 0) + //{ + // dianhuafei = (updatepltRole.Dianhuafei ?? 0)-(updatepltRole.Dianhuabutie ?? 0); + //} + + + + //var sum_k = (updatepltRole.Shebaokou ?? 0) + (updatepltRole.Geshui ?? 0) + dianhuafei + + // (updatepltRole.Queqin ?? 0) + (updatepltRole.Fakuan ?? 0); + + //updatepltRole.Daozhanggongzi = sum_f - sum_k; + + + + + + + ////璁$畻棰勫彂宸ヨ祫 + + //{ + // //涓婁竴娆$殑宸ヨ祫 + // 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.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); + // if (bf != null) + // { + // updatepltRole.Yufagongziheji =bf.Yufagongziheji??0+ updatepltRole.Yufagongzi; + // } + // else + // { + // updatepltRole.Yufagongziheji = updatepltRole.Yufagongzi; + // } + // } + //} + //else + //{ + // updatepltRole.Daozhanggongzi = sum_f - sum_k; + //} + + updatepltRole.Islock = "H"; + updatepltRole.Modifier = dto.Modifier; + updatepltRole.Modifytime =DateTime.Now; + var count= _context.SaveChanges(); + resultEntity.ReturnID = dto.Id; + resultEntity.Result = true; + } + } + catch (Exception ex) + { + resultEntity.Result = false; + resultEntity.Message = "淇濆瓨澶辫触锛岃鑱旂郴绠$悊鍛�"; + } + return resultEntity; + } + public HrSalaryDTO Get(string id) { - var entity = _context.HrSalaries.Find(id); + var entity = (from a in _context.HrSalaries + join b in _context.PltUsers on a.Userid equals b.Id + join c in _context.HrDepts on b.DeptId equals c.Id + where a.RecStatus == "A" && a.Id == id + select new HrSalaryDTO() + { + Id = a.Id, + Userid = a.Userid, + Usernumber = b.Usernumber, + UserName = b.UserName, + DeptName = c.DeptName, + Year = a.Year, + Month = a.Month, + Jibengongzi = a.Jibengongzi, + Baomifei = a.Baomifei, + Gongzuobutie = a.Gongzuobutie, + Jiabangongzi = a.Jiabangongzi, + Shebao = a.Shebao, + Dianhuabutie = a.Dianhuabutie, + Quanqinjiang = a.Quanqinjiang, + Jiaotngbutie = a.Jiaotngbutie, + Jixiaoticheng = a.Jixiaoticheng, + Jiangjin = a.Jiangjin, + Bufagongzi = a.Bufagongzi, + Shebaokou = a.Shebaokou, + Geshui = a.Geshui, + Dianhuafei = a.Dianhuafei, + Queqin = a.Queqin, + Fakuan = a.Fakuan, + Peichang = a.Peichang, + Jiucuo = a.Jiucuo, + Daozhanggongzi = a.Daozhanggongzi, + Yufagongzi = a.Yufagongzi, + Yufagongziheji = a.Yufagongziheji + }).SingleOrDefault(); - if (entity.RecStatus != "A") + if (entity==null) { - entity = new HrSalary(); + entity = new HrSalaryDTO(); } - var HrSalaryDTO = _mapper.Map<HrSalaryDTO>(entity); - return HrSalaryDTO; + else + { + var ss = _context.HrSalaryAppeal.Where(c => c.salary_id == id).SingleOrDefault(); + if(ss!=null) + { + entity.amount = ss.amount; + entity.basis = ss.basis; + entity.reason = ss.reason; + } + } + return entity; } public ResultDataEntity<HrSalaryDTO> SearchByPaging(HrSalaryDTOSearch searchEntity) @@ -131,15 +308,15 @@ int month = 0; if (string.IsNullOrWhiteSpace(searchEntity.YearMonth)) { - DateTime yearMonth = DateTime.Parse(searchEntity.YearMonth + "-01"); + DateTime yearMonth = DateTime.Now;//.Parse(searchEntity.YearMonth + "-01"); year = yearMonth.Year; month = yearMonth.Month; } var query = (from a in _context.HrSalaries//.Where(x => x.RecStatus == "A") - // join b in listCode.Where(x => x.CodeTable == "hr_jibengongzi" && x.CodeField == "dianhuabutie") - //on a.Dianhuabutie equals b.CodeSn - // into bsssss - // from bbb in bsssss.DefaultIfEmpty() + // join b in listCode.Where(x => x.CodeTable == "hr_jibengongzi" && x.CodeField == "dianhuabutie") + //on a.Dianhuabutie equals b.CodeSn + // into bsssss + // from bbb in bsssss.DefaultIfEmpty() join f in _context.PltUsers on a.Userid equals f.Id @@ -151,12 +328,529 @@ // into gsssss //from ggg in gsssss.DefaultIfEmpty() - where a.RecStatus == "A" + where a.RecStatus == "A" && a.Islock != "Q" + && (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())) + && (string.IsNullOrWhiteSpace(searchEntity.YearMonth) || ( a.Year == year && a.Month == month )) + select new HrSalaryDTO + { + Id = a.Id, + + Userid = a.Userid, + Usernumber = f.Usernumber, + UserName = f.UserName, + DeptName = g.DeptName, + Year = a.Year, + Month = a.Month, + Jibengongzi = a.Jibengongzi, + Baomifei = a.Baomifei, + Gongzuobutie = a.Gongzuobutie, + Jiabangongzi = a.Jiabangongzi, + + Shebao = a.Shebao, + + Dianhuabutie = a.Dianhuabutie, + + Quanqinjiang = a.Quanqinjiang, + Jiaotngbutie = a.Jiaotngbutie, + Jixiaoticheng = a.Jixiaoticheng, + Jiangjin = a.Jiangjin, + Bufagongzi = a.Bufagongzi, + Shebaokou = a.Shebaokou, + Geshui = a.Geshui, + Dianhuafei = a.Dianhuafei, + Queqin = a.Queqin, + Fakuan = a.Fakuan, + Peichang = a.Peichang, + Jiucuo = a.Jiucuo, + Daozhanggongzi = a.Daozhanggongzi, + Yufagongzi = a.Yufagongzi, + Yufagongziheji = a.Yufagongziheji, + + JibengongziName = a.Jibengongzi.HasValue ? a.Jibengongzi.Value.ToString("F2") : "", + BaomifeiName = a.Baomifei.HasValue ? a.Baomifei.Value.ToString("F2") : "", + GongzuobutieName = a.Gongzuobutie.HasValue ? a.Gongzuobutie.Value.ToString("F2") : "", + JiabangongziName = a.Jiabangongzi.HasValue ? a.Jiabangongzi.Value.ToString("F2") : "", + ShebaoName = a.Shebao.HasValue ? a.Shebao.Value.ToString("F2") : "", + + DianhuabutieName = a.Dianhuabutie.HasValue ? a.Dianhuabutie.Value.ToString("F2") : "", + QuanqinjiangName = a.Quanqinjiang.HasValue ? a.Quanqinjiang.Value.ToString("F2") : "", + JiaotngbutieName = a.Jiaotngbutie.HasValue ? a.Jiaotngbutie.Value.ToString("F2") : "", + JixiaotichengName = a.Jixiaoticheng.HasValue ? a.Jixiaoticheng.Value.ToString("F2") : "", + JiangjinName = a.Jiangjin.HasValue ? a.Jiangjin.Value.ToString("F2") : "", + BufagongziName = a.Bufagongzi.HasValue ? a.Bufagongzi.Value.ToString("F2") : "", + ShebaokouName = a.Shebaokou.HasValue ? a.Shebaokou.Value.ToString("F2") : "", + GeshuiName = a.Geshui.HasValue ? a.Geshui.Value.ToString("F2") : "", + DianhuafeiName = a.Dianhuafei.HasValue ? a.Dianhuafei.Value.ToString("F2") : "", + QueqinName = a.Queqin.HasValue ? a.Queqin.Value.ToString("F2") : "", + FakuanName = a.Fakuan.HasValue ? a.Fakuan.Value.ToString("F2") : "", + PeichangName = a.Peichang.HasValue ? a.Peichang.Value.ToString("F2") : "", + JiucuoName = a.Jiucuo.HasValue ? a.Jiucuo.Value.ToString("F2") : "", + DaozhanggongziName = a.Daozhanggongzi.HasValue ? a.Daozhanggongzi.Value.ToString("F2") : "", + YufagongziName = a.Yufagongzi.HasValue ? a.Yufagongzi.Value.ToString("F2") : "", + YufagongzihejiName = a.Yufagongziheji.HasValue ? a.Yufagongziheji.Value.ToString("F2") : "", + + Islock = a.Islock, + RecStatus = a.RecStatus, + Creater = a.Creater, + Createtime = a.Createtime, + Modifier = a.Modifier, + Modifytime = a.Modifytime, + + }).OrderByDescending(x => x.Modifytime).ToList(); + + + + + + + + //if (searchEntity.totalrows == 0) + searchEntity.totalrows = query.Count(); + var rolelist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList(); + + data.LoadData(searchEntity, rolelist); + return data; + } + + /// <summary> + /// 宸ヨ祫鏍稿噯鏌ヨ + /// </summary> + /// <param name="searchEntity"></param> + /// <returns></returns> + public ResultDataEntity<HrSalaryDTO> SearchSalaryByPaging(HrSalaryDTOSearch searchEntity) + { + ResultDataEntity<HrSalaryDTO> data = new ResultDataEntity<HrSalaryDTO>(); + + var listCode = (from e in _context.SysCodes + join c in _context.SysCodeDtls + on e.Id equals c.CodeId + where e.RecStatus == "A" + && c.RecStatus == "A" + && e.CodeTable == "t_sim_bind" + && e.CodeField == "cardpro" + select c).OrderBy(x => x.Sort).ToList(); + + int year = 0; + int month = 0; + if (string.IsNullOrWhiteSpace(searchEntity.YearMonth)) + { + DateTime yearMonth = DateTime.Now;//.Parse(searchEntity.YearMonth + "-01"); + year = yearMonth.Year; + month = yearMonth.Month; + } + else + { + var len = searchEntity.YearMonth.Split('-'); + if(len.Length==2) + { + year =int.Parse(len[0]); + month = int.Parse(len[1]); + } + + } + + var query = (from a in (_context.HrSalaries.Where(x => x.RecStatus == "A")) + //join b in listCode + //on a.Dianhuabutie equals b.CodeSn + //into bsssss + //from bbb in bsssss.DefaultIfEmpty() + + join f in _context.PltUsers + on a.Userid equals f.Id + // into fsssss + //from fff in fsssss.DefaultIfEmpty() + + join g in _context.HrDepts + on f.DeptId equals g.Id + // into gsssss + //from ggg in gsssss.DefaultIfEmpty() + + where a.RecStatus == "A" && a.Islock!="Q" && (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())) && (string.IsNullOrWhiteSpace(searchEntity.YearMonth) || ( a.Year == year && a.Month == month )) select new HrSalaryDTO + { + Id = a.Id, + + Userid = a.Userid, + Usernumber = f.Usernumber, + UserName = f.UserName, + DeptName = g.DeptName, + Year = a.Year, + Month = a.Month, + Jibengongzi = a.Jibengongzi, + Baomifei = a.Baomifei, + Gongzuobutie = a.Gongzuobutie, + Jiabangongzi = a.Jiabangongzi, + + Shebao = a.Shebao, + + Dianhuabutie = a.Dianhuabutie, + Quanqinjiang = a.Quanqinjiang, + Jiaotngbutie = a.Jiaotngbutie, + Jixiaoticheng = a.Jixiaoticheng, + Jiangjin = a.Jiangjin, + Bufagongzi = a.Bufagongzi, + Shebaokou = a.Shebaokou, + Geshui = a.Geshui, + Dianhuafei = a.Dianhuafei, + Queqin = a.Queqin, + Fakuan = a.Fakuan, + Peichang = a.Peichang, + Jiucuo = a.Jiucuo, + Daozhanggongzi = a.Daozhanggongzi, + Yufagongzi = a.Yufagongzi, + Yufagongziheji = a.Yufagongziheji, + + JibengongziName = a.Jibengongzi.HasValue ? a.Jibengongzi.Value.ToString("F2") : "", + BaomifeiName = a.Baomifei.HasValue ? a.Baomifei.Value.ToString("F2") : "", + GongzuobutieName = a.Gongzuobutie.HasValue ? a.Gongzuobutie.Value.ToString("F2") : "", + JiabangongziName = a.Jiabangongzi.HasValue ? a.Jiabangongzi.Value.ToString("F2") : "", + ShebaoName = a.Shebao.HasValue ? a.Shebao.Value.ToString("F2") : "", + + DianhuabutieName = a.Dianhuabutie.HasValue ? a.Dianhuabutie.Value.ToString("F2") : "", + QuanqinjiangName = a.Quanqinjiang.HasValue ? a.Quanqinjiang.Value.ToString("F2") : "", + JiaotngbutieName = a.Jiaotngbutie.HasValue ? a.Jiaotngbutie.Value.ToString("F2") : "", + JixiaotichengName = a.Jixiaoticheng.HasValue ? a.Jixiaoticheng.Value.ToString("F2") : "", + JiangjinName = a.Jiangjin.HasValue ? a.Jiangjin.Value.ToString("F2") : "", + BufagongziName = a.Bufagongzi.HasValue ? a.Bufagongzi.Value.ToString("F2") : "", + ShebaokouName = a.Shebaokou.HasValue ? a.Shebaokou.Value.ToString("F2") : "", + GeshuiName = a.Geshui.HasValue ? a.Geshui.Value.ToString("F2") : "", + DianhuafeiName = a.Dianhuafei.HasValue ? a.Dianhuafei.Value.ToString("F2") : "", + QueqinName = a.Queqin.HasValue ? a.Queqin.Value.ToString("F2") : "", + FakuanName = a.Fakuan.HasValue ? a.Fakuan.Value.ToString("F2") : "", + PeichangName = a.Peichang.HasValue ? a.Peichang.Value.ToString("F2") : "", + JiucuoName = a.Jiucuo.HasValue ? a.Jiucuo.Value.ToString("F2") : "", + DaozhanggongziName = a.Daozhanggongzi.HasValue ? a.Daozhanggongzi.Value.ToString("F2") : "", + YufagongziName = a.Yufagongzi.HasValue ? a.Yufagongzi.Value.ToString("F2") : "", + YufagongzihejiName = a.Yufagongziheji.HasValue ? a.Yufagongziheji.Value.ToString("F2") : "", + + Islock =a.Islock, + RecStatus = a.RecStatus, + Creater = a.Creater, + Createtime = a.Createtime, + Modifier = a.Modifier, + Modifytime = a.Modifytime, + + }).OrderBy(x => x.UserName).ToList(); + + + + + + + + //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) + { + foreach(var item in rolelist) + { + item.DianhuabutieChs = BackChs(listCode, item.Dianhuabutie); + } + } + data.LoadData(searchEntity, rolelist); + return data; + } + + /// <summary> + /// 娉ㄩ噴 + /// </summary> + /// <param name="listCode"></param> + /// <param name="code"></param> + /// <returns></returns> + private string BackChs(List<SysCodeDtl> listCode ,decimal? code ) + { + string str = "鏃�"; + if(code.HasValue) + { + var st = ((int)code.Value).ToString(); + var temp = listCode.Find(c => c.CodeSn == st); + if(temp!=null) + { + str = temp.Comments; + } + } + return str; + } + + public ResultEntity ModifyStatus(string id, string userid) + { + + ResultEntity result = new ResultEntity(); + result.Result = true; + + var model = _context.HrSalaries.Find(id); + if (model != null) + { + model.RecStatus = "D"; + model.Modifier = userid; + model.Modifytime = DateTime.Now; + _context.SaveChanges(); + } + + return result; + } + + + /// <summary> + /// 鑾峰彇鎵�鏈夋湁鏁堣鑹� + /// </summary> + /// <returns></returns> + public List<HrSalaryDTO> GetList() + { + + + var listPosition = _context.HrSalaries.Where(r => r.RecStatus == "A").ToList(); + + var list = _mapper.Map<List<HrSalaryDTO>>(listPosition); + return list; + } + + + + /// <summary> + /// 鑾峰彇鎵�鏈夋湁鏁堣鑹� + /// </summary> + /// <returns></returns> + public HrSalaryDTO GetListByUser(string Userid, int year, int month) + { + + + var listPosition = _context.HrSalaries.Where(r => r.RecStatus == "A" && r.Userid == Userid && r.Year == year && r.Month == month).FirstOrDefault(); + + HrSalaryDTO hrSalaryDTO = null; + if (listPosition != null) + { + hrSalaryDTO = _mapper.Map<HrSalaryDTO>(listPosition); + } + + return hrSalaryDTO; + } + /// <summary> + /// 宸ヨ祫鏍稿 + /// </summary> + /// <param name="userid"></param> + /// <param name="year"></param> + /// <param name="month"></param> + /// <returns></returns> + public List<HrSalaryDTO> GetSalary(string userid,int year,int month) + { + var listCode = (from e in _context.SysCodes + join c in _context.SysCodeDtls + on e.Id equals c.CodeId + where e.RecStatus == "A" + && c.RecStatus == "A" + && e.CodeTable == "t_sim_bind" + && e.CodeField == "cardpro" + select c).OrderBy(x => x.Sort).ToList(); + + var entity = (from a in _context.HrSalaries + join b in _context.PltUsers on a.Userid equals b.Id + join c in _context.HrDepts on b.DeptId equals c.Id + where a.RecStatus=="A" && a.Islock!="D" && a.Userid == userid && a.Year == year && a.Month==month + select new HrSalaryDTO() + { + Id = a.Id, + Userid = a.Userid, + Usernumber = b.Usernumber, + UserName = b.UserName, + DeptName = c.DeptName, + Year = a.Year, + Month = a.Month, + Jibengongzi = a.Jibengongzi, + Baomifei = a.Baomifei, + Gongzuobutie = a.Gongzuobutie, + Jiabangongzi = a.Jiabangongzi, + Shebao = a.Shebao, + Dianhuabutie = a.Dianhuabutie, + Quanqinjiang = a.Quanqinjiang, + Jiaotngbutie = a.Jiaotngbutie, + Jixiaoticheng = a.Jixiaoticheng, + Jiangjin = a.Jiangjin, + Bufagongzi = a.Bufagongzi, + Shebaokou = a.Shebaokou, + Geshui = a.Geshui, + Dianhuafei = a.Dianhuafei, + Queqin = a.Queqin, + Fakuan = a.Fakuan, + Peichang = a.Peichang, + Jiucuo = a.Jiucuo, + Daozhanggongzi = a.Daozhanggongzi, + Yufagongzi = a.Yufagongzi, + Yufagongziheji = a.Yufagongziheji, + Islock=a.Islock + }).ToList(); + + if (entity == null) + { + entity = new List<HrSalaryDTO>(); + } + else + { + foreach (var item in entity) + { + item.DianhuabutieChs = BackChs(listCode, item.Dianhuabutie); + } + } + return entity; + } + + /// <summary> + /// 宸ヨ祫纭 + /// </summary> + /// <param name="id"></param> + /// <param name="user"></param> + /// <returns></returns> + public ResultEntity CheckOk(string id,string user) + { + ResultEntity resultEntity = new ResultEntity(); + try + { + var updatepltRole = _context.HrSalaries.Where(c=>c.Id==id && c.Userid==user).FirstOrDefault(); + + if(updatepltRole!=null) + { + updatepltRole.Islock = "Q"; + updatepltRole.Modifier = user; + updatepltRole.Modifytime = DateTime.Now; + + _context.SaveChanges(); + resultEntity.Result = true; + } + } + catch (Exception ex) + { + resultEntity.Result = false; + resultEntity.Message = "淇濆瓨澶辫触锛岃鑱旂郴绠$悊鍛�"; + } + return resultEntity; + } + + /// <summary> + /// 鎻愪氦鐢宠瘔 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> + public ResultEntity CheckAppea(HrSalaryAppeal model) + { + ResultEntity resultEntity = new ResultEntity(); + try + { + var salary = _context.HrSalaries.Where(c => c.Id == model.salary_id && c.RecStatus == "A" && c.Islock != "Q").SingleOrDefault(); + if (salary != null) + { + salary.Islock = "S"; + var temp = _context.HrSalaryAppeal.Where(e => e.salary_id == model.salary_id && e.sub_user==model.sub_user).SingleOrDefault(); + if (temp != null && temp.status == "A") + { + temp.reason = model.reason; + temp.amount = model.amount; + temp.basis = model.basis; + temp.shenpi_status = model.shenpi_status; + + + } + else + { + model.id = Guid.NewGuid().ToString(); + model.year = salary.Year; + model.month = salary.Month; + model.sub_time = DateTime.Now; + model.status = "A"; + _context.HrSalaryAppeal.Add(model); + } + + var i= _context.SaveChanges(); + resultEntity.Result = true; + } + } + catch (Exception ex) + { + resultEntity.Result = false; + resultEntity.Message = "淇濆瓨澶辫触锛岃鑱旂郴绠$悊鍛�"; + ex.Message.ToString(); + } + return resultEntity; + } + + /// <summary> + /// 鏌ョ敵璇変俊鎭� + /// </summary> + /// <param name="id"></param> + /// <param name="user"></param> + /// <returns></returns> + public HrSalaryAppeal GetAppeal(string id = "", string user = "", string salaryId = "") + { + HrSalaryAppeal hd = new HrSalaryAppeal(); + try + { + 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) + { + throw; + } + return hd; + } + + /// <summary> + /// 宸ヨ祫鏌ヨ锛堟煡瀹屾垚纭鐨勶級 + /// </summary> + /// <param name="searchEntity"></param> + /// <returns></returns> + public ResultDataEntity<HrSalaryDTO> SearchByPagingFinish(HrSalaryDTOSearch searchEntity) + { + ResultDataEntity<HrSalaryDTO> data = new ResultDataEntity<HrSalaryDTO>(); + + var listCode = (from e in _context.SysCodes + join c in _context.SysCodeDtls + on e.Id equals c.CodeId + where e.RecStatus == "A" + && c.RecStatus == "A" + && e.CodeTable == "t_sim_bind" + && e.CodeField == "cardpro" + select c).OrderBy(x => x.Sort).ToList(); + + DateTime st = DateTime.Now.AddDays(1 - DateTime.Now.Day).Date; + DateTime et = DateTime.Now.AddDays(1 - DateTime.Now.Day).Date.AddMonths(1).AddSeconds(-1); + int month = 0; + if (!string.IsNullOrEmpty(searchEntity.searchDatestart)) + { + st = DateTime.Parse(searchEntity.searchDatestart + "-01"); + + } + if (!string.IsNullOrEmpty(searchEntity.searchDateend)) + { + et = DateTime.Parse(searchEntity.searchDateend + "-01"); + + } + var query = (from a in _context.HrSalaries where a.Year >= st.Year && a.Month >= st.Month && a.Year <= et.Year && a.Month <= et.Month select a); + + var list = (from a in query + join f in _context.PltUsers on a.Userid equals f.Id + join g in _context.HrDepts on f.DeptId equals g.Id + where a.RecStatus == "A" && a.Islock=="Q" + && (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())) + + && (string.IsNullOrWhiteSpace(searchEntity.UserId) || a.Userid.Contains(searchEntity.UserId.Trim())) + + select new HrSalaryDTO { Id = a.Id, @@ -216,9 +910,7 @@ YufagongziName = a.Yufagongzi.HasValue ? a.Yufagongzi.Value.ToString("F2") : "", YufagongzihejiName = a.Yufagongziheji.HasValue ? a.Yufagongziheji.Value.ToString("F2") : "", - - - Islock =a.Islock, + Islock = a.Islock, RecStatus = a.RecStatus, Creater = a.Creater, Createtime = a.Createtime, @@ -228,70 +920,30 @@ }).OrderByDescending(x => x.Modifytime).ToList(); - - - - - - if (searchEntity.totalrows == 0) - searchEntity.totalrows = query.Count(); - var rolelist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList(); - + //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) + { + foreach (var item in rolelist) + { + item.DianhuabutieChs = BackChs(listCode, item.Dianhuabutie); + } + } data.LoadData(searchEntity, rolelist); return data; } - public ResultEntity ModifyStatus(string id, string userid) + public void AutoCheck() { - - ResultEntity result = new ResultEntity(); - result.Result = true; - - var model = _context.HrSalaries.Find(id); - if (model != null) + try { - model.RecStatus = "D"; - model.Modifier = userid; - model.Modifytime = DateTime.Now; - _context.SaveChanges(); + var salary = _context.Database.ExecuteSqlRaw("update [hr_salary] set islock='Q',[modifier]='e4c93811-b9b1-4998-89f5-c416ebab0c07',modifytime=getdate() where islock = 'H' and DATEDIFF(hh,[modifytime], getdate()) > 72"); } - - return result; - } - - - /// <summary> - /// 鑾峰彇鎵�鏈夋湁鏁堣鑹� - /// </summary> - /// <returns></returns> - public List<HrSalaryDTO> GetList() - { - - - var listPosition = _context.HrSalaries.Where(r => r.RecStatus == "A").ToList(); - - var list = _mapper.Map<List<HrSalaryDTO>>(listPosition); - return list; - } - - - /// <summary> - /// 鑾峰彇鎵�鏈夋湁鏁堣鑹� - /// </summary> - /// <returns></returns> - public HrSalaryDTO GetListByUser(string Userid, int year, int month) - { - - - var listPosition = _context.HrSalaries.Where(r => r.RecStatus == "A" && r.Userid == Userid && r.Year == year && r.Month == month).FirstOrDefault(); - - HrSalaryDTO hrSalaryDTO = null; - if (listPosition != null) + catch (Exception) { - hrSalaryDTO = _mapper.Map<HrSalaryDTO>(listPosition); + throw; } - - return hrSalaryDTO; } } } -- Gitblit v1.9.1