fan %!s(int64=2) %!d(string=hai) anos
pai
achega
920316ffda

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 509 - 0
public/static/views/incomeTemplateExcel.html


+ 76 - 0
src/pages/main/incomeExcel/home.vue

@@ -0,0 +1,76 @@
+<template>
+    <div class="inner-container">
+        <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>
+</template>
+<script>
+export default {
+    data() {
+        return {
+            activeName: "",
+            showList: [],
+            routerList: [
+                {label: "收入模板管理", path: "/incomeExcelTemplate", name: "incomeExcelTemplate"},
+                {label: "收入信息收集", path: "/b", name: "b"},
+                {label: "收入信息发布", path: "/c", name: "c"},
+                {label: "收入附件收集", path: "/d", name: "d"},
+            ],
+        };
+    },
+    computed: {
+        menuList: function () {
+            let arr = [];
+            this.routerList.map((item) => {
+                this.showList.map((row) => {
+                    if (item.path == row) {
+                        arr.push(item);
+                    }
+                });
+            });
+            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>

+ 16 - 0
src/pages/main/incomeExcel/incomeExcelInfo.vue

@@ -0,0 +1,16 @@
+<template>
+    <div class="container" id="container">
+        <iframe height="100%" width="100%" src="/static/views/incomeTemplateExcel.html" frameborder="0"></iframe>
+    </div>
+</template>
+<style scoped>
+.containerr {
+    background: #fff;
+    height: calc(100vh);
+    width: calc(100vw);
+    position: fixed;
+    left: 0;
+    top: 0;
+    overflow: hidden;
+}
+</style>

+ 204 - 0
src/pages/main/incomeExcel/incomeExcelTemplate.vue

@@ -0,0 +1,204 @@
+<template>
+    <fullscreen :fullscreen.sync="fullscreen" class="container" style="margin: 0;width: 100%;">
+        <div class="container-box" style="padding: 0 20px 0 0;">
+            <toolList @iconCli='iconCli' :tooltit='tooltit'></toolList>
+            <div style="overflow: hidden;">
+                <div class="search" style="float: left;">
+                    <mySearch :searchList="searchList" @searchInfo="searchInfo"></mySearch>
+                </div>
+                <div style="margin-top: 20px;float: right;" class="bigbtns">
+                    <el-button style="margin-left: 20px;" class="btn-check" size="medium" type="primary">新建模板
+                    </el-button>
+                </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%" v-loading="loading">
+                    <el-table-column prop="name" label="模板名称">
+                    </el-table-column>
+                    <el-table-column prop="opTime" label="配置时间">
+                    </el-table-column>
+                    <el-table-column prop="name" label="发起部门">
+                    </el-table-column>
+                    <el-table-column prop="name" label="发起人">
+                    </el-table-column>
+                    <el-table-column prop="name" label="模板类型">
+                    </el-table-column>
+                    <el-table-column prop="name" label="状态">
+                    </el-table-column>
+                    <el-table-column label="操作" width="180px" align="center" fixed="right">
+                        <template slot-scope="scope">
+                            <el-button size="mini" type="primary">下发</el-button>
+                            <el-button size="mini">编辑</el-button>
+                            <el-button size="mini">查看</el-button>
+                            <el-button size="mini">删除</el-button>
+                        </template>
+                    </el-table-column>
+                </el-table>
+                <el-pagination class="pageBox" @current-change="currchange" layout="prev, pager, next" background
+                               :total="total">
+                </el-pagination>
+            </div>
+        </div>
+        <myMessage :deleteTag='deleteTag' @closeMessage="processDelete" :centerDialogVisible="centerDialogVisible"
+                   v-if="centerDialogVisible"></myMessage>
+    </fullscreen>
+</template>
+<script>
+import mySearch from "../../../components/search.vue";
+import myUpload from "../../../components/upload";
+import toolList from "../../../components/toolList";
+import myMessage from "../../../components/myMessage.vue"
+
+export default {
+    components: {
+        myUpload,
+        mySearch,
+        toolList,
+        myMessage
+    },
+    data() {
+        return {
+            tableData: [{}],
+            total: 0,
+            params: {},
+            deleteTag: '',
+            centerDialogVisible: false,
+            loading: false,
+            tooltit: '收入模板管理',
+            searchList: [{
+                type: 'input',
+                tit: '模板名称',
+                value: '',
+                width: '100%',
+            }, {
+                type: 'input',
+                tit: '模板类型',
+                value: '',
+                width: '100%',
+            },],
+        }
+    },
+    methods: {
+        //搜索数据
+        searchInfo(v) {
+            this.params = {};
+            v[0] ? this.params.name = v[0] : '';
+            v[1] ? this.params.type = v[1] : '';
+            this.getList(this.params, this.pageSize);
+        },
+        //功能栏
+        iconCli(v) {
+            if (v === 1) {
+                this.getList(this.params, this.pageSize);
+            }
+            if (v === 2) {
+                this.fullscreen = !this.fullscreen
+            }
+        },
+        // 分页
+        currchange(v) {
+            this.pageSize = v;
+            this.getList(this.params, this.pageSize);
+        },
+        getList(v, n) {
+            this.pageSize = n;
+            this.loading = true;
+            this.tableData = [];
+            let _this = this;
+            this.$http({
+                url: "/market/cKeyChannelCoopExcel/queryPage",
+                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;
+                this.loading = false;
+            });
+        },
+        processDelete(v) {
+            this.centerDialogVisible = false;
+            if (v === 1) {
+                console.log("删除")
+            }
+        }
+    },
+    mounted() {
+
+    },
+    created() {
+
+    }
+}
+</script>
+<style scoped lang="scss">
+.titbox {
+    div {
+        float: right;
+
+        i {
+            font-size: 22px;
+            margin-left: 20px;
+            cursor: pointer;
+        }
+    }
+}
+
+.tabbox {
+    margin-top: 16px;
+}
+
+.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>
+