Browse Source

反诈骗地市 省公司报表

yangyd 3 years ago
parent
commit
2e754a142b

+ 232 - 0
src/pages/main/antiSpoofing/channel.vue

@@ -0,0 +1,232 @@
+<template>
+    <fullscreen :fullscreen.sync="fullscreen" class="container" style="margin: 0;">
+        <div class="container-box">
+            <div class="search">
+                <mySearch :searchList="searchList" @searchInfo="searchInfo"></mySearch>
+                <div>
+                    <el-button class="btn-check" plain size="medium" type="primary" @click="downloadTemplate">下载模板
+                    </el-button>
+                    <myUpload style="display:inline-block;" :fileInfo="fileInfo"
+                              :fileList="fileInfo.fileList"></myUpload>
+                </div>
+            </div>
+            <div class="tabbox">
+                <el-table height="calc(100% - 40px)" class="com-table" ref="multipleTable" :data="tableData"
+                          tooltip-effect="dark" size="small" border style="width: 100%" :header-cell-style="headerStyleFun" :cell-style="cellStyle">
+                    <el-table-column align="center" :label="toolTit">
+                        <el-table-column prop="recordRegionName" align="center" label="地市" >
+                        </el-table-column>
+                        <el-table-column prop="sbzs" align="center" label="渠道名称" >
+                        </el-table-column>
+                        <el-table-column prop="yjjs" align="center" label="考核年份" >
+                        </el-table-column>
+                        <el-table-column prop="wjjs" align="center" label="考核月份" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="扣罚金额" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="关停工号(1个月、3个月)" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="6个月不允许开户" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="取消合作" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="警示教育(约谈、通报)" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="末梢渠道6个月不允许开户" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="末梢渠道取消合作" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="末梢渠道警示教育" >
+                        </el-table-column>
+                    </el-table-column>
+                </el-table>
+                <el-pagination class="pageBox" @current-change="currchange" layout="prev, pager, next" background
+                               :total="total">
+                </el-pagination>
+            </div>
+        </div>
+    </fullscreen>
+</template>
+<script>
+    import mySearch from "../../../components/search.vue";
+    import toolList from "../../../components/toolList.vue";
+    import myUpload from '../../../components/upload'
+
+    export default {
+        components: {
+            mySearch,
+            toolList,
+            myUpload
+        },
+        data() {
+
+            return {
+                toolTit: '渠道考核报表',
+                searchList: [{
+                    type: 'month',
+                    tit: '月份',
+                    value: new Date(),
+                    width: '100%',
+                }
+                ],
+                fullscreen: false,
+                total: 0,
+                pageSize: 1,
+                tableData: [],
+                params: {},
+                fileInfo: {
+                    type: 'btn',
+                    typename: '导入',
+                    btntype: 'primary',
+                    limit: 1,
+                    url: '/market/cMkOrgUser/orgUserImportNew',
+                    fileList: [],
+                    typexz:"xlsx"
+                },
+            }
+        },
+        methods: {
+            cellStyle(){
+                return "borderColor:black"
+            },
+            headerStyleFun({row, column, rowIndex, columnIndex}){
+                if (rowIndex === 0){
+                    return "background-color:#d8e4bc;font-size:18px;font-weight:bold;color:black;borderColor:black"
+                }else if (rowIndex === 1){
+                    return "background-color:#d8e4bc;font-size:14px;font-weight:bold;color:black;borderColor:black"
+                }
+            },
+            downloadTemplate(){
+                this.$http({
+                    url: '/market/antiSpoofing/excelExport',
+                    method: "post",
+                    responseType: 'blob',
+                    data: {},
+                }).then((response) => {
+                    if (window.navigator && window.navigator.msSaveOrOpenBlob) {
+                        let blob = new Blob([response.data], {
+                            type: response.data.type
+                        });
+                        window.navigator.msSaveOrOpenBlob(blob, '模板.csv');
+                    } else {
+                        /* 火狐谷歌的文件下载方式 */
+                        var blob = new Blob([response.data])
+                        var downloadElement = document.createElement('a')
+                        var href = window.URL.createObjectURL(blob);
+                        downloadElement.href = href;
+                        downloadElement.download = '模板.csv';
+                        document.body.appendChild(downloadElement);
+                        downloadElement.click();
+                        document.body.removeChild(downloadElement);
+                        window.URL.revokeObjectURL(href);
+                    }
+                })
+            },
+            //搜索数据
+            searchInfo(v) {
+                this.params = {};
+                v[0] ? this.params.opTimeFrom = this.$formatDate(v[0], "YYYY-MM") : '';
+                this.getList(this.params, this.pageSize);
+            },
+            //获取列表
+            getList(v, n) {
+                this.pageSize = n;
+                let _this = this;
+                this.$http({
+                    url: "/market/cwcompetitor/queryTotalPage",
+                    method: "post",
+                    headers: {
+                        "Content-Type": "application/json",
+                        "page": '{"pageNo":"' + n + '","pageSize":"10"}'
+                    },
+                    data: v,
+                }).then((res) => {
+                    this.tableData = res.data.data;
+                    this.total = res.data.totalRecord;
+                });
+            },
+            // 分页
+            currchange(v) {
+                this.pageSize = v;
+                this.searchInfo([this.searchList[0].value], this.pageSize);
+            }
+        },
+        mounted() {
+            this.searchInfo([this.searchList[0].value], 1);
+        },
+        created() {
+
+        }
+    }
+</script>
+<style scoped lang="scss">
+    .onetab {
+        margin-bottom: 20px;
+        padding: 0 20px;
+    }
+
+    .titbox {
+        div {
+            float: right;
+
+            i {
+                font-size: 22px;
+                margin-left: 20px;
+                cursor: pointer;
+            }
+        }
+    }
+
+    .tabbox {
+        margin-top: 15px;
+    }
+
+    .pageBox {
+        text-align: right;
+        margin-top: 10px;
+    }
+
+    .info-line {
+        width: 100%;
+        display: block;
+        padding-left: 20px;
+
+        div {
+            width: 50%;
+            display: inline-block;
+        }
+
+        span {
+            width: 80px;
+            display: inline-block;
+            text-align: left;
+
+            i {
+                color: red;
+                display: inline-block;
+                padding-right: 5px;
+            }
+        }
+
+        .el-select,
+        .el-input {
+            width: calc(100% - 100px);
+        }
+    }
+
+    .online {
+        width: 100%;
+
+        .el-select {
+            width: calc(100% - 100px);
+        }
+
+        span {
+            vertical-align: top;
+        }
+
+        .el-textarea {
+            width: calc(100% - 100px);
+        }
+    }
+</style>

+ 231 - 0
src/pages/main/antiSpoofing/districtCounty.vue

@@ -0,0 +1,231 @@
+<template>
+    <fullscreen :fullscreen.sync="fullscreen" class="container" style="margin: 0;">
+        <div class="container-box">
+            <div class="search">
+                <mySearch :searchList="searchList" @searchInfo="searchInfo"></mySearch>
+                <div>
+                    <el-button class="btn-check" plain size="medium" type="primary" @click="downloadTemplate">下载模板
+                    </el-button>
+                    <myUpload style="display:inline-block;" :fileInfo="fileInfo"
+                              :fileList="fileInfo.fileList"></myUpload>
+                </div>
+            </div>
+            <div class="tabbox">
+                <el-table height="calc(100% - 40px)" class="com-table" ref="multipleTable" :data="tableData"
+                    tooltip-effect="dark" size="small" border style="width: 100%" :header-cell-style="headerStyleFun" :cell-style="cellStyle">
+                    <el-table-column align="center" :label="toolTit">
+                        <el-table-column prop="recordRegionName" align="center" label="地市" >
+                        </el-table-column>
+                        <el-table-column prop="sbzs" align="center" label="区县名" >
+                        </el-table-column>
+                        <el-table-column prop="yjjs" align="center" label="扣罚年份" >
+                        </el-table-column>
+                        <el-table-column prop="wjjs" align="center" label="扣罚月份" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="扣分" >
+                        </el-table-column>
+                        <el-table-column prop="fkjh"  align="center" label="约谈" width="300">
+                        </el-table-column>
+                    </el-table-column>
+                </el-table>
+                <el-pagination class="pageBox" @current-change="currchange" layout="prev, pager, next" background
+                    :total="total">
+                </el-pagination>
+            </div>
+        </div>
+    </fullscreen>
+</template>
+<script>
+    import mySearch from "../../../components/search.vue";
+    import toolList from "../../../components/toolList.vue";
+    import myUpload from '../../../components/upload';
+
+    export default {
+        components: {
+            mySearch,
+            toolList,
+            myUpload
+        },
+        data() {
+
+            return {
+                toolTit: '区县考核报表',
+                searchList: [{
+                        type: 'month',
+                        tit: '月份',
+                        value: new Date(),
+                        width: '100%',
+                    }
+                ],
+                fullscreen: false,
+                total: 0,
+                pageSize: 1,
+                tableData: [],
+                userInfo: {},
+                params: {},
+                fileInfo: {
+                    type: 'btn',
+                    typename: '导入',
+                    btntype: 'primary',
+                    limit: 1,
+                    url: '/market/cMkOrgUser/orgUserImportNew',
+                    fileList: [],
+                    typexz:"xlsx"
+                },
+            }
+        },
+        methods: {
+            cellStyle(){
+                return "borderColor:black"
+            },
+            headerStyleFun({row, column, rowIndex, columnIndex}){
+                if (rowIndex === 0){
+                    return "background-color:#d8e4bc;font-size:18px;font-weight:bold;color:black;borderColor:black"
+                }else if (rowIndex === 1){
+                    return "background-color:#d8e4bc;font-size:14px;font-weight:bold;color:black;borderColor:black"
+                }
+            },
+            downloadTemplate(){
+                this.$http({
+                    url: '/market/cStoreScheTrainEva/downLoadTempEva',
+                    method: "post",
+                    responseType: 'blob',
+                    headers: {
+                        "Content-Type": "application/json",
+                    },
+                    data: {},
+                }).then((response) => {
+                    if (window.navigator && window.navigator.msSaveOrOpenBlob) {
+                        let blob = new Blob([response.data], {
+                            type: response.data.type
+                        });
+                        window.navigator.msSaveOrOpenBlob(blob, '模板.csv');
+                    } else {
+                        /* 火狐谷歌的文件下载方式 */
+                        var blob = new Blob([response.data])
+                        var downloadElement = document.createElement('a')
+                        var href = window.URL.createObjectURL(blob);
+                        downloadElement.href = href;
+                        downloadElement.download = '模板.csv';
+                        document.body.appendChild(downloadElement);
+                        downloadElement.click();
+                        document.body.removeChild(downloadElement);
+                        window.URL.revokeObjectURL(href);
+                    }
+                })
+            },
+            //搜索数据
+            searchInfo(v) {
+                this.params = {};
+                v[0] ? this.params.opTimeFrom = this.$formatDate(v[0], "YYYY-MM") : '';
+                this.getList(this.params, this.pageSize);
+            },
+            //获取列表
+            getList(v, n) {
+                this.pageSize = n;
+                let _this = this;
+                this.$http({
+                    url: "/market/cwcompetitor/queryTotalPage",
+                    method: "post",
+                    headers: {
+                        "Content-Type": "application/json",
+                        "page": '{"pageNo":"' + n + '","pageSize":"10"}'
+                    },
+                    data: v,
+                }).then((res) => {
+                    this.tableData = res.data.data;
+                    this.total = res.data.totalRecord;
+                });
+            },
+            // 分页
+            currchange(v) {
+                this.pageSize = v;
+                this.searchInfo([this.searchList[0].value], this.pageSize);
+            },
+            changeRout(){
+                let param = JSON.parse(window.sessionStorage.getItem("antiSpoofingSearchParams"));
+                if (param){
+                    console.log(param)
+                }
+            }
+        },
+        mounted() {
+            this.changeRout()
+            this.searchInfo([this.searchList[0].value], 1);
+        },
+        created() {
+
+        }
+    }
+</script>
+<style scoped lang="scss">
+    .onetab {
+        margin-bottom: 20px;
+        padding: 0 20px;
+    }
+
+    .titbox {
+        div {
+            float: right;
+
+            i {
+                font-size: 22px;
+                margin-left: 20px;
+                cursor: pointer;
+            }
+        }
+    }
+
+    .tabbox {
+        margin-top: 15px;
+    }
+
+    .pageBox {
+        text-align: right;
+        margin-top: 10px;
+    }
+
+    .info-line {
+        width: 100%;
+        display: block;
+        padding-left: 20px;
+
+        div {
+            width: 50%;
+            display: inline-block;
+        }
+
+        span {
+            width: 80px;
+            display: inline-block;
+            text-align: left;
+
+            i {
+                color: red;
+                display: inline-block;
+                padding-right: 5px;
+            }
+        }
+
+        .el-select,
+        .el-input {
+            width: calc(100% - 100px);
+        }
+    }
+
+    .online {
+        width: 100%;
+
+        .el-select {
+            width: calc(100% - 100px);
+        }
+
+        span {
+            vertical-align: top;
+        }
+
+        .el-textarea {
+            width: calc(100% - 100px);
+        }
+    }
+</style>

