yangyin
2024-07-17 8e8b66e01f43f4632376fbbf083ded1bdf155f61
fix: 修改金额排行页面
已修改3个文件
206 ■■■■ 文件已修改
src/components/chat/chatComponents/summaryCom/SummaryCom.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/ch/demo/MonthlyLeaderBoard.html 196 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/ch/demo/Overview.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/chat/chatComponents/summaryCom/SummaryCom.vue
@@ -25,7 +25,7 @@
            </div>
            <div v-if="urlList && urlList.length > 0" class="w-full">
                <HTMLCom
                    data="http://127.0.0.1:5500/src/views/project/ch/demo/MonthlyPay.html"
                    data="http://127.0.0.1:5500/src/views/project/ch/demo/MonthlyLeaderBoard.html"
                    v-for="(item, index) in urlList"
                    :key="index"
                ></HTMLCom>
@@ -40,11 +40,11 @@
import type { TableInstance } from 'element-plus';
import _ from 'lodash';
import { computed, onMounted, ref } from 'vue';
import { ChartTypeEnum, chartTypeMapEchart, chartTypeMapName } from '../types';
import { axisLabelFormatter } from '/@/utils/chart';
import { PATH_ICON, SCATTER_SYMBOL_SIZE, timeDataOptionToContent } from '../common';
import { AnswerType } from '../../model/types';
import { PATH_ICON, SCATTER_SYMBOL_SIZE, timeDataOptionToContent } from '../common';
import HTMLCom from '../htmlCom/HTMLCom.vue';
import { ChartTypeEnum, chartTypeMapEchart } from '../types';
import { axisLabelFormatter } from '/@/utils/chart';
const props = defineProps(['data', 'error']);
const selectChartType = ref<ChartTypeEnum>(ChartTypeEnum.Line);
src/views/project/ch/demo/MonthlyLeaderBoard.html
@@ -8,9 +8,14 @@
    <script src="/customer_list/ch/ai_html/views/demo/js/tailwind.js"></script>
    <script src="/customer_list/ch/ai_html/views/demo/js/vue.global.js"></script>
    <script src="/customer_list/ch/ai_html/views/demo/js/iframe-resizer/child-5.1.5.js" async></script>
    <!-- <script src="/customer_list/ch/ai_html/views/demo/js/index.full.js"></script> -->
    <link href="/customer_list/ch/static/fonts/iconfont/iconfont.css" rel="stylesheet" type="text/css">
    </link>
    <script src="/customer_list/ch/static/js/echarts.min.js"></script>
    <!-- <link href="/customer_list/ch/ai_html/views/demo/css/ele-index.css" rel="stylesheet" type="text/css">
