@ -412,6 +412,9 @@ public class PanelGroupService {
|
||||
mobileLayout = panelViewService.havaMobileLayout(templateData);
|
||||
}
|
||||
Map<String, String> dynamicDataMap = gson.fromJson(dynamicData, Map.class);
|
||||
if(dynamicDataMap == null){
|
||||
DataEaseException.throwException("Please use the template after v1.9");
|
||||
}
|
||||
|
||||
List<PanelViewInsertDTO> panelViews = new ArrayList<>();
|
||||
List<PanelGroupExtendDataDTO> viewsData = new ArrayList<>();
|
||||
|
||||
@ -19,7 +19,7 @@ import java.util.*;
|
||||
public class ReptileService {
|
||||
String blogUrl = "https://blog.fit2cloud.com/?cat=321";
|
||||
//获取最新的前几条数据
|
||||
private static int infoCount=1;
|
||||
private static int infoCount=5;
|
||||
|
||||
public List lastActive() {
|
||||
List result = new ArrayList();
|
||||
|
||||
@ -21,7 +21,7 @@ INSERT INTO `sys_menu` VALUES (750, 2, 0, 2, '导入用户', NULL, NULL, 999, NU
|
||||
|
||||
update system_parameter set sort = (sort + 1) where sort > 3;
|
||||
|
||||
update system_parameter set sort = 4 where param_key = 'ui.favicon'
|
||||
update system_parameter set sort = 4 where param_key = 'ui.favicon';
|
||||
|
||||
INSERT INTO `system_parameter`(`param_key`, `param_value`, `type`, `sort`) VALUES ('ui.showFoot', NULL, 'text', 18);
|
||||
INSERT INTO `system_parameter`(`param_key`, `param_value`, `type`, `sort`) VALUES ('ui.footContent', NULL, 'blob', 19);
|
||||
|
||||
BIN
frontend/src/assets/wizard_enterprise.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
81
frontend/src/assets/wizard_enterprise.svg
Normal file
@ -0,0 +1,81 @@
|
||||
<svg width="160" height="190" viewBox="0 0 160 190" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_3828_138376)">
|
||||
<g opacity="0.5" filter="url(#filter0_d_3828_138376)">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M42.9111 49.7578C42.9111 45.8918 46.0451 42.7578 49.9111 42.7578H124.771C128.637 42.7578 131.771 45.8918 131.771 49.7578V151.42C131.771 154.138 128.875 155.876 126.477 154.597L122.358 152.4C121.299 151.835 120.028 151.835 118.97 152.4L111.25 156.517C110.191 157.081 108.921 157.081 107.862 156.517L100.143 152.4C99.0839 151.835 97.8133 151.835 96.7545 152.4L89.0352 156.517C87.9764 157.081 86.7058 157.081 85.647 156.517L77.9277 152.4C76.8689 151.835 75.5983 151.835 74.5395 152.4L66.8202 156.517C65.7614 157.081 64.4908 157.081 63.432 156.517L55.7127 152.4C54.6539 151.835 53.3833 151.835 52.3245 152.4L48.2052 154.597C45.8073 155.876 42.9111 154.138 42.9111 151.42V49.7578Z" fill="#FCFDFF"/>
|
||||
</g>
|
||||
<g filter="url(#filter1_d_3828_138376)">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M32.9111 59.7578C32.9111 55.8918 36.0451 52.7578 39.9111 52.7578H114.771C118.637 52.7578 121.771 55.8918 121.771 59.7578V161.42C121.771 164.138 118.875 165.876 116.477 164.597L112.358 162.4C111.299 161.835 110.028 161.835 108.97 162.4L101.25 166.517C100.191 167.081 98.9208 167.081 97.862 166.517L90.1427 162.4C89.0839 161.835 87.8133 161.835 86.7545 162.4L79.0352 166.517C77.9764 167.081 76.7058 167.081 75.647 166.517L67.9277 162.4C66.8689 161.835 65.5983 161.835 64.5395 162.4L56.8202 166.517C55.7614 167.081 54.4908 167.081 53.432 166.517L45.7127 162.4C44.6539 161.835 43.3833 161.835 42.3245 162.4L38.2052 164.597C35.8073 165.876 32.9111 164.138 32.9111 161.42V59.7578Z" fill="#FCFDFF"/>
|
||||
</g>
|
||||
<path d="M139 54C139 65.0457 130.046 74 119 74C107.954 74 99 65.0457 99 54C99 42.9543 107.954 34 119 34C130.046 34 139 42.9543 139 54Z" fill="url(#paint0_linear_3828_138376)"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M119 35C108.507 35 100 43.5066 100 54C100 64.4934 108.507 73 119 73C129.493 73 138 64.4934 138 54C138 43.5066 129.493 35 119 35ZM98 54C98 42.402 107.402 33 119 33C130.598 33 140 42.402 140 54C140 65.598 130.598 75 119 75C107.402 75 98 65.598 98 54Z" fill="white"/>
|
||||
<path d="M113.5 50V49.5C113.5 46.46 115.963 44 119 44C122.037 44 124.5 46.46 124.5 49.5V50H127C127.552 50 128 50.45 128 51V63C128 63.55 127.552 64 127 64H111C110.447 64 110 63.55 110 63V51C110 50.45 110.447 50 111 50H113.5ZM122.5 49.5C122.5 47.565 120.933 46 119 46C118.54 45.9999 118.085 46.0903 117.66 46.2662C117.236 46.442 116.85 46.6998 116.525 47.0248C116.2 47.3499 115.942 47.7358 115.766 48.1605C115.59 48.5852 115.5 49.0403 115.5 49.5V50H122.5V49.5ZM119 59.5C119.663 59.5 120.299 59.2366 120.768 58.7678C121.237 58.2989 121.5 57.663 121.5 57C121.5 56.337 121.237 55.7011 120.768 55.2322C120.299 54.7634 119.663 54.5 119 54.5C118.337 54.5 117.701 54.7634 117.232 55.2322C116.763 55.7011 116.5 56.337 116.5 57C116.5 57.663 116.763 58.2989 117.232 58.7678C117.701 59.2366 118.337 59.5 119 59.5V59.5Z" fill="white"/>
|
||||
<mask id="mask0_3828_138376" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="53" y="59" width="46" height="46">
|
||||
<circle cx="75.9255" cy="81.616" r="22.616" fill="white"/>
|
||||
</mask>
|
||||
<g mask="url(#mask0_3828_138376)">
|
||||
<path d="M75.9254 81.6162L84.5582 102.521C88.6963 100.812 92.2333 97.9134 94.7226 94.1914C97.2119 90.4695 98.5414 86.094 98.5414 81.6162H75.9254Z" fill="url(#paint1_linear_3828_138376)"/>
|
||||
<path d="M75.9255 81.616L79.4276 59.2719C78.2702 59.0898 77.0979 59 75.9255 59C63.5188 59 53.3096 69.2104 53.3096 81.6184C53.3096 83.7413 53.6089 85.8543 54.1975 87.8948L75.9255 81.616Z" fill="#3370FF"/>
|
||||
<path d="M75.9263 81.6162L54.1709 87.7878C56.9221 97.4893 65.8443 104.232 75.9263 104.232C78.9519 104.232 81.9451 103.626 84.7338 102.446L75.9263 81.6162Z" fill="#3370FF"/>
|
||||
</g>
|
||||
<circle cx="75.9255" cy="81.6158" r="7.53865" fill="white"/>
|
||||
<path d="M54.4467 113.808H49V119.254H54.4467V113.808Z" fill="#3370FF"/>
|
||||
<path d="M99 113.808H58.7625V119.254H99V113.808Z" fill="url(#paint2_linear_3828_138376)"/>
|
||||
<path d="M54.4467 123.608H49V129.055H54.4467V123.608Z" fill="url(#paint3_linear_3828_138376)"/>
|
||||
<path d="M99 123.608H58.7625V129.055H99V123.608Z" fill="url(#paint4_linear_3828_138376)"/>
|
||||
<path d="M54.4467 134.936H49V140.382H54.4467V134.936Z" fill="url(#paint5_linear_3828_138376)"/>
|
||||
<path d="M99 134.936H58.7625V140.382H99V134.936Z" fill="url(#paint6_linear_3828_138376)"/>
|
||||
</g>
|
||||
<defs>
|
||||
<filter id="filter0_d_3828_138376" x="18.9111" y="24.7578" width="136.86" height="162.183" 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 dy="6"/>
|
||||
<feGaussianBlur stdDeviation="12"/>
|
||||
<feComposite in2="hardAlpha" operator="out"/>
|
||||
<feColorMatrix type="matrix" values="0 0 0 0 0.745833 0 0 0 0 0.562113 0 0 0 0 0.152274 0 0 0 0.1 0"/>
|
||||
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_3828_138376"/>
|
||||
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_3828_138376" result="shape"/>
|
||||
</filter>
|
||||
<filter id="filter1_d_3828_138376" x="8.91113" y="34.7578" width="136.86" height="162.183" 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 dy="6"/>
|
||||
<feGaussianBlur stdDeviation="12"/>
|
||||
<feComposite in2="hardAlpha" operator="out"/>
|
||||
<feColorMatrix type="matrix" values="0 0 0 0 0.745833 0 0 0 0 0.562113 0 0 0 0 0.152274 0 0 0 0.1 0"/>
|
||||
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_3828_138376"/>
|
||||
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_3828_138376" result="shape"/>
|
||||
</filter>
|
||||
<linearGradient id="paint0_linear_3828_138376" x1="99" y1="54.0183" x2="139" y2="54.0183" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#EF713A"/>
|
||||
<stop offset="1" stop-color="#FFAE5A"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint1_linear_3828_138376" x1="75.9254" y1="92.0781" x2="98.5414" y2="92.0781" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#EF713A"/>
|
||||
<stop offset="1" stop-color="#FFAE5A"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint2_linear_3828_138376" x1="71.483" y1="110.978" x2="111.83" y2="110.978" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#EFEFFB"/>
|
||||
<stop offset="1" stop-color="#D0D7F6"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint3_linear_3828_138376" x1="32.1082" y1="136.282" x2="37.5683" y2="136.282" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#FA2853"/>
|
||||
<stop offset="1" stop-color="#FF5676"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint4_linear_3828_138376" x1="71.483" y1="120.454" x2="111.83" y2="120.454" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#EFEFFB"/>
|
||||
<stop offset="1" stop-color="#D0D7F6"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint5_linear_3828_138376" x1="49" y1="137.661" x2="54.4467" y2="137.661" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#EF713A"/>
|
||||
<stop offset="1" stop-color="#FFAE5A"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint6_linear_3828_138376" x1="71.483" y1="131.139" x2="111.83" y2="131.139" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#EFEFFB"/>
|
||||
<stop offset="1" stop-color="#D0D7F6"/>
|
||||
</linearGradient>
|
||||
<clipPath id="clip0_3828_138376">
|
||||
<rect width="160" height="190" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 7.3 KiB |
BIN
frontend/src/assets/wizard_help.png
Normal file
|
After Width: | Height: | Size: 4.6 KiB |
44
frontend/src/assets/wizard_help.svg
Normal file
@ -0,0 +1,44 @@
|
||||
<svg width="160" height="190" viewBox="0 0 160 190" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g opacity="0.9">
|
||||
<path d="M64.7415 83.2426C65.0559 83.2302 65.3703 83.2666 65.6735 83.3507L132.113 102.287C133.774 102.76 134.72 104.624 134.652 106.947L122.186 103.395H121.956H121.591L121.308 103.287C120.82 103.371 120.358 103.565 119.957 103.854C119.822 103.936 119.696 104.031 119.579 104.137L119.268 104.421C118.975 104.723 118.713 105.054 118.485 105.407L115.527 110.04C115.031 110.857 114.315 111.517 113.46 111.944C113.14 112.087 112.797 112.169 112.447 112.187H112.137H111.839L71.4949 100.585C71.2936 100.553 71.0884 100.553 70.8871 100.585H70.617C69.9876 100.746 69.3995 101.038 68.8918 101.443C68.3842 101.849 67.9685 102.357 67.6725 102.935C67.578 103.111 67.4834 103.273 67.4024 103.462C67.2917 103.671 67.1969 103.888 67.1187 104.11L41.0508 138.526C41.1523 137.984 41.2968 137.451 41.483 136.932L59.0417 88.6318C60.1358 85.4982 62.5535 83.2831 64.7415 83.2426Z" fill="#BC770A"/>
|
||||
<g opacity="0.9">
|
||||
<path d="M138.405 82.7308L110.567 136.393L61.7812 111.081L89.6186 57.3652L138.405 82.7308ZM113.62 123.994L115.727 119.942L119.063 113.513L134.096 84.5272L90.7802 62.0521L73.5591 95.184L70.304 101.465L80.6906 106.867L113.62 123.994Z" fill="white"/>
|
||||
<path d="M112.499 128.112L114.849 123.574L118.577 116.389L135.379 84.0129L90.3345 60.6328L71.1009 97.7357L67.4541 104.746L78.2595 110.351L112.499 128.112Z" fill="#FBFBFF"/>
|
||||
<path d="M76.6533 103.29L106.449 118.728L107.975 115.783L108.273 115.23L100.06 110.975L78.6253 99.8184L76.6533 103.29Z" fill="#CCCCCC"/>
|
||||
<path d="M112.229 108.338L108.447 106.38L82.5273 92.873L80.3662 96.709L110.27 112.296C110.918 110.972 111.567 109.648 112.229 108.338Z" fill="#D8D8D8"/>
|
||||
<path d="M115.309 102.249L107.556 98.1967L85.8507 86.9727L83.9463 90.4169L113.526 105.76L115.309 102.249Z" fill="#D8D8D8"/>
|
||||
<path d="M87.5391 83.8903L120.185 100.828C120.874 99.477 121.535 98.2209 122.224 96.9107L115.903 93.6421L89.6461 80.0273L87.5391 83.8903Z" fill="#D8D8D8"/>
|
||||
</g>
|
||||
<path d="M69.6975 104.135C69.603 104.297 69.5084 104.473 69.4274 104.648L67.4014 103.406C67.4824 103.217 67.577 103.054 67.6715 102.879L69.6975 104.135Z" fill="#F1C270"/>
|
||||
<path d="M69.4268 104.639C69.3186 104.849 69.2238 105.065 69.1432 105.287L67.1172 104.045C67.1953 103.822 67.2901 103.605 67.4008 103.396L69.4268 104.639Z" fill="#F1C270"/>
|
||||
<path d="M67.1187 104.057L69.1447 105.299L43.0768 139.768L41.0508 138.526L67.1187 104.057Z" fill="#F1C270"/>
|
||||
<path d="M72.6832 101.788C72.0516 101.944 71.4614 102.234 70.953 102.64C70.4447 103.046 70.0304 103.557 69.7387 104.138L68.6312 103.517L68.361 103.355L68.1044 103.193L67.8478 103.031L67.6182 102.882C67.9259 102.308 68.3526 101.806 68.8696 101.41C69.3867 101.015 69.9823 100.733 70.6167 100.586L72.6832 101.788Z" fill="#F1C270"/>
|
||||
<path d="M72.9114 101.76H72.6412L72.3981 101.612L72.155 101.45L71.8849 101.301L71.6282 101.125L71.3311 100.99L71.0745 100.842L70.8178 100.68L70.6152 100.585H70.8854L72.8979 101.828L72.6818 101.612L72.4251 101.463L72.1685 101.301L71.8984 101.139L71.6417 100.977L71.3311 100.815L71.0745 100.653L70.8448 100.518L72.8709 101.76H72.9114Z" fill="#F1C270"/>
|
||||
<path d="M73.5181 101.842C73.3192 101.792 73.1153 101.765 72.9103 101.761L72.6807 101.612L72.4375 101.464L72.1674 101.301L71.9108 101.139L71.6406 100.977L71.33 100.815L71.0734 100.653L70.8438 100.518C71.0451 100.486 71.2502 100.486 71.4516 100.518L73.5181 101.842Z" fill="#F1C270"/>
|
||||
<path d="M111.853 112.094L113.866 113.35L73.5211 101.842L71.4951 100.586L111.853 112.094Z" fill="#F1C270"/>
|
||||
<path d="M114.161 113.404H113.864L111.852 112.094H112.149L114.161 113.404Z" fill="#F1C270"/>
|
||||
<path d="M113.676 113.108L113.932 113.256L112.136 112.162L113.676 113.108Z" fill="#F1C270"/>
|
||||
<path d="M114.162 113.405H114.094H114.027L113.838 113.283L113.635 113.162L113.081 112.743L112.892 112.621L112.69 112.5L112.5 112.378L112.311 112.27L112.136 112.162H112.446L114.472 113.405H114.162Z" fill="#F1C270"/>
|
||||
<path d="M115.484 113.174C115.167 113.323 114.822 113.406 114.471 113.417L112.445 112.175C112.795 112.157 113.138 112.074 113.458 111.932L115.484 113.174Z" fill="#F1C270"/>
|
||||
<path d="M117.551 111.268C117.063 112.092 116.344 112.754 115.484 113.173L113.458 111.93C114.311 111.506 115.027 110.851 115.525 110.039L117.551 111.268Z" fill="#F1C270"/>
|
||||
<path d="M118.456 105.461L120.482 106.704L117.551 111.269L115.525 110.026L118.456 105.461Z" fill="#F1C270"/>
|
||||
<path d="M121.307 105.729C121.012 106.029 120.749 106.359 120.524 106.715L118.498 105.459C118.73 105.108 118.992 104.778 119.281 104.473L121.307 105.716L119.281 104.473L119.592 104.189L121.618 105.446C121.508 105.533 121.404 105.627 121.307 105.729V105.729Z" fill="#F1C270"/>
|
||||
<path d="M121.955 105.149L121.577 105.446L119.551 104.19C119.668 104.084 119.794 103.989 119.929 103.906L121.955 105.149Z" fill="#F1C270"/>
|
||||
<path d="M123.265 104.638C122.778 104.717 122.316 104.906 121.914 105.192L121.671 105.043L121.414 104.894L121.198 104.638L120.942 104.476L120.672 104.314L120.415 104.152L120.158 103.989L119.929 103.854C120.338 103.561 120.809 103.367 121.306 103.287L123.265 104.638Z" fill="#F1C270"/>
|
||||
<path d="M123.562 104.638C123.464 104.624 123.364 104.624 123.265 104.638L123.035 104.489L122.779 104.327L122.522 104.165L122.252 104.003L121.982 103.841L121.725 103.679L121.482 103.53L121.307 103.287H121.604L123.63 104.53L123.387 104.395L123.144 104.233L122.887 104.071L122.617 103.908L122.36 103.746L122.09 103.584L121.847 103.436L121.536 103.287H121.901L123.927 104.53C123.802 104.552 123.679 104.588 123.562 104.638V104.638Z" fill="#F1C270"/>
|
||||
<path d="M124.156 104.638H123.926L123.697 104.503L123.44 104.341L123.184 104.179L122.913 104.016L122.657 103.8L122.387 103.638L122.144 103.49L121.9 103.287H122.13L124.156 104.638Z" fill="#F1C270"/>
|
||||
<path d="M134.598 106.949L136.624 108.205L124.157 104.639L122.131 103.396L134.598 106.949Z" fill="#F1C270"/>
|
||||
<path d="M107.746 120.035L32 116.158L36.5112 28L97.8722 31.1471L111.528 46.2746L107.746 120.035Z" fill="white"/>
|
||||
<path d="M49.6396 56.1357L49.9367 50.1793L45.1284 49.9362L44.8177 55.8926L42.0488 55.744L42.7647 41.5215L45.5471 41.6566L45.2499 47.4779L50.0718 47.7211L50.369 41.9132L53.1378 42.0482L52.422 56.2843L49.6396 56.1357Z" fill="#8F959E"/>
|
||||
<path d="M55.7314 56.4472L56.4743 42.2246L65.848 42.6973L65.7129 45.2096L59.1757 44.8449L59.0136 48.1811L64.6189 48.4647L64.4973 50.9364L58.811 50.6123L58.6354 54.07L65.2267 54.4077L65.1051 56.8929L55.7314 56.4472Z" fill="#8F959E"/>
|
||||
<path d="M67.8203 57.0661L68.5497 42.8301L71.3321 42.9787L70.7243 54.7295L77.1805 55.0537L77.0589 57.5389L67.8203 57.0661Z" fill="#8F959E"/>
|
||||
<path d="M89.6196 50.0851C89.3808 50.598 89.0408 51.0574 88.6201 51.4358C88.1759 51.8285 87.6567 52.1271 87.0938 52.3137C86.4563 52.5334 85.7807 52.6207 85.1084 52.5703L82.407 52.4353L82.1369 57.8379L79.3545 57.7029L80.0839 43.4668L85.5946 43.7504C86.2693 43.7772 86.9332 43.9283 87.5531 44.1962C88.061 44.4427 88.5154 44.7869 88.8902 45.2092C89.2771 45.6349 89.5714 46.1362 89.7547 46.6814C90.121 47.803 90.0584 49.0205 89.5791 50.0986L89.6196 50.0851ZM86.7697 46.803C86.5772 46.604 86.3462 46.4463 86.0907 46.3394C85.8353 46.2326 85.5608 46.1789 85.2839 46.1816L82.6907 46.0466L82.488 49.95L85.0948 50.0716C85.3662 50.1048 85.6415 50.0825 85.9039 50.0058C86.1663 49.9292 86.4103 49.7999 86.6211 49.6259C86.9941 49.259 87.2163 48.7657 87.2438 48.2433C87.2713 47.7208 87.1021 47.207 86.7697 46.803V46.803Z" fill="#8F959E"/>
|
||||
<path d="M100.414 64.3116L40.9404 61.2676L40.7292 65.3952L100.202 68.4392L100.414 64.3116Z" fill="#DEE0E3"/>
|
||||
<path d="M99.8697 74.9717L40.3965 71.9277L40.1852 76.0554L99.6585 79.0994L99.8697 74.9717Z" fill="#DEE0E3"/>
|
||||
<path d="M99.3394 85.6358L39.8662 82.5918L39.6549 86.7194L99.1282 89.7634L99.3394 85.6358Z" fill="#DEE0E3"/>
|
||||
<path d="M98.7808 96.3213L39.3076 93.2773L39.0964 97.405L98.5696 100.449L98.7808 96.3213Z" fill="#DEE0E3"/>
|
||||
<path d="M98.2359 106.989L38.7627 103.945L38.5514 108.073L98.0247 111.117L98.2359 106.989Z" fill="#DEE0E3"/>
|
||||
<path d="M111.527 46.276L97.1289 45.5331L97.8718 31.1484L111.527 46.276Z" fill="#DEE0E3"/>
|
||||
<path d="M70.8846 100.586C71.0324 100.565 71.1826 100.565 71.3304 100.586L111.85 112.135H112.148C112.61 112.162 113.072 112.084 113.498 111.905C114.333 111.483 115.034 110.838 115.524 110.041L118.455 105.476C118.68 105.124 118.943 104.798 119.239 104.503L119.549 104.206C119.666 104.1 119.793 104.005 119.928 103.923C120.33 103.605 120.802 103.388 121.305 103.288H121.602H121.967L134.663 106.894L144.267 109.717C145.82 110.163 146.387 112.418 145.617 114.741L115.794 160.232C115.052 162.312 113.458 163.784 112.013 163.811C111.816 163.845 111.615 163.845 111.418 163.811L42.2369 144.01C41.6014 143.266 41.1603 142.375 40.9529 141.418C40.7455 140.461 40.7783 139.468 41.0483 138.527L67.1163 104.058C67.1944 103.835 67.2892 103.618 67.3999 103.409C67.481 103.22 67.5755 103.058 67.6701 102.883C67.972 102.314 68.3903 101.816 68.8976 101.421C69.4049 101.025 69.99 100.741 70.6145 100.586H70.8846Z" fill="#F4C04C"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.7 KiB |
BIN
frontend/src/assets/wizard_main_bg.png
Normal file
|
After Width: | Height: | Size: 125 KiB |
20
frontend/src/assets/wizard_main_bg.svg
Normal file
@ -0,0 +1,20 @@
|
||||
<svg width="1440" height="500" viewBox="0 0 1440 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_3828_138290)">
|
||||
<rect width="1440" height="500" fill="#698CF7"/>
|
||||
<mask id="mask0_3828_138290" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="1440" height="500">
|
||||
<rect width="1440" height="500" fill="#E1EAFF"/>
|
||||
</mask>
|
||||
<g mask="url(#mask0_3828_138290)">
|
||||
<rect opacity="0.3" x="997.615" y="-520.646" width="649.042" height="904.316" rx="324.521" transform="rotate(30 997.615 -520.646)" fill="url(#paint0_linear_3828_138290)"/>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<linearGradient id="paint0_linear_3828_138290" x1="896.257" y1="-118.555" x2="1412.82" y2="314.888" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#698CF7"/>
|
||||
<stop offset="1" stop-color="#2C49F1" stop-opacity="0.301737"/>
|
||||
</linearGradient>
|
||||
<clipPath id="clip0_3828_138290">
|
||||
<rect width="1440" height="500" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 942 B |
BIN
frontend/src/assets/wizard_main_bg_inner.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
266
frontend/src/assets/wizard_main_bg_inner.svg
Normal file
|
After Width: | Height: | Size: 65 KiB |
BIN
frontend/src/assets/wizard_quick_start.png
Normal file
|
After Width: | Height: | Size: 6.2 KiB |
47
frontend/src/assets/wizard_quick_start.svg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
frontend/src/assets/wizard_video1.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
9
frontend/src/assets/wizard_video1.svg
Normal file
|
After Width: | Height: | Size: 424 KiB |
BIN
frontend/src/assets/wizard_video2.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
9
frontend/src/assets/wizard_video2.svg
Normal file
|
After Width: | Height: | Size: 407 KiB |
BIN
frontend/src/assets/wizard_video3.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
9
frontend/src/assets/wizard_video3.svg
Normal file
|
After Width: | Height: | Size: 346 KiB |
BIN
frontend/src/assets/wizard_wechat-group.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
frontend/src/assets/wizard_wechat-official.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
9
frontend/src/assets/wizard_wechat_group.svg
Normal file
|
After Width: | Height: | Size: 89 KiB |
9
frontend/src/assets/wizard_wechat_official .svg
Normal file
|
After Width: | Height: | Size: 50 KiB |
@ -337,7 +337,11 @@ export default {
|
||||
const _this = this
|
||||
_this.timer = setInterval(() => {
|
||||
if (_this.$store.state.cacheStyleChangeTimes > 0) {
|
||||
const cacheRequest = _this.savePrepare()
|
||||
const requestInfo = _this.savePrepare()
|
||||
const cacheRequest ={
|
||||
...this.panelInfo,
|
||||
...requestInfo
|
||||
}
|
||||
saveCache(cacheRequest)
|
||||
_this.$store.state.cacheStyleChangeTimes = 0
|
||||
}
|
||||
|
||||
@ -218,7 +218,7 @@ export function colorReverse(OldColorValue) {
|
||||
}
|
||||
|
||||
export function imgUrlTrans(url) {
|
||||
if(url && url.indexOf('static-resource') > -1){
|
||||
if(url && typeof url === 'string' && url.indexOf('static-resource') > -1){
|
||||
return process.env.VUE_APP_BASE_API + url.replace('/static-resource','static-resource')
|
||||
}else {
|
||||
return url
|
||||
|
||||
56
frontend/src/components/deCustomCm/deDatePick.vue
Normal file
@ -0,0 +1,56 @@
|
||||
<template>
|
||||
<div class="de-date-pick">
|
||||
<el-date-picker
|
||||
:value="value"
|
||||
size="small"
|
||||
:disabled="disabled"
|
||||
type="daterange"
|
||||
@input="handleChange"
|
||||
range-separator="-"
|
||||
:start-placeholder="$t('commons.date.start_date')"
|
||||
:end-placeholder="$t('commons.date.end_date')"
|
||||
>
|
||||
</el-date-picker>
|
||||
<svg-icon icon-class="icon_calendar_outlined" class="calendar-outlined" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "DeDatePick",
|
||||
props: {
|
||||
disabled: Boolean,
|
||||
value: Array,
|
||||
},
|
||||
methods: {
|
||||
handleChange(val) {
|
||||
this.$emit("input", val);
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.de-date-pick {
|
||||
width: 256px;
|
||||
position: relative;
|
||||
.el-input__icon {
|
||||
display: none;
|
||||
}
|
||||
.el-range-input {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.el-date-editor {
|
||||
padding-left: 12px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.calendar-outlined {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
right: 13px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
76
frontend/src/components/deCustomCm/dePwd.vue
Normal file
@ -0,0 +1,76 @@
|
||||
<template>
|
||||
<el-input
|
||||
:value="value"
|
||||
:placeholder="placeholder"
|
||||
:type="type"
|
||||
:disabled="disabled"
|
||||
class="de-pwd-input"
|
||||
@input="handleInput"
|
||||
@change="handleChange"
|
||||
>
|
||||
<svg-icon
|
||||
@click="handleClick"
|
||||
v-if="!showPwd || buttonDisabled"
|
||||
slot="suffix"
|
||||
icon-class="de_pwd_invisible"
|
||||
/>
|
||||
<svg-icon
|
||||
@click="handleClick"
|
||||
v-else
|
||||
slot="suffix"
|
||||
icon-class="de_pwd_visible"
|
||||
/>
|
||||
</el-input>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { log } from "@antv/g2plot/lib/utils";
|
||||
export default {
|
||||
name: "DePwd",
|
||||
inject: {
|
||||
elForm: {
|
||||
default: "",
|
||||
},
|
||||
},
|
||||
props: {
|
||||
disabled: Boolean,
|
||||
placeholder: String,
|
||||
value: String,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
showPwd: false,
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
buttonDisabled() {
|
||||
return this.$options.propsData.hasOwnProperty("disabled")
|
||||
? this.disabled
|
||||
: (this.elForm || {}).disabled;
|
||||
},
|
||||
type() {
|
||||
return !this.showPwd || this.buttonDisabled ? "password" : "text";
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
handleClick() {
|
||||
if (this.buttonDisabled) return;
|
||||
this.showPwd = !this.showPwd;
|
||||
},
|
||||
handleInput(val) {
|
||||
this.$emit("input", val);
|
||||
},
|
||||
handleChange(val) {
|
||||
this.$emit("change", val);
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.de-pwd-input {
|
||||
.el-input__suffix {
|
||||
right: 12px;
|
||||
font-size: 16px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -296,6 +296,16 @@ export default {
|
||||
border:1px solid var(--BrDateColor, #dfe4ed) !important;
|
||||
background: var(--BgDateColor, #FFFFFF) !important;
|
||||
|
||||
.el-picker-panel__sidebar {
|
||||
background: var(--BgDateColor, #FFFFFF) !important;
|
||||
border-right: 1px solid var(--BrDateColor, #dfe4ed) !important;
|
||||
|
||||
.el-picker-panel__shortcut {
|
||||
color: var(--DateColor, #606266);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.popper__arrow,
|
||||
.popper__arrow::after {
|
||||
display: none !important;
|
||||
@ -310,6 +320,10 @@ export default {
|
||||
border-bottom:1px solid var(--BrDateColor, #e6ebf5) !important;
|
||||
}
|
||||
|
||||
.el-date-table td.in-range:not(.end-date):not(.start-date) div span {
|
||||
color: #3370ff;
|
||||
}
|
||||
|
||||
.el-date-range-picker__header,
|
||||
.el-date-table th,
|
||||
.el-date-table__row,
|
||||
|
||||
@ -1 +1,3 @@
|
||||
<svg t="1625568065890" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3115" width="128" height="128"><path d="M844.8 650.24v-256c0-66.56-28.16-176.64-79.36-227.84-48.64-48.64-135.68-97.28-199.68-99.84v-25.6c0-23.04-17.92-40.96-40.96-40.96h-5.12c-23.04 0-40.96 17.92-40.96 40.96v25.6c-64 7.68-138.24 53.76-184.32 99.84-51.2 51.2-71.68 161.28-71.68 227.84v256l-151.04 148.48v56.32h304.64c0 87.04 71.68 158.72 158.72 158.72 87.04 0 156.16-71.68 158.72-158.72h281.6v-56.32L844.8 650.24zM535.04 949.76c-51.2 0-92.16-43.52-92.16-94.72h186.88c-2.56 53.76-43.52 94.72-94.72 94.72z" fill="" p-id="3116"></path></svg>
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.33342 2.30014V1.66667C8.33342 1.43655 8.51996 1.25 8.75008 1.25H11.2501C11.4802 1.25 11.6667 1.43655 11.6667 1.66667V2.30014C14.5421 3.06408 16.6667 5.75845 16.6667 8.96505V13.75H17.9167C18.1469 13.75 18.3334 13.9365 18.3334 14.1667V15C18.3334 15.2301 18.1469 15.4167 17.9167 15.4167H2.08341C1.8533 15.4167 1.66675 15.2301 1.66675 15V14.1667C1.66675 13.9365 1.8533 13.75 2.08341 13.75H3.33341V8.96505C3.33341 5.75845 5.45804 3.06408 8.33342 2.30014ZM5.00008 13.75H15.0001V8.96739C15.0001 6.08591 12.7615 3.75 10.0001 3.75C7.23866 3.75 5.00008 6.08591 5.00008 8.96739V13.75ZM7.91675 16.6667H12.0834C12.3135 16.6667 12.5001 16.8532 12.5001 17.0833V17.9167C12.5001 18.1468 12.3135 18.3333 12.0834 18.3333H7.91675C7.68663 18.3333 7.50008 18.1468 7.50008 17.9167V17.0833C7.50008 16.8532 7.68663 16.6667 7.91675 16.6667Z" fill="#1F2329"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 652 B After Width: | Height: | Size: 988 B |
@ -1 +1,3 @@
|
||||
<svg width="128" height="100" xmlns="http://www.w3.org/2000/svg"><path d="M27.429 63.638c0-2.508-.893-4.65-2.679-6.424-1.786-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.465 2.662-1.785 1.774-2.678 3.916-2.678 6.424 0 2.508.893 4.65 2.678 6.424 1.786 1.775 3.94 2.662 6.465 2.662 2.524 0 4.678-.887 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm13.714-31.801c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM71.714 65.98l7.215-27.116c.285-1.23.107-2.378-.536-3.443-.643-1.064-1.56-1.762-2.75-2.094-1.19-.33-2.333-.177-3.429.462-1.095.639-1.81 1.573-2.143 2.804l-7.214 27.116c-2.857.237-5.405 1.266-7.643 3.088-2.238 1.822-3.738 4.152-4.5 6.992-.952 3.644-.476 7.098 1.429 10.364 1.905 3.265 4.69 5.37 8.357 6.317 3.667.947 7.143.474 10.429-1.42 3.285-1.892 5.404-4.66 6.357-8.305.762-2.84.619-5.607-.429-8.305-1.047-2.697-2.762-4.85-5.143-6.46zm47.143-2.342c0-2.508-.893-4.65-2.678-6.424-1.786-1.775-3.94-2.662-6.465-2.662-2.524 0-4.678.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.786 1.775 3.94 2.662 6.464 2.662 2.524 0 4.679-.887 6.465-2.662 1.785-1.775 2.678-3.916 2.678-6.424zm-45.714-45.43c0-2.509-.893-4.65-2.679-6.425C68.68 10.01 66.524 9.122 64 9.122c-2.524 0-4.679.887-6.464 2.661-1.786 1.775-2.679 3.916-2.679 6.425 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm32 13.629c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM128 63.638c0 12.351-3.357 23.78-10.071 34.286-.905 1.372-2.19 2.058-3.858 2.058H13.93c-1.667 0-2.953-.686-3.858-2.058C3.357 87.465 0 76.037 0 63.638c0-8.613 1.69-16.847 5.071-24.703C8.452 31.08 13 24.312 18.714 18.634c5.715-5.68 12.524-10.199 20.429-13.559C47.048 1.715 55.333.035 64 .035c8.667 0 16.952 1.68 24.857 5.04 7.905 3.36 14.714 7.88 20.429 13.559 5.714 5.678 10.262 12.446 13.643 20.301 3.38 7.856 5.071 16.09 5.071 24.703z"/></svg>
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M9.95732 2.23333C11.4233 2.23457 12.8609 2.51873 14.173 3.05389L13.143 4.32519C12.2618 4.01761 11.3219 3.83764 10.3608 3.79745L9.94763 3.78882L9.49907 3.79781C8.53051 3.83976 7.57724 4.02841 6.65725 4.36221C5.66538 4.72182 4.77182 5.23108 4.00203 5.87724C3.2481 6.51138 2.65553 7.24102 2.24347 8.04406C1.82614 8.85528 1.61393 9.70826 1.61393 10.5723C1.61393 11.431 1.82467 12.2681 2.23902 13.0591C2.64725 13.8333 3.23586 14.5348 3.98645 15.1423C4.75126 15.7593 5.64612 16.246 6.6442 16.5873C7.68571 16.9445 8.79681 17.1254 9.9453 17.1254C10.4081 17.1254 10.8686 17.0949 11.3263 17.0342L11.7829 16.9635L12.3424 16.8523L12.4003 16.8342C12.4772 16.7999 12.5509 16.7262 12.6067 16.6291C12.6885 16.4854 12.7224 16.3108 12.7047 16.1387L12.6818 16.0106L12.6511 15.9021L12.5942 15.6742C12.3973 14.7598 12.567 13.8154 13.0729 13.0449C13.6184 12.2128 14.4944 11.6932 15.4454 11.6276L15.6503 11.6206H17.126L17.2402 11.613C17.7292 11.5473 18.1334 11.0663 18.2325 10.4628L18.2498 10.3215L18.2555 10.1388L18.2534 10.0672L18.2274 9.83713L18.1767 9.53908C18.0393 8.84688 17.7674 8.17788 17.3655 7.54416C17.2547 7.36867 17.1351 7.19746 17.0068 7.03077L18.0056 5.7969C18.2503 6.08855 18.4734 6.39348 18.6741 6.71071C19.1867 7.51849 19.5329 8.38228 19.7044 9.27682L19.7605 9.61367L19.8022 9.97437L19.8066 10.1743L19.8017 10.3566C19.7205 11.8619 18.6412 13.0669 17.2955 13.1609L17.126 13.1668H15.6526C15.1452 13.1692 14.6685 13.4395 14.3708 13.8932C14.1395 14.2476 14.0364 14.6795 14.0739 15.1046L14.0987 15.2861L14.1734 15.577C14.3441 16.1868 14.2646 16.8522 13.9571 17.3921C13.7119 17.8225 13.3409 18.1393 12.9125 18.2941L12.7492 18.3444L12.1473 18.4676C11.7127 18.5482 11.2766 18.6047 10.8394 18.637L10.402 18.6612L9.94763 18.6693C8.62956 18.6693 7.34823 18.4602 6.14487 18.0483C4.97652 17.648 3.92482 17.0741 3.01607 16.3415C2.09995 15.6012 1.37825 14.7363 0.871783 13.7719C0.339912 12.7567 0.0700684 11.6779 0.0700684 10.5653C0.0700684 9.45066 0.338603 8.36257 0.869678 7.32813C1.37667 6.33962 2.09652 5.44912 3.00991 4.68141C3.9196 3.91754 4.9709 3.31763 6.13871 2.89593C7.08891 2.55695 8.07095 2.34725 9.06289 2.27079L9.48856 2.24619L9.93704 2.23735L9.95732 2.23333ZM4.58441 10.9092C5.21597 10.9092 5.72723 11.4226 5.72937 12.0541C5.72937 12.6857 5.21597 13.1991 4.58441 13.1991C3.9507 13.1991 3.43944 12.6857 3.43944 12.0541C3.43944 11.4226 3.95285 10.9092 4.58441 10.9092ZM17.3744 1.53128C17.5539 1.30683 17.8815 1.27044 18.1059 1.45L18.5123 1.77512C18.7367 1.95467 18.7731 2.28218 18.5936 2.50663L10.5916 12.509L9.40003 13.0359C9.36045 13.0534 9.31641 13.0581 9.27402 13.0494C9.16139 13.0263 9.08882 12.9163 9.11193 12.8036L9.37246 11.5337L17.3744 1.53128ZM5.62529 6.74564C6.25685 6.74564 6.77026 7.25905 6.77026 7.89061C6.77026 8.52217 6.25685 9.03558 5.62529 9.03558C4.99158 9.03558 4.48032 8.52217 4.48032 7.89061C4.48032 7.25905 4.99373 6.74564 5.62529 6.74564ZM9.99699 5.18432C10.6307 5.18432 11.142 5.69773 11.142 6.32929C11.142 6.96085 10.6285 7.47426 9.99699 7.47426C9.36328 7.47426 8.85202 6.96085 8.85202 6.32929C8.85202 5.69773 9.36543 5.18432 9.99699 5.18432Z" fill="#1F2329"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 3.1 KiB |
3
frontend/src/icons/svg/de-search.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M10.9823 11.9244C9.89439 12.8051 8.50885 13.3327 7.00008 13.3327C3.50228 13.3327 0.666748 10.4972 0.666748 6.99935C0.666748 3.50155 3.50228 0.666016 7.00008 0.666016C10.4979 0.666016 13.3334 3.50155 13.3334 6.99935C13.3334 8.50811 12.8058 9.89365 11.9251 10.9816L14.6737 13.7301C14.8039 13.8603 14.8039 14.0714 14.6737 14.2015L14.2023 14.673C14.0721 14.8031 13.8611 14.8031 13.7309 14.673L10.9823 11.9244ZM12.0001 6.99935C12.0001 4.23793 9.7615 1.99935 7.00008 1.99935C4.23866 1.99935 2.00008 4.23793 2.00008 6.99935C2.00008 9.76077 4.23866 11.9993 7.00008 11.9993C9.7615 11.9993 12.0001 9.76077 12.0001 6.99935Z" fill="#646A73"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 743 B |
3
frontend/src/icons/svg/de_pwd_invisible.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M8.00022 9.99975C7.56203 9.99975 7.13323 9.96523 6.71734 9.89921L6.38535 11.1382C6.33771 11.316 6.15493 11.4216 5.9771 11.3739L5.33315 11.2014C5.15533 11.1537 5.0498 10.9709 5.09745 10.7931L5.42255 9.57985C4.88013 9.39561 4.37096 9.15494 3.90491 8.86629L2.8454 9.9258C2.71522 10.056 2.50417 10.056 2.37399 9.9258L1.90259 9.4544C1.77242 9.32422 1.77242 9.11317 1.90259 8.98299L2.83565 8.04994C2.35424 7.59918 1.95209 7.0852 1.64812 6.52421C1.64492 6.51832 1.64162 6.51215 1.63823 6.50575C1.5136 6.27038 1.56023 5.97574 1.75709 5.79635C1.92051 5.64743 2.03596 5.5461 2.13639 5.44567C2.14538 5.43669 2.15521 5.42666 2.16569 5.41583C2.31108 5.2656 2.55902 5.32152 2.64417 5.51246C3.47427 7.37398 5.46211 8.66641 8.00022 8.66641C10.4321 8.66641 12.4664 7.40872 13.2829 5.68239C13.3042 5.63747 13.328 5.5809 13.3519 5.52084C13.4276 5.33064 13.6741 5.27325 13.8188 5.41801C13.9259 5.52508 14.0687 5.66784 14.2471 5.8463C14.4235 6.0227 14.4713 6.29211 14.356 6.51334C14.3279 6.56715 14.3006 6.61785 14.2774 6.65816C13.9638 7.20109 13.5572 7.69751 13.0754 8.1321L13.9263 8.98299C14.0565 9.11317 14.0565 9.32422 13.9263 9.4544L13.4549 9.9258C13.3247 10.056 13.1136 10.056 12.9835 9.9258L11.9888 8.93112C11.5521 9.19111 11.0792 9.40958 10.5779 9.57985L10.903 10.7931C10.9506 10.9709 10.8451 11.1537 10.6673 11.2014L10.0233 11.3739C9.84552 11.4216 9.66274 11.316 9.61509 11.1382L9.2831 9.89921C8.86721 9.96523 8.43842 9.99975 8.00022 9.99975Z" fill="#BBBFC4"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
3
frontend/src/icons/svg/de_pwd_visible.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M7.98994 12.333C10.1486 12.333 12.1472 10.9599 14.0001 7.99101C12.1949 5.03272 10.2008 3.66634 7.98994 3.66634C5.77984 3.66634 3.7929 5.0321 2.00009 7.99099C3.84053 10.9605 5.83206 12.333 7.98994 12.333ZM1.00172 8.59304C0.787049 8.22763 0.785596 7.77336 0.995302 7.40508C1.00277 7.39196 1.00993 7.37945 1.01672 7.36768C2.9521 4.01123 5.27627 2.33301 7.98923 2.33301C10.7133 2.33301 13.0518 4.02495 15.0049 7.40884C15.0107 7.41898 15.0168 7.42969 15.0232 7.44089C15.2208 7.7869 15.2193 8.21401 15.0172 8.55738C13.0127 11.9634 10.67 13.6663 7.98923 13.6663C5.31784 13.6663 2.98867 11.9752 1.00172 8.59304ZM8.00009 10.6663C6.52733 10.6663 5.33342 9.47243 5.33342 7.99967C5.33342 6.52692 6.52733 5.33301 8.00009 5.33301C9.47285 5.33301 10.6668 6.52692 10.6668 7.99967C10.6668 9.47243 9.47285 10.6663 8.00009 10.6663ZM8.00009 9.33301C8.73647 9.33301 9.33342 8.73605 9.33342 7.99967C9.33342 7.26329 8.73647 6.66634 8.00009 6.66634C7.26371 6.66634 6.66675 7.26329 6.66675 7.99967C6.66675 8.73605 7.26371 9.33301 8.00009 9.33301Z" fill="#BBBFC4"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
@ -1 +1,3 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200" class="icon" p-id="1799" t="1553478255619" version="1.1" viewBox="0 0 1024 1024"><defs><style type="text/css"/></defs><path d="M329.285097 317.714062l-8.422833 4.428869c-8.78099 4.584412-13.528108 14.84715-11.923564 24.415063 1.644453 4.909823 3.491521 9.864672 5.492084 14.747889 2.030239 4.854565 4.230348 9.652847 6.53688 14.293541 5.621021 7.891737 16.246009 11.824303 25.699312 8.858762l9.041934-2.868327c14.741749-3.860934 31.115672-0.056282 42.62582 11.512195 11.549034 11.526521 15.374152 27.863604 11.549034 42.570561l-2.882654 9.126868c-2.958378 9.438976 0.938372 20.042475 8.830109 25.706475 4.634554 2.328022 9.403161 4.52813 14.323217 6.529717 4.876054 2.043542 9.80839 3.846608 14.739702 5.478781 9.538237 1.603521 19.87363-3.123131 24.414039-11.910261l4.402263-8.388041c7.67889-13.144368 21.915126-22.002107 38.267559-22.002107 16.338107 0 30.547737 8.829086 38.255279 21.931498l4.41352 8.459672c4.584412 8.78713 14.84715 13.513782 24.414039 11.910261 4.91187-1.632173 9.851369-3.462868 14.734586-5.478781 4.882194-2.030239 9.66615-4.201695 14.322194-6.529717 7.891737-5.622044 11.809977-16.253172 8.843412-25.706475l-2.852978-9.041934c-3.859911-14.733563-0.069585-31.085996 11.484565-42.655496 11.55415-11.525498 27.878954-15.372106 42.599214-11.512195l9.097192 2.88163c9.426697 2.952238 20.044522-0.937348 25.693172-8.829086 2.313695-4.656043 4.527107-9.411347 6.54302-14.322194 2.029216-4.883217 3.847631-9.80839 5.495154-14.748912 1.616824-9.581216-3.108804-19.843954-11.911284-24.429389l-8.402367-4.400217c-13.132088-7.665587-21.98778-21.901823-21.98778-38.255279 0-16.32378 8.830109-30.589692 21.974477-38.268582l8.416693-4.443196c8.80248-4.571109 13.528108-14.832823 11.924587-24.400736-1.6465-4.910846-3.479241-9.850345-5.493108-14.733563-2.031263-4.868891-4.202719-9.680477-6.529717-14.308891-5.622044-7.890714-16.253172-11.82328-25.708522-8.842389l-9.05626 2.852978c-14.747889 3.861958-31.071669 0.057305-42.654472-11.512195-11.55415-11.55415-15.344476-27.877931-11.484565-42.612517l2.852978-9.05626c2.966565-9.44-0.951675-20.043499-8.856715-25.692149-4.641717-2.328022-9.397021-4.542456-14.307867-6.544043-4.883217-2.029216-9.82374-3.846608-14.734586-5.465478-9.567913-1.632173-19.872606 3.123131-24.414039 11.895935l-4.400217 8.389064c-7.67889 13.174044-21.931498 22.002107-38.268582 22.002107-16.309454 0-30.576389-8.828063-38.267559-22.002107l-4.387937-8.389064c-4.554736-8.771781-14.8318-13.528108-24.405853-11.895935-4.954849 1.604544-9.873882 3.435239-14.763239 5.4225-4.883217 2.044566-9.688663 4.217045-14.323217 6.545066-7.891737 5.649674-11.808954 16.266475-8.830109 25.735128l2.826372 9.05626c3.882424 14.762215 0.057305 31.085996-11.491729 42.612517-11.510148 11.5695-27.849278 15.373129-42.611493 11.526521l-9.070586-2.867304c-9.44-2.980891-20.063965 0.951675-25.686009 8.842389-2.342348 4.628414-4.52813 9.44-6.53688 14.308891-2.036379 4.882194-3.847631 9.822716-5.492084 14.733563-1.603521 9.581216 3.142573 19.85828 11.923564 24.443715l8.402367 4.400217c13.156648 7.67889 21.986757 21.944801 21.986757 38.268582C351.251388 295.79689 342.421278 310.019823 329.285097 317.714062zM511.977999 171.706687c59.532885 0 107.795075 48.275493 107.795075 107.779725 0 59.490929-48.26219 107.752096-107.795075 107.752096-59.533908 0-107.752096-48.26219-107.752096-107.752096C404.226926 219.98218 452.445114 171.706687 511.977999 171.706687z" p-id="1800"/><path d="M924.647713 689.174212 798.570249 689.174212 798.570249 581.650313c0-26.387997-21.476127-47.850821-47.864124-47.850821L276.2543 533.799492c-26.386974 0-47.851844 21.462824-47.851844 47.850821l0 107.523899L99.345124 689.174212c-20.419052 0-36.95568 16.550954-36.95568 36.948517l0 184.771237c0 20.399609 16.536628 36.962843 36.95568 36.962843l273.965675 0c20.397562 0 36.947494-16.564257 36.947494-36.962843L410.258293 726.122729c0-20.398586-16.550954-36.948517-36.947494-36.948517l-123.103736 0L250.207064 581.650313c0-14.366196 11.68104-26.047236 26.047236-26.047236l474.451826 0c14.364149 0 26.062586 11.68104 26.062586 26.047236l0 107.523899L650.689201 689.174212c-20.412912 0-36.962843 16.550954-36.962843 36.948517l0 184.771237c0 20.399609 16.549931 36.962843 36.962843 36.962843l273.958512 0c20.397562 0 36.96182-16.564257 36.96182-36.962843L961.609533 726.122729C961.609533 705.725166 945.044252 689.174212 924.647713 689.174212z" p-id="1801"/></svg>
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M5.25341 13.7501H14.7467C14.9551 13.6251 15.1792 13.5251 15.4167 13.4543V12.0835C15.4167 11.8624 15.3289 11.6505 15.1727 11.4942C15.0164 11.3379 14.8044 11.2501 14.5834 11.2501H5.41674C5.19572 11.2501 4.98376 11.3379 4.82748 11.4942C4.6712 11.6505 4.58341 11.8624 4.58341 12.0835V13.4543C4.82091 13.5251 5.04549 13.6251 5.25341 13.7501ZM2.91674 13.4543V12.0835C2.91674 11.4204 3.18013 10.7845 3.64897 10.3157C4.11781 9.84686 4.7537 9.58346 5.41674 9.58346H9.16674V7.8118C8.38119 7.60897 7.69658 7.12661 7.24124 6.45512C6.78589 5.78364 6.59108 4.96914 6.69331 4.1643C6.79553 3.35945 7.18779 2.61952 7.79654 2.08319C8.4053 1.54687 9.18876 1.25098 10.0001 1.25098C10.8114 1.25098 11.5948 1.54687 12.2036 2.08319C12.8124 2.61952 13.2046 3.35945 13.3068 4.1643C13.4091 4.96914 13.2142 5.78364 12.7589 6.45512C12.3036 7.12661 11.619 7.60897 10.8334 7.8118V9.58346H14.5834C15.2464 9.58346 15.8823 9.84686 16.3512 10.3157C16.82 10.7845 17.0834 11.4204 17.0834 12.0835V13.4543C17.7246 13.6454 18.2805 14.0512 18.6581 14.6035C19.0357 15.1558 19.2118 15.8212 19.1571 16.488C19.1024 17.1548 18.8201 17.7825 18.3575 18.2659C17.895 18.7493 17.2803 19.059 16.6166 19.143C15.9528 19.227 15.2804 19.0803 14.7119 18.7274C14.1435 18.3746 13.7137 17.837 13.4945 17.2049C13.2753 16.5728 13.2801 15.8845 13.5081 15.2555C13.7361 14.6265 14.1734 14.095 14.7467 13.7501H5.25341C5.82671 14.095 6.26402 14.6265 6.49201 15.2555C6.72001 15.8845 6.72482 16.5728 6.50565 17.2049C6.28647 17.837 5.85664 18.3746 5.28822 18.7274C4.71979 19.0803 4.04733 19.227 3.38358 19.143C2.71983 19.059 2.10516 18.7493 1.6426 18.2659C1.18005 17.7825 0.897749 17.1548 0.843028 16.488C0.788306 15.8212 0.964493 15.1558 1.34205 14.6035C1.7196 14.0512 2.27557 13.6454 2.91674 13.4543ZM10.0001 6.25013C10.4421 6.25013 10.866 6.07453 11.1786 5.76197C11.4911 5.44941 11.6667 5.02549 11.6667 4.58346C11.6667 4.14144 11.4911 3.71751 11.1786 3.40495C10.866 3.09239 10.4421 2.9168 10.0001 2.9168C9.55804 2.9168 9.13412 3.09239 8.82156 3.40495C8.509 3.71751 8.3334 4.14144 8.3334 4.58346C8.3334 5.02549 8.509 5.44941 8.82156 5.76197C9.13412 6.07453 9.55804 6.25013 10.0001 6.25013ZM16.2501 17.5001C16.5816 17.5001 16.8995 17.3684 17.134 17.134C17.3684 16.8996 17.5001 16.5816 17.5001 16.2501C17.5001 15.9186 17.3684 15.6007 17.134 15.3662C16.8995 15.1318 16.5816 15.0001 16.2501 15.0001C15.9185 15.0001 15.6006 15.1318 15.3662 15.3662C15.1318 15.6007 15.0001 15.9186 15.0001 16.2501C15.0001 16.5816 15.1318 16.8996 15.3662 17.134C15.6006 17.3684 15.9185 17.5001 16.2501 17.5001ZM3.75007 17.5001C4.08159 17.5001 4.39953 17.3684 4.63396 17.134C4.86838 16.8996 5.00007 16.5816 5.00007 16.2501C5.00007 15.9186 4.86838 15.6007 4.63396 15.3662C4.39953 15.1318 4.08159 15.0001 3.75007 15.0001C3.41855 15.0001 3.10061 15.1318 2.86619 15.3662C2.63177 15.6007 2.50007 15.9186 2.50007 16.2501C2.50007 16.5816 2.63177 16.8996 2.86619 17.134C3.10061 17.3684 3.41855 17.5001 3.75007 17.5001Z" fill="#1F2329"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 3.0 KiB |
@ -1 +1,3 @@
|
||||
<?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 class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M96 652.8c-19.2 0-38.4-19.2-38.4-38.4V409.6c0-19.2 19.2-38.4 38.4-38.4s38.4 19.2 38.4 38.4v204.8c0 25.6-12.8 38.4-38.4 38.4z" /><path d="M1017.6 512c0-51.2-32-89.6-76.8-102.4V160c0-83.2-64-147.2-147.2-147.2H204.8C121.6 12.8 57.6 76.8 57.6 160v19.2c0 19.2 19.2 38.4 38.4 38.4s38.4-19.2 38.4-38.4v-19.2c0-38.4 32-70.4 70.4-70.4h595.2c38.4 0 70.4 32 70.4 70.4V409.6c-38.4 12.8-76.8 57.6-76.8 102.4 0 51.2 32 89.6 76.8 102.4v249.6c0 38.4-32 70.4-70.4 70.4H204.8c-38.4 0-70.4-32-70.4-70.4v-19.2c0-19.2-19.2-38.4-38.4-38.4s-38.4 19.2-38.4 38.4v19.2c0 83.2 64 147.2 147.2 147.2h595.2c83.2 0 147.2-64 147.2-147.2V620.8c44.8-19.2 70.4-57.6 70.4-108.8z m-108.8 51.2c-25.6 0-51.2-19.2-51.2-51.2 0-25.6 19.2-51.2 51.2-51.2s51.2 19.2 51.2 51.2c-6.4 25.6-25.6 51.2-51.2 51.2z" /><path d="M659.2 332.8H345.6c-19.2 0-38.4-12.8-38.4-38.4 0-19.2 19.2-38.4 38.4-38.4h313.6c19.2 0 38.4 19.2 38.4 38.4 0 25.6-19.2 38.4-38.4 38.4zM659.2 550.4H345.6c-19.2 0-38.4-12.8-38.4-38.4 0-19.2 19.2-38.4 38.4-38.4h313.6c19.2 0 38.4 19.2 38.4 38.4 0 25.6-19.2 38.4-38.4 38.4zM659.2 768H345.6c-19.2 0-38.4-19.2-38.4-38.4s19.2-38.4 38.4-38.4h313.6c19.2 0 38.4 19.2 38.4 38.4 0 25.6-19.2 38.4-38.4 38.4z" /><path d="M153.6 768H44.8c-19.2 0-38.4-19.2-38.4-38.4s19.2-38.4 38.4-38.4h108.8c19.2 0 38.4 19.2 38.4 38.4 0 25.6-19.2 38.4-38.4 38.4z" /><path d="M153.6 332.8H44.8c-25.6 0-38.4-12.8-38.4-38.4 0-19.2 12.8-38.4 38.4-38.4h108.8c19.2 0 38.4 19.2 38.4 38.4 0 25.6-19.2 38.4-38.4 38.4z" /></svg>
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M13.3333 2.49967H4.16667V17.4997H15.8333V5.01592H13.75C13.6395 5.01592 13.5335 4.97203 13.4554 4.89389C13.3772 4.81575 13.3333 4.70976 13.3333 4.59926V2.49967ZM3.33333 0.833008H14.2379C14.3474 0.832976 14.4558 0.854524 14.557 0.89642C14.6582 0.938316 14.7501 0.999737 14.8275 1.07717L17.2563 3.50676C17.4124 3.66307 17.5001 3.87499 17.5 4.09592V18.333C17.5 18.554 17.4122 18.766 17.2559 18.9223C17.0996 19.0785 16.8877 19.1663 16.6667 19.1663H3.33333C3.11232 19.1663 2.90036 19.0785 2.74408 18.9223C2.5878 18.766 2.5 18.554 2.5 18.333V1.66634C2.5 1.44533 2.5878 1.23337 2.74408 1.07709C2.90036 0.920805 3.11232 0.833008 3.33333 0.833008ZM6.66667 8.33301H13.3333C13.4438 8.33301 13.5498 8.37691 13.628 8.45505C13.7061 8.53319 13.75 8.63917 13.75 8.74967V9.58301C13.75 9.69351 13.7061 9.7995 13.628 9.87764C13.5498 9.95578 13.4438 9.99967 13.3333 9.99967H6.66667C6.55616 9.99967 6.45018 9.95578 6.37204 9.87764C6.2939 9.7995 6.25 9.69351 6.25 9.58301V8.74967C6.25 8.63917 6.2939 8.53319 6.37204 8.45505C6.45018 8.37691 6.55616 8.33301 6.66667 8.33301ZM6.66667 12.4997H10.4167C10.4714 12.4997 10.5256 12.5105 10.5761 12.5314C10.6267 12.5523 10.6726 12.583 10.7113 12.6217C10.75 12.6604 10.7807 12.7063 10.8016 12.7569C10.8226 12.8074 10.8333 12.8616 10.8333 12.9163V13.7497C10.8333 13.8044 10.8226 13.8586 10.8016 13.9091C10.7807 13.9597 10.75 14.0056 10.7113 14.0443C10.6726 14.083 10.6267 14.1137 10.5761 14.1346C10.5256 14.1556 10.4714 14.1663 10.4167 14.1663H6.66667C6.55616 14.1663 6.45018 14.1224 6.37204 14.0443C6.2939 13.9662 6.25 13.8602 6.25 13.7497V12.9163C6.25 12.8058 6.2939 12.6999 6.37204 12.6217C6.45018 12.5436 6.55616 12.4997 6.66667 12.4997Z" fill="#1F2329"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
@ -1 +1,3 @@
|
||||
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M108.8 44.322H89.6v-5.36c0-9.04-3.308-24.163-25.6-24.163-23.145 0-25.6 16.881-25.6 24.162v5.361H19.2v-5.36C19.2 15.281 36.798 0 64 0c27.202 0 44.8 15.281 44.8 38.961v5.361zm-32 39.356c0-5.44-5.763-9.832-12.8-9.832-7.037 0-12.8 4.392-12.8 9.832 0 3.682 2.567 6.808 6.407 8.477v11.205c0 2.718 2.875 4.962 6.4 4.962 3.524 0 6.4-2.244 6.4-4.962V92.155c3.833-1.669 6.393-4.795 6.393-8.477zM128 64v49.201c0 8.158-8.645 14.799-19.2 14.799H19.2C8.651 128 0 121.359 0 113.201V64c0-8.153 8.645-14.799 19.2-14.799h89.6c10.555 0 19.2 6.646 19.2 14.799z"/></svg>
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M5.41675 6.66699V6.25033C5.41675 3.71699 7.46883 1.66699 10.0001 1.66699C12.5313 1.66699 14.5834 3.71699 14.5834 6.25033V6.66699H17.5001C17.9605 6.66699 18.3334 7.04199 18.3334 7.50033V17.5003C18.3334 17.9587 17.9605 18.3337 17.5001 18.3337H2.50008C2.03966 18.3337 1.66675 17.9587 1.66675 17.5003V7.50033C1.66675 7.04199 2.03966 6.66699 2.50008 6.66699H5.41675ZM12.9167 6.25033C12.9167 4.63783 11.6109 3.33366 10.0001 3.33366C8.38925 3.33366 7.08342 4.63783 7.08342 6.25033V6.66699H12.9167V6.25033ZM3.33341 8.33366V16.667H16.6667V8.33366H3.33341ZM10.0001 15.0003C8.61925 15.0003 7.50008 13.8795 7.50008 12.5003C7.50008 11.1212 8.61925 10.0003 10.0001 10.0003C11.3809 10.0003 12.5001 11.1212 12.5001 12.5003C12.5001 13.8795 11.3809 15.0003 10.0001 15.0003ZM10.0001 13.3337C10.4605 13.3337 10.8334 12.9587 10.8334 12.5003C10.8334 12.042 10.4605 11.667 10.0001 11.667C9.53967 11.667 9.16675 12.042 9.16675 12.5003C9.16675 12.9587 9.53967 13.3337 10.0001 13.3337Z" fill="#1F2329"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 623 B After Width: | Height: | Size: 1.1 KiB |
@ -1 +1,3 @@
|
||||
<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><g><path d="M95.648 118.762c0 5.035-3.563 9.121-7.979 9.121H7.98c-4.416 0-7.979-4.086-7.979-9.121C0 100.519 15.408 83.47 31.152 76.75c-9.099-6.43-15.216-17.863-15.216-30.987v-9.128c0-20.16 14.293-36.518 31.893-36.518s31.894 16.358 31.894 36.518v9.122c0 13.137-6.123 24.556-15.216 30.993 15.738 6.726 31.141 23.769 31.141 42.012z"/><path d="M106.032 118.252h15.867c3.376 0 6.101-3.125 6.101-6.972 0-13.957-11.787-26.984-23.819-32.123 6.955-4.919 11.638-13.66 11.638-23.704v-6.985c0-15.416-10.928-27.926-24.39-27.926-1.674 0-3.306.193-4.89.561 1.936 4.713 3.018 9.974 3.018 15.526v9.121c0 13.137-3.056 23.111-11.066 30.993 14.842 4.41 27.312 23.42 27.541 41.509z"/></g></svg>
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.08341 4.16667C5.93341 4.16667 5.00008 5.09958 5.00008 6.25C5.00008 7.40042 5.93341 8.33333 7.08341 8.33333C8.23341 8.33333 9.16675 7.40042 9.16675 6.25C9.16675 5.09958 8.23341 4.16667 7.08341 4.16667ZM3.33341 6.25C3.33341 4.17875 5.01258 2.5 7.08341 2.5C9.15425 2.5 10.8334 4.17875 10.8334 6.25C10.8334 8.32125 9.15425 10 7.08341 10C5.01258 10 3.33341 8.32125 3.33341 6.25ZM4.86258 12.5C3.34591 12.5 2.08341 13.7488 2.08341 15.3333V16.6667H12.0834V15.3333C12.0834 13.7488 10.8209 12.5 9.30425 12.5H4.86258ZM0.416748 15.3333C0.416748 12.8479 2.40841 10.8333 4.86258 10.8333H9.30425C11.7584 10.8333 13.7501 12.8479 13.7501 15.3333V17.5833C13.7501 17.9975 13.4167 18.3333 13.0084 18.3333H1.15841C0.750081 18.3333 0.416748 17.9975 0.416748 17.5833V15.3333ZM19.0293 17.5H15.3043V17.1592V15.8333H17.9168V15.3333C17.9168 14.4983 17.2126 13.75 16.2501 13.75H15.1584C15.0001 13.1342 14.7168 12.5692 14.3376 12.0833H16.2501C18.0918 12.0833 19.5834 13.5383 19.5834 15.3333V16.9583C19.5834 17.2575 19.3334 17.5 19.0293 17.5ZM13.7501 8.33333C13.7501 7.87292 14.1251 7.5 14.5834 7.5C15.0417 7.5 15.4167 7.87292 15.4167 8.33333C15.4167 8.79375 15.0417 9.16667 14.5834 9.16667C14.1251 9.16667 13.7501 8.79375 13.7501 8.33333ZM14.5834 5.83333C13.2042 5.83333 12.0834 6.9525 12.0834 8.33333C12.0834 9.71417 13.2042 10.8333 14.5834 10.8333C15.9626 10.8333 17.0834 9.71417 17.0834 8.33333C17.0834 6.9525 15.9626 5.83333 14.5834 5.83333Z" fill="#1F2329"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 738 B After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 5.7 KiB After Width: | Height: | Size: 4.3 KiB |
3
frontend/src/icons/svg/pwd_invisible.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M8.00022 9.99975C7.56203 9.99975 7.13323 9.96523 6.71734 9.89921L6.38535 11.1382C6.33771 11.316 6.15493 11.4216 5.9771 11.3739L5.33315 11.2014C5.15533 11.1537 5.0498 10.9709 5.09745 10.7931L5.42255 9.57985C4.88013 9.39561 4.37096 9.15494 3.90491 8.86629L2.8454 9.9258C2.71522 10.056 2.50417 10.056 2.37399 9.9258L1.90259 9.4544C1.77242 9.32422 1.77242 9.11317 1.90259 8.98299L2.83565 8.04994C2.35424 7.59918 1.95209 7.0852 1.64812 6.52421C1.64492 6.51832 1.64162 6.51215 1.63823 6.50575C1.5136 6.27038 1.56023 5.97574 1.75709 5.79635C1.92051 5.64743 2.03596 5.5461 2.13639 5.44567C2.14538 5.43669 2.15521 5.42666 2.16569 5.41583C2.31108 5.2656 2.55902 5.32152 2.64417 5.51246C3.47427 7.37398 5.46211 8.66641 8.00022 8.66641C10.4321 8.66641 12.4664 7.40872 13.2829 5.68239C13.3042 5.63747 13.328 5.5809 13.3519 5.52084C13.4276 5.33064 13.6741 5.27325 13.8188 5.41801C13.9259 5.52508 14.0687 5.66784 14.2471 5.8463C14.4235 6.0227 14.4713 6.29211 14.356 6.51334C14.3279 6.56715 14.3006 6.61785 14.2774 6.65816C13.9638 7.20109 13.5572 7.69751 13.0754 8.1321L13.9263 8.98299C14.0565 9.11317 14.0565 9.32422 13.9263 9.4544L13.4549 9.9258C13.3247 10.056 13.1136 10.056 12.9835 9.9258L11.9888 8.93112C11.5521 9.19111 11.0792 9.40958 10.5779 9.57985L10.903 10.7931C10.9506 10.9709 10.8451 11.1537 10.6673 11.2014L10.0233 11.3739C9.84552 11.4216 9.66274 11.316 9.61509 11.1382L9.2831 9.89921C8.86721 9.96523 8.43842 9.99975 8.00022 9.99975Z" fill="#BBBFC4"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
3
frontend/src/icons/svg/pwd_visible.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M7.98994 12.333C10.1486 12.333 12.1472 10.9599 14.0001 7.99101C12.1949 5.03272 10.2008 3.66634 7.98994 3.66634C5.77984 3.66634 3.7929 5.0321 2.00009 7.99099C3.84053 10.9605 5.83206 12.333 7.98994 12.333ZM1.00172 8.59304C0.787049 8.22763 0.785596 7.77336 0.995302 7.40508C1.00277 7.39196 1.00993 7.37945 1.01672 7.36768C2.9521 4.01123 5.27627 2.33301 7.98923 2.33301C10.7133 2.33301 13.0518 4.02495 15.0049 7.40884C15.0107 7.41898 15.0168 7.42969 15.0232 7.44089C15.2208 7.7869 15.2193 8.21401 15.0172 8.55738C13.0127 11.9634 10.67 13.6663 7.98923 13.6663C5.31784 13.6663 2.98867 11.9752 1.00172 8.59304ZM8.00009 10.6663C6.52733 10.6663 5.33342 9.47243 5.33342 7.99967C5.33342 6.52692 6.52733 5.33301 8.00009 5.33301C9.47285 5.33301 10.6668 6.52692 10.6668 7.99967C10.6668 9.47243 9.47285 10.6663 8.00009 10.6663ZM8.00009 9.33301C8.73647 9.33301 9.33342 8.73605 9.33342 7.99967C9.33342 7.26329 8.73647 6.66634 8.00009 6.66634C7.26371 6.66634 6.66675 7.26329 6.66675 7.99967C6.66675 8.73605 7.26371 9.33301 8.00009 9.33301Z" fill="#BBBFC4"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
@ -1 +1,3 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200" class="icon" p-id="2866" t="1543477186503" version="1.1" viewBox="0 0 1024 1024"><defs><style type="text/css">@font-face{font-family:rbicon;src:url(chrome-extension://dipiagiiohfljcicegpgffpbnjmgjcnf/fonts/rbicon.woff2) format("woff2");font-weight:400;font-style:normal}</style></defs><path d="M609.093716 908.277839c0-106.125689 85.803749-191.929438 191.929438-191.929438 38.950386 0 75.07828 11.854465 105.561191 31.611907l0-3.38699c0-60.965821-71.69129-136.044101-128.705623-145.076075l76.771775-127.012128-178.945976 0c32.176406-46.288864 53.627343-107.254686 53.627343-174.994487 0-5.080485 0-10.725469 0-15.805954 69.433297-12.418964 114.593164-32.176406 114.593164-51.933848 0-21.450937-50.240353-41.208379-127.012128-53.627343C712.961411 158.059537 661.592062 11.289967 600.62624 11.289967c-27.095921 0-48.546858 14.112459-62.659316 35.563396 0 10.725469-10.725469 21.450937-24.837927 21.450937-12.418964 0-23.144432-9.031974-24.837927-19.757442C475.307607 27.660419 452.163175 11.289967 425.631753 11.289967 366.359427 11.289967 311.038589 145.640573 298.619625 179.510474 232.573319 191.929438 189.671444 209.993385 189.671444 231.444322c0 21.450937 44.595369 39.514884 114.593164 51.933848 0 5.080485 0 10.725469 0 15.805954 0 67.739802 19.757442 128.705623 53.627343 174.994487L178.945976 474.178611l76.771775 125.318633c-57.014333 0-132.092613 78.46527-132.092613 146.76957l1.693495 205.477398c0 33.869901 26.531422 60.965821 60.965821 60.965821l453.85667 0C620.383682 982.227122 609.093716 946.663727 609.093716 908.277839zM468.533627 962.46968l-28.789416 0-53.627343-395.148842 112.335171 98.222712L468.533627 962.46968zM498.45204 351.117971c-7.338479 62.659316-39.514884 76.771775-57.014333 76.771775-42.901874 0-55.320838-57.014333-57.014333-76.771775l-14.112459 0L370.310915 338.699008l0-12.418964 107.254686 0L477.565601 338.699008l71.69129 0 0-12.418964 107.254686 0L656.511577 338.699008l3.38699 0 0 12.418964-14.112459 0c0 0-9.031974 76.771775-57.014333 76.771775C539.660419 427.889746 530.628445 351.117971 530.628445 351.117971L498.45204 351.117971zM562.804851 962.46968l-30.482911-296.92613 112.335171-99.916207-53.627343 396.842337L562.804851 962.46968z" p-id="2867"/><path d="M918.438809 907.148842c0 1.693495-1.128997 2.822492-2.822492 2.822492l-97.658214 0 0 97.658214c0 1.693495-1.128997 2.822492-2.822492 2.822492l-43.466373 0c-1.693495 0-2.822492-1.128997-2.822492-2.822492l0-97.658214-97.658214 0c-1.693495 0-2.822492-1.128997-2.822492-2.822492L668.366042 863.68247c0-1.693495 1.128997-2.822492 2.822492-2.822492l97.658214 0 0-97.658214c0-1.693495 1.128997-2.822492 2.822492-2.822492l43.466373 0c1.693495 0 2.822492 1.128997 2.822492 2.822492l0 97.658214 97.658214 0c1.693495 0 2.822492 1.128997 2.822492 2.822492L918.438809 907.148842z" p-id="2868"/></svg>
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.33325 10.0003C6.03325 10.0003 4.16658 8.13491 4.16658 5.83366C4.16658 3.53241 6.03325 1.66699 8.33325 1.66699C10.6333 1.66699 12.4999 3.53241 12.4999 5.83366C12.4999 8.13491 10.6333 10.0003 8.33325 10.0003ZM8.33325 8.33366C9.71329 8.33366 10.8333 7.21393 10.8333 5.83366C10.8333 4.45339 9.71329 3.33366 8.33325 3.33366C6.95322 3.33366 5.83325 4.45339 5.83325 5.83366C5.83325 7.21393 6.95322 8.33366 8.33325 8.33366ZM0.833252 15.8337C0.833252 13.0724 3.07075 10.8337 5.83325 10.8337H10.8333C13.5958 10.8337 15.8333 13.0724 15.8333 15.8337V17.9492C15.8333 18.4096 15.4583 18.7825 14.9999 18.7825H1.66659C1.20825 18.7825 0.833252 18.4096 0.833252 17.9492V15.8337ZM14.1666 15.8337C14.1666 13.9924 12.6748 12.5003 10.8333 12.5003H5.83325C3.99172 12.5003 2.49992 13.9924 2.49992 15.8337V17.1158H14.1666V15.8337ZM14.5833 7.50033H18.7499C18.98 7.50033 19.1666 7.68687 19.1666 7.91699V8.75033C19.1666 8.98044 18.98 9.16699 18.7499 9.16699H14.5833C14.3531 9.16699 14.1666 8.98044 14.1666 8.75033V7.91699C14.1666 7.68687 14.3531 7.50033 14.5833 7.50033ZM17.0833 10.8337H18.7499C18.98 10.8337 19.1666 11.0202 19.1666 11.2503V12.0837C19.1666 12.3138 18.98 12.5003 18.7499 12.5003H17.0833C16.8531 12.5003 16.6666 12.3138 16.6666 12.0837V11.2503C16.6666 11.0202 16.8531 10.8337 17.0833 10.8337Z" fill="#1F2329"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 1.4 KiB |
3
frontend/src/icons/svg/round_play.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M15.9999 1.3335C24.0999 1.3335 30.6666 7.90016 30.6666 16.0002C30.6666 24.1002 24.0999 30.6668 15.9999 30.6668C7.89992 30.6668 1.33325 24.1002 1.33325 16.0002C1.33325 7.90016 7.89992 1.3335 15.9999 1.3335ZM13.1586 9.3335C12.8519 9.33397 12.5575 9.45403 12.3379 9.66816C12.1206 9.8815 11.9986 10.1702 11.9999 10.4708V21.5308C11.9999 21.7435 12.0613 21.9515 12.1759 22.1328C12.3402 22.3898 12.5995 22.5713 12.8973 22.6375C13.1973 22.7055 13.5119 22.6542 13.7726 22.4942L22.7893 16.9648C23.1279 16.7555 23.3333 16.3915 23.3333 16.0002C23.3333 15.6088 23.1279 15.2455 22.7893 15.0355L13.7733 9.50683C13.5882 9.39363 13.3755 9.33387 13.1586 9.33416V9.3335Z" fill="white"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 780 B |
@ -1 +1,3 @@
|
||||
<?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 class="icon" width="200px" height="200.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M992.6 404.1 897.9 404.1C889.2 372.8 876.9 343.1 861.3 315.4L928.2 248.5C940.4 236.3 940.4 216.3 928.2 204L820 95.9C813.9 89.8 805.8 86.7 797.8 86.7 789.8 86.7 781.7 89.8 775.6 95.9L708.7 162.8C681 147.2 651.3 134.9 620 126.2L620 31.4C620 14.1 605.8 0 588.6 0L435.6 0C418.3 0 404.2 14.2 404.2 31.4L404.2 126.1C372.9 134.8 343.2 147.1 315.5 162.7L248.6 95.8C242.5 89.7 234.4 86.6 226.4 86.6 218.4 86.6 210.3 89.7 204.2 95.8L95.9 204C83.7 216.2 83.7 236.2 95.9 248.5L162.8 315.4C147.2 343.1 134.9 372.8 126.2 404.1L31.4 404.1C14.2 404.1 0 418.3 0 435.6L0 588.5C0 605.8 14.2 619.9 31.4 619.9L126.1 619.9C134.8 651.2 147.1 680.9 162.7 708.6L95.8 775.5C83.6 787.7 83.6 807.7 95.8 820L204 928.1C210.1 934.2 218.2 937.3 226.2 937.3 234.2 937.3 242.3 934.2 248.4 928.1L315.3 861.2C343 876.8 372.7 889.1 404 897.8L404 992.5C404 1009.8 418.2 1023.9 435.4 1023.9L588.3 1023.9C605.6 1023.9 619.7 1009.7 619.7 992.5L619.7 897.8C651 889.1 680.7 876.8 708.4 861.2L775.3 928.1C781.4 934.2 789.5 937.3 797.5 937.3 805.5 937.3 813.6 934.2 819.7 928.1L928.1 820C940.3 807.8 940.3 787.8 928.1 775.5L861.2 708.6C876.8 680.9 889.1 651.2 897.8 619.9L992.5 619.9C1009.8 619.9 1023.9 605.7 1023.9 588.5L1023.9 435.6C1024 418.3 1009.9 404.1 992.6 404.1L992.6 404.1ZM960 555.9 897.8 555.9 849.2 555.9 836.1 602.7C828.8 629 818.4 654.1 805.4 677.2L781.5 719.5 815.9 753.9 859.8 797.8 797.7 859.9 753.8 816 719.4 781.6 677.1 805.5C654 818.5 628.9 828.9 602.6 836.2L555.8 849.3 555.8 897.9 555.8 960 468 960 468 897.8 468 849.2 421.2 836.1C394.9 828.8 369.8 818.4 346.7 805.4L304.4 781.5 270 815.9 226.1 859.8 164 797.7 207.9 753.8 242.3 719.4 218.4 677.1C205.4 654 195 628.9 187.7 602.6L174.6 555.8 126 555.8 64 555.8 64 468 126.2 468 174.8 468 187.9 421.2C195.2 394.9 205.6 369.8 218.6 346.7L242.5 304.4 208.1 270 164.2 226.1 226.3 164 270.2 207.9 304.6 242.3 346.9 218.4C370 205.4 395.1 195 421.4 187.7L468.2 174.6 468.2 126 468.2 64 556 64 556 126.2 556 174.8 602.8 187.9C629.1 195.2 654.2 205.6 677.3 218.6L719.6 242.5 754 208.1 797.9 164.2 860 226.3 816.1 270.2 781.7 304.6 805.6 346.9C818.6 370 829 395.1 836.3 421.4L849.4 468.2 898 468.2 960 468.2 960 555.9 960 555.9Z" /><path d="M512 320C406 320 320 406 320 512 320 618 406 704 512 704 618 704 704 618 704 512 704 406 618 320 512 320L512 320ZM512 640C477.8 640 445.7 626.7 421.5 602.5 397.3 578.3 384 546.2 384 512 384 477.8 397.3 445.7 421.5 421.5 445.7 397.3 477.8 384 512 384 546.2 384 578.3 397.3 602.5 421.5 626.7 445.7 640 477.8 640 512 640 546.2 626.7 578.3 602.5 602.5 578.3 626.7 546.2 640 512 640Z" /></svg>
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.60685 16.4438L3.34758 16.1614C2.43988 15.1727 1.75886 13.9935 1.35962 12.7056L1.24707 12.3425L2.95378 9.99911L1.24707 7.6557L1.35962 7.29264C1.75886 6.00477 2.43988 4.82552 3.34758 3.83682L3.60685 3.55441L6.47503 3.86791L7.64 1.21222L8.01356 1.12812C8.66085 0.98239 9.32584 0.908203 9.99989 0.908203C10.6739 0.908203 11.3389 0.98239 11.9862 1.12812L12.3598 1.21222L13.5247 3.86791L16.3929 3.55441L16.6522 3.83682C17.5599 4.82552 18.2409 6.00477 18.6402 7.29264L18.7527 7.6557L17.046 9.99911L18.7527 12.3425L18.6402 12.7056C18.2409 13.9935 17.5599 15.1727 16.6522 16.1614L16.3929 16.4438L13.5247 16.1303L12.3598 18.786L11.9862 18.8701C11.3389 19.0158 10.6739 19.09 9.99989 19.09C9.32584 19.09 8.66085 19.0158 8.01356 18.8701L7.64 18.786L6.47503 16.1303L3.60685 16.4438ZM6.5111 14.6022C7.04953 14.5433 7.56387 14.8407 7.78145 15.3367L8.71516 17.4652C9.13628 17.5379 9.56554 17.5748 9.99989 17.5748C10.4342 17.5748 10.8635 17.5379 11.2846 17.4652L12.2183 15.3367C12.4359 14.8407 12.9502 14.5433 13.4887 14.6022L15.7839 14.853C16.3382 14.1858 16.7753 13.4276 17.0736 12.6106L15.7033 10.7291C15.3864 10.294 15.3864 9.70413 15.7033 9.26901L17.0736 7.38749C16.7753 6.57049 16.3382 5.81233 15.7839 5.14511L13.4887 5.39598C12.9502 5.45483 12.4359 5.15742 12.2183 4.66141L11.2846 2.53292C10.8635 2.4602 10.4342 2.42331 9.99989 2.42331C9.56554 2.42331 9.13628 2.4602 8.71516 2.53292L7.78145 4.66141C7.56387 5.15742 7.04953 5.45483 6.5111 5.39598L4.21592 5.14511C3.66159 5.81233 3.22453 6.57049 2.92617 7.38749L4.29648 9.26901C4.61338 9.70413 4.61338 10.294 4.29648 10.7291L2.92617 12.6106C3.22453 13.4276 3.66159 14.1858 4.21592 14.853L6.5111 14.6022ZM9.99989 13.787C7.91506 13.787 6.22644 12.0903 6.22644 9.9991C6.22644 7.90792 7.91506 6.21122 9.99989 6.21122C12.0847 6.21122 13.7733 7.90792 13.7733 9.9991C13.7733 12.0903 12.0847 13.787 9.99989 13.787ZM9.99989 12.2719C11.2463 12.2719 12.2582 11.2552 12.2582 9.99916C12.2582 8.74316 11.2463 7.72643 9.99989 7.72643C8.75348 7.72643 7.74159 8.74316 7.74159 9.99916C7.74159 11.2552 8.75348 12.2719 9.99989 12.2719Z" fill="#1F2329"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.2 KiB |
@ -1 +1,4 @@
|
||||
<svg t="1625478118793" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1202" width="200" height="200"><path d="M585.142857 804.571429h365.714286v-73.142858H585.142857v73.142858z m-219.428571-292.571429h585.142857v-73.142857H365.714286v73.142857z m365.714285-292.571429h219.428572V146.285714h-219.428572v73.142857z m292.571429 475.428572v146.285714c0 20.004571-16.566857 36.571429-36.571429 36.571429H36.571429c-20.004571 0-36.571429-16.566857-36.571429-36.571429v-146.285714c0-20.004571 16.566857-36.571429 36.571429-36.571429h950.857142c20.004571 0 36.571429 16.566857 36.571429 36.571429z m0-292.571429v146.285715c0 20.004571-16.566857 36.571429-36.571429 36.571428H36.571429c-20.004571 0-36.571429-16.566857-36.571429-36.571428v-146.285715c0-20.004571 16.566857-36.571429 36.571429-36.571428h950.857142c20.004571 0 36.571429 16.566857 36.571429 36.571428z m0-292.571428v146.285714c0 20.004571-16.566857 36.571429-36.571429 36.571429H36.571429c-20.004571 0-36.571429-16.566857-36.571429-36.571429V109.714286c0-20.004571 16.566857-36.571429 36.571429-36.571429h950.857142c20.004571 0 36.571429 16.566857 36.571429 36.571429z" fill="" p-id="1203"></path></svg>
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M6.06057 11.2283C6.08387 11.2845 6.11803 11.3356 6.16108 11.3786L8.77941 13.9975L8.8233 14.0363C9.00497 14.1769 9.26775 14.1641 9.43441 13.9975L14.0172 9.41413C14.104 9.32734 14.1527 9.20964 14.1527 9.0869C14.1527 8.96417 14.104 8.84647 14.0172 8.75968L13.3627 8.10468C13.3198 8.06163 13.2687 8.02747 13.2125 8.00417C13.1563 7.98087 13.0961 7.96887 13.0352 7.96887C12.9744 7.96887 12.9142 7.98087 12.858 8.00417C12.8018 8.02747 12.7507 8.06163 12.7077 8.10468L9.10719 11.7058L7.46997 10.0691C7.38318 9.98235 7.26548 9.93359 7.14275 9.93359C7.02002 9.93359 6.90231 9.98235 6.81552 10.0691L6.16108 10.7236C6.11803 10.7666 6.08387 10.8176 6.06057 10.8738C6.03726 10.93 6.02527 10.9902 6.02527 11.0511C6.02527 11.1119 6.03726 11.1721 6.06057 11.2283Z" fill="#1F2329"/>
|
||||
<path d="M13.3332 0.833008H6.6665C6.15539 0.833008 5.83317 1.15523 5.83317 1.66634V2.49967H3.33333C2.76167 2.49967 2.5 2.82189 2.5 3.333V18.333C2.5 18.8447 2.76167 19.1664 3.33333 19.1664L16.6667 19.1663C17.2383 19.1663 17.5 18.8441 17.5 18.333V3.333C17.5 2.82134 17.2383 2.49965 16.6667 2.49965L14.1667 2.49967V4.16634H15.8333V17.4997H4.16667V4.16634H5.83317V4.99967C5.83317 5.51079 6.15539 5.83301 6.6665 5.83301H13.3332C13.8443 5.83301 14.1665 5.51079 14.1665 4.99967V1.66634C14.1665 1.15467 13.8443 0.833008 13.3332 0.833008ZM7.49984 4.16634V2.49967H12.4998V4.16634H7.49984Z" fill="#1F2329"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.4 KiB |
@ -2393,7 +2393,9 @@ export default {
|
||||
click_inner: 'Click To Enter',
|
||||
email: 'Email:',
|
||||
tel: 'Tel:',
|
||||
web: 'Web:'
|
||||
web: 'Web:',
|
||||
apply: 'Free Trial Application',
|
||||
more: 'More'
|
||||
},
|
||||
kettle: {
|
||||
add: 'Add Kettle',
|
||||
|
||||
@ -2399,7 +2399,9 @@ export default {
|
||||
click_inner: '點擊進入',
|
||||
email: '郵箱:',
|
||||
tel: '電話:',
|
||||
web: '網址:'
|
||||
web: '網址:',
|
||||
apply: '免费试用申请',
|
||||
more: '更多'
|
||||
},
|
||||
kettle: {
|
||||
add: '添加 Kettle 服務',
|
||||
|
||||
@ -2411,7 +2411,9 @@ export default {
|
||||
show_more: '查看更多',
|
||||
email: '邮箱:',
|
||||
tel: '电话:',
|
||||
web: '网址:'
|
||||
web: '网址:',
|
||||
apply: '免费试用申请',
|
||||
more: '更多'
|
||||
},
|
||||
kettle: {
|
||||
add: '添加 Kettle 服务',
|
||||
|
||||
@ -18,6 +18,8 @@ export default {
|
||||
|
||||
if (icon) {
|
||||
vnodes.push(<svg-icon icon-class={icon}/>)
|
||||
} else {
|
||||
vnodes.push(<span> </span>)
|
||||
}
|
||||
|
||||
if (title) {
|
||||
|
||||
@ -3,12 +3,12 @@
|
||||
<template v-if="hasOneShowingChild(item.children,item) && (!onlyOneChild.children||onlyOneChild.noShowingChildren)&&!item.alwaysShow">
|
||||
<app-link v-if="onlyOneChild.meta" :to="resolvePath(onlyOneChild.path)">
|
||||
<el-menu-item :index="resolvePath(onlyOneChild.path)" :class="{'submenu-title-noDropdown':!isNest}">
|
||||
<item :icon="onlyOneChild.meta.icon||(item.meta&&item.meta.icon)" :title="onlyOneChild.meta.title" />
|
||||
<item :icon="!isNest&&(onlyOneChild.meta.icon||(item.meta&&item.meta.icon))" :title="onlyOneChild.meta.title" />
|
||||
</el-menu-item>
|
||||
</app-link>
|
||||
</template>
|
||||
|
||||
<el-submenu v-else ref="subMenu" :index="resolvePath(item.path)" popper-append-to-body>
|
||||
<el-submenu :class="[{ 'submenu-is-collapse': isCollapse }]" v-else ref="subMenu" :index="resolvePath(item.path)" popper-append-to-body>
|
||||
<template slot="title">
|
||||
<item v-if="item.meta" :icon="item.meta && item.meta.icon" :title="item.meta.title" />
|
||||
</template>
|
||||
@ -45,6 +45,10 @@ export default {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
isCollapse: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
basePath: {
|
||||
type: String,
|
||||
default: ''
|
||||
@ -94,3 +98,17 @@ export default {
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.submenu-is-collapse {
|
||||
.el-submenu__title {
|
||||
text-align: center;
|
||||
.svg-icon {
|
||||
margin-right: 8px !important;
|
||||
}
|
||||
span,
|
||||
i {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
>
|
||||
<sidebar-item
|
||||
v-for="route in routes"
|
||||
:isCollapse="isCollapse"
|
||||
:key="route.path"
|
||||
:item="route"
|
||||
:base-path="route.path"
|
||||
@ -46,12 +47,6 @@ export default {
|
||||
isCollapse: state => state.isCollapse,
|
||||
}),
|
||||
routes() {
|
||||
// return this.$router.options.routes
|
||||
if (this.isCollapse) {
|
||||
return this.flatterRouter(
|
||||
JSON.parse(JSON.stringify(this.$store.state.permission.currentRoutes.children))
|
||||
);
|
||||
}
|
||||
return this.$store.state.permission.currentRoutes.children;
|
||||
},
|
||||
activeMenu() {
|
||||
@ -75,37 +70,6 @@ export default {
|
||||
this.$store.commit('setIsCollapse', !this.isCollapse);
|
||||
this.$emit("changeSideWidth", this.isCollapse ? "70px" : "");
|
||||
},
|
||||
resolvePath(routePath) {
|
||||
if (isExternal(routePath)) {
|
||||
return routePath;
|
||||
}
|
||||
if (isExternal(this.basePath)) {
|
||||
return this.basePath;
|
||||
}
|
||||
const currentRoutes = this.$store.state.permission.currentRoutes;
|
||||
if (currentRoutes && currentRoutes.path) {
|
||||
return path.resolve(currentRoutes.path, this.basePath, routePath);
|
||||
}
|
||||
},
|
||||
flatterRouter(arr = [], route = [], path = "") {
|
||||
arr.forEach((ele) => {
|
||||
this.formaterRoutePath(ele, path, route);
|
||||
});
|
||||
return route;
|
||||
},
|
||||
pathEndwith(path = "") {
|
||||
return path.endsWith("/") || !path ? path : path + "/";
|
||||
},
|
||||
formaterRoutePath(ele, routePath = "", route) {
|
||||
if (!ele.hidden) {
|
||||
if (!ele.children?.length) {
|
||||
ele.path = routePath + ele.path;
|
||||
route.push(ele);
|
||||
} else {
|
||||
this.flatterRouter(ele.children, route, this.pathEndwith(ele.path));
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
@ -133,8 +97,8 @@ export default {
|
||||
font-family: PingFang SC;
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #646a73;
|
||||
background: #fff;
|
||||
color: var(--SiderTextColor, #646a73);
|
||||
background-color: var(--SiderBG, #ffffff);
|
||||
cursor: pointer;
|
||||
|
||||
i {
|
||||
|
||||
@ -1196,4 +1196,20 @@ div:focus {
|
||||
position: absolute;
|
||||
right: 12px;
|
||||
bottom: 12px;
|
||||
}
|
||||
|
||||
|
||||
.de-input-search {
|
||||
.el-input__inner {
|
||||
padding-left: 36px;
|
||||
}
|
||||
.el-input__prefix {
|
||||
left: 12px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
svg {
|
||||
font-size: 16px;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -247,7 +247,9 @@ export default {
|
||||
}
|
||||
const dimensionList = []
|
||||
for (const key in rowData) {
|
||||
dimensionList.push({ id: nameIdMap[key], value: rowData[key] })
|
||||
if(meta.fieldValue === rowData[key]){
|
||||
dimensionList.push({ id: nameIdMap[key], value: rowData[key] })
|
||||
}
|
||||
}
|
||||
|
||||
this.pointParam = {
|
||||
|
||||
@ -126,10 +126,6 @@
|
||||
</el-form-item>
|
||||
</span>
|
||||
</span>
|
||||
<el-divider v-if="showProperty('axisLabel')" />
|
||||
<el-form-item v-show="showProperty('axisLabel')" :label="$t('chart.content_formatter')" class="form-item">
|
||||
<el-input v-model="axisForm.axisLabel.formatter" type="textarea" :autosize="{ minRows: 4, maxRows: 4}" @blur="changeYAxisStyle('axisLabel')" />
|
||||
</el-form-item>
|
||||
</div>
|
||||
</el-form>
|
||||
</el-col>
|
||||
|
||||
@ -126,10 +126,6 @@
|
||||
</el-form-item>
|
||||
</span>
|
||||
</span>
|
||||
<el-divider v-if="showProperty('axisLabel')" />
|
||||
<el-form-item v-show="showProperty('axisLabel')" :label="$t('chart.content_formatter')" class="form-item">
|
||||
<el-input v-model="axisForm.axisLabel.formatter" type="textarea" :autosize="{ minRows: 4, maxRows: 4}" @blur="changeYAxisStyle('axisLabel')" />
|
||||
</el-form-item>
|
||||
</div>
|
||||
</el-form>
|
||||
</el-col>
|
||||
|
||||
@ -2264,6 +2264,9 @@ export default {
|
||||
this.view.tableId = this.changeTable.id
|
||||
// 更换数据集后清空视图字段
|
||||
post('/chart/field/deleteByChartId/' + this.param.id + '/' + this.panelInfo.id, null).then(response => {
|
||||
// reset gauge
|
||||
this.view.customAttr.size.gaugeMinType = 'fix'
|
||||
this.view.customAttr.size.gaugeMaxType = 'fix'
|
||||
this.calcData(true, 'chart', false)
|
||||
this.initTableData(this.view.tableId, optType)
|
||||
this.closeChangeChart()
|
||||
|
||||
@ -72,7 +72,7 @@ export default {
|
||||
background: #ffffff;
|
||||
border: 1px solid var(--deCardStrokeColor, #dee0e3);
|
||||
border-radius: 4px;
|
||||
margin: 0 12.5px 25px 12.5px;
|
||||
margin: 0 24px 25px 0;
|
||||
.card-img-model {
|
||||
border-bottom: 1px solid var(--deCardStrokeColor, #dee0e3);
|
||||
height: 144px;
|
||||
|
||||
@ -2,11 +2,13 @@
|
||||
<div class="de-template-list">
|
||||
<el-input
|
||||
v-model="templateFilterText"
|
||||
:placeholder="$t('panel.filter_keywords')"
|
||||
:placeholder="$t('system_parameter_setting.search_keywords')"
|
||||
size="small"
|
||||
class="de-input-search"
|
||||
clearable
|
||||
prefix-icon="el-icon-search"
|
||||
/>
|
||||
>
|
||||
<svg-icon slot="prefix" icon-class="de-search"></svg-icon>
|
||||
</el-input>
|
||||
<el-empty
|
||||
:image="noneImg"
|
||||
v-if="!templateListComputed.length && templateFilterText === ''"
|
||||
@ -85,8 +87,8 @@ export default {
|
||||
return {
|
||||
templateFilterText: "",
|
||||
activeTemplate: "",
|
||||
noneImg: require('@/assets/None.png'),
|
||||
nothingImg: require('@/assets/nothing.png'),
|
||||
noneImg: require("@/assets/None.png"),
|
||||
nothingImg: require("@/assets/nothing.png"),
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -127,12 +129,12 @@ export default {
|
||||
},
|
||||
templateDelete(template) {
|
||||
const options = {
|
||||
title: 'system_parameter_setting.delete_this_category',
|
||||
content: 'system_parameter_setting.also_be_deleted',
|
||||
type: "primary",
|
||||
cb: () => this.$emit("templateDelete", template.id),
|
||||
};
|
||||
this.handlerConfirm(options);
|
||||
title: "system_parameter_setting.delete_this_category",
|
||||
content: "system_parameter_setting.also_be_deleted",
|
||||
type: "primary",
|
||||
cb: () => this.$emit("templateDelete", template.id),
|
||||
};
|
||||
this.handlerConfirm(options);
|
||||
},
|
||||
templateEdit(template) {
|
||||
this.$emit("templateEdit", template);
|
||||
@ -163,7 +165,7 @@ export default {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border-radius: 4px;
|
||||
color: var(--deTextPrimary, #1F2329);
|
||||
color: var(--deTextPrimary, #1f2329);
|
||||
font-family: "PingFang SC";
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
|
||||
@ -152,8 +152,8 @@ export default {
|
||||
currentTemplateLabel: "",
|
||||
currentTemplateId: "",
|
||||
templateList: [],
|
||||
templateMiniWidth: 262,
|
||||
templateCurWidth: 262,
|
||||
templateMiniWidth: 286,
|
||||
templateCurWidth: 286,
|
||||
formType: "",
|
||||
originName: "",
|
||||
templateDialog: {
|
||||
@ -187,9 +187,8 @@ export default {
|
||||
const curSeparator = Math.trunc(
|
||||
templateMainDom.offsetWidth / _this.templateMiniWidth
|
||||
);
|
||||
console.log(1, curSeparator);
|
||||
_this.templateCurWidth =
|
||||
Math.trunc(templateMainDom.offsetWidth / curSeparator) - 50;
|
||||
Math.trunc(templateMainDom.offsetWidth / curSeparator) - 24 - curSeparator;
|
||||
});
|
||||
});
|
||||
},
|
||||
@ -387,7 +386,7 @@ export default {
|
||||
.de-tabs-right {
|
||||
flex: 1;
|
||||
background: #fff;
|
||||
padding: 24px 12px 24px 12px;
|
||||
padding: 24px 0 24px 24px;
|
||||
overflow: hidden;
|
||||
|
||||
.template-box {
|
||||
@ -403,6 +402,7 @@ export default {
|
||||
|
||||
.active-template {
|
||||
margin: 4px 0 20px 0;
|
||||
padding-right: 24px;
|
||||
font-family: "PingFang SC";
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
|
||||
@ -15,9 +15,10 @@
|
||||
<!--基础配置表单-->
|
||||
<el-form ref="formInline" v-loading="loading" :model="formInline" :rules="rules"
|
||||
class="demo-form-inline de-form-item" :disabled="show" label-width="80px" label-position="right" size="small">
|
||||
<el-form-item prop="frontTimeOut">
|
||||
<el-form-item prop="frontTimeOut" class="de-i118">
|
||||
<template slot="label">
|
||||
{{ $t('system_parameter_setting.request_timeout')}}
|
||||
<i class="is-require"></i>
|
||||
<el-tooltip class="item" effect="dark" :content="$t('system_parameter_setting.front_time_out')"
|
||||
placement="top">
|
||||
<i class="el-icon-warning-outline tips"></i>
|
||||
@ -253,9 +254,8 @@ export default {
|
||||
<style lang="scss" scoped>
|
||||
.demo-form-inline {
|
||||
.tips {
|
||||
position: absolute;
|
||||
left: 100px;
|
||||
top: 5px;
|
||||
margin-left: 2px;
|
||||
position: relative;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
@ -265,3 +265,15 @@ export default {
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<style lang="scss">
|
||||
.de-i118 {
|
||||
.el-form-item__label::after {
|
||||
display: none;
|
||||
}
|
||||
.is-require::after {
|
||||
content: "*";
|
||||
color: #f54a45;
|
||||
margin-left: 2px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -41,7 +41,7 @@
|
||||
<el-input v-model="form.configuration.username" />
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('datasource.password')">
|
||||
<el-input v-model="form.configuration.password" show-password />
|
||||
<dePwd v-model="form.configuration.password"/>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
:label="$t('datasource.query_port')"
|
||||
@ -162,11 +162,13 @@ import { engineInfo, validate, save } from "@/api/system/engine";
|
||||
import i18n from "@/lang";
|
||||
import operater from "./operater";
|
||||
import msgCfm from '@/components/msgCfm'
|
||||
import dePwd from '@/components/deCustomCm/dePwd.vue'
|
||||
export default {
|
||||
name: "ClusterMode",
|
||||
mixins: [msgCfm],
|
||||
components: {
|
||||
operater,
|
||||
dePwd
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
||||
@ -68,14 +68,9 @@
|
||||
:label="$t('system_parameter_setting.SMTP_password')"
|
||||
prop="password"
|
||||
>
|
||||
<el-input
|
||||
ref="input"
|
||||
<dePwd
|
||||
v-model="formInline.password"
|
||||
:placeholder="$t('system_parameter_setting.SMTP_password')"
|
||||
autocomplete="new-password"
|
||||
show-password
|
||||
type="text"
|
||||
@focus="changeType"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('system_parameter_setting.test_recipients')">
|
||||
@ -90,13 +85,9 @@
|
||||
<i class="el-icon-warning-outline tips-not-absolute"></i>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
<el-input
|
||||
ref="input"
|
||||
<dePwd
|
||||
v-model="formInline.recipient"
|
||||
:placeholder="$t('system_parameter_setting.test_recipients')"
|
||||
autocomplete="new-password"
|
||||
show-password
|
||||
type="text"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="邮箱服务器配置">
|
||||
@ -134,12 +125,13 @@
|
||||
import { emailInfo, updateInfo, validate } from "@/api/system/email";
|
||||
import operater from "./operater";
|
||||
import msgCfm from '@/components/msgCfm'
|
||||
|
||||
import dePwd from '@/components/deCustomCm/dePwd.vue'
|
||||
export default {
|
||||
name: "EmailSetting",
|
||||
mixins: [msgCfm],
|
||||
components: {
|
||||
operater,
|
||||
dePwd
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@ -183,9 +175,6 @@ export default {
|
||||
this.query();
|
||||
},
|
||||
methods: {
|
||||
changeType() {
|
||||
this.$refs.input = "password";
|
||||
},
|
||||
query() {
|
||||
emailInfo().then((response) => {
|
||||
this.formInline = response.data;
|
||||
|
||||
@ -93,7 +93,7 @@
|
||||
:label="$t('kettle.passwd')"
|
||||
prop="configuration.passwd"
|
||||
>
|
||||
<el-input :placeholder="$t('components.input_a_password')" v-model="form.configuration.passwd" show-password />
|
||||
<dePwd :placeholder="$t('components.input_a_password')" v-model="form.configuration.passwd"/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-col>
|
||||
@ -122,11 +122,12 @@ import {
|
||||
} from "@/api/system/kettle";
|
||||
import i18n from "@/lang";
|
||||
import GridTable from "@/components/gridTable/index.vue";
|
||||
import dePwd from '@/components/deCustomCm/dePwd.vue'
|
||||
import msgCfm from '@/components/msgCfm'
|
||||
|
||||
export default {
|
||||
name: "KettleSetting",
|
||||
components: { GridTable },
|
||||
components: { GridTable, dePwd },
|
||||
mixins: [msgCfm],
|
||||
data() {
|
||||
return {
|
||||
@ -339,7 +340,7 @@ export default {
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
border-radius: 2px;
|
||||
width: 40px;
|
||||
padding: 1px 6px;
|
||||
height: 24px;
|
||||
}
|
||||
</style>
|
||||
403
frontend/src/views/system/log/filterUser.vue
Normal file
@ -0,0 +1,403 @@
|
||||
<template>
|
||||
<el-drawer
|
||||
:title="$t('user.filter_method')"
|
||||
:visible.sync="userDrawer"
|
||||
custom-class="user-drawer-task"
|
||||
size="680px"
|
||||
v-closePress
|
||||
direction="rtl"
|
||||
>
|
||||
<div class="filter">
|
||||
<span>{{ $t("log.optype") }}</span>
|
||||
<div class="filter-item">
|
||||
<span
|
||||
class="item"
|
||||
@click="statusChange(item.value)"
|
||||
:class="[activeType.includes(item.value) ? 'active' : '']"
|
||||
:key="item.label"
|
||||
v-for="item in types"
|
||||
>{{ $t(item.label) }}</span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
<div class="el-drawer__body-cont">
|
||||
<div class="filter">
|
||||
<span>{{ $t("log.user") }}</span>
|
||||
<div class="filter-item">
|
||||
<span
|
||||
@click="activeUserChange(ele.id)"
|
||||
class="item"
|
||||
:class="[activeUser.includes(ele.id) ? 'active' : '']"
|
||||
:key="ele.id"
|
||||
v-for="ele in usersValueCopy"
|
||||
>{{ ele.username }}</span
|
||||
>
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
popper-class="user-popper"
|
||||
width="200"
|
||||
trigger="click"
|
||||
>
|
||||
<el-select
|
||||
ref="userSelect"
|
||||
v-model="usersValue"
|
||||
multiple
|
||||
filterable
|
||||
:placeholder="$t('commons.please_select')"
|
||||
@change="changeUser"
|
||||
@remove-tag="changeUser"
|
||||
value-key="id"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in usersComputed"
|
||||
:key="item.username"
|
||||
:label="item.username"
|
||||
:value="item"
|
||||
/>
|
||||
</el-select>
|
||||
<span class="more" slot="reference">+ {{ $t("panel.more") }}</span>
|
||||
</el-popover>
|
||||
</div>
|
||||
</div>
|
||||
<div class="filter">
|
||||
<span>{{ $t("dedaterange.label") }}</span>
|
||||
<div class="filter-item">
|
||||
<DeDatePick v-model="dataRange"></DeDatePick>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="foot">
|
||||
<el-button class="btn normal" @click="reset">{{
|
||||
$t("commons.reset")
|
||||
}}</el-button>
|
||||
<el-button type="primary" class="btn" @click="search">{{
|
||||
$t("commons.adv_search.search")
|
||||
}}</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { dateFormat } from "@/views/system/task/options.js";
|
||||
import { opTypes } from "@/api/system/log";
|
||||
import { post } from "@/api/dataset/dataset";
|
||||
import DeDatePick from '@/components/deCustomCm/deDatePick.vue'
|
||||
export default {
|
||||
components: {
|
||||
DeDatePick
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
types: [],
|
||||
treeLoading: false,
|
||||
filterTextMap: [],
|
||||
dataRange: [],
|
||||
usersValue: [],
|
||||
activeUser: [],
|
||||
users: [],
|
||||
userCahe: [],
|
||||
activeType: [],
|
||||
userDrawer: false,
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
usersComputed() {
|
||||
return this.users.filter((ele) => !this.activeUser.includes(ele.id));
|
||||
},
|
||||
usersValueCopy() {
|
||||
return this.userCahe.filter((ele) => this.activeUser.includes(ele.id));
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.loadUsers();
|
||||
this.loadType();
|
||||
},
|
||||
methods: {
|
||||
loadType() {
|
||||
opTypes().then((res) => {
|
||||
this.types = res.data.map((item) => {
|
||||
return { label: item.name, value: item.id };
|
||||
});
|
||||
});
|
||||
},
|
||||
loadUsers() {
|
||||
post("/api/user/userLists", {}, false).then((res) => {
|
||||
this.users = res.data;
|
||||
});
|
||||
},
|
||||
changeUser() {
|
||||
if (
|
||||
this.userCahe.length >
|
||||
this.usersValue.length + this.activeUser.length
|
||||
) {
|
||||
this.userCahe = this.userCahe.filter((ele) =>
|
||||
this.usersValue
|
||||
.map((ele) => ele.id)
|
||||
.concat(this.activeUser)
|
||||
.includes(ele.id)
|
||||
);
|
||||
return;
|
||||
}
|
||||
const userIdx = this.usersValue.findIndex(
|
||||
(ele) =>
|
||||
!this.userCahe
|
||||
.map((ele) => ele.id)
|
||||
.concat(this.activeUser)
|
||||
.includes(ele.id)
|
||||
);
|
||||
if (userIdx === -1) return;
|
||||
this.activeUser.push(this.usersValue[userIdx].id);
|
||||
this.userCahe.push(this.usersValue[userIdx]);
|
||||
this.usersValue.splice(userIdx, 1);
|
||||
},
|
||||
activeUserChange(id) {
|
||||
const userIndex = this.activeUser.findIndex((ele) => ele === id);
|
||||
if (userIndex === -1) {
|
||||
this.activeUser.push(id);
|
||||
this.usersValue = this.usersValue.filter((ele) => ele.id !== id);
|
||||
} else {
|
||||
this.activeUser.splice(userIndex, 1);
|
||||
const user = this.userCahe.find((ele) => ele.id === id);
|
||||
this.usersValue.push(user);
|
||||
}
|
||||
},
|
||||
clearFilter() {
|
||||
this.dataRange = [];
|
||||
this.usersValue = [];
|
||||
this.activeUser = [];
|
||||
this.activeType = [];
|
||||
this.userCahe = [];
|
||||
this.$emit("search", [], []);
|
||||
},
|
||||
clearOneFilter(index) {
|
||||
(this.filterTextMap[index] || []).forEach((ele) => {
|
||||
this[ele] = [];
|
||||
});
|
||||
},
|
||||
statusChange(value, type) {
|
||||
const statusIndex = this.activeType.findIndex((ele) => ele === value);
|
||||
if (statusIndex === -1) {
|
||||
this.activeType.push(value);
|
||||
} else {
|
||||
this.activeType.splice(statusIndex, 1);
|
||||
}
|
||||
},
|
||||
search() {
|
||||
this.userDrawer = false;
|
||||
this.$emit("search", this.formatCondition(), this.formatText());
|
||||
},
|
||||
formatText() {
|
||||
this.filterTextMap = [];
|
||||
const params = [];
|
||||
if (this.activeType.length) {
|
||||
params.push(
|
||||
`${this.$t('log.optype')}:${this.activeType
|
||||
.map((item) =>
|
||||
this.types.find((itx) => itx.value === item).label
|
||||
)
|
||||
.join("、")}`
|
||||
);
|
||||
this.filterTextMap.push([`activeType`]);
|
||||
}
|
||||
if (this.activeUser.length) {
|
||||
let str = `${this.$t("log.user")}:${this.activeUser.reduce(
|
||||
(pre, next) =>
|
||||
(this.users.find((ele) => ele.id === next) || {}).username +
|
||||
"、" +
|
||||
pre,
|
||||
""
|
||||
)}`;
|
||||
params.push(str.slice(0, str.length - 1));
|
||||
this.filterTextMap.push([
|
||||
"usersValue",
|
||||
"activeUser",
|
||||
"users",
|
||||
"userCahe",
|
||||
]);
|
||||
}
|
||||
|
||||
if (this.dataRange.length) {
|
||||
params.push(
|
||||
`${this.$t("dedaterange.label")}:${this.dataRange
|
||||
.map((ele) => {
|
||||
return dateFormat("YYYY-mm-dd", ele);
|
||||
})
|
||||
.join("-")}`
|
||||
);
|
||||
this.filterTextMap.push(["dataRange"]);
|
||||
}
|
||||
return params;
|
||||
},
|
||||
formatCondition() {
|
||||
const fildMap = {
|
||||
optype: this.activeType,
|
||||
"user_id": this.activeUser,
|
||||
};
|
||||
const conditions = [];
|
||||
Object.keys(fildMap).forEach((ele) => {
|
||||
if (fildMap[ele].length) {
|
||||
conditions.push({
|
||||
field: ele,
|
||||
operator: "in",
|
||||
value: fildMap[ele],
|
||||
});
|
||||
}
|
||||
});
|
||||
const [min, max] = this.dataRange;
|
||||
if (min && max) {
|
||||
conditions.push({
|
||||
field: "time",
|
||||
operator: "between",
|
||||
value: [+min, +max],
|
||||
});
|
||||
}
|
||||
return conditions;
|
||||
},
|
||||
init() {
|
||||
this.userDrawer = true;
|
||||
},
|
||||
reset() {
|
||||
this.clearFilter();
|
||||
this.userDrawer = false;
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.user-drawer-task {
|
||||
.el-drawer__body-cont {
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
overflow: hidden;
|
||||
width: 100%;
|
||||
padding-bottom: 80px;
|
||||
}
|
||||
.el-drawer__header {
|
||||
padding: 16px 24px;
|
||||
margin: 0;
|
||||
font-family: PingFang SC;
|
||||
font-size: 16px;
|
||||
font-weight: 500;
|
||||
line-height: 24px;
|
||||
color: #1f2329;
|
||||
position: relative;
|
||||
box-sizing: border-box;
|
||||
height: 57px;
|
||||
mix-blend-mode: normal;
|
||||
border-bottom: 1px solid rgba(187, 191, 196, 0.5);
|
||||
|
||||
.el-drawer__close-btn {
|
||||
position: absolute;
|
||||
right: 24px;
|
||||
top: 16px;
|
||||
padding: 4px;
|
||||
border-radius: 4px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.el-drawer__close-btn:hover {
|
||||
background: #e9e9ea;
|
||||
}
|
||||
}
|
||||
|
||||
.el-drawer__body {
|
||||
padding: 12px 24px 24px 24px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.filter {
|
||||
display: flex;
|
||||
min-height: 46px;
|
||||
> :nth-child(1) {
|
||||
color: #1f2329;
|
||||
font-family: "PingFang SC";
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 24px;
|
||||
white-space: nowrap;
|
||||
width: 116px;
|
||||
}
|
||||
.filter-item {
|
||||
flex: 1;
|
||||
.item,
|
||||
.more {
|
||||
font-family: PingFang SC;
|
||||
white-space: nowrap;
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
line-height: 24px;
|
||||
margin-right: 12px;
|
||||
text-align: center;
|
||||
padding: 1px 6px;
|
||||
background: #f5f6f7;
|
||||
border-radius: 2px;
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
.active,
|
||||
.more:hover {
|
||||
background: rgba(51, 112, 255, 0.1);
|
||||
color: #0c296e;
|
||||
}
|
||||
.more {
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
}
|
||||
.btn {
|
||||
border-radius: 4px;
|
||||
padding: 5px 26px 5px 26px;
|
||||
font-family: PingFang SC;
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
line-height: 20px;
|
||||
letter-spacing: 0px;
|
||||
text-align: center;
|
||||
border: none;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.normal {
|
||||
color: #1f2329;
|
||||
border: 1px solid #bbbfc4;
|
||||
margin-left: 12px;
|
||||
}
|
||||
|
||||
.foot {
|
||||
position: absolute;
|
||||
height: 80px;
|
||||
width: 100%;
|
||||
padding: 24px;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
text-align: right;
|
||||
background: #ffffff;
|
||||
box-shadow: 0px -1px 4px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
}
|
||||
.user-popper {
|
||||
padding: 0;
|
||||
background: #fff;
|
||||
.popper__arrow {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
.tree-select {
|
||||
.el-select-dropdown__empty,
|
||||
.el-scrollbar__wrap,
|
||||
.popper__arrow {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
.user-popper.dept {
|
||||
height: 400px;
|
||||
overflow: auto;
|
||||
}
|
||||
</style>
|
||||
@ -1,162 +1,394 @@
|
||||
<template>
|
||||
<layout-content :header="$t('log.title')">
|
||||
<complex-table
|
||||
v-loading="$store.getters.loadingMap[$store.getters.currentPath]"
|
||||
:data="data"
|
||||
:columns="columns"
|
||||
:search-config="searchConfig"
|
||||
:pagination-config="paginationConfig"
|
||||
@select="select"
|
||||
@search="search"
|
||||
@sort-change="sortChange"
|
||||
<de-layout-content :header="$t('log.title')">
|
||||
<el-row class="top-operate">
|
||||
<el-col :span="12">
|
||||
<deBtn v-permission="['log:export']" secondary @click="exportConfirm">{{
|
||||
$t("zip.export")
|
||||
}}</deBtn>
|
||||
|
||||
</el-col>
|
||||
<el-col :span="12" class="right-user">
|
||||
<el-input
|
||||
:placeholder="$t('通过事件详情搜索')"
|
||||
prefix-icon="el-icon-search"
|
||||
class="name-email-search"
|
||||
size="small"
|
||||
clearable
|
||||
ref="search"
|
||||
v-model="nikeName"
|
||||
@blur="initSearch"
|
||||
@clear="initSearch"
|
||||
>
|
||||
</el-input>
|
||||
<deBtn
|
||||
:secondary="!cacheCondition.length"
|
||||
:plain="!!cacheCondition.length"
|
||||
icon="iconfont icon-icon-filter"
|
||||
@click="filterShow"
|
||||
>{{ $t("user.filter")
|
||||
}}<template v-if="filterTexts.length">
|
||||
({{ cacheCondition.length }})
|
||||
</template>
|
||||
</deBtn>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div class="filter-texts" v-if="filterTexts.length">
|
||||
<span class="sum">{{ paginationConfig.total }}</span>
|
||||
<span class="title">{{ $t("user.result_one") }}</span>
|
||||
<el-divider direction="vertical"></el-divider>
|
||||
<i
|
||||
@click="scrollPre"
|
||||
v-if="showScroll"
|
||||
class="el-icon-arrow-left arrow-filter"
|
||||
></i>
|
||||
<div class="filter-texts-container">
|
||||
<p class="text" v-for="(ele, index) in filterTexts" :key="ele">
|
||||
{{ ele }} <i @click="clearOneFilter(index)" class="el-icon-close"></i>
|
||||
</p>
|
||||
</div>
|
||||
<i
|
||||
@click="scrollNext"
|
||||
v-if="showScroll"
|
||||
class="el-icon-arrow-right arrow-filter"
|
||||
></i>
|
||||
<el-button
|
||||
type="text"
|
||||
class="clear-btn"
|
||||
icon="el-icon-delete"
|
||||
@click="clearFilter"
|
||||
>{{ $t("user.clear_filter") }}</el-button
|
||||
>
|
||||
</div>
|
||||
<div
|
||||
class="table-container"
|
||||
id="resize-for-filter"
|
||||
:class="[filterTexts.length ? 'table-container-filter' : '']"
|
||||
>
|
||||
<template #toolbar>
|
||||
<el-button v-permission="['log:export']" icon="el-icon-download" size="mini" @click="exportConfirm">{{ $t('log.export') }}</el-button>
|
||||
</template>
|
||||
|
||||
<el-table-column :show-overflow-tooltip="true" prop="opType" :label="$t('log.optype')" width="140">
|
||||
<template v-slot:default="{row}">
|
||||
<span>{{ row.opType + row.sourceType }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :show-overflow-tooltip="true" prop="detail" :label="$t('log.detail')" />
|
||||
<el-table-column :show-overflow-tooltip="true" prop="user" :label="$t('log.user')" width="100" />
|
||||
<el-table-column :show-overflow-tooltip="true" prop="time" sortable="custom" :label="$t('log.time')" width="180">
|
||||
<template v-slot:default="scope">
|
||||
<span>{{ scope.row.time | timestampFormatDate }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</complex-table>
|
||||
</layout-content>
|
||||
<grid-table
|
||||
v-loading="$store.getters.loadingMap[$store.getters.currentPath]"
|
||||
:tableData="data"
|
||||
:columns="[]"
|
||||
:pagination="paginationConfig"
|
||||
@sort-change="sortChange"
|
||||
@size-change="handleSizeChange"
|
||||
@current-change="handleCurrentChange"
|
||||
>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="opType"
|
||||
:label="$t('log.optype')"
|
||||
width="140"
|
||||
>
|
||||
<template v-slot:default="{ row }">
|
||||
<span>{{ row.opType + row.sourceType }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="detail"
|
||||
:label="$t('log.detail')"
|
||||
/>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="user"
|
||||
:label="$t('log.user')"
|
||||
width="100"
|
||||
/>
|
||||
<el-table-column
|
||||
show-overflow-tooltip
|
||||
prop="time"
|
||||
sortable="custom"
|
||||
:label="$t('log.time')"
|
||||
width="180"
|
||||
>
|
||||
<template v-slot:default="scope">
|
||||
<span>{{ scope.row.time | timestampFormatDate }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</grid-table>
|
||||
</div>
|
||||
<keep-alive>
|
||||
<filterUser ref="filterUser" @search="filterDraw"></filterUser>
|
||||
</keep-alive>
|
||||
</de-layout-content>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import LayoutContent from '@/components/business/LayoutContent'
|
||||
import ComplexTable from '@/components/business/complex-table'
|
||||
import { formatCondition, formatQuickCondition, addOrder, formatOrders } from '@/utils/index'
|
||||
import { logGrid, opTypes, exportExcel } from '@/api/system/log'
|
||||
import DeLayoutContent from "@/components/business/DeLayoutContent";
|
||||
import GridTable from "@/components/gridTable/index.vue";
|
||||
import filterUser from './filterUser';
|
||||
import _ from 'lodash';
|
||||
import {
|
||||
formatCondition,
|
||||
formatQuickCondition,
|
||||
addOrder,
|
||||
formatOrders,
|
||||
} from "@/utils/index";
|
||||
import { logGrid, exportExcel } from "@/api/system/log";
|
||||
export default {
|
||||
|
||||
components: { ComplexTable, LayoutContent },
|
||||
components: { GridTable, DeLayoutContent, filterUser },
|
||||
data() {
|
||||
return {
|
||||
columns: [],
|
||||
|
||||
searchConfig: {
|
||||
useQuickSearch: false,
|
||||
useComplexSearch: true,
|
||||
quickPlaceholder: this.$t('log.search_by_key'),
|
||||
components: [
|
||||
{
|
||||
field: 'optype',
|
||||
label: this.$t('log.optype'),
|
||||
component: 'FuComplexMixSelect',
|
||||
options: [],
|
||||
multiple: true,
|
||||
class: 'de-log-filter',
|
||||
defaultOperator: 'in',
|
||||
filterable: true,
|
||||
'reserve-keyword': true
|
||||
},
|
||||
{ field: 'nick_name', label: this.$t('log.user'), component: 'DeComplexInput', class: 'de-log-filter' },
|
||||
|
||||
{ field: 'time', label: this.$t('log.time'), component: 'FuComplexDateTime', defaultOperator: 'between', class: 'de-log-filter' }
|
||||
|
||||
]
|
||||
},
|
||||
|
||||
paginationConfig: {
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
total: 0
|
||||
total: 0,
|
||||
},
|
||||
data: [],
|
||||
types: [],
|
||||
|
||||
orderConditions: [],
|
||||
last_condition: null
|
||||
|
||||
}
|
||||
nikeName: "",
|
||||
showScroll: false,
|
||||
filterTexts: [],
|
||||
cacheCondition: [],
|
||||
};
|
||||
},
|
||||
|
||||
created() {
|
||||
this.types = []
|
||||
opTypes().then(res => {
|
||||
const datas = res.data
|
||||
datas.forEach(item => {
|
||||
this.types.push({ 'label': item.name, 'value': item.id })
|
||||
})
|
||||
this.searchConfig.components[0].options = this.types
|
||||
})
|
||||
watch: {
|
||||
filterTexts: {
|
||||
handler() {
|
||||
this.getScrollStatus();
|
||||
},
|
||||
deep: true,
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.search()
|
||||
this.search();
|
||||
this.resizeObserver();
|
||||
},
|
||||
|
||||
methods: {
|
||||
|
||||
exportConfirm() {
|
||||
this.$confirm(this.$t('log.confirm'), '', {
|
||||
confirmButtonText: this.$t('commons.confirm'),
|
||||
cancelButtonText: this.$t('commons.cancel'),
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
this.exportData()
|
||||
}).catch(() => {
|
||||
// this.$info(this.$t('commons.delete_cancel'))
|
||||
this.$confirm(this.$t("log.confirm"), "", {
|
||||
confirmButtonText: this.$t("commons.confirm"),
|
||||
cancelButtonText: this.$t("commons.cancel"),
|
||||
type: "warning",
|
||||
})
|
||||
.then(() => {
|
||||
this.exportData();
|
||||
})
|
||||
.catch(() => {
|
||||
// this.$info(this.$t('commons.delete_cancel'))
|
||||
});
|
||||
},
|
||||
exportData() {
|
||||
let condition = this.last_condition
|
||||
condition = formatQuickCondition(condition, 'key')
|
||||
const temp = formatCondition(condition)
|
||||
const param = temp || {}
|
||||
param['orders'] = formatOrders(this.orderConditions)
|
||||
let condition = this.last_condition;
|
||||
condition = formatQuickCondition(condition, "key");
|
||||
const temp = formatCondition(condition);
|
||||
const param = temp || {};
|
||||
param["orders"] = formatOrders(this.orderConditions);
|
||||
|
||||
exportExcel(param).then(res => {
|
||||
const blob = new Blob([res], { type: 'application/vnd.ms-excel' })
|
||||
const link = document.createElement('a')
|
||||
link.style.display = 'none'
|
||||
link.href = URL.createObjectURL(blob)
|
||||
link.download = 'DataEase操作日志.xls' // 下载的文件名
|
||||
document.body.appendChild(link)
|
||||
link.click()
|
||||
document.body.removeChild(link)
|
||||
})
|
||||
exportExcel(param).then((res) => {
|
||||
const blob = new Blob([res], { type: "application/vnd.ms-excel" });
|
||||
const link = document.createElement("a");
|
||||
link.style.display = "none";
|
||||
link.href = URL.createObjectURL(blob);
|
||||
link.download = "DataEase操作日志.xls"; // 下载的文件名
|
||||
document.body.appendChild(link);
|
||||
link.click();
|
||||
document.body.removeChild(link);
|
||||
});
|
||||
},
|
||||
|
||||
sortChange({ column, prop, order }) {
|
||||
this.orderConditions = []
|
||||
this.orderConditions = [];
|
||||
if (!order) {
|
||||
this.search(this.last_condition)
|
||||
return
|
||||
this.initSearch();
|
||||
return;
|
||||
}
|
||||
|
||||
this.orderConditions = []
|
||||
addOrder({ field: prop, value: order }, this.orderConditions)
|
||||
this.search(this.last_condition)
|
||||
this.orderConditions = [];
|
||||
addOrder({ field: prop, value: order }, this.orderConditions);
|
||||
this.initSearch();
|
||||
},
|
||||
select(selection) {
|
||||
|
||||
getScrollStatus() {
|
||||
this.$nextTick(() => {
|
||||
const dom = document.querySelector(".filter-texts-container");
|
||||
this.showScroll = dom && dom.scrollWidth > dom.offsetWidth;
|
||||
});
|
||||
},
|
||||
resizeObserver() {
|
||||
this.resizeForFilter = new ResizeObserver((entries) => {
|
||||
if (!this.filterTexts.length) return;
|
||||
this.layoutResize();
|
||||
});
|
||||
this.resizeForFilter.observe(
|
||||
document.querySelector("#resize-for-filter")
|
||||
);
|
||||
},
|
||||
layoutResize: _.debounce(function () {
|
||||
this.getScrollStatus();
|
||||
}, 200),
|
||||
scrollPre() {
|
||||
const dom = document.querySelector(".filter-texts-container");
|
||||
dom.scrollLeft -= 10;
|
||||
if (dom.scrollLeft <= 0) {
|
||||
dom.scrollLeft = 0;
|
||||
}
|
||||
},
|
||||
scrollNext() {
|
||||
const dom = document.querySelector(".filter-texts-container");
|
||||
dom.scrollLeft += 10;
|
||||
const width = dom.scrollWidth - dom.offsetWidth;
|
||||
if (dom.scrollLeft > width) {
|
||||
dom.scrollLeft = width;
|
||||
}
|
||||
},
|
||||
handleSizeChange(pageSize) {
|
||||
this.paginationConfig.currentPage = 1;
|
||||
this.paginationConfig.pageSize = pageSize;
|
||||
this.search();
|
||||
},
|
||||
handleCurrentChange(currentPage) {
|
||||
this.paginationConfig.currentPage = currentPage;
|
||||
this.search();
|
||||
},
|
||||
initSearch() {
|
||||
this.handleCurrentChange(1);
|
||||
},
|
||||
clearFilter() {
|
||||
this.$refs.filterUser.clearFilter();
|
||||
},
|
||||
clearOneFilter(index) {
|
||||
this.$refs.filterUser.clearOneFilter(index);
|
||||
this.$refs.filterUser.search();
|
||||
},
|
||||
filterDraw(condition, filterTexts = []) {
|
||||
this.cacheCondition = condition;
|
||||
this.filterTexts = filterTexts;
|
||||
this.initSearch();
|
||||
},
|
||||
filterShow() {
|
||||
this.$refs.filterUser.init();
|
||||
},
|
||||
search() {
|
||||
const param = {
|
||||
orders: formatOrders(this.orderConditions),
|
||||
conditions: [...this.cacheCondition],
|
||||
};
|
||||
if (this.nikeName) {
|
||||
param.conditions.push({
|
||||
field: `nick_name`,
|
||||
operator: "like",
|
||||
value: this.nikeName,
|
||||
});
|
||||
}
|
||||
const { currentPage, pageSize } = this.paginationConfig;
|
||||
logGrid(currentPage, pageSize, param).then((response) => {
|
||||
this.data = response.data.listObject;
|
||||
this.paginationConfig.total = response.data.itemCount;
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.table-container {
|
||||
height: calc(100% - 50px);
|
||||
}
|
||||
|
||||
search(condition) {
|
||||
this.last_condition = condition
|
||||
condition = formatQuickCondition(condition, 'key')
|
||||
const temp = formatCondition(condition)
|
||||
const param = temp || {}
|
||||
param['orders'] = formatOrders(this.orderConditions)
|
||||
const { currentPage, pageSize } = this.paginationConfig
|
||||
logGrid(currentPage, pageSize, param).then(response => {
|
||||
this.data = response.data.listObject
|
||||
this.paginationConfig.total = response.data.itemCount
|
||||
})
|
||||
.table-container-filter {
|
||||
height: calc(100% - 110px);
|
||||
}
|
||||
.filter-texts {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin: 17px 0;
|
||||
font-family: "PingFang SC";
|
||||
font-weight: 400;
|
||||
|
||||
.sum {
|
||||
color: #1f2329;
|
||||
}
|
||||
|
||||
.title {
|
||||
color: #999999;
|
||||
margin-left: 8px;
|
||||
}
|
||||
|
||||
.text {
|
||||
max-width: 280px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
padding: 1px 22px 1px 6px;
|
||||
display: inline-block;
|
||||
align-items: center;
|
||||
color: #0c296e;
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
background: rgba(51, 112, 255, 0.1);
|
||||
border-radius: 2px;
|
||||
margin: 0;
|
||||
margin-right: 8px;
|
||||
position: relative;
|
||||
i {
|
||||
position: absolute;
|
||||
right: 2px;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
.clear-btn {
|
||||
color: #646a73;
|
||||
}
|
||||
|
||||
.clear-btn:hover {
|
||||
color: #3370ff;
|
||||
}
|
||||
|
||||
.filter-texts-container::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.arrow-filter {
|
||||
font-size: 16px;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
cursor: pointer;
|
||||
color: #646a73;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.arrow-filter:hover {
|
||||
background: rgba(31, 35, 41, 0.1);
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.el-icon-arrow-right.arrow-filter {
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.el-icon-arrow-left.arrow-filter {
|
||||
margin-right: 5px;
|
||||
}
|
||||
.filter-texts-container {
|
||||
flex: 1;
|
||||
overflow-x: auto;
|
||||
white-space: nowrap;
|
||||
height: 24px;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
.top-operate {
|
||||
margin-bottom: 16px;
|
||||
.right-user {
|
||||
text-align: right;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
|
||||
<style scoped>
|
||||
.de-button {
|
||||
margin-left: 12px;
|
||||
}
|
||||
|
||||
.el-input--medium .el-input__icon {
|
||||
line-height: 32px;
|
||||
}
|
||||
}
|
||||
|
||||
.name-email-search {
|
||||
width: 240px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@ -870,7 +870,7 @@ span {
|
||||
|
||||
.de-Completed {
|
||||
&::before {
|
||||
background: var(--primary, #3370ff);
|
||||
background: var(--deSuccess, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -13,8 +13,8 @@
|
||||
clearable
|
||||
ref="search"
|
||||
v-model="nikeName"
|
||||
@blur="clearSearch"
|
||||
@clear="clearSearch"
|
||||
@blur="initSearch"
|
||||
@clear="initSearch"
|
||||
>
|
||||
</el-input>
|
||||
<deBtn
|
||||
@ -200,11 +200,6 @@ export default {
|
||||
this.destroyTimer();
|
||||
},
|
||||
methods: {
|
||||
clearSearch() {
|
||||
this.cachId = "";
|
||||
this.$emit("reset");
|
||||
this.initSearch();
|
||||
},
|
||||
exportConfirm() {
|
||||
this.$confirm(this.$t("log.confirm"), "", {
|
||||
confirmButtonText: this.$t("commons.confirm"),
|
||||
@ -614,7 +609,7 @@ span {
|
||||
|
||||
.de-Completed {
|
||||
&::before {
|
||||
background: var(--primary, #3370ff);
|
||||
background: var(--deSuccess, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -115,15 +115,7 @@
|
||||
<div class="filter">
|
||||
<span>{{ $t("dedaterange.label") }}</span>
|
||||
<div class="filter-item">
|
||||
<el-date-picker
|
||||
v-model="dataRange"
|
||||
size="small"
|
||||
type="daterange"
|
||||
range-separator=""
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
>
|
||||
</el-date-picker>
|
||||
<DeDatePick v-model="dataRange"></DeDatePick>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -143,8 +135,12 @@ import { filterDataset, dateFormat } from "./options";
|
||||
import { allRoles } from "@/api/system/user";
|
||||
import { getDatasetTree, treeByDatasetId } from "@/api/system/dept";
|
||||
import { queryAuthModel } from "@/api/authModel/authModel";
|
||||
import DeDatePick from '@/components/deCustomCm/deDatePick.vue'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
DeDatePick
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
treeLoading: false,
|
||||
|
||||
@ -7,127 +7,120 @@
|
||||
v-closePress
|
||||
direction="rtl"
|
||||
>
|
||||
<div class="el-drawer__body-cont">
|
||||
|
||||
<div class="filter">
|
||||
<span>{{ $t("dataset.datalist") }}</span>
|
||||
<div class="filter-item">
|
||||
<span
|
||||
class="item"
|
||||
@click="activeDatasetChange(ele.id)"
|
||||
:class="[activeDataset.includes(ele.id) ? 'active' : '']"
|
||||
:key="ele.id"
|
||||
v-for="ele in selectDatasetsCahe"
|
||||
>{{ ele.name }}</span
|
||||
>
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
popper-class="user-popper"
|
||||
width="200"
|
||||
trigger="click"
|
||||
>
|
||||
<div class="el-drawer__body-cont">
|
||||
<div class="filter">
|
||||
<span>{{ $t("dataset.datalist") }}</span>
|
||||
<div class="filter-item">
|
||||
<span
|
||||
class="item"
|
||||
@click="activeDatasetChange(ele.id)"
|
||||
:class="[activeDataset.includes(ele.id) ? 'active' : '']"
|
||||
:key="ele.id"
|
||||
v-for="ele in selectDatasetsCahe"
|
||||
>{{ ele.name }}</span
|
||||
>
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
popper-class="user-popper dept"
|
||||
popper-class="user-popper"
|
||||
width="200"
|
||||
trigger="click"
|
||||
v-loading="treeLoading"
|
||||
>
|
||||
<el-tree
|
||||
ref="datasetTreeRef"
|
||||
current-node-key="id"
|
||||
:data="treeData"
|
||||
node-key="id"
|
||||
highlight-current
|
||||
:filter-node-method="filterNode"
|
||||
:expand-on-click-node="true"
|
||||
@node-click="nodeClick"
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
popper-class="user-popper dept"
|
||||
width="200"
|
||||
trigger="click"
|
||||
v-loading="treeLoading"
|
||||
>
|
||||
<span slot-scope="{ data }" class="custom-tree-node">
|
||||
<span v-if="data.modelInnerType === 'group'">
|
||||
<svg-icon icon-class="scene" class="ds-icon-scene" />
|
||||
<span
|
||||
style="
|
||||
margin-left: 6px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
"
|
||||
:title="data.name"
|
||||
>{{ data.name }}</span
|
||||
>
|
||||
</span>
|
||||
<span v-else>
|
||||
<span>
|
||||
<svg-icon
|
||||
:icon-class="`ds-${data.modelInnerType}`"
|
||||
:class="`ds-icon-${data.modelInnerType}`"
|
||||
/>
|
||||
<el-tree
|
||||
ref="datasetTreeRef"
|
||||
current-node-key="id"
|
||||
:data="treeData"
|
||||
node-key="id"
|
||||
highlight-current
|
||||
:filter-node-method="filterNode"
|
||||
:expand-on-click-node="true"
|
||||
@node-click="nodeClick"
|
||||
>
|
||||
<span slot-scope="{ data }" class="custom-tree-node">
|
||||
<span v-if="data.modelInnerType === 'group'">
|
||||
<svg-icon icon-class="scene" class="ds-icon-scene" />
|
||||
<span
|
||||
style="
|
||||
margin-left: 6px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
"
|
||||
:title="data.name"
|
||||
>{{ data.name }}</span
|
||||
>
|
||||
</span>
|
||||
<span v-else>
|
||||
<span>
|
||||
<svg-icon
|
||||
:icon-class="`ds-${data.modelInnerType}`"
|
||||
:class="`ds-icon-${data.modelInnerType}`"
|
||||
/>
|
||||
</span>
|
||||
<span
|
||||
style="
|
||||
margin-left: 6px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
"
|
||||
:title="data.name"
|
||||
>{{ data.name }}</span
|
||||
>
|
||||
</span>
|
||||
<span
|
||||
style="
|
||||
margin-left: 6px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
"
|
||||
:title="data.name"
|
||||
>{{ data.name }}</span
|
||||
>
|
||||
</span>
|
||||
</span>
|
||||
</el-tree>
|
||||
</el-tree>
|
||||
|
||||
<el-select
|
||||
ref="datasetSelect"
|
||||
v-model="selectDatasets"
|
||||
slot="reference"
|
||||
popper-class="tree-select"
|
||||
multiple
|
||||
:placeholder="$t('commons.please_select')"
|
||||
value-key="id"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in selectDatasets"
|
||||
:key="item.name"
|
||||
:label="item.name"
|
||||
:value="item"
|
||||
/>
|
||||
</el-select>
|
||||
<el-select
|
||||
ref="datasetSelect"
|
||||
v-model="selectDatasets"
|
||||
slot="reference"
|
||||
popper-class="tree-select"
|
||||
multiple
|
||||
:placeholder="$t('commons.please_select')"
|
||||
value-key="id"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in selectDatasets"
|
||||
:key="item.name"
|
||||
:label="item.name"
|
||||
:value="item"
|
||||
/>
|
||||
</el-select>
|
||||
</el-popover>
|
||||
<span class="more" slot="reference">+ {{ $t("panel.more") }}</span>
|
||||
</el-popover>
|
||||
<span class="more" slot="reference">+ {{ $t("panel.more") }}</span>
|
||||
</el-popover>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-for="ele in filterDataset" :key="ele.name" class="filter">
|
||||
<span>{{ $t(ele.name) }}</span>
|
||||
<div class="filter-item">
|
||||
<span
|
||||
class="item"
|
||||
@click="statusChange(item.value, ele.activeType)"
|
||||
:class="[active[ele.activeType].includes(item.value) ? 'active' : '']"
|
||||
:key="item.name"
|
||||
v-for="item in ele.list"
|
||||
>{{ $t(item.name) }}</span
|
||||
>
|
||||
<div v-for="ele in filterDataset" :key="ele.name" class="filter">
|
||||
<span>{{ $t(ele.name) }}</span>
|
||||
<div class="filter-item">
|
||||
<span
|
||||
class="item"
|
||||
@click="statusChange(item.value, ele.activeType)"
|
||||
:class="[
|
||||
active[ele.activeType].includes(item.value) ? 'active' : '',
|
||||
]"
|
||||
:key="item.name"
|
||||
v-for="item in ele.list"
|
||||
>{{ $t(item.name) }}</span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="filter">
|
||||
<span>{{ $t("dedaterange.label") }}</span>
|
||||
<div class="filter-item">
|
||||
<el-date-picker
|
||||
v-model="dataRange"
|
||||
size="small"
|
||||
type="daterange"
|
||||
range-separator=""
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
>
|
||||
</el-date-picker>
|
||||
<div class="filter">
|
||||
<span>{{ $t("dedaterange.label") }}</span>
|
||||
<div class="filter-item">
|
||||
<DeDatePick v-model="dataRange"></DeDatePick>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="foot">
|
||||
<el-button class="btn normal" @click="reset">{{
|
||||
$t("commons.reset")
|
||||
@ -142,8 +135,12 @@
|
||||
<script>
|
||||
import { filterDatasetRecord, dateFormat } from "./options";
|
||||
import { queryAuthModel } from "@/api/authModel/authModel";
|
||||
import DeDatePick from "@/components/deCustomCm/deDatePick.vue";
|
||||
|
||||
export default {
|
||||
components: {
|
||||
DeDatePick,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
treeLoading: false,
|
||||
@ -197,7 +194,7 @@ export default {
|
||||
clearFilter() {
|
||||
this.active = {
|
||||
execStatus: [],
|
||||
}
|
||||
};
|
||||
this.dataRange = [];
|
||||
this.activeDataset = [];
|
||||
this.selectDatasets = [];
|
||||
@ -206,15 +203,15 @@ export default {
|
||||
this.$emit("search", [], []);
|
||||
},
|
||||
clearOneFilter(index) {
|
||||
(this.filterTextMap[index] || []).forEach(ele => {
|
||||
const eleKey = ele.split('.');
|
||||
(this.filterTextMap[index] || []).forEach((ele) => {
|
||||
const eleKey = ele.split(".");
|
||||
if (eleKey.length === 2) {
|
||||
const [p, c ] = eleKey;
|
||||
this[p][c] = []
|
||||
const [p, c] = eleKey;
|
||||
this[p][c] = [];
|
||||
} else {
|
||||
this[ele] = []
|
||||
this[ele] = [];
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
statusChange(value, type) {
|
||||
const statusIndex = this.active[type].findIndex((ele) => ele === value);
|
||||
@ -271,15 +268,14 @@ export default {
|
||||
"datasetCahe",
|
||||
]);
|
||||
}
|
||||
[
|
||||
"dataset.task.last_exec_status",
|
||||
].forEach((ele, index) => {
|
||||
const { activeType: type, list } =
|
||||
this.filterDataset[index];
|
||||
["dataset.task.last_exec_status"].forEach((ele, index) => {
|
||||
const { activeType: type, list } = this.filterDataset[index];
|
||||
if (this.active[type].length) {
|
||||
params.push(
|
||||
`${this.$t(ele)}:${this.active[type]
|
||||
.map((item) => this.$t(list.find((itx) => itx.value === item).name))
|
||||
.map((item) =>
|
||||
this.$t(list.find((itx) => itx.value === item).name)
|
||||
)
|
||||
.join("、")}`
|
||||
);
|
||||
this.filterTextMap.push([`active.${type}`]);
|
||||
@ -312,14 +308,13 @@ export default {
|
||||
});
|
||||
}
|
||||
});
|
||||
const [ min, max ] = this.dataRange;
|
||||
const [min, max] = this.dataRange;
|
||||
if (min && max) {
|
||||
console.log(1, +min, +max);
|
||||
conditions.push({
|
||||
field: 'dataset_table_task.last_exec_time',
|
||||
operator: "between",
|
||||
value: [ +min, +max ],
|
||||
})
|
||||
field: "dataset_table_task.last_exec_time",
|
||||
operator: "between",
|
||||
value: [+min, +max],
|
||||
});
|
||||
}
|
||||
return conditions;
|
||||
},
|
||||
@ -336,7 +331,6 @@ export default {
|
||||
|
||||
<style lang="scss">
|
||||
.user-drawer-task {
|
||||
|
||||
.el-drawer__body-cont {
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
@ -344,7 +338,7 @@ export default {
|
||||
width: 100%;
|
||||
padding-bottom: 80px;
|
||||
}
|
||||
|
||||
|
||||
.el-drawer__header {
|
||||
padding: 16px 24px;
|
||||
margin: 0;
|
||||
@ -449,7 +443,7 @@ export default {
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
text-align: right;
|
||||
background: #FFFFFF;
|
||||
background: #ffffff;
|
||||
box-shadow: 0px -1px 4px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
}
|
||||
|
||||
@ -3,20 +3,83 @@
|
||||
v-if="loading"
|
||||
v-loading="loading"
|
||||
style="position:absolute;top:55px;width: 100%;height: calc(100% - 55px);"
|
||||
class="main_outer"
|
||||
/>
|
||||
<div v-else-if="homeLink">
|
||||
<iframe id="mobsf" :src="homeLink" frameborder="0" style="position:absolute;top:55px;width: 100%;height: calc(100% - 55px);" />
|
||||
</div>
|
||||
<el-row v-else class="main_container">
|
||||
<el-row class="head">
|
||||
<span class="hint_head">{{ $t('wizard.welcome_title') }}</span> <br>
|
||||
<span class="hint_content">{{ $t('wizard.welcome_hint') }}</span>
|
||||
</el-row>
|
||||
<el-row class="card_container">
|
||||
<info-card v-for="(cardDetail,index) in cardList" :key="index">
|
||||
<component :is="cardDetail.component" :img-index="index" :details="cardDetail" />
|
||||
</info-card>
|
||||
<el-row v-else class="main_container_outer">
|
||||
<el-row class="main_container">
|
||||
<el-row class="main_content">
|
||||
<el-row class="content_top_banner">
|
||||
<div class="top_banner_content">
|
||||
<div class="hint_head">{{ $t('wizard.welcome_title') }}</div>
|
||||
<div class="hint_content">{{ $t('wizard.welcome_hint') }}</div>
|
||||
</div>
|
||||
<img class="top_banner_img" src="../../assets/wizard_main_bg_inner.png"></img>
|
||||
</el-row>
|
||||
<el-row class="top_banner_card">
|
||||
<wizard-card :details="cardList[0]"></wizard-card>
|
||||
<wizard-card :details="cardList[1]" style="margin:0 24px 0 24px"></wizard-card>
|
||||
<wizard-card-enterprise :details="cardList[2]"></wizard-card-enterprise>
|
||||
</el-row>
|
||||
<el-row class="content_middle">
|
||||
<div class="content_middle_left">
|
||||
<el-row>
|
||||
<span class="content_middle_title">{{ $t('wizard.teaching_video') }}</span>
|
||||
<div class="content_middle_more"><a target="_blank" href="https://space.bilibili.com/510493147/channel/collectiondetail?sid=262774">{{ $t('wizard.more') }}<i class="el-icon-arrow-right" /></a></div>
|
||||
</el-row>
|
||||
<el-row style="margin-top: 12px">
|
||||
<video-card :details="videoList[0]"></video-card>
|
||||
<video-card style="margin:0 12px 0 12px" :details="videoList[1]"></video-card>
|
||||
<video-card :details="videoList[2]"></video-card>
|
||||
</el-row>
|
||||
</div>
|
||||
<div class="content_middle_right">
|
||||
<el-row>
|
||||
<span class="content_middle_title">{{ $t('wizard.latest_developments') }}</span>
|
||||
<div class="content_middle_more"><a target="_blank" href="https://blog.fit2cloud.com/?cat=321">{{ $t('wizard.more') }}<i class="el-icon-arrow-right" /></a></div>
|
||||
</el-row>
|
||||
<el-row >
|
||||
<ul class="ul-custom">
|
||||
<li class="li-custom" v-for="blogItem in blogsInfo"><a target="_blank" :href="blogItem.href" :title="blogItem.title" >{{blogItem.title}}</a></li>
|
||||
</ul>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-row>
|
||||
|
||||
<el-row class="content_bottom">
|
||||
<div class="content_bottom_contact">
|
||||
<el-row class="contact_title">
|
||||
<span>{{$t('wizard.contact_us')}}</span>
|
||||
</el-row>
|
||||
<el-row class="contact_content">
|
||||
<span>{{$t('wizard.email')}}dataease@fit2cloud.com</span>
|
||||
</el-row>
|
||||
<el-row class="contact_content">
|
||||
<span>{{$t('wizard.tel')}}400-052-0755</span>
|
||||
</el-row>
|
||||
<el-row class="contact_content">
|
||||
{{$t('wizard.web')}}<a style="text-decoration:underline;" target="_blank" href="https://www.dataease.io">www.dataease.io</a>
|
||||
</el-row>
|
||||
</div>
|
||||
|
||||
<div class="content_bottom_qr_code">
|
||||
<div class="contact_wechat_official">
|
||||
<div class="contact_title_qr">微信公众号</div>
|
||||
<img class="contact_wechat_official_img" src="@/assets/wizard_wechat-official.png"></img>
|
||||
</div>
|
||||
<div class="contact_wechat_group">
|
||||
<div class="contact_title_qr">技术交流群</div>
|
||||
<img class="contact_wechat_group_img" src="@/assets/wizard_wechat-group.png"></img>
|
||||
</div>
|
||||
</div>
|
||||
</el-row>
|
||||
|
||||
</el-row>
|
||||
</el-row>
|
||||
|
||||
|
||||
</el-row>
|
||||
</template>
|
||||
|
||||
@ -32,54 +95,57 @@ import ContactUs from '@/views/wizard/details/ContactUs'
|
||||
import InfoCard from '@/views/wizard/infoCard'
|
||||
import CardDetail from '@/views/wizard/details/CardDetail'
|
||||
import { blogLastActive } from '@/api/wizard/wizard'
|
||||
import WizardCard from "@/views/wizard/wizardCard";
|
||||
import VideoCard from "@/views/wizard/videoCard";
|
||||
import WizardCardEnterprise from "@/views/wizard/wizardCardEnterprise";
|
||||
|
||||
export default {
|
||||
name: 'Wizard',
|
||||
components: { InfoCard, Card, DemoVideo, OnlineDocument, LatestDevelopments, TeachingVideo, EnterpriseEdition, ContactUs, CardDetail },
|
||||
components: {
|
||||
WizardCardEnterprise,
|
||||
VideoCard,
|
||||
WizardCard, InfoCard, Card, DemoVideo, OnlineDocument, LatestDevelopments, TeachingVideo, EnterpriseEdition, ContactUs, CardDetail },
|
||||
data() {
|
||||
return {
|
||||
blogsInfo:[],
|
||||
cardList: [
|
||||
{
|
||||
head: this.$t('wizard.quick_start'),
|
||||
content: this.$t('wizard.demo_video_hint'),
|
||||
bottom: '',
|
||||
href: 'https://www.bilibili.com/video/BV1i34y1v7hq/',
|
||||
component: 'CardDetail'
|
||||
img: 'wizard_quick_start.png',
|
||||
bgColor: '#E7F2FF',
|
||||
href: 'https://www.bilibili.com/video/BV1i34y1v7hq/'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.online_document'),
|
||||
content: this.$t('wizard.online_document_hint'),
|
||||
bottom: '',
|
||||
img: 'wizard_help.png',
|
||||
bgColor: '#F3F2FF',
|
||||
href: 'https://dataease.io/docs/index.html',
|
||||
component: 'CardDetail'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.latest_developments'),
|
||||
content: '',
|
||||
bottom: '',
|
||||
href: 'https://blog.fit2cloud.com/?cat=321',
|
||||
component: 'CardDetail'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.teaching_video'),
|
||||
content: '<a href="https://www.bilibili.com/video/BV15P4y1u7Pa?spm_id_from=333.999.0.0" target="_blank">1.1 连接数据库并添加数据集</a><br><a href="https://www.bilibili.com/video/BV1cU4y1d77S?spm_id_from=333.999.0.0" target="_blank">1.2 Excel 数据集和 API 数据集</a><br><a href="https://www.bilibili.com/video/BV1zY411n7Q1?spm_id_from=333.999.0.0" target="_blank">1.3 数据集整合</a>',
|
||||
bottom: '',
|
||||
href: 'https://space.bilibili.com/510493147/channel/collectiondetail?sid=262774',
|
||||
component: 'CardDetail'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.enterprise_edition'),
|
||||
content: this.$t('wizard.enterprise_edition_hint1') + '<br>' + this.$t('wizard.enterprise_edition_hint2') + '<br>' + this.$t('wizard.enterprise_edition_hint3'),
|
||||
bottom: '',
|
||||
img: 'wizard_enterprise.png',
|
||||
bgColor: '#FFFAF0',
|
||||
href: 'https://jinshuju.net/f/TK5TTd',
|
||||
component: 'CardDetail'
|
||||
},
|
||||
],
|
||||
videoList: [
|
||||
{
|
||||
content: '1.1 连接数据库并添加数据集',
|
||||
img: 'wizard_video1.png',
|
||||
href: 'https://www.bilibili.com/video/BV15P4y1u7Pa?spm_id_from=333.999.0.0'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.contact_us'),
|
||||
content: this.$t('wizard.email') + 'dataease@fit2cloud.com<br>' + this.$t('wizard.tel') + '400-052-0755<br>' + this.$t('wizard.web') + '<a target="_blank" href="https://www.dataease.io">www.dataease.io</a>',
|
||||
bottom: '',
|
||||
href: 'https://www.dataease.io',
|
||||
component: 'CardDetail'
|
||||
content: '1.2 Excel 数据集和 API 数据集',
|
||||
img: 'wizard_video2.png',
|
||||
href: 'https://www.bilibili.com/video/BV1cU4y1d77S?spm_id_from=333.999.0.0'
|
||||
},
|
||||
{
|
||||
content: '1.3 数据集整合',
|
||||
img: 'wizard_video3.png',
|
||||
href: 'https://www.bilibili.com/video/BV1zY411n7Q1?spm_id_from=333.999.0.0'
|
||||
}
|
||||
],
|
||||
loading: true
|
||||
@ -106,9 +172,7 @@ export default {
|
||||
methods: {
|
||||
init() {
|
||||
blogLastActive().then(res => {
|
||||
const blogsInfo = res.data[0]
|
||||
this.cardList[2].content = blogsInfo.title
|
||||
this.cardList[2].bottom = blogsInfo.time
|
||||
this.blogsInfo = res.data
|
||||
})
|
||||
}
|
||||
}
|
||||
@ -117,28 +181,225 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.main_outer{
|
||||
background-color: var(--MainBG, #f5f6f7)
|
||||
}
|
||||
.main_container {
|
||||
min-width: 1250px;
|
||||
padding: 0 24px 0 24px;
|
||||
overflow: auto;
|
||||
position: relative;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background-size: 100% 444px !important;
|
||||
background: url('../../assets/wizard_main_bg.png') no-repeat;
|
||||
}
|
||||
.head {
|
||||
text-align: center;
|
||||
color: white;
|
||||
padding: 10px;
|
||||
margin-top: 35px;
|
||||
background-size: 100% 100% !important;
|
||||
background-image: url('../../assets/banner.png');
|
||||
.main_content {
|
||||
width: 1200px;
|
||||
}
|
||||
.content_top_banner{
|
||||
color: var(--ContentBG, #FFFFFF);
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 230px;
|
||||
}
|
||||
|
||||
.top_banner_content{
|
||||
position: absolute;
|
||||
top: 62px;
|
||||
height: 230px;
|
||||
}
|
||||
|
||||
.top_banner_img{
|
||||
position: absolute;
|
||||
width: 520px;
|
||||
height: 230px;
|
||||
top: 0;
|
||||
right: 50px;
|
||||
}
|
||||
|
||||
.top_banner_card{
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 224px;
|
||||
}
|
||||
|
||||
.hint_head {
|
||||
line-height: 50px;
|
||||
font-weight: bold;
|
||||
font-size: 25px;
|
||||
line-height: 48px;
|
||||
font-weight: 600;
|
||||
font-size: 48px;
|
||||
}
|
||||
.hint_content {
|
||||
line-height: 50px;
|
||||
font-size: 15px;
|
||||
margin-top: 12px;
|
||||
line-height: 26px;
|
||||
font-weight: 400;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.card_container {
|
||||
vertical-align: middle;
|
||||
|
||||
.content_middle{
|
||||
height: 290px;
|
||||
width: 100%;
|
||||
margin-top: 24px;
|
||||
}
|
||||
|
||||
.content_middle_left{
|
||||
float: left;
|
||||
width: 792px;
|
||||
height: 290px;
|
||||
padding: 24px;
|
||||
border-radius: 4px;
|
||||
background-color: var(--ContentBG, #FFFFFF);
|
||||
}
|
||||
.content_middle_title{
|
||||
float: left;
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-size: 20px;
|
||||
line-height: 38px;
|
||||
color: var(--TextPrimary, #1F2329);
|
||||
}
|
||||
.content_middle_more{
|
||||
float: right;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
color: #646A73;
|
||||
border-radius: 4px;
|
||||
height: 26px;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
.content_middle_more :hover{
|
||||
border-radius: 4px;
|
||||
height: 26px;
|
||||
background: rgba(31, 35, 41, 0.1);
|
||||
}
|
||||
.content_middle_more i:hover{
|
||||
background: none;
|
||||
}
|
||||
|
||||
.content_middle_right {
|
||||
float: left;
|
||||
height: 290px;
|
||||
width: 384px;
|
||||
margin-left: 24px;
|
||||
padding: 24px;
|
||||
border-radius: 4px;
|
||||
background-color: var(--ContentBG, #FFFFFF);
|
||||
}
|
||||
|
||||
.content_middle_left{
|
||||
float: left;
|
||||
width: 792px;
|
||||
height: 290px;
|
||||
padding: 24px;
|
||||
border-radius: 4px;
|
||||
background-color: var(--ContentBG, #FFFFFF);
|
||||
}
|
||||
|
||||
.li-custom {
|
||||
margin-top: 16px;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
color: var(--TextPrimary, #1F2329);
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
list-style-type : disc;
|
||||
list-style-position: inside;
|
||||
}
|
||||
|
||||
.li-custom :hover {
|
||||
background: rgba(31, 35, 41, 0.1);
|
||||
border-radius: 4px;
|
||||
color: #3370FF;
|
||||
}
|
||||
|
||||
.ul-custom {
|
||||
padding-inline-start:0px;
|
||||
}
|
||||
|
||||
.content_bottom{
|
||||
width: 100%;
|
||||
height: 208px;
|
||||
}
|
||||
|
||||
.content_bottom_contact{
|
||||
float: left;
|
||||
margin-left: 278px;
|
||||
width: 300px;
|
||||
margin-top: 40px;
|
||||
}
|
||||
|
||||
.contact_title{
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
color: var(--TextPrimary, #1F2329);
|
||||
}
|
||||
|
||||
.contact_content{
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
color: #646A73;
|
||||
}
|
||||
.contact_content a:hover{
|
||||
color: #3370FF;
|
||||
}
|
||||
|
||||
.content_bottom_qr_code{
|
||||
width: 300px;
|
||||
float: right;
|
||||
text-align: right;
|
||||
margin-right: 280px;
|
||||
margin-top: 40px;
|
||||
}
|
||||
|
||||
.contact_title_qr{
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
line-height: 20px;
|
||||
text-align: center;
|
||||
color: #646A73;
|
||||
}
|
||||
|
||||
.contact_wechat_official{
|
||||
width: 100px;
|
||||
float: right;
|
||||
}
|
||||
|
||||
.contact_wechat_official_img{
|
||||
box-sizing: border-box;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
border: 2px solid #FFFFFF;
|
||||
}
|
||||
|
||||
.contact_wechat_group{
|
||||
width: 100px;
|
||||
float: right;
|
||||
margin-right: 40px;
|
||||
}
|
||||
|
||||
.contact_wechat_group_img{
|
||||
box-sizing: border-box;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
border: 2px solid #FFFFFF;
|
||||
}
|
||||
|
||||
.main_container_outer{
|
||||
width: 100%;
|
||||
height: calc(100vh - 56px);
|
||||
background-color: var(--MainBG, #f5f6f7);
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
144
frontend/src/views/wizard/index_back.vue
Normal file
@ -0,0 +1,144 @@
|
||||
<template>
|
||||
<div
|
||||
v-if="loading"
|
||||
v-loading="loading"
|
||||
style="position:absolute;top:55px;width: 100%;height: calc(100% - 55px);"
|
||||
/>
|
||||
<div v-else-if="homeLink">
|
||||
<iframe id="mobsf" :src="homeLink" frameborder="0" style="position:absolute;top:55px;width: 100%;height: calc(100% - 55px);" />
|
||||
</div>
|
||||
<el-row v-else class="main_container">
|
||||
<el-row class="head">
|
||||
<span class="hint_head">{{ $t('wizard.welcome_title') }}</span> <br>
|
||||
<span class="hint_content">{{ $t('wizard.welcome_hint') }}</span>
|
||||
</el-row>
|
||||
<el-row class="card_container">
|
||||
<info-card v-for="(cardDetail,index) in cardList" :key="index">
|
||||
<component :is="cardDetail.component" :img-index="index" :details="cardDetail" />
|
||||
</info-card>
|
||||
</el-row>
|
||||
</el-row>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import Card from '@/views/wizard/card'
|
||||
import DemoVideo from '@/views/wizard/details/DemoVideo'
|
||||
import OnlineDocument from '@/views/wizard/details/OnlineDocument'
|
||||
import LatestDevelopments from '@/views/wizard/details/LatestDevelopments'
|
||||
import TeachingVideo from '@/views/wizard/details/TeachingVideo'
|
||||
import EnterpriseEdition from '@/views/wizard/details/EnterpriseEdition'
|
||||
import ContactUs from '@/views/wizard/details/ContactUs'
|
||||
import InfoCard from '@/views/wizard/infoCard'
|
||||
import CardDetail from '@/views/wizard/details/CardDetail'
|
||||
import { blogLastActive } from '@/api/wizard/wizard'
|
||||
|
||||
export default {
|
||||
name: 'Wizard',
|
||||
components: { InfoCard, Card, DemoVideo, OnlineDocument, LatestDevelopments, TeachingVideo, EnterpriseEdition, ContactUs, CardDetail },
|
||||
data() {
|
||||
return {
|
||||
cardList: [
|
||||
{
|
||||
head: this.$t('wizard.quick_start'),
|
||||
content: this.$t('wizard.demo_video_hint'),
|
||||
bottom: '',
|
||||
href: 'https://www.bilibili.com/video/BV1i34y1v7hq/',
|
||||
component: 'CardDetail'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.online_document'),
|
||||
content: this.$t('wizard.online_document_hint'),
|
||||
bottom: '',
|
||||
href: 'https://dataease.io/docs/index.html',
|
||||
component: 'CardDetail'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.latest_developments'),
|
||||
content: '',
|
||||
bottom: '',
|
||||
href: 'https://blog.fit2cloud.com/?cat=321',
|
||||
component: 'CardDetail'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.teaching_video'),
|
||||
content: '<a href="https://www.bilibili.com/video/BV15P4y1u7Pa?spm_id_from=333.999.0.0" target="_blank">1.1 连接数据库并添加数据集</a><br><a href="https://www.bilibili.com/video/BV1cU4y1d77S?spm_id_from=333.999.0.0" target="_blank">1.2 Excel 数据集和 API 数据集</a><br><a href="https://www.bilibili.com/video/BV1zY411n7Q1?spm_id_from=333.999.0.0" target="_blank">1.3 数据集整合</a>',
|
||||
bottom: '',
|
||||
href: 'https://space.bilibili.com/510493147/channel/collectiondetail?sid=262774',
|
||||
component: 'CardDetail'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.enterprise_edition'),
|
||||
content: this.$t('wizard.enterprise_edition_hint1') + '<br>' + this.$t('wizard.enterprise_edition_hint2') + '<br>' + this.$t('wizard.enterprise_edition_hint3'),
|
||||
bottom: '',
|
||||
href: 'https://jinshuju.net/f/TK5TTd',
|
||||
component: 'CardDetail'
|
||||
},
|
||||
{
|
||||
head: this.$t('wizard.contact_us'),
|
||||
content: this.$t('wizard.email') + 'dataease@fit2cloud.com<br>' + this.$t('wizard.tel') + '400-052-0755<br>' + this.$t('wizard.web') + '<a target="_blank" href="https://www.dataease.io">www.dataease.io</a>',
|
||||
bottom: '',
|
||||
href: 'https://www.dataease.io',
|
||||
component: 'CardDetail'
|
||||
}
|
||||
],
|
||||
loading: true
|
||||
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
homeLink() {
|
||||
if (this.$store.getters.uiInfo && this.$store.getters.uiInfo['ui.homeLink'] && this.$store.getters.uiInfo['ui.homeLink'].paramValue) {
|
||||
return this.$store.getters.uiInfo['ui.homeLink'].paramValue
|
||||
}
|
||||
return null
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
setTimeout(() => {
|
||||
this.loading = false
|
||||
}, 1000)
|
||||
},
|
||||
|
||||
created() {
|
||||
this.init()
|
||||
},
|
||||
methods: {
|
||||
init() {
|
||||
blogLastActive().then(res => {
|
||||
const blogsInfo = res.data[0]
|
||||
this.cardList[2].content = blogsInfo.title
|
||||
this.cardList[2].bottom = blogsInfo.time
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.main_container {
|
||||
}
|
||||
.head {
|
||||
text-align: center;
|
||||
color: white;
|
||||
padding: 10px;
|
||||
margin-top: 35px;
|
||||
background-size: 100% 100% !important;
|
||||
background-image: url('../../assets/banner.png');
|
||||
}
|
||||
.hint_head {
|
||||
line-height: 50px;
|
||||
font-weight: bold;
|
||||
font-size: 25px;
|
||||
}
|
||||
.hint_content {
|
||||
line-height: 50px;
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
.card_container {
|
||||
vertical-align: middle;
|
||||
|
||||
}
|
||||
</style>
|
||||
71
frontend/src/views/wizard/videoCard.vue
Normal file
@ -0,0 +1,71 @@
|
||||
<template>
|
||||
<el-row class="video_main">
|
||||
<div class="video_top" >
|
||||
<a :href="details.href" target="_blank">
|
||||
<img :src="require('@/assets/'+details.img)" alt="404">
|
||||
<svg-icon class="play-icon" icon-class="round_play"></svg-icon>
|
||||
</a>
|
||||
</div>
|
||||
<div class="video_content">
|
||||
<a :href="details.href" target="_blank">
|
||||
{{details.content}}
|
||||
</a>
|
||||
</div>
|
||||
</el-row>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
name: 'VideoCard',
|
||||
props: {
|
||||
details: {
|
||||
type: Object,
|
||||
required: false
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {}
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.video_main{
|
||||
width: 240px;
|
||||
height: 192px;
|
||||
border: 1px solid #DEE0E3;
|
||||
float: left;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.video_top{
|
||||
position: relative;
|
||||
width: 240px;
|
||||
height: 135px;
|
||||
}
|
||||
|
||||
.video_top img{
|
||||
width: 238px;
|
||||
height: 135px;
|
||||
}
|
||||
|
||||
.video_content{
|
||||
width: 240px;
|
||||
padding: 12px;
|
||||
font-weight: 500;
|
||||
font-size: 16px;
|
||||
line-height: 24px;
|
||||
color: var(--TextPrimary, #1F2329);
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.play-icon{
|
||||
position: absolute;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
left: 105px;
|
||||
top:53px
|
||||
}
|
||||
|
||||
</style>
|
||||
92
frontend/src/views/wizard/wizardCard.vue
Normal file
@ -0,0 +1,92 @@
|
||||
<template>
|
||||
<el-col :style='{background:details.bgColor}' class="card_main">
|
||||
<el-col style="width: 200px">
|
||||
<el-row class="card_head">
|
||||
{{details.head}}
|
||||
</el-row>
|
||||
<el-row class="card_content">
|
||||
<span v-html="details.content"></span>
|
||||
</el-row>
|
||||
<el-row class="card_bottom">
|
||||
<a target="_blank" :href="details.href">
|
||||
{{$t('wizard.click_show') }}
|
||||
<i class="el-icon-arrow-right" />
|
||||
</a>
|
||||
</el-row >
|
||||
</el-col>
|
||||
<el-col style="width: 136px">
|
||||
<img style="width: 136px" :src="require('@/assets/'+details.img)"/>
|
||||
</el-col>
|
||||
</el-col>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
export default {
|
||||
name: 'wizardCard',
|
||||
props: {
|
||||
details: {
|
||||
type: Object,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {}
|
||||
},
|
||||
computed:{
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.card_main{
|
||||
width: 384px;
|
||||
height: 190px;
|
||||
padding: 24px;
|
||||
opacity: 0.9;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.card_main:hover {
|
||||
box-shadow: 0px 6px 24px rgba(31, 35, 41, 0.5)
|
||||
}
|
||||
.card_head{
|
||||
font-family: 'PingFang SC';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-size: 20px;
|
||||
line-height: 28px;
|
||||
width: 200px;
|
||||
}
|
||||
.card_content{
|
||||
font-family: 'PingFang SC';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
width: 200px;
|
||||
height: 66px;
|
||||
margin-top: 12px;
|
||||
color: #646A73;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.card_bottom{
|
||||
font-family: 'PingFang SC';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
margin-top: 14px;
|
||||
line-height: 22px;
|
||||
color: #3370FF;
|
||||
}
|
||||
.triangle{
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-bottom: 30px solid var(--MenuActiveBG, #409EFF);
|
||||
border-right: 30px solid transparent;
|
||||
-webkit-transform: rotate(180deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
</style>
|
||||
92
frontend/src/views/wizard/wizardCardEnterprise.vue
Normal file
@ -0,0 +1,92 @@
|
||||
<template>
|
||||
<el-col :style='{background:details.bgColor}' class="card_main">
|
||||
<el-col style="width: 230px">
|
||||
<el-row class="card_head">
|
||||
{{details.head}}
|
||||
</el-row>
|
||||
<el-row class="card_content">
|
||||
<span v-html="details.content"></span>
|
||||
</el-row>
|
||||
<el-row class="card_bottom">
|
||||
<a target="_blank" :href="details.href">
|
||||
{{$t('wizard.apply') }}
|
||||
<i class="el-icon-arrow-right" />
|
||||
</a>
|
||||
</el-row >
|
||||
</el-col>
|
||||
<el-col style="width: 106px">
|
||||
<img style="width: 106px" src="../../assets/wizard_enterprise.png"></img>
|
||||
</el-col>
|
||||
</el-col>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
export default {
|
||||
name: 'WizardCardEnterprise',
|
||||
props: {
|
||||
details: {
|
||||
type: Object,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {}
|
||||
},
|
||||
computed:{
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.card_main{
|
||||
width: 384px;
|
||||
height: 190px;
|
||||
padding: 24px;
|
||||
opacity: 0.9;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.card_main:hover {
|
||||
box-shadow: 0px 6px 24px rgba(31, 35, 41, 0.5)
|
||||
}
|
||||
.card_head{
|
||||
font-family: 'PingFang SC';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-size: 20px;
|
||||
line-height: 28px;
|
||||
width: 230px;
|
||||
}
|
||||
.card_content{
|
||||
font-family: 'PingFang SC';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
width: 230px;
|
||||
height: 66px;
|
||||
margin-top: 12px;
|
||||
color: #646A73;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.card_bottom{
|
||||
font-family: 'PingFang SC';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
margin-top: 14px;
|
||||
line-height: 22px;
|
||||
color: #3370FF;
|
||||
}
|
||||
.triangle{
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-bottom: 30px solid var(--MenuActiveBG, #409EFF);
|
||||
border-right: 30px solid transparent;
|
||||
-webkit-transform: rotate(180deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
</style>
|
||||
BIN
frontend/static/img/Group7.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
frontend/static/img/WechatIMG1383.jpeg
Normal file
|
After Width: | Height: | Size: 223 KiB |
BIN
frontend/static/img/dataease.png
Normal file
|
After Width: | Height: | Size: 6.0 KiB |
BIN
frontend/static/img/login.jpg
Normal file
|
After Width: | Height: | Size: 272 KiB |