林旭祥 il y a 9 mois
Parent
commit
5c75e82f05
70 fichiers modifiés avec 69 ajouts et 10 suppressions
  1. BIN
      public/static/audio/1.mp3
  2. BIN
      public/static/audio/2.mp3
  3. BIN
      public/static/audio/3.mp3
  4. BIN
      public/static/audio/321run.mp3
  5. BIN
      public/static/audio/4.mp3
  6. BIN
      public/static/audio/5.mp3
  7. BIN
      public/static/audio/Accepted.mp3
  8. BIN
      public/static/audio/BackViolation.mp3
  9. BIN
      public/static/audio/CameraOpen.mp3
  10. BIN
      public/static/audio/Elbowiolation.mp3
  11. BIN
      public/static/audio/End.mp3
  12. BIN
      public/static/audio/HandViolation.mp3
  13. BIN
      public/static/audio/HeightViolation.mp3
  14. BIN
      public/static/audio/HipViolation.mp3
  15. BIN
      public/static/audio/IllegalOperation.mp3
  16. BIN
      public/static/audio/InitializationSuccessful.mp3
  17. BIN
      public/static/audio/InterferencePersonnel.mp3
  18. BIN
      public/static/audio/JumpAreaViolation.mp3
  19. BIN
      public/static/audio/LegViolation.mp3
  20. BIN
      public/static/audio/LineViolation.mp3
  21. BIN
      public/static/audio/LineViolationed.mp3
  22. BIN
      public/static/audio/MarkInconsistency.mp3
  23. BIN
      public/static/audio/NetworkError.mp3
  24. BIN
      public/static/audio/NextGroup.mp3
  25. BIN
      public/static/audio/NoExam.mp3
  26. BIN
      public/static/audio/NoWork.mp3
  27. BIN
      public/static/audio/OtherPages.mp3
  28. BIN
      public/static/audio/PleaseIdentify.mp3
  29. BIN
      public/static/audio/PleaseIdentify2.mp3
  30. BIN
      public/static/audio/PleaseReady.mp3
  31. BIN
      public/static/audio/PleaseStartTest.mp3
  32. BIN
      public/static/audio/Ready.mp3
  33. BIN
      public/static/audio/ReconnectionFailed.mp3
  34. BIN
      public/static/audio/ResultIdFalse.mp3
  35. BIN
      public/static/audio/SingleLegJumpViolation.mp3
  36. BIN
      public/static/audio/Start.mp3
  37. BIN
      public/static/audio/SystemError.mp3
  38. BIN
      public/static/audio/TestEnd.mp3
  39. BIN
      public/static/audio/WorkDisconnect.mp3
  40. BIN
      public/static/audio/WorkDown.mp3
  41. BIN
      public/static/audio/WorkFailLogin.mp3
  42. BIN
      public/static/audio/countdown10s.mp3
  43. BIN
      public/static/audio/countdown30s.mp3
  44. BIN
      public/static/audio/openFail.mp3
  45. BIN
      public/static/audio/run.mp3
  46. BIN
      public/static/audio/runNew.mp3
  47. BIN
      public/static/audio/shaosheng.mp3
  48. BIN
      public/static/audio/shaosheng2.mp3
  49. BIN
      src/assets/images/test/ready.png
  50. BIN
      src/assets/images/test/ready1.png
  51. BIN
      src/assets/images/test/ready2.png
  52. BIN
      src/assets/images/test/tips/basketballv1.png
  53. BIN
      src/assets/images/test/tips/footballv1.png
  54. BIN
      src/assets/images/test/tips/jumpingjack.png
  55. BIN
      src/assets/images/test/tips/longjump.png
  56. BIN
      src/assets/images/test/tips/pullup.png
  57. BIN
      src/assets/images/test/tips/shotput.png
  58. BIN
      src/assets/images/test/tips/sidepullup.png
  59. BIN
      src/assets/images/test/tips/situp.png
  60. BIN
      src/assets/images/test/tips/solidball.png
  61. BIN
      src/assets/images/test/tips/trijump.png
  62. BIN
      src/assets/images/test/tips/verticaljump.png
  63. BIN
      src/assets/images/test/tips/volleyball.png
  64. BIN
      src/assets/images/train/longjump.png
  65. BIN
      src/assets/images/train/sidepullup.png
  66. BIN
      src/assets/images/train/trijump.png
  67. BIN
      src/assets/images/train/verticaljump.png
  68. 2 2
      src/utils/animate.ts
  69. 57 2
      src/utils/dataDictionary.ts
  70. 10 6
      src/views/train/test.vue

