diff --git a/src/instrument/pages/instrument/instrument.tsx b/src/instrument/pages/instrument/instrument.tsx index bb9d24f..690c5ea 100644 --- a/src/instrument/pages/instrument/instrument.tsx +++ b/src/instrument/pages/instrument/instrument.tsx @@ -46,12 +46,12 @@ class Instrument extends Component { super(props); this.state = { name: "instrument", + isSerialPosition: false, isBindingError: false, isBindingError203: false, isBindingCheckError: false, style: "font-size: 28rpx; color: #ccc;", succeedShow: false, - tipShow: false, loading: true, channelList: [], channelInfo: { @@ -126,10 +126,6 @@ class Instrument extends Component { this.setState({ channelInfo }); }; - onTipShow = () => { - this.setState({ tipShow: true }); - }; - onTabTap = (type) => { this.setState({ inputType: type, @@ -532,12 +528,24 @@ class Instrument extends Component { } }; + openLookSerialPosition = () => { + console.log(this.state.channelInfo); + if (this.state.channelInfo.serial) { + this.setState({ isSerialPosition: true }); + } else { + msg("暂无图片"); + } + }; + closeLookSerialPosition = () => { + this.setState({ isSerialPosition: false }); + }; + render() { let { + isSerialPosition, isBindingError, isBindingError203, isBindingCheckError, - show, channelInfo, instrumentInfo, inputType, @@ -602,6 +610,24 @@ class Instrument extends Component { close={this.onBindCheckErrorClose} confirm={this.onBindCheckErrorClose} > + + + + + } + confirmButtonText="知道了" + textAlgin="center" + close={this.closeLookSerialPosition} + confirm={this.closeLookSerialPosition} + > { * - + 查看序列号位置 { year: new Date().getFullYear(), month: String(new Date().getMonth() + 1).padStart(2, "0"), day: String(new Date().getDate()).padStart(2, "0"), - zkmoshiindex: 0, - modeIndex: null, + modeIndex: 0, stepIndex: null, autoPlay: false, scrollleft: 0, @@ -154,7 +153,7 @@ export default class InstrumentClickInUpload extends Component { this.onModeLockOpen(); // 点击了锁定模式 return; } - this.setState({ zkmoshiindex: index, currentInfo }); + this.setState({ modeIndex: index, currentInfo }); }; // 选择图片上传 @@ -300,7 +299,6 @@ export default class InstrumentClickInUpload extends Component { duration, showVideoPlayBtn, scrollleft, - zkmoshiindex, punchInInfo, isTipShow, currentInfo, @@ -319,119 +317,119 @@ export default class InstrumentClickInUpload extends Component { } = this.state; return ( - + - - + + - + {modeInfo.map((item, index) => { return ( - - - {item.modeName} - {item.modeDesc} + + + {item.modeName} + {item.modeDesc} - {!item.lock && zkmoshiindex !== index && ( - + {!item.lock && modeIndex !== index && ( + )} - {!item.lock && zkmoshiindex == index && ( - - + {!item.lock && modeIndex == index && ( + + )} {item.lock && ( - + )} - {item.modeBanner && index == zkmoshiindex && ( - - + {item.modeBanner && index == modeIndex && ( + + )} @@ -441,32 +439,32 @@ export default class InstrumentClickInUpload extends Component { - - - - - 打卡上传 - + + + + + 打卡上传 + - + {punchInInfo.clockImageList.length > 0 && punchInInfo.clockImageList.map((item, index) => { return ( - + @@ -475,23 +473,23 @@ export default class InstrumentClickInUpload extends Component { {punchInInfo.clockImageList.length < 3 && ( )} - + {/* {tipshow && ( @@ -500,7 +498,7 @@ export default class InstrumentClickInUpload extends Component { : "请记录一下今天打卡的心得吧~"} )} */} - + {punchInInfo.clockContent.length}/100 {/* {punchInInfo.clockContent.length}/100 */} @@ -509,16 +507,16 @@ export default class InstrumentClickInUpload extends Component { - + {!isSubmit && ( - - 提交打卡 + + 提交打卡 )} {isSubmit && ( - - 提交打卡 + + 提交打卡 )} diff --git a/src/instrument/pages/instrument_detail/index.less b/src/instrument/pages/instrument_detail/index.less index 1ecf702..e511fbb 100644 --- a/src/instrument/pages/instrument_detail/index.less +++ b/src/instrument/pages/instrument_detail/index.less @@ -3,17 +3,19 @@ page { padding-bottom: calc(env(safe-area-inset-bottom)); } .list { - margin: 26rpx 30rpx 0rpx; + margin: 38rpx 30rpx 0 30rpx; border-radius: 50rpx; padding-bottom: 0rpx; overflow: hidden; position: relative; - height: calc(166rpx * 2); + height: 368rpx; } .list > .instrument_img { position: relative; height: 100%; - /* top: -250rpx; */ + image { + background: #eee; + } } .list > .instrument_img .bind_status { position: absolute; diff --git a/src/instrument/pages/instrument_detail/index.tsx b/src/instrument/pages/instrument_detail/index.tsx index c224674..1a8e2b4 100644 --- a/src/instrument/pages/instrument_detail/index.tsx +++ b/src/instrument/pages/instrument_detail/index.tsx @@ -63,11 +63,11 @@ export default class InstrumentDetail extends Component { 已绑定 {info.instrumentName} - {/* {info.iot == 2 && ( + {info.instrumentIotVersion && ( - 当前软件版本号:{info.iot_versions} + 当前仪器软件版本号:{info.instrumentIotVersion} - )} */} + )} diff --git a/src/instrument/pages/instrument_manage/index.less b/src/instrument/pages/instrument_manage/index.less index eb43bfe..8865164 100644 --- a/src/instrument/pages/instrument_manage/index.less +++ b/src/instrument/pages/instrument_manage/index.less @@ -4,7 +4,7 @@ page { } .instrument_box { .title { - margin: 35rpx 37rpx; + margin: 34rpx 48rpx; font-size: 32rpx; font-weight: bold; color: #030000; @@ -24,7 +24,7 @@ page { } .bind_list { - height: 650rpx; + height: 630rpx; .wrapper { display: inline-block; @@ -37,7 +37,7 @@ page { font-size: 24rpx; left: 40rpx; padding: 6rpx 40rpx; - background: linear-gradient(90deg, #fff0da, #ffe4c0); + background: linear-gradient(90deg, #ffe4c0, #ffedce); border-radius: 30rpx; } } @@ -61,7 +61,7 @@ page { color: #000000; width: 100%; line-height: 1; - margin: 30rpx 0; + margin: 30rpx 0 35rpx 0; box-sizing: border-box; } .intro { @@ -100,10 +100,12 @@ page { font-size: 36rpx; font-weight: bold; color: #000000; + margin-top: 60rpx; } .bindinfo { /* display: block; */ margin: 0 auto; + margin-top: 43rpx; width: 240rpx; height: 60rpx; line-height: 60rpx; diff --git a/src/instrument/pages/instrument_manage/index.tsx b/src/instrument/pages/instrument_manage/index.tsx index 1586ece..2d8f338 100644 --- a/src/instrument/pages/instrument_manage/index.tsx +++ b/src/instrument/pages/instrument_manage/index.tsx @@ -54,18 +54,19 @@ export default class InstrumentManage extends Component { componentDidHide() {} async initData() { + Taro.showLoading({ + title: "请求中...", + mask: true, + }); this.bindingInstrumentList(); this.unbindingInstrumentInfoList(); + Taro.hideLoading(); } // 获取已绑定仪器列表 bindingInstrumentList = async () => { - Taro.showLoading({ - title: "请求中...", - mask: true, - }); let { data: res } = await InstrumentInfo.bindingInstrumentList(); - Taro.hideLoading(); + if (res.code === 200) { this.setState({ bindList: res.data }); } else { @@ -74,12 +75,7 @@ export default class InstrumentManage extends Component { }; // 获取未绑定仪器列表 unbindingInstrumentInfoList = async () => { - Taro.showLoading({ - title: "请求中...", - mask: true, - }); let { data: res } = await InstrumentInfo.unbindingInstrumentInfoList(); - Taro.hideLoading(); if (res.code === 200) { this.setState({ unBindList: res.data }); } else { diff --git a/src/moduleIOT/pages/iotCarePlan/FR200.tsx b/src/moduleIOT/pages/iotCarePlan/FR200.tsx index 978f4b4..8c804e2 100644 --- a/src/moduleIOT/pages/iotCarePlan/FR200.tsx +++ b/src/moduleIOT/pages/iotCarePlan/FR200.tsx @@ -187,7 +187,7 @@ class IotCarePlanFR200 extends Component { ModeStepIndex: 0, // 当前护理功效步骤:每个步骤时间不定,所以时间另外计算,根据步骤显示 ModeStepTimeArray: [], // 护理功效时间步骤,用于切换显示GIF - TestModeStepIndex: 0, // 水分测试步骤 + // TestModeStepIndex: 0, // 水分测试步骤 EssenceStepIndex: 0, // 精华促渗步骤 MaskModeStepIndex: 0, // 面膜促渗步骤 @@ -290,9 +290,9 @@ class IotCarePlanFR200 extends Component { this.getInstrumentClockSummary(); this.getInstrumentClockDetail(); } - componentDidMount() { } + componentDidMount() {} - componentWillUnmount() { } + componentWillUnmount() {} componentDidShow() { console.log("页面显示了"); @@ -518,7 +518,7 @@ class IotCarePlanFR200 extends Component { 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 { 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 { 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 { } }, 1000); } - updata() { } + updata() {} // 绘制能量图 - drawProwerPicture() { } + drawProwerPicture() {} /** 切换光照 */ onSwitchChange = async () => { @@ -922,7 +939,7 @@ class IotCarePlanFR200 extends Component { 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 { clearInterval(currentTimeTimer); this.setState({ currentTime: "00:00", - TestModeStepIndex: 0, // 水分测试步骤 + waterStepIndex: 0, // 水分测试步骤 EssenceStepIndex: 0, // 精华促渗步骤 MaskModeStepIndex: 0, // 面膜促渗步骤 }); @@ -1353,7 +1370,7 @@ class IotCarePlanFR200 extends Component { * @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 { // 水分测试需要特殊处理 // 水分测试准备 水分测试工作 水分测试启动 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 { // 脸部one todoPromise = async () => { const nowFR200NursingHistory = Taro.getStorageSync("FR200NursingHistory"); - console.log(nowFR200NursingHistory, 'nowFR200NursingHistory'); + console.log(nowFR200NursingHistory, "nowFR200NursingHistory"); // 护理脸部 - if ([ - "face", - "eyes", - "nasolabialFold", - "mandibularLine", - "headLiftingPro", - ].includes(nowFR200NursingHistory.jsonStatus.workMode)) { + if ( + [ + "face", + "eyes", + "nasolabialFold", + "mandibularLine", + "headLiftingPro", + ].includes(nowFR200NursingHistory.jsonStatus.workMode) + ) { // 把working=工作中的状态数据筛选出来 let filtered = nowFR200NursingHistory.dataArray.filter( (item) => item.workStatus === "working" @@ -2139,7 +2158,6 @@ class IotCarePlanFR200 extends Component { } let res1: any = await this.todoPromise(); if (!res1?.showFace) { - params = { ...params, ...res1 }; } console.log(res1, "查看返回数据"); @@ -2164,7 +2182,12 @@ class IotCarePlanFR200 extends Component { 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 { "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=" + - JSON.stringify(obj) + ids + + "&report=" + + 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 + - "&report=" + - report + deviceid + + "&recordId=" + + currentDevice + + "&report=" + + report ); - } }; @@ -2465,7 +2489,6 @@ class IotCarePlanFR200 extends Component { isRuningTest, isShowHistoryMsg, isModeLock, - TestModeStepIndex, currentVideoSrc, currentGear, showEcharts, @@ -2617,9 +2640,9 @@ class IotCarePlanFR200 extends Component { deviceInfo={currentDevice} close={this.connectionClose} isDisconnect={!isConnectionBlutoot} - offlineChange={() => { }} + offlineChange={() => {}} pairingChange={this.pairingChange} - upgradeFun={() => { }} + upgradeFun={() => {}} /> )} @@ -2702,17 +2725,16 @@ class IotCarePlanFR200 extends Component { {(ActiveModeItem.modeType === "maskPenetration" || ActiveModeItem.modeType === "essence") && ( - - )} + + )} {ActiveModeItem.modeType === "moistureTest" && ( diff --git a/src/moduleIOT/pages/iotCarePlan/components/WaterTest/index.tsx b/src/moduleIOT/pages/iotCarePlan/components/WaterTest/index.tsx index b724989..8fba3ef 100644 --- a/src/moduleIOT/pages/iotCarePlan/components/WaterTest/index.tsx +++ b/src/moduleIOT/pages/iotCarePlan/components/WaterTest/index.tsx @@ -7,16 +7,11 @@ import "./index.less"; interface Props { isRuningTest: boolean; // 是否已开始水分测试 - TestModeStepIndex: number; // 当前测试步骤 - stepList:any - stepIndex:any + stepList: any; + stepIndex: any; } -function Index({ - isRuningTest, - stepList, - stepIndex -}:Props) { +function Index({ isRuningTest, stepList, stepIndex }: Props) { // const stepIndex = 0; const testIndex = 1; @@ -106,7 +101,7 @@ function Index({ showPivot={false} color={stepList[stepIndex].color} > - {stepList[stepIndex].finish ? ( + {stepList[stepIndex].finish ? (