| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380 |
- <!--
- * @Title:
- * @Description: 危险区信息
- * @Author: swp
- * @Date: 2022-08-24 10:49:21
- * @LastEditors:
- * @LastEditTime: 2022-08-24 10:49:21
- -->
- <template>
- <view class="container">
- <uni-nav-bar dark :fixed="true" backgroundColor="#3F9EFF" statusBar="false" left-icon="left" left-text="返回"
- @clickLeft="toBack">
- <view class="nav-title">
- <text>{{title}}</text>
- </view>
- </uni-nav-bar>
- <view class="container">
- <uni-collapse @change="searchAreaStatus">
- <uni-collapse-item :show-animation="true" :open="true">
- <template v-slot:title>
- <view class="view-flex-block-center" style="height: 40px;width: 100%;">
- <view class="view-flex-inline-center">
- <text v-if="showSearch" style="color: coral;">点击收起查询区</text>
- <text v-else style="color: coral;">点击展开查询区</text>
- </view>
- </view>
- </template>
- </uni-collapse-item>
- </uni-collapse>
- <view v-if="showSearch" class="search-block">
- <view style="padding-left: 10px;padding-right: 10px;margin-top: 10px;">
- <view>
- <uni-data-select v-model="cityRegionValue" :localdata="cityRegionData"
- @change="cityRegionChange" :clear="false" placeholder="请选择盟市"></uni-data-select>
- </view>
- <view style="margin-top: 10px;">
- <uni-data-select v-model="districtRegionValue" :localdata="districtRegionData"
- @change="districtRegionChange" placeholder="请选择区旗县"></uni-data-select>
- </view>
- <view style="margin-top: 10px;">
- <uni-data-select v-model="townRegionValue" :localdata="townRegionData"
- @change="townRegionChange" placeholder="请选择乡镇"></uni-data-select>
- </view>
- <view style="margin-top: 10px;">
- <uni-data-select v-model="countryRegionValue" :localdata="countryRegionData"
- @change="countryRegionChange" placeholder="请选择村"></uni-data-select>
- </view>
- </view>
- <view class="rtu-code">
- <uni-easyinput :styles="inputStyles" @input="dangerAreaNameValInput" prefixIcon="search"
- v-model="dangerAreaNameVal" placeholder="请录入危险区名称">
- </uni-easyinput>
- </view>
- <view class="submit-btn">
- <button type="default" @click="search">查 询</button>
- </view>
- </view>
- <view v-if="list.length>0">
- <uni-list>
- <uni-list-item v-for="item in list" :key="item.id">
- <template v-slot:body>
- <view class="list-item-block">
- <view class="line">
- <text class="title text-ellipsis">{{item.dangerAreaName}}</text>
- </view>
- <view class="line" style="margin-top: 5px;">
- <!-- <uni-icons class="input-uni-icon" type="map-pin-ellipse" size="18"
- color="orangered" /> -->
- <text class="lable">行政区划:</text>
- </view>
- <view class="line" style="margin-top: 5px;">
- <text class="content" style="color: gray;">{{item.fullAadName}}</text>
- </view>
- <view class="item-button-group">
- <view class="item-button mid-size" @click="toResidentRegQr(item)">
- <view class="view-flex-inline-center">
- <uni-icons class="input-uni-icon" type="scan" size="18" color="coral" />
- <text class="button-text">群众登记二维码</text>
- </view>
- </view>
- <view class="item-button mid-size" @click="toMap(item)">
- <view class="view-flex-inline-center">
- <uni-icons class="input-uni-icon" type="location" size="18" color="coral" />
- <text class="button-text">地图查看</text>
- </view>
- </view>
- </view>
- </view>
- </template>
- </uni-list-item>
- </uni-list>
- <uni-group>
- <view class="pagination-block">
- <uni-pagination show-icon :pageSize="pageSize" :current="pageCurrent" :total="total"
- @change="pageChange" />
- </view>
- </uni-group>
- </view>
- <view v-else class="view-flex-inline-center">
- <view style="margin-top: 10px;color: gray;font-size: 1rem;">暂无数据</view>
- </view>
- </view>
- </view>
- </template>
- <script>
- import http from '@/http/api.js';
- import {
- devUrl,
- prodUrl
- } from '@/common/setting';
- export default {
- components: {},
- data() {
- return {
- title: '危险区信息',
- showSearch: true,
- cityRegionValue: '',
- cityRegionData: [],
- districtRegionValue: '',
- districtRegionData: [],
- townRegionValue: '',
- townRegionData: [],
- countryRegionValue: '',
- countryRegionData: [],
- pageSize: 10,
- pageCurrent: 1,
- total: 0,
- list: [],
- query: {},
- dangerAreaNameVal: '',
- inputStyles: {
- color: '#808080',
- borderColor: '#d3d3d3'
- },
- }
- },
- computed: {
- },
- onInit(option) {},
- onLoad(option) {
- this.getCityRegion({});
- },
- onShow() {
- this.pageCurrent = 1;
- this.getPage();
- },
- onReady() {},
- methods: {
- toBack() {
- uni.navigateBack({
- delta: 1
- })
- },
- searchAreaStatus(e) {
- if (e.length > 0) {
- this.showSearch = true;
- } else {
- this.showSearch = false;
- }
- },
- cityRegionChange(e) {
- this.cityRegionValue = e;
- this.districtRegionData = [];
- this.districtRegionValue = '';
- this.townRegionData = [];
- this.townRegionValue = '';
- this.countryRegionData = [];
- this.countryRegionValue = '';
- let p = {
- 'parentCode': this.cityRegionValue
- }
- this.getDistrictRegion(p);
- this.pageCurrent = 1;
- this.list = [];
- this.query['adcd'] = this.cityRegionValue;
- this.getPage({});
- },
- districtRegionChange(e) {
- if (e == undefined || e == null || e == '') {
- this.districtRegionValue = '';
- this.townRegionData = [];
- this.townRegionValue = '';
- this.countryRegionData = [];
- this.countryRegionValue = '';
- this.pageCurrent = 1;
- this.list = [];
- this.query['adcd'] = this.cityRegionValue;
- this.getPage({});
- } else {
- this.districtRegionValue = e;
- this.townRegionData = [];
- this.townRegionValue = '';
- this.countryRegionData = [];
- this.countryRegionValue = '';
- let p = {
- 'parentCode': this.districtRegionValue
- }
- this.getTownRegion(p);
- this.pageCurrent = 1;
- this.list = [];
- this.query['adcd'] = this.districtRegionValue;
- this.getPage({});
- }
- },
- townRegionChange(e) {
- if (e == undefined || e == null || e == '') {
- this.townRegionValue = '';
- this.countryRegionData = [];
- this.countryRegionValue = '';
- this.pageCurrent = 1;
- this.list = [];
- this.query['adcd'] = this.districtRegionValue;
- this.getPage({});
- } else {
- this.townRegionValue = e;
- this.countryRegionData = [];
- this.countryRegionValue = '';
- let p = {
- 'parentCode': this.townRegionValue
- }
- this.getCountryRegion(p);
- this.pageCurrent = 1;
- this.list = [];
- this.query['adcd'] = this.townRegionValue;
- this.getPage({});
- }
- },
- countryRegionChange(e) {
- if (e == undefined || e == null || e == '') {
- this.countryRegionValue = '';
- this.pageCurrent = 1;
- this.list = [];
- this.query['adcd'] = this.townRegionValue;
- this.getPage({});
- } else {
- this.countryRegionValue = e;
- this.pageCurrent = 1;
- this.list = [];
- this.query['adcd'] = this.countryRegionValue;
- this.getPage({});
- }
- },
- getCityRegion(params = {}) {
- let that = this;
- http.request({
- url: '/galaxy-business/baseinfo/region/whole/yj/list',
- method: 'GET',
- data: params,
- }).then(res => {
- that.cityRegionData = res.data.map(item => {
- return {
- value: item.adcd,
- text: item.adnm,
- }
- })
- }).catch(err => {
- console.log(err)
- })
- },
- getDistrictRegion(params = {}) {
- let that = this;
- http.request({
- url: '/galaxy-business/baseinfo/region/whole/yj/list',
- method: 'GET',
- data: params,
- }).then(res => {
- that.districtRegionData = res.data.map(item => {
- return {
- value: item.adcd,
- text: item.adnm,
- }
- })
- }).catch(err => {
- console.log(err)
- })
- },
- getTownRegion(params = {}) {
- let that = this;
- http.request({
- url: '/galaxy-business/baseinfo/region/whole/yj/list',
- method: 'GET',
- data: params,
- }).then(res => {
- that.townRegionData = res.data.map(item => {
- return {
- value: item.adcd,
- text: item.adnm,
- }
- })
- }).catch(err => {
- console.log(err)
- })
- },
- getCountryRegion(params = {}) {
- let that = this;
- http.request({
- url: '/galaxy-business/baseinfo/region/whole/yj/list',
- method: 'GET',
- data: params,
- }).then(res => {
- that.countryRegionData = res.data.map(item => {
- return {
- value: item.adcd,
- text: item.adnm,
- }
- })
- }).catch(err => {
- console.log(err)
- })
- },
- dangerAreaNameValInput(e) {
- if (e == null || e == '' || e.length == 0) {
- this.dangerAreaNameVal = '';
- this.pageCurrent = 1;
- this.getPage({});
- }
- },
- search() {
- this.pageCurrent = 1;
- let params = {};
- if (this.dangerAreaNameVal != '' && this.dangerAreaNameVal.length > 0) {
- params['dangerAreaName'] = this.dangerAreaNameVal;
- }
- this.getPage(params);
- },
- toMap(item) {
- let url = '/pages/yjxt/dangerarea/dangerareamap?id=' + item.id;
- uni.navigateTo({
- url: url
- })
- },
- toQr(item) {
- let url = '/pages/yjxt/dangerarea/dangerareaqr?qrType=1&id=' + item.dangerAreaPid;
- uni.navigateTo({
- url: url
- })
- },
- toResidentRegQr(item) {
- let url = '/pages/yjxt/dangerarea/dangerareaqr?qrType=2&id=' + item.dangerAreaPid;
- uni.navigateTo({
- url: url
- })
- },
- pageChange(e) {
- this.pageCurrent = e.current;
- this.getPage()
- },
- getPage(params = {}) {
- const current = this.pageCurrent;
- const size = this.pageSize;
- let postData = Object.assign(params, this.query);
- let that = this;
- http.request({
- url: '/galaxy-business/map/dangerarea/page',
- method: 'GET',
- params: {
- current,
- size,
- },
- data: postData,
- }).then(res => {
- if (res.data.records != null) {
- that.list = res.data.records;
- }
- this.total = res.data.total;
- }).catch(err => {
- console.log(err)
- })
- },
- }
- }
- </script>
- <style>
- .uni-body {
- font-size: 0.7rem;
- }
- </style>
|