import React, { Component } from "react";
import style from "./index.less";
import { getStatusImg, filterDataArr, filterOtherDataArr,timestampToTime } from '@utils/tools';
import Notify from '@commonComp/Notify';
import Information from '../Information';
import PreviewInspect from './Inspect';
import ItemPart from './ItemPart';
import $ from "jquery";
import AssessResultHis from '@containers/AssessResultHis'
class PreviewBody extends Component {
constructor(props) {
super(props)
this.state = {
dateTime: "",
}
this.getCurrentDate = this.getCurrentDate.bind(this);
this.onPrint = this.onPrint.bind(this);
}
componentDidMount() {
this.getCurrentDate();
}
onPrint() {
$("#content").jqprint({
debug: false,
importCSS: true,
printContainer: true,
operaSupport: false,
});
this.props.onClose()
}
surePrint(jsonStr) {
if (filterDataArr(JSON.parse(jsonStr.chief)) == '') {
Notify.info('主诉不能为空');
return false;
} else if (!jsonStr.diag || jsonStr.diag.trim().length < 1) {
Notify.info('诊断不能为空');
return false;
} else {
this.onPrint();
this.props.save(true)
}
}
getCurrentDate() {
let myDate = new Date();
let year = myDate.getFullYear(); //获取完整的年份(4位,1970-????)
let mon = myDate.getMonth() - 0 + 1; //获取当前月份(0-11,0代表1月)
let day = myDate.getDate(); //获取当前日(1-31)
let date = year + '-' + (mon < 10 ? '0' + mon : mon) + '-' + (day < 10 ? '0' + day : day);
this.setState({ dateTime: date })
}
showDetails(val) {
let min = val.minValue, max = val.maxValue, value = val.value, dom = '';
if(min == null&&max == null||min == undefined&&max == undefined||min == ''&&max == ''){
dom = getStatusImg(0, value, 1)
}else if (!isNaN(min) && !isNaN(max)) {//有最大值最小值
if (isNaN(value)) {//输入的不是数据
dom = getStatusImg(1, value, 1)
} else if (value <= min) {//下降
dom = getStatusImg(3, value, 1)
} else if (value >= max) {//上升
dom = getStatusImg(2, value, 1)
} else {//正常
dom = getStatusImg(0, value, 1)
}
} else if (isNaN(min) && !isNaN(max)) {//有最大值无最小值
if (value >= max) {//上升
dom = getStatusImg(2, value, 1)
} else {//正常
dom = getStatusImg(0, value, 1)
}
} else if (!isNaN(min) && isNaN(max)) {//有最小值无最大值
if (value <= min) {//下降
dom = getStatusImg(3, value, 1)
} else {//正常
dom = getStatusImg(0, value, 1)
}
} else {//无最大最小值
dom = getStatusImg(1, value, 1)
}
if (val.questionDetailList.length > 0) {
return val.questionDetailList.map((item) => {
if (val.value == item.name) {
return
{val.value} {val.labelSuffix} |
}
})
} else {
return {dom} {val.labelSuffix} |
}
}
toTime(time){
let tmpTim = time.split(',').join('')-0
if(time && tmpTim.toString() != 'NaN'){
let date = new Date('1900-01-01');
let dateTim = date.getTime();
let times = (tmpTim-2)*24*60*60*1000;
let result = timestampToTime(dateTim+times).split(' ')[0]
return result;
}else{
return time;
}
}
render() {
const { show, preInfo, dataJson, dataStr, baseObj, flg ,come,showAssessBtn,showHistoryCases} = this.props;
let other_data={},lis_data={},pas_data={},other_yjs='',access='',adviceData={};
if(!come){
other_data = JSON.parse(baseObj.detailList[2].contentJson)
lis_data = JSON.parse(baseObj.detailList[4].contentJson)
pas_data = JSON.parse(baseObj.detailList[5].contentJson)
adviceData = JSON.parse(baseObj.detailList[7].contentJson)
other_yjs = other_data&&other_data.pfix;
access = other_data&&other_data.haveAssess
}else{
other_yjs = dataStr.other?filterOtherDataArr(JSON.parse(dataStr.other),dataJson.other):'';
access = dataJson.haveAssess
adviceData=dataJson.advice
}
//const isChronic = (dataJson.diagChronicMagItem&&dataJson.diagChronicMagItem.name)||(dataJson.mainChronicDesease&&dataJson.mainChronicDesease.name);
const noData = JSON.stringify(preInfo) == '{}';
return
医嘱: |
{((adviceData&&adviceData.assay && adviceData.assay.length > 0) || ((adviceData&&adviceData.check)&& (adviceData&&adviceData.assay.check > 0))) && 开单项目 }
{
((adviceData&&adviceData.assay && adviceData.assay.length > 0) || ((adviceData&&adviceData.check) && (adviceData&&adviceData.assay.check > 0))) && {adviceData.check?adviceData.check+',':''} {adviceData.assay}
}
{adviceData&&adviceData.commontreatment && adviceData.commontreatment.length > 0 && 一般治疗 }
{
adviceData&&adviceData.commontreatment &&
}
{adviceData&&adviceData.followUp && adviceData.followUp.length > 0 && 回访时间:{adviceData.followUp} 后回访,不适随诊 }
{adviceData&&adviceData.scheme && adviceData.scheme.length > 0 && 治疗方案 }
{
adviceData&&adviceData.scheme && adviceData.scheme.map((item, index) => {
return {item.treatment.map((it, ii) => {
return (it.treatmentStr && it.treatmentStr.length > 0 ?
{it.treatmentStr} : '')
})}
})
}
{
adviceData&&adviceData.adviceInput &&
}
|
医生签名:{baseObj ? baseObj.doctorName : (noData ? '' : preInfo.doctorName)}
{showAssessBtn&&access?
:""}
{ this.surePrint(dataStr) }} className={style.printBtn} style={{
display: show ? 'inline-block' : 'none',
}}>打印
}
}
export default PreviewBody;