BIN
public/static/audio/1.mp3


BIN
public/static/audio/2.mp3


BIN
public/static/audio/3.mp3


BIN
public/static/audio/321run.mp3


BIN
public/static/audio/4.mp3


BIN
public/static/audio/5.mp3


BIN
public/static/audio/Accepted.mp3


BIN
public/static/audio/BackViolation.mp3


BIN
public/static/audio/CameraOpen.mp3


BIN
public/static/audio/Elbowiolation.mp3


BIN
public/static/audio/End.mp3


BIN
public/static/audio/HandViolation.mp3


BIN
public/static/audio/HeightViolation.mp3


BIN
public/static/audio/HipViolation.mp3


BIN
public/static/audio/IllegalOperation.mp3


BIN
public/static/audio/InitializationSuccessful.mp3


BIN
public/static/audio/InterferencePersonnel.mp3


BIN
public/static/audio/JumpAreaViolation.mp3


BIN
public/static/audio/LegViolation.mp3


BIN
public/static/audio/LineViolation.mp3


BIN
public/static/audio/LineViolationed.mp3


BIN
public/static/audio/MarkInconsistency.mp3


BIN
public/static/audio/NetworkError.mp3


BIN
public/static/audio/NextGroup.mp3


BIN
public/static/audio/NoExam.mp3


BIN
public/static/audio/NoWork.mp3


BIN
public/static/audio/OtherPages.mp3


BIN
public/static/audio/PleaseIdentify.mp3


BIN
public/static/audio/PleaseIdentify2.mp3


BIN
public/static/audio/PleaseReady.mp3


BIN
public/static/audio/PleaseStartTest.mp3


BIN
public/static/audio/Ready.mp3


BIN
public/static/audio/ReconnectionFailed.mp3


BIN
public/static/audio/ResultIdFalse.mp3


BIN
public/static/audio/SingleLegJumpViolation.mp3


BIN
public/static/audio/Start.mp3


BIN
public/static/audio/SystemError.mp3


BIN
public/static/audio/TestEnd.mp3


BIN
public/static/audio/WorkDisconnect.mp3


BIN
public/static/audio/WorkDown.mp3


BIN
public/static/audio/WorkFailLogin.mp3


BIN
public/static/audio/countdown10s.mp3


BIN
public/static/audio/countdown30s.mp3


BIN
public/static/audio/openFail.mp3


BIN
public/static/audio/run.mp3


BIN
public/static/audio/runNew.mp3


BIN
public/static/audio/shaosheng.mp3


BIN
public/static/audio/shaosheng2.mp3


BIN
src/assets/images/test/ready.png


BIN
src/assets/images/test/ready1.png


BIN
src/assets/images/test/ready2.png


BIN
src/assets/images/test/tips/basketballv1.png


BIN
src/assets/images/test/tips/footballv1.png


BIN
src/assets/images/test/tips/jumpingjack.png


BIN
src/assets/images/test/tips/longjump.png


BIN
src/assets/images/test/tips/pullup.png


BIN
src/assets/images/test/tips/shotput.png


BIN
src/assets/images/test/tips/sidepullup.png


BIN
src/assets/images/test/tips/situp.png


BIN
src/assets/images/test/tips/solidball.png


BIN
src/assets/images/test/tips/trijump.png


BIN
src/assets/images/test/tips/verticaljump.png


BIN
src/assets/images/test/tips/volleyball.png


BIN
src/assets/images/train/longjump.png


BIN
src/assets/images/train/sidepullup.png


BIN
src/assets/images/train/trijump.png


BIN
src/assets/images/train/verticaljump.png


+ 2 - 2
src/utils/animate.ts

@@ -13,8 +13,8 @@ const dialog = {
 };
 
 const face = {
-  enter: animatePrefix + 'animate__zoomInLeft',
-  leave: animatePrefix + 'animate__zoomOutLeft',
+  enter: animatePrefix + 'animate__fadeIn',
+  leave: animatePrefix + 'animate__fadeOutLeft',
   leave2: animatePrefix + 'animate__fadeOut'
 };
 

