username@email.com
2024-01-12 0e5c4a8e17dcefcc10b2507da61b099be12451d8
zhengcaioa/Services/ExpertService.cs
@@ -25,13 +25,42 @@
            ResultEntity resultEntity = new ResultEntity();
            try
            {
                var list =  _context.Experts.Where(e => e.IdCard == expertDTO.IdCard && e.RecStatus == "A" && e.Id != expertDTO.Id).ToList();
                if (list.Count > 0 )
                if (!string.IsNullOrEmpty(expertDTO.IdCard))
                {
                    resultEntity.Result = false;
                    resultEntity.Message = "该专家信息已经存在";
                    return resultEntity;
                    var list = _context.Experts.Where(e => e.IdCard == expertDTO.IdCard && e.RecStatus == "A" && e.Id != expertDTO.Id).ToList();
                    if (list.Count > 0)
                    {
                        resultEntity.Result = false;
                        resultEntity.Message = "该专家身份证信息已经存在";
                        return resultEntity;
                    }
                }
                if (!string.IsNullOrEmpty(expertDTO.Phone1))
                {
                    var list = _context.Experts.Where(e => e.Phone1 == expertDTO.Phone1 && e.RecStatus == "A" && e.Id != expertDTO.Id).ToList();
                    if (list.Count > 0)
                    {
                        resultEntity.Result = false;
                        resultEntity.Message = "该专家联系电话信息已经存在";
                        return resultEntity;
                    }
                }
                if (!string.IsNullOrEmpty(expertDTO.CertiNumber))
                {
                    var list = _context.Experts.Where(e => e.CertiNumber == expertDTO.CertiNumber && e.RecStatus == "A" && e.Id != expertDTO.Id).ToList();
                    if (list.Count > 0)
                    {
                        resultEntity.Result = false;
                        resultEntity.Message = "该专家专家证号信息已经存在";
                        return resultEntity;
                    }
                }
                Expert expert = _mapper.Map<Expert>(expertDTO);
                if (string.IsNullOrEmpty(expert.Id))
                {
@@ -41,6 +70,11 @@
                else
                {
                    var updateplExpert = _context.Experts.Find(expert.Id);
                    if(updateplExpert.Creater == "1")
                    {
                        updateplExpert.Creater = expert.Modifier;
                        updateplExpert.Createtime = expert.Modifytime;
                    }
                    updateplExpert.Name = expert.Name;
                    updateplExpert.Sex = expert.Sex;
                    updateplExpert.InfoSource = expert.InfoSource;
@@ -73,6 +107,9 @@
                    updateplExpert.TitileCerti9 = expert.TitileCerti9;
                    updateplExpert.TitileCerti10 = expert.TitileCerti10;
                    updateplExpert.ShenheStatus = expert.ShenheStatus;
                    updateplExpert.Modifier = expert.Modifier;
                    updateplExpert.Modifytime = expert.Modifytime;
                    updateplExpert.YearJiou = expert.YearJiou;
                }
                _context.SaveChanges();
@@ -159,6 +196,12 @@
                         from ooo in osssss.DefaultIfEmpty()
                         join p in listCode.Where(x => x.CodeTable == "experts" && x.CodeField == "year_jiou")
                       on a.YearJiou equals p.CodeSn
                       into psss
                         from ppp in psss.DefaultIfEmpty()
                         where a.RecStatus == "A"
                          && (searchEntity.JoinCount<=0 || hhh.JoinCount >= searchEntity.JoinCount)
                         select new ExpertDTO
@@ -187,7 +230,7 @@
                             Creater = a.Creater,
                             CreaterName = mmm.UserName,
                             Createtime = a.Createtime,
                             CreatetimeName = a.Createtime.ToString("yyyy-MM-dd"),
                             RecStatus = a.RecStatus,
                             Modifier = a.Modifier,
                             Modifytime = a.Modifytime,
@@ -203,7 +246,8 @@
                             ShenheStatus = a.ShenheStatus,
                             AreaName = nnn.Name + "-" + ooo.Name,
                             YearJiou = a.YearJiou,
                             YearJiouName = ppp.Comments,
                         }).ToList(); 