+ 83 - 0
src/pages/main/antiSpoofing/home.vue

@@ -0,0 +1,83 @@
+<template>
+  <div class="inner-container">
+    <div v-if="menuList.indexOf(activeName) >= 0">
+        <el-col :span="3"
+        ><el-tabs
+            tab-position="left"
+            v-model="activeName"
+            @tab-click="handleClick"
+        >
+            <el-tab-pane
+                v-for="(item, index) in routerList"
+                :key="index"
+                :name="item.path"
+                :label="item.label"
+            ></el-tab-pane>
+        </el-tabs>
+        </el-col>
+        <el-col :span="21" style="background: #f4f4f4;">
+            <div style="height: 100%">
+                <router-view />
+            </div>
+        </el-col>
+    </div>
+      <div v-else>
+          <div style="height: 100%;background: #f4f4f4;">
+              <router-view />
+          </div>
+      </div>
+  </div>
+</template>
+<script>
+export default {
+  data() {
+    return {
+      activeName: "",
+      showList: [],
+      routerList: [
+        { label: "区县考核报表", path: "/districtCounty", name: "districtCounty" },
+        { label: "人员考核报表", path: "/personnel", name: "personnel" },
+        { label: "渠道考核报表", path: "/channel", name: "channel" }
+      ],
+    };
+  },
+  computed: {
+    menuList: function () {
+      let arr = [];
+      this.routerList.map((item) => {
+        this.showList.map((row) => {
+          if (item.path == row) {
+            arr.push(item.path);
+          }
+        });
+      });
+      return arr;
+    },
+  },
+  methods: {
+    handleClick(val) {
+      if (this.$route.path != this.activeName) {
+        this.$router.push(this.activeName);
+      }
+    },
+  },
+  mounted() {
+    this.activeName = this.$route.path;
+  },
+  created() {
+    JSON.parse(sessionStorage.childrenMenus).map((item) => {
+      this.showList.push(item.jspUrl);
+    });
+  },
+  watch: {
+    $route(to, from) {
+      this.activeName = this.$route.path;
+    },
+  },
+};
+</script>
+<style>
+.el-tabs__content {
+  display: none;
+}
+</style>

