大空间消毒机
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

667 lines
47 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. <template>
  2. <div class="operator_main_content">
  3. <div class="left_contaienr">
  4. <div class="info_cards">
  5. <div class="card">
  6. <DisinfectantLiquidInfo />
  7. </div>
  8. <div class="card">
  9. <EnvironmentInfo :cardType="1" />
  10. </div>
  11. <div class="card">
  12. <EnvironmentInfo :cardType="2" />
  13. </div>
  14. <div class="card">
  15. <EnvironmentInfo :cardType="3" />
  16. </div>
  17. </div>
  18. <div class="warn_wrap">
  19. <p class="warn_text">警报信息</p>
  20. <svg
  21. v-if="
  22. operatorStore.disinfectStatus != 0 &&
  23. operatorStore.disinfectStatus != 3
  24. "
  25. @click="toDetail"
  26. xmlns="http://www.w3.org/2000/svg"
  27. xmlns:xlink="http://www.w3.org/1999/xlink"
  28. fill="none"
  29. version="1.1"
  30. width="218"
  31. height="50"
  32. viewBox="0 0 218 50"
  33. >
  34. <g>
  35. <g>
  36. <rect
  37. x="0"
  38. y="0"
  39. width="218"
  40. height="50"
  41. rx="25"
  42. fill="#06518B"
  43. fill-opacity="1"
  44. />
  45. </g>
  46. <g>
  47. <ellipse
  48. cx="26"
  49. cy="25"
  50. rx="19"
  51. ry="19"
  52. fill="#FFFFFF"
  53. fill-opacity="1"
  54. />
  55. </g>
  56. <g>
  57. <path
  58. d="M65.16,27.84L72.68,27.84L72.68,29.24L65.16,29.24L65.16,27.84ZM65.16,25.22L72.68,25.22L72.68,26.58L65.16,26.58L65.16,25.22ZM63.28,23.939999999999998L63.28,30.52L74.64,30.52L74.64,23.939999999999998L63.28,23.939999999999998ZM60.36,31.62L60.36,33.3L77.7,33.3L77.7,31.62L60.36,31.62ZM68,15.3325L68,17.740000000000002L60.1,17.740000000000002L60.1,19.4L66.08,19.4C64.42,21.14,61.96,22.68,59.62,23.46C60.02,23.84,60.56,24.52,60.84,24.98C63.5,23.92,66.2,21.96,68,19.68L68,23.32L69.88,23.32L69.88,19.68C71.72,21.9,74.44,23.82,77.12,24.82C77.4,24.34,77.96000000000001,23.64,78.36,23.28C75.94,22.52,73.44,21.08,71.78,19.4L77.92,19.4L77.92,17.740000000000002L69.88,17.740000000000002L69.88,15.3325L68,15.3325ZM87.36,28.06L95.44,28.06L95.44,29.24L87.36,29.24L87.36,28.06ZM87.36,26.82L87.36,25.68L95.44,25.68L95.44,26.82L87.36,26.82ZM87.36,30.48L95.44,30.48L95.44,31.72L87.36,31.72L87.36,30.48ZM96.84,15.455C93.56,16.05844,87.62,16.34,82.72,16.36C82.88,16.740000000000002,83.06,17.380000000000003,83.08,17.8C84.74,17.8,86.52,17.759999999999998,88.32,17.7L87.98,18.86L82.96000000000001,18.86L82.96000000000001,20.32L87.44,20.32C87.28,20.72,87.1,21.119999999999997,86.92,21.52L81.53999999999999,21.52L81.53999999999999,23.060000000000002L86.08,23.060000000000002C84.84,25.08,83.18,26.86,80.98,28.08C81.36,28.46,81.9,29.14,82.16,29.58C83.44,28.82,84.56,27.9,85.53999999999999,26.86L85.53999999999999,33.965599999999995L87.36,33.965599999999995L87.36,33.18L95.44,33.18L95.44,33.965599999999995L97.32,33.965599999999995L97.32,24.22L87.56,24.22C87.8,23.84,88.02,23.46,88.24,23.060000000000002L99.25999999999999,23.060000000000002L99.25999999999999,21.52L89,21.52L89.5,20.32L98.14,20.32L98.14,18.86L90.02,18.86L90.4,17.6C93.22,17.439999999999998,95.92,17.2,98,16.82L96.84,15.455ZM109.14,26.74C110.78,27.08,112.86,27.8,114,28.36L114.78,27.14C113.62,26.6,111.56,25.96,109.92,25.64L109.14,26.74ZM107.22,29.3C110,29.62,113.46000000000001,30.42,115.38,31.12L116.22,29.76C114.22,29.08,110.8,28.34,108.1,28.04L107.22,29.3ZM103.38,16.16L103.38,33.9256L105.2,33.9256L105.2,33.120000000000005L118.36,33.120000000000005L118.36,33.9256L120.24000000000001,33.9256L120.24000000000001,16.16L103.38,16.16ZM105.2,31.44L105.2,17.880000000000003L118.36,17.880000000000003L118.36,31.44L105.2,31.44ZM110.02000000000001,18.08C109.02000000000001,19.64,107.32,21.16,105.64,22.119999999999997C106,22.4,106.64,22.96,106.92,23.259999999999998C107.44,22.92,107.96000000000001,22.52,108.47999999999999,22.08C109.02000000000001,22.619999999999997,109.64,23.119999999999997,110.34,23.58C108.74000000000001,24.28,106.97999999999999,24.82,105.3,25.14C105.62,25.48,106,26.22,106.18,26.68C108.08,26.22,110.12,25.5,111.94,24.54C113.56,25.38,115.38,26.04,117.2,26.42C117.42,26,117.9,25.34,118.25999999999999,25C116.62,24.72,114.97999999999999,24.240000000000002,113.5,23.619999999999997C114.94,22.66,116.16,21.52,117,20.22L115.94,19.58L115.66,19.66L110.82,19.66C111.1,19.32,111.36,18.96,111.58,18.6L110.02000000000001,18.08ZM109.53999999999999,21.08L114.32,21.1C113.66,21.72,112.82,22.3,111.88,22.82C110.96000000000001,22.3,110.18,21.72,109.53999999999999,21.08ZM128.1,33.909400000000005C128.6,33.5691,129.42000000000002,33.2887,135.07999999999998,31.5472C134.95999999999998,31.1466,134.8,30.3859,134.76,29.8653L130.12,31.2066L130.12,27.2228C131.2,26.4819,132.2,25.6412,133.01999999999998,24.7603C134.56,28.9444,137.22,31.9275,141.38,33.3287C141.66,32.8084,142.2,32.067499999999995,142.62,31.6672C140.7,31.1266,139.1,30.2056,137.78,28.9844C139,28.2638,140.38,27.3228,141.56,26.4019L139.98000000000002,25.2606C139.16,26.0616,137.86,27.0625,136.72,27.8434C135.94,26.9025,135.32,25.8212,134.86,24.66L141.94,24.66L141.94,23.04L134.1,23.04L134.1,21.54L140.45999999999998,21.54L140.45999999999998,20L134.1,20L134.1,18.6L141.3,18.6L141.3,16.96L134.1,16.96L134.1,15.333120000000001L132.2,15.333120000000001L132.2,16.96L125.26,16.96L125.26,18.6L132.2,18.6L132.2,20L126.26,20L126.26,21.54L132.2,21.54L132.2,23.04L124.42,23.04L124.42,24.66L130.64,24.66C128.8,26.2216,126.16,27.6431,123.78,28.3837C124.2,28.7644,124.76,29.465,125.04,29.9053C126.0
  59. fill="#FFFFFF"
  60. fill-opacity="1"
  61. />
  62. </g>
  63. <g>
  64. <path
  65. d="M18,17L18.964553,17L18.964553,19.60926C19.31313,18.12349,20.6479,17.0156627,22.2421,17.0156627C24.10176,17.0156627,25.60839,18.5212,25.60839,20.37952C25.60839,22.23783,24.10176,23.74337,22.2421,23.74337C20.6479,23.74337,19.31313,22.635550000000002,18.964553,21.14977L18.964553,26.86717C19.24149,26.62166,19.58398,26.33394,19.96769,26.04506C21.33735,25.01374,22.52761,24.491329999999998,23.505670000000002,24.491329999999998C24.16542,24.491329999999998,24.722929999999998,24.84602,25.162770000000002,25.543860000000002C25.502290000000002,26.08362,25.745359999999998,26.76603,25.980710000000002,27.4272C26.32795,28.4065,26.68869,29.4205,27.20569,29.426299999999998C27.23849,29.4147,27.560650000000003,29.2759,28.1104,27.8378C28.502000000000002,26.81229,28.893700000000003,25.4494,29.2718,24.13084C29.6614,22.77374,30.0627,21.37229,30.4717,20.3294C30.8594,19.33663,31.3629,18.32265,32.15,18.32265L34,18.32265L34,19.28651L32.1654,19.28651C32.140299999999996,19.29807,32.0265,19.3694,31.8413,19.6759C31.6774,19.94771,31.497999999999998,20.34096,31.3089,20.8441C30.938499999999998,21.82723,30.5643,23.13229,30.2016,24.39687C29.802300000000002,25.790599999999998,29.3875,27.2325,28.961199999999998,28.3159C28.5561,29.3414,28.0333,30.3901,27.21148,30.3901C26.650109999999998,30.3901,26.171689999999998,30.0701,25.79166,29.439799999999998C25.506149999999998,28.9655,25.28623,28.3467,25.07403,27.749200000000002C24.597540000000002,26.405540000000002,24.205930000000002,25.45518,23.5076,25.45518C22.757170000000002,25.45518,21.73668,25.92361,20.559919999999998,26.80843C19.74317,27.4227,19.10877,28.0474,18.964553,28.1922L18.964553,32.0229L34,32.0229L34,32.9867L18.964553,32.9867L18.964553,33L18,33L18,17ZM23.939709999999998,18.68313C23.48638,18.23012,22.88449,17.979518,22.2421,17.979518C21.59971,17.979518,20.99783,18.23012,20.54449,18.68313C20.09115,19.13614,19.84037,19.73952,19.84037,20.37952C19.84037,21.01952,20.09115,21.622889999999998,20.54449,22.0759C20.99783,22.52892,21.60164,22.779519999999998,22.2421,22.779519999999998C22.88257,22.779519999999998,23.48638,22.52892,23.939709999999998,22.0759C24.39305,21.622889999999998,24.64384,21.01952,24.64384,20.37952C24.64384,19.73952,24.39305,19.13614,23.939709999999998,18.68313ZM22.05305,19.22289L21.0885,19.22289L21.0885,20.57229L21.08464,20.57229L21.08464,21.53614L23.39956,21.53614L23.39956,20.57229L22.05305,20.57229L22.05305,19.22289Z"
  66. fill-rule="evenodd"
  67. fill="#06518B"
  68. fill-opacity="1"
  69. />
  70. </g>
  71. </g>
  72. </svg>
  73. </div>
  74. </div>
  75. <div class="right_container">
  76. <div class="setting_title">
  77. <p>消毒设置</p>
  78. <p>SET</p>
  79. </div>
  80. <div class="set_form">
  81. <p class="textP">5000</p>
  82. <div class="log" @click="showLogPicker">{{ logVal }}</div>
  83. </div>
  84. <svg
  85. v-if="[1, 2].includes(operatorStore.disinfectStatus)"
  86. xmlns="http://www.w3.org/2000/svg"
  87. xmlns:xlink="http://www.w3.org/1999/xlink"
  88. fill="none"
  89. version="1.1"
  90. width="340"
  91. height="108"
  92. viewBox="0 0 340 108"
  93. >
  94. <defs>
  95. <filter
  96. id="master_svg0_116_3964"
  97. filterUnits="objectBoundingBox"
  98. color-interpolation-filters="sRGB"
  99. x="0"
  100. y="0"
  101. width="164"
  102. height="57"
  103. >
  104. <feFlood flood-opacity="0" result="BackgroundImageFix" />
  105. <feColorMatrix
  106. in="SourceAlpha"
  107. type="matrix"
  108. values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
  109. />
  110. <feOffset dy="2" dx="0" />
  111. <feGaussianBlur stdDeviation="0" />
  112. <feColorMatrix
  113. type="matrix"
  114. values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.10000000149011612 0"
  115. />
  116. <feBlend
  117. mode="normal"
  118. in2="BackgroundImageFix"
  119. result="effect1_dropShadow"
  120. />
  121. <feBlend
  122. mode="normal"
  123. in="SourceGraphic"
  124. in2="effect1_dropShadow"
  125. result="shape"
  126. />
  127. </filter>
  128. <filter
  129. id="master_svg1_116_3968"
  130. filterUnits="objectBoundingBox"
  131. color-interpolation-filters="sRGB"
  132. x="0"
  133. y="0"
  134. width="52"
  135. height="54"
  136. >
  137. <feFlood flood-opacity="0" result="BackgroundImageFix" />
  138. <feColorMatrix
  139. in="SourceAlpha"
  140. type="matrix"
  141. values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
  142. />
  143. <feOffset dy="2" dx="0" />
  144. <feGaussianBlur stdDeviation="0" />
  145. <feColorMatrix
  146. type="matrix"
  147. values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.10000000149011612 0"
  148. />
  149. <feBlend
  150. mode="normal"
  151. in2="BackgroundImageFix"
  152. result="effect1_dropShadow"
  153. />
  154. <feBlend
  155. mode="normal"
  156. in="SourceGraphic"
  157. in2="effect1_dropShadow"
  158. result="shape"
  159. />
  160. </filter>
  161. </defs>
  162. <g>
  163. <g style="opacity: 0.20000000298023224">
  164. <rect
  165. x="0"
  166. y="0"
  167. width="340"
  168. height="108"
  169. rx="16"
  170. fill="#FA1C1C"
  171. fill-opacity="1"
  172. />
  173. </g>
  174. <g>
  175. <rect
  176. x="4"
  177. y="4"
  178. width="332"
  179. height="100"
  180. rx="14"
  181. fill="#FA1C1C"
  182. fill-opacity="1"
  183. />
  184. <rect
  185. x="5"
  186. y="5"
  187. width="330"
  188. height="98"
  189. rx="13"
  190. fill-opacity="0"
  191. stroke-opacity="1"
  192. stroke="#B71212"
  193. fill="none"
  194. stroke-width="2"
  195. />
  196. </g>
  197. <g>
  198. <g filter="url(#master_svg0_116_3964)">
  199. <path
  200. d="M130.01061352539062,67.294L130.73261352539063,71.9692C134.79861352539064,71.094,140.11861352539063,70.068,145.09661352539064,68.96600000000001L144.7166135253906,64.71000000000001C139.39661352539062,65.69800000000001,133.77261352539062,66.72399999999999,130.01061352539062,67.294ZM131.18861352539062,54.146C131.83461352539064,53.879999999999995,132.78461352539063,53.614000000000004,136.2046135253906,53.234C134.9126135253906,54.944,133.81061352539064,56.274,133.20261352539063,56.844C131.91061352539063,58.212,131.07461352539062,59.01,130.01061352539062,59.238C130.54261352539064,60.492,131.30261352539063,62.696,131.53061352539063,63.608C132.63261352539064,63.038,134.34261352539062,62.582,144.67861352539063,60.758C144.52661352539062,59.77,144.4126135253906,58.022,144.45061352539062,56.806L137.8766135253906,57.794C140.57461352539062,54.792,143.19661352539063,51.296,145.32461352539062,47.8L141.29661352539063,45.178C140.61261352539063,46.507999999999996,139.81461352539063,47.876000000000005,139.01661352539062,49.168L135.78661352539064,49.396C137.91461352539062,46.546,139.9666135253906,43.05,141.48661352539062,39.6591L136.77461352539063,37.715199999999996C135.36861352539063,41.9848,132.82261352539064,46.432,131.98661352539062,47.572C131.1506135253906,48.712,130.4666135253906,49.472,129.63061352539063,49.7C130.20061352539062,50.954,130.9606135253906,53.196,131.18861352539062,54.146ZM152.65861352539062,37.7532L152.65861352539062,42.442L144.64061352539062,42.442L144.64061352539062,46.812L152.65861352539062,46.812L152.65861352539062,50.992000000000004L145.66661352539063,50.992000000000004L145.66661352539063,55.324L164.43861352539062,55.324L164.43861352539062,50.992000000000004L157.40861352539062,50.992000000000004L157.40861352539062,46.812L165.35061352539063,46.812L165.35061352539063,42.442L157.40861352539062,42.442L157.40861352539062,37.7532L152.65861352539062,37.7532ZM146.57861352539064,58.136L146.57861352539064,73.4613L151.02461352539063,73.4613L151.02461352539063,71.816L159.08061352539062,71.816L159.08061352539062,73.3081L163.75461352539062,73.3081L163.75461352539062,58.136L146.57861352539064,58.136ZM151.02461352539063,67.712L151.02461352539063,62.24L159.08061352539062,62.24L159.08061352539062,67.712L151.02461352539063,67.712ZM176.02861352539063,48.522L176.02861352539063,60.796L184.92061352539062,60.796C181.57661352539063,64.1448,176.71261352539062,67.1129,171.96261352539062,68.7493C172.98861352539063,69.7005,174.39461352539064,71.4508,175.11661352539062,72.5926C179.48661352539062,70.7663,183.89461352539064,67.7601,187.39061352539062,64.2207L187.39061352539062,73.5058L192.14061352539062,73.5058L192.14061352539062,63.9548C195.63661352539063,67.6455,200.08261352539063,70.7663,204.52861352539063,72.6686C205.25061352539063,71.4508,206.7326135253906,69.5865,207.79661352539063,68.6353C203.04661352539063,67.0369,198.14461352539064,64.0687,194.80061352539065,60.796L203.95861352539063,60.796L203.95861352539063,48.522L192.14061352539062,48.522L192.14061352539062,45.519999999999996L206.20061352539062,45.519999999999996L206.20061352539062,41.34L192.14061352539062,41.34L192.14061352539062,37.7923L187.39061352539062,37.7923L187.39061352539062,41.34L173.52061352539062,41.34L173.52061352539062,45.519999999999996L187.39061352539062,45.519999999999996L187.39061352539062,48.522L176.02861352539063,48.522ZM180.4366135253906,52.55L187.39061352539062,52.55L187.39061352539062,56.768L180.4366135253906,56.768L180.4366135253906,52.55ZM192.14061352539062,52.55L199.28461352539063,52.55L199.28461352539063,56.768L192.14061352539062,56.768L192.14061352539062,52.55ZM244.58061352539062,38.626599999999996C243.82061352539063,40.9481,242.33861352539063,43.9929,241.23661352539062,45.9344L245.18861352539062,47.418800000000005C246.36661352539062,45.5918,247.77261352539062,42.8891,248.98861352539063,40.2249L244.58061352539062,38.626599999999996ZM225.65661352539064,40.6055C227.1386135253906,42.8131,228.62061352539064,45.781800000000004,229.1146135253906,47.6854L233.2566135253906,45.7438C232.64861352539063,43.8029,231.05261352539063,40.9861,229.532613525
  201. fill="#FFFFFF"
  202. fill-opacity="1"
  203. />
  204. </g>
  205. <g filter="url(#master_svg1_116_3968)">
  206. <g>
  207. <path
  208. d="M75.9936,28.0000519983C90.3686,27.970737,102.0293,39.6314,101.9999,54.0064C101.9999,68.31819999999999,90.3086,79.85419999999999,75.9902,79.9996C69.0876,80.0398,62.4568,77.3118,57.58089,72.4257C52.69333,67.5462,49.9632804,60.9127,50.000373098,54.0064C49.984627,47.104,52.72256,40.4804,57.60733,35.60369C62.4812,30.72514,69.0976,27.9889288,75.9936,28.0000519983ZM75.9935,31.0534C63.3191,31.0534,53.04642,41.332,53.05373,54.0064C52.99297,66.7019,63.2981,77.0099,75.9935,76.9528C88.7456,76.9528,99.0887,66.6065,99.0887,54.0064C99.0887,41.3866,88.7456,31.0534,75.9935,31.0534ZM82.9465,62.3801C83.8553,62.3801,84.5988,61.6365,84.5988,60.7278L84.5988,47.2719C84.5988,46.3632,83.8553,45.6197,82.9465,45.6197L69.0577,45.6197C68.1452,45.6197,67.4055,46.3594,67.4055,47.2719L67.4055,60.7278C67.4055,61.6403,68.1452,62.3801,69.0577,62.3801L82.9465,62.3801Z"
  209. fill-rule="evenodd"
  210. fill="#FFFFFF"
  211. fill-opacity="1"
  212. />
  213. </g>
  214. </g>
  215. </g>
  216. </g>
  217. </svg>
  218. <svg
  219. v-else
  220. @click="startDisinfect"
  221. xmlns="http://www.w3.org/2000/svg"
  222. xmlns:xlink="http://www.w3.org/1999/xlink"
  223. fill="none"
  224. version="1.1"
  225. width="340"
  226. height="108"
  227. viewBox="0 0 340 108"
  228. >
  229. <defs>
  230. <filter
  231. id="master_svg0_95_3758"
  232. filterUnits="objectBoundingBox"
  233. color-interpolation-filters="sRGB"
  234. x="0"
  235. y="0"
  236. width="164"
  237. height="57"
  238. >
  239. <feFlood flood-opacity="0" result="BackgroundImageFix" />
  240. <feColorMatrix
  241. in="SourceAlpha"
  242. type="matrix"
  243. values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
  244. />
  245. <feOffset dy="2" dx="0" />
  246. <feGaussianBlur stdDeviation="0" />
  247. <feColorMatrix
  248. type="matrix"
  249. values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.10000000149011612 0"
  250. />
  251. <feBlend
  252. mode="normal"
  253. in2="BackgroundImageFix"
  254. result="effect1_dropShadow"
  255. />
  256. <feBlend
  257. mode="normal"
  258. in="SourceGraphic"
  259. in2="effect1_dropShadow"
  260. result="shape"
  261. />
  262. </filter>
  263. <filter
  264. id="master_svg1_95_4241"
  265. filterUnits="objectBoundingBox"
  266. color-interpolation-filters="sRGB"
  267. x="0"
  268. y="0"
  269. width="60"
  270. height="62"
  271. >
  272. <feFlood flood-opacity="0" result="BackgroundImageFix" />
  273. <feColorMatrix
  274. in="SourceAlpha"
  275. type="matrix"
  276. values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
  277. />
  278. <feOffset dy="2" dx="0" />
  279. <feGaussianBlur stdDeviation="0" />
  280. <feColorMatrix
  281. type="matrix"
  282. values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.10000000149011612 0"
  283. />
  284. <feBlend
  285. mode="normal"
  286. in2="BackgroundImageFix"
  287. result="effect1_dropShadow"
  288. />
  289. <feBlend
  290. mode="normal"
  291. in="SourceGraphic"
  292. in2="effect1_dropShadow"
  293. result="shape"
  294. />
  295. </filter>
  296. <clipPath id="master_svg2_95_2610">
  297. <rect x="46" y="24" width="60" height="60" rx="0" />
  298. </clipPath>
  299. </defs>
  300. <g>
  301. <g style="opacity: 0.20000000298023224">
  302. <rect
  303. x="0"
  304. y="0"
  305. width="340"
  306. height="108"
  307. rx="16"
  308. fill="#17F179"
  309. fill-opacity="1"
  310. />
  311. </g>
  312. <g>
  313. <rect
  314. x="4"
  315. y="4"
  316. width="332"
  317. height="100"
  318. rx="14"
  319. fill="#17F179"
  320. fill-opacity="1"
  321. />
  322. <rect
  323. x="5"
  324. y="5"
  325. width="330"
  326. height="98"
  327. rx="13"
  328. fill-opacity="0"
  329. stroke-opacity="1"
  330. stroke="#1AD66E"
  331. fill="none"
  332. stroke-width="2"
  333. />
  334. </g>
  335. <g>
  336. <g filter="url(#master_svg0_95_3758)">
  337. <path
  338. d="M152.77261352539062,44.304L152.77261352539062,53.614000000000004L144.07061352539063,53.614000000000004L144.07061352539063,52.512L144.07061352539063,44.304L152.77261352539062,44.304ZM130.77061352539062,53.614000000000004L130.77061352539062,57.984L138.9786135253906,57.984C138.25661352539063,62.4733,136.2046135253906,66.88669999999999,130.6566135253906,70.2342C131.79661352539063,70.9948,133.54461352539062,72.6312,134.34261352539062,73.6584C140.9546135253906,69.47370000000001,143.12061352539064,63.7285,143.80461352539064,57.984L152.77261352539062,57.984L152.77261352539062,73.5058L157.56061352539064,73.5058L157.56061352539064,57.984L165.3886135253906,57.984L165.3886135253906,53.614000000000004L157.56061352539064,53.614000000000004L157.56061352539064,44.304L164.28661352539064,44.304L164.28661352539064,39.972L132.02461352539063,39.972L132.02461352539063,44.304L139.35861352539064,44.304L139.35861352539064,52.474000000000004L139.35861352539064,53.614000000000004L130.77061352539062,53.614000000000004ZM187.88461352539062,57.489999999999995L187.88461352539062,73.4613L191.98861352539063,73.4613L191.98861352539063,71.93L201.29861352539064,71.93L201.29861352539064,73.42269999999999L205.63061352539063,73.42269999999999L205.63061352539063,57.489999999999995L187.88461352539062,57.489999999999995ZM191.98861352539063,67.902L191.98861352539063,61.518L201.29861352539064,61.518L201.29861352539064,67.902L191.98861352539063,67.902ZM187.23861352539063,55.361999999999995C188.68261352539062,54.83,190.58261352539063,54.602000000000004,203.31261352539065,53.5C203.73061352539062,54.412,204.07261352539064,55.286,204.30061352539065,56.046L208.21461352539063,53.956C207.11261352539063,50.878,204.52861352539063,46.47,201.90661352539064,43.159800000000004L198.29661352539063,44.9494C199.32261352539064,46.318,200.34861352539062,47.914,201.29861352539064,49.510000000000005L192.25461352539062,50.117999999999995C194.38261352539064,46.888000000000005,196.51061352539062,42.9692,198.14461352539064,39.0463L193.39461352539064,37.79C191.79861352539064,42.512100000000004,189.10061352539063,47.458,188.18861352539062,48.75C187.31461352539063,50.08,186.59261352539062,50.916,185.75661352539063,51.144C186.28861352539062,52.284,187.01061352539062,54.488,187.23861352539063,55.361999999999995ZM178.8406135253906,49.510000000000005L181.34861352539062,49.510000000000005C181.00661352539063,53.082,180.4366135253906,56.274,179.56261352539062,59.048L177.20661352539062,57.072C177.77661352539062,54.754000000000005,178.34661352539064,52.17,178.8406135253906,49.510000000000005ZM172.60861352539064,58.554C174.28061352539063,59.922,176.14261352539063,61.594,177.89061352539062,63.266C176.40861352539062,66.22999999999999,174.43261352539062,68.434,171.9246135253906,69.80199999999999C172.83661352539062,70.676,174.01461352539062,72.313,174.58461352539064,73.42269999999999C177.24461352539063,71.664,179.37261352539062,69.422,181.04461352539062,66.49600000000001C182.10861352539064,67.674,182.98261352539063,68.77600000000001,183.62861352539062,69.76400000000001L186.3646135253906,66.03999999999999C185.5666135253906,64.9,184.35061352539063,63.57,182.98261352539063,62.202C184.50261352539061,57.870000000000005,185.3766135253906,52.436,185.71861352539062,45.596000000000004L183.09661352539064,45.254000000000005L182.37461352539063,45.33L179.60061352539063,45.33C180.01861352539063,42.8932,180.36061352539062,40.4939,180.6266135253906,38.2472L176.33261352539063,37.9806C176.14261352539063,40.265299999999996,175.83861352539063,42.8167,175.45861352539063,45.33L172.22861352539064,45.33L172.22861352539064,49.510000000000005L174.73661352539062,49.510000000000005C174.0906135253906,52.891999999999996,173.33061352539062,56.084,172.60861352539064,58.554ZM244.58061352539062,38.626599999999996C243.82061352539063,40.9481,242.33861352539063,43.9929,241.23661352539062,45.9344L245.18861352539062,47.418800000000005C246.36661352539062,45.5918,247.77261352539062,42.8891,248.98861352539063,40.2249L244.58061352539062,38.626599999999996ZM225.65661352539064,40.6055C227.1386135253906,42.8131,228.62061352539064,45
  339. fill="#FFFFFF"
  340. fill-opacity="1"
  341. />
  342. </g>
  343. <g filter="url(#master_svg1_95_4241)">
  344. <g clip-path="url(#master_svg2_95_2610)">
  345. <g>
  346. <path
  347. d="M75.9999875,31.6171875C79.0233875,31.6171875,81.95428749999999,32.208397500000004,84.71108749999999,33.3744175C87.37598750000001,34.5017575,89.7700875,36.1160175,91.8267875,38.1726875C93.8833875,40.2292875,95.4982875,42.6233875,96.6249875,45.288287499999996C97.79158749999999,48.0456875,98.3827875,50.9765875,98.3827875,53.9999875C98.3827875,57.0233875,97.79158749999999,59.9542875,96.6255875,62.7110875C95.4982875,65.37598750000001,93.8839875,67.7700875,91.8273875,69.8267875C89.77068750000001,71.8833875,87.3765875,73.4982875,84.7116875,74.6249875C81.95428749999999,75.79158749999999,79.0233875,76.3827875,75.9999875,76.3827875C72.9765875,76.3827875,70.0456875,75.79158749999999,67.2888875,74.6255875C64.6239875,73.4982875,62.229887500000004,71.8839875,60.1732875,69.8273875C58.1165975,67.77068750000001,56.5017575,65.3765875,55.3749975,62.7116875C54.208397500000004,59.9542875,53.6171875,57.0233875,53.6171875,53.9999875C53.6171875,50.9765875,54.208397500000004,48.0456875,55.3744175,45.2888875C56.5017575,42.6239875,58.1160175,40.229887500000004,60.1726875,38.1732875C62.2292875,36.1165975,64.6234875,34.5017575,67.2882875,33.3749975C70.0456875,32.208397500000004,72.9765875,31.6171875,75.9999875,31.6171875ZM75.9999875,27.8671875C61.5671875,27.86718660593,49.8671875,39.5671875,49.8671875,53.9999875C49.8671875,68.4327875,61.5671875,80.1327875,75.9999875,80.1327875C90.4327875,80.1327875,102.1327875,68.4327875,102.1327875,53.9999875C102.1327875,39.5671875,90.4327875,27.86718660593,75.9999875,27.8671875ZM61.4101875,53.9999875C61.4101875,62.0577875,67.94228749999999,68.5898875,75.9999875,68.5898875C84.0577875,68.5898875,90.5898875,62.0577875,90.5898875,53.9999875C90.5898875,45.9422875,84.0577875,39.4101875,75.9999875,39.4101875C67.94228749999999,39.4101875,61.4101875,45.9422875,61.4101875,53.9999875Z"
  348. fill="#FFFFFF"
  349. fill-opacity="1"
  350. />
  351. </g>
  352. </g>
  353. </g>
  354. </g>
  355. </g>
  356. </svg>
  357. <div class="progress">
  358. <p class="title">预计剩余时间</p>
  359. <div class="time">
  360. {{
  361. operatorStore.estimatedRemainingTimeS == 0
  362. ? '已结束'
  363. : `${time_To_hhmmss(operatorStore.estimatedRemainingTimeS)}`
  364. }}
  365. </div>
  366. </div>
  367. </div>
  368. <!-- <WarnModal /> -->
  369. <LogPicker
  370. v-if="logVisible"
  371. :changeLogVal="changeLogVal"
  372. :logVal="logVal"
  373. />
  374. </div>
  375. </template>
  376. <script setup>
  377. import LogPicker from 'cpns/dialogs/LogPicker'
  378. import WarnModal from 'cpns/dialogs/WarnModal'
  379. import DisinfectantLiquidInfo from 'cpns/info/DisinfectantLiquidInfo'
  380. import EnvironmentInfo from 'cpns/info/EnvironmentInfo'
  381. import { ref, watch, onMounted, onUnmounted } from 'vue'
  382. import { useOperatorStore, useWebSocketStore } from '@/store'
  383. import { startDisinfectionJSON, getStateJSON } from '@/mock/command'
  384. import { showSuccessToast, showFailToast } from 'vant'
  385. import { time_To_hhmmss } from '@/utils'
  386. const operatorStore = useOperatorStore()
  387. const webSocketStore = useWebSocketStore()
  388. const props = defineProps({
  389. changeShowOperator: {
  390. type: Function,
  391. },
  392. handleShowKeyBoard: {
  393. type: Function,
  394. },
  395. hideKeyBoard: {
  396. type: Function,
  397. },
  398. input: {
  399. type: String,
  400. },
  401. })
  402. const toDetail = () => {
  403. // 判断当前消毒任务是否开始,如果开始时才生效 否则点击不生效
  404. if (operatorStore.disinfectStatus != 0) {
  405. props.changeShowOperator(false)
  406. }
  407. }
  408. const logVisible = ref(false)
  409. const logVal = ref('3')
  410. const roomSize = ref(0)
  411. watch(() => {
  412. if (props.input) {
  413. roomSize.value = props.input?.match(/\d+/g)[0]
  414. } else {
  415. roomSize.value = 0
  416. }
  417. })
  418. const changeLogVal = val => {
  419. logVal.value = val
  420. logVisible.value = false
  421. }
  422. const startDisinfect = () => {
  423. // 改变开始消毒状态 如果已经开始则不可点击
  424. if (![1, 2].includes(operatorStore.disinfectStatus)) {
  425. localStorage.removeItem('bin')
  426. localStorage.removeItem('envir1')
  427. localStorage.removeItem('envir2')
  428. localStorage.clear()
  429. webSocketStore.sendCommandMsg(
  430. startDisinfectionJSON(parseInt(logVal.value), parseInt(roomSize.value)),
  431. )
  432. props.changeShowOperator(false)
  433. }
  434. }
  435. const showLogPicker = () => {
  436. if (![1, 2].includes(operatorStore.disinfectStatus)) {
  437. logVisible.value = true
  438. }
  439. }
  440. const timer = ref(null)
  441. onMounted(() => {
  442. timer.value = setInterval(() => {
  443. webSocketStore.sendCommandMsg(getStateJSON)
  444. }, 1000)
  445. })
  446. onUnmounted(() => {
  447. timer.value = null
  448. })
  449. </script>
  450. <style lang="scss" scoped>
  451. .operator_main_content {
  452. margin-bottom: 19px;
  453. height: 580px;
  454. box-sizing: border-box;
  455. display: flex;
  456. align-items: center;
  457. .left_contaienr {
  458. margin-right: 30px;
  459. width: 766px;
  460. height: 580px;
  461. box-sizing: border-box;
  462. border-radius: 16px;
  463. background: #ffffff;
  464. padding: 20px;
  465. .info_cards {
  466. width: 726px;
  467. height: 470px;
  468. box-sizing: border-box;
  469. display: grid;
  470. grid-template-columns: repeat(2, 1fr);
  471. grid-template-rows: repeat(2, 1fr);
  472. column-gap: 20px;
  473. row-gap: 20px;
  474. margin-bottom: 20px;
  475. .card {
  476. width: 353px;
  477. height: 225px;
  478. border-radius: 17.5px;
  479. background: #06518b;
  480. }
  481. }
  482. .warn_wrap {
  483. display: flex;
  484. align-items: center;
  485. justify-content: space-between;
  486. box-sizing: border-box;
  487. width: 726px;
  488. height: 50px;
  489. border-radius: 6px;
  490. .warn_text {
  491. font-family: Source Han Sans CN;
  492. font-size: 12px;
  493. font-weight: 500;
  494. letter-spacing: 0.1em;
  495. color: #fa1c1c;
  496. background: #f6f6f6;
  497. width: 468px;
  498. height: 50px;
  499. border-radius: 6px;
  500. display: flex;
  501. align-items: center;
  502. padding-left: 22px;
  503. }
  504. .detail_btn {
  505. width: 105px;
  506. height: 40px;
  507. border-radius: 20px;
  508. background: #06518b;
  509. display: flex;
  510. align-items: center;
  511. justify-content: center;
  512. font-family: Source Han Sans CN;
  513. font-size: 18px;
  514. font-weight: normal;
  515. letter-spacing: 0.1em;
  516. color: #ffffff;
  517. }
  518. }
  519. }
  520. .right_container {
  521. height: 580px;
  522. box-sizing: border-box;
  523. border-radius: 16px;
  524. background: #ffffff;
  525. flex: 1;
  526. padding: 42px;
  527. padding-top: 32px;
  528. .setting_title {
  529. width: 340px;
  530. height: 45px;
  531. border-radius: 23px;
  532. background: #06518b;
  533. padding: 0 24px;
  534. box-sizing: border-box;
  535. display: flex;
  536. align-items: center;
  537. justify-content: space-between;
  538. font-family: Source Han Sans CN;
  539. font-size: 14px;
  540. font-weight: normal;
  541. letter-spacing: 0.1em;
  542. color: #ffffff;
  543. margin-bottom: 41px;
  544. }
  545. .set_form {
  546. width: 340px;
  547. height: 153px;
  548. box-sizing: border-box;
  549. margin-bottom: 26px;
  550. overflow: hidden;
  551. background: url(../assets/img/operator/form.png) no-repeat;
  552. background-size: 100% 100%;
  553. position: relative;
  554. .textP {
  555. font-family: Source Han Sans CN;
  556. font-size: 28px;
  557. font-weight: bold;
  558. line-height: normal;
  559. letter-spacing: 0.02em;
  560. color: #17f179;
  561. position: absolute;
  562. left: 197px;
  563. top: 3px;
  564. width: 68px;
  565. height: 41px;
  566. text-align: center;
  567. }
  568. .log {
  569. position: absolute;
  570. bottom: 0;
  571. left: 0px;
  572. width: 240px;
  573. height: 44px;
  574. text-align: center;
  575. display: flex;
  576. align-items: center;
  577. justify-content: center;
  578. font-family: Source Han Sans CN;
  579. font-size: 14px;
  580. font-weight: 500;
  581. letter-spacing: 0.06em;
  582. color: #0e0e0e;
  583. }
  584. }
  585. .start {
  586. margin-bottom: 30px;
  587. width: 340px;
  588. height: 45px;
  589. border-radius: 23px;
  590. background: #06518b;
  591. display: flex;
  592. align-items: center;
  593. justify-content: center;
  594. font-family: Source Han Sans CN;
  595. font-size: 14px;
  596. font-weight: normal;
  597. letter-spacing: 0.1em;
  598. color: #ffffff;
  599. position: relative;
  600. overflow: hidden;
  601. }
  602. .cant {
  603. background: #f4f4f4;
  604. }
  605. .progress {
  606. width: 340px;
  607. height: 114px;
  608. border-radius: 16px;
  609. opacity: 1;
  610. background: #f6f6f6;
  611. box-sizing: border-box;
  612. padding: 27px 24px 18px 27px;
  613. margin-top: 30px;
  614. .title {
  615. font-family: Source Han Sans CN;
  616. font-size: 12px;
  617. font-weight: 350;
  618. letter-spacing: 0.06em;
  619. color: #9e9e9e;
  620. margin-bottom: 13px;
  621. }
  622. .time {
  623. text-align: center;
  624. padding: 10px;
  625. }
  626. .tube {
  627. width: 292px;
  628. height: 14px;
  629. border-radius: 7px;
  630. background: #ffffff;
  631. margin-bottom: 11px;
  632. position: relative;
  633. overflow: hidden;
  634. .pro {
  635. position: absolute;
  636. left: 0;
  637. top: 0;
  638. height: 14px;
  639. width: var(--width);
  640. border-radius: 7px;
  641. background: #06518b;
  642. }
  643. }
  644. .num {
  645. display: flex;
  646. justify-content: flex-end;
  647. font-family: Source Han Sans CN;
  648. font-size: 10px;
  649. font-weight: normal;
  650. letter-spacing: 0.06em;
  651. color: #9e9e9e;
  652. }
  653. }
  654. }
  655. }
  656. </style>