public List <ItemObj <int> > GetCustomLoaiHoSo(XuLyPhanLoaiHoSoInputDto input) { var query = from data in _setting_LoaiHoSoRepos.GetAll() where data.ThuTucId == input.ThuTucId && data.RoleLevel == input.RoleLevel select new ItemObj <int> { Id = data.Id, Name = data.Name }; return(query.ToList()); }
public int?GetPhanLoaiHoSoId(XuLyPhanLoaiHoSoInputDto input) { try { var query = (from filter in _setting_LoaiHoSo_FilterRepos.GetAll() join t_loaihoso in _setting_LoaiHoSoRepos.GetAll() on filter.PhanLoaiHoSoId equals t_loaihoso.Id into tb_loaihoso from loaihoso in tb_loaihoso.DefaultIfEmpty() where loaihoso.ThuTucId == input.ThuTucId && loaihoso.RoleLevel == input.RoleLevel select filter); var dataGroup = query.GroupBy(x => x.PhanLoaiHoSoId) .Select(x => new { PhanLoaiHoSoId = x.Key, ListJsonFilter = x.Select(a => new { a.PhanLoaiHoSoId, a.JsonFilter }) }).ToList(); List <XuLyPhanLoaiHoSo_CheckDto> listCheck = new List <XuLyPhanLoaiHoSo_CheckDto>(); foreach (var data in dataGroup) { var _deplicate = 0; foreach (var item in data.ListJsonFilter) { if (input.ThuTucId == (int)CommonENum.THU_TUC_ID.THU_TUC_03) { if (input.RoleLevel == (int)CommonENum.ROLE_LEVEL.CHUYEN_VIEN) { var filter = JsonConvert.DeserializeObject <Filter_PhanLoaiHoSoDto>(item.JsonFilter); if (DeepEquals_PDK(filter, input.Filter, ref _deplicate)) { listCheck.Add(new XuLyPhanLoaiHoSo_CheckDto() { PhanLoaiHoSoId = item.PhanLoaiHoSoId, Deplicate = _deplicate }); } } else if (input.RoleLevel == (int)CommonENum.ROLE_LEVEL.CHUYEN_GIA) { var filter = JsonConvert.DeserializeObject <Filter_PhanLoaiHoSoDto>(item.JsonFilter); if (DeepEquals_PDK(filter, input.Filter, ref _deplicate)) { listCheck.Add(new XuLyPhanLoaiHoSo_CheckDto() { PhanLoaiHoSoId = item.PhanLoaiHoSoId, Deplicate = _deplicate }); } } } } } var _check = listCheck.OrderByDescending(x => x.Deplicate).FirstOrDefault(); if (_check == null) { return(null); } return(_check.PhanLoaiHoSoId); } catch (Exception ex) { throw ex; } }