Browse Source

页面更改提交

master
ashan 2 years ago
parent
commit
2fab364edf
  1. BIN
      src/assets/mprtgage/tablist.jpg
  2. 1
      src/icons/svg/alarm.svg
  3. 1
      src/icons/svg/data.svg
  4. 1
      src/icons/svg/diannao.svg
  5. 1
      src/icons/svg/home.svg
  6. 1
      src/icons/svg/huifang.svg
  7. 1
      src/icons/svg/jianguan.svg
  8. 1
      src/icons/svg/lines.svg
  9. 1
      src/icons/svg/video.svg
  10. 1
      src/icons/svg/word.svg
  11. 7
      src/router/index.js
  12. 176
      src/views/echarts/barlineEacharts.vue
  13. 56
      src/views/echarts/mixins/resize.js
  14. 165
      src/views/echarts/pieLineEacharts.vue
  15. 810
      src/views/mortgage/index.vue

BIN
src/assets/mprtgage/tablist.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

1
src/icons/svg/alarm.svg

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1699925446879" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7078" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M767 797H257V521.8c0-66.6 26.5-129.2 74.7-176.3 48.2-47.1 112.2-73 180.3-73 68.1 0 132.1 25.9 180.3 73S767 455.2 767 521.8V797z m-460-48.9h410V521.8c0-110.5-92-200.5-205-200.5s-205 89.9-205 200.5v226.3zM786.1 923.9h-548c-25.4 0-46.1-20.7-46.1-46.1 0-25.4 20.7-46.1 46.1-46.1H786c25.4 0 46.1 20.7 46.1 46.1 0.1 25.4-20.7 46.1-46 46.1zM512 231.5c-13.8 0-25-11.2-25-25v-82.2c0-13.7 11.3-25 25-25 13.8 0 25 11.2 25 25v82.2c0 13.7-11.2 25-25 25zM286.4 287.3c-9 10.4-24.8 11.6-35.3 2.7l-62.4-53.6c-10.4-9-11.6-24.8-2.7-35.3 9-10.4 24.8-11.6 35.3-2.7l62.4 53.6c10.4 9 11.6 24.9 2.7 35.3zM196 478.5c0 13.8-11.2 25-25 25H88.8c-13.7 0-25-11.3-25-25s11.2-25 25-25H171c13.7 0 25 11.2 25 25zM739.5 286.9c9 10.4 24.8 11.6 35.3 2.7l62.4-53.6c10.4-9 11.6-24.8 2.7-35.3-9-10.4-24.8-11.6-35.3-2.7l-62.4 53.6c-10.4 9-11.6 24.9-2.7 35.3zM823.9 479c0 13.8 11.2 25 25 25h82.2c13.8 0 25-11.3 25-25 0-13.8-11.3-25-25-25h-82.2c-13.8 0-25 11.3-25 25z" p-id="7079" fill="#ffa620"></path></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

1
src/icons/svg/data.svg

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1699925489430" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9281" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M702.537143 218.477714c31.085714-10.825143 55.003429-23.113143 69.924571-35.328 10.24-8.338286 13.458286-13.824 13.458286-16.018285s-3.218286-7.68-13.458286-16.091429c-14.921143-12.141714-38.765714-24.429714-69.924571-35.254857C634.368 92.16 540.013714 78.336 438.857143 78.336s-195.510857 13.897143-263.68 37.449143c-31.085714 10.825143-55.003429 23.113143-69.924572 35.328-10.24 8.338286-13.458286 13.750857-13.458285 16.018286 0 2.194286 3.218286 7.68 13.458285 16.091428 14.921143 12.141714 38.765714 24.429714 69.924572 35.254857 68.169143 23.625143 162.523429 37.449143 263.68 37.449143s195.510857-13.897143 263.68-37.449143zM69.485714 464.749714v128.804572c37.961143 40.009143 140.068571 88.722286 264.777143 103.277714 182.857143 21.284571 355.986286-18.651429 473.526857-98.304l0.438857-131.657143C683.008 540.525714 506.733714 571.465143 328.484571 550.619429c-110.372571-12.8-204.361143-46.08-259.072-85.869715z m0-80.457143c38.034286 39.936 140.068571 88.649143 264.777143 103.131429 183.222857 21.357714 356.717714-18.724571 474.258286-98.742857l0.512-145.993143C734.208 286.573714 596.48 315.977143 438.857143 315.977143c-156.964571 0-294.253714-29.257143-369.152-72.777143A132116.333714 132116.333714 0 0 0 69.485714 384.219429z m0.146286 289.865143l0.292571 108.105143-1.097142-7.460571c22.381714 74.020571 165.302857 133.485714 378.148571 133.485714 115.931429 0 206.774857-17.554286 276.626286-52.077714 19.602286-9.728 34.523429-17.92 49.152-28.598857 9.728-7.094857 16.091429-11.410286 26.550857-20.626286 10.825143-9.581714 27.501714-7.241143 37.156571 3.657143 9.581714 10.752 10.825143 28.306286 0 37.961143-11.702857 10.24-17.188571 14.848-28.598857 23.186285-17.042286 12.434286-36.425143 25.380571-58.806857 36.498286-77.092571 38.107429-155.648 60.854857-302.08 60.854857-243.931429 0-405.211429-77.165714-436.077714-179.2l-1.097143-3.657143v-3.803428L9.362286 628.077714a116682.532571 116682.532571 0 0 1 0.365714-455.68 52.662857 52.662857 0 0 1-0.292571-5.266285C9.508571 84.918857 201.728 18.285714 438.857143 18.285714c237.129143 0 429.348571 66.633143 429.348571 148.845715a53.028571 53.028571 0 0 1-0.804571 9.581714 23.405714 23.405714 0 0 1 1.024 7.094857l-1.682286 520.411429c-0.073143 14.482286-13.385143 26.185143-29.769143 26.112-16.384 0-29.622857-11.776-29.549714-26.331429v-27.355429c-125.074286 73.216-301.056 104.082286-478.939429 83.382858-110.226286-12.873143-204.214857-46.08-258.925714-85.869715z m668.525714-290.962285a25.746286 25.746286 0 0 1-25.965714-25.453715c0-14.043429 11.702857-25.380571 26.038857-25.380571 14.336 0 26.038857 11.337143 26.038857 25.380571 0 14.116571-11.702857 25.453714-26.038857 25.453715z m0 209.408a25.746286 25.746286 0 0 1-25.965714-25.453715c0-14.043429 11.702857-25.453714 26.038857-25.453714 14.336 0 26.038857 11.410286 26.038857 25.453714 0 14.043429-11.702857 25.453714-26.038857 25.453715z m0 212.114285a25.746286 25.746286 0 0 1-25.965714-25.526857c0-14.043429 11.702857-25.453714 26.038857-25.453714 14.336 0 26.038857 11.410286 26.038857 25.453714 0 14.043429-11.702857 25.453714-26.038857 25.453714z" fill="#ffa620" p-id="9282"></path></svg>

