rongweikang 2 years ago
commit 3bc7def62f

@ -191,10 +191,15 @@ export default class InstrumentClickInUpload extends Component<any, any> {
let { punchInInfo, instrumentDetail } = this.state; let { punchInInfo, instrumentDetail } = this.state;
let obj = punchInInfo; let obj = punchInInfo;
if (obj.clockImageList.length === 0) { if (obj.clockImageList.length === 0) {
msg("至少上传一张图片"); msg("至少上传一张图片!");
return;
}
if (!obj.clockContent) {
msg("请输入打卡心得!");
return; return;
} }
// 批量上传图片
let promiseTasks: any = []; let promiseTasks: any = [];
let imgList: any[] = []; let imgList: any[] = [];
obj.clockImageList.map((imgUrl: string) => { obj.clockImageList.map((imgUrl: string) => {
@ -226,6 +231,11 @@ export default class InstrumentClickInUpload extends Component<any, any> {
} }
} }
Taro.showLoading({
title: "请求中...",
mask: true,
});
let clockParmas = { let clockParmas = {
clockImageList: imgList, clockImageList: imgList,
clockContent: obj.clockContent, clockContent: obj.clockContent,
@ -238,8 +248,13 @@ export default class InstrumentClickInUpload extends Component<any, any> {
params params
); );
console.log(instrumentRes, "添加仪器成功"); console.log(instrumentRes, "添加仪器成功");
// 上传护理记录
await this.PostNursingLogClock();
// 上传打卡记录
let res = await InstrumentInfo.apiClock.postInsertClockLog(clockParmas); let res = await InstrumentInfo.apiClock.postInsertClockLog(clockParmas);
Taro.hideLoading();
// 打卡完成
if (res.data.code === 200) { if (res.data.code === 200) {
msg("打卡成功"); msg("打卡成功");
setTimeout(() => { setTimeout(() => {
@ -250,6 +265,32 @@ export default class InstrumentClickInUpload extends Component<any, any> {
} }
}; };
/** 提交护理记录 */
PostNursingLogClock = async (data: any = null) => {
let { instrumentDetail, currentInfo } = this.state;
let params = {
instrumentId: instrumentDetail.id,
instrumentName: instrumentDetail.name,
modeId: currentInfo.id,
modeName: currentInfo.modeName,
nursingTime: "00:01:00",
};
let res: any = await InstrumentInfo.apiNursingLog.addLog(params);
console.log("PostNursingLogClock", res);
if (res.data.code === 200) {
let params = {
instrumentId: instrumentDetail.id,
};
// 上传护理完成的仪器ID
let res = await InstrumentInfo.apiClock.addClockInstrument(params);
console.log(res, "护理完成");
}
};
/*** 护理记录 END ***/
onPlayTap = async () => { onPlayTap = async () => {
let { videoContext } = this.state; let { videoContext } = this.state;
videoContext.play(); videoContext.play();

@ -821,10 +821,13 @@ class IotCarePlanFR200 extends Component<any, any> {
gears, gears,
eDate, eDate,
}; };
setStorageSync("moistureEachtsData", JSON.stringify(echartsData));
let report =true
// 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( go(
`/recoding/pages/moisture_test_report/moisture_test_report?data=${nursingData}&date=${formattedDate}&modeId=${ActiveModeItemId}&id=${currentDeviceId}&echartsData=${JSON.stringify( `/recoding/pages/moisture_test_report/moisture_test_report?data=${nursingData}&date=${formattedDate}&modeId=${ActiveModeItemId}&id=${currentDeviceId}&echartsData=${JSON.stringify(
echartsData echartsData
)}` )}&report=${report }`
); );
} }
@ -2601,7 +2604,7 @@ class IotCarePlanFR200 extends Component<any, any> {
isCustomBack isCustomBack
customBack={this.customBack} customBack={this.customBack}
/> />
{!isFullScreen && <View> {!isFullScreen && (<View>
<View catchMove> <View catchMove>
<PopupAlert <PopupAlert
isShow={isModeLock} isShow={isModeLock}
@ -2673,6 +2676,76 @@ class IotCarePlanFR200 extends Component<any, any> {
close={this.closeStepTips} close={this.closeStepTips}
/> />
)} )}
<Popup
show={isShowHistoryMsg}
className="custom-popup"
overlay={false}
>
<View className="sync-history-msg">...</View>
</Popup>
</View>
<View>
<View className="iot-main">
<View className="banner-box">
<View>
<Video
className="video-or-image"
src={currentVideoSrc}
loop
id="myVideo"
objectFit="cover"
enablePlayGesture
showFullscreenBtn={false}
onLoadedMetaData={this.GetVideosTime}
/>
{errorTips && (
<Block>
<View className="msg-tips">
<Image
className="msg-tips-img"
src={require("@/img/tips.png")}
/>
<View className="msg-tips-content">{errorTips}</View>
</View>
</Block>
)}
</View>
<View className="fr200-iot-device">
<View className="item">
<Text className="device-time">
<Text className="time">{currentTime}</Text>
</Text>
</View>
<View className="line" />
<View className="item">
<Text className="gear">{currentGear}</Text>
</View>
<View className="line" />
<ElectricityView
Electricity={Electricity}
DeviceConnectStatus={DeviceConnectStatus}
/>
</View>
</View>
{ModeList.length > 0 && (
<ModeListView
isPop={false}
isShowNurse={isShowNurse}
ModeList={ModeList}
ModeType={ModeType}
ModeID={ModeID}
activeModeID={activeModeID}
onEmit={this.modeCurrentFun}
onEmitShowAll={this.openModeSwitch}
onModeLockOpen={this.onModeLockOpen}
/>
)}
{/* <button onClick={this.look.bind(this)}>echarts </button>
<button onClick={this.updata.bind(this)}> </button> */}
<PopupAlert <PopupAlert
isShow={isNotEnoughTime} isShow={isNotEnoughTime}
@ -2852,17 +2925,17 @@ class IotCarePlanFR200 extends Component<any, any> {
</View> </View>
</View> </View>
</View>)}
}
{ {isFullScreen && (<View>
isFullScreen && <View>
<button onClick={this.updata.bind(this)}> </button> <button onClick={this.updata.bind(this)}> </button>
<EchartsFullScean series={series} full={this.full}></EchartsFullScean> <EchartsFullScean series={series} full={this.full}></EchartsFullScean>
</View> </View>)
} }
</Block > </Block>
); )
} }
} }

