using AutoMapper; using DTO; using DTO.Models; using IServices; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using zhengcaioa.IService; using zhengcaioa.Models; namespace Services { public class AdmDocBaseService: IAdmDocBaseService { private readonly zhengcaioaContext _context; private readonly IMapper _mapper; public AdmDocBaseService(zhengcaioaContext context, IMapper mapper) { _context = context; _mapper = mapper; } public ResultEntity save(AdmDocBaseDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var model = _mapper.Map(dto); if (String.IsNullOrEmpty(model.Id)) { model.Id = Guid.NewGuid().ToString(); _context.AdmDocBases.Add(model); } else { var updateAdmDocBase = _context.AdmDocBases.Find(model.Id); updateAdmDocBase.DocName = model.DocName; updateAdmDocBase.DocLuokuan = model.DocLuokuan; updateAdmDocBase.RecStatus = model.RecStatus; // updateAdmDocBase.Creater = AdmDocBase.Creater; //updateAdmDocBase.Createtime = AdmDocBase.Createtime; updateAdmDocBase.Modifier = model.Modifier; updateAdmDocBase.Modifytime = model.Modifytime; } _context.SaveChanges(); resultEntity.ReturnID = model.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } public AdmDocBaseDTO Get(string id) { AdmDocBase entity = _context.AdmDocBases.Find(id); if (entity.RecStatus != "A") { entity = new AdmDocBase(); } var AdmDocBaseDTO = _mapper.Map(entity); return AdmDocBaseDTO; } public ResultDataEntity SearchByPaging(AdmDocBaseDTOSearch searchEntity) { ResultDataEntity data = new ResultDataEntity(); List list = new List(); //筛选 var query = _context.AdmDocBases .Where(b => b.RecStatus == "A") .ToList(); if (!string.IsNullOrEmpty(searchEntity.DocName)) { query = query.Where(m => m.DocName.Contains(searchEntity.DocName)).ToList(); } if (!string.IsNullOrEmpty(searchEntity.DocLuokuan)) { query = query.Where(m => m.DocLuokuan.Contains(searchEntity.DocLuokuan)).ToList(); } query = query.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(); list = _mapper.Map>(rolelist); data.LoadData(searchEntity, list); return data; } public ResultEntity ModifyStatus(string id, string userid) { ResultEntity result = new ResultEntity(); result.Result = true; var model = _context.AdmDocBases.Find(id); if (model != null) { model.RecStatus = "D"; model.Modifier = userid; model.Modifytime = DateTime.Now; _context.SaveChanges(); } return result; } /// /// 获取所有有效角色 /// /// public List GetList() { var listRole = _context.AdmDocBases.Where(r => r.RecStatus == "A").ToList(); var list = _mapper.Map>(listRole); return list; } } }