提交样式未完成版本
This commit is contained in:
parent
96ba7c098a
commit
fe79fe828a
6
frontend/src/renderer/src/assets/new/archive.svg
Normal file
6
frontend/src/renderer/src/assets/new/archive.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="16px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1881 -82 )">
|
||||||
|
<path d="M 15.9203959888077 14.5936879851829 L 15.9203959888077 9.2868945127217 C 15.9221961012911 9.26482295156643 15.9221961012911 9.24264146272398 15.9203959888077 9.22056990156871 C 15.9220017133507 9.19738041784726 15.9220017133507 9.17410764417035 15.9203959888077 9.15091816044888 L 14.0364720927064 0.995026809521264 C 13.8850151331878 0.4084253440992 13.3554163441829 -0.00105990688953739 12.7495786070392 0 L 3.17081738213301 0 C 2.55696540559302 5.80938669827447E-05 2.02331072533525 0.421222612478488 1.88059678203786 1.01825442140363 L 0.0165889307122598 9.13765634456156 C 0.0149832061692905 9.16084582828303 0.0149832061692905 9.18411860195991 0.0165889307122598 9.20730808568138 C 0.00842320058131918 9.23321838391806 0.00286597143963263 9.25987953700835 0 9.2868945127217 L 0 14.5936724379193 C 0 15.3264166600063 0.593981351320735 15.9203980098591 1.32669448069123 15.9203980098591 C 1.32669448069123 15.9203980098591 1.32669448105548 15.9203980098591 1.32669448105548 16 L 14.593685960853 16 C 14.5936911432079 15.9203980099199 14.5936963258525 15.9203980099502 14.5937015082077 15.9203980099502 C 15.3264146375782 15.9203980099502 15.9203959888987 15.3264166600974 15.9203959888987 14.5937035325377 Z M 1.49584869436012 8.62355505542087 L 3.17081738213301 1.32669653817167 L 12.746267039875 1.32669653817167 L 14.4245317475484 8.62355505542087 L 11.6086117071895 8.62355505542087 C 11.2422630001633 8.623563650138 10.9452808429667 8.92054580660088 10.9452722482495 9.2868945127217 L 10.9452722482495 10.9452742815956 L 4.97512374092253 10.9452742815956 L 4.97512374092253 9.2868945127217 C 4.97511514596226 8.92053973513232 4.67812351331463 8.62355506390642 4.31176873471895 8.62355505542087 L 1.49584869436012 8.62355505542087 Z M 3.9800990052488 7.29684501519738 C 3.61374422058179 7.2968450152982 3.31675257845859 6.99986034155748 3.31674398349787 6.63350555789654 C 3.31674398349787 6.26714469656511 3.61373814301214 5.9701505377848 3.9800990052488 5.9701505377848 L 11.9402969994705 5.9701505377848 C 12.3053994333072 5.97191897464336 12.6004389839914 6.2683910607167 12.6004389839914 6.6334977764911 C 12.6004389839914 6.99860449226549 12.3053994333072 7.29507657833882 11.9402969994705 7.29684501519738 L 3.9800990052488 7.29684501519738 Z M 4.97512374092253 4.31177078445816 C 4.60876895625574 4.31177077597241 4.31177732109313 4.01478609527105 4.31176873471895 3.64843131161005 C 4.31176874330549 3.2820704624218 4.60876289082921 2.9850763156321 4.97512374092253 2.98507630704557 L 10.9452722482495 2.98507630704557 C 11.3103746820859 2.98684474390417 11.6054142327703 3.28331682997749 11.6054142327703 3.64842354575187 C 11.6054142327703 4.01353026152624 11.3103746820859 4.31000234759958 10.9452722482495 4.31177078445816 L 4.97512374092253 4.31177078445816 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 1881 82 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
BIN
frontend/src/renderer/src/assets/new/conduct.png
Normal file
BIN
frontend/src/renderer/src/assets/new/conduct.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.3 KiB |
7
frontend/src/renderer/src/assets/new/conduct.svg
Normal file
7
frontend/src/renderer/src/assets/new/conduct.svg
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="16px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1015 -82 )">
|
||||||
|
<path d="M 1023 82 C 1027.48 82 1031 85.52 1031 90 C 1031 94.48 1027.48 98 1023 98 C 1018.52 98 1015 94.48 1015 90 C 1015 85.52 1018.52 82 1023 82 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" fill-opacity="0" />
|
||||||
|
<path d="M 1023 82.5 C 1027.2 82.5 1030.5 85.8 1030.5 90 C 1030.5 94.2 1027.2 97.5 1023 97.5 C 1018.8 97.5 1015.5 94.2 1015.5 90 C 1015.5 85.8 1018.8 82.5 1023 82.5 Z " stroke-width="1" stroke="#ff3300" fill="none" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/endvideo.svg
Normal file
6
frontend/src/renderer/src/assets/new/endvideo.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="18px" height="14px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -8 -9 )">
|
||||||
|
<path d="M 18 3.09091796875001 C 18 2.63636718750001 17.7545390624998 2.22726562499999 17.3863476562499 2.00000000000001 C 17.0181738281251 1.772734375 16.5681738281251 1.8181640625 16.240904296875 2.13636718750003 L 13.5 4.40908203124998 L 13.5 2.59091796875002 C 13.5 1.18181640624999 12.4772695312499 0 11.168173828125 0 L 2.33182617187504 0 C 1.02273046875007 0.0454492187499937 0 1.18183593750001 0 2.63636718750001 L 0 11.40908203125 C 0 12.81818359375 1.02273046875007 14 2.33182617187504 14 L 11.168173828125 14 C 12.436365234375 14 13.5 12.8636328125 13.5 11.40908203125 L 13.5 9.59091796875002 L 16.240904296875 11.90908203125 C 16.4454609375 12.09091796875 16.6499999999999 12.1363671875 16.8954609375 12.1363671875 C 17.059095703125 12.1363671875 17.2227304687501 12.09091796875 17.386365234375 12 C 17.7545390624998 11.772734375 18 11.3636328125 18 10.90908203125 L 18 3.09091796875001 Z M 12.1909218750002 2.63636718750001 L 12.1909218750002 11.3636328125 C 12.1909218750002 12 11.7409218749999 12.5 11.1681914062501 12.5 L 2.33184374999996 12.5 C 1.75911328124994 12.5 1.30911328125012 12 1.30911328125012 11.3636328125 L 1.30911328125012 2.63636718750001 C 1.30911328125012 2.00000000000001 1.75911328124994 1.49999999999999 2.33184374999996 1.49999999999999 L 11.1681914062501 1.49999999999999 C 11.7409218749999 1.49999999999999 12.1909218750002 2.00000000000001 12.1909218750002 2.63636718750001 Z M 16.6909218750002 10.45455078125 L 13.5 7.77271484374999 L 13.5 6.27271484375001 L 16.7318261718749 3.59091796874999 C 16.690904296875 3.54544921874999 16.690904296875 10.45455078125 16.690904296875 10.45455078125 Z M 4.5 9.33333333333333 L 4.5 4.66666666666667 L 9 4.66666666666667 L 9 9.33333333333333 L 4.5 9.33333333333333 Z " fill-rule="nonzero" fill="#ff3300" stroke="none" transform="matrix(1 0 0 1 8 9 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/jietu.svg
Normal file
6
frontend/src/renderer/src/assets/new/jietu.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="14px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -929 -83 )">
|
||||||
|
<path d="M 15.93125 4.01406249999999 C 15.93125 2.91763139204546 15.0426846590909 2.02904829545454 13.9463423295455 2.02904829545454 L 12.1645063920455 2.02904829545454 C 11.6868607954545 2.02904829545454 11.2775213068181 1.689453125 11.1890802556818 1.21962002840909 L 11.0076349431819 0.245703124999999 C 10.9859019886363 0.127894176136365 10.8836115056819 0.0441406249999972 10.7642045454545 0.0441406249999972 L 5.22031249999998 0.0441406249999972 C 5.1008877840909 0.0441406249999972 4.99850852272732 0.129385653409088 4.9767933238636 0.245703124999999 L 4.79385653409088 1.21803977272727 C 4.70539772727273 1.68796164772727 4.29607599431813 2.0275390625 3.81841264204547 2.0275390625 L 2.0365767045455 2.0275390625 C 0.940234375000045 2.02904829545454 0.0516690340908781 2.91763139204546 0.0516690340908781 4.01406249999999 L 0.0516690340908781 11.9538174715909 C 0.0516690340908781 13.0502485795455 0.94025213068187 13.9388316761364 2.0365767045455 14 L 13.9463423295455 14 C 15.0426846590909 13.9388316761364 15.93125 13.0502485795455 15.93125 11.9538174715909 L 15.93125 4.01406249999999 Z M 2.53284801136363 4.51024502840909 C 2.25836292613633 4.51024502840909 2.0365767045455 4.28854758522728 2.0365767045455 4.01406249999999 C 2.0365767045455 3.87761008522727 2.09245383522727 3.75349786931818 2.18242187500005 3.66354758522728 C 2.27230113636358 3.57357954545454 2.3964133522727 3.5177734375 2.53284801136363 3.5177734375 L 3.52530184659088 3.5177734375 C 3.79978693181818 3.5177734375 4.02157315340912 3.73955965909091 4.02157315340912 4.01404474431818 C 4.02157315340912 4.1504971590909 3.96576704545453 4.27450284090909 3.87579900568187 4.36447088068182 C 3.78584872159092 4.45443892045455 3.6617365056818 4.51022727272728 3.52528409090905 4.51022727272728 L 2.53284801136363 4.51022727272728 Z M 12.2094815340909 8.23203125000001 C 12.2094815340909 10.5612571022727 10.3207208806818 12.4500887784091 7.9915127840909 12.4500887784091 C 5.66226917613642 12.4500887784091 3.77345525568182 10.5612571022727 3.77345525568182 8.23203125000001 C 3.77345525568182 5.90280539772728 5.66228693181813 4.01406249999999 7.9915127840909 4.01406249999999 C 10.3207386363637 4.01406249999999 12.2094815340909 5.90280539772728 12.2094815340909 8.23203125000001 Z M 10.2726207386364 5.95090553977273 C 10.88203125 6.56036931818183 11.2170099431818 7.36988636363637 11.2170099431818 8.23203125000001 C 11.2170099431818 9.09426491477274 10.88203125 9.90379971590909 10.2726207386364 10.5131747159091 C 9.6631569602273 11.12265625 8.85363991477277 11.4576349431818 7.99149502840908 11.4576349431818 C 7.12926136363637 11.4576349431818 6.31972656250002 11.12265625 5.71035156250002 10.5131747159091 C 5.10087002840908 9.90379971590909 4.76589133522725 9.09426491477274 4.76589133522725 8.23203125000001 C 4.76589133522725 7.36990411931819 5.10087002840908 6.56036931818183 5.71035156250002 5.95090553977273 C 6.31974431818185 5.3414950284091 7.12926136363637 5.00651633522727 7.99149502840908 5.00651633522727 C 8.85363991477277 5.00651633522727 9.6631569602273 5.3414950284091 10.2726207386364 5.95090553977273 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 929 83 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
BIN
frontend/src/renderer/src/assets/new/newbg.jpg
Normal file
BIN
frontend/src/renderer/src/assets/new/newbg.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 49 KiB |
6
frontend/src/renderer/src/assets/new/refresh.svg
Normal file
6
frontend/src/renderer/src/assets/new/refresh.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="14px" height="14px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -373 -138 )">
|
||||||
|
<path d="M 8.07210783203124 6.46195381835938 L 10.2949266738281 4.23849897460937 C 9.45069847884821 3.20458041024776 8.29262410526201 2.47383480857755 6.99599638281251 2.15687204687501 C 4.48952168164061 1.65570431250001 3.16091835937499 2.15687204687501 0 4.30909493164063 C 1.28411899004271 1.62462621176789 4.02088248674812 -0.0594785244032039 6.99599638281251 0.00401316015626207 C 9.01198728514521 -0.0631719713191501 10.9636875416396 0.718523317659617 12.3759175996094 2.15878003906249 L 13.991992765625 0.542704873046887 L 13.991992765625 6.46195381835938 L 8.07210783203124 6.46195381835938 Z M 5.91988493359372 7.53806526757813 L 3.6970660917969 9.76088410937501 C 4.5414496054143 10.7946271618647 5.69946022307948 11.5253325335117 6.99599638281251 11.8425110371094 C 9.50247108398435 12.3443147734375 10.83107440625 11.8425110371094 13.991992765625 9.69092415429688 C 12.7078737755823 12.3753928741696 9.97111027887684 14.0594976103407 6.99599638281251 13.9960059257812 C 4.9802932407564 14.0629719430221 3.02883496413972 13.28183496075 1.61607516601561 11.8425110371094 L 0 13.4573141992188 L 0 7.53806526757813 L 5.91988493359372 7.53806526757813 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 373 138 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/settings.svg
Normal file
6
frontend/src/renderer/src/assets/new/settings.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="16px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1839 -82 )">
|
||||||
|
<path d="M 15.3518281249999 10.057 L 13.6746718750001 8.74328125 C 13.7077187499999 8.4886875 13.7290937499999 8.234109375 13.7290937499999 7.96203125 C 13.7290937499999 7.69190624999999 13.703828125 7.43731249999999 13.6746718750001 7.180796875 L 15.35375 5.86707812500001 C 15.505328125 5.74851562500001 15.5461406249999 5.532796875 15.4489687499999 5.35789062500001 L 13.857359375 2.604125 C 13.762125 2.42923437499999 13.5464218750001 2.36509375 13.371515625 2.42923437499999 L 11.3892499999999 3.226015625 C 10.9753125 2.9073125 10.52834375 2.644953125 10.0444375 2.444765625 L 9.74128124999993 0.334281250000004 C 9.71603125000001 0.141874999999999 9.55081249999989 0 9.35065624999993 0 L 6.16546874999995 0 C 5.96723437500009 0 5.80009375000009 0.143812499999996 5.77484374999995 0.334265625 L 5.47167187500008 2.44478125000001 C 4.9858281249999 2.643 4.54079687500007 2.91509375 4.12685937500009 3.226015625 L 2.14457812499995 2.42921875 C 1.95996874999992 2.35731250000001 1.75396875000001 2.42921875 1.65873437499999 2.604140625 L 0.0671250000000327 5.35789062500001 C -0.0378124999999727 5.532796875 0.0127187499999764 5.74851562500001 0.162359375000051 5.86707812500001 L 1.84143749999998 7.180796875 C 1.80840624999996 7.43537499999999 1.78703124999993 7.69773437500001 1.78703124999993 7.962046875 C 1.78703124999993 8.22632812500001 1.81228125000007 8.48675 1.84143749999998 8.74328125 L 0.160421875000111 10.057 C 0.00881249999997635 10.175546875 -0.0319843750000928 10.391265625 0.0651875000000928 10.56615625 L 1.65681249999989 13.3199375 C 1.75203125000007 13.49484375 1.96775000000002 13.55896875 2.14265625000007 13.49484375 L 4.12492187499993 12.69803125 C 4.5388593749999 13.016765625 4.9858281249999 13.279125 5.46973437499992 13.47928125 L 5.77289062499995 15.5898125 C 5.79815624999992 15.78025 5.96335937499998 15.9240625 6.16351562499995 15.9240625 L 9.34870312499993 15.9240625 C 9.54693750000001 15.9240625 9.71407812500001 15.78025 9.73932812499993 15.5898125 L 10.0425 13.479296875 C 10.52834375 13.2810625 10.973375 13.008984375 11.3873281250001 12.698046875 L 13.3695781250001 13.49484375 C 13.5541874999999 13.56675 13.7602031250001 13.49484375 13.85540625 13.3199375 L 15.44703125 10.56615625 C 15.542265625 10.391265625 15.5014531249999 10.175546875 15.3518281249999 10.057 Z M 10.5458437499999 7.963984375 C 10.5458437499999 9.50120312499999 9.2962500000001 10.75078125 7.75903124999991 10.75078125 C 6.22181249999994 10.75078125 4.97221874999991 9.50118749999999 4.97221874999991 7.963984375 C 4.97221874999991 6.42678125 6.22181249999994 5.177171875 7.75903124999991 5.177171875 C 9.2962500000001 5.177171875 10.5458437499999 6.426765625 10.5458437499999 7.963984375 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 1839 82 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/startvideo.svg
Normal file
6
frontend/src/renderer/src/assets/new/startvideo.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="14px" height="18px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -10 -7 )">
|
||||||
|
<path d="M 6.85372340217753 8.92622950819672 C 6.93351063622007 9.0218579213627 7.06648935754654 9.0218579213627 7.14627659782247 8.92622950819672 L 9.95212765957447 5.31967213114754 C 10.0452127638797 5.19672131147541 9.9654255298371 5.00546447873976 9.80585106175199 5.00546447873976 L 4.19414893824801 5.00546447873976 C 4.0345744701629 5.00546447873976 3.95478723612035 5.19672131147541 4.04787234042553 5.31967213114754 L 6.85372340217753 8.92622950819672 Z M 10.90908203125 18 C 11.3636328125 18 11.772734375 17.7545390624998 12 17.3863476562499 C 12.227265625 17.0181738281251 12.1818359375 16.5681738281251 11.8636328125 16.240904296875 L 9.59091796875002 13.5 L 11.40908203125 13.5 C 12.81818359375 13.5 14 12.4772695312499 14 11.168173828125 L 14 2.33182617187504 C 13.95455078125 1.02273046875007 12.8181640625 0 11.3636328125 0 L 2.59091796875002 0 C 1.18181640624999 0 0 1.02273046875007 0 2.33182617187504 L 0 11.168173828125 C 0 12.436365234375 1.13636718749999 13.5 2.59091796875002 13.5 L 4.40908203124998 13.5 L 2.09091796874999 16.240904296875 C 1.90908203124999 16.4454609375 1.86363281250003 16.6499999999999 1.86363281250003 16.8954609375 C 1.86363281250003 17.059095703125 1.90908203124999 17.2227304687501 2.00000000000001 17.386365234375 C 2.22726562499999 17.7545390624998 2.63636718750001 18 3.09091796875001 18 L 10.90908203125 18 Z M 11.3636328125 12.1909218750002 L 2.63636718750001 12.1909218750002 C 2.00000000000001 12.1909218750002 1.49999999999999 11.7409218749999 1.49999999999999 11.1681914062501 L 1.49999999999999 2.33184374999996 C 1.49999999999999 1.75911328124994 2.00000000000001 1.30911328125012 2.63636718750001 1.30911328125012 L 11.3636328125 1.30911328125012 C 12 1.30911328125012 12.5 1.75911328124994 12.5 2.33184374999996 L 12.5 11.1681914062501 C 12.5 11.7409218749999 12 12.1909218750002 11.3636328125 12.1909218750002 Z M 3.54544921874999 16.6909218750002 L 6.22728515625001 13.5 L 7.72728515624999 13.5 L 10.40908203125 16.7318261718749 C 10.45455078125 16.690904296875 3.54544921874999 16.690904296875 3.54544921874999 16.690904296875 Z " fill-rule="nonzero" fill="#00cc00" stroke="none" transform="matrix(1 0 0 1 10 7 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
BIN
frontend/src/renderer/src/assets/new/testheader.png
Normal file
BIN
frontend/src/renderer/src/assets/new/testheader.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 38 KiB |
6
frontend/src/renderer/src/assets/new/title1.svg
Normal file
6
frontend/src/renderer/src/assets/new/title1.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="18px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -36 -136 )">
|
||||||
|
<path d="M 7.76028865245167 0.0137816773135455 C 6.70033338656769 0.0137816773135455 5.84026964347377 0.873868281681638 5.8402696240504 1.93380070571477 C 5.8402696240504 2.99387023912293 6.70024196089435 3.85381971469268 7.76028865245167 3.85381971469268 C 8.82035818585982 3.85381971469268 9.68030766142956 2.99387023912293 9.68030766142956 1.93380070571477 C 9.68030766142956 0.873754014157456 8.82026676018646 0.0137816967368849 7.76028865245167 0.0137816773135455 Z M 15.4402047177141 5.45976267265193 C 15.4402275789882 4.92979646063536 15.0101614058184 4.50178727771063 14.4802866388985 4.50178727771063 L 1.04026780473065 4.50178727771063 C 0.510301592714082 4.50178727771063 0.0803268646408704 4.93185343145717 0.0803268646408704 5.46172821780041 C 0.0803268646408704 5.99183155861535 0.510301592714082 6.42180628668854 1.04026780473065 6.42180628668854 L 4.97826319708217 6.42180628668854 C 5.20228979627072 6.46182573377071 5.50628670580112 6.5758045688018 5.66634161343232 6.99183764891229 C 5.85229146883633 7.47385366885359 5.76029931370858 8.33586009582181 5.64428634970649 9.06183244345648 L 5.49428772228937 9.91787367058012 C 5.49428772228937 9.92180476087708 5.49223075146754 9.92580441557321 5.49223075146754 9.92980408969268 L 4.27825434219612 16.8197304320615 C 4.18626218706837 17.34181160221 4.53430105965126 17.8397348152624 5.05638222979971 17.9318183960635 C 5.57825768732734 18.023719125518 6.07035284875692 17.6757716786084 6.1622307363605 17.1538047759841 L 7.00227332527626 12.3558599274862 L 7.00227332527626 12.3618022660566 C 7.00227332527626 12.3618022660566 7.25226341721341 11.0617989209254 7.74024463699929 11.0617989209254 L 7.78428660005178 11.0617989209254 C 8.28223267437845 11.0617989209254 8.52228077304904 12.3618022660566 8.52228077304904 12.3618022660566 L 8.52228077304904 12.3578026113605 L 9.36220909444062 17.1537819341333 C 9.45431551709255 17.6757488173342 9.94826193672307 18.0236962642438 10.470228819924 17.9317955347894 C 10.992195703125 17.8396891121374 11.3402345757079 17.3417658796616 11.2462997367058 16.8197075707873 L 10.0302663760359 9.92781568327003 L 10.0302663760359 9.9257587124482 C 10.0302663760359 9.92175905775207 10.0282094052141 9.91775940305594 10.0282094052141 9.91373688708563 L 9.87626807449932 9.05769564053867 C 9.76023226864642 8.33378026372583 9.66826297479282 7.47177383675759 9.85430423644682 6.98973497496546 C 10.0142448765539 6.57383904307666 10.3202301925069 6.45986018862223 10.5422683852728 6.41984074154006 L 14.4802637776243 6.41984074154006 C 15.0102299896409 6.41984074154006 15.4402047177141 5.98975172651934 15.4402047177141 5.45976267265193 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 36 136 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/title2.svg
Normal file
6
frontend/src/renderer/src/assets/new/title2.svg
Normal file
File diff suppressed because one or more lines are too long
6
frontend/src/renderer/src/assets/new/title3.svg
Normal file
6
frontend/src/renderer/src/assets/new/title3.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="17px" height="18px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -500 -616 )">
|
||||||
|
<path d="M 2.81716015429686 0 C 4.36078439648429 0 5.61137635546879 1.25053867968745 5.61137635546879 2.79327425976567 C 5.61137635546879 4.33683490429689 4.36078611914064 5.58739077539065 2.81716015429686 5.58739077539065 C 1.27435923632811 5.58739077539065 0.0237346347656171 4.33681773046874 0.0237346347656171 2.79327425976567 C 0.0237346347656171 1.25053866210931 1.27435925390625 0 2.81716015429686 0 Z M 7.98573373242186 0 C 8.75754585351558 0 9.3828504375 0.625277074218729 9.3828504375 1.39705825781255 C 9.3828504375 2.16880505859376 8.75754587109373 2.79409932421868 7.98573373242186 2.79409932421868 C 7.21392159375 2.79409932421868 6.58863421874997 2.16882225000006 6.58863421874997 1.39705825781255 C 6.58863421874997 0.625277074218729 7.21392161132815 0 7.98573373242186 0 Z M 12.0362949492187 0.348641050781225 C 12.8081087929688 0.348625582031218 13.4333944628906 0.973919830078103 13.4333944628906 1.74569930859377 C 13.4333944628906 2.51748049218747 12.8081070703125 3.14275756640632 12.0362949492187 3.14275756640632 C 11.264482828125 3.14275756640632 10.6391782441406 2.51748049218747 10.6391782441406 1.74569930859377 C 10.6391782441406 0.973918125000068 11.2644828105468 0.348641050781225 12.0362949492187 0.348641050781225 Z M 15.3191332089845 2.16473306835928 C 16.09092815625 2.16473306835928 16.7162499140625 2.79001186523431 16.7162499140625 3.56179132617183 C 16.7162499140625 4.33357250976565 16.0909453476563 4.95884958398437 15.3191332089845 4.95884958398437 C 14.5473210878906 4.95884958398437 13.9220336953125 4.33357250976565 13.9220336953125 3.56179132617183 C 13.9220336953125 2.79001014257813 14.5473210878906 2.16473306835928 15.3191332089845 2.16473306835928 Z M 7.56585943945311 11.6633984765625 C 6.88489969921869 10.7729433281251 3.48011648437495 10.5110448574219 4.37059395703125 7.15877815429678 C 4.37059395703125 7.15877815429678 5.26107144726564 4.69695111328122 8.66587013085939 4.27791735351559 C 8.66587013085939 4.27791735351559 13.9220336953125 3.91125744140618 14.8272487382812 9.09351147656253 C 15.2692139003906 11.6257295214845 15.0850700507812 17.1108151171875 11.0230336933594 17.9455996054687 C 10.0425116953124 18.1469492929688 7.19918404101566 17.8965070664062 7.56585943945311 15.3299357753906 C 7.69517317968746 14.4222851074219 8.54638143750003 12.9450279902344 7.56585943945311 11.6633984765625 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 500 616 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/title4.svg
Normal file
6
frontend/src/renderer/src/assets/new/title4.svg
Normal file
File diff suppressed because one or more lines are too long
6
frontend/src/renderer/src/assets/new/title5.svg
Normal file
6
frontend/src/renderer/src/assets/new/title5.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="18px" height="12px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1475 -512 )">
|
||||||
|
<path d="M 12.717571297148 2.13837329676619 L 12.717571297148 3.61361156723547 C 12.717571297148 3.67013410633388 12.6582226310948 3.76904854975606 12.5395252989881 3.9103548975022 C 12.4208279668812 4.05166124524828 12.2936522539098 4.21840273558871 12.1579981600737 4.41057936852343 C 12.0223440662373 4.60275600145809 11.8951683532659 4.8118893961223 11.7764710211591 5.03797955251605 C 11.6577736890526 5.2640697089098 11.598425022999 5.49581211921327 11.598425022999 5.73320678342674 C 11.598425022999 5.97060144764021 11.6577736890526 6.19951773098893 11.7764710211591 6.4199556334728 C 11.8951683532659 6.64039353595672 12.0223440662373 6.84104854975612 12.1579981600737 7.02192067487113 C 12.2936522539098 7.20279279998613 12.4208279668812 7.35257752859707 12.5395252989881 7.47127486070366 C 12.6582226310948 7.58997219281036 12.717571297148 7.66627762059329 12.717571297148 7.70019114405238 L 12.717571297148 9.48065112565303 C 12.717571297148 9.67282775858774 12.6469181232751 9.89043953411681 12.5056117755291 10.13348645224 C 12.3643054277829 10.3765333703633 12.1890855565778 10.605449653712 11.9799521619134 10.8202353022861 C 11.7708187672495 11.0350209508601 11.5390763569458 11.2130669490202 11.2847249310028 11.3543732967662 C 11.0303735050597 11.4956796445123 10.7901527138915 11.5663328183854 10.5640625574977 11.5663328183854 L 2.13655197792104 11.5663328183854 C 1.83133026678934 11.5663328183854 1.55154369825209 11.5126364062418 1.2971922723093 11.4052435819548 C 1.04284084636606 11.2978507576679 0.81957681692711 11.148066029057 0.627400183992449 10.9558893961223 C 0.435223551057788 10.7637127631876 0.285438822447077 10.5376226067938 0.178045998160087 10.277618926941 C 0.07065317387287 10.0176152470882 0.0169567617294888 9.73500255159604 0.0169567617294888 9.42978084046445 L 0.0169567617294888 2.1214165350367 C 0.0169567617294888 1.89532637864295 0.0678270469181825 1.66075784138445 0.169567617295343 1.41771092326121 C 0.271308187672503 1.17466400513791 0.415440662373612 0.951399975699132 0.601965041398216 0.747918834944755 C 0.788489420423275 0.544437694190378 1.00892732290708 0.374870076895036 1.2632787488501 0.239215983058784 C 1.51763017479288 0.103561889222533 1.79741674333036 0.0357348423044641 2.10263845446184 0.0357348423044641 L 10.5301490340387 0.0357348423044641 C 10.8353707451702 0.0357348423044641 11.1208095676172 0.0894312544479021 11.3864655013799 0.196824078734949 C 11.6521214351426 0.304216903021938 11.8838638454463 0.451175504677906 12.0816927322908 0.637699883702737 C 12.2795216191353 0.824224262727569 12.4349586016558 1.04748829216646 12.5480036798526 1.30749197201931 C 12.6610487580497 1.56749565187198 12.717571297148 1.84445609345431 12.717571297148 2.13837329676619 Z M 17.9911241950322 1.98576244120045 L 17.9911241950322 2.01967596465948 L 17.9911241950322 9.76891607505507 C 17.9911241950322 10.0176152470882 17.9261232750689 10.2380531495721 17.7961214351426 10.4302297825068 C 17.6661195952161 10.6224064154415 17.4711168353265 10.7184947319088 17.2111131554739 10.7184947319088 C 17.1206770929161 10.7184947319088 17.0048058877646 10.6845812084498 16.8634995400182 10.6167541615317 C 16.7221931922722 10.5489271146135 16.580886844526 10.4697955598757 16.4395804967801 10.3793594973182 C 16.2982741490339 10.2889234347607 16.1654461821527 10.1984873722032 16.0410965961362 10.1080513096457 C 15.9167470101197 10.0176152470882 15.8263109475622 9.94413594626025 15.7697884084637 9.88761340716178 C 15.6228298068077 9.76326382114524 15.3995657773689 9.54847817257121 15.0999963201473 9.24325646143973 C 14.8004268629254 8.93803475030819 14.4980312787488 8.59324726180773 14.1928095676174 8.2088939959383 C 13.8875878564859 7.82454073006897 13.6191057957683 7.42888295637988 13.3873633854646 7.02192067487113 C 13.1556209751611 6.61495839336237 13.0397497700092 6.24190963531271 13.0397497700092 5.90277440072202 C 13.0397497700092 5.56363916613145 13.1640993560259 5.17645977330722 13.4127985280591 4.7412362222492 C 13.661497700092 4.30601267119124 13.9610671573137 3.87926750099808 14.311506899724 3.46100071166967 C 14.6619466421344 3.0427339223412 15.029343146274 2.65555452951696 15.4136964121435 2.29946253319679 C 15.7980496780128 1.94337053687667 16.120228150874 1.67488847615903 16.3802318307269 1.49401635104414 C 16.481972401104 1.42618930412601 16.6204526218951 1.3442316224332 16.7956724931003 1.24814330596587 C 16.9708923643054 1.15205498949854 17.1263293468262 1.10401083126493 17.2619834406626 1.10401083126493 C 17.567205151794 1.10401083126493 17.7650340386385 1.18879463991254 17.855470101196 1.35836225720789 C 17.9459061637535 1.52792987450306 17.9911241950322 1.73706326916727 17.9911241950322 1.98576244120045 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 1475 512 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/u10.svg
Normal file
6
frontend/src/renderer/src/assets/new/u10.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="18px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1255 -468 )">
|
||||||
|
<path d="M 15 14.9 C 15 15.7 14.8 16.5 14.3 17.1 C 13.9 17.7 13.2 18 12.5 18 L 2.5 18 C 1.8 18 1.1 17.7 0.7 17.1 C 0.2 16.5 0 15.7 0 14.9 C 0 14.3 0 13.6 0.1 13 C 0.2 12.4 0.3 11.8 0.5 11.2 C 0.7 10.7 0.9 10.2 1.2 9.7 C 1.5 9.3 1.9 8.9 2.3 8.7 C 2.8 8.4 3.3 8.3 3.9 8.3 C 4.9 9.3 6.2 9.8 7.6 9.8 C 9 9.8 10.3 9.3 11.3 8.3 C 11.9 8.3 12.4 8.4 12.9 8.7 C 13.3 9 13.7 9.3 14 9.7 C 14.3 10.2 14.5 10.7 14.7 11.2 C 14.9 11.8 15 12.4 15.1 13 C 15 13.6 15 14.3 15 14.9 Z M 10.7 1.3 C 11.6 2.1 12 3.3 12 4.5 C 12 5.7 11.5 6.8 10.7 7.7 C 9.8 8.5 8.7 9 7.5 9 C 6.3 9 5.2 8.5 4.3 7.7 C 3.5 6.8 3 5.7 3 4.5 C 3 3.3 3.5 2.2 4.3 1.3 C 5.2 0.5 6.3 0 7.5 0 C 8.7 0 9.8 0.5 10.7 1.3 Z " fill-rule="nonzero" fill="#cccccc" stroke="none" transform="matrix(1 0 0 1 1255 468 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
BIN
frontend/src/renderer/src/assets/new/u13.png
Normal file
BIN
frontend/src/renderer/src/assets/new/u13.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
6
frontend/src/renderer/src/assets/new/u16.svg
Normal file
6
frontend/src/renderer/src/assets/new/u16.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="14px" height="18px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1256 -538 )">
|
||||||
|
<path d="M 7.05 1.6 C 8.75 1.6 10.15 3 10.15 4.7 L 11.75 4.7 C 11.65 2.1 9.55 0 7.05 0 C 4.45 0 2.45 2.1 2.45 4.6 L 4.05 4.6 C 3.95 2.9 5.35 1.6 7.05 1.6 Z M 13.95 17 L 13.95 8.3 C 13.85 7.7 13.35 7.2 12.75 7.1 L 1.35 7.1 C 0.65 7.2 0.0499999999999997 7.7 0.0499999999999997 8.4 L 0.0499999999999997 16.8 C 0.15 17.4 0.55 17.8 1.15 18 L 12.95 18 C 13.45 17.9 13.85 17.5 13.95 17 Z " fill-rule="nonzero" fill="#cccccc" stroke="none" transform="matrix(1 0 0 1 1256 538 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/u249.svg
Normal file
6
frontend/src/renderer/src/assets/new/u249.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="98px" height="103px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1677 -169 )">
|
||||||
|
<path d="M 0 103 L 98 103 L 98 87.0421585160202 C 97.1281618887015 83.6694772344013 94.9696458684653 79.9595278246206 92.0016863406408 77.8010118043845 C 85.7284991568295 72.6745362563238 66.7740303541314 64.3102866779089 66.7740303541314 64.3102866779089 L 54.4974704890387 86.637436762226 L 52.7436762225971 81.1736930860034 L 55.7116357504215 74.0236087689713 L 48.9662731871838 67.2782462057336 L 42.2209106239461 74.0236087689713 L 45.5935919055648 80.7689713322091 L 43.5025295109613 86.2327150084317 L 31.6306913996627 63.5008431703204 C 31.6306913996627 63.5008431703204 12.7436762225971 71.8650927487353 6.40303541315347 76.9915682967959 C 3.43507588532884 79.4873524451939 1.27655986509285 82.7925801011804 0 87.0421585160202 L 0 103 Z M 76.0151770657671 30.58347386172 C 76.0151770657671 19.5885328836425 76.0151770657671 0.229342327150079 50.3153456998314 0.229342327150079 C 24.6829679595278 0.229342327150079 24.6829679595278 19.5885328836425 24.6155143338954 30.58347386172 C 24.5480607082632 41.9831365935919 35.1382799325463 62.2192242833052 50.2478920741989 62.2192242833052 C 65.8971332209107 61.8145025295109 76.0151770657671 41.5784148397976 76.0151770657671 30.58347386172 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 1677 169 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/u253.svg
Normal file
6
frontend/src/renderer/src/assets/new/u253.svg
Normal file
File diff suppressed because one or more lines are too long
6
frontend/src/renderer/src/assets/new/u257.svg
Normal file
6
frontend/src/renderer/src/assets/new/u257.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="14px" height="12px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1764 -306 )">
|
||||||
|
<path d="M 2.51332895992346 8.2419489503817 L 9.44528268129761 1.68571087786256 C 9.85230796755718 1.3006023377863 10.4941555343512 1.31625715648852 10.8823950381679 1.72328244274809 C 11.2737655057254 2.13030772900765 11.258110687023 2.77841722328242 10.847954437023 3.16665672709928 L 3.57472566793899 10.0798246660306 L 1.77129055343516 10.3146469465649 L 2.51332895992346 8.2419489503817 Z M 11.8060293416033 4.17482705152673 C 12.7734971374045 3.25432371183206 12.8110687022902 1.72328244274809 11.8874343988548 0.758945610687078 C 10.9700620229009 -0.199129293893179 9.44841364503804 -0.236700858778647 8.48720777671747 0.674409589694619 L 1.43627743320599 7.34336235687027 C 1.35800333969473 7.41850548664121 1.29538406488541 7.51243439885502 1.2578125 7.61575620229013 L 0.0743082061069344 10.9157919847328 C -0.00709685114520653 11.1443523377862 0.0367366412215233 11.3979604007633 0.187022900763395 11.5889491889313 C 0.340440124045927 11.7799379770993 0.578393368320803 11.873866889313 0.819477576335657 11.8425572519084 L 3.97861999045813 11.4292700381679 C 4.12577528625957 11.4104842557252 4.26040672709905 11.3447340171756 4.36685949427465 11.244543177481 L 11.8060293416033 4.17482705152673 Z M 13.2681894083967 10.4555403148855 L 7.69507395038158 10.4555403148855 C 7.30996541030527 10.4555403148855 6.99686903625957 10.7686366889313 6.99686903625957 11.1537452290077 C 6.99686903625957 11.538853769084 7.30996541030527 11.8519501431298 7.69507395038158 11.8519501431298 L 13.2681894083967 11.8519501431298 C 13.6532979484732 11.8519501431298 13.9663943225191 11.538853769084 13.9663943225191 11.1537452290077 C 13.9663943225191 10.7686366889313 13.6532979484732 10.4555403148855 13.2681894083967 10.4555403148855 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 1764 306 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/u264.svg
Normal file
6
frontend/src/renderer/src/assets/new/u264.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="12px" height="12px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1318 -254 )">
|
||||||
|
<path d="M 1.1717647058822 0.240000000000009 L 6 5.06823529411764 L 10.8282352941178 0.240000000000009 C 10.9517949764427 0.116440317674687 11.119377868552 0.047025210941456 11.2941176470588 0.047025210941456 C 11.6579943989025 0.047025210941456 11.9529747890585 0.342005601097583 11.9529747890585 0.705882352941217 C 11.9529747890585 0.880622131448035 11.8835596823253 1.0482050235571 11.7599999999998 1.17176470588242 L 6.93176470588219 6 L 11.7599999999998 10.8282352941176 C 11.8835596823253 10.9517949764429 11.9529747890585 11.119377868552 11.9529747890585 11.2941176470588 C 11.9529747890585 11.6579943989024 11.6579943989025 11.9529747890585 11.2941176470588 11.9529747890585 C 11.119377868552 11.9529747890585 10.9517949764427 11.8835596823253 10.8282352941178 11.76 L 6 6.93176470588236 L 1.1717647058822 11.76 C 1.04820502355733 11.8835596823253 0.880622131448035 11.9529747890585 0.705882352941217 11.9529747890585 C 0.342005601097526 11.9529747890585 0.047025210941456 11.6579943989024 0.047025210941456 11.2941176470588 C 0.047025210941456 11.119377868552 0.116440317674687 10.9517949764429 0.240000000000236 10.8282352941176 L 5.06823529411781 6 L 0.240000000000236 1.17176470588242 C 0.116440317674687 1.0482050235571 0.047025210941456 0.880622131448035 0.047025210941456 0.705882352941217 C 0.047025210941456 0.342005601097583 0.342005601097526 0.047025210941456 0.705882352941217 0.047025210941456 C 0.880622131448035 0.047025210941456 1.04820502355733 0.116440317674687 1.1717647058822 0.240000000000009 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 1318 254 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/useravatar.svg
Normal file
6
frontend/src/renderer/src/assets/new/useravatar.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="30px" height="30px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1519 -247 )">
|
||||||
|
<path d="M 0 30 L 30 30 L 30 25.3520850046661 C 29.7331107822556 24.3697506507965 29.0723405719793 23.28918286154 28.163781532849 22.6604888750634 C 26.2434181092335 21.1673406571817 20.4410297002444 18.7311514595851 20.4410297002444 18.7311514595851 L 16.6828991292978 25.2342048822017 L 16.1460233334481 23.642823228933 L 17.0545823725779 21.5602743987295 L 14.9896754654644 19.5956056909904 L 12.9247685583507 21.5602743987295 L 13.9572220119076 23.5249431064687 L 13.3171008707022 25.1163247597374 L 9.68286471418241 18.4953912146564 C 9.68286471418241 18.4953912146564 3.90112537426421 20.931580412253 1.96011288157752 22.4247286301347 C 1.05155384244745 23.1516560519982 0.390783632171406 24.1143437187904 0 25.3520850046661 L 0 30 Z M 23.26995216299 8.90780792088933 C 23.26995216299 5.7053979272745 23.26995216299 0.0667987360631344 15.4026568468871 0.0667987360631344 C 7.55601059985543 0.0667987360631344 7.55601059985543 5.7053979272745 7.53536153078426 8.90780792088933 C 7.51471246171332 12.2280980369685 10.7566163058816 18.122104160186 15.3820077778159 18.122104160186 C 20.1725918023196 18.0042240377216 23.26995216299 12.1102179145042 23.26995216299 8.90780792088933 Z " fill-rule="nonzero" fill="#b7bac0" stroke="none" transform="matrix(1 0 0 1 1519 247 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/useredit.svg
Normal file
6
frontend/src/renderer/src/assets/new/useredit.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="14px" height="12px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1857 -205 )">
|
||||||
|
<path d="M 2.51332895992346 8.2419489503817 L 9.44528268129761 1.68571087786256 C 9.85230796755718 1.3006023377863 10.4941555343512 1.31625715648852 10.8823950381679 1.72328244274809 C 11.2737655057254 2.13030772900765 11.258110687023 2.77841722328242 10.847954437023 3.16665672709928 L 3.57472566793899 10.0798246660306 L 1.77129055343516 10.3146469465649 L 2.51332895992346 8.2419489503817 Z M 11.8060293416033 4.17482705152673 C 12.7734971374045 3.25432371183206 12.8110687022902 1.72328244274809 11.8874343988548 0.758945610687078 C 10.9700620229009 -0.199129293893179 9.44841364503804 -0.236700858778647 8.48720777671747 0.674409589694619 L 1.43627743320599 7.34336235687027 C 1.35800333969473 7.41850548664121 1.29538406488541 7.51243439885502 1.2578125 7.61575620229013 L 0.0743082061069344 10.9157919847328 C -0.00709685114520653 11.1443523377862 0.0367366412215233 11.3979604007633 0.187022900763395 11.5889491889313 C 0.340440124045927 11.7799379770993 0.578393368320803 11.873866889313 0.819477576335657 11.8425572519084 L 3.97861999045813 11.4292700381679 C 4.12577528625957 11.4104842557252 4.26040672709905 11.3447340171756 4.36685949427465 11.244543177481 L 11.8060293416033 4.17482705152673 Z M 13.2681894083967 10.4555403148855 L 7.69507395038158 10.4555403148855 C 7.30996541030527 10.4555403148855 6.99686903625957 10.7686366889313 6.99686903625957 11.1537452290077 C 6.99686903625957 11.538853769084 7.30996541030527 11.8519501431298 7.69507395038158 11.8519501431298 L 13.2681894083967 11.8519501431298 C 13.6532979484732 11.8519501431298 13.9663943225191 11.538853769084 13.9663943225191 11.1537452290077 C 13.9663943225191 10.7686366889313 13.6532979484732 10.4555403148855 13.2681894083967 10.4555403148855 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 1857 205 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
6
frontend/src/renderer/src/assets/new/userinfo.svg
Normal file
6
frontend/src/renderer/src/assets/new/userinfo.svg
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="16px" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g transform="matrix(1 0 0 1 -1860 -349 )">
|
||||||
|
<path d="M 15.9545454545457 8 C 15.9545454545457 12.393939399858 12.3939393998578 15.9545454545454 8 15.9545454545454 C 3.6060606001422 15.9545454545454 0.0454545454542767 12.393939399858 0.0454545454542767 8 C 0.0454545454542767 3.60606060014203 3.6060606001422 0.045454545454561 8 0.045454545454561 C 12.3939393998578 0.045454545454561 15.9545454545457 3.60606060014203 15.9545454545457 8 Z M 14.4393939453128 8 C 14.4393939453128 4.43939392755681 11.5606060546872 1.56060605468747 8 1.56060605468747 C 4.43939394531276 1.56060605468747 1.56060605468724 4.43939394531253 1.56060605468724 8 C 1.56060605468724 11.5606060546875 4.43939392755669 14.4393939453125 8 14.4393939453125 C 11.5606060724433 14.4393939453125 14.4393939453128 11.5606060724432 14.4393939453128 8 Z M 3.45929338997712 8 C 3.45929338997712 8.63118257123517 3.95446233025609 9.14285714285717 4.56528417338677 9.14285714285717 C 5.17610601651791 9.14285714285717 5.67127495679711 8.63118257123517 5.67127495679711 8 C 5.67127495679711 7.36881742876483 5.17610601651791 6.85714285714283 4.56528417338677 6.85714285714283 C 3.95446233025609 6.85714285714283 3.45929338997712 7.36881742876483 3.45929338997712 8 Z M 6.85714285714289 8.00000001702989 C 6.85714285714289 8.63118257885975 7.36881742876471 9.14285714285717 8 9.14285714285717 C 8.63118257123529 9.14285714285717 9.14285714285711 8.63118257885975 9.14285714285711 8.00000001702989 C 9.14285714285711 7.36881742114025 8.63118257123529 6.85714285714283 8 6.85714285714283 C 7.36881742876471 6.85714285714283 6.85714285714289 7.36881742114025 6.85714285714289 7.99999998297011 Z M 10.3287250432029 8 C 10.3287250432029 8.63118257123517 10.8238939834821 9.14285714285717 11.4347158266132 9.14285714285717 C 12.0455376697439 9.14285714285717 12.5407066100229 8.63118257123517 12.5407066100229 8 C 12.5407066100229 7.36881742876483 12.0455376697439 6.85714285714283 11.4347158266132 6.85714285714283 C 10.8238939834821 6.85714285714283 10.3287250432029 7.36881742876483 10.3287250432029 8 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" transform="matrix(1 0 0 1 1860 349 )" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
@ -13,7 +13,7 @@ api.interceptors.request.use(
|
|||||||
if (window.electronAPI) {
|
if (window.electronAPI) {
|
||||||
config.baseURL = window.electronAPI.getBackendUrl()
|
config.baseURL = window.electronAPI.getBackendUrl()
|
||||||
} else {
|
} else {
|
||||||
config.baseURL = 'http://localhost:5000'
|
config.baseURL = 'http://192.168.1.60:5000'
|
||||||
}
|
}
|
||||||
|
|
||||||
// 为需要发送数据的请求设置Content-Type(避免覆盖FormData)
|
// 为需要发送数据的请求设置Content-Type(避免覆盖FormData)
|
||||||
@ -660,7 +660,7 @@ export const getBackendUrl = () => {
|
|||||||
if (window.electronAPI) {
|
if (window.electronAPI) {
|
||||||
return window.electronAPI.getBackendUrl()
|
return window.electronAPI.getBackendUrl()
|
||||||
} else {
|
} else {
|
||||||
return 'http://localhost:5000'
|
return 'http://192.168.1.60:5000'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -7,7 +7,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
font-family: 'Noto Sans SC', sans-serif;
|
||||||
background-color: #f5f5f5;
|
background-color: #f5f5f5;
|
||||||
color: #333;
|
color: #333;
|
||||||
line-height: 1.6;
|
line-height: 1.6;
|
||||||
|
|||||||
@ -1,256 +1,221 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="dashboard-container dashboard-container-home">
|
<div class="dashboard-container dashboard-container-home">
|
||||||
<!-- 顶部导航栏 -->
|
<!-- 顶部导航栏 -->
|
||||||
<Header />
|
<Header v-show="isDetection == false"/>
|
||||||
<div class="main-dashboard-top">
|
|
||||||
<div class="main-dashboard-top-title">
|
|
||||||
起始页
|
|
||||||
</div>
|
|
||||||
<div class="main-dashboard-top-info">
|
|
||||||
<!-- <div>测试时间:2025-08-03 17:13:18<span></span></div>
|
|
||||||
<div style="margin-left: 15px;">测试医生:<span>李医生</span></div> -->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 左侧功能导航 -->
|
<!-- 左侧功能导航 -->
|
||||||
<div class="main-dashboard-content">
|
<div class="main-dashboard-content" v-show="isDetection == false">
|
||||||
<!-- <aside class="sidebar">
|
|
||||||
<div class="sidebar-item active">
|
|
||||||
<el-icon class="sidebar-icon"><UserFilled /></el-icon>
|
|
||||||
<span class="sidebar-text">检测</span>
|
|
||||||
</div>
|
|
||||||
</aside> -->
|
|
||||||
<!-- 右侧内容区域 -->
|
<!-- 右侧内容区域 -->
|
||||||
<div class="content-area">
|
<div class="content-area">
|
||||||
<!-- 患者列表区域 -->
|
<!-- 患者列表区域 -->
|
||||||
<div class="patient-section">
|
<div class="patient-section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<div class="module-title">
|
|
||||||
<div class="module-title-text">患者列表</div>
|
|
||||||
</div>
|
|
||||||
<div class="search-box">
|
<div class="search-box">
|
||||||
<el-input v-model="searchKeyword" placeholder="搜索患者姓名" prefix-icon="Search" clearable
|
<el-input v-model="search" placeholder="搜索患者姓名" clearable class="search-input"/>
|
||||||
@input="handleSearch" class="search-input"/>
|
<el-button type="primary" class="primary-view-buttons" @click="handleSearch">
|
||||||
|
搜索
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<!-- <div class="action-view-buttons" style="width:338px;" @click="createNewPatient">+新患者建档</div> -->
|
||||||
|
<el-button type="primary" class="primary-view-buttons" @click="createNewPatient">
|
||||||
|
<el-icon style="margin-right: 10px;color: #fff;font-size: 17px;"><Plus /></el-icon>
|
||||||
|
新建患者档案
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-table ref="tableRef" :data="filteredPatients" style="width: 100%" border @cell-click="selectPatient"
|
<el-table ref="tableRef" :data="patients" style="width: 100%;height: calc(100% - 100px);"
|
||||||
|
|
||||||
|
@cell-click="selectPatient"
|
||||||
highlight-current-row>
|
highlight-current-row>
|
||||||
<el-table-column prop="name" label="姓名" width="150" align="center" />
|
<el-table-column type="index" label="序号" width="60" />
|
||||||
<el-table-column prop="id" label="测试者ID" min-width="120" align="center" />
|
<el-table-column prop="id" label="患者ID" min-width="120" align="center" />
|
||||||
<el-table-column prop="updated_at" label="最后一次检查时间" min-width="100" align="center" />
|
<el-table-column prop="name" label="患者姓名" width="80" align="center" />
|
||||||
<el-table-column prop="gender" label="性别" width="120" align="center" />
|
<el-table-column prop="gender" label="性别" width="120" align="center">
|
||||||
<el-table-column prop="num" label="测试次数" width="120" align="center" />
|
|
||||||
<el-table-column prop="status" label="测试状态" align="center">
|
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span v-if="!scope.row.status" style="font-size: 18px;color:#F59A23;">未处理</span>
|
<span v-if="scope.row.gender === 'male'">男</span>
|
||||||
<span v-else style="font-size: 18px;color:#ffffff;">已处理</span>
|
<span v-else >女</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="num" label="测试次数" width="100" align="center" />
|
||||||
|
<el-table-column prop="updated_at" label="最近测试时间" min-width="100" align="center" />
|
||||||
|
|
||||||
|
|
||||||
|
<el-table-column prop="status" label="状态" align="center" width="100">
|
||||||
|
<template #default="scope">
|
||||||
|
<div v-if="!scope.row.status"
|
||||||
|
class="unprocessed-status">未处理</div>
|
||||||
|
<div v-else class="processed-status">已处理</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="doctor" label="测试医生" min-width="80" align="center" />
|
<el-table-column prop="doctor" label="测试医生" min-width="80" align="center" />
|
||||||
<el-table-column fixed="right" label="操作" width="100">
|
<el-table-column label="操作" width="100">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button link type="primary" style="font-size: 18px;" size="small" @click="delClick(scope.row.id)">删除</el-button>
|
<el-button link type="primary" style="font-size: 18px;" size="small" @click="delClick(scope.row.id)">删除</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
<!-- :total="patienttotal" -->
|
||||||
|
<el-pagination background layout="prev, pager, next"
|
||||||
|
:size="size"
|
||||||
|
:page-size="size"
|
||||||
|
:total="patienttotal"
|
||||||
|
@current-change="handleCurrentChange"
|
||||||
|
class="pagination-box"/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 患者详情区域 -->
|
<!-- 患者详情区域 -->
|
||||||
<div class="patient-detail" v-if="selectedPatient">
|
<div class="patient-detail">
|
||||||
<div class="patient-detail-box">
|
<div class="patient-detail-header">
|
||||||
<div class="detail-header">
|
<img src="@/assets/new/u253.svg" alt="" style="margin-right:10px ;">
|
||||||
<div class="module-title">
|
<div>用户信息</div>
|
||||||
<div class="module-title-text">基础信息</div>
|
|
||||||
</div>
|
|
||||||
<el-button link @click="editPatient">
|
|
||||||
<el-icon class="edit-icon" style="width: 28px;height: 28px;font-size: 28px;cursor: pointer;color: #CCCCCC;">
|
|
||||||
<Edit />
|
|
||||||
</el-icon>
|
|
||||||
</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="basic-info-box">
|
<div class="patient-detail-avatar">
|
||||||
<div class="basic-info-content">
|
<img src="@/assets/new/u249.svg" alt="">
|
||||||
<div class="basic-info-text">
|
|
||||||
<div class="basic-info-textcolor">测试者ID</div>
|
|
||||||
<div>{{ selectedPatient.id || '-' }}</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="basic-info-text">
|
<div class="patient-detail-name">
|
||||||
<div class="basic-info-textcolor">姓名</div>
|
<span v-if="selectedPatient">{{ selectedPatient.name }}</span>
|
||||||
<div>{{ selectedPatient.name || '-' }}</div>
|
<span v-if="!selectedPatient">—</span>
|
||||||
</div>
|
<div v-if="selectedPatient" class="edit-icon-box" style="cursor: pointer;" @click="editClick">
|
||||||
<div class="basic-info-text">
|
<img src="@/assets/new/u257.svg" alt="" >
|
||||||
<div class="basic-info-textcolor">性别</div>
|
|
||||||
<div>{{ selectedPatient.gender || '-' }}</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="basic-info-content">
|
<div class="patient-detail-userid">
|
||||||
<div class="basic-info-text">
|
<span>用户ID:</span>
|
||||||
<div class="basic-info-textcolor">出生日期</div>
|
<span v-if="selectedPatient">{{ selectedPatient.id }}</span>
|
||||||
<div>{{ selectedPatient.birth_date ? formatDate(selectedPatient.birth_date) : '-' }}</div>
|
<span v-if="!selectedPatient">—</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="basic-info-text">
|
<el-scrollbar height="calc(100%)">
|
||||||
<div class="basic-info-textcolor">年龄</div>
|
<div class="patient-detail-display">
|
||||||
<div>{{ calculateAge(selectedPatient.birth_date) }}</div>
|
<div class="patient-detail-contentleft">性别:</div>
|
||||||
</div>
|
<div class="patient-detail-contentright">
|
||||||
<div class="basic-info-text">
|
<span v-if="selectedPatient && selectedPatient.gender">
|
||||||
<div class="basic-info-textcolor">民族</div>
|
{{ selectedPatient.gender =='male'?'男':'女' }}
|
||||||
<div>{{ selectedPatient.nationality || '-' }}</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="basic-info-content">
|
|
||||||
<div class="basic-info-text">
|
|
||||||
<div class="basic-info-textcolor">身高cm</div>
|
|
||||||
<div>{{ selectedPatient.height || '-' }}</div>
|
|
||||||
</div>
|
|
||||||
<div class="basic-info-text">
|
|
||||||
<div class="basic-info-textcolor">体重kg</div>
|
|
||||||
<div>{{ selectedPatient.weight || '-' }}</div>
|
|
||||||
</div>
|
|
||||||
<div class="basic-info-text">
|
|
||||||
<div class="basic-info-textcolor">鞋码</div>
|
|
||||||
<div>{{ selectedPatient.shoe_size || '-' }}</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="basic-info-content">
|
|
||||||
<div class="basic-info-text">
|
|
||||||
<div class="basic-info-textcolor">电话号码</div>
|
|
||||||
<div>{{ selectedPatient.phone || '-' }}</div>
|
|
||||||
</div>
|
|
||||||
<div class="basic-info-text">
|
|
||||||
<div class="basic-info-textcolor">建档时间</div>
|
|
||||||
<div>{{ selectedPatient.created_at ? formatDate(selectedPatient.created_at) : '-' }}</div>
|
|
||||||
</div>
|
|
||||||
<div class="basic-info-text">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- 操作按钮 -->
|
|
||||||
<div class="action-buttons">
|
|
||||||
<div class="action-view-buttons" style="width:338px;" @click="viewPatientProfile">查看档案</div>
|
|
||||||
<div class="action-view-buttons" style="width:338px;" @click="startDetection">平衡检测</div>
|
|
||||||
<div class="action-view-buttons" style="width:338px;" @click="createNewPatient">+新患者建档</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- 无选中患者时的提示 -->
|
|
||||||
<div class="no-selection" v-else>
|
|
||||||
<el-empty description="请选择一个患者查看详情">
|
|
||||||
<!-- <el-button type="primary" @click="createNewPatient">新建患者档案</el-button> -->
|
|
||||||
<div class="action-view-buttons" style="width:338px;" @click="createNewPatient">+新患者建档</div>
|
|
||||||
</el-empty>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<el-dialog v-model="dialogVisible" title="编辑基础信息" width="50%" :before-close="handleClose">
|
|
||||||
<div class="form-box" style="margin-top: 10px;">
|
|
||||||
<el-form ref="patientFormRef" :model="patientForm" :rules="formRules" label-width="100px" class="patient-form">
|
|
||||||
<el-row :gutter="20">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="测试者ID" prop="testerId">
|
|
||||||
<el-input v-model="patientForm.id" disabled placeholder="请输入测试者ID" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="姓名" prop="name" required>
|
|
||||||
<el-input v-model="patientForm.name" placeholder="请输入" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="性别" prop="gender" required>
|
|
||||||
<el-select v-model="patientForm.gender" placeholder="请选择">
|
|
||||||
<el-option label="男" value="男" />
|
|
||||||
<el-option label="女" value="女" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="出生日期" prop="birth_date" required>
|
|
||||||
<el-date-picker v-model="patientForm.birth_date" type="date" placeholder="请选择" style="width: 100%"
|
|
||||||
@change="calculateAgeres" />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="年龄">
|
|
||||||
<el-input v-model="calculatedAge" placeholder="自动计算" readonly suffix-icon="Calendar" />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="民族" prop="nationality">
|
|
||||||
<el-select v-model="patientForm.nationality" placeholder="请选择">
|
|
||||||
<el-option v-for="item in nationalityOptions" :key="item" :label="item"
|
|
||||||
:value="item" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="长期居住地" prop="residence">
|
|
||||||
<el-input v-model="patientForm.residence" placeholder="请输入" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="身高" prop="height" required>
|
|
||||||
<el-input v-model="patientForm.height" placeholder="请输入" clearable>
|
|
||||||
<template #suffix>cm</template>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="体重" prop="weight" required>
|
|
||||||
<el-input v-model="patientForm.weight" placeholder="请输入" clearable>
|
|
||||||
<template #suffix>kg</template>
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="鞋码" prop="shoe_size">
|
|
||||||
<el-input v-model="patientForm.shoe_size" placeholder="请输入" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="电话号码" prop="phone" required>
|
|
||||||
<el-input v-model="patientForm.phone" placeholder="请输入" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="电子邮箱" prop="email">
|
|
||||||
<el-input v-model="patientForm.email" placeholder="请输入" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="职业" prop="occupation">
|
|
||||||
<el-select v-model="patientForm.occupation" placeholder="请选择">
|
|
||||||
<el-option v-for="item in occupationOptions" :key="item" :label="item"
|
|
||||||
:value="item" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="单位" prop="workplace">
|
|
||||||
<el-input v-model="patientForm.workplace" placeholder="请输入" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<template #footer>
|
|
||||||
<span class="dialog-footer">
|
|
||||||
<el-button @click="handleClose" style="margin-right: 20px;">退出</el-button>
|
|
||||||
<el-button type="primary" @click="handleSave" :loading="saveLoading">
|
|
||||||
保存
|
|
||||||
</el-button>
|
|
||||||
</span>
|
</span>
|
||||||
</template>
|
<span v-else>—</span>
|
||||||
</el-dialog>
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">出生日期:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.birth_date">
|
||||||
|
{{ formatDate(selectedPatient.birth_date) }}
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">年龄:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.birth_date">
|
||||||
|
{{ calculateAge(selectedPatient.birth_date) }}
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">民族:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.nationality">
|
||||||
|
{{ selectedPatient.nationality }}
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">居住地:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.residence">
|
||||||
|
{{ selectedPatient.residence }}
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">身高:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.height">
|
||||||
|
{{ selectedPatient.height }}cm
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">体重:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.weight">
|
||||||
|
{{ selectedPatient.weight }}kg
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">鞋码:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.shoe_size">
|
||||||
|
{{ selectedPatient.shoe_size }}码
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">电话:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.phone">
|
||||||
|
{{ selectedPatient.phone }}
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">邮箱:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.email">
|
||||||
|
{{ selectedPatient.email }}
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">职业:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.occupation">
|
||||||
|
{{ selectedPatient.occupation }}
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="patient-detail-display">
|
||||||
|
<div class="patient-detail-contentleft">证件号:</div>
|
||||||
|
<div class="patient-detail-contentright">
|
||||||
|
<span v-if="selectedPatient && selectedPatient.workplace">
|
||||||
|
{{ selectedPatient.workplace }}
|
||||||
|
</span>
|
||||||
|
<span v-else>—</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-scrollbar>
|
||||||
|
<el-button v-if="selectedPatient" type="primary" class="primary-view-profile"
|
||||||
|
@click="viewPatientProfile">
|
||||||
|
查看档案
|
||||||
|
</el-button>
|
||||||
|
<el-button v-if="selectedPatient" type="primary" class="primary-view-profile"
|
||||||
|
@click="startDetection">
|
||||||
|
开始检测
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="creat-patient-box" v-if="isCloseCreat">
|
||||||
|
<PatientCreate @closecreatbox="closecreatbox" :patienttype="patienttype"
|
||||||
|
:selectedPatient="selectedPatient" v-if="isCloseCreat"/>
|
||||||
|
</div>
|
||||||
|
<div class="creat-patient-box" v-if="isDetection">
|
||||||
|
<Detection v-if="isDetection" :selectedPatient="selectedPatient"
|
||||||
|
@endChange="endChange"></Detection>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -261,10 +226,15 @@ import { ElMessage, ElMessageBox } from 'element-plus'
|
|||||||
import api, { patientAPI } from '../services/api.js'
|
import api, { patientAPI } from '../services/api.js'
|
||||||
import { useAuthStore } from '../stores/index.js'
|
import { useAuthStore } from '../stores/index.js'
|
||||||
import Header from '@/views/Header.vue'
|
import Header from '@/views/Header.vue'
|
||||||
|
import PatientCreate from '@/views/PatientCreate.vue'
|
||||||
|
import Detection from '@/views/Detection.vue'
|
||||||
|
|
||||||
import { color } from 'echarts'
|
import { color } from 'echarts'
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const authStore = useAuthStore()
|
const authStore = useAuthStore()
|
||||||
|
const isDetection = ref(true) // 显示检查页面
|
||||||
|
const patienttype = ref('add')
|
||||||
|
const patienttotal = ref(0)
|
||||||
// 响应式数据
|
// 响应式数据
|
||||||
const activeNav = ref('detection')
|
const activeNav = ref('detection')
|
||||||
const searchKeyword = ref('')
|
const searchKeyword = ref('')
|
||||||
@ -361,18 +331,20 @@ const calculateAgeres = (date) => {
|
|||||||
}
|
}
|
||||||
// 计算属性
|
// 计算属性
|
||||||
const filteredPatients = computed(() => {
|
const filteredPatients = computed(() => {
|
||||||
if (!searchKeyword.value) {
|
// if (!searchKeyword.value) {
|
||||||
return patients.value
|
// return patients.value
|
||||||
}
|
// }
|
||||||
|
|
||||||
return patients.value.filter(patient =>
|
// return patients.value.filter(patient =>
|
||||||
patient.name.toLowerCase().includes(searchKeyword.value.toLowerCase())
|
// patient.name.toLowerCase().includes(searchKeyword.value.toLowerCase())
|
||||||
)
|
// )
|
||||||
})
|
})
|
||||||
|
|
||||||
// 方法
|
// 方法
|
||||||
const handleSearch = () => {
|
const handleSearch = () => {
|
||||||
// 搜索逻辑已在计算属性中处理
|
// 搜索逻辑已在计算属性中处理
|
||||||
|
loadPatients()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// const selectPatient = (patient) => {
|
// const selectPatient = (patient) => {
|
||||||
@ -457,7 +429,8 @@ const startDetection = () => {
|
|||||||
ElMessage.warning('请先选择患者')
|
ElMessage.warning('请先选择患者')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
router.push(`/detection/${selectedPatient.value.id}`)
|
isDetection.value = true
|
||||||
|
// router.push(`/detection/${selectedPatient.value.id}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
const createNewPatient = async () => {
|
const createNewPatient = async () => {
|
||||||
@ -465,7 +438,9 @@ const createNewPatient = async () => {
|
|||||||
const response = await api.get('/api/license/info')
|
const response = await api.get('/api/license/info')
|
||||||
const isValid = response && response.success && response.data && response.data.valid
|
const isValid = response && response.success && response.data && response.data.valid
|
||||||
if (isValid) {
|
if (isValid) {
|
||||||
router.push('/patient/create')
|
// router.push('/patient/create')
|
||||||
|
patienttype.value = 'add'
|
||||||
|
isCloseCreat.value =true
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const msg ='['+ (response && response.data && response.data.message)+'],软件使用授权不正确,您不能创建新患者!'
|
const msg ='['+ (response && response.data && response.data.message)+'],软件使用授权不正确,您不能创建新患者!'
|
||||||
@ -546,16 +521,24 @@ const calculateAge = (birthDate) => {
|
|||||||
}
|
}
|
||||||
return age
|
return age
|
||||||
}
|
}
|
||||||
|
const size =ref(15)
|
||||||
|
const page =ref(1)
|
||||||
|
const search = ref("")
|
||||||
const loadPatients = async () => {
|
const loadPatients = async () => {
|
||||||
try {
|
try {
|
||||||
const response = await patientAPI.getPatients()
|
const response = await patientAPI.getPatients({
|
||||||
|
page:page.value,
|
||||||
|
size:size.value,
|
||||||
|
search:search.value
|
||||||
|
})
|
||||||
if (response.success) {
|
if (response.success) {
|
||||||
// 如果返回的是分页数据对象,提取patients数组
|
// 如果返回的是分页数据对象,提取patients数组
|
||||||
if (response.data && Array.isArray(response.data.patients)) {
|
if (response.data && Array.isArray(response.data.patients)) {
|
||||||
patients.value = response.data.patients
|
patients.value = response.data.patients
|
||||||
|
patienttotal.value =response.data.total
|
||||||
} else if (Array.isArray(response.data)) {
|
} else if (Array.isArray(response.data)) {
|
||||||
patients.value = response.data
|
patients.value = response.data
|
||||||
|
patienttotal.value =response.total
|
||||||
} else {
|
} else {
|
||||||
patients.value = []
|
patients.value = []
|
||||||
}
|
}
|
||||||
@ -563,32 +546,7 @@ const loadPatients = async () => {
|
|||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('加载患者列表失败:', error)
|
console.error('加载患者列表失败:', error)
|
||||||
// 模拟数据
|
// 模拟数据
|
||||||
patients.value = [
|
patients.value = []
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
name: '张三',
|
|
||||||
gender: '男',
|
|
||||||
age: 45,
|
|
||||||
updated_at: '2023-05-01 14:00:00',
|
|
||||||
num: 4
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 2,
|
|
||||||
name: '李四',
|
|
||||||
gender: '女',
|
|
||||||
updated_at: '2023-05-01 14:00:00',
|
|
||||||
num: 4
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 3,
|
|
||||||
name: '王五',
|
|
||||||
gender: '男',
|
|
||||||
age: 52,
|
|
||||||
updated_at: '2023-05-01 14:00:00',
|
|
||||||
num: 4
|
|
||||||
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const handleClose = () => {
|
const handleClose = () => {
|
||||||
@ -639,7 +597,24 @@ function delClick(id) {
|
|||||||
.catch(() => {
|
.catch(() => {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
const isCloseCreat = ref(false)
|
||||||
|
function closecreatbox(e){
|
||||||
|
if(e == true){
|
||||||
|
loadPatients()
|
||||||
|
}
|
||||||
|
isCloseCreat.value = false
|
||||||
|
}
|
||||||
|
function endChange(){
|
||||||
|
isDetection.value = false
|
||||||
|
}
|
||||||
|
function handleCurrentChange (val) {
|
||||||
|
page.value = val
|
||||||
|
loadPatients()
|
||||||
|
}
|
||||||
|
function editClick(){
|
||||||
|
patienttype.value = 'edit'
|
||||||
|
isCloseCreat.value = true
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
@ -780,13 +755,13 @@ function delClick(id) {
|
|||||||
.content-area {
|
.content-area {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
display: flex;
|
display: flex;
|
||||||
gap: 5px;
|
gap: 15px;
|
||||||
padding: 5px;
|
padding: 15px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.patient-section {
|
.patient-section {
|
||||||
width: calc(100% - 500px);
|
width: calc(100% - 350px);
|
||||||
background: rgb(51, 51, 51);
|
background: rgb(51, 51, 51);
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
@ -794,8 +769,8 @@ function delClick(id) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.section-header {
|
.section-header {
|
||||||
/* display: flex;
|
display: flex;
|
||||||
justify-content: space-between; */
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-bottom: 15px;
|
margin-bottom: 15px;
|
||||||
}
|
}
|
||||||
@ -807,8 +782,9 @@ function delClick(id) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.search-box {
|
.search-box {
|
||||||
width: 250px;
|
/* width: 250px; */
|
||||||
margin-top: 15px;
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.patient-list {
|
.patient-list {
|
||||||
@ -867,7 +843,10 @@ function delClick(id) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.patient-detail {
|
.patient-detail {
|
||||||
width: 500px;
|
width: 350px;
|
||||||
|
background: #282828;
|
||||||
|
border-radius: 4px;
|
||||||
|
height: 100%;
|
||||||
/* background: #fff; */
|
/* background: #fff; */
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -1035,30 +1014,7 @@ function delClick(id) {
|
|||||||
margin-top: 25px;
|
margin-top: 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.main-dashboard-top {
|
|
||||||
display: flex;
|
|
||||||
width: 100%;
|
|
||||||
align-items: center;
|
|
||||||
padding: 10px 20px;
|
|
||||||
gap: 20px;
|
|
||||||
background-color: #292929;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main-dashboard-top-title {
|
|
||||||
font-family: 'Arial Negreta', 'Arial Normal', 'Arial', sans-serif;
|
|
||||||
font-weight: 700;
|
|
||||||
font-style: normal;
|
|
||||||
color: #FFFFFF;
|
|
||||||
font-size: 18px;
|
|
||||||
width: calc(100% - 500px);
|
|
||||||
}
|
|
||||||
|
|
||||||
.main-dashboard-top-info {
|
|
||||||
display: flex;
|
|
||||||
font-size: 16px;
|
|
||||||
color: #FFFFFF;
|
|
||||||
font-family: 'Arial Normal', 'Arial', sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 必填项标识 */
|
/* 必填项标识 */
|
||||||
:deep(.el-form-item.is-required .el-form-item__label::before) {
|
:deep(.el-form-item.is-required .el-form-item__label::before) {
|
||||||
@ -1076,49 +1032,14 @@ function delClick(id) {
|
|||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-select__wrapper) {
|
|
||||||
background-color: rgba(51, 51, 51, 1);
|
|
||||||
border-width: 1px;
|
|
||||||
border-style: solid;
|
|
||||||
border-color: rgba(127, 127, 127, 1);
|
|
||||||
border-radius: 4px;
|
|
||||||
box-shadow: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-form-item__label) {
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: '苹方 粗体', '苹方 中等', '苹方', sans-serif;
|
|
||||||
font-weight: 700;
|
|
||||||
font-style: normal;
|
|
||||||
color: #FFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-col-12) {
|
|
||||||
margin-bottom: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-input__inner) {
|
|
||||||
color: #ffffff;
|
|
||||||
font-size: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-select__placeholder) {
|
|
||||||
color: #ffffff;
|
|
||||||
font-size: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-input.is-disabled .el-input__wrapper) {
|
|
||||||
background-color: rgba(127, 127, 127, 1);
|
|
||||||
box-shadow: none;
|
|
||||||
border-width: 1px;
|
|
||||||
border-style: solid;
|
|
||||||
border-color: rgba(215, 215, 215, 1);
|
|
||||||
color: #FFFFFF;
|
|
||||||
}
|
|
||||||
:deep(.el-table th .cell){
|
:deep(.el-table th .cell){
|
||||||
color: #30F3FF ;
|
font-size: 14px;
|
||||||
font-weight: 400;
|
|
||||||
font-size: 18px;
|
|
||||||
}
|
}
|
||||||
:deep(.el-table--border .el-table__inner-wrapper){
|
:deep(.el-table--border .el-table__inner-wrapper){
|
||||||
border-right: 1px solid #434343;
|
border-right: 1px solid #434343;
|
||||||
@ -1153,7 +1074,7 @@ function delClick(id) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.dashboard-container.dashboard-container-home .el-table td.el-table__cell {
|
.dashboard-container.dashboard-container-home .el-table td.el-table__cell {
|
||||||
background-color: rgb(0, 0, 0) !important;
|
background-color: #282828 !important;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1161,10 +1082,6 @@ function delClick(id) {
|
|||||||
border-right: transparent !important;
|
border-right: transparent !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dashboard-container.dashboard-container-home .el-table__body tr.current-row>td.el-table__cell {
|
|
||||||
background-color: rgb(121, 121, 121) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.dashboard-container.dashboard-container-home .el-table--border .el-table__inner-wrapper:after,
|
.dashboard-container.dashboard-container-home .el-table--border .el-table__inner-wrapper:after,
|
||||||
.el-table--border:after,
|
.el-table--border:after,
|
||||||
.el-table--border:before,
|
.el-table--border:before,
|
||||||
@ -1217,9 +1134,218 @@ function delClick(id) {
|
|||||||
width: 190px;
|
width: 190px;
|
||||||
border-radius: 50px;
|
border-radius: 50px;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
font-family: 'Arial Normal', 'Arial', sans-serif;
|
font-family: 'Noto Sans SC';
|
||||||
}
|
}
|
||||||
.search-input{
|
.search-input{
|
||||||
|
height: 40px;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
.primary-view-buttons{
|
||||||
|
background-color: rgba(38, 111, 255, 1);
|
||||||
|
/* width: 150px; */
|
||||||
|
height: 40px;
|
||||||
|
border: 0px;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 14px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
.primary-view-buttons:hover{
|
||||||
|
background-color: rgb(52, 119, 254);
|
||||||
|
}
|
||||||
|
.dashboard-container.dashboard-container-home .el-table--enable-row-hover .el-table__body tr:hover > td {
|
||||||
|
background-color: #363636 !important; /* 自定义浅蓝底色 */
|
||||||
|
}
|
||||||
|
|
||||||
|
.dashboard-container.dashboard-container-home .el-table .el-table__row.current-row td{
|
||||||
|
background-color: #282f3d !important;
|
||||||
|
border-top:1px solid rgba(38, 111, 255, 1);
|
||||||
|
border-bottom:1px solid rgba(38, 111, 255, 1)
|
||||||
|
}
|
||||||
|
.dashboard-container.dashboard-container-home .el-table .el-table__row.current-row td:last-child{
|
||||||
|
border-right:1px solid rgba(38, 111, 255, 1);
|
||||||
|
}
|
||||||
|
.dashboard-container.dashboard-container-home .el-table .el-table__row.current-row td:first-child{
|
||||||
|
border-left:1px solid rgba(38, 111, 255, 1);
|
||||||
|
}
|
||||||
|
.dashboard-container.dashboard-container-home .el-table .el-table__row.current-row:last-child td{
|
||||||
|
border-bottom:2px solid rgba(38, 111, 255, 1)
|
||||||
|
}
|
||||||
|
|
||||||
|
.dashboard-container.dashboard-container-home .el-table .el-table__body tr td {
|
||||||
|
height: 50px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 设置表头行高 */
|
||||||
|
.dashboard-container.dashboard-container-home .el-table .el-table__header tr th {
|
||||||
|
height: 50px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.unprocessed-status{
|
||||||
|
margin: auto;
|
||||||
|
width: 60px;
|
||||||
|
height: 26px;
|
||||||
|
line-height: 26px;
|
||||||
|
background-color: #543544;
|
||||||
|
border: #FF3300 1px solid;
|
||||||
|
border-radius: 4px;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 14px;
|
||||||
|
color: #FF3300;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.processed-status{
|
||||||
|
margin: auto;
|
||||||
|
width: 60px;
|
||||||
|
height: 26px;
|
||||||
|
line-height: 26px;
|
||||||
|
background-color: #243824;
|
||||||
|
border: #00CC00 1px solid;
|
||||||
|
border-radius: 4px;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 14px;
|
||||||
|
color: #00CC00;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.patient-detail-header{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 10px;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 18px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
border-bottom: 1px solid #000;
|
||||||
|
}
|
||||||
|
.patient-detail-avatar{
|
||||||
|
width: 120px;
|
||||||
|
height: 120px;
|
||||||
|
background-color: rgba(189, 211, 253, 1);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
border-radius: 10px;
|
||||||
|
margin: auto;
|
||||||
|
margin-top: 40px;
|
||||||
|
}
|
||||||
|
.patient-detail-name{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
color: #FFFFFF;
|
||||||
|
font-size: 24px;
|
||||||
|
padding-top: 10px;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
}
|
||||||
|
.edit-icon-box{
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
background: inherit;
|
||||||
|
background-color: rgba(255, 102, 0, 1);
|
||||||
|
border-radius: 4px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
.patient-detail-userid{
|
||||||
|
text-align: center;
|
||||||
|
width: 100%;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 16px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
.patient-detail-display{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 10px 20px;
|
||||||
|
}
|
||||||
|
.patient-detail-contentleft{
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 14px;
|
||||||
|
color: #949494;
|
||||||
|
}
|
||||||
|
.patient-detail-contentright{
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 14px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination-box.el-pagination.is-background .btn-next,
|
||||||
|
.pagination-box.el-pagination.is-background .btn-prev,
|
||||||
|
.pagination-box.el-pagination.is-background .el-pager li{
|
||||||
|
background: #282828;
|
||||||
|
color: #fff;
|
||||||
|
border: 1px solid rgba(80, 80, 80, 1);
|
||||||
|
}
|
||||||
|
.pagination-box.el-pagination.is-background .btn-next:hover,
|
||||||
|
.pagination-box.el-pagination.is-background .btn-prev:hover,
|
||||||
|
.pagination-box.el-pagination.is-background .el-pager li:hover{
|
||||||
|
color: rgba(38, 111, 255, 1);
|
||||||
|
}
|
||||||
|
.pagination-box.el-pagination.is-background .btn-next.is-active,
|
||||||
|
.pagination-box.el-pagination.is-background .btn-prev.is-active,
|
||||||
|
.pagination-box.el-pagination.is-background .el-pager li.is-active{
|
||||||
|
background: rgba(38, 111, 255, 1);
|
||||||
|
border: 1px solid rgba(38, 111, 255, 1);
|
||||||
|
color:#fff;
|
||||||
|
}
|
||||||
|
.pagination-box{
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
.patient-detail .el-scrollbar{
|
||||||
|
height: calc(100% - 420px);
|
||||||
|
}
|
||||||
|
.primary-view-profile{
|
||||||
|
width: 310px;
|
||||||
|
height: 50px;
|
||||||
|
background-color: rgba(38, 111, 255, 1);
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 16px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
border: 1px solid rgba(38, 111, 255, 1);
|
||||||
|
margin: auto;
|
||||||
|
}
|
||||||
|
.primary-view-profile:hover{
|
||||||
|
background-color: rgb(62, 126, 254);
|
||||||
|
border: 1px solid rgb(62, 126, 254);
|
||||||
|
}
|
||||||
|
.primary-view-profile.el-button{
|
||||||
|
margin-left: 20px;
|
||||||
|
margin-top: 10px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.creat-patient-box{
|
||||||
|
position: fixed;
|
||||||
|
z-index: 99;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100vw;
|
||||||
|
height: 100vh;
|
||||||
|
background: rgba(0, 0, 0, 0.7);
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
3001
frontend/src/renderer/src/views/Detection - 副本.vue
Normal file
3001
frontend/src/renderer/src/views/Detection - 副本.vue
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -14,16 +14,13 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div style="color:#fff;margin-right: 20px;">登录时间:{{ time }} </div>
|
<div style="color:#fff;margin-right: 20px;">登录时间:{{ time }} </div>
|
||||||
|
<div class="user-line"></div>
|
||||||
<div class="user-info">
|
<div class="user-info">
|
||||||
<img src="@/assets/svg/avatar.svg" alt="Avatar" style="width: 20px;height: 20px;">
|
<img src="@/assets/new/u13.png" alt="Avatar" style="width: 30px;height: 30px;">
|
||||||
<!-- <el-avatar :size="40" :src="userInfo.avatar">
|
|
||||||
<el-icon>
|
|
||||||
<User />
|
|
||||||
</el-icon>
|
|
||||||
</el-avatar> -->
|
|
||||||
<span class="username">{{ userInfo.name }}</span>
|
<span class="username">{{ userInfo.name }}</span>
|
||||||
<el-dropdown @command="handleUserCommand">
|
<div class="user-line"></div>
|
||||||
|
<span class="username user-return" @click="handleUserCommand">退出</span>
|
||||||
|
<!-- <el-dropdown @command="handleUserCommand">
|
||||||
<el-button link class="user-dropdown">
|
<el-button link class="user-dropdown">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<ArrowDown />
|
<ArrowDown />
|
||||||
@ -35,7 +32,7 @@
|
|||||||
<el-dropdown-item command="logout" divided>退出登录</el-dropdown-item>
|
<el-dropdown-item command="logout" divided>退出登录</el-dropdown-item>
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</template>
|
</template>
|
||||||
</el-dropdown>
|
</el-dropdown> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -86,18 +83,19 @@
|
|||||||
|
|
||||||
|
|
||||||
const handleUserCommand = (command) => {
|
const handleUserCommand = (command) => {
|
||||||
switch (command) {
|
|
||||||
case 'profile':
|
|
||||||
viewInfoClick()
|
|
||||||
// 个人信息
|
|
||||||
break
|
|
||||||
case 'settings':
|
|
||||||
// 系统设置
|
|
||||||
break
|
|
||||||
case 'logout':
|
|
||||||
handleLogout()
|
handleLogout()
|
||||||
break
|
// switch (command) {
|
||||||
}
|
// case 'profile':
|
||||||
|
// viewInfoClick()
|
||||||
|
// // 个人信息
|
||||||
|
// break
|
||||||
|
// case 'settings':
|
||||||
|
// // 系统设置
|
||||||
|
// break
|
||||||
|
// case 'logout':
|
||||||
|
// handleLogout()
|
||||||
|
// break
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
const dialogVisible =ref(false)
|
const dialogVisible =ref(false)
|
||||||
function viewInfoClick(){
|
function viewInfoClick(){
|
||||||
@ -214,7 +212,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.header {
|
.header {
|
||||||
height: 50px;
|
height: 60px;
|
||||||
background: #323232;
|
background: #323232;
|
||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -240,17 +238,18 @@
|
|||||||
width: 26px;
|
width: 26px;
|
||||||
height: 26px;
|
height: 26px;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
background: #0099ff;
|
background: rgba(38, 111, 255, 1);
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding-top: 3px;
|
padding-top: 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.system-title {
|
.system-title {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: 微软雅黑, sans-serif;
|
font-family: 'Noto Sans SC';
|
||||||
font-weight: 400;
|
font-weight: 700;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-size: 22px;
|
font-size: 22px;
|
||||||
|
color: #FFFFFF;
|
||||||
color: rgb(255, 255, 255);
|
color: rgb(255, 255, 255);
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -287,15 +286,15 @@
|
|||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
margin-left: 8px;
|
margin-left: 8px;
|
||||||
}
|
}
|
||||||
.badge-invalid { background-color: #8b0000; color: #fff; }
|
.badge-invalid { background-color: rgba(67, 67, 67, 1); color: #949494; }
|
||||||
.badge-trial { background-color: #ff8c00; color: #fff; }
|
.badge-trial { background-color: rgba(67, 67, 67, 1); color: #949494; }
|
||||||
.badge-valid { background-color: #2e8b57; color: #fff; }
|
.badge-valid { background-color: rgba(38, 111, 255, 1); color: #fff; }
|
||||||
.activate-btn {
|
.activate-btn {
|
||||||
margin-left: 8px;
|
margin-left: 8px;
|
||||||
padding: 2px 10px;
|
padding: 2px 10px;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
border: 1px solid #409EFF;
|
border: 1px solid rgba(38, 111, 255, 1);
|
||||||
background-color: #409EFF;
|
background-color: rgba(38, 111, 255, 1);
|
||||||
color: #fff;
|
color: #fff;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
@ -316,4 +315,15 @@
|
|||||||
box-shadow: 0 0 0 1px transparent inset;
|
box-shadow: 0 0 0 1px transparent inset;
|
||||||
border-color: transparent !important;
|
border-color: transparent !important;
|
||||||
}
|
}
|
||||||
|
.user-line{
|
||||||
|
width: 1px;
|
||||||
|
height: 15px;
|
||||||
|
margin: 0 10px;
|
||||||
|
background-color: #949494;
|
||||||
|
}
|
||||||
|
.user-return:hover{
|
||||||
|
cursor: pointer;
|
||||||
|
color: rgb(0, 140, 255);
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
@ -1,20 +1,20 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="login-page" :style="{ backgroundImage: `url(${bg})` }">
|
<div class="login-page" :style="{ backgroundImage: `url(${bg})` }">
|
||||||
|
|
||||||
<!-- 页面主内容 -->
|
<!-- 页面主内容 -->
|
||||||
<div class="login-content">
|
<div class="login-content">
|
||||||
<!-- 系统标题 -->
|
<!-- 系统标题 -->
|
||||||
|
<div style="margin-right: 150px;">
|
||||||
<h1 class="system-title">平衡体态检测系统</h1>
|
<h1 class="system-title">平衡体态检测系统</h1>
|
||||||
|
|
||||||
<!-- 登录页面 -->
|
<!-- 登录页面 -->
|
||||||
<el-card v-if="!isRegisterMode && !isForgotPasswordMode" class="login-card">
|
<el-card v-if="!isRegisterMode && !isForgotPasswordMode" class="login-card">
|
||||||
<div class="card-header">登录</div>
|
<div class="card-header">欢迎登录</div>
|
||||||
|
|
||||||
<el-form class="login-form">
|
<el-form class="login-form">
|
||||||
<!-- 账号输入框 -->
|
<!-- 账号输入框 -->
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<div class="input-box">
|
<div class="input-box">
|
||||||
<img src="@/assets/username.png" alt="" srcset="" height="30" style="margin-left: 10px;">
|
<img src="@/assets/new/u10.svg" alt="" srcset="" height="20" style="margin-left: 10px;">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="form.account"
|
v-model="form.account"
|
||||||
placeholder="请输入账号"
|
placeholder="请输入账号"
|
||||||
@ -27,7 +27,7 @@
|
|||||||
<!-- 密码输入框(带显示切换) -->
|
<!-- 密码输入框(带显示切换) -->
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<div class="input-box">
|
<div class="input-box">
|
||||||
<img src="@/assets/password.png" alt="" srcset="" height="30" style="margin-left: 10px;">
|
<img src="@/assets/new/u16.svg" alt="" srcset="" height="20" style="margin-left: 10px;">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="form.password"
|
v-model="form.password"
|
||||||
:type="passwordVisible ? 'text' : 'password'"
|
:type="passwordVisible ? 'text' : 'password'"
|
||||||
@ -57,11 +57,13 @@
|
|||||||
<!-- 操作按钮 -->
|
<!-- 操作按钮 -->
|
||||||
<div class="button-group">
|
<div class="button-group">
|
||||||
<el-button type="primary" class="login-btn" @click="handleLogin" :loading="isLoading">{{ isLoading ? '登录中...' : '登录' }}</el-button>
|
<el-button type="primary" class="login-btn" @click="handleLogin" :loading="isLoading">{{ isLoading ? '登录中...' : '登录' }}</el-button>
|
||||||
<el-button class="register-btn" @click="switchToRegister">注册</el-button>
|
<!-- <el-button class="register-btn" @click="switchToRegister">注册</el-button> -->
|
||||||
|
</div>
|
||||||
|
<div style="display:flex ;justify-content: flex-end;width: 100%;margin-top: 10px;">
|
||||||
|
<span class="register-btn" @click="switchToRegister">注册</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<!-- 注册页面 -->
|
<!-- 注册页面 -->
|
||||||
<el-card v-if="isRegisterMode && !isForgotPasswordMode" class="register-card">
|
<el-card v-if="isRegisterMode && !isForgotPasswordMode" class="register-card">
|
||||||
<div class="card-header">注册</div>
|
<div class="card-header">注册</div>
|
||||||
@ -140,7 +142,6 @@
|
|||||||
<button class="submit-btn" @click="handleRegisterSubmit">注册</button>
|
<button class="submit-btn" @click="handleRegisterSubmit">注册</button>
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<!-- 忘记密码页面 -->
|
<!-- 忘记密码页面 -->
|
||||||
<el-card v-if="isForgotPasswordMode" class="forgot-password-card">
|
<el-card v-if="isForgotPasswordMode" class="forgot-password-card">
|
||||||
<div class="card-header">找回密码</div>
|
<div class="card-header">找回密码</div>
|
||||||
@ -188,6 +189,10 @@
|
|||||||
</el-card>
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- 自定义错误提示弹窗 -->
|
<!-- 自定义错误提示弹窗 -->
|
||||||
<div v-if="showErrorDialog" class="error-dialog-overlay" @click="closeErrorDialog">
|
<div v-if="showErrorDialog" class="error-dialog-overlay" @click="closeErrorDialog">
|
||||||
<div class="error-dialog" @click.stop>
|
<div class="error-dialog" @click.stop>
|
||||||
@ -216,7 +221,7 @@ import { ElMessage } from 'element-plus'
|
|||||||
import { useAuthStore } from '../stores'
|
import { useAuthStore } from '../stores'
|
||||||
import { User, Lock, View, Hide, Phone } from '@element-plus/icons-vue'
|
import { User, Lock, View, Hide, Phone } from '@element-plus/icons-vue'
|
||||||
|
|
||||||
import bg from '@/assets/bg.png'
|
import bg from '@/assets/new/newbg.jpg'
|
||||||
import { getBackendUrl,systemAPI } from '../services/api.js'
|
import { getBackendUrl,systemAPI } from '../services/api.js'
|
||||||
const BACKEND_URL = getBackendUrl()
|
const BACKEND_URL = getBackendUrl()
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
@ -665,58 +670,58 @@ const copyPassword = async () => {
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
/* flex-direction: column; */
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: flex-end;
|
||||||
padding: 0 20px;
|
padding: 0 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 系统标题 */
|
/* 系统标题 */
|
||||||
.system-title {
|
.system-title {
|
||||||
font-size: 2rem;
|
text-align: center;
|
||||||
color: #00ffff;
|
font-family: "阿里妈妈数黑体 Bold", 阿里妈妈数黑体, sans-serif;
|
||||||
text-shadow: 0 0 15px rgba(0, 255, 255, 0.8);
|
font-weight: 700;
|
||||||
margin-bottom: 2.5rem;
|
font-style: normal;
|
||||||
|
font-size: 40px;
|
||||||
|
color: rgb(255, 255, 255);
|
||||||
|
margin-bottom: 30px;
|
||||||
letter-spacing: 2px;
|
letter-spacing: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 登录卡片 */
|
/* 登录卡片 */
|
||||||
.login-card {
|
.login-card {
|
||||||
width: 482px;
|
width: 482px;
|
||||||
height: 471px;
|
height: 450px;
|
||||||
background: inherit;
|
background-color: #1D1C21;
|
||||||
background-color: rgba(10, 68, 131, 0.9);
|
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border-width: 3px;
|
border-width: 3px;
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-color: rgba(11, 92, 168, 1);
|
border-color: #1D1C21;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
padding: 40px 25px 0;
|
padding: 40px 25px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 注册卡片 */
|
/* 注册卡片 */
|
||||||
.register-card {
|
.register-card {
|
||||||
width: 100%;
|
width: 482px;
|
||||||
max-width: 450px;
|
background-color: #1D1C21;
|
||||||
background-color: #003366 !important;
|
box-sizing: border-box;
|
||||||
border: none !important;
|
border-width: 3px;
|
||||||
border-radius: 12px !important;
|
border-style: solid;
|
||||||
box-shadow: 0 0 30px rgba(0, 255, 255, 0.2);
|
border-color: #1D1C21;
|
||||||
|
border-radius: 5px;
|
||||||
padding: 30px 25px !important;
|
padding: 30px 25px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 卡片头部标题 */
|
/* 卡片头部标题 */
|
||||||
.card-header {
|
.card-header {
|
||||||
/* font-size: 1.4rem;
|
font-family: 微软雅黑, sans-serif;
|
||||||
color: #00ffff;
|
font-weight: 400;
|
||||||
text-align: center;
|
|
||||||
margin-bottom: 25px; */
|
|
||||||
|
|
||||||
font-size: 24px;
|
|
||||||
font-family: 'Arial Negreta', 'Arial Normal', 'Arial', sans-serif;
|
|
||||||
font-weight: 700;
|
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
color: #00FFFF;
|
font-size: 30px;
|
||||||
|
color: rgb(255, 255, 255);
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 登录表单 */
|
/* 登录表单 */
|
||||||
@ -741,7 +746,7 @@ const copyPassword = async () => {
|
|||||||
}
|
}
|
||||||
/* 密码显示图标 */
|
/* 密码显示图标 */
|
||||||
.password-icon {
|
.password-icon {
|
||||||
color: #00ffff !important;
|
color: #cccccc !important;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
padding: 0 8px;
|
padding: 0 8px;
|
||||||
}
|
}
|
||||||
@ -769,7 +774,7 @@ const copyPassword = async () => {
|
|||||||
|
|
||||||
/* 忘记密码链接 */
|
/* 忘记密码链接 */
|
||||||
.forgot-link {
|
.forgot-link {
|
||||||
color: #00ffff;
|
color: #ffffff;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
.forgot-link:hover {
|
.forgot-link:hover {
|
||||||
@ -785,30 +790,28 @@ const copyPassword = async () => {
|
|||||||
/* 登录按钮 */
|
/* 登录按钮 */
|
||||||
.login-btn {
|
.login-btn {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
background-color: #00ffff !important;
|
background-color: #266fff !important;
|
||||||
border-color: #00ffff !important;
|
border-color: #266fff !important;
|
||||||
color: #003366 !important;
|
color: #fff !important;
|
||||||
font-weight: 500 !important;
|
font-weight: 500 !important;
|
||||||
border-radius: 6px !important;
|
border-radius: 6px !important;
|
||||||
|
height: 50px;
|
||||||
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
.login-btn:hover {
|
.login-btn:hover {
|
||||||
background-color: #00e6e6 !important;
|
background-color: #266fff !important;
|
||||||
border-color: #00e6e6 !important;
|
border-color: #266fff !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 注册按钮 */
|
/* 注册按钮 */
|
||||||
.register-btn {
|
.register-btn {
|
||||||
flex: 1;
|
font-family: 微软雅黑, sans-serif;
|
||||||
background-color: transparent !important;
|
font-weight: 400;
|
||||||
border-color: #00ffff !important;
|
font-style: normal;
|
||||||
color: #00ffff !important;
|
font-size: 14px;
|
||||||
font-weight: 500 !important;
|
color: rgb(255, 255, 255);
|
||||||
border-radius: 6px !important;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
.register-btn:hover {
|
|
||||||
background-color: #004080 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 自定义错误弹窗样式 */
|
/* 自定义错误弹窗样式 */
|
||||||
.error-dialog-overlay {
|
.error-dialog-overlay {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
@ -825,10 +828,10 @@ const copyPassword = async () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.error-dialog {
|
.error-dialog {
|
||||||
background-color: #003366;
|
background-color: #1D1C21;
|
||||||
border: 2px solid #00ffff;
|
border: 2px solid #1D1C29;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
box-shadow: 0 0 30px rgba(0, 255, 255, 0.3);
|
box-shadow: 0 0 30px 1D1C29;
|
||||||
min-width: 400px;
|
min-width: 400px;
|
||||||
max-width: 500px;
|
max-width: 500px;
|
||||||
animation: dialogFadeIn 0.3s ease-out;
|
animation: dialogFadeIn 0.3s ease-out;
|
||||||
@ -850,19 +853,19 @@ const copyPassword = async () => {
|
|||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding: 20px 25px 15px;
|
padding: 20px 25px 15px;
|
||||||
border-bottom: 1px solid rgba(0, 255, 255, 0.2);
|
border-bottom: 1px solid rgba(0, 136, 255, 0.2);
|
||||||
}
|
}
|
||||||
|
|
||||||
.dialog-title {
|
.dialog-title {
|
||||||
font-size: 1.2rem;
|
font-size: 1.2rem;
|
||||||
color: #00ffff;
|
color: #fff;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
.close-btn {
|
.close-btn {
|
||||||
background: none;
|
background: none;
|
||||||
border: none;
|
border: none;
|
||||||
color: #00ffff;
|
color: #ffffff;
|
||||||
font-size: 1.5rem;
|
font-size: 1.5rem;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
@ -876,7 +879,7 @@ const copyPassword = async () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.close-btn:hover {
|
.close-btn:hover {
|
||||||
background-color: rgba(0, 255, 255, 0.1);
|
background-color: rgba(0, 140, 255, 0.1);
|
||||||
transform: scale(1.1);
|
transform: scale(1.1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -916,17 +919,14 @@ const copyPassword = async () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.confirm-btn {
|
.confirm-btn {
|
||||||
background-color: #00ffff;
|
background-color: #266fff ;
|
||||||
border-color: #00ffff;
|
border-color: #266fff ;
|
||||||
color: #003366;
|
color: #fff;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
.confirm-btn:hover {
|
.confirm-btn:hover {
|
||||||
background-color: #00e6e6;
|
|
||||||
border-color: #00e6e6;
|
|
||||||
transform: translateY(-1px);
|
transform: translateY(-1px);
|
||||||
box-shadow: 0 2px 8px rgba(0, 255, 255, 0.3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 注册表单样式 */
|
/* 注册表单样式 */
|
||||||
@ -942,20 +942,25 @@ const copyPassword = async () => {
|
|||||||
position: relative;
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
background-color: #004080;
|
background: transparent;
|
||||||
border: 1px solid #00ffff;
|
color: #fff;
|
||||||
border-radius: 6px;
|
font-size: 16px;
|
||||||
|
height: 49px;
|
||||||
|
/* background-color: #004080;
|
||||||
|
|
||||||
|
border-radius: 6px; */
|
||||||
|
border: 1px solid rgb(67, 67, 67);
|
||||||
padding: 0 15px;
|
padding: 0 15px;
|
||||||
transition: all 0.2s ease;
|
transition: all 0.2s ease;
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-wrapper:focus-within {
|
.input-wrapper:focus-within {
|
||||||
border-color: #00e6e6;
|
border-color: #cccccc;
|
||||||
box-shadow: 0 0 8px rgba(0, 255, 255, 0.3);
|
box-shadow: 0 0 8px rgba(0, 255, 255, 0.3);
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-icon {
|
.input-icon {
|
||||||
color: #00ffff;
|
color: #cccccc;
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
@ -975,7 +980,7 @@ const copyPassword = async () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.password-toggle {
|
.password-toggle {
|
||||||
color: #00ffff;
|
color: #cccccc;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
@ -983,7 +988,7 @@ const copyPassword = async () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.password-toggle:hover {
|
.password-toggle:hover {
|
||||||
color: #00e6e6;
|
color: #cccccc;
|
||||||
transform: scale(1.1);
|
transform: scale(1.1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1008,36 +1013,35 @@ const copyPassword = async () => {
|
|||||||
|
|
||||||
.back-btn {
|
.back-btn {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-color: #00ffff;
|
border-color: #266fff;
|
||||||
color: #00ffff;
|
color: #266fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.back-btn:hover {
|
.back-btn:hover {
|
||||||
background-color: #004080;
|
/* background-color: #004080;
|
||||||
|
*/
|
||||||
transform: translateY(-1px);
|
transform: translateY(-1px);
|
||||||
}
|
}
|
||||||
|
|
||||||
.submit-btn {
|
.submit-btn {
|
||||||
background-color: #00ffff;
|
background-color: #266fff;
|
||||||
border-color: #00ffff;
|
border-color: #266fff;
|
||||||
color: #003366;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.submit-btn:hover {
|
.submit-btn:hover {
|
||||||
background-color: #00e6e6;
|
|
||||||
border-color: #00e6e6;
|
|
||||||
transform: translateY(-1px);
|
transform: translateY(-1px);
|
||||||
box-shadow: 0 2px 8px rgba(0, 255, 255, 0.3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 忘记密码页面样式 */
|
/* 忘记密码页面样式 */
|
||||||
.forgot-password-card {
|
.forgot-password-card {
|
||||||
width: 100%;
|
width: 482px;
|
||||||
max-width: 450px;
|
background-color: #1D1C21;
|
||||||
background-color: #003366 !important;
|
box-sizing: border-box;
|
||||||
border: none !important;
|
border-width: 3px;
|
||||||
border-radius: 12px !important;
|
border-style: solid;
|
||||||
box-shadow: 0 0 30px rgba(0, 255, 255, 0.2);
|
border-color: #1D1C21;
|
||||||
|
border-radius: 5px;
|
||||||
padding: 30px 25px !important;
|
padding: 30px 25px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1124,16 +1128,12 @@ const copyPassword = async () => {
|
|||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
transition: all 0.2s ease;
|
transition: all 0.2s ease;
|
||||||
border: 1px solid;
|
border: 1px solid;
|
||||||
background-color: #00ffff;
|
background-color: #266fff;
|
||||||
border-color: #00ffff;
|
border-color: #266fff;
|
||||||
color: #003366;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.confirm-btn:hover {
|
.confirm-btn:hover {
|
||||||
background-color: #00e6e6;
|
|
||||||
border-color: #00e6e6;
|
|
||||||
transform: translateY(-1px);
|
transform: translateY(-1px);
|
||||||
box-shadow: 0 2px 8px rgba(0, 255, 255, 0.3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-box{
|
.input-box{
|
||||||
@ -1143,9 +1143,9 @@ const copyPassword = async () => {
|
|||||||
height: 49px;
|
height: 49px;
|
||||||
background-color: rgba(255, 255, 255, 0);
|
background-color: rgba(255, 255, 255, 0);
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border-width: 2px;
|
border-width: 1px;
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-color: rgba(0, 153, 204, 1);
|
border-color: rgb(67, 67, 67);
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@ -1171,7 +1171,7 @@ const copyPassword = async () => {
|
|||||||
|
|
||||||
.login-card .el-button{
|
.login-card .el-button{
|
||||||
padding: 12px 20px !important;
|
padding: 12px 20px !important;
|
||||||
height: 40px;
|
height: 50px;
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
@ -1,28 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="patient-create-container">
|
<div class="patient-create-container">
|
||||||
<Header />
|
|
||||||
<div class="nav-container">
|
|
||||||
<div class="nav-container-title" @click="goBack">
|
|
||||||
<img src="@/assets/svg/goback.svg" alt="">
|
|
||||||
<div style="margin-left: 20px;">
|
|
||||||
建档页
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="nav-container-info">
|
|
||||||
<!-- <div>测试时间:2025-08-03 17:13:18<span></span></div>
|
|
||||||
<div style="margin-left: 15px;">测试医生:<span>李医生</span></div> -->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 表单内容 -->
|
<!-- 表单内容 -->
|
||||||
<div class="form-container">
|
<div class="form-container">
|
||||||
|
<div class="form-container-header">
|
||||||
|
<div>新建患者信息</div>
|
||||||
|
<img src="@/assets/new/u264.svg" alt="" style="cursor: pointer;" @click="handleCancel">
|
||||||
|
</div>
|
||||||
<el-form ref="patientFormRef" :model="patientForm" :rules="formRules" label-width="120px" class="patient-form">
|
<el-form ref="patientFormRef" :model="patientForm" :rules="formRules" label-width="120px" class="patient-form">
|
||||||
<div class="form-section">
|
<div class="form-section">
|
||||||
<div class="section-title">
|
|
||||||
<div class="section-title-text">
|
|
||||||
基本信息
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="测试者ID" prop="testerId">
|
<el-form-item label="测试者ID" prop="testerId">
|
||||||
@ -30,10 +15,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
<el-form-item label="患者姓名" prop="name" required>
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="姓名" prop="name" required>
|
|
||||||
<el-input v-model="patientForm.name" placeholder="请输入" clearable />
|
<el-input v-model="patientForm.name" placeholder="请输入" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -65,7 +47,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="长期居住地" prop="residence">
|
<el-form-item label="居住地" prop="residence">
|
||||||
<el-input v-model="patientForm.residence" placeholder="请输入" clearable />
|
<el-input v-model="patientForm.residence" placeholder="请输入" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -87,9 +69,6 @@
|
|||||||
<el-form-item label="鞋码" prop="shoe_size">
|
<el-form-item label="鞋码" prop="shoe_size">
|
||||||
<el-input v-model="patientForm.shoe_size" placeholder="请输入" clearable />
|
<el-input v-model="patientForm.shoe_size" placeholder="请输入" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="电话号码" prop="phone" required>
|
<el-form-item label="电话号码" prop="phone" required>
|
||||||
@ -110,43 +89,52 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="单位" prop="workplace">
|
<el-form-item label="证件号" prop="workplace">
|
||||||
<el-input v-model="patientForm.workplace" placeholder="请输入" clearable />
|
<el-input v-model="patientForm.workplace" placeholder="请输入" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
<div class="form-actions-display">
|
||||||
<!-- 底部操作按钮 -->
|
<el-button @click="handleCancel" class="formreturnCancel">退出</el-button>
|
||||||
<div class="footer-actions">
|
<el-button type="primary" :loading="saveLoading" @click="handleSave"
|
||||||
<el-button @click="handleCancel">退出</el-button>
|
class="formsaveCancel">
|
||||||
<el-button type="primary" :loading="saveLoading" @click="handleSave">
|
|
||||||
保存
|
保存
|
||||||
</el-button>
|
</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<!-- 底部操作按钮 -->
|
||||||
|
<!-- <div class="footer-actions">
|
||||||
<el-button type="success" :loading="saveAndDetectLoading" @click="handleSaveAndDetect">
|
<el-button type="success" :loading="saveAndDetectLoading" @click="handleSaveAndDetect">
|
||||||
保存并开始检测
|
保存并开始检测
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, reactive, computed } from 'vue'
|
import { ref, reactive, computed, onMounted } from 'vue'
|
||||||
import { useRouter } from 'vue-router'
|
import { useRouter } from 'vue-router'
|
||||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||||
import { patientAPI } from '../services/api.js'
|
import { patientAPI } from '../services/api.js'
|
||||||
import Header from '@/views/Header.vue'
|
const emit = defineEmits([ 'closecreatbox']);
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
|
const props = defineProps({
|
||||||
|
selectedPatient: {
|
||||||
|
required: false,
|
||||||
|
type: Object,
|
||||||
|
default: null
|
||||||
|
},
|
||||||
|
patienttype: {
|
||||||
|
required: false,
|
||||||
|
type: String,
|
||||||
|
default: null
|
||||||
|
},
|
||||||
|
})
|
||||||
// 表单引用
|
// 表单引用
|
||||||
const patientFormRef = ref()
|
const patientFormRef = ref()
|
||||||
|
|
||||||
// 加载状态
|
|
||||||
const saveLoading = ref(false)
|
|
||||||
const saveAndDetectLoading = ref(false)
|
|
||||||
|
|
||||||
// 表单数据
|
// 表单数据
|
||||||
const patientForm = reactive({
|
const patientForm = reactive({
|
||||||
id: '',
|
id: '',
|
||||||
@ -163,6 +151,19 @@ const patientForm = reactive({
|
|||||||
workplace: '',
|
workplace: '',
|
||||||
email: ''
|
email: ''
|
||||||
})
|
})
|
||||||
|
// 加载状态
|
||||||
|
const saveLoading = ref(false)
|
||||||
|
const saveAndDetectLoading = ref(false)
|
||||||
|
// 生命周期
|
||||||
|
onMounted(() => {
|
||||||
|
// 从认证状态管理中加载用户信息
|
||||||
|
if (props.patienttype == 'edit') {
|
||||||
|
Object.assign(patientForm, props.selectedPatient)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
const occupationOptions = ref(["学生", "教师", "医生", "护士", "工程师", "程序员", "设计师",
|
const occupationOptions = ref(["学生", "教师", "医生", "护士", "工程师", "程序员", "设计师",
|
||||||
"会计师", "律师", "警察", "消防员", "军人", "公务员", "销售", "市场营销",
|
"会计师", "律师", "警察", "消防员", "军人", "公务员", "销售", "市场营销",
|
||||||
"人力资源", "行政", "财务", "咨询师", "建筑师", "科研人员", "记者", "编辑",
|
"人力资源", "行政", "财务", "咨询师", "建筑师", "科研人员", "记者", "编辑",
|
||||||
@ -206,10 +207,6 @@ const formRules = {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
// 方法
|
|
||||||
const goBack = () => {
|
|
||||||
router.go(-1)
|
|
||||||
}
|
|
||||||
const calculatedAge = ref('')
|
const calculatedAge = ref('')
|
||||||
// 实现年龄计算方法 calculateAgeres
|
// 实现年龄计算方法 calculateAgeres
|
||||||
const calculateAgeres = (date) => {
|
const calculateAgeres = (date) => {
|
||||||
@ -224,27 +221,7 @@ const calculateAgeres = (date) => {
|
|||||||
calculatedAge.value = age
|
calculatedAge.value = age
|
||||||
}
|
}
|
||||||
const handleCancel = async () => {
|
const handleCancel = async () => {
|
||||||
// 检查是否有未保存的数据
|
emit('closecreatbox',false)
|
||||||
const hasData = Object.values(patientForm).some(value => value !== '')
|
|
||||||
|
|
||||||
if (hasData) {
|
|
||||||
try {
|
|
||||||
await ElMessageBox.confirm(
|
|
||||||
'您有未保存的数据,确定要退出吗?',
|
|
||||||
'提示',
|
|
||||||
{
|
|
||||||
confirmButtonText: '确定退出',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}
|
|
||||||
)
|
|
||||||
router.go(-1)
|
|
||||||
} catch {
|
|
||||||
// 用户取消
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
router.go(-1)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const validateForm = async () => {
|
const validateForm = async () => {
|
||||||
@ -263,6 +240,7 @@ const savePatient = async () => {
|
|||||||
const genderValue = genderMap[patientForm.gender] || patientForm.gender
|
const genderValue = genderMap[patientForm.gender] || patientForm.gender
|
||||||
|
|
||||||
const patientData = {
|
const patientData = {
|
||||||
|
id: patientForm.id,
|
||||||
name: patientForm.name,
|
name: patientForm.name,
|
||||||
gender: genderValue,
|
gender: genderValue,
|
||||||
birth_date: patientForm.birth_date,
|
birth_date: patientForm.birth_date,
|
||||||
@ -282,7 +260,9 @@ const savePatient = async () => {
|
|||||||
try {
|
try {
|
||||||
const response = await patientAPI.create(patientData)
|
const response = await patientAPI.create(patientData)
|
||||||
if (response.success) {
|
if (response.success) {
|
||||||
|
emit('closecreatbox',true)
|
||||||
return response.data
|
return response.data
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
throw new Error(response.message || '保存失败')
|
throw new Error(response.message || '保存失败')
|
||||||
}
|
}
|
||||||
@ -325,10 +305,20 @@ const handleSaveAndDetect = async () => {
|
|||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.patient-create-container {
|
.patient-create-container {
|
||||||
height: 100vh;
|
width: 800px;
|
||||||
|
height:620px;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
margin: auto;
|
||||||
|
background: #1b1b1b;
|
||||||
|
|
||||||
|
/* height: 100vh;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
background: #000000;
|
background: #000000; */
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-container {
|
.nav-container {
|
||||||
@ -339,7 +329,7 @@ const handleSaveAndDetect = async () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.nav-container-title {
|
.nav-container-title {
|
||||||
font-family: 'Arial Negreta', 'Arial Normal', 'Arial', sans-serif;
|
font-family: 'Noto Sans SC';
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
@ -353,7 +343,7 @@ const handleSaveAndDetect = async () => {
|
|||||||
display: flex;
|
display: flex;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
font-family: 'Arial Normal', 'Arial', sans-serif;
|
font-family: 'Noto Sans SC';
|
||||||
}
|
}
|
||||||
|
|
||||||
.back-btn {
|
.back-btn {
|
||||||
@ -376,16 +366,11 @@ const handleSaveAndDetect = async () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.form-container {
|
.form-container {
|
||||||
overflow-y: auto;
|
|
||||||
padding: 20px 20px 0px;
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.patient-form {
|
.patient-form {
|
||||||
max-width: 1000px;
|
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
background: #333333;
|
|
||||||
border-radius: 8px;
|
|
||||||
padding: 30px;
|
padding: 30px;
|
||||||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
||||||
}
|
}
|
||||||
@ -446,20 +431,16 @@ const handleSaveAndDetect = async () => {
|
|||||||
|
|
||||||
:deep(.el-form-item__label) {
|
:deep(.el-form-item__label) {
|
||||||
font-size: 14px !important;
|
font-size: 14px !important;
|
||||||
font-family: '苹方 粗体', '苹方 中等', '苹方', sans-serif !important;
|
font-family: 'Noto Sans SC';
|
||||||
font-weight: 700 !important;
|
font-weight: 700 !important;
|
||||||
font-style: normal !important;
|
font-style: normal !important;
|
||||||
color: #FFFFFF !important;
|
color: #787878 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-form-item__content) {
|
:deep(.el-form-item__content) {
|
||||||
line-height: 32px;
|
line-height: 32px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-input__wrapper) {
|
|
||||||
border-radius: 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-textarea__inner) {
|
:deep(.el-textarea__inner) {
|
||||||
border-radius: 6px;
|
border-radius: 6px;
|
||||||
}
|
}
|
||||||
@ -484,39 +465,42 @@ const handleSaveAndDetect = async () => {
|
|||||||
margin-right: 4px;
|
margin-right: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-input__wrapper) {
|
.patient-create-container :deep(.el-input__wrapper) {
|
||||||
background-color: rgba(51, 51, 51, 1);
|
background-color: #282828;
|
||||||
border-width: 1px;
|
border-width: 1px;
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-color: rgba(127, 127, 127, 1);
|
border-color: rgb(54, 54, 54);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
|
height: 40px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-select__wrapper) {
|
:deep(.el-select__wrapper) {
|
||||||
background-color: rgba(51, 51, 51, 1);
|
background-color: #282828;
|
||||||
border-width: 1px;
|
border-width: 1px;
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-color: rgba(127, 127, 127, 1);
|
border-color: rgb(54, 54, 54);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
|
height: 40px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-form-item__label) {
|
:deep(.el-form-item__label) {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-family: '苹方 粗体', '苹方 中等', '苹方', sans-serif;
|
font-family: 'Noto Sans SC';
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-col-12) {
|
:deep(.el-col-12) {
|
||||||
margin-bottom: 15px;
|
margin-bottom: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-input__inner) {
|
:deep(.el-input__inner) {
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
|
height: 40px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-select__placeholder) {
|
:deep(.el-select__placeholder) {
|
||||||
@ -553,4 +537,54 @@ const handleSaveAndDetect = async () => {
|
|||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
border: 1px solid #f56c6c;
|
border: 1px solid #f56c6c;
|
||||||
}
|
}
|
||||||
|
.form-container-header{
|
||||||
|
width: 100%;
|
||||||
|
height: 50px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
background-color: rgba(46, 52, 59, 1);
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 20px;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 16px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
.form-actions-display{
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
padding-right: 40px;
|
||||||
|
}
|
||||||
|
.formreturnCancel{
|
||||||
|
width: 80px;
|
||||||
|
height: 40px;
|
||||||
|
background: #313131;
|
||||||
|
border: 1px solid rgb(148, 148, 148);
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 14px;
|
||||||
|
color: rgb(148, 148, 148);
|
||||||
|
}
|
||||||
|
.formreturnCancel:hover{
|
||||||
|
background: #1e2c49;
|
||||||
|
color: #266fff;
|
||||||
|
border: 1px solid #266fff;
|
||||||
|
}
|
||||||
|
.formsaveCancel{
|
||||||
|
width: 80px;
|
||||||
|
height: 40px;
|
||||||
|
background: #266fff;
|
||||||
|
font-family: 'Noto Sans SC';
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 14px;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
.el-date-editor.el-input{
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user