+ 57 - 2
src/utils/dataDictionary.ts

@@ -97,8 +97,8 @@ let data = {
     run10x4: '10x4往返跑',
     swim100: '游泳100米',
     swim200: '游泳200米',
-    footballv1: '足球v1',
-    basketballv1: '篮球v1',
+    footballv1: '足球',
+    basketballv1: '篮球',
     volleyball: '排球',
     pingpong: '乒乓球',
     badminton: '羽毛球',
@@ -167,6 +167,61 @@ let data = {
     badminton: 'result',
     runa800: 'result',
     runa1000: 'result'
+  },
+  projectNote: {
+    jump: '<p><span style="color: #13ED84">预摆:</span>上下肢动作协调配合,摆动时一伸二屈降重心,上体稍前倾。</p><p><span style="color: #13ED84">空展体:</span>蹬地快速有力,腿蹬和手摆要协调,空中展体要充分,待身体完全展开后,收腹屈膝。</p><p><span style="color: #13ED84">落地缓冲:</span>小腿前伸的时机把握好,曲腿前伸臂后摆,落地后往前不往后。</p>',
+    longjump:
+      '<p><span style="color: #13ED84">起跳:</span>起跳时,身体要正对着前方,不要偏向一侧。同时,起跳方向应该与身体的方向保持一致。踏板时,要用前脚掌迅速而有力地踩踏板,以产生足够的爆发力。</p><p><span style="color: #13ED84">腾空:</span>在腾空阶段,要控制好身体的姿态,保持身体的平衡和稳定。同时控制好身体的重心,以避免在落地时失去平衡。</p><p><span style="color: #13ED84">落地:</span>收腹举腿,小腿往前伸,同时双臂用力往后摆动,并屈膝落地缓冲。</p>',
+    verticaljump:
+      '<p><span style="color: #13ED84">预摆:</span>两脚左右开立,与肩同宽,两臂前后摆动,前摆时,两腿伸直,后摆时,屈膝降低重心,上体稍前倾,手尽量往后摆。</p><p><span style="color: #13ED84">起跳腾空:</span>蹬地快速有力,腿蹬和手摆要协调,空中展体要充分,强调离地前的前脚掌瞬间蹬地动作</p><p><span style="color: #13ED84">落地缓冲:</span>落地时用前脚掌着地屈膝缓冲。</p>',
+    pullup:
+      '<p><span style="color: #13ED84">发力:</span>发力时要注意使用背部肌肉,而不是手臂肌肉。注意肩胛骨收缩,找到背部发力的感觉。</p><p><span style="color: #13ED84">呼吸:</span>向上拉起时呼气,放下时吸气。不要憋气或屏住呼吸,会影响身体的血液循环和氧气供应。</p><p><span style="color: #13ED84">姿势:</span>姿势要保持一条直线,不要弯曲或扭曲身体。同时,注意放松身体,不要过度紧张或用力过猛。</p>',
+    situp:
+      '<p><span style="color: #13ED84">准备姿势:</span>仰卧,两腿屈膝,腿稍分开,屈膝呈90度,两手贴于耳朵后,两手的作用是托住颈部,使颈部保持微微前屈的姿势。</p><p><span style="color: #13ED84">上体前屈:</span>卷腹前屈至双手肘碰到膝关节的位置,着重要使用腰腹力量,而不是用手掰脖子。同时臀部贴地,膝关节并拢。</p><p><span style="color: #13ED84">上体仰卧:</span>上体向后倒至身体的双肩背部同时触垫。</p><p><span style="color: #13ED84">呼吸节奏:</span>向后倒时吸气,往前屈体时呼气</p>',
+    trijump:
+      '<p><span style="color: #13ED84">预摆:</span>两脚左右开立,与肩同宽,两臂前后摆动,前摆时,两腿伸直,后摆时,屈膝降低重心(大腿与小腿夹角90度左右),上体稍前倾,手尽量往后摆。</p><p><span style="color: #13ED84">第一、二跳:</span>落地重心不能太低,否则下一级会跳不起来,要做到快速跳跃,前脚掌落地,落地的瞬间,手臂迅速有力的向上摆动,带动身体快速跳跃。</p><p><span style="color: #13ED84">第三跳:</span>两脚快速用力蹬地,同时两臂稍屈由后往前上方摆动,向前上方跳起腾空,并充分展体。</p>',
+    sidepullup:
+      '<p><span style="color: #13ED84">预备:</span>面向单杠,自然站立,两手分开与肩同宽,正握杠,两腿前伸,两脚着地并由同伴压住两脚,保持两臂与躯干呈90°,身体斜向下垂。</p><p><span style="color: #13ED84">发力:</span>使用上肢力量和背部力量,身体要保持挺直,不得塌腰和挺腹。</p><p><span style="color: #13ED84">呼吸:</span>向上拉起时呼气,放下时吸气。不要憋气或屏住呼吸,会影响身体的血液循环和氧气供应。</p>',
+    jumprope:
+      '<p><span style="color: #13ED84">上身:</span>要保持正直,目视前方一米处。采取单脚交替跳时,上体自然下压,尽可能的做到“挺胸、塌腰、翘臀”。</p><p><span style="color: #13ED84">摇绳:</span>大臂要贴紧身体,小臂放在大腿侧前方。利用手腕“外旋内转“摇绳,可提高摇绳速度。摇绳时,切忌手腕外翻掌心朝前,容易导致小臂外侧肌肉紧张酸痛,影响摇绳速度。</p><p><span style="color: #13ED84">脚落地:</span>脚在落地时切忌前后移动,用前脚掌着地,以减少失误。</p>',
+    jumpingjack:
+      '<p><span style="color: #13ED84">站姿准备:</span>开始时,双脚并拢,脚尖微微向前,双臂自然下垂,身体保持直立。</p><p><span style="color: #13ED84">双手上举:</span>双手从身体两侧向上举至头顶,掌心相对,手臂伸直。</p><p><span style="color: #13ED84">跳起:</span>用脚尖发力,向上跳起,同时双臂从两侧打开至头顶并伸直。</p><p><span style="color: #13ED84">落地:</span>落地时,用前脚掌着地,膝盖微屈,以吸收冲击力。</p>',
+    solidball:
+      '<p><span style="color: #13ED84">持球:</span>两手用手指包球,两手心空出,大拇指交叉或并排放在球底,小指放在球的两侧,其余六手指对称来托球。</p><p><span style="color: #13ED84">预摆:</span>球依次是从前下方经过胸前至头后上方,充分挺宽、展肩,身体形成反弓形,同时吸气。</p><p><span style="color: #13ED84">投掷:</span>预摆结束时两手握球用力积极从后上方向前上方前摆,此时的动作特点是蹬腿、送髋、腰腹急震用力,两臂用力前摆并向前拨指和腕,旨在提高手臂的鞭打速度。</p>',
+    shotput:
+      '<p><span style="color: #13ED84">握球:</span>把球放在食指、中指和无名指的指根上,大拇指和小指支撑在球的两侧,以防止球的滑动和便于控制出球的方向。</p><p><span style="color: #13ED84">预摆:</span>身体左侧对投掷方向,两脚左右开立比肩稍宽,左脚尖指向斜前方并与右脚弓在一直线上;右膝弯曲,上体向右倾斜扭转,重心落在右腿上;左臂微屈于胸前,使球的垂直线离开右脚外侧,以加长用力距离和拉紧左侧肌肉。</p><p><span style="color: #13ED84">推球:</span>右脚迅速用力蹬地,脚跟提起,右膝内转,右髋前送,使上体向左侧抬起,朝着投掷方向转动。球离手时手腕要用力,并用手指拨球。</p>',
+    run50: '50米',
+    run60: '60米',
+    run70: '70米',
+    run100: '100米',
+    run200: '200米',
+    run400: '400米',
+    run800: '800米',
+    runa800: '脚环800',
+    runa1000: '脚环1000',
+    run1000: '1000米',
+    skiprope: '蓝牙跳绳',
+    heartbeat: '心率监测',
+    bmi: 'BMI',
+    sitforbend: '坐位体前屈',
+    vitalcap: '肺活量',
+    run15x4: '15x4往返跑',
+    run50x8: '50x8往返跑',
+    run10x4: '10x4往返跑',
+    swim100: '游泳100米',
+    swim200: '游泳200米',
+    footballv1:
+      '<p><span style="color: #13ED84">熟悉球性:</span>带球散步,让球能跟着你走,再带球慢跑,能把球带上,但不能离开脚的控制,接着学会内脚侧运球,左右脚交替运球。</p><p><span style="color: #13ED84">绕杆练习:</span>尽量让球绕着杆边过,让球以最短的路线运行。绕杆变向之前的推球不能太大,用外脚背推球变向,向左用左脚、向右用右脚。带球频率要快,推球不能离开脚太大,否则会失控。</p>',
+    basketballv1:
+      '<p><span style="color: #13ED84">运球:</span>运球时用手掌的边缘触球,手掌心不能触球;发力时,手指、手腕控制球的方向和速度;运球时身体重心要低,腰要直;非运球手、臂抬起保护球。</p><p><span style="color: #13ED84">身体姿态:</span>保持正确的身体姿势,体会手按拍和迎引球的动作,抬头,用眼余光看球。运球时手臂动作的放松和紧张要交替进行,掌握好手触球的位置和力量。</p>',
+    volleyball:
+      '<p><span style="color: #13ED84">垫球发力:</span>垫球时根据落球力量、速度和垫击的距离,掌握好手臂迎击球的用力和缓冲作用。如落球速度慢或垫击球的距离较远时,垫击用力大些,必须加大抬臂击球动作,来增加球的反弹力;如落球速度快或垫击距离较近,垫击时,可用力小些,靠球的反弹力量将球垫起;如落球速度大,为了缓冲来球力量。<p><p><span style="color: #13ED84">击球部位:</span>正面双手垫球的击球点一般应保持在腹前一臂远距离,用小臂前半部腕关节以上内侧平面去击球。</p>',
+    pingpong: '乒乓球',
+    badminton: '羽毛球',
+    tennis: '网球',
+    wushu: '武术',
+    gymnastic: '体操',
+    grip: '肌力'
   }
 };
 export default data;

