username@email.com
2023-02-28 67a0042c5f29e4bb0e0b82f6190f2bc51480b45c
zhengcaioa/Services/LiaotianService.cs
@@ -55,6 +55,8 @@
                    updateliaotian.Problemtype = liaotian.Problemtype;
                    updateliaotian.Shiyongfatiao = liaotian.Shiyongfatiao;
                    updateliaotian.ChushuStatus = liaotian.ChushuStatus;
                    updateliaotian.Shenheer = liaotian.Shenheer;
                    updateliaotian.Shenhetime = liaotian.Shenhetime;
                }
                _context.SaveChanges();
@@ -105,7 +107,28 @@
            return sysCodeDtls;
        }
        public List<SysCodeDtl> GetSYScodeshanchu(string code_table, string code_field)
        {
            List<SysCodeDtl> sysCodeDtls = (from e in _context.SysCodes
                                            join c in _context.SysCodeDtls
                                            on e.Id equals c.CodeId
                                            where e.RecStatus == "A"
                                            && c.RecStatus == "D"
                                            && e.CodeTable == code_table
                                            && e.CodeField == code_field
                                            select c).OrderBy(x => x.Sort).ToList();
            return sysCodeDtls;
        }
        public ResultDataEntity<LiaotianDTO> SearchByPaging(LiaotianDTOSearch searchEntity)
        {
            ResultDataEntity<LiaotianDTO> data = new ResultDataEntity<LiaotianDTO>();
@@ -120,14 +143,23 @@
                DateTime.TryParse(Createtimes[1], out Createtimeend);
                Createtimeend = Createtimeend.AddDays(1);
            }
            //var query1 = _context.Liaotians.Where(a => a.RecStatus == "A");
            //筛选
            var query = (from a in _context.Liaotians
                         join h in _context.LiaotianShoucangs.Where(x => x.RecStatus == "A" && x.Creater == searchEntity.ShouCangCreater)
                      on a.Id equals h.LiaotianId
                     into hsss
                         from hhh in hsss.DefaultIfEmpty()
                     //    join h in _context.LiaotianShoucangs.Where(x => x.RecStatus == "A" && x.Creater == searchEntity.ShouCangCreater)
                     // on a.Id equals h.LiaotianId
                     //into hsss
                     //    from hhh in hsss.DefaultIfEmpty()
                         where a.RecStatus == "A"
@@ -139,7 +171,7 @@
   && (string.IsNullOrWhiteSpace(searchEntity.Shifoushenhe) || (a.Clientid == searchEntity.Shifoushenhe.Trim()))
    && (string.IsNullOrWhiteSpace(searchEntity.ChushuStatus) || (a.ChushuStatus == searchEntity.ChushuStatus.Trim()))
     && (string.IsNullOrWhiteSpace(searchEntity.Creater) || (a.Creater == searchEntity.Creater.Trim()))
      && (string.IsNullOrWhiteSpace(searchEntity.ShouCangStatus) || (searchEntity.ShouCangStatus == "A" && hhh.Id !=null) || (searchEntity.ShouCangStatus != "A" && hhh.Id == null))
      //&& (string.IsNullOrWhiteSpace(searchEntity.ShouCangStatus) || (searchEntity.ShouCangStatus == "A" && hhh.Id !=null) || (searchEntity.ShouCangStatus != "A" && hhh.Id == null))
                         select new LiaotianDTO
                         {
                             Id = a.Id,
@@ -155,6 +187,8 @@
                             Problemtype = a.Problemtype,
                             Shiyongfatiao = a.Shiyongfatiao,
                             ChushuStatus= a.ChushuStatus,
                             Shenheer = a.Shenheer,
                             Shenhetime = a.Shenhetime,
                         }
              )
              .Distinct() .OrderByDescending(x => x.Modifytime).ToList();
@@ -170,11 +204,11 @@
            
            if (searchEntity.totalrows == 0)
            //if (searchEntity.totalrows == 0)
                searchEntity.totalrows = query.Count();
            var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
            //list = _mapper.Map<List<LiaotianDTO>>(lianlist);
            data.LoadData(searchEntity, query);
            data.LoadData(searchEntity, lianlist);
            return data;
        }
@@ -330,5 +364,69 @@
            return result;
        }
        public ResultEntity saveSysUpdatetime(SysUpdatetime sysUpdatetime)
        {
            ResultEntity resultEntity = new ResultEntity();
            try
            {
                if (String.IsNullOrEmpty(sysUpdatetime.Id))
                {
                    sysUpdatetime.Id = Guid.NewGuid().ToString();
                    _context.SysUpdatetimes.Add(sysUpdatetime);
                }
                else
                {
                    var updateliaotian = _context.SysUpdatetimes.Find(sysUpdatetime.Id);
                    updateliaotian.Updatename = sysUpdatetime.Updatename;
                    updateliaotian.Updatetime = sysUpdatetime.Updatetime;
                }
                _context.SaveChanges();
                resultEntity.ReturnID = sysUpdatetime.Id;
                resultEntity.Result = true;
            }
            catch (Exception ex)
            {
                resultEntity.Result = false;
                resultEntity.Message = "保存失败,请联系管理员";
            }
            return resultEntity;
        }
        public SysUpdatetime GetSysUpdatetime(string updatename)
        {
            var entity = _context.SysUpdatetimes.Where(x=>x.Updatename == updatename).FirstOrDefault();
            return entity;
        }
        public List<LiaotianDTO> GetListsalary(string userid, DateTime datemin, DateTime datemax)
        {
            var listPosition = _context.Liaotians.Where(r => r.RecStatus == "A" && r.Creater == userid && r.Createtime >= datemin && r.Createtime < datemax).ToList();
            var list = _mapper.Map<List<LiaotianDTO>>(listPosition);
            return list;
        }
        public List<LiaotianDTO> GetListsalaryshenhe(string userid, DateTime datemin, DateTime datemax)
        {
            var listPosition = _context.Liaotians.Where(r => r.RecStatus == "A" && r.Shenheer == userid && r.Shenhetime >= datemin && r.Shenhetime < datemax).ToList();
            var list = _mapper.Map<List<LiaotianDTO>>(listPosition);
            return list;
        }
    }
}