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 GroupGrouptypeService: IGroupGrouptypeService { private readonly zhengcaioaContext _context; private readonly IMapper _mapper; public GroupGrouptypeService(zhengcaioaContext context, IMapper mapper) { _context = context; _mapper = mapper; } public ResultEntity save(GroupGrouptypeDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var GroupGrouptype = _mapper.Map(dto); if (String.IsNullOrEmpty(GroupGrouptype.Id)) { GroupGrouptype.Id = Guid.NewGuid().ToString(); _context.GroupGrouptypes.Add(GroupGrouptype); } else { var updateGroupGrouptype = _context.GroupGrouptypes.Find(GroupGrouptype.Id); updateGroupGrouptype.Grouptypename = GroupGrouptype.Grouptypename; updateGroupGrouptype.Sort = GroupGrouptype.Sort; updateGroupGrouptype.RecStatus = GroupGrouptype.RecStatus; // updateGroupGrouptype.Creater = GroupGrouptype.Creater; //updateGroupGrouptype.Createtime = GroupGrouptype.Createtime; updateGroupGrouptype.Modifier = GroupGrouptype.Modifier; updateGroupGrouptype.Modifytime = GroupGrouptype.Modifytime; } _context.SaveChanges(); resultEntity.ReturnID = GroupGrouptype.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } public GroupGrouptypeDTO Get(string id) { GroupGrouptype entity = _context.GroupGrouptypes.Find(id); if (entity.RecStatus != "A") { entity = new GroupGrouptype(); } var GroupGrouptypeDTO = _mapper.Map(entity); return GroupGrouptypeDTO; } public ResultDataEntity SearchByPaging(GroupGrouptypeDTOSearch searchEntity) { ResultDataEntity data = new ResultDataEntity(); List list = new List(); //筛选 var query = _context.GroupGrouptypes .Where(b => b.RecStatus == "A") .ToList(); if (!string.IsNullOrEmpty(searchEntity.Grouptypename)) { query = query.Where(m => m.Grouptypename.Contains(searchEntity.Grouptypename)).ToList(); } query = query.OrderBy(x => x.Sort).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.GroupGrouptypes.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.GroupGrouptypes.Where(r => r.RecStatus == "A").ToList(); var list = _mapper.Map>(listRole); return list; } } }