+ 10 - 6
src/views/train/test.vue

@@ -32,7 +32,8 @@
       countdownNumFormat
     }}</div>
             <div class="tips" v-if="examState == 41">
-              <img v-if="parameter.gesture" src="@/assets/images/test/ready.png" />
+              <img v-if="parameter.gesture" src="@/assets/images/test/ready1.png" />
+              <img v-if="!parameter.gesture" src="@/assets/images/test/ready2.png" />
             </div>
             <div class="complete" v-if="faceCheckStu.student_id">
               <div class="scoreBox">
@@ -70,8 +71,8 @@
             <div class="tips"><img src="/src/assets/images/test/tips.png" /></div>
             <div class="pic"><img :src="'/src/assets/images/test/tips/' + parameter.project + '.png'" /></div>
           </div>
-          <div class="bottom-right">
-            {{ currentResultObj?._comments?.join() }}
+          <div class="bottom-right" v-html="dic.projectNote[parameter.project]">
+
           </div>
         </div>
       </div>
@@ -240,6 +241,7 @@ const getStopFace = async () => {
   // if (examState.value != 41) {
   //   return false;
   // }
+  getClearTimer("face");
   speckText(faceCheckStu.value.name + ",请准备");
   await stopFace();
   if (faceCheckStu.value.student_id) {
@@ -312,6 +314,7 @@ const getStartOneTest = () => {
       } else {
         getCounting("-");
       }
+      speckText("哨声");
     } else {
       speckText(faceCheckStu.value.name + ",请开始测试");
     }
@@ -452,7 +455,8 @@ const initProject = () => {
  * 时间转换
 */
 const countdownNumFormat = computed(() => {
-  return proxy?.$utils.timeFormat(time.value.countdownNum);
+  return time.value.countdownNum;
+  //return proxy?.$utils.timeFormat(time.value.countdownNum);
 });
 
 /**
@@ -979,7 +983,7 @@ $waiPadding: 6.51rem;
       overflow: hidden;
 
       .bottom-left {
-        width: 60%;
+        width: 58%;
         padding-right: 1rem;
         display: flex;
         flex-direction: column;
@@ -1009,7 +1013,7 @@ $waiPadding: 6.51rem;
       }
 
       .bottom-right {
-        width: 40%;
+        width: 41%;
         height: 100%;
         overflow-y: scroll;
         color: #F9F9F9;