+ 230 - 0
src/pages/main/antiSpoofing/personnel.vue

@@ -0,0 +1,230 @@
+<template>
+    <fullscreen :fullscreen.sync="fullscreen" class="container" style="margin: 0;">
+        <div class="container-box">
+            <div class="search">
+                <mySearch :searchList="searchList" @searchInfo="searchInfo"></mySearch>
+                <div>
+                    <el-button class="btn-check" plain size="medium" type="primary" @click="downloadTemplate">下载模板
+                    </el-button>
+                    <myUpload style="display:inline-block;" :fileInfo="fileInfo"
+                              :fileList="fileInfo.fileList"></myUpload>
+                </div>
+            </div>
+            <div class="tabbox">
+                <el-table height="calc(100% - 40px)" class="com-table" ref="multipleTable" :data="tableData"
+                          tooltip-effect="dark" size="small" border style="width: 100%" :header-cell-style="headerStyleFun" :cell-style="cellStyle">
+                    <el-table-column align="center" :label="toolTit">
+                        <el-table-column prop="recordRegionName" align="center" label="地市" >
+                        </el-table-column>
+                        <el-table-column prop="sbzs" align="center" label="工号" >
+                        </el-table-column>
+                        <el-table-column prop="yjjs" align="center" label="人员姓名" >
+                        </el-table-column>
+                        <el-table-column prop="wjjs" align="center" label="职务" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="扣罚年份" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="扣罚月份" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="扣绩效(分)" >
+                        </el-table-column>
+                        <el-table-column prop="fkzbs" align="center" label="罚款" >
+                        </el-table-column>
+                        <el-table-column prop="fkjh"  align="center" label="通报" width="300">
+                        </el-table-column>
+                    </el-table-column>
+                </el-table>
+                <el-pagination class="pageBox" @current-change="currchange" layout="prev, pager, next" background
+                               :total="total">
+                </el-pagination>
+            </div>
+        </div>
+    </fullscreen>
+</template>
+<script>
+    import mySearch from "../../../components/search.vue";
+    import toolList from "../../../components/toolList.vue";
+    import myUpload from '../../../components/upload';
+
+
+    export default {
+        components: {
+            mySearch,
+            toolList,
+            myUpload
+        },
+        data() {
+
+            return {
+                toolTit: '人员考核报表',
+                searchList: [{
+                    type: 'month',
+                    tit: '月份',
+                    value: new Date(),
+                    width: '100%',
+                }
+                ],
+                fullscreen: false,
+                total: 0,
+                pageSize: 1,
+                tableData: [],
+                params: {},
+                fileInfo: {
+                    type: 'btn',
+                    typename: '导入',
+                    btntype: 'primary',
+                    limit: 1,
+                    url: '/market/cMkOrgUser/orgUserImportNew',
+                    fileList: [],
+                    typexz:"xlsx"
+                },
+            }
+        },
+        methods: {
+            headerStyleFun({row, column, rowIndex, columnIndex}){
+                if (rowIndex === 0){
+                    return "background-color:#d8e4bc;font-size:18px;font-weight:bold;color:black;borderColor:black"
+                }else if (rowIndex === 1){
+                    return "background-color:#d8e4bc;font-size:14px;font-weight:bold;color:black;borderColor:black"
+                }
+            },
+            cellStyle(){
+              return "borderColor:black"
+            },
+            downloadTemplate(){
+                this.$http({
+                    url: '/market/cStoreScheTrainEva/downLoadTempEva',
+                    method: "post",
+                    responseType: 'blob',
+                    headers: {
+                        "Content-Type": "application/json",
+                    },
+                    data: {},
+                }).then((response) => {
+                    if (window.navigator && window.navigator.msSaveOrOpenBlob) {
+                        let blob = new Blob([response.data], {
+                            type: response.data.type
+                        });
+                        window.navigator.msSaveOrOpenBlob(blob, '模板.csv');
+                    } else {
+                        /* 火狐谷歌的文件下载方式 */
+                        var blob = new Blob([response.data])
+                        var downloadElement = document.createElement('a')
+                        var href = window.URL.createObjectURL(blob);
+                        downloadElement.href = href;
+                        downloadElement.download = '模板.csv';
+                        document.body.appendChild(downloadElement);
+                        downloadElement.click();
+                        document.body.removeChild(downloadElement);
+                        window.URL.revokeObjectURL(href);
+                    }
+                })
+            },
+            //搜索数据
+            searchInfo(v) {
+                this.params = {};
+                v[0] ? this.params.opTimeFrom = this.$formatDate(v[0], "YYYY-MM") : '';
+                this.getList(this.params, this.pageSize);
+            },
+            //获取列表
+            getList(v, n) {
+                this.pageSize = n;
+                let _this = this;
+                this.$http({
+                    url: "/market/cwcompetitor/queryTotalPage",
+                    method: "post",
+                    headers: {
+                        "Content-Type": "application/json",
+                        "page": '{"pageNo":"' + n + '","pageSize":"10"}'
+                    },
+                    data: v,
+                }).then((res) => {
+                    this.tableData = res.data.data;
+                    this.total = res.data.totalRecord;
+                });
+            },
+            // 分页
+            currchange(v) {
+                this.pageSize = v;
+                this.searchInfo([this.searchList[0].value], this.pageSize);
+            },
+        },
+        mounted() {
+            this.searchInfo([this.searchList[0].value], 1);
+        },
+        created() {
+
+        }
+    }
+</script>
+<style scoped lang="scss">
+    .onetab {
+        margin-bottom: 20px;
+        padding: 0 20px;
+    }
+
+    .titbox {
+        div {
+            float: right;
+
+            i {
+                font-size: 22px;
+                margin-left: 20px;
+                cursor: pointer;
+            }
+        }
+    }
+
+    .tabbox {
+        margin-top: 15px;
+    }
+
+    .pageBox {
+        text-align: right;
+        margin-top: 10px;
+    }
+
+    .info-line {
+        width: 100%;
+        display: block;
+        padding-left: 20px;
+
+        div {
+            width: 50%;
+            display: inline-block;
+        }
+
+        span {
+            width: 80px;
+            display: inline-block;
+            text-align: left;
+
+            i {
+                color: red;
+                display: inline-block;
+                padding-right: 5px;
+            }
+        }
+
+        .el-select,
+        .el-input {
+            width: calc(100% - 100px);
+        }
+    }
+
+    .online {
+        width: 100%;
+
+        .el-select {
+            width: calc(100% - 100px);
+        }
+
+        span {
+            vertical-align: top;
+        }
+
+        .el-textarea {
+            width: calc(100% - 100px);
+        }
+    }
+</style>