@ -139,6 +139,10 @@ page {
height: 100% !important; height: 100% !important;
border-radius: 20rpx; border-radius: 20rpx;
} }
.showImg:last-child{
width: 40rpx !important;
height: 40rpx !important;
}
} }
.info4 { .info4 {
position: relative; position: relative;

@ -82,6 +82,7 @@ page {
.text-title{ .text-title{
font-size: 18rpx; font-size: 18rpx;
color: #999999; color: #999999;
margin: 8rpx 0rpx;
} }
.main { .main {
border-radius: 30rpx; border-radius: 30rpx;
@ -179,6 +180,10 @@ page {
height: 100% !important; height: 100% !important;
border-radius: 20rpx; border-radius: 20rpx;
} }
.showImg:last-child{
width: 40rpx !important;
height: 40rpx !important;
}
} }
.info4 { .info4 {
position: relative; position: relative;
@ -309,18 +314,18 @@ page {
// background-color: red; // background-color: red;
} }
.content { // .content {
display: flex; // display: flex;
flex-flow: column; // flex-flow: column;
justify-content: space-between; // justify-content: space-between;
background-color: #f8f8f8; // background-color: #f8f8f8;
border-radius: 30rpx; // border-radius: 30rpx;
padding: 21rpx; // padding: 21rpx;
border-radius: 20rpx; // border-radius: 20rpx;
width: 457rpx; // width: 457rpx;
height: 195rpx; // height: 195rpx;
} // }
.content_top{ .content_top{
height: 140rpx; height: 140rpx;

@ -17,7 +17,6 @@ import { InstrumentInfo } from "@/utils/Interface";
// 引入ecahrts图表 // 引入ecahrts图表
// import EchartsForm from '@/moduleIOT/pages/iotCarePlan/components/Echart_face' // import EchartsForm from '@/moduleIOT/pages/iotCarePlan/components/Echart_face'
import EchartsForm from '../../../moduleIOT/pages/iotCarePlan/components/Echart_face' import EchartsForm from '../../../moduleIOT/pages/iotCarePlan/components/Echart_face'
import Echarts1 from '../../../moduleIOT/pages/iotCarePlan/components/Echart'
/** 自定义组件 **/ /** 自定义组件 **/
@ -213,6 +212,8 @@ export default class Index extends Component<any, any> {
if (res.data.code === 200) { if (res.data.code === 200) {
this.state.clockStatistics.map((item) => { this.state.clockStatistics.map((item) => {
console.log(item,'iiiiiiii',id);
if (item.id === id) { if (item.id === id) {
item.detail = res.data.data; item.detail = res.data.data;
item.detail.map((obj) => { item.detail.map((obj) => {
@ -258,13 +259,27 @@ export default class Index extends Component<any, any> {
punchInInfo.clockImageList.splice(i, 1); punchInInfo.clockImageList.splice(i, 1);
this.setState({ punchInInfo }); this.setState({ punchInInfo });
} }
getRouteId() { async getRouteId() {
let clockStatistics =this.state.clockStatistics
const searchParams = new URLSearchParams(window.location.search); const searchParams = new URLSearchParams(window.location.search);
const id = searchParams.get("id"); const id = searchParams.get("id");
const recordId = searchParams.get("recordId"); const recordId = searchParams.get("recordId");
this.getStatistics(id); this.getStatistics(id);
// this.getRecord(id, recordId); let res1 = await InstrumentInfo.apiClock.getLatestClockRecord();
// console.log(recordId);
let obj:any ={}
obj.detail = res1.data.data;
obj.updateTime = getdates(res1.data.data.updateTime).replace(/-/g, ".");
let arr:any =[]
arr.push(obj)
this.setState({ clockStatistics:arr });
setTimeout(function() {
}, )
} }
getTime(time) { getTime(time) {
const hour = time.slice(0, 2); const hour = time.slice(0, 2);
@ -348,11 +363,10 @@ export default class Index extends Component<any, any> {
<View className='statistic_title'>{statistics.nursingTime}</View> <View className='statistic_title'>{statistics.nursingTime}</View>
<View className='statistic_desc'></View> <View className='statistic_desc'></View>
</View> </View>
{/* </block> */}
</View> </View>
<View className='main m-x-30'> <View className='main m-x-30'>
<View className='products_item' style='border: none'> <View className='products_item' style='border: none'>
<View className='products_middle flex'> <View className='products_middle flex'>
<View className='left'> <View className='left'>
<Image <Image
@ -385,7 +399,7 @@ export default class Index extends Component<any, any> {
<View className='main_title'>-{recordData.modeName}</View> <View className='main_title'>-{recordData.modeName}</View>
<View className='eacharts'> <View className='eacharts'>
<EchartsForm EchartsData={EchartsData}></EchartsForm> <EchartsForm EchartsData={EchartsData}></EchartsForm>
{/* <Echarts1></Echarts1> */}
</View> </View>
</View> </View>

@ -22,6 +22,7 @@ class MoistureTestReport extends Component<any, any> {
this.state = { this.state = {
name: "重新登录", name: "重新登录",
imgUrl: '', imgUrl: '',
reportShow: true,
reportData: { reportData: {
curDate: '', curDate: '',
shuifenLevel: { shuifenLevel: {
@ -58,10 +59,16 @@ class MoistureTestReport extends Component<any, any> {
onLoad(option) { onLoad(option) {
console.log(option); console.log(option);
let Bool = JSON.parse(option?.report)
if (!Bool) {
this.setState({
reportShow: Bool
})
}
let data = JSON.parse(option.data) let data = JSON.parse(option.data)
let { reportData } = this.state let { reportData } = this.state
reportData.curDate = option.date reportData.curDate = option.date
reportData.curDate = option.report
data.GearData.map(item => { data.GearData.map(item => {
if (item.name == '额头') { if (item.name == '额头') {
reportData.shuifenLevel.head = item.forehead reportData.shuifenLevel.head = item.forehead
@ -92,7 +99,7 @@ class MoistureTestReport extends Component<any, any> {
} }
render() { render() {
let { name, imgUrl, reportData, reportData1, isClock, xinde, imglist, id, show, modeId, echartsData, showEcharts } = this.state let { name, imgUrl, reportData, reportData1, reportShow, isClock, xinde, imglist, id, show, modeId, echartsData, showEcharts } = this.state
const getStatusData = (level) => { const getStatusData = (level) => {
var bgCssData = { var bgCssData = {
@ -160,10 +167,7 @@ class MoistureTestReport extends Component<any, any> {
} }
return ( return (
// <Block> <Block>
<PageMeta
pageOrientation='portrait'
>
<Navbar isBack titleSlot='水分测试报告'></Navbar> <Navbar isBack titleSlot='水分测试报告'></Navbar>
<View className='moisture_test_report'> <View className='moisture_test_report'>
<View className='time'>{reportData.curDate}</View> <View className='time'>{reportData.curDate}</View>
@ -256,11 +260,27 @@ class MoistureTestReport extends Component<any, any> {
</View> </View>
</View> </View>
</View> </View>
</View>
<View className='report_chart'> <View className='report_chart'>
<View className='chart_title common_title'></View> <View className='chart_title common_title'></View>
<View className='container'> <View className='container'>
<Echarts echartsData={echartsData}></Echarts> <Echarts echartsData={echartsData}></Echarts>
</View>
</View>
<View className='gear_recommend'>
<View className='gear_header flex aitems sb'>
<View className='gear_title common_title'></View>
{reportShow ? (
<View className='gear_btn'></View>
) : null}
</View>
<View className='gear_content flex aitems sb'>
<View className='left_content'>
<Image className='banner_img' src='@/img/fr200/mian-mo.png' mode='aspectFill'></Image>
<View className='type'></View>
</View> </View>
</View> </View>
@ -297,6 +317,7 @@ class MoistureTestReport extends Component<any, any> {
</View> </View>
</View> </View>
{reportShow ? (
<View className='go_clock_in flex sb aitems' > <View className='go_clock_in flex sb aitems' >
<View className='go_clock_btn' onClick={this.toNursing.bind(this)}></View> <View className='go_clock_btn' onClick={this.toNursing.bind(this)}></View>
<View className='jump_box flex aitems' onClick={this.toIndex}> <View className='jump_box flex aitems' onClick={this.toIndex}>
@ -304,8 +325,8 @@ class MoistureTestReport extends Component<any, any> {
<Image src='@/img/fr200/right.png' mode='aspectFill'></Image> <Image src='@/img/fr200/right.png' mode='aspectFill'></Image>
</View> </View>
</View> </View>
</PageMeta> ) : null}
// </Block > </Block >
); );
} }
} }

@ -61,14 +61,14 @@ export default class Recording extends Component<any, any> {
clockImageList: [], clockImageList: [],
clockContent: "", clockContent: "",
}, },
navigationBarHeight: '', navigationBarHeight: "",
statusBarHeight: '' statusBarHeight: "",
}; };
} }
componentDidMount() { } componentDidMount() {}
componentWillUnmount() { } componentWillUnmount() {}
// 格式化时间 // 格式化时间
getTime(time) { getTime(time) {
const hour = time.slice(0, 2); const hour = time.slice(0, 2);
@ -270,15 +270,13 @@ export default class Recording extends Component<any, any> {
this.getClockStatistics(); this.getClockStatistics();
this.DayTime(); this.DayTime();
this.setStatusBar(); this.setStatusBar();
} }
componentDidShow() { } componentDidShow() {}
componentDidHide() { } componentDidHide() {}
async initData() { async initData() {}
}
// 选择年份 // 选择年份
onChangeYear(event) { onChangeYear(event) {
this.setState({ year: event.detail.value }); this.setState({ year: event.detail.value });
@ -294,12 +292,12 @@ export default class Recording extends Component<any, any> {
}; };
// 跳转到护理报告 // 跳转到护理报告
toReport(id, recordId, item) { toReport(id, recordId, item) {
this.state.bindingInstrumentList.map(instrument => { this.state.bindingInstrumentList.map((instrument) => {
if (instrument.id == id) { if (instrument.id == id) {
setStorageSync("instrument_detail", instrument); setStorageSync("instrument_detail", instrument);
} }
}) });
console.log(item, '查看'); console.log(item, "查看");
if ([1, 2, 3, 4, 5].includes(item.jumpType)) { if ([1, 2, 3, 4, 5].includes(item.jumpType)) {
this.One(item); this.One(item);
@ -316,22 +314,23 @@ export default class Recording extends Component<any, any> {
} }
// 打开第一种类型 // 打开第一种类型
One = async (item) => { One = async (item) => {
let ids = Number(item.id) let ids = Number(item.id);
// 获取echarts数据 这个是获取接口更新echarts页面 // 获取echarts数据 这个是获取接口更新echarts页面
let res2 = await InstrumentInfo.apiNursingLog.getStatiCDE(ids); let res2 = await InstrumentInfo.apiNursingLog.getStatiCDE(ids);
let nursingData = JSON.parse(res2.data.data.nursingData) let nursingData = JSON.parse(res2.data.data.nursingData);
let obj = { let obj = {
modeName: res2.data.data.modeName, modeName: res2.data.data.modeName,
data: nursingData data: nursingData,
} };
let report = false; let report = false;
go( go(
"/recoding/pages/face_report_one/face_report_one?id=" + "/recoding/pages/face_report_one/face_report_one?id=" +
item.id + item.id +
"&report=" + "&report=" +
report + "&obj=" + report +
JSON.stringify(obj) "&obj=" +
JSON.stringify(obj)
); );
}; };
// 打开第二种类型 // 打开第二种类型
@ -340,58 +339,65 @@ export default class Recording extends Component<any, any> {
let report = false; let report = false;
go( go(
"/recoding/pages/face_report/face_report?id=" + "/recoding/pages/face_report/face_report?id=" +
item.id + item.id +
"&recordId=" + item.instrumentId + "&recordId=" +
"&report=" + item.instrumentId +
report "&report=" +
report
); );
}; };
// 打开第三种类型 // 打开第三种类型
three = async (item) => { three = async (item) => {
this.moistureTest(item) this.moistureTest(item);
}; };
async moistureTest(allData) { async moistureTest(allData) {
let data = { let data = {
queryDate: allData.createTime, queryDate: allData.createTime,
instrumentId: allData.instrumentId instrumentId: allData.instrumentId,
} };
let res = await InstrumentInfo.fr200.moistureTest(data); 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 i = 0; i < echartsData.length; i++) {
for (let j = i + 1; j < echartsData.length; j++) { for (let j = i + 1; j < echartsData.length; j++) {
if (echartsData[i].createTime.split(' ')[0] == echartsData[j].createTime.split(' ')[0]) { if (
let result = Date.parse(echartsData[i].createTime) - Date.parse(echartsData[j].createTime) 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) { if (result < 0) {
echartsData.splice(i, 1) echartsData.splice(i, 1);
} else { } else {
echartsData.splice(j, 1) echartsData.splice(j, 1);
} }
} }
} }
} }
let gears: any = [] let gears: any = [];
let eDate: any = [] let eDate: any = [];
echartsData.map(item => { echartsData.map((item) => {
const result = item.createTime.split(" ")[0].substring(5);
const result = item.createTime.split(' ')[0].substring(5); eDate.push(result);
eDate.push(result) item.nursingData = JSON.parse(item.nursingData);
item.nursingData = JSON.parse(item.nursingData) let level: any = 0;
let level: any = 0 item.nursingData?.GearData?.map((gear) => {
item.nursingData?.GearData?.map(gear => { level = level + gear.forehead;
level = level + gear.forehead });
}) level = Math.floor(level / 3);
level = Math.floor(level / 3) gears.push(level);
gears.push(level) });
})
echartsData = { echartsData = {
gears, eDate gears, eDate
} }
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)}`); setStorageSync('moistureEachtsData', JSON.stringify(echartsData))
let report =false
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)}&report=${report }`);
} }
// 打开其他类型 // 打开其他类型
AllDevice = async (item) => { AllDevice = async (item) => {
console.log("打开其他类型", item); console.log("打开其他类型", item);
@ -470,7 +476,6 @@ export default class Recording extends Component<any, any> {
} }
setStatusBar() { setStatusBar() {
Taro.getSystemInfoAsync({ Taro.getSystemInfoAsync({
success: (res) => { success: (res) => {
const statusBarHeight = res.statusBarHeight || 0; const statusBarHeight = res.statusBarHeight || 0;
@ -505,17 +510,20 @@ export default class Recording extends Component<any, any> {
show, show,
punchInInfo, punchInInfo,
navigationBarHeight, navigationBarHeight,
statusBarHeight statusBarHeight,
} = this.state; } = this.state;
const statusBarHeightRpx = statusBarHeight * 2; const statusBarHeightRpx = statusBarHeight * 2;
const navigationBarHeightRpx = navigationBarHeight * 2; const navigationBarHeightRpx = navigationBarHeight * 2;
const height = statusBarHeightRpx + navigationBarHeightRpx const height = statusBarHeightRpx + navigationBarHeightRpx;
return ( return (
<Block> <Block>
<Navbar isBack titleSlot='护理记录'></Navbar> <Navbar isBack titleSlot="护理记录"></Navbar>
<View className='tabs' style={{ <View
top: height + "rpx", position: 'sticky' className="tabs"
}} style={{
top: height + "rpx",
position: "sticky",
}}
> >
<View <View
className={classnames("tab", { className={classnames("tab", {
@ -537,9 +545,13 @@ export default class Recording extends Component<any, any> {
</View> </View>
</View> </View>
{current === 0 && ( {current === 0 && (
<ScrollView className='products_list' scroll-x='true' style={{ <ScrollView
top: height + 110 + 'rpx', position: 'sticky' className="products_list"
}} scroll-x="true"
style={{
top: height + 110 + "rpx",
position: "sticky",
}}
> >
<View <View
className={classnames("all", { className={classnames("all", {
@ -558,11 +570,11 @@ export default class Recording extends Component<any, any> {
onClick={this.onChangeProduct.bind(this, item.id)} onClick={this.onChangeProduct.bind(this, item.id)}
> >
<Image <Image
className='products_cover' className="products_cover"
src={item.logo} src={item.logo}
mode='aspectFill' mode="aspectFill"
></Image> ></Image>
<View className='products_title'>{item.name}</View> <View className="products_title">{item.name}</View>
</View> </View>
))} ))}
</ScrollView> </ScrollView>
@ -570,17 +582,17 @@ export default class Recording extends Component<any, any> {
{current === 0 && recordList.length === 0 && ( {current === 0 && recordList.length === 0 && (
<View> <View>
<View className='nodata'> <View className="nodata">
<Image <Image
className='nodata_img' className="nodata_img"
src={require("@/img/nodata.png")} src={require("@/img/nodata.png")}
></Image> ></Image>
<View className='nodata_text'></View> <View className="nodata_text"></View>
</View> </View>
</View> </View>
)} )}
{current === 0 && ( {current === 0 && (
<View style='padding-bottom:200px'> <View style="padding-bottom:200px">
{/* <View className='instrument_item' > {/* <View className='instrument_item' >
<View className='instrument_top flex sb aitems'> <View className='instrument_top flex sb aitems'>
<View className='time_box flex aitems'> <View className='time_box flex aitems'>
@ -607,12 +619,12 @@ export default class Recording extends Component<any, any> {
</View> </View>
</View> */} </View> */}
<View className='instrument_list '> <View className="instrument_list ">
{recordList.map((item: any, index: any) => ( {recordList.map((item: any, index: any) => (
<View className='recording-box' key={item.id}> <View className="recording-box" key={item.id}>
<View className='box-top'> <View className="box-top">
<View className='top-left'> <View className="top-left">
<View className='date'>{item.createTime}</View> <View className="date">{item.createTime}</View>
<View <View
className={classnames("tip", { className={classnames("tip", {
tag_active: item.online === 2, tag_active: item.online === 2,
@ -623,7 +635,7 @@ export default class Recording extends Component<any, any> {
</View> </View>
{item.instrumentType === 2 && ( {item.instrumentType === 2 && (
<View <View
className='top-right' className="top-right"
onClick={this.toReport.bind( onClick={this.toReport.bind(
this, this,
item.instrumentId, item.instrumentId,
@ -633,24 +645,26 @@ export default class Recording extends Component<any, any> {
> >
<Image <Image
className='arrow_icon' className="arrow_icon"
src={require("@/img/index/right.png")} src={require("@/img/index/right.png")}
mode='aspectFill' mode="aspectFill"
></Image> ></Image>
</View> </View>
)} )}
</View> </View>
<View className='box-bottom'> <View className="box-bottom">
<Image <Image
className='recording_img' className="recording_img"
src={item.modeImage} src={item.modeImage}
></Image> ></Image>
<View className='bottom-right'> <View className="bottom-right">
<View className='title'>{item.instrumentName}</View> <View className="title">{item.instrumentName}</View>
<View className='subtitle-box'> <View className="subtitle-box">
<View className='subtitle'>{item.modeName}</View> <View className="subtitle">{item.modeName}</View>
<View className='subtitle'> <View className="subtitle">
{item.nursingTime} {item.instrumentType === 2 && (
<Text>{item.nursingTime}</Text>
)}
</View> </View>
</View> </View>
</View> </View>
@ -661,7 +675,7 @@ export default class Recording extends Component<any, any> {
</View> </View>
)} )}
{current === 1 && ( {current === 1 && (
<View style='padding-bottom:200px'> <View style="padding-bottom:200px">
{/* <View className='nodata'> {/* <View className='nodata'>
<Image <Image
className='nodata_img' className='nodata_img'
@ -669,52 +683,52 @@ export default class Recording extends Component<any, any> {
></Image> ></Image>
<View className='nodata_text'></View> <View className='nodata_text'></View>
</View> */} </View> */}
<View style='height: 30rpx; background: #F8F8F8'></View> <View style="height: 30rpx; background: #F8F8F8"></View>
<View className='clock_in_statistics m-x-30 flex sb'> <View className="clock_in_statistics m-x-30 flex sb">
<View className='flex sb ab'> <View className="flex sb ab">
<View className='clock_in_statistics_title'></View> <View className="clock_in_statistics_title"></View>
<Picker <Picker
mode='date' mode="date"
fields='year' fields="year"
onChange={this.onChangeYear.bind(this)} onChange={this.onChangeYear.bind(this)}
value='{{year}}' value="{{year}}"
end='{{today}}' end="{{today}}"
> >
<View className='clock_in_statistics_date flex aitems'> <View className="clock_in_statistics_date flex aitems">
<View>{year}</View> <View>{year}</View>
<Image <Image
className='more_icon' className="more_icon"
src={require("@/img/arrow-down.png")} src={require("@/img/arrow-down.png")}
mode='widthFix' mode="widthFix"
></Image> ></Image>
</View> </View>
</Picker> </Picker>
</View> </View>
<View className='chart flex sb'> <View className="chart flex sb">
{monthTime.map((item) => ( {monthTime.map((item) => (
<View className='flex fc aitems' key={item.month}> <View className="flex fc aitems" key={item.month}>
{item.time > 0 && ( {item.time > 0 && (
<View className='buoy'>{item.time}</View> <View className="buoy">{item.time}</View>
)} )}
<View <View
className='column' className="column"
style={{ height: `calc(186/31*${item.time}rpx)` }} style={{ height: `calc(186/31*${item.time}rpx)` }}
></View> ></View>
<View className='month'>{item.month}</View> <View className="month">{item.month}</View>
</View> </View>
))} ))}
</View> </View>
</View> </View>
<View style='padding-bottom: env(safe-area-inset-bottom)'> <View style="padding-bottom: env(safe-area-inset-bottom)">
<View className='month_box m-x-30'> <View className="month_box m-x-30">
{clockStatistics.map((item) => ( {clockStatistics.map((item) => (
<View className='month_statistics' key={item.id}> <View className="month_statistics" key={item.id}>
<View className='flex aitems sb'> <View className="flex aitems sb">
<View className='time'> <View className="month_item_date">
{item.year}{item.month} {item.year}{item.month}
</View> </View>
<View <View
className='more_box flex aitems' className="more_box flex aitems"
onClick={this.onChangeMore.bind( onClick={this.onChangeMore.bind(
this, this,
item.id, item.id,
@ -722,7 +736,7 @@ export default class Recording extends Component<any, any> {
item.month item.month
)} )}
> >
<View className='more_text'> <View className="more_text">
{" "} {" "}
{!item.isMore ? "展开更多" : "收起更多"} {!item.isMore ? "展开更多" : "收起更多"}
</View> </View>
@ -732,51 +746,51 @@ export default class Recording extends Component<any, any> {
? "rotate(180deg)" ? "rotate(180deg)"
: "rotate(0deg)", : "rotate(0deg)",
}} }}
className='more_icon' className="more_icon"
src={require("@/img/arrow-down.png")} src={require("@/img/arrow-down.png")}
mode='widthFix' mode="widthFix"
></Image> ></Image>
</View> </View>
</View> </View>
<View style='height: 59rpx'></View> <View style="height: 59rpx"></View>
<View className='statistic'> <View className="statistic">
<View className='statistic_item'> <View className="statistic_item">
<View className='statistic_num'>{item.clockNum}</View> <View className="statistic_num">{item.clockNum}</View>
<View className='statistic_desc'></View> <View className="statistic_desc"></View>
</View> </View>
<View className='statistic_item'> <View className="statistic_item">
<View className='statistic_num'> <View className="statistic_num">
{(item.percentage * 100).toFixed(2)}% {(item.percentage * 100).toFixed(2)}%
</View> </View>
<View className='statistic_desc'></View> <View className="statistic_desc"></View>
</View> </View>
<View className='border'></View> <View className="border"></View>
</View> </View>
{item.isMore && item.detail && ( {item.isMore && item.detail && (
<View> <View>
{item.detail.map((obj) => ( {item.detail.map((obj) => (
<View key={obj.id}> <View key={obj.id}>
<View style='height: 57rpx'></View> <View style="height: 57rpx"></View>
<View className='month_item'> <View className="month_item">
<View className='month_item_date'> <View className="month_item_date">
{obj.updateTime} {obj.updateTime}
</View> </View>
<View className='month_image_box flex sb'> <View className="month_image_box flex sb">
{obj.clockImg.map((img) => ( {obj.clockImg.map((img) => (
<Image <Image
key={img} key={img}
className='month_item_cover' className="month_item_cover"
src={img} src={img}
></Image> ></Image>
))} ))}
</View> </View>
<View className='month_item_date'> <View className="month_item_date">
{/* 小紫弹智能射频仪、花至抗老射频仪PRO{" "} */} {/* 小紫弹智能射频仪、花至抗老射频仪PRO{" "} */}
{obj.instrumentName === null {obj.instrumentName === null
? "" ? ""
: obj.instrumentName} : obj.instrumentName}
</View> </View>
<View className='month_item_note'> <View className="month_item_note">
{obj.clockContent} {obj.clockContent}
</View> </View>
</View> </View>
@ -791,8 +805,8 @@ export default class Recording extends Component<any, any> {
</View> </View>
)} )}
{!clockShow && ViewAddInstrument === "true" && ( {!clockShow && ViewAddInstrument === "true" && (
<View className='footer flex aitems'> <View className="footer flex aitems">
<View className='btn' onClick={this.setShow.bind(this, true)}> <View className="btn" onClick={this.setShow.bind(this, true)}>
</View> </View>
{/* <View className="text" onClick={this.back}> {/* <View className="text" onClick={this.back}>
@ -802,64 +816,64 @@ export default class Recording extends Component<any, any> {
)} )}
<Popup show={show} onClose={() => this.setState({ show: false })}> <Popup show={show} onClose={() => this.setState({ show: false })}>
<View className='popBox'> <View className="popBox">
<Image <Image
className='close_icon' className="close_icon"
src={require("@/img/close.png")} src={require("@/img/close.png")}
mode='widthFix' mode="widthFix"
onClick={this.setShow.bind(this, false)} onClick={this.setShow.bind(this, false)}
></Image> ></Image>
<View className='popTitle'></View> <View className="popTitle"></View>
<View className='popSubtitle'> <View className="popSubtitle">
<View className='bold'>{clockStatistics[0]?.clockNum}</View>{" "} <View className="bold">{clockStatistics[0]?.clockNum}</View>{" "}
<View className='bold'> <View className="bold">
{(clockStatistics[0]?.percentage * 100).toFixed(1)}% {(clockStatistics[0]?.percentage * 100).toFixed(1)}%
</View> </View>
</View> </View>
<View className='img_box'> <View className="img_box">
{punchInInfo.clockImageList.map((item, index) => ( {punchInInfo.clockImageList.map((item, index) => (
<View key={item} className='img'> <View key={item} className="img">
<Image className='showImg' src={item} mode='widthFix'></Image> <Image className="showImg" src={item} mode="widthFix"></Image>
<Image <Image
className='closeImg' className="closeImg"
src={require("@/img/close1.png")} src={require("@/img/close1.png")}
mode='widthFix' mode="widthFix"
onClick={this.delImg.bind(this, index)} onClick={this.delImg.bind(this, index)}
></Image> ></Image>
</View> </View>
))} ))}
{punchInInfo.clockImageList.length < 3 && ( {punchInInfo.clockImageList.length < 3 && (
<View <View
className='addBox' className="addBox"
onClick={this.handleChooseImage.bind(this)} onClick={this.handleChooseImage.bind(this)}
> >
<Image <Image
className='showImg' className="showImg"
src={require("@/img/clock_in_upload/add-image.png")} src={require("@/img/clock_in_upload/add-image.png")}
mode='widthFix' mode="widthFix"
></Image> ></Image>
</View> </View>
)} )}
</View> </View>
<View className='info4'> <View className="info4">
<View className='content'> <View className="content">
<Textarea <Textarea
placeholderStyle='color: #ccc; font-size: 26rpx;font-weight: 400;font-family: PingFang SC;' placeholderStyle="color: #ccc; font-size: 26rpx;font-weight: 400;font-family: PingFang SC;"
placeholder='请记录一下今天的护理心得吧' placeholder="请记录一下今天的护理心得吧"
maxlength={120} maxlength={120}
onInput={this.handleTextareaInput.bind(this)} onInput={this.handleTextareaInput.bind(this)}
value={punchInInfo.clockContent} value={punchInInfo.clockContent}
></Textarea> ></Textarea>
</View> </View>
<View className='tip'> <View className="tip">
{"" + (punchInInfo.clockContent.length || 0) + "/120"} {"" + (punchInInfo.clockContent.length || 0) + "/120"}
</View> </View>
</View> </View>
<View className='popbtnbox flex aitems jcenter'> <View className="popbtnbox flex aitems jcenter">
<View className='btn1' onClick={this.submit.bind(this)}> <View className="btn1" onClick={this.submit.bind(this)}>
</View> </View>
</View> </View>

Loading…
Cancel
Save