shuishen
2024-04-07 b31a3ab65ce9d30a40225a220a40dd5d5a878298
反诈宣传详情弹窗修改
5 files modified
223 ■■■■■ changed files
src/api/antiFraudShow/index.js 59 ●●●●● patch | view | raw | blame | history
src/components/map/index.vue 22 ●●●● patch | view | raw | blame | history
src/styles/media/index.scss 6 ●●●●● patch | view | raw | blame | history
src/views/antiFraudShow/components/detailDialog.vue 128 ●●●●● patch | view | raw | blame | history
src/views/antiFraudShow/index.vue 8 ●●●● patch | view | raw | blame | history
src/api/antiFraudShow/index.js
@@ -1,4 +1,14 @@
import request from "@/router/axios.js"
/*
 * @Author: shuishen 1109946754@qq.com
 * @Date: 2024-04-07 18:30:02
 * @LastEditors: shuishen 1109946754@qq.com
 * @LastEditTime: 2024-04-07 20:23:30
 * @FilePath: \srs-police-affairs\src\api\antiFraudShow\index.js
 * @Description:
 *
 * Copyright (c) 2024 by shuishen, All Rights Reserved.
 */
import request from "@/router/axios.js";
/**
 * 获得反诈宣传列表
@@ -6,15 +16,26 @@
 * @returns
 */
export const getBackblastPubRecordList = (params) => {
    return request({
        url: "/api/blade-backblastPubRecord/backblastPubRecord/page",
        method: "get",
        meta: {
            isToken: true,
        },
        params: params,
    })
}
  return request({
    url: "/api/blade-backblastPubRecord/backblastPubRecord/page",
    method: "get",
    meta: {
      isToken: true,
    },
    params: params,
  });
};
export const getBackblastPubRecordDetail = (params) => {
  return request({
    url: "/api/blade-backblastPubRecord/backblastPubRecord/getDetail",
    method: "get",
    meta: {
      isToken: true,
    },
    params: params,
  });
};
/**
 * 获得反诈预警列表
@@ -22,12 +43,12 @@
 * @returns
 */
export const getBackblastWarnHanRecList = (params) => {
    return request({
        url: "/api/blade-backblastWarnHanRec/backblastWarnHanRec/page",
        method: "get",
        meta: {
            isToken: true,
        },
        params: params,
    })
}
  return request({
    url: "/api/blade-backblastWarnHanRec/backblastWarnHanRec/page",
    method: "get",
    meta: {
      isToken: true,
    },
    params: params,
  });
};
src/components/map/index.vue
@@ -2,7 +2,7 @@
 * @Author: shuishen 1109946754@qq.com
 * @Date: 2022-08-18 17:00:30
 * @LastEditors: shuishen 1109946754@qq.com
 * @LastEditTime: 2024-02-19 16:42:36
 * @LastEditTime: 2024-04-07 18:55:24
 * @FilePath: \srs-police-affairs\src\components\map\index.vue
 * @Description: 公用地图组件
 * 
@@ -324,21 +324,21 @@
            // global.viewer.addTerrain(terrain)
            // 内网
            that.switchImg()
            // that.switchImg()
            // 地形数据添加
            // that.addTerrain()
            // 外网 
            // global.viewer.imageryLayers.addImageryProvider(
            //     new global.DC.Namespace.Cesium.UrlTemplateImageryProvider({
            //         url: 'http://t{s}.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=d083e4cf30bfc438ef93436c10c2c20a',
            //         subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
            //         format: 'image/jpeg',
            //         show: true,
            //         maximumLevel: 18
            //     })
            // )
            global.viewer.imageryLayers.addImageryProvider(
                new global.DC.Namespace.Cesium.UrlTemplateImageryProvider({
                    url: 'http://t{s}.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=d083e4cf30bfc438ef93436c10c2c20a',
                    subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
                    format: 'image/jpeg',
                    show: true,
                    maximumLevel: 18
                })
            )
            // 设置地图初始位置,角度等
            global.viewer.camera.setView({
src/styles/media/index.scss
@@ -3127,6 +3127,12 @@
        }
    }
    .anti-fraud-box {
        .el-dialog .el-dialog__body .el-table {
            height: calc(100%) !important;
        }
    }
    .reset-popup-box {
        .el-dialog {
            width: countSizeVw(800, 1920);
src/views/antiFraudShow/components/detailDialog.vue
@@ -1,44 +1,44 @@
<template>
    <el-dialog class="syld-details-box prm-dialog-popup business-detail-box" :title="title" append-to-body
        :close-on-click-modal="false" :visible.sync="popupShow" center @close="popupClose">
        <div class="all-box">
    <el-dialog class="syld-details-box anti-fraud-box site-dialog-popup business-detail-box" :title="title"
        append-to-body :close-on-click-modal="false" :visible.sync="popupShow" center @close="popupClose">
        <div class="flex f-d-c" style="height: 100%;" v-loading="loading"
            element-loading-background="rgba(0, 0, 0, 0.5)">
            <div class="type-tab-box" v-if="tabList.length != 0">
                <div class="tab-item" :class="{ 'tab-choose-item': chooseTab == order }" @click="tabClick(order)"
                    v-for="(part, order) in tabList" :key="order">
                    {{ part }}</div>
            </div>
            <div class="content" v-show="chooseTab == 0">
                <div class="item-box" v-for="(item, index) in lableList" :key="index">
                    <div class="label">{{ item.label }}:</div>
                    <div class="value" v-if="item.isPic != true">{{ item.value }}</div>
                    <div class="value" v-if="item.isPic == true">
                        <el-image
                            :style="{ width: item.value != '' ? '100px' : '', height: item.value != '' ? '100px' : '' }"
                            :src="getImgUrls(item.value)" :preview-src-list="getImgUrls(item.value)">
                            <div slot="error" class="image-slot">
                                <i class="el-icon-picture-outline"></i> 暂无图片
                            </div>
                        </el-image>
            <div class="flex-1 tab-content-box scroll-box" v-show="chooseTab == 0">
                <div class="info-list">
                    <div class="info-item" v-for="(item, index) in lableList" :key="index">
                        <div class="name">{{ item.label }}:</div>
                        <div class="value" v-if="item.isPic != true">{{ item.value }}</div>
                        <div class="value" v-if="item.isPic == true">
                            <el-image
                                :style="{ width: item.value != '' ? '100px' : '', height: item.value != '' ? '100px' : '' }"
                                :src="getImgUrls(item.value)" :preview-src-list="getImgUrls(item.value)">
                                <div slot="error" class="image-slot">
                                    <i class="el-icon-picture-outline"></i> 暂无图片
                                </div>
                            </el-image>
                        </div>
                    </div>
                </div>
            </div>
            <div class="content" v-show="chooseTab == 1">
                <el-table :data="tableData" style="width: 100%"
                    :header-cell-style="{ 'text-align': 'center', 'background-color': '#203c60', 'borderColor': '#324e75' }"
                    :cell-style="{ 'text-align': 'center', 'borderColor': '#324e75', 'cursor': 'default' }"
                    :row-class-name="tableRowClassName" class="police-infor-table">
                    <el-table-column prop="name" :show-overflow-tooltip="true" label="名称"
                        :key="Math.random()"></el-table-column>
                    <el-table-column prop="idCard" :show-overflow-tooltip="true" label="身份证号"
                        :key="Math.random()"></el-table-column>
                    <el-table-column prop="phoneNumber" :show-overflow-tooltip="true" label="手机号"
                        :key="Math.random()"></el-table-column>
                    <el-table-column prop="employer" :show-overflow-tooltip="true" label="工作单位"
                        :key="Math.random()"></el-table-column>
                    <el-table-column prop="confirmFlag" :show-overflow-tooltip="true" label="审核状态" :key="Math.random()">
                        <template slot-scope="scope">
                            <div>{{ scope.row.confirmFlag == 1 ? '待确认' : '已确认' }}</div>
                        </template>
            <div class="flex-1 tab-content-box scroll-box" v-show="chooseTab == 1">
                <el-table :data="serviceoArr" style="width: 100%" :header-cell-style="{ 'text-align': 'center' }"
                    :cell-style="{ 'text-align': 'center' }">
                    <el-table-column prop="name" label="姓名">
                    </el-table-column>
                    <el-table-column prop="telephone" label="电话">
                    </el-table-column>
                    <el-table-column prop="idCard" label="身份证">
                    </el-table-column>
                    <el-table-column prop="occupation" label="职业">
                    </el-table-column>
                    <el-table-column prop="address" label="居住地址">
                    </el-table-column>
                </el-table>
            </div>
@@ -47,29 +47,59 @@
</template>
<script>
import {
    getBackblastPubRecordDetail,
} from "@/api/antiFraudShow/index.js"
export default {
    name: 'detailDialog',
    data () {
        return {
            loading: true,
            title: '',
            popupShow: false,
            lableList: [],
            chooseTab: 0,
            tabList: [],
            tableData: []
            serviceoArr: []
        }
    },
    methods: {
        // tab切换
        tabClick (type) {
            this.chooseTab = type
        },
        // 打开弹窗初始化数据
        initOpen (row, title, tabList, tableData) {
        initOpen (data, title, row, tabList) {
            this.chooseTab = 0
            this.loading = true
            this.popupShow = true
            this.lableList = row
            this.title = title
            this.tabList = tabList
            this.tableData = tableData
            getBackblastPubRecordDetail({
                id: row.id
            }).then(res => {
                this.lableList = data
                this.title = title
                this.tabList = tabList
                this.serviceoArr = [
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                    ...res.data.data.backblastPubPersonEntityList,
                ]
                this.loading = false
            })
        },
        // 关闭弹窗按钮
@@ -87,11 +117,6 @@
            }
            return imageUrls || []
        },
        // tab切换
        tabClick (type) {
            this.chooseTab = type
        },
    },
}
</script>
@@ -101,6 +126,23 @@
    height: 120px;
}
.flex {
    display: flex;
}
.f-d-c {
    flex-direction: column;
}
.flex-1 {
    height: 0;
    flex: 1;
}
.scroll-box {
    overflow-y: auto;
}
.all-box {
    display: flex;
    flex-direction: column;
src/views/antiFraudShow/index.vue
@@ -59,7 +59,8 @@
<script>
import { initMapPosition } from '@/utils/mapPositionInit'
import {
    getBackblastPubRecordList, getBackblastWarnHanRecList
    getBackblastPubRecordList,
    getBackblastWarnHanRecList
} from "@/api/antiFraudShow/index.js"
import detailDialog from './components/detailDialog.vue'
@@ -240,7 +241,10 @@
                    }
                ]
            }
            this.$refs.detailDialog.initOpen(detailList, title, [], [])
            this.$refs.detailDialog.initOpen(detailList, title, row, [
                '基本信息',
                '服务对象'
            ])
        },
        // 获取列表