+ 241 - 0
src/pages/main/antiSpoofing/standingBook.vue

@@ -0,0 +1,241 @@
+<template>
+    <fullscreen :fullscreen.sync="fullscreen" class="container" style="margin: 0;">
+        <div class="container-box">
+            <div class="search">
+                <mySearch :searchList="searchList" @searchInfo="searchInfo"></mySearch>
+                <el-button class="btn-check" size="medium" type="primary" @click="outlist">导出
+                </el-button>
+            </div>
+            <div class="tabbox">
+                <el-table height="100%" class="com-table" ref="multipleTable" :data="tableData"
+                    tooltip-effect="dark" size="small" border style="width: 100%" :header-cell-style="headerStyleFun" :cell-style="cellStyle">
+                    <el-table-column prop="recordRegionName" align="center" fixed="left" label="地市"></el-table-column>
+                    <el-table-column align="center" width="800px" :label="tooltit">
+                        <el-table-column align="center" label="区县">
+                            <el-table-column prop="fkzbs" align="center" label="区县个数" ></el-table-column>
+                            <el-table-column prop="fkjh"  align="center" label="扣罚次数"></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="扣分" ></el-table-column>
+                            <el-table-column prop="fkjh"  align="center" label="约谈"></el-table-column>
+                        </el-table-column>
+                        <el-table-column align="center" label="人员">
+                            <el-table-column prop="fkzbs" align="center" label="扣罚人数" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="扣罚人次" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="扣分" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="罚款" ></el-table-column>
+                            <el-table-column prop="fkjh"  align="center" label="通报"></el-table-column>
+                        </el-table-column>
+                        <el-table-column align="center" label="渠道">
+                            <el-table-column prop="fkzbs" align="center" label="渠道个数" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="扣罚次数" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="扣罚金额" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="关停工号(1个月、3个月)" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="6个月不允许开户" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="取消合作" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="警示教育(约谈、通报)" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="末梢渠道6个月不允许开户" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="末梢渠道取消合作" ></el-table-column>
+                            <el-table-column prop="fkzbs" align="center" label="末梢渠道警示教育" ></el-table-column>
+                        </el-table-column>
+                    </el-table-column>
+                    <el-table-column align="center" fixed="right" label="操作">
+                        <template slot-scope="scope">
+                            <el-button @click="handleClick(scope.row)" type="text" size="small">详情</el-button>
+                        </template>
+                    </el-table-column>
+                </el-table>
+            </div>
+        </div>
+    </fullscreen>
+</template>
+<script>
+    import mySearch from "../../../components/search.vue";
+    import toolList from "../../../components/toolList.vue";
+
+    export default {
+        components: {
+            mySearch,
+            toolList
+        },
+        data() {
+
+            return {
+                tooltit: '处罚台账',
+                searchList: [{
+                        type: 'month',
+                        tit: '开始月份',
+                        value: new Date(),
+                        width: '49%',
+                    },
+                    {
+                        type: 'month',
+                        tit: '结束月份',
+                        value: new Date(),
+                        width: '49%',
+                    },
+                ],
+                fullscreen: false,
+                total: 0,
+                pageSize: 1,
+                tableData: [],
+                params: {},
+            }
+        },
+        methods: {
+            cellStyle(){
+                return "borderColor:black"
+            },
+            headerStyleFun({row, column, rowIndex, columnIndex}){
+                if (rowIndex === 0){
+                    return "background-color:#d8e4bc;font-size:18px;font-weight:bold;color:black;borderColor:black"
+                }else {
+                    return "background-color:#d8e4bc;font-size:14px;font-weight:bold;color:black;borderColor:black"
+                }
+            },
+            handleClick(row){
+                window.sessionStorage.setItem("antiSpoofingSearchParams", JSON.stringify({
+                    queryTime:[this.$formatDate(this.searchList[0].value, "YYYY-MM"), this.$formatDate(this.searchList[1].value, "YYYY-MM")],
+                    city:row.city
+                }))
+                this.$router.push({
+                    path: "/districtCounty"
+                });
+            },
+            //搜索数据
+            searchInfo(v) {
+                this.params = {};
+                v[0] ? this.params.opTimeFrom = this.$formatDate(v[0], "YYYY-MM") : '';
+                v[1] ? this.params.opTimeTo = this.$formatDate(v[1], "YYYY-MM") : '';
+                this.getList(this.params, this.pageSize);
+            },
+            //获取列表
+            getList(v, n) {
+                this.pageSize = n;
+                let _this = this;
+                this.$http({
+                    url: "/market/cwcompetitor/queryTotalPage",
+                    method: "post",
+                    headers: {
+                        "Content-Type": "application/json",
+                        "page": '{"pageNo":"' + n + '","pageSize":"10"}'
+                    },
+                    data: v,
+                }).then((res) => {
+                    this.tableData = res.data.data;
+                    this.total = res.data.totalRecord;
+                });
+            },
+            // =======================
+            outlist() {
+                let data = {}
+                // data.tital = JSON.stringify(data.tital)
+                console.log(data);
+                // return
+                this.$http({
+                    url: "/market/cwcompetitor/excelExport",
+                    method: "post",
+                    headers: {
+                        "Content-Type": "application/json",
+                    },
+                    responseType: "blob",
+                    data: data,
+                }).then((response) => {
+                    if (window.navigator && window.navigator.msSaveOrOpenBlob) {
+                        let blob = new Blob([response.data], {
+                            type: 'application/vnd.ms-excel'
+                        })
+                        window.navigator.msSaveOrOpenBlob(blob,
+                            new Date().getTime() + '.xlsx')
+                    } else {
+                        /* 火狐谷歌的文件下载方式 */
+                        var blob = new Blob([response.data])
+                        var downloadElement = document.createElement('a')
+                        var href = window.URL.createObjectURL(blob)
+                        downloadElement.href = href
+                        downloadElement.download = new Date().getTime() + '.xlsx'
+                        document.body.appendChild(downloadElement)
+                        downloadElement.click()
+                        document.body.removeChild(downloadElement)
+                        window.URL.revokeObjectURL(href)
+                    }
+                });
+            },
+        },
+        mounted() {
+            this.getList([this.searchList[0].value, this.searchList[1].value], 1);
+        },
+        created() {
+
+        }
+    }
+</script>
+<style scoped lang="scss">
+    .onetab {
+        margin-bottom: 20px;
+        padding: 0 20px;
+    }
+
+    .titbox {
+        div {
+            float: right;
+
+            i {
+                font-size: 22px;
+                margin-left: 20px;
+                cursor: pointer;
+            }
+        }
+    }
+
+    .tabbox {
+        margin-top: 15px;
+    }
+
+    .pageBox {
+        text-align: right;
+        margin-top: 10px;
+    }
+
+    .info-line {
+        width: 100%;
+        display: block;
+        padding-left: 20px;
+
+        div {
+            width: 50%;
+            display: inline-block;
+        }
+
+        span {
+            width: 80px;
+            display: inline-block;
+            text-align: left;
+
+            i {
+                color: red;
+                display: inline-block;
+                padding-right: 5px;
+            }
+        }
+
+        .el-select,
+        .el-input {
+            width: calc(100% - 100px);
+        }
+    }
+
+    .online {
+        width: 100%;
+
+        .el-select {
+            width: calc(100% - 100px);
+        }
+
+        span {
+            vertical-align: top;
+        }
+
+        .el-textarea {
+            width: calc(100% - 100px);
+        }
+    }
+</style>

