6a8890c2 by zrj

daping quan

1 parent 5a091cb6
1 <template> 1 <template>
2 <div class="main"> 2 <div class="main">
3 <!-- <div style="position: absolute;top: 23px;right: 20px">-->
4 <!-- <el-date-picker-->
5 <!-- v-model="nowDate"-->
6 <!-- type="date"-->
7 <!-- placeholder="Pick a day"-->
8 <!-- :size="size"-->
9 <!-- ></el-date-picker>-->
10 <!-- </div>-->
3 <el-row class="w100"> 11 <el-row class="w100">
4 <el-col v-if="obj.IFBASE" :span="8"> 12 <el-col v-if="obj.IFBASE" :span="8">
5 <left-page :obj="obj" :type="type" :url="result"/> 13 <left-page :obj="obj" :type="type=='否'" :url="result"/>
6 </el-col> 14 </el-col>
7 <el-col v-if="obj.IFBASE" :span="8"> 15 <el-col v-if="obj.IFBASE" :span="8">
8 <center-page :obj="obj" :isLeader="isLeader" :type="type=='否'" :url="result"/> 16 <center-page :obj="obj" :isLeader="isLeader" :type="type=='否'" :url="result"/>
9 </el-col> 17 </el-col>
10 <el-col v-if="obj.IFBASE" :span="8"> 18 <el-col v-if="obj.IFBASE" :span="8">
11 <right-page :obj="obj" :type="type" :url="result"/> 19 <right-page :obj="obj" :type="type=='否'" :url="result"/>
12 </el-col> 20 </el-col>
13 </el-row> 21 </el-row>
14 </div> 22 </div>
...@@ -28,9 +36,10 @@ const url = ref() ...@@ -28,9 +36,10 @@ const url = ref()
28 const obj = ref({}) 36 const obj = ref({})
29 const result = ref() 37 const result = ref()
30 const router = useRouter() 38 const router = useRouter()
39 const nowDate = new Date()
31 let isLeader = ref(false) 40 let isLeader = ref(false)
32 url.value = 'http://192.168.1.152:8899/login/sid=3e6ac454-6d9a-4f37-a593-d06c65703792#/' 41 // url.value = 'http://192.168.1.152:8899/login/sid=a5d48b77-0da4-4008-aa1c-f7f0ed575413#/'
33 // url.value = window.location.href 42 url.value = window.location.href
34 result.value = url.value?.split('=')[1]?.split('#')[0]; 43 result.value = url.value?.split('=')[1]?.split('#')[0];
35 44
36 function validateEmail(email) { 45 function validateEmail(email) {
...@@ -44,6 +53,7 @@ onMounted(() => { ...@@ -44,6 +53,7 @@ onMounted(() => {
44 if (result.value) { 53 if (result.value) {
45 handelGetYS000() 54 handelGetYS000()
46 isLeader.value = validateEmail(result.value) 55 isLeader.value = validateEmail(result.value)
56 console.log(isLeader.value)
47 } else { 57 } else {
48 // result.value = 'a3afc265-1e60-4376-bcfb-6ca124db8704' 58 // result.value = 'a3afc265-1e60-4376-bcfb-6ca124db8704'
49 // handelGetYS000() 59 // handelGetYS000()
...@@ -62,4 +72,25 @@ async function handelGetYS000() { ...@@ -62,4 +72,25 @@ async function handelGetYS000() {
62 </script> 72 </script>
63 73
64 <style lang="scss" scoped> 74 <style lang="scss" scoped>
75 ::v-deep .el-date-editor .el-input__inner {
76 background-color: transparent !important;
77 border-color: #80ffff;
78 box-shadow: none;
79 height: 30px;
80 color: #fff;
81 }
82 ::v-deep .el-input__wrapper {
83 background: transparent;
84 border: none;
85 box-shadow: none;
86 }
87 /* 隐藏默认图标 */
88 ::v-deep .el-date-editor .el-input__prefix {
89 display: none;
90 }
91
92 /* 强制右侧显示图标 */
93 ::v-deep .el-date-editor .el-input__suffix {
94 right: 10px !important;
95 }
65 </style> 96 </style>
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
7 width="33%" 7 width="33%"
8 > 8 >
9 <div class="son"> 9 <div class="son">
10 <div style="color: #fff;font-size: 15px">填写日期: {{myDate}}</div> 10 <div style="font-family: SimHei, serif;font-weight: 400;font-size: 20px;color: #FFFFFF;">更新日期: {{myDate}}</div>
11 <p v-for="val in list" :key="val" class="row"> 11 <p v-for="val in list" :key="val" class="row">
12 <span></span> {{ val }} 12 <span></span> {{ val }}
13 </p> 13 </p>
......
...@@ -105,7 +105,7 @@ const lineRef = ref(null) ...@@ -105,7 +105,7 @@ const lineRef = ref(null)
105 const payeeRef = ref(null) 105 const payeeRef = ref(null)
106 106
107 const type3 = ref('0') 107 const type3 = ref('0')
108 const type4 = ref(['1']) 108 const type4 = ref(['1','2'])
109 const type2 = ref([]) 109 const type2 = ref([])
110 const type1 = ref(['1', '2']) 110 const type1 = ref(['1', '2'])
111 111
...@@ -181,7 +181,7 @@ async function handelGetYS006() { ...@@ -181,7 +181,7 @@ async function handelGetYS006() {
181 set2.value.push({ 181 set2.value.push({
182 value: v1.TOTAL, 182 value: v1.TOTAL,
183 name: v1.BASEJC, 183 name: v1.BASEJC,
184 type: v1.BLOCK 184 type: v1.BLOCK,
185 }) 185 })
186 } else { 186 } else {
187 set3.value.push({ 187 set3.value.push({
...@@ -221,6 +221,16 @@ async function handelGetYS006() { ...@@ -221,6 +221,16 @@ async function handelGetYS006() {
221 set3.value.sort((a,b)=>{ 221 set3.value.sort((a,b)=>{
222 return b.value - a.value 222 return b.value - a.value
223 }) 223 })
224
225 let colorList = ['#A4E6FF', '#6ED8FF', '#2FA9FF', '#187CEC', '#0142DA']
226 set2.value.forEach((n,index) => {
227 n.itemStyle = {borderColor: colorList[index], borderWidth: 2}
228 })
229
230 let colorList2 = ['#FEFFD3', '#FFF59C', '#F7E20F', '#F7CE10', '#D29F05']
231 set3.value.forEach((n,index) => {
232 n.itemStyle = {borderColor: colorList2[index], borderWidth: 2}
233 })
224 234
225 setA(set1.value, set2.value, set3.value) 235 setA(set1.value, set2.value, set3.value)
226 setB( 236 setB(
...@@ -241,7 +251,7 @@ async function handelGetYS006() { ...@@ -241,7 +251,7 @@ async function handelGetYS006() {
241 type4.value.includes('1') ? legend1 : [], 251 type4.value.includes('1') ? legend1 : [],
242 type4.value.includes('2') ? legend2 : [], 252 type4.value.includes('2') ? legend2 : [],
243 ) 253 )
244 254
245 console.log(2222222, h3.value) 255 console.log(2222222, h3.value)
246 console.log(33333333, h6.value) 256 console.log(33333333, h6.value)
247 } 257 }
...@@ -401,9 +411,9 @@ const setA = (arr, arr2, arr3) => { ...@@ -401,9 +411,9 @@ const setA = (arr, arr2, arr3) => {
401 orient: 'vertical', 411 orient: 'vertical',
402 data: arr2, 412 data: arr2,
403 right: '5%', 413 right: '5%',
404 top: '12%', 414 top: 20,
405 bottom: 20, 415 bottom: '25%',
406 itemGap:5, 416 itemGap:10,
407 textStyle: { 417 textStyle: {
408 color: '#FFF', 418 color: '#FFF',
409 rich: { 419 rich: {
...@@ -414,7 +424,7 @@ const setA = (arr, arr2, arr3) => { ...@@ -414,7 +424,7 @@ const setA = (arr, arr2, arr3) => {
414 width:40, 424 width:40,
415 }, 425 },
416 b:{ 426 b:{
417 float:'right', 427 align:'right',
418 fontSize: 12, 428 fontSize: 12,
419 lineHeight: 12, 429 lineHeight: 12,
420 width:40, 430 width:40,
...@@ -426,7 +436,7 @@ const setA = (arr, arr2, arr3) => { ...@@ -426,7 +436,7 @@ const setA = (arr, arr2, arr3) => {
426 width:40, 436 width:40,
427 }, 437 },
428 d:{ 438 d:{
429 float:'right', 439 align:'right',
430 fontSize: 12, 440 fontSize: 12,
431 lineHeight: 22, 441 lineHeight: 22,
432 width:40, 442 width:40,
...@@ -463,9 +473,9 @@ const setA = (arr, arr2, arr3) => { ...@@ -463,9 +473,9 @@ const setA = (arr, arr2, arr3) => {
463 orient: 'vertical', 473 orient: 'vertical',
464 data: arr3, 474 data: arr3,
465 right: '30%', 475 right: '30%',
466 top: '12%', 476 top: 20,
467 bottom: 20, 477 bottom: '25%',
468 itemGap:5, 478 itemGap:10,
469 textStyle: { 479 textStyle: {
470 color: '#FFF', 480 color: '#FFF',
471 rich: { 481 rich: {
...@@ -476,7 +486,7 @@ const setA = (arr, arr2, arr3) => { ...@@ -476,7 +486,7 @@ const setA = (arr, arr2, arr3) => {
476 width:40, 486 width:40,
477 }, 487 },
478 b:{ 488 b:{
479 float:'right', 489 align:'right',
480 fontSize: 12, 490 fontSize: 12,
481 lineHeight: 12, 491 lineHeight: 12,
482 width:40, 492 width:40,
...@@ -488,7 +498,7 @@ const setA = (arr, arr2, arr3) => { ...@@ -488,7 +498,7 @@ const setA = (arr, arr2, arr3) => {
488 width:40, 498 width:40,
489 }, 499 },
490 d:{ 500 d:{
491 float:'right', 501 align:'right',
492 fontSize: 12, 502 fontSize: 12,
493 lineHeight: 22, 503 lineHeight: 22,
494 width:40, 504 width:40,
...@@ -525,19 +535,19 @@ const setA = (arr, arr2, arr3) => { ...@@ -525,19 +535,19 @@ const setA = (arr, arr2, arr3) => {
525 graphic: { 535 graphic: {
526 elements: [{ 536 elements: [{
527 type: 'text', 537 type: 'text',
528 bottom: '15%', // 可以调整位置,例如使用 'bottom' 来定位到图例下方 538 top: 157, // 可以调整位置,例如使用 'bottom' 来定位到图例下方
529 right: '33%', 539 right: '31%',
530 style: { 540 style: {
531 text: '陆地:' + sumPercent2+'%', // 这里可以计算合计值并显示 541 text: '陆地: ' + sumPercent2+'%', // 这里可以计算合计值并显示
532 fill: '#fff', // 文本颜色 542 fill: '#fff', // 文本颜色
533 fontSize: 12, // 文本大小 543 fontSize: 12, // 文本大小
534 }, 544 },
535 },{ 545 },{
536 type: 'text', 546 type: 'text',
537 bottom: '15%', // 可以调整位置,例如使用 'bottom' 来定位到图例下方 547 top: 157, // 可以调整位置,例如使用 'bottom' 来定位到图例下方
538 right: '8%', 548 right: '6%',
539 style: { 549 style: {
540 text: '海上:' + sumPercent1+'%', // 这里可以计算合计值并显示 550 text: '海上: ' + sumPercent1+'%', // 这里可以计算合计值并显示
541 fill: '#fff', // 文本颜色 551 fill: '#fff', // 文本颜色
542 fontSize: 12, // 文本大小 552 fontSize: 12, // 文本大小
543 } 553 }
...@@ -591,8 +601,6 @@ const setA = (arr, arr2, arr3) => { ...@@ -591,8 +601,6 @@ const setA = (arr, arr2, arr3) => {
591 radius: ['30%', '70%'], 601 radius: ['30%', '70%'],
592 avoidLabelOverlap: false, 602 avoidLabelOverlap: false,
593 itemStyle: { 603 itemStyle: {
594 borderWidth: 2,
595 borderColor: 'rgba(255,0,0,0.05)',
596 color: function (params) { 604 color: function (params) {
597 // 自定义颜色 605 // 自定义颜色
598 let colorList = [ 606 let colorList = [
...@@ -611,7 +619,7 @@ const setA = (arr, arr2, arr3) => { ...@@ -611,7 +619,7 @@ const setA = (arr, arr2, arr3) => {
611 show: false, 619 show: false,
612 fontSize: 20, 620 fontSize: 20,
613 fontWeight: 'bold' 621 fontWeight: 'bold'
614 } 622 },
615 }, 623 },
616 labelLine: { 624 labelLine: {
617 show: false 625 show: false
...@@ -674,7 +682,12 @@ const setB = (arr1, arr2, arr3, arr4) => { ...@@ -674,7 +682,12 @@ const setB = (arr1, arr2, arr3, arr4) => {
674 type: 'solid' 682 type: 'solid'
675 } 683 }
676 }, 684 },
677 685 axisLabel: {
686 formatter: function(value, index) {
687 // 只显示奇数索引的标签(从0开始计数)
688 return index % 2 === 0 ? value : '';
689 }
690 }
678 }, 691 },
679 ], 692 ],
680 yAxis: [ 693 yAxis: [
...@@ -827,6 +840,18 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => { ...@@ -827,6 +840,18 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => {
827 ${row.data?.info ? row.data?.info?.replaceAll('万', '万<br>') : ''} 840 ${row.data?.info ? row.data?.info?.replaceAll('万', '万<br>') : ''}
828 </div> 841 </div>
829 `; 842 `;
843 },
844 extraCssText: `
845 max-height: 150px;
846 overflow: auto !important;
847 padding-right: 10px; /* 为滚动条留出空间 */
848 `,
849 enterable: true, // 允许鼠标进入tooltip
850 axisPointer: {
851 type: 'cross',
852 label: {
853 backgroundColor: '#6a7985'
854 }
830 } 855 }
831 }, 856 },
832 legend: [ 857 legend: [
...@@ -870,6 +895,12 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => { ...@@ -870,6 +895,12 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => {
870 type: 'solid' 895 type: 'solid'
871 } 896 }
872 }, 897 },
898 axisLabel: {
899 formatter: function(value, index) {
900 // 只显示奇数索引的标签(从0开始计数)
901 return index % 2 === 0 ? value : '';
902 }
903 }
873 } 904 }
874 ], 905 ],
875 yAxis: [ 906 yAxis: [
...@@ -913,12 +944,12 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => { ...@@ -913,12 +944,12 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => {
913 type: 'linear', 944 type: 'linear',
914 x: 0, y: 0, x2: 1, y2: 1, // 垂直渐变 945 x: 0, y: 0, x2: 1, y2: 1, // 垂直渐变
915 colorStops: [ 946 colorStops: [
916 {offset: 0, color: 'rgba(141, 251, 116,1 )'}, // 顶部颜色 947 {offset: 0, color: '#18c877'}, // 顶部颜色
917 // {offset: 1, color: 'rgba(70, 232, 116,1 )'} // 底部颜色 948 // {offset: 1, color: 'rgba(70, 232, 116,1 )'} // 底部颜色
918 ] 949 ]
919 }, 950 },
920 }, 951 },
921 barWidth: '40%' 952 barWidth: '30%'
922 }, 953 },
923 { 954 {
924 name: `${Year1}收费单待签`, 955 name: `${Year1}收费单待签`,
...@@ -935,12 +966,12 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => { ...@@ -935,12 +966,12 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => {
935 type: 'linear', 966 type: 'linear',
936 x: 0, y: 0, x2: 1, y2: 1, // 垂直渐变 967 x: 0, y: 0, x2: 1, y2: 1, // 垂直渐变
937 colorStops: [ 968 colorStops: [
938 {offset: 0, color: 'rgba(1, 255, 133, 1)'}, // 顶部颜色 969 {offset: 0, color: '#69c818'}, // 顶部颜色
939 // {offset: 1, color: 'rgba(234, 216, 18, 1)'} // 底部颜色 970 // {offset: 1, color: 'rgba(234, 216, 18, 1)'} // 底部颜色
940 ] 971 ]
941 }, 972 },
942 }, 973 },
943 barWidth: '40%' 974 barWidth: '30%'
944 }, 975 },
945 { 976 {
946 name: `${Year1}合同待签`, 977 name: `${Year1}合同待签`,
...@@ -962,7 +993,7 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => { ...@@ -962,7 +993,7 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => {
962 ] 993 ]
963 }, 994 },
964 }, 995 },
965 barWidth: '40%' 996 barWidth: '30%'
966 }, 997 },
967 998
968 { 999 {
...@@ -980,12 +1011,12 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => { ...@@ -980,12 +1011,12 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => {
980 type: 'linear', 1011 type: 'linear',
981 x: 0, y: 0, x2: 1, y2: 1, // 垂直渐变 1012 x: 0, y: 0, x2: 1, y2: 1, // 垂直渐变
982 colorStops: [ 1013 colorStops: [
983 {offset: 0, color: 'rgba(109, 217, 255,1)'}, 1014 {offset: 0, color: '#2FA9FF'},
984 // {offset: 1, color: 'rgba(76, 175, 80, 1)'} 1015 // {offset: 1, color: 'rgba(76, 175, 80, 1)'}
985 ] 1016 ]
986 }, 1017 },
987 }, 1018 },
988 barWidth: '40%' 1019 barWidth: '30%'
989 }, 1020 },
990 { 1021 {
991 name: `${Year2}收费单待签`, 1022 name: `${Year2}收费单待签`,
...@@ -1002,7 +1033,7 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => { ...@@ -1002,7 +1033,7 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => {
1002 type: 'linear', 1033 type: 'linear',
1003 x: 0, y: 0, x2: 1, y2: 1, // 垂直渐变 1034 x: 0, y: 0, x2: 1, y2: 1, // 垂直渐变
1004 colorStops: [ 1035 colorStops: [
1005 {offset: 0, color: 'rgba(47, 169, 254, 1)'}, 1036 {offset: 0, color: '#187CEC'},
1006 // {offset: 1, color: 'rgba(96, 181, 255, 1)'} 1037 // {offset: 1, color: 'rgba(96, 181, 255, 1)'}
1007 1038
1008 // {offset: 0, color: 'rgba(142, 36, 170, 1)'}, 1039 // {offset: 0, color: 'rgba(142, 36, 170, 1)'},
...@@ -1013,7 +1044,7 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => { ...@@ -1013,7 +1044,7 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => {
1013 ] 1044 ]
1014 }, 1045 },
1015 }, 1046 },
1016 barWidth: '40%' 1047 barWidth: '30%'
1017 }, 1048 },
1018 { 1049 {
1019 name: `${Year2}合同待签`, 1050 name: `${Year2}合同待签`,
...@@ -1037,7 +1068,7 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => { ...@@ -1037,7 +1068,7 @@ const setC = (h1, h2, h3, h4, h5, h6, l1, l2) => {
1037 ] 1068 ]
1038 }, 1069 },
1039 }, 1070 },
1040 barWidth: '40%' 1071 barWidth: '30%'
1041 }, 1072 },
1042 ] 1073 ]
1043 } 1074 }
...@@ -1179,11 +1210,12 @@ onUnmounted(() => { ...@@ -1179,11 +1210,12 @@ onUnmounted(() => {
1179 :deep(.el-select__placeholder) { 1210 :deep(.el-select__placeholder) {
1180 font-family: PingFang SC, serif; 1211 font-family: PingFang SC, serif;
1181 font-weight: 500; 1212 font-weight: 500;
1182 color: #13C1F4; 1213 color: #fff;
1183 text-shadow: 0px 2px 0px rgba(0, 1, 1, 0.41); 1214 //text-shadow: 0 2px 0 rgba(0, 1, 1, 0.41);
1184 background: linear-gradient(180deg, #75E2E9 0%, #FFFFFF 100%); 1215 //background: linear-gradient(180deg, #75E2E9 0%, #FFFFFF 100%);
1216 background-color: rgb(33, 123, 188, .1); /* 背景色 */
1185 -webkit-background-clip: text; 1217 -webkit-background-clip: text;
1186 -webkit-text-fill-color: transparent 1218 //-webkit-text-fill-color: transparent
1187 } 1219 }
1188 1220
1189 :deep(.el-tag--info) { 1221 :deep(.el-tag--info) {
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
5 <span/> {{ item }} 5 <span/> {{ item }}
6 </div> 6 </div>
7 <!-- 复制一份数据实现无缝滚动 --> 7 <!-- 复制一份数据实现无缝滚动 -->
8 <div v-for="(item, index) in list" :key="`copy-${index}`" class="scrolling-item"> 8 <div v-if="list.length > 1" v-for="(item, index) in list" :key="`copy-${index}`" class="scrolling-item">
9 <span/> {{ item }} 9 <span/> {{ item }}
10 </div> 10 </div>
11 </div> 11 </div>
...@@ -51,22 +51,20 @@ const initScroll = () => { ...@@ -51,22 +51,20 @@ const initScroll = () => {
51 } 51 }
52 // 重置位置到第一条数据 52 // 重置位置到第一条数据
53 offset.value = -props.speed-0.1; 53 offset.value = -props.speed-0.1;
54 scrollInterval2.value = setInterval(()=> { 54
55 // 设置定时器 55 scrollInterval.value = setInterval(() => {
56 scrollInterval.value = setInterval(() => { 56 if (!isPaused.value) {
57 if (!isPaused.value) { 57 offset.value -= props.speed;
58 offset.value -= props.speed; 58 // 当滚动到内容的一半时,重置位置实现无缝滚动
59 // 当滚动到内容的一半时,重置位置实现无缝滚动 59 if (Math.abs(offset.value) >= contentHeight.value / 2) {
60 if (Math.abs(offset.value) >= contentHeight.value / 2) { 60 offset.value += contentHeight.value / 2;
61 offset.value += contentHeight.value / 2;
62 }
63 }
64 if (offset.value>=(-props.speed)) {
65 console.log("1111111111111111111111111")
66 clearInterval(scrollInterval.value);
67 } 61 }
68 }, 20); 62 }
69 },10000) 63 if (offset.value>=(-props.speed)) {
64 clearInterval(scrollInterval.value);
65 setTimeout(initScroll,10000)
66 }
67 }, 20);
70 68
71 }; 69 };
72 70
...@@ -106,9 +104,6 @@ onUnmounted(() => { ...@@ -106,9 +104,6 @@ onUnmounted(() => {
106 if (scrollInterval.value) { 104 if (scrollInterval.value) {
107 clearInterval(scrollInterval.value); 105 clearInterval(scrollInterval.value);
108 } 106 }
109 if (scrollInterval2.value) {
110 clearInterval(scrollInterval2.value);
111 }
112 }); 107 });
113 </script> 108 </script>
114 109
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!