wangzhibo
2026-07-16 e89c20699b115e565b0eeab3c7241cdb3a82eaef
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>数据上报测试客户端</title>
  <link rel="stylesheet" href="/style.css" />
</head>
<body>
  <div class="container">
    <header>
      <h1>数据上报测试客户端</h1>
      <p>选择对应 Tab 进行各类数据上报联调测试</p>
    </header>
 
    <nav class="tabs" role="tablist">
      <button type="button" class="tab active" data-tab="weight" role="tab" aria-selected="true">垃圾称重数据上报测试</button>
      <button type="button" class="tab" data-tab="gps" role="tab" aria-selected="false">车载监控GPS位置上报测试</button>
      <button type="button" class="tab" data-tab="driver" role="tab" aria-selected="false">车载监控司机异常消息测试</button>
      <button type="button" class="tab" data-tab="health" role="tab" aria-selected="false">人员位置健康数据上报测试</button>
    </nav>
 
    <!-- Tab 1: 垃圾称重 -->
    <section id="panel-weight" class="tab-panel active" role="tabpanel">
      <form id="reportForm" class="card">
        <div class="grid">
          <label>
            目标地址
            <input id="targetUrl" name="targetUrl" type="text" required />
          </label>
          <label>
            clientId
            <input id="clientId" name="clientId" type="text" required />
          </label>
          <label>
            secret
            <input id="secret" name="secret" type="text" required />
          </label>
          <label>
            设备号 deviceNo
            <input id="deviceNo" name="deviceNo" type="text" value="A01" required />
          </label>
          <label>
            上传时间 uploadTime
            <input id="uploadTime" name="uploadTime" type="text" required />
            <small>格式:yyyy-MM-dd HH:mm:ss</small>
          </label>
          <label>
            垃圾种类 garbageType
            <select id="garbageType" name="garbageType" required>
              <option value="100">100 - 干垃圾</option>
              <option value="200">200 - 湿垃圾</option>
              <option value="300">300 - 可回收</option>
              <option value="301" selected>301 - 可回收-纸壳</option>
              <option value="302">302 - 可回收-饮料瓶</option>
              <option value="303">303 - 可回收-易拉罐</option>
              <option value="304">304 - 可回收-旧衣帽</option>
              <option value="305">305 - 可回收-玻璃</option>
              <option value="306">306 - 可回收-电子产品</option>
              <option value="307">307 - 可回收-金属-铁</option>
              <option value="308">308 - 可回收-金属-铝</option>
              <option value="309">309 - 可回收-金属-铜</option>
              <option value="310">310 - 可回收-金属-不锈钢</option>
              <option value="311">311 - 可回收-其他</option>
              <option value="400">400 - 有害垃圾</option>
            </select>
          </label>
          <label>
            垃圾重量 garbageWeight (kg)
            <input id="garbageWeight" name="garbageWeight" type="number" step="0.001" min="0.001" value="50.23" required />
          </label>
        </div>
 
        <label class="full">
          附加信息 others(可选,JSON 字符串)
          <textarea id="others" name="others" rows="4" placeholder='{"remark":"测试"}'></textarea>
        </label>
 
        <div class="actions">
          <button type="button" id="nowBtn" class="secondary">填充当前时间</button>
          <button type="submit" id="submitBtn">上报</button>
        </div>
      </form>
 
      <section class="card">
        <h2>调试结果</h2>
        <pre id="result">等待上报...</pre>
      </section>
    </section>
 
    <!-- Tab 2: GPS -->
    <section id="panel-gps" class="tab-panel" role="tabpanel" hidden>
      <div class="card">
        <label>
          目标地址
          <input id="gpsTargetUrl" type="text" value="http://127.0.0.1:8001/open/push/cameragps" />
        </label>
        <label class="full">
          上报 JSON(可直接编辑)
          <textarea id="gpsPayload" rows="20" spellcheck="false"></textarea>
        </label>
        <div class="actions">
          <button type="button" id="gpsSendBtn">发送</button>
        </div>
      </div>
      <section class="card">
        <h2>返回结果</h2>
        <pre id="gpsResult">等待发送...</pre>
      </section>
    </section>
 
    <!-- Tab 3: 司机异常 - 留白 -->
    <section id="panel-driver" class="tab-panel" role="tabpanel" hidden>
      <div class="card placeholder">
        <h2>车载监控司机异常消息测试</h2>
        <p>功能待明确需求后补充</p>
      </div>
    </section>
 
    <!-- Tab 4: 人员健康 - 留白 -->
    <section id="panel-health" class="tab-panel" role="tabpanel" hidden>
      <div class="card placeholder">
        <h2>人员位置健康数据上报测试</h2>
        <p>功能待明确需求后补充</p>
      </div>
    </section>
  </div>
  <script src="/app.js"></script>
</body>
</html>