Commit db0f097d authored by wanghao's avatar wanghao

1 之前已部署的大屏 和 现在新调整的大屏 两个版本之间可任意部署切换功能实现及过程中的调整和测试。

parent bf5a4253
/*
* @Author: your name
* @Date: 2022-02-23 15:28:07
* @LastEditTime: 2023-07-06 14:04:13
* @LastEditors: 纪泽龙 jizelong@qq.com
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /newDev/gassafety-progress/gassafetyprogress-web/src/api/bigWindow/getdevice.js
*/
import request from '@/utils/request'
// 事故台账统计接口
export function getSGSL(query) {
return request({
url: '/standingBook/trouble/accidentLedger',
method: 'get',
params: query
})
}
// 隐患整治统计
export function getYHZZ(query) {
return request({
url: '/standingBook/hidden/hazardStatistics',
method: 'get',
params: query
})
}
// 气量监管统计接口
export function getQLJG(query) {
return request({
url: '/supplyBalance/gas/tSupBalGasSupStatistics',
method: 'get',
params: query
})
}
// 燃气用户统计接口
export function getYHTJ(query) {
return request({
url: '/supervise/user/userStatistics',
method: 'get',
params: query
})
}
/*
* @Author: your name
* @Date: 2022-02-23 15:28:07
* @LastEditTime: 2022-03-08 14:52:13
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /newDev/gassafety-progress/gassafetyprogress-web/src/api/bigWindow/getdevice.js
*/
import request from '@/utils/request'
// 查询管道去查询
export function getPipeForSelect(query) {
return request({
url: '/pipe/pipe/getPipeForSelect',
method: 'get',
params: query
})
}
// 查询管道
export function getPipe(query) {
return request({
url: '/pipe/pipe/selectPipeData',
method: 'get',
params: query
})
}
// 调压箱
export function getTyx(query) {
return request({
url: '/pipe/pipe/selectDeviceData',
method: 'get',
params: query
})
}
// 调压箱下面的设备接口
export function getTyxDevice(query) {
return request({
url: '/pipe/pipe/selectPressureFlow',
method: 'get',
params: query
})
}
// 是阀门
export function getFm(query) {
return request({
url: '/pipe/pipe/selectvalveData',
method: 'get',
params: query
})
}
// 阀门下面的设备接口
export function getFmDevice(query) {
return request({
url: '/pipe/pipe/selectPressureFlow',
method: 'get',
params: query
})
}
// 厂站
export function getCz(query) {
return request({
url: '/pipe/pipe/selectTSiteStationInfoData',
method: 'get',
params: query
})
}
// 场站下的设备
export function getCzDevice(query) {
return request({
url: '/pipe/pipe/selecttSiteStationInfoData',
method: 'get',
params: query
})
}
// 设备id :devId 类型 relationDeviceType 1调压箱/阀门井 2场站
export function getTcqDevice(query) {
return request({
url: '/pipe/pipe/selectSensingDevice',
method: 'get',
params: {
pageNum: 1,
pageSize: 20,
...query,
},
})
}
// 液化气
export function getYhq(query) {
return request({
url: '/system/yehuaqiUser/allList',
method: 'get',
params: query
})
}
export function getyhqUser(query) {
return request({
url: '/system/yehuaqiDevice/list',
method: 'get',
params: query
})
}
export function deviceUser() {
return request({
url: '/system/deviceUser/allListbyTownship',
method: 'get',
})
}
export function deviceUserList(query) {
return request({
url: '/system/deviceUser/list',
method: 'get',
params: query
})
}
// 监控
export function getVideo(query) {
return request({
url: '/pipe/pipe/selectTvideoManagerData',
method: 'get',
params: query
})
}
// 燃气用户接口
export function getUser(query) {
return request({
url: '/pipe/pipe/selectTdetectorUser',
method: 'get',
params: query
})
}
// 企业接口
export function getEnterprise(query) {
return request({
url: '/regulation/info/enterpriseInfoList',
method: 'get',
params: query
})
}
// 获取公司名称以及id
export function getCompany(query) {
return request({
url: '/pipe/pipe/selectTenterpriseInfoData',
method: 'get',
params: query
})
}
// 报警
export function userAlarm(query) {
return request({
url: '/supervise/user/getDetectorUserAlarmList',
method: 'get',
params: query
})
}
<svg width="637" height="50" viewBox="0 0 637 50" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_377_3186)">
<path d="M35 0H605L637 50H0L35 0Z" fill="#148DD2" fill-opacity="0.01"/>
</g>
<path d="M0.960328 49.5L35.2603 0.5H604.726L636.086 49.5H0.960328Z" stroke="#148DD2"/>
<defs>
<filter id="filter0_i_377_3186" x="0" y="0" width="637" height="50" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="7"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.0784314 0 0 0 0 0.552941 0 0 0 0 0.823529 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_377_3186"/>
</filter>
</defs>
</svg>
<svg width="44" height="49" viewBox="0 0 44 49" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_412_326)">
<ellipse cx="22" cy="37.5" rx="15" ry="7.5" fill="url(#paint0_radial_412_326)"/>
</g>
<g filter="url(#filter1_f_412_326)">
<ellipse cx="22" cy="37.5" rx="9" ry="4.5" fill="white"/>
</g>
<path d="M43.5 38C43.5 40.7462 41.2608 43.3669 37.3327 45.331C33.4346 47.28 28.0143 48.5 22 48.5C15.9857 48.5 10.5654 47.28 6.66726 45.331C2.73919 43.3669 0.5 40.7462 0.5 38C0.5 35.2538 2.73919 32.6331 6.66726 30.669C10.5654 28.72 15.9857 27.5 22 27.5C28.0143 27.5 33.4346 28.72 37.3327 30.669C41.2608 32.6331 43.5 35.2538 43.5 38Z" stroke="#148DD2"/>
<mask id="path-4-inside-1_412_326" fill="white">
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.4366 0.585787C22.6556 -0.195262 21.3892 -0.195263 20.6082 0.585786L7.58583 13.6081C6.92969 14.2643 6.81103 15.2855 7.29924 16.0746L20.3203 37.1207C21.1021 38.3843 22.94 38.3843 23.7219 37.1208L36.7454 16.0747C37.2337 15.2856 37.115 14.2642 36.4589 13.608L23.4366 0.585787ZM27.6047 8.44033V20.1921C27.6047 20.487 27.8438 20.7261 28.1387 20.7261V20.7261C28.4336 20.7261 28.6726 20.9651 28.6726 21.26V21.2977C28.6726 21.6135 28.4167 21.8694 28.101 21.8694H25.2966C24.1921 21.8694 23.2966 20.974 23.2966 19.8694V17.6049C23.2966 17.2899 23.0337 17.0332 22.7117 17.0332H18.4744C18.1524 17.0332 17.8888 17.2906 17.8888 17.6049V20.2614C17.8888 21.1495 17.1688 21.8694 16.2807 21.8694H15.2447C14.9288 21.8694 14.6727 21.6133 14.6727 21.2974V21.2593C14.6727 20.9644 14.9117 20.7253 15.2066 20.7253V20.7253C15.5015 20.7253 15.7405 20.4863 15.7405 20.1914V13.5892C15.7428 13.4359 15.8057 13.2896 15.9154 13.1825C16.0252 13.0754 16.1729 13.0161 16.3262 13.0175H18.5981C19.2583 13.0175 19.7935 12.4823 19.7935 11.8221V11.8221C19.7956 11.6686 19.8584 11.5222 19.9681 11.4149C20.0779 11.3076 20.2257 11.2482 20.3792 11.2497H22.6176C22.7711 11.2482 22.9189 11.3076 23.0287 11.4149C23.1385 11.5222 23.2013 11.6686 23.2033 11.8221V12.5532C23.2033 12.8101 23.4115 13.0183 23.6684 13.0183V13.0183C23.9253 13.0183 24.1335 12.8101 24.1335 12.5532V8.4411C24.1358 8.28776 24.1987 8.14155 24.3084 8.03442C24.4181 7.9273 24.5658 7.86798 24.7192 7.86944H27.0191C27.1723 7.86798 27.3199 7.92719 27.4296 8.03415C27.5393 8.1411 27.6023 8.28712 27.6047 8.44033ZM18.6331 15.0514C18.3174 15.0514 18.0614 15.3074 18.0614 15.6231V15.6231C18.0614 15.9388 18.3174 16.1948 18.6331 16.1948H22.5585C22.8742 16.1948 23.1302 15.9388 23.1302 15.6231V15.6231C23.1302 15.3074 22.8743 15.0514 22.5585 15.0514H18.6331ZM22.4504 18.4616C22.4504 18.196 22.235 17.9806 21.9694 17.9806V17.9806C21.7037 17.9806 21.4883 18.196 21.4883 18.4616V21.3884C21.4883 21.6541 21.7037 21.8695 21.9694 21.8695V21.8695C22.235 21.8695 22.4504 21.6541 22.4504 21.3884V18.4616ZM20.3014 18.4616C20.3014 18.196 20.086 17.9806 19.8204 17.9806V17.9806C19.5547 17.9806 19.3393 18.196 19.3393 18.4616V21.3884C19.3393 21.6541 19.5547 21.8695 19.8204 21.8695V21.8695C20.086 21.8695 20.3014 21.6541 20.3014 21.3884V18.4616Z"/>
</mask>
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.4366 0.585787C22.6556 -0.195262 21.3892 -0.195263 20.6082 0.585786L7.58583 13.6081C6.92969 14.2643 6.81103 15.2855 7.29924 16.0746L20.3203 37.1207C21.1021 38.3843 22.94 38.3843 23.7219 37.1208L36.7454 16.0747C37.2337 15.2856 37.115 14.2642 36.4589 13.608L23.4366 0.585787ZM27.6047 8.44033V20.1921C27.6047 20.487 27.8438 20.7261 28.1387 20.7261V20.7261C28.4336 20.7261 28.6726 20.9651 28.6726 21.26V21.2977C28.6726 21.6135 28.4167 21.8694 28.101 21.8694H25.2966C24.1921 21.8694 23.2966 20.974 23.2966 19.8694V17.6049C23.2966 17.2899 23.0337 17.0332 22.7117 17.0332H18.4744C18.1524 17.0332 17.8888 17.2906 17.8888 17.6049V20.2614C17.8888 21.1495 17.1688 21.8694 16.2807 21.8694H15.2447C14.9288 21.8694 14.6727 21.6133 14.6727 21.2974V21.2593C14.6727 20.9644 14.9117 20.7253 15.2066 20.7253V20.7253C15.5015 20.7253 15.7405 20.4863 15.7405 20.1914V13.5892C15.7428 13.4359 15.8057 13.2896 15.9154 13.1825C16.0252 13.0754 16.1729 13.0161 16.3262 13.0175H18.5981C19.2583 13.0175 19.7935 12.4823 19.7935 11.8221V11.8221C19.7956 11.6686 19.8584 11.5222 19.9681 11.4149C20.0779 11.3076 20.2257 11.2482 20.3792 11.2497H22.6176C22.7711 11.2482 22.9189 11.3076 23.0287 11.4149C23.1385 11.5222 23.2013 11.6686 23.2033 11.8221V12.5532C23.2033 12.8101 23.4115 13.0183 23.6684 13.0183V13.0183C23.9253 13.0183 24.1335 12.8101 24.1335 12.5532V8.4411C24.1358 8.28776 24.1987 8.14155 24.3084 8.03442C24.4181 7.9273 24.5658 7.86798 24.7192 7.86944H27.0191C27.1723 7.86798 27.3199 7.92719 27.4296 8.03415C27.5393 8.1411 27.6023 8.28712 27.6047 8.44033ZM18.6331 15.0514C18.3174 15.0514 18.0614 15.3074 18.0614 15.6231V15.6231C18.0614 15.9388 18.3174 16.1948 18.6331 16.1948H22.5585C22.8742 16.1948 23.1302 15.9388 23.1302 15.6231V15.6231C23.1302 15.3074 22.8743 15.0514 22.5585 15.0514H18.6331ZM22.4504 18.4616C22.4504 18.196 22.235 17.9806 21.9694 17.9806V17.9806C21.7037 17.9806 21.4883 18.196 21.4883 18.4616V21.3884C21.4883 21.6541 21.7037 21.8695 21.9694 21.8695V21.8695C22.235 21.8695 22.4504 21.6541 22.4504 21.3884V18.4616ZM20.3014 18.4616C20.3014 18.196 20.086 17.9806 19.8204 17.9806V17.9806C19.5547 17.9806 19.3393 18.196 19.3393 18.4616V21.3884C19.3393 21.6541 19.5547 21.8695 19.8204 21.8695V21.8695C20.086 21.8695 20.3014 21.6541 20.3014 21.3884V18.4616Z" fill="url(#paint1_linear_412_326)"/>
<path d="M27.6047 8.44033L28.1048 8.44033L28.1047 8.43231L27.6047 8.44033ZM15.7405 13.5892L15.2405 13.5819V13.5892H15.7405ZM15.9154 13.1825L15.5662 12.8247L15.5662 12.8247L15.9154 13.1825ZM16.3262 13.0175L16.3215 13.5175H16.3262V13.0175ZM19.9681 11.4149L20.3176 11.7725L20.3176 11.7725L19.9681 11.4149ZM20.3792 11.2497L20.3745 11.7497H20.3792V11.2497ZM22.6176 11.2497L22.6176 11.7497L22.6224 11.7496L22.6176 11.2497ZM23.0287 11.4149L22.6792 11.7725L22.6792 11.7725L23.0287 11.4149ZM23.2033 11.8221H23.7033L23.7033 11.8154L23.2033 11.8221ZM24.1335 8.4411L23.6335 8.43375V8.4411H24.1335ZM24.3084 8.03442L24.6576 8.39223L24.6577 8.39223L24.3084 8.03442ZM24.7192 7.86944L24.7144 8.36944H24.7192V7.86944ZM27.0191 7.86944L27.0191 8.36946L27.0238 8.36942L27.0191 7.86944ZM27.4296 8.03415L27.0806 8.39219L27.0806 8.39219L27.4296 8.03415ZM36.7454 16.0747L37.1705 16.3378L36.7454 16.0747ZM36.4589 13.608L36.1053 13.9616L36.4589 13.608ZM20.3203 37.1207L19.8951 37.3838L20.3203 37.1207ZM20.6082 0.585786L20.2546 0.232233L20.6082 0.585786ZM23.4366 0.585787L23.083 0.93934L23.083 0.93934L23.4366 0.585787ZM7.93938 13.9617L20.9617 0.939339L20.2546 0.232233L7.23227 13.2546L7.93938 13.9617ZM20.7455 36.8576L7.72444 15.8116L6.87404 16.3377L19.8951 37.3838L20.7455 36.8576ZM36.3202 15.8116L23.2967 36.8577L24.147 37.3839L37.1705 16.3378L36.3202 15.8116ZM23.083 0.93934L36.1053 13.9616L36.8124 13.2545L23.7902 0.232233L23.083 0.93934ZM28.1047 20.1921V8.44033H27.1047V20.1921H28.1047ZM29.1726 21.2977V21.26H28.1726V21.2977H29.1726ZM25.2966 22.3694H28.101V21.3694H25.2966V22.3694ZM22.7966 17.6049V19.8694H23.7966V17.6049H22.7966ZM22.7117 17.5332C22.7686 17.5332 22.7966 17.5769 22.7966 17.6049H23.7966C23.7966 17.0029 23.2989 16.5332 22.7117 16.5332V17.5332ZM18.4744 17.5332H22.7117V16.5332H18.4744V17.5332ZM18.3888 17.6049C18.3888 17.591 18.3941 17.5747 18.4101 17.559C18.4263 17.5432 18.4487 17.5332 18.4744 17.5332V16.5332C17.8877 16.5332 17.3888 17.0032 17.3888 17.6049H18.3888ZM18.3888 20.2614V17.6049H17.3888V20.2614H18.3888ZM15.2447 22.3694H16.2807V21.3694H15.2447V22.3694ZM14.1727 21.2593V21.2974H15.1727V21.2593H14.1727ZM15.2405 13.5892V20.1914H16.2405V13.5892H15.2405ZM15.5662 12.8247C15.3618 13.0242 15.2448 13.2964 15.2406 13.5819L16.2405 13.5966C16.2408 13.5754 16.2495 13.5551 16.2647 13.5403L15.5662 12.8247ZM16.3309 12.5176C16.0454 12.5149 15.7705 12.6253 15.5662 12.8247L16.2647 13.5403C16.2798 13.5255 16.3003 13.5173 16.3215 13.5175L16.3309 12.5176ZM18.5981 12.5175H16.3262V13.5175H18.5981V12.5175ZM19.6186 11.0573C19.4143 11.2571 19.2974 11.5297 19.2936 11.8154L20.2935 11.8288C20.2938 11.8076 20.3025 11.7873 20.3176 11.7725L19.6186 11.0573ZM20.3839 10.7497C20.0982 10.747 19.823 10.8576 19.6186 11.0574L20.3176 11.7725C20.3328 11.7576 20.3532 11.7494 20.3745 11.7496L20.3839 10.7497ZM22.6176 10.7497H20.3792V11.7497H22.6176V10.7497ZM23.3782 11.0574C23.1738 10.8576 22.8987 10.747 22.6129 10.7497L22.6224 11.7496C22.6436 11.7494 22.664 11.7576 22.6792 11.7725L23.3782 11.0574ZM23.7033 11.8154C23.6994 11.5297 23.5826 11.2571 23.3782 11.0573L22.6792 11.7725C22.6944 11.7873 22.7031 11.8076 22.7033 11.8288L23.7033 11.8154ZM23.7033 12.5532V11.8221H22.7033V12.5532H23.7033ZM23.6335 8.4411V12.5532H24.6335V8.4411H23.6335ZM23.9591 7.67662C23.7548 7.87605 23.6378 8.14827 23.6336 8.43375L24.6335 8.44846C24.6338 8.42725 24.6425 8.40704 24.6576 8.39223L23.9591 7.67662ZM24.7239 7.36946C24.4384 7.36675 24.1635 7.47718 23.9591 7.67662L24.6577 8.39223C24.6728 8.37742 24.6932 8.36922 24.7144 8.36942L24.7239 7.36946ZM27.0191 7.36944H24.7192V8.36944H27.0191V7.36944ZM27.7786 7.67611C27.5743 7.47698 27.2996 7.36675 27.0143 7.36946L27.0238 8.36942C27.045 8.36922 27.0654 8.3774 27.0806 8.39219L27.7786 7.67611ZM28.1047 8.43231C28.1001 8.14707 27.9829 7.87523 27.7786 7.67611L27.0806 8.39219C27.0958 8.40698 27.1045 8.42716 27.1048 8.44835L28.1047 8.43231ZM22.5585 15.6948H18.6331V16.6948H22.5585V15.6948ZM18.6331 15.5514H22.5585V14.5514H18.6331V15.5514ZM21.9883 21.3884V18.4616H20.9883V21.3884H21.9883ZM21.9504 18.4616V21.3884H22.9504V18.4616H21.9504ZM19.8393 21.3884V18.4616H18.8393V21.3884H19.8393ZM19.8014 18.4616V21.3884H20.8014V18.4616H19.8014ZM19.8204 22.3695C20.3622 22.3695 20.8014 21.9302 20.8014 21.3884H19.8014C19.8014 21.3779 19.8099 21.3695 19.8204 21.3695V22.3695ZM18.8393 21.3884C18.8393 21.9302 19.2785 22.3695 19.8204 22.3695V21.3695C19.8308 21.3695 19.8393 21.3779 19.8393 21.3884H18.8393ZM19.8204 18.4806C19.8099 18.4806 19.8014 18.4721 19.8014 18.4616H20.8014C20.8014 17.9198 20.3622 17.4806 19.8204 17.4806V18.4806ZM19.8204 17.4806C19.2785 17.4806 18.8393 17.9198 18.8393 18.4616H19.8393C19.8393 18.4721 19.8308 18.4806 19.8204 18.4806V17.4806ZM21.9694 22.3695C22.5112 22.3695 22.9504 21.9302 22.9504 21.3884H21.9504C21.9504 21.3779 21.9589 21.3695 21.9694 21.3695V22.3695ZM20.9883 21.3884C20.9883 21.9302 21.4275 22.3695 21.9694 22.3695V21.3695C21.9798 21.3695 21.9883 21.3779 21.9883 21.3884H20.9883ZM18.5614 15.6231C18.5614 15.5835 18.5935 15.5514 18.6331 15.5514V14.5514C18.0412 14.5514 17.5614 15.0312 17.5614 15.6231H18.5614ZM17.5614 15.6231C17.5614 16.215 18.0412 16.6948 18.6331 16.6948V15.6948C18.5935 15.6948 18.5614 15.6627 18.5614 15.6231H17.5614ZM23.6684 13.5183C24.2014 13.5183 24.6335 13.0862 24.6335 12.5532H23.6335C23.6335 12.5339 23.6491 12.5183 23.6684 12.5183V13.5183ZM18.5981 13.5175C19.5345 13.5175 20.2935 12.7585 20.2935 11.8221H19.2935C19.2935 12.2062 18.9822 12.5175 18.5981 12.5175V13.5175ZM21.9694 18.4806C21.9589 18.4806 21.9504 18.4721 21.9504 18.4616H22.9504C22.9504 17.9198 22.5112 17.4806 21.9694 17.4806V18.4806ZM15.2066 21.2253C15.7776 21.2253 16.2405 20.7624 16.2405 20.1914H15.2405C15.2405 20.2101 15.2253 20.2253 15.2066 20.2253V21.2253ZM25.2966 21.3694C24.4682 21.3694 23.7966 20.6978 23.7966 19.8694H22.7966C22.7966 21.2501 23.9159 22.3694 25.2966 22.3694V21.3694ZM28.1726 21.2977C28.1726 21.3373 28.1405 21.3694 28.101 21.3694V22.3694C28.6928 22.3694 29.1726 21.8896 29.1726 21.2977H28.1726ZM28.1387 21.2261C28.1574 21.2261 28.1726 21.2413 28.1726 21.26H29.1726C29.1726 20.689 28.7097 20.2261 28.1387 20.2261V21.2261ZM21.9694 17.4806C21.4275 17.4806 20.9883 17.9198 20.9883 18.4616H21.9883C21.9883 18.4721 21.9798 18.4806 21.9694 18.4806V17.4806ZM15.1727 21.2593C15.1727 21.2405 15.1878 21.2253 15.2066 21.2253V20.2253C14.6356 20.2253 14.1727 20.6882 14.1727 21.2593H15.1727ZM22.7033 12.5532C22.7033 13.0862 23.1354 13.5183 23.6684 13.5183V12.5183C23.6877 12.5183 23.7033 12.5339 23.7033 12.5532H22.7033ZM27.1047 20.1921C27.1047 20.7632 27.5677 21.2261 28.1387 21.2261V20.2261C28.1199 20.2261 28.1047 20.2109 28.1047 20.1921H27.1047ZM23.6302 15.6231C23.6302 15.0312 23.1504 14.5514 22.5585 14.5514V15.5514C22.5981 15.5514 22.6302 15.5835 22.6302 15.6231H23.6302ZM15.2447 21.3694C15.2049 21.3694 15.1727 21.3372 15.1727 21.2974H14.1727C14.1727 21.8894 14.6526 22.3694 15.2447 22.3694V21.3694ZM37.1705 16.3378C37.7809 15.3514 37.6326 14.0747 36.8124 13.2545L36.1053 13.9616C36.5974 14.4537 36.6864 15.2197 36.3202 15.8116L37.1705 16.3378ZM22.5585 16.6948C23.1504 16.6948 23.6302 16.215 23.6302 15.6231H22.6302C22.6302 15.6627 22.5981 15.6948 22.5585 15.6948V16.6948ZM17.3888 20.2614C17.3888 20.8733 16.8927 21.3694 16.2807 21.3694V22.3694C17.4449 22.3694 18.3888 21.4256 18.3888 20.2614H17.3888ZM19.8951 37.3838C20.8724 38.9632 23.1697 38.9633 24.147 37.3839L23.2967 36.8577C22.7103 37.8054 21.3319 37.8053 20.7455 36.8576L19.8951 37.3838ZM20.9617 0.939339C21.5475 0.353553 22.4973 0.353554 23.083 0.93934L23.7902 0.232233C22.8138 -0.744077 21.2309 -0.744078 20.2546 0.232233L20.9617 0.939339ZM7.23227 13.2546C6.41211 14.0747 6.26378 15.3513 6.87404 16.3377L7.72444 15.8116C7.35828 15.2197 7.44728 14.4538 7.93938 13.9617L7.23227 13.2546Z" fill="white" mask="url(#path-4-inside-1_412_326)"/>
<defs>
<filter id="filter0_i_412_326" x="7" y="30" width="30" height="15" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="2"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_412_326"/>
</filter>
<filter id="filter1_f_412_326" x="9" y="29" width="26" height="17" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="2" result="effect1_foregroundBlur_412_326"/>
</filter>
<radialGradient id="paint0_radial_412_326" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(22 37.5) rotate(90) scale(7.5 15)">
<stop stop-color="#148DD2" stop-opacity="0"/>
<stop offset="1" stop-color="#148DD2"/>
</radialGradient>
<linearGradient id="paint1_linear_412_326" x1="22.0223" y1="0" x2="22.0223" y2="38.0684" gradientUnits="userSpaceOnUse">
<stop offset="0.78125" stop-color="#F0C41B"/>
<stop offset="1" stop-color="white"/>
</linearGradient>
</defs>
</svg>
<svg width="44" height="49" viewBox="0 0 44 49" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_412_345)">
<ellipse cx="22" cy="37.5" rx="15" ry="7.5" fill="url(#paint0_radial_412_345)"/>
</g>
<g filter="url(#filter1_f_412_345)">
<ellipse cx="22" cy="37.5" rx="9" ry="4.5" fill="white"/>
</g>
<path d="M43.5 38C43.5 40.7462 41.2608 43.3669 37.3327 45.331C33.4346 47.28 28.0143 48.5 22 48.5C15.9857 48.5 10.5654 47.28 6.66726 45.331C2.73919 43.3669 0.5 40.7462 0.5 38C0.5 35.2538 2.73919 32.6331 6.66726 30.669C10.5654 28.72 15.9857 27.5 22 27.5C28.0143 27.5 33.4346 28.72 37.3327 30.669C41.2608 32.6331 43.5 35.2538 43.5 38Z" stroke="#148DD2"/>
<mask id="path-4-inside-1_412_345" fill="white">
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.4366 0.585787C22.6556 -0.195262 21.3892 -0.195263 20.6082 0.585786L7.58583 13.6081C6.92969 14.2643 6.81103 15.2855 7.29924 16.0746L20.3203 37.1207C21.1021 38.3843 22.94 38.3843 23.7219 37.1208L36.7454 16.0747C37.2337 15.2856 37.115 14.2642 36.4589 13.608L23.4366 0.585787ZM27.1824 9.03583C28.6224 10.323 29.5675 12.1033 29.8452 14.0519L29.888 14.2653C29.914 14.3949 29.9271 14.5267 29.9271 14.6589V15.5966L29.8452 16.4446C29.5675 18.3932 28.6224 20.1735 27.1824 21.4607C25.7424 22.7478 23.9034 23.4561 22.001 23.4563C19.8984 23.4563 17.882 22.5915 16.3952 21.0522C14.9085 19.5129 14.0733 17.4251 14.0733 15.2482C14.0733 13.0713 14.9085 10.9836 16.3952 9.44431C17.882 7.90501 19.8984 7.04024 22.001 7.04024C23.9034 7.04037 25.7424 7.74864 27.1824 9.03583ZM17.6814 10.7915C16.8299 11.6762 16.2543 12.7986 16.0202 14.0138C15.9526 14.3646 16.2354 14.6719 16.5926 14.6719V14.6719C16.9027 14.6719 17.1594 14.4376 17.2253 14.1346C17.4275 13.2064 17.8789 12.3519 18.5323 11.6725C19.1785 11.0005 19.9911 10.5325 20.8753 10.316C21.1845 10.2403 21.4232 9.97636 21.4232 9.65806V9.65806C21.4232 9.28547 21.1005 8.99145 20.7366 9.07136C19.5835 9.32456 18.5205 9.91971 17.6814 10.7915ZM17.6964 19.7207C18.5331 20.584 19.5901 21.1735 20.736 21.4252C21.1002 21.5053 21.4232 21.211 21.4232 20.8381V20.8381C21.4232 20.5195 21.1843 20.2554 20.8749 20.1796C19.998 19.9648 19.1915 19.5025 18.5477 18.839C17.8958 18.1671 17.4423 17.3214 17.2343 16.401C17.1663 16.1002 16.9103 15.8685 16.6019 15.8685V15.8685C16.2426 15.8685 15.959 16.1788 16.0296 16.5311C16.2711 17.7353 16.8483 18.8457 17.6964 19.7207ZM20.7299 18.3268C20.9995 18.3268 21.2181 18.1082 21.2181 17.8386V16.9616C21.2181 16.2077 21.8292 15.5965 22.5831 15.5965L23.6976 15.5964C23.9362 15.5963 24.1296 15.4029 24.1296 15.1644V15.1644C24.1296 14.9258 23.9362 14.7324 23.6976 14.7324H22.0724C21.6 14.7324 21.2171 14.3495 21.2171 13.8771V13.8771C21.2171 13.4048 21.6 13.0218 22.0724 13.0218H23.8728C24.1113 13.0218 24.3047 12.8284 24.3047 12.5899V12.5899C24.3047 12.3513 24.1113 12.1579 23.8728 12.1579H22.2418C21.1372 12.1579 20.2418 13.0534 20.2418 14.1579V17.8386C20.2418 18.1082 20.4603 18.3268 20.7299 18.3268V18.3268ZM23.1267 20.1805C22.8175 20.2562 22.5787 20.5202 22.5787 20.8385V20.8385C22.5787 21.2112 22.9015 21.5053 23.2655 21.4253C24.4114 21.1736 25.4684 20.584 26.3052 19.7208C27.1532 18.846 27.7305 17.7359 27.9722 16.5319C28.0429 16.1796 27.7593 15.8692 27.4 15.8692V15.8692C27.0916 15.8692 26.8357 16.1009 26.7677 16.4017C26.5596 17.3222 26.1062 18.1679 25.4542 18.8398C24.8104 19.5033 24.0038 19.9657 23.1267 20.1805ZM25.4697 11.6725C26.1231 12.352 26.5745 13.2065 26.7766 14.1347C26.8426 14.4376 27.0992 14.6719 27.4092 14.6719V14.6719C27.7664 14.6719 28.0491 14.3647 27.9815 14.014C27.7474 12.7987 27.1718 11.6763 26.3203 10.7915C25.4813 9.9198 24.4184 9.32463 23.2654 9.07139C22.9014 8.99146 22.5787 9.28548 22.5787 9.65808V9.65808C22.5787 9.97636 22.8175 10.2403 23.1266 10.316C24.0109 10.5325 24.8234 11.0005 25.4697 11.6725Z"/>
</mask>
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.4366 0.585787C22.6556 -0.195262 21.3892 -0.195263 20.6082 0.585786L7.58583 13.6081C6.92969 14.2643 6.81103 15.2855 7.29924 16.0746L20.3203 37.1207C21.1021 38.3843 22.94 38.3843 23.7219 37.1208L36.7454 16.0747C37.2337 15.2856 37.115 14.2642 36.4589 13.608L23.4366 0.585787ZM27.1824 9.03583C28.6224 10.323 29.5675 12.1033 29.8452 14.0519L29.888 14.2653C29.914 14.3949 29.9271 14.5267 29.9271 14.6589V15.5966L29.8452 16.4446C29.5675 18.3932 28.6224 20.1735 27.1824 21.4607C25.7424 22.7478 23.9034 23.4561 22.001 23.4563C19.8984 23.4563 17.882 22.5915 16.3952 21.0522C14.9085 19.5129 14.0733 17.4251 14.0733 15.2482C14.0733 13.0713 14.9085 10.9836 16.3952 9.44431C17.882 7.90501 19.8984 7.04024 22.001 7.04024C23.9034 7.04037 25.7424 7.74864 27.1824 9.03583ZM17.6814 10.7915C16.8299 11.6762 16.2543 12.7986 16.0202 14.0138C15.9526 14.3646 16.2354 14.6719 16.5926 14.6719V14.6719C16.9027 14.6719 17.1594 14.4376 17.2253 14.1346C17.4275 13.2064 17.8789 12.3519 18.5323 11.6725C19.1785 11.0005 19.9911 10.5325 20.8753 10.316C21.1845 10.2403 21.4232 9.97636 21.4232 9.65806V9.65806C21.4232 9.28547 21.1005 8.99145 20.7366 9.07136C19.5835 9.32456 18.5205 9.91971 17.6814 10.7915ZM17.6964 19.7207C18.5331 20.584 19.5901 21.1735 20.736 21.4252C21.1002 21.5053 21.4232 21.211 21.4232 20.8381V20.8381C21.4232 20.5195 21.1843 20.2554 20.8749 20.1796C19.998 19.9648 19.1915 19.5025 18.5477 18.839C17.8958 18.1671 17.4423 17.3214 17.2343 16.401C17.1663 16.1002 16.9103 15.8685 16.6019 15.8685V15.8685C16.2426 15.8685 15.959 16.1788 16.0296 16.5311C16.2711 17.7353 16.8483 18.8457 17.6964 19.7207ZM20.7299 18.3268C20.9995 18.3268 21.2181 18.1082 21.2181 17.8386V16.9616C21.2181 16.2077 21.8292 15.5965 22.5831 15.5965L23.6976 15.5964C23.9362 15.5963 24.1296 15.4029 24.1296 15.1644V15.1644C24.1296 14.9258 23.9362 14.7324 23.6976 14.7324H22.0724C21.6 14.7324 21.2171 14.3495 21.2171 13.8771V13.8771C21.2171 13.4048 21.6 13.0218 22.0724 13.0218H23.8728C24.1113 13.0218 24.3047 12.8284 24.3047 12.5899V12.5899C24.3047 12.3513 24.1113 12.1579 23.8728 12.1579H22.2418C21.1372 12.1579 20.2418 13.0534 20.2418 14.1579V17.8386C20.2418 18.1082 20.4603 18.3268 20.7299 18.3268V18.3268ZM23.1267 20.1805C22.8175 20.2562 22.5787 20.5202 22.5787 20.8385V20.8385C22.5787 21.2112 22.9015 21.5053 23.2655 21.4253C24.4114 21.1736 25.4684 20.584 26.3052 19.7208C27.1532 18.846 27.7305 17.7359 27.9722 16.5319C28.0429 16.1796 27.7593 15.8692 27.4 15.8692V15.8692C27.0916 15.8692 26.8357 16.1009 26.7677 16.4017C26.5596 17.3222 26.1062 18.1679 25.4542 18.8398C24.8104 19.5033 24.0038 19.9657 23.1267 20.1805ZM25.4697 11.6725C26.1231 12.352 26.5745 13.2065 26.7766 14.1347C26.8426 14.4376 27.0992 14.6719 27.4092 14.6719V14.6719C27.7664 14.6719 28.0491 14.3647 27.9815 14.014C27.7474 12.7987 27.1718 11.6763 26.3203 10.7915C25.4813 9.9198 24.4184 9.32463 23.2654 9.07139C22.9014 8.99146 22.5787 9.28548 22.5787 9.65808V9.65808C22.5787 9.97636 22.8175 10.2403 23.1266 10.316C24.0109 10.5325 24.8234 11.0005 25.4697 11.6725Z" fill="url(#paint1_linear_412_345)"/>
<path d="M29.8452 14.0519L29.3502 14.1225L29.3522 14.1365L29.3549 14.1503L29.8452 14.0519ZM27.1824 9.03583L26.8492 9.40861L26.8492 9.40861L27.1824 9.03583ZM29.9271 15.5966L30.4248 15.6447L30.4271 15.6207V15.5966H29.9271ZM29.8452 16.4446L30.3402 16.5151L30.3418 16.5039L30.3428 16.4926L29.8452 16.4446ZM22.001 23.4563L22.001 23.9563L22.001 23.9563L22.001 23.4563ZM16.3952 21.0522L16.0356 21.3995L16.0356 21.3995L16.3952 21.0522ZM16.3952 9.44431L16.7549 9.79167L16.7549 9.79167L16.3952 9.44431ZM22.001 7.04024L22.001 6.54024H22.001V7.04024ZM17.6814 10.7915L17.3212 10.4447L17.3212 10.4447L17.6814 10.7915ZM18.5323 11.6725L18.1719 11.3259L18.1719 11.3259L18.5323 11.6725ZM17.6964 19.7207L18.0555 19.3727L18.0555 19.3727L17.6964 19.7207ZM18.5477 18.839L18.9066 18.4908L18.9066 18.4908L18.5477 18.839ZM26.3052 19.7208L25.9462 19.3728L25.9462 19.3728L26.3052 19.7208ZM25.4697 11.6725L25.1093 12.0191L25.1093 12.0191L25.4697 11.6725ZM27.9815 14.014L27.4906 14.1086L27.9815 14.014ZM26.7766 14.1347L26.2881 14.2411L26.7766 14.1347ZM26.7677 16.4017L26.28 16.2915L26.7677 16.4017ZM27.9722 16.5319L27.482 16.4335L27.9722 16.5319ZM23.1267 20.1805L23.2457 20.6661L23.1267 20.1805ZM23.2655 21.4253L23.1582 20.937L23.2655 21.4253ZM22.5831 15.5965L22.5831 15.0965L22.5831 15.5965ZM20.736 21.4252L20.6287 21.9136L20.736 21.4252ZM20.7366 9.07136L20.8438 9.55972L20.7366 9.07136ZM16.0202 14.0138L15.5292 13.9192L16.0202 14.0138ZM16.0296 16.5311L15.5394 16.6294L16.0296 16.5311ZM36.7454 16.0747L37.1705 16.3378L36.7454 16.0747ZM36.4589 13.608L36.1053 13.9616L36.4589 13.608ZM17.2343 16.401L16.7466 16.5113L17.2343 16.401ZM20.3203 37.1207L19.8951 37.3838L20.3203 37.1207ZM17.2253 14.1346L17.7139 14.241L17.2253 14.1346ZM23.6976 15.5964L23.6976 15.0964L23.6976 15.5964ZM29.888 14.2653L30.3782 14.1669L29.888 14.2653ZM23.2654 9.07139L23.1581 9.55975L23.2654 9.07139ZM20.8749 20.1796L20.7559 20.6653L20.8749 20.1796ZM23.1266 10.316L23.0077 10.8016L23.1266 10.316ZM20.6082 0.585786L20.2546 0.232233L20.6082 0.585786ZM23.4366 0.585787L23.083 0.93934L23.083 0.93934L23.4366 0.585787ZM7.93938 13.9617L20.9617 0.939339L20.2546 0.232233L7.23227 13.2546L7.93938 13.9617ZM20.7455 36.8576L7.72444 15.8116L6.87404 16.3377L19.8951 37.3838L20.7455 36.8576ZM36.3202 15.8116L23.2967 36.8577L24.147 37.3839L37.1705 16.3378L36.3202 15.8116ZM23.083 0.93934L36.1053 13.9616L36.8124 13.2545L23.7902 0.232233L23.083 0.93934ZM30.3402 13.9814C30.0462 11.9186 29.0453 10.0304 27.5156 8.66305L26.8492 9.40861C28.1995 10.6156 29.0888 12.2881 29.3502 14.1225L30.3402 13.9814ZM30.3782 14.1669L30.3354 13.9535L29.3549 14.1503L29.3978 14.3637L30.3782 14.1669ZM30.4271 15.5966V14.6589H29.4271V15.5966H30.4271ZM30.3428 16.4926L30.4248 15.6447L29.4294 15.5485L29.3475 16.3965L30.3428 16.4926ZM27.5156 21.8334C29.0453 20.4661 30.0462 18.5779 30.3402 16.5151L29.3502 16.374C29.0888 18.2084 28.1995 19.8808 26.8492 21.0879L27.5156 21.8334ZM22.001 23.9563C24.0284 23.9561 25.9855 23.2012 27.5156 21.8334L26.8492 21.0879C25.4993 22.2945 23.7784 22.9561 22.0009 22.9563L22.001 23.9563ZM16.0356 21.3995C17.6147 23.0344 19.7601 23.9563 22.001 23.9563V22.9563C20.0367 22.9563 18.1493 22.1485 16.7549 20.7048L16.0356 21.3995ZM13.5733 15.2482C13.5733 17.5523 14.4571 19.7652 16.0356 21.3995L16.7549 20.7048C15.3599 19.2605 14.5733 17.298 14.5733 15.2482H13.5733ZM16.0356 9.09695C14.4571 10.7312 13.5733 12.9442 13.5733 15.2482H14.5733C14.5733 13.1985 15.3599 11.236 16.7549 9.79167L16.0356 9.09695ZM22.001 6.54024C19.7601 6.54024 17.6147 7.46206 16.0356 9.09695L16.7549 9.79167C18.1493 8.34795 20.0367 7.54024 22.001 7.54024V6.54024ZM27.5156 8.66305C25.9855 7.29532 24.0284 6.54038 22.001 6.54024L22.0009 7.54024C23.7784 7.54036 25.4993 8.20197 26.8492 9.40861L27.5156 8.66305ZM16.5111 14.1084C16.7274 12.9861 17.2586 11.9518 18.0417 11.1382L17.3212 10.4447C16.4013 11.4005 15.7813 12.611 15.5292 13.9192L16.5111 14.1084ZM18.1719 11.3259C17.4531 12.0733 16.9582 13.0115 16.7368 14.0282L17.7139 14.241C17.8968 13.4014 18.3046 12.6305 18.8927 12.0191L18.1719 11.3259ZM20.7564 9.83031C19.7789 10.0696 18.883 10.5865 18.1719 11.3259L18.8927 12.0191C19.4741 11.4145 20.2032 10.9953 20.9942 10.8016L20.7564 9.83031ZM18.0417 11.1382C18.8132 10.3367 19.7884 9.79147 20.8438 9.55972L20.6293 8.58299C19.3785 8.85765 18.2279 9.50275 17.3212 10.4447L18.0417 11.1382ZM20.8433 20.9369C19.7945 20.7065 18.8247 20.1665 18.0555 19.3727L17.3374 20.0687C18.2415 21.0016 19.3857 21.6405 20.6287 21.9136L20.8433 20.9369ZM18.1889 19.1872C18.8972 19.9173 19.7865 20.4278 20.7559 20.6653L20.9938 19.694C20.2094 19.5018 19.4857 19.0877 18.9066 18.4908L18.1889 19.1872ZM16.7466 16.5113C16.9745 17.5195 17.4716 18.448 18.1889 19.1872L18.9066 18.4908C18.3199 17.8862 17.9102 17.1233 17.722 16.2908L16.7466 16.5113ZM18.0555 19.3727C17.2755 18.568 16.7429 17.5449 16.5199 16.4328L15.5394 16.6294C15.7994 17.9258 16.4211 19.1233 17.3374 20.0687L18.0555 19.3727ZM20.7181 16.9616V17.8386H21.7181V16.9616H20.7181ZM23.6976 15.0964L22.5831 15.0965L22.5832 16.0965L23.6977 16.0964L23.6976 15.0964ZM22.0724 15.2324H23.6976V14.2324H22.0724V15.2324ZM23.8728 12.5218H22.0724V13.5218H23.8728V12.5218ZM22.2418 12.6579H23.8728V11.6579H22.2418V12.6579ZM20.7418 17.8386V14.1579H19.7418V17.8386H20.7418ZM25.9462 19.3728C25.1768 20.1664 24.207 20.7065 23.1582 20.937L23.3728 21.9137C24.6158 21.6406 25.76 21.0015 26.6642 20.0688L25.9462 19.3728ZM27.482 16.4335C27.2587 17.5454 26.7261 18.5683 25.9462 19.3728L26.6642 20.0688C27.5804 19.1237 28.2022 17.9264 28.4624 16.6303L27.482 16.4335ZM25.8131 19.188C26.5303 18.4488 27.0275 17.5202 27.2554 16.512L26.28 16.2915C26.0918 17.1241 25.6821 17.887 25.0954 18.4916L25.8131 19.188ZM23.2457 20.6661C24.2152 20.4287 25.1046 19.9181 25.8131 19.188L25.0954 18.4916C24.5162 19.0886 23.7924 19.5027 23.0078 19.6948L23.2457 20.6661ZM27.2652 14.0283C27.0437 13.0115 26.5489 12.0734 25.83 11.3259L25.1093 12.0191C25.6973 12.6305 26.1052 13.4014 26.2881 14.2411L27.2652 14.0283ZM25.9601 11.1383C26.7432 11.9519 27.2743 12.9862 27.4906 14.1086L28.4725 13.9194C28.2205 12.6112 27.6005 11.4006 26.6806 10.4448L25.9601 11.1383ZM23.1581 9.55975C24.2135 9.79153 25.1887 10.3368 25.9601 11.1383L26.6806 10.4448C25.774 9.50284 24.6234 8.85774 23.3726 8.58303L23.1581 9.55975ZM25.83 11.3259C25.1189 10.5865 24.223 10.0696 23.2455 9.83031L23.0077 10.8016C23.7987 10.9953 24.5279 11.4145 25.1093 12.0191L25.83 11.3259ZM27.4092 15.1719C28.0435 15.1719 28.6063 14.6137 28.4725 13.9194L27.4906 14.1086C27.4924 14.1179 27.4914 14.1228 27.4905 14.1258C27.4894 14.1297 27.4867 14.1358 27.4804 14.1429C27.4672 14.1577 27.4429 14.1719 27.4092 14.1719V15.1719ZM26.2881 14.2411C26.3973 14.7426 26.8335 15.1719 27.4092 15.1719V14.1719C27.384 14.1719 27.3566 14.1631 27.3291 14.1392C27.3001 14.1141 27.2754 14.0752 27.2652 14.0283L26.2881 14.2411ZM27.4 15.3692C26.8277 15.3692 26.3925 15.7936 26.28 16.2915L27.2554 16.512C27.2788 16.4082 27.3555 16.3692 27.4 16.3692V15.3692ZM28.4624 16.6303C28.6024 15.9329 28.0376 15.3692 27.4 15.3692V16.3692C27.4341 16.3692 27.4586 16.3836 27.4719 16.3987C27.4782 16.4059 27.4809 16.412 27.482 16.4159C27.4829 16.4189 27.4839 16.424 27.482 16.4335L28.4624 16.6303ZM23.0787 20.8385C23.0787 20.7844 23.1254 20.6956 23.2457 20.6661L23.0078 19.6948C22.5096 19.8168 22.0787 20.2559 22.0787 20.8385H23.0787ZM22.0787 20.8385C22.0787 21.4872 22.6558 22.0712 23.3728 21.9137L23.1582 20.937C23.1467 20.9395 23.14 20.9384 23.1358 20.9373C23.1307 20.9359 23.1231 20.9325 23.1143 20.9249C23.096 20.9089 23.0787 20.8792 23.0787 20.8385H22.0787ZM19.7418 17.8386C19.7418 18.3843 20.1842 18.8268 20.7299 18.8268V17.8268C20.7306 17.8268 20.7326 17.827 20.7347 17.8279C20.7365 17.8286 20.7376 17.8295 20.7383 17.8302C20.739 17.8309 20.7399 17.8321 20.7406 17.8338C20.7415 17.8359 20.7418 17.8379 20.7418 17.8386H19.7418ZM22.2418 11.6579C20.8611 11.6579 19.7418 12.7772 19.7418 14.1579H20.7418C20.7418 13.3295 21.4133 12.6579 22.2418 12.6579V11.6579ZM24.8047 12.5899C24.8047 12.0752 24.3875 11.6579 23.8728 11.6579V12.6579C23.8352 12.6579 23.8047 12.6275 23.8047 12.5899H24.8047ZM23.8728 13.5218C24.3875 13.5218 24.8047 13.1046 24.8047 12.5899H23.8047C23.8047 12.5523 23.8352 12.5218 23.8728 12.5218V13.5218ZM21.7171 13.8771C21.7171 13.6809 21.8762 13.5218 22.0724 13.5218V12.5218C21.3239 12.5218 20.7171 13.1286 20.7171 13.8771H21.7171ZM22.0724 14.2324C21.8762 14.2324 21.7171 14.0733 21.7171 13.8771H20.7171C20.7171 14.6256 21.3239 15.2324 22.0724 15.2324V14.2324ZM24.6296 15.1644C24.6296 14.6497 24.2123 14.2324 23.6976 14.2324V15.2324C23.66 15.2324 23.6296 15.202 23.6296 15.1644H24.6296ZM20.7181 17.8386C20.7181 17.8379 20.7184 17.8359 20.7192 17.8338C20.72 17.8321 20.7209 17.8309 20.7216 17.8302C20.7223 17.8295 20.7234 17.8286 20.7252 17.8279C20.7273 17.827 20.7292 17.8268 20.7299 17.8268V18.8268C21.2757 18.8268 21.7181 18.3843 21.7181 17.8386H20.7181ZM21.7181 16.9616C21.7181 16.4838 22.1054 16.0965 22.5832 16.0965L22.5831 15.0965C21.5531 15.0965 20.7181 15.9316 20.7181 16.9616H21.7181ZM20.6287 21.9136C21.3459 22.0712 21.9232 21.487 21.9232 20.8381H20.9232C20.9232 20.8789 20.9059 20.9087 20.8875 20.9248C20.8787 20.9324 20.871 20.9358 20.8658 20.9372C20.8616 20.9384 20.8549 20.9394 20.8433 20.9369L20.6287 21.9136ZM21.9232 9.65806C21.9232 9.00946 21.3462 8.42559 20.6293 8.58299L20.8438 9.55972C20.8554 9.55718 20.862 9.55825 20.8662 9.55939C20.8713 9.56079 20.8789 9.56414 20.8877 9.57177C20.9059 9.58771 20.9232 9.61741 20.9232 9.65806H21.9232ZM20.9942 10.8016C21.4923 10.6797 21.9232 10.2407 21.9232 9.65806H20.9232C20.9232 9.71207 20.8766 9.80089 20.7564 9.83031L20.9942 10.8016ZM15.5292 13.9192C15.3954 14.6137 15.9582 15.1719 16.5926 15.1719V14.1719C16.5589 14.1719 16.5345 14.1577 16.5213 14.1428C16.515 14.1357 16.5123 14.1296 16.5112 14.1258C16.5103 14.1227 16.5093 14.1178 16.5111 14.1084L15.5292 13.9192ZM16.6019 15.3685C15.9644 15.3685 15.3995 15.932 15.5394 16.6294L16.5199 16.4328C16.518 16.4233 16.5189 16.4182 16.5198 16.4152C16.5209 16.4113 16.5236 16.4051 16.5299 16.3979C16.5432 16.3828 16.5678 16.3685 16.6019 16.3685V15.3685ZM37.1705 16.3378C37.7809 15.3514 37.6326 14.0747 36.8124 13.2545L36.1053 13.9616C36.5974 14.4537 36.6864 15.2197 36.3202 15.8116L37.1705 16.3378ZM17.722 16.2908C17.6094 15.7929 17.1742 15.3685 16.6019 15.3685V16.3685C16.6465 16.3685 16.7231 16.4075 16.7466 16.5113L17.722 16.2908ZM19.8951 37.3838C20.8724 38.9632 23.1697 38.9633 24.147 37.3839L23.2967 36.8577C22.7103 37.8054 21.3319 37.8053 20.7455 36.8576L19.8951 37.3838ZM16.5926 15.1719C17.1683 15.1719 17.6047 14.7425 17.7139 14.241L16.7368 14.0282C16.7266 14.0751 16.7019 14.114 16.6729 14.1392C16.6453 14.1631 16.6179 14.1719 16.5926 14.1719V15.1719ZM23.6977 16.0964C24.2123 16.0963 24.6296 15.6791 24.6296 15.1644H23.6296C23.6296 15.1268 23.66 15.0964 23.6976 15.0964L23.6977 16.0964ZM29.3978 14.3637C29.4173 14.4609 29.4271 14.5598 29.4271 14.6589H30.4271C30.4271 14.4937 30.4107 14.3289 30.3782 14.1669L29.3978 14.3637ZM23.3726 8.58303C22.6558 8.42559 22.0787 9.00946 22.0787 9.65808H23.0787C23.0787 9.61743 23.096 9.58773 23.1143 9.57179C23.123 9.56416 23.1306 9.56082 23.1357 9.55942C23.14 9.55828 23.1465 9.55721 23.1581 9.55975L23.3726 8.58303ZM7.23227 13.2546C6.41211 14.0747 6.26378 15.3513 6.87404 16.3377L7.72444 15.8116C7.35828 15.2197 7.44728 14.4538 7.93938 13.9617L7.23227 13.2546ZM21.9232 20.8381C21.9232 20.2553 21.4922 19.8161 20.9938 19.694L20.7559 20.6653C20.8764 20.6948 20.9232 20.7838 20.9232 20.8381H21.9232ZM22.0787 9.65808C22.0787 10.2407 22.5096 10.6797 23.0077 10.8016L23.2455 9.83031C23.1254 9.80089 23.0787 9.71207 23.0787 9.65808H22.0787ZM20.9617 0.939339C21.5475 0.353553 22.4973 0.353554 23.083 0.93934L23.7902 0.232233C22.8138 -0.744077 21.2309 -0.744078 20.2546 0.232233L20.9617 0.939339Z" fill="white" mask="url(#path-4-inside-1_412_345)"/>
<defs>
<filter id="filter0_i_412_345" x="7" y="30" width="30" height="15" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="2"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_412_345"/>
</filter>
<filter id="filter1_f_412_345" x="9" y="29" width="26" height="17" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="2" result="effect1_foregroundBlur_412_345"/>
</filter>
<radialGradient id="paint0_radial_412_345" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(22 37.5) rotate(90) scale(7.5 15)">
<stop stop-color="#148DD2" stop-opacity="0"/>
<stop offset="1" stop-color="#148DD2"/>
</radialGradient>
<linearGradient id="paint1_linear_412_345" x1="22.0223" y1="0" x2="22.0223" y2="38.0684" gradientUnits="userSpaceOnUse">
<stop offset="0.78125" stop-color="#FA8167"/>
<stop offset="1" stop-color="white"/>
</linearGradient>
</defs>
</svg>
<svg id="组_1" data-name="组 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="44" height="49" viewBox="0 0 143 157">
<defs>
<style>
.cls-1 {
fill: url(#radial-gradient);
}
.cls-2, .cls-3 {
fill: #3286b8;
}
.cls-2, .cls-4 {
filter: url(#filter);
}
.cls-4 {
fill: #fff;
}
.cls-5, .cls-7 {
fill: none;
}
.cls-5 {
stroke: #148dd2;
stroke-width: 4px;
}
.cls-6 {
fill: #83f870;
}
.cls-6, .cls-7 {
fill-rule: evenodd;
}
.cls-7 {
stroke: #fff;
stroke-width: 2px;
}
</style>
<radialGradient id="radial-gradient" cx="-152.5" cy="58" r="1" gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#fff"/>
<stop offset="2.367" stop-color="#3789ba"/>
<stop offset="2.97" stop-color="#3789ba"/>
</radialGradient>
<filter id="filter" x="26" y="96" width="93" height="49" filterUnits="userSpaceOnUse">
<feGaussianBlur result="blur" stdDeviation="9.667" in="SourceAlpha"/>
<feFlood result="flood" flood-color="#3286b8"/>
<feComposite result="composite-2" operator="out" in2="blur"/>
<feComposite result="composite" operator="in" in2="SourceAlpha"/>
<feBlend result="blend" in2="SourceGraphic"/>
</filter>
</defs>
<ellipse id="椭圆_3" data-name="椭圆 3" class="cls-1" cx="-152.5" cy="58" rx="1.5" ry="1"/>
<ellipse id="椭圆_2_拷贝" data-name="椭圆 2 拷贝" class="cls-2" cx="72.5" cy="120.5" rx="46.5" ry="24.5"/>
<ellipse id="椭圆_2_拷贝_4" data-name="椭圆 2 拷贝 4" class="cls-3" cx="72.5" cy="120.5" rx="46.5" ry="24.5"/>
<ellipse id="椭圆_2_拷贝_2" data-name="椭圆 2 拷贝 2" class="cls-4" cx="72.5" cy="120.5" rx="46.5" ry="24.5"/>
<ellipse id="椭圆_1" data-name="椭圆 1" class="cls-5" cx="72.5" cy="120.5" rx="68.5" ry="34.5"/>
<path id="形状_1" data-name="形状 1" class="cls-6" d="M58.4,10.547L72.074-2.141s1.8-3.651,9.469,4.229c8.183,8.407,39.979,37.888,41.03,40.179s0.4,3.263-5.261,11.631c-8.854,13.083-39.978,63.441-39.978,63.441s-5.707,3.066-8.416-4.229-39.8-62.031-41.03-65.556-1.92-4.265,3.156-9.516C38.224,30.32,58.4,10.547,58.4,10.547ZM89.275,67.4s-0.129,9.449-8.4,10.226c-8.935.839-9.6,0-9.6,0s-8.708-2.184-8.252-10.082,0-21.029,0-21.029V44.066s-0.2-9.656,9.752-10.37c0.356-.026.15-3.169,0.15-3.169h-3.3l-0.15,1.728s0.331,1.363-.3,1.44c-1.291.159-5.1,0-5.1,0s-1.023-.018-1.05-1.872c-0.038-2.514,0-9.794,0-9.794s-0.106-.984,1.5-0.864,3.751,0.144,3.751.144a1.051,1.051,0,0,1,1.2,1.008,19.85,19.85,0,0,1,0,2.017h3.3l0.15-3.025a2.89,2.89,0,0,1,3-2.3,3.422,3.422,0,0,1,3.451,2.3v3.025h2.851s2.678,0.787,2.7,2.737c0.036,3.126-2.4,3.457-2.4,3.457H79.372v1.3l10.052-.144a6.487,6.487,0,0,1,5.7,4.033c1.007,2.641.75,10.8,0.75,10.8a2.886,2.886,0,0,1,2.1,3.313,3.159,3.159,0,0,1-2.851,2.737s-3.507.072-3.6-2.881,2.1-3.169,2.1-3.169l-0.15-8.642S92.868,33.65,88.825,33.7c-4.182.048-8.252,0-8.252,0s6.6,2.089,7.8,5.473,0.9,4.9.9,4.9V67.4Z"/>
<path id="形状_1_拷贝" data-name="形状 1 拷贝" class="cls-7" d="M58.4,10.547L72.074-2.141s1.8-3.651,9.469,4.229c8.183,8.407,39.979,37.888,41.03,40.179s0.4,3.263-5.261,11.631c-8.854,13.083-39.978,63.441-39.978,63.441s-5.707,3.066-8.416-4.229-39.8-62.031-41.03-65.556-1.92-4.265,3.156-9.516C38.224,30.32,58.4,10.547,58.4,10.547Z"/>
</svg>
<svg width="44" height="52" viewBox="0 0 44 52" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_412_363)">
<ellipse cx="22" cy="39.6716" rx="15" ry="7.5" fill="url(#paint0_radial_412_363)"/>
</g>
<g filter="url(#filter1_f_412_363)">
<ellipse cx="22" cy="39.5" rx="9" ry="4.5" fill="white"/>
</g>
<path d="M43.5 40.1716C43.5 42.9178 41.2608 45.5386 37.3327 47.5026C33.4346 49.4517 28.0143 50.6716 22 50.6716C15.9857 50.6716 10.5654 49.4517 6.66726 47.5026C2.73919 45.5386 0.5 42.9178 0.5 40.1716C0.5 37.4255 2.73919 34.8047 6.66726 32.8407C10.5654 30.8916 15.9857 29.6716 22 29.6716C28.0143 29.6716 33.4346 30.8916 37.3327 32.8407C41.2608 34.8047 43.5 37.4255 43.5 40.1716Z" stroke="#148DD2"/>
<mask id="path-4-inside-1_412_363" fill="white">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22.9698 0.585787C22.1888 -0.195262 20.9224 -0.195263 20.1414 0.585786L7.11903 13.6081C6.4629 14.2643 6.34424 15.2855 6.83245 16.0746L19.8536 37.1207C20.6353 38.3843 22.4732 38.3843 23.2551 37.1208L36.2786 16.0747C36.7669 15.2856 36.6482 14.2642 35.9921 13.608L22.9698 0.585787ZM14.3287 15.8975C14.1473 15.8069 13.999 15.9167 13.999 16.1409V21.7247C13.999 21.9493 14.1473 22.0584 14.3287 21.9685L15.7239 21.2723C15.9055 21.182 16.0535 20.9252 16.0535 20.7006V20.7006C16.0535 20.2006 16.4588 19.7953 16.9588 19.7953H18.8805C19.026 19.7955 19.1685 19.7484 19.2912 19.6596C19.4139 19.5709 19.5118 19.4442 19.5731 19.2945L19.9607 18.3436C20.1117 17.9733 19.9572 17.5489 19.6036 17.3623L19.5023 17.3089C19.15 17.1229 18.7141 17.2815 18.5637 17.6505V17.6505C18.4603 17.9041 18.2136 18.07 17.9397 18.07H16.9594C16.4594 18.07 16.0541 17.6646 16.0541 17.1646V17.1646C16.0541 16.9404 15.9059 16.6833 15.7245 16.593L14.3287 15.8975ZM25.6646 18.2265C25.9566 18.3806 26.3178 18.2499 26.4436 17.9447V17.9447C26.6559 17.4296 26.0677 16.9542 25.6087 17.2698V17.2698C25.2617 17.5084 25.2922 18.0301 25.6646 18.2265V18.2265ZM27.7188 14.0721L18.2489 9.0758C18.0757 8.98493 17.8779 8.97538 17.6985 9.04923C17.5192 9.12308 17.3728 9.27436 17.2912 9.47013L15.6469 13.4604C15.5669 13.6566 15.5587 13.8807 15.6241 14.0838C15.6894 14.2868 15.823 14.4522 15.9956 14.5437L22.2404 17.8385C22.5996 18.0277 23.1704 17.9923 23.509 17.7598L27.7557 14.8398C28.0942 14.6073 28.0773 14.2621 27.7188 14.0721Z"/>
</mask>
<path fill-rule="evenodd" clip-rule="evenodd" d="M22.9698 0.585787C22.1888 -0.195262 20.9224 -0.195263 20.1414 0.585786L7.11903 13.6081C6.4629 14.2643 6.34424 15.2855 6.83245 16.0746L19.8536 37.1207C20.6353 38.3843 22.4732 38.3843 23.2551 37.1208L36.2786 16.0747C36.7669 15.2856 36.6482 14.2642 35.9921 13.608L22.9698 0.585787ZM14.3287 15.8975C14.1473 15.8069 13.999 15.9167 13.999 16.1409V21.7247C13.999 21.9493 14.1473 22.0584 14.3287 21.9685L15.7239 21.2723C15.9055 21.182 16.0535 20.9252 16.0535 20.7006V20.7006C16.0535 20.2006 16.4588 19.7953 16.9588 19.7953H18.8805C19.026 19.7955 19.1685 19.7484 19.2912 19.6596C19.4139 19.5709 19.5118 19.4442 19.5731 19.2945L19.9607 18.3436C20.1117 17.9733 19.9572 17.5489 19.6036 17.3623L19.5023 17.3089C19.15 17.1229 18.7141 17.2815 18.5637 17.6505V17.6505C18.4603 17.9041 18.2136 18.07 17.9397 18.07H16.9594C16.4594 18.07 16.0541 17.6646 16.0541 17.1646V17.1646C16.0541 16.9404 15.9059 16.6833 15.7245 16.593L14.3287 15.8975ZM25.6646 18.2265C25.9566 18.3806 26.3178 18.2499 26.4436 17.9447V17.9447C26.6559 17.4296 26.0677 16.9542 25.6087 17.2698V17.2698C25.2617 17.5084 25.2922 18.0301 25.6646 18.2265V18.2265ZM27.7188 14.0721L18.2489 9.0758C18.0757 8.98493 17.8779 8.97538 17.6985 9.04923C17.5192 9.12308 17.3728 9.27436 17.2912 9.47013L15.6469 13.4604C15.5669 13.6566 15.5587 13.8807 15.6241 14.0838C15.6894 14.2868 15.823 14.4522 15.9956 14.5437L22.2404 17.8385C22.5996 18.0277 23.1704 17.9923 23.509 17.7598L27.7557 14.8398C28.0942 14.6073 28.0773 14.2621 27.7188 14.0721Z" fill="url(#paint1_linear_412_363)"/>
<path d="M14.3287 15.8975L14.1051 16.3448L14.1057 16.345L14.3287 15.8975ZM14.3287 21.9685L14.5507 22.4165L14.5519 22.4159L14.3287 21.9685ZM15.7239 21.2723L15.5014 20.8245L15.5006 20.8249L15.7239 21.2723ZM18.8805 19.7953L18.8809 19.2953H18.8805V19.7953ZM19.2912 19.6596L18.9982 19.2545L18.9982 19.2545L19.2912 19.6596ZM19.5731 19.2945L20.0358 19.4841L20.0362 19.4832L19.5731 19.2945ZM15.7245 16.593L15.5015 17.0405L15.5017 17.0406L15.7245 16.593ZM18.2489 9.0758L18.4822 8.63357L18.4812 8.63304L18.2489 9.0758ZM27.7188 14.0721L27.9528 13.6303L27.9521 13.6299L27.7188 14.0721ZM17.6985 9.04923L17.8889 9.51157L17.8889 9.51157L17.6985 9.04923ZM17.2912 9.47013L16.8296 9.27783L16.8289 9.27963L17.2912 9.47013ZM15.6469 13.4604L15.1846 13.2699L15.1838 13.2717L15.6469 13.4604ZM15.6241 14.0838L15.1481 14.237L15.1481 14.237L15.6241 14.0838ZM15.9956 14.5437L15.7613 14.9854L15.7623 14.9859L15.9956 14.5437ZM22.2404 17.8385L22.0071 18.2807L22.0074 18.2809L22.2404 17.8385ZM23.509 17.7598L23.7921 18.1719L23.7923 18.1718L23.509 17.7598ZM27.7557 14.8398L27.4726 14.4277L27.4724 14.4278L27.7557 14.8398ZM19.9607 18.3436L19.4977 18.1548L19.9607 18.3436ZM19.6036 17.3623L19.3702 17.8045L19.6036 17.3623ZM36.2786 16.0747L36.7037 16.3378L36.2786 16.0747ZM35.9921 13.608L35.6385 13.9616L35.9921 13.608ZM19.8536 37.1207L19.4284 37.3838L19.8536 37.1207ZM20.1414 0.585786L19.7878 0.232233L20.1414 0.585786ZM22.9698 0.585787L22.6163 0.93934L22.6163 0.93934L22.9698 0.585787ZM7.47258 13.9617L20.4949 0.939339L19.7878 0.232233L6.76548 13.2546L7.47258 13.9617ZM20.2788 36.8576L7.25765 15.8116L6.40725 16.3377L19.4284 37.3838L20.2788 36.8576ZM35.8534 15.8116L22.8299 36.8577L23.6802 37.3839L36.7037 16.3378L35.8534 15.8116ZM22.6163 0.93934L35.6385 13.9616L36.3456 13.2545L23.3234 0.232233L22.6163 0.93934ZM14.499 16.1409C14.499 16.1277 14.5023 16.2225 14.393 16.3032C14.3379 16.3439 14.2737 16.364 14.214 16.3656C14.1572 16.3671 14.1195 16.352 14.1051 16.3448L14.5522 15.4503C14.3371 15.3428 14.0454 15.3166 13.7987 15.499C13.5699 15.6681 13.499 15.9299 13.499 16.1409H14.499ZM14.499 21.7247V16.1409H13.499V21.7247H14.499ZM14.1066 21.5205C14.1208 21.5135 14.1582 21.4986 14.2144 21.5001C14.2737 21.5017 14.3377 21.5216 14.3928 21.5623C14.5023 21.6431 14.499 21.7383 14.499 21.7247H13.499C13.499 21.9358 13.5699 22.1978 13.7989 22.3668C14.0453 22.5488 14.3363 22.5228 14.5507 22.4165L14.1066 21.5205ZM15.5006 20.8249L14.1054 21.5211L14.5519 22.4159L15.9471 21.7197L15.5006 20.8249ZM15.5535 20.7006C15.5535 20.7029 15.5529 20.7136 15.5477 20.7315C15.5425 20.7491 15.5343 20.7685 15.5236 20.7871C15.5128 20.8058 15.5021 20.8191 15.4947 20.8267C15.4867 20.8349 15.4877 20.8313 15.5014 20.8245L15.9464 21.72C16.1496 21.6191 16.2966 21.4486 16.39 21.2866C16.485 21.1216 16.5535 20.916 16.5535 20.7006H15.5535ZM18.8805 19.2953H16.9588V20.2953H18.8805V19.2953ZM18.9982 19.2545C18.9572 19.2842 18.9166 19.2954 18.8809 19.2953L18.88 20.2953C19.1354 20.2956 19.3798 20.2126 19.5842 20.0648L18.9982 19.2545ZM19.1105 19.1048C19.082 19.1745 19.0402 19.2241 18.9982 19.2545L19.5842 20.0648C19.7877 19.9177 19.9416 19.7139 20.0358 19.4841L19.1105 19.1048ZM19.4977 18.1548L19.1101 19.1057L20.0362 19.4832L20.4238 18.5323L19.4977 18.1548ZM19.2689 17.7511L19.3702 17.8045L19.8369 16.9201L19.7357 16.8667L19.2689 17.7511ZM16.9594 18.57H17.9397V17.57H16.9594V18.57ZM15.5017 17.0406C15.4879 17.0338 15.4869 17.0302 15.495 17.0384C15.5025 17.0461 15.5133 17.0595 15.5242 17.0784C15.5349 17.097 15.5432 17.1165 15.5483 17.1342C15.5536 17.1521 15.5541 17.1627 15.5541 17.1646H16.5541C16.5541 16.9492 16.4854 16.7435 16.3905 16.5788C16.2972 16.417 16.1503 16.2465 15.9473 16.1454L15.5017 17.0406ZM14.1057 16.345L15.5015 17.0405L15.9475 16.1455L14.5516 15.45L14.1057 16.345ZM18.0156 9.51802L27.4854 14.5143L27.9521 13.6299L18.4822 8.63357L18.0156 9.51802ZM17.8889 9.51157C17.9301 9.4946 17.9732 9.49578 18.0166 9.51855L18.4812 8.63304C18.1782 8.47407 17.8257 8.45615 17.5082 8.58689L17.8889 9.51157ZM17.7527 9.66243C17.7885 9.5765 17.8442 9.52998 17.8889 9.51157L17.5082 8.58689C17.1941 8.71619 16.957 8.97222 16.8296 9.27783L17.7527 9.66243ZM16.1091 13.6509L17.7535 9.66063L16.8289 9.27963L15.1846 13.2699L16.1091 13.6509ZM16.1 13.9306C16.0704 13.8386 16.0747 13.7356 16.1099 13.649L15.1838 13.2717C15.0592 13.5776 15.047 13.9229 15.1481 14.237L16.1 13.9306ZM16.2298 14.102C16.1835 14.0774 16.1295 14.0222 16.1 13.9306L15.1481 14.237C15.2494 14.5515 15.4626 14.827 15.7613 14.9854L16.2298 14.102ZM22.4737 17.3963L16.2289 14.1015L15.7623 14.9859L22.0071 18.2807L22.4737 17.3963ZM23.2259 17.3476C23.1482 17.401 23.014 17.4482 22.8515 17.4582C22.6886 17.4684 22.5526 17.4378 22.4734 17.3961L22.0074 18.2809C22.2874 18.4284 22.6165 18.4747 22.9134 18.4563C23.2107 18.4379 23.5312 18.3511 23.7921 18.1719L23.2259 17.3476ZM27.4724 14.4278L23.2257 17.3477L23.7923 18.1718L28.039 15.2518L27.4724 14.4278ZM27.4847 14.5139C27.5216 14.5335 27.528 14.5456 27.5224 14.5382C27.5154 14.5287 27.5011 14.5028 27.4992 14.4641C27.4974 14.4257 27.509 14.4004 27.5133 14.3931C27.5165 14.3878 27.5092 14.4026 27.4726 14.4277L28.0388 15.252C28.3 15.0725 28.5157 14.7819 28.4981 14.4159C28.4802 14.0472 28.2345 13.7795 27.9528 13.6303L27.4847 14.5139ZM25.3254 16.8578C24.6687 17.3093 24.7264 18.2969 25.4313 18.6687L25.8979 17.7843C25.858 17.7633 25.8548 17.7074 25.8919 17.6819L25.3254 16.8578ZM26.9059 18.1352C27.3077 17.1603 26.1943 16.2604 25.3254 16.8578L25.8919 17.6819C25.9041 17.6735 25.9122 17.6707 25.9162 17.6696C25.9203 17.6685 25.9238 17.6682 25.9273 17.6685C25.9353 17.669 25.9491 17.673 25.9636 17.6846C25.978 17.6963 25.9848 17.709 25.987 17.7167C25.988 17.7201 25.9885 17.7236 25.9882 17.7278C25.988 17.7319 25.987 17.7405 25.9813 17.7541L26.9059 18.1352ZM16.9594 17.57C16.7356 17.57 16.5541 17.3885 16.5541 17.1646H15.5541C15.5541 17.9408 16.1833 18.57 16.9594 18.57V17.57ZM18.1007 17.4617C18.074 17.5272 18.0104 17.57 17.9397 17.57V18.57C18.4169 18.57 18.8466 18.2811 19.0267 17.8392L18.1007 17.4617ZM19.7357 16.8667C19.122 16.5428 18.3627 16.8191 18.1007 17.4617L19.0267 17.8392C19.0655 17.744 19.178 17.7031 19.2689 17.7511L19.7357 16.8667ZM20.4238 18.5323C20.6717 17.924 20.4179 17.2267 19.8369 16.9201L19.3702 17.8045C19.4965 17.8711 19.5516 18.0226 19.4977 18.1548L20.4238 18.5323ZM36.7037 16.3378C37.3141 15.3514 37.1658 14.0747 36.3456 13.2545L35.6385 13.9616C36.1306 14.4537 36.2196 15.2197 35.8534 15.8116L36.7037 16.3378ZM19.4284 37.3838C20.4056 38.9632 22.7029 38.9633 23.6802 37.3839L22.8299 36.8577C22.2435 37.8054 20.8651 37.8053 20.2788 36.8576L19.4284 37.3838ZM20.4949 0.939339C21.0807 0.353553 22.0305 0.353554 22.6163 0.93934L23.3234 0.232233C22.347 -0.744077 20.7641 -0.744078 19.7878 0.232233L20.4949 0.939339ZM25.9813 17.7541C25.9679 17.7868 25.9292 17.8008 25.8979 17.7843L25.4313 18.6687C25.984 18.9603 26.6677 18.713 26.9059 18.1352L25.9813 17.7541ZM16.5535 20.7006C16.5535 20.4768 16.7349 20.2953 16.9588 20.2953V19.2953C16.1827 19.2953 15.5535 19.9245 15.5535 20.7006H16.5535ZM6.76548 13.2546C5.94531 14.0747 5.79698 15.3513 6.40725 16.3377L7.25765 15.8116C6.89149 15.2197 6.98048 14.4538 7.47258 13.9617L6.76548 13.2546Z" fill="white" mask="url(#path-4-inside-1_412_363)"/>
<defs>
<filter id="filter0_i_412_363" x="7" y="32.1716" width="30" height="15" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="2"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_412_363"/>
</filter>
<filter id="filter1_f_412_363" x="9" y="31" width="26" height="17" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="2" result="effect1_foregroundBlur_412_363"/>
</filter>
<radialGradient id="paint0_radial_412_363" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(22 39.6716) rotate(90) scale(7.5 15)">
<stop stop-color="#148DD2" stop-opacity="0"/>
<stop offset="1" stop-color="#148DD2"/>
</radialGradient>
<linearGradient id="paint1_linear_412_363" x1="21.5555" y1="0" x2="21.5555" y2="38.0684" gradientUnits="userSpaceOnUse">
<stop offset="0.78125" stop-color="#436CFF"/>
<stop offset="1" stop-color="white"/>
</linearGradient>
</defs>
</svg>
<svg width="453" height="230" viewBox="0 0 453 230" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_377_3153)">
<path d="M2 10.4457C2 8.23669 3.66286 6.44568 5.87192 6.44426C39.6997 6.42248 287.207 6.1226 431.947 2.00022C433.778 1.94806 445.401 11.2163 449.539 14.5656C450.47 15.3185 451 16.448 451 17.6449V33.8783C451 34.5502 450.826 35.2191 450.504 35.8087C421.742 88.4255 407.744 125.259 387.054 224.768C386.667 226.626 385.023 228 383.126 228H318.745H265.954H251H247H239H231H213.5H203.5H200H191.292H186.768H160.373H107.582H5.99999C3.79086 228 2 226.209 2 224V10.4457Z" fill="#148DD2" fill-opacity="0.01"/>
</g>
<path d="M450.065 35.5689C421.273 88.2411 407.261 125.125 386.564 224.666C386.225 226.299 384.779 227.5 383.126 227.5H318.745H265.954H251H247H239H231H213.5H203.5H200H191.292H186.768H160.373H107.582H5.99999C4.067 227.5 2.5 225.933 2.5 224V10.4457C2.5 8.49133 3.9601 6.94549 5.87224 6.94426C39.6983 6.92249 287.213 6.62264 431.961 2.50002C431.983 2.4994 432.066 2.50812 432.234 2.5675C432.393 2.62339 432.592 2.7115 432.832 2.83343C433.311 3.07705 433.915 3.43732 434.614 3.8903C436.012 4.79506 437.756 6.04549 439.579 7.40788C443.223 10.1312 447.157 13.2807 449.225 14.9542C450.036 15.6107 450.5 16.5964 450.5 17.6449V33.8783C450.5 34.4649 450.348 35.0516 450.065 35.5689Z" stroke="#148DD2"/>
<g filter="url(#filter1_d_377_3153)">
<path d="M444.5 46L450.5 35V16C450.5 16 439 6 432 2.5L421 3" stroke="#148DD2" stroke-width="2"/>
</g>
<g filter="url(#filter2_d_377_3153)">
<path d="M2.5 216V227.5H13.5" stroke="#148DD2" stroke-width="2"/>
</g>
<g filter="url(#filter3_d_377_3153)">
<path d="M2 18.5V7H13" stroke="#148DD2" stroke-width="2"/>
</g>
<defs>
<filter id="filter0_i_377_3153" x="2" y="2" width="449" height="226" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="7"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.0784314 0 0 0 0 0.552941 0 0 0 0 0.823529 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_377_3153"/>
</filter>
<filter id="filter1_d_377_3153" x="419.955" y="0.489258" width="32.5449" height="46.9895" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3153"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3153" result="shape"/>
</filter>
<filter id="filter2_d_377_3153" x="0.5" y="215" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3153"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3153" result="shape"/>
</filter>
<filter id="filter3_d_377_3153" x="0" y="5" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3153"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3153" result="shape"/>
</filter>
</defs>
</svg>
<svg width="427" height="394" viewBox="0 0 427 394" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_377_3170)">
<path d="M383 7.00001C383 4.79087 381.209 3 379 3H185H172.5H154H146H144.25H96.5H5.64163C3.19723 3 1.32598 5.17995 1.67811 7.59885C17.3323 115.131 17.7427 215.617 0.592084 348.454C0.282711 350.851 2.14384 353 4.55992 353H92.5H146H153H174.5H185H379C381.209 353 383 351.209 383 349V7.00001Z" fill="#148DD2" fill-opacity="0.01"/>
</g>
<path d="M2.17288 7.52682C17.8345 115.111 18.2435 215.643 1.08798 348.518C0.816589 350.62 2.45029 352.5 4.55994 352.5H92.5H146H153H174.5H185H379C380.933 352.5 382.5 350.933 382.5 349V7.00001C382.5 5.06701 380.933 3.5 379 3.5H185H172.5H154H146H144.25H96.5H5.64163C3.50452 3.5 1.86432 5.4071 2.17288 7.52682Z" stroke="#148DD2"/>
<g filter="url(#filter1_d_377_3170)">
<path d="M382.5 14V2.5H371.5" stroke="#148DD2" stroke-width="2"/>
</g>
<g filter="url(#filter2_d_377_3170)">
<path d="M382.5 342V353.5H371.5" stroke="#148DD2" stroke-width="2"/>
</g>
<defs>
<filter id="filter0_i_377_3170" x="0.558594" y="3" width="382.441" height="350" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="7"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.0784314 0 0 0 0 0.552941 0 0 0 0 0.823529 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_377_3170"/>
</filter>
<filter id="filter1_d_377_3170" x="370.5" y="0.5" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3170"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3170" result="shape"/>
</filter>
<filter id="filter2_d_377_3170" x="370.5" y="341" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3170"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3170" result="shape"/>
</filter>
</defs>
</svg>
<svg width="462" height="308" viewBox="0 0 462 308" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_377_3175)">
<path d="M460 6.00002C460 3.79088 458.252 2.00003 456.043 2.00003C436.772 2.00003 350.087 2.00003 262.004 2.00002H246.5C242.365 2.00002 234.113 2.00002 230 2.00002H223.599C149.603 2.00001 94.6389 2 79.422 2.00001C77.4518 2.00001 75.7685 3.48013 75.4614 5.42622C56.3611 126.477 41.3375 173.531 0.908267 302.156C0.384377 303.823 0.894216 305 2.64136 305C37.8828 305 414.589 305 456.262 305C458.471 305 460 303.209 460 301V6.00002Z" fill="#3CC4FF" fill-opacity="0.01"/>
</g>
<path d="M75.9553 5.50415C57.0807 125.125 42.1814 172.523 2.845 297.662L1.38525 302.306C1.14081 303.084 1.17709 303.632 1.35983 303.959C1.52225 304.251 1.87866 304.5 2.64136 304.5H2.85175H3.06995H3.29587H3.52954H3.77087H4.0199H4.27655H4.5408H4.81265H5.09201H5.37891H5.67328H5.9751H6.28433H6.60098H6.92499H7.25632H7.59494H7.94083H8.29398H8.65433H9.02188H9.39655H9.77835H10.1673H10.5632H10.9662H11.3762H11.7931H12.217H12.6478H13.0855H13.53H13.9814H14.4395H14.9044H15.376H15.8543H16.3393H16.8309H17.3291H17.8339H18.3452H18.8631H19.3874H19.9182H20.4554H20.9991H21.549H22.1053H22.6679H23.2368H23.812H24.3933H24.9808H25.5745H26.1743H26.7802H27.3921H28.0101H28.6341H29.264H29.8999H30.5417H31.1894H31.843H32.5023H33.1675H33.8384H34.515H35.1973H35.8853H36.579H37.2782H37.983H38.6934H39.4093H40.1306H40.8575H41.5898H42.3274H43.0704H43.8188H44.5724H45.3314H46.0956H46.8649H47.6395H48.4193H49.2041H49.994H50.7891H51.5891H52.3942H53.2042H54.0192H54.8391H55.6638H56.4934H57.3279H58.1671H59.011H59.8598H60.7132H61.5713H62.434H63.3013H64.1732H65.0497H65.9307H66.8162H67.7061H68.6005H69.4992H70.4024H71.3098H72.2216H73.1377H74.058H74.9825H75.9112H76.844H77.781H78.7221H79.6672H80.6164H81.5696H82.5268H83.4879H84.4529H85.4218H86.3945H87.3711H88.3515H89.3356H90.3235H91.3151H92.3103H93.3092H94.3117H95.3178H96.3274H97.3405H98.3572H99.3773H100.401H101.428H102.458H103.492H104.529H105.569H106.612H107.659H108.709H109.762H110.818H111.877H112.94H114.005H115.074H116.145H117.219H118.296H119.377H120.46H121.545H122.634H123.725H124.819H125.916H127.016H128.118H129.222H130.33H131.44H132.552H133.667H134.784H135.904H137.026H138.151H139.278H140.407H141.538H142.672H143.808H144.946H146.086H147.229H148.373H149.52H150.669H151.819H152.972H154.126H155.283H156.441H157.602H158.764H159.928H161.093H162.261H163.43H164.6H165.773H166.947H168.122H169.3H170.478H171.658H172.84H174.023H175.208H176.394H177.581H178.769H179.959H181.15H182.342H183.536H184.73H185.926H187.123H188.321H189.52H190.72H191.921H193.123H194.326H195.529H196.734H197.939H199.146H200.353H201.56H202.769H203.978H205.188H206.398H207.609H208.821H210.033H211.245H212.458H213.672H214.885H216.1H217.314H218.529H219.744H220.96H222.175H223.391H224.607H225.823H227.04H228.256H229.472H230.689H231.905H233.121H234.338H235.554H236.77H237.986H239.201H240.417H241.632H242.847H244.061H245.275H246.489H247.703H248.916H250.128H251.34H252.552H253.762H254.973H256.182H257.391H258.6H259.807H261.014H262.22H263.426H264.63H265.834H267.036H268.238H269.439H270.639H271.838H273.036H274.232H275.428H276.622H277.816H279.008H280.199H281.388H282.577H283.764H284.949H286.134H287.317H288.498H289.678H290.857H292.033H293.209H294.383H295.555H296.725H297.894H299.061H300.227H301.39H302.552H303.712H304.87H306.027H307.181H308.333H309.484H310.632H311.778H312.923H314.065H315.205H316.343H317.478H318.612H319.743H320.872H321.998H323.123H324.245H325.364H326.481H327.596H328.708H329.817H330.924H332.028H333.13H334.229H335.326H336.42H337.511H338.599H339.684H340.767H341.846H342.923H343.997H345.068H346.136H347.201H348.263H349.322H350.378H351.43H352.48H353.526H354.569H355.609H356.645H357.679H358.709H359.735H360.758H361.778H362.794H363.807H364.816H365.821H366.823H367.822H368.817H369.808H370.795H371.779H372.759H373.735H374.707H375.675H376.64H377.6H378.557H379.51H380.458H381.403H382.343H383.28H384.212H385.14H386.064H386.984H387.899H388.811H389.718H390.62H391.518H392.412H393.301H394.186H395.067H395.943H396.814H397.681H398.543H399.4H400.253H401.101H401.944H402.783H403.617H404.446H405.27H406.089H406.903H407.713H408.517H409.317H410.111H410.9H411.684H412.463H413.237H414.006H414.77H415.528H416.281H417.028H417.771H418.508H419.239H419.965H420.686H421.401H422.111H422.815H423.513H424.206H424.893H425.575H426.251H426.921H427.585H428.244H428.897H429.544H430.185H430.82H431.449H432.072H432.689H433.3H433.906H434.505H435.097H435.684H436.265H436.839H437.407H437.969H438.524H439.073H439.616H440.152H440.682H441.206H441.723H442.233H442.737H443.235H443.725H444.209H444.687H445.158H445.622H446.079H446.529H446.973H447.41H447.84H448.263H448.679H449.088H449.49H449.885H450.273H450.653H451.027H451.394H451.753H452.105H452.45H452.788H453.118H453.441H453.757H454.065H454.366H454.66H454.945H455.224H455.495H455.758H456.014H456.262C458.151 304.5 459.5 302.979 459.5 301V6.00002C459.5 4.0599 457.969 2.50003 456.043 2.50003L262.004 2.50002H246.5H230H223.599L79.422 2.50001C77.7052 2.50001 76.2252 3.79375 75.9553 5.50415Z" stroke="#3CC4FF"/>
<g filter="url(#filter1_d_377_3175)">
<path d="M459.5 14V2.5H448.5" stroke="#148DD2" stroke-width="2"/>
</g>
<g filter="url(#filter2_d_377_3175)">
<path d="M459.5 294V305.5H448.5" stroke="#148DD2" stroke-width="2"/>
</g>
<defs>
<filter id="filter0_i_377_3175" x="0.712891" y="2" width="459.287" height="303" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="7"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.235294 0 0 0 0 0.768627 0 0 0 0 1 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_377_3175"/>
</filter>
<filter id="filter1_d_377_3175" x="447.5" y="0.5" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3175"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3175" result="shape"/>
</filter>
<filter id="filter2_d_377_3175" x="447.5" y="293" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3175"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3175" result="shape"/>
</filter>
</defs>
</svg>
<svg width="453" height="263" viewBox="0 0 453 263" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_377_3164)">
<path d="M451 11.0949C451 8.88586 449.337 7.09483 447.128 7.0932C413.3 7.06825 165.793 6.72458 21.0535 2.00025C19.1908 1.93945 7.19997 12.9272 3.25563 16.5906C2.44771 17.341 2 18.3879 2 19.4906V38.7996C2 39.3967 2.13734 39.9937 2.39452 40.5326C31.2559 101.011 45.2617 143.213 66.0133 257.665C66.3585 259.569 68.0242 261 69.9596 261H134.255H187.046H202H206H214H219.5H232.5H244.5H253H261.708H266.232H292.627H345.418H447C449.209 261 451 259.209 451 257V11.0949Z" fill="#148DD2" fill-opacity="0.01"/>
</g>
<path d="M2.84576 40.3172C31.732 100.848 45.7486 143.096 66.5052 257.576C66.8087 259.249 68.2732 260.5 69.9597 260.5H134.255H187.046H202H206H214H219.5H232.5H244.5H253H261.708H266.232H292.627H345.418H447C448.933 260.5 450.5 258.933 450.5 257V11.0949C450.5 9.14051 449.04 7.59461 447.128 7.5932C413.302 7.56825 165.786 7.22462 21.0372 2.49999L21.0371 2.5C21.0348 2.50009 21.014 2.50082 20.9696 2.51178C20.922 2.52355 20.8589 2.54411 20.779 2.57674C20.6183 2.64234 20.4148 2.74622 20.1689 2.89061C19.678 3.17893 19.0582 3.6051 18.3402 4.1401C16.9064 5.20853 15.1199 6.68194 13.2609 8.27818C9.54486 11.469 5.56677 15.1264 3.59589 16.957C2.89182 17.6109 2.5 18.5242 2.5 19.4906V38.7996C2.5 39.321 2.62015 39.8445 2.84576 40.3172Z" stroke="#148DD2"/>
<g filter="url(#filter1_d_377_3164)">
<path d="M7.5 50.5L2.5 39.5V18C2.5 18 14.5 6.5 21 2.5L32 3" stroke="#148DD2" stroke-width="2"/>
</g>
<g filter="url(#filter2_d_377_3164)">
<path d="M451 249V260.5H440" stroke="#148DD2" stroke-width="2"/>
</g>
<g filter="url(#filter3_d_377_3164)">
<path d="M450.5 18.5V7H439.5" stroke="#148DD2" stroke-width="2"/>
</g>
<defs>
<filter id="filter0_i_377_3164" x="2" y="2" width="449" height="259" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="7"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.0784314 0 0 0 0 0.552941 0 0 0 0 0.823529 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_377_3164"/>
</filter>
<filter id="filter1_d_377_3164" x="0.5" y="0.487061" width="32.5449" height="51.4268" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3164"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3164" result="shape"/>
</filter>
<filter id="filter2_d_377_3164" x="439" y="248" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3164"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3164" result="shape"/>
</filter>
<filter id="filter3_d_377_3164" x="438.5" y="5" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3164"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3164" result="shape"/>
</filter>
</defs>
</svg>
<svg width="385" height="387" viewBox="0 0 385 387" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_377_3159)">
<path d="M2 6C2 3.79086 3.79086 2 6 2H200H204H220H234.5H239H240.75H288.5H379.417C381.841 2 383.707 4.146 383.386 6.54881C367.652 124.53 367.233 234.703 384.464 380.498C384.745 382.88 382.889 385 380.491 385H292.5H239H235.5H204H200H6C3.79087 385 2 383.209 2 381V6Z" fill="#148DD2" fill-opacity="0.01"/>
</g>
<path d="M382.891 6.48271C367.15 124.511 366.732 234.726 383.967 380.557C384.214 382.646 382.585 384.5 380.491 384.5H292.5H239H235.5H204H200H6C4.06701 384.5 2.5 382.933 2.5 381V6C2.5 4.067 4.067 2.5 6 2.5H200H204H220H234.5H239H240.75H288.5H379.417C381.537 2.5 383.171 4.37739 382.891 6.48271Z" stroke="#148DD2"/>
<g filter="url(#filter1_d_377_3159)">
<path d="M2 13.5V2H13" stroke="#148DD2" stroke-width="2"/>
</g>
<g filter="url(#filter2_d_377_3159)">
<path d="M2 373V384.5H13" stroke="#148DD2" stroke-width="2"/>
</g>
<defs>
<filter id="filter0_i_377_3159" x="2" y="2" width="382.492" height="383" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="7"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.0784314 0 0 0 0 0.552941 0 0 0 0 0.823529 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_377_3159"/>
</filter>
<filter id="filter1_d_377_3159" x="0" y="0" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3159"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3159" result="shape"/>
</filter>
<filter id="filter2_d_377_3159" x="0" y="372" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3159"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3159" result="shape"/>
</filter>
</defs>
</svg>
<svg width="464" height="308" viewBox="0 0 464 308" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_377_3180)">
<path d="M2 7.00002C2 4.79088 3.74762 3.00002 5.95675 3.00002C25.228 3.00002 111.913 3.00002 199.996 3.00001H204C208.135 3.00001 230.887 3.00002 235 3.00002L238.401 3.00001C312.397 3 367.361 2.99999 382.578 3.00001C384.548 3.00001 386.232 4.48012 386.539 6.42621C405.639 127.477 420.663 174.531 461.092 303.156C461.616 304.823 461.106 306 459.359 306C424.117 306 47.4111 306 5.73847 306C3.52933 306 2 304.209 2 302V7.00002Z" fill="#148DD2" fill-opacity="0.01"/>
</g>
<path d="M386.045 6.50414C404.919 126.125 419.819 173.523 459.155 298.662L460.615 303.306C460.859 304.084 460.823 304.632 460.64 304.959C460.478 305.251 460.121 305.5 459.359 305.5H459.148H458.93H458.704H458.47H458.229H457.98H457.723H457.459H457.187H456.908H456.621H456.327H456.025H455.716H455.399H455.075H454.744H454.405H454.059H453.706H453.346H452.978H452.603H452.222H451.833H451.437H451.034H450.624H450.207H449.783H449.352H448.914H448.47H448.019H447.561H447.096H446.624H446.146H445.661H445.169H444.671H444.166H443.655H443.137H442.613H442.082H441.545H441.001H440.451H439.895H439.332H438.763H438.188H437.607H437.019H436.426H435.826H435.22H434.608H433.99H433.366H432.736H432.1H431.458H430.811H430.157H429.498H428.833H428.162H427.485H426.803H426.115H425.421H424.722H424.017H423.307H422.591H421.869H421.143H420.41H419.673H418.93H418.181H417.428H416.669H415.904H415.135H414.36H413.581H412.796H412.006H411.211H410.411H409.606H408.796H407.981H407.161H406.336H405.507H404.672H403.833H402.989H402.14H401.287H400.429H399.566H398.699H397.827H396.95H396.069H395.184H394.294H393.4H392.501H391.598H390.69H389.778H388.862H387.942H387.018H386.089H385.156H384.219H383.278H382.333H381.384H380.43H379.473H378.512H377.547H376.578H375.605H374.629H373.649H372.664H371.677H370.685H369.69H368.691H367.688H366.682H365.673H364.659H363.643H362.623H361.599H360.572H359.542H358.508H357.471H356.431H355.388H354.341H353.291H352.238H351.182H350.123H349.06H347.995H346.926H345.855H344.781H343.704H342.623H341.54H340.455H339.366H338.275H337.181H336.084H334.984H333.882H332.778H331.67H330.56H329.448H328.333H327.216H326.096H324.974H323.849H322.722H321.593H320.462H319.328H318.192H317.054H315.914H314.771H313.627H312.48H311.331H310.181H309.028H307.874H306.717H305.559H304.398H303.236H302.072H300.907H299.739H298.57H297.4H296.227H295.053H293.878H292.7H291.522H290.342H289.16H287.977H286.792H285.606H284.419H283.231H282.041H280.85H279.658H278.464H277.27H276.074H274.877H273.679H272.48H271.28H270.079H268.877H267.674H266.471H265.266H264.061H262.854H261.647H260.44H259.231H258.022H256.812H255.602H254.391H253.179H251.967H250.755H249.542H248.328H247.115H245.9H244.686H243.471H242.256H241.04H239.825H238.609H237.393H236.177H234.96H233.744H232.528H231.311H230.095H228.879H227.662H226.446H225.23H224.014H222.799H221.583H220.368H219.153H217.939H216.725H215.511H214.297H213.084H211.872H210.66H209.448H208.238H207.027H205.818H204.609H203.4H202.193H200.986H199.78H198.574H197.37H196.166H194.964H193.762H192.561H191.361H190.162H188.964H187.768H186.572H185.378H184.184H182.992H181.801H180.612H179.423H178.236H177.051H175.866H174.683H173.502H172.322H171.143H169.967H168.791H167.617H166.445H165.275H164.106H162.939H161.773H160.61H159.448H158.288H157.13H155.973H154.819H153.667H152.516H151.368H150.222H149.077H147.935H146.795H145.657H144.522H143.388H142.257H141.128H140.002H138.877H137.755H136.636H135.519H134.404H133.292H132.183H131.076H129.972H128.87H127.771H126.674H125.58H124.489H123.401H122.316H121.233H120.154H119.077H118.003H116.932H115.864H114.799H113.737H112.678H111.622H110.57H109.52H108.474H107.431H106.391H105.355H104.321H103.291H102.265H101.242H100.222H99.2061H98.1934H97.1842H96.1786H95.1766H94.1782H93.1834H92.1923H91.205H90.2213H89.2415H88.2654H87.2931H86.3247H85.3602H84.3997H83.443H82.4904H81.5417H80.5971H79.6566H78.7201H77.7878H76.8597H75.9357H75.016H74.1005H73.1893H72.2824H71.3799H70.4817H69.5879H68.6986H67.8137H66.9333H66.0574H65.1861H64.3194H63.4573H62.5998H61.747H60.8989H60.0556H59.217H58.3832H57.5542H56.7301H55.9109H55.0966H54.2872H53.4828H52.6834H51.8891H51.0998H50.3156H49.5366H48.7627H47.994H47.2305H46.4722H45.7193H44.9716H44.2293H43.4924H42.7608H42.0347H41.3141H40.5989H39.8893H39.1852H38.4867H37.7938H37.1066H36.425H35.7491H35.079H34.4146H33.756H33.1033H32.4564H31.8153H31.1802H30.5511H29.9279H29.3107H28.6995H28.0945H27.4955H26.9026H26.3159H25.7354H25.1611H24.593H24.0312H23.4758H22.9266H22.3839H21.8475H21.3176H20.7941H20.2771H19.7666H19.2627H18.7654H18.2746H17.7905H17.3131H16.8424H16.3784H15.9212H15.4707H15.0271H14.5903H14.1605H13.7375H13.3215H12.9124H12.5103H12.1153H11.7274H11.3465H10.9728H10.6062H10.2468H9.89459H9.54965H9.21198H8.88162H8.5586H8.24294H7.93468H7.63384H7.34046H7.05457H6.77619H6.50536H6.24211H5.98647H5.73847C3.84896 305.5 2.5 303.979 2.5 302V7.00002C2.5 5.0599 4.03082 3.50002 5.95675 3.50002L199.996 3.50001H204L235 3.50002L238.401 3.50001L382.578 3.50001C384.295 3.50001 385.775 4.79375 386.045 6.50414Z" stroke="#148DD2"/>
<g filter="url(#filter1_d_377_3180)">
<path d="M2 14V2.5H13" stroke="#148DD2" stroke-width="2"/>
</g>
<g filter="url(#filter2_d_377_3180)">
<path d="M2 294V305.5H13" stroke="#148DD2" stroke-width="2"/>
</g>
<g filter="url(#filter3_d_377_3180)">
<path d="M453 279C454.5 284 459 298 461.5 305.5C458 305.5 451 305.5 451 305.5" stroke="#148DD2" stroke-width="2"/>
</g>
<defs>
<filter id="filter0_i_377_3180" x="2" y="3" width="459.287" height="303" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="7"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.0784314 0 0 0 0 0.552941 0 0 0 0 0.823529 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_377_3180"/>
</filter>
<filter id="filter1_d_377_3180" x="0" y="0.5" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3180"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3180" result="shape"/>
</filter>
<filter id="filter2_d_377_3180" x="0" y="293" width="14" height="14.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3180"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3180" result="shape"/>
</filter>
<filter id="filter3_d_377_3180" x="450" y="277.713" width="13.8867" height="29.7871" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="0.5"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.8 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_377_3180"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_377_3180" result="shape"/>
</filter>
</defs>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="67" height="67" viewBox="0 0 67 67">
<defs>
<style>
.cls-1 {
fill: #a16def;
fill-rule: evenodd;
}
</style>
</defs>
<path id="dollar_coins" data-name="dollar coins" class="cls-1" d="M33.5,0A33.5,33.5,0,1,1,0,33.5,33.5,33.5,0,0,1,33.5,0ZM51,43H31a5.45,5.45,0,0,0,1-2H51c0.859,0,1,.116,1,1S51.859,43,51,43Zm0-5H33a7.451,7.451,0,0,0,.074-1.2A3.312,3.312,0,0,0,33,36H51c0.859,0,1-.084,1,0.8S51.859,38,51,38Zm0-5H33a5.449,5.449,0,0,0-1-2H51c0.859,0,1,.116,1,1S51.859,33,51,33Zm0-5H30c-1.012-1.3-1.576-1.189-3-2H51c0.859,0,1,.116,1,1S51.859,28,51,28Zm0-5H25c-0.859,0-1-.116-1-1s1.141-1,2-1H51c0.859,0,1,.116,1,1S51.859,23,51,23Zm0-5H25c-0.859,0-1-.116-1-1s0.7-1,1.555-1H51c0.859,0,1,.116,1,1S51.859,18,51,18ZM31.778,36.8A11.048,11.048,0,0,1,20.889,48a11.2,11.2,0,0,1,0-22.4A11.048,11.048,0,0,1,31.778,36.8Zm-7.035,1.218a3.413,3.413,0,0,0-.612-1,4.018,4.018,0,0,0-.865-0.73,9.664,9.664,0,0,0-.991-0.545q-0.506-.24-0.991-0.455a6.524,6.524,0,0,1-.87-0.46,2.217,2.217,0,0,1-.612-0.56,1.232,1.232,0,0,1-.228-0.745,1.481,1.481,0,0,1,.1-0.547,1.144,1.144,0,0,1,.311-0.443,1.5,1.5,0,0,1,.52-0.289,2.3,2.3,0,0,1,.729-0.1,3.416,3.416,0,0,1,.981.134,5.4,5.4,0,0,1,.787.3q0.34,0.163.573,0.3a0.8,0.8,0,0,0,.34.139,0.236,0.236,0,0,0,.17-0.06,0.4,0.4,0,0,0,.1-0.19,1.875,1.875,0,0,0,.049-0.331q0.014-.2.014-0.491,0-.26-0.01-0.435a2,2,0,0,0-.034-0.291,0.833,0.833,0,0,0-.058-0.185,0.712,0.712,0,0,0-.132-0.169,1.6,1.6,0,0,0-.4-0.248,4.615,4.615,0,0,0-.69-0.268,6.024,6.024,0,0,0-.836-0.189c-0.061-.009-0.122-0.007-0.183-0.014V28.49h-1.53v1.654h0a5.442,5.442,0,0,0-.818.174,3.807,3.807,0,0,0-1.341.694,3.339,3.339,0,0,0-.9,1.169,3.766,3.766,0,0,0-.335,1.634,3.722,3.722,0,0,0,.233,1.389,3.451,3.451,0,0,0,.607,1,4,4,0,0,0,.85.73,8.805,8.805,0,0,0,.981.545q0.505,0.24.981,0.455a6.228,6.228,0,0,1,.85.46,2.333,2.333,0,0,1,.607.559,1.232,1.232,0,0,1,.233.754,1.7,1.7,0,0,1-.136.691,1.377,1.377,0,0,1-.394.521,1.849,1.849,0,0,1-.626.325,2.806,2.806,0,0,1-.836.115,4.285,4.285,0,0,1-1.249-.165,5.649,5.649,0,0,1-.928-0.364,6.68,6.68,0,0,1-.636-0.364,0.8,0.8,0,0,0-.384-0.165,0.274,0.274,0,0,0-.17.055,0.375,0.375,0,0,0-.117.185,1.543,1.543,0,0,0-.063.34q-0.019.211-.019,0.521a3.557,3.557,0,0,0,.053.706,0.749,0.749,0,0,0,.18.374,2.054,2.054,0,0,0,.413.3,4.269,4.269,0,0,0,.714.322,6.741,6.741,0,0,0,.987.262,6.325,6.325,0,0,0,1.21.109c0.019,0,.037,0,0.056,0v1.541h1.53V43.268c0.073-.019.15-0.028,0.222-0.049a4.324,4.324,0,0,0,1.477-.775,3.693,3.693,0,0,0,1-1.284,4.091,4.091,0,0,0,.37-1.789A3.591,3.591,0,0,0,24.743,38.018ZM30,46H51c0.859,0,1,.116,1,1s-0.141,1-1,1H28C29.424,47.189,28.988,47.3,30,46Z"/>
</svg>
<svg width="44" height="49" viewBox="0 0 44 49" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_412_334)">
<ellipse cx="22" cy="37.5" rx="15" ry="7.5" fill="url(#paint0_radial_412_334)"/>
</g>
<g filter="url(#filter1_f_412_334)">
<ellipse cx="22" cy="37.5" rx="9" ry="4.5" fill="white"/>
</g>
<path d="M43.5 38C43.5 40.7462 41.2608 43.3669 37.3327 45.331C33.4346 47.28 28.0143 48.5 22 48.5C15.9857 48.5 10.5654 47.28 6.66726 45.331C2.73919 43.3669 0.5 40.7462 0.5 38C0.5 35.2538 2.73919 32.6331 6.66726 30.669C10.5654 28.72 15.9857 27.5 22 27.5C28.0143 27.5 33.4346 28.72 37.3327 30.669C41.2608 32.6331 43.5 35.2538 43.5 38Z" stroke="#148DD2"/>
<mask id="path-4-inside-1_412_334" fill="white">
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.4366 0.585787C22.6556 -0.195262 21.3892 -0.195263 20.6082 0.585786L7.58583 13.6081C6.92969 14.2643 6.81103 15.2855 7.29924 16.0746L20.3203 37.1207C21.1021 38.3843 22.94 38.3843 23.7219 37.1208L36.7454 16.0747C37.2337 15.2856 37.115 14.2642 36.4589 13.608L23.4366 0.585787ZM27.643 9.04269C27.6433 9.05684 27.6431 9.07064 27.6431 9.08478V9.95662C27.6431 10.2154 27.8528 10.4251 28.1115 10.4251V10.4251C28.3703 10.4251 28.58 10.6348 28.58 10.8936V18.0082C28.58 18.2728 28.3655 18.4873 28.1009 18.4873V18.4873C27.8363 18.4873 27.6218 18.7018 27.6218 18.9664V20.0402C27.6353 20.5131 27.305 20.5997 27.0623 20.6C26.895 20.6002 26.7279 20.5719 26.5605 20.5719H17.1237C16.4762 20.6489 16.3755 20.3022 16.3693 20.105C16.3665 20.0191 16.3782 19.9331 16.3782 19.8472V19.094C16.3782 18.8294 16.1637 18.6149 15.8991 18.6149V18.6149C15.6345 18.6149 15.42 18.4004 15.42 18.1358V10.9042C15.42 10.6396 15.6345 10.4251 15.8991 10.4251V10.4251C16.1637 10.4251 16.3782 10.2106 16.3782 9.94598V9.06356C16.3451 8.58426 16.8005 8.5544 17.0053 8.56494C17.0702 8.56828 17.1349 8.57432 17.1999 8.57432H18.0928C18.2514 8.57432 18.38 8.44576 18.38 8.28716V8.28716C18.38 8.12857 18.5085 8 18.6671 8H19.6901C19.8604 8 19.9985 8.13808 19.9985 8.30842V8.30842C19.9985 8.47875 20.1366 8.61684 20.3069 8.61684H20.9464C21.1167 8.61684 21.2548 8.47875 21.2548 8.30842V8.30842C21.2548 8.13808 21.3929 8 21.5632 8H22.5435C22.6903 8 22.8093 8.11904 22.8093 8.26589V8.26589C22.8093 8.41274 22.9284 8.53179 23.0752 8.53179H23.7146C23.8614 8.53179 23.9805 8.41274 23.9805 8.26589V8.26589C23.9805 8.11904 24.0995 8 24.2464 8H25.6227C25.7741 8 25.8969 8.12276 25.8969 8.2742V8.2742C25.8969 8.42248 26.0148 8.5439 26.163 8.54827L26.8785 8.56936C26.9899 8.57265 27.1006 8.54928 27.2118 8.54163C27.6081 8.51438 27.6408 8.94223 27.643 9.04269ZM17.6687 10.724C17.6687 10.5735 17.5467 10.4515 17.3962 10.4515V10.4515C17.2457 10.4515 17.1237 10.5735 17.1237 10.724V18.4594C17.1237 18.6099 17.2457 18.7319 17.3962 18.7319V18.7319C17.5467 18.7319 17.6687 18.6099 17.6687 18.4594V10.724ZM17.1237 19.1386C17.1237 19.1782 17.1559 19.2104 17.1955 19.2104H26.7408C26.7804 19.2104 26.8126 19.1782 26.8126 19.1386V19.1386C26.8126 19.0989 26.7804 19.0668 26.7408 19.0668H26.6476H17.1955C17.1559 19.0668 17.1237 19.0989 17.1237 19.1386V19.1386ZM18.2137 10.4515C18.0632 10.4515 17.9412 10.5735 17.9412 10.724V18.7318V18.7318C17.9412 18.7319 17.9412 18.7319 17.9412 18.7319H18.2137C18.3641 18.7319 18.4861 18.6099 18.4861 18.4594V10.724C18.4861 10.5735 18.3641 10.4515 18.2137 10.4515V10.4515ZM19.0311 10.4515C18.8806 10.4515 18.7586 10.5735 18.7586 10.724V18.7318V18.7318C18.7586 18.7319 18.7586 18.7319 18.7586 18.7319H19.0311C19.1816 18.7319 19.3036 18.6099 19.3036 18.4594V10.724C19.3036 10.5735 19.1816 10.4515 19.0311 10.4515V10.4515ZM19.8486 10.4515C19.6981 10.4515 19.5761 10.5735 19.5761 10.724V18.7318V18.7318C19.5761 18.7319 19.5761 18.7319 19.5761 18.7319H19.8486C19.9991 18.7319 20.1211 18.6099 20.1211 18.4594V10.724C20.1211 10.5735 19.9991 10.4515 19.8486 10.4515V10.4515ZM20.666 10.4515C20.5155 10.4515 20.3936 10.5735 20.3936 10.724V18.7318V18.7318C20.3936 18.7319 20.3936 18.7319 20.3936 18.7319H20.666C20.8165 18.7319 20.9385 18.6099 20.9385 18.4594V10.724C20.9385 10.5735 20.8165 10.4515 20.666 10.4515V10.4515ZM21.4835 10.4515C21.333 10.4515 21.211 10.5735 21.211 10.724V18.7318V18.7318C21.211 18.7319 21.211 18.7319 21.211 18.7319H21.4835C21.634 18.7319 21.756 18.6099 21.756 18.4594V10.724C21.756 10.5735 21.634 10.4515 21.4835 10.4515V10.4515ZM22.3011 10.4515C22.1506 10.4515 22.0286 10.5735 22.0286 10.724V18.7318V18.7318C22.0286 18.7319 22.0286 18.7319 22.0286 18.7319H22.3011C22.4516 18.7319 22.5736 18.6099 22.5736 18.4594V10.724C22.5736 10.5735 22.4516 10.4515 22.3011 10.4515V10.4515ZM23.1186 10.4515C22.9681 10.4515 22.8461 10.5735 22.8461 10.724V18.7318V18.7318C22.8461 18.7319 22.8461 18.7319 22.8461 18.7319H23.1186C23.2691 18.7319 23.3911 18.6099 23.3911 18.4594V10.724C23.3911 10.5735 23.2691 10.4515 23.1186 10.4515V10.4515ZM23.936 10.4515C23.7855 10.4515 23.6635 10.5735 23.6635 10.724V18.7318V18.7318C23.6635 18.7319 23.6635 18.7319 23.6635 18.7319H23.936C24.0865 18.7319 24.2085 18.6099 24.2085 18.4594V10.724C24.2085 10.5735 24.0865 10.4515 23.936 10.4515V10.4515ZM24.7535 10.4515C24.603 10.4515 24.481 10.5735 24.481 10.724V18.7318V18.7318C24.481 18.7319 24.481 18.7319 24.481 18.7319H24.7535C24.904 18.7319 25.026 18.6099 25.026 18.4594V10.724C25.026 10.5735 24.904 10.4515 24.7535 10.4515V10.4515ZM25.5709 10.4515C25.4204 10.4515 25.2984 10.5735 25.2984 10.724V18.7318V18.7318C25.2984 18.7319 25.2985 18.7319 25.2985 18.7319H25.5709C25.7214 18.7319 25.8434 18.6099 25.8434 18.4594V10.724C25.8434 10.5735 25.7214 10.4515 25.5709 10.4515V10.4515ZM26.3817 10.4515C26.2349 10.4515 26.1159 10.5706 26.1159 10.7174V18.7318V18.7318C26.1159 18.7319 26.1159 18.7319 26.1159 18.7319H26.3817C26.5286 18.7319 26.6476 18.6128 26.6476 18.466V10.7174C26.6476 10.5706 26.5286 10.4515 26.3817 10.4515V10.4515ZM26.6476 10.0686H26.7036C26.7638 10.0686 26.8126 10.0198 26.8126 9.95963V9.95963C26.8126 9.89944 26.7638 9.85065 26.7036 9.85065H17.2327C17.1725 9.85065 17.1237 9.89944 17.1237 9.95963V9.95963C17.1237 10.0198 17.1725 10.0686 17.2327 10.0686H21.756H22.0286H22.5721C22.5729 10.0686 22.5736 10.068 22.5736 10.0672V10.0672C22.5736 10.0663 22.5742 10.0657 22.575 10.0657H22.8446C22.8454 10.0657 22.8461 10.0663 22.8461 10.0672V10.0672C22.8461 10.068 22.8467 10.0686 22.8475 10.0686H26.6476ZM18.29 21.44C18.29 21.1694 18.5094 20.95 18.78 20.95H19.83C20.1006 20.95 20.32 21.1694 20.32 21.44V21.44C20.32 21.7106 20.1006 21.93 19.83 21.93H18.78C18.5094 21.93 18.29 21.7106 18.29 21.44V21.44ZM26.06 21.44C26.06 21.1694 25.8406 20.95 25.57 20.95H24.45C24.1794 20.95 23.96 21.1694 23.96 21.44V21.44C23.96 21.7106 24.1794 21.93 24.45 21.93H25.57C25.8406 21.93 26.06 21.7106 26.06 21.44V21.44Z"/>
</mask>
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.4366 0.585787C22.6556 -0.195262 21.3892 -0.195263 20.6082 0.585786L7.58583 13.6081C6.92969 14.2643 6.81103 15.2855 7.29924 16.0746L20.3203 37.1207C21.1021 38.3843 22.94 38.3843 23.7219 37.1208L36.7454 16.0747C37.2337 15.2856 37.115 14.2642 36.4589 13.608L23.4366 0.585787ZM27.643 9.04269C27.6433 9.05684 27.6431 9.07064 27.6431 9.08478V9.95662C27.6431 10.2154 27.8528 10.4251 28.1115 10.4251V10.4251C28.3703 10.4251 28.58 10.6348 28.58 10.8936V18.0082C28.58 18.2728 28.3655 18.4873 28.1009 18.4873V18.4873C27.8363 18.4873 27.6218 18.7018 27.6218 18.9664V20.0402C27.6353 20.5131 27.305 20.5997 27.0623 20.6C26.895 20.6002 26.7279 20.5719 26.5605 20.5719H17.1237C16.4762 20.6489 16.3755 20.3022 16.3693 20.105C16.3665 20.0191 16.3782 19.9331 16.3782 19.8472V19.094C16.3782 18.8294 16.1637 18.6149 15.8991 18.6149V18.6149C15.6345 18.6149 15.42 18.4004 15.42 18.1358V10.9042C15.42 10.6396 15.6345 10.4251 15.8991 10.4251V10.4251C16.1637 10.4251 16.3782 10.2106 16.3782 9.94598V9.06356C16.3451 8.58426 16.8005 8.5544 17.0053 8.56494C17.0702 8.56828 17.1349 8.57432 17.1999 8.57432H18.0928C18.2514 8.57432 18.38 8.44576 18.38 8.28716V8.28716C18.38 8.12857 18.5085 8 18.6671 8H19.6901C19.8604 8 19.9985 8.13808 19.9985 8.30842V8.30842C19.9985 8.47875 20.1366 8.61684 20.3069 8.61684H20.9464C21.1167 8.61684 21.2548 8.47875 21.2548 8.30842V8.30842C21.2548 8.13808 21.3929 8 21.5632 8H22.5435C22.6903 8 22.8093 8.11904 22.8093 8.26589V8.26589C22.8093 8.41274 22.9284 8.53179 23.0752 8.53179H23.7146C23.8614 8.53179 23.9805 8.41274 23.9805 8.26589V8.26589C23.9805 8.11904 24.0995 8 24.2464 8H25.6227C25.7741 8 25.8969 8.12276 25.8969 8.2742V8.2742C25.8969 8.42248 26.0148 8.5439 26.163 8.54827L26.8785 8.56936C26.9899 8.57265 27.1006 8.54928 27.2118 8.54163C27.6081 8.51438 27.6408 8.94223 27.643 9.04269ZM17.6687 10.724C17.6687 10.5735 17.5467 10.4515 17.3962 10.4515V10.4515C17.2457 10.4515 17.1237 10.5735 17.1237 10.724V18.4594C17.1237 18.6099 17.2457 18.7319 17.3962 18.7319V18.7319C17.5467 18.7319 17.6687 18.6099 17.6687 18.4594V10.724ZM17.1237 19.1386C17.1237 19.1782 17.1559 19.2104 17.1955 19.2104H26.7408C26.7804 19.2104 26.8126 19.1782 26.8126 19.1386V19.1386C26.8126 19.0989 26.7804 19.0668 26.7408 19.0668H26.6476H17.1955C17.1559 19.0668 17.1237 19.0989 17.1237 19.1386V19.1386ZM18.2137 10.4515C18.0632 10.4515 17.9412 10.5735 17.9412 10.724V18.7318V18.7318C17.9412 18.7319 17.9412 18.7319 17.9412 18.7319H18.2137C18.3641 18.7319 18.4861 18.6099 18.4861 18.4594V10.724C18.4861 10.5735 18.3641 10.4515 18.2137 10.4515V10.4515ZM19.0311 10.4515C18.8806 10.4515 18.7586 10.5735 18.7586 10.724V18.7318V18.7318C18.7586 18.7319 18.7586 18.7319 18.7586 18.7319H19.0311C19.1816 18.7319 19.3036 18.6099 19.3036 18.4594V10.724C19.3036 10.5735 19.1816 10.4515 19.0311 10.4515V10.4515ZM19.8486 10.4515C19.6981 10.4515 19.5761 10.5735 19.5761 10.724V18.7318V18.7318C19.5761 18.7319 19.5761 18.7319 19.5761 18.7319H19.8486C19.9991 18.7319 20.1211 18.6099 20.1211 18.4594V10.724C20.1211 10.5735 19.9991 10.4515 19.8486 10.4515V10.4515ZM20.666 10.4515C20.5155 10.4515 20.3936 10.5735 20.3936 10.724V18.7318V18.7318C20.3936 18.7319 20.3936 18.7319 20.3936 18.7319H20.666C20.8165 18.7319 20.9385 18.6099 20.9385 18.4594V10.724C20.9385 10.5735 20.8165 10.4515 20.666 10.4515V10.4515ZM21.4835 10.4515C21.333 10.4515 21.211 10.5735 21.211 10.724V18.7318V18.7318C21.211 18.7319 21.211 18.7319 21.211 18.7319H21.4835C21.634 18.7319 21.756 18.6099 21.756 18.4594V10.724C21.756 10.5735 21.634 10.4515 21.4835 10.4515V10.4515ZM22.3011 10.4515C22.1506 10.4515 22.0286 10.5735 22.0286 10.724V18.7318V18.7318C22.0286 18.7319 22.0286 18.7319 22.0286 18.7319H22.3011C22.4516 18.7319 22.5736 18.6099 22.5736 18.4594V10.724C22.5736 10.5735 22.4516 10.4515 22.3011 10.4515V10.4515ZM23.1186 10.4515C22.9681 10.4515 22.8461 10.5735 22.8461 10.724V18.7318V18.7318C22.8461 18.7319 22.8461 18.7319 22.8461 18.7319H23.1186C23.2691 18.7319 23.3911 18.6099 23.3911 18.4594V10.724C23.3911 10.5735 23.2691 10.4515 23.1186 10.4515V10.4515ZM23.936 10.4515C23.7855 10.4515 23.6635 10.5735 23.6635 10.724V18.7318V18.7318C23.6635 18.7319 23.6635 18.7319 23.6635 18.7319H23.936C24.0865 18.7319 24.2085 18.6099 24.2085 18.4594V10.724C24.2085 10.5735 24.0865 10.4515 23.936 10.4515V10.4515ZM24.7535 10.4515C24.603 10.4515 24.481 10.5735 24.481 10.724V18.7318V18.7318C24.481 18.7319 24.481 18.7319 24.481 18.7319H24.7535C24.904 18.7319 25.026 18.6099 25.026 18.4594V10.724C25.026 10.5735 24.904 10.4515 24.7535 10.4515V10.4515ZM25.5709 10.4515C25.4204 10.4515 25.2984 10.5735 25.2984 10.724V18.7318V18.7318C25.2984 18.7319 25.2985 18.7319 25.2985 18.7319H25.5709C25.7214 18.7319 25.8434 18.6099 25.8434 18.4594V10.724C25.8434 10.5735 25.7214 10.4515 25.5709 10.4515V10.4515ZM26.3817 10.4515C26.2349 10.4515 26.1159 10.5706 26.1159 10.7174V18.7318V18.7318C26.1159 18.7319 26.1159 18.7319 26.1159 18.7319H26.3817C26.5286 18.7319 26.6476 18.6128 26.6476 18.466V10.7174C26.6476 10.5706 26.5286 10.4515 26.3817 10.4515V10.4515ZM26.6476 10.0686H26.7036C26.7638 10.0686 26.8126 10.0198 26.8126 9.95963V9.95963C26.8126 9.89944 26.7638 9.85065 26.7036 9.85065H17.2327C17.1725 9.85065 17.1237 9.89944 17.1237 9.95963V9.95963C17.1237 10.0198 17.1725 10.0686 17.2327 10.0686H21.756H22.0286H22.5721C22.5729 10.0686 22.5736 10.068 22.5736 10.0672V10.0672C22.5736 10.0663 22.5742 10.0657 22.575 10.0657H22.8446C22.8454 10.0657 22.8461 10.0663 22.8461 10.0672V10.0672C22.8461 10.068 22.8467 10.0686 22.8475 10.0686H26.6476ZM18.29 21.44C18.29 21.1694 18.5094 20.95 18.78 20.95H19.83C20.1006 20.95 20.32 21.1694 20.32 21.44V21.44C20.32 21.7106 20.1006 21.93 19.83 21.93H18.78C18.5094 21.93 18.29 21.7106 18.29 21.44V21.44ZM26.06 21.44C26.06 21.1694 25.8406 20.95 25.57 20.95H24.45C24.1794 20.95 23.96 21.1694 23.96 21.44V21.44C23.96 21.7106 24.1794 21.93 24.45 21.93H25.57C25.8406 21.93 26.06 21.7106 26.06 21.44V21.44Z" fill="url(#paint1_linear_412_334)"/>
<path d="M27.6218 20.0402H27.1218V20.0474L27.122 20.0545L27.6218 20.0402ZM17.1237 20.5719V20.0719H17.0941L17.0647 20.0754L17.1237 20.5719ZM16.3782 9.06356H16.8782V9.04633L16.877 9.02914L16.3782 9.06356ZM26.8785 8.56936L26.8638 9.06914L26.8785 8.56936ZM27.2118 8.54163L27.2461 9.04046L27.2118 8.54163ZM26.163 8.54827L26.1778 8.04849L26.163 8.54827ZM17.0053 8.56494L16.9796 9.06428L17.0053 8.56494ZM27.0623 20.6L27.0617 20.1L27.0623 20.6ZM27.643 9.04269L27.1431 9.05378L27.643 9.04269ZM36.7454 16.0747L37.1705 16.3378L36.7454 16.0747ZM36.4589 13.608L36.1053 13.9616L36.4589 13.608ZM20.3203 37.1207L19.8951 37.3838L20.3203 37.1207ZM16.3693 20.105L16.869 20.0892L16.3693 20.105ZM20.6082 0.585786L20.2546 0.232233L20.6082 0.585786ZM23.4366 0.585787L23.083 0.93934L23.083 0.93934L23.4366 0.585787ZM7.93938 13.9617L20.9617 0.939339L20.2546 0.232233L7.23227 13.2546L7.93938 13.9617ZM20.7455 36.8576L7.72444 15.8116L6.87404 16.3377L19.8951 37.3838L20.7455 36.8576ZM36.3202 15.8116L23.2967 36.8577L24.147 37.3839L37.1705 16.3378L36.3202 15.8116ZM23.083 0.93934L36.1053 13.9616L36.8124 13.2545L23.7902 0.232233L23.083 0.93934ZM28.1431 9.95662V9.08478H27.1431V9.95662H28.1431ZM29.08 18.0082V10.8936H28.08V18.0082H29.08ZM28.1218 20.0402V18.9664H27.1218V20.0402H28.1218ZM27.0629 21.1C27.2271 21.0998 27.496 21.0733 27.732 20.9019C28.0015 20.7061 28.1321 20.3944 28.1216 20.026L27.122 20.0545C27.1237 20.1146 27.1137 20.1322 27.1166 20.1257C27.1179 20.1225 27.1212 20.1164 27.1271 20.1092C27.1329 20.1021 27.1391 20.0966 27.1442 20.0928C27.1539 20.0858 27.1548 20.0885 27.1375 20.0927C27.1201 20.0969 27.0945 20.1 27.0617 20.1L27.0629 21.1ZM17.1237 21.0719H26.5605V20.0719H17.1237V21.0719ZM15.8695 20.1209C15.8746 20.281 15.9184 20.5724 16.1614 20.8035C16.415 21.0449 16.7744 21.1169 17.1827 21.0684L17.0647 20.0754C16.9461 20.0895 16.8811 20.0805 16.853 20.0736C16.8287 20.0677 16.8352 20.0643 16.8506 20.079C16.8647 20.0924 16.8702 20.1057 16.8712 20.1084C16.8714 20.1091 16.8694 20.1027 16.869 20.0892L15.8695 20.1209ZM15.8782 19.094V19.8472H16.8782V19.094H15.8782ZM14.92 10.9042V18.1358H15.92V10.9042H14.92ZM15.8782 9.06356V9.94598H16.8782V9.06356H15.8782ZM17.031 8.0656C16.9056 8.05915 16.6355 8.05805 16.3832 8.18126C16.247 8.24776 16.1036 8.35668 16.0026 8.52828C15.901 8.70082 15.8655 8.89707 15.8794 9.09798L16.877 9.02914C16.8756 9.00863 16.8776 9.002 16.8768 9.00569C16.8759 9.01006 16.8727 9.02135 16.8643 9.03564C16.8458 9.06717 16.8228 9.07942 16.8219 9.07986C16.8219 9.07986 16.8222 9.07971 16.8229 9.07943C16.8236 9.07914 16.8246 9.07875 16.8259 9.07827C16.8286 9.07729 16.8324 9.07605 16.8374 9.0747C16.8477 9.07193 16.8612 9.06925 16.8778 9.06719C16.912 9.06295 16.9484 9.06267 16.9796 9.06428L17.031 8.0656ZM18.0928 8.07432H17.1999V9.07432H18.0928V8.07432ZM19.6901 7.5H18.6671V8.5H19.6901V7.5ZM20.9464 8.11684H20.3069V9.11684H20.9464V8.11684ZM22.5435 7.5H21.5632V8.5H22.5435V7.5ZM23.7146 8.03179H23.0752V9.03179H23.7146V8.03179ZM25.6227 7.5H24.2464V8.5H25.6227V7.5ZM26.8932 8.06958L26.1778 8.04849L26.1483 9.04805L26.8638 9.06914L26.8932 8.06958ZM28.1429 9.03161C28.1413 8.95986 28.1308 8.73767 28.0225 8.52087C27.9649 8.40559 27.8701 8.27259 27.7166 8.1738C27.5576 8.07152 27.3719 8.02944 27.1775 8.04281L27.2461 9.04046C27.2504 9.04016 27.2431 9.04118 27.2277 9.0375C27.2117 9.03369 27.1934 9.02631 27.1755 9.01479C27.1581 9.00357 27.1458 8.99149 27.1381 8.98226C27.1307 8.97344 27.1279 8.96769 27.1278 8.96767C27.1278 8.96753 27.1282 8.96837 27.129 8.97032C27.1297 8.97227 27.1307 8.97501 27.1318 8.97861C27.1341 8.98602 27.1363 8.99519 27.1381 9.00574C27.142 9.02767 27.143 9.04656 27.1431 9.05378L28.1429 9.03161ZM17.6237 18.4594V10.724H16.6237V18.4594H17.6237ZM17.1687 10.724V18.4594H18.1687V10.724H17.1687ZM26.7408 18.7104H17.1955V19.7104H26.7408V18.7104ZM26.6476 19.5668H26.7408V18.5668H26.6476V19.5668ZM17.1955 19.5668H26.6476V18.5668H17.1955V19.5668ZM18.4412 18.7318V10.724H17.4412V18.7318H18.4412ZM18.2137 18.2319H17.9412V19.2319H18.2137V18.2319ZM17.9861 10.724V18.4594H18.9861V10.724H17.9861ZM19.2586 18.7318V10.724H18.2586V18.7318H19.2586ZM19.0311 18.2319H18.7586V19.2319H19.0311V18.2319ZM18.8036 10.724V18.4594H19.8036V10.724H18.8036ZM20.0761 18.7318V10.724H19.0761V18.7318H20.0761ZM19.8486 18.2319H19.5761V19.2319H19.8486V18.2319ZM19.6211 10.724V18.4594H20.6211V10.724H19.6211ZM20.8936 18.7318V10.724H19.8936V18.7318H20.8936ZM20.666 18.2319H20.3936V19.2319H20.666V18.2319ZM20.4385 10.724V18.4594H21.4385V10.724H20.4385ZM21.711 18.7318V10.724H20.711V18.7318H21.711ZM21.4835 18.2319H21.211V19.2319H21.4835V18.2319ZM21.256 10.724V18.4594H22.256V10.724H21.256ZM22.5286 18.7318V10.724H21.5286V18.7318H22.5286ZM22.3011 18.2319H22.0286V19.2319H22.3011V18.2319ZM22.0736 10.724V18.4594H23.0736V10.724H22.0736ZM23.3461 18.7318V10.724H22.3461V18.7318H23.3461ZM23.1186 18.2319H22.8461V19.2319H23.1186V18.2319ZM22.8911 10.724V18.4594H23.8911V10.724H22.8911ZM24.1635 18.7318V10.724H23.1635V18.7318H24.1635ZM23.936 18.2319H23.6635V19.2319H23.936V18.2319ZM23.7085 10.724V18.4594H24.7085V10.724H23.7085ZM24.981 18.7318V10.724H23.981V18.7318H24.981ZM24.7535 18.2319H24.481V19.2319H24.7535V18.2319ZM24.526 10.724V18.4594H25.526V10.724H24.526ZM25.7984 18.7318V10.724H24.7984V18.7318H25.7984ZM25.5709 18.2319H25.2985V19.2319H25.5709V18.2319ZM25.3434 10.724V18.4594H26.3434V10.724H25.3434ZM26.6159 18.7318V10.7174H25.6159V18.7318H26.6159ZM26.3817 18.2319H26.1159V19.2319H26.3817V18.2319ZM26.1476 10.7174V18.466H27.1476V10.7174H26.1476ZM26.7036 9.56861H26.6476V10.5686H26.7036V9.56861ZM17.2327 10.3506H26.7036V9.35065H17.2327V10.3506ZM21.756 9.56861H17.2327V10.5686H21.756V9.56861ZM22.0286 9.56861H21.756V10.5686H22.0286V9.56861ZM22.5721 9.56861H22.0286V10.5686H22.5721V9.56861ZM22.8446 9.56569H22.575V10.5657H22.8446V9.56569ZM26.6476 9.56861H22.8475V10.5686H26.6476V9.56861ZM19.83 20.45H18.78V21.45H19.83V20.45ZM18.78 22.43H19.83V21.43H18.78V22.43ZM24.45 21.45H25.57V20.45H24.45V21.45ZM25.57 21.43H24.45V22.43H25.57V21.43ZM25.57 22.43C26.1168 22.43 26.56 21.9868 26.56 21.44H25.56C25.56 21.44 25.56 21.4399 25.56 21.4396C25.5601 21.4393 25.5601 21.4389 25.5602 21.4385C25.5604 21.4376 25.5606 21.4368 25.561 21.436C25.5616 21.4344 25.5624 21.4335 25.5629 21.4329C25.5635 21.4324 25.5644 21.4317 25.566 21.431C25.5668 21.4306 25.5676 21.4304 25.5685 21.4302C25.5689 21.4301 25.5693 21.4301 25.5696 21.43C25.5699 21.43 25.57 21.43 25.57 21.43V22.43ZM18.78 20.45C18.2332 20.45 17.79 20.8932 17.79 21.44H18.79C18.79 21.44 18.79 21.4401 18.79 21.4404C18.7899 21.4407 18.7899 21.4411 18.7898 21.4415C18.7896 21.4424 18.7894 21.4432 18.789 21.444C18.7883 21.4456 18.7876 21.4465 18.7871 21.4471C18.7865 21.4476 18.7856 21.4484 18.784 21.449C18.7832 21.4494 18.7824 21.4496 18.7815 21.4498C18.7811 21.4499 18.7807 21.4499 18.7804 21.45C18.7801 21.45 18.78 21.45 18.78 21.45V20.45ZM22.3461 10.0672C22.3461 10.3441 22.5706 10.5686 22.8475 10.5686V9.56861C23.1228 9.56861 23.3461 9.79179 23.3461 10.0672H22.3461ZM26.7036 10.5686C27.0399 10.5686 27.3126 10.296 27.3126 9.95963H26.3126C26.3126 9.74368 26.4876 9.56861 26.7036 9.56861V10.5686ZM27.1476 10.7174C27.1476 10.2944 26.8047 9.95155 26.3817 9.95155V10.9515C26.2524 10.9515 26.1476 10.8467 26.1476 10.7174H27.1476ZM26.3817 19.2319C26.8047 19.2319 27.1476 18.889 27.1476 18.466H26.1476C26.1476 18.3367 26.2524 18.2319 26.3817 18.2319V19.2319ZM25.6159 18.7318C25.6159 19.0084 25.8402 19.2319 26.1159 19.2319V18.2319C26.3917 18.2319 26.6159 18.4553 26.6159 18.7318H25.6159ZM26.6159 10.7174C26.6159 10.8467 26.5111 10.9515 26.3817 10.9515V9.95155C25.9588 9.95155 25.6159 10.2944 25.6159 10.7174H26.6159ZM26.3434 10.724C26.3434 10.2974 25.9976 9.95155 25.5709 9.95155V10.9515C25.4453 10.9515 25.3434 10.8497 25.3434 10.724H26.3434ZM25.5709 19.2319C25.9976 19.2319 26.3434 18.886 26.3434 18.4594H25.3434C25.3434 18.3337 25.4453 18.2319 25.5709 18.2319V19.2319ZM24.7984 18.7318C24.7984 19.0075 25.0218 19.2319 25.2985 19.2319V18.2319C25.5751 18.2319 25.7984 18.4563 25.7984 18.7318H24.7984ZM25.7984 10.724C25.7984 10.8497 25.6966 10.9515 25.5709 10.9515V9.95155C25.1443 9.95155 24.7984 10.2974 24.7984 10.724H25.7984ZM25.526 10.724C25.526 10.2974 25.1801 9.95155 24.7535 9.95155V10.9515C24.6278 10.9515 24.526 10.8497 24.526 10.724H25.526ZM24.7535 19.2319C25.1801 19.2319 25.526 18.886 25.526 18.4594H24.526C24.526 18.3337 24.6278 18.2319 24.7535 18.2319V19.2319ZM23.981 18.7318C23.981 19.0074 24.2043 19.2319 24.481 19.2319V18.2319C24.7577 18.2319 24.981 18.4563 24.981 18.7318H23.981ZM24.981 10.724C24.981 10.8497 24.8791 10.9515 24.7535 10.9515V9.95155C24.3269 9.95155 23.981 10.2974 23.981 10.724H24.981ZM24.7085 10.724C24.7085 10.2974 24.3626 9.95155 23.936 9.95155V10.9515C23.8104 10.9515 23.7085 10.8497 23.7085 10.724H24.7085ZM23.936 19.2319C24.3626 19.2319 24.7085 18.886 24.7085 18.4594H23.7085C23.7085 18.3337 23.8104 18.2319 23.936 18.2319V19.2319ZM23.1635 18.7318C23.1635 19.0074 23.3868 19.2319 23.6635 19.2319V18.2319C23.9402 18.2319 24.1635 18.4563 24.1635 18.7318H23.1635ZM24.1635 10.724C24.1635 10.8497 24.0617 10.9515 23.936 10.9515V9.95155C23.5094 9.95155 23.1635 10.2974 23.1635 10.724H24.1635ZM23.8911 10.724C23.8911 10.2974 23.5452 9.95155 23.1186 9.95155V10.9515C22.9929 10.9515 22.8911 10.8497 22.8911 10.724H23.8911ZM23.1186 19.2319C23.5452 19.2319 23.8911 18.886 23.8911 18.4594H22.8911C22.8911 18.3337 22.9929 18.2319 23.1186 18.2319V19.2319ZM22.3461 18.7318C22.3461 19.0074 22.5694 19.2319 22.8461 19.2319V18.2319C23.1228 18.2319 23.3461 18.4563 23.3461 18.7318H22.3461ZM23.3461 10.724C23.3461 10.8497 23.2442 10.9515 23.1186 10.9515V9.95155C22.6919 9.95155 22.3461 10.2974 22.3461 10.724H23.3461ZM23.0736 10.724C23.0736 10.2974 22.7277 9.95155 22.3011 9.95155V10.9515C22.1754 10.9515 22.0736 10.8497 22.0736 10.724H23.0736ZM22.3011 19.2319C22.7277 19.2319 23.0736 18.886 23.0736 18.4594H22.0736C22.0736 18.3337 22.1754 18.2319 22.3011 18.2319V19.2319ZM21.5286 18.7318C21.5286 19.0074 21.7519 19.2319 22.0286 19.2319V18.2319C22.3054 18.2319 22.5286 18.4563 22.5286 18.7318H21.5286ZM22.5286 10.724C22.5286 10.8497 22.4267 10.9515 22.3011 10.9515V9.95155C21.8745 9.95155 21.5286 10.2974 21.5286 10.724H22.5286ZM22.256 10.724C22.256 10.2974 21.9101 9.95155 21.4835 9.95155V10.9515C21.3579 10.9515 21.256 10.8497 21.256 10.724H22.256ZM21.4835 19.2319C21.9101 19.2319 22.256 18.886 22.256 18.4594H21.256C21.256 18.3337 21.3579 18.2319 21.4835 18.2319V19.2319ZM20.711 18.7318C20.711 19.0074 20.9343 19.2319 21.211 19.2319V18.2319C21.4877 18.2319 21.711 18.4563 21.711 18.7318H20.711ZM21.711 10.724C21.711 10.8497 21.6092 10.9515 21.4835 10.9515V9.95155C21.0569 9.95155 20.711 10.2974 20.711 10.724H21.711ZM21.4385 10.724C21.4385 10.2974 21.0927 9.95155 20.666 9.95155V10.9515C20.5404 10.9515 20.4385 10.8497 20.4385 10.724H21.4385ZM20.666 19.2319C21.0927 19.2319 21.4385 18.886 21.4385 18.4594H20.4385C20.4385 18.3337 20.5404 18.2319 20.666 18.2319V19.2319ZM19.8936 18.7318C19.8936 19.0074 20.1169 19.2319 20.3936 19.2319V18.2319C20.6703 18.2319 20.8936 18.4563 20.8936 18.7318H19.8936ZM20.8936 10.724C20.8936 10.8497 20.7917 10.9515 20.666 10.9515V9.95155C20.2394 9.95155 19.8936 10.2974 19.8936 10.724H20.8936ZM20.6211 10.724C20.6211 10.2974 20.2752 9.95155 19.8486 9.95155V10.9515C19.7229 10.9515 19.6211 10.8497 19.6211 10.724H20.6211ZM19.8486 19.2319C20.2752 19.2319 20.6211 18.886 20.6211 18.4594H19.6211C19.6211 18.3337 19.7229 18.2319 19.8486 18.2319V19.2319ZM18.9861 10.724C18.9861 10.2974 18.6403 9.95155 18.2137 9.95155V10.9515C18.088 10.9515 17.9861 10.8497 17.9861 10.724H18.9861ZM18.2137 19.2319C18.6403 19.2319 18.9861 18.886 18.9861 18.4594H17.9861C17.9861 18.3337 18.088 18.2319 18.2137 18.2319V19.2319ZM17.4412 18.7318C17.4412 19.0074 17.6645 19.2319 17.9412 19.2319V18.2319C18.2179 18.2319 18.4412 18.4563 18.4412 18.7318H17.4412ZM18.4412 10.724C18.4412 10.8497 18.3393 10.9515 18.2137 10.9515V9.95155C17.787 9.95155 17.4412 10.2974 17.4412 10.724H18.4412ZM17.1955 18.5668C16.8797 18.5668 16.6237 18.8228 16.6237 19.1386H17.6237C17.6237 19.3751 17.432 19.5668 17.1955 19.5668V18.5668ZM27.3126 19.1386C27.3126 18.8228 27.0566 18.5668 26.7408 18.5668V19.5668C26.5043 19.5668 26.3126 19.3751 26.3126 19.1386H27.3126ZM17.1955 18.7104C17.432 18.7104 17.6237 18.9021 17.6237 19.1386H16.6237C16.6237 19.4544 16.8797 19.7104 17.1955 19.7104V18.7104ZM26.7408 19.7104C27.0566 19.7104 27.3126 19.4544 27.3126 19.1386H26.3126C26.3126 18.9021 26.5043 18.7104 26.7408 18.7104V19.7104ZM17.3962 19.2319C17.8228 19.2319 18.1687 18.886 18.1687 18.4594H17.1687C17.1687 18.3337 17.2705 18.2319 17.3962 18.2319V19.2319ZM16.6237 18.4594C16.6237 18.886 16.9696 19.2319 17.3962 19.2319V18.2319C17.5219 18.2319 17.6237 18.3337 17.6237 18.4594H16.6237ZM17.3962 10.9515C17.2705 10.9515 17.1687 10.8497 17.1687 10.724H18.1687C18.1687 10.2974 17.8228 9.95155 17.3962 9.95155V10.9515ZM17.3962 9.95155C16.9696 9.95155 16.6237 10.2974 16.6237 10.724H17.6237C17.6237 10.8497 17.5219 10.9515 17.3962 10.9515V9.95155ZM26.8638 9.06914C26.9568 9.07189 27.0415 9.06333 27.1024 9.05632C27.174 9.04807 27.2057 9.04323 27.2461 9.04046L27.1775 8.04281C27.1066 8.04769 27.0274 8.05835 26.988 8.06288C26.9379 8.06864 26.9116 8.07012 26.8932 8.06958L26.8638 9.06914ZM25.3969 8.2742C25.3969 8.69289 25.7298 9.03572 26.1483 9.04805L26.1778 8.04849C26.2998 8.05209 26.3969 8.15208 26.3969 8.2742H25.3969ZM25.6227 8.5C25.498 8.5 25.3969 8.3989 25.3969 8.2742H26.3969C26.3969 7.84662 26.0503 7.5 25.6227 7.5V8.5ZM24.4805 8.26589C24.4805 8.39519 24.3756 8.5 24.2464 8.5V7.5C23.8234 7.5 23.4805 7.8429 23.4805 8.26589H24.4805ZM23.7146 9.03179C24.1376 9.03179 24.4805 8.68889 24.4805 8.26589H23.4805C23.4805 8.1366 23.5853 8.03179 23.7146 8.03179V9.03179ZM22.3093 8.26589C22.3093 8.68889 22.6522 9.03179 23.0752 9.03179V8.03179C23.2045 8.03179 23.3093 8.1366 23.3093 8.26589H22.3093ZM19.4985 8.30842C19.4985 8.7549 19.8605 9.11684 20.3069 9.11684V8.11684C20.4127 8.11684 20.4985 8.20261 20.4985 8.30842H19.4985ZM19.6901 8.5C19.5843 8.5 19.4985 8.41423 19.4985 8.30842H20.4985C20.4985 7.86194 20.1366 7.5 19.6901 7.5V8.5ZM18.88 8.28716C18.88 8.40471 18.7847 8.5 18.6671 8.5V7.5C18.2324 7.5 17.88 7.85242 17.88 8.28716H18.88ZM18.0928 9.07432C18.5275 9.07432 18.88 8.7219 18.88 8.28716H17.88C17.88 8.16961 17.9753 8.07432 18.0928 8.07432V9.07432ZM16.9796 9.06428C17.0159 9.06614 17.1186 9.07432 17.1999 9.07432V8.07432C17.1512 8.07432 17.1245 8.07041 17.031 8.0656L16.9796 9.06428ZM23.46 21.44C23.46 21.9868 23.9032 22.43 24.45 22.43V21.43C24.45 21.43 24.4501 21.43 24.4504 21.43C24.4507 21.4301 24.4511 21.4301 24.4515 21.4302C24.4524 21.4304 24.4532 21.4306 24.454 21.431C24.4556 21.4317 24.4565 21.4324 24.4571 21.4329C24.4576 21.4335 24.4583 21.4344 24.459 21.436C24.4594 21.4368 24.4596 21.4376 24.4598 21.4385C24.4599 21.4389 24.4599 21.4393 24.46 21.4396C24.46 21.4399 24.46 21.44 24.46 21.44H23.46ZM15.8991 10.9251C16.4399 10.9251 16.8782 10.4867 16.8782 9.94598H15.8782C15.8782 9.93444 15.8876 9.92509 15.8991 9.92509V10.9251ZM25.57 21.45C25.57 21.45 25.5699 21.45 25.5696 21.45C25.5693 21.4499 25.5689 21.4499 25.5685 21.4498C25.5676 21.4496 25.5668 21.4494 25.566 21.449C25.5644 21.4484 25.5635 21.4476 25.5629 21.4471C25.5624 21.4465 25.5616 21.4456 25.561 21.444C25.5606 21.4432 25.5604 21.4424 25.5602 21.4415C25.5601 21.4411 25.5601 21.4407 25.56 21.4404C25.56 21.4401 25.56 21.44 25.56 21.44H26.56C26.56 20.8932 26.1168 20.45 25.57 20.45V21.45ZM15.92 10.9042C15.92 10.9157 15.9106 10.9251 15.8991 10.9251V9.92509C15.3584 9.92509 14.92 10.3635 14.92 10.9042H15.92ZM24.45 20.45C23.9032 20.45 23.46 20.8932 23.46 21.44H24.46C24.46 21.44 24.46 21.4401 24.46 21.4404C24.4599 21.4407 24.4599 21.4411 24.4598 21.4415C24.4596 21.4424 24.4594 21.4432 24.459 21.444C24.4583 21.4456 24.4576 21.4465 24.4571 21.4471C24.4565 21.4476 24.4556 21.4484 24.454 21.449C24.4532 21.4494 24.4524 21.4496 24.4515 21.4498C24.4511 21.4499 24.4507 21.4499 24.4504 21.45C24.4501 21.45 24.45 21.45 24.45 21.45V20.45ZM15.8991 18.1149C15.9106 18.1149 15.92 18.1243 15.92 18.1358H14.92C14.92 18.6766 15.3584 19.1149 15.8991 19.1149V18.1149ZM18.78 21.43C18.78 21.43 18.7801 21.43 18.7804 21.43C18.7807 21.4301 18.7811 21.4301 18.7815 21.4302C18.7824 21.4304 18.7832 21.4306 18.784 21.431C18.7856 21.4317 18.7865 21.4324 18.7871 21.4329C18.7876 21.4335 18.7883 21.4344 18.789 21.436C18.7894 21.4368 18.7896 21.4376 18.7898 21.4385C18.7899 21.4389 18.7899 21.4393 18.79 21.4396C18.79 21.4399 18.79 21.44 18.79 21.44H17.79C17.79 21.9868 18.2332 22.43 18.78 22.43V21.43ZM16.8782 19.094C16.8782 18.5533 16.4399 18.1149 15.8991 18.1149V19.1149C15.8876 19.1149 15.8782 19.1056 15.8782 19.094H16.8782ZM19.83 21.45C19.83 21.45 19.8299 21.45 19.8296 21.45C19.8293 21.4499 19.8289 21.4499 19.8285 21.4498C19.8276 21.4496 19.8268 21.4494 19.826 21.449C19.8244 21.4484 19.8235 21.4476 19.8229 21.4471C19.8224 21.4465 19.8216 21.4456 19.821 21.444C19.8206 21.4432 19.8204 21.4424 19.8202 21.4415C19.8201 21.4411 19.8201 21.4407 19.82 21.4404C19.82 21.4401 19.82 21.44 19.82 21.44H20.82C20.82 20.8932 20.3768 20.45 19.83 20.45V21.45ZM27.0617 20.1C27.0029 20.1001 26.9405 20.0951 26.8535 20.0878C26.7736 20.081 26.6688 20.0719 26.5605 20.0719V21.0719C26.6196 21.0719 26.6821 21.0769 26.7694 21.0842C26.8495 21.091 26.9543 21.1001 27.0629 21.1L27.0617 20.1ZM22.8446 10.5657C22.5693 10.5657 22.3461 10.3425 22.3461 10.0672H23.3461C23.3461 9.79021 23.1216 9.56569 22.8446 9.56569V10.5657ZM28.1009 17.9873C27.5601 17.9873 27.1218 18.4257 27.1218 18.9664H28.1218C28.1218 18.978 28.1124 18.9873 28.1009 18.9873V17.9873ZM23.0736 10.0672C23.0736 10.3425 22.8504 10.5657 22.575 10.5657V9.56569C22.2981 9.56569 22.0736 9.79021 22.0736 10.0672H23.0736ZM28.08 18.0082C28.08 17.9967 28.0893 17.9873 28.1009 17.9873V18.9873C28.6416 18.9873 29.08 18.5489 29.08 18.0082H28.08ZM19.0761 18.7318C19.0761 19.0074 19.2994 19.2319 19.5761 19.2319V18.2319C19.8528 18.2319 20.0761 18.4563 20.0761 18.7318H19.0761ZM22.5721 10.5686C22.8491 10.5686 23.0736 10.3441 23.0736 10.0672H22.0736C22.0736 9.79182 22.2968 9.56861 22.5721 9.56861V10.5686ZM28.1115 10.9251C28.0941 10.9251 28.08 10.911 28.08 10.8936H29.08C29.08 10.3587 28.6464 9.92509 28.1115 9.92509V10.9251ZM20.0761 10.724C20.0761 10.8497 19.9742 10.9515 19.8486 10.9515V9.95155C19.422 9.95155 19.0761 10.2974 19.0761 10.724H20.0761ZM28.1431 9.08478C28.1431 9.08325 28.1433 9.05275 28.1429 9.03161L27.1431 9.05378C27.1433 9.06093 27.1431 9.05802 27.1431 9.08478H28.1431ZM27.1431 9.95662C27.1431 10.4915 27.5767 10.9251 28.1115 10.9251V9.92509C28.1289 9.92509 28.1431 9.93921 28.1431 9.95662H27.1431ZM19.8036 10.724C19.8036 10.2974 19.4578 9.95155 19.0311 9.95155V10.9515C18.9055 10.9515 18.8036 10.8497 18.8036 10.724H19.8036ZM16.6237 9.95963C16.6237 10.296 16.8964 10.5686 17.2327 10.5686V9.56861C17.4487 9.56861 17.6237 9.74368 17.6237 9.95963H16.6237ZM37.1705 16.3378C37.7809 15.3514 37.6326 14.0747 36.8124 13.2545L36.1053 13.9616C36.5974 14.4537 36.6864 15.2197 36.3202 15.8116L37.1705 16.3378ZM22.5435 8.5C22.4142 8.5 22.3093 8.39519 22.3093 8.26589H23.3093C23.3093 7.8429 22.9664 7.5 22.5435 7.5V8.5ZM19.0311 19.2319C19.4578 19.2319 19.8036 18.886 19.8036 18.4594H18.8036C18.8036 18.3337 18.9055 18.2319 19.0311 18.2319V19.2319ZM17.2327 9.35065C16.8964 9.35065 16.6237 9.6233 16.6237 9.95963H17.6237C17.6237 10.1756 17.4487 10.3506 17.2327 10.3506V9.35065ZM19.8951 37.3838C20.8724 38.9632 23.1697 38.9633 24.147 37.3839L23.2967 36.8577C22.7103 37.8054 21.3319 37.8053 20.7455 36.8576L19.8951 37.3838ZM19.82 21.44C19.82 21.44 19.82 21.4399 19.82 21.4396C19.8201 21.4393 19.8201 21.4389 19.8202 21.4385C19.8204 21.4376 19.8206 21.4368 19.821 21.436C19.8216 21.4344 19.8224 21.4335 19.8229 21.4329C19.8235 21.4324 19.8244 21.4317 19.826 21.431C19.8268 21.4306 19.8276 21.4304 19.8285 21.4302C19.8289 21.4301 19.8293 21.4301 19.8296 21.43C19.8299 21.43 19.83 21.43 19.83 21.43V22.43C20.3768 22.43 20.82 21.9868 20.82 21.44H19.82ZM16.869 20.0892C16.8685 20.0716 16.8692 20.0491 16.8718 20.0061C16.874 19.9697 16.8782 19.9088 16.8782 19.8472H15.8782C15.8782 19.8715 15.8766 19.8965 15.8736 19.9462C15.871 19.9891 15.8674 20.0526 15.8695 20.1209L16.869 20.0892ZM21.7548 8.30842C21.7548 8.41423 21.669 8.5 21.5632 8.5V7.5C21.1167 7.5 20.7548 7.86194 20.7548 8.30842H21.7548ZM18.2586 18.7318C18.2586 19.0074 18.4819 19.2319 18.7586 19.2319V18.2319C19.0353 18.2319 19.2586 18.4563 19.2586 18.7318H18.2586ZM27.3126 9.95963C27.3126 9.6233 27.0399 9.35065 26.7036 9.35065V10.3506C26.4876 10.3506 26.3126 10.1756 26.3126 9.95963H27.3126ZM20.9617 0.939339C21.5475 0.353553 22.4973 0.353554 23.083 0.93934L23.7902 0.232233C22.8138 -0.744077 21.2309 -0.744078 20.2546 0.232233L20.9617 0.939339ZM20.9464 9.11684C21.3928 9.11684 21.7548 8.7549 21.7548 8.30842H20.7548C20.7548 8.20261 20.8405 8.11684 20.9464 8.11684V9.11684ZM19.2586 10.724C19.2586 10.8497 19.1568 10.9515 19.0311 10.9515V9.95155C18.6045 9.95155 18.2586 10.2974 18.2586 10.724H19.2586ZM7.23227 13.2546C6.41211 14.0747 6.26378 15.3513 6.87404 16.3377L7.72444 15.8116C7.35828 15.2197 7.44728 14.4538 7.93938 13.9617L7.23227 13.2546Z" fill="white" mask="url(#path-4-inside-1_412_334)"/>
<defs>
<filter id="filter0_i_412_334" x="7" y="30" width="30" height="15" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="2"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_412_334"/>
</filter>
<filter id="filter1_f_412_334" x="9" y="29" width="26" height="17" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="2" result="effect1_foregroundBlur_412_334"/>
</filter>
<radialGradient id="paint0_radial_412_334" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(22 37.5) rotate(90) scale(7.5 15)">
<stop stop-color="#148DD2" stop-opacity="0"/>
<stop offset="1" stop-color="#148DD2"/>
</radialGradient>
<linearGradient id="paint1_linear_412_334" x1="22.0223" y1="0" x2="22.0223" y2="38.0684" gradientUnits="userSpaceOnUse">
<stop offset="0.78125" stop-color="#74C5FF"/>
<stop offset="1" stop-color="white"/>
</linearGradient>
</defs>
</svg>
<svg width="1920" height="70" viewBox="0 0 1920 70" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_i_377_3139)">
<path d="M0 4C0 1.79086 1.79086 0 4 0H1916C1918.21 0 1920 1.79086 1920 4V14.0732C1920 16.2535 1918.25 18.0322 1916.07 18.0725L1381.72 27.9406C1379.84 27.9753 1378.24 29.3129 1377.87 31.1554L1372.13 59.855C1371.76 61.6927 1370.23 63.0275 1368.35 63.0674C1339.01 63.6922 1110.9 68.4619 960 69C809.757 69.5357 580.901 63.8403 551.212 63.0827C549.304 63.034 547.768 61.6446 547.445 59.7632L542.559 31.2624C542.235 29.3695 540.611 27.9744 538.691 27.9389L3.92621 18.0724C1.74621 18.0322 0 16.2535 0 14.0731V4Z" fill="#148DD2" fill-opacity="0.01"/>
</g>
<path d="M4 0.5H1916C1917.93 0.5 1919.5 2.06701 1919.5 4V14.0732C1919.5 15.981 1917.97 17.5374 1916.06 17.5726L1381.71 27.4407C1379.59 27.4797 1377.79 28.9845 1377.38 31.0574L1371.64 59.7569C1371.32 61.3742 1369.97 62.5328 1368.34 62.5675C1339 63.1924 1110.89 67.9619 959.998 68.5C809.764 69.0357 580.915 63.3405 551.225 62.5829C549.566 62.5405 548.222 61.3358 547.938 59.6787L543.052 31.1779C542.687 29.0484 540.86 27.4789 538.7 27.439L3.93543 17.5725C2.02793 17.5373 0.5 15.9809 0.5 14.0731V4C0.5 2.067 2.067 0.5 4 0.5Z" stroke="#148DD2"/>
<path d="M548 63C739 69.5 1275.5 69.5 1371 62.5" stroke="url(#paint0_radial_377_3139)" stroke-width="2"/>
<defs>
<filter id="filter0_i_377_3139" x="0" y="0" width="1920" height="69.0354" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="7"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.0784314 0 0 0 0 0.552941 0 0 0 0 0.823529 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_377_3139"/>
</filter>
<radialGradient id="paint0_radial_377_3139" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(959 68) rotate(-94.6358) scale(37.1214 5748.89)">
<stop stop-color="white"/>
<stop offset="1" stop-color="white" stop-opacity="0"/>
</radialGradient>
</defs>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="44" height="49" fill="none"><g filter="url(#a)"><ellipse cx="22" cy="37.5" fill="url(#b)" rx="15" ry="7.5"/></g><g filter="url(#c)"><ellipse cx="22" cy="37.5" fill="#fff" rx="9" ry="4.5"/></g><path stroke="#148DD2" d="M43.5 38c0 2.746-2.24 5.367-6.167 7.331C33.435 47.28 28.014 48.5 22 48.5s-11.435-1.22-15.333-3.169C2.74 43.367.5 40.746.5 38s2.24-5.367 6.167-7.331C10.565 28.72 15.986 27.5 22 27.5s11.435 1.22 15.333 3.169C41.26 32.633 43.5 35.254 43.5 38Z"/><mask id="e" fill="#fff"><path fill-rule="evenodd" d="M7.3 16.075a2 2 0 0 1 .286-2.467L20.608.586a2 2 0 0 1 2.829 0l13.022 13.022a2 2 0 0 1 .286 2.467L23.722 37.12a2 2 0 0 1-3.402 0zm18.487-3.825a4.078 4.078 0 1 1-8.155 0 4.078 4.078 0 0 1 8.155 0m-4.079 5.435a5.42 5.42 0 0 0 3.366-1.166c1.623.615 2.669 2.214 3.194 3.652.379 1.038-.49 1.95-1.595 1.95h-10c-1.105 0-1.976-.912-1.6-1.951.41-1.137 1.146-2.374 2.245-3.15.572-.404 1.316-.232 1.941.084a5.4 5.4 0 0 0 2.45.581" clip-rule="evenodd"/></mask><path fill="url(#d)" fill-rule="evenodd" d="M7.3 16.075a2 2 0 0 1 .286-2.467L20.608.586a2 2 0 0 1 2.829 0l13.022 13.022a2 2 0 0 1 .286 2.467L23.722 37.12a2 2 0 0 1-3.402 0zm18.487-3.825a4.078 4.078 0 1 1-8.155 0 4.078 4.078 0 0 1 8.155 0m-4.079 5.435a5.42 5.42 0 0 0 3.366-1.166c1.623.615 2.669 2.214 3.194 3.652.379 1.038-.49 1.95-1.595 1.95h-10c-1.105 0-1.976-.912-1.6-1.951.41-1.137 1.146-2.374 2.245-3.15.572-.404 1.316-.232 1.941.084a5.4 5.4 0 0 0 2.45.581" clip-rule="evenodd"/><path fill="#fff" d="m25.074 16.519.354-.935zm0 0-.62-.785zM20.32 37.12l-.85.526zm-3.002-20.1.577.816zm1.941.083-.45.892zm17.486-1.03.85.527zm-29.446 0-.85.527zm20.969 4.097-.94.343zM20.608.586l-.707-.707zm2.829 0-.707.707zM19.9-.121 6.88 12.9l1.414 1.414L21.315 1.293zM37.166 12.9 24.144-.121 22.73 1.293l13.022 13.022zM24.572 37.647l13.024-21.046-1.701-1.052-13.024 21.046zM6.45 16.601l13.02 21.046 1.702-1.052L8.15 15.549zm15.26.727a5.08 5.08 0 0 0 5.078-5.078h-2c0 1.7-1.377 3.078-3.078 3.078zm-5.077-5.078a5.08 5.08 0 0 0 5.077 5.078v-2a3.08 3.08 0 0 1-3.077-3.078zm5.077-5.078a5.08 5.08 0 0 0-5.077 5.078h2c0-1.7 1.378-3.078 3.077-3.078zm5.078 5.078a5.08 5.08 0 0 0-5.078-5.078v2c1.7 0 3.078 1.378 3.078 3.078zm-2.333 3.484a4.42 4.42 0 0 1-2.746.951v2c1.464 0 2.86-.493 3.985-1.381zm4.753 4.094c-.569-1.558-1.762-3.48-3.779-4.244l-.709 1.87c1.23.466 2.128 1.743 2.61 3.06zM16.673 23.12h10v-2h-10zm.068-6.917c-1.322.934-2.157 2.375-2.61 3.627l1.882.68c.37-1.022 1.007-2.055 1.882-2.673zm4.967.482a4.4 4.4 0 0 1-1.998-.474l-.901 1.785c.887.449 1.876.69 2.9.69zm2.366-.166a1 1 0 0 0 .645.935l.71-1.87a1 1 0 0 1 .645.935zm1.62.785a1 1 0 0 1-1.62-.785h2a1 1 0 0 0-1.62-.785zm-2.822 19.29a1 1 0 0 1-1.701 0l-1.701 1.053c1.173 1.895 3.93 1.895 5.102 0zm-4.977-18.757c.046-.033.121-.064.28-.05.17.017.389.086.634.21l.901-1.786c-.69-.348-1.912-.754-2.97-.008zm17.857-3.522a1 1 0 0 1 .143 1.234l1.7 1.052a3 3 0 0 0-.429-3.7zm-19.08 6.805c-.283 0-.493-.117-.598-.239-.087-.1-.119-.212-.061-.371l-1.881-.68a2.33 2.33 0 0 0 .429 2.358c.512.594 1.29.932 2.112.932zM6.88 12.901a3 3 0 0 0-.43 3.7l1.7-1.052a1 1 0 0 1 .144-1.234zm20.45 7.613c.057.159.025.269-.06.368-.104.12-.313.238-.596.238v2c.82 0 1.599-.338 2.111-.933.53-.616.744-1.48.423-2.359zM21.314 1.293a1 1 0 0 1 1.415 0l1.414-1.414a3 3 0 0 0-4.243 0z" mask="url(#e)"/><defs><filter id="a" width="30" height="15" x="7" y="30" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feColorMatrix in="SourceAlpha" result="hardAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/><feOffset/><feGaussianBlur stdDeviation="2"/><feComposite in2="hardAlpha" k2="-1" k3="1" operator="arithmetic"/><feColorMatrix values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/><feBlend in2="shape" result="effect1_innerShadow_412_353"/></filter><filter id="c" width="26" height="17" x="9" y="29" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_412_353" stdDeviation="2"/></filter><radialGradient id="b" cx="0" cy="0" r="1" gradientTransform="matrix(0 7.5 -15 0 22 37.5)" gradientUnits="userSpaceOnUse"><stop stop-color="#148DD2" stop-opacity="0"/><stop offset="1" stop-color="#148DD2"/></radialGradient><linearGradient id="d" x1="22.022" x2="22.022" y1="0" y2="38.068" gradientUnits="userSpaceOnUse"><stop offset=".781" stop-color="#0FF"/><stop offset="1" stop-color="#fff"/></linearGradient></defs></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="44" height="49"><radialGradient id="a" cx="-230.705" cy="439.344" r="1" gradientTransform="matrix(0 7.5 15 0 -6568.156 1767.79)" gradientUnits="userSpaceOnUse"><stop offset="0" style="stop-color:#148dd2;stop-opacity:0"/><stop offset="1" style="stop-color:#148dd2"/></radialGradient><ellipse cx="22" cy="37.5" fill="url(#a)" rx="15" ry="7.5"/><ellipse cx="22" cy="37.5" fill="#FFF" rx="9" ry="4.5"/><path fill="none" stroke="#148DD2" d="M43.5 38c0 2.746-2.239 5.367-6.168 7.331C33.435 47.28 28.014 48.5 22 48.5s-11.435-1.22-15.333-3.169C2.739 43.367.5 40.746.5 38s2.239-5.367 6.167-7.331C10.565 28.72 15.986 27.5 22 27.5s11.435 1.22 15.332 3.169C41.261 32.633 43.5 35.254 43.5 38z"/><path fill="#A16DEF" d="M23.437.586a2 2 0 0 0-2.828 0L7.586 13.608a2 2 0 0 0-.287 2.467L20.32 37.121a2 2 0 0 0 3.401 0l13.024-21.046a2 2 0 0 0-.287-2.467z"/><path fill="#FFF" d="M28.754 19.861h-6.99a1.9 1.9 0 0 0 .35-.707h6.641c.301 0 .35.041.35.354-.001.312-.05.353-.351.353m0-1.768h-6.291a2.5 2.5 0 0 0 .025-.425 1.2 1.2 0 0 0-.025-.283h6.291c.301 0 .35-.03.35.283s-.049.425-.35.425m0-1.768h-6.291a1.9 1.9 0 0 0-.35-.708h6.641c.301 0 .35.042.35.354 0 .313-.049.354-.35.354m0-1.769h-7.339c-.354-.459-.55-.42-1.048-.707h8.388c.301 0 .35.041.35.354s-.05.353-.351.353m0-1.768h-9.087c-.3 0-.349-.041-.349-.354s.398-.354.699-.354h8.737c.301 0 .35.041.35.354s-.049.354-.35.354m0-1.768h-9.087c-.3 0-.349-.042-.349-.354 0-.313.245-.354.543-.354h8.893c.301 0 .35.041.35.354s-.049.354-.35.354m-6.719 6.648c.031 2.158-1.673 3.93-3.805 3.961-2.161 0-3.914-1.773-3.914-3.961s1.752-3.961 3.914-3.961c2.132.031 3.836 1.804 3.805 3.961m-2.458.431a1.2 1.2 0 0 0-.214-.354 1.4 1.4 0 0 0-.302-.258 4 4 0 0 0-.346-.193q-.176-.085-.347-.161a2.5 2.5 0 0 1-.304-.162.8.8 0 0 1-.214-.199.44.44 0 0 1-.08-.263.6.6 0 0 1 .035-.193.4.4 0 0 1 .108-.157.5.5 0 0 1 .182-.102.8.8 0 0 1 .255-.036q.175-.001.342.047.142.042.275.106.119.058.201.106a.3.3 0 0 0 .118.049.08.08 0 0 0 .06-.021.15.15 0 0 0 .035-.067 1 1 0 0 0 .017-.117q.004-.07.005-.173l-.003-.154a1 1 0 0 0-.012-.103q-.007-.034-.02-.065a.3.3 0 0 0-.046-.06.5.5 0 0 0-.141-.088 2 2 0 0 0-.24-.095 2 2 0 0 0-.292-.066q-.032-.002-.064-.005v-.585h-.534v.585a2 2 0 0 0-.286.061 1.3 1.3 0 0 0-.469.246 1.15 1.15 0 0 0-.314.414 1.3 1.3 0 0 0-.118.578 1.225 1.225 0 0 0 .294.845q.131.152.297.258.166.108.343.192.176.086.342.161.156.07.297.163a.8.8 0 0 1 .212.198.44.44 0 0 1 .082.266.6.6 0 0 1-.047.245.5.5 0 0 1-.138.185.7.7 0 0 1-.219.115 1 1 0 0 1-.292.041 1.5 1.5 0 0 1-.437-.058 2.1 2.1 0 0 1-.547-.257.3.3 0 0 0-.134-.059.1.1 0 0 0-.06.02.14.14 0 0 0-.041.065.5.5 0 0 0-.022.121q-.006.075-.007.185a1.2 1.2 0 0 0 .019.25q.013.075.063.132a.7.7 0 0 0 .144.106q.12.068.25.114.17.06.345.092.21.04.423.039h.02v.545h.535v-.619c.025-.007.053-.01.078-.018.188-.056.363-.149.516-.274.147-.123.268-.278.35-.454.089-.198.133-.415.128-.633a1.3 1.3 0 0 0-.081-.481m1.838 2.823h7.339c.301 0 .35.041.35.353 0 .313-.049.354-.35.354h-8.038c.497-.286.345-.247.699-.707"/><defs><filter id="b" width="31.045" height="39.068" x="6.5" y="-.5" filterUnits="userSpaceOnUse"><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"/></filter></defs><mask id="c" width="31.045" height="39.068" x="6.5" y="-.5" maskUnits="userSpaceOnUse"><path fill="#FFF" d="M23.437.586a2 2 0 0 0-2.828 0L7.586 13.608a2 2 0 0 0-.287 2.467L20.32 37.121a2 2 0 0 0 3.401 0l13.024-21.046a2 2 0 0 0-.287-2.467zm3.746 8.45a8.3 8.3 0 0 1 2.663 5.016l.043.213q.038.196.039.394v.938l-.082.848a8.3 8.3 0 0 1-2.663 5.017 7.77 7.77 0 0 1-5.182 1.995c-2.103 0-4.119-.865-5.606-2.404a8.36 8.36 0 0 1-2.322-5.804c0-2.177.835-4.265 2.322-5.804s3.503-2.404 5.606-2.404c1.902 0 3.741.708 5.182 1.995m-9.501 1.756a6.4 6.4 0 0 0-1.662 3.222c-.067.351.215.658.573.658.31 0 .566-.234.632-.537a5.13 5.13 0 0 1 1.307-2.462 4.85 4.85 0 0 1 2.343-1.356c.309-.076.548-.339.548-.658 0-.373-.323-.667-.687-.587a6.04 6.04 0 0 0-3.054 1.72m.014 8.929a6.05 6.05 0 0 0 3.04 1.705c.364.08.688-.214.688-.587 0-.318-.239-.583-.548-.658a4.85 4.85 0 0 1-2.327-1.341 5.1 5.1 0 0 1-1.313-2.438c-.068-.301-.324-.532-.632-.532-.359 0-.643.31-.572.663a6.37 6.37 0 0 0 1.664 3.188m3.034-1.394c.27 0 .488-.218.488-.488v-.877c0-.754.611-1.365 1.365-1.365h1.114a.431.431 0 1 0 0-.864h-1.625a.855.855 0 1 1 0-1.71h1.801a.432.432 0 0 0 0-.864h-1.631a2 2 0 0 0-2 2v3.681c0 .268.218.487.488.487m2.397 1.854c-.31.076-.549.339-.549.658 0 .373.323.667.688.587a6.03 6.03 0 0 0 3.039-1.705 6.4 6.4 0 0 0 1.668-3.189c.07-.352-.213-.663-.572-.663-.309 0-.564.232-.633.533a5.1 5.1 0 0 1-1.313 2.438 4.86 4.86 0 0 1-2.328 1.341m2.343-8.509a5.14 5.14 0 0 1 1.307 2.462c.066.303.323.537.633.537.357 0 .64-.307.572-.658a6.4 6.4 0 0 0-1.661-3.223 6.04 6.04 0 0 0-3.055-1.72c-.364-.08-.688.214-.688.587 0 .318.239.582.549.658a4.86 4.86 0 0 1 2.343 1.357" filter="url(#b)"/></mask><path fill="#FFF" d="m29.846 14.052-.496.071.002.014.004.014zm-2.663-5.016-.333.373zm2.745 6.561.497.048.003-.024v-.024zm-.082.847.494.071.002-.011.001-.011zm-7.845 7.012v.5zm-5.606-2.404-.359.347zm0-11.608.36.347zm5.606-2.404v-.5zm-4.319 3.752-.36-.347zm.85.88-.36-.346zm-.836 8.049.359-.348zm.852-.882.359-.348zm7.757.882-.358-.348zm-.835-8.049-.36.347zm2.511 2.342-.491.094zm-1.205.121-.488.106zm-.008 2.267-.488-.11zm1.205.13-.49-.098zm-4.846 3.649.119.485zm.139 1.244-.107-.488zm-.683-5.828v-.5zm-1.847 5.828-.107.488zm.001-12.354.107.488zm-4.717 4.943-.491-.095zm.01 2.517-.49.098zm20.716-.456.424.263zm-.287-2.467-.354.354zm-19.225 2.793-.488.11zm3.086 20.72-.425.263zm-3.095-22.986.489.106zm6.472 1.461v-.5zm6.192-1.331.49-.098zm-6.623-5.194-.108.489zM20.875 20.18l-.119.485zm2.252-9.864-.119.486zM20.608.586l-.354-.354zm2.829 0-.354.354zM7.939 13.962 20.962.939l-.708-.707L7.232 13.254zm12.807 22.895L7.725 15.812l-.851.526 13.021 21.046zM36.32 15.812 23.297 36.857l.85.526L37.17 16.338zM23.083.939l13.022 13.022.707-.707L23.79.232zM37.17 16.338a2.5 2.5 0 0 0-.357-3.083l-.707.707a1.5 1.5 0 0 1 .215 1.85zM19.895 37.384c.978 1.579 3.275 1.579 4.251 0l-.85-.526a1.5 1.5 0 0 1-2.551 0zM7.232 13.254a2.5 2.5 0 0 0-.358 3.083l.851-.526a1.5 1.5 0 0 1 .215-1.85zM20.962.939a1.5 1.5 0 0 1 2.121 0l.707-.707a2.5 2.5 0 0 0-3.536 0z" mask="url(#c)"/></svg>
\ No newline at end of file
<svg width="132" height="73" viewBox="0 0 132 73" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_bdi_336_8971)">
<path d="M20 26C20 23.7909 21.7909 22 24 22H41.56H53.44H62.68H104C106.209 22 108 23.7909 108 26V47C108 49.2091 106.209 51 104 51H24C21.7909 51 20 49.2091 20 47V26Z" fill="#3CC4FF" fill-opacity="0.01" shape-rendering="crispEdges"/>
<path d="M20.5 26C20.5 24.067 22.067 22.5 24 22.5H41.56H53.44H62.68H104C105.933 22.5 107.5 24.067 107.5 26V47C107.5 48.933 105.933 50.5 104 50.5H24C22.067 50.5 20.5 48.933 20.5 47V26Z" stroke="#3CC4FF" shape-rendering="crispEdges"/>
</g>
<defs>
<filter id="filter0_bdi_336_8971" x="0" y="0" width="132" height="73" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feGaussianBlur in="BackgroundImage" stdDeviation="7"/>
<feComposite in2="SourceAlpha" operator="in" result="effect1_backgroundBlur_336_8971"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset dx="2"/>
<feGaussianBlur stdDeviation="11"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.32 0"/>
<feBlend mode="normal" in2="effect1_backgroundBlur_336_8971" result="effect2_dropShadow_336_8971"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect2_dropShadow_336_8971" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset/>
<feGaussianBlur stdDeviation="7"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.235294 0 0 0 0 0.768627 0 0 0 0 1 0 0 0 1 0"/>
<feBlend mode="normal" in2="shape" result="effect3_innerShadow_336_8971"/>
</filter>
</defs>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="44px" height="49px" viewBox="0 0 44 49" enable-background="new 0 0 44 49" xml:space="preserve">
<g>
<radialGradient id="SVGID_1_" cx="-230.7046" cy="439.3438" r="1" gradientTransform="matrix(4.592426e-016 7.5 15 -9.184852e-016 -6568.1563 1767.7891)" gradientUnits="userSpaceOnUse">
<stop offset="0" style="stop-color:#148DD2;stop-opacity:0"/>
<stop offset="1" style="stop-color:#148DD2"/>
</radialGradient>
<ellipse fill="url(#SVGID_1_)" cx="22" cy="37.5" rx="15" ry="7.5"/>
</g>
<g>
<ellipse fill="#FFFFFF" cx="22" cy="37.5" rx="9" ry="4.5"/>
</g>
<path fill="none" stroke="#148DD2" d="M43.5,38c0,2.746-2.239,5.367-6.168,7.331C33.435,47.28,28.014,48.5,22,48.5
c-6.014,0-11.435-1.22-15.333-3.169C2.739,43.367,0.5,40.746,0.5,38s2.239-5.367,6.167-7.331C10.565,28.72,15.986,27.5,22,27.5
c6.014,0,11.435,1.22,15.332,3.169C41.261,32.633,43.5,35.254,43.5,38z"/>
<path fill="#83F870" d="M23.437,0.586c-0.78-0.781-2.047-0.781-2.828,0L7.586,13.608c-0.656,0.656-0.775,1.678-0.287,2.467
L20.32,37.121c0.782,1.264,2.619,1.264,3.401,0l13.024-21.046c0.488-0.789,0.369-1.811-0.287-2.467L23.437,0.586z M25.935,23.026
c0,0-0.041,2.996-2.696,3.243c-2.869,0.266-3.083,0-3.083,0s-2.795-0.693-2.649-3.198c0.147-2.505,0-6.667,0-6.667v-0.777
c0,0-0.064-3.061,3.13-3.288c0.114-0.008,0.048-1.005,0.048-1.005h-1.061l-0.048,0.548c0,0,0.106,0.432-0.096,0.457
c-0.415,0.05-1.638,0-1.638,0s-0.328-0.005-0.337-0.593c-0.012-0.797,0-3.106,0-3.106s-0.034-0.312,0.481-0.274
c0.516,0.037,1.204,0.045,1.204,0.045c0.185-0.027,0.355,0.101,0.382,0.285c0.002,0.011,0.003,0.023,0.003,0.035
c0.012,0.213,0.012,0.426,0,0.64h1.06l0.049-0.959c0.094-0.45,0.504-0.762,0.963-0.732c0.491-0.033,0.944,0.266,1.107,0.73v0.959
h0.915c0,0,0.859,0.25,0.867,0.868c0.012,0.991-0.771,1.096-0.771,1.096h-1.012v0.411l3.228-0.045
c0.807,0.036,1.519,0.534,1.83,1.279c0.323,0.838,0.24,3.425,0.24,3.425c0.465,0.12,0.759,0.578,0.675,1.051
c-0.065,0.467-0.445,0.827-0.915,0.867c0,0-1.126,0.023-1.156-0.913c-0.031-0.936,0.674-1.003,0.674-1.003l-0.047-2.741
c0,0-0.196-1.339-1.494-1.324c-1.342,0.015-2.648,0-2.648,0s2.117,0.662,2.505,1.734c0.388,1.073,0.289,1.553,0.289,1.553
L25.935,23.026L25.935,23.026z"/>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="67" height="67" viewBox="0 0 67 67">
<defs>
<style>
.cls-1 {
fill: #83f870;
fill-rule: evenodd;
}
</style>
</defs>
<path id="形状_1" data-name="形状 1" class="cls-1" d="M33.5,0A33.5,33.5,0,1,1,0,33.5,33.5,33.5,0,0,1,33.5,0ZM45.545,51.478s-0.11,8.488-7.209,9.186c-7.666.754-8.239,0-8.239,0s-7.472-1.962-7.08-9.057,0-18.89,0-18.89v-2.2s-0.173-8.674,8.368-9.316c0.306-.023.129-2.846,0.129-2.846H28.68l-0.129,1.553s0.284,1.224-.258,1.294a43.107,43.107,0,0,1-4.377,0s-0.877-.016-0.9-1.682c-0.032-2.258,0-8.8,0-8.8S22.925,9.837,24.3,9.945s3.218,0.129,3.218.129a0.908,0.908,0,0,1,1.03.906c0.048,1.014,0,1.811,0,1.811h2.832l0.129-2.717A2.528,2.528,0,0,1,34.087,8a2.965,2.965,0,0,1,2.961,2.07v2.717h2.446s2.3,0.707,2.317,2.458c0.031,2.808-2.06,3.105-2.06,3.105h-2.7V19.52l8.625-.129a5.546,5.546,0,0,1,4.892,3.623c0.864,2.372.644,9.7,0.644,9.7a2.574,2.574,0,0,1,1.8,2.976,2.748,2.748,0,0,1-2.446,2.458s-3.009.065-3.09-2.588,1.8-2.846,1.8-2.846l-0.129-7.763S48.627,21.16,45.158,21.2c-3.589.043-7.08,0-7.08,0s5.659,1.876,6.694,4.917,0.772,4.4.772,4.4V51.478Z"/>
</svg>
<svg id="组_1" data-name="组 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="44" height="49" viewBox="0 0 141 157">
<defs>
<style>
.cls-1, .cls-5 {
fill: none;
}
.cls-1 {
stroke: #148dd2;
stroke-width: 4px;
}
.cls-2 {
fill: #3286b8;
}
.cls-3 {
fill: url(#linear-gradient);
}
.cls-4 {
fill: #83f870;
}
.cls-4, .cls-5 {
fill-rule: evenodd;
}
.cls-5 {
stroke: #fff;
stroke-width: 2px;
}
</style>
<linearGradient id="linear-gradient" x1="70.5" y1="107" x2="70.5" y2="134" gradientUnits="userSpaceOnUse">
<stop offset="0.25" stop-color="#fff"/>
<stop offset="0.337" stop-color="#fff"/>
<stop offset="1.11" stop-color="#fff" stop-opacity="0"/>
</linearGradient>
</defs>
<ellipse id="椭圆_1" data-name="椭圆 1" class="cls-1" cx="70.5" cy="120.5" rx="68.5" ry="34.5"/>
<ellipse id="椭圆_2_拷贝_4" data-name="椭圆 2 拷贝 4" class="cls-2" cx="70.5" cy="120.5" rx="46.5" ry="24.5"/>
<ellipse id="椭圆_2" data-name="椭圆 2" class="cls-3" cx="70.5" cy="120.5" rx="33.5" ry="13.5"/>
<path id="形状_1" data-name="形状 1" class="cls-4" d="M56.4,13.547L70.074,0.859s1.8-3.651,9.469,4.229c8.183,8.407,39.979,37.888,41.03,40.179s0.4,3.263-5.261,11.631c-8.854,13.083-39.978,63.441-39.978,63.441s-5.707,3.066-8.416-4.229-39.8-62.031-41.03-65.556-1.92-4.265,3.156-9.516C36.224,33.32,56.4,13.547,56.4,13.547ZM85.8,69.119s-0.121,8.809-7.929,9.533c-8.432.782-9.061,0-9.061,0s-8.218-2.036-7.787-9.4,0-19.6,0-19.6V47.367s-0.19-9,9.2-9.667c0.336-.024.142-2.954,0.142-2.954H67.248l-0.142,1.611s0.312,1.27-.283,1.343c-1.219.148-4.814,0-4.814,0s-0.965-.017-0.991-1.745c-0.035-2.343,0-9.13,0-9.13s-0.1-.917,1.416-0.806,3.54,0.134,3.54.134a0.991,0.991,0,0,1,1.133.94,18.29,18.29,0,0,1,0,1.88h3.115l0.142-2.82A2.715,2.715,0,0,1,73.194,24a3.222,3.222,0,0,1,3.256,2.148v2.82h2.69s2.527,0.734,2.549,2.551c0.034,2.914-2.265,3.222-2.265,3.222H76.451v1.208l9.486-.134a6.13,6.13,0,0,1,5.38,3.76c0.95,2.462.708,10.07,0.708,10.07a2.7,2.7,0,0,1,1.982,3.088,2.972,2.972,0,0,1-2.69,2.551s-3.31.067-3.4-2.685S89.9,49.65,89.9,49.65L89.76,41.594s-0.574-3.937-4.389-3.894c-3.947.045-7.787,0-7.787,0s6.224,1.947,7.363,5.1,0.849,4.565.849,4.565V69.119Z" transform="translate(-2)"/>
<path id="形状_1_拷贝" data-name="形状 1 拷贝" class="cls-5" d="M56.4,13.547L70.074,0.859s1.8-3.651,9.469,4.229c8.183,8.407,39.979,37.888,41.03,40.179s0.4,3.263-5.261,11.631c-8.854,13.083-39.978,63.441-39.978,63.441s-5.707,3.066-8.416-4.229-39.8-62.031-41.03-65.556-1.92-4.265,3.156-9.516C36.224,33.32,56.4,13.547,56.4,13.547Z" transform="translate(-2)"/>
</svg>
<svg width="21" height="24" viewBox="0 0 27 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="Frame" clip-path="url(#clip0_649_1291)">
<path id="Vector" d="M13.5001 23.7578C13.8251 23.7578 20.5909 12.3435 20.5909 7.95251C20.5909 3.56149 17.4153 0 13.5001 0C9.58478 0 6.40918 3.56149 6.40918 7.95251C6.40918 12.3435 13.175 23.7578 13.5001 23.7578ZM10.148 7.95251C10.148 5.87676 11.6492 4.19314 13.5001 4.19314C15.351 4.19314 16.8521 5.87676 16.8521 7.95251C16.8521 10.0284 15.3509 11.7119 13.5001 11.7119C11.6492 11.7119 10.148 10.0284 10.148 7.95251Z" fill="#1890FF"/>
<path id="Vector_2" d="M18.6259 21.7832C20.1679 22.3649 21.1366 23.2052 21.1366 24.1397C21.1366 25.8958 17.7168 27.3199 13.5004 27.3199C9.28392 27.3199 5.8641 25.896 5.8641 24.1397C5.8641 23.2052 6.83286 22.3651 8.37483 21.7832C5.23419 22.5648 3.11523 24.042 3.11523 25.7356C3.11523 28.245 7.76625 30.2802 13.5004 30.2802C19.2345 30.2802 23.8855 28.245 23.8855 25.7355C23.8855 24.042 21.7666 22.5648 18.6259 21.7832Z" fill="#006DD1"/>
</g>
<defs>
<clipPath id="clip0_649_1291">
<rect width="27" height="30.2809" fill="white"/>
</clipPath>
</defs>
</svg>
<svg width="18" height="24" viewBox="0 0 22 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path id="Vector" d="M22 26.6602V27.5651C22 29.4384 17.6 31.0428 17.6 31.0428L15.7667 30.7827C15.7667 30.7827 12.8348 30.3736 11 30.3736C9.16793 30.3736 6.23333 30.7827 6.23333 30.7827L4.41343 31.0368C4.41343 31.0368 0 29.4316 0 27.5651V26.6602C0 24.9191 2.0342 23.1621 4.41826 21.8146C4.53374 21.7495 5.9664 30.8011 5.9664 30.8011L6.60001 30.7827C6.60001 30.7827 5.37578 21.437 5.50003 21.3735C6.15997 21.0367 6.59414 20.7211 7.2433 20.4599C7.4841 20.362 8.63532 19.6644 7.99131 17.786C6.49977 16.0896 5.48373 14.4461 5.48373 10.7398H16.5509C16.5509 14.4077 15.5089 16.0665 14.0272 17.7651H14.0357C13.4059 19.8961 14.4132 20.4015 14.5736 20.4594C15.216 20.6964 15.8555 21.0667 16.5 21.3735C16.6597 21.4494 15.4 30.7827 15.4 30.7827L16.0696 30.7627C16.0696 30.7627 17.4353 21.7406 17.5749 21.8169C19.9951 23.1389 22 24.8836 22 26.6602ZM17.3085 6.83657C17.3085 2.57742 12.11 0.448035 12.11 0.448035C11.3738 0.0780899 10.643 0.162365 9.88997 0.448035C9.88997 0.448035 4.69127 2.31773 4.69127 6.83657C4.69127 7.51215 3.59233 7.36712 3.22872 9.5041H18.7716C18.1099 7.35236 17.3085 7.51215 17.3085 6.83657Z" fill="#1890FF"/>
</svg>
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M24 12C24 18.6274 18.6274 24 12 24C5.37256 24 0 18.6274 0 12C0 5.37259 5.37256 0 12 0C18.6274 0 24 5.37259 24 12ZM11.8157 15.1111H12.7778V19H11.8157V15.1111ZM9.66669 15.1111H10.6288V19H9.66669V15.1111ZM17.9321 5.57088V17.8566H19V19H13.624V14.7354C13.624 14.4204 13.3611 14.1637 13.0391 14.1637H8.80176C8.4798 14.1637 8.21613 14.4212 8.21613 14.7354V19H5V17.8559H6.06787V10.7198C6.07013 10.5664 6.133 10.4202 6.24274 10.3131C6.35248 10.2059 6.50018 10.1466 6.65356 10.1481H10.1209V8.95264C10.1229 8.79916 10.1857 8.65276 10.2955 8.54546C10.4053 8.43817 10.553 8.37875 10.7065 8.3802H12.945C13.0984 8.37875 13.2463 8.43817 13.3561 8.54546C13.4658 8.65276 13.5286 8.79916 13.5306 8.95264V10.1489H14.4609V5.57166C14.4631 5.4183 14.526 5.27209 14.6357 5.16496C14.7455 5.05785 14.8932 4.99854 15.0466 4.99998H17.3464C17.4996 4.99852 17.6472 5.05774 17.757 5.16469C17.8667 5.27165 17.9296 5.41766 17.9321 5.57088ZM8.38879 13.3253H13.4544H13.4575V12.182H8.38879V13.3253Z" fill="#00FFFF"/>
</svg>
<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M23.0628 10.251C22.6568 7.40216 21.2748 4.79938 19.1691 2.91753C17.0634 1.03568 14.3743 0.000197346 11.5925 0C8.51794 0 5.56936 1.26428 3.39535 3.51472C1.22134 5.76516 0 8.8174 0 12C0 15.1826 1.22134 18.2348 3.39535 20.4853C5.56936 22.7357 8.51794 24 11.5925 24C14.3743 23.9998 17.0634 22.9643 19.1691 21.0825C21.2748 19.2006 22.6568 16.5978 23.0628 13.749H24.0047V10.251H23.0628ZM2.71191 11.1574C2.902 9.01483 3.80895 7.00827 5.27612 5.48425C6.74329 3.96023 8.67854 3.01445 10.7477 2.81025V4.64212C9.14707 4.83942 7.65761 5.58996 6.52027 6.77232C5.38293 7.95469 4.66424 9.4997 4.48048 11.1574H2.71191ZM10.7477 21.1901C8.68913 20.9869 6.76276 20.0497 5.29802 18.5387C3.83328 17.0277 2.92117 15.0369 2.71771 12.9067H4.48809C4.68476 14.5515 5.40819 16.0805 6.54284 17.2497C7.6775 18.4189 9.15792 19.1607 10.7477 19.3568V21.1901ZM10.4477 12.5093V16.5007H9.02002V7.482H14.9611V8.745H10.4462V11.2459H14.705V12.5089L10.4477 12.5093ZM12.4373 21.1901V19.3579C14.027 19.1618 15.5074 18.42 16.6421 17.2508C17.7767 16.0816 18.5001 14.5526 18.6968 12.9079H20.4672C20.2633 15.0378 19.3511 17.0282 17.8864 18.5388C16.4217 20.0495 14.4955 20.9865 12.4373 21.1898V21.1901ZM18.7044 11.1574C18.5207 9.4997 17.802 7.95469 16.6646 6.77232C15.5273 5.58996 14.0378 4.83942 12.4373 4.64212V2.81025C14.5063 3.01453 16.4415 3.96035 17.9086 5.48436C19.3757 7.00837 20.2826 9.01489 20.4726 11.1574H18.7044Z" fill="#00FFFF"/>
</svg>
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M12 24C18.6274 24 24 18.6274 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24ZM3.42381 12.4281C3.19063 12.3305 3 12.4487 3 12.6902V18.7036C3 18.9455 3.19063 19.0629 3.42381 18.9661L5.21764 18.2163C5.45123 18.1191 5.64145 17.8426 5.64145 17.6007V16.6257H9.27615C9.46324 16.6259 9.64647 16.5752 9.80426 16.4796C9.96204 16.3841 10.0878 16.2476 10.1667 16.0864L11.007 14.3597L9.22993 13.5741L8.64903 14.7676H5.64227V13.7927C5.64227 13.5512 5.45163 13.2743 5.21846 13.1771L3.42381 12.4281ZM18.6986 15.2456L19.9238 12.7559L16.9456 14.4709L18.6986 15.2456ZM20.6397 10.4623L8.46412 5.08163C8.24144 4.98377 7.98712 4.97348 7.7565 5.05302C7.52588 5.13255 7.33765 5.29547 7.23278 5.50629L5.11864 9.8035C5.01586 10.0148 5.00534 10.2562 5.08937 10.4748C5.1734 10.6935 5.34514 10.8716 5.567 10.9702L13.5961 14.5184C14.0579 14.7221 14.7918 14.684 15.2271 14.4336L20.6871 11.289C21.1224 11.0386 21.1007 10.6668 20.6397 10.4623Z" fill="#00FFFF"/>
</svg>
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 0C8.8174 0 5.76516 1.26428 3.51472 3.51472C1.26428 5.76516 0 8.8174 0 12C0 15.1826 1.26428 18.2348 3.51472 20.4853C5.76516 22.7357 8.8174 24 12 24C15.1826 24 18.2348 22.7357 20.4853 20.4853C22.7357 18.2348 24 15.1826 24 12C24 8.8174 22.7357 5.76516 20.4853 3.51472C18.2348 1.26428 15.1826 0 12 0V0ZM19.2 16.2H18V18H16.2V19.2H13.8V18H10.8V19.2H8.4V18H6.6V16.2H5.4V7.8H6.6V6H8.4V5.4H10.2V6H11.4V5.4H13.2V6H14.4V5.4H16.2V6H18V7.8H19.2V16.2ZM7.2 16.2H17.4V7.2H7.2V16.2ZM16.2 7.8H16.8V15.6H16.2V7.8ZM15 7.8H15.6V15.6H15V7.8ZM13.8 7.8H14.4V15.6H13.8V7.8ZM12.6 7.8H13.2V15.6H12.6V7.8ZM11.4 7.8H12V15.6H11.4V7.8ZM10.2 7.8H10.8V15.6H10.2V7.8ZM9 7.8H9.6V15.6H9V7.8ZM7.8 7.8H8.4V15.6H7.8V7.8Z" fill="#00FFFF"/>
</svg>
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12C0 5.37258 5.37258 0 12 0C18.6274 0 24 5.37258 24 12ZM16.1942 9.01682C16.1942 11.314 14.3319 13.1768 12.0343 13.1768C9.7366 13.1768 7.87429 11.3145 7.87429 9.01682C7.87429 6.71962 9.7366 4.85686 12.0343 4.85686C14.3319 4.85686 16.1942 6.71917 16.1942 9.01682ZM12.0343 14.5628C13.2967 14.5628 14.4982 14.1377 15.4676 13.3724V13.3728C17.9836 14.3267 19.1389 17.5964 19.1389 19.0869H4.85717C4.85717 17.583 6.00355 14.2902 8.57023 13.3479C9.54407 14.1279 10.7572 14.5628 12.0343 14.5628Z" fill="#00FFFF"/>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="27.68707275390625" height="32" viewBox="0 0 27.68707275390625 32"><g><g><path d="M27.687,11.8226Q27.687,18.352,15.0769,32Q0,18.352,0,11.8226C0,5.29315,6.19796,0,13.8435,0C21.4891,0,27.687,5.29315,27.687,11.8226Z" fill="#0D87F9" fill-opacity="1"/></g><g><path d="M17.375636115722656,17.974574525451658Q17.340746115722656,20.34887452545166,15.088516115722657,20.54417452545166Q12.656396115722657,20.75507452545166,12.474606115722656,20.54417452545166Q10.104040115722656,19.99527452545166,10.228405625722656,18.010674525451662Q10.352772115722656,16.026074525451662,10.228405625722656,12.72672452545166L10.228405625722656,12.11133452545166Q10.173519515722656,9.68502452545166,12.883236115722656,9.50543452545166Q12.980316115722657,9.49900452545166,12.924166115722656,8.70934452545166L12.025046115722656,8.70934452545166L11.984126115722656,9.14375452545166Q12.074226115722656,9.48613452545166,11.902266115722657,9.50571452545166C11.439686115722656,9.52645452545166,10.976207115722657,9.52645452545166,10.513623115722655,9.50571452545166Q10.235385715722657,9.50124452545166,10.228089145722656,9.03522452545166Q10.217936955722656,8.40361452545166,10.228089145722656,6.57366652545166Q10.199218015722657,6.32667152545166,10.635451115722656,6.35688152545166Q11.071683115722657,6.38709152545166,11.656396115722657,6.39296552545166C11.830086115722656,6.37219752545166,11.984376115722656,6.49185752545166,11.983176115722657,6.64639452545166Q11.998396115722656,6.93003452545166,11.983176115722657,7.15297452545166L12.881656115722656,7.15297452545166L12.922576115722656,6.39296552545166C12.993886115722656,6.04728952545166,13.342236115722656,5.80020072545166,13.740476115722656,5.81282124445166C14.166226115722656,5.79592122545166,14.551666115722657,6.03349852545166,14.679886115722656,6.39184652545166L14.679886115722656,7.15185452545166L15.455896115722656,7.15185452545166Q16.185596115722657,7.34961452545166,16.190996115722655,7.8394145254516605Q16.200826115722656,8.62487452545166,15.537436115722656,8.70794452545166L14.680836115722656,8.70794452545166L14.680836115722656,9.03522452545166L17.417206115722657,8.99914452545166C18.117386115722656,9.03405452545166,18.727186115722656,9.43224452545166,18.96923611572266,10.01257452545166Q19.24334611572266,10.67607452545166,19.173556115722654,12.72588452545166C19.579906115722657,12.83086452545166,19.827836115722654,13.19228452545166,19.744626115722657,13.55833452545166C19.703316115722657,13.92065452545166,19.37933611572266,14.20770452545166,18.968606115722658,14.24589452545166Q18.013966115722656,14.26407452545166,17.988266115722656,13.521974525451661Q17.962576115722655,12.77986452545166,18.559336115722658,12.72588452545166L18.51841611572266,10.55439452545166Q18.35343611572266,9.49396452545166,17.252866115722657,9.50515452545166Q16.114216115722655,9.517184525451661,15.006666115722656,9.50515452545166Q16.802036115722657,10.029914525451659,17.130396115722657,10.880554525451661Q17.458766115722657,11.73118452545166,17.375326115722658,12.11133452545166L17.375636115722656,17.974574525451658L17.375636115722656,17.974574525451658Z" fill-rule="evenodd" fill="#FFFFFF" fill-opacity="1"/></g></g></svg>
\ No newline at end of file
<svg width="42" height="45" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6552 9.77278C16.6552 12.9211 14.103 15.4733 10.9547 15.4733C7.80636 15.4733 5.25415 12.9211 5.25415 9.77278C5.25415 6.62447 7.80636 4.07227 10.9547 4.07227C14.103 4.07227 16.6552 6.62447 16.6552 9.77278ZM10.867 11.2506H11.324V13.098H10.867V11.2506ZM9.84612 11.2506H10.3032V13.098H9.84612V11.2506ZM13.7726 6.71854V12.5548H14.2799V13.0979H11.726V11.0721C11.726 10.9225 11.6011 10.8005 11.4482 10.8005H9.43527C9.2823 10.8005 9.15705 10.9228 9.15705 11.0721V13.0979H7.62926V12.5544H8.13655V9.16448C8.13763 9.09164 8.16749 9.02218 8.21963 8.97129C8.27176 8.9204 8.34192 8.89223 8.41477 8.89292H10.0619V8.32503C10.0629 8.25212 10.0927 8.18257 10.1448 8.1316C10.197 8.08063 10.2672 8.0524 10.3401 8.0531H11.4035C11.4764 8.0524 11.5466 8.08063 11.5987 8.1316C11.6509 8.18257 11.6807 8.25212 11.6817 8.32503V8.89329H12.1236V6.71891C12.1247 6.64607 12.1545 6.57661 12.2067 6.52572C12.2588 6.47483 12.3289 6.44666 12.4018 6.44735H13.4943C13.5671 6.44666 13.6372 6.47478 13.6894 6.52559C13.7415 6.5764 13.7714 6.64576 13.7726 6.71854ZM9.23907 10.4022H11.6455H11.647V9.8591H9.23907V10.4022Z" fill="#F0C41B"/>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#F0C41B"/>
<g filter="url(#filter0_f_194_268)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#F0C41B"/>
</g>
<defs>
<filter id="filter0_f_194_268" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_268"/>
</filter>
</defs>
</svg>
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16 8C16 12.4183 12.4183 16 8 16C3.58172 16 0 12.4183 0 8C0 3.58172 3.58172 0 8 0C12.4183 0 16 3.58172 16 8ZM7.87702 10.0747H8.51843V12.6673H7.87702V10.0747ZM6.44436 10.0747H7.08576V12.6673H6.44436V10.0747ZM11.9546 3.71455V11.9051H12.6666V12.6673H9.08258V9.82425C9.08258 9.61425 8.90732 9.44314 8.69265 9.44314H5.86777C5.6531 9.44314 5.47732 9.61476 5.47732 9.82425V12.6673H3.33325V11.9045H4.04518V7.14714C4.04668 7.04491 4.08859 6.94743 4.16176 6.87602C4.23492 6.8046 4.33338 6.76506 4.43562 6.76603H6.74717V5.96907C6.74854 5.86675 6.79039 5.76914 6.86357 5.69761C6.93675 5.62608 7.03529 5.58647 7.13762 5.58744H8.62991C8.73223 5.58647 8.83077 5.62608 8.90395 5.69761C8.97713 5.76914 9.01899 5.86675 9.02035 5.96907V6.76655H9.6405V3.71507C9.642 3.61284 9.68392 3.51536 9.75708 3.44395C9.83025 3.37253 9.92871 3.33299 10.0309 3.33396H11.5642C11.6663 3.33299 11.7647 3.37246 11.8379 3.44377C11.911 3.51507 11.953 3.61241 11.9546 3.71455ZM5.59243 8.88417H8.96954H8.97161V8.12195H5.59243V8.88417Z" fill="#F0C41B"/>
</svg>
<svg width="42" height="45" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#FA8167"/>
<path d="M16.6134 8.94262C16.4134 7.58911 15.7326 6.3525 14.6954 5.45841C13.6581 4.56433 12.3334 4.07236 10.963 4.07227C9.44847 4.07227 7.99596 4.67294 6.92503 5.74214C5.85409 6.81135 5.25244 8.2615 5.25244 9.77359C5.25244 11.2857 5.85409 12.7358 6.92503 13.805C7.99596 14.8742 9.44847 15.4749 10.963 15.4749C12.3334 15.4748 13.6581 14.9828 14.6954 14.0888C15.7326 13.1947 16.4134 11.9581 16.6134 10.6046L16.6551 9.77359L16.6134 8.94262ZM6.58836 9.37325C6.682 8.3553 7.12877 7.40197 7.85151 6.67789C8.57425 5.95381 9.52758 5.50446 10.5468 5.40744V6.27779C9.75838 6.37152 9.02466 6.72811 8.46439 7.28987C7.90413 7.85162 7.55009 8.58567 7.45957 9.37325H6.58836ZM10.5468 14.1399C9.5328 14.0434 8.58385 13.5981 7.8623 12.8802C7.14075 12.1623 6.69144 11.2165 6.59121 10.2044H7.46332C7.5602 10.9858 7.91657 11.7123 8.47551 12.2678C9.03445 12.8233 9.76372 13.1757 10.5468 13.2689V14.1399ZM10.3991 10.0155V11.9119H9.69579V7.62704H12.6225V8.2271H10.3984V9.4153H12.4963V10.0154L10.3991 10.0155ZM11.3792 14.1399V13.2694C12.1623 13.1762 12.8915 12.8238 13.4505 12.2683C14.0094 11.7128 14.3658 10.9863 14.4627 10.2049H15.3348C15.2344 11.2169 14.785 12.1625 14.0635 12.8803C13.3419 13.598 12.3931 14.0434 11.3792 14.1399ZM14.4664 9.37325C14.3759 8.58567 14.0219 7.85162 13.4616 7.28987C12.9013 6.72811 12.1676 6.37152 11.3792 6.27779V5.40744C12.3984 5.5045 13.3517 5.95387 14.0744 6.67794C14.7971 7.40202 15.2438 8.35533 15.3375 9.37325H14.4664Z" fill="#FA8167"/>
<g filter="url(#filter0_f_194_248)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#FA8167"/>
</g>
<defs>
<filter id="filter0_f_194_248" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_248"/>
</filter>
</defs>
</svg>
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M15.3722 6.834C15.1015 4.93477 14.1804 3.19959 12.7769 1.94502C11.3734 0.690454 9.58101 0.000131564 7.72679 0C5.67751 0 3.71218 0.842855 2.26312 2.34315C0.81407 3.84344 0 5.87827 0 8C0 10.1217 0.81407 12.1566 2.26312 13.6569C3.71218 15.1571 5.67751 16 7.72679 16C9.58101 15.9999 11.3734 15.3095 12.7769 14.055C14.1804 12.8004 15.1015 11.0652 15.3722 9.166H16V6.834H15.3722ZM1.80758 7.43825C1.93429 6.00989 2.5388 4.67218 3.51672 3.65617C4.49464 2.64015 5.78456 2.00963 7.1637 1.8735V3.09475C6.09685 3.22628 5.10407 3.72664 4.346 4.51488C3.58792 5.30312 3.10888 6.33313 2.9864 7.43825H1.80758ZM7.1637 14.1267C5.79162 13.9913 4.50762 13.3665 3.53132 12.3591C2.55502 11.3518 1.94707 10.0246 1.81145 8.6045H2.99147C3.12256 9.70097 3.60475 10.7203 4.36104 11.4998C5.11733 12.2792 6.10408 12.7738 7.1637 12.9045V14.1267ZM6.96377 8.3395V11.0005H6.01216V4.988H9.97214V5.83H6.9628V7.49725H9.80143V8.33925L6.96377 8.3395ZM8.28988 14.1267V12.9052C9.34949 12.7746 10.3362 12.28 11.0925 11.5005C11.8488 10.7211 12.331 9.70172 12.4621 8.60525H13.6421C13.5062 10.0252 12.8982 11.3521 11.9219 12.3592C10.9456 13.3663 9.66179 13.991 8.28988 14.1265V14.1267ZM12.4672 7.43825C12.3447 6.33313 11.8657 5.30312 11.1076 4.51488C10.3495 3.72664 9.35672 3.22628 8.28988 3.09475V1.8735C9.66897 2.00969 10.9588 2.64023 11.9367 3.65624C12.9146 4.67225 13.5191 6.00992 13.6457 7.43825H12.4672Z" fill="#FA8167"/>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="27.68707275390625" height="32" viewBox="0 0 27.68707275390625 32"><defs><clipPath id="master_svg0_15_09322"><rect x="4.92307710647583" y="4.307692050933838" width="17.230770111083984" height="17.23076820373535" rx="0"/></clipPath></defs><g><g><path d="M27.687,11.8226Q27.687,18.352,15.0769,32Q0,18.352,0,11.8226C0,5.29315,6.19796,0,13.8435,0C21.4891,0,27.687,5.29315,27.687,11.8226Z" fill="#0D87F9" fill-opacity="1"/></g><g clip-path="url(#master_svg0_15_09322)"><g><path d="M19.28207804397583,6.461500644683838C19.28207804397583,6.461500644683838,13.538487043975831,6.461500644683838,13.538487043975831,6.461500644683838C13.14361504397583,6.461500644683838,12.82053804397583,6.7845776446838375,12.82053804397583,7.179449644683838C12.82053804397583,7.179449644683838,12.82053804397583,8.335350644683839,12.82053804397583,8.335350644683839C12.82053804397583,8.335350644683839,12.82053820846183,8.335350644683839,12.82771767397583,8.342530644683837C12.82771767397583,8.342530644683837,16.41745804397583,11.573290644683837,16.41745804397583,11.573290644683837C16.86976804397583,11.975350644683838,17.12822804397583,12.564060644683838,17.12822804397583,13.174320644683839C17.12822804397583,13.174320644683839,17.12822804397583,13.64099064468384,17.12822804397583,13.64099064468384C17.12822804397583,13.64099064468384,18.56412804397583,13.64099064468384,18.56412804397583,13.64099064468384C18.56412804397583,13.64099064468384,18.56412804397583,15.076880644683838,18.56412804397583,15.076880644683838C18.56412804397583,15.076880644683838,17.12822804397583,15.076880644683838,17.12822804397583,15.076880644683838C17.12822804397583,15.076880644683838,17.12822804397583,16.512800644683836,17.12822804397583,16.512800644683836C17.12822804397583,16.512800644683836,18.56412804397583,16.512800644683836,18.56412804397583,16.512800644683836C18.56412804397583,16.512800644683836,18.56412804397583,17.94870064468384,18.56412804397583,17.94870064468384C18.56412804397583,17.94870064468384,17.12822804397583,17.94870064468384,17.12822804397583,17.94870064468384C17.12822804397583,17.94870064468384,17.12822804397583,19.384600644683836,17.12822804397583,19.384600644683836C17.12822804397583,19.384600644683836,19.28207804397583,19.384600644683836,19.28207804397583,19.384600644683836C19.67694804397583,19.384600644683836,20.00002804397583,19.06150064468384,20.00002804397583,18.66660064468384C20.00002804397583,18.66660064468384,20.00002804397583,7.179449644683838,20.00002804397583,7.179449644683838C20.00002804397583,6.7845776446838375,19.67694804397583,6.461500644683838,19.28207804397583,6.461500644683838C19.28207804397583,6.461500644683838,19.28207804397583,6.461500644683838,19.28207804397583,6.461500644683838ZM15.69232804397583,9.333290644683839C15.69232804397583,9.333290644683839,14.25643804397583,9.333290644683839,14.25643804397583,9.333290644683839C14.25643804397583,9.333290644683839,14.25643804397583,7.897400644683838,14.25643804397583,7.897400644683838C14.25643804397583,7.897400644683838,15.69232804397583,7.897400644683838,15.69232804397583,7.897400644683838C15.69232804397583,7.897400644683838,15.69232804397583,9.333290644683839,15.69232804397583,9.333290644683839C15.69232804397583,9.333290644683839,15.69232804397583,9.333290644683839,15.69232804397583,9.333290644683839ZM18.56412804397583,12.205090644683839C18.56412804397583,12.205090644683839,17.12822804397583,12.205090644683839,17.12822804397583,12.205090644683839C17.12822804397583,12.205090644683839,17.12822804397583,10.769190644683839,17.12822804397583,10.769190644683839C17.12822804397583,10.769190644683839,18.56412804397583,10.769190644683839,18.56412804397583,10.769190644683839C18.56412804397583,10.769190644683839,18.56412804397583,12.205090644683839,18.56412804397583,12.205090644683839C18.56412804397583,12.205090644683839,18.56412804397583,12.205090644683839,18.56412804397583,12.205090644683839ZM18.56412804397583,9.333290644683839C18.56412804397583,9.333290644683839,17.12822804397583,9.333290644683839,17.12822804397583,9.333290644683839C17.12822804397583,9.333290644683839,17.12822804397583,7.897400644683838,17.12822804397583,7.897400644683838C17.12822804397583,7.897400644683838,18.56412804397583,7.897400644683838,18.56412804397583,7.897400644683838C18.56412804397583,7.897400644683838,18.56412804397583,9.333290644683839,18.56412804397583,9.333290644683839C18.56412804397583,9.333290644683839,18.56412804397583,9.333290644683839,18.56412804397583,9.333290644683839Z" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M15.69233673538208,18.66668080093384C15.69233673538208,18.66668080093384,15.69233673538208,13.174380800933838,15.69233673538208,13.174380800933838C15.69233673538208,12.973350800933838,15.60617673538208,12.779510800933839,15.45540673538208,12.643100800933837C15.45540673538208,12.643100800933837,11.86566673538208,9.412327800933838,11.86566673538208,9.412327800933838C11.72925673538208,9.283096800933837,11.55694673538208,9.225660800933838,11.384636735382081,9.225660800933838C11.212336735382081,9.225660800933838,11.04002673538208,9.290276300933838,10.90361673538208,9.412327800933838C10.90361673538208,9.412327800933838,7.31386973538208,12.643100800933837,7.31386973538208,12.643100800933837C7.16310053538208,12.772330800933839,7.07694673538208,12.966170800933838,7.07694673538208,13.174380800933838C7.07694673538208,13.174380800933838,7.07694673538208,18.66668080093384,7.07694673538208,18.66668080093384C7.07694673538208,19.06156080093384,7.40002373538208,19.384660800933837,7.79489573538208,19.384660800933837C7.79489573538208,19.384660800933837,9.23079673538208,19.384660800933837,9.23079673538208,19.384660800933837C9.62566673538208,19.384660800933837,9.94873673538208,19.06156080093384,9.94873673538208,18.66668080093384C9.94873673538208,18.66668080093384,9.94873673538208,15.794890800933839,9.94873673538208,15.794890800933839C9.94873673538208,15.794890800933839,12.820536735382081,15.794890800933839,12.820536735382081,15.794890800933839C12.820536735382081,15.794890800933839,12.820536735382081,18.66668080093384,12.820536735382081,18.66668080093384C12.820536735382081,19.06156080093384,13.14361673538208,19.384660800933837,13.53848673538208,19.384660800933837C13.53848673538208,19.384660800933837,14.97438673538208,19.384660800933837,14.97438673538208,19.384660800933837C15.36925673538208,19.384660800933837,15.69233673538208,19.06156080093384,15.69233673538208,18.66668080093384C15.69233673538208,18.66668080093384,15.69233673538208,18.66668080093384,15.69233673538208,18.66668080093384Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>
\ No newline at end of file
<svg width="42" height="45" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.9547 15.4733C14.103 15.4733 16.6552 12.9211 16.6552 9.77278C16.6552 6.62447 14.103 4.07227 10.9547 4.07227C7.80636 4.07227 5.25415 6.62447 5.25415 9.77278C5.25415 12.9211 7.80636 15.4733 10.9547 15.4733ZM6.88066 9.97604C6.76989 9.92967 6.67933 9.98583 6.67933 10.1006V12.9572C6.67933 13.0721 6.76989 13.1279 6.88066 13.0819L7.73281 12.7257C7.84377 12.6795 7.93413 12.5481 7.93413 12.4332V11.9701H9.66077C9.74965 11.9702 9.83669 11.9461 9.91164 11.9007C9.9866 11.8553 10.0463 11.7905 10.0838 11.7139L10.483 10.8936L9.63881 10.5205L9.36286 11.0874H7.93452V10.6243C7.93452 10.5096 7.84396 10.378 7.73319 10.3318L6.88066 9.97604ZM14.1368 11.3145L14.7188 10.1318L13.3041 10.9465L14.1368 11.3145ZM15.0589 9.04219L9.27502 6.48616C9.16924 6.43967 9.04843 6.43478 8.93887 6.47256C8.82932 6.51035 8.7399 6.58774 8.69008 6.68789L7.68578 8.72924C7.63695 8.82962 7.63195 8.94429 7.67187 9.04816C7.71179 9.15204 7.79337 9.23664 7.89877 9.28346L11.7129 10.969C11.9323 11.0658 12.281 11.0477 12.4877 10.9287L15.0815 9.43494C15.2882 9.31597 15.2779 9.13936 15.0589 9.04219Z" fill="#36E7C7"/>
<path d="M10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.665 19.2892 8.7725 19.4688C9.14689 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689Z" stroke="#36E7C7"/>
<g filter="url(#filter0_f_175_404)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#36E7C7"/>
</g>
<defs>
<filter id="filter0_f_175_404" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_175_404"/>
</filter>
</defs>
</svg>
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8 16C12.4183 16 16 12.4183 16 8C16 3.58172 12.4183 0 8 0C3.58172 0 0 3.58172 0 8C0 12.4183 3.58172 16 8 16ZM2.28254 8.28605C2.12709 8.22097 2 8.29979 2 8.46079V12.4697C2 12.631 2.12709 12.7092 2.28254 12.6447L3.47843 12.1448C3.63415 12.08 3.76097 11.8957 3.76097 11.7344V11.0845H6.1841C6.30883 11.0846 6.43098 11.0508 6.53617 10.9871C6.64136 10.9234 6.7252 10.8324 6.77782 10.7249L7.33799 9.57378L6.15328 9.05008L5.76602 9.84574H3.76151V9.19578C3.76151 9.03478 3.63442 8.85019 3.47897 8.78538L2.28254 8.28605ZM12.4657 10.1644L13.2825 8.5046L11.2971 9.64793L12.4657 10.1644ZM13.7598 6.9755L5.64275 3.3884C5.4943 3.32316 5.32474 3.31631 5.171 3.36933C5.01726 3.42235 4.89177 3.53096 4.82185 3.67151L3.41243 6.53631C3.34391 6.67718 3.33689 6.83811 3.39291 6.98388C3.44893 7.12966 3.56343 7.24839 3.71133 7.31409L9.06405 9.67956C9.37195 9.81541 9.86121 9.79 10.1514 9.62304L13.7914 7.52668C14.0816 7.35972 14.0671 7.11187 13.7598 6.9755Z" fill="#36E7C7"/>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M21.27 12.4812C21.27 16.5018 18.0106 19.7612 13.99 19.7612C9.96936 19.7612 6.70999 16.5018 6.70999 12.4812C6.70999 8.46054 9.96936 5.20117 13.99 5.20117C18.0106 5.20117 21.27 8.46054 21.27 12.4812ZM13.8781 14.3685H14.4618V16.7277H13.8781V14.3685ZM12.5744 14.3685H13.1581V16.7277H12.5744V14.3685ZM17.5888 8.58069V16.034H18.2366V16.7277H14.9752V14.1405C14.9752 13.9494 14.8157 13.7937 14.6203 13.7937H12.0497C11.8543 13.7937 11.6944 13.9499 11.6944 14.1405V16.7277H9.74329V16.0336H10.3911V11.7043C10.3925 11.6113 10.4306 11.5226 10.4972 11.4576C10.5638 11.3926 10.6534 11.3566 10.7464 11.3575H12.85V10.6323C12.8512 10.5392 12.8893 10.4504 12.9559 10.3853C13.0225 10.3202 13.1121 10.2841 13.2053 10.285H14.5632C14.6564 10.2841 14.746 10.3202 14.8126 10.3853C14.8792 10.4504 14.9173 10.5392 14.9185 10.6323V11.358H15.4829V8.58116C15.4843 8.48813 15.5224 8.39943 15.589 8.33444C15.6556 8.26945 15.7452 8.23347 15.8382 8.23435H17.2335C17.3264 8.23346 17.4159 8.26939 17.4825 8.33427C17.5491 8.39916 17.5873 8.48774 17.5888 8.58069ZM11.7991 13.285H14.8723H14.8742V12.5914H11.7991V13.285Z" fill="#00FFFF"/>
<path d="M7.44824 5.83351C3.83717 9.44459 3.82476 15.2913 7.42591 18.8924C7.81326 19.2798 8.35772 20.0322 8.98153 20.9872C9.59772 21.9305 10.2672 23.0332 10.9036 24.0936C11.0451 24.3294 11.185 24.5632 11.3224 24.7928C11.8004 25.5915 12.247 26.3378 12.6167 26.9281C12.8542 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.4069 28.0941 13.4841 28.1781C13.5225 28.2198 13.5674 28.2648 13.6172 28.3047C13.6581 28.3376 13.7441 28.4018 13.8631 28.4328C14.0424 28.4794 14.1911 28.4243 14.2649 28.3887C14.3444 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7267 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.8909 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6812 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5071 5.81118C16.906 2.21002 11.0593 2.22243 7.44824 5.83351Z" stroke="#00FFFF"/>
<g filter="url(#filter0_f_159_207)">
<path d="M14 29L16.598 24.5H11.4019L14 29Z" fill="#00FFFF"/>
</g>
<defs>
<filter id="filter0_f_159_207" x="9.40189" y="22.5" width="9.19617" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_159_207"/>
</filter>
</defs>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.44827 5.83351C3.8372 9.44459 3.82479 15.2913 7.42594 18.8924C7.81329 19.2798 8.35775 20.0322 8.98156 20.9872C9.59775 21.9305 10.2673 23.0332 10.9036 24.0936C11.0451 24.3294 11.1851 24.5632 11.3224 24.7928C11.8004 25.5915 12.2471 26.3378 12.6167 26.9281C12.8543 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.407 28.0941 13.4842 28.1781C13.5225 28.2198 13.5675 28.2648 13.6172 28.3047C13.6582 28.3376 13.7441 28.4018 13.8631 28.4328C14.0425 28.4794 14.1911 28.4243 14.2649 28.3887C14.3445 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7268 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.891 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6813 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5072 5.81118C16.906 2.21002 11.0594 2.22243 7.44827 5.83351Z" stroke="#00FFFF"/>
<path d="M21.2167 11.421C20.9613 9.69245 20.0919 8.11321 18.7672 6.97139C17.4425 5.82957 15.7508 5.20129 14.0007 5.20117C12.0665 5.20117 10.2116 5.96828 8.84391 7.33374C7.47624 8.6992 6.70789 10.5512 6.70789 12.4822C6.70789 14.4133 7.47624 16.2652 8.84391 17.6307C10.2116 18.9961 12.0665 19.7632 14.0007 19.7632C15.7508 19.7631 17.4425 19.1348 18.7672 17.993C20.0919 16.8512 20.9613 15.272 21.2167 13.5434L21.27 12.4822L21.2167 11.421ZM8.41395 11.9709C8.53354 10.6709 9.1041 9.45346 10.0271 8.52876C10.9501 7.60405 12.1676 7.0302 13.4693 6.9063V8.01779C12.4623 8.1375 11.5253 8.5929 10.8098 9.3103C10.0943 10.0277 9.64217 10.9651 9.52657 11.9709H8.41395ZM13.4693 18.0583C12.1742 17.935 10.9623 17.3664 10.0409 16.4496C9.11941 15.5328 8.5456 14.3249 8.4176 13.0324H9.53135C9.65507 14.0303 10.1102 14.9581 10.824 15.6675C11.5378 16.3769 12.4691 16.827 13.4693 16.9459V18.0583ZM13.2806 12.7912V15.213H12.3824V9.7409H16.12V10.5072H13.2796V12.0246H15.9588V12.791L13.2806 12.7912ZM14.5322 18.0583V16.9466C15.5323 16.8277 16.4636 16.3775 17.1774 15.6681C17.8912 14.9587 18.3464 14.031 18.4701 13.0331H19.5838C19.4556 14.3254 18.8817 15.5331 17.9602 16.4497C17.0388 17.3663 15.827 17.935 14.5322 18.0583ZM18.4749 11.9709C18.3593 10.9651 17.9071 10.0277 17.1916 9.3103C16.4761 8.5929 15.5391 8.1375 14.5322 8.01779V6.9063C15.8338 7.03025 17.0512 7.60413 17.9742 8.52882C18.8971 9.45352 19.4677 10.671 19.5873 11.9709H18.4749Z" fill="#00FFFF"/>
<g filter="url(#filter0_f_159_150)">
<path d="M14 29L16.5981 24.5H11.4019L14 29Z" fill="#00FFFF"/>
</g>
<defs>
<filter id="filter0_f_159_150" x="9.40192" y="22.5" width="9.19617" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_159_150"/>
</filter>
</defs>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M13.99 19.7612C18.0107 19.7612 21.27 16.5018 21.27 12.4812C21.27 8.46054 18.0107 5.20117 13.99 5.20117C9.96939 5.20117 6.71002 8.46054 6.71002 12.4812C6.71002 16.5018 9.96939 19.7612 13.99 19.7612ZM8.78711 12.7408C8.64565 12.6815 8.53 12.7533 8.53 12.8998V16.5479C8.53 16.6946 8.64565 16.7659 8.78711 16.7071L9.87537 16.2523C10.0171 16.1933 10.1325 16.0255 10.1325 15.8788V15.2873H12.3375C12.451 15.2874 12.5622 15.2567 12.6579 15.1987C12.7536 15.1407 12.8299 15.0579 12.8778 14.9601L13.3876 13.9126L12.3095 13.436L11.9571 14.1601H10.133V13.5686C10.133 13.4221 10.0173 13.2541 9.87586 13.1951L8.78711 12.7408ZM18.0538 14.45L18.7971 12.9396L16.9904 13.9801L18.0538 14.45ZM19.2314 11.5482L11.8449 8.2839C11.7098 8.22453 11.5555 8.21829 11.4156 8.26654C11.2757 8.31479 11.1615 8.41362 11.0979 8.54153L9.81531 11.1485C9.75296 11.2767 9.74657 11.4231 9.79755 11.5558C9.84853 11.6884 9.95272 11.7965 10.0873 11.8563L14.9583 14.0088C15.2385 14.1325 15.6837 14.1094 15.9478 13.9574L19.2602 12.0497C19.5242 11.8978 19.5111 11.6722 19.2314 11.5482Z" fill="#00FFFF"/>
<path d="M7.44827 5.83351C3.8372 9.44459 3.82479 15.2913 7.42594 18.8924C7.81329 19.2798 8.35775 20.0322 8.98156 20.9872C9.59775 21.9305 10.2673 23.0332 10.9036 24.0936C11.0451 24.3294 11.1851 24.5632 11.3224 24.7928C11.8004 25.5915 12.2471 26.3378 12.6167 26.9281C12.8543 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.407 28.0941 13.4842 28.1781C13.5225 28.2198 13.5675 28.2648 13.6172 28.3047C13.6582 28.3376 13.7441 28.4018 13.8631 28.4328C14.0425 28.4794 14.1911 28.4243 14.2649 28.3887C14.3445 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7268 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.891 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6813 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5072 5.81118C16.906 2.21002 11.0594 2.22243 7.44827 5.83351Z" stroke="#00FFFF"/>
<g filter="url(#filter0_f_159_193)">
<path d="M14 29L16.5981 24.5H11.4019L14 29Z" fill="#00FFFF"/>
</g>
<defs>
<filter id="filter0_f_159_193" x="9.40192" y="22.5" width="9.19617" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_159_193"/>
</filter>
</defs>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13.99 5.19922C12.0592 5.19922 10.2075 5.96622 8.84225 7.33148C7.47699 8.69675 6.70999 10.5484 6.70999 12.4792C6.70999 14.41 7.47699 16.2617 8.84225 17.627C10.2075 18.9922 12.0592 19.7592 13.99 19.7592C15.9208 19.7592 17.7725 18.9922 19.1377 17.627C20.503 16.2617 21.27 14.41 21.27 12.4792C21.27 10.5484 20.503 8.69675 19.1377 7.33148C17.7725 5.96622 15.9208 5.19922 13.99 5.19922V5.19922ZM18.358 15.0272H17.63V16.1192H16.538V16.8472H15.082V16.1192H13.262V16.8472H11.806V16.1192H10.714V15.0272H9.98599V9.93122H10.714V8.83922H11.806V8.47522H12.898V8.83922H13.626V8.47522H14.718V8.83922H15.446V8.47522H16.538V8.83922H17.63V9.93122H18.358V15.0272ZM11.078 15.0272H17.266V9.56722H11.078V15.0272ZM16.538 9.93122H16.902V14.6632H16.538V9.93122ZM15.81 9.93122H16.174V14.6632H15.81V9.93122ZM15.082 9.93122H15.446V14.6632H15.082V9.93122ZM14.354 9.93122H14.718V14.6632H14.354V9.93122ZM13.626 9.93122H13.99V14.6632H13.626V9.93122ZM12.898 9.93122H13.262V14.6632H12.898V9.93122ZM12.17 9.93122H12.534V14.6632H12.17V9.93122ZM11.442 9.93122H11.806V14.6632H11.442V9.93122Z" fill="#00FFFF"/>
<path d="M7.44824 5.83351C3.83717 9.44459 3.82476 15.2913 7.42591 18.8924C7.81326 19.2798 8.35772 20.0322 8.98153 20.9872C9.59772 21.9305 10.2672 23.0332 10.9036 24.0936C11.0451 24.3294 11.185 24.5632 11.3224 24.7928C11.8004 25.5915 12.247 26.3378 12.6167 26.9281C12.8542 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.4069 28.0941 13.4841 28.1781C13.5225 28.2198 13.5674 28.2648 13.6172 28.3047C13.6581 28.3376 13.7441 28.4018 13.8631 28.4328C14.0424 28.4794 14.1911 28.4243 14.2649 28.3887C14.3444 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7267 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.8909 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6812 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5071 5.81118C16.906 2.21002 11.0593 2.22243 7.44824 5.83351Z" stroke="#00FFFF"/>
<g filter="url(#filter0_f_159_195)">
<path d="M14 29L16.598 24.5H11.4019L14 29Z" fill="#00FFFF"/>
</g>
<defs>
<filter id="filter0_f_159_195" x="9.40189" y="22.5" width="9.19617" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_159_195"/>
</filter>
</defs>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M21.27 12.4812C21.27 16.5018 18.0106 19.7612 13.99 19.7612C9.96936 19.7612 6.70999 16.5018 6.70999 12.4812C6.70999 8.46054 9.96936 5.20117 13.99 5.20117C18.0106 5.20117 21.27 8.46054 21.27 12.4812ZM16.5344 10.671C16.5344 12.0646 15.4046 13.1947 14.0107 13.1947C12.6168 13.1947 11.487 12.0649 11.487 10.671C11.487 9.27734 12.6168 8.14727 14.0107 8.14727C15.4046 8.14727 16.5344 9.27707 16.5344 10.671ZM14.0108 14.0327C14.7766 14.0327 15.5056 13.7748 16.0937 13.3105V13.3108C17.62 13.8895 18.3209 15.8731 18.3209 16.7774H9.65665C9.65665 15.865 10.3521 13.8673 11.9092 13.2957C12.5 13.7689 13.236 14.0327 14.0108 14.0327Z" fill="#00FFFF"/>
<path d="M7.44824 5.83351C3.83717 9.44459 3.82476 15.2913 7.42591 18.8924C7.81326 19.2798 8.35772 20.0322 8.98153 20.9872C9.59772 21.9305 10.2672 23.0332 10.9036 24.0936C11.0451 24.3294 11.185 24.5632 11.3224 24.7928C11.8004 25.5915 12.247 26.3378 12.6167 26.9281C12.8542 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.4069 28.0941 13.4841 28.1781C13.5225 28.2198 13.5674 28.2648 13.6172 28.3047C13.6581 28.3376 13.7441 28.4018 13.8631 28.4328C14.0424 28.4794 14.1911 28.4243 14.2649 28.3887C14.3444 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7267 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.8909 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6812 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5071 5.81118C16.906 2.21002 11.0593 2.22243 7.44824 5.83351Z" stroke="#00FFFF"/>
<g filter="url(#filter0_f_159_191)">
<path d="M14 29L16.598 24.5H11.4019L14 29Z" fill="#00FFFF"/>
</g>
<defs>
<filter id="filter0_f_159_191" x="9.40189" y="22.5" width="9.19617" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_159_191"/>
</filter>
</defs>
</svg>
<?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="1648695033085" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2427" data-spm-anchor-id="a313x.7781069.0.i3" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css">@font-face { font-family: feedback-iconfont; src: url("//at.alicdn.com/t/font_1031158_u69w8yhxdu.woff2?t=1630033759944") format("woff2"), url("//at.alicdn.com/t/font_1031158_u69w8yhxdu.woff?t=1630033759944") format("woff"), url("//at.alicdn.com/t/font_1031158_u69w8yhxdu.ttf?t=1630033759944") format("truetype"); }
</style></defs><path d="M512.99 355.35l45.31 143.99h140.34l-112.75 75.77 44.3 134.06-116.94-85.87-117.32 84.82L440.2 574.5l-113.27-75.17h140.74l45.32-143.98m0-229.99l-97.97 301.51H98l256.48 178.2-97.98 294.51 256.49-186.14 256.49 187.64-97.97-296.24L928 426.87H610.96l-97.97-301.51z" fill="#d81e06" p-id="2428"></path></svg>
\ No newline at end of file
<svg width="42" height="45" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.9547 4.07031C9.44279 4.07031 7.99285 4.6709 6.92379 5.73995C5.85474 6.80901 5.25415 8.25896 5.25415 9.77083C5.25415 11.2827 5.85474 12.7326 6.92379 13.8017C7.99285 14.8708 9.44279 15.4713 10.9547 15.4713C12.4665 15.4713 13.9165 14.8708 14.9855 13.8017C16.0546 12.7326 16.6552 11.2827 16.6552 9.77083C16.6552 8.25896 16.0546 6.80901 14.9855 5.73995C13.9165 4.6709 12.4665 4.07031 10.9547 4.07031V4.07031ZM14.375 11.766H13.8049V12.6211H12.9498V13.1911H11.8097V12.6211H10.3846V13.1911H9.24451V12.6211H8.38943V11.766H7.81938V7.77565H8.38943V6.92057H9.24451V6.63554H10.0996V6.92057H10.6696V6.63554H11.5247V6.92057H12.0948V6.63554H12.9498V6.92057H13.8049V7.77565H14.375V11.766ZM8.67446 11.766H13.5199V7.49062H8.67446V11.766ZM12.9498 7.77565H13.2349V11.481H12.9498V7.77565ZM12.3798 7.77565H12.6648V11.481H12.3798V7.77565ZM11.8097 7.77565H12.0948V11.481H11.8097V7.77565ZM11.2397 7.77565H11.5247V11.481H11.2397V7.77565ZM10.6696 7.77565H10.9547V11.481H10.6696V7.77565ZM10.0996 7.77565H10.3846V11.481H10.0996V7.77565ZM9.52954 7.77565H9.81456V11.481H9.52954V7.77565ZM8.95948 7.77565H9.24451V11.481H8.95948V7.77565Z" fill="#74C5FF"/>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#74C5FF"/>
<g filter="url(#filter0_f_194_260)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#74C5FF"/>
</g>
<defs>
<filter id="filter0_f_194_260" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_260"/>
</filter>
</defs>
</svg>
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8 0C5.87827 0 3.84344 0.842855 2.34315 2.34315C0.842855 3.84344 0 5.87827 0 8C0 10.1217 0.842855 12.1566 2.34315 13.6569C3.84344 15.1571 5.87827 16 8 16C10.1217 16 12.1566 15.1571 13.6569 13.6569C15.1571 12.1566 16 10.1217 16 8C16 5.87827 15.1571 3.84344 13.6569 2.34315C12.1566 0.842855 10.1217 0 8 0V0ZM12.8 10.8H12V12H10.8V12.8H9.2V12H7.2V12.8H5.6V12H4.4V10.8H3.6V5.2H4.4V4H5.6V3.6H6.8V4H7.6V3.6H8.8V4H9.6V3.6H10.8V4H12V5.2H12.8V10.8ZM4.8 10.8H11.6V4.8H4.8V10.8ZM10.8 5.2H11.2V10.4H10.8V5.2ZM10 5.2H10.4V10.4H10V5.2ZM9.2 5.2H9.6V10.4H9.2V5.2ZM8.4 5.2H8.8V10.4H8.4V5.2ZM7.6 5.2H8V10.4H7.6V5.2ZM6.8 5.2H7.2V10.4H6.8V5.2ZM6 5.2H6.4V10.4H6V5.2ZM5.2 5.2H5.6V10.4H5.2V5.2Z" fill="#74C5FF"/>
</svg>
<svg width="42" height="45" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6552 9.77473C16.6552 12.923 14.103 15.4752 10.9547 15.4752C7.80636 15.4752 5.25415 12.923 5.25415 9.77473C5.25415 6.62643 7.80636 4.07422 10.9547 4.07422C14.103 4.07422 16.6552 6.62643 16.6552 9.77473ZM12.9472 8.3569C12.9472 9.44817 12.0625 10.3331 10.971 10.3331C9.87956 10.3331 8.99488 9.44838 8.99488 8.3569C8.99488 7.26563 9.87956 6.38074 10.971 6.38074C12.0625 6.38074 12.9472 7.26542 12.9472 8.3569ZM10.9711 10.9893C11.5708 10.9893 12.1416 10.7873 12.6021 10.4238V10.424C13.7973 10.8771 14.3461 12.4304 14.3461 13.1384H7.56167C7.56167 12.424 8.10625 10.8598 9.32553 10.4122C9.78815 10.7827 10.3644 10.9893 10.9711 10.9893Z" fill="#00FFFF"/>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#00FFFF"/>
<g filter="url(#filter0_f_194_252)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#00FFFF"/>
</g>
<defs>
<filter id="filter0_f_194_252" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_252"/>
</filter>
</defs>
</svg>
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16 8C16 12.4183 12.4183 16 8 16C3.58172 16 0 12.4183 0 8C0 3.58172 3.58172 0 8 0C12.4183 0 16 3.58172 16 8ZM10.7962 6.01159C10.7962 7.54306 9.55466 8.78489 8.0229 8.78489C6.49113 8.78489 5.24959 7.54335 5.24959 6.01159C5.24959 4.48012 6.49113 3.23828 8.0229 3.23828C9.55466 3.23828 10.7962 4.47982 10.7962 6.01159ZM8.02293 9.70834C8.86456 9.70834 9.66557 9.42494 10.3118 8.91474V8.91504C11.9892 9.55093 12.7593 11.7307 12.7593 12.7244H3.2382C3.2382 11.7218 4.00245 9.52662 5.71357 8.89844C6.3628 9.41841 7.17152 9.70834 8.02293 9.70834Z" fill="#00FFFF"/>
</svg>
<svg width="56" height="51" viewBox="0 0 56 51" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="28" cy="35" r="16" fill="url(#paint0_linear_218_40)"/>
<path d="M24.3506 40.459C21.4894 45.9554 25.7938 49.6511 28.3036 50.8119C19.9271 52.0354 20.1154 44.2237 21.7154 38.106C23.3154 31.9884 29.0579 27.6854 29.0565 27.7531C29.0565 27.0001 29.5585 26.2472 29.8095 25.9648C29.2824 28.6754 31.9114 34.3099 33.2918 36.7884C37.5083 43.4895 33.7311 48.4276 31.3154 50.059C33.1977 47.6119 31.9742 43.4707 29.7154 39.3295C27.9083 36.0166 27.9585 31.8001 28.2095 30.106C27.0801 31.706 26.7036 37.5413 29.8095 42.3413C32.2942 46.1813 31.284 48.7727 30.4683 49.5884C30.9954 46.426 29.3075 45.1335 28.3977 44.8825C29.3765 46.4637 28.5546 47.4237 28.0212 47.706C27.8644 46.608 27.306 44.2801 26.3271 43.7531C25.3483 43.226 24.6016 41.3374 24.3506 40.459Z" fill="url(#paint1_linear_218_40)"/>
<path d="M6.34375 5.02441V3.82129H7.62891V5.02441H10.917C11.6143 5.02441 12.1497 5.16341 12.5234 5.44141C13.0065 5.80599 13.248 6.30273 13.248 6.93164L13.2412 12.0654C13.2412 12.6761 13.1182 13.1432 12.8721 13.4668C12.4893 13.9727 11.9219 14.2256 11.1699 14.2256H7.62891L7.63574 15.415L6.34375 15.4082V14.2256H3.09668C2.44043 14.2256 1.9528 14.1322 1.63379 13.9453C1.05501 13.6081 0.765625 12.9678 0.765625 12.0244V7.19141C0.765625 6.48958 0.943359 5.96322 1.29883 5.6123C1.69531 5.22038 2.23079 5.02441 2.90527 5.02441H6.34375ZM6.34375 12.9404V6.30957H2.86426C2.54069 6.30957 2.3151 6.39616 2.1875 6.56934C2.09635 6.69694 2.05078 6.89746 2.05078 7.1709V11.9219C2.05078 12.2318 2.06217 12.4163 2.08496 12.4756C2.19889 12.79 2.44954 12.9473 2.83691 12.9473L6.34375 12.9404ZM7.62891 12.9404L10.9375 12.9473C11.6211 12.9518 11.9629 12.6647 11.9629 12.0859V7.2666C11.9629 6.87467 11.8854 6.61719 11.7305 6.49414C11.5846 6.38021 11.3385 6.32096 10.9922 6.31641L7.62891 6.30273V12.9404ZM14.7246 8.11426V6.84961H15.9277C16.388 6.84961 16.7275 6.96354 16.9463 7.19141C17.1514 7.4056 17.2539 7.74284 17.2539 8.20312V13.4736C17.2539 13.7334 17.2835 13.8929 17.3428 13.9521C17.4111 14.0251 17.5615 14.0615 17.7939 14.0615H18.1016V15.3262H17.4316C16.985 15.3262 16.6797 15.2669 16.5156 15.1484C16.1647 14.8932 15.9893 14.5378 15.9893 14.082V8.74316C15.9893 8.44694 15.9368 8.26009 15.832 8.18262C15.7682 8.13704 15.6383 8.11426 15.4424 8.11426H14.7246ZM14.7246 5.10645V3.8418H17.4521V5.10645H14.7246ZM18.3887 15.292V14.0342C18.5026 14.016 18.5801 13.9795 18.6211 13.9248C18.6803 13.8519 18.71 13.6992 18.71 13.4668V6.61035C18.71 5.99512 18.8763 5.5166 19.209 5.1748C19.5371 4.84212 19.9632 4.67578 20.4873 4.67578H23.4541L23.3447 3.73242H24.6299L24.7393 4.67578H25.6621V3.73242H26.9268V4.67578H27.2275V5.94043H24.8896L25.4229 10.3223C25.6325 10.0352 25.7669 9.75944 25.8262 9.49512C25.8717 9.29004 25.9105 8.99154 25.9424 8.59961H27.2002C27.1546 9.32422 27.084 9.8278 26.9883 10.1104C26.8698 10.4567 26.7126 10.7575 26.5166 11.0127C26.3571 11.2223 26.0859 11.4958 25.7031 11.833C25.9128 12.4027 26.1292 12.8538 26.3525 13.1865C26.5713 13.5146 26.863 13.8223 27.2275 14.1094V15.4766C26.5576 15.1986 26.0358 14.8704 25.6621 14.4922C25.2702 14.0957 24.9124 13.5124 24.5889 12.7422L23.3447 13.7539V12.0859L24.2402 11.3682L23.5977 5.94043H20.8906C20.2663 5.94043 19.9587 6.25033 19.9678 6.87012L19.9746 7.27344L21.499 7.28027C21.9639 7.28027 22.292 7.37598 22.4834 7.56738C22.7021 7.78158 22.8115 8.12337 22.8115 8.59277V13.6377C22.8115 14.4899 22.4014 14.916 21.5811 14.916H20.6855V13.6377H21.0068C21.2119 13.6377 21.3555 13.5921 21.4375 13.501C21.5241 13.4053 21.5674 13.2754 21.5674 13.1113V9.15332C21.5674 8.91634 21.515 8.75228 21.4102 8.66113C21.3327 8.59733 21.1071 8.56543 20.7334 8.56543H19.9746V13.5625C19.9746 13.9772 19.904 14.2962 19.7627 14.5195C19.5895 14.7975 19.3594 15.0049 19.0723 15.1416C18.9173 15.2191 18.6895 15.2692 18.3887 15.292ZM28.6631 15.5859V14.0205C29.0322 13.779 29.3307 13.3825 29.5586 12.8311C29.7773 12.2979 29.8867 11.6644 29.8867 10.9307V3.85547H31.001V11.0195C31.001 11.7533 31.1309 12.389 31.3906 12.9268C31.6139 13.3916 31.8919 13.7493 32.2246 14V15.3604C31.7962 15.1234 31.4453 14.8545 31.1719 14.5537C30.9395 14.2985 30.723 13.9772 30.5225 13.5898C30.2581 14.0957 29.9414 14.5264 29.5723 14.8818C29.39 15.0641 29.0869 15.2988 28.6631 15.5859ZM28.6631 11.4912V4.30664H29.415V11.4912H28.6631ZM31.5342 11.4912V4.30664H32.2861V11.4912H31.5342ZM32.4844 15.4697V14.2939C32.612 14.2848 32.6963 14.2575 32.7373 14.2119C32.7829 14.1572 32.8057 14.016 32.8057 13.7881V12.9473H34.0703V13.7266C34.0703 14.8066 33.5417 15.3877 32.4844 15.4697ZM32.6074 6.9248V5.5918C32.89 5.44141 33.0973 5.22721 33.2295 4.94922C33.3434 4.7168 33.4437 4.31576 33.5303 3.74609H34.8154L34.6992 4.31348H35.6699C36.1211 4.31348 36.4743 4.39779 36.7295 4.56641C36.8434 4.63932 36.9642 4.76693 37.0918 4.94922H38.3291V3.83496H39.6211V4.94922H40.0654V4.04688H41.166V4.94922H41.3438L41.3369 6.21387H39.6211C39.6439 6.89746 39.6826 7.39876 39.7373 7.71777C39.874 8.46061 40.127 9.14648 40.4961 9.77539C40.7012 10.1309 40.9746 10.516 41.3164 10.9307V12.5234C40.7559 12.0404 40.2956 11.5459 39.9355 11.04C39.6165 10.5843 39.3112 10.0329 39.0195 9.38574C38.7096 10.1924 38.3883 10.8304 38.0557 11.2998C37.7503 11.7282 37.3493 12.1383 36.8525 12.5303V10.8486C37.3447 10.2653 37.7093 9.60905 37.9463 8.87988C38.1514 8.25553 38.2812 7.36686 38.3359 6.21387H37.1123C36.7386 8.21452 36.2783 9.64779 35.7314 10.5137C35.2803 11.2246 34.7152 11.7533 34.0361 12.0996C33.6898 12.2773 33.2204 12.4323 32.6279 12.5645V11.4023C33.0335 11.293 33.3366 11.1813 33.5371 11.0674C33.7923 10.9261 34.0612 10.6937 34.3438 10.3701H32.9287V9.10547H35.1162L35.3828 8.41504H32.9082V7.15723H35.7246C35.8659 6.61491 35.9365 6.25488 35.9365 6.07715C35.9365 5.8903 35.891 5.75586 35.7998 5.67383C35.736 5.6237 35.5674 5.59863 35.2939 5.59863L34.3506 5.5918C34.1182 5.98828 33.8698 6.27539 33.6055 6.45312C33.3092 6.6582 32.9766 6.81543 32.6074 6.9248ZM35.1641 15.4355V12.9473H36.4287V15.4355H35.1641ZM37.6318 15.4355V12.9473H38.8896V15.4355H37.6318ZM40.0586 15.4355V12.9473H41.3232V15.4355H40.0586ZM42.6836 7.12305V5.97461C42.9388 5.90169 43.1143 5.8151 43.21 5.71484C43.3102 5.61003 43.4401 5.26139 43.5996 4.66895C43.6862 4.35905 43.7637 4.06738 43.832 3.79395H45.0352L44.9053 4.22461H54.6123V5.48926H44.5703C44.4427 5.94043 44.2422 6.30729 43.9688 6.58984H54.6123V7.84766H43.4561V6.93164C43.3285 6.98633 43.071 7.05013 42.6836 7.12305ZM42.7246 10.2129V8.94141H52.6572C53.2269 8.94141 53.6325 9.02116 53.874 9.18066C54.4255 9.54069 54.6989 10.0124 54.6943 10.5957V13.3506C54.6898 13.7197 54.8971 13.9909 55.3164 14.1641V15.4492C54.8151 15.3535 54.4118 15.1576 54.1064 14.8613C53.8102 14.5742 53.6097 14.2529 53.5049 13.8975C53.4548 13.7152 53.4297 13.444 53.4297 13.084V11.1357C53.4297 10.8304 53.3613 10.598 53.2246 10.4385C53.0879 10.2835 52.917 10.2061 52.7119 10.2061L42.7246 10.2129Z" fill="white"/>
<defs>
<linearGradient id="paint0_linear_218_40" x1="28" y1="19" x2="28" y2="51" gradientUnits="userSpaceOnUse">
<stop stop-color="#92D4F4"/>
<stop offset="0.541667" stop-color="#38B4F0"/>
<stop offset="1" stop-color="#0B618C"/>
</linearGradient>
<linearGradient id="paint1_linear_218_40" x1="28.0191" y1="25.9648" x2="28.0191" y2="50.9397" gradientUnits="userSpaceOnUse">
<stop stop-color="#FABB00"/>
<stop offset="0.463542" stop-color="#F75001"/>
<stop offset="1" stop-color="#E90712"/>
</linearGradient>
</defs>
</svg>
<svg width="56" height="51" viewBox="0 0 56 51" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.34375 5.02441V3.82129H7.62891V5.02441H10.917C11.6143 5.02441 12.1497 5.16341 12.5234 5.44141C13.0065 5.80599 13.248 6.30273 13.248 6.93164L13.2412 12.0654C13.2412 12.6761 13.1182 13.1432 12.8721 13.4668C12.4893 13.9727 11.9219 14.2256 11.1699 14.2256H7.62891L7.63574 15.415L6.34375 15.4082V14.2256H3.09668C2.44043 14.2256 1.9528 14.1322 1.63379 13.9453C1.05501 13.6081 0.765625 12.9678 0.765625 12.0244V7.19141C0.765625 6.48958 0.943359 5.96322 1.29883 5.6123C1.69531 5.22038 2.23079 5.02441 2.90527 5.02441H6.34375ZM6.34375 12.9404V6.30957H2.86426C2.54069 6.30957 2.3151 6.39616 2.1875 6.56934C2.09635 6.69694 2.05078 6.89746 2.05078 7.1709V11.9219C2.05078 12.2318 2.06217 12.4163 2.08496 12.4756C2.19889 12.79 2.44954 12.9473 2.83691 12.9473L6.34375 12.9404ZM7.62891 12.9404L10.9375 12.9473C11.6211 12.9518 11.9629 12.6647 11.9629 12.0859V7.2666C11.9629 6.87467 11.8854 6.61719 11.7305 6.49414C11.5846 6.38021 11.3385 6.32096 10.9922 6.31641L7.62891 6.30273V12.9404ZM14.6631 15.5859V14.0205C15.0322 13.779 15.3307 13.3825 15.5586 12.8311C15.7773 12.2979 15.8867 11.6644 15.8867 10.9307V3.85547H17.001V11.0195C17.001 11.7533 17.1309 12.389 17.3906 12.9268C17.6139 13.3916 17.8919 13.7493 18.2246 14V15.3604C17.7962 15.1234 17.4453 14.8545 17.1719 14.5537C16.9395 14.2985 16.723 13.9772 16.5225 13.5898C16.2581 14.0957 15.9414 14.5264 15.5723 14.8818C15.39 15.0641 15.0869 15.2988 14.6631 15.5859ZM14.6631 11.4912V4.30664H15.415V11.4912H14.6631ZM17.5342 11.4912V4.30664H18.2861V11.4912H17.5342ZM18.4844 15.4697V14.2939C18.612 14.2848 18.6963 14.2575 18.7373 14.2119C18.7829 14.1572 18.8057 14.016 18.8057 13.7881V12.9473H20.0703V13.7266C20.0703 14.8066 19.5417 15.3877 18.4844 15.4697ZM18.6074 6.9248V5.5918C18.89 5.44141 19.0973 5.22721 19.2295 4.94922C19.3434 4.7168 19.4437 4.31576 19.5303 3.74609H20.8154L20.6992 4.31348H21.6699C22.1211 4.31348 22.4743 4.39779 22.7295 4.56641C22.8434 4.63932 22.9642 4.76693 23.0918 4.94922H24.3291V3.83496H25.6211V4.94922H26.0654V4.04688H27.166V4.94922H27.3438L27.3369 6.21387H25.6211C25.6439 6.89746 25.6826 7.39876 25.7373 7.71777C25.874 8.46061 26.127 9.14648 26.4961 9.77539C26.7012 10.1309 26.9746 10.516 27.3164 10.9307V12.5234C26.7559 12.0404 26.2956 11.5459 25.9355 11.04C25.6165 10.5843 25.3112 10.0329 25.0195 9.38574C24.7096 10.1924 24.3883 10.8304 24.0557 11.2998C23.7503 11.7282 23.3493 12.1383 22.8525 12.5303V10.8486C23.3447 10.2653 23.7093 9.60905 23.9463 8.87988C24.1514 8.25553 24.2812 7.36686 24.3359 6.21387H23.1123C22.7386 8.21452 22.2783 9.64779 21.7314 10.5137C21.2803 11.2246 20.7152 11.7533 20.0361 12.0996C19.6898 12.2773 19.2204 12.4323 18.6279 12.5645V11.4023C19.0335 11.293 19.3366 11.1813 19.5371 11.0674C19.7923 10.9261 20.0612 10.6937 20.3438 10.3701H18.9287V9.10547H21.1162L21.3828 8.41504H18.9082V7.15723H21.7246C21.8659 6.61491 21.9365 6.25488 21.9365 6.07715C21.9365 5.8903 21.891 5.75586 21.7998 5.67383C21.736 5.6237 21.5674 5.59863 21.2939 5.59863L20.3506 5.5918C20.1182 5.98828 19.8698 6.27539 19.6055 6.45312C19.3092 6.6582 18.9766 6.81543 18.6074 6.9248ZM21.1641 15.4355V12.9473H22.4287V15.4355H21.1641ZM23.6318 15.4355V12.9473H24.8896V15.4355H23.6318ZM26.0586 15.4355V12.9473H27.3232V15.4355H26.0586ZM28.7314 15.4219V14.4648C28.8317 14.4421 28.8978 14.4124 28.9297 14.376C28.9479 14.3486 28.9616 14.2233 28.9707 14V8.00488H29.9346V14.0684C29.9346 14.8978 29.5335 15.349 28.7314 15.4219ZM28.8613 7.0957V5.83789H33.5166V7.0957H31.8418V15.4492H30.5771V7.0957H28.8613ZM28.8545 5.0791V3.82129H33.5166V5.0791H28.8545ZM32.4844 15.3809V8.02539H33.5098V15.3809H32.4844ZM34.2617 13.3438V12.0859H37.1807V9.84375H34.3916V8.5791H37.1807V6.33008H34.2617V5.06543H35.1641V3.8418H36.4697V5.06543H39.1084V3.8418H40.4209V5.06543H41.3643V6.33008H38.4658V8.5791H41.2549V9.84375H38.4658V12.0859H41.3643V13.3438H38.4658V15.4219H37.1807V13.3438H34.2617ZM42.6904 15.3877V14.2119C42.7041 14.2119 42.7155 14.2119 42.7246 14.2119C42.8932 14.2119 42.9821 13.9909 42.9912 13.5488L43.0664 8.10059H44.2148L44.1807 13.0498C44.1761 13.6969 44.1396 14.1436 44.0713 14.3896C43.9118 14.9775 43.4515 15.3102 42.6904 15.3877ZM42.8203 7.34863V6.10449H44.707V5.13379H42.8408V3.97852H47.667V5.13379H45.9717V6.10449H47.6807V7.34863H45.9717V15.4355H44.707V7.34863H42.8203ZM46.5322 15.4355V8.07324H47.6055V15.4355H46.5322ZM48.46 13.2002V11.8945H53.1836V3.80762H54.4482V11.8945H55.3232V13.2002H54.4482V15.4561H53.1836V13.2002H48.46ZM48.4805 9.80957V8.4834H52.2539V9.80957H48.4805ZM48.4805 6.22754V4.90137H52.2539V6.22754H48.4805Z" fill="white"/>
<g filter="url(#filter0_i_218_39)">
<path d="M27.3976 27.2643V19C14.9319 19.5381 11.9391 29.6026 12.0009 34.5676C12.5945 47.0216 22.5127 50.7117 27.3976 51V39.8529L24.2441 34.5676C23.0569 31.3387 25.8518 28.3534 27.3976 27.2643Z" fill="url(#paint0_linear_218_39)"/>
<path d="M28.3251 20.7297V19C32.4062 19 34.6013 20.0571 35.1887 20.7297H28.3251Z" fill="#0534AD"/>
<path d="M28.3251 24.7658V22.3634L38.435 22.5556L39.8263 24.0931L28.3251 24.7658Z" fill="#0534AD"/>
<path d="M28.3251 28.6096V26.015L41.5885 26.5916L42.145 27.7447L28.3251 28.6096Z" fill="#0534AD"/>
<path d="M30.0874 32.1652L28.9744 29.8589L43.0725 30.3393L43.7218 31.5886L30.0874 32.1652Z" fill="#0534AD"/>
<path d="M32.0352 35.9129L31.1077 33.991L43.8146 34.4715L44.0001 35.3363L32.0352 35.9129Z" fill="#0534AD"/>
<path d="M31.1077 39.5646L32.0352 37.7387L43.7218 38.4114L43.258 39.1802L31.1077 39.5646Z" fill="#0534AD"/>
<path d="M30.3656 41.4865C28.5106 41.4096 28.2324 42.992 28.3251 43.7928L41.403 43.1201L42.145 42.0631C38.9915 41.9029 32.2207 41.5634 30.3656 41.4865Z" fill="#0534AD"/>
<path d="M28.3251 47.4444L28.6034 45.1381L39.8263 45.7147L38.5278 46.964L28.3251 47.4444Z" fill="#0534AD"/>
<path d="M28.3251 50.9039V48.8859L35.1887 49.3664C32.9627 50.5964 29.6855 50.9039 28.3251 50.9039Z" fill="#0534AD"/>
</g>
<defs>
<filter id="filter0_i_218_39" x="12" y="19" width="32" height="32.2" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset dy="0.2"/>
<feGaussianBlur stdDeviation="2"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.46 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_218_39"/>
</filter>
<linearGradient id="paint0_linear_218_39" x1="19.6988" y1="19" x2="19.6988" y2="51" gradientUnits="userSpaceOnUse">
<stop stop-color="#EDB223"/>
<stop offset="0.515625" stop-color="#D60501"/>
<stop offset="1" stop-color="#D60501"/>
</linearGradient>
</defs>
</svg>
<svg width="673" height="68" viewBox="0 0 673 68" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_bd_59_177)">
<path d="M51 18H621L653 68H16L51 18Z" fill="url(#paint0_linear_59_177)" shape-rendering="crispEdges"/>
<path d="M16.9603 67.5L51.2603 18.5H620.726L652.086 67.5H16.9603Z" stroke="white" stroke-opacity="0.3" shape-rendering="crispEdges"/>
</g>
<defs>
<filter id="filter0_bd_59_177" x="0" y="0" width="673" height="86" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feGaussianBlur in="BackgroundImage" stdDeviation="4"/>
<feComposite in2="SourceAlpha" operator="in" result="effect1_backgroundBlur_59_177"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset dx="2"/>
<feGaussianBlur stdDeviation="9"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.18 0"/>
<feBlend mode="normal" in2="effect1_backgroundBlur_59_177" result="effect2_dropShadow_59_177"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect2_dropShadow_59_177" result="shape"/>
</filter>
<linearGradient id="paint0_linear_59_177" x1="334.5" y1="18" x2="334.5" y2="68" gradientUnits="userSpaceOnUse">
<stop stop-color="#12268E"/>
<stop offset="1" stop-opacity="0.42"/>
</linearGradient>
</defs>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="Group 659">
<path id="Subtract" fill-rule="evenodd" clip-rule="evenodd" d="M21.27 12.4812C21.27 16.5018 18.0106 19.7612 13.99 19.7612C9.96933 19.7612 6.70996 16.5018 6.70996 12.4812C6.70996 8.46054 9.96933 5.20117 13.99 5.20117C18.0106 5.20117 21.27 8.46054 21.27 12.4812ZM13.8781 14.3685H14.4618V16.7277H13.8781V14.3685ZM12.5744 14.3685H13.158V16.7277H12.5744V14.3685ZM17.5887 8.58069V16.034H18.2366V16.7277H14.9751V14.1405C14.9751 13.9494 14.8157 13.7937 14.6203 13.7937H12.0497C11.8543 13.7937 11.6944 13.9499 11.6944 14.1405V16.7277H9.74326V16.0336H10.3911V11.7043C10.3925 11.6113 10.4306 11.5226 10.4972 11.4576C10.5638 11.3926 10.6534 11.3566 10.7464 11.3575H12.8499V10.6323C12.8512 10.5392 12.8893 10.4504 12.9558 10.3853C13.0224 10.3202 13.1121 10.2841 13.2052 10.285H14.5632C14.6563 10.2841 14.746 10.3202 14.8126 10.3853C14.8792 10.4504 14.9173 10.5392 14.9185 10.6323V11.358H15.4829V8.58116C15.4842 8.48813 15.5224 8.39943 15.5889 8.33444C15.6555 8.26945 15.7451 8.23347 15.8382 8.23435H17.2334C17.3264 8.23346 17.4159 8.26939 17.4825 8.33427C17.549 8.39916 17.5872 8.48774 17.5887 8.58069ZM11.7991 13.285H14.8723H14.8742V12.5914H11.7991V13.285Z" fill="#0F6FFF"/>
<path id="Ellipse 95" d="M7.44827 5.83351C3.8372 9.44459 3.82479 15.2913 7.42594 18.8924C7.81329 19.2798 8.35775 20.0322 8.98156 20.9872C9.59775 21.9305 10.2673 23.0332 10.9036 24.0936C11.0451 24.3294 11.1851 24.5632 11.3224 24.7928C11.8004 25.5915 12.2471 26.3378 12.6167 26.9281C12.8543 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.407 28.0941 13.4842 28.1781C13.5225 28.2198 13.5675 28.2648 13.6172 28.3047C13.6582 28.3376 13.7441 28.4018 13.8631 28.4328C14.0425 28.4794 14.1911 28.4243 14.2649 28.3887C14.3445 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7268 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.891 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6813 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5072 5.81118C16.906 2.21002 11.0594 2.22243 7.44827 5.83351Z" stroke="#0F6FFF"/>
<g id="Polygon 4" filter="url(#filter0_f_247_864)">
<path d="M14 29L16.5981 24.5H11.4019L14 29Z" fill="#0F6FFF"/>
</g>
</g>
<defs>
<filter id="filter0_f_247_864" x="9.40198" y="22.5" width="9.19604" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_247_864"/>
</filter>
</defs>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="Group 650">
<path id="Ellipse 95" d="M7.44827 5.83351C3.8372 9.44459 3.82479 15.2913 7.42594 18.8924C7.81329 19.2798 8.35775 20.0322 8.98156 20.9872C9.59775 21.9305 10.2673 23.0332 10.9036 24.0936C11.0451 24.3294 11.1851 24.5632 11.3224 24.7928C11.8004 25.5915 12.2471 26.3378 12.6167 26.9281C12.8543 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.407 28.0941 13.4842 28.1781C13.5225 28.2198 13.5675 28.2648 13.6172 28.3047C13.6582 28.3376 13.7441 28.4018 13.8631 28.4328C14.0425 28.4794 14.1911 28.4243 14.2649 28.3887C14.3445 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7268 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.891 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6813 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5072 5.81118C16.906 2.21002 11.0594 2.22243 7.44827 5.83351Z" stroke="#0F6FFF"/>
<path id="Vector" d="M21.2167 11.421C20.9613 9.69245 20.0919 8.11321 18.7672 6.97139C17.4425 5.82957 15.7508 5.20129 14.0007 5.20117C12.0665 5.20117 10.2116 5.96828 8.84391 7.33374C7.47624 8.6992 6.70789 10.5512 6.70789 12.4822C6.70789 14.4133 7.47624 16.2652 8.84391 17.6307C10.2116 18.9961 12.0665 19.7632 14.0007 19.7632C15.7508 19.7631 17.4425 19.1348 18.7672 17.993C20.0919 16.8512 20.9613 15.272 21.2167 13.5434L21.27 12.4822L21.2167 11.421ZM8.41395 11.9709C8.53354 10.6709 9.1041 9.45346 10.0271 8.52876C10.9501 7.60405 12.1676 7.0302 13.4693 6.9063V8.01779C12.4623 8.1375 11.5253 8.5929 10.8098 9.3103C10.0943 10.0277 9.64217 10.9651 9.52657 11.9709H8.41395ZM13.4693 18.0583C12.1742 17.935 10.9623 17.3664 10.0409 16.4496C9.11941 15.5328 8.5456 14.3249 8.4176 13.0324H9.53135C9.65507 14.0303 10.1102 14.9581 10.824 15.6675C11.5378 16.3769 12.4691 16.827 13.4693 16.9459V18.0583ZM13.2806 12.7912V15.213H12.3824V9.7409H16.12V10.5072H13.2796V12.0246H15.9588V12.791L13.2806 12.7912ZM14.5322 18.0583V16.9466C15.5323 16.8277 16.4636 16.3775 17.1774 15.6681C17.8912 14.9587 18.3464 14.031 18.4701 13.0331H19.5838C19.4556 14.3254 18.8817 15.5331 17.9602 16.4497C17.0388 17.3663 15.827 17.935 14.5322 18.0583ZM18.4749 11.9709C18.3593 10.9651 17.9071 10.0277 17.1916 9.3103C16.4761 8.5929 15.5391 8.1375 14.5322 8.01779V6.9063C15.8338 7.03025 17.0512 7.60413 17.9742 8.52882C18.8971 9.45352 19.4677 10.671 19.5873 11.9709H18.4749Z" fill="#0F6FFF"/>
<g id="Polygon 4" filter="url(#filter0_f_247_774)">
<path d="M14 29L16.5981 24.5H11.4019L14 29Z" fill="#0F6FFF"/>
</g>
</g>
<defs>
<filter id="filter0_f_247_774" x="9.40198" y="22.5" width="9.19604" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_247_774"/>
</filter>
</defs>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="Group 658">
<path id="Subtract" fill-rule="evenodd" clip-rule="evenodd" d="M13.99 19.7612C18.0106 19.7612 21.27 16.5018 21.27 12.4812C21.27 8.46054 18.0106 5.20117 13.99 5.20117C9.96933 5.20117 6.70996 8.46054 6.70996 12.4812C6.70996 16.5018 9.96933 19.7612 13.99 19.7612ZM8.78705 12.7408C8.64559 12.6815 8.52994 12.7533 8.52994 12.8998V16.5479C8.52994 16.6946 8.64559 16.7659 8.78705 16.7071L9.87531 16.2523C10.017 16.1933 10.1324 16.0255 10.1324 15.8788V15.2873H12.3375C12.451 15.2874 12.5621 15.2567 12.6579 15.1987C12.7536 15.1407 12.8299 15.0579 12.8778 14.9601L13.3875 13.9126L12.3094 13.436L11.957 14.1601H10.1329V13.5686C10.1329 13.4221 10.0173 13.2541 9.8758 13.1951L8.78705 12.7408ZM18.0537 14.45L18.797 12.9396L16.9903 13.9801L18.0537 14.45ZM19.2313 11.5482L11.8448 8.2839C11.7097 8.22453 11.5555 8.21829 11.4155 8.26654C11.2756 8.31479 11.1614 8.41362 11.0978 8.54153L9.81525 11.1485C9.75289 11.2767 9.74651 11.4231 9.79749 11.5558C9.84847 11.6884 9.95266 11.7965 10.0872 11.8563L14.9582 14.0088C15.2384 14.1325 15.6836 14.1094 15.9477 13.9574L19.2601 12.0497C19.5242 11.8978 19.511 11.6722 19.2313 11.5482Z" fill="#0F6FFF"/>
<path id="Ellipse 95" d="M7.44827 5.83351C3.8372 9.44459 3.82479 15.2913 7.42594 18.8924C7.81329 19.2798 8.35775 20.0322 8.98156 20.9872C9.59775 21.9305 10.2673 23.0332 10.9036 24.0936C11.0451 24.3294 11.1851 24.5632 11.3224 24.7928C11.8004 25.5915 12.2471 26.3378 12.6167 26.9281C12.8543 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.407 28.0941 13.4842 28.1781C13.5225 28.2198 13.5675 28.2648 13.6172 28.3047C13.6582 28.3376 13.7441 28.4018 13.8631 28.4328C14.0425 28.4794 14.1911 28.4243 14.2649 28.3887C14.3445 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7268 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.891 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6813 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5072 5.81118C16.906 2.21002 11.0594 2.22243 7.44827 5.83351Z" stroke="#0F6FFF"/>
<g id="Polygon 4" filter="url(#filter0_f_247_834)">
<path d="M14 29L16.5981 24.5H11.4019L14 29Z" fill="#0F6FFF"/>
</g>
</g>
<defs>
<filter id="filter0_f_247_834" x="9.40198" y="22.5" width="9.19604" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_247_834"/>
</filter>
</defs>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="Group 671">
<path id="Vector" d="M13.99 5.19922C12.0592 5.19922 10.2075 5.96622 8.84222 7.33148C7.47696 8.69675 6.70996 10.5484 6.70996 12.4792C6.70996 14.41 7.47696 16.2617 8.84222 17.627C10.2075 18.9922 12.0592 19.7592 13.99 19.7592C15.9207 19.7592 17.7724 18.9922 19.1377 17.627C20.503 16.2617 21.27 14.41 21.27 12.4792C21.27 10.5484 20.503 8.69675 19.1377 7.33148C17.7724 5.96622 15.9207 5.19922 13.99 5.19922V5.19922ZM18.358 15.0272H17.63V16.1192H16.538V16.8472H15.082V16.1192H13.262V16.8472H11.806V16.1192H10.714V15.0272H9.98596V9.93122H10.714V8.83922H11.806V8.47522H12.898V8.83922H13.626V8.47522H14.718V8.83922H15.446V8.47522H16.538V8.83922H17.63V9.93122H18.358V15.0272ZM11.078 15.0272H17.266V9.56722H11.078V15.0272ZM16.538 9.93122H16.902V14.6632H16.538V9.93122ZM15.81 9.93122H16.174V14.6632H15.81V9.93122ZM15.082 9.93122H15.446V14.6632H15.082V9.93122ZM14.354 9.93122H14.718V14.6632H14.354V9.93122ZM13.626 9.93122H13.99V14.6632H13.626V9.93122ZM12.898 9.93122H13.262V14.6632H12.898V9.93122ZM12.17 9.93122H12.534V14.6632H12.17V9.93122ZM11.442 9.93122H11.806V14.6632H11.442V9.93122Z" fill="#0F6FFF"/>
<path id="Ellipse 95" d="M7.44827 5.83351C3.8372 9.44459 3.82479 15.2913 7.42594 18.8924C7.81329 19.2798 8.35775 20.0322 8.98156 20.9872C9.59775 21.9305 10.2673 23.0332 10.9036 24.0936C11.0451 24.3294 11.1851 24.5632 11.3224 24.7928C11.8004 25.5915 12.2471 26.3378 12.6167 26.9281C12.8543 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.407 28.0941 13.4842 28.1781C13.5225 28.2198 13.5675 28.2648 13.6172 28.3047C13.6582 28.3376 13.7441 28.4018 13.8631 28.4328C14.0425 28.4794 14.1911 28.4243 14.2649 28.3887C14.3445 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7268 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.891 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6813 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5072 5.81118C16.906 2.21002 11.0594 2.22243 7.44827 5.83351Z" stroke="#0F6FFF"/>
<g id="Polygon 4" filter="url(#filter0_f_247_822)">
<path d="M14 29L16.5981 24.5H11.4019L14 29Z" fill="#0F6FFF"/>
</g>
</g>
<defs>
<filter id="filter0_f_247_822" x="9.40198" y="22.5" width="9.19604" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_247_822"/>
</filter>
</defs>
</svg>
<svg width="28" height="31" viewBox="0 0 28 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="Group 668">
<path id="Subtract" fill-rule="evenodd" clip-rule="evenodd" d="M21.27 12.4812C21.27 16.5018 18.0106 19.7612 13.99 19.7612C9.96933 19.7612 6.70996 16.5018 6.70996 12.4812C6.70996 8.46054 9.96933 5.20117 13.99 5.20117C18.0106 5.20117 21.27 8.46054 21.27 12.4812ZM16.5344 10.671C16.5344 12.0646 15.4046 13.1947 14.0107 13.1947C12.6168 13.1947 11.487 12.0649 11.487 10.671C11.487 9.27734 12.6168 8.14727 14.0107 8.14727C15.4046 8.14727 16.5344 9.27707 16.5344 10.671ZM14.0107 14.0327C14.7766 14.0327 15.5055 13.7748 16.0936 13.3105V13.3108C17.62 13.8895 18.3209 15.8731 18.3209 16.7774H9.65662C9.65662 15.865 10.3521 13.8673 11.9092 13.2957C12.5 13.7689 13.2359 14.0327 14.0107 14.0327Z" fill="#0F6FFF"/>
<path id="Ellipse 95" d="M7.44827 5.83351C3.8372 9.44459 3.82479 15.2913 7.42594 18.8924C7.81329 19.2798 8.35775 20.0322 8.98156 20.9872C9.59775 21.9305 10.2673 23.0332 10.9036 24.0936C11.0451 24.3294 11.1851 24.5632 11.3224 24.7928C11.8004 25.5915 12.2471 26.3378 12.6167 26.9281C12.8543 27.3074 13.0662 27.6323 13.2384 27.8697C13.3237 27.9873 13.407 28.0941 13.4842 28.1781C13.5225 28.2198 13.5675 28.2648 13.6172 28.3047C13.6582 28.3376 13.7441 28.4018 13.8631 28.4328C14.0425 28.4794 14.1911 28.4243 14.2649 28.3887C14.3445 28.3503 14.4088 28.2999 14.4546 28.2597C14.5478 28.178 14.6402 28.0704 14.7268 27.9595C14.9037 27.7327 15.1175 27.4117 15.3531 27.0362C15.7859 26.3464 16.3229 25.4232 16.891 24.4465C16.9442 24.355 16.9977 24.263 17.0514 24.1707C17.6813 23.0882 18.343 21.9571 18.9522 20.9915C19.5699 20.0124 20.106 19.2489 20.4848 18.8701C24.0959 15.259 24.1083 9.41233 20.5072 5.81118C16.906 2.21002 11.0594 2.22243 7.44827 5.83351Z" stroke="#0F6FFF"/>
<g id="Polygon 4" filter="url(#filter0_f_247_806)">
<path d="M14 29L16.5981 24.5H11.4019L14 29Z" fill="#0F6FFF"/>
</g>
</g>
<defs>
<filter id="filter0_f_247_806" x="9.40198" y="22.5" width="9.19604" height="8.5" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_247_806"/>
</filter>
</defs>
</svg>
<?xml version="1.0" encoding="UTF-8"?>
<svg width="52px" height="45px" viewBox="0 0 52 45" version="1.1"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<filter x="-9.4%" y="-6.2%" width="118.8%" height="122.5%" filterUnits="objectBoundingBox" id="filter-1">
<feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="1" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.15 0" type="matrix" in="shadowBlurOuter1" result="shadowMatrixOuter1"></feColorMatrix>
<feMerge>
<feMergeNode in="shadowMatrixOuter1"></feMergeNode>
<feMergeNode in="SourceGraphic"></feMergeNode>
</feMerge>
</filter>
<rect id="path-2" x="0" y="0" width="48" height="40" rx="4"></rect>
<filter x="-4.2%" y="-2.5%" width="108.3%" height="110.0%" filterUnits="objectBoundingBox" id="filter-4">
<feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="0.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
</defs>
<g id="配置面板" width="48" height="40" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="setting-copy-2" width="48" height="40" transform="translate(-1190.000000, -136.000000)">
<g id="Group-8" width="48" height="40" transform="translate(1167.000000, 0.000000)">
<g id="Group-5-Copy-5" filter="url(#filter-1)" transform="translate(25.000000, 137.000000)">
<mask id="mask-3" fill="white">
<use xlink:href="#path-2"></use>
</mask>
<g id="Rectangle-18">
<use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-2"></use>
<use fill="#F0F2F5" fill-rule="evenodd" xlink:href="#path-2"></use>
</g>
<rect id="Rectangle-11" fill="#FFFFFF" mask="url(#mask-3)" x="0" y="0" width="48" height="10"></rect>
<rect id="Rectangle-18" fill="#303648" mask="url(#mask-3)" x="0" y="0" width="16" height="40"></rect>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<svg width="445" height="1044" viewBox="0 0 445 1044" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_bd_161_256)">
<path d="M437.084 1044C304.522 636.701 297.268 409.314 445 76.478V50.4909L430.5 32C374.466 37.9971 30 36.4978 30 36.4978V1044H437.084Z" fill="url(#paint0_linear_161_256)" shape-rendering="crispEdges"/>
<path d="M30.5 36.9999V1043.5H436.395C370.246 840.147 335.349 681.596 335.432 532.315C335.514 382.893 370.643 242.792 444.5 76.372V50.6635L430.277 32.5264C401.852 35.5065 302.04 36.6243 209.239 36.9978C162.678 37.1852 117.867 37.1852 84.6977 37.1383C68.1128 37.1149 54.4379 37.0798 44.9092 37.0505C40.1449 37.0358 36.4171 37.0227 33.8803 37.0131C32.612 37.0084 31.6414 37.0045 30.9879 37.0019L30.5 36.9999Z" stroke="white" stroke-opacity="0.3" shape-rendering="crispEdges"/>
<path d="M30.5 36.9999V1043.5H436.395C370.246 840.147 335.349 681.596 335.432 532.315C335.514 382.893 370.643 242.792 444.5 76.372V50.6635L430.277 32.5264C401.852 35.5065 302.04 36.6243 209.239 36.9978C162.678 37.1852 117.867 37.1852 84.6977 37.1383C68.1128 37.1149 54.4379 37.0798 44.9092 37.0505C40.1449 37.0358 36.4171 37.0227 33.8803 37.0131C32.612 37.0084 31.6414 37.0045 30.9879 37.0019L30.5 36.9999Z" stroke="url(#paint1_linear_161_256)" shape-rendering="crispEdges"/>
</g>
<defs>
<filter id="filter0_bd_161_256" x="0" y="0" width="479" height="1076" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feGaussianBlur in="BackgroundImage" stdDeviation="7"/>
<feComposite in2="SourceAlpha" operator="in" result="effect1_backgroundBlur_161_256"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset dx="2"/>
<feGaussianBlur stdDeviation="16"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.22 0"/>
<feBlend mode="normal" in2="effect1_backgroundBlur_161_256" result="effect2_dropShadow_161_256"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect2_dropShadow_161_256" result="shape"/>
</filter>
<linearGradient id="paint0_linear_161_256" x1="29.9998" y1="540.249" x2="507.79" y2="540.249" gradientUnits="userSpaceOnUse">
<stop stop-opacity="0.42"/>
<stop offset="1" stop-color="#12268E"/>
</linearGradient>
<linearGradient id="paint1_linear_161_256" x1="237.5" y1="30.5007" x2="237.5" y2="1044" gradientUnits="userSpaceOnUse">
<stop stop-color="white" stop-opacity="0"/>
<stop offset="0.28125" stop-color="white"/>
<stop offset="0.479167" stop-color="white" stop-opacity="0"/>
<stop offset="0.713542" stop-color="white"/>
<stop offset="1" stop-color="white" stop-opacity="0"/>
</linearGradient>
</defs>
</svg>
<?xml version="1.0" encoding="UTF-8"?>
<svg width="52px" height="45px" viewBox="0 0 52 45" version="1.1"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<filter x="-9.4%" y="-6.2%" width="118.8%" height="122.5%" filterUnits="objectBoundingBox" id="filter-1">
<feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="1" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.15 0" type="matrix" in="shadowBlurOuter1" result="shadowMatrixOuter1"></feColorMatrix>
<feMerge>
<feMergeNode in="shadowMatrixOuter1"></feMergeNode>
<feMergeNode in="SourceGraphic"></feMergeNode>
</feMerge>
</filter>
<rect id="path-2" x="0" y="0" width="48" height="40" rx="4"></rect>
<filter x="-4.2%" y="-2.5%" width="108.3%" height="110.0%" filterUnits="objectBoundingBox" id="filter-4">
<feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="0.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
</defs>
<g id="配置面板" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="setting-copy-2" transform="translate(-1254.000000, -136.000000)">
<g id="Group-8" transform="translate(1167.000000, 0.000000)">
<g id="Group-5" filter="url(#filter-1)" transform="translate(89.000000, 137.000000)">
<mask id="mask-3" fill="white">
<use xlink:href="#path-2"></use>
</mask>
<g id="Rectangle-18">
<use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-2"></use>
<use fill="#F0F2F5" fill-rule="evenodd" xlink:href="#path-2"></use>
</g>
<rect id="Rectangle-18" fill="#FFFFFF" mask="url(#mask-3)" x="0" y="0" width="16" height="40"></rect>
<rect id="Rectangle-11" fill="#FFFFFF" mask="url(#mask-3)" x="0" y="0" width="48" height="10"></rect>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<svg width="445" height="1044" viewBox="0 0 445 1044" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_bd_48_1582)">
<path d="M37.9164 1044C170.478 636.701 177.732 409.314 30 76.478V50.4909L44.5 32C100.534 37.9971 445 36.4978 445 36.4978V1044H37.9164Z" fill="url(#paint0_linear_48_1582)" shape-rendering="crispEdges"/>
<path d="M444.5 36.9999V1043.5H38.6049C104.754 840.147 139.651 681.596 139.568 532.315C139.486 382.893 104.357 242.792 30.5 76.372V50.6635L44.7226 32.5264C73.1477 35.5065 172.96 36.6243 265.761 36.9978C312.322 37.1852 357.133 37.1852 390.302 37.1383C406.887 37.1149 420.562 37.0798 430.091 37.0505C434.855 37.0358 438.583 37.0227 441.12 37.0131C442.388 37.0084 443.359 37.0045 444.012 37.0019L444.5 36.9999Z" stroke="white" stroke-opacity="0.3" shape-rendering="crispEdges"/>
<path d="M444.5 36.9999V1043.5H38.6049C104.754 840.147 139.651 681.596 139.568 532.315C139.486 382.893 104.357 242.792 30.5 76.372V50.6635L44.7226 32.5264C73.1477 35.5065 172.96 36.6243 265.761 36.9978C312.322 37.1852 357.133 37.1852 390.302 37.1383C406.887 37.1149 420.562 37.0798 430.091 37.0505C434.855 37.0358 438.583 37.0227 441.12 37.0131C442.388 37.0084 443.359 37.0045 444.012 37.0019L444.5 36.9999Z" stroke="url(#paint1_linear_48_1582)" shape-rendering="crispEdges"/>
</g>
<defs>
<filter id="filter0_bd_48_1582" x="0" y="0" width="479" height="1076" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feGaussianBlur in="BackgroundImage" stdDeviation="7"/>
<feComposite in2="SourceAlpha" operator="in" result="effect1_backgroundBlur_48_1582"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset dx="2"/>
<feGaussianBlur stdDeviation="16"/>
<feComposite in2="hardAlpha" operator="out"/>
<feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.22 0"/>
<feBlend mode="normal" in2="effect1_backgroundBlur_48_1582" result="effect2_dropShadow_48_1582"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect2_dropShadow_48_1582" result="shape"/>
</filter>
<linearGradient id="paint0_linear_48_1582" x1="445" y1="540.249" x2="-32.79" y2="540.249" gradientUnits="userSpaceOnUse">
<stop stop-opacity="0.42"/>
<stop offset="1" stop-color="#12268E"/>
</linearGradient>
<linearGradient id="paint1_linear_48_1582" x1="237.5" y1="30.5007" x2="237.5" y2="1044" gradientUnits="userSpaceOnUse">
<stop stop-color="white" stop-opacity="0"/>
<stop offset="0.28125" stop-color="white"/>
<stop offset="0.479167" stop-color="white" stop-opacity="0"/>
<stop offset="0.713542" stop-color="white"/>
<stop offset="1" stop-color="white" stop-opacity="0"/>
</linearGradient>
</defs>
</svg>
<?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="1647852854992" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2263" xmlns:xlink="http://www.w3.org/1999/xlink" width="20" height="20"><defs><style type="text/css">@font-face { font-family: feedback-iconfont; src: url("//at.alicdn.com/t/font_1031158_u69w8yhxdu.woff2?t=1630033759944") format("woff2"), url("//at.alicdn.com/t/font_1031158_u69w8yhxdu.woff?t=1630033759944") format("woff"), url("//at.alicdn.com/t/font_1031158_u69w8yhxdu.ttf?t=1630033759944") format("truetype"); }
</style></defs><path d="M662.04973405 329.56834123l108.40905238-142.19888693c4.22372932-5.63163908 4.22372932-11.26327817 1.40790978-18.30282702-2.81581955-5.63163908-8.44745863-9.8553684-15.48700748-9.85536841H218.55815604c-9.8553684 0-16.89491725 7.03954885-16.89491725 16.89491726V867.38987389c0 9.8553684 7.03954885 16.89491725 16.89491725 16.89491726s16.89491725-7.03954885 16.89491726-16.89491726V487.25423562h522.33452519c7.03954885 0 12.67118794-4.22372932 15.48700749-9.8553684s1.40790977-12.67118794-2.81581955-18.30282703l-108.40905238-129.52769896z" fill="#EA4942" p-id="2264"></path></svg>
\ No newline at end of file
<svg id="组_2445" data-name="组 2445" xmlns="http://www.w3.org/2000/svg" width="18" height="25" viewBox="0 0 23 34.049">
<path id="路径_169" data-name="路径 169" d="M-2160.2,287.287a9.537,9.537,0,0,1,9.538,9.537,9.537,9.537,0,0,1-9.538,9.537,9.538,9.538,0,0,1-9.537-9.537A9.538,9.538,0,0,1-2160.2,287.287Zm0,1.467a8.069,8.069,0,0,0-8.069,8.07,8.069,8.069,0,0,0,8.069,8.07,8.069,8.069,0,0,0,8.07-8.07A8.069,8.069,0,0,0-2160.2,288.754Zm-.109,1.485a6.691,6.691,0,0,1,6.681,6.68,6.691,6.691,0,0,1-6.681,6.68,6.691,6.691,0,0,1-6.68-6.68A6.691,6.691,0,0,1-2160.309,290.239Zm.144,11.685h-.276v1.1h.276Zm-3.65-1.433-.771.772.2.2.772-.772-.2-.2Zm6.748,0-.2.2.771.772.2-.2Zm-1.874-6.328-1.808,2.094a.671.671,0,0,0-.265.286.825.825,0,0,0,.375,1.081.831.831,0,0,0,1.08-.375.723.723,0,0,0,.089-.375l.529-2.711Z" transform="translate(2171.7 -284.903)" fill="#7bf8f4"/>
<g id="路径_188" data-name="路径 188" fill="none">
<path d="M11.5,0A11.5,11.5,0,0,1,23,11.5c0,6.351-11.6,18.226-11.5,18.3S0,17.851,0,11.5A11.5,11.5,0,0,1,11.5,0Z" stroke="none"/>
<path d="M 11.5 0.9999980926513672 C 5.71027946472168 0.9999980926513672 1 5.710289001464844 1 11.50002861022949 C 1 15.44052600860596 6.295671463012695 22.62869071960449 11.47669506072998 28.3024730682373 C 12.68497657775879 26.95182228088379 15.33078575134277 23.97880554199219 17.65543937683105 20.72857856750488 C 19.63740921020508 17.95747756958008 22 14.10697841644287 22 11.50002861022949 C 22 5.710289001464844 17.28972053527832 0.9999980926513672 11.5 0.9999980926513672 M 11.5 -1.9073486328125e-06 C 17.85127067565918 -1.9073486328125e-06 23 5.148738861083984 23 11.50002861022949 C 23 17.82768249511719 11.48916530609131 29.63789749145508 11.49940204620361 29.80171585083008 C 11.36462783813477 29.63818168640137 0 17.7873649597168 0 11.50002861022949 C 0 5.148738861083984 5.14872932434082 -1.9073486328125e-06 11.5 -1.9073486328125e-06 Z M 11.49940204620361 29.80171585083008 C 11.50076866149902 29.80337524414062 11.50098419189453 29.8038387298584 11.5 29.80305862426758 C 11.49963855743408 29.80277252197266 11.49944019317627 29.80232810974121 11.49940204620361 29.80171585083008 Z" stroke="none" fill="#7bf8f4"/>
</g>
<path id="多边形_35" data-name="多边形 35" d="M4.524,0,9.049,6.033H0Z" transform="translate(16.59 29.951) rotate(180)" fill="#7bf8f4"/>
</svg>
<?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="1644901265903" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7343" width="32" height="32" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><style type="text/css"></style></defs><path d="M527.053 96.924c-169.131 0.322-306.127 137.496-306.127 306.7 0 157.986 128.978 324.17 278.121 502.935 7.838 9.418 17.977 14.485 28.006 15.061 10.029-0.576 20.168-5.643 28.002-15.061 149.144-178.765 278.123-344.948 278.123-502.935 0-169.205-136.997-306.378-306.126-306.7zM527.053 500.967c-66.070-0.358-119.562-53.956-119.562-120.099s53.492-119.74 119.562-120.099c66.069 0.358 119.557 53.956 119.557 120.099s-53.487 119.74-119.557 120.099z" p-id="7344" fill="#1296db"></path></svg>
\ No newline at end of file
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6552 9.77278C16.6552 12.9211 14.103 15.4733 10.9547 15.4733C7.80636 15.4733 5.25415 12.9211 5.25415 9.77278C5.25415 6.62447 7.80636 4.07227 10.9547 4.07227C14.103 4.07227 16.6552 6.62447 16.6552 9.77278ZM10.867 11.2506H11.324V13.098H10.867V11.2506ZM9.84612 11.2506H10.3032V13.098H9.84612V11.2506ZM13.7726 6.71854V12.5548H14.2799V13.0979H11.726V11.0721C11.726 10.9225 11.6011 10.8005 11.4482 10.8005H9.43527C9.2823 10.8005 9.15705 10.9228 9.15705 11.0721V13.0979H7.62926V12.5544H8.13655V9.16448C8.13763 9.09164 8.16749 9.02218 8.21963 8.97129C8.27176 8.9204 8.34192 8.89223 8.41477 8.89292H10.0619V8.32503C10.0629 8.25212 10.0927 8.18257 10.1448 8.1316C10.197 8.08063 10.2672 8.0524 10.3401 8.0531H11.4035C11.4764 8.0524 11.5466 8.08063 11.5987 8.1316C11.6509 8.18257 11.6807 8.25212 11.6817 8.32503V8.89329H12.1236V6.71891C12.1247 6.64607 12.1545 6.57661 12.2067 6.52572C12.2588 6.47483 12.3289 6.44666 12.4018 6.44735H13.4943C13.5671 6.44666 13.6372 6.47478 13.6894 6.52559C13.7415 6.5764 13.7714 6.64576 13.7726 6.71854ZM9.23907 10.4022H11.6455H11.647V9.8591H9.23907V10.4022Z" fill="#F0C41B">
<animate attributeName="fill" attributeType="XML"
from="#F0C41B" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#F0C41B">
<animate attributeName="fill" attributeType="XML"
from="#F0C41B" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
<g filter="url(#filter0_f_194_268)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#F0C41B">
<animate attributeName="fill" attributeType="XML"
from="#F0C41B" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
</g>
<defs>
<filter id="filter0_f_194_268" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_268"/>
</filter>
</defs>
</svg>
<svg id="组_2447" data-name="组 2447" xmlns="http://www.w3.org/2000/svg" width="18" height="25" viewBox="0 0 23.304 34.295">
<path id="路径_168" data-name="路径 168" d="M-1603.123-57.691a9.445,9.445,0,0,0-9.234-8.255,9.5,9.5,0,0,0-9.333,9.663,9.5,9.5,0,0,0,9.333,9.663,9.445,9.445,0,0,0,9.234-8.255h.76v-2.817Zm-16.383.73a7.312,7.312,0,0,1,6.469-6.722v1.475a5.871,5.871,0,0,0-5.045,5.246Zm6.469,8.079a7.311,7.311,0,0,1-6.465-6.67h1.425a5.869,5.869,0,0,0,5.039,5.2Zm-.242-6.99v3.214h-1.149v-7.262h4.784V-58.9h-3.635v2.014h3.429v1.017Zm1.6,6.99v-1.475a5.869,5.869,0,0,0,5.039-5.2h1.425A7.311,7.311,0,0,1-1611.677-48.883Zm5.045-8.079a5.871,5.871,0,0,0-5.045-5.246v-1.475a7.313,7.313,0,0,1,6.469,6.722Z" transform="translate(1624.104 68.362)" fill="#7bf8f4"/>
<g id="路径_185" data-name="路径 185" fill="none">
<path d="M11.652,0A11.652,11.652,0,0,1,23.3,11.652c0,6.435-11.75,18.467-11.652,18.545S0,18.087,0,11.652A11.652,11.652,0,0,1,11.652,0Z" stroke="none"/>
<path d="M 11.65185546875 0.9999942779541016 C 5.77839469909668 0.9999942779541016 0.9999961853027344 5.778413772583008 0.9999961853027344 11.65188407897949 C 0.9999961853027344 15.65063667297363 6.374073028564453 22.94361305236816 11.62834739685059 28.69588470458984 C 12.84814071655273 27.33243751525879 15.5371789932251 24.3126106262207 17.89928436279297 21.01001358032227 C 19.90856552124023 18.20073509216309 22.3037052154541 14.29677486419678 22.3037052154541 11.65188407897949 C 22.3037052154541 5.778413772583008 17.52530479431152 0.9999942779541016 11.65185546875 0.9999942779541016 M 11.65185546875 -5.7220458984375e-06 C 18.08699607849121 -5.7220458984375e-06 23.3037052154541 5.216724395751953 23.3037052154541 11.65188407897949 C 23.3037052154541 18.06309509277344 11.64087867736816 30.02925682067871 11.65124988555908 30.19523429870605 C 11.5146951675415 30.02953720092773 -3.814697265625e-06 18.02224731445312 -3.814697265625e-06 11.65188407897949 C -3.814697265625e-06 5.216724395751953 5.216714859008789 -5.7220458984375e-06 11.65185546875 -5.7220458984375e-06 Z M 11.65124988555908 30.19523429870605 C 11.65263366699219 30.19691467285156 11.65285301208496 30.19738388061523 11.65185546875 30.19659423828125 C 11.6514892578125 30.19630432128906 11.65128803253174 30.19585609436035 11.65124988555908 30.19523429870605 Z" stroke="none" fill="#7bf8f4"/>
</g>
<path id="多边形_32" data-name="多边形 32" d="M4.53,0l4.53,6.039H0Z" transform="translate(16.306 30.197) rotate(180)" fill="#7bf8f4"/>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#ff0000">
</path>
<path d="M16.6134 8.94262C16.4134 7.58911 15.7326 6.3525 14.6954 5.45841C13.6581 4.56433 12.3334 4.07236 10.963 4.07227C9.44847 4.07227 7.99596 4.67294 6.92503 5.74214C5.85409 6.81135 5.25244 8.2615 5.25244 9.77359C5.25244 11.2857 5.85409 12.7358 6.92503 13.805C7.99596 14.8742 9.44847 15.4749 10.963 15.4749C12.3334 15.4748 13.6581 14.9828 14.6954 14.0888C15.7326 13.1947 16.4134 11.9581 16.6134 10.6046L16.6551 9.77359L16.6134 8.94262ZM6.58836 9.37325C6.682 8.3553 7.12877 7.40197 7.85151 6.67789C8.57425 5.95381 9.52758 5.50446 10.5468 5.40744V6.27779C9.75838 6.37152 9.02466 6.72811 8.46439 7.28987C7.90413 7.85162 7.55009 8.58567 7.45957 9.37325H6.58836ZM10.5468 14.1399C9.5328 14.0434 8.58385 13.5981 7.8623 12.8802C7.14075 12.1623 6.69144 11.2165 6.59121 10.2044H7.46332C7.5602 10.9858 7.91657 11.7123 8.47551 12.2678C9.03445 12.8233 9.76372 13.1757 10.5468 13.2689V14.1399ZM10.3991 10.0155V11.9119H9.69579V7.62704H12.6225V8.2271H10.3984V9.4153H12.4963V10.0154L10.3991 10.0155ZM11.3792 14.1399V13.2694C12.1623 13.1762 12.8915 12.8238 13.4505 12.2683C14.0094 11.7128 14.3658 10.9863 14.4627 10.2049H15.3348C15.2344 11.2169 14.785 12.1625 14.0635 12.8803C13.3419 13.598 12.3931 14.0434 11.3792 14.1399ZM14.4664 9.37325C14.3759 8.58567 14.0219 7.85162 13.4616 7.28987C12.9013 6.72811 12.1676 6.37152 11.3792 6.27779V5.40744C12.3984 5.5045 13.3517 5.95387 14.0744 6.67794C14.7971 7.40202 15.2438 8.35533 15.3375 9.37325H14.4664Z" fill="#FA8167">
<animate attributeName="fill" attributeType="XML"
from="#FA8167" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
<g filter="url(#filter0_f_194_248)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#FA8167">
<animate attributeName="fill" attributeType="XML"
from="#FA8167" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
</g>
<defs>
<filter id="filter0_f_194_248" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_248"/>
</filter>
</defs>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="25" viewBox="0 0 23 34.049">
<g id="组_2451" data-name="组 2451" transform="translate(7189 23993)">
<g id="路径_188" data-name="路径 188" transform="translate(-7189 -23993)" fill="none">
<path d="M11.5,0A11.5,11.5,0,0,1,23,11.5c0,6.351-11.6,18.226-11.5,18.3S0,17.851,0,11.5A11.5,11.5,0,0,1,11.5,0Z" stroke="none"/>
<path d="M 11.5 0.9999980926513672 C 5.71027946472168 0.9999980926513672 1 5.710289001464844 1 11.50002861022949 C 1 15.44052600860596 6.295671463012695 22.62869071960449 11.47669506072998 28.3024730682373 C 12.68497657775879 26.95182228088379 15.33078575134277 23.97880554199219 17.65543937683105 20.72857856750488 C 19.63740921020508 17.95747756958008 22 14.10697841644287 22 11.50002861022949 C 22 5.710289001464844 17.28972053527832 0.9999980926513672 11.5 0.9999980926513672 M 11.5 -1.9073486328125e-06 C 17.85127067565918 -1.9073486328125e-06 23 5.148738861083984 23 11.50002861022949 C 23 17.82768249511719 11.48916530609131 29.63789749145508 11.49940204620361 29.80171585083008 C 11.36462783813477 29.63818168640137 0 17.7873649597168 0 11.50002861022949 C 0 5.148738861083984 5.14872932434082 -1.9073486328125e-06 11.5 -1.9073486328125e-06 Z M 11.49940204620361 29.80171585083008 C 11.50076866149902 29.80337524414062 11.50098419189453 29.8038387298584 11.5 29.80305862426758 C 11.49963855743408 29.80277252197266 11.49944019317627 29.80232810974121 11.49940204620361 29.80171585083008 Z" stroke="none" fill="#7bf8f4"/>
</g>
<path id="多边形_35" data-name="多边形 35" d="M4.524,0,9.049,6.033H0Z" transform="translate(-7172.411 -23963.049) rotate(180)" fill="#7bf8f4"/>
<path id="路径_1298" data-name="路径 1298" d="M21.1,8.659v7.97l-2.46-.621V13.532l-5.534-1.863V9.8h-.613V8.563l-3.428.807,1.315-1.4-.129-.791c-.1.323-.282.54-.508.573-.476.081-.992-.67-1.154-1.67-.145-.928.065-1.75.484-1.92L7.742,2.577l-.1-.04-1.888.307.016.452,1.3-.21L7.4,5.191l-.694.1L5.168,3.593,5.12,2.327,6.5,2.109l.9-.145.791-.129L16.51.512l.976.371,1.452,2.549L10.025,4.86a3.109,3.109,0,0,1,.21.549L18.2,4.134,18.624,6.8,17.285,8.062l-2.323.508V9.813h-.613v1.242L18.656,12.3V9.2ZM9.323,5.175c-.21.032-.315.411-.25.839s.29.758.5.726.315-.411.25-.839S9.532,5.142,9.323,5.175ZM7.943,8.119l-.411-2.6-.6.1.46,2.864,1.549.96.46-.419Z" transform="translate(-7191.327 -23989.652)" fill="#7bf8f4"/>
</g>
</svg>
<svg id="组_2448" data-name="组 2448" xmlns="http://www.w3.org/2000/svg" width="18" height="25" viewBox="0 0 23 33.9">
<path id="路径_173" data-name="路径 173" d="M-1877.09-49.461a9.537,9.537,0,0,0-9.537,9.537,9.537,9.537,0,0,0,9.537,9.537,9.537,9.537,0,0,0,9.537-9.537A9.537,9.537,0,0,0-1877.09-49.461Zm5.722,12.875h-.954v1.431h-1.43v.954h-1.907v-.954h-2.384v.954h-1.907v-.954h-1.431v-1.431h-.954v-6.676h.954v-1.431h1.431v-.477h1.431v.477h.953v-.477h1.431v.477h.954v-.477h1.431v.477h1.43v1.431h.954Zm-9.537,0h8.107v-7.153h-8.107Zm7.153-6.676h.477v6.2h-.477Zm-.954,0h.477v6.2h-.477Zm-.953,0h.477v6.2h-.477Zm-.954,0h.477v6.2h-.477Zm-.954,0h.477v6.2h-.477Zm-.953,0h.477v6.2h-.477Zm-.954,0h.477v6.2h-.477Zm-.954,0h.477v6.2h-.477Z" transform="translate(1888.59 51.845)" fill="#7bf8f4"/>
<g id="路径_186" data-name="路径 186" fill="none">
<path d="M11.5,0A11.5,11.5,0,0,1,23,11.5c0,6.351-11.6,18.226-11.5,18.3S0,17.851,0,11.5A11.5,11.5,0,0,1,11.5,0Z" stroke="none"/>
<path d="M 11.5 0.9999942779541016 C 5.71027946472168 0.9999942779541016 1 5.710294723510742 1 11.50003433227539 C 1 15.44047451019287 6.295700073242188 22.62868881225586 11.47670364379883 28.30246925354004 C 12.68497562408447 26.95181846618652 15.33078575134277 23.97880172729492 17.65543937683105 20.72857475280762 C 19.63740921020508 17.95747375488281 22 14.10698509216309 22 11.50003433227539 C 22 5.710294723510742 17.28972053527832 0.9999942779541016 11.5 0.9999942779541016 M 11.5 -5.7220458984375e-06 C 17.85128021240234 -5.7220458984375e-06 23 5.148744583129883 23 11.50003433227539 C 23 17.82767868041992 11.48916530609131 29.63789367675781 11.49940204620361 29.80171203613281 C 11.36462783813477 29.63816833496094 0 17.78736114501953 0 11.50003433227539 C 0 5.148744583129883 5.14872932434082 -5.7220458984375e-06 11.5 -5.7220458984375e-06 Z M 11.49940204620361 29.80171203613281 C 11.50076866149902 29.80337142944336 11.50098419189453 29.80383491516113 11.5 29.80305480957031 C 11.49963855743408 29.80276870727539 11.49944019317627 29.80232429504395 11.49940204620361 29.80171203613281 Z" stroke="none" fill="#7bf8f4"/>
</g>
<path id="多边形_33" data-name="多边形 33" d="M4.471,0,8.941,5.961H0Z" transform="translate(16.094 29.803) rotate(180)" fill="#7bf8f4"/>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.9547 4.07031C9.44279 4.07031 7.99285 4.6709 6.92379 5.73995C5.85474 6.80901 5.25415 8.25896 5.25415 9.77083C5.25415 11.2827 5.85474 12.7326 6.92379 13.8017C7.99285 14.8708 9.44279 15.4713 10.9547 15.4713C12.4665 15.4713 13.9165 14.8708 14.9855 13.8017C16.0546 12.7326 16.6552 11.2827 16.6552 9.77083C16.6552 8.25896 16.0546 6.80901 14.9855 5.73995C13.9165 4.6709 12.4665 4.07031 10.9547 4.07031V4.07031ZM14.375 11.766H13.8049V12.6211H12.9498V13.1911H11.8097V12.6211H10.3846V13.1911H9.24451V12.6211H8.38943V11.766H7.81938V7.77565H8.38943V6.92057H9.24451V6.63554H10.0996V6.92057H10.6696V6.63554H11.5247V6.92057H12.0948V6.63554H12.9498V6.92057H13.8049V7.77565H14.375V11.766ZM8.67446 11.766H13.5199V7.49062H8.67446V11.766ZM12.9498 7.77565H13.2349V11.481H12.9498V7.77565ZM12.3798 7.77565H12.6648V11.481H12.3798V7.77565ZM11.8097 7.77565H12.0948V11.481H11.8097V7.77565ZM11.2397 7.77565H11.5247V11.481H11.2397V7.77565ZM10.6696 7.77565H10.9547V11.481H10.6696V7.77565ZM10.0996 7.77565H10.3846V11.481H10.0996V7.77565ZM9.52954 7.77565H9.81456V11.481H9.52954V7.77565ZM8.95948 7.77565H9.24451V11.481H8.95948V7.77565Z" fill="#74C5FF">
<animate attributeName="fill" attributeType="XML"
from="#74C5FF" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#ff0000">
</path>
<g filter="url(#filter0_f_194_260)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#74C5FF">
<animate attributeName="fill" attributeType="XML"
from="#74C5FF" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
</g>
<defs>
<filter id="filter0_f_194_260" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_260"/>
</filter>
</defs>
</svg>
<svg id="组_2446" data-name="组 2446" xmlns="http://www.w3.org/2000/svg" width="18" height="25" viewBox="0 0 23 33.9">
<path id="路径_170" data-name="路径 170" d="M-1583.57,295.955a3.719,3.719,0,0,0-3.714,3.713,3.719,3.719,0,0,0,3.714,3.713,3.719,3.719,0,0,0,3.713-3.713,3.719,3.719,0,0,0-3.713-3.713Zm2.287,4.15a.608.608,0,0,1-.437.184h-1.862a.618.618,0,0,1-.621-.621V297.2a.618.618,0,0,1,.621-.621.608.608,0,0,1,.437.184.608.608,0,0,1,.184.437v1.862h1.242a.618.618,0,0,1,.621.621.6.6,0,0,1-.184.425Zm-8.966-5.047a4.143,4.143,0,0,0,4.161,0,4.166,4.166,0,0,0,2.081-3.61,4.161,4.161,0,0,0-4.162-4.161,4.16,4.16,0,0,0-4.161,4.161A4.179,4.179,0,0,0-1590.249,295.058Zm1.724,4.61a4.872,4.872,0,0,1,.391-1.931,5.639,5.639,0,0,1,.54-.966,4.67,4.67,0,0,1-.575.035,5.145,5.145,0,0,1-2.081-.425,5.006,5.006,0,0,1-.943-.517,1.2,1.2,0,0,0-1.345-.011,7.8,7.8,0,0,0-3.414,6.265v.069a.6.6,0,0,0,.6.575h7.92a5.215,5.215,0,0,1-.7-1.161,5.035,5.035,0,0,1-.391-1.931Z" transform="translate(1599.528 -284.903)" fill="#7bf8f4" opacity="0.996"/>
<g id="路径_190" data-name="路径 190" fill="none">
<path d="M11.5,0A11.5,11.5,0,0,1,23,11.5c0,6.351-11.6,18.226-11.5,18.3S0,17.851,0,11.5A11.5,11.5,0,0,1,11.5,0Z" stroke="none"/>
<path d="M 11.5 1.000003814697266 C 5.71027946472168 1.000003814697266 1 5.710294723510742 1 11.50003433227539 C 1 15.44052124023438 6.295677185058594 22.62869262695312 11.47670078277588 28.30246353149414 C 12.68496322631836 26.95182609558105 15.33070659637451 23.97891044616699 17.65538024902344 20.72865295410156 C 19.63738059997559 17.95753479003906 22 14.10700416564941 22 11.50003433227539 C 22 5.710294723510742 17.28972053527832 1.000003814697266 11.5 1.000003814697266 M 11.5 3.814697265625e-06 C 17.85128021240234 3.814697265625e-06 23 5.148744583129883 23 11.50003433227539 C 23 17.82767677307129 11.48916530609131 29.63790130615234 11.49940204620361 29.80170249938965 C 11.36462783813477 29.63816833496094 0 17.78736114501953 0 11.50003433227539 C 0 5.148744583129883 5.14872932434082 3.814697265625e-06 11.5 3.814697265625e-06 Z M 11.49940204620361 29.80170249938965 C 11.50076866149902 29.80335998535156 11.50098419189453 29.80382347106934 11.5 29.80304336547852 C 11.49963855743408 29.80275726318359 11.49944019317627 29.80231475830078 11.49940204620361 29.80170249938965 Z" stroke="none" fill="#7bf8f4"/>
</g>
<path id="多边形_37" data-name="多边形 37" d="M4.471,0,8.941,5.961H0Z" transform="translate(16.094 29.803) rotate(180)" fill="#7bf8f4"/>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6552 9.77473C16.6552 12.923 14.103 15.4752 10.9547 15.4752C7.80636 15.4752 5.25415 12.923 5.25415 9.77473C5.25415 6.62643 7.80636 4.07422 10.9547 4.07422C14.103 4.07422 16.6552 6.62643 16.6552 9.77473ZM12.9472 8.3569C12.9472 9.44817 12.0625 10.3331 10.971 10.3331C9.87956 10.3331 8.99488 9.44838 8.99488 8.3569C8.99488 7.26563 9.87956 6.38074 10.971 6.38074C12.0625 6.38074 12.9472 7.26542 12.9472 8.3569ZM10.9711 10.9893C11.5708 10.9893 12.1416 10.7873 12.6021 10.4238V10.424C13.7973 10.8771 14.3461 12.4304 14.3461 13.1384H7.56167C7.56167 12.424 8.10625 10.8598 9.32553 10.4122C9.78815 10.7827 10.3644 10.9893 10.9711 10.9893Z" fill="#00FFFF">
<animate attributeName="fill" attributeType="XML"
from="#7bf8f4" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#ff0000">
</path>
<g filter="url(#filter0_f_194_252)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#00FFFF">
<animate attributeName="fill" attributeType="XML"
from="#7bf8f4" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
</g>
<defs>
<filter id="filter0_f_194_252" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_252"/>
</filter>
</defs>
</svg>
<svg id="组_2449" data-name="组 2449" xmlns="http://www.w3.org/2000/svg" width="18" height="25" viewBox="0 0 23 33.9">
<g id="路径_186" data-name="路径 186" fill="none">
<path d="M11.5,0A11.5,11.5,0,0,1,23,11.5c0,6.351-11.6,18.226-11.5,18.3S0,17.851,0,11.5A11.5,11.5,0,0,1,11.5,0Z" stroke="none"/>
<path d="M 11.5 0.9999942779541016 C 5.71027946472168 0.9999942779541016 1 5.710294723510742 1 11.50003433227539 C 1 15.44047451019287 6.295700073242188 22.62868881225586 11.47670364379883 28.30246925354004 C 12.68497562408447 26.95181846618652 15.33078575134277 23.97880172729492 17.65543937683105 20.72857475280762 C 19.63740921020508 17.95747375488281 22 14.10698509216309 22 11.50003433227539 C 22 5.710294723510742 17.28972053527832 0.9999942779541016 11.5 0.9999942779541016 M 11.5 -5.7220458984375e-06 C 17.85127067565918 -5.7220458984375e-06 23 5.148744583129883 23 11.50003433227539 C 23 17.82767868041992 11.48916530609131 29.63789367675781 11.49940204620361 29.80171203613281 C 11.36462783813477 29.63816833496094 0 17.78736114501953 0 11.50003433227539 C 0 5.148744583129883 5.14872932434082 -5.7220458984375e-06 11.5 -5.7220458984375e-06 Z M 11.49940204620361 29.80171203613281 C 11.50076866149902 29.80337142944336 11.50098419189453 29.80383491516113 11.5 29.80305480957031 C 11.49963855743408 29.80276870727539 11.49944019317627 29.80232429504395 11.49940204620361 29.80171203613281 Z" stroke="none" fill="#7bf8f4"/>
</g>
<path id="多边形_33" data-name="多边形 33" d="M4.471,0,8.941,5.961H0Z" transform="translate(16.094 29.804) rotate(180)" fill="#7bf8f4"/>
<path id="路径_966" data-name="路径 966" d="M99.476,156.616a6.028,6.028,0,0,1-1.622,2.267.9.9,0,0,1-.583.252.8.8,0,0,1-.567-.236.765.765,0,0,1-.236-.535.705.705,0,0,1,.236-.535,6.035,6.035,0,0,0,1.748-4.377A5.726,5.726,0,0,0,96.7,149.2a6.645,6.645,0,0,0-9.085.016,5.836,5.836,0,0,0-1.763,4.283,6.134,6.134,0,0,0,1.952,4.346.765.765,0,0,1,.236.535.705.705,0,0,1-.236.535.748.748,0,0,1-.567.236.8.8,0,0,1-.567-.236,7.414,7.414,0,0,1-2.047-2.724,7.528,7.528,0,0,1,1.748-8.266,7.836,7.836,0,0,1,2.629-1.685,9.392,9.392,0,0,1,6.361-.063,6.113,6.113,0,0,1,2.141,1.26c2.866,2.425,3.023,5.9,2.047,8.943Zm-7.337-7.684a4.366,4.366,0,0,0-4.377,4.267.5.5,0,0,1-.236.5.527.527,0,0,1-.567,0,.513.513,0,0,1-.236-.5,5.254,5.254,0,0,1,1.575-3.684,5.533,5.533,0,0,1,7.7,0,5.208,5.208,0,0,1,1.606,3.732.5.5,0,0,1-.236.5.527.527,0,0,1-.567,0,.513.513,0,0,1-.236-.5,4.382,4.382,0,0,0-4.424-4.314Zm.913,5.4a1.113,1.113,0,0,1-1.559-.047,1.054,1.054,0,0,1-.268-1.149l-1.212-1.2a.418.418,0,0,1,0-.6.479.479,0,0,1,.63,0l1.228,1.2a1.162,1.162,0,0,1,1.2.268,1.024,1.024,0,0,1,.331.771A1.093,1.093,0,0,1,93.052,154.333Zm.016-.016" transform="translate(-80.582 -142.727)" fill="#7bf8f4"/>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6554 9.77278C16.6554 12.9211 14.1032 15.4733 10.9549 15.4733C7.8066 15.4733 5.25439 12.9211 5.25439 9.77278C5.25439 6.62447 7.8066 4.07227 10.9549 4.07227C14.1032 4.07227 16.6554 6.62447 16.6554 9.77278ZM12.9473 8.35486C12.9473 9.44613 12.0626 10.331 10.9711 10.331C9.87961 10.331 8.99494 9.44634 8.99494 8.35486C8.99494 7.26359 9.87961 6.3787 10.9711 6.3787C12.0626 6.3787 12.9473 7.26338 12.9473 8.35486ZM10.9712 10.9872C11.5709 10.9872 12.1416 10.7853 12.6021 10.4217V10.422C13.7973 10.8751 14.3461 12.4283 14.3461 13.1364H7.56173C7.56173 12.422 8.1063 10.8577 9.32559 10.4101C9.7882 10.7806 10.3645 10.9872 10.9712 10.9872Z" fill="#00FFFF">
<animate attributeName="fill" attributeType="XML"
from="#00FFFF" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#00FFFF">
<animate attributeName="fill" attributeType="XML"
from="#00FFFF" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
<g filter="url(#filter0_f_230_72)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#00FFFF">
<animate attributeName="fill" attributeType="XML"
from="#00FFFF" to="#ff0000"
begin="0s" dur="1s"
fill="remove" repeatCount="indefinite"/>
</path>
</g>
<defs>
<filter id="filter0_f_230_72" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_230_72"/>
</filter>
</defs>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6552 9.77278C16.6552 12.9211 14.103 15.4733 10.9547 15.4733C7.80636 15.4733 5.25415 12.9211 5.25415 9.77278C5.25415 6.62447 7.80636 4.07227 10.9547 4.07227C14.103 4.07227 16.6552 6.62447 16.6552 9.77278ZM10.867 11.2506H11.324V13.098H10.867V11.2506ZM9.84612 11.2506H10.3032V13.098H9.84612V11.2506ZM13.7726 6.71854V12.5548H14.2799V13.0979H11.726V11.0721C11.726 10.9225 11.6011 10.8005 11.4482 10.8005H9.43527C9.2823 10.8005 9.15705 10.9228 9.15705 11.0721V13.0979H7.62926V12.5544H8.13655V9.16448C8.13763 9.09164 8.16749 9.02218 8.21963 8.97129C8.27176 8.9204 8.34192 8.89223 8.41477 8.89292H10.0619V8.32503C10.0629 8.25212 10.0927 8.18257 10.1448 8.1316C10.197 8.08063 10.2672 8.0524 10.3401 8.0531H11.4035C11.4764 8.0524 11.5466 8.08063 11.5987 8.1316C11.6509 8.18257 11.6807 8.25212 11.6817 8.32503V8.89329H12.1236V6.71891C12.1247 6.64607 12.1545 6.57661 12.2067 6.52572C12.2588 6.47483 12.3289 6.44666 12.4018 6.44735H13.4943C13.5671 6.44666 13.6372 6.47478 13.6894 6.52559C13.7415 6.5764 13.7714 6.64576 13.7726 6.71854ZM9.23907 10.4022H11.6455H11.647V9.8591H9.23907V10.4022Z" fill="#F0C41B"/>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#F0C41B"/>
<g filter="url(#filter0_f_194_268)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#F0C41B"/>
</g>
<defs>
<filter id="filter0_f_194_268" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_268"/>
</filter>
</defs>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6552 9.77278C16.6552 12.9211 14.103 15.4733 10.9547 15.4733C7.80636 15.4733 5.25415 12.9211 5.25415 9.77278C5.25415 6.62447 7.80636 4.07227 10.9547 4.07227C14.103 4.07227 16.6552 6.62447 16.6552 9.77278ZM10.867 11.2506H11.324V13.098H10.867V11.2506ZM9.84612 11.2506H10.3032V13.098H9.84612V11.2506ZM13.7726 6.71854V12.5548H14.2799V13.0979H11.726V11.0721C11.726 10.9225 11.6011 10.8005 11.4482 10.8005H9.43527C9.2823 10.8005 9.15705 10.9228 9.15705 11.0721V13.0979H7.62926V12.5544H8.13655V9.16448C8.13763 9.09164 8.16749 9.02218 8.21963 8.97129C8.27176 8.9204 8.34192 8.89223 8.41477 8.89292H10.0619V8.32503C10.0629 8.25212 10.0927 8.18257 10.1448 8.1316C10.197 8.08063 10.2672 8.0524 10.3401 8.0531H11.4035C11.4764 8.0524 11.5466 8.08063 11.5987 8.1316C11.6509 8.18257 11.6807 8.25212 11.6817 8.32503V8.89329H12.1236V6.71891C12.1247 6.64607 12.1545 6.57661 12.2067 6.52572C12.2588 6.47483 12.3289 6.44666 12.4018 6.44735H13.4943C13.5671 6.44666 13.6372 6.47478 13.6894 6.52559C13.7415 6.5764 13.7714 6.64576 13.7726 6.71854ZM9.23907 10.4022H11.6455H11.647V9.8591H9.23907V10.4022Z" fill="#F0C41B"/>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#F0C41B"/>
<g filter="url(#filter0_f_194_268)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#F0C41B"/>
</g>
<defs>
<filter id="filter0_f_194_268" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_268"/>
</filter>
</defs>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#FA8167"/>
<path d="M16.6134 8.94262C16.4134 7.58911 15.7326 6.3525 14.6954 5.45841C13.6581 4.56433 12.3334 4.07236 10.963 4.07227C9.44847 4.07227 7.99596 4.67294 6.92503 5.74214C5.85409 6.81135 5.25244 8.2615 5.25244 9.77359C5.25244 11.2857 5.85409 12.7358 6.92503 13.805C7.99596 14.8742 9.44847 15.4749 10.963 15.4749C12.3334 15.4748 13.6581 14.9828 14.6954 14.0888C15.7326 13.1947 16.4134 11.9581 16.6134 10.6046L16.6551 9.77359L16.6134 8.94262ZM6.58836 9.37325C6.682 8.3553 7.12877 7.40197 7.85151 6.67789C8.57425 5.95381 9.52758 5.50446 10.5468 5.40744V6.27779C9.75838 6.37152 9.02466 6.72811 8.46439 7.28987C7.90413 7.85162 7.55009 8.58567 7.45957 9.37325H6.58836ZM10.5468 14.1399C9.5328 14.0434 8.58385 13.5981 7.8623 12.8802C7.14075 12.1623 6.69144 11.2165 6.59121 10.2044H7.46332C7.5602 10.9858 7.91657 11.7123 8.47551 12.2678C9.03445 12.8233 9.76372 13.1757 10.5468 13.2689V14.1399ZM10.3991 10.0155V11.9119H9.69579V7.62704H12.6225V8.2271H10.3984V9.4153H12.4963V10.0154L10.3991 10.0155ZM11.3792 14.1399V13.2694C12.1623 13.1762 12.8915 12.8238 13.4505 12.2683C14.0094 11.7128 14.3658 10.9863 14.4627 10.2049H15.3348C15.2344 11.2169 14.785 12.1625 14.0635 12.8803C13.3419 13.598 12.3931 14.0434 11.3792 14.1399ZM14.4664 9.37325C14.3759 8.58567 14.0219 7.85162 13.4616 7.28987C12.9013 6.72811 12.1676 6.37152 11.3792 6.27779V5.40744C12.3984 5.5045 13.3517 5.95387 14.0744 6.67794C14.7971 7.40202 15.2438 8.35533 15.3375 9.37325H14.4664Z" fill="#FA8167"/>
<g filter="url(#filter0_f_194_248)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#FA8167"/>
</g>
<defs>
<filter id="filter0_f_194_248" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_248"/>
</filter>
</defs>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#FA8167"/>
<path d="M16.6134 8.94262C16.4134 7.58911 15.7326 6.3525 14.6954 5.45841C13.6581 4.56433 12.3334 4.07236 10.963 4.07227C9.44847 4.07227 7.99596 4.67294 6.92503 5.74214C5.85409 6.81135 5.25244 8.2615 5.25244 9.77359C5.25244 11.2857 5.85409 12.7358 6.92503 13.805C7.99596 14.8742 9.44847 15.4749 10.963 15.4749C12.3334 15.4748 13.6581 14.9828 14.6954 14.0888C15.7326 13.1947 16.4134 11.9581 16.6134 10.6046L16.6551 9.77359L16.6134 8.94262ZM6.58836 9.37325C6.682 8.3553 7.12877 7.40197 7.85151 6.67789C8.57425 5.95381 9.52758 5.50446 10.5468 5.40744V6.27779C9.75838 6.37152 9.02466 6.72811 8.46439 7.28987C7.90413 7.85162 7.55009 8.58567 7.45957 9.37325H6.58836ZM10.5468 14.1399C9.5328 14.0434 8.58385 13.5981 7.8623 12.8802C7.14075 12.1623 6.69144 11.2165 6.59121 10.2044H7.46332C7.5602 10.9858 7.91657 11.7123 8.47551 12.2678C9.03445 12.8233 9.76372 13.1757 10.5468 13.2689V14.1399ZM10.3991 10.0155V11.9119H9.69579V7.62704H12.6225V8.2271H10.3984V9.4153H12.4963V10.0154L10.3991 10.0155ZM11.3792 14.1399V13.2694C12.1623 13.1762 12.8915 12.8238 13.4505 12.2683C14.0094 11.7128 14.3658 10.9863 14.4627 10.2049H15.3348C15.2344 11.2169 14.785 12.1625 14.0635 12.8803C13.3419 13.598 12.3931 14.0434 11.3792 14.1399ZM14.4664 9.37325C14.3759 8.58567 14.0219 7.85162 13.4616 7.28987C12.9013 6.72811 12.1676 6.37152 11.3792 6.27779V5.40744C12.3984 5.5045 13.3517 5.95387 14.0744 6.67794C14.7971 7.40202 15.2438 8.35533 15.3375 9.37325H14.4664Z" fill="#FA8167"/>
<g filter="url(#filter0_f_194_248)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#FA8167"/>
</g>
<defs>
<filter id="filter0_f_194_248" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_248"/>
</filter>
</defs>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.9547 15.4733C14.103 15.4733 16.6552 12.9211 16.6552 9.77278C16.6552 6.62447 14.103 4.07227 10.9547 4.07227C7.80636 4.07227 5.25415 6.62447 5.25415 9.77278C5.25415 12.9211 7.80636 15.4733 10.9547 15.4733ZM6.88066 9.97604C6.76989 9.92967 6.67933 9.98583 6.67933 10.1006V12.9572C6.67933 13.0721 6.76989 13.1279 6.88066 13.0819L7.73281 12.7257C7.84377 12.6795 7.93413 12.5481 7.93413 12.4332V11.9701H9.66077C9.74965 11.9702 9.83669 11.9461 9.91164 11.9007C9.9866 11.8553 10.0463 11.7905 10.0838 11.7139L10.483 10.8936L9.63881 10.5205L9.36286 11.0874H7.93452V10.6243C7.93452 10.5096 7.84396 10.378 7.73319 10.3318L6.88066 9.97604ZM14.1368 11.3145L14.7188 10.1318L13.3041 10.9465L14.1368 11.3145ZM15.0589 9.04219L9.27502 6.48616C9.16924 6.43967 9.04843 6.43478 8.93887 6.47256C8.82932 6.51035 8.7399 6.58774 8.69008 6.68789L7.68578 8.72924C7.63695 8.82962 7.63195 8.94429 7.67187 9.04816C7.71179 9.15204 7.79337 9.23664 7.89877 9.28346L11.7129 10.969C11.9323 11.0658 12.281 11.0477 12.4877 10.9287L15.0815 9.43494C15.2882 9.31597 15.2779 9.13936 15.0589 9.04219Z" fill="#36E7C7"/>
<path d="M10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.665 19.2892 8.7725 19.4688C9.14689 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689Z" stroke="#36E7C7"/>
<g filter="url(#filter0_f_175_404)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#36E7C7"/>
</g>
<defs>
<filter id="filter0_f_175_404" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_175_404"/>
</filter>
</defs>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.9547 15.4733C14.103 15.4733 16.6552 12.9211 16.6552 9.77278C16.6552 6.62447 14.103 4.07227 10.9547 4.07227C7.80636 4.07227 5.25415 6.62447 5.25415 9.77278C5.25415 12.9211 7.80636 15.4733 10.9547 15.4733ZM6.88066 9.97604C6.76989 9.92967 6.67933 9.98583 6.67933 10.1006V12.9572C6.67933 13.0721 6.76989 13.1279 6.88066 13.0819L7.73281 12.7257C7.84377 12.6795 7.93413 12.5481 7.93413 12.4332V11.9701H9.66077C9.74965 11.9702 9.83669 11.9461 9.91164 11.9007C9.9866 11.8553 10.0463 11.7905 10.0838 11.7139L10.483 10.8936L9.63881 10.5205L9.36286 11.0874H7.93452V10.6243C7.93452 10.5096 7.84396 10.378 7.73319 10.3318L6.88066 9.97604ZM14.1368 11.3145L14.7188 10.1318L13.3041 10.9465L14.1368 11.3145ZM15.0589 9.04219L9.27502 6.48616C9.16924 6.43967 9.04843 6.43478 8.93887 6.47256C8.82932 6.51035 8.7399 6.58774 8.69008 6.68789L7.68578 8.72924C7.63695 8.82962 7.63195 8.94429 7.67187 9.04816C7.71179 9.15204 7.79337 9.23664 7.89877 9.28346L11.7129 10.969C11.9323 11.0658 12.281 11.0477 12.4877 10.9287L15.0815 9.43494C15.2882 9.31597 15.2779 9.13936 15.0589 9.04219Z" fill="#36E7C7"/>
<path d="M10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.665 19.2892 8.7725 19.4688C9.14689 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689Z" stroke="#36E7C7"/>
<g filter="url(#filter0_f_175_404)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#36E7C7"/>
</g>
<defs>
<filter id="filter0_f_175_404" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_175_404"/>
</filter>
</defs>
</svg>
<svg width="18" height="25" viewBox="0 0 22 32" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.7 31.3658H5.30019C4.62592 31.3658 4.09277 30.817 4.09277 30.1584V28.559C4.09277 27.8847 4.6416 27.3516 5.30019 27.3516H16.7157C17.39 27.3516 17.9231 27.9004 17.9231 28.559V30.1584C17.9231 30.817 17.3743 31.3658 16.7 31.3658V31.3658Z" fill="#006AA6"/>
<path d="M5.66113 28.9141H16.3397V29.7765H5.66113V28.9141Z" fill="white"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M15.2417 1.59943H6.74272V4.84533H15.2417V1.59943ZM4.62583 1.56807H17.3742C17.8133 1.56807 18.1583 1.22309 18.1583 0.784034C18.1583 0.344975 17.8133 0 17.3742 0H4.62583C4.18677 0 3.8418 0.344975 3.8418 0.784034C3.8418 1.22309 4.18677 1.56807 4.62583 1.56807ZM9.34556 3.93749H12.6699C13.0932 3.93749 13.4382 3.59251 13.4382 3.15345C13.4382 2.71439 13.0932 2.36942 12.6542 2.36942H9.34556C8.9065 2.36942 8.56152 2.71439 8.56152 3.15345C8.56152 3.59251 8.9065 3.93749 9.34556 3.93749Z" fill="#006AA6"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M15.6181 0.03125H6.38222C5.5825 0.03125 5.1748 0.438948 5.1748 1.23866V5.22156C5.1748 6.02127 5.5825 6.42897 6.38222 6.42897H15.6181C16.4179 6.42897 16.8256 6.02127 16.8256 5.22156V1.23866C16.8256 0.438948 16.4179 0.03125 15.6181 0.03125ZM9.3457 3.93498H12.67C13.0934 3.93498 13.4384 3.59 13.4384 3.15094C13.4384 2.71188 13.0934 2.36691 12.6543 2.36691H9.3457C8.90664 2.36691 8.56166 2.71188 8.56166 3.15094C8.56166 3.59 8.90664 3.93498 9.3457 3.93498Z" fill="#006AA6"/>
<path d="M19.3189 7.60552C18.6133 6.89989 17.6567 6.49219 16.6532 6.49219H5.3474C4.34384 6.49219 3.38732 6.8842 2.68169 7.60552C1.97606 8.31115 1.56836 9.26767 1.56836 10.2712V23.5685C1.56836 24.572 1.96038 25.5285 2.68169 26.2342C3.38732 26.9398 4.34384 27.3475 5.3474 27.3475H16.6532C17.6567 27.3475 18.6133 26.9555 19.3189 26.2342C20.0245 25.5285 20.4322 24.572 20.4322 23.5685V10.2712C20.4322 9.26767 20.0245 8.31115 19.3189 7.60552ZM16.1671 19.4915C16.1044 20.6518 15.5869 21.7495 14.7401 22.5335C13.6111 23.443 12.1999 23.8977 10.7572 23.8037H10.7259C9.78504 23.8193 8.8442 23.5998 8.01312 23.1608C7.26045 22.7531 6.63322 22.1729 6.19416 21.4516C4.97107 19.2092 4.93971 16.4965 6.10008 14.2228C6.25688 13.8935 6.63322 13.7053 6.99388 13.7837C7.35453 13.8621 7.6211 14.1757 7.60542 14.5521C7.60542 15.2263 7.90336 15.8692 8.4365 16.3083C8.54626 15.6183 8.75011 14.9441 9.04805 14.3012C9.76936 12.7331 10.8356 11.3689 12.1685 10.3026C12.4351 10.0987 12.7957 10.0674 13.078 10.2399C13.3602 10.4124 13.5014 10.7417 13.4386 11.0709C13.078 12.3881 13.0937 13.768 13.4857 15.0695C13.7679 15.4302 14.0815 15.7595 14.4422 16.0417C15.6026 16.7944 16.2768 18.1116 16.1671 19.4915Z" fill="#006AA6"/>
<path d="M16.6529 4.92578H5.34711C2.39914 4.92578 0 7.32493 0 10.2729V23.5701C0 26.5181 2.39914 28.9172 5.34711 28.9172H16.6529C19.6009 28.9172 22 26.5181 22 23.5701V10.2729C22 7.32493 19.6165 4.92578 16.6529 4.92578ZM16.1668 19.4931C16.1041 20.6535 15.5866 21.7512 14.7398 22.5352C13.6108 23.4447 12.1996 23.8994 10.7569 23.8053H10.7256C9.78475 23.821 8.84391 23.6015 8.01283 23.1624C7.26016 22.7547 6.63293 22.1745 6.19387 21.4532C4.97078 19.2109 4.93941 16.4981 6.09979 14.2244C6.25659 13.8951 6.63293 13.707 6.99359 13.7854C7.35424 13.8638 7.62081 14.1774 7.60513 14.5537C7.60513 15.228 7.90306 15.8709 8.43621 16.31C8.54597 15.62 8.74982 14.9457 9.04776 14.3028C9.76907 12.7348 10.8354 11.3705 12.1682 10.3043C12.4348 10.1004 12.7954 10.069 13.0777 10.2415C13.3599 10.414 13.5011 10.7433 13.4383 11.0726C13.0777 12.3898 13.0934 13.7697 13.4854 15.0712C13.7676 15.4318 14.0813 15.7611 14.4419 16.0434C15.6023 16.7961 16.2766 18.1132 16.1668 19.4931Z" fill="#006AA6"/>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.9547 4.07031C9.44279 4.07031 7.99285 4.6709 6.92379 5.73995C5.85474 6.80901 5.25415 8.25896 5.25415 9.77083C5.25415 11.2827 5.85474 12.7326 6.92379 13.8017C7.99285 14.8708 9.44279 15.4713 10.9547 15.4713C12.4665 15.4713 13.9165 14.8708 14.9855 13.8017C16.0546 12.7326 16.6552 11.2827 16.6552 9.77083C16.6552 8.25896 16.0546 6.80901 14.9855 5.73995C13.9165 4.6709 12.4665 4.07031 10.9547 4.07031V4.07031ZM14.375 11.766H13.8049V12.6211H12.9498V13.1911H11.8097V12.6211H10.3846V13.1911H9.24451V12.6211H8.38943V11.766H7.81938V7.77565H8.38943V6.92057H9.24451V6.63554H10.0996V6.92057H10.6696V6.63554H11.5247V6.92057H12.0948V6.63554H12.9498V6.92057H13.8049V7.77565H14.375V11.766ZM8.67446 11.766H13.5199V7.49062H8.67446V11.766ZM12.9498 7.77565H13.2349V11.481H12.9498V7.77565ZM12.3798 7.77565H12.6648V11.481H12.3798V7.77565ZM11.8097 7.77565H12.0948V11.481H11.8097V7.77565ZM11.2397 7.77565H11.5247V11.481H11.2397V7.77565ZM10.6696 7.77565H10.9547V11.481H10.6696V7.77565ZM10.0996 7.77565H10.3846V11.481H10.0996V7.77565ZM9.52954 7.77565H9.81456V11.481H9.52954V7.77565ZM8.95948 7.77565H9.24451V11.481H8.95948V7.77565Z" fill="#74C5FF"/>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#74C5FF"/>
<g filter="url(#filter0_f_194_260)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#74C5FF"/>
</g>
<defs>
<filter id="filter0_f_194_260" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_260"/>
</filter>
</defs>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.9547 4.07031C9.44279 4.07031 7.99285 4.6709 6.92379 5.73995C5.85474 6.80901 5.25415 8.25896 5.25415 9.77083C5.25415 11.2827 5.85474 12.7326 6.92379 13.8017C7.99285 14.8708 9.44279 15.4713 10.9547 15.4713C12.4665 15.4713 13.9165 14.8708 14.9855 13.8017C16.0546 12.7326 16.6552 11.2827 16.6552 9.77083C16.6552 8.25896 16.0546 6.80901 14.9855 5.73995C13.9165 4.6709 12.4665 4.07031 10.9547 4.07031V4.07031ZM14.375 11.766H13.8049V12.6211H12.9498V13.1911H11.8097V12.6211H10.3846V13.1911H9.24451V12.6211H8.38943V11.766H7.81938V7.77565H8.38943V6.92057H9.24451V6.63554H10.0996V6.92057H10.6696V6.63554H11.5247V6.92057H12.0948V6.63554H12.9498V6.92057H13.8049V7.77565H14.375V11.766ZM8.67446 11.766H13.5199V7.49062H8.67446V11.766ZM12.9498 7.77565H13.2349V11.481H12.9498V7.77565ZM12.3798 7.77565H12.6648V11.481H12.3798V7.77565ZM11.8097 7.77565H12.0948V11.481H11.8097V7.77565ZM11.2397 7.77565H11.5247V11.481H11.2397V7.77565ZM10.6696 7.77565H10.9547V11.481H10.6696V7.77565ZM10.0996 7.77565H10.3846V11.481H10.0996V7.77565ZM9.52954 7.77565H9.81456V11.481H9.52954V7.77565ZM8.95948 7.77565H9.24451V11.481H8.95948V7.77565Z" fill="#74C5FF"/>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#74C5FF"/>
<g filter="url(#filter0_f_194_260)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#74C5FF"/>
</g>
<defs>
<filter id="filter0_f_194_260" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_260"/>
</filter>
</defs>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6552 9.77473C16.6552 12.923 14.103 15.4752 10.9547 15.4752C7.80636 15.4752 5.25415 12.923 5.25415 9.77473C5.25415 6.62643 7.80636 4.07422 10.9547 4.07422C14.103 4.07422 16.6552 6.62643 16.6552 9.77473ZM12.9472 8.3569C12.9472 9.44817 12.0625 10.3331 10.971 10.3331C9.87956 10.3331 8.99488 9.44838 8.99488 8.3569C8.99488 7.26563 9.87956 6.38074 10.971 6.38074C12.0625 6.38074 12.9472 7.26542 12.9472 8.3569ZM10.9711 10.9893C11.5708 10.9893 12.1416 10.7873 12.6021 10.4238V10.424C13.7973 10.8771 14.3461 12.4304 14.3461 13.1384H7.56167C7.56167 12.424 8.10625 10.8598 9.32553 10.4122C9.78815 10.7827 10.3644 10.9893 10.9711 10.9893Z" fill="#00FFFF"/>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#00FFFF"/>
<g filter="url(#filter0_f_194_252)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#00FFFF"/>
</g>
<defs>
<filter id="filter0_f_194_252" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_252"/>
</filter>
</defs>
</svg>
<svg width="22" height="25" viewBox="0 0 22 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6552 9.77473C16.6552 12.923 14.103 15.4752 10.9547 15.4752C7.80636 15.4752 5.25415 12.923 5.25415 9.77473C5.25415 6.62643 7.80636 4.07422 10.9547 4.07422C14.103 4.07422 16.6552 6.62643 16.6552 9.77473ZM12.9472 8.3569C12.9472 9.44817 12.0625 10.3331 10.971 10.3331C9.87956 10.3331 8.99488 9.44838 8.99488 8.3569C8.99488 7.26563 9.87956 6.38074 10.971 6.38074C12.0625 6.38074 12.9472 7.26542 12.9472 8.3569ZM10.9711 10.9893C11.5708 10.9893 12.1416 10.7873 12.6021 10.4238V10.424C13.7973 10.8771 14.3461 12.4304 14.3461 13.1384H7.56167C7.56167 12.424 8.10625 10.8598 9.32553 10.4122C9.78815 10.7827 10.3644 10.9893 10.9711 10.9893Z" fill="#00FFFF"/>
<path d="M5.7556 4.49115C2.88589 7.36086 2.87565 12.0077 5.73811 14.8702C6.03244 15.1645 6.45323 15.7447 6.94211 16.4931C7.42337 17.2298 7.94668 18.0917 8.44496 18.922C8.55553 19.1063 8.66499 19.2892 8.77248 19.4688C9.14688 20.0944 9.49738 20.6801 9.78744 21.1433C9.97373 21.4407 10.1413 21.6977 10.2784 21.8867C10.3462 21.9801 10.4142 22.0676 10.4788 22.1379C10.5108 22.1728 10.5501 22.2123 10.5949 22.2483C10.6309 22.2772 10.7126 22.3389 10.8281 22.3689C11.0039 22.4146 11.1483 22.3604 11.2172 22.3271C11.2918 22.2911 11.3505 22.2447 11.3901 22.21C11.4707 22.1392 11.548 22.0487 11.6172 21.9601C11.7593 21.7779 11.9291 21.5227 12.114 21.2281C12.454 20.6862 12.8754 19.9616 13.3199 19.1974C13.3616 19.1256 13.4036 19.0535 13.4457 18.9811C13.939 18.1333 14.4562 17.2492 14.9321 16.495C15.4164 15.7273 15.8303 15.1395 16.1171 14.8527C18.9868 11.983 18.9971 7.33612 16.1346 4.47366C13.2722 1.6112 8.62531 1.62144 5.7556 4.49115Z" stroke="#00FFFF"/>
<g filter="url(#filter0_f_194_252)">
<path d="M10.9626 22.709L12.997 19.1853H8.92825L10.9626 22.709Z" fill="#00FFFF"/>
</g>
<defs>
<filter id="filter0_f_194_252" x="6.92822" y="17.1855" width="8.06885" height="7.52344" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="1" result="effect1_foregroundBlur_194_252"/>
</filter>
</defs>
</svg>
<svg id="组_2449" data-name="组 2449" xmlns="http://www.w3.org/2000/svg" width="18" height="25" viewBox="0 0 23 33.9">
<g id="路径_186" data-name="路径 186" fill="none">
<path d="M11.5,0A11.5,11.5,0,0,1,23,11.5c0,6.351-11.6,18.226-11.5,18.3S0,17.851,0,11.5A11.5,11.5,0,0,1,11.5,0Z" stroke="none"/>
<path d="M 11.5 0.9999942779541016 C 5.71027946472168 0.9999942779541016 1 5.710294723510742 1 11.50003433227539 C 1 15.44047451019287 6.295700073242188 22.62868881225586 11.47670364379883 28.30246925354004 C 12.68497562408447 26.95181846618652 15.33078575134277 23.97880172729492 17.65543937683105 20.72857475280762 C 19.63740921020508 17.95747375488281 22 14.10698509216309 22 11.50003433227539 C 22 5.710294723510742 17.28972053527832 0.9999942779541016 11.5 0.9999942779541016 M 11.5 -5.7220458984375e-06 C 17.85127067565918 -5.7220458984375e-06 23 5.148744583129883 23 11.50003433227539 C 23 17.82767868041992 11.48916530609131 29.63789367675781 11.49940204620361 29.80171203613281 C 11.36462783813477 29.63816833496094 0 17.78736114501953 0 11.50003433227539 C 0 5.148744583129883 5.14872932434082 -5.7220458984375e-06 11.5 -5.7220458984375e-06 Z M 11.49940204620361 29.80171203613281 C 11.50076866149902 29.80337142944336 11.50098419189453 29.80383491516113 11.5 29.80305480957031 C 11.49963855743408 29.80276870727539 11.49944019317627 29.80232429504395 11.49940204620361 29.80171203613281 Z" stroke="none" fill="#7bf8f4"/>
</g>
<path id="多边形_33" data-name="多边形 33" d="M4.471,0,8.941,5.961H0Z" transform="translate(16.094 29.804) rotate(180)" fill="#7bf8f4"/>
<path id="路径_966" data-name="路径 966" d="M99.476,156.616a6.028,6.028,0,0,1-1.622,2.267.9.9,0,0,1-.583.252.8.8,0,0,1-.567-.236.765.765,0,0,1-.236-.535.705.705,0,0,1,.236-.535,6.035,6.035,0,0,0,1.748-4.377A5.726,5.726,0,0,0,96.7,149.2a6.645,6.645,0,0,0-9.085.016,5.836,5.836,0,0,0-1.763,4.283,6.134,6.134,0,0,0,1.952,4.346.765.765,0,0,1,.236.535.705.705,0,0,1-.236.535.748.748,0,0,1-.567.236.8.8,0,0,1-.567-.236,7.414,7.414,0,0,1-2.047-2.724,7.528,7.528,0,0,1,1.748-8.266,7.836,7.836,0,0,1,2.629-1.685,9.392,9.392,0,0,1,6.361-.063,6.113,6.113,0,0,1,2.141,1.26c2.866,2.425,3.023,5.9,2.047,8.943Zm-7.337-7.684a4.366,4.366,0,0,0-4.377,4.267.5.5,0,0,1-.236.5.527.527,0,0,1-.567,0,.513.513,0,0,1-.236-.5,5.254,5.254,0,0,1,1.575-3.684,5.533,5.533,0,0,1,7.7,0,5.208,5.208,0,0,1,1.606,3.732.5.5,0,0,1-.236.5.527.527,0,0,1-.567,0,.513.513,0,0,1-.236-.5,4.382,4.382,0,0,0-4.424-4.314Zm.913,5.4a1.113,1.113,0,0,1-1.559-.047,1.054,1.054,0,0,1-.268-1.149l-1.212-1.2a.418.418,0,0,1,0-.6.479.479,0,0,1,.63,0l1.228,1.2a1.162,1.162,0,0,1,1.2.268,1.024,1.024,0,0,1,.331.771A1.093,1.093,0,0,1,93.052,154.333Zm.016-.016" transform="translate(-80.582 -142.727)" fill="#7bf8f4"/>
</svg>
<template>
<div v-if="show" class="myCenter">
<div class="left">
<div class="title-wrapper">
<div class="title">报警器列表</div>
<div class="close" @click="close">
<img src="@/assets/bigWindowOld/mapImages/closeBtn.png" alt="" />
</div>
</div>
<div class="bottom right-bottom-data-left">
<el-table
size="mini"
:data="tableData"
class="el-bottom"
>
<!-- :height="tableHeight" -->
<el-table-column prop="detectorCode" label="设备编号" width="">
<template slot-scope="scope">
<div :title="scope.row.deviceNo" class="zzz">
{{ scope.row.deviceNo }}
</div>
</template>
</el-table-column>
<el-table-column prop="deviceType" label="设备类型" width="">
<template slot-scope="scope">
<div :title="scope.row.deviceType" class="zzz">
{{ scope.row.deviceType == 1 ? "流量计" : "压力表" }}
</div>
</template>
</el-table-column>
<el-table-column prop="deviceState" label="设备状态" width="">
<template slot-scope="scope">
<div v-if="scope.row.deviceState == 1">正常</div>
<div style="color: red" v-else-if="scope.row.deviceState == 2">
报警
</div>
<div v-else>-</div>
</template>
</el-table-column>
<el-table-column prop="reportTime" label="预警时间" width="">
<template slot-scope="scope">
<div v-unValue>{{ scope.row.reportTime }}</div>
</template>
</el-table-column>
</el-table>
<div>
<el-pagination
@current-change="handleCurrentChangvale"
:page-size="pageSize"
:current-page="pageCurrent"
layout="prev, pager, next, jumper"
:total="total"
:hide-on-single-page="total < pageSize"
>
</el-pagination>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
props: {
centerData: {
type: Array,
},
show: {
type: Boolean,
},
},
data() {
return {
// 动画效果的切换
tableHeight: 600,
pageSize: 16,
pageCurrent: 1,
};
},
created() {
// this.getList();
},
watch: {
// 当组件显示的时候
show(newVal) {
if (newVal) {
this.pageCurrent = 1;
}
},
},
computed: {
total() {
return this.centerData.length;
},
tableData() {
return this.centerData.filter((item, index) => {
return (
index < this.pageCurrent * this.pageSize &&
index >= (this.pageCurrent - 1) * this.pageSize
);
});
},
},
methods: {
handleSizeChange(val) {
console.log(val);
this.pageCurrent = val;
},
handleCurrentChangvale(val) {
console.log(val);
this.pageCurrent = val;
},
close() {
this.$parent.myCenterShow(false);
},
},
};
</script>
<style lang="scss" scoped>
.myCenter {
// width: 978px;
max-height: 600px;
position: fixed;
top: 50%;
left: 50%;
margin-top: -300px;
margin-left: -500px;
// background-color: #fff;
display: flex;
justify-content: space-between;
z-index: 9999;
& > div {
}
.left {
// width: 100px;
max-height: 598px;
margin-right: 12px;
// box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.16);
// background-color: #fff;
// color: #fff;
font-size: 14px;
font-weight: 400;
.title-wrapper {
// width: 99%;
width: 100%;
height: 30px;
display: flex;
justify-content: space-between;
background: #1890ff;
padding: 5px;
.title {
width: 100%;
color: #fff;
text-align: center;
line-height: 30px;
}
.close {
box-sizing: border-box;
padding-top: 5px;
padding-right: 5px;
cursor: pointer;
}
}
.el-table__body-wrappe {
height: 140px !important;
}
.top {
height: 19px;
// background-color: #053b6a;
color: #fff;
// line-height: 32px;
// padding-left: 12px;
position: relative;
.title {
position: absolute;
left: 50%;
margin-left: -92px;
top: -5px;
}
.repeat {
position: absolute;
top: -5px;
right: 160px;
color: #fff;
cursor: pointer;
&:hover {
color: #2788ea;
}
}
.repeat2 {
position: absolute;
right: 206px;
color: #67c23a;
}
.more {
position: absolute;
right: 38px;
top: -5px;
color: #fff;
float: right;
margin-right: 20px;
cursor: pointer;
&:hover {
color: #2788ea;
}
}
}
.bottom {
width: 1000px;
margin: 0 auto;
position: relative;
}
}
.right {
width: 740px;
display: flex;
flex-wrap: wrap;
// justify-content: space-between;
align-content: flex-start;
// margin-top: 7px;
& > .right-content {
background-color: #fff;
width: 238px;
height: 82px;
margin-bottom: 29px;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.16);
margin-right: 10px;
display: flex;
&.three {
margin-right: 0px;
}
// align-items: center;
.text-icon {
line-height: 82px;
padding-left: 22px;
margin-right: 22px;
i {
color: #053b6a;
font-size: 60px;
}
}
.text {
font-size: 14px;
padding-top: 16px;
.top {
color: #000;
margin-bottom: 10px;
font-weight: 600;
}
.bottom {
color: hsl(210, 82%, 54%);
}
}
}
}
.iconfont {
cursor: pointer;
}
// 单独调整下最后一个icon的大小
.iconFontSize {
font-size: 50px !important;
}
}
</style>
\ No newline at end of file
<!--
* @Author: your name
* @Date: 2022-01-26 20:07:52
* @LastEditTime: 2022-03-08 16:16:39
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/views/components/deviceA.vue
-->
<template>
<div class="devicea-wrapper">
<div class="title">
{{ deviceData.enterpriseName }}
</div>
<div class="close" @click="close">
<img src="@/assets/bigWindowOld/mapImages/closeBtn.png" alt="" />
</div>
<div class="top flex">
<div class="group">
<div class="left">企业名称:</div>
<div class="right zzz">{{ deviceData.enterpriseName }}</div>
</div>
<div class="group">
<div class="left">法定代表人:</div>
<div v-unValue class="right zzz">
{{ deviceData.legalRepresentative }}
</div>
</div>
<div class="group">
<div class="left">经营区域:</div>
<div v-unValue :title="deviceData.businessArea" class="right last zzz">
{{ deviceData.businessArea }}
</div>
</div>
</div>
<div class="middle">
<div class="left">
<div>注册地址:</div>
</div>
<div v-unValue title="123" class="right">
{{ deviceData.registerAddress }}
</div>
</div>
<div class="middle">
<div class="left">
<div>备注信息:</div>
</div>
<div v-unValue title="123" class="right">
{{ deviceData.remarks }}
</div>
</div>
</div>
</template>
<script>
import { companyType, deviceType } from "@/utils/mapClassForBigOld/config.js";
export default {
data() {
return {
companyType,
deviceType,
profile: "暂无备注",
};
},
computed: {
prodTest() {
return this.vueRoot.$store.state.user.systemSetting.prod_test;
},
company() {
return this.vueRoot.$store.state.bigWindowCompany.company;
},
},
mounted() {
// 如果不是测试,而是真数据,就要用帧数据的东西
if (this.prodTest != "test") {
this.companyType = {};
this.company.forEach((item) => {
this.companyType[item.conpanyId] = item.companyName;
});
}
console.log(this.deviceData);
},
methods: {
close() {
this.mapClass.infowindowClose();
},
btnClick() {
// this.vueRoot.centerDataFunc(this.deviceData.pressureFlows);
},
},
};
</script>
<style lang="scss" scoped>
.devicea-wrapper {
background-color: rgba(9, 18, 32, 0.6);
padding: 10px;
position: relative;
width: 700px;
.title {
// padding-top: 10px;
// padding-left: 10px;
font-size: 14px;
line-height: 14px;
color: #ffffff;
}
.close {
position: absolute;
right: 10px;
top: 5px;
cursor: pointer;
}
.top {
margin-top: 10px;
// margin-bottom: 10px;
border: 1px solid #cccccc;
box-sizing: border-box;
.group {
height: 30px;
flex: 1;
display: flex;
justify-content: space-between;
box-sizing: border-box;
div {
flex: 1;
box-sizing: border-box;
border-right: 1px solid #cccccc;
text-align: center;
font-size: 14px;
color: #ffffff;
line-height: 30px;
padding: 0 5px;
&.last {
border-right: none;
}
}
.left {
text-align: right;
background-color: rgba(255, 255, 255, 0.1);
}
}
}
.middle {
display: flex;
border: 1px solid #cccccc;
border-top: none;
& > div {
box-sizing: border-box;
border-right: 1px solid #cccccc;
text-align: center;
font-size: 14px;
color: #ffffff;
line-height: 30px;
padding: 0 5px;
&.left {
width: 113px;
display: flex;
align-items: center;
background-color: rgba(255, 255, 255, 0.1);
div {
text-align: right;
flex: 1;
}
}
&.right {
border: none;
flex: 1;
text-align: left;
text-indent: 2em;
line-height: normal;
padding: 5px;
}
}
}
.foot {
width: 100%;
padding: 5px;
border: 1px solid #ffffff;
box-sizing: border-box;
font-size: 14px;
color: #ffffff;
text-indent: 2em;
margin-bottom: 10px;
}
.flex {
display: flex;
justify-content: space-between;
}
}
</style>
<!--
* @Author: your name
* @Date: 2022-01-26 20:07:52
* @LastEditTime: 2022-03-23 15:19:40
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/views/components/deviceA.vue
-->
<template>
<div class="devicea-wrapper">
<div class="title">
{{
deviceData.deviceName ? deviceData.deviceName : deviceData.stationName
}}
</div>
<div class="close" @click="close">
<!-- <img src="@/assets/mapImages/closeBtn.png" alt="" /> -->
<i class="el-icon-close" style="font-size:20px;color:#5dfefe;"></i>
</div>
<p style="background-image: linear-gradient(to right, #5dfefe, #071738); width:100%;height:1px;"></p>
<div>
<div class="top flex">
<div class="top-left">
<div class="group">
<div class="left">所属公司:</div>
<div class="right zzz">{{ companyType[deviceData.companyType] }}</div>
</div>
<div class="group">
<div class="left">备注:</div>
<div class="right zzz">{{ profile }}</div>
</div>
</div>
<div class="top-center">
<div class="group">
<div class="left">设备类型:</div>
<div class="right zzz">
{{ deviceType[deviceData.iconType] }}
</div>
</div>
<div class="group">
<div class="left last">设备地址:</div>
<div
v-if="deviceData.address"
:title="deviceData.address"
class="right last zzz"
>
{{ deviceData.address || "-" }}
</div>
<div
v-else-if="deviceData.stationAddr"
:title="deviceData.stationAddr"
class="right last zzz"
>
{{ deviceData.stationAddr || "-" }}
</div>
<div class="right last zzz" v-else>-</div>
</div>
</div>
<div class="top-right">
<div class="left last">照片:</div>
<el-image
v-if="deviceData.pictureAddress"
style="width: 80px; height: 50px"
:src="deviceData.pictureAddress"
:preview-src-list="[deviceData.pictureAddress ]"
:z-index="999999"
>
</el-image>
<div class="imgtext" v-else>暂无图片</div>
</div>
</div>
<!-- <div class="middle">{{ profile }}</div> -->
<div class="foot">
<div class="thead flex" v-if="list.length > 0">
<div class="first">设备类型</div>
<div>设备数量</div>
<div>在线设备</div>
<div>离线设备</div>
<!-- <div>历史报警</div>
<div>已处理报警</div> -->
<div class="last">报警中</div>
</div>
<template v-if="list.length > 0">
<div
class="tbody flex"
v-for="deviceData in list"
:key="deviceData.inAlarm + Math.random()"
>
<div v-unValue class="first zzz">
{{ typeList[deviceData.dataType] }}
</div>
<div v-unValue class="">{{ deviceData.numberPressureGauges }}</div>
<div v-unValue class="">
{{ deviceData.onlineEquipment }}
</div>
<div v-unValue class="">
{{ deviceData.offlineEquipment }}
</div>
<!-- <div v-unValue class="">
{{ deviceData.historicalAlarm }}
</div>
<div v-unValue class="">
{{ deviceData.alarmProcessed }}
</div> -->
<div v-unValue class="last">
{{ deviceData.inAlarm }}
</div>
</div>
</template>
</div>
</div>
<div style="width:100%;display: flex;" v-if="list.length > 0">
<div class="btn">
<div>感知设备</div>
</div>
<p style="width:83%;height:10px;background-color: #022346;margin-top: 22px;margin-left: -10px;"></p>
<div @click="btnClick">
<img @click="flag = !flag" src="../../assets/second/box-down.png" :class="{ 'arrowTransform': !flag, 'arrowTransformReturn': flag}" alt="" style="width:30px;height:30px;margin-top: 12px;cursor: pointer;">
</div>
</div>
<OtherCenter
:title="centerTitle"
:show="otherCenterShow"
ref="otherCenter"
:detcetorList="detcetorList"
:userId="centerUserId"
:total="centerTotal"
:pageSize="5"
v-show="!isShow"
/>
</div>
</template>
<script>
import {
getTcqDevice,
} from "@/api/bigWindowOld/getDevice";
import { companyType, deviceType } from "@/utils/mapClassForBigOld/config.js";
import { getCzDevice } from "@/api/bigWindowOld/getDevice.js";
import OtherCenter from "@/components/bigWindowOld/OtherCenter.vue";
export default {
components: {
OtherCenter,
},
data() {
return {
flag: true,
isShow: true ,
centerTitle: "",
companyType,
deviceType,
otherCenterShow: false,
userCenterShow: false,
detcetorList: [],
centerUserId: null,
centerTotal: null,
profile: "暂无备注",
typeList: {
// 1压力表 2流量计 3探测器
1: "压力表",
2: "流量计",
3: "工业探测器",
},
list: [
// {
// numberPressureGauges: "-",
// onlineEquipment: "-",
// offlineEquipment: "-",
// historicalAlarm: "-",
// alarmProcessed: "-",
// inAlarm: "-",
// dataType: 1,
// },
// {
// numberPressureGauges: "-",
// onlineEquipment: "-",
// offlineEquipment: "-",
// historicalAlarm: "-",
// alarmProcessed: "-",
// inAlarm: "-",
// dataType: 2,
// },
// {
// numberPressureGauges: "-",
// onlineEquipment: "-",
// offlineEquipment: "-",
// historicalAlarm: "-",
// alarmProcessed: "-",
// inAlarm: "-",
// dataType: 3,
// },
],
};
},
computed: {
prodTest() {
return this.vueRoot.$store.state.user.systemSetting.prod_test;
},
company() {
return this.vueRoot.$store.state.bigWindowCompany.company;
},
},
mounted() {
// 如果不是测试,而是真数据,就要用帧数据的东西
if (this.prodTest != "test") {
this.companyType = {};
this.company.forEach((item) => {
this.companyType[item.conpanyId] = item.companyName;
});
}
this.myHttp()
console.log(this.deviceData);
},
methods: {
// 调压箱,阀门,场站睇下的设备
getTcqDevice(queryParams, title) {
console.log(queryParams);
return getTcqDevice(queryParams).then((res) => {
// console.log("queryParams", res);
console.log("resresresresreszzzzzzzzzzzzzzz", res);
this.detcetorList = res;
this.centerUserId = queryParams.devId;
// 总数据
this.centerTotal = res.length;
// this.$refs.userCenter.fade = "fade";
this.userCenterShow = false;
this.otherCenterShow = true;
this.centerTitle = title;
// if (res.detectorStatus === "在线"){
// return {'color':'red'}
// }
// 传递回去
return res.code;
});
},
close() {
this.mapClass.infowindowClose();
},
btnClick() {
this.isShow = !this.isShow;
// this.vueRoot.centerDataFunc(this.deviceData.pressureFlows);
const title = this.deviceData.deviceName
? this.deviceData.deviceName
: this.deviceData.stationName;
this.getTcqDevice(
{ devId: this.deviceData.siteStationId, relationDeviceType: 2,pageNum: 1, pageSize: 5, },
title
);
},
myHttp() {
getCzDevice({ deviceId: this.deviceData.siteStationId }).then((res) => {
this.list = res.data[0].subordinateEquipmentList.filter(item=>item.numberPressureGauges>0);
console.log("resresres222222222",this.list)
});
},
},
};
</script>
<style lang="scss" scoped>
.devicea-wrapper {
box-shadow: 0px 0px 10px #54e0ef inset;
background-color: #071738;
padding: 10px;
position: relative;
width: 670px;
border-radius: 7px;
.title {
// padding-top: 10px;
// padding-left: 10px;
font-size: 14px;
line-height: 14px;
color: #ffffff;
}
.close {
position: absolute;
right: 10px;
top: 5px;
cursor: pointer;
}
.top {
margin-top: 10px;
margin-bottom: 10px;
box-sizing: border-box;
.top-left {
flex: 1.8;
.group {
height: 30px;
flex: 1;
display: flex;
justify-content: space-between;
box-sizing: border-box;
div {
flex: 1;
box-sizing: border-box;
font-size: 14px;
color: #ffffff;
line-height: 30px;
padding: 0 5px;
&.last {
border-bottom: none;
}
}
.left {
text-align: right;
}
.right {
flex:2;
}
}
}
.top-center {
flex: 1.8;
.group {
height: 30px;
flex: 1;
display: flex;
justify-content: space-between;
box-sizing: border-box;
div {
flex: 1;
box-sizing: border-box;
font-size: 14px;
color: #ffffff;
line-height: 30px;
padding: 0 5px;
&.last {
border-bottom: none;
}
}
.left {
text-align: right;
}
.right {
flex:2;
}
}
}
.top-right {
flex: 1;
display: flex;
justify-content: center;
div {
width: 50px;
font-size: 14px;
color: #ffffff;
&.last {
border-bottom: none;
}
}
.imgtext {
color: #ffffff;
font-size: 10px;
}
}
}
.middle {
width: 100%;
padding: 5px;
box-sizing: border-box;
font-size: 14px;
color: #ffffff;
text-indent: 2em;
margin-bottom: 10px;
}
.foot {
font-size: 14px;
color: #ffffff;
background: url('../../assets/second/box-bg.png');
background-size: 100% 100%;
background-repeat: no-repeat;
padding: 1px;
.thead,
.tbody {
div {
flex: 1;
text-align: left;
box-sizing: border-box;
text-align: center;
border: 1px solid #1b365d;
}
// .first {
// flex: 2;
// }
// .last {
// border-right: none;
// }
}
.tbody {
border-top: none;
}
// .thead {
// div {
// background-color: rgba(255, 255, 255, 0.1);
// }
// }
}
.btn {
position: relative;
margin-top: 10px;
div {
font-size: 14px;
color: #ffffff;
background: url('../../assets/second/boxbtn-bg.png');
background-size: 100% 100%;
background-repeat: no-repeat;
padding: 7px 15px;
}
}
.flex {
display: flex;
justify-content: space-between;
}
}
</style>
<!--
* @Author: your name
* @Date: 2022-01-26 20:07:52
* @LastEditTime: 2022-03-23 15:23:34
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/views/components/deviceA.vue
-->
<template>
<div class="devicea-wrapper">
<div class="title">
{{
deviceData.deviceName ? deviceData.deviceName : deviceData.stationName
}}
</div>
<div class="close" @click="close">
<!-- <img src="@/assets/mapImages/closeBtn.png" alt="" /> -->
<i class="el-icon-close" style="font-size:20px;color:#5dfefe;"></i>
</div>
<p style="background-image: linear-gradient(to right, #5dfefe, #071738); width:100%;height:1px;"></p>
<div>
<div class="top flex">
<div class="top-left">
<div class="group">
<div class="left">所属公司:</div>
<div class="right zzz">{{ companyType[deviceData.companyType] }}</div>
</div>
<div class="group">
<div class="left">备注:</div>
<div class="right zzz">{{ profile }}</div>
</div>
</div>
<div class="top-center">
<div class="group">
<div class="left">设备类型:</div>
<div class="right zzz">
{{ deviceType[deviceData.iconType] }}
</div>
</div>
<div class="group">
<div class="left last">设备地址:</div>
<div
v-if="deviceData.deviceAddr"
:title="deviceData.deviceAddr"
class="right last zzz"
>
{{ deviceData.deviceAddr || "-" }}
</div>
<div
v-else-if="deviceData.stationAddr"
:title="deviceData.stationAddr"
class="right last zzz"
>
{{ deviceData.stationAddr || "-" }}
</div>
<div class="right last zzz" v-else>-</div>
</div>
</div>
<div class="top-right">
<div class="left last">照片:</div>
<el-image
v-if="deviceData.iconUrl"
style="width: 80px; height: 50px"
:src="deviceData.iconUrl"
:preview-src-list="[deviceData.iconUrl ]"
:z-index="999999"
>
</el-image>
<div class="imgtext" v-else>暂无图片</div>
</div>
</div>
<!-- <div class="middle">{{ profile }}</div> -->
<div class="foot">
<div class="thead flex" v-if="list.length > 0">
<div class="first">设备类型</div>
<div>设备数量</div>
<div>在线设备</div>
<div>离线设备</div>
<!-- <div>历史报警</div>
<div>已处理报警</div> -->
<div class="last">报警中</div>
</div>
<template v-if="list.length > 0">
<div
class="tbody flex"
v-for="deviceData in list"
:key="deviceData.inAlarm + Math.random()"
>
<div v-unValue class="first zzz">
{{ typeList[deviceData.dataType] }}
</div>
<div v-unValue class="">{{ deviceData.numberPressureGauges }}</div>
<div v-unValue class="">
{{ deviceData.onlineEquipment }}
</div>
<div v-unValue class="">
{{ deviceData.offlineEquipment }}
</div>
<!-- <div v-unValue class="">
{{ deviceData.historicalAlarm }}
</div>
<div v-unValue class="">
{{ deviceData.alarmProcessed }}
</div> -->
<div v-unValue class="last">
{{ deviceData.inAlarm }}
</div>
</div>
</template>
</div>
</div>
<div style="width:100%;display: flex;">
<div class="btn" v-if="list.length > 0">
<div>感知设备</div>
</div>
<p style="width:83%;height:10px;background-color: #022346;margin-top: 22px;margin-left: -10px;"></p>
<div @click="btnClick">
<img @click="flag = !flag" src="../../assets/second/box-down.png" :class="{ 'arrowTransform': !flag, 'arrowTransformReturn': flag}" alt="" style="width:30px;height:30px;margin-top: 12px;cursor: pointer;">
</div>
</div>
<OtherCenter
:title="centerTitle"
:show="otherCenterShow"
ref="otherCenter"
:detcetorList="detcetorList"
:userId="centerUserId"
:total="centerTotal"
:pageSize="5"
v-show="!isShow"
/>
</div>
</template>
<script>
import {
getTcqDevice,
} from "@/api/bigWindowOld/getDevice";
import { companyType, deviceType } from "@/utils/mapClassForBigOld/config.js";
import { getTyxDevice, getFmDevice } from "@/api/bigWindowOld/getDevice.js";
import OtherCenter from "@/components/bigWindowOld/OtherCenter.vue";
export default {
components: {
OtherCenter,
},
data() {
return {
flag: true,
isShow: true ,
centerTitle: "",
otherCenterShow: false,
alarmTimer: null,
detcetorList: [],
centerUserId: null,
centerTotal: null,
userCenterShow: false,
companyType,
deviceType,
profile: "暂无备注",
typeList: {
// 1压力表 2流量计 3探测器
1: "压力表",
2: "流量计",
3: "工业探测器",
},
list: [
// {
// numberPressureGauges: "-",
// onlineEquipment: "-",
// offlineEquipment: "-",
// historicalAlarm: "-",
// alarmProcessed: "-",
// inAlarm: "-",
// dataType: 1,
// },
// {
// numberPressureGauges: "-",
// onlineEquipment: "-",
// offlineEquipment: "-",
// historicalAlarm: "-",
// alarmProcessed: "-",
// inAlarm: "-",
// dataType: 2,
// },
// {
// numberPressureGauges: "-",
// onlineEquipment: "-",
// offlineEquipment: "-",
// historicalAlarm: "-",
// alarmProcessed: "-",
// inAlarm: "-",
// dataType: 3,
// },
],
};
},
computed: {
prodTest() {
return this.vueRoot.$store.state.user.systemSetting.prod_test;
},
company() {
return this.vueRoot.$store.state.bigWindowCompany.company;
},
},
mounted() {
// 如果不是测试,而是真数据,就要用帧数据的东西
if (this.prodTest != "test") {
this.companyType = {};
this.company.forEach((item) => {
this.companyType[item.conpanyId] = item.companyName;
});
}
// 当点开infowindow的时候,重新调接口
this.myHttp();
console.log(this.deviceData);
},
methods: {
// 调压箱,阀门,场站睇下的设备
getTcqDevice(queryParams, title) {
console.log(queryParams);
return getTcqDevice(queryParams).then((res) => {
// console.log("queryParams", res);
console.log("resresresresreszzzzzzzzzzzzzzz", res);
this.detcetorList = res;
this.centerUserId = queryParams.devId;
// 总数据
this.centerTotal = res.length;
// this.$refs.userCenter.fade = "fade";
this.userCenterShow = false;
this.otherCenterShow = true;
this.centerTitle = title;
// if (res.detectorStatus === "在线"){
// return {'color':'red'}
// }
// 传递回去
return res.code;
});
},
close() {
this.mapClass.infowindowClose();
},
btnClick() {
this.isShow = !this.isShow;
// this.vueRoot.centerDataFunc(this.deviceData.pressureFlows);
const title = this.deviceData.deviceName
? this.deviceData.deviceName
: this.deviceData.stationName;
this.getTcqDevice(
{ devId: this.deviceData.deviceId, relationDeviceType: 1,pageNum: 1, pageSize: 5, },
title
);
},
myHttp() {
console.log(this.deviceData.iconType);
if (this.deviceData.iconType == 2) {
getTyxDevice({ deviceId: this.deviceData.deviceId }).then((res) => {
// 过滤设备数为0的
this.list = res.data[0].subordinateEquipmentList.filter(
(item) => item.numberPressureGauges > 0
);
console.log("this.list333333333",this.list);
});
} else {
getFmDevice({ deviceId: this.deviceData.deviceId }).then((res) => {
// 过滤设备数为0的
this.list = res.data[0].subordinateEquipmentList.filter(
(item) => item.numberPressureGauges > 0
);
});
}
},
},
};
</script>
<style lang="scss" scoped>
.arrowTransform {
transition: 0s;
transform-origin: center;
transform: rotateZ(180deg);
}
.arrowTransformReturn {
transition: 0s;
transform-origin: center;
transform: rotateZ(0deg);
}
.devicea-wrapper {
box-shadow: 0px 0px 10px #54e0ef inset;
background-color: #071738;
padding: 10px;
position: relative;
width: 670px;
border-radius: 7px;
.title {
// padding-top: 10px;
// padding-left: 10px;
font-size: 14px;
line-height: 14px;
color: #ffffff;
}
.close {
position: absolute;
right: 10px;
top: 5px;
cursor: pointer;
}
.top {
margin-top: 10px;
margin-bottom: 10px;
box-sizing: border-box;
.top-left {
flex: 1.8;
.group {
height: 30px;
flex: 1;
display: flex;
justify-content: space-between;
box-sizing: border-box;
div {
flex: 1;
box-sizing: border-box;
font-size: 14px;
color: #ffffff;
line-height: 30px;
padding: 0 5px;
&.last {
border-bottom: none;
}
}
.left {
text-align: right;
}
.right {
flex:2;
}
}
}
.top-center {
flex: 1.8;
.group {
height: 30px;
flex: 1;
display: flex;
justify-content: space-between;
box-sizing: border-box;
div {
flex: 1;
box-sizing: border-box;
font-size: 14px;
color: #ffffff;
line-height: 30px;
padding: 0 5px;
&.last {
border-bottom: none;
}
}
.left {
text-align: right;
}
.right {
flex:2;
}
}
}
.top-right {
flex: 1;
display: flex;
justify-content: center;
div {
width: 50px;
font-size: 14px;
color: #ffffff;
&.last {
border-bottom: none;
}
}
.imgtext {
color: #ffffff;
font-size: 30px;
}
}
}
// .middle {
// width: 100%;
// padding: 5px;
// box-sizing: border-box;
// font-size: 14px;
// color: #ffffff;
// text-indent: 2em;
// margin-bottom: 10px;
// }
.foot {
font-size: 14px;
color: #ffffff;
background: url('../../assets/second/box-bg.png');
background-size: 100% 100%;
background-repeat: no-repeat;
padding: 1px;
.thead,
.tbody {
div {
flex: 1;
text-align: left;
box-sizing: border-box;
text-align: center;
border: 1px solid #1b365d;
}
// .first {
// flex: 2;
// }
// .last {
// border-right: none;
// }
}
.tbody {
border-top: none;
}
// .thead {
// div {
// background-color: rgba(255, 255, 255, 0.1);
// }
// }
}
.btn {
position: relative;
margin-top: 10px;
div {
font-size: 14px;
color: #ffffff;
background: url('../../assets/second/boxbtn-bg.png');
background-size: 100% 100%;
background-repeat: no-repeat;
padding: 7px 15px;
}
}
.flex {
display: flex;
justify-content: space-between;
}
}
</style>
<!--
* @Author: your name
* @Date: 2022-01-27 14:25:45
* @LastEditTime: 2022-02-28 11:35:31
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /hello-world/src/views/components/User.vue
-->
<template>
<div class="user-wrapper">
<div class="title">{{ companyType[deviceData.companyType] }}</div>
<div class="close" @click="close">
<!-- <img src="@/assets/mapImages/closeBtn.png" alt="" /> -->
<i class="el-icon-close" style="font-size:20px;color:#5dfefe;"></i>
</div>
<div class="group flex first">
<div class="first once left">管道名称:</div>
<div class="right pipeAddr right zzz">{{ deviceData.pipeName }}</div>
</div>
<div class="group flex ">
<div class="left first">管道长度:</div>
<div class="right zzz">{{ deviceData.pipeLength }}</div>
<div class="left">管径:</div>
<div class="right last">{{ deviceData.pipeDiameter }}</div>
</div>
<!-- <div class="group flex">
</div> -->
<div class="group flex">
<div class="left first">管道压力:</div>
<div :title="deviceData.pipePressure" class="right zzz">
{{ pipePressure[deviceData.pipePressure] }}
</div>
<div class="left">所属公司:</div>
<div class="right last">{{ companyType[deviceData.companyType] }}</div>
</div>
<div class="group flex">
<div class="first left">管道材质:</div>
<div class="right">{{ deviceData.pipeMaterial }}</div>
<div class="left">管道埋深:</div>
<div class="right last">{{ deviceData.pipeDepth }}</div>
</div>
<div class="group flex">
<div class="left first">管道走向:</div>
<div class="right zzz" :title="deviceData.pipeTrend">{{ deviceData.pipeTrend }}</div>
<div class="left">权属单位:</div>
<div :title="deviceData.powerCompany" class="right last zzz">
{{ deviceData.powerCompany }}
</div>
</div>
<div class="group flex">
<div class="first left">建设年代:</div>
<div class="right">{{ deviceData.buildyear }}</div>
<div class="left">建设单位:</div>
<div class="last right zzz" :title="deviceData.buildCompany">{{ deviceData.buildCompany }}</div>
</div>
<div class="group flex">
<div class="first once left">管道位置:</div>
<div
v-unValue
:title="deviceData.pipeAddr"
class="last pipeAddr right zzz"
>
{{ deviceData.pipeAddr }}
</div>
</div>
</div>
</template>
<script>
import { companyType, pipePressure } from "@/utils/mapClassForBigOld/config.js";
export default {
data() {
return {
companyType,
pipePressure,
};
},
computed:{
prodTest(){
return this.vueRoot.$store.state.user.systemSetting.prod_test
},
company(){
return this.vueRoot.$store.state.bigWindowCompany.company;
}
},
mounted(){
// 如果不是测试,而是真数据,就要用帧数据的东西
if(this.prodTest !="test"){
this.companyType={};
this.company.forEach(item=>{
this.companyType[item.conpanyId] = item.companyName;
})
}
},
methods: {
close() {
this.mapClass.infowindowClose();
},
},
};
</script>
<style lang="scss" scoped>
.user-wrapper {
box-shadow: 0px 0px 10px #54e0ef inset;
background-color: #071738;
padding: 10px;
position: relative;
width: 500px;
border-radius: 7px;
.title {
font-size: 14px;
line-height: 14px;
color: #ffffff;
}
.close {
position: absolute;
right: 10px;
top: 5px;
cursor: pointer;
}
.group {
border-top: none;
height: 28px;
font-size: 14px;
line-height: 28px;
color: #ffffff;
&.first {
margin-top: 10px;
}
div {
flex: 1;
}
.left {
text-align: right;
}
.right {
box-sizing: border-box;
text-align: left;
padding: 0 1em;
}
.last {
border: none;
}
.once {
flex: 1;
}
.pipeAddr {
flex: 3;
padding: 0 3em 0 1em;
}
}
.flex {
display: flex;
justify-content: space-between;
}
}
</style>
<!--
* @Author: your name
* @Date: 2022-01-27 14:25:45
* @LastEditTime: 2022-02-28 11:35:31
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /hello-world/src/views/components/User.vue
-->
<template>
<div class="user-wrapper">
<div class="title">{{ companyType[deviceData.companyType] }}</div>
<div class="close" @click="close">
<!-- <img src="@/assets/mapImages/closeBtn.png" alt="" /> -->
<i class="el-icon-close" style="font-size:20px;color:#5dfefe;"></i>
</div>
<div class="group flex first">
<div class="first once left">管道名称:</div>
<div class="right pipeAddr right zzz">{{ deviceData.pipeName }}</div>
</div>
<div class="group flex">
<div class="left first">管道长度:</div>
<div class="right zzz">{{ deviceData.pipeLength }}</div>
<div class="left">管径:</div>
<div class="right last">{{ deviceData.pipeDiameter }}</div>
</div>
<!-- <div class="group flex">
</div> -->
<div class="group flex">
<div class="left first">管道压力:</div>
<div :title="deviceData.pipePressure" class="right zzz">
{{ deviceData.pipePressure }}
</div>
<div class="left">所属公司:</div>
<div class="right last zzz">{{ companyType[deviceData.companyType] }}</div>
</div>
<div class="group flex">
<div class="first left">管道材质:</div>
<div class="right">{{ deviceData.pipeMaterial }}</div>
<div class="left">管道埋深:</div>
<div class="right last">{{ deviceData.pipeDepth }}</div>
</div>
<div class="group flex">
<div class="left first">管道走向:</div>
<div class="right zzz" :title="deviceData.pipeTrend">{{ deviceData.pipeTrend }}</div>
<div class="left">权属单位:</div>
<div :title="deviceData.powerCompany" class="right last zzz">
{{ deviceData.powerCompany }}
</div>
</div>
<div class="group flex">
<div class="first left">建设年代:</div>
<div class="right">{{ deviceData.buildyear }}</div>
<div class="left">建设单位:</div>
<div class="last right zzz" :title="deviceData.buildCompany">{{ deviceData.buildCompany }}</div>
</div>
<div class="group flex">
<div class="first once left">管道位置:</div>
<div
v-unValue
:title="deviceData.pipeAddr"
class="last pipeAddr right zzz"
>
{{ deviceData.pipeAddr }}
</div>
</div>
<div class="group flex" v-show="isVisibleMethod">
<div class="left">详细地址:</div>
<div class="right pipeAddr last zzz">{{ deviceData.detaildAddress }}</div>
</div>
<div class="group flex" v-show="isVisibleMethod">
<div class="first left">主管部门:</div>
<div class="right zzz">{{ deviceData.indRegAuth }}</div>
<div class="left">主管负责人:</div>
<div class="right last zzz">{{ deviceData.indRegAuthPer }}</div>
</div>
<div class="group flex" v-show="isVisibleMethod">
<div class="first left">主管负责电话:</div>
<div class="right zzz">{{ deviceData.indRegAuthPerCon }}</div>
<div class="left">重点燃气使用:</div>
<div class="right last zzz">{{ deviceData.keyAreasGasUsage }}</div>
</div>
<div class="group flex" v-show="isVisibleMethod">
<div class="first left">燃气公司:</div>
<div class="right zzz">{{ deviceData.affGasCom }}</div>
<div class="left">燃气安检人:</div>
<div class="right last zzz">{{ deviceData.affGasComSecPer }}</div>
</div>
<div class="group flex" v-show="isVisibleMethod">
<div class="first left">安检人电话:</div>
<div class="right zzz">{{ deviceData.affGasComSecPerCon }}</div>
<div class="left">安检时间:</div>
<div class="right last zzz">{{ deviceData.secCheckTime }}</div>
</div>
<div class="group flex" v-show="isVisibleMethod">
<div class="first left">燃气负责人:</div>
<div class="right zzz">{{ deviceData.unitGasUserRes }}</div>
<div class="left">负责人电话:</div>
<div class="right last zzz">{{ deviceData.unitGasUserResCon }}</div>
</div>
</div>
</template>
<script>
import { companyType, pipePressure } from "@/utils/mapClassForBigOld/config.js";
export default {
data() {
return {
companyType,
pipePressure,
isClose: false
};
},
computed:{
prodTest(){
return this.vueRoot.$store.state.user.systemSetting.prod_test
},
company(){
return this.vueRoot.$store.state.bigWindowCompany.company;
}
},
mounted(){
// 如果不是测试,而是真数据,就要用帧数据的东西
if(this.prodTest !="test"){
this.companyType={};
this.company.forEach(item=>{
this.companyType[item.conpanyId] = item.companyName;
})
}
},
methods: {
close() {
// 关闭前先把颜色改回来
this.mapClass.infowindowClose();
},
isVisibleMethod(){
return deviceData.pipePressure == "中压"
}
},
};
</script>
<style lang="scss" scoped>
.user-wrapper {
box-shadow: 0px 0px 10px #54e0ef inset;
background-color: #071738;
padding: 10px;
position: relative;
width: 500px;
border-radius: 7px;
.title {
font-size: 14px;
line-height: 14px;
color: #ffffff;
}
.close {
position: absolute;
right: 10px;
top: 5px;
cursor: pointer;
}
.group {
border-top: none;
height: 28px;
font-size: 14px;
line-height: 28px;
color: #ffffff;
&.first {
margin-top: 10px;
}
div {
flex: 1;
}
.left {
text-align: right;
}
.right {
box-sizing: border-box;
text-align: left;
padding: 0 1em;
}
.last {
border: none;
}
.once {
flex: 1;
}
.pipeAddr {
flex: 3;
padding: 0 3em 0 1em;
}
}
.flex {
display: flex;
justify-content: space-between;
}
}
</style>
<!--
* @Author: your name
* @Date: 2022-03-22 10:31:50
* @LastEditTime: 2022-03-22 10:31:51
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /gassafety-progress/gassafetyprogress-web/src/components/bigWindow/Nulll.vue
-->
<template>
</template>
<script>
export default {
}
</script>
<style>
</style>
<template>
<transition>
<div v-show="show" class="wrapper myCenter">
<div class="left">
<!-- <div class="title-wrapper">
<div class="title">{{ title }}报警器列表</div>
<div class="close" @click="close">
<img src="@/assets/mapImages/closeBtn.png" alt="" />
</div>
</div> -->
<div class="bottom right-bottom-data-left">
<el-table
size="mini"
:data="tableData"
style="width: 650px"
class="el-bottom"
:key="Math.random()"
>
<!-- :height="tableHeight" -->
<!-- <el-table-column prop="deviceCode" label="设备编号" width="180">
<template slot-scope="scope">
<div :title="scope.row.deviceCode" class="ddd" v-unValue>
{{ scope.row.deviceCode }}
</div>
</template>
</el-table-column> -->
<el-table-column prop="deviceName" label="设备名称" width="110">
<template slot-scope="scope">
<div :title="scope.row.deviceName" class="ddd" v-unValue>
{{ scope.row.deviceName }}
</div>
</template>
</el-table-column>
<el-table-column prop="detectionMedium" label="监测介质" width="100">
<template slot-scope="scope">
<div v-unValue>{{ scope.row.detectionMedium }}</div>
</template>
</el-table-column>
<el-table-column prop="linkman" label="联系人" width="100">
<template slot-scope="scope">
<div v-unValue>{{ scope.row.linkman }}</div>
</template>
</el-table-column>
<el-table-column prop="phone" label="联系电话" width="100">
</el-table-column>
<el-table-column prop="detectorStatus" label="设备状态" width="100">
<template slot-scope="scope">
<!-- <div v-unValue :style="{color:scope.row.detectorStatus==1?'':'#3de43d'}">{{ detectorStatusList[scope.row.detectorStatus] }}</div> -->
<div v-unValue>{{ detectorStatusList[scope.row.detectorStatus] }}</div>
</template>
</el-table-column>
<el-table-column prop="createTime" label="预警时间" width="140">
<template slot-scope="scope">
<div v-unValue>{{ scope.row.createTime }}</div>
</template>
</el-table-column>
</el-table>
<div>
<el-pagination
@current-change="handleCurrentChangvale"
:page-size="pageSize"
layout="prev, pager, next, jumper"
:total="total"
:hide-on-single-page="total <= pageSize"
:key="total + '' + pageSize"
>
</el-pagination>
</div>
</div>
</div>
</div>
</transition>
</template>
<script>
// import Velocity from "velocity-animate";
// import { listDeviceAlarm } from "@/api/dataMonitoring/deviceAlarm";
import { listDetectorInfo } from "@/api/detector/detectorInfo";
export default {
props: {
detcetorList: {
type: Array,
default: () => [],
},
show: {
type: Boolean,
},
title: {
type: String,
},
userId: {
type: [Number, String],
},
total: {
type: Number,
},
pageSize: {
type: Number,
},
},
data() {
return {
// 动画效果的切换
// tableHeight: 600,
tableData: [
// {
// deviceCode: "2016-05-05",
// name: "王小虎",
// province: "上海",
// city: "普陀区",
// address: "上海市普陀区金沙江路",
// },
],
detectorStatusList:{
"0":"在线",
"1":"离线",
}
};
},
created() {
console.log("list", this.detcetorList);
// this.getList();
},
watch: {
// 当组件显示的时候
detcetorList(newData) {
// console.log(bol);
// if (bol) {
console.log(newData);
this.tableData = [...newData];
// }
},
},
methods: {
handleSizeChange(val) {
console.log(val);
},
handleCurrentChangvale(val) {
this.$parent.getTcqDevice(
{
devId: this.userId,
pageNum: val,
pageSize: this.pageSize,
},
this.title
);
},
close() {
// this.fade = "fade";
this.$parent.otherCenterShow = false;
},
},
};
</script>
<style lang="scss" scoped>
.wrapper {
// width: 978px;
// max-height: 600px;
// position: fixed;
// top: 50%;
// left: 50%;
// margin-top: -300px;
// margin-left: -500px;
// // background-color: #fff;
// display: flex;
// justify-content: space-between;
margin-top: 10px;
z-index: 9999;
& > div {
}
.left {
// width: 100px;
max-height: 598px;
margin-right: 12px;
// box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.16);
// background-color: #fff;
// color: #fff;
font-size: 14px;
font-weight: 400;
.title-wrapper {
width: 100%;
height: 30px;
display: flex;
justify-content: space-between;
background: #1890ff;
padding: 5px;
.title {
width: 100%;
color: #fff;
text-align: center;
}
.close {
box-sizing: border-box;
padding-top: 2px;
padding-right: 5px;
cursor: pointer;
}
}
.el-table__body-wrappe {
height: 140px !important;
}
.top {
height: 19px;
// background-color: #053b6a;
color: #fff;
// line-height: 32px;
// padding-left: 12px;
position: relative;
.title {
position: absolute;
left: 50%;
margin-left: -92px;
top: -5px;
}
.repeat {
position: absolute;
top: -5px;
right: 160px;
color: #fff;
cursor: pointer;
&:hover {
color: #2788ea;
}
}
.repeat2 {
position: absolute;
right: 206px;
color: #67c23a;
}
.more {
position: absolute;
right: 38px;
top: -5px;
color: #fff;
float: right;
margin-right: 20px;
cursor: pointer;
&:hover {
color: #2788ea;
}
}
}
.bottom {
width: 1000px;
margin: 0 auto;
position: relative;
}
}
.right {
width: 740px;
display: flex;
flex-wrap: wrap;
// justify-content: space-between;
align-content: flex-start;
// margin-top: 7px;
& > .right-content {
background-color: #fff;
width: 238px;
height: 82px;
margin-bottom: 29px;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.16);
margin-right: 10px;
display: flex;
&.three {
margin-right: 0px;
}
// align-items: center;
.text-icon {
line-height: 82px;
padding-left: 22px;
margin-right: 22px;
i {
color: #053b6a;
font-size: 60px;
}
}
.text {
font-size: 14px;
padding-top: 16px;
.top {
color: #000;
margin-bottom: 10px;
font-weight: 600;
}
.bottom {
color: #2788ea;
}
}
}
}
.iconfont {
cursor: pointer;
}
// 单独调整下最后一个icon的大小
.iconFontSize {
font-size: 50px !important;
}
}
</style>
\ No newline at end of file
<!--
* @Author: your name
* @Date: 2022-01-26 10:52:10
* @LastEditTime: 2022-02-17 10:11:35
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/components/PipeColor.vue
-->
<template>
<div>
<div class="pipePressure">
<!--
<div style="float: left;margin-right: 5px;">
<div class="hasColorBox">
<img src="../../assets/image/bigtyx.svg" alt="">
调压箱
</div>
<div class="hasColorBox">
<img src="../../assets/image/bigfmj.svg" alt="">
阀门井
</div>
<div class="hasColorBox">
<img src="../../assets/image/bigcz.svg" alt="">
厂站
</div>
<div class="hasColorBox">
<img src="../../assets/image/biguser.svg" alt="">
用户
</div>
<div class="hasColorBox">
<img src="../../assets/image/bigjk.svg" alt="">
监控
</div>
</div> -->
<div>
<div class="hasColorBox" :style="{ color: pipeColor[`1`] }">
<div :style="{ backgroundColor: pipeColor[`1`] }"></div>
低压管线
</div>
<div class="hasColorBox" :style="{ color: pipeColor[`2`] }">
<div :style="{ backgroundColor: pipeColor[`2`] }"></div>
中压管线
</div>
<div class="hasColorBox" :style="{ color: pipeColor[`3`] }">
<div :style="{ backgroundColor: pipeColor[`3`] }"></div>
次高压管线
</div>
<div class="hasColorBox" :style="{ color: pipeColor[`4`] }">
<div :style="{ backgroundColor: pipeColor[`4`] }"></div>
高压管线
</div>
</div>
</div>
<div class="mapChange">
<div :class="{ active: mapStyle }" @click="mapChange(2)">全景地图</div>
<div :class="{ active: !mapStyle }" @click="mapChange(1)">卫星地图</div>
</div>
</div>
</template>
<script>
import { pipeColor } from "@/utils/mapClassForBigOld/config.js";
export default {
data() {
downIcon: true;
return {
pipeColor,
mapStyle:true,
};
},
methods: {
// 更改卫星图
mapChange(num) {
if (num == 1) {
this.mapStyle = false;
} else {
this.mapStyle = true;
}
this.$parent.map.changeMap(this.mapStyle);
},
},
};
</script>
<style lang="scss" scoped>
.pipePressure {
width: 130px;
height: auto;
border: 1px solid #a5a5a5;
background-color: #112238b3;
position: fixed;
color: rgb(205, 219, 228);
left: 530px;
bottom: 50px;
padding: 5px;
font-size: 14px;
pointer-events: none;
// background: rgba(6, 29, 51, 0.8);
.hasColorBox {
// border: 1px solid #053b6a;
padding: 2px 5px;
margin-bottom: 5px;
& > div {
display: inline-block;
width: 10px;
height: 10px;
}
}
}
.hasColorBox>img{
width: 14px;
}
.mapChange {
left: 10px;
top: 55px;
color: #fff;
padding: 5px;
position: absolute;
display: flex;
z-index: 9999;
div {
border: 1px solid #339CC9;
padding: 3px 6px;
margin-left: 8px;
color: #339CC9;
cursor: pointer;
font-size: 14px;
&.active,
&:hover
{
background-color: #053B6A ;
color: #2CD5DB;
}
}
}
</style>
<!--
* @Author: your name
* @Date: 2022-01-26 10:52:10
* @LastEditTime: 2022-02-17 10:11:35
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/components/PipeColor.vue
-->
<template>
<div>
<div class="pipePressure" :style="{ pointerEvents: dynamicPointerEvents }">
<div class="container" id="div1">
<div class="searchbar1">
<form>
<table>
<li v-for="data in newDatalist" :key="data.id" @click="goPage(data)">
{{data.pipeName}}
</li>
</table>
</form>
</div>
</div>
<div class="input-group">
<input class="input-field" type="text" v-model="inputText" placeholder="请输入管道名称...">
<button class="close" @click="handleClick">&times;</button>
</div>
</div>
</div>
</template>
<script>
import {
getPipeForSelect
} from "@/api/bigWindowOld/getDevice";
export default {
data(){
return{
downIcon: true,
inputText:"",
datalist:[], //原始数据
newDatalist:[],
rowsToShow: 3, // 默认显示的行数
maxRows: 6, // 最多显示的行数
dynamicPointerEvents: 'none',
}
},
created(){
this.fetchData();
},
methods: {
fetchData(){
getPipeForSelect().then((res) => {
if (res.data){
this.datalist = res.data
}
})
},
goPage:function(data){
var path = data.path.replaceAll("[[","").replaceAll("]]","").replaceAll("],["," ");
var id = data.pipeId;
let arrArea = path.split(" ")
let centerLength = null;
if (arrArea.length % 2 == 0) {
centerLength = arrArea.length / 2;
} else {
centerLength = (arrArea.length + 1) /2;
}
if (centerLength != null) {
this.$emit('transmit', arrArea[centerLength],id)
} else {
alert("数据异常")
}
},
handleClick(){
this.newDatalist=[];
this.inputText = "";
this.$emit('closeMediumPressureLine');
}
},
watch:{//监听输入框的变化
inputText:function(newText){
this.dynamicPointerEvents = newText ? 'auto' : 'none';
if(newText.length>0){
this.newDatalist.splice(0,this.newDatalist.length);//清空之前数组
for(let value of this.datalist){
if(value.pipeName.indexOf(newText)>-1){// 可以直接用indexOf(属性)
this.newDatalist.push(value);//一定要加this
}
}
}else{
this.newDatalist=[];//输入框为空,等于原始数据
}
}
},
};
</script>
<style lang="scss" scoped>
.pipePressure {
width: 210px;
height: auto;
position: fixed;
color: rgb(205, 219, 228);
left: 660px;
bottom: 50px;
padding: 5px;
}
form {
position: relative;
width: 300px;
margin: 0 auto;
}
input {
width: 100%;
height: 42px;
padding-left: 13px;
}
.pipePressure input {
border: 2px solid #7BA7AB;
border-radius: 5px;
background: #f9f0da1f;
color: #9E9C9C;
}
li{
text-align: left;
width:100%;
background: #f9f0da0c;
list-style: none;
}
.container {
height: 150px;
overflow-y: auto;
overflow-x: hidden;
display:flex;
flex-direction: column-reverse;
}
.input-group {
position: relative;
display: inline-block;
pointer-events: auto;
}
.input-field {
padding-right: 40px; /* Make space for the button */
width: 200px; /* Adjust width as needed */
}
.close {
font-size: 18px;
font-weight: bold;
color: #000;
text-shadow: 0 1px 0 #fff;
opacity: 0.5;
float: right;
margin-left: 10px;
cursor: pointer;
position: absolute;
top: 0;
right: 0;
height: 100%; /* Match height with input */
width: 40px; /* Adjust width as needed */
}
.close:hover {
opacity: 1;
}
</style>
<!--
* @Author: your name
* @Date: 2022-01-11 13:44:17
* @LastEditTime: 2022-01-20 14:30:03
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /hello-world/src/views/About.vue
-->
<template>
<div class="wrapper">
<div @click="click">点我</div>
<div>{{deviceData.lat}}</div>
<div>{{deviceData.id}}</div>
<div>{{deviceData.type}}</div>
<div>{{deviceData.lng}}</div>
<div>12312312321{{a}}</div>
</div>
</template>
<script>
//这个东西是用新的实例创建的,跟主vue没有关联,必须传进来才可以
// vueRoot,
// // 自己写的map类
// mapClass,
// // 数据
// deviceData,
export default {
name: "Pipe",
data() {
return {
a:123
};
},
// props: {
// // 代表地图页面的vue
// vueRoot: {
// type: Object,
// default: () => null,
// },
// // 数据
// deviceData: {
// type: Object,
// default: () => null,
// },
// },
mounted(){
console.log(this.deviceData)
},
methods: {
click() {
},
},
};
</script>
<style lang="scss" scoped>
.wrapper {
width: 200px;
height: 200px;
background: red;
}
</style>
\ No newline at end of file
<!--
* @Author: your name
* @Date: 2022-01-26 20:07:52
* @LastEditTime: 2022-03-17 09:05:30
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/views/components/deviceA.vue
-->
<template>
<div class="devicea-wrapper">
<div class="title">
{{ deviceData.nickName }}
</div>
<div class="close" @click="close">
<!-- <img src="@/assets/mapImages/closeBtn.png" alt="" /> -->
<i class="el-icon-close" style="font-size:20px;color:#5dfefe;"></i>
</div>
<p style="background-image: linear-gradient(to right, #5dfefe, #071738); width:100%;height:1px;"></p>
<div>
<div class="top flex top-top">
<div class="group" style="width:20%">
<div class="left">联系人:</div>
<div class="right zzz">{{ deviceData.linkman }}</div>
</div>
<div class="group" style="width:30%">
<div class="left">联系电话:</div>
<div v-unValue class="right zzz">
{{ deviceData.phone }}
</div>
</div>
<div class="group" style="width:30%">
<div class="left">联系地址:</div>
<div :title="deviceData.address" class="right last zzz">
{{ deviceData.address || "-" }}
</div>
</div>
</div>
<!-- <div class="top flex top-bottom">
<div class="group">
<div class="left">联系地址:</div>
<div :title="deviceData.address" class="right last zzz">
{{ deviceData.address || "-" }}
</div>
</div>
</div> -->
<template v-if="deviceData.detectorCountList">
<div class="foot">
<div class="thead flex">
<div class="first">设备类型</div>
<div>设备数量</div>
<div>在线设备</div>
<div>离线设备</div>
<!-- <div>历史报警</div>
<div>已处理报警</div> -->
<div class="last">报警中</div>
</div>
<div
v-for="data in deviceData.detectorCountList"
:key="data.userId"
class="tbody flex"
>
<div v-unValue class="first zzz">{{ data.detectorType }}</div>
<div class="">{{ data.detectorCount }}</div>
<div v-unValue class="">
{{ data.onLineNum }}
</div>
<div v-unValue class="">
{{ data.offLineNum }}
</div>
<!-- <div v-unValue class="">
{{ data.historyAlarmNum }}
</div>
<div v-unValue class="">
{{ data.cancelAlarmNum }}
</div> -->
<div v-unValue class="last zzz">
{{ data.processingAlarmNum }}
</div>
</div>
</div>
</template>
</div>
<div style="width:100%;display: flex;">
<div class="btn">
<div>感知设备</div>
</div>
<p style="width:85%;height:10px;background-color: #022346;margin-top: 22px;margin-left: -10px;"></p>
<div @click="btnClick">
<img @click="flag = !flag" src="../../assets/second/box-down.png" :class="{ 'arrowTransform': !flag, 'arrowTransformReturn': flag}" alt="" style="width:30px;height:30px;margin-top: 12px;cursor: pointer;">
</div>
</div>
<UserCenter
:title="centerTitle"
:show="userCenterShow"
ref="userCenter"
:detcetorList="detcetorList"
:userId="centerUserId"
:total="centerTotal"
:pageSize="5"
v-show="!isShow"
/>
</div>
</template>
<script>
import {
getUser,
} from "@/api/bigWindowOld/getDevice";
import { companyType, deviceType } from "@/utils/mapClassForBigOld/config.js";
import { listDetectorInfo } from "@/api/detector/detectorInfo";
import { detectorUserList } from "@/api/detector/detectorUser";
import UserCenter from "@/components/bigWindowOld/UserCenter.vue";
export default {
components: {
UserCenter,
},
data() {
return {
flag: true,
isShow: true ,
companyType,
deviceType,
centerTitle: "",
detcetorList: [],
centerUserId: null,
centerTotal: null,
userCenterShow: false,
};
},
computed: {
prodTest() {
return this.vueRoot.$store.state.user.systemSetting.prod_test;
},
company() {
return this.vueRoot.$store.state.bigWindowCompany.company;
},
},
mounted() {
// 如果不是测试,而是真数据,就要用帧数据的东西
if (this.prodTest != "test") {
this.companyType = {};
this.company.forEach((item) => {
this.companyType[item.conpanyId] = item.companyName;
});
}
this.myHttp();
// console.log(this.deviceData);
},
methods: {
//用户的设备center
getDetectorInfoList(httpFunc, queryParams, title) {
console.log(queryParams);
return httpFunc(queryParams).then((res) => {
// console.log("queryParamssssssssssss", res);
if (res.code == 200) {
this.detcetorList = res.rows;
this.centerUserId = queryParams.userId;
// 总数据
this.centerTotal = res.total;
// this.$refs.userCenter.fade = "fade";
this.otherCenterShow = false;
this.userCenterShow = true;
this.centerTitle = title;
// 传递回去
return res.code;
}
});
},
close() {
this.mapClass.infowindowClose();
},
btnClick() {
this.isShow = !this.isShow;
// this.vueRoot.centerDataFunc(this.deviceData.pressureFlows);
this.getDetectorInfoList(
listDetectorInfo,
{ userId: this.deviceData.userId,pageNum: 1, pageSize: 5, },
this.deviceData.nickName
);
},
myHttp() {
detectorUserList({ userId: this.deviceData.userId }).then((res) => {
if (res.code == 200) {
const data = res.data.filter(
(item) => item.userId == this.deviceData.userId
)[0].detectorCountList;
this.deviceData.detectorCountList = data;
}
});
},
},
};
</script>
<style lang="scss" scoped>
.arrowTransform {
transition: 0s;
transform-origin: center;
transform: rotateZ(180deg);
}
.arrowTransformReturn {
transition: 0s;
transform-origin: center;
transform: rotateZ(0deg);
}
.devicea-wrapper {
box-shadow: 0px 0px 10px #54e0ef inset;
background-color: #071738;
padding: 10px;
position: relative;
width: 740px;
.title {
// padding-top: 10px;
// padding-left: 10px;
font-size: 14px;
line-height: 14px;
color: #ffffff;
}
.close {
position: absolute;
right: 10px;
top: 5px;
cursor: pointer;
}
.top {
margin-top: 10px;
margin-bottom: 10px;
box-sizing: border-box;
&.top-top {
// div{
// width: 33%;
// }
}
.group {
height: 30px;
display: flex;
justify-content: space-between;
box-sizing: border-box;
div {
flex: 1;
box-sizing: border-box;
text-align: left;
font-size: 14px;
color: #ffffff;
line-height: 30px;
padding: 0 5px;
&.last {
border-right: none;
}
}
.left {
text-align: left;
}
}
&.top-bottom {
.left {
flex: none;
width: 192px !important;
}
.right {
flex: 1;
}
}
}
// .middle {
// width: 100%;
// padding: 5px;
// border: 1px solid #ffffff;
// box-sizing: border-box;
// font-size: 14px;
// color: #ffffff;
// text-indent: 2em;
// margin-bottom: 10px;
// }
.foot {
font-size: 14px;
color: #ffffff;
background: url('../../assets/second/box-bg.png');
background-size: 100% 100%;
background-repeat: no-repeat;
padding: 1px;
.thead,
.tbody {
div {
flex: 1;
text-align: left;
box-sizing: border-box;
text-align: center;
border: 1px solid #1b365d;
}
// .first {
// flex: 2;
// }
// .last {
// border-right: none;
// }
}
.tbody {
border-top: none;
}
// .thead {
// div {
// background-color: rgba(255, 255, 255, 0.1);
// }
// }
}
.btn {
position: relative;
margin-top: 10px;
div {
font-size: 14px;
color: #ffffff;
background: url('../../assets/second/boxbtn-bg.png');
background-size: 100% 100%;
background-repeat: no-repeat;
padding: 7px 15px;
}
}
.flex {
display: flex;
justify-content: space-between;
}
}
</style>
<template>
<transition>
<div v-show="show" class="wrapper myCenter">
<div class="left">
<!-- <div class="title-wrapper">
<div class="title">{{ title }}报警器列表</div>
<div class="close" @click="close">
<img src="@/assets/mapImages/closeBtn.png" alt="" />
</div>
</div> -->
<div class="bottom right-bottom-data-left">
<el-table
size="mini"
:data="tableData"
style="width: 720px"
class="el-bottom"
:key="Math.random()"
>
<!-- :height="tableHeight" -->
<!-- <el-table-column prop="detectorCode" label="设备编号" width="180">
<template slot-scope="scope">
<div :title="scope.row.detectorCode" class="ddd" v-unValue>
{{ scope.row.detectorCode }}
</div>
</template>
</el-table-column> -->
<el-table-column prop="detectorName" label="设备名称" width="100">
<template slot-scope="scope">
<div :title="scope.row.detectorName" class="ddd" v-unValue>
{{ scope.row.detectorName }}
</div>
</template>
</el-table-column>
<el-table-column prop="medium" label="监测介质" width="100">
<template slot-scope="scope">
<div v-unValue>{{ scope.row.medium }}</div>
</template>
</el-table-column>
<el-table-column prop="detectorAddr" label="设备地址" width="100">
<template slot-scope="scope">
<div v-unValue style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">{{ scope.row.detectorAddr }}</div>
</template>
</el-table-column>
<el-table-column prop="linkman" label="联系人" width="80">
<template slot-scope="scope">
<div v-unValue>{{ scope.row.linkman }}</div>
</template>
</el-table-column>
<el-table-column prop="phone" label="联系电话" width="100">
</el-table-column>
<el-table-column prop="detectorStatus" label="设备状态" width="100">
<template slot-scope="scope">
<div v-unValue :style="{color:scope.row.detectorStatus==1?'red':''}">{{scope.row.detectorStatus}}</div>
</template>
</el-table-column>
<el-table-column prop="alarmTime" label="预警时间" width="140">
<template slot-scope="scope">
<div v-unValue>{{ scope.row.alarmTime }}</div>
</template>
</el-table-column>
</el-table>
<div>
<el-pagination
@current-change="handleCurrentChangvale"
:page-size="pageSize"
layout="prev, pager, next, jumper"
:total="total"
:hide-on-single-page="total <= pageSize"
:key="total + '' + pageSize"
>
</el-pagination>
</div>
</div>
</div>
</div>
</transition>
</template>
<script>
// import Velocity from "velocity-animate";
// import { listDeviceAlarm } from "@/api/dataMonitoring/deviceAlarm";
import { listDetectorInfo } from "@/api/detector/detectorInfo";
export default {
props: {
detcetorList: {
type: Array,
default: () => [],
},
show: {
type: Boolean,
},
title: {
type: String,
},
userId: {
type: [Number, String],
},
total: {
type: Number,
},
pageSize: {
type: Number,
},
},
data() {
return {
// 动画效果的切换
// tableHeight: 600,
tableData: [
// {
// deviceCode: "2016-05-05",
// name: "王小虎",
// province: "上海",
// city: "普陀区",
// address: "上海市普陀区金沙江路",
// },
],
};
},
created() {
// console.log("==================333333", this.detcetorList);
// this.getList();
},
watch: {
// 当组件显示的时候
detcetorList(newData) {
// console.log(bol);
// if (bol) {
console.log("55555555",newData);
this.tableData = [...newData];
// }
},
},
methods: {
handleSizeChange(val) {
console.log(val);
},
handleCurrentChangvale(val) {
this.$parent.getDetectorInfoList(
listDetectorInfo,
{
userId: this.userId,
pageNum: val,
pageSize: this.pageSize,
},
this.title
);
},
close() {
// this.fade = "fade";
this.$parent.userCenterShow = false;
},
},
};
</script>
<style lang="scss" scoped>
.wrapper {
// width: 978px;
// max-height: 600px;
// position: fixed;
// top: 50%;
// left: 50%;
// margin-top: -300px;
// margin-left: -500px;
// // background-color: #fff;
// display: flex;
// justify-content: space-between;
margin-top: 10px;
z-index: 9999;
& > div {
}
.left {
// width: 100px;
max-height: 598px;
margin-right: 12px;
// box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.16);
// background-color: #fff;
// color: #fff;
font-size: 14px;
font-weight: 400;
.title-wrapper {
width: 100%;
height: 30px;
display: flex;
justify-content: space-between;
background: #1890ff;
padding: 5px;
.title {
width: 100%;
color: #fff;
text-align: center;
}
.close {
box-sizing: border-box;
padding-top: 2px;
padding-right: 5px;
cursor: pointer;
}
}
.el-table__body-wrappe {
height: 140px !important;
}
.top {
height: 19px;
// background-color: #053b6a;
color: #fff;
// line-height: 32px;
// padding-left: 12px;
position: relative;
.title {
position: absolute;
left: 50%;
margin-left: -92px;
top: -5px;
}
.repeat {
position: absolute;
top: -5px;
right: 160px;
color: #fff;
cursor: pointer;
&:hover {
color: #2788ea;
}
}
.repeat2 {
position: absolute;
right: 206px;
color: #67c23a;
}
.more {
position: absolute;
right: 38px;
top: -5px;
color: #fff;
float: right;
margin-right: 20px;
cursor: pointer;
&:hover {
color: #2788ea;
}
}
}
.bottom {
width: 1000px;
margin: 0 auto;
position: relative;
}
}
.right {
width: 740px;
display: flex;
flex-wrap: wrap;
// justify-content: space-between;
align-content: flex-start;
// margin-top: 7px;
& > .right-content {
background-color: #fff;
width: 238px;
height: 82px;
margin-bottom: 29px;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.16);
margin-right: 10px;
display: flex;
&.three {
margin-right: 0px;
}
// align-items: center;
.text-icon {
line-height: 82px;
padding-left: 22px;
margin-right: 22px;
i {
color: #053b6a;
font-size: 60px;
}
}
.text {
font-size: 14px;
padding-top: 16px;
.top {
color: #000;
margin-bottom: 10px;
font-weight: 600;
}
.bottom {
color: #2788ea;
}
}
}
}
.iconfont {
cursor: pointer;
}
// 单独调整下最后一个icon的大小
.iconFontSize {
font-size: 50px !important;
}
}
</style>
\ No newline at end of file
<!--
* @Author: your name
* @Date: 2022-01-26 22:44:02
* @LastEditTime: 2022-01-27 10:12:46
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/views/components/videoView.vue
-->
<template>
<div class="box-wrapper">
<div class="title">{{ deviceData.videoName }}</div>
<div class="close" @click="close">
<!-- <img src="@/assets/mapImages/closeBtn.png" alt="" /> -->
<i class="el-icon-close" style="font-size:20px;color:#5dfefe;"></i>
</div>
<div class="box videoBox">
<div id="player" ></div>
</div>
<span slot="footer" class="dialog-footer">
<!-- <el-button type="primary" @click="dialogVisible = false"
>确 定
</el-button>
<el-button @click="dialogVisible = false">取 消</el-button> -->
</span>
</div>
</template>
<script>
import WasmPlayer from "@easydarwin/easywasmplayer"; //导入WasmPlayer.js
import { getPreviewURLs } from "@/api/video/artemis"
//const IS_MOVE_DEVICE = document.body.clientWidth < 992 // 是否移动设备
const IS_MOVE_DEVICE = true;
const MSE_IS_SUPPORT = !!window.MediaSource // 是否支持mse
export default {
data() {
return {
// dialogVisible: true,
// AfterClose: true,
queryParam: {
cameraIndexCode: ""
},
player: null,
videoOpenNum: -1,
queryParam: {
cameraIndexCode: ""
},
};
},
watch: {},
mounted() {
this.$nextTick(() => {
if(!window.JSPlugin){
this.loadScript("/h5player/h5player.min.js").then(() =>{
this.createPlayer();
this.init()
})
}else{
this.createPlayer();
this.init()
}
});
// setTimeout(() => {
// this.player = new WasmPlayer(null, "video", this.callBack, {
// Height: true,
// });
// this.player.play(this.deviceData.usr, 1);
// }, 1);
},
methods: {
show() {
this.dialogVisible = true;
},
// handleClose() {
// console.log("关闭");
// this.player.destroy(this.deviceData.usr);
// // document.body.removeChild(this.$refs.videoBox.$el);
// },
init() {
// 设置播放容器的宽高并监听窗口大小变化
window.addEventListener('resize', () => {
this.player.JS_Resize()
})
},
createPlayer() {
this.player = new window.JSPlugin({
szId: 'player',
szBasePath: "/h5player",
iMaxSplit: 4,
iCurrentSplit: IS_MOVE_DEVICE ? 1 : 2,
openDebug: true,
oStyle: {
borderSelect: IS_MOVE_DEVICE ? '#000' : '#FFCC00',
}
})
this.open();
},
open(){
this.queryParam.cameraIndexCode = this.deviceData.resourceId;
getPreviewURLs(this.queryParam).then(response =>{
if(response.data.code == '0'){
this.videoOpenNum++;
let url = response.data.data.url;
//let index = this.player.currentWindowIndex;
this.player.JS_Play(url,{playURL: url, mode:"0" }, this.videoOpenNum%4).then(() => {
console.log('realplay success')
},
e => { console.error(e) }
)
}
});
},
loadScript(src){
return new Promise(reslove =>{
let scpritE1 = document.createElement("script");
scpritE1.type = "text/javascript";
scpritE1.src = src;
scpritE1.onload = () => {
reslove();
}
document.body.appendChild(scpritE1);
})
},
callBack() {},
close() {
//this.handleClose();
this.mapClass.infowindowClose();
},
},
};
</script>
<style lang="scss">
.sub-wnd{
text-align: center !important;
}
.box-wrapper {
box-shadow: 0px 0px 10px #54e0ef inset;
background-color: #071738;
padding: 10px;
position: relative;
// width: 670px;
border-radius: 7px;
.title {
padding-left: 10px;
font-size: 14px;
line-height: 14px;
color: #ffffff;
}
.close {
position: absolute;
right: 10px;
top: 5px;
cursor: pointer;
}
.box {
padding: 5px 12px 10px 10px;
width: 350px;
height: 200px;
margin-top: 5px;
#player {
height: 190px;
}
}
}
</style>
<template>
<div class="leftb">
<!-- 基本信息 -->
<div class="item2">
<!-- <span class="dot">
<span class="dot-inner"></span>
</span> -->
<!-- <div class="fong-div"></div>
<div class="fong-div" style="margin-left: 3px;"></div>
<div class="fong-div" style="margin-left: 3px;"></div> -->
<span
style="
letter-spacing: 1px;
color: #fff;
float: right;
margin-right: 50px;
"
>
基本信息
</span>
<div class="rightline1"></div>
</div>
<div class="leftbar1">
<div class="left-top">
<div class="ltop1">
<!-- <img src="../../assets/second1/btn-1.png" alt=""> -->
<div
style="
width: 100%;
text-align: center;
color: #fff;
margin-left: 10px;
"
>
<div class="div-p" @click="$router.push('/regulation/supervise')">
从业人员数(人)
</div>
<span
style="
font-family: 'arialbd';
font-size: 35px;
color: rgb(255, 255, 255);
-webkit-background-clip: text;
"
>{{ allNum.peopleNum }}</span
>
</div>
</div>
<!-- <div style="width: 86%;margin-left: 4%;border-bottom: 1px dashed #094749;margin-top: 15px;margin-bottom: 15px;"></div> -->
<div class="ltop2">
<!-- <img src="../../assets/second1/btn-2.png" alt=""> -->
<div
style="
width: 100%;
text-align: center;
color: #fff;
margin-left: 10px;
"
>
<div class="div-p" @click="$router.push('/regulation/pipe')">
管道长度(m)
</div>
<span
style="
font-family: 'arialbd';
font-size: 35px;
color: rgb(255, 255, 255);
-webkit-background-clip: text;
"
>{{ allNum.allPipeLength }}</span
>
</div>
</div>
</div>
</div>
<!-- 安全监管 -->
<div class="leftbar2">
<div class="item1">
<!-- <div class="fong-div"></div>
<div class="fong-div" style="margin-left: 3px;"></div>
<div class="fong-div" style="margin-left: 3px;"></div> -->
<span style="letter-spacing: 1px; color: #fff; float: right">
巡检巡查
</span>
<!-- <img src="../../assets/second1/ti-bg.png" alt=""> -->
<div class="rightline2"></div>
</div>
<div class="pieone">
<div
id="myChartpieone"
:style="{ width: '100%', height: '100%' }"
></div>
<div class="titleTex">
<div :style="{ color: '#5470c6' }">● 已完成:{{ allNum.typeOne }}</div>
<div :style="{ color: '#fa8167' }">● 未完成:{{ allNum.typeTwo }}</div>
</div>
</div>
<div class="pietwo">
<div
id="myChartpietwo"
:style="{ width: '100%', height: '100%' }"
></div>
<div class="titleTex" style="width: 140% !important; margin-left: -20%">
<div :style="{ color: '#5470c6' }">● 已完成:{{this.allNum.hiddenBookFinish}}(天然气:{{this.allNum.trqHiddenBookFinish}},液化气:{{this.allNum.hiddenBookFinish-this.allNum.trqHiddenBookFinish}})</div>
<div :style="{ color: '#fa8167' }">● 未完成:{{this.allNum.hiddenBookUnFinish}}(天然气:{{this.allNum.trqHiddenBookUnFinish}},液化气:{{this.allNum.hiddenBookUnFinish-this.allNum.trqHiddenBookUnFinish}})</div>
</div>
</div>
</div>
<!-- 任务完成率 -->
<div class="leftbar3">
<div class="item1">
<!-- <div class="fong-div"></div>
<div class="fong-div" style="margin-left: 3px;"></div>
<div class="fong-div" style="margin-left: 3px;"></div> -->
<span style="letter-spacing: 1px; color: #fff; float: right">
气量监管
</span>
<!-- <img src="../../assets/second1/ti-bg.png" alt=""> -->
<div class="rightline3"></div>
</div>
<div
class="echarts-one"
style="width: 100%; height: 95%; margin-left: 10px"
>
<div id="main1" style="width: 100%; height: 100%"></div>
</div>
</div>
</div>
</template>
<script>
import { selectWorkOrderNum } from "@/api/operationMonitor/order";
// 引入基本模板
// let echarts = require("echarts/lib/echarts");
// // 引入柱状图组件
// require("echarts/lib/chart/bar");
// // 引入提示框和title组件
// require("echarts/lib/component/tooltip");
// require("echarts/lib/component/title");
// let echarts = this.$echarts;
import { getQLJG,getSGSL, getYHZZ, getYHTJ } from "@/api/bigWindowOld/charsData.js";
export default {
data() {
return {
allNum: {},
zeroNum: {
allPipeLength: 0,
peopleNum: 0,
typeFor: 0,
typeOne: 0,
typeThree: 0,
typeTwo: 0,
hiddenBookFinish: 0,
hiddenBookUnFinish: 0
},
enterpriseIds: {
enterpriseId: "",
},
dataAll: {
congyeNum: 1544,
guandaoNum: 3658495,
shigu1: [],
shigu2: [],
// shigu3: [932, 901, 198, 489, 158, 358, 345, 675, 901, 934, 1290, 888],
renwu: [50, 92],
renwuzong: 142,
date: [],
},
dataone: {
congyeNum: 521,
guandaoNum: 1254848,
shigu1: [223, 44, 332, 321, 458, 456, 653, 122, 345, 133, 421, 123],
shigu2: [123, 234, 456, 567, 235, 12, 89, 158, 158, 145, 175, 224],
shigu3: [432, 301, 108, 189, 18, 158, 145, 175, 401, 334, 590, 388],
renwu: [4, 27],
renwuzong: 31,
},
datatwo: {
congyeNum: 488,
guandaoNum: 1244495,
shigu1: [653, 122, 345, 133, 456, 653, 122, 345, 133, 421, 123, 500],
shigu2: [432, 301, 456, 567, 235, 12, 145, 175, 401, 334, 590, 388],
shigu3: [123, 234, 108, 189, 18, 158, 123, 234, 456, 567, 235, 12],
renwu: [8, 25],
renwuzong: 33,
},
datathree: {
congyeNum: 535,
guandaoNum: 1189492,
shigu1: [653, 122, 345, 133, 456, 653, 122, 345, 133, 421, 123, 500],
shigu2: [432, 301, 456, 567, 456, 653, 122, 175, 401, 334, 590, 388],
shigu3: [334, 590, 388, 133, 456, 123, 234, 653, 122, 345, 133],
renwu: [38, 40],
renwuzong: 78,
},
datanow: {
renwu: [0, 0],
},
};
},
mounted() {
this.datanow = this.dataAll;
//this.getNum(null)
this.getLineChats();
},
methods: {
// 两个接口实现一个line统计图这个是改数据
async getLineChats() {
// getSGSL,getYHZZ
/*await getSGSL().then((res) => {
console.log("aaa", res);
this.datanow.date = res.data.map((item) => item.date).reverse();
this.datanow.shigu1 = res.data.map((item) => item.count).reverse();
});
await getYHZZ().then((res) => {
console.log("bbb", res);
this.datanow.shigu2 = res.data.map((item) => item.count).reverse();
});*/
await getQLJG().then((res) => {
console.log("CCC", res);
this.datanow.date = res.data.map((item) => item.date).reverse();
this.datanow.shigu1 = res.data.map((item) => item.count).reverse();
this.datanow.shigu2 = res.data.map((item) => item.count1).reverse();
this.datanow.shigu3 = res.data.map((item) => item.count2).reverse();
this.datanow.shigu4 = res.data.map((item) => item.count3).reverse();
});
this.drawLine(this.datanow);
},
choice(val) {
// if(index==0){
// this.datanow = this.dataAll;
// this.drawLine(this.datanow);
// this.getNum(index);
// }else
console.log("===================>>>>>>>>>>>>>>>>>>",val)
this.getNum(val);
// if(index==1){
// this.datanow = this.dataone;
// this.drawLine(this.datanow);
// }else if(index==2){
// this.datanow = this.datatwo;
// this.drawLine(this.datanow);
// }else if(index==3){
// this.datanow = this.datathree;
// this.drawLine(this.datanow);
// }
},
getNum(val) {
if (val != null && val != "") {
this.enterpriseIds.enterpriseId = val.toString();
selectWorkOrderNum(this.enterpriseIds).then((response) => {
console.log(response);
this.allNum = response.data;
this.initdata();
});
} else {
this.allNum = this.zeroNum;
this.initdata();
}
},
initdata() {
// 基于准备好的dom,初始化echarts实例
//console.log(data.renwu[0]+"=-=-=-"+data.renwu[1])
let pieone = this.$echarts.init(document.getElementById("myChartpieone"));
let pietwo = this.$echarts.init(document.getElementById("myChartpietwo"));
// 绘制图表
pieone.setOption({
title: {
text:
"巡检任务数(个) : " + (this.allNum.typeOne + this.allNum.typeTwo),
left: "center",
top: 0,
textStyle: {
color: "#cddbe4",
fontSize: "16",
},
},
grid: {
bottom: "7%",
containLabel: true,
},
tooltip: {
trigger: "item",
},
series: [
{
name: "任务概况",
type: "pie",
radius: "55%",
center: ["50%", "58%"],
data: [
{
value: this.allNum.typeTwo,
name: "未完成",
itemStyle: { color: "#fa8167" },
},
{
value: this.allNum.typeOne,
name: "已完成",
itemStyle: { color: "#5470c6" },
},
],
labelLine: {
length: 20,
length2: 50,
},
label: {
color: "#fff",
fontSize: 14,
// formatter:"{b}\n\n",
// padding:[0,-55],
normal: {
show: false,
position: "outer",
// formatter: '{d}%, {c} \n\n',
//模板变量有 {a}, {b},{c},{d},{e},分别表示系列名,数据名,数据值等。
formatter: "{a_set|{b}}\n{b_set|{d}%}\n\n\n",
// formatter: "{a_set|{b}}\n{c_set|{d}%}\n{b|}\n\n",
borderWidth: 20,
borderRadius: 4,
padding: [0, -55],
rich: {
a_set: {
color: "#cddbe4",
lineHeight: 20,
align: "center",
padding: [55, -40, -15, -40],
},
b_set: {
color: "auto",
},
},
},
},
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: "rgba(0, 0, 0, 0.5)",
},
},
labelLine: {
show: false,
},
},
],
});
pietwo.setOption({
title: {
text: "隐患整治数(个) : " +(this.allNum.hiddenBookFinish + this.allNum.hiddenBookUnFinish),
left: "center",
top: 0,
textStyle: {
color: "#cddbe4",
fontSize: "16",
},
},
grid: {
bottom: "7%",
containLabel: true,
},
tooltip: {
trigger: "item",
},
series: [
{
name: "任务概况",
type: "pie",
radius: "55%",
center: ["50%", "58%"],
data: [
{
value: this.allNum.hiddenBookUnFinish,
name: "未完成",
itemStyle: { color: "#fa8167" },
},
{
value: this.allNum.hiddenBookFinish,
name: "已完成",
itemStyle: { color: "#5470c6" },
},
],
labelLine: {
length: 20,
length2: 50,
},
label: {
color: "#fff",
fontSize: 14,
// formatter:"{b}\n\n",
// padding:[0,-55],
normal: {
show: false,
position: "outer",
// formatter: '{d}%, {c} \n\n',
//模板变量有 {a}, {b},{c},{d},{e},分别表示系列名,数据名,数据值等。
formatter: "{a_set|{b}}\n{b_set|{d}%}\n\n\n",
// formatter: "{a_set|{b}}\n{c_set|{d}%}\n{b|}\n\n",
borderWidth: 20,
borderRadius: 4,
padding: [0, -55],
rich: {
a_set: {
color: "#cddbe4",
lineHeight: 20,
align: "center",
padding: [55, -40, -15, -40],
},
b_set: {
color: "auto",
},
},
},
},
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: "rgba(0, 0, 0, 0.5)",
},
},
labelLine: {
show: false,
},
},
],
});
},
//折线图
drawLine(data) {
// 基于准备好的dom,初始化echarts实例
let myChart = this.$echarts.init(document.getElementById("main1"));
// 绘制图表
myChart.setOption({
legend: {
top: 20,
textStyle: {
color: "#cddbe4",
},
},
grid: {
left: "5%",
right: "7%",
bottom: "4%",
containLabel: true,
},
xAxis: {
axisLine: {
show: true,
lineStyle: {
color: "#bbb6b6",
},
},
axisLabel: {
show: true,
interval: 0, //使x轴文字显示全
rotate:10,
fontSize:10
},
axisTick: {
//去掉坐标轴刻线
show: false,
},
type: "category",
data: data.date,
},
yAxis: {
axisLine: {
show: true,
lineStyle: {
color: "#bbb6b6",
},
},
splitLine: {
show: true,
lineStyle: {
type: "dashed",
color: "#bbb6b6",
},
},
type: "value",
},
series: [
{
name: "计划量",
data: data.shigu1,
type: "line",
smooth: true,
areaStyle: {
normal: {
// 渐变填充色(线条下半部分)
color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#5470c6" },
{ offset: 1, color: "#5470c600" },
]),
},
},
},
{
data: data.shigu2,
type: "line",
smooth: true,
name: "批复量",
areaStyle: {
normal: {
// 渐变填充色(线条下半部分)
color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#91cc75" },
{ offset: 1, color: "#91cc7500" },
]),
},
},
},
{
data: data.shigu3,
type: "line",
smooth: true,
name: "供气量",
areaStyle: {
normal: {
// 渐变填充色(线条下半部分)
color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#d630dc" },
{ offset: 1, color: "#91cc7500" },
]),
},
},
},
{
data: data.shigu4,
type: "line",
smooth: true,
name: "储存量",
areaStyle: {
normal: {
// 渐变填充色(线条下半部分)
color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#f38e0d" },
{ offset: 1, color: "#91cc7500" },
]),
},
},
},
// {
// data: data.shigu3,
// type: "line",
// smooth: true,
// name: "预警数量",
// areaStyle: {
// normal: {
// // 渐变填充色(线条下半部分)
// color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
// { offset: 0, color: "#e7bc5e" },
// { offset: 1, color: "#e7bc5e00" },
// ]),
// },
// },
// },
],
});
},
},
};
</script>
<style lang="scss" scoped>
/* @font-face {
font-family: 'arialbd';
} */
.leftb {
width: 98%;
height: 100%;
margin-left: 2%;
}
.leftbar1 {
width: 85%;
height: 20%;
padding-top: 10%;
pointer-events: auto;
}
.leftbar2 {
width: 80%;
height: 39%;
padding-top: 15px;
pointer-events: auto;
}
.leftbar3 {
width: 85%;
height: 32%;
padding-top: 15px;
padding-bottom: 35px;
pointer-events: auto;
}
.item1 {
width: 85%;
height: 30px;
font-size: 16px;
font-weight: 700;
margin-left: 5%;
padding-top: 10px;
line-height: 10px;
// margin-top: 10px;
}
.item1 img {
width: 100%;
}
.item2 {
width: 85%;
height: 30px;
font-size: 16px;
font-weight: 700;
margin-left: 5%;
margin-top: 40px;
}
.fong-div {
width: 4px;
height: 10px;
background-image: linear-gradient(to bottom, rgb(122, 247, 247), #057e8c);
float: left;
margin-top: 10px;
}
.rightline1 {
width: 85%;
height: 2px;
float: right;
background-image: linear-gradient(to left, #3bfafa, #ffffff00);
margin-top: 10px;
margin-right: 50px;
}
.rightline2 {
width: 92%;
height: 2px;
float: right;
background-image: linear-gradient(to left, #3bfafa, #ffffff00);
margin-top: 10px;
}
.rightline3 {
width: 95%;
height: 2px;
float: right;
background-image: linear-gradient(to left, #3bfafa, #ffffff00);
margin-top: 10px;
}
/* .dot {
display: inline-block;
position: relative;
width: 10px;
height: 10px;
background: rgb(30, 185, 190);
border-radius: 50%;
margin-right: 10px;
margin-left: 10px;
margin-bottom: 2px;
}
.dot-inner {
background: #44d7dc;
position: absolute;
top: 0;
left: 0;
box-sizing: border-box;
display: block;
width: 100%;
height: 100%;
border-radius: 50%;
-webkit-animation: vabDot 1.2s ease-in-out infinite;
animation: vabDot 1.2s ease-in-out infinite;
}
@-webkit-keyframes vabDot {
0% {
opacity: .6;
transform: scale(.8)
}
to {
opacity: 0;
transform: scale(2.4)
}
}
@keyframes vabDot {
0% {
opacity: .6;
transform: scale(.8)
}
to {
opacity: 0;
transform: scale(2.4)
}
} */
.div-p {
width: 100%;
background: url("../../assets/ranqifirst/div-p.png");
background-repeat: no-repeat;
background-size: 100% 100%;
cursor: pointer;
padding: 7px 0px;
color: #0ff;
}
.div-el {
margin-top: 30px;
width: 100%;
height: 18px;
}
.left-top {
display: flex;
justify-content: space-evenly;
}
.ltop1 {
width: 35%;
display: flex;
justify-content: space-evenly;
color: rgb(255, 255, 255);
}
.ltop2 {
width: 35%;
display: flex;
justify-content: space-evenly;
}
.el-left {
color: rgb(255, 255, 255);
color: #ad9d66;
width: 20%;
height: 100%;
float: left;
font-size: 14px;
text-align: right;
}
/* ::v-deep .el-progress.is-success .el-progress-bar__inner {
background-color: #00FFFF;
background: linear-gradient(to left,#00FFFF,#112238);
}
::v-deep .el-progress.is-warning .el-progress-bar__inner {
background-color: #198EF0;
background: linear-gradient(to left,#198EF0,#112238);
}
::v-deep .el-progress.is-exception .el-progress-bar__inner {
background-color: #00FFFF;
background: linear-gradient(to left,#00FFFF,#112238);
} */
/* ::v-deep .el-progress-bar__innerText {
color: #1e516f;
} */
.titleTex {
width: 100%;
height: 20px;
margin-top: 0px;
text-align: center;
/* font-size: 15px;
display: flex;
justify-content: space-around;
align-items: center; */
padding: 0px 30px;
}
.leftyj {
margin-top: 10px;
width: 420px;
margin-left: 10px;
}
.yj {
padding: 0px 10px;
}
.yujing {
width: 33%;
float: left;
text-align: center;
margin-top: 45px;
}
.yujingtop {
margin: 5px 0;
text-align: center;
}
.yujingbottom {
color: #cddbe4;
margin-left: 10px;
line-height: 35px;
padding: 10px 0 0 0;
}
.pieone {
width: 50%;
height: 60%;
float: left;
margin-top: 30px;
}
.pietwo {
width: 50%;
height: 60%;
float: right;
margin-top: 30px;
}
</style>
<template>
<div id="">
qqqq
</div>
</template>
<script>
// import moment from "moment";
//line移入时的的infowindow
// export default {
// props: {
// obj: { typs: Object },
// title: "",
// data: {},
// map: null,
// },
// methods: {
// moment,
// deviceMore() {
// this.data.class.view.$router.push({
// // path: "/dataMonitoring/realtimedetail",
// path: "/device/deviceInfoDetail",
// query: {
// deviceId: this.data.deviceId,
// // deviceType: this.data.deviceType,
// },
// });
// },
// close() {
// this.map.clearInfoWindow();
// this.data.class.view.domAllShow()
// },
// },
// };
</script>
</style>
<template>
<div class="rightb">
<!-- 预警信息 -->
<div class="item2">
<!-- <span class="dot">
<span class="dot-inner"></span>
</span> -->
<!-- <div class="fong-div"></div>
<div class="fong-div" style="margin-left: 3px;"></div>
<div class="fong-div" style="margin-left: 3px;"></div> -->
<span
style="letter-spacing: 1px; color: #fff; float: left; margin-left: 50px"
>
预警信息
</span>
<div class="rightline1"></div>
</div>
<div class="rightbar1">
<div style="padding: 0px 10px; width: 100%; height: 40%">
<div class="yujingleft yujing">
<div class="yujingtop">
<img
src="@/assets/mapinages/group786.png"
alt=""
style="width: 50px; height: 50px"
/>
</div>
<div class="yujingbottom">
<div>设备预警</div>
<span>{{ tableData.length }}</span>
</div>
</div>
<div class="yujingcenter yujing">
<div class="yujingtop">
<img
src="@/assets/mapinages/group787.png"
alt=""
style="width: 50px; height: 50px"
/>
</div>
<div class="yujingbottom">
<div>事件情况</div>
<span>0</span>
</div>
</div>
<div class="yujingright yujing">
<div class="yujingtop">
<img
src="@/assets/mapinages/group788.png"
alt=""
style="width: 50px; height: 50px"
/>
</div>
<div class="yujingbottom">
<div>隐患数量</div>
<span>0</span>
</div>
</div>
</div>
<div class="left">
<div
class="bottom right-bottom-data-left"
@mouseover="mouseover"
@mouseout="mouseout"
>
<el-table
size="mini"
:data="tableData"
:height="tableHeight"
class="el-bottom"
ref="table"
>
<el-table-column prop="unitName" label="所在单位" width="80">
<template slot-scope="scope">
<div class="zzz" :title="scope.row.unitName">
{{ scope.row.unitName }}
</div>
</template>
</el-table-column>
<el-table-column prop="detectorType" label="设备类型" width="80">
<template slot-scope="scope">
<div class="zzz" :title="scope.row.detectorType">
{{ scope.row.detectorType }}
</div>
</template>
</el-table-column>
<el-table-column prop="statusName" label="预警信息" width="80">
<template slot-scope="scope">
<div class="zzz" :title="scope.row.statusName">
{{ scope.row.statusName }}
</div>
</template>
</el-table-column>
<el-table-column prop="alarmTime" label="预警时间" width="100">
</el-table-column>
<el-table-column prop="handledStatus" label="状态">
<template slot-scope="scope">
<div class="zzz" :title="scope.row.handledStatus">
{{ scope.row.handledStatus }}
</div>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
<!-- 用户安全监控设备 -->
<div class="rightbar2">
<div class="item1">
<!-- <div class="fong-div"></div>
<div class="fong-div" style="margin-left: 3px;"></div>
<div class="fong-div" style="margin-left: 3px;"></div> -->
<span style="letter-spacing: 1px; color: #fff; float: left">
用户安全监控设备
</span>
<!-- <img src="../../assets/second1/ti-bg.png" alt=""> -->
<div class="rightline2"></div>
</div>
<div class="inuser">
<div class="outuserleft">
<div class="outuserone">
<div style="margin-top: 10px">燃气用户数量</div>
<!-- <span class="outuserspan">{{ diviceNum.userNum }}</span> -->
</div>
<div id="huanleft" style="width: 100%; height: 150px"></div>
<div class="inyuan">
<div style="letter-spacing: 2px">用户总数</div>
<!-- <span
style="
font-family: 'arialbd';
letter-spacing: 2px;
color: #00ffff;
font-size: 20px;
"
>{{diviceNum.juminNum + diviceNum.shangNum + diviceNum.gongNum}}</span> -->
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
color: #00ffff;
font-size: 20px;
"
>{{bingBottomData.totalNumberUsers}}</span
>
</div>
<div class="usernum">
<div class="usernumin in4">
<div class="titletu">
<span></span>
<span style="color: #cddbe4">居民用户 </span>
</div>
<!-- <span style="font-family: 'arialbd'; letter-spacing: 2px">
: {{ diviceNum.juminNum }}</span
> -->
<span style="font-family: 'arialbd'; letter-spacing: 2px">
{{bingBottomData.residentUsers}}</span
>
</div>
<div class="usernumin in5">
<div class="titletu">
<span></span>
<span style="color: #cddbe4">商业用户 </span>
</div>
<!-- <span style="font-family: 'arialbd'; letter-spacing: 2px">
: {{ diviceNum.shangNum }}</span
> -->
<span style="font-family: 'arialbd'; letter-spacing: 2px">
{{bingBottomData.businessUser}}</span
>
</div>
<div class="usernumin in6">
<div class="titletu">
<span></span>
<span style="color: #cddbe4">工业用户 </span>
</div>
<!-- <span style="font-family: 'arialbd'; letter-spacing: 2px">
: {{ diviceNum.gongNum }}</span
> -->
<span style="font-family: 'arialbd'; letter-spacing: 2px">
{{bingBottomData.industrialUsers}}</span
>
</div>
<div class="usernumin in7">
<div class="titletu">
<span></span>
<span style="color: #cddbe4">液化气用户 </span>
</div>
<span style="font-family: 'arialbd'; letter-spacing: 2px">
{{bingBottomData.liquefiedGasUsers}}</span
>
</div>
</div>
</div>
<div class="outuserright">
<div class="outusertwo">
<div style="margin-top: 10px">在线设备数量</div>
<!-- <span class="outuserspan">{{
diviceNum.baoNum + diviceNum.changNum + diviceNum.liNum
}}</span> -->
</div>
<div id="huanright" style="width: 100%; height: 150px"></div>
<div class="inyuan">
<div style="letter-spacing: 2px">设备总数</div>
<!-- <span
style="
font-family: 'arialbd';
letter-spacing: 2px;
color: #00ffff;
font-size: 20px;
"
>{{ diviceNum.baoNum + diviceNum.changNum + diviceNum.liNum }}</span
> -->
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
color: #00ffff;
font-size: 20px;
"
>0
</span>
</div>
<div class="usernum" style="margin-left: 38px">
<div class="usernumin in4">
<!-- <span> ● </span>
<span style="color: #cddbe4">在线 </span>
<span style="font-family: 'arialbd'; letter-spacing: 2px">
: {{ diviceNum.changNum }}</span
> -->
<span style="color: #cddbe4">在线 </span>
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
margin-left: 10px;
width: 35px;
text-align: left;
"
>
0</span
>
<span style="color: #cddbe4; margin-left: 20px">离线 </span>
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
margin-left: 10px;
"
>
0</span
>
</div>
<div class="usernumin in5">
<!-- <span> ● </span>
<span style="color: #cddbe4">离线 </span>
<span style="font-family: 'arialbd'; letter-spacing: 2px">
: {{ diviceNum.liNum }}</span
> -->
<span style="color: #cddbe4">在线 </span>
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
margin-left: 10px;
width: 35px;
text-align: left;
"
>
0</span
>
<span style="color: #cddbe4; margin-left: 20px">离线 </span>
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
margin-left: 10px;
"
>
0</span
>
</div>
<div class="usernumin in6">
<!-- <span> ● </span>
<span style="color: #cddbe4">报警 </span>
<span style="font-family: 'arialbd'; letter-spacing: 2px">
: {{ diviceNum.baoNum }}</span
> -->
<span style="color: #cddbe4">在线 </span>
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
margin-left: 10px;
width: 35px;
text-align: left;
"
>
0</span
>
<span style="color: #cddbe4; margin-left: 20px">离线 </span>
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
margin-left: 10px;
"
>
0</span
>
</div>
<div class="usernumin in7">
<span style="color: #cddbe4">在线 </span>
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
margin-left: 10px;
width: 35px;
text-align: left;
"
>
0</span
>
<span style="color: #cddbe4; margin-left: 20px">离线 </span>
<span
style="
font-family: 'arialbd';
letter-spacing: 2px;
margin-left: 10px;
"
>
0</span
>
</div>
</div>
</div>
</div>
</div>
<!-- 资源统计 -->
<div class="rightbar3">
<div class="item1">
<!-- <div class="fong-div"></div>
<div class="fong-div" style="margin-left: 3px;"></div>
<div class="fong-div" style="margin-left: 3px;"></div> -->
<span style="letter-spacing: 1px; color: #fff; float: left">
资源统计
</span>
<!-- <img src="../../assets/second1/ti-bg.png" alt=""> -->
<div class="rightline3"></div>
</div>
<div
class="echarts-one"
style="margin-top: 30px; width: 100%; height: 90%; margin-left: 10px"
>
<div id="myChartone" :style="{ width: '100%', height: '100%' }"></div>
</div>
</div>
<el-dialog
title="预警信息"
:visible.sync="open"
width="500px"
append-to-body
@cancel="cancel1"
>
<div class="yujingtan" style="width: 100%; height: 160px">
<div class="yujingone">所在单位:{{ yujingdata.unitName }}</div>
<div class="yujingone">设备类型:{{ yujingdata.detectorType }}</div>
<!--<div class="yujingone" v-if="yujingdata2.detectorCode=='866384067209974'">设备类型:可燃气体探测器(AEP)</div>-->
<!--<div class="yujingone" v-if="yujingdata2.detectorCode=='860362056312914'">设备类型:家用报警器</div>-->
<!--<div class="yujingone" v-if="yujingdata2.detectorCode=='868977060000767'">设备类型:家用报警器(AEP)</div>-->
<!--<div class="yujingone" v-if="yujingdata2.detectorCode=='B294F344'">设备类型:工业探测器</div>-->
<div class="yujingone">预警信息:{{ yujingdata.statusName }}</div>
<div class="yujingone" style="height: 30px">
预警时间:{{ yujingdata.alarmTime }}
</div>
<div class="but_yujing" @click="closealways">永久关闭</div>
</div>
</el-dialog>
</div>
</template>
<script>
// 引入基本模板
import * as echarts from "echarts";
import { alarmData, selectDeviceNum } from "@/api/detector/detectorInfo";
// 当不轮播时候的刷新时间
import { alarmtime } from "@/utils/mapClassForBigOld/config";
import { getYHTJ } from "@/api/bigWindowOld/charsData.js";
export default {
// components: {
// RightPic,
// },
data() {
return {
open: false,
isopen: true,
allNum: {},
diviceNum: {
baoNum: 0,
changNum: 0,
liNum: 0,
userNum: 0,
},
zeroNum: {
fajing: 0,
stationNum: 0,
tiaoya: 0,
videoNum: 0,
},
enterpriseIds: {
enterpriseId: "",
},
bingBottomData: {
businessUser: 0,
industrialUsers: 0,
residentUsers: 52830,
totalNumberUsers: 52830,
},
timer: null,
// 与bigwindow的报警同步的定时器
alarmTimer: null,
// 滚动功能的容器大还是列表大
changeTimer: false,
repeatFinshed: false,
tableHeight: 135,
tableData: [],
yujingdata: {
unitName: "省移动",
detectorType: "",
statusName: "",
alarmTime: "",
},
yujingdata2: {},
scrollHeight: 0,
};
},
mounted() {
// this.$nextTick(()=>{
// this.getScrollHeight();
// })
this.getAlarm();
this.init();
this.timer2 = setInterval(() => {
if (this.ws == null) {
this.init();
console.log("1");
}
}, 1000);
selectDeviceNum(this.enterpriseIds).then((response) => {
this.diviceNum = response.data;
this.drawLine3();
});
this.getYHTJ();
},
beforeDestroy() {
console.log("清空定时器");
clearInterval(this.alarmTimer);
clearInterval(this.timer2);
this.ws.close();
},
methods: {
init() {
console.log("socket执行");
this.ws = new WebSocket(
"ws://36.138.180.129:8901/gassafety/websocketServer"
);
this.ws.onopen = (evt) => {
console.log("WebSockets开启");
};
this.ws.onmessage = (evt) => {
// alarmData().then((response) => {
// this.tableData = response.data.pageData;
// this.yujingdata = response.data.pageData[0]
// })
console.log("推送", evt);
const obj = JSON.parse(evt.data);
this.yujingdata2 = obj;
console.log(this.yujingdata2);
if (this.isopen) {
this.open = true;
}
// const obj = JSON.parse(evt.data);
// console.log("接受socketobj", obj);
};
this.ws.onclose = () => {
console.log("ws协议关闭");
this.ws = null;
};
},
closealways() {
this.open = false;
this.isopen = false;
},
cancel1() {},
getAlarm() {
return alarmData().then((response) => {
this.tableData = response.data.pageData;
if (this.tableData.length > 0) {
this.yujingdata = this.tableData[0];
}
// console.log(response.data)
// this.user = response.data;
this.$nextTick(() => {
this.getScrollHeight();
});
});
},
// 中间饼图左边饼图
getYHTJ() {
getYHTJ().then((res) => {
console.log("cccccccc", res);
this.bingBottomData=res.data;
});
},
getScrollHeight() {
const selectWrap = this.$refs.table.$el.querySelector(
".el-table__body-wrapper"
);
// 列表
const select = this.$refs.table.$el
?.querySelector(".el-table__body-wrapper")
.querySelector(".el-table__body");
setTimeout(() => {
// 列表容器高度
const { height: heightWrapper } = selectWrap.getBoundingClientRect();
// 列表高度
const { height: heightSelect } = select.getBoundingClientRect();
// 滚动条的高度 = 列表高度-列表容器高度
this.scrollHeight = heightSelect - heightWrapper;
// 如果列表高度大于列表容器高度,就让轮播到底重新调接口,否则就跟bigwindow同步调取接口
if (heightSelect > heightWrapper) {
this.timerAni();
console.log("滚动");
} else {
this.alarmTimerAni();
console.log("不滚动-----------------------------");
}
// 列表大的时候鼠标移入移出就会触发暂停,否则就return
this.changeTimer = heightSelect > heightWrapper;
}, 1);
},
timerAni() {
const selectWrap = this.$refs.table.$el.querySelector(
".el-table__body-wrapper"
);
clearInterval(this.timer);
this.timer = setInterval(async () => {
if (selectWrap.scrollTop == this.scrollHeight) {
clearInterval(this.timer);
await this.getAlarm();
selectWrap.scrollTop = 0;
} else {
selectWrap.scrollTop += 1;
}
}, 100);
},
// 与外界报警同步
alarmTimerAni() {
this.alarmTimer = setTimeout(() => {
this.getAlarm();
}, alarmtime);
},
tableEnter() {
clearInterval(this.timer);
},
// 列表大的时候鼠标移入移出就会触发暂停,否则就啥也不干
mouseover() {
this.changeTimer && this.tableEnter();
},
mouseout() {
this.changeTimer && this.timerAni();
},
choice(val) {
this.getNum(val);
},
getNum(val) {
if (val != null && val != "") {
this.enterpriseIds.enterpriseId = val.toString();
selectDeviceNum(this.enterpriseIds).then((response) => {
console.log(response);
this.allNum = response.data;
this.drawLine();
});
} else {
this.allNum = this.zeroNum;
this.drawLine();
}
},
// drawLine() {
// // 基于准备好的dom,初始化echarts实例
// let myChart1 = this.$echarts.init(document.getElementById("myChartone"));
// // 绘制图表
// myChart1.setOption({
// tooltip: {
// trigger: "item",
// },
// grid: {
// top: "8%",
// left: "8%",
// right: "4%",
// bottom: "10%",
// containLabel: true,
// },
// xAxis: {
// // data: ["阀井", "调压箱", "场站", "监控"],
// data: ["居民用户", "商业用户", "工业用户", "餐饮单位用户"],
// type: "category",
// // data: category,
// splitLine: { show: false },
// axisLine: {
// show: false,
// lineStyle: {
// color: "#bbb6b6",
// },
// },
// axisTick: {
// show: false,
// },
// offset: 10,
// nameTextStyle: {
// fontSize: 15,
// },
// },
// yAxis: {
// type: "value",
// axisLine: {
// show: false,
// lineStyle: {
// color: "#688AB6",
// },
// },
// axisTick: {
// show: false,
// },
// splitLine: {
// show: true,
// lineStyle: {
// type: "dashed",
// color: "#464646",
// },
// },
// },
// series: [
// {
// name: "资源数量统计",
// type: "bar",
// showSymbol: false,
// hoverAnimation: false,
// data: [
// this.allNum.fajing,
// this.allNum.tiaoya,
// this.allNum.stationNum,
// this.allNum.videoNum,
// ],
// barWidth: 18, //柱图宽度
// // barCategoryGap:'60%',
// itemStyle: {
// normal: {
// label: {
// show: true, //开启显示
// position: "top", //在上方显示
// textStyle: {
// //数值样式
// color: "#688AB6",
// fontSize: 12,
// },
// },
// barBorderRadius: [5, 5, 0, 0], //每个柱子的颜色即为colorList数组里的每一项,如果柱子数目多于colorList的长度,则柱子颜色循环使用该数组
// color: function (params) {
// //我这边就两个柱子,大体就两个柱子颜色渐变,所以数组只有两个值,多个颜色就多个值
// var colorList = [
// ["#00ffff", "#00fbfb80", "#112238"],
// ["#198EF0", "#198ef099", "#112238"],
// ];
// var index = params.dataIndex;
// if (params.dataIndex >= colorList.length) {
// index = params.dataIndex - colorList.length;
// }
// return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
// { offset: 0, color: colorList[index][0] },
// { offset: 0.5, color: colorList[index][1] },
// { offset: 1, color: colorList[index][2] },
// ]);
// },
// },
// },
// },
// {
// name: "资源数量统计",
// tooltip: {
// show: true,
// },
// type: "bar",
// barWidth: 10,
// },
// {
// name: "b",
// tooltip: {
// show: false,
// },
// },
// {
// name: "d",
// tooltip: {
// show: false,
// },
// },
// ],
// });
// },
drawLine() {
// 基于准备好的dom,初始化echarts实例
let myChart1 = this.$echarts.init(document.getElementById("myChartone"));
// 绘制图表
myChart1.setOption({
legend: {
textStyle: {
fontSize: 12, //字体大小
color: "#ffffff", //字体颜色
},
},
tooltip: {
trigger: "item",
},
grid: {
top: "20%",
left: "3%",
right: "4%",
bottom: "10%",
containLabel: true,
},
dataset: {
source: [
["product", "总量", "在线数量"],
["阀井", this.allNum.fajing, this.allNum.fajing],
["调压箱", this.allNum.tiaoya, this.allNum.tiaoya],
["场站", this.allNum.stationNum, this.allNum.stationNum],
["监控", this.allNum.videoNum, this.allNum.videoNum],
],
},
xAxis: {
data: ["阀井", "调压箱", "场站", "监控"],
type: "category",
// data: category,
axisLabel: { interval: 0 },
splitLine: { show: false },
axisLine: {
show: false,
lineStyle: {
color: "#bbb6b6",
},
},
axisTick: {
show: false,
},
offset: 10,
nameTextStyle: {
fontSize: 15,
},
},
yAxis: {
type: "value",
axisLine: {
show: false,
lineStyle: {
color: "#688AB6",
},
},
axisTick: {
show: false,
},
splitLine: {
show: true,
lineStyle: {
type: "dashed",
color: "#464646",
},
},
},
series: [
{
type: "bar",
showSymbol: false,
hoverAnimation: false,
// data: [
// this.allNum.fajing,
// this.allNum.tiaoya,
// this.allNum.stationNum,
// this.allNum.videoNum,
// ],
barWidth: 18, //柱图宽度
// barCategoryGap:'60%',
itemStyle: {
normal: {
label: {
show: true, //开启显示
position: "top", //在上方显示
textStyle: {
//数值样式
color: "#fff",
fontSize: 10,
},
},
barBorderRadius: [5, 5, 0, 0], //每个柱子的颜色即为colorList数组里的每一项,如果柱子数目多于colorList的长度,则柱子颜色循环使用该数组
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#00ffff" },
{ offset: 0.5, color: "#00fbfb80" },
{ offset: 1, color: "#112238" },
]),
},
},
},
{
type: "bar",
showSymbol: false,
hoverAnimation: false,
// data: [
// this.allNum.fajing,
// this.allNum.tiaoya,
// this.allNum.stationNum,
// this.allNum.videoNum,
// ],
barWidth: 18, //柱图宽度
// barCategoryGap:'60%',
itemStyle: {
normal: {
label: {
show: true, //开启显示
position: "top", //在上方显示
textStyle: {
//数值样式
color: "#fff",
fontSize: 10,
},
},
barBorderRadius: [5, 5, 0, 0], //每个柱子的颜色即为colorList数组里的每一项,如果柱子数目多于colorList的长度,则柱子颜色循环使用该数组
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#198EF0" },
{ offset: 0.5, color: "#198ef099" },
{ offset: 1, color: "#112238" },
]),
},
},
},
],
// series: [
// {
// name: "资源数量统计",
// type: "bar",
// showSymbol: false,
// hoverAnimation: false,
// data: [
// this.allNum.fajing,
// this.allNum.tiaoya,
// this.allNum.stationNum,
// this.allNum.videoNum,
// ],
// barWidth: 18, //柱图宽度
// // barCategoryGap:'60%',
// itemStyle: {
// normal: {
// label: {
// show: true, //开启显示
// position: "top", //在上方显示
// textStyle: {
// //数值样式
// color: "#688AB6",
// fontSize: 12,
// },
// },
// barBorderRadius: [5, 5, 0, 0], //每个柱子的颜色即为colorList数组里的每一项,如果柱子数目多于colorList的长度,则柱子颜色循环使用该数组
// color: function (params) {
// //我这边就两个柱子,大体就两个柱子颜色渐变,所以数组只有两个值,多个颜色就多个值
// var colorList = [
// ["#00ffff", "#00fbfb80", "#112238"],
// ["#198EF0", "#198ef099", "#112238"],
// ];
// var index = params.dataIndex;
// if (params.dataIndex >= colorList.length) {
// index = params.dataIndex - colorList.length;
// }
// return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
// { offset: 0, color: colorList[index][0] },
// { offset: 0.5, color: colorList[index][1] },
// { offset: 1, color: colorList[index][2] },
// ]);
// },
// },
// },
// },
// {
// name: "资源数量统计",
// tooltip: {
// show: true,
// },
// type: "bar",
// barWidth: 10,
// },
// {
// name: "b",
// tooltip: {
// show: false,
// },
// },
// {
// name: "d",
// tooltip: {
// show: false,
// },
// },
// ],
});
},
drawLine3() {
// 基于准备好的dom,初始化echarts实例
let myChart31 = echarts.init(document.getElementById("huanleft"));
let myChart32 = echarts.init(document.getElementById("huanright"));
// 绘制图表
myChart31.setOption({
color: ["#50c43d", "#1883dc", "#fa8167", "#1ccccc"],
grid: {
left: 0,
// right: 0,
bottom: 0,
top: 0,
containLabel: true,
},
// grid: {
// bottom: 150,
// left: 100,
// right: '10%'
// },
series: [
// 主要展示层的
{
radius: ["80%", "65%"],
center: ["50%", "50%"],
type: "pie",
itemStyle: {
borderRadius: 5,
},
label: {
normal: {
show: false,
textStyle: {
fontSize: 13,
},
position: "outside",
},
emphasis: {
show: false,
},
},
labelLine: {
normal: {
show: false,
length: 20,
length2: 35,
},
emphasis: {
show: true,
},
},
name: "民警训练总量",
data: [
// { name: "居民用户", value: this.diviceNum.juminNum },
// { name: "商业用户", value: this.diviceNum.shangNum },
// { name: "工业用户", value: this.diviceNum.gongNum },
// { name: "餐饮单位用户", value: this.diviceNum.gongNum },
{ name: "居民用户", value: 1121 },
{ name: "商业用户", value: 41 },
{ name: "工业用户", value: 0 },
// { name: "餐饮单位用户", value: 543 },
],
},
// 边框的设置
// {
// name: "外边框",
// type: "pie",
// clockWise: false, //顺时加载
// hoverAnimation: false, //鼠标移入变大
// center: ["50%", "50%"],
// radius: ["80%", "80%"],
// label: {
// normal: {
// show: false,
// },
// },
// data: [
// {
// value: 9,
// name: "",
// itemStyle: {
// normal: {
// borderWidth: 2,
// borderColor: "#61bad3",
// },
// },
// },
// ],
// },
],
});
myChart32.setOption({
color: ["#FF4040", "#F0C41B", "#188DF0"],
grid: {
left: 0,
// right: 0,
bottom: 0,
top: 0,
containLabel: true,
},
// grid: {
// bottom: 150,
// left: 100,
// right: '10%'
// },
series: [
// 主要展示层的
{
radius: ["80%", "65%"],
center: ["50%", "50%"],
type: "pie",
itemStyle: {
borderRadius: 5,
},
label: {
normal: {
show: false,
textStyle: {
fontSize: 13,
},
position: "outside",
},
emphasis: {
show: false,
},
},
labelLine: {
normal: {
show: false,
length: 20,
length2: 35,
},
emphasis: {
show: true,
},
},
name: "民警训练总量",
data: [
// { name: "报警数量", value: this.diviceNum.baoNum },
// { name: "离线数量", value: 95 },
// { name: "在线数量", value: 1592 },
{ name: "报警数量", value: 0 },
{ name: "离线数量", value: 0 },
{ name: "在线数量", value: 0 },
],
},
// 边框的设置
// {
// name: "外边框",
// type: "pie",
// clockWise: false, //顺时加载
// hoverAnimation: false, //鼠标移入变大
// center: ["50%", "50%"],
// radius: ["80%", "80%"],
// label: {
// normal: {
// show: false,
// },
// },
// data: [
// {
// value: 9,
// name: "",
// itemStyle: {
// normal: {
// borderWidth: 2,
// borderColor: "#61bad3",
// },
// },
// },
// ],
// },
],
});
// myChart32.setOption({
// title: {
// text: '设备数量:'+data.deviceNum,
// left: 'center',
// textStyle: {
// color: "#0ff"
// }
// },
// tooltip: {
// trigger: 'item'
// },
// series: [
// {
// name: '设备概况',
// type: 'pie',
// radius: ['50%', '70%'],
// center: ['50%', '60%'],
// avoidLabelOverlap: false,
// label: {
// show: false,
// position: 'center'
// },
// emphasis: {
// label: {
// show: true,
// fontSize: '40',
// fontWeight: 'bold'
// }
// },
// labelLine: {
// show: false
// },
// data:data.divice,
// color:["#188df0","#ffff00","#FF4040"]
// }
// ]
// });
},
},
};
</script>
<style scoped>
.rightb {
width: 98%;
height: 100%;
}
.rightbar1 {
width: 90%;
height: 20%;
margin-left: 12%;
pointer-events: auto;
}
.rightbar2 {
width: 76%;
height: 37%;
padding-top: 15px;
margin-left: 20%;
pointer-events: auto;
}
.rightbar3 {
width: 80%;
height: 32%;
padding-top: 15px;
padding-bottom: 35px;
margin-left: 15%;
pointer-events: auto;
}
.rightline1 {
width: 85%;
height: 2px;
float: left;
background-image: linear-gradient(to right, #3bfafa, #ffffff00);
margin-top: 10px;
margin-left: 50px;
}
.rightline2 {
width: 92%;
height: 2px;
float: left;
background-image: linear-gradient(to right, #3bfafa, #ffffff00);
margin-top: 10px;
}
.rightline3 {
width: 95%;
height: 2px;
float: left;
background-image: linear-gradient(to right, #3bfafa, #ffffff00);
margin-top: 10px;
}
.titleTex {
height: 30px;
width: 100%;
color: aqua;
text-align: center;
line-height: 30px;
margin-top: 10px;
}
.divall {
height: 100%;
width: 100%;
}
.divfen {
display: flex;
justify-content: center;
align-items: center;
}
.numdiv {
background: #47aed5;
color: white;
width: 27px;
font-size: 30px;
}
.item1 {
width: 85%;
height: 30px;
font-size: 16px;
font-weight: 700;
margin-left: 14%;
padding-top: 25px;
line-height: 10px;
}
.item1 img {
width: 100%;
}
.item2 {
width: 85%;
height: 30px;
font-size: 16px;
font-weight: 700;
margin-left: 5%;
margin-top: 40px;
}
.dot {
display: inline-block;
position: relative;
width: 10px;
height: 10px;
background: rgb(30, 185, 190);
border-radius: 50%;
margin-right: 10px;
margin-left: 10px;
margin-bottom: 2px;
}
.dot-inner {
background: #44d7dc;
position: absolute;
top: 0;
left: 0;
box-sizing: border-box;
display: block;
width: 100%;
height: 100%;
border-radius: 50%;
-webkit-animation: vabDot 1.2s ease-in-out infinite;
animation: vabDot 1.2s ease-in-out infinite;
}
@-webkit-keyframes vabDot {
0% {
opacity: 0.6;
transform: scale(0.8);
}
to {
opacity: 0;
transform: scale(2.4);
}
}
@keyframes vabDot {
0% {
opacity: 0.6;
transform: scale(0.8);
}
to {
opacity: 0;
transform: scale(2.4);
}
}
.inuser {
width: 100%;
height: 82%;
}
.outuserleft {
width: 50%;
height: 100%;
float: left;
}
.outuserright {
width: 50%;
height: 100%;
float: right;
}
.outuserone {
width: 100%;
height: 20px;
text-align: center;
color: #cddbe4;
}
.outusertwo {
width: 100%;
height: 20px;
text-align: center;
color: #cddbe4;
}
.outuserspan {
font-family: "arialbd";
font-size: 28px;
color: #00ffff;
letter-spacing: 8px;
}
.usernum {
width: 100%;
text-align: center;
}
.usernumin {
font-size: 15px;
display: flex;
flex-direction: row;
justify-content: flex-start;
}
.titletu {
margin-left: 50px;
width: 120px;
text-align: left;
}
titletu2 {
margin-left: 50px;
width: 70px;
text-align: left;
}
.in1 {
color: #188df0;
}
.in2 {
color: #f0c41b;
}
.in3 {
color: #ff4040;
}
.in4 {
color: #50c43d;
}
.in5 {
color: #1883dc;
}
.in6 {
color: #fa8167;
}
.in7 {
color: #1ccccc;
}
.in8 {
color: #40adf1;
}
.inyuan {
width: 94px;
height: 94px;
border-radius: 50%;
border: 2px solid #125c9b;
position: fixed;
margin-bottom: 10px;
margin-top: -122px;
margin-left: 62px;
font-size: 15px;
color: #cddbe4;
text-align: center;
line-height: 20px;
padding: 28px 0px 0px 0px;
background-image: linear-gradient(to left, #112238, #003e8d, #112238);
}
.b_list {
height: 100%;
overflow: hidden;
}
.left {
margin-top: 10px;
width: 400px;
height: 55%;
margin-left: 55px;
}
.yj {
padding: 0px 10px;
}
.yujing {
width: 33%;
height: 100%;
float: left;
}
.yujingtop {
/* width: 70px;
height: 90px; */
float: left;
margin-top: 15px;
text-align: right;
}
.yujingbottom {
float: left;
color: #cddbe4;
margin-left: 10px;
line-height: 35px;
padding: 10px 0 0 0;
}
.yujingbottom span {
font-family: "arialbd";
font-size: 25px;
background-image: -webkit-linear-gradient(bottom, #f0c41b, #e4dbb7);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.yujingtan {
font-size: 18px;
}
.yujingone {
height: 40px;
color: #cccccc;
}
.but_yujing {
cursor: pointer;
width: 100px;
border: 1px solid #cccccc;
text-align: center;
border-radius: 5px;
height: 30px;
margin-left: 360px;
color: white;
}
</style>
<style lang="scss" scoped>
::v-deep .el-dialog {
margin-top: 18vh !important;
}
::v-deep .el-dialog__header {
background: #cc0000;
border-bottom: 1px solid #181930;
}
::v-deep .el-dialog__title {
color: white !important;
}
::v-deep .el-dialog__headerbtn .el-dialog__close {
color: #ffffff;
}
::v-deep .el-dialog__body {
background: rgba(9, 18, 32, 0.9);
}
</style>
<!--
* @Author: your name
* @Date: 2022-01-26 20:07:52
* @LastEditTime: 2022-03-17 09:05:30
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/views/components/deviceA.vue
-->
<template>
<div class="devicea-wrapper">
<div class="title">
{{ deviceData.township }}
</div>
<div class="close" @click="close">
<!-- <img src="@/assets/mapImages/closeBtn.png" alt="" /> -->
<i class="el-icon-close" style="font-size:20px;color:#5dfefe;"></i>
</div>
<p style="background-image: linear-gradient(to right, #5dfefe, #071738); width:100%;height:1px;"></p>
<div>
<!--<div class="top flex top-top">-->
<!--<div class="group" style="width:20%">-->
<!--<div class="left">联系人:</div>-->
<!--<div class="right zzz">{{ deviceData.linkman }}</div>-->
<!--</div>-->
<!--<div class="group" style="width:30%">-->
<!--<div class="left">联系电话:</div>-->
<!--<div v-unValue class="right zzz">-->
<!--{{ deviceData.phone }}-->
<!--</div>-->
<!--</div>-->
<!--<div class="group" style="width:30%">-->
<!--<div class="left">联系地址:</div>-->
<!--<div :title="deviceData.address" class="right last zzz">-->
<!--{{ deviceData.address || "-" }}-->
<!--</div>-->
<!--</div>-->
<!--</div>-->
<!-- <div class="top flex top-bottom">
<div class="group">
<div class="left">联系地址:</div>
<div :title="deviceData.address" class="right last zzz">
{{ deviceData.address || "-" }}
</div>
</div>
</div> -->
<template v-if="deviceData.detectorCountList">
<div class="foot">
<div class="thead flex">
<div class="first">设备类型</div>
<div>设备数量</div>
<div>在线设备</div>
<div>离线设备</div>
<!-- <div>历史报警</div>
<div>已处理报警</div> -->
<div class="last">报警中</div>
</div>
<div
v-for="data in deviceData.detectorCountList"
:key="data.userId"
class="tbody flex"
>
<div v-unValue class="first zzz">{{ data.detectorType }}</div>
<div class="">{{ data.detectorCount }}</div>
<div v-unValue class="">
{{ data.onLineNum }}
</div>
<div v-unValue class="">
{{ data.offLineNum }}
</div>
<!-- <div v-unValue class="">
{{ data.historyAlarmNum }}
</div>
<div v-unValue class="">
{{ data.cancelAlarmNum }}
</div> -->
<div v-unValue class="last zzz">
{{ data.processingAlarmNum }}
</div>
</div>
</div>
</template>
</div>
<div style="width:100%;display: flex;">
<div class="btn">
<div>感知设备</div>
</div>
<p style="width:85%;height:10px;background-color: #022346;margin-top: 22px;margin-left: -10px;"></p>
<div @click="btnClick">
<img @click="flag = !flag" src="../../assets/second/box-down.png" :class="{ 'arrowTransform': !flag, 'arrowTransformReturn': flag}" alt="" style="width:30px;height:30px;margin-top: 12px;cursor: pointer;">
</div>
</div>
<yhqUserCenter
:title="centerTitle"
:show="yhquserCenterShow"
ref="yhquserCenter"
:detcetorList="detcetorList"
:userId="centerUserId"
:total="centerTotal"
:pageSize="5"
v-show="!isShow"
/>
</div>
</template>
<script>
import {
getYhq,
getyhqUser,
deviceUser,
deviceUserList
} from "@/api/bigWindowOld/getDevice";
import { companyType, deviceType } from "@/utils/mapClassForBigOld/config.js";
import { yhqlistDetectorInfo } from "@/api/detector/detectorInfo";
import { yhqdetectorUserList } from "@/api/detector/detectorUser";
import yhqUserCenter from "@/components/bigWindowOld/yhqUserCenter.vue";
export default {
components: {
yhqUserCenter,
},
data() {
return {
flag: true,
isShow: true ,
companyType,
deviceType,
centerTitle: "",
detcetorList: [],
centerUserId: null,
centerTotal: null,
yhquserCenterShow: false,
};
},
computed: {
prodTest() {
return this.vueRoot.$store.state.user.systemSetting.prod_test;
},
company() {
return this.vueRoot.$store.state.bigWindowCompany.company;
},
},
mounted() {
// 如果不是测试,而是真数据,就要用帧数据的东西
if (this.prodTest != "test") {
this.companyType = {};
this.company.forEach((item) => {
this.companyType[item.conpanyId] = item.companyName;
});
}
//this.myHttp();
// console.log(this.deviceData);
this.btnClick()
},
methods: {
//用户的设备center
getDetectorInfoList(httpFunc, queryParams, title) {
console.log(queryParams);
return httpFunc(queryParams).then((res) => {
console.log("ssssssssssssssss", res);
if (res.code == 200) {
this.detcetorList = res.rows;
this.centerUserId = queryParams.userId;
// 总数据
this.centerTotal = res.total;
// this.$refs.userCenter.fade = "fade";
this.otherCenterShow = false;
this.yhquserCenterShow = true;
this.centerTitle = title;
// 传递回去
return res.code;
}
});
},
close() {
this.mapClass.infowindowClose();
},
btnClick() {
this.isShow = !this.isShow;
// this.vueRoot.centerDataFunc(this.deviceData.pressureFlows);
this.getDetectorInfoList(
deviceUserList,
{ township: this.deviceData.township,pageNum: 1, pageSize: 5, },
this.deviceData.nickName
);
},
myHttp() {
yhqdetectorUserList({ userId: this.deviceData.userId }).then((res) => {
if (res.code == 200) {
const data = res.data.filter(
(item) => item.userId == this.deviceData.userId
)[0].detectorCountList;
this.deviceData.detectorCountList = data;
}
});
},
},
};
</script>
<style lang="scss" scoped>
.arrowTransform {
transition: 0s;
transform-origin: center;
transform: rotateZ(180deg);
}
.arrowTransformReturn {
transition: 0s;
transform-origin: center;
transform: rotateZ(0deg);
}
.devicea-wrapper {
box-shadow: 0px 0px 10px #54e0ef inset;
background-color: #071738;
padding: 10px;
position: relative;
width: 740px;
.title {
// padding-top: 10px;
// padding-left: 10px;
font-size: 14px;
line-height: 14px;
color: #ffffff;
}
.close {
position: absolute;
right: 10px;
top: 5px;
cursor: pointer;
}
.top {
margin-top: 10px;
margin-bottom: 10px;
box-sizing: border-box;
&.top-top {
// div{
// width: 33%;
// }
}
.group {
height: 30px;
display: flex;
justify-content: space-between;
box-sizing: border-box;
div {
flex: 1;
box-sizing: border-box;
text-align: left;
font-size: 14px;
color: #ffffff;
line-height: 30px;
padding: 0 5px;
&.last {
border-right: none;
}
}
.left {
text-align: left;
}
}
&.top-bottom {
.left {
flex: none;
width: 192px !important;
}
.right {
flex: 1;
}
}
}
// .middle {
// width: 100%;
// padding: 5px;
// border: 1px solid #ffffff;
// box-sizing: border-box;
// font-size: 14px;
// color: #ffffff;
// text-indent: 2em;
// margin-bottom: 10px;
// }
.foot {
font-size: 14px;
color: #ffffff;
background: url('../../assets/second/box-bg.png');
background-size: 100% 100%;
background-repeat: no-repeat;
padding: 1px;
.thead,
.tbody {
div {
flex: 1;
text-align: left;
box-sizing: border-box;
text-align: center;
border: 1px solid #1b365d;
}
// .first {
// flex: 2;
// }
// .last {
// border-right: none;
// }
}
.tbody {
border-top: none;
}
// .thead {
// div {
// background-color: rgba(255, 255, 255, 0.1);
// }
// }
}
.btn {
position: relative;
margin-top: 10px;
div {
font-size: 14px;
color: #ffffff;
background: url('../../assets/second/boxbtn-bg.png');
background-size: 100% 100%;
background-repeat: no-repeat;
padding: 7px 15px;
}
}
.flex {
display: flex;
justify-content: space-between;
}
}
</style>
<template>
<transition>
<div v-show="show" class="wrapper myCenter">
<div class="left">
<!-- <div class="title-wrapper">
<div class="title">{{ title }}报警器列表</div>
<div class="close" @click="close">
<img src="@/assets/mapImages/closeBtn.png" alt="" />
</div>
</div> -->
<div class="bottom right-bottom-data-left">
<el-table
size="mini"
:data="tableData"
style="width: 720px"
class="el-bottom"
:key="Math.random()"
>
<!-- :height="tableHeight" -->
<!-- <el-table-column prop="detectorCode" label="设备编号" width="180">
<template slot-scope="scope">
<div :title="scope.row.detectorCode" class="ddd" v-unValue>
{{ scope.row.detectorCode }}
</div>
</template>
</el-table-column> -->
<el-table-column prop="detectorName" label="设备名称" width="100">
<template slot-scope="scope">
<div :title="scope.row.detectorName" class="ddd" v-unValue>
家用报警器
</div>
</template>
</el-table-column>
<el-table-column prop="medium" label="监测介质" width="100">
<template slot-scope="scope">
<div v-unValue>{{ scope.row.medium }}</div>
</template>
</el-table-column>
<el-table-column prop="detectorAddr" label="设备地址" width="100">
<template slot-scope="scope">
<div v-unValue style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" :title="scope.row.address">
{{ scope.row.address }}
</div>
</template>
</el-table-column>
<el-table-column prop="linkman" label="联系人" width="80">
<template slot-scope="scope">
<div v-unValue style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">{{ scope.row.linkman }}</div>
</template>
</el-table-column>
<el-table-column prop="phone" label="联系电话" width="100">
</el-table-column>
<el-table-column prop="detectorStatus" label="设备状态" width="100">
<template slot-scope="scope">
<div v-if="scope.row.status == 0">在线</div>
<div v-else-if="scope.row.status == 1">
离线
</div>
<div v-else>-</div>
<!-- <div v-unValue :style="{color:scope.row.detectorStatus==1?'red':''}">{{scope.row.detectorStatus}}</div> -->
</template>
</el-table-column>
<el-table-column prop="alarmTime" label="预警时间" width="140">
<template slot-scope="scope">
<div v-unValue>{{ scope.row.alarmTime }}</div>
</template>
</el-table-column>
</el-table>
<div>
<el-pagination
@current-change="handleCurrentChangvale"
:page-size="pageSize"
layout="prev, pager, next, jumper"
:total="total"
:hide-on-single-page="total <= pageSize"
:key="total + '' + pageSize"
>
</el-pagination>
</div>
</div>
</div>
</div>
</transition>
</template>
<script>
// import Velocity from "velocity-animate";
// import { listDeviceAlarm } from "@/api/dataMonitoring/deviceAlarm";
import { yhqlistDetectorInfo } from "@/api/detector/detectorInfo";
import { deviceUserList } from "@/api/bigWindowOld/getDevice";
export default {
props: {
detcetorList: {
type: Array,
default: () => [],
},
show: {
type: Boolean,
},
title: {
type: String,
},
userId: {
type: [Number, String],
},
total: {
type: Number,
},
pageSize: {
type: Number,
},
},
data() {
return {
// 动画效果的切换
// tableHeight: 600,
tableData: [
// {
// deviceCode: "2016-05-05",
// name: "王小虎",
// province: "上海",
// city: "普陀区",
// address: "上海市普陀区金沙江路",
// },
],
detectorStatusList:{
"0":"在线",
"1":"离线",
}
};
},
created() {
console.log("2222222============", this.detcetorList);
// this.getList();
},
watch: {
// 当组件显示的时候
detcetorList(newData) {
// console.log(bol);
// if (bol) {
console.log("222222222222222222222222222222222222222222",newData);
this.tableData = [...newData];
// }
},
},
methods: {
handleSizeChange(val) {
console.log(val);
},
handleCurrentChangvale(val) {
this.$parent.getDetectorInfoList(
deviceUserList,
{
userId: this.userId,
pageNum: val,
pageSize: this.pageSize,
},
this.title
);
},
// close() {
// // this.fade = "fade";
// this.$parent.otherCenterShow = false;
// },
},
};
</script>
<style lang="scss" scoped>
.wrapper {
// width: 978px;
// max-height: 600px;
// position: fixed;
// top: 50%;
// left: 50%;
// margin-top: -300px;
// margin-left: -500px;
// // background-color: #fff;
// display: flex;
// justify-content: space-between;
margin-top: 10px;
z-index: 9999;
& > div {
}
.left {
// width: 100px;
max-height: 598px;
margin-right: 12px;
// box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.16);
// background-color: #fff;
// color: #fff;
font-size: 14px;
font-weight: 400;
.title-wrapper {
width: 100%;
height: 30px;
display: flex;
justify-content: space-between;
background: #1890ff;
padding: 5px;
.title {
width: 100%;
color: #fff;
text-align: center;
}
.close {
box-sizing: border-box;
padding-top: 2px;
padding-right: 5px;
cursor: pointer;
}
}
.el-table__body-wrappe {
height: 140px !important;
}
.top {
height: 19px;
// background-color: #053b6a;
color: #fff;
// line-height: 32px;
// padding-left: 12px;
position: relative;
.title {
position: absolute;
left: 50%;
margin-left: -92px;
top: -5px;
}
.repeat {
position: absolute;
top: -5px;
right: 160px;
color: #fff;
cursor: pointer;
&:hover {
color: #2788ea;
}
}
.repeat2 {
position: absolute;
right: 206px;
color: #67c23a;
}
.more {
position: absolute;
right: 38px;
top: -5px;
color: #fff;
float: right;
margin-right: 20px;
cursor: pointer;
&:hover {
color: #2788ea;
}
}
}
.bottom {
width: 1000px;
margin: 0 auto;
position: relative;
}
}
.right {
width: 740px;
display: flex;
flex-wrap: wrap;
// justify-content: space-between;
align-content: flex-start;
// margin-top: 7px;
& > .right-content {
background-color: #fff;
width: 238px;
height: 82px;
margin-bottom: 29px;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.16);
margin-right: 10px;
display: flex;
&.three {
margin-right: 0px;
}
// align-items: center;
.text-icon {
line-height: 82px;
padding-left: 22px;
margin-right: 22px;
i {
color: #053b6a;
font-size: 60px;
}
}
.text {
font-size: 14px;
padding-top: 16px;
.top {
color: #000;
margin-bottom: 10px;
font-weight: 600;
}
.bottom {
color: #2788ea;
}
}
}
}
.iconfont {
cursor: pointer;
}
// 单独调整下最后一个icon的大小
.iconFontSize {
font-size: 50px !important;
}
}
</style>
...@@ -59,6 +59,13 @@ export const constantRoutes = [ ...@@ -59,6 +59,13 @@ export const constantRoutes = [
component: (resolve) => require(['@/views/bigWindow'], resolve), component: (resolve) => require(['@/views/bigWindow'], resolve),
hidden: true hidden: true
}, },
// 20240727 wh 调整
//大屏展示
// {
// path: '/bigWindow',
// component: (resolve) => require(['@/views/bigWindowOld'], resolve),
// hidden: true
// },
{ {
path: '/outindex', path: '/outindex',
component: (resolve) => require(['@/views/onelogin'], resolve), component: (resolve) => require(['@/views/onelogin'], resolve),
......
This source diff could not be displayed because it is too large. You can view the blob instead.
/*
* @Author: your name
* @Date: 2022-01-11 13:45:12
* @LastEditTime: 2022-02-17 10:10:11
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/utils/mapClass.js
*/
// 编辑类
// 在地图上新增的设备可以直接编辑,
// 已经保存完成的设备需要点编辑才可以编辑
export class EditorMap {
// 地图的对象实例
map = null;
// 父vue的实例
vue = null;
// 操作 新建,编辑,删除,编辑跟删除只对已经在图上的设备有效 默认值:0, 新建:1,编辑:2, 删除: 3。
// 新建的时候会把未保存的线条清空
control = 0;
// 鼠标事件对象,用来将点跟线上图
mousetool = null;
// 当前正在手动绘制的对象
nowMouseTarget = null;
// 当线mousetool线被按下的时候的flag 当线被按下的时候为true,就不询问是否删除了
mosueToolPolineDownFlag = false;
// 绘制marer的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolMarkerOptions = null;
// 绘制poline的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolPolineOptions = null;
constructor(contaienr, config = {}, vue) {
this.map = new AMap.Map(contaienr, {
viewMode: "3D",
center: [116.397083, 39.874531],
layers: [AMap.createDefaultLayer()], // layers 字段为空或者不赋值将会自动创建默认底图。
zoom: 12,
...config,
});
this.vue = vue;
this.init();
}
init() {
// 地图事件
this.mapEvent();
// 手动点线上图准备,编辑模式
this.mouseAddDevice();
window.func = () => {
this.getPath();
};
// this.mouseAddMarker();
// this.mouseAddPipeline();
}
// map的事件监听
mapEvent() {
this.map.on("click", () => {
// mousetool对象画出的对象的操作
// 如果有手动绘制对象,要手动清楚一下,因为画线的时候不好清除旧线,这其实是用来清楚旧线的
// 当画出来的线被mousedown,不删除,但是mouseToolPipeLineFlag要归位,在移出线的时候统一归位
// 如果对象是marker,直接删除
if (this.nowMouseTarget?.type == "AMap.Marker") {
console.log("???");
this.mouseToolDrawClear();
} else {
// 当地图上已经画了线,并且没有点在线上,询问是否删除
if (this.nowMouseTarget && !this.mosueToolPolineDownFlag) {
this.confirm("是否重新绘制管道", { type: "warning" })
.then(() => {
// 删除原来的线
this.mouseToolDrawClear();
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
this.mousetool.polyline(this.mouseToolPolineOptions);
})
.catch(() => {});
}
}
});
this.map.on("moveend", () => {
console.log("地图停止移动");
if (this.flag) {
console.log("弹框");
this.flag = false;
}
});
window.panTo = () => {
this.flag = true;
this.map.panTo([116.428285, 39.886129]);
};
}
// 弹框工具
confirm(message, obj) {
return this.vue.$confirm(message, obj);
}
// 改变操作状态
changeControl(num) {
this.control = num;
}
// 点线编辑上图准备
mouseAddDevice() {
this.map.plugin(["AMap.MouseTool"], () => {
this.mousetool = new AMap.MouseTool(this.map);
});
// 挂载绘制结束的事件
this.mouseDrawEvent();
}
// 点或者线上图结束后触发的事件
mouseDrawEvent() {
this.mousetool.on("draw", (e) => {
const target = e.obj;
// console.log([target._position.lng, target._position.lat]);
const { type: targetType } = target;
// 当这个点是marker的时候
if (targetType == "AMap.Marker") {
this.mouseToolMarkerEvent(target);
} else {
// 如果是线,挂上编辑
this.lineEditor(target);
this.mousetool.close();
this.mouseToolPolineEvent(target);
console.log(targetType, "当前对象是管道");
}
this.nowMouseTarget = target;
});
}
// 绘制marker结束后,在marker身上添加的事件
mouseToolMarkerEvent(target) {
// 由于画出来的marker点击会换位置,所以当移入的时候删除绘制事件,移出去在增加绘制事件
target.on("mouseover", (e) => {
// 鼠标事件关闭
this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 这里不方便获取原来的属性,因为position不好解决,还是设置一个值吧
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
this.mousetool.marker(this.mouseToolMarkerOptions);
});
// 点
target.on("click", (e) => {
// 弹框
});
}
// 挂上线以及线的事件
lineEditor(line) {
// line.editor && line.editor.close();
// 当前点击次数,1次为编辑,2次为弹框
line.editorNum = 0;
line.editor = new AMap.PolyEditor(this.map, line);
}
// 绘制管道的时候,挂载的事件
mouseToolPolineEvent(target) {
// 线按下的时候会变成编辑,mousetool事件会清空 移出线的时候 在把polyline事件加上
target.on("mouseover", (e) => {
// 鼠标事件关闭
// this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 有时候按在线上移动地图,map点击事件中mosueToolPolineDownFlag无法归位,在这里归位
this.mosueToolPolineDownFlag = false;
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
// this.mousetool.polyline(this.mouseToolPolineOptions);
});
// 线
target.on("mousedown", (e) => {
const line = e.target;
// mosueTool按下的flag,按在线上,不询问是否删除
this.mosueToolPolineDownFlag = true;
// 按下的时候要关闭事件
this.mousetool.close(false);
// 如果当前状态不是编辑,则进入编辑状态
if (line.editorNum < 1) {
// 打开并且++
line.editor.open();
line.editorNum++;
} else {
// 这里就要弹框了
console.log(line.getPath());
}
});
}
// 设备点击上图开启
mouseAddMarker(markerObj = {}) {
// 清空已经绘制完的对象
this.mousetoolClose(true);
// 记录一下配置项,在挂载点击的时候,需要使用
this.mouseToolMarkerOptions = {
draggable: true,
...markerObj,
};
this.mousetool.marker(this.mouseToolMarkerOptions);
}
// 管线点击上图开启
mouseAddPipeline(pipeObj = {}) {
this.mousetoolClose(true);
// 开始画线
this.mosuetoolPolineFlag = true;
this.mouseToolPolineOptions = {
strokeWeight: 5,
...pipeObj,
};
this.mousetool.polyline(this.mouseToolPolineOptions);
}
// 手动清除map上绘制的对象
mouseToolDrawClear() {
if (this.nowMouseTarget) {
this.map.remove(this.nowMouseTarget);
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
}
// 关闭点击上图事件 true清除之前绘制的图像,false 仅关闭上图事件
mousetoolClose(boolean) {
// 清空地图上的绘制对象的同时,也要清楚这个nowMouseTarget控制对象
if (this.nowMouseTarget) {
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
this.mousetool.close(boolean);
}
/**
*
*
*
*
*
*
* 地图上add设备
*
*
* @description:
* @param {*} deviceData marker的数据
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
addDevice(deviceData) {
const { path } = deviceData;
let device = this.createMarker({
map: this.map,
anchor: "bottom-center",
icon: require("@/assets/bigWindowOld/mapImages/coordinate.svg"),
position: path,
extData: deviceData,
});
// 当前设备
this.mouseAddMarker();
this.nowMouseTarget = device;
this.setCenter(path);
// 设备的事件函数
// this.deviceEvent(device, compontent);
}
deviceEvent(device, compontent) {
device.on("click", (e) => {
const target = e.target;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
if (this.control == 0) {
// this.markerClick(target, compontent);
} else if (this.control == 2) {
// 2是已经上图的设备拥有的编辑功能
} else if (this.control == 3) {
// 3是删除操作
}
});
}
// 创建marker
createMarker(MarkerOptions) {
return new AMap.Marker(MarkerOptions);
}
// 地图上add管道
addPipeLine(objData) {
const { path } = objData;
const pipe = this.createPipeLine({
path,
strokeWeight: 4,
strokeColor: "#000",
extData: objData,
cursor: "pointer",
});
this.map.add(pipe);
this.setCenter(path[0]);
// 当前设备
this.nowMouseTarget = pipe;
}
createPipeLine(pipeLineOptions) {
return new AMap.Polyline(pipeLineOptions);
}
setCenter(path) {
this.map.setCenter(path, true);
}
// 获取路径
getPath() {
if(!this.nowMouseTarget) return;
if (this.nowMouseTarget.type == "AMap.Marker") {
const { lng, lat } = this.nowMouseTarget.getPosition();
return [lng, lat];
} else {
return this.nowMouseTarget?.getPath().map((item) => [item.lng, item.lat]);
}
}
// 搜索位置
positionSearch(id) {
// id 为搜索框id
var autoOptions = {
input: id,
};
AMap.plugin(["AMap.PlaceSearch", "AMap.AutoComplete"], ()=> {
var auto = new AMap.AutoComplete(autoOptions);
var placeSearch = new AMap.PlaceSearch({
map: this.map,
}); //构造地点查询类
auto.on("select", select); //注册监听,当选中某条记录时会触发
function select(e) {
console.log(e)
placeSearch.setCity(e.poi.adcode);
placeSearch.search(e.poi.name); //关键字查询查询
}
});
}
// 销毁map
destroy(){
this.map.destroy();
}
}
/*
* @Author: your name
* @Date: 2022-01-11 13:45:12
* @LastEditTime: 2022-02-17 10:10:11
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/utils/mapClass.js
*/
// 编辑类
// 在地图上新增的设备可以直接编辑,
// 已经保存完成的设备需要点编辑才可以编辑
export class EditorMap {
// 地图的对象实例
map = null;
// 父vue的实例
vue = null;
// 操作 新建,编辑,删除,编辑跟删除只对已经在图上的设备有效 默认值:0, 新建:1,编辑:2, 删除: 3。
// 新建的时候会把未保存的线条清空
control = 0;
// 鼠标事件对象,用来将点跟线上图
mousetool = null;
// 当前正在手动绘制的对象
nowMouseTarget = null;
// 当线mousetool线被按下的时候的flag 当线被按下的时候为true,就不询问是否删除了
mosueToolPolineDownFlag = false;
// 绘制marer的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolMarkerOptions = null;
// 绘制poline的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolPolineOptions = null;
constructor(contaienr, config = {}, vue) {
this.map = new AMap.Map(contaienr, {
viewMode: "3D",
center: [116.397083, 39.874531],
layers: [AMap.createDefaultLayer()], // layers 字段为空或者不赋值将会自动创建默认底图。
zoom: 12,
...config,
});
this.vue = vue;
this.init();
}
init() {
// 地图事件
this.mapEvent();
// 手动点线上图准备,编辑模式
this.mouseAddDevice();
window.func = () => {
this.getPath();
};
// this.mouseAddMarker();
// this.mouseAddPipeline();
}
// map的事件监听
mapEvent() {
// this.map.on("click", () => {
// // mousetool对象画出的对象的操作
// // 如果有手动绘制对象,要手动清楚一下,因为画线的时候不好清除旧线,这其实是用来清楚旧线的
// // 当画出来的线被mousedown,不删除,但是mouseToolPipeLineFlag要归位,在移出线的时候统一归位
// // 如果对象是marker,直接删除
// if (this.nowMouseTarget?.type == "AMap.Marker") {
// console.log("???");
// this.mouseToolDrawClear();
// } else {
// // 当地图上已经画了线,并且没有点在线上,询问是否删除
// if (this.nowMouseTarget && !this.mosueToolPolineDownFlag) {
// this.confirm("是否重新绘制管道", { type: "warning" })
// .then(() => {
// // 删除原来的线
// this.mouseToolDrawClear();
// // 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
// this.mousetool.polyline(this.mouseToolPolineOptions);
// })
// .catch(() => {});
// }
// }
// });
this.map.on("moveend", () => {
console.log("地图停止移动");
if (this.flag) {
console.log("弹框");
this.flag = false;
}
});
window.panTo = () => {
this.flag = true;
this.map.panTo([116.428285, 39.886129]);
};
}
// 弹框工具
confirm(message, obj) {
return this.vue.$confirm(message, obj);
}
// 改变操作状态
changeControl(num) {
this.control = num;
}
// 点线编辑上图准备
mouseAddDevice() {
this.map.plugin(["AMap.MouseTool"], () => {
this.mousetool = new AMap.MouseTool(this.map);
});
// 挂载绘制结束的事件
this.mouseDrawEvent();
}
// 点或者线上图结束后触发的事件
mouseDrawEvent() {
this.mousetool.on("draw", (e) => {
const target = e.obj;
// console.log([target._position.lng, target._position.lat]);
const { type: targetType } = target;
// 当这个点是marker的时候
if (targetType == "AMap.Marker") {
this.mouseToolMarkerEvent(target);
} else {
// 如果是线,挂上编辑
this.lineEditor(target);
this.mousetool.close();
this.mouseToolPolineEvent(target);
console.log(targetType, "当前对象是管道");
}
this.nowMouseTarget = target;
});
}
// 绘制marker结束后,在marker身上添加的事件
mouseToolMarkerEvent(target) {
// 由于画出来的marker点击会换位置,所以当移入的时候删除绘制事件,移出去在增加绘制事件
target.on("mouseover", (e) => {
// 鼠标事件关闭
this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 这里不方便获取原来的属性,因为position不好解决,还是设置一个值吧
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
this.mousetool.marker(this.mouseToolMarkerOptions);
});
// 点
target.on("click", (e) => {
// 弹框
});
}
// 挂上线以及线的事件
lineEditor(line) {
// line.editor && line.editor.close();
// 当前点击次数,1次为编辑,2次为弹框
line.editorNum = 0;
line.editor = new AMap.PolyEditor(this.map, line);
}
// 绘制管道的时候,挂载的事件
mouseToolPolineEvent(target) {
// 线按下的时候会变成编辑,mousetool事件会清空 移出线的时候 在把polyline事件加上
target.on("mouseover", (e) => {
// 鼠标事件关闭
// this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 有时候按在线上移动地图,map点击事件中mosueToolPolineDownFlag无法归位,在这里归位
this.mosueToolPolineDownFlag = false;
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
// this.mousetool.polyline(this.mouseToolPolineOptions);
});
// 线
target.on("mousedown", (e) => {
const line = e.target;
// mosueTool按下的flag,按在线上,不询问是否删除
this.mosueToolPolineDownFlag = true;
// 按下的时候要关闭事件
this.mousetool.close(false);
// 如果当前状态不是编辑,则进入编辑状态
if (line.editorNum < 1) {
// 打开并且++
line.editor.open();
line.editorNum++;
} else {
// 这里就要弹框了
console.log(line.getPath());
}
});
}
// 设备点击上图开启
mouseAddMarker(markerObj = {}) {
// 清空已经绘制完的对象
this.mousetoolClose(true);
// 记录一下配置项,在挂载点击的时候,需要使用
this.mouseToolMarkerOptions = {
draggable: true,
...markerObj,
};
this.mousetool.marker(this.mouseToolMarkerOptions);
}
// 管线点击上图开启
mouseAddPipeline(pipeObj = {}) {
this.mousetoolClose(true);
// 开始画线
this.mosuetoolPolineFlag = true;
this.mouseToolPolineOptions = {
strokeWeight: 5,
...pipeObj,
};
this.mousetool.polyline(this.mouseToolPolineOptions);
}
// 手动清除map上绘制的对象
mouseToolDrawClear() {
if (this.nowMouseTarget) {
this.map.remove(this.nowMouseTarget);
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
}
// 关闭点击上图事件 true清除之前绘制的图像,false 仅关闭上图事件
mousetoolClose(boolean) {
// 清空地图上的绘制对象的同时,也要清楚这个nowMouseTarget控制对象
if (this.nowMouseTarget) {
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
this.mousetool.close(boolean);
}
/**
*
*
*
*
*
*
* 地图上add设备
*
*
* @description:
* @param {*} deviceData marker的数据
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
addDevice(deviceData) {
const { path } = deviceData;
let device = this.createMarker({
map: this.map,
anchor: "bottom-center",
icon: require("@/assets/bigWindowOld/mapImages/coordinate.svg"),
position: path,
extData: deviceData,
});
// 当前设备
this.mouseAddMarker();
this.nowMouseTarget = device;
this.setCenter(path);
// 设备的事件函数
// this.deviceEvent(device, compontent);
}
deviceEvent(device, compontent) {
device.on("click", (e) => {
const target = e.target;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
if (this.control == 0) {
// this.markerClick(target, compontent);
} else if (this.control == 2) {
// 2是已经上图的设备拥有的编辑功能
} else if (this.control == 3) {
// 3是删除操作
}
});
}
// 创建marker
createMarker(MarkerOptions) {
return new AMap.Marker(MarkerOptions);
}
// 地图上add管道
addPipeLine(objData) {
const { path } = objData;
const pipe = this.createPipeLine({
path,
strokeWeight: 4,
strokeColor: "#000",
extData: objData,
cursor: "pointer",
});
this.map.add(pipe);
this.setCenter(path[0]);
// 当前设备
this.nowMouseTarget = pipe;
}
createPipeLine(pipeLineOptions) {
return new AMap.Polyline(pipeLineOptions);
}
setCenter(path) {
this.map.setCenter(path, true);
}
// 获取路径
getPath() {
if(!this.nowMouseTarget) return;
if (this.nowMouseTarget.type == "AMap.Marker") {
const { lng, lat } = this.nowMouseTarget.getPosition();
return [lng, lat];
} else {
return this.nowMouseTarget?.getPath().map((item) => [item.lng, item.lat]);
}
}
// 搜索位置
positionSearch(id) {
// id 为搜索框id
var autoOptions = {
input: id,
};
AMap.plugin(["AMap.PlaceSearch", "AMap.AutoComplete"], ()=> {
var auto = new AMap.AutoComplete(autoOptions);
var placeSearch = new AMap.PlaceSearch({
map: this.map,
}); //构造地点查询类
auto.on("select", select); //注册监听,当选中某条记录时会触发
function select(e) {
console.log(e)
placeSearch.setCity(e.poi.adcode);
placeSearch.search(e.poi.name); //关键字查询查询
}
});
}
// 销毁map
destroy(){
this.map.destroy();
}
}
/*
* @Author: your name
* @Date: 2022-01-11 13:45:12
* @LastEditTime: 2023-07-19 18:02:31
* @LastEditors: 纪泽龙 jizelong@qq.com
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/utils/mapClass.js
*/
import { pipeColor, svgUrl, svgAlarm } from "@/utils/mapClassForBigOld/config.js";
// 编辑类
// 在地图上新增的设备可以直接编辑,
// 已经保存完成的设备需要点编辑才可以编辑
export class EditorMap {
// 地图的对象实例
map = null;
// 外部传进来的中心店
center = null;
// 父vue的实例
vue = null;
// 操作 新建,编辑,删除,编辑跟删除只对已经在图上的设备有效 默认值:0, 新建:1,编辑:2, 删除: 3。
// 新建的时候会把未保存的线条清空
control = 0;
// 鼠标事件对象,用来将点跟线上图
mousetool = null;
// 当前正在手动绘制的对象
nowMouseTarget = null;
// 当线mousetool线被按下的时候的flag 当线被按下的时候为true,就不询问是否删除了
mosueToolPolineDownFlag = false;
// 绘制marer的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolMarkerOptions = null;
// 绘制poline的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolPolineOptions = null;
// 存放所有的设备的数组集合,这是一个对象,对象里面是各种设备的数组
allDevice = {};
// 存放所有的管道
pipeArr = {};
// 报警设备的对象
alarmObj = {};
// 当前的infowindow的组件
infowindowComponent = null;
// infowindow本身
infowindow = null;
//居民用户-用户列表图层
detectorUserlabelsLayer = null;
//商业用户-用户列表图层
businessDetectorUserlabelsLayer = null;
//调压箱-地图标注层
tyxlabelsLayer = null;
//阀门井-地图标注层
fmjlabelLayer = null;
//场站-地图标注层
czlabelLayer = null;
//监控-地图标注层
videolabelLayer = null;
//餐饮单位液化气用户
deviceUserlableLayer = null;
selarr = [];
constructor(contaienr, config = {}, vue) {
this.map = new AMap.Map(contaienr, {
viewMode: "3D",
center: [114.98,38.18],
layers: [AMap.createDefaultLayer()], // layers 字段为空或者不赋值将会自动创建默认底图。
zoom: 14,
zooms: [3, 20],
...config,
});
const { center } = config;
this.center = center;
this.vue = vue;
this.init(config);
}
init(config) {
// 地图事件
this.mapEvent();
// 手动点线上图准备,编辑模式
this.mouseAddDevice();
// this.mouseAddMarker();
// this.mouseAddPipeline();
// 地图边界
this.map.getCity((res) => {
const city = res.district;
this.mapBound(city, config.maskFLag);
}, this.center);
}
mapBound(city, maskFLag) {
var district = new AMap.DistrictSearch({
extensions: "all", // 返回行政区边界坐标等具体信息
level: "district", // 设置查询行政区级别为 区
});
district.search(city, (status, result) => {
// 获取朝阳区的边界信息
var bounds = result.districtList[0].boundaries;
var polygons = [];
if (bounds) {
for (var i = 0, l = bounds.length; i < l; i++) {
//生成行政区划polygon
// new AMap.Polygon({
// map: this.map,
// strokeWeight: 2,
// path: bounds[i],
// fillOpacity: 1,
// fillColor: "transparent",
// strokeColor: "#09f",
// });
new AMap.Polyline({
map: this.map,
strokeWeight: 4,
strokeColor: "#09f",
path: bounds[i],
});
// polygons.push(polygon);
}
if (maskFLag) {
let mask = new AMap.Polygon({
path: bounds[0], // 边界坐标点集合
// fillColor: "#000000", // 填充色
// fillOpacity: 0.8, // 填充透明度
strokeWeight: 0, // 边框宽度,设为 0 表示没有边框
zIndex: 100, // 显示优先级,越大越靠上层
});
// 添加遮罩层到地图
this.map.add(mask);
// this.map.setMapStyle('amap://styles/dark');
// this.map.setMask([mask]);
}
}
});
}
// map的事件监听
mapEvent() {
this.map.on("click", () => {
// mousetool对象画出的对象的操作
// 如果有手动绘制对象,要手动清楚一下,因为画线的时候不好清除旧线,这其实是用来清楚旧线的
// 当画出来的线被mousedown,不删除,但是mouseToolPipeLineFlag要归位,在移出线的时候统一归位
// 如果对象是marker,直接删除
if (this.nowMouseTarget?.type == "AMap.Marker") {
this.mouseToolDrawClear();
} else {
// 当地图上已经画了线,并且没有点在线上,询问是否删除
if (this.nowMouseTarget && !this.mosueToolPolineDownFlag) {
this.confirm("是否重新绘制管道", { type: "warning" })
.then(() => {
// 删除原来的线
this.mouseToolDrawClear();
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
this.mousetool.polyline(this.mouseToolPolineOptions);
})
.catch(() => {});
}
}
});
this.map.on("moveend", () => {
console.log("地图停止移动");
if (this.flag) {
console.log("弹框");
this.flag = false;
}
//居民用户
if (this.detectorUserlabelsLayer != null) {
const detectorUserHas = this.selarr.indexOf(6) >= 0;
if (detectorUserHas) {
this.detectorUserlabelsLayer.show();
}
}
//商业用户
if (this.businessDetectorUserlabelsLayer != null) {
const businessDetectorUserHas = this.selarr.indexOf(61) >= 0;
if (businessDetectorUserHas) {
this.businessDetectorUserlabelsLayer.show();
}
}
// 调压箱
if (this.tyxlabelsLayer != null) {
const tyxHas = this.selarr.indexOf(2) >= 0;
if (tyxHas) {
this.tyxlabelsLayer.show();
}
}
// 阀门井
if (this.fmjlabelLayer != null) {
const fmjHas = this.selarr.indexOf(3) >= 0;
if (fmjHas) {
this.fmjlabelLayer.show();
}
}
// 场站
if (this.czlabelLayer != null) {
const czHas = this.selarr.indexOf(4) >= 0;
if (czHas) {
this.czlabelLayer.show();
}
}
// 监控
if (this.videolabelLayer != null) {
const videoHas = this.selarr.indexOf(5) >= 0;
if (videoHas) {
this.videolabelLayer.show();
}
}
// 餐饮单位液化气用户
if (this.deviceUserlableLayer != null) {
const deviceUserHas = this.selarr.indexOf(18) >= 0;
if (deviceUserHas) {
this.deviceUserlableLayer.show();
}
}
});
this.map.on("movestart",()=>{
console.log("地图开始移动");
//居民用户
if (this.detectorUserlabelsLayer != null) {
const detectorUserHas = this.selarr.indexOf(6) >= 0;
if (detectorUserHas) {
this.detectorUserlabelsLayer.hide();
}
}
//商业用户
if (this.businessDetectorUserlabelsLayer != null) {
const businessDetectorUserHas = this.selarr.indexOf(61) >= 0;
if (businessDetectorUserHas) {
this.businessDetectorUserlabelsLayer.hide();
}
}
// 调压箱
if (this.tyxlabelsLayer != null) {
const tyxHas = this.selarr.indexOf(2) >= 0;
if (tyxHas) {
this.tyxlabelsLayer.hide();
}
}
// 阀门井
if (this.fmjlabelLayer != null) {
const fmjHas = this.selarr.indexOf(3) >= 0;
if (fmjHas) {
this.fmjlabelLayer.hide();
}
}
// 场站
if (this.czlabelLayer != null) {
const czHas = this.selarr.indexOf(4) >= 0;
if (czHas) {
this.czlabelLayer.hide();
}
}
// 监控
if (this.videolabelLayer != null) {
const videoHas = this.selarr.indexOf(5) >= 0;
if (videoHas) {
this.videolabelLayer.hide();
}
}
// 餐饮单位液化气用户
if (this.deviceUserlableLayer != null) {
const deviceUserHas = this.selarr.indexOf(18) >= 0;
if (deviceUserHas) {
this.deviceUserlableLayer.hide();
}
}
})
// this.map.on('zoomchange', () => {
// //获取当前最新的地图层级
// let Zoom = this.map.getZoom()
// /**
// * 地图层级发生改变后操作
// * */
// console.log(Zoom);
// })
window.panTo = () => {
this.flag = true;
this.map.panTo([116.428285, 39.886129]);
};
}
// 弹框工具
confirm(message, obj) {
return this.vue.$confirm(message, obj);
}
// 改变操作状态
changeControl(num) {
this.control = num;
}
// 点线编辑上图准备
mouseAddDevice() {
this.map.plugin(["AMap.MouseTool"], () => {
this.mousetool = new AMap.MouseTool(this.map);
});
setTimeout(() => {
this.mouseDrawEvent();
}, 2000);
// 挂载绘制结束的事件
}
// 点或者线上图结束后触发的事件
mouseDrawEvent() {
this.mousetool.on("draw", (e) => {
const target = e.obj;
// console.log([target._position.lng, target._position.lat]);
const { type: targetType } = target;
// 当这个点是marker的时候
if (targetType == "AMap.Marker") {
this.mouseToolMarkerEvent(target);
} else {
// 如果是线,挂上编辑
this.lineEditor(target);
this.mousetool.close();
this.mouseToolPolineEvent(target);
console.log(targetType, "当前对象是管道");
}
this.nowMouseTarget = target;
});
}
// 绘制marker结束后,在marker身上添加的事件
mouseToolMarkerEvent(target) {
// 由于画出来的marker点击会换位置,所以当移入的时候删除绘制事件,移出去在增加绘制事件
target.on("mouseover", (e) => {
// 鼠标事件关闭
this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 这里不方便获取原来的属性,因为position不好解决,还是设置一个值吧
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
this.mousetool.marker(this.mouseToolMarkerOptions);
});
// 点
target.on("click", (e) => {
// 弹框
});
}
// 挂上线以及线的事件
lineEditor(line) {
// line.editor && line.editor.close();
// 当前点击次数,1次为编辑,2次为弹框
line.editorNum = 0;
line.editor = new AMap.PolyEditor(this.map, line);
}
// 绘制管道的时候,挂载的事件
mouseToolPolineEvent(target) {
// 线按下的时候会变成编辑,mousetool事件会清空 移出线的时候 在把polyline事件加上
target.on("mouseover", (e) => {
// 鼠标事件关闭
// this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 有时候按在线上移动地图,map点击事件中mosueToolPolineDownFlag无法归位,在这里归位
this.mosueToolPolineDownFlag = false;
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
// this.mousetool.polyline(this.mouseToolPolineOptions);
});
// 线
target.on("mousedown", (e) => {
const line = e.target;
// mosueTool按下的flag,按在线上,不询问是否删除
this.mosueToolPolineDownFlag = true;
// 按下的时候要关闭事件
this.mousetool.close(false);
// 如果当前状态不是编辑,则进入编辑状态
if (line.editorNum < 1) {
// 打开并且++
line.editor.open();
line.editorNum++;
} else {
// 这里就要弹框了
console.log(line.getPath());
}
});
}
// 设备点击上图开启
mouseAddMarker(markerObj = {}) {
// 清空已经绘制完的对象
this.mousetoolClose(true);
// 记录一下配置项,在挂载点击的时候,需要使用
this.mouseToolMarkerOptions = {
draggable: true,
...markerObj,
};
this.mousetool.marker(this.mouseToolMarkerOptions);
}
// 管线点击上图开启
mouseAddPipeline(pipeObj = {}) {
this.mousetoolClose(true);
// 开始画线
this.mosuetoolPolineFlag = true;
this.mouseToolPolineOptions = {
strokeWeight: 5,
...pipeObj,
};
this.mousetool.polyline(this.mouseToolPolineOptions);
}
// 手动清除map上绘制的对象
mouseToolDrawClear() {
if (this.nowMouseTarget) {
this.map.remove(this.nowMouseTarget);
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
}
// 关闭点击上图事件 true清除之前绘制的图像,false 仅关闭上图事件
mousetoolClose(boolean) {
// 清空地图上的绘制对象的同时,也要清楚这个nowMouseTarget控制对象
if (this.nowMouseTarget) {
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
this.mousetool.close(boolean);
}
/**
*
*
*
*
*
*
* 地图上add设备
*
*
* @description:
* @param {*} deviceData marker的数据
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
addDevice(deviceData, compontent, showBool = true) {
const { longitude: lng, latitude: lat, iconType } = deviceData;
const icon = svgUrl[iconType];
let device = this.createMarker({
map: this.map,
anchor: "bottom-center",
icon,
position: [lng, lat],
extData: deviceData,
alwaysRender: false
// label:{
// content:123,
// direction:"top",
// }
});
if (!showBool) {
device.hide();
}
// 如果没有有这个公司的数组,就创建,有就直接push
if (!Array.isArray(this.allDevice[iconType])) {
this.allDevice[iconType] = [];
}
this.allDevice[iconType].push(device);
// 设备的事件函数
this.deviceEvent(device, compontent);
}
deviceEvent(device, compontent) {
device.on("click", (e) => {
const target = e.target;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
if (this.control == 0) {
this.markerClick(target, compontent);
} else if (this.control == 2) {
// 2是已经上图的设备拥有的编辑功能
} else if (this.control == 3) {
// 3是删除操作
}
});
device.on("mouseover", (e) => {
const target = e.target;
const data = target.getExtData();
console.log(data);
const name =
data.nickName ||
data.deviceName ||
data.videoName ||
data.stationName ||
data.time;
target.setLabel({ content: name, direction: "top" });
});
device.on("mouseout", (e) => {
const target = e.target;
const data = target.getExtData();
target.setLabel({ content: "" });
});
}
/** 点击marker出现infowindow
* @description:
* @param {*} target 点击的对象
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
markerClick(target, compontent) {
const deviceExtData = target.getExtData();
const { longitude: lng, latitude: lat } = deviceExtData;
// 创建一个可以控制的组件,将其dom插入infowindow
this.infowindowComponent = this.createInfowindowDom(
this.vue,
this,
deviceExtData,
compontent
);
// 没恩么用,控制台测试的时候用着玩的
window.func = () => {
const { longitude: lng, latitude: lat } = target.getExtData();
const cd = {
id: 1,
name: "9",
lng,
lat,
};
this.infowindowComponentChange(cd);
target.setExtData(cd);
};
this.infowindow = new AMap.InfoWindow({
isCustom: true,
content: this.infowindowComponent.$el,
position: [lng, lat],
// anchor: "top-left",
// offset: [20, -45],
anchor: "middle-left",
offset: [20, -10],
});
this.infowindow.open(this.map);
}
// 创建要加入到infowindow里的
createInfowindowDom(vueRoot, mapClass, deviceData, compontent) {
const Component = this.vue.$Vue.extend(compontent, {});
return new Component({
data() {
return {
// 当前vue实例
vueRoot,
// 自己写的map类
mapClass,
// 数据
deviceData,
};
},
}).$mount();
}
// 当前显示的infowindow内部的数据发生变化,一般在socket传回数据的时候使用
infowindowComponentChange(data) {
this.infowindowComponent.deviceData = data;
}
// 创建marker
createMarker(MarkerOptions) {
return new AMap.Marker(MarkerOptions);
// return new AMap.MarkerClusterer(MarkerOptions);
}
filterSelectPipe(id,mediumComponent,lng, lat) {
this.pipeArr[6].forEach((pipe) => {
const deviceExtData = pipe.getExtData();
if (deviceExtData.pipeId === id) {
//设置颜色
const options = pipe.getOptions();
options.strokeColor = "blue";
// options.strokeWeight =4;
pipe.setOptions(options);
// 创建一个可以控制的组件,将其dom插入infowindow
this.infowindowComponent = this.createInfowindowDom(
this.vue,
this,
deviceExtData,
mediumComponent
);
this.infowindow = new AMap.InfoWindow({
isCustom: true,
content: this.infowindowComponent.$el,
position: [lng, lat],
// anchor: "top-left",
// offset: [20, -15],
anchor: "middle-left",
offset: [20, 0],
});
this.infowindow.open(this.map);
}
})
}
/**
* 地图上添加 餐饮单位液化气用户 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksDeviceUserGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
const hashMap = new Map();
this.deviceUserlableLayer = new AMap.LabelsLayer({
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
type: "image", //图标类型,现阶段只支持 image 类型
image: svgUrl[18], //可访问的图片 URL
size: [44, 49], //图片尺寸
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
this.deviceUserlableLayer.add(markers);
this.map.add(this.deviceUserlableLayer)
if (!showBool) {
this.deviceUserlableLayer.hide();
}
}
}
/**
* 地图上添加监控 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksVideoGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
const hashMap = new Map();
this.videolabelLayer = new AMap.LabelsLayer({
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
type: "image", //图标类型,现阶段只支持 image 类型
image: svgUrl[5], //可访问的图片 URL
size: [44, 49], //图片尺寸
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
this.videolabelLayer.add(markers);
this.map.add(this.videolabelLayer)
if (!showBool) {
this.videolabelLayer.hide();
}
}
}
/**
* 地图上添加场站 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksCzGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
const hashMap = new Map();
this.czlabelLayer = new AMap.LabelsLayer({
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
type: "image", //图标类型,现阶段只支持 image 类型
image: svgUrl[4], //可访问的图片 URL
size: [44, 49], //图片尺寸
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
this.czlabelLayer.add(markers);
this.map.add(this.czlabelLayer)
if (!showBool) {
this.czlabelLayer.hide();
}
}
}
/**
* 地图上添加阀门井 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksFmjGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
const hashMap = new Map();
this.fmjlabelLayer = new AMap.LabelsLayer({
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
type: "image", //图标类型,现阶段只支持 image 类型
image: svgUrl[3], //可访问的图片 URL
size: [44, 49], //图片尺寸
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
this.fmjlabelLayer.add(markers);
this.map.add(this.fmjlabelLayer)
if (!showBool) {
this.fmjlabelLayer.hide();
}
}
}
/**
* 地图上添加调压箱 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} compontent
* @param {*} showBool
*/
labelsLayerMarksTysGoMap(mapData,compontent,showBool = true){
if(mapData != null) {
const hashMap = new Map();
this.tyxlabelsLayer = new AMap.LabelsLayer({
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
type: "image", //图标类型,现阶段只支持 image 类型
image: svgUrl[2], //可访问的图片 URL
size: [44, 49], //图片尺寸
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
mapData.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
this.tyxlabelsLayer.add(markers);
this.map.add(this.tyxlabelsLayer)
if (!showBool) {
this.tyxlabelsLayer.hide();
}
}
}
/**
* 地图上添加用户数据 海量标注 LabelMarker 方式
* @param {*} detectorUserData
* @param {*} component
* @param {*} showBool
*/
labelsLayerMarksDetectorUserList(mapData,compontent,showBool = true){
if(mapData !== null && mapData !== undefined) {
const hashMap = new Map();
for(var key in mapData){
var value = mapData[key];
var jsonValue = JSON.stringify(value);
var jsonValueArr = JSON.parse(jsonValue);
//居民用户
if (key === "6") {
this.detectorUserlabelsLayer = new AMap.LabelsLayer({
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
type: "image", //图标类型,现阶段只支持 image 类型
image: svgUrl[6], //可访问的图片 URL
size: [44, 49], //图片尺寸
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
if(jsonValueArr !== null && jsonValueArr !== undefined) {
jsonValueArr.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
rank: 1, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
}
this.detectorUserlabelsLayer.add(markers);
this.map.add(this.detectorUserlabelsLayer)
if (!showBool) {
this.detectorUserlabelsLayer.hide();
}
//商业用户
} else if (key === "61") {
this.businessDetectorUserlabelsLayer = new AMap.LabelsLayer({
zooms: [3, 20],
zIndex: 1000,
collision: true, //该层内标注是否避让
allowCollision: false, //不同标注层之间是否避让
});
//设置一个图标对象
const icon = {
type: "image", //图标类型,现阶段只支持 image 类型
image: svgUrl[61], //可访问的图片 URL
size: [44, 49], //图片尺寸
anchor: "center", //图片相对 position 的锚点,默认为 bottom-center
};
var markers = [];
if(jsonValueArr !== null && jsonValueArr !== undefined) {
jsonValueArr.forEach(item => {
let longitude = item.longitude;
let latitude = item.latitude;
var userId = item.userId;
icon.userId = userId;
var curData = {
position: [longitude, latitude],
icon: icon,
rank: 2, //避让优先级
};
hashMap.set(JSON.stringify(userId),item);
//创建 LabelMarker
const labelMarker = new AMap.LabelMarker(curData);
// var marker = new AMap.Marker(curData);
markers.push(labelMarker);
labelMarker.on("click", (e) => {
var opts = JSON.stringify(e.data.opts);
var optsObj = JSON.parse(opts);
var userId = JSON.stringify(optsObj.icon.userId);
var extData = hashMap.get(userId);
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
this.massMarksMarkerClick(extData, compontent);
});
});
}
this.businessDetectorUserlabelsLayer.add(markers);
this.map.add(this.businessDetectorUserlabelsLayer)
if (!showBool) {
this.businessDetectorUserlabelsLayer.hide();
}
}
}
}
}
/**
* 地图上添加用户数据 海量点标记 MassMarks 方式
* @param {*} detectorUserData
* @param {*} component
* @param {*} showBool
*/
addMassMarksDetectorUserGoMap(mapData,compontent,showBool = true){
if(mapData !== null && mapData !== undefined) {
var style;
for(var key in mapData){
var value = mapData[key];
var jsonValue = JSON.stringify(value);
var jsonValueArr = JSON.parse(jsonValue);
if ("6" === key) {
style = [{
url: svgUrl[6],
anchor: new AMap.Pixel(3, 3),
size: new AMap.Size(11, 11),
zIndex: 3,
}]
} else if ("61" === key) {
style = [{
url: svgUrl[6],
anchor: new AMap.Pixel(3, 3),
size: new AMap.Size(11, 11),
zIndex: 3,
}]
}
var mass = new AMap.MassMarks(jsonValueArr, {
opacity: 0.8,
zIndex: 111,
cursor: 'pointer',
style: style
});
//先一启动,直接显示
// if (!showBool) {
// mass.hide();
// }
mass.on("click", (e) => {
var data = e.data;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
if (this.control == 0) {
this.massMarksMarkerClick(data, compontent);
} else if (this.control == 2) {
// 2是已经上图的设备拥有的编辑功能
} else if (this.control == 3) {
// 3是删除操作
}
});
mass.setMap(this.map);
}
}
}
/** 点击marker出现infowindow- 大屏端 massMarks设置
* @description:
* @param {*} target 点击的对象
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
massMarksMarkerClick(data, compontent) {
// var detectorUserVO = data.tdetectorUserVO;
// var lng = lnglatArray[0];
// var lat = lnglatArray[1];
// var detectorUserVO = {"userId":159843,"iconType":null,"userStatus":null,"nickName":"曾宪成","userType":"2","detectorCountList":[{"userId":159843,"iconType":null,"userStatus":null,"nickName":"曾宪成","userType":"2","detectorCountList":null,"detectorType":"工业探测器","detectorCount":1,"onLineNum":1,"offLineNum":0,"historyAlarmNum":0,"cancelAlarmNum":0,"processingAlarmNum":0,"address":"河北省-廊坊市-三河市-泃阳镇老厨小吃","longitude":117.06009,"latitude":39.991257,"linkman":"曾宪成","phone":"13172132000","email":null}],"detectorType":"工业探测器","detectorCount":1,"onLineNum":1,"offLineNum":0,"historyAlarmNum":0,"cancelAlarmNum":0,"processingAlarmNum":0,"address":"河北省-廊坊市-三河市-泃阳镇老厨小吃","longitude":117.06009,"latitude":39.991257,"linkman":"曾宪成","phone":"13172132000","email":null}
let lng = data.longitude;
let lat = data.latitude;
// 创建一个可以控制的组件,将其dom插入infowindow
this.infowindowComponent = this.createInfowindowDom(
this.vue,
this,
data,
compontent
);
this.infowindow = new AMap.InfoWindow({
isCustom: true,
content: this.infowindowComponent.$el,
position: [lng, lat],
anchor: "middle-left",
offset: [20, -10],
});
this.infowindow.open(this.map);
}
// 地图上add管道
addMediumPipeLine(objData, component,mediumConponent) {
const { path, pipePressure, iconType ,id} = objData;
// 根据压力获取颜色
const color = pipeColor[pipePressure];
const pipe = this.createPipeLine({
id:id,
path: eval(path),
strokeWeight: objData.strokeWeight || 2,
strokeColor: color,
extData: objData,
cursor: "pointer",
});
this.map.add(pipe);
// pipe.hide();
if (!Array.isArray(this.pipeArr[iconType])) {
this.pipeArr[iconType] = [];
}
this.pipeArr[iconType].push(pipe);
if (pipePressure == 1 ){
this.pipeEvent(pipe, mediumConponent);
} else {
this.pipeEvent(pipe, component);
}
};
// 地图上add管道
addPipeLine(objData, component) {
const { path, pipePressure, iconType } = objData;
// 根据压力获取颜色
const color = pipeColor[pipePressure];
const pipe = this.createPipeLine({
path: eval(path),
strokeWeight: objData.strokeWeight || 4,
strokeColor: color,
extData: objData,
cursor: "pointer",
});
this.map.add(pipe);
// pipe.hide();
if (!Array.isArray(this.pipeArr[iconType])) {
this.pipeArr[iconType] = [];
}
this.pipeArr[iconType].push(pipe);
// console.log(this.pipeArr);
// this.map.panTo([path[0][0], path[0][1]]);
this.pipeEvent(pipe, component);
}
createPipeLine(pipeLineOptions) {
return new AMap.Polyline(pipeLineOptions);
}
pipeEvent(pipe, compontent) {
pipe.on("mouseover", (e) => {
const target = e.target;
// 获取当前颜色
const options = target.getOptions();
options.strokeColor = "blue";
// options.strokeWeight =4;
target.setOptions(options);
});
pipe.on("mouseout", (e) => {
if(this.infowindow) {
var infowindowOptions = this.infowindow.getOptions();
if (infowindowOptions.visible){
var pipeData = this.infowindowComponent.deviceData;
const target = e.target;
var clickPipeId = pipeData.pipeId;
const { pipeId } = target.getExtData();
if (clickPipeId === pipeId) return;
}
}
const target = e.target;
// 根据管道压力获取颜色
const { pipePressure } = target.getExtData();
const color = pipeColor[pipePressure];
// 获取当前颜色
const options = target.getOptions();
options.strokeColor = color;
// options.strokeWeight =2;
target.setOptions(options);
});
pipe.on("click", (e) => {
const target = e.target;
target.lnglat = e.lnglat;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
if (this.control == 0) {
this.pipeClick(target, compontent);
} else if (this.control == 2) {
// 2是已经上图的设备拥有的编辑功能
} else if (this.control == 3) {
// 3是删除操作
}
});
}
pipeClick(target, compontent) {
const deviceExtData = target.getExtData();
const { lng, lat } = target.lnglat;
// 创建一个可以控制的组件,将其dom插入infowindow
this.infowindowComponent = this.createInfowindowDom(
this.vue,
this,
deviceExtData,
compontent
);
// 没恩么用,控制台测试的时候用着玩的
// window.func = () => {
// const { lng, lat } = target.getExtData();
// const cd = {
// id: 1,
// name: "9",
// lng,
// lat,
// };
// this.infowindowComponentChange(cd);
// target.setExtData(cd);
// };
this.infowindow = new AMap.InfoWindow({
isCustom: true,
content: this.infowindowComponent.$el,
position: [lng, lat],
// anchor: "top-left",
// offset: [20, -15],
anchor: "middle-left",
offset: [20, 0],
});
this.infowindow.open(this.map);
}
infowindowClose() {
if (!this.infowindow) return;
//关闭的时候恢复颜色
var data = this.infowindowComponent.deviceData;
var pipePressure = data.pipePressure;
var id = data.pipeId;
const color = pipeColor[pipePressure];
this.pipeArr[6].forEach((pipe) => {
const deviceExtData = pipe.getExtData();
if (deviceExtData.pipeId === id) {
//设置颜色
const options = pipe.getOptions();
options.strokeColor = color;
// options.strokeWeight =4;
pipe.setOptions(options);
}
});
this.infowindow.close();
}
// 设备以及公司过滤
allfilter(companyArr, typeArr) {
for (let pipeItem in this.pipeArr) {
this.pipeArr[pipeItem].forEach((pipe) => {
const data = pipe.getExtData();
if (companyArr.indexOf(data.companyType + "") >= 0) {
pipe.show();
} else {
pipe.hide();
}
});
}
for (let deviceItem in this.allDevice) {
this.allDevice[deviceItem].forEach((device) => {
const data = device.getExtData();
// 设备过滤受到bigwindow页面的的两种制约,companyArr, typeArr 两个数组制约显示隐藏
// 燃气没有公司,所以没有device.companyType不收到公司的控制
const companyHas = companyArr.indexOf(data.companyType + "") >= 0;
// 设备存在 受到设备按钮限制
const deviceHas = typeArr.indexOf(+data.iconType) >= 0;
// 如果是燃气公司的话,不受按钮限制
const enterprise = data.iconType == 7 || data.iconType == 8;
// 必须设备存在数组里,才会显示设备 !data.companyType代表用户不受公司制约
if (enterprise || (deviceHas && (companyHas || !data.companyType))) {
device.show();
} else {
device.hide();
}
});
}
// 判断是否需要显示 居民用户
const detectorUserHas = typeArr.indexOf(6) >= 0;
this.selarr = typeArr;
if (this.detectorUserlabelsLayer != null) {
if (detectorUserHas) {
this.detectorUserlabelsLayer.show();
} else {
this.detectorUserlabelsLayer.hide();
}
}
// 判断是否需要显示 商业用户
const businessDetectorUserHas = typeArr.indexOf(61) >= 0;
if (this.businessDetectorUserlabelsLayer != null) {
if (businessDetectorUserHas) {
this.businessDetectorUserlabelsLayer.show();
} else {
this.businessDetectorUserlabelsLayer.hide();
}
}
//判断是否需要显示 调压箱
const tyxHas = typeArr.indexOf(2) >= 0;
if (this.tyxlabelsLayer != null) {
if (tyxHas) {
this.tyxlabelsLayer.show();
} else {
this.tyxlabelsLayer.hide();
}
}
//判断是否需要显示 阀门井
const fmjHas = typeArr.indexOf(3) >= 0;
if (this.fmjlabelLayer != null) {
if (fmjHas) {
this.fmjlabelLayer.show();
} else {
this.fmjlabelLayer.hide();
}
}
//判断是否需要显示 场站
const czHas = typeArr.indexOf(4) >= 0;
if (this.czlabelLayer != null) {
if (czHas) {
this.czlabelLayer.show();
} else {
this.czlabelLayer.hide();
}
}
//判断是否需要显示 监控
const videoHas = typeArr.indexOf(5) >= 0;
if (this.videolabelLayer != null) {
if (videoHas) {
this.videolabelLayer.show();
} else {
this.videolabelLayer.hide();
}
}
//判断是否需要显示 餐饮单位液化气用户
const deviceUserHas = typeArr.indexOf(18) >= 0;
if (this.deviceUserlableLayer != null) {
if (deviceUserHas) {
this.deviceUserlableLayer.show();
} else {
this.deviceUserlableLayer.hide();
}
}
}
// 普通调用方法
// 设备报警
deviceAlarm(obj) {
// 设备的类型
const { iconType } = obj;
const publicId = obj.userId || obj.deviceId;
// 找到这个设备所属的空间
const device = this.allDevice[iconType].filter(
(item) =>
(item.getExtData().userId || item.getExtData().deviceId) == publicId
)[0];
// 更改的icon
const icon = svgAlarm[iconType];
device.setIcon(icon);
device.setzIndex(13);
// 将旧的值缓存一下
// device.oldData = device.getExtData();
// device.setExtData(obj);
// 可能出现infoWindow数据变化
this.alarmInfowindowChange(obj);
if (!this.alarmObj[iconType]) {
this.alarmObj[iconType] = [];
}
const ind = this.alarmObj[iconType].indexOf(publicId);
if (ind < 0) {
this.alarmObj[iconType].push(publicId);
}
}
// 报警时候,可能发生infowindowComponent存在,也要变化
alarmInfowindowChange(obj) {
if (!this.infowindowComponent) return;
// 如果infowindow是打开的,就改变里面的数据 必须是 调压箱2 阀门3 用户6 才会发生变化电话
const infowindowDeviceType = [2, 3, 6].includes(
this.infowindowComponent.deviceData.iconType
);
// 如果存在userId就用userId,如果存在deviceId就用deviceId
const infowindowDeviceId =
this.infowindowComponent.deviceData.userId ||
this.infowindowComponent.deviceData.deviceId;
// 如果存在userId就用userId,如果存在deviceId就用deviceId
const objId = obj.userId || obj.deviceId;
// 如果两个值匹配,才可以改变infowindow身上的组件
const infowindowComponentHas = infowindowDeviceId == objId;
if (
this.infowindowComponent &&
infowindowDeviceType &&
infowindowComponentHas
) {
// this.infowindowComponentChange(obj);
if (this.infowindowComponent.http) {
this.infowindowComponent.myHttp();
}
}
}
//如果传过来的报警设备中,有不在deviceAlarm中,就是恢复的设备恢复
relieveAlarm(alarmObj) {
// 把报警数组改变结构,如果有userId就是用户,如果有deviceId就是其他设备
const httpObj = {};
alarmObj.forEach((item) => {
const publicId = item.userId || item.deviceId;
if (!Array.isArray(httpObj[item.iconType])) {
httpObj[item.iconType] = [];
}
httpObj[item.iconType].push(publicId);
});
// 循环现有报警设备
for (let iconType in this.alarmObj) {
const arr = this.alarmObj[iconType];
// 循环现有报警设备
for (let i = 0; i < arr.length; i++) {
// 看看现有报警设备中有没有不在 报警数组中的值,有就恢复可能是userId,也可能是deviceId
const publicId = arr[i];
// 看看接口传来的数据中还有没有这些Id,如果没有了,就是修好了
const hasId = httpObj[iconType]?.includes(publicId);
// 如果已经不在报警数组中,就要去大数组中找他,利用userId
// 如果id不存在了,说明不报警了
if (!hasId) {
// 过滤出来这个要恢复的设备
const device = this.allDevice[iconType].filter(
(item) =>
(item.getExtData().userId || item.getExtData().deviceId) ==
publicId
)[0];
// 恢复
const icon = svgUrl[iconType];
device.setIcon(icon);
// 赋值
// const deviceData = { ...device.oldData };
// device.setExtData(deviceData);
// device.oldData = null;
// 如果infowindow是打开的
this.alarmInfowindowChange(device.getExtData());
// 在arr中删掉
arr.splice(i, 1);
// 由于删掉了当前,所以要--恢复位置
i--;
}
}
}
}
// ws协议方法
wsAlarm(obj) {
const { iconType, userId, userStatus } = obj;
const decice = this.allDevice[iconType].filter(
(item) => item.getExtData().userId == userId
)[0];
let icon = null;
// 2报警,1恢复
if (userStatus == 2) {
icon = svgAlarm[iconType];
device.oldData = device.getExtData();
device.setExtData(obj);
} else if (userStatus == 1) {
icon = svgUrl[iconType];
const oldData = device.oldData;
device.setExtData(oldData);
device.oldData = null;
}
decice.setIcon(icon);
}
// 卫星图切换
satellite = null;
changeMap(bool) {
// 卫星,
if (!bool) {
if (this.satellite) return;
this.satellite = new AMap.TileLayer.Satellite();
this.map.addLayer(this.satellite);
} else {
if (this.satellite) {
this.map.removeLayer(this.satellite);
this.satellite = null;
}
}
}
// 轨迹回放
/**
* @description:
* @param {*} vehicleId 设备id
* @param {*} path 轨迹回访率丼
* @return {*}
*/
backTrack(vehicleId, path, times, component) {
this.infowindowClose();
AMap.plugin("AMap.MoveAnimation", () => {
let marker = this.allDevice[9].filter(
(item) => item.getExtData().vehicleId == vehicleId
)[0];
// 绘制轨迹
marker.polyline = new AMap.Polyline({
map: this.map,
path,
showDir: true,
strokeColor: "#28F", //线颜色
// strokeOpacity: 1, //线透明度
strokeWeight: 6, //线宽
// strokeStyle: "solid" //线样式
});
marker.passedPolyline = new AMap.Polyline({
map: this.map,
strokeColor: "#AF5", //线颜色
strokeWeight: 6, //线宽
});
marker.on("moving", (e) => {
marker.passedPolyline.setPath(e.passedPath);
// this.map.setCenter(e.target.getPosition(), true);
// console.log(getPosition());
});
// 每个path的点
// marker.pointArr = [];
// carTarget
//点击的时候,先传进来一个点
const carPathData = { ...marker.getExtData(), time: times[0] };
carPathData.iconType = 14;
this.addDevice(carPathData, component);
// marker.pointArr.push(point);
marker.on("moveend", (e) => {
// this.addDevice(carPathData,carBackComponent);
// 如果不是最后一个点,就创建一个新的worderpoint,如果是就不创建,并且把自身删除
let z = {
longitude: e.pos[0],
latitude: e.pos[1],
iconType: 14,
time: times[e.index],
};
// if (e.index == path.length - 1) {
// point = this.addDevice(z, null);
// } else {
this.addDevice(z, component);
// workPoint.infoWindow.open(map,e.passedPos);
// }
console.log("定点", e);
});
marker.moveAlong(path, {
// 每一段的时长
duration: 8000, //可根据实际采集时间间隔设置
// JSAPI2.0 是否延道路自动设置角度在 moveAlong 里设置
autoRotation: true,
});
});
}
setCenter(path) {
this.map.setCenter(path, true);
}
clearbackTrack(vehicleId) {
// let marker = this.allDevice[9].filter(
// (item) => item.getExtData().vehicleId == vehicleId
// )[0];
this.allDevice["9"]?.forEach((item) => {
if (item) {
// 停止运动
item.stopMove();
// 删除每个点
console.log(item.pointArr);
if (item.polyline) {
this.map.remove(item.polyline);
}
if (item.passedPolyline) {
this.map.remove(item.passedPolyline);
}
this.map.remove(item);
}
});
// 最后把数组清空
this.allDevice["9"] = [];
// 把car的路径点也清空
this.allDevice["14"]?.forEach((iten) => {
this.map.remove(iten);
});
this.allDevice["14"] = [];
this.infowindowClose();
}
}
/*
* @Author: your name
* @Date: 2022-01-11 13:45:12
* @LastEditTime: 2022-03-22 10:35:13
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/utils/mapClass.js
*/
import { pipeColor, svgUrl, svgAlarm } from "@/utils/mapClassForBigOld/config.js";
// 编辑类
// 在地图上新增的设备可以直接编辑,
// 已经保存完成的设备需要点编辑才可以编辑
export class EditorMap {
// 地图的对象实例
map = null;
// 外部传进来的中心店
center = null;
// 父vue的实例
vue = null;
// 操作 新建,编辑,删除,编辑跟删除只对已经在图上的设备有效 默认值:0, 新建:1,编辑:2, 删除: 3。
// 新建的时候会把未保存的线条清空
control = 0;
// 鼠标事件对象,用来将点跟线上图
mousetool = null;
// 当前正在手动绘制的对象
nowMouseTarget = null;
// 当线mousetool线被按下的时候的flag 当线被按下的时候为true,就不询问是否删除了
mosueToolPolineDownFlag = false;
// 绘制marer的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolMarkerOptions = null;
// 绘制poline的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolPolineOptions = null;
// 存放所有的设备的数组集合,这是一个对象,对象里面是各种设备的数组
allDevice = {};
// 存放所有的管道
pipeArr = {};
// 报警设备的对象
alarmObj = {};
// 当前的infowindow的组件
infowindowComponent = null;
// infowindow本身
infowindow = null;
constructor(contaienr, config = {}, vue) {
this.map = new AMap.Map(contaienr, {
viewMode: "3D",
center: [114.196007, 38.260288],
layers: [AMap.createDefaultLayer()], // layers 字段为空或者不赋值将会自动创建默认底图。
zoom: 14,
...config,
});
const { center } = config;
this.center = center;
this.vue = vue;
this.init();
}
init() {
// 地图事件
this.mapEvent();
// 手动点线上图准备,编辑模式
this.mouseAddDevice();
// this.mouseAddMarker();
// this.mouseAddPipeline();
// 地图边界
this.map.getCity((res) => {
const city = res.district;
this.mapBound(city);
}, this.center);
}
mapBound(city) {
var district = new AMap.DistrictSearch({
extensions: "all", // 返回行政区边界坐标等具体信息
level: "district", // 设置查询行政区级别为 区
});
district.search(city, (status, result) => {
// 获取朝阳区的边界信息
var bounds = result.districtList[0].boundaries;
var polygons = [];
console.log("boundsboundsboundsboundsbounds", bounds);
if (bounds) {
for (var i = 0, l = bounds.length; i < l; i++) {
//生成行政区划polygon
// new AMap.Polygon({
// map: this.map,
// strokeWeight: 2,
// path: bounds[i],
// fillOpacity: 1,
// fillColor: "transparent",
// strokeColor: "#09f",
// });
new AMap.Polyline({
map: this.map,
strokeWeight: 4,
strokeColor: "#09f",
path: bounds[i],
});
// polygons.push(polygon);
}
}
});
}
// map的事件监听
mapEvent() {
this.map.on("click", () => {
// mousetool对象画出的对象的操作
// 如果有手动绘制对象,要手动清楚一下,因为画线的时候不好清除旧线,这其实是用来清楚旧线的
// 当画出来的线被mousedown,不删除,但是mouseToolPipeLineFlag要归位,在移出线的时候统一归位
// 如果对象是marker,直接删除
if (this.nowMouseTarget?.type == "AMap.Marker") {
this.mouseToolDrawClear();
} else {
// 当地图上已经画了线,并且没有点在线上,询问是否删除
if (this.nowMouseTarget && !this.mosueToolPolineDownFlag) {
this.confirm("是否重新绘制管道", { type: "warning" })
.then(() => {
// 删除原来的线
this.mouseToolDrawClear();
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
this.mousetool.polyline(this.mouseToolPolineOptions);
})
.catch(() => {});
}
}
});
this.map.on("moveend", () => {
console.log("地图停止移动");
if (this.flag) {
console.log("弹框");
this.flag = false;
}
});
window.panTo = () => {
this.flag = true;
this.map.panTo([116.428285, 39.886129]);
};
}
// 弹框工具
confirm(message, obj) {
return this.vue.$confirm(message, obj);
}
// 改变操作状态
changeControl(num) {
this.control = num;
}
// 点线编辑上图准备
mouseAddDevice() {
this.map.plugin(["AMap.MouseTool"], () => {
this.mousetool = new AMap.MouseTool(this.map);
});
// 挂载绘制结束的事件
this.mouseDrawEvent();
}
// 点或者线上图结束后触发的事件
mouseDrawEvent() {
this.mousetool.on("draw", (e) => {
const target = e.obj;
// console.log([target._position.lng, target._position.lat]);
const { type: targetType } = target;
// 当这个点是marker的时候
if (targetType == "AMap.Marker") {
this.mouseToolMarkerEvent(target);
} else {
// 如果是线,挂上编辑
this.lineEditor(target);
this.mousetool.close();
this.mouseToolPolineEvent(target);
console.log(targetType, "当前对象是管道");
}
this.nowMouseTarget = target;
});
}
// 绘制marker结束后,在marker身上添加的事件
mouseToolMarkerEvent(target) {
// 由于画出来的marker点击会换位置,所以当移入的时候删除绘制事件,移出去在增加绘制事件
target.on("mouseover", (e) => {
// 鼠标事件关闭
this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 这里不方便获取原来的属性,因为position不好解决,还是设置一个值吧
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
this.mousetool.marker(this.mouseToolMarkerOptions);
});
// 点
target.on("click", (e) => {
// 弹框
});
}
// 挂上线以及线的事件
lineEditor(line) {
// line.editor && line.editor.close();
// 当前点击次数,1次为编辑,2次为弹框
line.editorNum = 0;
line.editor = new AMap.PolyEditor(this.map, line);
}
// 绘制管道的时候,挂载的事件
mouseToolPolineEvent(target) {
// 线按下的时候会变成编辑,mousetool事件会清空 移出线的时候 在把polyline事件加上
target.on("mouseover", (e) => {
// 鼠标事件关闭
// this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 有时候按在线上移动地图,map点击事件中mosueToolPolineDownFlag无法归位,在这里归位
this.mosueToolPolineDownFlag = false;
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
// this.mousetool.polyline(this.mouseToolPolineOptions);
});
// 线
target.on("mousedown", (e) => {
const line = e.target;
// mosueTool按下的flag,按在线上,不询问是否删除
this.mosueToolPolineDownFlag = true;
// 按下的时候要关闭事件
this.mousetool.close(false);
// 如果当前状态不是编辑,则进入编辑状态
if (line.editorNum < 1) {
// 打开并且++
line.editor.open();
line.editorNum++;
} else {
// 这里就要弹框了
console.log(line.getPath());
}
});
}
// 设备点击上图开启
mouseAddMarker(markerObj = {}) {
// 清空已经绘制完的对象
this.mousetoolClose(true);
// 记录一下配置项,在挂载点击的时候,需要使用
this.mouseToolMarkerOptions = {
draggable: true,
...markerObj,
};
this.mousetool.marker(this.mouseToolMarkerOptions);
}
// 管线点击上图开启
mouseAddPipeline(pipeObj = {}) {
this.mousetoolClose(true);
// 开始画线
this.mosuetoolPolineFlag = true;
this.mouseToolPolineOptions = {
strokeWeight: 5,
...pipeObj,
};
this.mousetool.polyline(this.mouseToolPolineOptions);
}
// 手动清除map上绘制的对象
mouseToolDrawClear() {
if (this.nowMouseTarget) {
this.map.remove(this.nowMouseTarget);
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
}
// 关闭点击上图事件 true清除之前绘制的图像,false 仅关闭上图事件
mousetoolClose(boolean) {
// 清空地图上的绘制对象的同时,也要清楚这个nowMouseTarget控制对象
if (this.nowMouseTarget) {
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
this.mousetool.close(boolean);
}
/**
*
*
*
*
*
*
* 地图上add设备
*
*
* @description:
* @param {*} deviceData marker的数据
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
addDevice(deviceData, compontent) {
const { longitude: lng, latitude: lat, iconType } = deviceData;
const icon = svgUrl[iconType];
console.log("icon", icon);
let device = this.createMarker({
map: this.map,
anchor: "bottom-center",
icon,
position: [lng, lat],
extData: deviceData,
// label:{
// content:123,
// direction:"top",
// }
});
// device.hide();
// 如果没有有这个公司的数组,就创建,有就直接push
if (!Array.isArray(this.allDevice[iconType])) {
this.allDevice[iconType] = [];
}
this.allDevice[iconType].push(device);
// 设备的事件函数
this.deviceEvent(device, compontent);
}
deviceEvent(device, compontent) {
device.on("click", (e) => {
const target = e.target;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
if (this.control == 0) {
this.markerClick(target, compontent);
} else if (this.control == 2) {
// 2是已经上图的设备拥有的编辑功能
} else if (this.control == 3) {
// 3是删除操作
}
});
device.on("mouseover", (e) => {
const target = e.target;
const data = target.getExtData();
console.log(data);
const name =
data.nickName ||
data.deviceName ||
data.videoName ||
data.stationName ||
data.time;
target.setLabel({ content: name, direction: "top" });
});
device.on("mouseout", (e) => {
const target = e.target;
const data = target.getExtData();
target.setLabel({ content: "" });
});
}
/** 点击marker出现infowindow
* @description:
* @param {*} target 点击的对象
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
markerClick(target, compontent) {
const deviceExtData = target.getExtData();
const { longitude: lng, latitude: lat } = deviceExtData;
// 创建一个可以控制的组件,将其dom插入infowindow
this.infowindowComponent = this.createInfowindowDom(
this.vue,
this,
deviceExtData,
compontent
);
// 没恩么用,控制台测试的时候用着玩的
window.func = () => {
const { longitude: lng, latitude: lat } = target.getExtData();
const cd = {
id: 1,
name: "9",
lng,
lat,
};
this.infowindowComponentChange(cd);
target.setExtData(cd);
};
this.infowindow = new AMap.InfoWindow({
isCustom: true,
content: this.infowindowComponent.$el,
position: [lng, lat],
// anchor: "top-left",
// offset: [20, -45],
anchor: "middle-left",
offset: [20, -10],
});
this.infowindow.open(this.map);
}
// 创建要加入到infowindow里的
createInfowindowDom(vueRoot, mapClass, deviceData, compontent) {
const Component = this.vue.$Vue.extend(compontent, {});
return new Component({
data() {
return {
// 当前vue实例
vueRoot,
// 自己写的map类
mapClass,
// 数据
deviceData,
};
},
}).$mount();
}
// 当前显示的infowindow内部的数据发生变化,一般在socket传回数据的时候使用
infowindowComponentChange(data) {
this.infowindowComponent.deviceData = data;
}
// 创建marker
createMarker(MarkerOptions) {
return new AMap.Marker(MarkerOptions);
}
// 地图上add管道
addPipeLine(objData, component) {
const { path, pipePressure, iconType } = objData;
// 根据压力获取颜色
const color = pipeColor[pipePressure + 1];
const pipe = this.createPipeLine({
path: eval(path),
strokeWeight: 4,
strokeColor: color,
extData: objData,
cursor: "pointer",
});
this.map.add(pipe);
// pipe.hide();
if (!Array.isArray(this.pipeArr[iconType])) {
this.pipeArr[iconType] = [];
}
this.pipeArr[iconType].push(pipe);
// console.log(this.pipeArr);
// this.map.panTo([path[0][0], path[0][1]]);
this.pipeEvent(pipe, component);
}
createPipeLine(pipeLineOptions) {
return new AMap.Polyline(pipeLineOptions);
}
pipeEvent(pipe, compontent) {
pipe.on("mouseover", (e) => {
const target = e.target;
// 获取当前颜色
const options = target.getOptions();
options.strokeColor = "blue";
target.setOptions(options);
});
pipe.on("mouseout", (e) => {
const target = e.target;
// 根据管道压力获取颜色
const { pipePressure } = target.getExtData();
const color = pipeColor[pipePressure + 1];
// 获取当前颜色
const options = target.getOptions();
options.strokeColor = color;
target.setOptions(options);
});
pipe.on("click", (e) => {
const target = e.target;
target.lnglat = e.lnglat;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
if (this.control == 0) {
this.pipeClick(target, compontent);
} else if (this.control == 2) {
// 2是已经上图的设备拥有的编辑功能
} else if (this.control == 3) {
// 3是删除操作
}
});
}
pipeClick(target, compontent) {
const deviceExtData = target.getExtData();
const { lng, lat } = target.lnglat;
// 创建一个可以控制的组件,将其dom插入infowindow
this.infowindowComponent = this.createInfowindowDom(
this.vue,
this,
deviceExtData,
compontent
);
// 没恩么用,控制台测试的时候用着玩的
// window.func = () => {
// const { lng, lat } = target.getExtData();
// const cd = {
// id: 1,
// name: "9",
// lng,
// lat,
// };
// this.infowindowComponentChange(cd);
// target.setExtData(cd);
// };
this.infowindow = new AMap.InfoWindow({
isCustom: true,
content: this.infowindowComponent.$el,
position: [lng, lat],
// anchor: "top-left",
// offset: [20, -15],
anchor: "middle-left",
offset: [20, 0],
});
this.infowindow.open(this.map);
}
infowindowClose() {
if (!this.infowindow) return;
this.infowindow.close();
}
// 设备以及公司过滤
allfilter(companyArr, typeArr) {
for (let pipeItem in this.pipeArr) {
this.pipeArr[pipeItem].forEach((pipe) => {
const data = pipe.getExtData();
if (companyArr.indexOf(data.companyType + "") >= 0) {
pipe.show();
} else {
pipe.hide();
}
});
}
for (let deviceItem in this.allDevice) {
this.allDevice[deviceItem].forEach((device) => {
const data = device.getExtData();
// 设备过滤受到bigwindow页面的的两种制约,companyArr, typeArr 两个数组制约显示隐藏
// 燃气没有公司,所以没有device.companyType不收到公司的控制
const companyHas = companyArr.indexOf(data.companyType + "") >= 0;
// 设备存在 受到设备按钮限制
const deviceHas = typeArr.indexOf(+data.iconType) >= 0;
// 如果是燃气公司的话,不受按钮限制
const enterprise = data.iconType == 7 || data.iconType == 8;
// 必须设备存在数组里,才会显示设备 !data.companyType代表用户不受公司制约
if (enterprise || (deviceHas && (companyHas || !data.companyType))) {
device.show();
} else {
device.hide();
}
});
}
}
// 普通调用方法
// 设备报警
deviceAlarm(obj) {
// 设备的类型
const { iconType } = obj;
const publicId = obj.userId || obj.deviceId;
// 找到这个设备所属的空间
const device = this.allDevice[iconType].filter(
(item) =>
(item.getExtData().userId || item.getExtData().deviceId) == publicId
)[0];
// 更改的icon
const icon = svgAlarm[iconType];
device.setIcon(icon);
device.setzIndex(13);
// 将旧的值缓存一下
// device.oldData = device.getExtData();
// device.setExtData(obj);
// 可能出现infoWindow数据变化
this.alarmInfowindowChange(obj);
if (!this.alarmObj[iconType]) {
this.alarmObj[iconType] = [];
}
const ind = this.alarmObj[iconType].indexOf(publicId);
if (ind < 0) {
this.alarmObj[iconType].push(publicId);
}
}
// 报警时候,可能发生infowindowComponent存在,也要变化
alarmInfowindowChange(obj) {
if (!this.infowindowComponent) return;
// 如果infowindow是打开的,就改变里面的数据 必须是 调压箱2 阀门3 用户6 才会发生变化电话
const infowindowDeviceType = [2, 3, 6].includes(
this.infowindowComponent.deviceData.iconType
);
// 如果存在userId就用userId,如果存在deviceId就用deviceId
const infowindowDeviceId =
this.infowindowComponent.deviceData.userId ||
this.infowindowComponent.deviceData.deviceId;
// 如果存在userId就用userId,如果存在deviceId就用deviceId
const objId = obj.userId || obj.deviceId;
// 如果两个值匹配,才可以改变infowindow身上的组件
const infowindowComponentHas = infowindowDeviceId == objId;
if (
this.infowindowComponent &&
infowindowDeviceType &&
infowindowComponentHas
) {
// this.infowindowComponentChange(obj);
if (this.infowindowComponent.http) {
this.infowindowComponent.myHttp();
}
}
}
//如果传过来的报警设备中,有不在deviceAlarm中,就是恢复的设备恢复
relieveAlarm(alarmObj) {
// 把报警数组改变结构,如果有userId就是用户,如果有deviceId就是其他设备
const httpObj = {};
alarmObj.forEach((item) => {
const publicId = item.userId || item.deviceId;
if (!Array.isArray(httpObj[item.iconType])) {
httpObj[item.iconType] = [];
}
httpObj[item.iconType].push(publicId);
});
// 循环现有报警设备
for (let iconType in this.alarmObj) {
const arr = this.alarmObj[iconType];
// 循环现有报警设备
for (let i = 0; i < arr.length; i++) {
// 看看现有报警设备中有没有不在 报警数组中的值,有就恢复可能是userId,也可能是deviceId
const publicId = arr[i];
// 看看接口传来的数据中还有没有这些Id,如果没有了,就是修好了
const hasId = httpObj[iconType]?.includes(publicId);
// 如果已经不在报警数组中,就要去大数组中找他,利用userId
// 如果id不存在了,说明不报警了
if (!hasId) {
// 过滤出来这个要恢复的设备
const device = this.allDevice[iconType].filter(
(item) =>
(item.getExtData().userId || item.getExtData().deviceId) ==
publicId
)[0];
// 恢复
const icon = svgUrl[iconType];
device.setIcon(icon);
// 赋值
// const deviceData = { ...device.oldData };
// device.setExtData(deviceData);
// device.oldData = null;
// 如果infowindow是打开的
this.alarmInfowindowChange(device.getExtData());
// 在arr中删掉
arr.splice(i, 1);
// 由于删掉了当前,所以要--恢复位置
i--;
}
}
}
}
// ws协议方法
wsAlarm(obj) {
const { iconType, userId, userStatus } = obj;
const decice = this.allDevice[iconType].filter(
(item) => item.getExtData().userId == userId
)[0];
let icon = null;
// 2报警,1恢复
if (userStatus == 2) {
icon = svgAlarm[iconType];
device.oldData = device.getExtData();
device.setExtData(obj);
} else if (userStatus == 1) {
icon = svgUrl[iconType];
const oldData = device.oldData;
device.setExtData(oldData);
device.oldData = null;
}
decice.setIcon(icon);
}
// 卫星图切换
satellite = null;
changeMap(bool) {
// 卫星,
if (!bool) {
if (this.satellite) return;
this.satellite = new AMap.TileLayer.Satellite();
this.map.addLayer(this.satellite);
} else {
if (this.satellite) {
this.map.removeLayer(this.satellite);
this.satellite = null;
}
}
}
// 轨迹回放
/**
* @description:
* @param {*} vehicleId 设备id
* @param {*} path 轨迹回访率丼
* @return {*}
*/
backTrack(vehicleId, path, times,component) {
this.infowindowClose();
AMap.plugin("AMap.MoveAnimation", () => {
let marker = this.allDevice[9].filter(
(item) => item.getExtData().vehicleId == vehicleId
)[0];
// 绘制轨迹
marker.polyline = new AMap.Polyline({
map: this.map,
path,
showDir: true,
strokeColor: "#28F", //线颜色
// strokeOpacity: 1, //线透明度
strokeWeight: 6, //线宽
// strokeStyle: "solid" //线样式
});
marker.passedPolyline = new AMap.Polyline({
map: this.map,
strokeColor: "#AF5", //线颜色
strokeWeight: 6, //线宽
});
marker.on("moving", (e) => {
marker.passedPolyline.setPath(e.passedPath);
// this.map.setCenter(e.target.getPosition(), true);
// console.log(getPosition());
});
// 每个path的点
// marker.pointArr = [];
// carTarget
//点击的时候,先传进来一个点
const carPathData = { ...marker.getExtData(), time: times[0] };
carPathData.iconType = 14;
this.addDevice(carPathData,component);
// marker.pointArr.push(point);
marker.on("moveend", (e) => {
// this.addDevice(carPathData,carBackComponent);
// 如果不是最后一个点,就创建一个新的worderpoint,如果是就不创建,并且把自身删除
let z = {
longitude: e.pos[0],
latitude: e.pos[1],
iconType: 14,
time: times[e.index],
};
// if (e.index == path.length - 1) {
// point = this.addDevice(z, null);
// } else {
this.addDevice(z,component);
// workPoint.infoWindow.open(map,e.passedPos);
// }
console.log("定点", e);
});
marker.moveAlong(path, {
// 每一段的时长
duration: 8000, //可根据实际采集时间间隔设置
// JSAPI2.0 是否延道路自动设置角度在 moveAlong 里设置
autoRotation: true,
});
});
}
clearbackTrack(vehicleId) {
// let marker = this.allDevice[9].filter(
// (item) => item.getExtData().vehicleId == vehicleId
// )[0];
this.allDevice["9"]?.forEach((item) => {
if (item) {
// 停止运动
item.stopMove();
// 删除每个点
console.log(item.pointArr);
if (item.polyline) {
this.map.remove(item.polyline);
}
if (item.passedPolyline) {
this.map.remove(item.passedPolyline);
}
this.map.remove(item);
}
});
// 最后把数组清空
this.allDevice["9"] = [];
// 把car的路径点也清空
this.allDevice["14"]?.forEach((iten) => {
this.map.remove(iten);
});
this.allDevice["14"] = [];
this.infowindowClose();
}
}
/*
* @Author: your name
* @Date: 2022-04-13 09:42:29
* @LastEditTime: 2022-04-14 16:22:10
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /gassafety-progress/gassafetyprogress-web/src/utils/mapClass/xjxjmap.js
*/
import { EditorMap } from "./map";
export class XjxcMap extends EditorMap {
iconType1 = 98;
iconType2 = 99;
iconType3 = 0;
constructor(contaienr, config = {}, vue) {
super(contaienr, (config = {}), vue);
}
create(data, componentDevice, componentPipe) {
const path = eval(data.path);
if (path.length < 1) return;
console.log(path);
// 开头
const deviceData1 = {
longitude: path[0][0],
latitude: path[0][1],
iconType: this.iconType1,
};
// 结尾
const deviceData2 = {
longitude: path[path.length - 1][0],
latitude: path[path.length - 1][1],
iconType: this.iconType2,
};
// 路线
const pipeData = {
title:data.title ||"中燃科技",
path,
iconType: this.iconType3,
pipePressure: 4,
strokeWeight: 2,
};
this.addPipeLine(pipeData, componentPipe);
this.addDevice(deviceData1, componentDevice);
this.addDevice(deviceData2, componentDevice);
// // 前取整
const num = path.length >> 1;
this.map.panTo(path[num]);
}
remove() {
if (this.allDevice[98]?.length > 0) {
this.map.remove(this.allDevice[98][0]);
this.allDevice[98] = [];
this.map.remove(this.allDevice[99][0]);
this.allDevice[99] = [];
this.map.remove(this.pipeArr[0][0]);
this.pipeArr[0] = [];
}
}
}
/*
* @Author: your name
* @Date: 2022-01-11 13:45:12
* @LastEditTime: 2022-03-22 10:35:13
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/utils/mapClass.js
*/
import { pipeColor, svgUrl, svgAlarm } from "@/utils/mapClassForBigOld/config.js";
export const svgUrl2 = {
// 地图的设备
2: require("@/assets/bigWindowOld/images/cz-tyx.svg"),
3: require("@/assets/bigWindowOld/images/cz-fmj.svg"),
4: require("@/assets/bigWindowOld/images/cz-cz.svg"),
5: require("@/assets/bigWindowOld/images/cz-jk.svg"),
6: require("@/assets/bigWindowOld/images/cz-yh.svg"),
7: require("@/assets/bigWindowOld/image/zrxk.svg"),
8: require("@/assets/bigWindowOld/image/zcrq.svg"),
//应急设备,应急处置 emergency/emergency
10: require("@/assets/bigWindowOld/image/yj-jydw.png"),
11: require("@/assets/bigWindowOld/image/yj-wz.png"),
12: require("@/assets/bigWindowOld/image/yj-cl.png"),
13: require("@/assets/bigWindowOld/image/yj-yy.png"),
15: require("@/assets/bigWindowOld/image/yj-xf.png"),
16: require("@/assets/bigWindowOld/image/yj-xj.png"),
};
// 编辑类
// 在地图上新增的设备可以直接编辑,
// 已经保存完成的设备需要点编辑才可以编辑
export class EditorMap {
// 地图的对象实例
map = null;
// 外部传进来的中心店
center = null;
// 父vue的实例
vue = null;
// 操作 新建,编辑,删除,编辑跟删除只对已经在图上的设备有效 默认值:0, 新建:1,编辑:2, 删除: 3。
// 新建的时候会把未保存的线条清空
control = 0;
// 鼠标事件对象,用来将点跟线上图
mousetool = null;
// 当前正在手动绘制的对象
nowMouseTarget = null;
// 当线mousetool线被按下的时候的flag 当线被按下的时候为true,就不询问是否删除了
mosueToolPolineDownFlag = false;
// 绘制marer的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolMarkerOptions = null;
// 绘制poline的时候的配置,在绘制完挂载事件的时候需要使用
mouseToolPolineOptions = null;
// 存放所有的设备的数组集合,这是一个对象,对象里面是各种设备的数组
allDevice = {};
// 存放所有的管道
pipeArr = {};
// 报警设备的对象
alarmObj = {};
// 当前的infowindow的组件
infowindowComponent = null;
// infowindow本身
infowindow = null;
editorObject = {
editorArr: [],
tabAct: '',
toolBoxShow: false,
};
constructor(contaienr, config = {}, vue) {
this.map = new AMap.Map(contaienr, {
viewMode: "3D",
center: [114.196007, 38.260288],
layers: [AMap.createDefaultLayer()], // layers 字段为空或者不赋值将会自动创建默认底图。
zoom: 14,
...config,
});
const { center } = config;
this.center = center;
this.vue = vue;
this.init();
}
init() {
// 地图事件
this.mapEvent();
// // 手动点线上图准备,编辑模式
this.mouseAddDevice();
// this.mouseAddMarker();
// this.mouseAddPipeline();
// 地图边界
this.map.getCity((res) => {
const city = res.district;
this.mapBound(city);
}, this.center);
}
mapBound(city) {
var district = new AMap.DistrictSearch({
extensions: "all", // 返回行政区边界坐标等具体信息
level: "district", // 设置查询行政区级别为 区
});
district.search(city, (status, result) => {
// 获取朝阳区的边界信息
var bounds = result.districtList[0].boundaries;
var polygons = [];
if (bounds) {
for (var i = 0, l = bounds.length; i < l; i++) {
//生成行政区划polygon
// new AMap.Polygon({
// map: this.map,
// strokeWeight: 2,
// path: bounds[i],
// fillOpacity: 1,
// fillColor: "transparent",
// strokeColor: "#09f",
// });
new AMap.Polyline({
map: this.map,
strokeWeight: 4,
strokeColor: "#09f",
path: bounds[i],
});
// polygons.push(polygon);
}
}
});
}
// map的事件监听
mapEvent() {
// this.map.on("click", () => {
// // mousetool对象画出的对象的操作
// // 如果有手动绘制对象,要手动清楚一下,因为画线的时候不好清除旧线,这其实是用来清楚旧线的
// // 当画出来的线被mousedown,不删除,但是mouseToolPipeLineFlag要归位,在移出线的时候统一归位
// // 如果对象是marker,直接删除
// if (this.nowMouseTarget?.type == "AMap.Marker") {
// //this.mouseToolDrawClear();
// } else {
// // 当地图上已经画了线,并且没有点在线上,询问是否删除
// if (this.nowMouseTarget && !this.mosueToolPolineDownFlag) {
// this.confirm("是否重新绘制管道", { type: "warning" })
// .then(() => {
// // 删除原来的线
// this.mouseToolDrawClear();
// // 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
// this.mousetool.polyline(this.mouseToolPolineOptions);
// })
// .catch(() => {});
// }
// }
// });
this.map.on("moveend", () => {
console.log("地图停止移动");
if (this.flag) {
console.log("弹框");
this.flag = false;
}
});
window.panTo = () => {
this.flag = true;
this.map.panTo([116.428285, 39.886129]);
};
}
// 弹框工具
confirm(message, obj) {
return this.vue.$confirm(message, obj);
}
// 改变操作状态
changeControl(num) {
this.control = num;
}
// 点线编辑上图准备
mouseAddDevice() {
this.map.plugin(["AMap.MouseTool"], () => {
this.mousetool = new AMap.MouseTool(this.map);
//this.map.addControl(new AMap.ToolBar({ position: 'LT', ruler: false, direction: false }));
});
// 挂载绘制结束的事件
//this.mouseDrawEvent();
}
// 点或者线上图结束后触发的事件
mouseDrawEvent() {
this.mousetool.on("draw", (e) => {
const target = e.obj;
// console.log([target._position.lng, target._position.lat]);
const { type: targetType } = target;
// 当这个点是marker的时候
if (targetType == "AMap.Marker") {
this.mouseToolMarkerEvent(target);
} else {
// 如果是线,挂上编辑
this.lineEditor(target);
this.mousetool.close();
this.mouseToolPolineEvent(target);
console.log(targetType, "当前对象是管道");
}
this.nowMouseTarget = target;
});
}
// 绘制marker结束后,在marker身上添加的事件
mouseToolMarkerEvent(target) {
// 由于画出来的marker点击会换位置,所以当移入的时候删除绘制事件,移出去在增加绘制事件
target.on("mouseover", (e) => {
// 鼠标事件关闭
this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 这里不方便获取原来的属性,因为position不好解决,还是设置一个值吧
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
this.mousetool.marker(this.mouseToolMarkerOptions);
});
// 点
target.on("click", (e) => {
// 弹框
});
}
// 挂上线以及线的事件
lineEditor(line) {
// line.editor && line.editor.close();
// 当前点击次数,1次为编辑,2次为弹框
line.editorNum = 0;
line.editor = new AMap.PolyEditor(this.map, line);
}
// 绘制管道的时候,挂载的事件
mouseToolPolineEvent(target) {
// 线按下的时候会变成编辑,mousetool事件会清空 移出线的时候 在把polyline事件加上
target.on("mouseover", (e) => {
// 鼠标事件关闭
// this.mousetool.close(false);
});
target.on("mouseout", (e) => {
// 有时候按在线上移动地图,map点击事件中mosueToolPolineDownFlag无法归位,在这里归位
this.mosueToolPolineDownFlag = false;
// 鼠标事件开启,并且赋值原来的属性,this.mouseToolMarkerOptions是开启绘制的时候记录的
// this.mousetool.polyline(this.mouseToolPolineOptions);
});
// 线
target.on("mousedown", (e) => {
const line = e.target;
// mosueTool按下的flag,按在线上,不询问是否删除
this.mosueToolPolineDownFlag = true;
// 按下的时候要关闭事件
this.mousetool.close(false);
// 如果当前状态不是编辑,则进入编辑状态
if (line.editorNum < 1) {
// 打开并且++
line.editor.open();
line.editorNum++;
} else {
// 这里就要弹框了
console.log(line.getPath());
}
});
}
// 设备点击上图开启
mouseAddMarker(markerObj = {}) {
// 清空已经绘制完的对象
//this.mousetoolClose(true);
// 记录一下配置项,在挂载点击的时候,需要使用
this.mouseToolMarkerOptions = {
draggable: true,
id: 'flag',
icon: new AMap.Icon({
size: [60, 60],
image: require("@/assets/bigWindowOld/image/fla01g.png"),
imageSize: [60, 60],
}),
offset: new AMap.Pixel(-19,-42),
};
this.mousetool.marker(this.mouseToolMarkerOptions);
}
// 管线点击上图开启
mouseAddPipeline(hz) {
this.editorObject.tabAct = hz;
//this.mousetoolClose(false);
// 开始画线
this.mosuetoolPolineFlag = true;
this.mouseToolPolineOptions = {
strokeColor: '#3366FF',
strokeOpacity: 1,
strokeWeight: 6,
strokeStyle: 'solid',
};
this.mousetool.polyline(this.mouseToolPolineOptions);
}
//⚪圆
mouseAddCircle(hz) {
this.editorObject.tabAct = hz;
//this.mousetoolClose(false);
// 开始画线
var c ={
strokeColor: '#FF33FF',
strokeOpacity: 1,
strokeWeight: 4,
fillColor: '#1791fc',
fillOpacity: 0.4,
strokeStyle: 'solid',
};
this.mousetool.circle(c);
}
//多边形
mouseAddPolygon(hz) {
this.editorObject.tabAct = hz;
//this.mousetoolClose(false);
// 开始画线
this.mouseToolPolineOptions = {
strokeColor: '#0dec66',
strokeOpacity: 1,
strokeWeight: 4,
strokeOpacity: 1,
fillColor: '#ee6a38',
fillOpacity: 0.3,
strokeStyle: 'solid',
}
this.mousetool.polygon(this.mouseToolPolineOptions);
}
mouseAddRule() {
//测距
this.mousetool.rule({
startMarkerOptions: {
icon: new AMap.Icon({
size: new AMap.Size(128, 128),
imageSize: new AMap.Size(50, 50),
image: 'images/qi.png',
}),
offset: new AMap.Pixel(-25, -50),
},
endMarkerOptions: {
icon: new AMap.Icon({
size: new AMap.Size(128, 128),
imageSize: new AMap.Size(40, 40),
image: 'images/zhong.png',
}),
offset: new AMap.Pixel(-20, -40),
},
midMarkerOptions: {
icon: new AMap.Icon({
size: new AMap.Size(128, 128),
imageSize: new AMap.Size(40, 40),
image: 'images/jing.png',
}),
offset: new AMap.Pixel(-20, -40),
},
lineOptions: {
strokeStyle: 'solid',
strokeColor: '#FF33FF',
strokeOpacity: 1,
strokeWeight: 3,
},
});
}
mouseAddMeasureArea() {
//面积
this.mousetool.measureArea({
strokeColor: '#80d8ff',
fillColor: '#80d8ff',
fillOpacity: 0.5,
});
}
// 手动清除map上绘制的对象
mouseToolDrawClear() {
if (this.nowMouseTarget) {
this.map.remove(this.nowMouseTarget);
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
}
//编辑图形
editOverlays() {
this.mousetool.close(false);
var type = this.editorObject.tabAct;
let layobj = this.getAllDrawLays();
switch (type) {
case 'Circle':
if (layobj.CircleArr.length > 0)
layobj.CircleArr.forEach((ele) => {
let editor = new AMap.CircleEditor(this.map, ele);
editor.open();
this.editorObject.editorArr.push(editor);
});
break;
case 'Polyline':
if (layobj.PolylineArr.length > 0)
layobj.PolylineArr.forEach((ele) => {
let editor = new AMap.PolyEditor(this.map, ele);
editor.open();
this.editorObject.editorArr.push(editor);
});
break;
case 'Polygon':
if (layobj.PolygonArr.length > 0)
layobj.PolygonArr.forEach((ele) => {
let editor = new AMap.PolyEditor(this.map, ele);
editor.open();
this.editorObject.editorArr.push(editor);
});
break;
}
}
getAllDrawLays() {
let laysArr = this.map.getAllOverlays(),
CircleArr = [],
MarkerArr = [],
PolylineArr = [],
PolygonArr = [];
laysArr.forEach((ele) => {
if (ele.CLASS_NAME == 'Overlay.Circle') CircleArr.push(ele);
if (ele.CLASS_NAME == 'Overlay.Polygon') PolygonArr.push(ele);
if (ele.CLASS_NAME == 'Overlay.Polyline') PolylineArr.push(ele);
if (ele.CLASS_NAME == 'Overlay.Marker' && ele.getzIndex() == 9999) {
MarkerArr.push(ele);
}
});
let allDrawLays = [...CircleArr, ...MarkerArr, ...PolylineArr, ...PolygonArr];
return {
allDrawLays,
CircleArr,
MarkerArr,
PolylineArr,
PolygonArr,
};
}
//结束编辑
endEditOverlays() {
console.log(this.editorObject.editorArr.length)
if (this.editorObject.editorArr.length > 0) {
this.editorObject.editorArr.forEach((ele) => {
ele.close();
});
}
}
//结束绘制
endOverlays() {
this.mousetool.close(false);
}
//删除图形
delOverlays() {
let layobj = this.getAllDrawLays(),
html = '',
type = this.editorObject.tabAct,
len = layobj[type + 'Arr'] ? layobj[type + 'Arr'].length : '';
// window.delRadioLays = function (num) {
// this.map.remove(layobj[type + 'Arr'][num - 1]);
// };
if (len > 0) this.alertFun(len, type, layobj);
}
delRadioLays(num){
console.log(num);
//this.map.remove(layobj[this.editorObject.tabAct + 'Arr'][num - 1]);
}
alertFun(len, type, layobj) {
let stype = '',
html = '';
switch (type) {
case 'Circle':
stype = '圆形';
break;
case 'Polyline':
stype = '线段';
break;
case 'Polygon':
stype = '多边形';
break;
}
for (let i = 0; i < len; i++) {
let lena = i + 1;
html += '<input name="in" type="radio" onClick="delRadioLays('+lena+')"/>第'+lena+'个'+stype;
}
document.getElementById("delTu").innerHTML=html;
// layLayer.open({
// content: html,
// });
}
// 关闭点击上图事件 true清除之前绘制的图像,false 仅关闭上图事件
mousetoolClose(boolean) {
// 清空地图上的绘制对象的同时,也要清楚这个nowMouseTarget控制对象
if (this.nowMouseTarget) {
// 如果有editor,则关闭
this.nowMouseTarget.editor && this.nowMouseTarget.editor.close();
this.nowMouseTarget = null;
}
this.mousetool.close(boolean);
}
/**
*
*
*
*
*
*
* 地图上add设备
*
*
* @description:
* @param {*} deviceData marker的数据
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
addDevice(deviceData, compontent) {
const { longitude: lng, latitude: lat, iconType } = deviceData;
const icon = svgUrl2[iconType];
console.log("icon", icon);
let device = this.createMarker({
map: this.map,
anchor: "bottom-center",
icon,
position: [lng, lat],
extData: deviceData,
// label:{
// content:123,
// direction:"top",
// }
});
// device.hide();
// 如果没有有这个公司的数组,就创建,有就直接push
if (!Array.isArray(this.allDevice[iconType])) {
this.allDevice[iconType] = [];
}
this.allDevice[iconType].push(device);
// 设备的事件函数
this.deviceEvent(device, compontent);
}
deviceEvent(device, compontent) {
device.on("click", (e) => {
const target = e.target;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
if (this.control == 0) {
this.markerClick(target, compontent);
} else if (this.control == 2) {
// 2是已经上图的设备拥有的编辑功能
} else if (this.control == 3) {
// 3是删除操作
}
});
device.on("mouseover", (e) => {
const target = e.target;
const data = target.getExtData();
console.log(data);
const name =
data.nickName ||
data.deviceName ||
data.videoName ||
data.stationName ||
data.time;
target.setLabel({ content: name, direction: "top" });
});
device.on("mouseout", (e) => {
const target = e.target;
const data = target.getExtData();
target.setLabel({ content: "" });
});
}
/** 点击marker出现infowindow
* @description:
* @param {*} target 点击的对象
* @param {*} compontent marker点击弹出的infowindow的组件
* @return {*}
*/
markerClick(target, compontent) {
const deviceExtData = target.getExtData();
const { longitude: lng, latitude: lat } = deviceExtData;
// 创建一个可以控制的组件,将其dom插入infowindow
this.infowindowComponent = this.createInfowindowDom(
this.vue,
this,
deviceExtData,
compontent
);
// 没恩么用,控制台测试的时候用着玩的
window.func = () => {
const { longitude: lng, latitude: lat } = target.getExtData();
const cd = {
id: 1,
name: "9",
lng,
lat,
};
this.infowindowComponentChange(cd);
target.setExtData(cd);
};
this.infowindow = new AMap.InfoWindow({
isCustom: true,
content: this.infowindowComponent.$el,
position: [lng, lat],
// anchor: "top-left",
// offset: [20, -45],
anchor: "middle-left",
offset: [20, -10],
});
this.infowindow.open(this.map);
}
// 创建要加入到infowindow里的
createInfowindowDom(vueRoot, mapClass, deviceData, compontent) {
const Component = this.vue.$Vue.extend(compontent, {});
return new Component({
data() {
return {
// 当前vue实例
vueRoot,
// 自己写的map类
mapClass,
// 数据
deviceData,
};
},
}).$mount();
}
// 当前显示的infowindow内部的数据发生变化,一般在socket传回数据的时候使用
infowindowComponentChange(data) {
this.infowindowComponent.deviceData = data;
}
// 创建marker
createMarker(MarkerOptions) {
return new AMap.Marker(MarkerOptions);
}
// 地图上add管道
addPipeLine(objData, component) {
const { path, pipePressure, iconType } = objData;
// 根据压力获取颜色
const color = pipeColor[pipePressure + 1];
const pipe = this.createPipeLine({
path: eval(path),
strokeWeight: 4,
strokeColor: color,
extData: objData,
cursor: "pointer",
});
this.map.add(pipe);
// pipe.hide();
if (!Array.isArray(this.pipeArr[iconType])) {
this.pipeArr[iconType] = [];
}
this.pipeArr[iconType].push(pipe);
// console.log(this.pipeArr);
// this.map.panTo([path[0][0], path[0][1]]);
this.pipeEvent(pipe, component);
}
createPipeLine(pipeLineOptions) {
return new AMap.Polyline(pipeLineOptions);
}
pipeEvent(pipe, compontent) {
pipe.on("mouseover", (e) => {
const target = e.target;
// 获取当前颜色
const options = target.getOptions();
options.strokeColor = "blue";
target.setOptions(options);
});
pipe.on("mouseout", (e) => {
const target = e.target;
// 根据管道压力获取颜色
const { pipePressure } = target.getExtData();
const color = pipeColor[pipePressure + 1];
// 获取当前颜色
const options = target.getOptions();
options.strokeColor = color;
target.setOptions(options);
});
pipe.on("click", (e) => {
const target = e.target;
target.lnglat = e.lnglat;
// 如果control==0就是默认值,没有使用123功能,就显示infowindow
if (this.control == 0) {
this.pipeClick(target, compontent);
} else if (this.control == 2) {
// 2是已经上图的设备拥有的编辑功能
} else if (this.control == 3) {
// 3是删除操作
}
});
}
pipeClick(target, compontent) {
const deviceExtData = target.getExtData();
const { lng, lat } = target.lnglat;
// 创建一个可以控制的组件,将其dom插入infowindow
this.infowindowComponent = this.createInfowindowDom(
this.vue,
this,
deviceExtData,
compontent
);
// 没恩么用,控制台测试的时候用着玩的
// window.func = () => {
// const { lng, lat } = target.getExtData();
// const cd = {
// id: 1,
// name: "9",
// lng,
// lat,
// };
// this.infowindowComponentChange(cd);
// target.setExtData(cd);
// };
this.infowindow = new AMap.InfoWindow({
isCustom: true,
content: this.infowindowComponent.$el,
position: [lng, lat],
// anchor: "top-left",
// offset: [20, -15],
anchor: "middle-left",
offset: [20, 0],
});
this.infowindow.open(this.map);
}
infowindowClose() {
if (!this.infowindow) return;
this.infowindow.close();
}
// 设备以及公司过滤
allfilter(companyArr, typeArr) {
for (let pipeItem in this.pipeArr) {
this.pipeArr[pipeItem].forEach((pipe) => {
const data = pipe.getExtData();
if (companyArr.indexOf(data.companyType + "") >= 0) {
pipe.show();
} else {
pipe.hide();
}
});
}
for (let deviceItem in this.allDevice) {
this.allDevice[deviceItem].forEach((device) => {
const data = device.getExtData();
// 设备过滤受到bigwindow页面的的两种制约,companyArr, typeArr 两个数组制约显示隐藏
// 燃气没有公司,所以没有device.companyType不收到公司的控制
const companyHas = companyArr.indexOf(data.companyType + "") >= 0;
// 设备存在 受到设备按钮限制
const deviceHas = typeArr.indexOf(+data.iconType) >= 0;
// 如果是燃气公司的话,不受按钮限制
const enterprise = data.iconType == 7 || data.iconType == 8;
// 必须设备存在数组里,才会显示设备 !data.companyType代表用户不受公司制约
if (enterprise || (deviceHas && (companyHas || !data.companyType))) {
device.show();
} else {
device.hide();
}
});
}
}
setZoomAndCenter(longitude,latitude){
this.map.setZoomAndCenter(14.5, [longitude*1+0.02,latitude]);
}
// 普通调用方法
// 设备报警
deviceAlarm(obj) {
// 设备的类型
const { iconType } = obj;
const publicId = obj.userId || obj.deviceId;
// 找到这个设备所属的空间
const device = this.allDevice[iconType].filter(
(item) =>
(item.getExtData().userId || item.getExtData().deviceId) == publicId
)[0];
// 更改的icon
const icon = svgAlarm[iconType];
device.setIcon(icon);
device.setzIndex(13);
// 将旧的值缓存一下
// device.oldData = device.getExtData();
// device.setExtData(obj);
// 可能出现infoWindow数据变化
this.alarmInfowindowChange(obj);
if (!this.alarmObj[iconType]) {
this.alarmObj[iconType] = [];
}
const ind = this.alarmObj[iconType].indexOf(publicId);
if (ind < 0) {
this.alarmObj[iconType].push(publicId);
}
}
// 报警时候,可能发生infowindowComponent存在,也要变化
alarmInfowindowChange(obj) {
if (!this.infowindowComponent) return;
// 如果infowindow是打开的,就改变里面的数据 必须是 调压箱2 阀门3 用户6 才会发生变化电话
const infowindowDeviceType = [2, 3, 6].includes(
this.infowindowComponent.deviceData.iconType
);
// 如果存在userId就用userId,如果存在deviceId就用deviceId
const infowindowDeviceId =
this.infowindowComponent.deviceData.userId ||
this.infowindowComponent.deviceData.deviceId;
// 如果存在userId就用userId,如果存在deviceId就用deviceId
const objId = obj.userId || obj.deviceId;
// 如果两个值匹配,才可以改变infowindow身上的组件
const infowindowComponentHas = infowindowDeviceId == objId;
if (
this.infowindowComponent &&
infowindowDeviceType &&
infowindowComponentHas
) {
// this.infowindowComponentChange(obj);
if (this.infowindowComponent.http) {
this.infowindowComponent.myHttp();
}
}
}
//如果传过来的报警设备中,有不在deviceAlarm中,就是恢复的设备恢复
relieveAlarm(alarmObj) {
// 把报警数组改变结构,如果有userId就是用户,如果有deviceId就是其他设备
const httpObj = {};
alarmObj.forEach((item) => {
const publicId = item.userId || item.deviceId;
if (!Array.isArray(httpObj[item.iconType])) {
httpObj[item.iconType] = [];
}
httpObj[item.iconType].push(publicId);
});
// 循环现有报警设备
for (let iconType in this.alarmObj) {
const arr = this.alarmObj[iconType];
// 循环现有报警设备
for (let i = 0; i < arr.length; i++) {
// 看看现有报警设备中有没有不在 报警数组中的值,有就恢复可能是userId,也可能是deviceId
const publicId = arr[i];
// 看看接口传来的数据中还有没有这些Id,如果没有了,就是修好了
const hasId = httpObj[iconType]?.includes(publicId);
// 如果已经不在报警数组中,就要去大数组中找他,利用userId
// 如果id不存在了,说明不报警了
if (!hasId) {
// 过滤出来这个要恢复的设备
const device = this.allDevice[iconType].filter(
(item) =>
(item.getExtData().userId || item.getExtData().deviceId) ==
publicId
)[0];
// 恢复
const icon = svgUrl[iconType];
device.setIcon(icon);
// 赋值
// const deviceData = { ...device.oldData };
// device.setExtData(deviceData);
// device.oldData = null;
// 如果infowindow是打开的
this.alarmInfowindowChange(device.getExtData());
// 在arr中删掉
arr.splice(i, 1);
// 由于删掉了当前,所以要--恢复位置
i--;
}
}
}
}
// ws协议方法
wsAlarm(obj) {
const { iconType, userId, userStatus } = obj;
const decice = this.allDevice[iconType].filter(
(item) => item.getExtData().userId == userId
)[0];
let icon = null;
// 2报警,1恢复
if (userStatus == 2) {
icon = svgAlarm[iconType];
device.oldData = device.getExtData();
device.setExtData(obj);
} else if (userStatus == 1) {
icon = svgUrl[iconType];
const oldData = device.oldData;
device.setExtData(oldData);
device.oldData = null;
}
decice.setIcon(icon);
}
// 卫星图切换
satellite = null;
changeMap(bool) {
// 卫星,
if (!bool) {
if (this.satellite) return;
this.satellite = new AMap.TileLayer.Satellite();
this.map.addLayer(this.satellite);
} else {
if (this.satellite) {
this.map.removeLayer(this.satellite);
this.satellite = null;
}
}
}
// 轨迹回放
/**
* @description:
* @param {*} vehicleId 设备id
* @param {*} path 轨迹回访率丼
* @return {*}
*/
backTrack(vehicleId, path, times,component) {
this.infowindowClose();
AMap.plugin("AMap.MoveAnimation", () => {
let marker = this.allDevice[9].filter(
(item) => item.getExtData().vehicleId == vehicleId
)[0];
// 绘制轨迹
marker.polyline = new AMap.Polyline({
map: this.map,
path,
showDir: true,
strokeColor: "#28F", //线颜色
// strokeOpacity: 1, //线透明度
strokeWeight: 6, //线宽
// strokeStyle: "solid" //线样式
});
marker.passedPolyline = new AMap.Polyline({
map: this.map,
strokeColor: "#AF5", //线颜色
strokeWeight: 6, //线宽
});
marker.on("moving", (e) => {
marker.passedPolyline.setPath(e.passedPath);
// this.map.setCenter(e.target.getPosition(), true);
// console.log(getPosition());
});
// 每个path的点
// marker.pointArr = [];
// carTarget
//点击的时候,先传进来一个点
const carPathData = { ...marker.getExtData(), time: times[0] };
carPathData.iconType = 14;
this.addDevice(carPathData,component);
// marker.pointArr.push(point);
marker.on("moveend", (e) => {
// this.addDevice(carPathData,carBackComponent);
// 如果不是最后一个点,就创建一个新的worderpoint,如果是就不创建,并且把自身删除
let z = {
longitude: e.pos[0],
latitude: e.pos[1],
iconType: 14,
time: times[e.index],
};
// if (e.index == path.length - 1) {
// point = this.addDevice(z, null);
// } else {
this.addDevice(z,component);
// workPoint.infoWindow.open(map,e.passedPos);
// }
console.log("定点", e);
});
marker.moveAlong(path, {
// 每一段的时长
duration: 8000, //可根据实际采集时间间隔设置
// JSAPI2.0 是否延道路自动设置角度在 moveAlong 里设置
autoRotation: true,
});
});
}
clearbackTrack(vehicleId) {
// let marker = this.allDevice[9].filter(
// (item) => item.getExtData().vehicleId == vehicleId
// )[0];
this.allDevice["9"]?.forEach((item) => {
if (item) {
// 停止运动
item.stopMove();
// 删除每个点
console.log(item.pointArr);
if (item.polyline) {
this.map.remove(item.polyline);
}
if (item.passedPolyline) {
this.map.remove(item.passedPolyline);
}
this.map.remove(item);
}
});
// 最后把数组清空
this.allDevice["9"] = [];
// 把car的路径点也清空
this.allDevice["14"]?.forEach((iten) => {
this.map.remove(iten);
});
this.allDevice["14"] = [];
this.infowindowClose();
}
}
<!--
* @Author: 纪泽龙 jizelong@qq.com
* @Date: 2023-07-12 13:58:25
* @LastEditors: 纪泽龙 jizelong@qq.com
* @LastEditTime: 2023-07-12 17:12:59
* @FilePath: /gassafetyprogress-web/src/views/bigWindow/components/Bottom.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<template>
<div class="bigwindow-bottom listingsSty">
<img
src="~@/assets/firstimage/bottombk.svg"
alt=""
style="backdrop-filter: blur(4px)"
/>
<div class="listingsSty">
<div
class="firsty selectAll"
@click.stop="selectAll"
:class="[
{
active:
selectActive.length == listFlatArr.length &&
selectActive.length > 1,
},
]"
>
全部
</div>
<div class="firsty item" v-for="(item, index) in list" :key="item.value">
<div
class="itemCompany"
@click.stop="selectChange(item.value)"
:class="[
{ active: selectSome(index) },
{ activeAll: selectEvery(index) },
]"
>
{{ item.label }}
</div>
<div
class="up-select"
:class="[{ hide: !selectShowNum.includes(item.value) }]"
:style="{ height: item.children.length * 35 + 'px' }"
>
<div
class="selectItem"
v-for="selectItem in item.children"
:class="[{ active: selectActive.includes(selectItem.value) }]"
:key="selectItem.value"
@click.stop="selectActiveChange(selectItem.value)"
>
{{ selectItem.label }}
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import { mapGetters, mapActions } from "vuex";
export default {
name: "",
data() {
return {
list: [
{
value: 1,
label: "天然气公司",
children: [
// { value: 10, label: "东阿道夫阿" },
// { value: 11, label: "阿发送到" },
// { value: 19, label: "发打算发大水" },
],
},
{
value: 2,
label: "液化气公司",
children: [
// { value: 21, label: "2-1" },
// { value: 22, label: "2-2" },
],
},
{
value: 3,
label: "加气站",
children: [
// { value: 31, label: "3-1" },
// { value: 32, label: "3-2" },
],
},
],
selectShowNum: [],
// 被选中的值
selectActive: [],
listFlatArr: [],
};
},
computed: {
...mapGetters(["company", "systemSetting"]),
},
beforeCreate() {},
mounted() {
this.GetCompany().then((res) => {
this.company.forEach((item) => {
this.list[item.companyType-1].children.push({
value: item.conpanyId,
label: item.companyName,
});
});
this.selectAll();
});
},
methods: {
...mapActions({
GetCompany: "bigWindowCompany/GetCompany",
}),
// 把下拉框放下
selectUpClear(){
this.selectShowNum=[];
},
selectAll() {
// 生成所有都选中的数组
this.listFlatArr = this.list
.map((item) => {
return item.children.map((iten) => {
return iten.value;
});
})
.flat();
// 如果是全选中状态,则全取消,否则全选
if (this.selectActive.length == this.listFlatArr.length) {
this.selectActive = [];
} else {
this.selectActive = [...this.listFlatArr];
}
this.$emit("listChange", this.selectActive);
},
selectChange(value) {
const num = this.selectShowNum.indexOf(value);
if (num >= 0) {
this.selectShowNum.splice(num, 1);
} else {
this.selectShowNum.push(value);
}
},
selectActiveChange(value) {
const num = this.selectActive.indexOf(value);
if (num >= 0) {
this.selectActive.splice(num, 1);
} else {
this.selectActive.push(value);
}
this.$emit("listChange", this.selectActive);
},
// 至少有一个被选中
selectSome(index) {
return (
this.list[index].children.length > 0 &&
this.list[index].children.some((item) => {
return this.selectActive.includes(item.value);
})
);
},
// 都被选中
selectEvery(index) {
return (
this.list[index].children.length > 0 &&
this.list[index].children.every((item) => {
return this.selectActive.includes(item.value);
})
);
},
},
};
</script>
<style lang="scss" scoped>
.bigwindow-bottom {
width: 40%;
height: 70px;
position: fixed;
bottom: 0;
margin-left: 30%;
display: flex;
// z-index: 1000;
img {
width: 100%;
height: 100%;
position: absolute;
z-index: -1;
bottom: -10px;
}
.listingsSty {
padding-left: 15%;
padding-right: 15%;
box-sizing: border-box;
width: 180%;
display: flex;
justify-content: space-between;
.firsty {
// width: 15%;
min-width: 80px;
height: 35px;
text-align: center;
line-height: 35px;
color: #fff;
font-size: 16px;
cursor: pointer;
&.selectAll {
transition: all 0.5s ease;
&.active {
color: #00ffff;
text-shadow: 0 0 20px rgba(0, 255, 255, 1),
0 0 35px rgb(0, 255, 255, 1);
}
}
&.item {
min-width: 180px;
position: relative;
.itemCompany {
transition: all 0.5s ease;
&.active {
color: #00ffff;
text-shadow: 0 0 20px rgba(0, 255, 255, 0.3),
0 0 35px rgb(0, 255, 255, 0.3);
}
&.activeAll {
color: #00ffff;
text-shadow: 0 0 20px rgba(0, 255, 255, 1),
0 0 35px rgb(0, 255, 255, 1);
}
}
.up-select {
transition: all 0.5s ease;
position: absolute;
bottom: 50px;
left: 0;
width: 100%;
background: rgb(18, 92, 155, 0.3);
overflow: hidden;
&.hide {
height: 0px !important;
}
.selectItem {
transition: all 0.5s ease;
&.active {
color: #00ffff;
text-shadow: 0 0 20px #00ffff, 0 0 35px #00ffff;
}
}
}
}
}
}
}
</style>
<!--
* @Author: your name
* @Date: 2022-01-11 13:44:17
* @LastEditTime: 2023-07-12 17:13:16
* @LastEditors: 纪泽龙 jizelong@qq.com
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: /test/hello-world/src/views/Home.vue
-->
<template>
<div class="home bigwindow" @click='windowClick'>
<div class="goSystem" @click="$router.push('/index')">进入管理系统</div>
<div id="map"></div>
<!-- <Center :show="show" :centerData="centerData" /> -->
<UserCenter
:title="centerTitle"
:show="userCenterShow"
ref="userCenter"
:detcetorList="detcetorList"
:userId="centerUserId"
:total="centerTotal"
:pageSize="20"
/>
<OtherCenter
:title="centerTitle"
:show="otherCenterShow"
ref="otherCenter"
:detcetorList="detcetorList"
:userId="centerUserId"
:total="centerTotal"
:pageSize="20"
/>
<PipeColor />
<PipeSelect @transmit="getPipeSelectMessage" @closeMediumPressureLine="clearBigWindowsSelectPipe"/>
<!-- 底部按钮 -->
<!-- <div class="home-div">
<img src="../../assets/firstimage/bottombk.svg" alt="" style="backdrop-filter: blur(4px);" />
<div class="listingsSty fangy">
<div
@click="allCompany"
:class="selarr.length == 2 ? 'active' : ''"
class="firsty"
>
全部
</div>
<div
class="firsty"
:class="selarr.indexOf(item.val) >= 0 ? 'active' : ''"
v-for="(item, index) in typeList"
:key="item.val"
@click="sel(index, item)"
>
{{ item.name }}
</div>
</div>
</div> -->
<Bottom v-if="enterpriseId==-2" @listChange="listChange" ref='Bottom'/>
<!-- 设备按钮 -->
<div class="typelist-div">
<div
class="list"
v-for="(item, index) in arr"
:key="index"
:class="selarr1.indexOf(item.val) >= 0 ? 'active' : ''"
@click="sel1(index, item)"
>
<img
:src="item.imgurl"
style="margin-top: 2px; float: left; margin-right: 3px"
/>
{{ item.name }}
</div>
</div>
<!-- 弹框 -->
<div
id=""
style="position: fixed; top: 0; right: 0; width: 100px; height: 100px"
>
<!-- <markerInfoWindow></markerInfoWindow> -->
</div>
<!-- 头部 -->
<div class="banner-test">
<!-- <dv-decoration-5 style="width:100%;height:100%;" /> -->
<img v-if="this.enterpriseId==-2" src="../../assets/bigWindowOld/images/zibk.png" alt="" />
<img v-else src="../../assets/bigWindowOld/images/20230805152711.png" alt="" />
</div>
<!-- 左边 -->
<div class="leftbar">
<leftBar ref="mychild2"></leftBar>
</div>
<!-- 右边 -->
<div class="rightbar">
<rightBar ref="mychild"></rightBar>
</div>
<!-- <img src="../../assets/images/leftbk.svg" alt=""> -->
<!-- 左上角天气 -->
<div
class="weather"
style="
position: fixed;
top: 0;
margin-top: 25px;
margin-left: 15px;
left: 0;
z-index: 999;
height: 50px;
"
>
<!-- <iframe src="../../static/weather.html" frameborder="0"></iframe> -->
<!-- <iframe
scrolling="no"
src="https://tianqiapi.com/api.php?style=tz&skin=pitaya&color=fff"
frameborder="0"
width="450"
height="30"
allowtransparency="true"
></iframe> -->
<!-- <iframe scrolling="no" src="https://yiketianqi.com/api.php?style=ty&skin=pitaya" frameborder="0" width="300" height="75" allowtransparency="true"></iframe> -->
</div>
<!-- 右上角时间 -->
<div
class="right-time"
style="
position: fixed;
top: 0;
margin-top: 25px;
margin-right: 15px;
right: 0;
z-index: 999;
width: 200px;
height: 50px;
color: #fff;
"
>
<div style="height: 20px; width: 100%; float: right; font-size: 14px">
{{ nowDate }}&nbsp;{{ nowtime }}&nbsp;{{ nowweek }}
</div>
</div>
</div>
</template>
<script>
// @ is an alias to /src
import { EditorMap } from "@/utils/mapClassForBigOld/map";
import { mapGetters, mapActions } from "vuex";
import { listDetectorInfo } from "@/api/detector/detectorInfo";
import { detectorUserList,massMarksDetectorUserList,labelsLayerMarksDetectorUserList } from "@/api/detector/detectorUser";
import {
pipeData,
tiaoyaxiang,
famen,
changzhan,
jiankong,
user,
alarmtime,
} from "@/utils/mapClass/config.js";
import {
getPipe,
getTyx,
getFm,
getCz,
getVideo,
getUser,
getEnterprise,
userAlarm,
getTcqDevice,
getYhq,
deviceUser
} from "@/api/bigWindowOld/getDevice";
import Line from "@/components/bigWindowOld/Line.vue";
import VideoView from "@/components/bigWindowOld/VideoView.vue";
import Device from "@/components/bigWindowOld/Device.vue";
import Cz from "@/components/bigWindowOld/Cz.vue";
import User from "@/components/bigWindowOld/User.vue";
import Center from "@/components/bigWindowOld/Center.vue";
import UserCenter from "@/components/bigWindowOld/UserCenter.vue";
import OtherCenter from "@/components/bigWindowOld/OtherCenter.vue";
import Company from "@/components/bigWindowOld/Company.vue";
import PipeColor from "@/components/bigWindowOld/PipeColor.vue";
import yhqUser from "@/components/bigWindowOld/yhqUser.vue";
import { getUserProfile } from "@/api/system/user";
// import markerInfoWindow from './components/markerInfoWindow.vue'
import leftBar from "@/components/bigWindowOld/leftBar.vue";
import rightBar from "@/components/bigWindowOld/rightBar.vue";
import Bottom from "./components/Bottom.vue";
import { mapState } from 'vuex'
import MediumPressureLineVue from '../../components/bigWindowOld/MediumPressureLine.vue';
import PipeSelect from '../../components/bigWindowOld/PipeSelect.vue';
export default {
name: "Home",
components: {
leftBar,
rightBar,
// Center,
UserCenter,
OtherCenter,
PipeColor,
PipeSelect,
Bottom,
},
data() {
return {
map: null,
show: false,
// centerData: null,
selarr: [1, 2, 3],
weather: "",
lower: "",
higher: "",
nowDate: "",
nowweek: "",
nowtime: "", // 当前日期
typeList: [
{
val: 1,
name: "中燃翔科",
},
{
val: 2,
name: "中诚然气",
},
{
val: 3,
name: "中燃韵科",
},
],
// 2:"调压箱",
// 3:"阀门",
// 4:"厂站",
// 5:"监控",
// 6:"用户",
arr: [
{
val: 2,
ischeck: false,
imgurl: require("@/assets/firstimage/tiaoyaxiang.png"),
name: "调压箱",
},
{
val: 3,
ischeck: false,
imgurl: require("@/assets/firstimage/famen.png"),
name: "阀门井",
},
{
val: 4,
ischeck: false,
imgurl: require("@/assets/firstimage/changzhan.png"),
name: "场 站",
},
{
val: 6,
ischeck: false,
imgurl: require("@/assets/firstimage/user.png"),
name: "居民用户",
},
{
val: 61,
ischeck: false,
imgurl: require("@/assets/firstimage/syUser.svg"),
name: "商业用户",
},
{
val: 5,
ischeck: false,
imgurl: require("@/assets/firstimage/jiankong.png"),
name: "监 控",
},
{
val: 18,
ischeck: false,
imgurl: require("@/assets/firstimage/yhq.svg"),
name: "餐饮单位液化气用户",
},
],
selarr1: [],
// 用户的center数据
detcetorList: [],
centerUserId: null,
centerTotal: null,
userCenterShow: false,
centerTitle: "",
queryParams2: {
enterpriseType: 1,
},
// 其他设备的center数据
// 除了这个值,用来显示隐藏,其他值与user共用
otherCenterShow: false,
// 报警轮询timer
alarmTimer: null,
};
},
computed: {
...mapGetters(["company", "systemSetting","enterpriseId"]),
companyLength() {
return this.typeList.length;
},
},
watch: {
selarr(newValue) {
if (newValue.length == this.companyLength) {
// this.$refs.mychild.choice(0);
// this.$refs.mychild2.choice(0);
}
},
},
async mounted() {
// console.log(99999999999999)
// getPipe().then(res=>{
// console.log("成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功成功",res)
// }).catch(res=>{
// console.log(123)
// })
// return;
const path = eval(this.systemSetting.map_center);
this.map = new EditorMap(
"map",
{
center: path,
// mapStyle: "amap://styles/4651b4007b4adfcf5015dd154459ab46",
mapStyle: "amap://styles/f71d3a3d73e14f5b2bf5508bf1411758",
zoom: 12,
},
this
);
getUserProfile().then(response => {
var user = response.data;
if(user.deptId ==13){
this.map.setCenter(["117.908541","39.688353"])
}
});
console.log("--");
// 这是测试,用本地数据
if (this.systemSetting.prod_test === "test") {
this.addPipeLine(pipeData, Line);
this.addDevice(tiaoyaxiang, Device);
this.addDevice(famen, Device);
this.addDevice(changzhan, Cz);
this.addDevice(user, User);
this.addDevice(jiankong, VideoView);
} else {
// 调用状态管理器方法获取公司信息每次都要调取,因为每次进来都是更新的
this.GetCompany();
// 过滤出来id 6跟12 的不要
this.typeList = this.company
.filter((item) => item.conpanyId != 6 && item.conpanyId != 12)
.map((item) => ({
val: item.conpanyId,
name: item.companyName,
}));
this.selarr = this.company
.filter((item) => item.conpanyId != 6 && item.conpanyId != 12)
.map((item) => item.conpanyId);
// this.selarr1 = this.arr.map((item) => item.val);
this.arr.forEach((item) => (item.ischeck = true));
// getPipe() getTyx() getFm() getCz() getVideo() getUser()
await this.goMap(getEnterprise, this.addDevice, Company, true);
// this.goMap(getPipe, this.addPipeLine, Line, true);
//管道
this.goMediumPressureLineMap(getPipe, this.addMediumPipeLine, Line,MediumPressureLineVue, true);
//调压箱
this.labelsLayerMarksTysGoMap(getTyx, Device, false);
//阀门井
this.labelsLayerMarksFmjGoMap(getFm, Device, false);
//场站
this.labelsLayerMarksCzGoMap(getCz,Cz, false);
//监控
this.labelsLayerMarksVideoGoMap(getVideo,VideoView, false);
//this.goMap(getYhq, this.addDevice2, yhqUser, false); //液化气用户上图
if (this.enterpriseId==-2){
this.labelsLayerMarksDeviceUserGoMap(deviceUser, yhqUser, false); //用户上图
}
// 用户要等一下 因为有报警数据
this.labelsLayerMarksDetectorUserGoMap(labelsLayerMarksDetectorUserList,User, false).then((res) => {
// 先查一下,然后开启定时器
this.userAlarm();
this.alarmTimer = setInterval(() => {
this.userAlarm();
// console.log("查询报警");
}, alarmtime);
});
}
this.currentTime();
this.$refs.mychild.choice(this.selarr);
this.$refs.mychild2.choice(this.selarr);
// alert(this.enterpriseId);
// console.log(this.enterpriseId)
},
methods: {
...mapActions({
GetCompany: "bigWindowCompany/GetCompany",
}),
windowClick(){
this.$refs.Bottom.selectUpClear();
},
// 点击了 大屏端 管道搜索的清除键
clearBigWindowsSelectPipe(){
this.map.infowindowClose();
},
getPipeSelectMessage(data,id) {
let arrArea = data.split(',');
this.map.setCenter([arrArea[0],arrArea[1]])
this.map.filterSelectPipe(id,MediumPressureLineVue,arrArea[0],arrArea[1]);
},
// 管道上图
addPipeLine(data, component) {
for (let comp in data) {
data[comp].forEach((pipe) => {
this.map.addPipeLine(pipe, component);
});
}
},
// 管道上图
addMediumPipeLine(data, component,mediumComponent) {
for (let comp in data) {
data[comp].forEach((pipe) => {
this.map.addMediumPipeLine(pipe, component,mediumComponent);
});
}
},
// 设备上图
addDevice(data, component, show) {
for (let comp in data) {
data[comp].forEach((pipe) => {
this.map.addDevice(pipe, component, show);
});
}
},
addDevice2(data, component, show) {
// console.log("data33333333333333333",data);
for (let comp in data) {
data[comp].forEach((pipe) => {
pipe.iconType = 18;
this.map.addDevice(pipe, component, show);
});
}
},
addDevice3(data, component, show) {
for (let comp in data) {
data[comp].forEach((pipe) => {
if (pipe.userType == 1) {
pipe.iconType = 6;
} else if (pipe.userType == 2) {
pipe.iconType = 61;
}
this.map.addDevice(pipe, component, show);
});
}
},
goMediumPressureLineMap(httpFunc, addFunc, component,mediumComponent, show){
return httpFunc().then((res) => {
// 给用户加icontype
if (res.data && !res.data[0].iconType) {
res.data.forEach((item) => {
item.iconType = 6;
});
}
// 根据数据格式不同,赋值不同,如果是个数组,就用res,如果不是就用res.data
let config = {};
if (Array.isArray(res)) {
config = { data: res };
// 给视频设备的conpanyType变成null,因为视频不受企业控制
if (res[0].iconType == 5) {
res.forEach((item) => {
item.companyType = null;
});
}
} else {
config = { data: res.data || res.rows };
}
addFunc(config, component, mediumComponent,show);
return config.iconType;
});
},
labelsLayerMarksDeviceUserGoMap(httpFunc,component,show){
return httpFunc().then((res) => {
const mapData = res.data;
this.map.labelsLayerMarksDeviceUserGoMap(mapData, component, show);
})
}
,
labelsLayerMarksVideoGoMap(httpFunc,component,show){
return httpFunc().then((res) => {
const mapData = res.data;
this.map.labelsLayerMarksVideoGoMap(mapData, component, show);
})
}
,
labelsLayerMarksCzGoMap(httpFunc,component,show){
return httpFunc().then((res) => {
const mapData = res.data;
this.map.labelsLayerMarksCzGoMap(mapData, component, show);
})
}
,
labelsLayerMarksFmjGoMap(httpFunc,component,show){
return httpFunc().then((res) => {
const mapData = res.data;
this.map.labelsLayerMarksFmjGoMap(mapData, component, show);
})
}
,
labelsLayerMarksTysGoMap(httpFunc,component,show){
return httpFunc().then((res) => {
const mapData = res.data;
this.map.labelsLayerMarksTysGoMap(mapData, component, show);
})
}
,
labelsLayerMarksDetectorUserGoMap(httpFunc, component, show) {
return httpFunc().then((res) => {
const mapData = res.data;
this.map.labelsLayerMarksDetectorUserList(mapData, component, show);
});
},
goMap(httpFunc, addFunc, component, show) {
return httpFunc().then((res) => {
// 根据数据格式不同,赋值不同,如果是个数组,就用res,如果不是就用res.data
let config = {};
if (Array.isArray(res)) {
config = { data: res };
// 给视频设备的conpanyType变成null,因为视频不受企业控制
if (res[0].iconType == 5) {
res.forEach((item) => {
item.companyType = null;
});
}
} else {
config = { data: res.data || res.rows };
}
addFunc(config, component, show);
return config.iconType;
});
},
userAlarm() {
userAlarm().then((res) => {
console.log("报警", res.data);
if (res.data.length > 0) {
// 报警
res.data.forEach((item) => {
this.map.deviceAlarm(item);
});
// 看看谁告消警
}
this.map.relieveAlarm(res.data);
});
},
myCenterShow(boolean) {
this.show = boolean;
},
// centerDataFunc(centerData) {
// this.centerData = centerData;
// console.log(centerData);
// this.show = true;
// },
// 更改下方列表
listChange(arr) {
console.log(arr)
// return;
this.selarr=[...arr]
this.map.allfilter(this.selarr, this.selarr1);
this.map.infowindowClose();
this.show = false;
this.$refs.mychild2.choice(this.selarr);
this.$refs.mychild.choice(this.selarr);
},
// 睇下列表更改
allCompany() {
if (this.selarr.length == 2) {
this.selarr = [];
} else {
this.selarr = this.company
.filter((item) => item.conpanyId != 6 && item.conpanyId != 12)
.map((item) => item.conpanyId);
}
// this.map.companyFilter(this.selarr);
this.map.allfilter(this.selarr, this.selarr1);
this.map.infowindowClose();
this.show = false;
this.$refs.mychild2.choice(this.selarr);
this.$refs.mychild.choice(this.selarr);
},
sel(index, item) {
this.map.infowindowClose();
this.show = false;
const ind = this.selarr.indexOf(item.val);
if (ind >= 0) {
this.selarr.splice(ind, 1);
if (item.val == 3) {
// this.$refs.mychild.choice(1);
// this.$refs.mychild2.choice(1);
} else {
// this.$refs.mychild.choice(item.val + 1);
// this.$refs.mychild2.choice(item.val + 1);
}
} else {
this.selarr.push(item.val);
// this.$refs.mychild.choice(item.val);
// this.$refs.mychild2.choice(item.val);
}
// this.map.companyFilter(this.selarr);
this.map.allfilter(this.selarr, this.selarr1);
this.$refs.mychild2.choice(this.selarr);
this.$refs.mychild.choice(this.selarr);
},
sel1(index, item) {
const ind = this.selarr1.indexOf(item.val);
if (ind >= 0) {
this.selarr1.splice(ind, 1);
} else {
this.selarr1.push(item.val);
}
this.map.allfilter(this.selarr, this.selarr1);
},
//用户的设备center
getDetectorInfoList(httpFunc, queryParams, title) {
console.log(queryParams);
return httpFunc(queryParams).then((res) => {
if (res.code == 200) {
this.detcetorList = res.rows;
this.centerUserId = queryParams.userId;
// 总数据
this.centerTotal = res.total;
// this.$refs.userCenter.fade = "fade";
this.otherCenterShow = false;
this.userCenterShow = true;
this.centerTitle = title;
// 传递回去
return res.code;
}
});
},
// 调压箱,阀门,场站睇下的设备
getTcqDevice(queryParams, title) {
console.log(queryParams);
return getTcqDevice(queryParams).then((res) => {
this.detcetorList = res;
this.centerUserId = queryParams.devId;
// 总数据
this.centerTotal = res.length;
// this.$refs.userCenter.fade = "fade";
this.userCenterShow = false;
this.otherCenterShow = true;
this.centerTitle = title;
// 传递回去
return res.code;
});
},
currentTime() {
setInterval(() => {
this.formatDate();
}, 1000);
},
formatDate() {
let date = new Date();
let year = date.getFullYear(); // 年
let month = date.getMonth() + 1; // 月
let day = date.getDate(); // 日
let week = date.getDay(); // 星期
let weekArr = [
"星期日",
"星期一",
"星期二",
"星期三",
"星期四",
"星期五",
"星期六",
];
let hour = date.getHours(); // 时
hour = hour < 10 ? "0" + hour : hour; // 如果只有一位,则前面补零
let minute = date.getMinutes(); // 分
minute = minute < 10 ? "0" + minute : minute; // 如果只有一位,则前面补零
let second = date.getSeconds(); // 秒
second = second < 10 ? "0" + second : second; // 如果只有一位,则前面补零
this.nowtime = `${hour}:${minute}:${second}`;
this.nowweek = `${weekArr[week]}`;
this.nowDate = `${year}${month}${day}`;
},
},
// 销毁定时器
beforeDestroy() {
if (this.formatDate) {
clearInterval(this.formatDate); // 在Vue实例销毁前,清除时间定时器
}
// 报警
if (this.alarmTimer) {
clearInterval(this.alarmTimer);
}
},
};
</script>
<style lang="scss" scoped>
.home {
position: relative;
height: 100vh;
}
.goSystem {
position: fixed;
z-index: 9999;
top: 50px;
right: 20px;
font-size: 14px;
color: #3cc4ff;
cursor: pointer;
padding: 3px 10px;
border: 1px solid rgb(57, 68, 124);
background: #12268e33;
/* &:hover {
color: #00ffff;
} */
}
#map {
position: absolute;
top: 0px;
bottom: 0;
width: 100%;
}
.banner-test {
width: 100%;
height: 85px;
position: relative;
top: -10px;
z-index: 998;
text-align: center;
background: url("../../assets/firstimage/topbk.svg");
background-size: 100% 100%;
background-repeat: no-repeat;
backdrop-filter: blur(4px);
}
.banner-test img {
width: 450px;
margin-top: 25px;
}
.leftbar {
width: 565px;
height: 93%;
position: fixed;
top: 70px;
z-index: 999;
background: url("../../assets/firstimage/le.png");
background-size: 105% 100%;
background-repeat: no-repeat;
margin-left: -20px;
pointer-events: none;
}
.rightbar {
width: 585px;
height: 93%;
position: fixed;
top: 70px;
z-index: 999;
right: 0;
background: url("../../assets/firstimage/ri.png");
background-size: 100% 100%;
background-repeat: no-repeat;
margin-right: -20px;
pointer-events: none;
}
.home-div {
width: 40%;
height: 70px;
position: fixed;
bottom: 0;
margin-left: 30%;
// z-index: 1000;
img {
width: 100%;
height: 100%;
position: absolute;
z-index: -1;
bottom: -10px;
}
}
.listingsSty {
/* height: 25px; */
// position: fixed;
margin-left: 25%;
width: 50%;
display: flex;
justify-content: space-between;
padding-top: 25px;
// font-family: 'arialbd';
}
.firsty {
// width: 15%;
min-width: 80px;
height: 35px;
text-align: center;
line-height: 35px;
color: #fff;
font-size: 16px;
// float: left;
// margin-left: 8%;
cursor: pointer;
// font-family: 'arialbd';
-webkit-transition: all 1.5s ease;
transition: all 1.5s ease;
}
.active {
color: #00ffff;
/* background: url(../../assets/mapinages/background.png); */
background-repeat: no-repeat;
background-size: 100% 100%;
text-shadow: 0 0 20px #00ffff, 0 0 35px #00ffff;
}
.weather-icon {
float: left;
width: 30px !important;
height: 30px !important;
margin-top: 10px !important;
margin-left: 10px !important;
padding-right: 5px;
}
.tttt {
background-image: -webkit-linear-gradient(
bottom,
rgb(134, 185, 233),
#ffffff
);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.typelist-div {
width: 755px;
height: 50px;
z-index: 9999;
position: fixed;
top: 0;
margin-top: 90px;
margin-left: calc((100% - 755px) / 2);
}
.list {
z-index: 9999;
float: left;
margin-left: 15px;
color: #fff;
line-height: auto;
text-align: center;
/* background: linear-gradient(86deg, #112238 0%, #086187 62%, #112238 100%);
box-shadow: inset 0px 1px 2px 1px #125c9b; */
font-size: 12px;
padding: 1px 10px;
cursor: pointer;
line-height: 26px;
border: 1px solid rgb(57, 68, 124);
background: #12268e33;
border-radius: 3px;
}
.list.active {
/* background: linear-gradient(86deg, #112238 0%, #32a3d3 62%, #112238 100%);
box-shadow: inset 0px 1px 2px 1px #125c9b; */
font-size: 12px;
color: #00ffff;
border: 1px solid #0f6ca1;
box-shadow: inset 0px 0px 10px 1px #0f6ca1;
background-size: 100% 100%;
background-repeat: no-repeat;
}
.list img {
width: 20px;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment