agrc / deq-enviro

DEQ Environmental Data Viewer
MIT License
6 stars 1 forks source link

Layer-specific filters that traverse relationship classes #637

Open stdavis opened 6 months ago

stdavis commented 6 months ago

555 took care of all but one layer-specific filter. Underground Injection Control uses a filter config (temporarily moved to the "Comments" column) that hits related tables:

field: query|prefix (GUID IN (SELECT Facility_FK FROM UICWell WHERE), WellSubClass|number (Well Subclass), 1001 (1 Hazardous Waste Disposal), 1000 (1 Non Hazardous Industrial Waste Disposal), 1002 (1 Non Hazardous Municipal Waste Disposal), 1003 (1 Radioactive Waste Disposal), 1999 (1 Other Class I), 3000 (3 Copper Mining), 3001 (3 Nacholite Mining), 3002 (3 Salt Solution Mining), 3003 (3 Sulfur Mining by Frasch Process), 3004 (3 Uranium Mining), 3999 (3 Other (Class III)), 4001 (4 Exempt CERCLA Remediation), 4002 (4 Exempt RCRA Remediation), 4000 (4 Hazardous Injection Into or Above USDW (BANNED)), 4999 (4 Other (Class IV)), 5000 (5 Agricultural Drainage), 5001 (5 Aquifer Recharge), 5050 (5 Aquifer Storage and Recovery), 5100 (5 CessPools/Untreated Sewage Waste Disposal), 5003 (5 Direct Heat Re-Injection), 5004 (5 Domestic Wastewater Treatment Plant Effluent Disposal), 5005 (5 Electric Power Re-Injection), 5006 (5 Experimental Technology), 5998 (5 Experimental Technology CO2 Sequestration), 5007 (5 Ground Water Aquaculture Return Flow), 5008 (5 Heat Pump/AC Return Flow), 5010 (5 Industrial Drainage), 5014 (5 Industrial Process -  Appliance Service), 5015 (5 Industrial Process -  Beauty/Barber), 5012 (5 Industrial Process -  Car Wash), 5013 (5 Industrial Process -  Car Wash (no engine/undercarriage)), 5029 (5 Industrial Process -  Cooling Water (no additives)), 5030 (5 Industrial Process -  Cooling Water (with additives)), 5034 (5 Industrial Process -  Drinking Water Treatment Residual), 5017 (5 Industrial Process -  Dry Cleaner), 5028 (5 Industrial Process -  Equipment Manufacturing), 5031 (5 Industrial Process -  Food Processing), 5019 (5 Industrial Process -  Funeral Services), 5018 (5 Industrial Process -  Laundromat (no DC)), 5021 (5 Industrial Process -  Machine/Welding), 5022 (5 Industrial Process -  Medical Services), 5027 (5 Industrial Process -  Metal Plating), 5016 (5 Industrial Process -  Nail Salon), 5023 (5 Industrial Process -  Pesticide Services), 5024 (5 Industrial Process -  Photographic Processing), 5025 (5 Industrial Process -  Printing), 5032 (5 Industrial Process -  Small Engine), 5026 (5 Industrial Process -  Veterinary/Kennel/Grooming), 5011 (5 Industrial Process -  Water and Waste (General)), 5020 (5 Industrial Process -  Wood/Furniture Finishing), 5035 (5 In-Situ Fossil Fuel Recovery), 5037 (5 Mining Sand Or Other Backfill), 5038 (5 Motor Vehicle Waste Disposal (BANNED)), 5040 (5 Saline Water Intrusion Barrier), 5101 (5 Septic Systems), 5044 (5 Solution Mining), 5046 (5 Spent-Brine Return Flow), 5047 (5 Storm Water Drainage), 5048 (5 Subsidence Control Wells), 5002 (5 Subsurface Environmental Remediation), 5045 (5 Other Drainage), 5999 (5 Other (Class V)), 6001 (6 CO2 Sequestration Type 1), 6002 (6 CO2 Sequestration Type 2), 7000 (Non-Injection); field: query|prefix (GUID IN (SELECT Facility_FK FROM UICWell WHERE GUID IN (SELECT Well_FK FROM UICWellOperatingStatus WHERE), OperatingStatusType|text (Well Operating Status Type), UC (Under Construction), AC (Active), PA (Abandoned - Approved), TA (Abandoned - Temporary), AN (Abandoned - Not Approved), PW (Proposed Under Permit Application), PR (Proposed Under Authorization By Rule), PI (Post Injection CO2 Well), OT (Other)

Note that this traverses two relationships. These queries won't work in the new AGOL-based framework since we only have one feature layer or related table per service.

The solution could be to combine the feature layer and related tables into a single service for this one query layer or make multiple queries to the different related tables before searching the feature layer.

stdavis commented 4 months ago

Joined Hosted Feature Layer Views may help with this.