After

Width:  |  Height:  |  Size: 3.4 KiB

1
src/icons/svg/diannao.svg

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1699926940948" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="15082" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M900.144 96.24H123.84a66.896 66.896 0 0 0-66.816 66.832v541.152a66.896 66.896 0 0 0 66.816 66.832h467.744a24 24 0 0 0 0-48H123.84a18.848 18.848 0 0 1-18.816-18.832V163.04A18.864 18.864 0 0 1 123.84 144.208h776.304a18.848 18.848 0 0 1 18.816 18.832v541.152a18.832 18.832 0 0 1-18.816 18.832H753.76a24 24 0 0 0 0 48h146.384a66.896 66.896 0 0 0 66.816-66.832V163.04a66.896 66.896 0 0 0-66.816-66.8z" fill="#ffffff" p-id="15083"></path><path d="M795.808 879.76H213.168a24 24 0 0 0 0 48h582.64a24 24 0 0 0 0-48z" fill="#ffffff" p-id="15084"></path><path d="M204.192 393.84v192.608a24 24 0 0 0 48 0V393.84a24 24 0 0 0-48 0z" fill="#ffffff" p-id="15085"></path><path d="M478.096 452.64v133.856a24 24 0 0 0 48 0V452.64a24 24 0 0 0-48 0z" fill="#ffffff" p-id="15086"></path><path d="M819.808 586.448V452.64a24 24 0 0 0-48 0v133.856a24 24 0 0 0 48 0z" fill="#ffffff" p-id="15087"></path><path d="M342.336 273.04v313.408a24 24 0 0 0 48 0V273.04a24 24 0 0 0-48 0z" fill="#ffffff" p-id="15088"></path><path d="M648.64 249.04a24 24 0 0 0-24 24v313.408a24 24 0 0 0 48 0V273.04a24 24 0 0 0-24-24z" fill="#ffffff" p-id="15089"></path><path d="M655.152 733.808a32.24 32.24 0 0 0-2.24 4c-0.48 1.44-0.96 3.04-1.28 4.48a24.416 24.416 0 0 0-0.48 4.8 25.008 25.008 0 0 0 1.76 9.12 26.048 26.048 0 0 0 5.28 7.84 22.288 22.288 0 0 0 7.68 5.12 23.504 23.504 0 0 0 9.28 1.92 22.192 22.192 0 0 0 9.12-1.92 22.912 22.912 0 0 0 7.84-5.12 26.048 26.048 0 0 0 5.28-7.84 25.008 25.008 0 0 0 1.76-9.12 24 24 0 0 0-7.04-16.96 24.752 24.752 0 0 0-33.92 0 23.264 23.264 0 0 0-3.04 3.68z" fill="#ffffff" p-id="15090"></path></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

1
src/icons/svg/home.svg

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1699925427919" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5975" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M946.5 505L560.1 118.8l-25.9-25.9c-12.3-12.2-32.1-12.2-44.4 0L77.5 505c-12.3 12.3-18.9 28.6-18.8 46 0.4 35.2 29.7 63.3 64.9 63.3h42.5V940h691.8V614.3h43.4c17.1 0 33.2-6.7 45.3-18.8 12.1-12.1 18.7-28.2 18.7-45.3 0-17-6.7-33.1-18.8-45.2zM568 868H456V664h112v204z m217.9-325.7V868H632V640c0-22.1-17.9-40-40-40H432c-22.1 0-40 17.9-40 40v228H238.1V542.3h-96l370-369.7 23.1 23.1L882 542.3h-96.1z" p-id="5976" fill="#ffa620"></path></svg>

After

Width:  |  Height:  |  Size: 764 B

1
src/icons/svg/huifang.svg

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1699926712995" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10627" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M358.4 768H426.666667v85.333333H213.333333v-213.333333h85.333334v68.266667l128-128 59.733333 59.733333-128 128z m345.6 0l-128-128 59.733333-59.733333 132.266667 132.266666V640h85.333333v213.333333h-213.333333v-85.333333h64zM358.4 298.666667l128 128-59.733333 59.733333-128-128V426.666667H213.333333V213.333333h213.333334v85.333334H358.4z m345.6 0H640V213.333333h213.333333v213.333334h-85.333333V354.133333l-132.266667 132.266667-59.733333-59.733333 128-128z" fill="#ffa620" p-id="10628"></path></svg>

After

Width:  |  Height:  |  Size: 834 B

1
src/icons/svg/jianguan.svg

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1699925469138" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9030" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M979.2 158.848a32 32 0 0 0-38.4-23.936l-166.848 38.656a32 32 0 0 0-15.808 53.408L794.56 264.64l-194.56 173.568-101.024-95.68a32 32 0 0 0-45.152 1.152l-216.736 227.264A64 64 0 1 0 288 633.6c0-6.944-1.376-13.472-3.424-19.712l193.536-202.944 99.232 93.952a32 32 0 0 0 43.296 0.64L839.04 310.72l41.504 42.976a32 32 0 0 0 53.92-13.92l44.448-165.408a31.84 31.84 0 0 0 0.288-15.52z" p-id="9031" fill="#ffa620"></path><path d="M928 450.464a32 32 0 0 0-32 32V736a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h530.656a32 32 0 0 0 0-64H160a96 96 0 0 0-96 96v576a96 96 0 0 0 96 96h704a96 96 0 0 0 96-96v-253.536a32 32 0 0 0-32-32zM912 896h-800a32 32 0 0 0 0 64h800a32 32 0 0 0 0-64z" p-id="9032" fill="#ffa620"></path></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

1
src/icons/svg/lines.svg

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1699925501632" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9531" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M146.285714 609.52381h121.904762v243.809523H146.285714z m195.047619-195.04762h121.904762v438.857143h-121.904762z m195.047619 48.761905h121.904762v390.095238h-121.904762z m195.047619-292.571428h121.904762v682.666666h-121.904762z" p-id="9532" fill="#ffa620"></path></svg>

After

Width:  |  Height:  |  Size: 602 B

1
src/icons/svg/video.svg

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1699926777070" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="11748" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M450.133 213.333L305.067 42.667H140.8l145.067 170.666z m426.667 0L731.733 42.667H567.467l145.066 170.666z m-213.333 0L518.4 42.667H354.133L499.2 213.333z m275.2-170.666H780.8l145.067 170.666h76.8V106.667c0-36.267-27.734-64-64-64z m-846.934 0h-6.4c-36.266 0-64 27.733-64 64v106.666H236.8L91.733 42.667z m-70.4 874.666c0 36.267 27.734 64 64 64h853.334c36.266 0 64-27.733 64-64V256H21.333v661.333zM362.667 448c0-36.267 29.866-53.333 64-53.333 10.666 0 23.466 2.133 34.133 8.533L704 544c42.667 23.467 42.667 83.2 0 106.667l-243.2 140.8c-10.667 6.4-21.333 8.533-34.133 8.533-34.134 0-64-17.067-64-53.333V448z" fill="#ffffff" p-id="11749"></path></svg>

After

Width:  |  Height:  |  Size: 980 B

1
src/icons/svg/word.svg

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1699925383695" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4900" width="128" height="128" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M796.8 64c16 0 32 16 32 32v832c0 16-16 32-32 32H355.2l-188.8-192V96c0-16 16-32 32-32h598.4m0-64H201.6c-51.2 0-96 44.8-96 96v697.6l224 230.4h467.2c51.2 0 96-44.8 96-96V96c0-51.2-44.8-96-96-96z" fill="#ffa620" p-id="4901"></path><path d="M416 291.2H230.4c-3.2 0-3.2-3.2-3.2-3.2V198.4c0-3.2 0-3.2 3.2-3.2H416c3.2 0 3.2 0 3.2 3.2V288l-3.2 3.2zM768 435.2H230.4c-3.2 0-3.2 0-3.2-3.2v-57.6c0-3.2 0-3.2 3.2-3.2H768c3.2 0 3.2 0 3.2 3.2v57.6l-3.2 3.2zM768 595.2H230.4c-3.2 0-3.2 0-3.2-3.2v-57.6c0-3.2 0-3.2 3.2-3.2H768c3.2 0 3.2 0 3.2 3.2v57.6l-3.2 3.2z" fill="#ffa620" p-id="4902"></path><path d="M352 1004.8v-198.4H160v-64h224c19.2 0 32 12.8 32 32v230.4h-64z" fill="#ffa620" p-id="4903"></path></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

