|
|
|
|
@ -187,7 +187,7 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
ModeStepIndex: 0, // 当前护理功效步骤:每个步骤时间不定,所以时间另外计算,根据步骤显示
|
|
|
|
|
ModeStepTimeArray: [], // 护理功效时间步骤,用于切换显示GIF
|
|
|
|
|
|
|
|
|
|
TestModeStepIndex: 0, // 水分测试步骤
|
|
|
|
|
// TestModeStepIndex: 0, // 水分测试步骤
|
|
|
|
|
EssenceStepIndex: 0, // 精华促渗步骤
|
|
|
|
|
MaskModeStepIndex: 0, // 面膜促渗步骤
|
|
|
|
|
|
|
|
|
|
@ -290,9 +290,9 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
this.getInstrumentClockSummary();
|
|
|
|
|
this.getInstrumentClockDetail();
|
|
|
|
|
}
|
|
|
|
|
componentDidMount() { }
|
|
|
|
|
componentDidMount() {}
|
|
|
|
|
|
|
|
|
|
componentWillUnmount() { }
|
|
|
|
|
componentWillUnmount() {}
|
|
|
|
|
|
|
|
|
|
componentDidShow() {
|
|
|
|
|
console.log("页面显示了");
|
|
|
|
|
@ -518,7 +518,7 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
activeModeID: data.id,
|
|
|
|
|
ModeID: "mode_" + data.id,
|
|
|
|
|
ModeStepIndex: 0,
|
|
|
|
|
TestModeStepIndex: 0, // 水分测试步骤
|
|
|
|
|
waterStepIndex: 0, // 水分测试步骤
|
|
|
|
|
EssenceStepIndex: 0, // 精华促渗步骤
|
|
|
|
|
MaskModeStepIndex: 0, // 面膜促渗步骤
|
|
|
|
|
ModeType: this.ModeTypeArray[data.modeClass],
|
|
|
|
|
@ -670,14 +670,12 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
nursingTime: s_to_hms(this.elapsedTime),
|
|
|
|
|
nursingData: JSON.stringify({
|
|
|
|
|
GearData: [...waterStepList],
|
|
|
|
|
})
|
|
|
|
|
}),
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// params = { ...params, ...nursingData };
|
|
|
|
|
let res: any = await InstrumentInfo.apiNursingLog.addLog(
|
|
|
|
|
JSON.stringify(
|
|
|
|
|
params
|
|
|
|
|
)
|
|
|
|
|
JSON.stringify(params)
|
|
|
|
|
);
|
|
|
|
|
setTimeout(async () => {
|
|
|
|
|
this.setState({
|
|
|
|
|
@ -686,59 +684,78 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
let date = new Date();
|
|
|
|
|
|
|
|
|
|
let year = date.getFullYear();
|
|
|
|
|
let month = (date.getMonth() + 1).toString().padStart(2, '0');
|
|
|
|
|
let day = date.getDate().toString().padStart(2, '0');
|
|
|
|
|
let month = (date.getMonth() + 1).toString().padStart(2, "0");
|
|
|
|
|
let day = date.getDate().toString().padStart(2, "0");
|
|
|
|
|
|
|
|
|
|
let formattedDate = `${year}.${month}.${day}`;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.moistureTest(params.nursingData, formattedDate, ActiveModeItem.id, currentDevice.id)
|
|
|
|
|
this.moistureTest(
|
|
|
|
|
params.nursingData,
|
|
|
|
|
formattedDate,
|
|
|
|
|
ActiveModeItem.id,
|
|
|
|
|
currentDevice.id
|
|
|
|
|
);
|
|
|
|
|
}, 2000);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
async moistureTest(nursingData, formattedDate, ActiveModeItemId, currentDeviceId) {
|
|
|
|
|
async moistureTest(
|
|
|
|
|
nursingData,
|
|
|
|
|
formattedDate,
|
|
|
|
|
ActiveModeItemId,
|
|
|
|
|
currentDeviceId
|
|
|
|
|
) {
|
|
|
|
|
let data = {
|
|
|
|
|
queryDate: formattedDate,
|
|
|
|
|
instrumentId: currentDeviceId
|
|
|
|
|
}
|
|
|
|
|
instrumentId: currentDeviceId,
|
|
|
|
|
};
|
|
|
|
|
let res = await InstrumentInfo.fr200.moistureTest(data);
|
|
|
|
|
let echartsData = res.data.rows
|
|
|
|
|
let echartsData = res.data.rows;
|
|
|
|
|
for (let i = 0; i < echartsData.length; i++) {
|
|
|
|
|
for (let j = i + 1; j < echartsData.length; j++) {
|
|
|
|
|
if (echartsData[i].createTime.split(' ')[0] == echartsData[j].createTime.split(' ')[0]) {
|
|
|
|
|
let result = Date.parse(echartsData[i].createTime) - Date.parse(echartsData[j].createTime)
|
|
|
|
|
if (
|
|
|
|
|
echartsData[i].createTime.split(" ")[0] ==
|
|
|
|
|
echartsData[j].createTime.split(" ")[0]
|
|
|
|
|
) {
|
|
|
|
|
let result =
|
|
|
|
|
Date.parse(echartsData[i].createTime) -
|
|
|
|
|
Date.parse(echartsData[j].createTime);
|
|
|
|
|
if (result < 0) {
|
|
|
|
|
echartsData.splice(i, 1)
|
|
|
|
|
echartsData.splice(i, 1);
|
|
|
|
|
} else {
|
|
|
|
|
echartsData.splice(j, 1)
|
|
|
|
|
echartsData.splice(j, 1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
let gears: any = []
|
|
|
|
|
let eDate: any = []
|
|
|
|
|
echartsData?.map(item => {
|
|
|
|
|
const result = item.createTime.split(' ')[0].substring(5);
|
|
|
|
|
eDate.push(result)
|
|
|
|
|
item.nursingData = JSON.parse(item.nursingData)
|
|
|
|
|
let level: any = 0
|
|
|
|
|
item.nursingData?.GearData?.map(gear => {
|
|
|
|
|
level = level + gear.forehead
|
|
|
|
|
})
|
|
|
|
|
level = Math.floor(level / 3)
|
|
|
|
|
gears.push(level)
|
|
|
|
|
})
|
|
|
|
|
let gears: any = [];
|
|
|
|
|
let eDate: any = [];
|
|
|
|
|
echartsData?.map((item) => {
|
|
|
|
|
console.log(item, "查看数据");
|
|
|
|
|
|
|
|
|
|
const result = item.createTime.split(" ")[0].substring(5);
|
|
|
|
|
eDate.push(result);
|
|
|
|
|
item.nursingData = JSON.parse(item.nursingData);
|
|
|
|
|
let level: any = 0;
|
|
|
|
|
item.nursingData?.GearData?.map((gear) => {
|
|
|
|
|
level = level + gear.forehead;
|
|
|
|
|
});
|
|
|
|
|
level = Math.floor(level / 3);
|
|
|
|
|
gears.push(level);
|
|
|
|
|
});
|
|
|
|
|
echartsData = {
|
|
|
|
|
gears, eDate
|
|
|
|
|
}
|
|
|
|
|
setStorageSync('moistureEachtsData', JSON.stringify(echartsData))
|
|
|
|
|
gears,
|
|
|
|
|
eDate,
|
|
|
|
|
};
|
|
|
|
|
setStorageSync("moistureEachtsData", JSON.stringify(echartsData));
|
|
|
|
|
|
|
|
|
|
// go(`/recoding/pages/moisture_test_report/moisture_test_report?data=${allData.nursingData}&date=${allData.createTime}&modeId=${allData.modeId}&id=${allData.instrumentId}&echartsData=${JSON.stringify(echartsData)}`);
|
|
|
|
|
go(`/recoding/pages/moisture_test_report/moisture_test_report?data=${nursingData}&date=${formattedDate}&modeId=${ActiveModeItemId}&id=${currentDeviceId}&echartsData=${JSON.stringify(echartsData)}`);
|
|
|
|
|
|
|
|
|
|
go(
|
|
|
|
|
`/recoding/pages/moisture_test_report/moisture_test_report?data=${nursingData}&date=${formattedDate}&modeId=${ActiveModeItemId}&id=${currentDeviceId}&echartsData=${JSON.stringify(
|
|
|
|
|
echartsData
|
|
|
|
|
)}`
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @name 不可切换光照提示
|
|
|
|
|
* @description 检测紧贴肌肤
|
|
|
|
|
@ -764,10 +781,10 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
}
|
|
|
|
|
}, 1000);
|
|
|
|
|
}
|
|
|
|
|
updata() { }
|
|
|
|
|
updata() {}
|
|
|
|
|
|
|
|
|
|
// 绘制能量图
|
|
|
|
|
drawProwerPicture() { }
|
|
|
|
|
drawProwerPicture() {}
|
|
|
|
|
|
|
|
|
|
/** 切换光照 */
|
|
|
|
|
onSwitchChange = async () => {
|
|
|
|
|
@ -922,7 +939,7 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
let num = waterStepIndex;
|
|
|
|
|
if (waterStepIndex < 2) {
|
|
|
|
|
num = waterStepIndex + 1;
|
|
|
|
|
this.waterTestNext(num)
|
|
|
|
|
this.waterTestNext(num);
|
|
|
|
|
}
|
|
|
|
|
this.setState({
|
|
|
|
|
waterStepIndex: num,
|
|
|
|
|
@ -1338,7 +1355,7 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
clearInterval(currentTimeTimer);
|
|
|
|
|
this.setState({
|
|
|
|
|
currentTime: "00:00",
|
|
|
|
|
TestModeStepIndex: 0, // 水分测试步骤
|
|
|
|
|
waterStepIndex: 0, // 水分测试步骤
|
|
|
|
|
EssenceStepIndex: 0, // 精华促渗步骤
|
|
|
|
|
MaskModeStepIndex: 0, // 面膜促渗步骤
|
|
|
|
|
});
|
|
|
|
|
@ -1353,7 +1370,7 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
* @description 步骤+1并设置视频
|
|
|
|
|
*/
|
|
|
|
|
waterTestNext(index) {
|
|
|
|
|
let ActiveModeItem = this.state.ActiveModeItem
|
|
|
|
|
let ActiveModeItem = this.state.ActiveModeItem;
|
|
|
|
|
if (index === 0 && ActiveModeItem.stepOneVideo) {
|
|
|
|
|
this.VideoSrcLoad(ActiveModeItem.stepOneVideo);
|
|
|
|
|
} else if (index === 1 && ActiveModeItem.stepTwoVideo) {
|
|
|
|
|
@ -1635,7 +1652,7 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
// 水分测试需要特殊处理
|
|
|
|
|
// 水分测试准备 水分测试工作 水分测试启动
|
|
|
|
|
if (ActiveModeItem.modeType === "moistureTest") {
|
|
|
|
|
let that = this
|
|
|
|
|
let that = this;
|
|
|
|
|
sendParams.testStatus = "standby"; // 切换为准备
|
|
|
|
|
|
|
|
|
|
// 3秒定时器,逻辑3秒把进度条弄成100,再加2秒获取最后结果
|
|
|
|
|
@ -2028,16 +2045,18 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
// 脸部one
|
|
|
|
|
todoPromise = async () => {
|
|
|
|
|
const nowFR200NursingHistory = Taro.getStorageSync("FR200NursingHistory");
|
|
|
|
|
console.log(nowFR200NursingHistory, 'nowFR200NursingHistory');
|
|
|
|
|
console.log(nowFR200NursingHistory, "nowFR200NursingHistory");
|
|
|
|
|
|
|
|
|
|
// 护理脸部
|
|
|
|
|
if ([
|
|
|
|
|
if (
|
|
|
|
|
[
|
|
|
|
|
"face",
|
|
|
|
|
"eyes",
|
|
|
|
|
"nasolabialFold",
|
|
|
|
|
"mandibularLine",
|
|
|
|
|
"headLiftingPro",
|
|
|
|
|
].includes(nowFR200NursingHistory.jsonStatus.workMode)) {
|
|
|
|
|
].includes(nowFR200NursingHistory.jsonStatus.workMode)
|
|
|
|
|
) {
|
|
|
|
|
// 把working=工作中的状态数据筛选出来
|
|
|
|
|
let filtered = nowFR200NursingHistory.dataArray.filter(
|
|
|
|
|
(item) => item.workStatus === "working"
|
|
|
|
|
@ -2139,7 +2158,6 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
}
|
|
|
|
|
let res1: any = await this.todoPromise();
|
|
|
|
|
if (!res1?.showFace) {
|
|
|
|
|
|
|
|
|
|
params = { ...params, ...res1 };
|
|
|
|
|
}
|
|
|
|
|
console.log(res1, "查看返回数据");
|
|
|
|
|
@ -2164,7 +2182,12 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
isShowNursingSuccess: false,
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.goFaceReport(res1, ActiveModeItem.id, res2.data.data, currentDevice.id); // 跳转
|
|
|
|
|
this.goFaceReport(
|
|
|
|
|
res1,
|
|
|
|
|
ActiveModeItem.id,
|
|
|
|
|
res2.data.data,
|
|
|
|
|
currentDevice.id
|
|
|
|
|
); // 跳转
|
|
|
|
|
}, 2000);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -2273,39 +2296,40 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
"headLiftingPro",
|
|
|
|
|
].includes(nursingData.workMode)
|
|
|
|
|
) {
|
|
|
|
|
let ids = Number(deviceid)
|
|
|
|
|
let ids = Number(deviceid);
|
|
|
|
|
// 获取echarts数据 这个是获取接口更新echarts页面
|
|
|
|
|
let res2 = await InstrumentInfo.apiNursingLog.getStatiCDE(ids);
|
|
|
|
|
|
|
|
|
|
let nursingDatas = JSON.parse(res2.data.data.nursingData)
|
|
|
|
|
let nursingDatas = JSON.parse(res2.data.data.nursingData);
|
|
|
|
|
let obj = {
|
|
|
|
|
modeName: res2.data.data.modeName,
|
|
|
|
|
data: nursingDatas
|
|
|
|
|
}
|
|
|
|
|
data: nursingDatas,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
let report = true;
|
|
|
|
|
go(
|
|
|
|
|
"/recoding/pages/face_report_one/face_report_one?id=" +
|
|
|
|
|
ids +
|
|
|
|
|
"&report=" +
|
|
|
|
|
report + "&obj=" +
|
|
|
|
|
report +
|
|
|
|
|
"&obj=" +
|
|
|
|
|
JSON.stringify(obj)
|
|
|
|
|
);
|
|
|
|
|
} else if ("moistureTest" === nursingData.workMode) {
|
|
|
|
|
console.log("水分测试");
|
|
|
|
|
} else {
|
|
|
|
|
console.log('跳转11111111');
|
|
|
|
|
console.log("跳转11111111");
|
|
|
|
|
|
|
|
|
|
let report = true;
|
|
|
|
|
|
|
|
|
|
go(
|
|
|
|
|
"/recoding/pages/face_report/face_report?id=" +
|
|
|
|
|
deviceid +
|
|
|
|
|
"&recordId=" + currentDevice +
|
|
|
|
|
"&recordId=" +
|
|
|
|
|
currentDevice +
|
|
|
|
|
"&report=" +
|
|
|
|
|
report
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
@ -2465,7 +2489,6 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
isRuningTest,
|
|
|
|
|
isShowHistoryMsg,
|
|
|
|
|
isModeLock,
|
|
|
|
|
TestModeStepIndex,
|
|
|
|
|
currentVideoSrc,
|
|
|
|
|
currentGear,
|
|
|
|
|
showEcharts,
|
|
|
|
|
@ -2617,9 +2640,9 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
deviceInfo={currentDevice}
|
|
|
|
|
close={this.connectionClose}
|
|
|
|
|
isDisconnect={!isConnectionBlutoot}
|
|
|
|
|
offlineChange={() => { }}
|
|
|
|
|
offlineChange={() => {}}
|
|
|
|
|
pairingChange={this.pairingChange}
|
|
|
|
|
upgradeFun={() => { }}
|
|
|
|
|
upgradeFun={() => {}}
|
|
|
|
|
/>
|
|
|
|
|
)}
|
|
|
|
|
|
|
|
|
|
@ -2712,7 +2735,6 @@ class IotCarePlanFR200 extends Component<any, any> {
|
|
|
|
|
{ActiveModeItem.modeType === "moistureTest" && (
|
|
|
|
|
<WaterTest
|
|
|
|
|
isRuningTest={isRuningTest}
|
|
|
|
|
TestModeStepIndex={TestModeStepIndex}
|
|
|
|
|
stepList={waterStepList}
|
|
|
|
|
stepIndex={waterStepIndex}
|
|
|
|
|
></WaterTest>
|
|
|
|
|
|