</link> -->
    <link rel="stylesheet" href="//unpkg.com/element-plus/dist/index.css" />
    <script src="//unpkg.com/element-plus"></script>
    <script src="/customer_list/ch/ai_html/views/demo/js/echarts.min.js"></script>
    <style type="text/css">
        .item_title {
            height: 38px;
@@ -36,77 +41,162 @@
            background-image: url('/customer_list//ch/static/images/demo/leader_right.png');
            transform: rotate(180deg);
        }
        .title-inner{
        .title-inner {
            font-weight: 900;
    letter-spacing: 2px;
    background-color :#31abe3;
    /* background: linear-gradient(92deg, #fff9 0%, #fff9 48.8525390625%, #fff9 100%); */
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
            letter-spacing: 2px;
            background-color: #31abe3;
            /* background: linear-gradient(92deg, #fff9 0%, #fff9 48.8525390625%, #fff9 100%); */
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }
    </style>
</head>
<body>
    <div class="w-full h-full bg-[#fff] px-10 py-0" id="leaderBoard">
        <div class="w-full h-full">
            <div class="item_title">
                <div class="leader_left"></div>
                <span>月度缴费金额排行</span>
                <div class="leader_right"></div>
    <div class="w-full h-full bg-[#f2f4f8] " id="leaderBoard">
        <div class=" mx-[5px] my-[5px] space-y-1 bg-[rgb(242,244,248)]">
            <div class="bg-white">
                <div class="item_title ">
                    <div class="leader_left"></div>
                    <span>月度缴费金额排行</span>
                    <div class="leader_right"></div>
                </div>
                <!-- <div class="w-full h-full justify-center" v-for="(item, index) in state.leaderBoardList" :key="index">
                    <div class="w-[300px] h-10  flex justify-between items-center mx-[auto] my-[10px]">
                        <span class="title-inner">{{item.Name}}</span>
                        <span>{{item.Amount}}</span>
                        <span>{{item.CompanyName}}</span>
                        <span>{{item.NewRecord}}</span>
                </div> -->
                <!-- </div> -->
                <el-table :data="state.leaderBoardList">
                    <el-table-column prop="Name" label="营业所" width="180"></el-table-column>
                    <el-table-column prop="Amount" label="测薄号" width="180"></el-table-column>
                    <el-table-column prop="NewRecord" label="时间"></el-table-column>
                    <el-table-column prop="CompanyName" label="网格员"></el-table-column>
                </el-table>
            </div>
            <div class="w-full h-full justify-center" v-for="(item, index) in state.leaderBoardList" :key="index">
                <div class="w-[300px] h-10  flex justify-between items-center mx-[auto] my-0">
                    <span class="title-inner">{{item.Name}}</span>
                    <span>{{item.Amount}}</span>
            </div>
            <div class="w-full   bg-white h-[270px] mt-[10px]" id="leaderChart"></div>
            <div class="w-full   bg-white h-[320px] " id="leaderBarChart"></div>
        </div>
    </div>
    </div>
</body>
<script>
    const { createApp, onMounted, ref, reactive } = Vue;
    createApp({
    const App = createApp({
        setup() {
        let state = reactive({
            leaderBoardList: [
                {
                    Name: '厦门营业所',
                    Amount: '10000'
                },
                {
                    Name: '二供营业所',
                    Amount: '4354363'
                },
                {
                    Name: '同安营业所',
                    Amount: '435233'
                },
                {
                    Name: '集美营业所',
                    Amount: '54545'
                },
                {
                    Name: '翔美营业所',
                    Amount: '577887'
                },
                {
                    Name: '海沧营业所',
                    Amount: '5478786'
                },
            ]
                });
            const initLeaderBoard = () => {
console.log("🚀 ~ leaderBoardList:", state.leaderBoardList)
            let state = reactive({
                leaderBoardList: [
                    {
                        Name: '厦门营业所',
                        Amount: '10000',
                        NewRecord: '2022-01-01',
                        CompanyName: '张三'
                    },
                    {
                        Name: '二供营业所',
                        Amount: '4354363',
                        NewRecord: '2022-01-01',
                        CompanyName: '张三'
                    },
                    {
                        Name: '同安营业所',
                        Amount: '435233',
                        NewRecord: '2022-01-01',
                        CompanyName: '李四'
                    },
                    {
                        Name: '集美营业所',
                        Amount: '54545',
                        NewRecord: '2023-01-01',
                        CompanyName: '王二'
                    },
                    {
                        Name: '翔美营业所',
                        Amount: '577887',
                        NewRecord: '2024-01-01',
                        CompanyName: '张三'
                    },
                    {
                        Name: '海沧营业所',
                        Amount: '5478786',
                        NewRecord: '2022-01-01',
                        CompanyName: '张三'
                    },
                ]
            });
            const initLeaderBoardChart = () => {
                var chartDom = document.getElementById('leaderChart');
                var leaderChartDom = echarts.init(chartDom);
                var option = {
                    title: {
                        text: '近12月缴费金额',
                        textStyle: {
                            fontSize: 13
                        }
                    },
                    xAxis: {
                        type: 'category',
                        data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
                    },
                    yAxis: {
                        type: 'value'
                    },
                    series: [
                        {
                            data: [150, 230, 224, 218, 135, 147, 260, 150, 230, 224, 218, 135, 147],
                            type: 'line'
                        }
                    ]
                };
                option && leaderChartDom.setOption(option);
            }
            const initLeaderBoardBarChart = () => {
                const barXData = state.leaderBoardList.map(item => item.Name)
                var chartDom = document.getElementById('leaderBarChart');
                var leaderBarChartDom = echarts.init(chartDom);
                var option = {
                    xAxis: {
                        type: 'category',
                        data: barXData
                    },
                    yAxis: {
                        name: '评分',
                        type: 'value'
                    },
                    series: [
                        {
                            data: [120, 200, 150, 80, 70, 110],
                            type: 'bar',
                            showBackground: true,
                            backgroundStyle: {
                                color: 'rgba(180, 180, 180, 0.2)'
                            }
                        }
                    ]
                }
                option && leaderBarChartDom.setOption(option);
            }
            onMounted(() => {
                initLeaderBoard();
                initLeaderBoardChart();
                initLeaderBoardBarChart()
            });
            return { state };
        },
    }).mount('#leaderBoard');
    })
    App.use(ElementPlus)
    App.mount('#leaderBoard');
</script>
</html>
src/views/project/ch/demo/Overview.html
@@ -20,7 +20,7 @@
</head>
<body>
    <div class="w-[50%] h-full bg-[#f2f4f8] " id="overview">
    <div class="w-full h-full bg-[#f2f4f8] " id="overview">
        <!-- <div class="w-full h-[40px] flex items-center">年度缴费情况</div>
            <div class="h-full">
                <div class="w-[310px] flex flex-wrap justify-between h-[220px]">