Authored by 鲁尚清

【无】门户网站-产品服务二级页面-综合监控A-view

Showing 28 changed files with 433 additions and 84 deletions
@@ -56,6 +56,12 @@ @@ -56,6 +56,12 @@
56 font-weight: normal; 56 font-weight: normal;
57 src:url('../fonts/pingfang/PINGFANG EXTRALIGHT.TTF'); 57 src:url('../fonts/pingfang/PINGFANG EXTRALIGHT.TTF');
58 } 58 }
  59 +@font-face {
  60 + font-family: 'PingFang-SC-regular';
  61 + font-style: normal;
  62 + font-weight: normal;
  63 + src:url('../fonts/pingfang/PINGFANG REGULAR.TTF');
  64 +}
59 * { 65 * {
60 margin: 0px; 66 margin: 0px;
61 padding: 0px; 67 padding: 0px;
@@ -1977,13 +1983,19 @@ blockquote:before { @@ -1977,13 +1983,19 @@ blockquote:before {
1977 } 1983 }
1978 .info-container-bg{ 1984 .info-container-bg{
1979 background:#f3f5f8; 1985 background:#f3f5f8;
  1986 +
1980 } 1987 }
1981 .info-title{ 1988 .info-title{
1982 text-align: center; 1989 text-align: center;
  1990 + font-size: 30px;
  1991 + color:#333;
1983 } 1992 }
1984 .info-intro{ 1993 .info-intro{
1985 padding-top:20px; 1994 padding-top:20px;
1986 text-indent:28px; 1995 text-indent:28px;
  1996 + font-size: 16px;
  1997 + color:#666;
  1998 + font-family: 'PingFang-SC-medium';
1987 } 1999 }
1988 .info-character{ 2000 .info-character{
1989 padding:0 50px; 2001 padding:0 50px;
@@ -2195,6 +2207,9 @@ blockquote:before { @@ -2195,6 +2207,9 @@ blockquote:before {
2195 border-bottom:1px solid #525a6a; 2207 border-bottom:1px solid #525a6a;
2196 margin-bottom: 0; 2208 margin-bottom: 0;
2197 } 2209 }
  2210 +.maintenance-advantage.info-title{
  2211 + color:#fff;
  2212 +}
2198 .maintenance-advantage-num{ 2213 .maintenance-advantage-num{
2199 font-size: 90px; 2214 font-size: 90px;
2200 color:#2d3340; 2215 color:#2d3340;
@@ -2890,4 +2905,242 @@ blockquote:before { @@ -2890,4 +2905,242 @@ blockquote:before {
2890 } 2905 }
2891 .compatible-item .title-style{ 2906 .compatible-item .title-style{
2892 font-size:28px; 2907 font-size:28px;
2893 -}  
  2908 +}
  2909 +/*lsq 综合监控A-view样式 2022-09-28*/
  2910 +.col-lg-service-3{
  2911 + max-width: 20%;
  2912 +}
  2913 +.info-child-title{
  2914 + font-size: 21px;
  2915 + color:#333;
  2916 + font-family: 'PingFang SC';
  2917 +}
  2918 +.info-child-intro{
  2919 + font-size: 18px;
  2920 + color:#333;
  2921 + font-family: 'PingFang-SC-regular';
  2922 +}
  2923 +.info-child-title-Heavy{
  2924 + font-size: 30px;
  2925 + color:#fff;
  2926 + font-family: 'PingFang-SC-heavy';
  2927 +}
  2928 +.info-child-intro-m{
  2929 + font-size: 18px;
  2930 + color:#fff;
  2931 + font-family: 'PingFang-SC-medium';
  2932 +}
  2933 +.info-challenge-bg{
  2934 + position: absolute;
  2935 + height: 100%;
  2936 + width: 90%;
  2937 + top: 0;
  2938 + z-index: -1;
  2939 + background-size: cover;
  2940 +}
  2941 +.info-challenge-bg-1{
  2942 + background-image: url("../img/serviceSecond/Aview/challenge-bg-1.png");
  2943 +}
  2944 +.info-challenge-bg-2{
  2945 + background-image: url("../img/serviceSecond/Aview/challenge-bg-2.png");
  2946 +}
  2947 +.info-challenge-bg-3{
  2948 + background-image: url("../img/serviceSecond/Aview/challenge-bg-3.png");
  2949 +}
  2950 +.challenge-con .info-character{
  2951 + padding: 0 20px;
  2952 +}
  2953 +.intro-item{
  2954 + padding:10px;
  2955 +}
  2956 +.Aview .tab-item-li{
  2957 + margin-right: 56px;
  2958 +}
  2959 +.info-container-bg-Aview{
  2960 + position: absolute;
  2961 + height: 100%;
  2962 + width: 100%;
  2963 + top: 0;
  2964 + z-index: -2;
  2965 +}
  2966 +.info-container-bg-challenge{
  2967 + height: 60%;
  2968 +}
  2969 +.info-container-service .info-character{
  2970 + padding:0;
  2971 +}
  2972 +.info-service.info-character img{
  2973 +}
  2974 +.dataAbility-con{
  2975 + position: relative;
  2976 + flex: 1;
  2977 + max-height: 500px;
  2978 +}
  2979 +.dataAbility-bg{
  2980 + position: absolute;
  2981 + height: 100%;
  2982 + width: 100%;
  2983 + top: 0;
  2984 + z-index: -2;
  2985 + background-size: contain;
  2986 + background-image: url("../img/serviceSecond/Aview/ability-bg.png");
  2987 + background-repeat: no-repeat;
  2988 + background-position: center;
  2989 +}
  2990 +.dataAbility-bg-logo{
  2991 + position: absolute;
  2992 + height: 100%;
  2993 + width: 100%;
  2994 + top: 0;
  2995 + z-index: -1;
  2996 + display: flex;
  2997 + align-items: center;
  2998 + flex-flow: column;
  2999 + justify-content: center;
  3000 +}
  3001 +.dataAbility-item-title{
  3002 + font-size: 21px;
  3003 + color:#fff;
  3004 + font-family: 'PingFang-SC-heavy';
  3005 +}
  3006 +.dataAbility-item-intro{
  3007 + font-size: 16px;
  3008 + color:#fff;
  3009 + font-family: 'PingFang-SC-regular';
  3010 +}
  3011 +.info-container-ability .container{
  3012 + height:100%;
  3013 + display: flex;
  3014 + flex-flow: column;
  3015 +}
  3016 +.dataAbility-col{
  3017 + display: flex;
  3018 +}
  3019 +.dataAbility-item{
  3020 + flex:1;
  3021 + display: flex;
  3022 + flex-flow: column;
  3023 + justify-content: center;
  3024 + padding: 0 15px;
  3025 +}
  3026 +.dataAbility-item-intro-item{
  3027 + min-height: 24px;
  3028 +}
  3029 +.dataAbility-col:nth-child(2n) .dataAbility-item{
  3030 + margin-left: 30%;
  3031 +}
  3032 +.dataAbility-col:nth-child(3) .dataAbility-item .dataAbility-item-intro-item:first-child{
  3033 + max-width: 67%;
  3034 +}
  3035 +@media (min-width: 992px){
  3036 + .dataAbility-col{
  3037 + height:50%;
  3038 + }
  3039 +}
  3040 +.logo-title{
  3041 + color:#fff;
  3042 + font-size: 21px;
  3043 +}
  3044 +.info-characterP{
  3045 + cursor: pointer;
  3046 +}
  3047 +.info-characterP .info-characterP-bg{
  3048 + background:url("../img/serviceSecond/Aview/characterP-bg.png");
  3049 + position: absolute;
  3050 + height: 100%;
  3051 + width: 100%;
  3052 + top: 0;
  3053 + z-index: -1;
  3054 + background-size: contain;
  3055 + background-repeat: no-repeat;
  3056 + background-position: center;
  3057 +}
  3058 +.info-characterP:hover .info-characterP-bg{
  3059 + background:url("../img/serviceSecond/Aview/characterP-bg-active.png");
  3060 +
  3061 +}
  3062 +.info-character.info-characterP{
  3063 + padding:30px;
  3064 + position: relative;
  3065 +}
  3066 +.characterP-con{
  3067 + display: flex;
  3068 + justify-content: center;
  3069 + align-items: center;
  3070 + padding:10px 15px;
  3071 +}
  3072 +.characterP-con .info-character-intro{
  3073 + min-height: 140px;
  3074 +}
  3075 +.info-child-title-character{
  3076 + width: 100%;
  3077 + font-size: 21px;
  3078 + color:#333;
  3079 + font-family: 'PingFang-SC-heavy';
  3080 +}
  3081 +.info-child-intro-character{
  3082 + font-size: 16px;
  3083 + color:#666;
  3084 + font-family: 'PingFang-SC-regular';
  3085 +}
  3086 +.info-characterP:hover .info-child-title-character,.info-characterP:hover .info-child-intro-character{
  3087 + color:#fff;
  3088 +}
  3089 +.Aview-advantage-bg{
  3090 + background: url("../img/serviceSecond/Aview/advantage-bg.png");
  3091 + background-size: cover;
  3092 + position: absolute;
  3093 + height: 100%;
  3094 + width: 100%;
  3095 + left: 0;
  3096 + top: 0;
  3097 + z-index: -1;
  3098 +}
  3099 +.advantage-title-Aview{
  3100 + font-size: 24px;
  3101 + color:#fff;
  3102 +}
  3103 +.advantage-intro-Aview{
  3104 + font-size: 18px;
  3105 + color:#fff;
  3106 + font-family: 'PingFang-SC-regular';
  3107 +}
  3108 +.info-container-advantage .info-title{
  3109 + color:#fff;
  3110 +}
  3111 +.info-container-advantage .pro-advantage-style{
  3112 + padding: 50px 30px 0;
  3113 +}
  3114 +.info-container-advantage .pro-advantage-ul{
  3115 + min-height: 120px;
  3116 + box-sizing: content-box;
  3117 +}
  3118 +.Aview-advantage-con{
  3119 + padding:0;
  3120 +}
  3121 +.Aview-advantage-con .maintenance-advantage-num{
  3122 + color:#2a303c;
  3123 +}
  3124 +.Aview-con{
  3125 + border-top:1px solid #525a6a;
  3126 +}
  3127 +.Aview-container{
  3128 + margin:auto;
  3129 +}
  3130 +@media (min-width: 1260px) {
  3131 + .Aview-container {
  3132 + max-width: 1200px;
  3133 + }
  3134 +}
  3135 +.Aview-advantage-con:last-child .pro-advantage-style{
  3136 + border:none;
  3137 +}
  3138 +.Aview-advantage-con:hover{
  3139 + position: relative;
  3140 + z-index: 2;
  3141 + transform: scale(1.1,1);
  3142 + background:#1a6ab7;
  3143 +}
  3144 +.Aview-advantage-con:hover .maintenance-advantage-num{
  3145 + color:#1665b1;
  3146 +}
@@ -461,94 +461,163 @@ export function alarm() { @@ -461,94 +461,163 @@ export function alarm() {
461 export function Aview() { 461 export function Aview() {
462 let res={ 462 let res={
463 title:'综合监控管理A-view', 463 title:'综合监控管理A-view',
464 - introduction:'魔镜智能将为“智慧税务”提供一个可视化、全局化、智能化、标准化、自动化的“全流程击穿协同管理”平台。实时洞察数字化业务与用户体验、主动保障核心征管、电子税务局等核心业务系统稳定、持续高效运行,构建基于“人工智能+大数据”底座的异常检测、智能告警分析、高效信息协同的大运维工作体系。', 464 + introduction:'建立智能IT运维监控平台, 对网络、硬件、安全设备、操作系统、数据库、中间件、应用系统等资源实时监控采集,能够自动地收集信息系统中各类IT资源设备运行状态、数据库状态、中间件运行状态和网络状态等,发现各类IT资源运行过程中的异常。依据业务视角和设备视角分析发现已发生和潜在的各类资源问题,及时通知相关责任人和启动相关运维流程。',
465 data:[ 465 data:[
466 { 466 {
467 title:'产品信息', 467 title:'产品信息',
468 - introduction:'魔镜智能将为“智慧税务”提供一个可视化、全局化、智能化、标准化、自动化的“全流程击穿协同管理”平台。实时洞察数字化业务与用户体验、主动保障核心征管、电子税务局等核心业务系统稳定、持续高效运行,构建基于“人工智能+大数据”底座的异常检测、智能告警分析、高效信息协同的大运维工作体系。', 468 + introduction:'建立智能IT运维监控平台, 对网络、硬件、安全设备、操作系统、数据库、中间件、应用系统等资源实时监控采集,能够自动地收集信息系统中各类IT资源设备运行状态、数据库状态、中间件运行状态和网络状态等,发现各类IT资源运行过程中的异常。依据业务视角和设备视角分析发现已发生和潜在的各类资源问题,及时通知相关责任人和启动相关运维流程。',
469 type:'info' 469 type:'info'
470 }, 470 },
471 { 471 {
472 - title:'产品特点', 472 + title:'智能运维带来的新挑战',
473 introduction:'', 473 introduction:'',
474 data:[ 474 data:[
475 { 475 {
476 - icon:'assets/img/serviceSecond/information/character-1.png',  
477 - title:'工单信息集中管理',  
478 - introduction:'实现工单信息自动化汇总,工单数据集中化管理,工单流程实时共享。' 476 + icon:'assets/img/serviceSecond/Aview/challenge-1.png',
  477 + title:'海量资源',
  478 + introData:['资源数量、资源种类','资源纳管能力','自动化运维能力','资源纳管扩展能力']
479 }, 479 },
480 { 480 {
481 - icon:'assets/img/serviceSecond/information/character-2.png',  
482 - title:'提高工作效率',  
483 - introduction:'运用智能化管理工具,降低人工沟通成本,缩短沟通时间。实时跟进工单问题的处理情况,提高工作效率。' 481 + icon:'assets/img/serviceSecond/Aview/challenge-2.png',
  482 + title:'双模场景',
  483 + introData:['传统数据中心&云数据中心','公有云、私有云、传统数据','中心的统一运维管理','云基础设施监控精细']
484 }, 484 },
485 { 485 {
486 - icon:'assets/img/serviceSecond/information/character-3.png',  
487 - title:'实时处理单数据',  
488 - introduction:'全方位、多维度实时进行工单统计数据,及时掌握工单执行过程中的问题,帮助决策者获取数据支撑。' 486 + icon:'assets/img/serviceSecond/Aview/challenge-3.png',
  487 + title:'用户场景兼容',
  488 + introData:['云环境多租户逻辑隔离,管理统一','多张网物理隔离,统一管理','多机构运维融合']
489 } 489 }
490 ], 490 ],
491 - type:'character' 491 + type:'challenge'
492 }, 492 },
493 { 493 {
494 - title:'系统框架',  
495 - introduction:'安全运维服务流程的系统架构',  
496 - img:'assets/img/serviceSecond/information/system.png', 494 + title:'洞悉客户数字化运维服务需求',
  495 + introduction:'',
  496 + data:[
  497 + {
  498 + icon:'assets/img/serviceSecond/Aview/service-1.png',
  499 + title:'前瞻性',
  500 + introData:['业务前瞻、模式前瞻','架构前瞻']
  501 + },
  502 + {
  503 + icon:'assets/img/serviceSecond/Aview/service-2.png',
  504 + title:'一站式',
  505 + introData:['全生命周期','全IT领域']
  506 + },
  507 + {
  508 + icon:'assets/img/serviceSecond/Aview/service-3.png',
  509 + title:'敏捷性',
  510 + introData:['支持业务更快速','更高质量的发布']
  511 + },
  512 + {
  513 + icon:'assets/img/serviceSecond/Aview/service-4.png',
  514 + title:'场景化',
  515 + introData:['不同的业务场景','提供差异化服务']
  516 + },
  517 + {
  518 + icon:'assets/img/serviceSecond/Aview/service-5.png',
  519 + title:'智能化',
  520 + introData:['通过智能分析和','自动化提高运营效率']
  521 + }
  522 + ],
  523 + type:'service'
  524 + },
  525 + {
  526 + title:'系统架构',
  527 + introduction:'',
  528 + img:'assets/img/serviceSecond/Aview/system.png',
497 type:'system' 529 type:'system'
498 }, 530 },
499 { 531 {
500 - title:'产品优势', 532 + title:'综合监控A-VIEW平台能力',
  533 + subTitle:'综合监控平台能力',
  534 + icon:'assets/img/serviceSecond/Aview/logo.png',
501 introduction:'', 535 introduction:'',
502 - dataSecond:[ 536 + dataAbility:[
503 { 537 {
504 - icon:'assets/img/serviceSecond/information/advantage-1.png',  
505 - title:'“护网””等保”各规章变成“流程”强制性管控',  
506 - introduction:'特点:规章落地 提前约束 流程强制 全程留痕',  
507 - img:'assets/img/serviceSecond/information/advantageImg.png' 538 + title:'全行业全场景覆盖',
  539 + introData:['深度分析行业运维需求、场景化需求,','发布行业版本',' ',' ']
508 }, 540 },
509 { 541 {
510 - icon:'assets/img/serviceSecond/information/advantage-2.png',  
511 - title:'通过”安全流程“提前管控日常操作、留痕',  
512 - introduction:'',  
513 - img:'assets/img/serviceSecond/information/advantageImg.png' 542 + title:'用户导向',
  543 + introData:['用户视角,全新用户体验','场景化视角,便捷简单操作']
514 }, 544 },
515 { 545 {
516 - icon:'assets/img/serviceSecond/information/advantage-3.png',  
517 - title:'税务局业务流程目录、展示、流程的分类管理',  
518 - introduction:'',  
519 - img:'assets/img/serviceSecond/information/advantageImg.png' 546 + title:'一体化',
  547 + introData:['全域视角,监控网络、安全、计算存储、虚拟化、容器、云资源、用户终端等IT架构元素,实现从应用到芯片级端到端的运维管理','业务视角,打通业务到底层资源的逻辑连接,数据关联,深度分析','全局视角,场景化自动编排调度,智能联动,自动闭环解决场景化问题']
520 }, 548 },
521 { 549 {
522 - icon:'assets/img/serviceSecond/information/advantage-4.png',  
523 - title:'工作组、用户权限的灵活配置',  
524 - introduction:'',  
525 - img:'assets/img/serviceSecond/information/advantageImg.png' 550 + title:'持续扩展',
  551 + introData:['通过微服务架构,平台具备强大的可扩展能力,保证平台功能、处理能力及管理容量的弹性扩展','开放接口,定制开发,持续扩展']
526 } 552 }
527 ], 553 ],
528 - type:'advantage' 554 + type:'ability'
529 }, 555 },
  556 +
530 { 557 {
531 - title:'平台价值',  
532 - introduction:'魔镜“智能流程协同管理平台”通过信息整合,全局掌控省税务局工单流程每个节点状态,协同流转,处理审批;清晰分类了解流程情况,实时统计工单数据。',  
533 - dataThird:[ 558 + title:'产品特点',
  559 + introduction:'',
  560 + data:[
534 { 561 {
535 - title:'标准化',  
536 - introduction:'信息、流程、时间全面统一,高效协同',  
537 - img:'assets/img/serviceSecond/information/value-bg.png' 562 + title:'强化主动监控,实现集中管理',
  563 + introduction:'以应用性能和应用系统为监控主线,集成各类监控工具,构建统一集中的IT系统资源监控平台, 能够主动及时发现问题,解决被动服务的局面。同时以自主运维为目的,主动监控,自动更新,自动实现IT运维监控管理。',
538 }, 564 },
539 { 565 {
540 - title:'规范化',  
541 - introduction:'理清流程、制度落地,业务按标准执行',  
542 - img:'assets/img/serviceSecond/information/value-bg.png' 566 + title:'灵活定制的自动化巡检',
  567 + introduction:'面向多厂商主流IT产品,根据客户灵活定制自动化巡检指标,对IT资源进行全面运行状态自动化检测分析,深度感知IT基础架构运行状态。同时,实时输出准确、详实的分析报告及改进建议,预防IT资源运行中可能出现的各种风险,发现网络潜在的性能瓶颈。',
543 }, 568 },
544 { 569 {
545 - title:'透明化',  
546 - introduction:'流程申请、流程进度、流程审批全程可观',  
547 - img:'assets/img/serviceSecond/information/value-bg.png' 570 + title:'帮助定位故障,快速恢复系统运行。',
  571 + introduction:'建立针对IT资源的集中告警分析机制和故障预警机制,提供自动化故障处理能力,当故障产生时,可以进行故障的快速定位,很快发现问题根源并找到相应的解决方案,从而缩短故障解决时间,减少维护成本。',
  572 + },
  573 + {
  574 + title: '提高运行效率,合理利用IT资源。',
  575 + introduction: '建立统一IT资源监控平台后,可以实时了解全部IT资源的使用和运行情况,根据IT业务需要从整体角度考虑资源的使用,甚至可以根据业务高峰期的不同来调剂业务系统对资源的使用。',
  576 + },
  577 + {
  578 + title:'提供统计分析和决策支持',
  579 + introduction:'通过提供各类资源的性能分析报表、资源统计报表和运维分析报表,从各个侧面、各个角度反映系统的运行状况、性能情况和运维人员工作情况,为系统升级、改造、扩容提供科学依据。',
  580 + },
  581 + {
  582 + title:'全面直观的系统展示。',
  583 + introduction:'通过一个统一的门户系统,有效的展示内部的IT资源运行情况、性能状况、服务工单情况等,使得领导、管理者、技术人员能迅速了解自己关心的问题。',
548 } 584 }
549 ], 585 ],
550 - type:'value' 586 + type:'characterP'
551 }, 587 },
  588 + {
  589 + title:'产品优势',
  590 + introduction:'',
  591 + dataThird:[
  592 + {
  593 + title:'一体化监控',
  594 + dataIntro:['一体化设备监、管、控,一个平台满足用户多种需求完成所有IT基础资源的监控。']
  595 + },
  596 + {
  597 + title:'监控配置灵活',
  598 + dataIntro:['灵活定义监控设备、资源,并可差异化设置监控指标。']
  599 + },
  600 + {
  601 + title:'秒级故障监控',
  602 + dataIntro:['领先的秒级监控能力与多线程任务并发技术,监测频率提升到秒级。']
  603 + }
  604 + ],
  605 + dataThirdA:[
  606 + {
  607 + title:'实时性能监测',
  608 + dataIntro:['获取实时性能数据,动态可视化展示当前设备性能和性能变化趋势。']
  609 + },
  610 + {
  611 + title:'业务数据综合展示',
  612 + dataIntro:['强大的业务数据综合展示能力,实现跨网络业务数据整合']
  613 + },
  614 + {
  615 + title:'巡检灵活可配',
  616 + dataIntro:['巡检方案高度支持自定义,全网全流程覆盖,随时监控,分析回顾设备生命周期表现。']
  617 + }
  618 + ],
  619 + type:'advantage'
  620 + }
552 ] 621 ]
553 } 622 }
554 623
@@ -6,7 +6,7 @@ @@ -6,7 +6,7 @@
6 6
7 7
8 <section class="rel rpt-150 rpb-0 text-left" > 8 <section class="rel rpt-150 rpb-0 text-left" >
9 - <div class="container"> 9 + <div class="container product">
10 <div class="row banner-height pt-90 pb-90"> 10 <div class="row banner-height pt-90 pb-90">
11 <div class="banner-introduction color-white col-lg-6"> 11 <div class="banner-introduction color-white col-lg-6">
12 <h2 class="intro-title color-white">{{AviewData.title}}</h2> 12 <h2 class="intro-title color-white">{{AviewData.title}}</h2>
@@ -17,7 +17,7 @@ @@ -17,7 +17,7 @@
17 <div class="intro-Con"></div> 17 <div class="intro-Con"></div>
18 </section> 18 </section>
19 <section class="intro-tab"> 19 <section class="intro-tab">
20 - <div class="container"> 20 + <div class="container product Aview">
21 <ul class="intro-tab-container"> 21 <ul class="intro-tab-container">
22 <li class="tab-item-li" v-for="(item,index) in AviewData.data" :key="item"> 22 <li class="tab-item-li" v-for="(item,index) in AviewData.data" :key="item">
23 <span :class="['tab-item','scroll-to-target',{'tab-item-active':tabActive==index}]" :data-target="'[data-type='+item.type+']'">{{item.title}}</span> 23 <span :class="['tab-item','scroll-to-target',{'tab-item-active':tabActive==index}]" :data-target="'[data-type='+item.type+']'">{{item.title}}</span>
@@ -27,42 +27,54 @@ @@ -27,42 +27,54 @@
27 </section> 27 </section>
28 28
29 29
30 -<section :class="['info-container', 'rel', 'mb-70', 'pt-55',{'info-container-bg':item.type=='advantage'}]" v-for="(item,index) in AviewData.data" :key="item"> 30 +<section :class="['info-container','info-container-'+item.type, 'rel','pt-55', {'mb-50':item.type!='ability' && item.type!='characterP' && item.type!='advantage','pb-50':item.type=='characterP','all-height':item.type=='ability'}]" v-for="(item,index) in AviewData.data" :key="item">
31 <div class="div-type" :data-type="item.type"></div> 31 <div class="div-type" :data-type="item.type"></div>
32 - <div class="container">  
33 - <h3 class="info-title">{{item.title}}</h3>  
34 - <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div>  
35 - <div class="row" v-if="item.data && item.data.length>0">  
36 - <div class="info-character col-md-4" v-for="(itemC,indexC) in item.data">  
37 - <img class="pt-50" :src="itemC.icon" alt="">  
38 - <h4 class="pt-30">{{itemC.title}}</h4>  
39 - <div class="info-character-intro">{{itemC.introduction}}</div> 32 + <div class="container product">
  33 + <div class="info-title">{{item.title}}</div>
  34 + <div :class="['info-intro','mt-40',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div>
  35 + <div :class="['row','pt-60',{'challenge-con':item.type=='challenge'}]" v-if="item.data && item.data.length>0">
  36 + <div :class="[ {'col-lg-4':item.type=='challenge','col-lg-3':item.type=='service','col-lg-service-3':item.type=='service','col-lg-6':item.type=='characterP','characterP-con':item.type=='characterP'}]" v-for="(itemC,indexC) in item.data">
  37 + <div :class="['info-character','info-'+item.type] ">
  38 + <img v-if="itemC.icon" :class="[{'pt-50':item.type=='challenge'}]" :src="itemC.icon" alt="">
  39 + <div :class="[{'info-child-title':item.type=='service','info-child-title-character':item.type=='characterP','info-child-title-Heavy':item.type=='challenge', 'pt-40':item.type=='challenge', 'pt-20':item.type!='challenge'}]">{{itemC.title}}</div>
  40 + <div :class="['info-character-intro', 'pt-30',{'info-child-intro-character':item.type=='characterP'}]" v-if="itemC.introduction">{{itemC.introduction}}</div>
  41 + <div :class="['info-character-intro', {'pt-40':item.type=='challenge','pb-40':item.type=='challenge','pt-20':item.type!='challenge','info-child-intro':item.type=='service','info-child-intro-m':item.type=='challenge'}]" v-if="itemC.introData && itemC.introData.length>0">
  42 + <div :class="[{'intro-item':item.type=='challenge'}, 'text-center']" v-for="itemI in itemC.introData">{{itemI}}</div>
  43 + </div>
  44 + <div v-if="item.type=='challenge'" :class="['info-challenge-bg','info-challenge-bg-'+(indexC+1)]"></div>
  45 + <div v-if="item.type=='characterP'" class="info-characterP-bg"></div>
  46 + </div>
  47 +
40 </div> 48 </div>
41 </div> 49 </div>
42 - <div class="info-system pt-30" v-if="item.img"> 50 + <div class="info-system pt-60" v-if="item.img">
43 <img :src="item.img" alt=""> 51 <img :src="item.img" alt="">
44 </div> 52 </div>
45 - <div class="row pt-30" v-if="item.dataSecond && item.dataSecond.length>0">  
46 - <div class="col-lg-4">  
47 - <div :class="['info-advantage',{'advantage-active':advantageActive==indexA}]" @mouseover="showHover(indexA)" @mouseleave="hideHover" v-for="(itemA,indexA) in item.dataSecond">  
48 - <img class="" :src="itemA.icon" alt="">  
49 - <div :class="['info-advantage-title']">  
50 - <div>{{itemA.title}}</div>  
51 - <div class="advantage-title-intro" v-if="itemA.introduction && advantageActive==indexA && isMouseover">{{itemA.introduction}}</div> 53 + <div class="row mt-60 dataAbility-con" v-if="item.dataAbility && item.dataAbility.length>0">
  54 + <div class="col-lg-6 dataAbility-col" v-for="(itemD,indexD) in item.dataAbility">
  55 + <div class="dataAbility-item">
  56 + <div class="dataAbility-item-title">{{itemD.title}}</div>
  57 + <div class="dataAbility-item-intro pt-20">
  58 + <div class="dataAbility-item-intro-item" v-for="(itemI,indexI) in itemD.introData">{{itemI}}</div>
52 </div> 59 </div>
53 </div> 60 </div>
54 </div> 61 </div>
55 - <div class="col-lg-8">  
56 - <img :src="advantageImg" alt=""> 62 + <div class="dataAbility-bg" v-if="item.type=='ability'"></div>
  63 + <div class="dataAbility-bg-logo">
  64 + <img :src="item.icon" alt="">
  65 + <div class="logo-title pt-20">{{item.subTitle}}</div>
57 </div> 66 </div>
58 </div> 67 </div>
59 - <div class="row pt-30" v-if="item.dataThird && item.dataThird.length>0">  
60 - <div class="col-lg-4" v-for="(itemV,indexV) in item.dataThird">  
61 - <div class="info-value" >  
62 - <img class="" :src="itemV.img" alt="">  
63 - <div :class="['info-value-title']">  
64 - <h3>{{itemV.title}}</h3>  
65 - <div>{{itemV.introduction}}</div> 68 +
  69 + </div>
  70 + <div class="mt-30 Aview-con" v-if="item.dataThird && item.dataThird.length>0">
  71 + <div class="row Aview-container">
  72 + <div class="col-lg-4 Aview-advantage-con" v-for="(itemV,indexV) in item.dataThird">
  73 + <div class="info-value pro-advantage-style pb-50" >
  74 + <div :class="['pro-info-title']">
  75 + <div class=" advantage-title-Aview">{{itemV.title}}</div>
  76 + <ul class="pro-advantage-ul pt-30 advantage-intro-Aview"><li v-for="(itemP,indexP) in itemV.dataIntro">{{itemP}}</li></ul>
  77 + <div class="maintenance-advantage-num pt-50 pb-60">0{{indexV+1}}</div>
66 </div> 78 </div>
67 </div> 79 </div>
68 80
@@ -70,6 +82,21 @@ @@ -70,6 +82,21 @@
70 </div> 82 </div>
71 83
72 </div> 84 </div>
  85 + <div class=" Aview-con" v-if="item.dataThirdA && item.dataThirdA.length>0">
  86 + <div class="row Aview-container">
  87 + <div class="col-lg-4 Aview-advantage-con" v-for="(itemV,indexV) in item.dataThirdA">
  88 + <div class="info-value pro-advantage-style pb-50" >
  89 + <div :class="['pro-info-title']">
  90 + <div class=" advantage-title-Aview">{{itemV.title}}</div>
  91 + <ul class="pro-advantage-ul pt-30 advantage-intro-Aview"><li v-for="(itemP,indexP) in itemV.dataIntro">{{itemP}}</li></ul>
  92 + <div class="maintenance-advantage-num pt-50 pb-60">0{{indexV+3}}</div>
  93 + </div>
  94 + </div>
  95 + </div>
  96 + </div>
  97 + </div>
  98 + <div class="Aview-advantage-bg" v-if="item.type=='advantage'"></div>
  99 + <div v-if="item.type=='challenge' || item.type=='characterP'" :class="['info-container-bg','info-container-bg-Aview', {'info-container-bg-challenge':item.type=='challenge'}]"></div>
73 </section> 100 </section>
74 101
75 102
@@ -30,7 +30,7 @@ @@ -30,7 +30,7 @@
30 <section :class="['info-container','alarm-info-container', 'rel', {'mb-70': item.type=='lifeCycle' || item.type=='inclusive'}, 'pt-55',{'info-container-bg':item.type=='advantage'}]" v-for="(item,index) in alarmData.data" :key="item"> 30 <section :class="['info-container','alarm-info-container', 'rel', {'mb-70': item.type=='lifeCycle' || item.type=='inclusive'}, 'pt-55',{'info-container-bg':item.type=='advantage'}]" v-for="(item,index) in alarmData.data" :key="item">
31 <div class="div-type" :data-type="item.type" ></div> 31 <div class="div-type" :data-type="item.type" ></div>
32 <div class="container"> 32 <div class="container">
33 - <h3 class="info-title">{{item.title}}</h3> 33 + <div class="info-title">{{item.title}}</div>
34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div> 34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div>
35 <div class="info-system pt-30" v-if="item.img"> 35 <div class="info-system pt-30" v-if="item.img">
36 <img :src="item.img" alt=""> 36 <img :src="item.img" alt="">
@@ -30,7 +30,7 @@ @@ -30,7 +30,7 @@
30 <section :class="['info-container', 'rel', 'pt-55',{'info-container-bg':item.type=='character','pb-50':item.type=='value'}]" v-for="(item,index) in businessAppData.data" :key="item"> 30 <section :class="['info-container', 'rel', 'pt-55',{'info-container-bg':item.type=='character','pb-50':item.type=='value'}]" v-for="(item,index) in businessAppData.data" :key="item">
31 <div class="div-type" :data-type="item.type"></div> 31 <div class="div-type" :data-type="item.type"></div>
32 <div class="container"> 32 <div class="container">
33 - <h3 class="info-title">{{item.title}}</h3> 33 + <div class="info-title">{{item.title}}</div>
34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction && !item.subTitle">{{item.introduction}}</div> 34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction && !item.subTitle">{{item.introduction}}</div>
35 <div class="row" v-if="item.subTitle"> 35 <div class="row" v-if="item.subTitle">
36 <div class="col-lg-6 pd-40"> 36 <div class="col-lg-6 pd-40">
@@ -30,7 +30,7 @@ @@ -30,7 +30,7 @@
30 <section :class="['info-container', 'rel', 'mb-70', 'pt-55',{'info-container-bg':item.type=='advantage'}]" v-for="(item,index) in cloudData.data" :key="item"> 30 <section :class="['info-container', 'rel', 'mb-70', 'pt-55',{'info-container-bg':item.type=='advantage'}]" v-for="(item,index) in cloudData.data" :key="item">
31 <div class="div-type" :data-type="item.type"></div> 31 <div class="div-type" :data-type="item.type"></div>
32 <div class="container"> 32 <div class="container">
33 - <h3 class="info-title">{{item.title}}</h3> 33 + <div class="info-title">{{item.title}}</div>
34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div> 34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div>
35 <div class="row" v-if="item.data && item.data.length>0"> 35 <div class="row" v-if="item.data && item.data.length>0">
36 <div class="info-character col-md-4" v-for="(itemC,indexC) in item.data"> 36 <div class="info-character col-md-4" v-for="(itemC,indexC) in item.data">
@@ -30,7 +30,7 @@ @@ -30,7 +30,7 @@
30 <section :class="['info-container', 'rel', 'mb-70', 'pt-55',{'info-container-bg':item.type=='advantage'}]" v-for="(item,index) in cmdbData.data" :key="item"> 30 <section :class="['info-container', 'rel', 'mb-70', 'pt-55',{'info-container-bg':item.type=='advantage'}]" v-for="(item,index) in cmdbData.data" :key="item">
31 <div class="div-type" :data-type="item.type"></div> 31 <div class="div-type" :data-type="item.type"></div>
32 <div class="container"> 32 <div class="container">
33 - <h3 class="info-title">{{item.title}}</h3> 33 + <div class="info-title">{{item.title}}</div>
34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div> 34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div>
35 <div class="row" v-if="item.data && item.data.length>0"> 35 <div class="row" v-if="item.data && item.data.length>0">
36 <div class="info-character col-md-4" v-for="(itemC,indexC) in item.data"> 36 <div class="info-character col-md-4" v-for="(itemC,indexC) in item.data">
@@ -30,7 +30,7 @@ @@ -30,7 +30,7 @@
30 <section :class="['info-container', 'rel', 'mb-70', 'pt-55',{'info-container-bg':item.type=='advantage'}]" v-for="(item,index) in InformationData.data" :key="item"> 30 <section :class="['info-container', 'rel', 'mb-70', 'pt-55',{'info-container-bg':item.type=='advantage'}]" v-for="(item,index) in InformationData.data" :key="item">
31 <div class="div-type" :data-type="item.type"></div> 31 <div class="div-type" :data-type="item.type"></div>
32 <div class="container"> 32 <div class="container">
33 - <h3 class="info-title">{{item.title}}</h3> 33 + <div class="info-title">{{item.title}}</div>
34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div> 34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div>
35 <div class="row" v-if="item.data && item.data.length>0"> 35 <div class="row" v-if="item.data && item.data.length>0">
36 <div class="info-character col-md-4" v-for="(itemC,indexC) in item.data"> 36 <div class="info-character col-md-4" v-for="(itemC,indexC) in item.data">
@@ -29,7 +29,7 @@ @@ -29,7 +29,7 @@
29 29
30 <section :class="['info-container', 'rel', {'mb-70':item.type=='system'||item.type=='problems' ||item.type=='character'}, 'pt-55']" v-for="(item,index) in maintenanceData.data" :key="item"> 30 <section :class="['info-container', 'rel', {'mb-70':item.type=='system'||item.type=='problems' ||item.type=='character'}, 'pt-55']" v-for="(item,index) in maintenanceData.data" :key="item">
31 <div class="div-type" :data-type="item.type"></div> 31 <div class="div-type" :data-type="item.type"></div>
32 - <h3 v-if="item.type=='advantage'" :class="['info-title','pb-40','maintenance-advantage',{'color-white':item.type=='advantage'}]">{{item.title}}</h3> 32 + <div v-if="item.type=='advantage'" :class="['info-title','pb-40','maintenance-advantage',{'color-white':item.type=='advantage'}]">{{item.title}}</div>
33 <div class="container"> 33 <div class="container">
34 <h3 v-if="item.type!='advantage'" :class="['info-title']">{{item.title}}</h3> 34 <h3 v-if="item.type!='advantage'" :class="['info-title']">{{item.title}}</h3>
35 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div> 35 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div>
@@ -30,7 +30,7 @@ @@ -30,7 +30,7 @@
30 <section :class="['info-container', 'rel', {'mb-70':item.type=='system'}, 'pt-55',{'info-container-bg':item.type=='character','pb-50':item.type=='value'}]" v-for="(item,index) in securityLogData.data" :key="item"> 30 <section :class="['info-container', 'rel', {'mb-70':item.type=='system'}, 'pt-55',{'info-container-bg':item.type=='character','pb-50':item.type=='value'}]" v-for="(item,index) in securityLogData.data" :key="item">
31 <div class="div-type" :data-type="item.type"></div> 31 <div class="div-type" :data-type="item.type"></div>
32 <div class="container"> 32 <div class="container">
33 - <h3 class="info-title">{{item.title}}</h3> 33 + <div class="info-title">{{item.title}}</div>
34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div> 34 <div :class="['info-intro',{'text-align-center':item.type=='system' || item.type=='value'},{'max-width-600':item.type=='value'}]" v-if="item.introduction">{{item.introduction}}</div>
35 <div class="row" v-if="item.data && item.data.length>0"> 35 <div class="row" v-if="item.data && item.data.length>0">
36 <div class="info-character col-md-4" v-for="(itemC,indexC) in item.data"> 36 <div class="info-character col-md-4" v-for="(itemC,indexC) in item.data">