From 95cdd967ccb5bfeeed544d09538cb5b4c61a7498 Mon Sep 17 00:00:00 2001 From: limengnan <420004014@qq.com> Date: Wed, 3 Dec 2025 17:05:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=A3=80=E6=9F=A5=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../renderer/src/assets/detection/archive.png | Bin 0 -> 402 bytes .../src/renderer/src/assets/detection/big.png | Bin 0 -> 457 bytes .../src/assets/detection/calibration.png | Bin 0 -> 447 bytes .../renderer/src/assets/detection/close.png | Bin 0 -> 271 bytes .../src/assets/{new => detection}/conduct.png | Bin .../src/assets/detection/endvideo.png | Bin 0 -> 670 bytes .../src/assets/detection/no-image.png | Bin 0 -> 1870 bytes .../src/assets/detection/progress.png | Bin 0 -> 452 bytes .../renderer/src/assets/detection/refresh.png | Bin 0 -> 470 bytes .../src/assets/detection/refresh_active.png | Bin 0 -> 504 bytes .../src/assets/detection/screenshot.png | Bin 0 -> 565 bytes .../src/assets/detection/settings.png | Bin 0 -> 433 bytes .../src/assets/detection/startvideo.png | Bin 0 -> 674 bytes .../renderer/src/assets/detection/title1.png | Bin 0 -> 456 bytes .../renderer/src/assets/detection/title2.png | Bin 0 -> 566 bytes .../src/assets/detection/useravatar.svg | 11 + .../src/assets/detection/useredit.png | Bin 0 -> 294 bytes .../src/assets/detection/userinfo.png | Bin 0 -> 372 bytes .../renderer/src/assets/detection/zero.png | Bin 0 -> 383 bytes .../src/renderer/src/assets/new/conduct.svg | 7 - .../src/renderer/src/assets/new/endvideo.svg | 6 - .../src/renderer/src/assets/new/jietu.svg | 6 - .../renderer/src/assets/new/startvideo.svg | 6 - .../renderer/src/assets/new/testheader.png | Bin 39420 -> 0 bytes .../src/renderer/src/assets/new/title2.svg | 6 - .../renderer/src/assets/new/useravatar.svg | 6 - frontend/src/renderer/src/views/Detection.vue | 438 ++++++++++++------ frontend/src/renderer/src/views/Header.vue | 59 +-- frontend/src/renderer/src/views/ViewUser.vue | 291 ++++++++++++ frontend/src/renderer/src/views/model.vue | 5 +- 30 files changed, 633 insertions(+), 208 deletions(-) create mode 100644 frontend/src/renderer/src/assets/detection/archive.png create mode 100644 frontend/src/renderer/src/assets/detection/big.png create mode 100644 frontend/src/renderer/src/assets/detection/calibration.png create mode 100644 frontend/src/renderer/src/assets/detection/close.png rename frontend/src/renderer/src/assets/{new => detection}/conduct.png (100%) create mode 100644 frontend/src/renderer/src/assets/detection/endvideo.png create mode 100644 frontend/src/renderer/src/assets/detection/no-image.png create mode 100644 frontend/src/renderer/src/assets/detection/progress.png create mode 100644 frontend/src/renderer/src/assets/detection/refresh.png create mode 100644 frontend/src/renderer/src/assets/detection/refresh_active.png create mode 100644 frontend/src/renderer/src/assets/detection/screenshot.png create mode 100644 frontend/src/renderer/src/assets/detection/settings.png create mode 100644 frontend/src/renderer/src/assets/detection/startvideo.png create mode 100644 frontend/src/renderer/src/assets/detection/title1.png create mode 100644 frontend/src/renderer/src/assets/detection/title2.png create mode 100644 frontend/src/renderer/src/assets/detection/useravatar.svg create mode 100644 frontend/src/renderer/src/assets/detection/useredit.png create mode 100644 frontend/src/renderer/src/assets/detection/userinfo.png create mode 100644 frontend/src/renderer/src/assets/detection/zero.png delete mode 100644 frontend/src/renderer/src/assets/new/conduct.svg delete mode 100644 frontend/src/renderer/src/assets/new/endvideo.svg delete mode 100644 frontend/src/renderer/src/assets/new/jietu.svg delete mode 100644 frontend/src/renderer/src/assets/new/startvideo.svg delete mode 100644 frontend/src/renderer/src/assets/new/testheader.png delete mode 100644 frontend/src/renderer/src/assets/new/title2.svg delete mode 100644 frontend/src/renderer/src/assets/new/useravatar.svg create mode 100644 frontend/src/renderer/src/views/ViewUser.vue diff --git a/frontend/src/renderer/src/assets/detection/archive.png b/frontend/src/renderer/src/assets/detection/archive.png new file mode 100644 index 0000000000000000000000000000000000000000..861b0288d76b3f60880a12cb953b93a0799dd831 GIT binary patch literal 402 zcmV;D0d4+?P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0VhdBK~y+TrIImE z0znXkcP|JF6>9m|G1k#J7=`^QyWfM;42gvY}IaS?t}P8 w`ZNA-zzt@B?+tbrIzdk)Z~Y$Ze4ANs3EGGiy$s{n+a07*qoM6N<$f^B)B&;S4c literal 0 HcmV?d00001 diff --git a/frontend/src/renderer/src/assets/detection/big.png b/frontend/src/renderer/src/assets/detection/big.png new file mode 100644 index 0000000000000000000000000000000000000000..6a3ecc962c2cafc81fe8c4c9d669268ebeb763cb GIT binary patch literal 457 zcmV;)0XF`LP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0bWT&K~y+Tm69P( z13?gldzT6XvZAsAfv7lvKp-mk36%&WmVbalA}SGx3giWiC!CJV}xlnaDrVG<~*-8W`x} zYbnQk80Y>~;nRo+hx>S$i7?!y_J!W@p^C%k2$UAJkI z4%*nu0tj6=hnE<3T$XtsZ2|`_#ev}(j=ZcupF!_iJG*44-@y^QE7B^s@dv^JW+pi5 z3w*)yJ2%13O~QhxMdILyH*n(S3eZpBd#qQ2W*d`UASbsUM(|->?!8NEAP(W4m#Xy= zuPk7{D%7B!Q9k8Eox(TEwX0D1QK*|V4~eJ5KCvyG`~bdDA8Q6KqYG>U&1leGftb0V zw=O@Y4*H#y4;IhqM=C)*vql8;>~2;FAPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0aQsuK~y+TeUhP1 zLQxcldF}-QfnXrG8TAh^5d0Ig8R!}e1cHHJU^5U11Ot(o3tPNzJlnT>?mg#s&pG$K(k5Fjm*;R5+yAX7ik#$2c)?GG{|;T;N~9&rVpUXw z5pE^RvK#z8{2DyKX`CO!2mX(dWTj`g_2$?Q;Ss+a`)imO4_TV031bgg55V^3Fbf(X z_VRAXlF*ym5meNJ6F7qlm=mkAHekFG`FabmHL;SSCwPN8OyC~+T%dKf(C$JGKEw`u z!8TOEdFt>9tGI8XCRMffCI@9!XKI0MxmtZetj2l-(&HwLM#Pj8^20 zV30&wRPs@rAqOAAnfwuK(VRB>8LMOb8VCCXtm30swGVe-dsb3(80qUq!0+g%@IxoV ppTYolz0xKlv4db3+doz+eFHj}qkiyF(|Z5_002ovPDHLkV1m=bw_X4M literal 0 HcmV?d00001 diff --git a/frontend/src/renderer/src/assets/detection/close.png b/frontend/src/renderer/src/assets/detection/close.png new file mode 100644 index 0000000000000000000000000000000000000000..c3c3e4fcf6c211fdfddf2d0fe3072c3f3db21872 GIT binary patch literal 271 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh1|;P@bT0xa#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*bKn;gMnDKc2iWH#W5>FS$5DWj_Nrrrf9C%oYJJ^@|%%7yB>Uv5$ z=mUe?0pSWpq4N%HcQbVTPN+$~Oga8K&@a%+IJ)3ip8B1mJ2%a|&rljPt!b;{?y3Cl zCh5FEl9B7@a?AE!PdN1?q)4eUxG1V}`;#3$MlToqI_*5w##>YWtL59Tf6lJyN{-@8 z-Ft7DjHjPg^0RuEABq;i-=<#dk!qQAc+EtAk$j7<^PhOEODp@&ATMfGyO4k1LZEvY NJYD@<);T3K0RTL9V-WxV literal 0 HcmV?d00001 diff --git a/frontend/src/renderer/src/assets/new/conduct.png b/frontend/src/renderer/src/assets/detection/conduct.png similarity index 100% rename from frontend/src/renderer/src/assets/new/conduct.png rename to frontend/src/renderer/src/assets/detection/conduct.png diff --git a/frontend/src/renderer/src/assets/detection/endvideo.png b/frontend/src/renderer/src/assets/detection/endvideo.png new file mode 100644 index 0000000000000000000000000000000000000000..bf7c2c1b3d07f9e25740a852b216739fd6fbfdb8 GIT binary patch literal 670 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 IM6N<$f+p&8&j0`b literal 0 HcmV?d00001 diff --git a/frontend/src/renderer/src/assets/detection/progress.png b/frontend/src/renderer/src/assets/detection/progress.png new file mode 100644 index 0000000000000000000000000000000000000000..cbd22a29caa57208638a5cf1cc46b9ecd977dd6e GIT binary patch literal 452 zcmV;#0XzPQP)Px#1ZP1_K>z@;j|==^1poj6Zb?KzR5(wil%Y-oVGxAxPzXc?q7T3WASw_Qm$U+b zz=1#@5IjOH;V}>hWF?{o0to^V1h|R{LLJz}mLkb3o`MwL_@CVN<68 z?wOqoqV_t}_oO2{&Y2n18-@^fb80yd4ujAje{pFZ$r_IXYpQUg2fFY+;y6B&p9i&$ zeqp4MRiM5rG5(o!+i~esWbC?tFqH=TmIU+#yuY zd>B-BwVs=p*A$OmC;!C4)wBu&$nZVjH_1;eXooJ# z9KG-@iB}+zR^p!zl34HIBoqL#7PS)UwKQC3VMWLXGN()7p7QcS{C{Z+Q26uTNNisM uq6F&@>Py}UWE4GNudK)|cArxPqUakx8Hl1as4@`%0000Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0c%M_K~y+Tjgr4h z!%z^%^U_d+X6TTiqeF)d{s9gSiV7Y32MD@IhyH+oAWlV!bP$Io?X06?2f>aVb$96K z)(jn5aBxT)Ki57(B31mtmv?vXeJ^*HQ$_;4Uat^EQB5hehr10w@!vRKv)SxJwOXC( zcXllFegA@^jc98fNrMDa=$fWE;Cx;Q`~AL;bAovXpK`g}cs`#Od9)8}#7go`APGqB zD9`gMnM~%8z)ihg5A=Nsly=J@6~(X?i^ZtfY!0;l8?H%Q;Y&sB8>!)Jf(&BS(|TYr z{v#|S+|_Oj#l@MnlL+W{sO^m~;eC>1?<|+gckDkQ!X#!04;a>1`y0_}wJb~9-^lZ8 zPC2jEZW@~ M07*qoM6N<$f^84QN&o-= literal 0 HcmV?d00001 diff --git a/frontend/src/renderer/src/assets/detection/refresh_active.png b/frontend/src/renderer/src/assets/detection/refresh_active.png new file mode 100644 index 0000000000000000000000000000000000000000..f09fe23c5038ca055ee0bdb37159294dabbfe919 GIT binary patch literal 504 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0gXvSK~y+Tjgmo2 z0#OjhXCAwof{8(p#||DmbT3!ImI^%f0fIWz$xDII2axCx9i%VNv15lIZzi~w5OnF_ z2M96<(nUyj)oI@2C0T;~VA+}3`OnVGdk8 z?<()D5*Z8A9k)P$MMMbc&;&%lqS2Ar3$BCE+^rJYo_hg+J2;|qBDyhSLDTPA2{FWV zK*;lxRBA>R;Npvz^4x7!Z{{iwvM3r<`6Q;{yI00%|Dd|$bmh%Se$OOr0eH;j u3KvOo>k*c|@MV7lfhBi7btm%x0KNd&yPi9dQ{_?s0000Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0m?~4K~zXfwUj+e z13?gmb4Ln`6c+w~6e%nsC!;?Zj}ok0eMQcr&xJvpctYbMZ1M^m@Hx%#j-)V(gH_EhGe~D_EsGwO<(N#R!K=*ly zDPi|ry)=>4|fH-gmzHP&89N1#fk6)9kiuPY(c&$cvqz8 zv@Mq%MRTbIpoDTHp1a`?Vrt<9l*jJ|!4XmmXj6OgI}1f%PVX;^t-45!CII=pYh`qK@BII0gr8#WTLScfp5d#J4n#V?3bO3WVmZN`w2*lIB0}^&^ zgG1D@u;N{$)>MnGqeuq{;$sVZqZ8b$6;kW|T?M`h$9`mjxt7OIgZo>xHL;MZ7kQ5! zkXmvLl_pr%)X&WRu6g)sP|1$^YVm)=Uhjyj?Pq@hv0`>i`BCJ>00000NkvXXu0mjf DPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0Y*tgK~y+Tm6NYd z13?gn@5qUYii%1Eq5^@atjAPfNDvkG03~Sxq7Q&aA}T6*fhLv63P=!@twSIX6%~k* zKn}i{o!e{ot|a}E$;|%d&+XpcMO9>3c7}ca8pJb8l{hjVavH~R-D06*zJw0oAtyW~ z#V2A&=c4B@EFpg(G5#3qTb%>p2|>2H!rmmVg4`VYwz!`+_cVJT^sR9XIl_%j3LrVb zUE;5?rBe$yRs%iF-}pNV59)a@nxPDk59na%(`(c%vY45; z!9FCef}Fnz;#+MNShTPKdJ~f?d(^5e&{C`IU_+$hQx2iv%C!|(s>Hs(aY>KAHsTix b1ES~;-(NOdeO!7900000NkvXXu0mjf??bXT literal 0 HcmV?d00001 diff --git a/frontend/src/renderer/src/assets/detection/startvideo.png b/frontend/src/renderer/src/assets/detection/startvideo.png new file mode 100644 index 0000000000000000000000000000000000000000..cdf09298e0ec95aefae33b6593f8944c4d6576a8 GIT binary patch literal 674 zcmV;T0$u%yP)Px#1ZP1_K>z@;j|==^1poj7Oi4sRR7gv$mOp3{aTLejOD`d4b4DoY(4o5s3Q_bf zQrs0CTsld>K@hPW1VNqZDAYmdpkS9m_v%~6-~00m6KICPtwi_^k<^VoG|UJ1d|$5h-fZ%FXdmoxj3vWGx5AyGbwb+BrAdIKQ|+uD4nxA z$sk?aVXJ?vGJ`X`tL9t=9q%`l^y&EJ-L~u9NLc1Xx7g%T#aeIs>J=Qv7>uaRp6cyfzoY0EdQ#>9J1KU%+x#)RxJS5-AVV>wP*!5$d{SODjF8{}`)N6Kgd5 zY4dDKD@o`AVzg~1LE1!&Q;}V383X2})q3<@RqE8e9mnlmL_WO4T!bcq8n=lQJcU@a z-x?X)He0IXV*jpqVH@|H+{95-t#x=}>|)cY^Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0bNN%K~y+TrIfu+ z0znjoXAK1fg~gT@B#>x9A;CxRF?ayq0N%sO!Wd&=i%|*+5*~oUL<mnzhpS~&d-@UI}=ohJkJ|hmffMfqunDrZUZM)Hwm*M9?_7pd$5t^@7A zk5p_O3+uihA4RqUb8i{iV3T&Sr^Pv^#KFZ?njE(H>77O4H49X5NVN!6R(<^%Y|>$9 z5vpvv2=OaJp+~g{Rdy^tFk0Z+yU>~LRVuzRa6%oyOy1T*k-CpB{Kjl4KQMfzrl`_+ z2~IOS*bWvoB!Px#1ZP1_K>z@;j|==^1poj6;7LS5R5(wSm7z;RQ542^9}6!mE-Wk<77Pmuh6RJ5 zQJcZA;2&TxEDVe$5iuAH3l0<(#Aq^Dgb50U2^t2A4kjo#P;hMi&b{}&=Y2Z&{NQ`% zobQ}-?|o-?n@UZ=cs%yu2JRx9g#*}w=Sryte8rDIaT;cA=m0%88jV`mUqS8#F57a0 zpdp?>N~5(UHx1OS+P0JjhsF(UfGV$3wEi^gvu;Lv;;@6$h~}fc$?i!(eOY=vPBDPb zdZh?uG_zxJ%*ex&_h*9(Ek)4De*EHHxnfRClnksR2ilW+Sb=RLN05!sFR_V0ZC(0ghVlvjm>H)W!WC-c zH((OvO$}(8IIEdgLaqsv`&6@W55EE9Gd`0UTi*r6;Ryq9f=^7zmPn0!-{m$mVINNZ z(I8oXvVa4$ZCmmuD9uv4hK=qrLS3)&4QMwucMQ8odJOmn5<|TqwrT5+Bo6-q(3UWH z6KQmq(-rzWegR$+KhijdEu!Cgo_9}NA-9FLqm*iV0g&g{$Q)c^nh07*qoM6N<$ Ef+9Zc4*&oF literal 0 HcmV?d00001 diff --git a/frontend/src/renderer/src/assets/detection/useravatar.svg b/frontend/src/renderer/src/assets/detection/useravatar.svg new file mode 100644 index 00000000..281eddd4 --- /dev/null +++ b/frontend/src/renderer/src/assets/detection/useravatar.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/frontend/src/renderer/src/assets/detection/useredit.png b/frontend/src/renderer/src/assets/detection/useredit.png new file mode 100644 index 0000000000000000000000000000000000000000..7a5cec1f34fc0404cfdce3ae08fb2ba845dfbf8e GIT binary patch literal 294 zcmV+>0oneEP)Px#1ZP1_K>z@;j|==^1poj5&`Cr=R5(wiks%JkKoCWl1c~4X2t*|U$q|s190G&l z00;yU$pNU~76=5A5KJ8ghd@BOyxmTghP2%VUNV`T+5g%mZ8as!vY0whdt=N<*Udnh zB6*mPdKKndwy?YCbv+gGlNxKJ8bV8TJSxW;sfN%>9nZh=BPf$=6I$oW2X=Q_{cj^+ z<*hRcG?Fbpzu7{l=Zpf#S8Aw{dI&Dmb6A-c>2(l6IEhGv^kUv|o>3|DfZDL@x@0+t seZYi62PvU$`QCk5pEl2@azy0(1}Yy!(%`4$V*mgE07*qoM6N<$g3;1(QUCw| literal 0 HcmV?d00001 diff --git a/frontend/src/renderer/src/assets/detection/userinfo.png b/frontend/src/renderer/src/assets/detection/userinfo.png new file mode 100644 index 0000000000000000000000000000000000000000..9ba2b783c6c7d413d09a3311b9fcd4bab3684b07 GIT binary patch literal 372 zcmV-)0gL{LP)Px#1ZP1_K>z@;j|==^1poj69!W$&R5(wilPiwGP!xt+GGYWvU;&jRV`d?UN!S1a zQGvvPlrcnczwywJ?EYWr}wtLcSV|}0jgtG z(Km|G49$Jt@1X_uZIUEuqCXnkgjj?^OTUCb*YfT{?ug~XO0$2?LXSgD%N1h>IE7;u zK~2OGl=!K0FlE>638?v`wpPN{X={=g4bVouz@AFx%HLRyZbp3R`L}Fnq=t4_D`<}< zE(Nf4Xd*EGM-J;+6I{S(2Q$yP-aGkp8Ctg;`bA6m0(+Fl1@_8vcINlhpyQ%1Ky5p} zMqSBMSdBXqO%Z0>k3&uNBIU4=pY&bG9kZNXWuXmqMTL)}m~t@xi{Jd5J?{vbwujBg SG_Lgk0000!lvI6;>1s;*bKn;gMnDKc2iWHy*5loJVUN4T=Zn{8f4w&K`}_Y# ziiKZqzVqSa - - - - - - \ No newline at end of file diff --git a/frontend/src/renderer/src/assets/new/endvideo.svg b/frontend/src/renderer/src/assets/new/endvideo.svg deleted file mode 100644 index 1285fc14..00000000 --- a/frontend/src/renderer/src/assets/new/endvideo.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/frontend/src/renderer/src/assets/new/jietu.svg b/frontend/src/renderer/src/assets/new/jietu.svg deleted file mode 100644 index 3ebb379c..00000000 --- a/frontend/src/renderer/src/assets/new/jietu.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/frontend/src/renderer/src/assets/new/startvideo.svg b/frontend/src/renderer/src/assets/new/startvideo.svg deleted file mode 100644 index 703f1d35..00000000 --- a/frontend/src/renderer/src/assets/new/startvideo.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/frontend/src/renderer/src/assets/new/testheader.png b/frontend/src/renderer/src/assets/new/testheader.png deleted file mode 100644 index 5ee897b4047f766d9dd78b3bb670670b612d6b13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39420 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 BGYtR$ diff --git a/frontend/src/renderer/src/assets/new/title2.svg b/frontend/src/renderer/src/assets/new/title2.svg deleted file mode 100644 index 9229295a..00000000 --- a/frontend/src/renderer/src/assets/new/title2.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/frontend/src/renderer/src/assets/new/useravatar.svg b/frontend/src/renderer/src/assets/new/useravatar.svg deleted file mode 100644 index b262db65..00000000 --- a/frontend/src/renderer/src/assets/new/useravatar.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/frontend/src/renderer/src/views/Detection.vue b/frontend/src/renderer/src/views/Detection.vue index b84f67ab..ee5105c4 100644 --- a/frontend/src/renderer/src/views/Detection.vue +++ b/frontend/src/renderer/src/views/Detection.vue @@ -3,30 +3,31 @@
+
检测中...
+ color: #3BF2C6;" + >检测中...
{{ patientInfo.name }}
-
{{ patientInfo.gender }}
+
{{ patientInfo.gender }}
-
{{ calculateAge(patientInfo.birth_date) }}
- 结束监测 +
{{ calculateAge(patientInfo.birth_date) }}岁
+ 结束检测
- +
- +
- +
- + 录像中: {{ formattedTime }}
@@ -34,10 +35,10 @@
- +
- +
@@ -48,20 +49,26 @@
- +
身体姿态
- +
{{ femtoboltStatus }}
-
- 深度相机视频流 +
+ 深度相机视频流 + +
+ +
连接失败
+
@@ -70,21 +77,19 @@
- +
头部姿态
- +
+ 校准 - - - 清零 - +
+
+ + 清零 +
-
{{ imuStatus }} @@ -96,24 +101,25 @@
-
左侧最大
+
左最大旋转角度
{{ headPoseMaxValues.rotationLeftMax.toFixed(1) }}°
- 倾斜角: - {{ headlist.tilt }}° +
倾斜角
+
{{ headlist.tilt }}°
- 左: + {{ headPoseMaxValues.tiltLeftMax.toFixed(1) }}° + | - 右: + {{ headPoseMaxValues.tiltRightMax.toFixed(1) }}° @@ -124,9 +130,9 @@
旋转角: - {{ headlist.rotation }}° + {{ headlist.rotation }}°
-
+
@@ -134,26 +140,27 @@
-
右侧最大
+
右最大旋转角度
{{ headPoseMaxValues.rotationRightMax.toFixed(1) }}°
- 俯仰角: - {{ headlist.pitch }}° +
俯仰角
+
{{ headlist.pitch }}°
- 俯: + {{ headPoseMaxValues.pitchDownMax.toFixed(1) }}° + | - 仰: - + + {{ headPoseMaxValues.pitchUpMax.toFixed(1) }}° @@ -169,7 +176,7 @@
足部压力
-
{{ pressureStatus }} @@ -205,8 +212,14 @@
左足
右足
-
- +
+ + +
+ +
连接失败
+
@@ -250,17 +263,17 @@
-
- +
{{ patientInfo.name }}
{{ patientInfo.gender }}
-
{{ calculateAge(patientInfo.birth_date) }}
+
{{ calculateAge(patientInfo.birth_date) }}岁
用户ID:{{ patientInfo.id }} @@ -269,8 +282,11 @@
- + +
居住地
@@ -305,7 +321,7 @@
视频
-
@@ -314,13 +330,29 @@
-
- camera1 +
+
+ +
+ camera1 +
+ +
连接失败
+
-
- camera2 +
+
+ +
+ camera2 +
+ +
连接失败
+
@@ -409,15 +441,30 @@
+ + - - + + +
+ + +
+ +
+ + +
@@ -430,14 +477,16 @@ import Header from '@/views/Header.vue' import { useAuthStore } from '../stores/index.js' import * as echarts from 'echarts' import { getBackendUrl, patientAPI } from '../services/api.js' -import noImageSvg from '@/assets/no-image.svg' +import noImageSvg from '@/assets/detection/no-image.png' import DiagnosticMessage from '@/views/DiagnosticMessage.vue' import PatientCreate from '@/views/PatientCreate.vue' import HistoryDashboard from '@/views/PatientProfile.vue' import Model from './model.vue' +import ViewUserInfo from '@/views/ViewUser.vue' +import refresh from '@/assets/detection/refresh.png' +import refresh_active from '@/assets/detection/refresh_active.png' const emit = defineEmits([ 'endChange']); -const asd = ref(0) const props = defineProps({ selectedPatient: { required: false, @@ -445,6 +494,7 @@ const props = defineProps({ default: null } }) +const isViewUser = ref(false) // 查看信息 const isCloseCreat =ref(false) // 是否打开患者信息编辑框 const isoperation = ref(false) // 是否保存数据 const isTip =ref(false) @@ -477,10 +527,10 @@ function closeTipClick(){ const isDiagnosticMessage = ref(false) -const isBig =ref(false) +const isBig1 =ref(false) +const isBig2 =ref(false) const authStore = useAuthStore() const router = useRouter() -const route = useRoute() const isRecording = ref(false) const isConnected = ref(false) const rtspImgSrc = ref('') @@ -495,10 +545,6 @@ const videoImgRef =ref(null) // 视频流图片ref const camera1Ref = ref(null) const camera2Ref = ref(null) const historyDialogVisible = ref(false) -// 录像相关变量 -let mediaRecorder = null -let recordedChunks = [] -let recordingStream = null // 患者信息(从页面获取或通过API获取) const patientInfo = ref({ id: '', @@ -528,16 +574,7 @@ let frameCount = 0 // 后端服务器地址配置 const BACKEND_URL = getBackendUrl() const resDialogVisible = ref(false) -const reshandleClose = () => { - resDialogVisible.value = false -} -const cameraHandleClose = () => { - cameraDialogVisible.value = false -} const dialogVisible = ref(false) -const handleClose = () => { - dialogVisible.value = false -} // 表单引用 const patientFormRef = ref() // 表单数据 @@ -2140,6 +2177,12 @@ function handleEditUserInfo(){ function closePatientProfile(){ historyDialogVisible.value =false } +function closeViewUserInfo(){ + isViewUser.value = false +} +function viewClick(){ + isViewUser.value = true +} @@ -2751,4 +2836,71 @@ function closePatientProfile(){ padding-top: 50px; padding-right: 10px; } +.calibration-zero{ + width: 70px; + height: 28px; + background-color: rgb(69, 91, 123); + display:flex; + align-items:center; + justify-content:center; + border-radius: 4px; + box-shadow: none; + font-family: "Noto Sans SC"; + font-weight: 400; + font-style: normal; + font-size: 14px; + color: rgb(255, 255, 255); + margin-left:10px; + cursor:pointer; +} +.calibration-zero:hover{ + background-color: #14aaff; +} +.noImageSvg-bg{ + display:flex; + justify-content:center; + align-items:center; +} + +.pop-up-camera-container .formreturnCancel{ + width: 80px; + height: 40px; + background: rgba(89, 113, 148, 1); + border: 1px solid rgba(89, 113, 148, 1); + font-family: 'Noto Sans SC'; + font-weight: 400; + font-style: normal; + font-size: 14px; + color: rgba(255, 255, 255, 0.6); +} +.pop-up-camera-container .formreturnCancel:hover{ + background: #14aaff; + color:#ffffff; +} +.pop-up-camera-container .formsaveCancel { + width: 80px; + height: 40px; + background: #0b94d5; + font-family: 'Noto Sans SC'; + font-weight: 400; + font-style: normal; + font-size: 14px; + color: #FFFFFF; +} +.pop-up-camera-container .formsaveCancel:hover{ + background: #5189ff; + color:#ffffff; +} +.big-img{ + position: absolute; + left: 10px; + top: 10px; + width: 30px; + height: 30px; + background: rgba(0, 0, 0, 0.5); + display: flex; + align-items: center; + justify-content: center; + cursor: pointer; +} diff --git a/frontend/src/renderer/src/views/Header.vue b/frontend/src/renderer/src/views/Header.vue index 714b9a7c..8b39bb76 100644 --- a/frontend/src/renderer/src/views/Header.vue +++ b/frontend/src/renderer/src/views/Header.vue @@ -9,10 +9,8 @@
平衡体态检测系统 {{ licenseBadge }} - - - - + +
@@ -171,7 +169,7 @@ licenseType.value = 'trial' showActivateButton.value = true } else { - licenseBadge.value = '已授权' + licenseBadge.value = '已激活' licenseClass.value = 'badge-valid' licenseType.value = 'full' showActivateButton.value = false @@ -273,18 +271,17 @@ \ No newline at end of file diff --git a/frontend/src/renderer/src/views/ViewUser.vue b/frontend/src/renderer/src/views/ViewUser.vue new file mode 100644 index 00000000..feb04c2d --- /dev/null +++ b/frontend/src/renderer/src/views/ViewUser.vue @@ -0,0 +1,291 @@ + + + + + diff --git a/frontend/src/renderer/src/views/model.vue b/frontend/src/renderer/src/views/model.vue index 650c62e4..b7cd51dd 100644 --- a/frontend/src/renderer/src/views/model.vue +++ b/frontend/src/renderer/src/views/model.vue @@ -34,7 +34,6 @@ onMounted(() => { function initThreeJS() { // 创建场景 scene = new THREE.Scene(); - scene.background = new THREE.Color(0x282828); // 稍微提亮背景 let containermodel = document.getElementById('containermodel'); // 创建相机 camera = new THREE.PerspectiveCamera(75, containermodel.offsetWidth / containermodel.offsetHeight, 0.1, 1000); @@ -42,7 +41,9 @@ function initThreeJS() { camera.lookAt(0, 0, 0); // 创建渲染器 - renderer = new THREE.WebGLRenderer({ antialias: true }); + renderer = new THREE.WebGLRenderer({ antialias: true,alpha: true }); + scene.background = null; // 置空场景背景 + renderer.setClearColor(0x000000, 0); // 设置透明度为0(完全透明) renderer.setSize(containermodel.offsetWidth, containermodel.offsetHeight); renderer.shadowMap.enabled = true; renderer.shadowMap.type = THREE.PCFSoftShadowMap;