using Edu.Common.Enum; using Edu.Model.ViewModel.User; using Edu.Repository.User; using System.Collections.Generic; using System.Linq; using VT.FW.DB; namespace Edu.Module.User { /// <summary> /// 集团处理类 /// </summary> public class GroupModule { /// <summary> /// 集团仓储对象 /// </summary> private readonly RB_GroupRepository groupRepository = new RB_GroupRepository(); /// <summary> /// 获取集团列表 /// </summary> /// <param name="query">查询条件</param> /// <returns></returns> public List<RB_Group_ViewModel> GetGroupListModule(RB_Group_ViewModel query) { return groupRepository.GetGroupListRepository(query); } /// <summary> /// 根据前端域名获取集团编号 /// </summary> /// <param name="domain"></param> /// <returns></returns> public int GetGroupIdByDomainModule(string domain) { var groupList = GetGroupListModule(new Model.ViewModel.User.RB_Group_ViewModel() { WebSiteDomain = domain }); int groupId = 0; if (groupList != null && groupList.Count > 0) { groupId = groupList?.FirstOrDefault()?.GId ?? 0; } return groupId; } /// <summary> /// 获取集团分页列表 /// </summary> /// <param name="pageIndex"></param> /// <param name="pageSize"></param> /// <param name="rowsCount"></param> /// <param name="query"></param> /// <returns></returns> public List<RB_Group_ViewModel> GetGroupPageListModule(int pageIndex, int pageSize, out long rowsCount, RB_Group_ViewModel query) { return groupRepository.GetGroupPageListRepository(pageIndex, pageSize, out rowsCount, query); } /// <summary> /// 获取集团实体类 /// </summary> /// <param name="GId"></param> /// <returns></returns> public RB_Group_ViewModel GetGroupEntityModule(int GId) { return GetGroupListModule(new RB_Group_ViewModel() { GId = GId })?.FirstOrDefault() ?? new RB_Group_ViewModel(); } /// <summary> /// 获取集团实体类 /// </summary> /// <param name="GId"></param> /// <returns></returns> public RB_Group_ViewModel GetGroupEntityModule(string workDomainUrl) { return GetGroupListModule(new RB_Group_ViewModel() { WorkAppDomain=workDomainUrl })?.FirstOrDefault() ?? new RB_Group_ViewModel(); } /// <summary> /// 新增修改集团 /// </summary> /// <param name="model"></param> /// <returns></returns> public virtual bool SetGroupModule(RB_Group_ViewModel model) { bool flag; if (model.GId > 0) { Dictionary<string, object> fileds = new Dictionary<string, object>() { {nameof(RB_Group_ViewModel.GroupName),model.GroupName.Trim() }, {nameof(RB_Group_ViewModel.Domain),model.Domain.Trim() }, {nameof(RB_Group_ViewModel.LinkMan),model.LinkMan.Trim() }, {nameof(RB_Group_ViewModel.MobilePhone),model.MobilePhone.Trim() }, {nameof(RB_Group_ViewModel.Tel),model.Tel.Trim() }, {nameof(RB_Group_ViewModel.Address),model.Address }, {nameof(RB_Group_ViewModel.Remarks),model.Remarks }, {nameof(RB_Group_ViewModel.Logo),model.Logo }, {nameof(RB_Group_ViewModel.UpdateBy),model.UpdateBy }, {nameof(RB_Group_ViewModel.UpdateTime),model.UpdateTime }, {nameof(RB_Group_ViewModel.WebSiteDomain),model.WebSiteDomain }, }; flag = groupRepository.Update(fileds, new WhereHelper(nameof(RB_Group_ViewModel.GId), model.GId)); } else { var newId = groupRepository.Insert(model); model.GId = newId; flag = newId > 0; } return flag; } /// <summary> /// 判断集团是否存在 /// </summary> /// <param name="query"></param> /// <returns></returns> public bool ExistsGroupModule(RB_Group_ViewModel query) { List<WhereHelper> wheres = new List<WhereHelper>() { new WhereHelper(nameof(RB_Group_ViewModel.GroupName),query.GroupName.Trim()) }; if (query.GId > 0) { wheres.Add(new WhereHelper(nameof(RB_Group_ViewModel.GId), query.GId, OperatorEnum.NotEqual)); } return groupRepository.Exists(wheres); } /// <summary> /// 删除集团 /// </summary> /// <param name="GId">集团编号</param> /// <returns></returns> public virtual bool RemoveGroupModule(object GId) { bool flag; Dictionary<string, object> fileds = new Dictionary<string, object>() { {nameof(RB_Group_ViewModel.Status),(int)DateStateEnum.Delete }, }; flag = groupRepository.Update(fileds, new WhereHelper(nameof(RB_Group_ViewModel.GId), GId)); return flag; } } }