/** * 加载WMS,拼接FILTER,LAYERS参数等 */ function WfsHelper () { this.filters = [] this.typeNames = [] this.url = 'http://xearth.cn:6289/server/ogcserver/PipeLine/wfs' this.params = { REQUEST: 'getfeature', OUTPUTFORMAT: 'JSON', maxFeatures: 20000, version: '1.0.0' } this.addTypeName = (typeName) => { this.typeNames.push(typeName) } this.appendEquals = (property, literal) => { var filter = '' + property + '' + literal + '' this.filters.push(filter) } this.getFilterParams = () => { var head = '' var end = '' var filter = '' if (this.filters.length > 0) { for (var i = 0; i < this.filters.length; i++) { filter += this.filters[i] } return ('FILTER=' + head + filter + end) } return null } this.getUrlParams = () => { var params = '' for (var p in this.params) { params += (p + '=' + this.params[p] + '&') } // 拼接typename参数 params += 'typename=' + this.typeNames.join(',') // 拼接filter参数 var filterParam = this.getFilterParams() if (filterParam) { params += '&' + filterParam } return encodeURI(params) } this.getUrl = () => { var url = this.url if (url.indexOf('?') > 0) { url += '&' } else { url += '?' } return url + this.getUrlParams() } } export default WfsHelper