@@ -231,7 +275,7 @@
            if (!string.IsNullOrEmpty(searchEntity.Province))
            {
                query = query.Where(m => m.Province == searchEntity.Province).ToList();
                query = query.Where(m => m.Province.Contains(searchEntity.Province)).ToList();
            }
            if (!string.IsNullOrEmpty(searchEntity.City))
@@ -249,19 +293,22 @@
            }
            if (!string.IsNullOrEmpty(searchEntity.CertiNumber))
            {
                query = query.Where(m => m.CertiNumber.Contains(searchEntity.CertiNumber)).ToList();
                query = query.Where(m => m.CertiNumber != null && m.CertiNumber.Contains(searchEntity.CertiNumber)).ToList();
            }
            if (!string.IsNullOrEmpty(searchEntity.Phone1))
            {
                query = query.Where(m => m.Phone1.Contains(searchEntity.Phone1)).ToList();
                query = query.Where(m => m.Phone1 != null &&  m.Phone1.Contains(searchEntity.Phone1)).ToList();
            }
            if (!string.IsNullOrEmpty(searchEntity.Creater))
            {
                query = query.Where(m => m.Creater == searchEntity.Creater).ToList();
            }
            if (!string.IsNullOrEmpty(searchEntity.YearJiou))
            {
                query = query.Where(m => m.YearJiou == searchEntity.YearJiou).ToList();
            }
           query = query.OrderByDescending(x => x.Modifytime).ToList();
            query = query.OrderByDescending(x => x.Modifytime).ToList();
            //if (searchEntity.totalrows == 0)
                searchEntity.totalrows = query.Count();
            var expertlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