+ 36 - 0
src/router/index.js

@@ -1782,6 +1782,42 @@ const routes = [{
             name: 'redir',
             component: (resolve) => require( /* webpackChunkName: "system" */ ['../pages/main/redir/redir'], resolve)
         },
+        {
+            meta: { name:  '反诈骗处罚报表', keepAlive: false },
+            path: '/antiSpoofing',
+            name: 'antiSpoofing',
+            redirect: 'districtCounty',
+            component: (resolve) => require( /* webpackChunkName: "system" */
+                ['../pages/main/antiSpoofing/home.vue'], resolve),
+            children: [
+                {
+                    meta: { name:  '地市公司-区县考核报表', keepAlive: false },
+                    path: '/districtCounty',
+                    name: 'districtCounty',
+                    component: (resolve) => require( /* webpackChunkName: "system" */['../pages/main/antiSpoofing/districtCounty'], resolve)
+                },
+                {
+                    meta: { name:  '地市公司-人员考核报表', keepAlive: false },
+                    path: '/personnel',
+                    name: 'personnel',
+                    component: (resolve) => require( /* webpackChunkName: "system" */['../pages/main/antiSpoofing/personnel'], resolve)
+                },
+                {
+                    meta: { name:  '地市公司-渠道考核报表', keepAlive: false },
+                    path: '/channel',
+                    name: 'channel',
+                    component: (resolve) => require( /* webpackChunkName: "system" */
+                        ['../pages/main/antiSpoofing/channel'], resolve)
+                },
+                {
+                    meta: { name:  '省公司处罚台账', keepAlive: false },
+                    path: '/standingBook',
+                    name: 'standingBook',
+                    component: (resolve) => require( /* webpackChunkName: "system" */
+                        ['../pages/main/antiSpoofing/standingBook'], resolve)
+                }
+            ]
+        },
 
     ]
 },