7
src/router/index.js

@ -7,7 +7,8 @@ Vue.use(Router)
import Layout from '@/layout'
/* 所有角色可以访问/没有权限要求的基页 */
export const constantRoutes = [{
export const constantRoutes = [
{
path: '/redirect',
component: Layout,
hidden: true,
@ -53,6 +54,10 @@ export const constantRoutes = [{
component: () =>
import('@/views/404'),
hidden: true
},{
path:"/mortgage",
name:'mortgage',
component:()=>import('@/views/mortgage/index.vue')
}
// 404 page must be placed at the end !!!
// { path: '*', redirect: '/404', hidden: true }

176
src/views/echarts/barlineEacharts.vue

@ -0,0 +1,176 @@
<template>
<div :class="className" :style="{ height: height, width: width }" />
</template>
<script>
import * as echarts from "echarts";
// require('echarts/theme/macarons') // echarts theme
import resize from "./mixins/resize";
export default {
mixins: [resize],
props: {
className: {
type: String,
default: "chart",
},
width: {
type: String,
default: "100%",
},
height: {
type: String,
default: "100%",
},
chartData: {
type: Object,
required: true,
},
},
data() {
return {
chart: null,
};
},
watch: {
chartData: {
deep: true,
handler(val) {
this.setOptions(val);
},
},
height: {
deep: true,
handler(val) {
console.log(val);
},
},
},
mounted() {
this.$nextTick(() => {
this.initChart();
});
},
beforeDestroy() {
if (!this.chart) {
return;
}
this.chart.dispose();
this.chart = null;
},
methods: {
initChart() {
this.chart = echarts.init(this.$el, "macarons");
this.setOptions(this.chartData);
},
setOptions({
title,
xAxis,
series,
legend,
unit,
rotate,
time,
serviceData,
serviceData2,
} = {}) {
this.chart.setOption({
color: ['#ff9900', '#10aeff'],
legend: {
top: 10,
left: "center",
itemWidth: 10,
itemHeight: 10,
// padding: [5, 10],
textStyle: {
fontSize: 14,
color: "#000",
padding: [3, 0, 0, 0],
},
data: ['常温仓', '供应链仓'],
},
grid: {
left: "0%",
right: "0%",
bottom: "5%",
containLabel: true,
},
xAxis: {
type: "category",
axisLabel: {
color: "#96A4F4",
},
nameTextStyle: {
// yname
color: "#f00",
fontSize: 10,
},
axisLine: {
lineStyle: {
color: "#96A4F4",
},
},
axisTick: {
show: false,
},
data: ['12/1', '12/2', '12/3', '12/4', '12/5', '12/6', '12/7', '12/8', '12/9','12/10','12/11','12/12','12/13'],
},
yAxis: {
type: "value",
axisLabel: {
color: "#96A4F4",
},
axisLine: {
lineStyle: {
color: "#96A4F4",
},
width: 5,
},
axisTick: {
show: false,
},
splitLine: {
lineStyle: {
color: "rgba(000, 000, 000, 0.3)",
},
width:5
},
},
series: [
{
name: "常温仓",
type: "bar",
stack: "总量",
barWidth: "45%",
label: {
show: false,
position: "insideRight",
},
data: [1320, 1302, 901, 634, 1390, 1330, 1320, 1000, 500],
},
{
name: "供应链仓",
type: "bar",
stack: "总量",
barWidth: "45%",
label: {
show: false,
position: "insideRight",
},
data: [1320, 1302, 901, 634, 1390, 1330, 1320, 1000, 500],
},
],
});
this.chart.on("click", function (param) {
this.callParents(param);
});
},
//
callParents(name) {
this.$emit("pieChartFunction", name);
},
},
};
</script>

56
src/views/echarts/mixins/resize.js

@ -0,0 +1,56 @@
import { debounce } from '@/utils'
export default {
data() {
return {
$_sidebarElm: null
}
},
mounted() {
this.$_initResizeEvent()
this.$_initSidebarResizeEvent()
},
beforeDestroy() {
this.$_destroyResizeEvent()
this.$_destroySidebarResizeEvent()
},
// to fixed bug when cached by keep-alive
// https://github.com/PanJiaChen/vue-element-admin/issues/2116
activated() {
this.$_initResizeEvent()
this.$_initSidebarResizeEvent()
},
deactivated() {
this.$_destroyResizeEvent()
this.$_destroySidebarResizeEvent()
},
methods: {
// use $_ for mixins properties
// https://vuejs.org/v2/style-guide/index.html#Private-property-names-essential
$_resizeHandler() {
return debounce(() => {
if (this.chart) {
this.chart.resize()
}
}, 100)()
},
$_initResizeEvent() {
window.addEventListener('resize', this.$_resizeHandler)
},
$_destroyResizeEvent() {
window.removeEventListener('resize', this.$_resizeHandler)
},
$_sidebarResizeHandler(e) {
if (e.propertyName === 'width') {
this.$_resizeHandler()
}
},
$_initSidebarResizeEvent() {
this.$_sidebarElm = document.getElementsByClassName('sidebar-container')[0]
this.$_sidebarElm && this.$_sidebarElm.addEventListener('transitionend', this.$_sidebarResizeHandler)
},
$_destroySidebarResizeEvent() {
this.$_sidebarElm && this.$_sidebarElm.removeEventListener('transitionend', this.$_sidebarResizeHandler)
}
}
}

165
src/views/echarts/pieLineEacharts.vue

@ -0,0 +1,165 @@
<template>
<div :class="className" :style="{ height: height, width: width }" />
</template>
<script>
import * as echarts from "echarts";
// require('echarts/theme/macarons') // echarts theme
import resize from "./mixins/resize";
export default {
mixins: [resize],
props: {
className: {
type: String,
default: "chart",
},
width: {
type: String,
default: "100%",
},
height: {
type: String,
default: "100%",
},
chartData: {
type: Object,
required: true,
},
},
data() {
return {
chart: null,
};
},
watch: {
chartData: {
deep: true,
handler(val) {
this.setOptions(val);
},
},
height: {
deep: true,
handler(val) {
console.log(val);
},
},
},
mounted() {
this.$nextTick(() => {
this.initChart();
});
},
beforeDestroy() {
if (!this.chart) {
return;
}
this.chart.dispose();
this.chart = null;
},
methods: {
initChart() {
this.chart = echarts.init(this.$el, "macarons");
this.setOptions(this.chartData);
},
setOptions({
title,
xAxis,
series,
legend,
unit,
rotate,
time,
serviceData,
serviceData2,
} = {}) {
this.chart.setOption({
title: [
{
text: '75.62%',
subtext: '质押率50%',
textStyle:{
fontSize:20,
color:"#ff7e4b"
},
subtextStyle: {
fontSize: 18,
color: '#bbbaba'
},
textAlign:"center",
x: '34.5%',
y: '43%',
}],
tooltip: {
trigger: 'item',
formatter:function (parms){
var str=
parms.marker+""+parms.data.name+"</br>"+
"价值:"+ parms.data.value+"</br>"+
"占比:"+ parms.percent+"%";
return str ;
}
},
legend: {
type:"plain",
icon:'rect',
orient: 'vertical',
left:'70%',
align:'left',
top:'middle',
layout:'horizontal',
itemGap:30,
padding:[20,29,40,0],
textStyle: {
color:'#333',
fontSize:14,
padding:[0,10]
},
height:'auto',
itemWidth:20,
itemHeight:20
},
series: [
{
name:'标题',
type:'pie',
center: ['35%', '50%'],
radius: ['40%', '65%'],
clockwise: false, //
avoidLabelOverlap: false,
label: {
normal: {
show: false,
}
},
labelLine: {
normal: {
length:5,
length2:3,
smooth:true,
}
},
data: [
{value:335, legendname:'种类01',name:"账户余额",itemStyle:{color:"#5087ec"}},
{value:310, legendname:'种类02',name:"应收账款",itemStyle:{color:"#68bbc4"}},
{value:234, legendname:'种类03',name:"物质库存价值",itemStyle:{color:"#58a55c"}},
{value:154, legendname:'种类04',name:"在途货物价值",itemStyle:{color:"#f2bd42"}},
{value:335, legendname:'种类05',name:"预付款",itemStyle:{color:"#ee752f"}},
]
}
]
});
this.chart.on("click", function (param) {
this.callParents(param);
});
},
//
callParents(name) {
this.$emit("pieChartFunction", name);
},
},
};
</script>

810
src/views/mortgage/index.vue

@ -0,0 +1,810 @@
<template>
<div class="mortgage">
<div class="mortgage_tit">山海能源光伏动产质押项目</div>
<div class="mortgage_top">
<div class="mortgage_top_item">
<div class="mortgage_top_item_tit">
<div class="mortgage_top_item_tit_left">
<span>
<svg-icon
slot="prefix"
icon-class="word"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
数据总览
</div>
<div class="mortgage_top_item_tit_right">
<el-select v-model="times" placeholder="请选择日期">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</div>
</div>
<div class="mortgage_top_item_coner">
<div class="mortgage_top_item_coner_eat">
<pieLineEachartsVue
:width="`100%`"
:height="`100%`"
></pieLineEachartsVue>
</div>
<div class="mortgage_top_item_coner_con">
<span> 授信2398712 </span>
<span> 用信2398712 </span>
</div>
</div>
</div>
<div class="mortgage_top_item">
<div class="mortgage_top_item_tit" style="margin-bottom: 10px">
<div class="mortgage_top_item_tit_left">
<span>
<svg-icon
slot="prefix"
icon-class="home"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
仓库安防
</div>
<div class="mortgage_top_item_tit_right">
<el-select v-model="wareValue" placeholder="请选择日期">
<el-option
v-for="item in warehouse"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</div>
</div>
<div class="mortgage_top_item_cons">
<div class="mortgage_top_item_cons_left">
<div class="mortgage_top_item_top">
<img src="@/assets/mprtgage/tablist.jpg" alt="" />
</div>
<div class="mortgage_top_item_bom">
<div class="mortgage_top_item_bom_left">
<div class="mortgage_top_item_bom_left_item">
<span>
<svg-icon
slot="prefix"
icon-class="video"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
视频监控
</div>
</div>
<div class="mortgage_top_item_bom_right">
<div class="mortgage_top_item_bom_right_item">
正常<span>
<svg-icon
slot="prefix"
icon-class="diannao"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
<p>4</p>
</div>
<div class="mortgage_top_item_bom_right_item">
正常<span>
<svg-icon
slot="prefix"
icon-class="diannao"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
<p>4</p>
</div>
</div>
</div>
</div>
<div class="mortgage_top_item_cons_right">
<div class="mortgage_top_item_cons_right_top">
<div class="mortgage_top_item_cons_right_top_video"></div>
<div class="mortgage_top_item_cons_right_top_foor">
<div class="invie">东北角摄像头1</div>
<div class="huishie">
回放
<span>
<svg-icon
icon-class="huifang"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
</div>
</div>
</div>
<div class="mortgage_top_item_cons_right_bom">
<div class="titele">
<div class="titele_left">
<span>
<svg-icon
icon-class="alarm"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
警告信息
</div>
<div class="titele_right"></div>
</div>
<div class="containers">
<div class="container_item">
2023-11-19&nbsp;&nbsp;19:33:21&nbsp;&nbsp;摄像头1号离线
</div>
<div class="container_item">
2023-11-19&nbsp;&nbsp;19:33:21&nbsp;&nbsp;摄像头1号离线
</div>
<div class="container_item">
2023-11-19&nbsp;&nbsp;19:33:21&nbsp;&nbsp;摄像头1号离线
</div>
<div class="container_item">
2023-11-19&nbsp;&nbsp;19:33:21&nbsp;&nbsp;摄像头1号离线
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="mortgage_bom">
<div class="mortgage_bom_item">
<div class="mortgage_bom_item_tit">
<div class="mortgage_bom_item_tit_left">
<span>
<svg-icon
icon-class="jianguan"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
监管数据
</div>
<div class="mortgage_bom_item_tit_right"></div>
</div>
<div class="mortgage_bom_item_cont">
<div class="mortgage_bom_item_cont_item">
<div class="mortgage_bom_item_cont_item_left">账户余额</div>
<div class="mortgage_bom_item_cont_item_right">12123432.22</div>
</div>
<div class="mortgage_bom_item_cont_item">
<div class="mortgage_bom_item_cont_item_left">账户余额</div>
<div class="mortgage_bom_item_cont_item_right">12123432.22</div>
</div>
<div class="mortgage_bom_item_cont_item">
<div class="mortgage_bom_item_cont_item_left">账户余额</div>
<div class="mortgage_bom_item_cont_item_right">12123432.22</div>
</div>
<div class="mortgage_bom_item_cont_item">
<div class="mortgage_bom_item_cont_item_left">账户余额</div>
<div class="mortgage_bom_item_cont_item_right">12123432.22</div>
</div>
<div class="mortgage_bom_item_cont_item">
<div class="mortgage_bom_item_cont_item_left">账户余额</div>
<div class="mortgage_bom_item_cont_item_right">12123432.22</div>
</div>
</div>
</div>
<div class="mortgage_bom_item">
<div class="mortgage_bom_item_tit">
<div class="mortgage_bom_item_tit_left">
<span>
<svg-icon
icon-class="data"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
库存分析图
</div>
<div class="mortgage_bom_item_tit_right">
<el-select v-model="dayValue" placeholder="请选择日期">
<el-option
v-for="item in day"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</div>
</div>
<div class="mortgage_bom_item_cont">
<barlineEachartsVue
:width="`100%`"
:height="`100%`"
></barlineEachartsVue>
</div>
</div>
<div class="mortgage_bom_item">
<div class="mortgage_bom_item_tit">
<div class="mortgage_bom_item_tit_left">
<span>
<svg-icon
icon-class="lines"
class="el-input__icon"
style="height: 16px; width: 16px"
/>
</span>
仓库库存表
</div>
<div class="mortgage_bom_item_tit_right"></div>
</div>
<div class="mortgage_bom_item_cont">
<div class="mortgage_bom_item_cont_item">
<div class="mortgage_bom_item_cont_item_left">常温仓</div>
<div class="mortgage_bom_item_cont_item_right">12123432.22</div>
</div>
<div class="mortgage_bom_item_cont_item">
<div class="mortgage_bom_item_cont_item_left">门店</div>
<div class="mortgage_bom_item_cont_item_right">12123432.22</div>
</div>
<div class="ditus"></div>
</div>
</div>
</div>
</div>
</template>
<script>
import barlineEachartsVue from "../echarts/barlineEacharts.vue";
import pieLineEachartsVue from "../echarts/pieLineEacharts.vue";
export default {
components: { barlineEachartsVue, pieLineEachartsVue },
data() {
return {
options: [
{
value: "选项1",
label: "2023-11-14",
},
{
value: "选项2",
label: "2023-11-14",
},
{
value: "选项3",
label: "2023-11-14",
},
{
value: "选项4",
label: "2023-11-14",
},
{
value: "选项5",
label: "2023-11-14",
},
],
times: "",
warehouse: [
{
value: "选项1",
label: "常温仓",
},
{
value: "选项2",
label: "供应链仓",
},
],
wareValue: "",
day: [
{
value: "选项1",
label: "15日",
},
{
value: "选项2",
label: "7日",
},
],
dayValue: "",
};
},
};
</script>
<style lang="scss" scoped>
.mortgage {
width: 100%;
height: 100%;
box-sizing: border-box;
padding: 20px;
display: flex;
flex-direction: column;
position: relative;
.mortgage_tit {
line-height: 50px;
font-size: 24px;
font-weight: bold;
color: #000;
}
.mortgage_top {
width: 100%;
height: calc((100% - 25px) / 2);
position: relative;
display: flex;
justify-content: space-between;
margin-bottom: 20px;
.mortgage_top_item {
height: 100%;
position: relative;
&:nth-of-type(1) {
width: 26%;
::v-deep .el-select {
width: 150px;
.el-input {
.el-input__inner {
background: transparent;
border: transparent;
}
}
}
.mortgage_top_item_tit_right {
flex: 1;
position: relative;
justify-content: right;
&::before {
content: "";
position: absolute;
width: 100%;
height: 100%;
bottom: 5px;
border-bottom: solid 4px #dadada;
}
}
}
&:nth-of-type(2) {
width: 73%;
box-sizing: border-box;
padding-right: 50px;
.mortgage_top_item_tit {
.mortgage_top_item_tit_left {
width: auto;
margin-right: 10px;
}
}
::v-deep .el-select {
width: 150px;
.el-input {
.el-input__inner {
background: transparent;
border: transparent;
}
}
}
}
.mortgage_top_item_tit_right {
flex: 1;
position: relative;
justify-content: right;
&::before {
content: "";
position: absolute;
width: 100%;
height: 100%;
bottom: 5px;
border-bottom: solid 4px #dadada;
}
}
.mortgage_top_item_tit {
height: 40px;
display: flex;
position: relative;
justify-content: space-between;
.mortgage_top_item_tit_left {
width: auto;
height: 100%;
display: flex;
align-items: center;
margin-right: 10px;
font-size: 20px;
span {
margin-right: 10px;
}
::v-deep .svg-icon {
cursor: pointer;
width: 24px !important;
height: 24px !important;
}
}
.mortgage_top_item_tit_right {
width: 50%;
height: 100%;
display: flex;
justify-content: right;
align-items: center;
span {
margin-right: 20px;
}
}
}
.mortgage_top_item_coner {
width: 100%;
height: calc(100% - 40px);
position: relative;
.mortgage_top_item_coner_eat {
width: 100%;
height: 90%;
}
.mortgage_top_item_coner_con {
width: 100%;
height: 10%;
display: flex;
align-items: center;
box-sizing: border-box;
padding-left: 30px;
justify-content: space-between;
span {
color: #49a6e2;
font-weight: bold;
font-size: 18px;
}
}
}
.mortgage_top_item_top {
width: 100%;
height: 85%;
position: relative;
img {
width: 100%;
height: 100%;
}
}
.mortgage_top_item_cons {
width: 100%;
height: calc(100% - 50px);
position: relative;
display: flex;
justify-content: space-between;
.mortgage_top_item_cons_left {
width: 58%;
height: 100%;
position: relative;
}
.mortgage_top_item_cons_right {
width: 40%;
height: 100%;
position: relative;
.mortgage_top_item_cons_right_top {
height: 50%;
width: 100%;
margin-bottom: 10px;
position: relative;
.mortgage_top_item_cons_right_top_video {
width: 100%;
height: 85%;
background: #f00;
position: relative;
}
.mortgage_top_item_cons_right_top_foor {
width: 100%;
height: 15%;
display: flex;
position: relative;
.invie {
width: auto;
height: 100%;
color: #999;
display: flex;
align-items: center;
}
.huishie {
flex: 1;
height: 100%;
display: flex;
color: #999;
align-items: center;
justify-content: right;
span {
margin-left: 10px;
}
}
}
}
.mortgage_top_item_cons_right_bom {
height: calc(50% - 10px);
width: 100%;
position: relative;
.titele {
width: 100%;
height: 40px;
display: flex;
align-items: center;
.titele_left {
width: auto;
height: 100%;
line-height: 40px;
margin-right: 5px;
}
.titele_right {
flex: 1;
position: relative;
height: 100%;
&::after {
content: "";
position: absolute;
bottom: 13px;
left: 0px;
width: 100%;
height: 100%;
border-bottom: solid 4px #dadada;
}
}
}
.containers {
width: 100%;
height: calc(100% - 40px);
position: relative;
display: flex;
background: transparent;
justify-content: center;
flex-wrap: wrap;
.container_item {
width: 100%;
height: 30px;
line-height: 30px;
color: #999;
font-size: 18px;
box-sizing: border-box;
padding-left: 20px;
}
}
}
}
}
.mortgage_top_item_bom {
height: 15%;
width: 100%;
display: flex;
position: relative;
.mortgage_top_item_bom_left {
display: flex;
width: auto;
height: 100%;
align-items: flex-end;
.mortgage_top_item_bom_left_item {
width: 130px;
display: flex;
height: 45px;
cursor: pointer;
background: #018ad2;
color: #fff;
justify-content: center;
align-items: center;
border-right: solid 1px #dadada;
::v-deep .svg-icon {
cursor: pointer;
width: 16px !important;
height: 16px !important;
}
&:nth-of-type(1) {
span {
width: 30px;
height: 30px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
background: #11c155;
margin-right: 5px;
}
}
&:nth-of-type(2) {
span {
width: 30px;
height: 30px;
border-radius: 50%;
background: #f57f19;
margin-right: 5px;
}
}
&:nth-of-type(3) {
span {
width: 30px;
height: 30px;
border-radius: 50%;
background: #5b9cf7;
margin-right: 5px;
}
}
}
}
.mortgage_top_item_bom_right {
flex: 1;
height: 100%;
display: flex;
align-items: flex-end;
justify-content: right;
.mortgage_top_item_bom_right_item {
width: 130px;
height: 45px;
display: flex;
align-items: center;
justify-content: center;
background: #e9f7fa;
border: solid #71b9f1 1px;
::v-deep .svg-icon {
cursor: pointer;
width: 24px !important;
height: 24px !important;
}
&:nth-of-type(1) {
color: #6082fc;
span {
background: #1d62e2;
width: 30px;
height: 30px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin: 0px 3px;
}
p {
color: #6082fc;
font-weight: bold;
}
}
&:nth-of-type(2) {
color: #6e7173;
span {
background: #4b4b4b;
width: 30px;
height: 30px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
margin: 0px 3px;
}
p {
color: #4d4d4e;
font-weight: bold;
}
}
}
}
}
}
}
.mortgage_bom {
width: 100%;
height: calc((100% - 45px) / 2);
display: flex;
align-items: center;
position: relative;
.mortgage_bom_item {
height: 100%;
&:nth-of-type(1) {
width: 26%;
.mortgage_bom_item_cont {
box-sizing: border-box;
padding-left: 25px;
.mortgage_bom_item_cont_item {
&:last-child {
border-bottom: none;
}
}
}
}
&:nth-of-type(2) {
width: 43%;
box-sizing: border-box;
padding: 0px 30px 0px 20px;
}
&:nth-of-type(3) {
width: 28%;
.mortgage_bom_item_cont {
box-sizing: border-box;
padding-left: 25px;
.mortgage_bom_item_cont_item {
&:last-child {
border-bottom: none;
}
}
}
}
.mortgage_bom_item_tit {
height: 40px;
width: 100%;
position: relative;
margin-bottom: 10px;
display: flex;
.mortgage_bom_item_tit_left {
width: auto;
display: flex;
align-items: center;
margin-right: 5px;
height: 100%;
font-size: 20px;
span {
margin-right: 10px;
}
}
.mortgage_bom_item_tit_right {
flex: 1;
position: relative;
display: flex;
justify-content: right;
height: 100%;
::v-deep .el-select {
width: 150px;
.el-input {
.el-input__inner {
background: transparent;
border: transparent;
}
}
}
}
.mortgage_bom_item_tit_right::before {
content: "";
position: absolute;
width: 100%;
height: 100%;
border-bottom: solid 4px #dadada;
bottom: 5px;
left: 0px;
}
}
.mortgage_bom_item_cont {
width: 100%;
height: calc(100% - 50px);
position: relative;
.mortgage_bom_item_cont_item {
width: 100%;
height: 40px;
position: relative;
display: flex;
border-bottom: solid 1px #dadada;
.mortgage_bom_item_cont_item_left {
width: 50%;
height: 100%;
display: flex;
align-items: center;
color: #333;
}
.mortgage_bom_item_cont_item_right {
width: 50%;
height: 100%;
display: flex;
align-items: center;
justify-content: right;
color: #333;
}
}
}
.ditus {
height: 150px;
width: 100%;
background: #f00;
}
}
}
::v-deep .svg-icon {
cursor: pointer;
width: 30px !important;
height: 30px !important;
}
}
</style>
Loading…
Cancel
Save