@@ -670,5 +717,188 @@
            var exDTO = _mapper.Map<ExpertOrderDipatchDTO>(entity);
            return exDTO;
        }
        public ResultEntity IdCardChongfu(string IdCard = "", string Id = "")
        {
            ResultEntity resultEntity = new ResultEntity();
            resultEntity.Result = true;
            try
            {
                if (!string.IsNullOrEmpty(IdCard))
                {
                    var list = _context.Experts.Where(e => e.IdCard == IdCard && e.RecStatus == "A" && e.Id != Id).ToList();
                    if (list.Count > 0)
                    {
                        resultEntity.Result = false;
                        resultEntity.Message = "该专家身份证信息已经存在";
                        return resultEntity;
                    }
                }
            }
            catch (Exception ex)
            {
                resultEntity.Result = false;
                resultEntity.Message = "查询失败,请联系管理员";
                ex.Message.ToString();
            }
            return resultEntity;
        }
        public ResultEntity CertiNumberChongfu(string CertiNumber = "", string Id = "")
        {
            ResultEntity resultEntity = new ResultEntity();
            resultEntity.Result = true;
            try
            {
                if (!string.IsNullOrEmpty(CertiNumber))
                {
                    var list = _context.Experts.Where(e => e.CertiNumber == CertiNumber && e.RecStatus == "A" && e.Id != Id).ToList();
                    if (list.Count > 0)
                    {
                        resultEntity.Result = false;
                        resultEntity.Message = "该专家专家证号信息已经存在";
                        return resultEntity;
                    }
                }
            }
            catch (Exception ex)
            {
                resultEntity.Result = false;
                resultEntity.Message = "查询失败,请联系管理员";
                ex.Message.ToString();
            }
            return resultEntity;
        }
        public ResultEntity Phone1Chongfu(string Phone1 = "", string Id = "")
        {
            ResultEntity resultEntity = new ResultEntity();
            resultEntity.Result = true;
            try
            {
                if (!string.IsNullOrEmpty(Phone1))
                {
                    var list = _context.Experts.Where(e => e.Phone1 == Phone1 && e.RecStatus == "A" && e.Id != Id).ToList();
                    if (list.Count > 0)
                    {
                        resultEntity.Result = false;
                        resultEntity.Message = "该专家联系电话信息已经存在";
                        return resultEntity;
                    }
                }
            }
            catch (Exception ex)
            {
                resultEntity.Result = false;
                resultEntity.Message = "查询失败,请联系管理员";
                ex.Message.ToString();
            }
            return resultEntity;
        }
        public List<ExpertDTO> GetListsalary(string userid, DateTime datemin, DateTime datemax)
        {
            var listPosition = _context.Experts.Where(r => r.RecStatus == "A"&& r.ShenheStatus=="A"&& r.Creater == userid && r.Createtime >= datemin && r.Createtime < datemax).ToList();
            var list = _mapper.Map<List<ExpertDTO>>(listPosition);
            return list;
        }
        public ResultEntity savehezuo(ExpertDTO expertDTO)
        {
            ResultEntity resultEntity = new ResultEntity();
            try
            {
                Expert expert = _mapper.Map<Expert>(expertDTO);
                if (string.IsNullOrEmpty(expert.Id))
                {
                    expert.Id = Guid.NewGuid().ToString();
                    _context.Experts.Add(expert);
                }
                else
                {
                    var updateplExpert = _context.Experts.Find(expert.Id);
                    if (updateplExpert.Creater == "1")
                    {
                        updateplExpert.Creater = expert.Modifier;
                        updateplExpert.Createtime = expert.Modifytime;
                    }
                    updateplExpert.Name = expert.Name;
                    updateplExpert.Sex = expert.Sex;
                    updateplExpert.InfoSource = expert.InfoSource;
                    updateplExpert.IdCard = expert.IdCard;
                    updateplExpert.Province = expert.Province;
                    updateplExpert.AreaId = expert.AreaId;
                    updateplExpert.City = expert.City;
                    updateplExpert.Address = expert.Address;
                    updateplExpert.Postal = expert.Postal;
                    updateplExpert.ExpertType = expert.ExpertType;
                    updateplExpert.Level = expert.Level;
                    updateplExpert.Phone1 = expert.Phone1;
                    updateplExpert.Phone2 = expert.Phone2;
                    updateplExpert.Qq = expert.Qq;
                    updateplExpert.Wechat = expert.Wechat;
                    updateplExpert.ReviewItem = expert.ReviewItem;
                    updateplExpert.CertiNumber = expert.CertiNumber;
                    updateplExpert.CertiFont = expert.CertiFont;
                    updateplExpert.CertiBack = expert.CertiBack;
                    updateplExpert.TitileCerti = expert.TitileCerti;
                    updateplExpert.Remark = expert.Remark;
                    updateplExpert.TitileCerti1 = expert.TitileCerti1;
                    updateplExpert.TitileCerti2 = expert.TitileCerti2;
                    updateplExpert.TitileCerti3 = expert.TitileCerti3;
                    updateplExpert.TitileCerti4 = expert.TitileCerti4;
                    updateplExpert.TitileCerti5 = expert.TitileCerti5;
                    updateplExpert.TitileCerti6 = expert.TitileCerti6;
                    updateplExpert.TitileCerti7 = expert.TitileCerti7;
                    updateplExpert.TitileCerti8 = expert.TitileCerti8;
                    updateplExpert.TitileCerti9 = expert.TitileCerti9;
                    updateplExpert.TitileCerti10 = expert.TitileCerti10;
                    updateplExpert.ShenheStatus = expert.ShenheStatus;
                    updateplExpert.Modifier = expert.Modifier;
                    updateplExpert.Modifytime = expert.Modifytime;
                    updateplExpert.YearJiou = expert.YearJiou;
                }
                _context.SaveChanges();
                resultEntity.ReturnID = expert.Id;
                resultEntity.Result = true;
            }
            catch (Exception ex)
            {
                resultEntity.Result = false;
                resultEntity.Message = "保存失败,请联系管理员";
                ex.Message.ToString();
            }
            return resultEntity;
        }
    }
}