rongweikang 2 years ago
commit 0bdf48e9a3

@ -85,7 +85,7 @@ export default defineAppConfig({
"pages/recording/recording",
"pages/face_report_one/face_report_one",
"pages/moisture_test_report/moisture_test_report",
"pages/face_report/face_report",
],
},
{

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 KiB

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 KiB

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 KiB

After

Width:  |  Height:  |  Size: 81 KiB

@ -1,5 +1,50 @@
@import url(./WL200.less);
.fr200-iot-device {
width: 690rpx;
height: 150rpx;
display: flex;
align-items: center;
justify-content: center;
.device-time {
font-size: 26rpx;
color: #000;
font-weight: 400;
.time {
font-size: 30rpx;
font-weight: 800;
}
}
.line {
width: 1rpx;
height: 50rpx;
background: #dddddd;
margin-left: 34rpx;
margin-right: 34rpx;
}
.gear {
margin-left: 10rpx;
font-size: 30rpx;
font-weight: 800;
color: #000;
}
.electricity-box {
display: flex;
flex-direction: column;
.item {
display: flex;
align-items: center;
justify-content: left;
height: 50rpx;
.label {
// width: 154rpx;
font-size: 26rpx;
color: #000;
margin-right: 14rpx;
}
}
}
}
.show {
display: none;
}

File diff suppressed because it is too large Load Diff

@ -1,13 +1,51 @@
.box {
width: 690rpx;
height: 320rpx;
margin: 28rpx auto;
margin: 28rpx auto 150rpx;
background-color: #fff;
border-radius: 30rpx;
padding: 35rpx 25rpx 25rpx 35rpx;
box-sizing: border-box;
position: relative;
// writing-mode: vertical-lr;
// text-orientation: upright;
// white-space: nowrap;
// font-size: 18px;
// font-weight: bold;
// background-color: #c2e5f3;
// color: #fff;
// width: 100%;
}
.fullscreen {
position: fixed;
top: 450rpx;
left: -450rpx;
right: 0;
bottom: 0;
width: 100vh;
height: 100vw;
z-index: 9999;
background-color: rgba(0, 0, 0, 0.5); /* 背景色 */
transform: rotate(90deg);
// animation: rotate 0s linear;
}
@keyframes rotate {
from {
width: 690rpx;
height: 320rpx;
transform: rotate(0deg);
}
to {
width: 100vh;
height: 100vw;
transform: rotate(0deg);
}
}
.box_background {
position: absolute;
top: 0;
@ -29,6 +67,7 @@
position: absolute;
top: 32rpx;
right: 26rpx;
z-index: 2;
}
.line {
margin: 0 0 6rpx 35rpx;

@ -21,6 +21,7 @@ function Index({ data }: Props) {
animation: false,
grid: {
// 让图表占满容器
// containLabel: true,
top: "28rpx",
left: "18rpx",
right: "28rpx",

@ -4,7 +4,10 @@ import { Block, View, Image, Text, Input } from "@tarojs/components";
import { Popup, Progress, Slider } from "@antmjs/vantui";
import { useRef } from "react";
import Echarts, { EChartOption, EchartsHandle } from "taro-react-echarts";
import echarts from "@/utils/echarts.min.js";
// import echarts from "@/utils/echarts.min.js";
import * as echarts from "echarts";
import React, { useState, useEffect,useMemo } from 'react';
import "./index.less";
@ -15,7 +18,11 @@ interface Props {
function Index({
EchartsData
}:Props) {
let type =0
// console.log(EchartsData,'EchartsDataEchartsData');
switch(EchartsData.modeName) {
case '基础班脸部':
type=37
@ -35,7 +42,9 @@ function Index({
default:
}
const echartsRef = useRef<EchartsHandle>(null);
function generateColorArray(startColor, endColor, steps) {
var startRGB = hexToRgb(startColor);
var endRGB = hexToRgb(endColor);
@ -73,18 +82,16 @@ function Index({
const colors = generateColorArray(startColor, endColor, steps);
const xList = [...new Array(type).fill(0).map((item, key) => key)];
// const xList = [...new Array(type).fill(0).map((item, key) => key)];
let seriesData:any =[]
seriesData = EchartsData?.data?.groupedAa
// const xList = [...new Array(37).fill(0).map((item, key) => key)];
const xList = [...new Array(type).fill(0).map((item, key) => key)];
// const seriesData = [
// ...xList.map((item) => {
// return Math.random() * 80;
// }),
// ];
const option: EChartOption ={
const option: EChartOption = {
grid: {
// 让图表占满容器
top: "10rpx",
@ -165,8 +172,93 @@ seriesData = EchartsData?.data?.groupedAa
},
},
],
};
let arr = [2, 3, 4, 5, 6, 7]
}
// 基于 EchartsData 生成 ECharts 配置
// const option: EChartOption ={
// grid: {
// // 让图表占满容器
// top: "10rpx",
// left: "45rpx",
// right: "28rpx",
// bottom: "17rpx",
// },
// xAxis: {
// type: "category",
// data: [...xList],
// axisLabel: {
// interval: 5,
// formatter: function (value, index) {
// return value * 10 + 's';
// },
// textStyle: {
// color: '#999999', // 文字颜色
// fontSize: 8 // 文字大小
// },
// },
// axisTick: {
// // alignWithLabel: true,
// show: false,
// interval: 9,
// },
// // axisLine: {
// // show: false,
// // },
// },
// yAxis: [
// {
// min: 0,
// max: 80,
// splitNumber: 10,
// axisLabel: {
// formatter: function (value, index) {
// const num = value / 10 + 1
// return num === 9 ? '' : num + '级';
// },
// textStyle: {
// color: '#999999', // 文字颜色
// fontSize: 8 // 文字大小
// },
// },
// type: "value",
// splitLine: {
// lineStyle: {
// color: ["#ccc", "#ccc", "#ccc", "#ccc", "#ccc", "#ccc", "#ccc", "#ccc", "#fff"],
// type: 'dashed'
// },
// }
// },
// ],
// series: [
// {
// barCategoryGap: '0%',
// data: seriesData,
// type: "bar",
// // barWidth: 15,
// gapWidth: "0%",
// itemStyle: {
// normal: {
// color: function (params) {
// var value = params.data;
// return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
// {
// offset: 0,
// color: colors[parseInt(value)], // 红色
// },
// {
// offset: 1,
// color: colors[0], // 黄色
// },
// ]);;
// },
// },
// },
// },
// ],
// };
return (
<Block>
<Echarts

@ -0,0 +1,61 @@
import Taro from "@tarojs/taro";
import classnames from "classnames";
import { Block, View, Image, Text } from "@tarojs/components";
import { useState, useEffect } from "react";
// import "./index.less";
interface Props {
Electricity: any;
DeviceConnectStatus: any;
}
function Index({ Electricity, DeviceConnectStatus }: Props) {
return (
<Block>
<View className="electricity-box">
{DeviceConnectStatus === 1 && (
<Block>
<View className="item">
<View className="label"></View>
<View className="value flex aitems">
{Electricity >= 4 && (
<Block>
<View className="v1 battery_icon"></View>
<View className="v1 battery_icon"></View>
<View className="v1 battery_icon"></View>
<View className="v1 battery_icon"></View>
</Block>
)}
{Electricity === 3 && (
<Block>
<View className="v1 battery_icon"></View>
<View className="v1 battery_icon"></View>
<View className="v1 battery_icon"></View>
<View className="v2 battery_icon"></View>
</Block>
)}
{Electricity === 2 && (
<Block>
<View className="v1 battery_icon"></View>
<View className="v1 battery_icon"></View>
<View className="v2 battery_icon"></View>
<View className="v2 battery_icon"></View>
</Block>
)}
{Electricity <= 1 && (
<Block>
<View className="v3 battery_icon"></View>
<View className="v2 battery_icon"></View>
<View className="v2 battery_icon"></View>
<View className="v2 battery_icon"></View>
</Block>
)}
</View>
</View>
</Block>
)}
</View>
</Block>
);
}
export default Index;

@ -5,10 +5,11 @@ interface Props {
// isShowNurse: boolean;
currentWorkModeType: number; // 当前工作模式 1基础脸部等只有结束按钮 2.促渗,可以开始暂停和结束 3.水分测试
isStopNurse: boolean;
isRuningTest: boolean; // 是否在运行测试
isRuningTest: any; // 是否在运行测试 1是启动2进行中3重新检测4检测完成
onEmitStartNurse: Function; // 每次点击item回调事件和数据给父组件
onEmitSwitchChange: Function;
onEmitEndPlan: Function;
onsuccess:Function
}
function Index({
currentWorkModeType,
@ -17,6 +18,7 @@ function Index({
onEmitStartNurse,
onEmitSwitchChange,
onEmitEndPlan,
onsuccess
}: Props) {
const onStartNurse = () => {
onEmitStartNurse();
@ -35,14 +37,18 @@ function Index({
<View className="iot-footer">
{currentWorkModeType === 3 && (
<Block>
{!isRuningTest ? (
<View className="btn " onClick={onStartNurse}>
</View>
) : (
<View className="btn">...</View>
)}
</Block>
{isRuningTest === 1 ? (
<View className="btn" onClick={onStartNurse}>
</View>
) : isRuningTest === 2 ? (
<View className="btn">...</View>
) : isRuningTest === 3 ? (
<View className="btn" onClick={onStartNurse}></View>
) : (
<View className="btn" onClick={onsuccess}></View>
)}
</Block>
)}
{currentWorkModeType === 2 && (

@ -8,7 +8,7 @@ interface Props {
ModeID: any;
activeModeID: any;
ModeList: any;
ModeType: string; // all visor cabin yimeish
ModeType: string; // all base eyes zone permeation sensitive intelligence
isShowNurse: boolean; // 是否已进入护理详情页
isPop: boolean; // 是否弹窗
onEmit: Function; // 每次点击item回调事件和数据给父组件
@ -26,14 +26,12 @@ function Index({
onEmitShowAll,
onModeLockOpen,
}: Props) {
let BaseList = ModeList.filter((item) => item.modeClass === 1); // 基础护理
let ZoneList = ModeList.filter((item) => item.modeClass === 2); // 专区护理
let PermeationList = ModeList.filter((item) => item.modeClass === 3); // 专研促渗
let SensitiveList = ModeList.filter((item) => item.modeClass === 4); // 敏感期护理
let IntelligenceList = ModeList.filter((item) => item.modeClass === 5); // 智能测肤
console.log(activeModeID,'查看id',BaseList,ModeList);
console.log(activeModeID, "查看id", BaseList, ModeList);
const onItemClick = (item) => {
if (item.lock) {
onModeLockOpen(); // 点击了锁定模式
@ -62,7 +60,7 @@ function Index({
(ModeType === "all" || ModeType === "base" || isPop) && (
<ScrollView
className="mode-list-box"
scroll-x="true"
scrollX={true}
scrollIntoView={ModeID} // itemID自动滚动到该元素位置
>
<View className="mode-list">
@ -71,7 +69,7 @@ function Index({
return (
<View
key={"base_" + index}
id={"base_" + item.id}
id={"mode_" + item.id}
className={classnames("mode-item", {
"mode-item-active": activeModeID === item.id,
})}
@ -129,7 +127,7 @@ function Index({
return (
<View
key={"zone_" + index}
id={"zone_" + item.id}
id={"mode_" + item.id}
onClick={onItemClick.bind(this, item)}
className={classnames("mode-item", {
"mode-item-active": activeModeID === item.id,
@ -187,7 +185,7 @@ function Index({
return (
<View
key={"permeation_" + index}
id={"permeation_" + item.id}
id={"mode_" + item.id}
onClick={onItemClick.bind(this, item)}
className={classnames("mode-item", {
"mode-item-active": activeModeID === item.id,
@ -245,7 +243,7 @@ function Index({
return (
<View
key={"sensitive_" + index}
id={"sensitive_" + item.id}
id={"mode_" + item.id}
onClick={onItemClick.bind(this, item)}
className={classnames("mode-item", {
"mode-item-active": activeModeID === item.id,
@ -303,7 +301,7 @@ function Index({
return (
<View
key={"intelligence_" + index}
id={"intelligence_" + item.id}
id={"mode_" + item.id}
onClick={onItemClick.bind(this, item)}
className={classnames("mode-item", {
"mode-item-active": activeModeID === item.id,

@ -58,7 +58,7 @@ function Index({
(ModeType === "all" || ModeType === "visor" || isPop) && (
<ScrollView
className="mode-list-box"
scroll-x="true"
scrollX={true}
scrollIntoView={ModeID} // itemID自动滚动到该元素位置
>
<View className="mode-list">

@ -8,29 +8,41 @@ import "./index.less";
interface Props {
isRuningTest: boolean; // 是否已开始水分测试
TestModeStepIndex: number; // 当前测试步骤
stepList:any
stepIndex:any
}
function Index(isRuningTest, TestModeStepIndex) {
const stepIndex = 0;
function Index({
isRuningTest,
stepList,
stepIndex
}:Props) {
// const stepIndex = 0;
const testIndex = 1;
const stepList = [
{
value: "Step1",
name: "额头",
finish: false,
},
{
value: "Step2",
name: "左脸颊",
finish: false,
},
{
value: "Step3",
name: "右脸颊",
finish: false,
},
];
// const stepList = [
// {
// value: "Step1",
// name: "额头",
// finish: false,
// schedule:0,
// color:["#ee0a24",'#c2e5f3']
// },
// {
// value: "Step2",
// name: "左脸颊",
// finish: false,
// schedule:0,
// color:["#ee0a24",'#c2e5f3']
// },
// {
// value: "Step3",
// name: "右脸颊",
// finish: false,
// schedule:0,
// color:["#ee0a24",'#c2e5f3']
// },
// ];
return (
<Block>
<View>
@ -69,7 +81,7 @@ function Index(isRuningTest, TestModeStepIndex) {
{stepIndex > index && (
<Image
className="finish_img"
src={require("@/img/full-scran.png")}
src={require("@/img/finished.png")}
mode="aspectFill"
></Image>
)}
@ -89,12 +101,12 @@ function Index(isRuningTest, TestModeStepIndex) {
style={{
width: "300rpx",
}}
percentage="80"
percentage={stepList[stepIndex].schedule}
strokeWidth="14"
showPivot={false}
color="#C2E5F3"
color={stepList[stepIndex].color}
></Progress>
{stepList[stepIndex].finish && 80 >= 99 ? (
{stepList[stepIndex].finish ? (
<Image
className="finish_img"
src={require("@/img/finished.png")}

@ -2,16 +2,21 @@ import Taro from "@tarojs/taro";
import classnames from "classnames";
import { Component, PropsWithChildren, useEffect, useState } from "react";
import { Progress , Tab, Tabs, Dialog, Popup } from "@antmjs/vantui";
import { showModal } from "../../../utils/traoAPI";
import { showModal } from "@/utils/traoAPI";
import {
Block, View, Text, Image, Input, Button, Textarea,
Block,
View,
Text,
Image,
Input,
Button,
Textarea,
} from "@tarojs/components";
import { date, getdates, previewImage } from "../../../utils/util";
/** 自定义组件 **/
import Navbar from "../../../components/navbar/navbar";
import PopupAlert from "../../../components/popup/popup-alert";
import { InstrumentInfo } from "../../../utils/Interface";
/** 自定义组件 **/
@ -21,8 +26,8 @@ export default class Index extends Component<any, any> {
constructor(props) {
super(props);
this.state = {
reportShow:true,
name: "template模板页",
reportShow: true,
name: "护理报告",
statistics: {},
recordList: [],
recordData: {},
@ -50,9 +55,9 @@ export default class Index extends Component<any, any> {
};
}
componentDidMount() { }
componentDidMount() {}
componentWillUnmount() { }
componentWillUnmount() {}
// 打开/关闭弹窗
setShow(show: boolean) {
@ -65,42 +70,47 @@ export default class Index extends Component<any, any> {
data["instrumentId"] = id;
}
let res = await InstrumentInfo.apiNursingLog.getStatistics(data);
if (res.data.code === 200) {
this.setState({ statistics: res.data.data });
}
}
async getRecord(id, recordId) {
console.log("id, recordId", id, recordId);
async getRecord(id, instrumentId) {
console.log("id, nursingLogId", id, instrumentId);
let data = {};
if (id != null) {
data["instrumentId"] = id;
data["nursingLogId"] = id;
}
let res = await InstrumentInfo.apiNursingLog.getRecord(data);
// 获取当前
let res1 = await InstrumentInfo.apiNursingLog.getRecordNow(id);
// 获取历史记录列表
let res = await InstrumentInfo.apiNursingLog.getRecordNew(data);
res1.data.data.nursingTime = this.getTime(res1.data.data.nursingTime);
res1.data.data.createTime = getdates(res1.data.data.createTime).replace(/-/g, ".");
this.setState({ recordData: res1.data.data });
if (res.data.code === 200) {
if (recordId) {
if (instrumentId) {
res.data.rows.map((item) => {
item.nursingTime = this.getTime(item.nursingTime);
item.createTime = getdates(item.createTime).replace(/-/g, ".");
if (item.id == recordId) {
this.setState({ recordData: item });
}
});
} else {
this.setState({ recordData: res.data.rows[0] });
}
this.setState({
recordList: res.data.rows.filter((item) => item.id != recordId),
recordList: res.data.rows.filter((item) => item.id != instrumentId),
});
}
}
// 文本框输入文字
handleTextareaInput = (e) => {
// 文本框输入文字
handleTextareaInput = (e) => {
const punchInInfo = this.state.punchInInfo;
this.setState({ punchInInfo: { ...punchInInfo, clockContent: e.detail.value } });
this.setState({
punchInInfo: { ...punchInInfo, clockContent: e.detail.value },
});
};
async submit() {
let punchInInfo = this.state.punchInInfo || {};
@ -123,21 +133,22 @@ export default class Index extends Component<any, any> {
t2: "您已完成今日打卡",
btn1show: false,
}).then(() => {
let data = new Date
Taro.setStorageSync('DayTime', data.toISOString())
let data = new Date();
Taro.setStorageSync("DayTime", data.toISOString());
this.setState({
clockShow: true,
});
this.getClockStatistics();
this.setShow(false);
});
});
}
/**分页获取用户的打卡记录 page size*/
async getClockStatistics(year = this.state.year) {
/**分页获取用户的打卡记录 page size*/
async getClockStatistics(year = this.state.year) {
let res = await InstrumentInfo.apiClock.getClockStatistics({ year });
console.log(res,'查看返回',year);
if (res.data.code === 200) {
console.log(res, "查看返回", year);
if (res.data.code === 200) {
res.data.data.reverse();
if (res.data.data.length > 0) {
res.data.data.map((item, index) => {
@ -174,8 +185,8 @@ export default class Index extends Component<any, any> {
this.setState({ clockStatistics: res.data.data });
}
}
// 获取当月打卡记录
async getList(id, year, month) {
// 获取当月打卡记录
async getList(id, year, month) {
let data = {
year,
month,
@ -195,41 +206,41 @@ export default class Index extends Component<any, any> {
this.setState({ clockStatistics: this.state.clockStatistics });
}
}
// 上传图片
handleChooseImage() {
Taro.chooseMedia({
count: 1,
mediaType: ["image"],
sourceType: ["album", "camera"],
success: (res) => {
const tempFilePaths = res.tempFiles.map((item) => item.tempFilePath);
tempFilePaths?.forEach((item) => {
// eslint-disable-next-line @typescript-eslint/no-shadow
InstrumentInfo.apiClock
.clockFileUpload({ clockImg: item })
.then((res) => {
const currentImage = res.data.url;
const newImageList =
this.state.punchInInfo.clockImageList.length >= 3
? this.state.punchInInfo.clockImageList
: [...this.state.punchInInfo.clockImageList, currentImage];
const punchInInfo = this.state.punchInInfo;
punchInInfo.clockImageList = newImageList;
this.setState({ punchInInfo });
});
});
},
fail: (err) => {
console.info("err", err);
},
});
}
// 删除打卡图片
delImg(i) {
const punchInInfo = this.state.punchInInfo;
punchInInfo.clockImageList.splice(i, 1);
this.setState({ punchInInfo });
}
// 上传图片
handleChooseImage() {
Taro.chooseMedia({
count: 1,
mediaType: ["image"],
sourceType: ["album", "camera"],
success: (res) => {
const tempFilePaths = res.tempFiles.map((item) => item.tempFilePath);
tempFilePaths?.forEach((item) => {
// eslint-disable-next-line @typescript-eslint/no-shadow
InstrumentInfo.apiClock
.clockFileUpload({ clockImg: item })
.then((res) => {
const currentImage = res.data.url;
const newImageList =
this.state.punchInInfo.clockImageList.length >= 3
? this.state.punchInInfo.clockImageList
: [...this.state.punchInInfo.clockImageList, currentImage];
const punchInInfo = this.state.punchInInfo;
punchInInfo.clockImageList = newImageList;
this.setState({ punchInInfo });
});
});
},
fail: (err) => {
console.info("err", err);
},
});
}
// 删除打卡图片
delImg(i) {
const punchInInfo = this.state.punchInInfo;
punchInInfo.clockImageList.splice(i, 1);
this.setState({ punchInInfo });
}
getRouteId() {
const searchParams = new URLSearchParams(window.location.search);
const id = searchParams.get("id");
@ -250,31 +261,41 @@ delImg(i) {
}
}
async onLoad(options) {
console.log(options,'查看传过来的参数');
let Bool = JSON.parse(options?.report)
if(!Bool ){
console.log(options, "查看传过来的参数");
let Bool = JSON.parse(options?.report);
if (!Bool) {
this.setState({
reportShow:Bool
})
reportShow: Bool,
});
}
this.getRouteId();
this.getClockStatistics()
this.getClockStatistics();
}
componentDidShow() { }
componentDidShow() {}
componentDidHide() { }
componentDidHide() {}
async initData() { }
async initData() {}
GoIndex = () => {
Taro.switchTab({ url: "/pages/index/index" });
};
render() {
let { name, statistics, recordList, recordData, show,clockStatistics,punchInInfo,monthTime,reportShow } = this.state;
let {
name,
statistics,
recordList,
recordData,
show,
clockStatistics,
punchInInfo,
monthTime,
reportShow,
} = this.state;
return (
<Block>
<Navbar isBack titleSlot='护理报告'></Navbar>
@ -292,10 +313,10 @@ delImg(i) {
</View>
{/* </block> */}
</View>
<View className='main m-x-30'>
<View className='products_item' style='border: none'>
<View className='products_top flex aitems'>
<View className='add_time'>{recordData.createTime}</View>
<View className="main m-x-30">
<View className="products_item" style="border: none">
<View className="products_top flex aitems">
<View className="add_time">{recordData?.createTime}</View>
<View
className={classnames("tag", {
tag_active: recordData.online === 2,
@ -393,18 +414,17 @@ delImg(i) {
</View>
))}
</View>
{reportShow ? (
<View className='footer flex aitems'>
<View className='btn' onClick={this.setShow.bind(this, true)}></View>
<View className='text flex aitems'>
<View onClick={this.GoIndex}></View>
<Image
src={require("@/img/right.png")}
mode='aspectFill'
></Image>
</View>
</View>
): null}
{reportShow ? (
<View className='footer flex aitems'>
<View className='btn' onClick={this.setShow.bind(this, true)}>
</View>
<View className='text flex aitems'>
<View onClick={this.GoIndex}></View>
<Image src={require("@/img/right.png")} mode='aspectFill'></Image>
</View>
</View>
) : null}
<Popup show={show} onClose={() => this.setState({ show: false })}>
<View className='popBox'>
<Image

@ -75,12 +75,23 @@ export default class Index extends Component<any, any> {
}
// 查询用户护理记录的当月统计信息
async getStatistics(id) {
let ids = Number(id)
let data = {};
if (id != null) {
data["instrumentId"] = id;
if (ids != null) {
data["nursingId"] = ids;
}
let res = await InstrumentInfo.apiNursingLog.getStatistics(data);
let res = await InstrumentInfo.apiNursingLog.getStatisticsFace(data);
// // 获取echarts数据 这个是获取接口更新echarts页面
// let res2 = await InstrumentInfo.apiNursingLog.getStatiCDE(ids);
// let nursingData=JSON.parse(res2.data.data.nursingData)
// let obj ={
// modeName:res2.data.data.modeName,
// data:nursingData
// }
// this.init({
// obj:JSON.stringify(obj)
// })
if (res.data.code === 200) {
this.setState({ statistics: res.data.data });
}
@ -280,7 +291,10 @@ export default class Index extends Component<any, any> {
// this.getClockStatistics()
}
init(options){
let obj =JSON.parse(options.obj)
console.log(obj,'obj111111111111111');
let recordData =this.state.recordData
let modeImage =this.state.modeImage
@ -308,10 +322,6 @@ export default class Index extends Component<any, any> {
...obj.data
}
this.setState({recordData,modeImage,EchartsData:{...obj}})
console.log(obj,'查看');
}
componentDidShow() { }

@ -4,7 +4,7 @@ import { Block, View, Image, Text, Input } from "@tarojs/components";
import { Popup, Progress, Slider } from "@antmjs/vantui";
import { useEffect, useRef } from "react";
import Echarts, { EChartOption, EchartsHandle } from "taro-react-echarts";
import echarts from "@/utils/echarts.min.js";
import * as echarts from "echarts";
import "./index.less";
interface Props {

@ -299,6 +299,7 @@ export default class Recording extends Component<any, any> {
setStorageSync("instrument_detail", instrument);
}
})
console.log(item, '查看');
if ([1, 2, 3, 4, 5].includes(item.jumpType)) {
this.One(item);
@ -315,14 +316,19 @@ export default class Recording extends Component<any, any> {
}
// 打开第一种类型
One = async (item) => {
let ids = Number(item.id)
// 获取echarts数据 这个是获取接口更新echarts页面
let res2 = await InstrumentInfo.apiNursingLog.getStatiCDE(ids);
let nursingData = JSON.parse(res2.data.data.nursingData)
let report = false;
let nursingData = JSON.parse(item.nursingData)
nursingData.groupedAa.push(50)
let obj = {
modeName: item.modeName,
modeName: res2.data.data.modeName,
data: nursingData
}
console.log("打开第一种类型", item, obj);
let report = false;
go(
"/recoding/pages/face_report_one/face_report_one?id=" +
item.id +
@ -334,6 +340,14 @@ export default class Recording extends Component<any, any> {
// 打开第二种类型
two = async (item) => {
console.log("打开第二种类型", item);
let report = false;
go(
"/recoding/pages/face_report/face_report?id=" +
item.id +
"&recordId=" + item.instrumentId +
"&report=" +
report
);
};
// 打开第三种类型
three = async (item) => {

@ -406,6 +406,20 @@ export const InstrumentInfo = {
url: "/nursingLog/record" + paramsToUrlQueryString(data),
method: "get",
});
},
/**查询用户护理记录(新接口,查看历史记录)*/
getRecordNew: (data) => {
return Ajax({
url: "/nursingLog/record/fr200/other" + paramsToUrlQueryString(data),
method: "get",
});
},
/**查询用户护理记录(当前)*/
getRecordNow: (data) => {
return Ajax({
url: `/nursingLog/${data}` ,
method: "get",
});
},
/**查询用户护理记录的当月统计信息*/
getStatistics: (data) => {
@ -414,6 +428,21 @@ export const InstrumentInfo = {
method: "get",
});
},
/*脸部能量时间*/
getStatisticsFace: (data) => {
return Ajax({
url: "/nursingLog/fr200/statistics" + paramsToUrlQueryString(data),
method: "get",
});
},
/**获取脸部能量图数据*/
getStatiCDE: (data) => {
return Ajax({
url: `/nursingLog/${data}`,
method: "get",
});
},
},
fr200:{
// 查询用户FR200水分报告护理记录

Loading…
Cancel
Save