diff --git a/index/index.js b/index/index.js
index e813443..09988d3 100644
--- a/index/index.js
+++ b/index/index.js
@@ -82,7 +82,7 @@ Page({
// 连接指定设备
// if(device.deviceId=="03:02:02:07:65:98"){
// if(device.deviceId=="03:02:02:07:5C:B7"){
- if(device.deviceId=="03:02:02:07:5B:41"){
+ if(device.deviceId=="03:02:02:07:62:3E"){
// if(device.deviceId=="03:02:02:07:5E:BE"){
this.connectToDevice(device.deviceId);
}
@@ -311,12 +311,12 @@ Page({
console.log("接口需要的睡眠数据:",result);
// 从缓存中获取睡眠日期
- let field = CommonUtil.commandToField(0x53);// 根据指令获取字段
- // console.log("field>>>:",field);
- let lastDate = HealthDataCache.getLastTimeField(field);
- console.log("lastDate>>>:",lastDate);
- let data = CommonUtil.removeBeforeDate(result,lastDate);
- console.log("data:",data)
+ // let field = CommonUtil.commandToField(0x53);// 根据指令获取字段
+ // // console.log("field>>>:",field);
+ // let lastDate = HealthDataCache.getLastTimeField(field);
+ // console.log("lastDate>>>:",lastDate);
+ // let data = CommonUtil.removeBeforeDate(result,lastDate);
+ // console.log("data:",data)
// 更新缓存
HealthDataCache.updateSleepData(result[result.length-1].date);
// 调用接口传睡眠后,清空数据
@@ -399,7 +399,7 @@ Page({
// const HRPacket = DataPacket.generateReadHRDataPacket();
// SendCommandUtil.sendPackage(this.data.deviceId,HRPacket);
- this.sendHealthCommand(0x66)
+ this.sendHealthCommand(0x53)
},
@@ -675,6 +675,10 @@ Page({
}
return parseInt(Y);
- },
+ },
+ testFoun(){
+ let state = CommonUtil.isNextDay("20250131","20250201");
+ console.log("state",state)
+ },
});
\ No newline at end of file
diff --git a/index/index.wxml b/index/index.wxml
index a494290..58a4e28 100644
--- a/index/index.wxml
+++ b/index/index.wxml
@@ -8,6 +8,8 @@
+
+
diff --git a/project.config.json b/project.config.json
index b5c94f9..b2492cb 100644
--- a/project.config.json
+++ b/project.config.json
@@ -43,5 +43,5 @@
"ignore": [],
"include": []
},
- "appid": "wxb761a6f5c6200ed8"
+ "appid": "wx700a26638f1850fe"
}
\ No newline at end of file
diff --git a/project.private.config.json b/project.private.config.json
index b65990f..ad9a8af 100644
--- a/project.private.config.json
+++ b/project.private.config.json
@@ -3,5 +3,6 @@
"projectname": "2203_bluetooth",
"setting": {
"compileHotReLoad": true
- }
+ },
+ "libVersion": "3.6.4"
}
\ No newline at end of file
diff --git a/utils/CommonUtil.js b/utils/CommonUtil.js
index 911234f..a049ad4 100644
--- a/utils/CommonUtil.js
+++ b/utils/CommonUtil.js
@@ -371,30 +371,39 @@ const CommonUtil = {
});
}
}
+ } else {
+ // 还要考虑隔天的情况,如果隔天有数据缺失的也需要补齐
+ let currentDate = data[i].yyyyMMdd;
+ let nextDate = data[i + 1].yyyyMMdd;
+
+ // if(CommonUtil.isNextDay(currentDate,nextDate) &&
+ // currentMinute > 1200 && nextDate > 480 ){
+ // console.log(currentDate,currentMinute);
+ // console.log(nextDate,nextMinute);
+ // console.log("相减的差值:",nextMinute - currentMinute);
+ // console.log("是否跨天:",CommonUtil.isNextDay(currentDate,nextDate));
+ // if(currentMinute < 1439){
+ // for (let j = currentMinute + 1; j < 1440; j++) {
+ // result.push({
+ // minute: j,
+ // status: 3,
+ // yyyyMMdd: data[i].yyyyMMdd
+ // });
+ // }
+ // }
+ // if(0 < nextMinute){
+ // for (let j = 0; j < nextMinute; j++) {
+ // result.push({
+ // minute: j,
+ // status: 3,
+ // yyyyMMdd: data[i + 1].yyyyMMdd
+ // });
+ // }
+ // }
+
+ // }
}
-
- // 表示隔天了
- if(nextMinute - currentMinute < 1){
- let currentDate = parseInt(data[i].yyyyMMdd);
- let nextDate = parseInt(data[i + 1].yyyyMMdd);
- if((nextDate - currentDate) == 1){
- for (let j = currentMinute + 1; j <= 1440; j++) {
- result.push({
- minute: j,
- status: 3,
- yyyyMMdd: data[i].yyyyMMdd
- });
- }
-
- for (let j = 0; j < nextMinute; j++) {
- result.push({
- minute: j,
- status: 3,
- yyyyMMdd: data[i + 1].yyyyMMdd
- });
- }
- }
- }
+
}
}
@@ -434,7 +443,30 @@ const CommonUtil = {
// 只保留日期大于目标日期的项
return itemDate > target;
});
- }
+ },
+
+ /**
+ * 是否是下一天
+ * @param {} date1
+ * @param {*} date2
+ */
+ isNextDay(date1, date2) {
+ // 将日期格式化为 yyyy-MM-dd 形式
+ const d1 = new Date(date1.toString().slice(0, 4), date1.toString().slice(4, 6) - 1, date1.toString().slice(6, 8));
+ const d2 = new Date(date2.toString().slice(0, 4), date2.toString().slice(4, 6) - 1, date2.toString().slice(6, 8));
+
+ // 将时间部分清零
+ d1.setHours(0, 0, 0, 0);
+ d2.setHours(0, 0, 0, 0);
+
+ // 计算日期差值(单位:毫秒)
+ const diffTime = d2 - d1;
+ const oneDayInMillis = 24 * 60 * 60 * 1000; // 一天的毫秒数
+
+ // 判断差值是否为一天
+ return diffTime === oneDayInMillis;
+ },
+
}
diff --git a/utils/ParseDataPacket.js b/utils/ParseDataPacket.js
index b70dc08..530d1be 100644
--- a/utils/ParseDataPacket.js
+++ b/utils/ParseDataPacket.js
@@ -381,7 +381,6 @@ const parseDataPacket = {
result.push({
minute: currentMinute, // 分钟递增
status: this.mapSleepStatus(status), // 映射睡眠状态
- // yyyyMMdd: `${parseInt(year) + 2000}${month}${(parseInt(day) + 1).toString().padStart(2, '0')}`, // 格式化为yyyyMMdd
yyyyMMdd: date
});