public IQueryable <sp_GetCatPlace> QueryExport(CatPlaceCriteria criteria) { IQueryable <sp_GetCatPlace> data = null; if (criteria.PlaceType == CatPlaceTypeEnum.Warehouse) { ICurrentUser _user = PermissionExtention.GetUserMenuPermission(currentUser, Menu.catWarehouse); var rangeSearch = PermissionExtention.GetPermissionRange(currentUser.UserMenuPermission.List); if (rangeSearch == PermissionRange.None) { return(null); } data = QueryByPermission(criteria, rangeSearch); } else if (criteria.PlaceType == CatPlaceTypeEnum.Port) { ICurrentUser _user = PermissionExtention.GetUserMenuPermission(currentUser, Menu.catPortindex); var rangeSearch = PermissionExtention.GetPermissionRange(currentUser.UserMenuPermission.List); if (rangeSearch == PermissionRange.None) { return(null); } data = QueryByPermission(criteria, rangeSearch); } else { data = Query(criteria); } return(data); }
public async Task <IActionResult> ExportTownWard(CatPlaceCriteria catPlaceCriteria) { Helper helper = new Helper(); var responseFromApi = await HttpServiceExtension.GetDataFromApi(catPlaceCriteria, aPis.CatalogueAPI + Urls.Catelogue.CatplaceUrl); var dataObjects = responseFromApi.Content.ReadAsAsync <List <CatTownWard> >(); //Make sure to add a reference to System.Net.Http.Formatting.dll var stream = helper.CreateTownWardExcelFile(dataObjects.Result); return(new FileHelper().ExportExcel(stream, FilesNames.TowardName)); }
public async Task <IActionResult> ExportPortIndex(CatPlaceCriteria catPlaceCriteria) { var accessToken = Request.Headers["Authorization"].ToString(); Helper helper = new Helper(); var responseFromApi = await HttpServiceExtension.PostAPI(catPlaceCriteria, aPis.CatalogueAPI + Urls.Catelogue.CatplaceUrl, accessToken); var dataObjects = responseFromApi.Content.ReadAsAsync <List <CatPortIndex> >(); var stream = helper.CreatePortIndexExcelFile(dataObjects.Result); return(new FileHelper().ExportExcel(stream, FilesNames.PortIndex)); }
public IQueryable <sp_GetCatPlace> QueryByPermission(CatPlaceCriteria criteria, PermissionRange range) { var list = QueryCriteria(criteria); if (list == null) { return(null); } IQueryable <sp_GetCatPlace> data = null; if (list == null) { return(null); } switch (range) { case PermissionRange.Owner: data = list.Where(x => x.UserCreated == currentUser.UserID); break; case PermissionRange.Group: data = list.Where(x => x.UserCreated == currentUser.UserID || x.GroupId == currentUser.GroupId && x.DepartmentId == currentUser.DepartmentId && x.OfficeId == currentUser.OfficeID && x.CompanyId == currentUser.CompanyID); break; case PermissionRange.Department: data = list.Where(x => x.UserCreated == currentUser.UserID || x.DepartmentId == currentUser.DepartmentId && x.OfficeId == currentUser.OfficeID && x.CompanyId == currentUser.CompanyID); break; case PermissionRange.Office: data = list.Where(x => x.UserCreated == currentUser.UserID || x.OfficeId == currentUser.OfficeID && x.CompanyId == currentUser.CompanyID); break; case PermissionRange.Company: data = list.Where(x => x.UserCreated == currentUser.UserID || x.CompanyId == currentUser.CompanyID); break; case PermissionRange.All: data = list; break; default: break; } return(data); }
private IQueryable <sp_GetCatPlace> QueryCriteria(CatPlaceCriteria criteria) { string placetype = PlaceTypeEx.GetPlaceType(criteria.PlaceType); var list = GetBy(placetype); if (criteria.All == null) { list = list.Where(x => ((x.Code ?? "").IndexOf(criteria.Code ?? "", StringComparison.OrdinalIgnoreCase) > -1) && ((x.NameEn ?? "").IndexOf(criteria.NameEn ?? "", StringComparison.OrdinalIgnoreCase) > -1) && ((x.NameVn ?? "").IndexOf(criteria.NameVn ?? "", StringComparison.OrdinalIgnoreCase) > -1) && ((x.CountryNameEN ?? "").IndexOf(criteria.CountryNameEN ?? "", StringComparison.OrdinalIgnoreCase) > -1) && ((x.CountryNameVN ?? "").IndexOf(criteria.CountryNameVN ?? "", StringComparison.OrdinalIgnoreCase) > -1) && ((x.DistrictNameEN ?? "").IndexOf(criteria.DistrictNameEN ?? "", StringComparison.OrdinalIgnoreCase) > -1) && ((x.DistrictNameVN ?? "").IndexOf(criteria.DistrictNameVN ?? "", StringComparison.OrdinalIgnoreCase) > -1) && (x.CountryID == criteria.CountryId || criteria.CountryId == null) && (x.ProvinceID == criteria.ProvinceId || criteria.ProvinceId == null) && (x.DistrictID == criteria.DistrictId || criteria.DistrictId == null) && ((x.ProvinceNameEN ?? "").IndexOf(criteria.ProvinceNameEN ?? "", StringComparison.OrdinalIgnoreCase) > -1) && ((x.ProvinceNameVN ?? "").IndexOf(criteria.ProvinceNAmeVN ?? "", StringComparison.OrdinalIgnoreCase) > -1) && ((x.Address ?? "").IndexOf(criteria.Address ?? "", StringComparison.OrdinalIgnoreCase) >= 0) && ((x.ModeOfTransport ?? "").IndexOf(criteria.ModeOfTransport ?? "", StringComparison.OrdinalIgnoreCase) > -1) && (x.AreaNameEN ?? "").IndexOf(criteria.AreaNameEN ?? "", StringComparison.OrdinalIgnoreCase) > -1 && (x.AreaNameVN ?? "").IndexOf(criteria.AreaNameVN ?? "", StringComparison.OrdinalIgnoreCase) > -1 && (x.FlightVesselNo ?? "").Contains(criteria.FlightVesselNo ?? "", StringComparison.OrdinalIgnoreCase) == true && (x.Active == criteria.Active || criteria.Active == null) )?.AsQueryable(); } else { list = list.Where(x => ( ((x.Code ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || ((x.NameEn ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || ((x.NameVn ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || ((x.CountryNameEN ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || ((x.CountryNameVN ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || ((x.DistrictNameEN ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || ((x.DistrictNameVN ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || ((x.ProvinceNameEN ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || ((x.ProvinceNameVN ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || ((x.Address ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || (x.AreaNameEN ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1 || (x.AreaNameVN ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1 || ((x.ModeOfTransport ?? "").IndexOf(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) > -1) || (x.FlightVesselNo ?? "").Contains(criteria.All ?? "", StringComparison.OrdinalIgnoreCase) == true ) && (x.Active == criteria.Active || criteria.Active == null) )?.AsQueryable(); } return(list); }
public List <CatPlaceViewModel> Paging(CatPlaceCriteria criteria, int page, int size, out int rowsCount) { IQueryable <sp_GetCatPlace> data = null; List <CatPlaceViewModel> results = null; if (criteria.PlaceType == CatPlaceTypeEnum.Warehouse) { ICurrentUser _user = PermissionExtention.GetUserMenuPermission(currentUser, Menu.catWarehouse); var rangeSearch = PermissionExtention.GetPermissionRange(currentUser.UserMenuPermission.List); if (rangeSearch == PermissionRange.None) { rowsCount = 0; return(null); } data = QueryByPermission(criteria, rangeSearch); } else if (criteria.PlaceType == CatPlaceTypeEnum.Port) { ICurrentUser _user = PermissionExtention.GetUserMenuPermission(currentUser, Menu.catPortindex); var rangeSearch = PermissionExtention.GetPermissionRange(currentUser.UserMenuPermission.List); if (rangeSearch == PermissionRange.None) { rowsCount = 0; return(null); } data = QueryByPermission(criteria, rangeSearch); } else { data = Query(criteria); } rowsCount = data.Select(x => x.ID).Count(); if (rowsCount == 0) { return(results); } if (size > 1) { data = data.OrderByDescending(x => x.DatetimeModified); if (page < 1) { page = 1; } data = data.Skip((page - 1) * size).Take(size); } results = GetCulturalData(data).ToList(); return(results); }
public IQueryable <sp_GetCatPlace> Get(CatPlaceCriteria criteria) { var countries = countryRepository.Get(); string placetype = PlaceTypeEx.GetPlaceType(criteria.PlaceType); // Join left với country. var places = from x in DataContext.Get(x => (x.PlaceTypeId == placetype || string.IsNullOrEmpty(placetype) && (x.Active == criteria.Active || criteria.Active == null)) && (x.ModeOfTransport.IndexOf(criteria.ModeOfTransport, StringComparison.OrdinalIgnoreCase) > -1) || string.IsNullOrEmpty(criteria.ModeOfTransport)) join coun in countries on x.CountryId equals coun.Id into coun2 from coun in coun2.DefaultIfEmpty() select new sp_GetCatPlace { ID = x.Id, Code = x.Code, NameVn = x.NameVn, NameEn = x.NameEn, DisplayName = x.DisplayName, Address = x.Address, DistrictID = x.DistrictId, DistrictNameEN = string.Empty, DistrictNameVN = string.Empty, ProvinceID = x.ProvinceId, ProvinceNameEN = string.Empty, ProvinceNameVN = string.Empty, CountryNameEN = coun.NameEn, CountryNameVN = coun.NameVn, CountryID = x.CountryId, AreaID = x.AreaId, LocalAreaID = x.LocalAreaId, ModeOfTransport = x.ModeOfTransport, PlaceTypeID = x.PlaceTypeId, Note = x.Note, UserCreated = x.UserCreated, DatetimeCreated = x.DatetimeCreated, UserModified = x.UserModified, DatetimeModified = x.DatetimeModified, Active = x.Active }; return(places); }
public IQueryable <sp_GetCatPlace> Query(CatPlaceCriteria criteria) { return(QueryCriteria(criteria)); }