正在查看: 六分钟步行测试管理软件 v1.1.0.2112120029 应用的 WalkTestReportActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 六分钟步行测试管理软件 v1.1.0.2112120029 应用的 WalkTestReportActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package cn.neoprint.padmonitor.ui;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.DashPathEffect;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.media.session.PlaybackStateCompat;
import android.text.TextUtils;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.exifinterface.media.ExifInterface;
import cn.neoprint.padmonitor.R;
import cn.neoprint.padmonitor.app.AppGlobal;
import cn.neoprint.padmonitor.corealgorithm.PanTompkinsForEcg;
import cn.neoprint.padmonitor.corealgorithm.RespPeakCal;
import cn.neoprint.padmonitor.data.DataRepository;
import cn.neoprint.padmonitor.data.entity.EcgMarkEntity;
import cn.neoprint.padmonitor.data.entity.HospitalEntity;
import cn.neoprint.padmonitor.data.entity.HrvStatisticDataEntity;
import cn.neoprint.padmonitor.data.entity.PatientEntity;
import cn.neoprint.padmonitor.data.entity.PatientEntityDao;
import cn.neoprint.padmonitor.data.entity.ReportDataEntity;
import cn.neoprint.padmonitor.data.entity.ReportEntity;
import cn.neoprint.padmonitor.data.entity.ReportParaEntity;
import cn.neoprint.padmonitor.data.entity.TestWaveDataLists;
import cn.neoprint.padmonitor.network.HttpRequestUtil;
import cn.neoprint.padmonitor.network.uploadsixminreport.CloudThread;
import cn.neoprint.padmonitor.thread.CSVOpThread;
import cn.neoprint.padmonitor.ui.WalkTestReportActivity;
import cn.neoprint.padmonitor.ui.fragment.HrvStatisticTableDataAdapter;
import cn.neoprint.padmonitor.ui.fragment.ReportTableDataAdapter;
import cn.neoprint.padmonitor.ui.view.BorgGradePopupWindow;
import cn.neoprint.padmonitor.ui.view.BreathGradePopupWindow;
import cn.neoprint.padmonitor.ui.view.HisDataGridChart;
import cn.neoprint.padmonitor.ui.view.HrvStatisticTableView;
import cn.neoprint.padmonitor.ui.view.ReportDataTableView;
import cn.neoprint.padmonitor.ui.view.ReportParasPopupWindow;
import cn.neoprint.padmonitor.ui.view.SelectEcgChannelPopupWindow;
import cn.neoprint.padmonitor.utils.DateUtils;
import cn.neoprint.padmonitor.utils.DialogUtils;
import cn.neoprint.padmonitor.utils.DisplayUtils;
import cn.neoprint.padmonitor.utils.FileUtils;
import cn.neoprint.padmonitor.utils.IDCardInfoExtractor;
import cn.neoprint.padmonitor.utils.LogFile;
import cn.neoprint.padmonitor.utils.SixMinUtils;
import cn.neoprint.padmonitor.utils.ToastUtils;
import cn.neoprint.padmonitor.utils.constant.ConstDefine;
import cn.neoprint.padmonitor.utils.constant.Constants;
import cn.neoprint.padmonitor.utils.constant.GzjSharePref;
import com.github.gcacace.signaturepad.views.SignaturePad;
import com.github.mikephil.charting.charts.BarChart;
import com.github.mikephil.charting.charts.Chart;
import com.github.mikephil.charting.charts.LineChart;
import com.github.mikephil.charting.charts.ScatterChart;
import com.github.mikephil.charting.components.Legend;
import com.github.mikephil.charting.components.XAxis;
import com.github.mikephil.charting.components.YAxis;
import com.github.mikephil.charting.data.BarData;
import com.github.mikephil.charting.data.BarDataSet;
import com.github.mikephil.charting.data.BarEntry;
import com.github.mikephil.charting.data.Entry;
import com.github.mikephil.charting.data.LineData;
import com.github.mikephil.charting.data.LineDataSet;
import com.github.mikephil.charting.data.ScatterData;
import com.github.mikephil.charting.data.ScatterDataSet;
import com.github.mikephil.charting.formatter.DefaultValueFormatter;
import com.github.mikephil.charting.formatter.IFillFormatter;
import com.github.mikephil.charting.formatter.ValueFormatter;
import com.github.mikephil.charting.interfaces.dataprovider.LineDataProvider;
import com.github.mikephil.charting.interfaces.datasets.ILineDataSet;
import com.github.mikephil.charting.utils.ColorTemplate;
import com.github.mikephil.charting.utils.EntryXComparator;
import com.sayeasytech.base.base.BaseActivity;
import com.sayeasytech.base.base.Layout;
import com.sayeasytech.base.log.KLog;
import com.sayeasytech.base.utils.FileUtil;
import com.sayeasytech.base.utils.ImageUtils;
import de.codecrafters.tableview.TableDataAdapter;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.nio.MappedByteBuffer;
import java.nio.channels.FileChannel;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Vector;
public class WalkTestReportActivity extends BaseActivity {
private static final double FEMALE_STANDARD_HEIGHT = 160.0d;
private static final double FEMALE_STANDARD_STEP_COUNT = 60.0d;
private static final int JG_TIME = 5000;
private static final double MALE_STANDARD_HEIGHT = 180.0d;
private static final double MALE_STANDARD_STEP_COUNT = 70.0d;
private static final int SHOW_TIME_STAGE = 96;
private FrameLayout afterEcgFl;
private TextView afterEcgTimestamp;
private TextView afterEcgTitle;
public long afterMidTime;
private FrameLayout beforeEcgFl;
private TextView beforeEcgTimestamp;
private TextView beforeEcgTitle;
public long beforeMidTime;
public String borgGradeScore;
public TextView borgScaleTv;
public String borgScoreAndDescription;
public String breathGradeScore;
public TextView breathGradeTv;
public String breathScoreAndDescription;
private Button btnOutputCsv;
private Button cancelTestReportBtn;
public TextView cardiopulmonaryGradeTv;
public String cardiopulmonarySummary;
private int circleDistance;
private Button clearBtn;
private Button completeTestReportBtn;
public long currentTime;
public DataFactory dataFactory;
private Button digitalSignatureBtn;
private TextView digitalSignatureTv;
public StringBuilder distanceList;
public TextView distanceTv;
public TextView doctorSignatureWarnTv;
private FrameLayout fastEcgFl;
private TextView fastEcgTimestamp;
private TextView fastEcgTitle;
public long fastTime;
private int gainType;
private String gainTypeStr;
private HisDataGridChart hisDataGridChart;
public HospitalEntity hospitalEntity;
public TextView hospitalInfoTv;
private ImageView hospitalLogoIv;
public TextView hospitalNameTv;
public TextView hrChronctropicIndexTv;
private HisDataGridChart hrHisDataGridChart;
public TextView hrRecoveryRateTv;
public TextView hrReverseTv;
public LineChart hrTrendChart;
private LinearLayout hrTrendTitleLayout;
public String hr_chronctropic_index;
public String hr_recovery_rate;
public String hr_reverse;
private HrvStatisticTableView hrvStatisticTableView;
private TextView hrvStatisticTitle;
private boolean isManualInputNibp;
private double manualInputStepPitch;
private double manualInputTotalDistance;
private FrameLayout mark1EcgFl;
private TextView mark1EcgTimestamp;
private TextView mark1EcgTitle;
public long mark1Time;
private FrameLayout mark2EcgFl;
private TextView mark2EcgTimestamp;
private TextView mark2EcgTitle;
public long mark2Time;
private FrameLayout mark3EcgFl;
private TextView mark3EcgTimestamp;
private TextView mark3EcgTitle;
public long mark3Time;
private FrameLayout mark4EcgFl;
private TextView mark4EcgTimestamp;
private TextView mark4EcgTitle;
public long mark4Time;
public String mets;
public TextView metsTv;
public PanTompkinsForEcg.PanTompkinsForEcgResult panTompkinsForEcgResult;
public PatientEntity patient;
public TextView patientBmi;
public TextView patientStepPitchTv;
private Button printReportBtn;
private Button reAnalysisBtn;
private ReportDataTableView reportDataTableView;
public ReportEntity reportEntity;
public ReportParaEntity reportParaEntity;
private Button reportParasBtn;
public String reportSummary;
public ReportTableDataAdapter reportTableDataAdapter;
private HisDataGridChart respHisDataGridChart;
public RespPeakCal.RespPeakCalResult respPeakCalResult;
public LineChart respTrendChart;
private LinearLayout respTrendTitleLayout;
private Button reviewTrendBtn;
private Button reviewWaveBtn;
private BarChart rrDiffIntervalStatisticChart;
private TextView rrDiffIntervalStatisticTitle;
private BarChart rrIntervalStatisticChart;
private TextView rrIntervalStatisticTitle;
private ScatterChart rrLorenzStatisticChart;
private TextView rrLorenzStatisticTitle;
private Button saveBtn;
private Button scoreGradeBtn;
private SignaturePad signaturePad;
public int signatureType;
private FrameLayout slowEcgFl;
private TextView slowEcgTimestamp;
private TextView slowEcgTitle;
public long slowTime;
public int speedType;
private String speedTypeStr;
private HisDataGridChart spo2HisDataGridChart;
public LineChart spo2TrendChart;
private LinearLayout spo2TrendTitleLayout;
public TextView sportAdviceTitle;
public TextView sportAdviceTv;
public String sportsSummary;
private FrameLayout start1EcgFl;
private TextView start1EcgTimestamp;
private TextView start1EcgTitle;
public long start1Time;
private FrameLayout start2EcgFl;
private TextView start2EcgTimestamp;
private TextView start2EcgTitle;
public long start2Time;
private FrameLayout start3EcgFl;
private TextView start3EcgTimestamp;
private TextView start3EcgTitle;
public long start3Time;
private FrameLayout start4EcgFl;
private TextView start4EcgTimestamp;
private TextView start4EcgTitle;
public long start4Time;
private FrameLayout start5EcgFl;
private TextView start5EcgTimestamp;
private TextView start5EcgTitle;
public long start5Time;
private FrameLayout start6EcgFl;
private TextView start6EcgTimestamp;
private TextView start6EcgTitle;
public long start6Time;
public long startTime;
public StringBuilder stepCountList;
public double stepPitch;
private String stopCause;
private byte[] testData;
public TextView testInfoTv;
private int timeRemaining;
private int totalCircle;
public double totalDistance;
private int totalStepCount;
public TextView tv_fastest_heart;
public TextView tv_slowest_heart;
public TextView tv_target_heart_rate;
public ProgressBar waitingPb;
public TextView waitingTv;
public TextView walkDistanceTv;
public TextView walkPercentTv;
private long waveDataLength;
private float ydpi;
private static final String CURRENT_POINT_FILE = ConstDefine.SD_PATH + "/WalkTest/WaveReviewpoint.dat";
private static final String CURRENT_DATA_FILE = ConstDefine.SD_PATH + "/WalkTest/WaveReview.dat";
public List<ReportDataEntity> reportDataEntityList = new ArrayList();
public List<HrvStatisticDataEntity> hrvStatisticDataEntityList = new ArrayList();
public String title1 = "";
public String title2 = "";
private long dataTime = 0;
private long originalPoint = 0;
public List<Integer> ecgIList = new Vector();
public List<Integer> ecgIIList = new Vector();
public List<Integer> ecgIIIList = new Vector();
public List<Integer> ecgVList = new Vector();
public List<Integer> ecgAVLList = new Vector();
public List<Integer> ecgAVFList = new Vector();
public List<Integer> ecgAVRList = new Vector();
private byte[] fileData = null;
private final int WAVE_DATA_LEN_8MIN = 983040;
private final int WAVE_DATA_LEN_4S = 8192;
private final int WAVE_DATA_COUNT_4S = 500;
private final int WAVE_DATA_FILE_LENGTH = 530841600;
public List<EcgMarkEntity> ecgMarkEntityList = new ArrayList();
public List<Integer> testSpo2WaveDataList = new ArrayList();
public List<Integer> testRespWaveDataList = new ArrayList();
private File mFile = null;
private int length = 0;
private FileChannel mChannel = null;
private MappedByteBuffer out = null;
private List<HisDataGridChart> beforeEcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> afterEcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> start1EcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> start2EcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> start3EcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> start4EcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> start5EcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> start6EcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> fastEcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> slowEcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> mark1EcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> mark2EcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> mark3EcgHisDataGridChartList = new ArrayList();
private List<HisDataGridChart> mark4EcgHisDataGridChartList = new ArrayList();
private List<Byte> waveDataTypeList = Arrays.asList((byte) 1, (byte) 2, (byte) 3, (byte) 5, (byte) 4, (byte) 6, (byte) 7);
private List<Integer> oriStepCountList = new ArrayList();
private List<Integer> calStepCountList = new ArrayList();
private List<Float> oriDistanceList = new ArrayList();
private List<Float> calDistanceList = new ArrayList();
private List<String> bpList = new ArrayList();
public List<Integer> spo2MeanList = new ArrayList();
public Handler handler = new Handler();
Runnable createDataRunnable = new Runnable() {
@Override
public void run() {
WalkTestReportActivity.this.clearList();
if (WalkTestReportActivity.this.beforeMidTime <= 0) {
return;
}
for (int i = 0; i < WalkTestReportActivity.this.beforeEcgHisDataGridChartList.size(); i++) {
WalkTestReportActivity walkTestReportActivity = WalkTestReportActivity.this;
walkTestReportActivity.hisDataGridChart = (HisDataGridChart) walkTestReportActivity.beforeEcgHisDataGridChartList.get(i);
WalkTestReportActivity walkTestReportActivity2 = WalkTestReportActivity.this;
walkTestReportActivity2.getLine(((Byte) walkTestReportActivity2.waveDataTypeList.get(i)).byteValue(), WalkTestReportActivity.this.beforeMidTime);
}
WalkTestReportActivity.this.beforeEcgTimestamp.setText(DateUtils.longToHourMinuteSecond(WalkTestReportActivity.this.beforeMidTime));
WalkTestReportActivity.this.clearList();
if (WalkTestReportActivity.this.start1Time <= 0) {
return;
}
for (int i2 = 0; i2 < WalkTestReportActivity.this.start1EcgHisDataGridChartList.size(); i2++) {
WalkTestReportActivity walkTestReportActivity3 = WalkTestReportActivity.this;
walkTestReportActivity3.hisDataGridChart = (HisDataGridChart) walkTestReportActivity3.start1EcgHisDataGridChartList.get(i2);
WalkTestReportActivity walkTestReportActivity4 = WalkTestReportActivity.this;
walkTestReportActivity4.getLine(((Byte) walkTestReportActivity4.waveDataTypeList.get(i2)).byteValue(), WalkTestReportActivity.this.start1Time);
}
WalkTestReportActivity.this.start1EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(WalkTestReportActivity.this.start1Time));
WalkTestReportActivity.this.clearList();
if (WalkTestReportActivity.this.start2Time <= 0) {
return;
}
for (int i3 = 0; i3 < WalkTestReportActivity.this.start2EcgHisDataGridChartList.size(); i3++) {
WalkTestReportActivity walkTestReportActivity5 = WalkTestReportActivity.this;
walkTestReportActivity5.hisDataGridChart = (HisDataGridChart) walkTestReportActivity5.start2EcgHisDataGridChartList.get(i3);
WalkTestReportActivity walkTestReportActivity6 = WalkTestReportActivity.this;
walkTestReportActivity6.getLine(((Byte) walkTestReportActivity6.waveDataTypeList.get(i3)).byteValue(), WalkTestReportActivity.this.start2Time);
}
WalkTestReportActivity.this.start2EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(WalkTestReportActivity.this.start2Time));
WalkTestReportActivity.this.clearList();
if (WalkTestReportActivity.this.start3Time <= 0) {
return;
}
for (int i4 = 0; i4 < WalkTestReportActivity.this.start3EcgHisDataGridChartList.size(); i4++) {
WalkTestReportActivity walkTestReportActivity7 = WalkTestReportActivity.this;
walkTestReportActivity7.hisDataGridChart = (HisDataGridChart) walkTestReportActivity7.start3EcgHisDataGridChartList.get(i4);
WalkTestReportActivity walkTestReportActivity8 = WalkTestReportActivity.this;
walkTestReportActivity8.getLine(((Byte) walkTestReportActivity8.waveDataTypeList.get(i4)).byteValue(), WalkTestReportActivity.this.start3Time);
}
WalkTestReportActivity.this.start3EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(WalkTestReportActivity.this.start3Time));
WalkTestReportActivity.this.clearList();
if (WalkTestReportActivity.this.start4Time <= 0) {
return;
}
for (int i5 = 0; i5 < WalkTestReportActivity.this.start4EcgHisDataGridChartList.size(); i5++) {
WalkTestReportActivity walkTestReportActivity9 = WalkTestReportActivity.this;
walkTestReportActivity9.hisDataGridChart = (HisDataGridChart) walkTestReportActivity9.start4EcgHisDataGridChartList.get(i5);
WalkTestReportActivity walkTestReportActivity10 = WalkTestReportActivity.this;
walkTestReportActivity10.getLine(((Byte) walkTestReportActivity10.waveDataTypeList.get(i5)).byteValue(), WalkTestReportActivity.this.start4Time);
}
WalkTestReportActivity.this.start4EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(WalkTestReportActivity.this.start4Time));
WalkTestReportActivity.this.clearList();
if (WalkTestReportActivity.this.start5Time <= 0) {
return;
}
for (int i6 = 0; i6 < WalkTestReportActivity.this.start5EcgHisDataGridChartList.size(); i6++) {
WalkTestReportActivity walkTestReportActivity11 = WalkTestReportActivity.this;
walkTestReportActivity11.hisDataGridChart = (HisDataGridChart) walkTestReportActivity11.start5EcgHisDataGridChartList.get(i6);
WalkTestReportActivity walkTestReportActivity12 = WalkTestReportActivity.this;
walkTestReportActivity12.getLine(((Byte) walkTestReportActivity12.waveDataTypeList.get(i6)).byteValue(), WalkTestReportActivity.this.start5Time);
}
WalkTestReportActivity.this.start5EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(WalkTestReportActivity.this.start5Time));
WalkTestReportActivity.this.clearList();
if (WalkTestReportActivity.this.start6Time <= 0) {
return;
}
for (int i7 = 0; i7 < WalkTestReportActivity.this.start6EcgHisDataGridChartList.size(); i7++) {
WalkTestReportActivity walkTestReportActivity13 = WalkTestReportActivity.this;
walkTestReportActivity13.hisDataGridChart = (HisDataGridChart) walkTestReportActivity13.start6EcgHisDataGridChartList.get(i7);
WalkTestReportActivity walkTestReportActivity14 = WalkTestReportActivity.this;
walkTestReportActivity14.getLine(((Byte) walkTestReportActivity14.waveDataTypeList.get(i7)).byteValue(), WalkTestReportActivity.this.start6Time);
}
WalkTestReportActivity.this.start6EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(WalkTestReportActivity.this.start6Time));
WalkTestReportActivity.this.clearList();
if (WalkTestReportActivity.this.afterMidTime <= 0) {
return;
}
for (int i8 = 0; i8 < WalkTestReportActivity.this.afterEcgHisDataGridChartList.size(); i8++) {
WalkTestReportActivity walkTestReportActivity15 = WalkTestReportActivity.this;
walkTestReportActivity15.hisDataGridChart = (HisDataGridChart) walkTestReportActivity15.afterEcgHisDataGridChartList.get(i8);
WalkTestReportActivity walkTestReportActivity16 = WalkTestReportActivity.this;
walkTestReportActivity16.getLine(((Byte) walkTestReportActivity16.waveDataTypeList.get(i8)).byteValue(), WalkTestReportActivity.this.afterMidTime);
}
WalkTestReportActivity.this.afterEcgTimestamp.setText(DateUtils.longToHourMinuteSecond(WalkTestReportActivity.this.afterMidTime));
}
};
public int merge(byte b, byte b2) {
return ((b << 8) | (b2 & 255)) & 65535;
}
protected void onCreate(Bundle bundle) {
float maleStepPitch;
double d;
double d2;
double d3;
super.onCreate(bundle);
KLog.d("get into walk test report activity");
if (getIntent().getExtras() == null) {
KLog.e("can't get report bundle data");
showMessage(R.string.can_not_get_report_data);
return;
}
Bundle extras = getIntent().getExtras();
if (extras.getLong("create_time") > 0) {
this.currentTime = extras.getLong("create_time");
String string = extras.getString("patient_idcard");
this.patient = DataRepository.getInstance().getPatientDao().query(string).get(0);
KLog.i("review report, get patient: " + this.patient);
ReportEntity reportEntity = DataRepository.getInstance().getReportDao().query(string, this.currentTime).get(0);
this.reportEntity = reportEntity;
if (!TextUtils.isEmpty(reportEntity.getStepCountList()) && this.reportEntity.getStepCountList().split(",").length > 0) {
for (String str : this.reportEntity.getStepCountList().split(",")) {
this.oriStepCountList.add(Integer.valueOf(Integer.parseInt(str)));
}
}
for (String str2 : this.reportEntity.getDistanceList().split(",")) {
this.oriDistanceList.add(Float.valueOf(str2));
}
this.totalCircle = this.reportEntity.getTotalCircle();
this.circleDistance = this.reportEntity.getCircleDistance();
Collections.addAll(this.bpList, this.reportEntity.getBpList().split(","));
this.isManualInputNibp = this.reportEntity.getIsManualInputNibp();
this.stopCause = this.reportEntity.getStopCause();
this.timeRemaining = this.reportEntity.getTimeRemaining();
this.manualInputTotalDistance = this.reportEntity.getManualInputTotalDistance().doubleValue();
this.manualInputStepPitch = this.reportEntity.getManualInputStepPitch().doubleValue();
this.signatureType = this.reportEntity.getSignatureType();
KLog.i("review report, current_time: " + this.currentTime + ", step_count_list: " + this.oriStepCountList + ", distance array: " + this.oriDistanceList + ", total_circle: " + this.totalCircle + ", circle_distance: " + this.circleDistance + ", bp_list: " + this.bpList + ", is_manual_input_nibp: " + this.isManualInputNibp + ", stop_cause: " + this.stopCause + ", time_remaining: " + this.timeRemaining + ", manualInputTotalDistance: " + this.manualInputTotalDistance + ", manualInputStepPitch: " + this.manualInputStepPitch + ", signatureType: " + this.signatureType);
List<ReportParaEntity> query = DataRepository.getInstance().getReportParaDao().query(string, this.currentTime);
if (query != null && query.size() > 0) {
ReportParaEntity reportParaEntity = query.get(0);
this.reportParaEntity = reportParaEntity;
reportParaEntity.checkMe();
KLog.i("get history report parameters: " + this.reportParaEntity);
} else {
KLog.e("can't history report parameters!!!");
showMessage(R.string.can_not_get_report_para);
finish();
return;
}
} else {
this.currentTime = extras.getLong("current_time", System.currentTimeMillis());
this.oriStepCountList = extras.getIntegerArrayList("step_count_list");
float[] floatArray = extras.getFloatArray("distance_array");
if (floatArray != null) {
for (float f : floatArray) {
this.oriDistanceList.add(Float.valueOf(f));
}
}
this.totalCircle = extras.getInt("total_circle", 0);
this.circleDistance = extras.getInt("circle_distance", 0);
this.bpList = extras.getStringArrayList("bp_list");
this.isManualInputNibp = extras.getBoolean("is_manual_input_nibp", false);
this.stopCause = extras.getString("stop_cause");
this.timeRemaining = extras.getInt("time_remaining", 0);
KLog.i("current_time: " + this.currentTime + ", step_count_list: " + this.oriStepCountList + ", distance array: " + this.oriDistanceList + ", total_circle: " + this.totalCircle + ", circle_distance: " + this.circleDistance + ", bp_list: " + this.bpList + ", is_manual_input_nibp: " + this.isManualInputNibp + ", stop_cause: " + this.stopCause + ", time_remaining: " + this.timeRemaining);
this.patient = (PatientEntity) extras.getSerializable(PatientEntityDao.TABLENAME);
KLog.i("get patient: " + this.patient);
this.reportParaEntity = new ReportParaEntity(this.patient.getIdCard(), Long.valueOf(this.currentTime), GzjSharePref.getIntValueByDefault(this, GzjSharePref.KEY_PREDICT_DISTANCE, 600), GzjSharePref.getFloatValueByDefault(this, GzjSharePref.KEY_MALE_STEP_PITCH, 65.0f), GzjSharePref.getFloatValueByDefault(this, GzjSharePref.KEY_FEMALE_STEP_PITCH, 60.0f), GzjSharePref.getIntValueByDefault(this, GzjSharePref.KEY_ONCE_ROUTE, 20), GzjSharePref.getIntValueByDefault(this, GzjSharePref.KEY_WORKSTATION_POSITION, 10), GzjSharePref.getIntValueByDefault(this, GzjSharePref.KEY_TEST_DURATION, 6) + 2, GzjSharePref.getBoolValue((Context) this, GzjSharePref.KEY_HIDE_STEP_COUNT), GzjSharePref.getBoolValueByDefault(this, GzjSharePref.KEY_HIDE_EVERY_STEP_COUNT, true), GzjSharePref.getBoolValue((Context) this, GzjSharePref.KEY_HIDE_MET), GzjSharePref.getBoolValueByDefault(this, GzjSharePref.KEY_HIDE_EXERCISE_PRESCRIPTION, true), GzjSharePref.getBoolValueByDefault(this, GzjSharePref.KEY_HIDE_HR, true), GzjSharePref.getBoolValueByDefault(this, GzjSharePref.KEY_HIDE_BEFORE_HR, true), GzjSharePref.getBoolValueByDefault(this, GzjSharePref.KEY_HIDE_AFTER_HR, true), GzjSharePref.getBoolValueByDefault(this, GzjSharePref.KEY_HIDE_START_EVERY_HR, true), GzjSharePref.getBoolValueByDefault(this, GzjSharePref.KEY_HIDE_TREND, true), GzjSharePref.getBoolValueByDefault(this, GzjSharePref.KEY_HIDE_RR_STATISTIC, true), GzjSharePref.getIntValueByDefault(this, "ecgfilter", 1), GzjSharePref.getIntValueByDefault(this, GzjSharePref.KEY_CAL_ECG_GAIN, 1), GzjSharePref.getIntValueByDefault(this, GzjSharePref.KEY_REPORT_ECG_GAIN_TYPE, 2), GzjSharePref.getIntValueByDefault(this, GzjSharePref.KEY_CIRCLE_COUNTER_MODE, 0), GzjSharePref.getIntValueByDefault(this, GzjSharePref.KEY_ECG_SPEED_TYPE, 1), "");
KLog.i("current report parameters: " + this.reportParaEntity);
}
this.stepCountList = new StringBuilder();
for (int i = 0; i < this.oriStepCountList.size(); i++) {
this.stepCountList.append(this.oriStepCountList.get(i));
if (i < this.oriStepCountList.size() - 1) {
this.stepCountList.append(",");
}
}
this.distanceList = new StringBuilder();
for (int i2 = 0; i2 < this.oriDistanceList.size(); i2++) {
this.distanceList.append(this.oriDistanceList.get(i2));
if (i2 < this.oriDistanceList.size() - 1) {
this.distanceList.append(",");
}
}
this.speedType = this.reportParaEntity.getSpeedType();
int testDuration = this.reportParaEntity.getTestDuration();
int i3 = this.speedType;
long j = i3 != 1 ? (i3 == 2 || i3 != 3) ? 8000L : 4000L : 16000L;
long j2 = ((testDuration * 60) * 1000) - (this.timeRemaining * 1000);
this.waveDataLength = (PlaybackStateCompat.ACTION_PLAY_FROM_URI * j2) / 4000;
long j3 = this.currentTime;
long j4 = j3 - j2;
this.startTime = j4;
long j5 = j4 + 30000;
this.beforeMidTime = j5;
if (j5 + j > j3) {
j5 = 0;
}
this.beforeMidTime = j5;
long j6 = j4 + 30000 + 60000;
this.start1Time = j6;
if (j6 + j > j3) {
j6 = 0;
}
this.start1Time = j6;
long j7 = j4 + 30000 + 120000;
this.start2Time = j7;
if (j7 + j > j3) {
j7 = 0;
}
this.start2Time = j7;
long j8 = j4 + 30000 + 180000;
this.start3Time = j8;
if (j8 + j > j3) {
j8 = 0;
}
this.start3Time = j8;
long j9 = j4 + 30000 + 240000;
this.start4Time = j9;
if (j9 + j > j3) {
j9 = 0;
}
this.start4Time = j9;
long j10 = j4 + 30000 + 300000;
this.start5Time = j10;
if (j10 + j > j3) {
j10 = 0;
}
this.start5Time = j10;
long j11 = j4 + 30000 + 360000;
this.start6Time = j11;
if (j11 + j > j3) {
j11 = 0;
}
this.start6Time = j11;
long j12 = j4 + 30000 + 420000;
this.afterMidTime = j12;
if (j + j12 > j3) {
j12 = 0;
}
this.afterMidTime = j12;
KLog.i("testDuration: " + j2 + ", waveDataLength: " + this.waveDataLength + ", startTime: " + this.startTime + ", beforeMidTime: " + this.beforeMidTime + ", start1Time: " + this.start1Time + ", start2Time: " + this.start2Time + ", start3Time: " + this.start3Time + ", start4Time: " + this.start4Time + ", start5Time: " + this.start5Time + ", start6Time: " + this.start6Time + ", afterMidTime: " + this.afterMidTime);
this.waitingPb = (ProgressBar) findViewById(R.id.waiting_pb);
this.waitingTv = (TextView) findViewById(R.id.waiting_tv);
Button button = (Button) findViewById(R.id.review_wave_btn);
this.reviewWaveBtn = button;
button.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m240x82d9c8c7(view);
}
});
Button button2 = (Button) findViewById(R.id.re_analysis_btn);
this.reAnalysisBtn = button2;
button2.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m241x74836ee6(view);
}
});
Button button3 = (Button) findViewById(R.id.review_trend_btn);
this.reviewTrendBtn = button3;
button3.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m244x662d1505(view);
}
});
Button button4 = (Button) findViewById(R.id.score_grade_btn);
this.scoreGradeBtn = button4;
button4.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m245x57d6bb24(view);
}
});
Button button5 = (Button) findViewById(R.id.report_paras_btn);
this.reportParasBtn = button5;
button5.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m246x49806143(view);
}
});
Button button6 = (Button) findViewById(R.id.complete_test_btn);
this.completeTestReportBtn = button6;
button6.setText(this.reportEntity == null ? R.string.complete_walk_test : R.string.save_change);
this.completeTestReportBtn.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m247x3b2a0762(view);
}
});
Button button7 = (Button) findViewById(R.id.btn_output_csv);
this.btnOutputCsv = button7;
button7.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m248x2cd3ad81(view);
}
});
this.btnOutputCsv.setVisibility(GzjSharePref.getBoolValueByDefault(this, GzjSharePref.KEY_ENABLE_REPORT_OUTPUT_CSV, true) ? 0 : 8);
Button button8 = (Button) findViewById(R.id.cancel_test_btn);
this.cancelTestReportBtn = button8;
button8.setText(this.reportEntity == null ? R.string.cancel_walk_test : R.string.cancel_save);
this.cancelTestReportBtn.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m249x1e7d53a0(view);
}
});
Button button9 = (Button) findViewById(R.id.print_report_btn);
this.printReportBtn = button9;
button9.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m250x1026f9bf(view);
}
});
this.reportDataTableView = (ReportDataTableView) findViewById(R.id.report_data_table_view);
this.dataFactory = new DataFactory();
this.hospitalLogoIv = (ImageView) findViewById(R.id.hospital_logo_iv);
this.hospitalNameTv = (TextView) findViewById(R.id.hospital_name_tv);
this.hospitalInfoTv = (TextView) findViewById(R.id.hospital_info_tv);
List<HospitalEntity> query2 = DataRepository.getInstance().getHospitalDao().query();
if (query2 != null && query2.size() > 0) {
this.hospitalEntity = query2.get(0);
} else {
this.hospitalEntity = new HospitalEntity();
}
String hospitalName = this.hospitalEntity.getHospitalName() == null ? "" : this.hospitalEntity.getHospitalName();
TextView textView = this.hospitalNameTv;
if (TextUtils.isEmpty(hospitalName)) {
hospitalName = getString(R.string.hospital_info_description);
}
textView.setText(hospitalName);
String hospitalAddress = this.hospitalEntity.getHospitalAddress() == null ? "" : this.hospitalEntity.getHospitalAddress();
String hospitalTel = this.hospitalEntity.getHospitalTel() == null ? "" : this.hospitalEntity.getHospitalTel();
if (TextUtils.isEmpty(hospitalAddress)) {
hospitalAddress = "";
}
if (!TextUtils.isEmpty(hospitalTel)) {
hospitalAddress = String.format("%s\n%s", hospitalAddress, hospitalTel);
}
this.hospitalInfoTv.setText(hospitalAddress);
((TextView) findViewById(R.id.patient_name)).setText(String.format("%s: %s", AppGlobal.getInstance().getString(R.string.name), this.patient.getName()));
((TextView) findViewById(R.id.patient_case_id)).setText(String.format("%s %s", AppGlobal.getInstance().getString(R.string.case_id_), this.patient.getCaseId()));
((TextView) findViewById(R.id.patient_id_card)).setText(String.format("%s: %s", AppGlobal.getInstance().getString(R.string.id_card), IDCardInfoExtractor.hideId(this.patient.getIdCard())));
((TextView) findViewById(R.id.patient_gender)).setText(String.format("%s: %s", AppGlobal.getInstance().getString(R.string.gender), this.patient.getGender()));
TextView textView2 = (TextView) findViewById(R.id.patient_age);
Object[] objArr = new Object[2];
objArr[0] = AppGlobal.getInstance().getString(R.string.age);
objArr[1] = this.patient.getAge() > 0 ? Integer.valueOf(this.patient.getAge()) : "";
textView2.setText(String.format("%s: %s", objArr));
((TextView) findViewById(R.id.patient_birth)).setText(String.format("%s %s", AppGlobal.getInstance().getString(R.string.birth_), DateUtils.longToYearMonthDay(this.patient.getBirth().longValue())));
((TextView) findViewById(R.id.patient_height)).setText(String.format("%s %s%s", AppGlobal.getInstance().getString(R.string.height_), Double.valueOf(this.patient.getHeight()), AppGlobal.getInstance().getString(R.string.height_unit)));
((TextView) findViewById(R.id.patient_weight)).setText(String.format("%s %s%s", AppGlobal.getInstance().getString(R.string.weight_), Double.valueOf(this.patient.getWeight()), AppGlobal.getInstance().getString(R.string.weight_unit)));
this.patientStepPitchTv = (TextView) findViewById(R.id.patient_sp);
TextView textView3 = (TextView) findViewById(R.id.patient_bmi);
this.patientBmi = textView3;
textView3.setText(String.format("%s %s", AppGlobal.getInstance().getString(R.string.bmi_), String.format("%.1f", Double.valueOf(this.patient.getWeight() / (((float) (this.patient.getHeight() * this.patient.getHeight())) / 10000.0f)))));
this.distanceTv = (TextView) findViewById(R.id.distance);
((TextView) findViewById(R.id.patient_health_insurance)).setText(String.format("%s %s", AppGlobal.getInstance().getString(R.string.health_insurance_), this.patient.getHealthInsuranceId()));
((TextView) findViewById(R.id.patient_medical_history)).setText(String.format("%s %s", AppGlobal.getInstance().getString(R.string.medical_history_), this.patient.getMedicalHistory()));
((TextView) findViewById(R.id.patient_clinical_diagnosis)).setText(String.format("%s %s", AppGlobal.getInstance().getString(R.string.clinical_diagnosis_), this.patient.getClinicalDiagnosis()));
((TextView) findViewById(R.id.patient_current_medication)).setText(String.format("%s %s", AppGlobal.getInstance().getString(R.string.current_medication_), this.patient.getCurrentMedication()));
this.walkDistanceTv = (TextView) findViewById(R.id.walk_distance_tv);
this.walkPercentTv = (TextView) findViewById(R.id.walk_percent_tv);
this.borgScaleTv = (TextView) findViewById(R.id.borg_scale_tv);
this.breathGradeTv = (TextView) findViewById(R.id.breath_grade_tv);
this.metsTv = (TextView) findViewById(R.id.mets_tv);
this.hrReverseTv = (TextView) findViewById(R.id.hr_reverse_tv);
this.hrChronctropicIndexTv = (TextView) findViewById(R.id.hr_chronctropic_index_tv);
this.hrRecoveryRateTv = (TextView) findViewById(R.id.hr_recovery_rate_tv);
this.tv_fastest_heart = (TextView) findViewById(R.id.tv_fastest_heart);
this.tv_slowest_heart = (TextView) findViewById(R.id.tv_slowest_heart);
this.tv_target_heart_rate = (TextView) findViewById(R.id.tv_target_heart_rate);
this.cardiopulmonaryGradeTv = (TextView) findViewById(R.id.cardiopulmonary_grade_tv);
this.sportAdviceTitle = (TextView) findViewById(R.id.sport_advice_title);
this.sportAdviceTv = (TextView) findViewById(R.id.sport_advice_tv);
this.testInfoTv = (TextView) findViewById(R.id.test_info_tv);
TextView textView4 = (TextView) findViewById(R.id.doctor_signature_warn_tv);
this.doctorSignatureWarnTv = textView4;
textView4.setVisibility(this.isManualInputNibp ? 0 : 8);
if (this.patient.getStepPitch() > 0.0d) {
d3 = this.patient.getStepPitch();
} else {
double height = this.patient.getHeight();
if (this.patient.getGender().equals(getString(R.string.woman))) {
if (height > 0.0d) {
d = height / FEMALE_STANDARD_HEIGHT;
d2 = FEMALE_STANDARD_STEP_COUNT;
d3 = d * d2;
} else {
maleStepPitch = this.reportParaEntity.getFemaleStepPitch();
d3 = maleStepPitch;
}
} else if (height > 0.0d) {
d = height / MALE_STANDARD_HEIGHT;
d2 = MALE_STANDARD_STEP_COUNT;
d3 = d * d2;
} else {
maleStepPitch = this.reportParaEntity.getMaleStepPitch();
d3 = maleStepPitch;
}
}
ReportEntity reportEntity2 = this.reportEntity;
this.stepPitch = (reportEntity2 == null || reportEntity2.getManualInputStepPitch().doubleValue() <= 0.0d) ? d3 / 100.0d : this.reportEntity.getManualInputStepPitch().doubleValue();
this.patientStepPitchTv.setText(String.format("%s %s%s", getString(R.string.step_pitch_), String.format("%.2f", Double.valueOf(this.stepPitch)), AppGlobal.getInstance().getString(R.string.meter)));
initDistanceAndStepCount();
SignaturePad findViewById = findViewById(R.id.signature_pad);
this.signaturePad = findViewById;
findViewById.setOnSignedListener(new SignaturePad.OnSignedListener() {
public void onStartSigning() {
}
public void onSigned() {
WalkTestReportActivity.this.saveBtn.setEnabled(true);
WalkTestReportActivity.this.clearBtn.setEnabled(true);
}
public void onClear() {
WalkTestReportActivity.this.saveBtn.setEnabled(false);
}
});
this.digitalSignatureTv = (TextView) findViewById(R.id.confirm_report_tv);
Button button10 = (Button) findViewById(R.id.clear_button);
this.clearBtn = button10;
button10.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m251x1d09fde(view);
}
});
Button button11 = (Button) findViewById(R.id.save_button);
this.saveBtn = button11;
button11.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m242x46f367e0(view);
}
});
Button button12 = (Button) findViewById(R.id.save_digital_signature_button);
this.digitalSignatureBtn = button12;
button12.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
WalkTestReportActivity.this.m243x389d0dff(view);
}
});
ReportEntity reportEntity3 = this.reportEntity;
if (reportEntity3 != null) {
this.borgGradeScore = reportEntity3.getBorgGradeScore();
this.breathGradeScore = this.reportEntity.getBreathGradeScore();
this.borgScaleTv.setText(String.format("%s %s", getString(R.string.borg_scale_), this.borgGradeScore));
this.breathGradeTv.setText(String.format("%s %s", getString(R.string.breath_scale_), this.breathGradeScore));
if (this.reportEntity.getSignatureType() == 1) {
Bitmap bitmapByFile = ImageUtils.getBitmapByFile(new File(ConstDefine.SD_PATH + ConstDefine.IMAGE_PATH + "/" + Constants.ImageFile.SIGNATURE_PREFIX + this.patient.getIdCard() + "_" + this.currentTime + Constants.ImageFile.SIGNATURE_SUFFIX));
if (bitmapByFile != null) {
this.signaturePad.setSignatureBitmap(bitmapByFile);
}
handWrittenSignature();
} else if (this.reportEntity.getSignatureType() == 2) {
digitalSignature();
} else {
clearSignature();
}
}
this.hrTrendTitleLayout = (LinearLayout) findViewById(R.id.hr_trend_title_ll);
HisDataGridChart hisDataGridChart = (HisDataGridChart) findViewById(R.id.hr_stream_line);
this.hrHisDataGridChart = hisDataGridChart;
hisDataGridChart.setAxisMarginLeft(25.0f);
this.hrHisDataGridChart.setAxisMarginBottom(12.0f);
this.hrHisDataGridChart.SetLineColor(getResources().getColor(R.color.black));
this.hrHisDataGridChart.setLatitudeFontColor(getResources().getColor(R.color.table_red));
this.hrHisDataGridChart.setLongtitudeFontColor(getResources().getColor(R.color.table_red));
this.hrHisDataGridChart.setLongitudeColor(getResources().getColor(R.color.table_red));
this.hrHisDataGridChart.setLatitudeColor(getResources().getColor(R.color.table_red));
this.spo2TrendTitleLayout = (LinearLayout) findViewById(R.id.spo2_trend_title_ll);
HisDataGridChart hisDataGridChart2 = (HisDataGridChart) findViewById(R.id.spo2_stream_line);
this.spo2HisDataGridChart = hisDataGridChart2;
hisDataGridChart2.setAxisMarginLeft(25.0f);
this.spo2HisDataGridChart.setAxisMarginBottom(12.0f);
this.spo2HisDataGridChart.SetLineColor(getResources().getColor(R.color.black));
this.spo2HisDataGridChart.setLatitudeFontColor(getResources().getColor(R.color.table_red));
this.spo2HisDataGridChart.setLongtitudeFontColor(getResources().getColor(R.color.table_red));
this.spo2HisDataGridChart.setLongitudeColor(getResources().getColor(R.color.table_red));
this.spo2HisDataGridChart.setLatitudeColor(getResources().getColor(R.color.table_red));
this.respTrendTitleLayout = (LinearLayout) findViewById(R.id.resp_trend_title_ll);
HisDataGridChart hisDataGridChart3 = (HisDataGridChart) findViewById(R.id.resp_stream_line);
this.respHisDataGridChart = hisDataGridChart3;
hisDataGridChart3.setAxisMarginLeft(25.0f);
this.respHisDataGridChart.setAxisMarginBottom(12.0f);
this.respHisDataGridChart.SetLineColor(getResources().getColor(R.color.black));
this.respHisDataGridChart.setLatitudeFontColor(getResources().getColor(R.color.table_red));
this.respHisDataGridChart.setLongtitudeFontColor(getResources().getColor(R.color.table_red));
this.respHisDataGridChart.setLongitudeColor(getResources().getColor(R.color.table_red));
this.respHisDataGridChart.setLatitudeColor(getResources().getColor(R.color.table_red));
this.hrTrendChart = findViewById(R.id.hr_trend_chart);
this.spo2TrendChart = findViewById(R.id.spo2_trend_chart);
this.respTrendChart = findViewById(R.id.resp_trend_chart);
this.hrvStatisticTitle = (TextView) findViewById(R.id.hrv_statistic_title);
this.hrvStatisticTableView = (HrvStatisticTableView) findViewById(R.id.hrv_statistic_chart);
this.rrIntervalStatisticTitle = (TextView) findViewById(R.id.rr_interval_statistic_title);
this.rrIntervalStatisticChart = findViewById(R.id.rr_interval_statistic_chart);
this.rrDiffIntervalStatisticTitle = (TextView) findViewById(R.id.rr_diff_interval_statistic_title);
this.rrDiffIntervalStatisticChart = findViewById(R.id.rr_diff_interval_statistic_chart);
this.rrLorenzStatisticTitle = (TextView) findViewById(R.id.rr_lorenz_statistic_title);
this.rrLorenzStatisticChart = findViewById(R.id.rr_lorenz_statistic_chart);
initRrCharts();
this.beforeEcgTitle = (TextView) findViewById(R.id.before_ecg_title);
this.beforeEcgTimestamp = (TextView) findViewById(R.id.before_ecg_timestamp_tv);
this.beforeEcgFl = (FrameLayout) findViewById(R.id.before_ecg_fl);
this.beforeEcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.before_ecg_i_line), (HisDataGridChart) findViewById(R.id.before_ecg_ii_line), (HisDataGridChart) findViewById(R.id.before_ecg_iii_line), (HisDataGridChart) findViewById(R.id.before_ecg_avr_line), (HisDataGridChart) findViewById(R.id.before_ecg_avl_line), (HisDataGridChart) findViewById(R.id.before_ecg_avf_line), (HisDataGridChart) findViewById(R.id.before_ecg_v_line));
this.afterEcgTitle = (TextView) findViewById(R.id.after_ecg_title);
this.afterEcgTimestamp = (TextView) findViewById(R.id.after_ecg_timestamp_tv);
this.afterEcgFl = (FrameLayout) findViewById(R.id.after_ecg_fl);
this.afterEcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.after_ecg_i_line), (HisDataGridChart) findViewById(R.id.after_ecg_ii_line), (HisDataGridChart) findViewById(R.id.after_ecg_iii_line), (HisDataGridChart) findViewById(R.id.after_ecg_avr_line), (HisDataGridChart) findViewById(R.id.after_ecg_avl_line), (HisDataGridChart) findViewById(R.id.after_ecg_avf_line), (HisDataGridChart) findViewById(R.id.after_ecg_v_line));
this.start1EcgTitle = (TextView) findViewById(R.id.start1_ecg_title);
this.start1EcgTimestamp = (TextView) findViewById(R.id.start1_ecg_timestamp_tv);
this.start1EcgFl = (FrameLayout) findViewById(R.id.start1_ecg_fl);
this.start1EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.start1_ecg_i_line), (HisDataGridChart) findViewById(R.id.start1_ecg_ii_line), (HisDataGridChart) findViewById(R.id.start1_ecg_iii_line), (HisDataGridChart) findViewById(R.id.start1_ecg_avr_line), (HisDataGridChart) findViewById(R.id.start1_ecg_avl_line), (HisDataGridChart) findViewById(R.id.start1_ecg_avf_line), (HisDataGridChart) findViewById(R.id.start1_ecg_v_line));
this.start2EcgTitle = (TextView) findViewById(R.id.start2_ecg_title);
this.start2EcgTimestamp = (TextView) findViewById(R.id.start2_ecg_timestamp_tv);
this.start2EcgFl = (FrameLayout) findViewById(R.id.start2_ecg_fl);
this.start2EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.start2_ecg_i_line), (HisDataGridChart) findViewById(R.id.start2_ecg_ii_line), (HisDataGridChart) findViewById(R.id.start2_ecg_iii_line), (HisDataGridChart) findViewById(R.id.start2_ecg_avr_line), (HisDataGridChart) findViewById(R.id.start2_ecg_avl_line), (HisDataGridChart) findViewById(R.id.start2_ecg_avf_line), (HisDataGridChart) findViewById(R.id.start2_ecg_v_line));
this.start3EcgTitle = (TextView) findViewById(R.id.start3_ecg_title);
this.start3EcgTimestamp = (TextView) findViewById(R.id.start3_ecg_timestamp_tv);
this.start3EcgFl = (FrameLayout) findViewById(R.id.start3_ecg_fl);
this.start3EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.start3_ecg_i_line), (HisDataGridChart) findViewById(R.id.start3_ecg_ii_line), (HisDataGridChart) findViewById(R.id.start3_ecg_iii_line), (HisDataGridChart) findViewById(R.id.start3_ecg_avr_line), (HisDataGridChart) findViewById(R.id.start3_ecg_avl_line), (HisDataGridChart) findViewById(R.id.start3_ecg_avf_line), (HisDataGridChart) findViewById(R.id.start3_ecg_v_line));
this.start4EcgTitle = (TextView) findViewById(R.id.start4_ecg_title);
this.start4EcgTimestamp = (TextView) findViewById(R.id.start4_ecg_timestamp_tv);
this.start4EcgFl = (FrameLayout) findViewById(R.id.start4_ecg_fl);
this.start4EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.start4_ecg_i_line), (HisDataGridChart) findViewById(R.id.start4_ecg_ii_line), (HisDataGridChart) findViewById(R.id.start4_ecg_iii_line), (HisDataGridChart) findViewById(R.id.start4_ecg_avr_line), (HisDataGridChart) findViewById(R.id.start4_ecg_avl_line), (HisDataGridChart) findViewById(R.id.start4_ecg_avf_line), (HisDataGridChart) findViewById(R.id.start4_ecg_v_line));
this.start5EcgTitle = (TextView) findViewById(R.id.start5_ecg_title);
this.start5EcgTimestamp = (TextView) findViewById(R.id.start5_ecg_timestamp_tv);
this.start5EcgFl = (FrameLayout) findViewById(R.id.start5_ecg_fl);
this.start5EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.start5_ecg_i_line), (HisDataGridChart) findViewById(R.id.start5_ecg_ii_line), (HisDataGridChart) findViewById(R.id.start5_ecg_iii_line), (HisDataGridChart) findViewById(R.id.start5_ecg_avr_line), (HisDataGridChart) findViewById(R.id.start5_ecg_avl_line), (HisDataGridChart) findViewById(R.id.start5_ecg_avf_line), (HisDataGridChart) findViewById(R.id.start5_ecg_v_line));
this.start6EcgTitle = (TextView) findViewById(R.id.start6_ecg_title);
this.start6EcgTimestamp = (TextView) findViewById(R.id.start6_ecg_timestamp_tv);
this.start6EcgFl = (FrameLayout) findViewById(R.id.start6_ecg_fl);
this.start6EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.start6_ecg_i_line), (HisDataGridChart) findViewById(R.id.start6_ecg_ii_line), (HisDataGridChart) findViewById(R.id.start6_ecg_iii_line), (HisDataGridChart) findViewById(R.id.start6_ecg_avr_line), (HisDataGridChart) findViewById(R.id.start6_ecg_avl_line), (HisDataGridChart) findViewById(R.id.start6_ecg_avf_line), (HisDataGridChart) findViewById(R.id.start6_ecg_v_line));
this.fastEcgTitle = (TextView) findViewById(R.id.fast_ecg_title);
this.fastEcgTimestamp = (TextView) findViewById(R.id.fast_ecg_timestamp_tv);
this.fastEcgFl = (FrameLayout) findViewById(R.id.fast_ecg_fl);
this.fastEcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.fast_ecg_i_line), (HisDataGridChart) findViewById(R.id.fast_ecg_ii_line), (HisDataGridChart) findViewById(R.id.fast_ecg_iii_line), (HisDataGridChart) findViewById(R.id.fast_ecg_avr_line), (HisDataGridChart) findViewById(R.id.fast_ecg_avl_line), (HisDataGridChart) findViewById(R.id.fast_ecg_avf_line), (HisDataGridChart) findViewById(R.id.fast_ecg_v_line));
this.slowEcgTitle = (TextView) findViewById(R.id.slow_ecg_title);
this.slowEcgTimestamp = (TextView) findViewById(R.id.slow_ecg_timestamp_tv);
this.slowEcgFl = (FrameLayout) findViewById(R.id.slow_ecg_fl);
this.slowEcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.slow_ecg_i_line), (HisDataGridChart) findViewById(R.id.slow_ecg_ii_line), (HisDataGridChart) findViewById(R.id.slow_ecg_iii_line), (HisDataGridChart) findViewById(R.id.slow_ecg_avr_line), (HisDataGridChart) findViewById(R.id.slow_ecg_avl_line), (HisDataGridChart) findViewById(R.id.slow_ecg_avf_line), (HisDataGridChart) findViewById(R.id.slow_ecg_v_line));
this.mark1EcgTitle = (TextView) findViewById(R.id.mark1_ecg_title);
this.mark1EcgTimestamp = (TextView) findViewById(R.id.mark1_ecg_timestamp_tv);
this.mark1EcgFl = (FrameLayout) findViewById(R.id.mark1_ecg_fl);
this.mark1EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.mark1_ecg_i_line), (HisDataGridChart) findViewById(R.id.mark1_ecg_ii_line), (HisDataGridChart) findViewById(R.id.mark1_ecg_iii_line), (HisDataGridChart) findViewById(R.id.mark1_ecg_avr_line), (HisDataGridChart) findViewById(R.id.mark1_ecg_avl_line), (HisDataGridChart) findViewById(R.id.mark1_ecg_avf_line), (HisDataGridChart) findViewById(R.id.mark1_ecg_v_line));
this.mark2EcgTitle = (TextView) findViewById(R.id.mark2_ecg_title);
this.mark2EcgTimestamp = (TextView) findViewById(R.id.mark2_ecg_timestamp_tv);
this.mark2EcgFl = (FrameLayout) findViewById(R.id.mark2_ecg_fl);
this.mark2EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.mark2_ecg_i_line), (HisDataGridChart) findViewById(R.id.mark2_ecg_ii_line), (HisDataGridChart) findViewById(R.id.mark2_ecg_iii_line), (HisDataGridChart) findViewById(R.id.mark2_ecg_avr_line), (HisDataGridChart) findViewById(R.id.mark2_ecg_avl_line), (HisDataGridChart) findViewById(R.id.mark2_ecg_avf_line), (HisDataGridChart) findViewById(R.id.mark2_ecg_v_line));
this.mark3EcgTitle = (TextView) findViewById(R.id.mark3_ecg_title);
this.mark3EcgTimestamp = (TextView) findViewById(R.id.mark3_ecg_timestamp_tv);
this.mark3EcgFl = (FrameLayout) findViewById(R.id.mark3_ecg_fl);
this.mark3EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.mark3_ecg_i_line), (HisDataGridChart) findViewById(R.id.mark3_ecg_ii_line), (HisDataGridChart) findViewById(R.id.mark3_ecg_iii_line), (HisDataGridChart) findViewById(R.id.mark3_ecg_avr_line), (HisDataGridChart) findViewById(R.id.mark3_ecg_avl_line), (HisDataGridChart) findViewById(R.id.mark3_ecg_avf_line), (HisDataGridChart) findViewById(R.id.mark3_ecg_v_line));
this.mark4EcgTitle = (TextView) findViewById(R.id.mark4_ecg_title);
this.mark4EcgTimestamp = (TextView) findViewById(R.id.mark4_ecg_timestamp_tv);
this.mark4EcgFl = (FrameLayout) findViewById(R.id.mark4_ecg_fl);
this.mark4EcgHisDataGridChartList = Arrays.asList((HisDataGridChart) findViewById(R.id.mark4_ecg_i_line), (HisDataGridChart) findViewById(R.id.mark4_ecg_ii_line), (HisDataGridChart) findViewById(R.id.mark4_ecg_iii_line), (HisDataGridChart) findViewById(R.id.mark4_ecg_avr_line), (HisDataGridChart) findViewById(R.id.mark4_ecg_avl_line), (HisDataGridChart) findViewById(R.id.mark4_ecg_avf_line), (HisDataGridChart) findViewById(R.id.mark4_ecg_v_line));
initHisDataGridChartList();
new AnonymousClass4().start();
}
public void m240x82d9c8c7(View view) {
Intent intent = new Intent((Context) this, (Class<?>) WalkTestEcgReviewActivity.class);
intent.putExtra("current_time", this.currentTime);
intent.putExtra("start_time", this.startTime);
intent.putExtra("fast_time", this.fastTime);
intent.putExtra("slow_time", this.slowTime);
intent.putExtra("gain_type", this.reportParaEntity.getReportEcgGain());
intent.putExtra("current_patient", this.patient);
startActivityForResult(intent, 10);
}
public void m241x74836ee6(View view) {
SelectEcgChannelPopupWindow selectEcgChannelPopupWindow = new SelectEcgChannelPopupWindow(this, this.reportParaEntity.getCalEcgGain(), new SelectEcgChannelPopupWindow.SelectEcgChannelAndSignalGainClickListener() {
@Override
public void callback(java.lang.String r5, int r6) {
throw new UnsupportedOperationException("Method not decompiled: cn.neoprint.padmonitor.ui.WalkTestReportActivity.AnonymousClass2.callback(java.lang.String, int):void");
}
});
selectEcgChannelPopupWindow.setPopupGravity(17);
selectEcgChannelPopupWindow.showPopupWindow();
}
public void m244x662d1505(View view) {
startActivity(new Intent((Context) this, (Class<?>) StreamDataReviewActivity.class));
}
public void m245x57d6bb24(View view) {
startGradePopupWindows();
}
public void m246x49806143(View view) {
startReportParasWindows();
}
public void m247x3b2a0762(View view) {
String str = ConstDefine.SD_PATH + "/WalkTest/Pdf/" + (Constants.ReportFile.PDF_PREFIX + this.patient.getName() + "_" + this.currentTime + Constants.ReportFile.PDF_SUFFIX);
if (this.signatureType > 0) {
KLog.i("complete test report");
this.waitingPb.setVisibility(0);
this.waitingTv.setVisibility(0);
this.reportSummary = this.walkDistanceTv.getText().toString() + " " + this.walkPercentTv.getText().toString() + " " + this.metsTv.getText().toString() + " " + this.hrReverseTv.getText().toString() + " " + this.hrChronctropicIndexTv.getText().toString() + " " + this.hrRecoveryRateTv.getText().toString();
this.borgScoreAndDescription = this.borgScaleTv.getText().toString();
this.breathScoreAndDescription = this.breathGradeTv.getText().toString();
if (!this.reportParaEntity.getHideTrend()) {
saveChartsToGallery(this.hrTrendChart, "hrTrendChart");
saveChartsToGallery(this.spo2TrendChart, "spo2TrendChart");
saveChartsToGallery(this.respTrendChart, "respTrendChart");
}
if (!this.reportParaEntity.getHideRrStatistic()) {
saveChartsToGallery(this.rrIntervalStatisticChart, "rrIntervalStatisticChart");
saveChartsToGallery(this.rrDiffIntervalStatisticChart, "rrDiffIntervalStatisticChart");
saveChartsToGallery(this.rrLorenzStatisticChart, "rrLorenzStatisticChart");
}
printPdf(false, false);
HttpRequestUtil.getUploadTask();
new CloudThread(this.currentTime, this, this, true).start();
return;
}
ToastUtils.showMessage((Context) this, R.string.please_save_signature_first);
}
public void m248x2cd3ad81(View view) {
outputCsv();
}
public void m249x1e7d53a0(View view) {
showNotSavePopupWindow();
}
public void m250x1026f9bf(View view) {
String str = ConstDefine.SD_PATH + "/WalkTest/Pdf/" + (Constants.ReportFile.PDF_PREFIX + this.patient.getName() + "_" + this.currentTime + Constants.ReportFile.PDF_SUFFIX);
if (this.signatureType > 0) {
KLog.d("print test report");
this.waitingPb.setVisibility(0);
this.waitingTv.setVisibility(0);
this.reportSummary = this.walkDistanceTv.getText().toString() + " " + this.walkPercentTv.getText().toString() + " " + this.metsTv.getText().toString() + " " + this.hrReverseTv.getText().toString() + " " + this.hrChronctropicIndexTv.getText().toString() + " " + this.hrRecoveryRateTv.getText().toString();
this.borgScoreAndDescription = this.borgScaleTv.getText().toString();
this.breathScoreAndDescription = this.breathGradeTv.getText().toString();
if (!this.reportParaEntity.getHideTrend()) {
saveChartsToGallery(this.hrTrendChart, "hrTrendChart");
saveChartsToGallery(this.spo2TrendChart, "spo2TrendChart");
saveChartsToGallery(this.respTrendChart, "respTrendChart");
}
if (!this.reportParaEntity.getHideRrStatistic()) {
saveChartsToGallery(this.rrIntervalStatisticChart, "rrIntervalStatisticChart");
saveChartsToGallery(this.rrDiffIntervalStatisticChart, "rrDiffIntervalStatisticChart");
saveChartsToGallery(this.rrLorenzStatisticChart, "rrLorenzStatisticChart");
}
printPdf(true, false);
return;
}
ToastUtils.showMessage((Context) this, R.string.please_save_signature_first);
}
public void m251x1d09fde(View view) {
this.signatureType = 0;
clearSignature();
}
public void m242x46f367e0(View view) {
Bitmap signatureBitmap = this.signaturePad.getSignatureBitmap();
FileUtil.createFolderIfNotExist(ConstDefine.SD_PATH + ConstDefine.IMAGE_PATH);
try {
FileUtils.saveBitmapToJPG(signatureBitmap, new File(ConstDefine.SD_PATH + ConstDefine.IMAGE_PATH + "/" + Constants.ImageFile.SIGNATURE_PREFIX + this.patient.getIdCard() + "_" + this.currentTime + Constants.ImageFile.SIGNATURE_SUFFIX));
this.signatureType = 1;
handWrittenSignature();
ToastUtils.showMessage((Context) this, R.string.save_completed);
} catch (IOException e) {
KLog.e("save signature image failed. ", e);
}
}
public void m243x389d0dff(View view) {
File file = new File(ConstDefine.SD_PATH + ConstDefine.IMAGE_PATH + "/" + Constants.ImageFile.SIGNATURE_PREFIX + this.patient.getIdCard() + "_" + this.currentTime + Constants.ImageFile.SIGNATURE_SUFFIX);
if (file.exists()) {
FileUtils.delete(file);
}
this.signatureType = 2;
digitalSignature();
ToastUtils.showMessage((Context) this, R.string.save_completed);
}
class AnonymousClass4 extends Thread {
AnonymousClass4() {
}
@Override
public void run() {
super.run();
WalkTestReportActivity walkTestReportActivity = WalkTestReportActivity.this;
walkTestReportActivity.testData = walkTestReportActivity.getWaveData((int) walkTestReportActivity.waveDataLength);
WalkTestReportActivity walkTestReportActivity2 = WalkTestReportActivity.this;
walkTestReportActivity2.parseWalkTestWaveDataList(walkTestReportActivity2.testData);
WalkTestReportActivity walkTestReportActivity3 = WalkTestReportActivity.this;
walkTestReportActivity3.respPeakCalResult = RespPeakCal.cal(100, 125, 128, walkTestReportActivity3.testRespWaveDataList);
LogFile.saveLog(WalkTestReportActivity.this.respPeakCalResult.getInfo());
WalkTestReportActivity.this.panTompkinsForEcgResult = PanTompkinsForEcg.cal(409.6d, 250, TestWaveDataLists.getInstance().getECGIIWaveDataList(), 0, WalkTestReportActivity.this.reportParaEntity.getCalEcgGain());
LogFile.saveLog(WalkTestReportActivity.this.panTompkinsForEcgResult.getInfo());
for (int i = 0; i < 8; i++) {
int i2 = 15 * i;
int min = Math.min(WalkTestReportActivity.this.testSpo2WaveDataList.size() - i2, 15);
if (min > 0) {
int i3 = 0;
for (int i4 = 0; i4 < min; i4++) {
i3 += WalkTestReportActivity.this.testSpo2WaveDataList.get(i4 + i2).intValue();
}
WalkTestReportActivity.this.spo2MeanList.add(Integer.valueOf(i3 / min));
} else {
WalkTestReportActivity.this.spo2MeanList.add(0);
}
}
WalkTestReportActivity.this.runOnUiThread(new Runnable() {
@Override
public final void run() {
WalkTestReportActivity.AnonymousClass4.this.m253lambda$run$1$cnneoprintpadmonitoruiWalkTestReportActivity$4();
}
});
}
public void m253lambda$run$1$cnneoprintpadmonitoruiWalkTestReportActivity$4() {
if (WalkTestReportActivity.this.reportEntity == null) {
WalkTestReportActivity.this.createEcgDataTables();
WalkTestReportActivity.this.scoreGradeBtn.post(new Runnable() {
@Override
public final void run() {
WalkTestReportActivity.AnonymousClass4.this.m252lambda$run$0$cnneoprintpadmonitoruiWalkTestReportActivity$4();
}
});
return;
}
WalkTestReportActivity walkTestReportActivity = WalkTestReportActivity.this;
walkTestReportActivity.createEcgDataTables(walkTestReportActivity.reportEntity.getSlowTime().longValue(), WalkTestReportActivity.this.reportEntity.getFastTime().longValue());
if (WalkTestReportActivity.this.manualInputTotalDistance > 0.0d) {
WalkTestReportActivity walkTestReportActivity2 = WalkTestReportActivity.this;
walkTestReportActivity2.updateTotalDistance(walkTestReportActivity2.manualInputTotalDistance);
WalkTestReportActivity.this.refreshReportDataView();
}
if (WalkTestReportActivity.this.manualInputStepPitch > 0.0d) {
WalkTestReportActivity walkTestReportActivity3 = WalkTestReportActivity.this;
walkTestReportActivity3.updateStepPitch(walkTestReportActivity3.manualInputStepPitch * 100.0d);
}
}
public void m252lambda$run$0$cnneoprintpadmonitoruiWalkTestReportActivity$4() {
WalkTestReportActivity.this.startGradePopupWindows();
WalkTestReportActivity.this.preSavePdf();
}
}
protected Layout getLayout() {
return Layout.createLayoutByID(R.layout.activity_walk_test_report);
}
public void initHisDataGridChartList() {
int i = this.speedType;
if (i == 1) {
this.speedTypeStr = getString(R.string.print_speed2);
} else if (i == 2) {
this.speedTypeStr = getString(R.string.print_speed3);
} else if (i == 3) {
this.speedTypeStr = getString(R.string.print_speed4);
}
int reportEcgGain = this.reportParaEntity.getReportEcgGain();
this.gainType = reportEcgGain;
if (reportEcgGain == 1) {
this.ydpi = AppGlobal.getInstance().displayMetrics.ydpi / 2.0f;
this.gainTypeStr = " (" + this.speedTypeStr + " " + getString(R.string.gain1) + ")";
} else if (reportEcgGain == 2) {
this.ydpi = AppGlobal.getInstance().displayMetrics.ydpi;
this.gainTypeStr = " (" + this.speedTypeStr + " " + getString(R.string.gain2) + ")";
} else if (reportEcgGain == 3) {
this.ydpi = AppGlobal.getInstance().displayMetrics.ydpi * 2.0f;
this.gainTypeStr = " (" + this.speedTypeStr + " " + getString(R.string.gain3) + ")";
}
this.beforeEcgTitle.setText(String.format("%s%s", getString(R.string.before_wave_line), this.gainTypeStr));
this.afterEcgTitle.setText(String.format("%s%s", getString(R.string.after_wave_line), this.gainTypeStr));
this.start1EcgTitle.setText(String.format("%s%s", getString(R.string.start1_wave_line), this.gainTypeStr));
this.start2EcgTitle.setText(String.format("%s%s", getString(R.string.start2_wave_line), this.gainTypeStr));
this.start3EcgTitle.setText(String.format("%s%s", getString(R.string.start3_wave_line), this.gainTypeStr));
this.start4EcgTitle.setText(String.format("%s%s", getString(R.string.start4_wave_line), this.gainTypeStr));
this.start5EcgTitle.setText(String.format("%s%s", getString(R.string.start5_wave_line), this.gainTypeStr));
this.start6EcgTitle.setText(String.format("%s%s", getString(R.string.start6_wave_line), this.gainTypeStr));
this.fastEcgTitle.setText(String.format("%s%s", getString(R.string.fast_wave_line), this.gainTypeStr));
this.slowEcgTitle.setText(String.format("%s%s", getString(R.string.slow_wave_line), this.gainTypeStr));
List<EcgMarkEntity> list = this.ecgMarkEntityList;
if (list != null) {
TextView textView = this.mark1EcgTitle;
Object[] objArr = new Object[2];
objArr[0] = list.size() > 0 ? this.ecgMarkEntityList.get(0).getEcgDesc() : "";
objArr[1] = this.gainTypeStr;
textView.setText(String.format("%s%s", objArr));
TextView textView2 = this.mark2EcgTitle;
Object[] objArr2 = new Object[2];
objArr2[0] = this.ecgMarkEntityList.size() > 1 ? this.ecgMarkEntityList.get(1).getEcgDesc() : "";
objArr2[1] = this.gainTypeStr;
textView2.setText(String.format("%s%s", objArr2));
TextView textView3 = this.mark3EcgTitle;
Object[] objArr3 = new Object[2];
objArr3[0] = this.ecgMarkEntityList.size() > 2 ? this.ecgMarkEntityList.get(2).getEcgDesc() : "";
objArr3[1] = this.gainTypeStr;
textView3.setText(String.format("%s%s", objArr3));
TextView textView4 = this.mark4EcgTitle;
Object[] objArr4 = new Object[2];
objArr4[0] = this.ecgMarkEntityList.size() > 3 ? this.ecgMarkEntityList.get(3).getEcgDesc() : "";
objArr4[1] = this.gainTypeStr;
textView4.setText(String.format("%s%s", objArr4));
}
for (int i2 = 0; i2 < this.beforeEcgHisDataGridChartList.size(); i2++) {
this.beforeEcgHisDataGridChartList.get(i2).SetLineColor(getResources().getColor(R.color.black));
this.beforeEcgHisDataGridChartList.get(i2).setLongitudeColor(getResources().getColor(R.color.table_red));
this.beforeEcgHisDataGridChartList.get(i2).setLatitudeColor(getResources().getColor(R.color.table_red));
this.beforeEcgHisDataGridChartList.get(i2).SetDPI(this.ydpi / 2.0f);
}
for (int i3 = 0; i3 < this.fastEcgHisDataGridChartList.size(); i3++) {
this.fastEcgHisDataGridChartList.get(i3).SetLineColor(getResources().getColor(R.color.black));
this.fastEcgHisDataGridChartList.get(i3).setLongitudeColor(getResources().getColor(R.color.table_red));
this.fastEcgHisDataGridChartList.get(i3).setLatitudeColor(getResources().getColor(R.color.table_red));
this.fastEcgHisDataGridChartList.get(i3).SetDPI(this.ydpi / 2.0f);
}
for (int i4 = 0; i4 < this.slowEcgHisDataGridChartList.size(); i4++) {
this.slowEcgHisDataGridChartList.get(i4).SetLineColor(getResources().getColor(R.color.black));
this.slowEcgHisDataGridChartList.get(i4).setLongitudeColor(getResources().getColor(R.color.table_red));
this.slowEcgHisDataGridChartList.get(i4).setLatitudeColor(getResources().getColor(R.color.table_red));
this.slowEcgHisDataGridChartList.get(i4).SetDPI(this.ydpi / 2.0f);
}
for (int i5 = 0; i5 < this.afterEcgHisDataGridChartList.size(); i5++) {
this.afterEcgHisDataGridChartList.get(i5).SetLineColor(getResources().getColor(R.color.black));
this.afterEcgHisDataGridChartList.get(i5).setLongitudeColor(getResources().getColor(R.color.table_red));
this.afterEcgHisDataGridChartList.get(i5).setLatitudeColor(getResources().getColor(R.color.table_red));
this.afterEcgHisDataGridChartList.get(i5).SetDPI(this.ydpi / 2.0f);
}
for (int i6 = 0; i6 < this.start1EcgHisDataGridChartList.size(); i6++) {
this.start1EcgHisDataGridChartList.get(i6).SetLineColor(getResources().getColor(R.color.black));
this.start1EcgHisDataGridChartList.get(i6).setLongitudeColor(getResources().getColor(R.color.table_red));
this.start1EcgHisDataGridChartList.get(i6).setLatitudeColor(getResources().getColor(R.color.table_red));
this.start1EcgHisDataGridChartList.get(i6).SetDPI(this.ydpi / 2.0f);
}
for (int i7 = 0; i7 < this.start2EcgHisDataGridChartList.size(); i7++) {
this.start2EcgHisDataGridChartList.get(i7).SetLineColor(getResources().getColor(R.color.black));
this.start2EcgHisDataGridChartList.get(i7).setLongitudeColor(getResources().getColor(R.color.table_red));
this.start2EcgHisDataGridChartList.get(i7).setLatitudeColor(getResources().getColor(R.color.table_red));
this.start2EcgHisDataGridChartList.get(i7).SetDPI(this.ydpi / 2.0f);
}
for (int i8 = 0; i8 < this.start3EcgHisDataGridChartList.size(); i8++) {
this.start3EcgHisDataGridChartList.get(i8).SetLineColor(getResources().getColor(R.color.black));
this.start3EcgHisDataGridChartList.get(i8).setLongitudeColor(getResources().getColor(R.color.table_red));
this.start3EcgHisDataGridChartList.get(i8).setLatitudeColor(getResources().getColor(R.color.table_red));
this.start3EcgHisDataGridChartList.get(i8).SetDPI(this.ydpi / 2.0f);
}
for (int i9 = 0; i9 < this.start4EcgHisDataGridChartList.size(); i9++) {
this.start4EcgHisDataGridChartList.get(i9).SetLineColor(getResources().getColor(R.color.black));
this.start4EcgHisDataGridChartList.get(i9).setLongitudeColor(getResources().getColor(R.color.table_red));
this.start4EcgHisDataGridChartList.get(i9).setLatitudeColor(getResources().getColor(R.color.table_red));
this.start4EcgHisDataGridChartList.get(i9).SetDPI(this.ydpi / 2.0f);
}
for (int i10 = 0; i10 < this.start5EcgHisDataGridChartList.size(); i10++) {
this.start5EcgHisDataGridChartList.get(i10).SetLineColor(getResources().getColor(R.color.black));
this.start5EcgHisDataGridChartList.get(i10).setLongitudeColor(getResources().getColor(R.color.table_red));
this.start5EcgHisDataGridChartList.get(i10).setLatitudeColor(getResources().getColor(R.color.table_red));
this.start5EcgHisDataGridChartList.get(i10).SetDPI(this.ydpi / 2.0f);
}
for (int i11 = 0; i11 < this.start6EcgHisDataGridChartList.size(); i11++) {
this.start6EcgHisDataGridChartList.get(i11).SetLineColor(getResources().getColor(R.color.black));
this.start6EcgHisDataGridChartList.get(i11).setLongitudeColor(getResources().getColor(R.color.table_red));
this.start6EcgHisDataGridChartList.get(i11).setLatitudeColor(getResources().getColor(R.color.table_red));
this.start6EcgHisDataGridChartList.get(i11).SetDPI(this.ydpi / 2.0f);
}
for (int i12 = 0; i12 < this.mark1EcgHisDataGridChartList.size(); i12++) {
this.mark1EcgHisDataGridChartList.get(i12).SetLineColor(getResources().getColor(R.color.black));
this.mark1EcgHisDataGridChartList.get(i12).setLongitudeColor(getResources().getColor(R.color.table_red));
this.mark1EcgHisDataGridChartList.get(i12).setLatitudeColor(getResources().getColor(R.color.table_red));
this.mark1EcgHisDataGridChartList.get(i12).SetDPI(this.ydpi / 2.0f);
}
for (int i13 = 0; i13 < this.mark2EcgHisDataGridChartList.size(); i13++) {
this.mark2EcgHisDataGridChartList.get(i13).SetLineColor(getResources().getColor(R.color.black));
this.mark2EcgHisDataGridChartList.get(i13).setLongitudeColor(getResources().getColor(R.color.table_red));
this.mark2EcgHisDataGridChartList.get(i13).setLatitudeColor(getResources().getColor(R.color.table_red));
this.mark2EcgHisDataGridChartList.get(i13).SetDPI(this.ydpi / 2.0f);
}
for (int i14 = 0; i14 < this.mark3EcgHisDataGridChartList.size(); i14++) {
this.mark3EcgHisDataGridChartList.get(i14).SetLineColor(getResources().getColor(R.color.black));
this.mark3EcgHisDataGridChartList.get(i14).setLongitudeColor(getResources().getColor(R.color.table_red));
this.mark3EcgHisDataGridChartList.get(i14).setLatitudeColor(getResources().getColor(R.color.table_red));
this.mark3EcgHisDataGridChartList.get(i14).SetDPI(this.ydpi / 2.0f);
}
for (int i15 = 0; i15 < this.mark4EcgHisDataGridChartList.size(); i15++) {
this.mark4EcgHisDataGridChartList.get(i15).SetLineColor(getResources().getColor(R.color.black));
this.mark4EcgHisDataGridChartList.get(i15).setLongitudeColor(getResources().getColor(R.color.table_red));
this.mark4EcgHisDataGridChartList.get(i15).setLatitudeColor(getResources().getColor(R.color.table_red));
this.mark4EcgHisDataGridChartList.get(i15).SetDPI(this.ydpi / 2.0f);
}
}
public void createEcgDataTables() {
createEcgDataTables(0L, 0L);
}
public void createEcgDataTables(long j, long j2) {
this.handler.post(this.createDataRunnable);
refreshReportDataView();
getTrendData();
if (this.hrvStatisticTableView != null) {
this.hrvStatisticDataEntityList = this.dataFactory.createHrvStatisticDataList(this);
this.hrvStatisticTableView.setDataAdapter(new HrvStatisticTableDataAdapter(this, this.hrvStatisticDataEntityList, this.hrvStatisticTableView));
this.hrvStatisticTableView.setSwipeToRefreshEnabled(false);
}
clearList();
for (int i = 0; i < this.fastEcgHisDataGridChartList.size(); i++) {
this.hisDataGridChart = this.fastEcgHisDataGridChartList.get(i);
this.fastTime = j2 > 0 ? j2 : (this.startTime + (((int) this.panTompkinsForEcgResult.getHrMaxTim()) * 1000)) - 8000;
getLine(this.waveDataTypeList.get(i).byteValue(), this.fastTime);
}
this.fastEcgTimestamp.setText(DateUtils.longToHourMinuteSecond(this.fastTime));
clearList();
for (int i2 = 0; i2 < this.slowEcgHisDataGridChartList.size(); i2++) {
this.hisDataGridChart = this.slowEcgHisDataGridChartList.get(i2);
this.slowTime = j > 0 ? j : (this.startTime + (((int) this.panTompkinsForEcgResult.getHrMinTim()) * 1000)) - 8000;
getLine(this.waveDataTypeList.get(i2).byteValue(), this.slowTime);
}
this.slowEcgTimestamp.setText(DateUtils.longToHourMinuteSecond(this.slowTime));
setData(this.rrIntervalStatisticChart, 40, 50.0f, 1);
setData(this.rrDiffIntervalStatisticChart, 40, 50.0f, 2);
setRrLorenzData(this.rrLorenzStatisticChart, 2000, 2000);
refreshReportVisible();
this.waitingPb.setVisibility(8);
this.waitingTv.setVisibility(8);
this.cancelTestReportBtn.setVisibility(0);
refreshEcgMarkList();
}
public void preSavePdf() {
KLog.i("pre save test report pdf");
this.reportSummary = this.walkDistanceTv.getText().toString() + " " + this.walkPercentTv.getText().toString() + " " + this.metsTv.getText().toString() + " " + this.hrReverseTv.getText().toString() + " " + this.hrChronctropicIndexTv.getText().toString() + " " + this.hrRecoveryRateTv.getText().toString();
this.borgScoreAndDescription = "";
this.breathScoreAndDescription = "";
if (!this.reportParaEntity.getHideTrend()) {
saveChartsToGallery(this.hrTrendChart, "hrTrendChart");
saveChartsToGallery(this.spo2TrendChart, "spo2TrendChart");
saveChartsToGallery(this.respTrendChart, "respTrendChart");
}
if (!this.reportParaEntity.getHideRrStatistic()) {
saveChartsToGallery(this.rrIntervalStatisticChart, "rrIntervalStatisticChart");
saveChartsToGallery(this.rrDiffIntervalStatisticChart, "rrDiffIntervalStatisticChart");
saveChartsToGallery(this.rrLorenzStatisticChart, "rrLorenzStatisticChart");
}
saveWaveData();
printPdf(false, true);
}
private void printPdf(boolean z, boolean z2) {
if (z) {
return;
}
savePdfData();
}
private void savePdfData() {
String str = this.reportDataEntityList.get(0).getBp() + "," + this.reportDataEntityList.get(7).getBp();
List<ReportEntity> query = DataRepository.getInstance().getReportDao().query(this.patient.getIdCard(), this.currentTime);
ReportEntity reportEntity = new ReportEntity(query.size() == 0 ? null : query.get(0).getId(), this.patient.getIdCard(), Long.valueOf(this.currentTime), str, this.stepCountList.toString(), this.distanceList.toString(), this.totalCircle, this.circleDistance, this.isManualInputNibp, this.stopCause, this.timeRemaining, Double.valueOf(this.manualInputStepPitch), Double.valueOf(this.manualInputTotalDistance), this.breathGradeScore, this.borgGradeScore, Long.valueOf(this.slowTime), Long.valueOf(this.fastTime), this.signatureType, Constants.ReportFile.PDF_PREFIX + this.patient.getName() + "_" + this.currentTime + Constants.ReportFile.PDF_SUFFIX, Constants.ReportFile.HISTORY_DATA_PREFIX + this.patient.getIdCard() + "_" + this.currentTime + Constants.ReportFile.HISTORY_DATA_SUFFIX, "", 0L, "", "");
DataRepository.getInstance().getReportDao().insertOrReplace(reportEntity);
KLog.i("saved pdf data. " + reportEntity);
DataRepository.getInstance().getReportParaDao().insertOrReplace(this.reportParaEntity);
}
public void onBackPressed() {
showNotSavePopupWindow();
}
private void showNotSavePopupWindow() {
Intent intent = new Intent();
Bundle bundle = new Bundle();
bundle.putInt("popuptextview", R.string.dialog_title_save_history_report);
intent.putExtras(bundle);
intent.setClass(this, PopUpDialogActivity.class);
startActivityForResult(intent, 15);
}
public boolean isValidStepCountList() {
List<Integer> list = this.oriStepCountList;
if (list == null) {
return false;
}
Iterator<Integer> it = list.iterator();
int i = 0;
while (it.hasNext()) {
i += it.next().intValue();
}
return this.oriStepCountList.size() == 6 && i > 0;
}
private boolean isValidDistanceList() {
Iterator<Float> it = this.oriDistanceList.iterator();
int i = 0;
while (it.hasNext()) {
i = (int) (i + it.next().floatValue());
}
List<Float> list = this.oriDistanceList;
return list != null && list.size() == 6 && i > 0;
}
public boolean hasDistanceAndStepCount() {
List<Float> list;
List<Integer> list2 = this.calStepCountList;
return list2 != null && list2.size() == 6 && (list = this.calDistanceList) != null && list.size() == 6;
}
private void initDistanceAndStepCount() {
this.calStepCountList.clear();
this.calDistanceList.clear();
boolean isValidStepCountList = isValidStepCountList();
boolean isValidDistanceList = isValidDistanceList();
if (isValidStepCountList && isValidDistanceList) {
float f = 0.0f;
ArrayList arrayList = new ArrayList();
int i = 0;
for (int i2 = 0; i2 < 6; i2++) {
i += this.oriStepCountList.get(i2).intValue();
f += this.oriDistanceList.get(i2).floatValue();
arrayList.add(Integer.valueOf(Math.round(this.oriDistanceList.get(i2).floatValue() / ((float) this.stepPitch))));
}
if (Math.abs(i - (f / ((float) this.stepPitch))) > 80.0f) {
this.calStepCountList.addAll(arrayList);
} else {
this.calStepCountList.addAll(this.oriStepCountList);
}
this.calDistanceList.addAll(this.oriDistanceList);
this.totalStepCount = 0;
this.totalDistance = 0.0d;
Iterator<Integer> it = this.calStepCountList.iterator();
while (it.hasNext()) {
this.totalStepCount += it.next().intValue();
}
Iterator<Float> it2 = this.calDistanceList.iterator();
while (it2.hasNext()) {
this.totalDistance += it2.next().floatValue();
}
} else if (!isValidStepCountList && isValidDistanceList) {
this.calDistanceList.addAll(this.oriDistanceList);
for (int i3 = 0; i3 < 6; i3++) {
this.calStepCountList.add(Integer.valueOf(Math.round(this.oriDistanceList.get(i3).floatValue() / ((float) this.stepPitch))));
}
this.totalStepCount = 0;
this.totalDistance = 0.0d;
Iterator<Integer> it3 = this.calStepCountList.iterator();
while (it3.hasNext()) {
this.totalStepCount += it3.next().intValue();
}
Iterator<Float> it4 = this.calDistanceList.iterator();
while (it4.hasNext()) {
this.totalDistance += it4.next().floatValue();
}
} else if (isValidStepCountList && !isValidDistanceList) {
this.calStepCountList.addAll(this.oriStepCountList);
for (int i4 = 0; i4 < 6; i4++) {
this.calDistanceList.add(Float.valueOf(this.oriStepCountList.get(i4).intValue() * ((float) this.stepPitch)));
}
this.totalStepCount = 0;
this.totalDistance = 0.0d;
Iterator<Integer> it5 = this.calStepCountList.iterator();
while (it5.hasNext()) {
this.totalStepCount += it5.next().intValue();
}
Iterator<Float> it6 = this.calDistanceList.iterator();
while (it6.hasNext()) {
this.totalDistance += it6.next().floatValue();
}
} else {
KLog.w("ori step count list is INVALID! ori distance list is INVALID!");
}
KLog.i("isValidStepCountList=" + isValidStepCountList + ", isValidDistanceList=" + isValidDistanceList + ", totalStepCount=" + this.totalStepCount + ", totalDistance=" + this.totalDistance + ", oriStepCountList=" + this.oriStepCountList + ", oriDistanceList=" + this.oriDistanceList + ", calStepCountList=" + this.calStepCountList + ", calDistanceList=" + this.calDistanceList);
initDistanceAndStepCountRelations();
}
public void updateTotalDistance(double d) {
this.oriStepCountList.clear();
this.oriDistanceList.clear();
this.calStepCountList.clear();
this.calDistanceList.clear();
KLog.i("update total distance: " + d);
this.manualInputTotalDistance = d;
this.totalDistance = d;
this.totalStepCount = (int) Math.round(d / this.stepPitch);
initDistanceAndStepCountRelations();
}
private void initDistanceAndStepCountRelations() {
this.distanceTv.setText(String.format("%s %s%s", AppGlobal.getInstance().getString(R.string.walk_distance_), String.format("%.2f", Double.valueOf(this.totalDistance)), AppGlobal.getInstance().getString(R.string.meter)));
double d = this.totalDistance;
String format = String.format(getString(R.string.cardiopulmonary_summary), Integer.valueOf(d < 300.0d ? 1 : d < 374.9d ? 2 : d < 449.9d ? 3 : 4));
this.cardiopulmonarySummary = format;
this.cardiopulmonaryGradeTv.setText(format);
String valueOf = String.valueOf(this.totalStepCount * 4);
String format2 = String.format("%.0f", Double.valueOf(this.totalDistance * 4.0d));
String valueOf2 = String.valueOf((int) ((220 - this.patient.getAge()) * 0.8d));
this.sportAdviceTitle.setVisibility(this.reportParaEntity.getHideExercisePrescription() ? 8 : 0);
this.sportAdviceTv.setVisibility(this.reportParaEntity.getHideExercisePrescription() ? 8 : 0);
this.sportsSummary = String.format(getString(R.string.sports_summary), valueOf, format2, valueOf2);
if (!TextUtils.isEmpty(this.stopCause)) {
this.sportsSummary = String.format(getString(R.string.cause_of_emergency_stop), this.stopCause);
}
this.sportAdviceTv.setText(this.sportsSummary);
this.mets = String.format("%.1f", Double.valueOf((((this.totalDistance * 0.1d) / 6.0d) + 3.5d) / 3.5d));
this.metsTv.setText(this.reportParaEntity.getHideMet() ? "" : String.format("%s %s", getString(R.string.mets_), this.mets + "METs"));
this.walkDistanceTv.setText(String.format("%s %s%s", getString(R.string.walk_distance_), String.format("%.1f", Double.valueOf(this.totalDistance)), getString(R.string.meter)));
int predictDistance = this.reportParaEntity.getPredictDistance();
double sixmwdNew = SixMinUtils.sixmwdNew(this.patient.getGender(), this.patient.getAge(), this.patient.getHeight(), this.patientBmi.getText().toString());
if (sixmwdNew <= 0.0d) {
sixmwdNew = predictDistance;
}
this.walkPercentTv.setText(String.format("%s %s%s", getString(R.string.walk_percent_), String.format("%.0f", Float.valueOf((((float) this.totalDistance) * 100.0f) / ((float) sixmwdNew))), getString(R.string.percent_unit)) + "(" + String.format("%.0f", Double.valueOf(sixmwdNew)) + getString(R.string.meter) + ")");
this.testInfoTv.setText(String.format("%s%d%s, %s%d%s", getString(R.string.predict_distance), Integer.valueOf(predictDistance), getString(R.string.meter), getString(R.string.test_duration), Integer.valueOf(this.reportParaEntity.getTestDuration()), getString(R.string.minute_unit)));
}
private void initHrRelations() {
this.hr_reverse = String.format("%.0f", Double.valueOf(this.panTompkinsForEcgResult.getRunHrMax() - this.panTompkinsForEcgResult.getBeforeRunHr()));
this.hr_chronctropic_index = String.format("%.1f", Double.valueOf((this.panTompkinsForEcgResult.getRunHrMax() - this.panTompkinsForEcgResult.getBeforeRunHr()) / ((220 - this.patient.getAge()) - this.panTompkinsForEcgResult.getBeforeRunHr())));
this.hr_recovery_rate = String.format("%.1f", Double.valueOf(Math.abs(this.panTompkinsForEcgResult.getRunStopHr() - this.panTompkinsForEcgResult.getAfterRunHr()) / 10.0d));
boolean hideMet = this.reportParaEntity.getHideMet();
this.hrReverseTv.setText(hideMet ? "" : String.format("%s %s", getString(R.string.hr_reverse_), this.hr_reverse));
this.hrChronctropicIndexTv.setText(hideMet ? "" : String.format("%s %s", getString(R.string.hr_chronctropic_index_), this.hr_chronctropic_index));
this.hrRecoveryRateTv.setText(hideMet ? "" : String.format("%s %s", getString(R.string.hr_recovery_rate_), this.hr_recovery_rate));
this.metsTv.setVisibility(hideMet ? 8 : 0);
this.hrReverseTv.setVisibility(hideMet ? 8 : 0);
this.hrChronctropicIndexTv.setVisibility(hideMet ? 8 : 0);
this.hrRecoveryRateTv.setVisibility(hideMet ? 8 : 0);
this.tv_fastest_heart.setText(String.format("%s %s%s", getString(R.string.fastest_heart_rate_during_exercise_), String.format("%.0f", Double.valueOf(this.panTompkinsForEcgResult.getHrMax())), getString(R.string.times_minute)));
this.tv_slowest_heart.setText(String.format("%s %s%s", getString(R.string.slowest_heart_rate_during_exercise_), String.format("%.0f", Double.valueOf(this.panTompkinsForEcgResult.getHrMin())), getString(R.string.times_minute)));
this.tv_target_heart_rate.setText(String.format("%s %s%s", getString(R.string.target_heart_rate_), String.format("%.0f", Double.valueOf((((220 - this.patient.getAge()) - this.panTompkinsForEcgResult.getBeforeRunHr()) * 0.6d) + this.panTompkinsForEcgResult.getBeforeRunHr())), getString(R.string.times_minute)));
}
public void updateStepPitch(double d) {
double d2 = d / 100.0d;
this.stepPitch = d2;
this.manualInputStepPitch = d2;
KLog.i("manual update step pitch: " + this.manualInputStepPitch);
this.patientStepPitchTv.setText(String.format("%s %s%s", getString(R.string.step_pitch_), String.format("%.2f", Double.valueOf(this.stepPitch)), AppGlobal.getInstance().getString(R.string.meter)));
initDistanceAndStepCount();
refreshReportDataView();
}
private void refreshEcgMarkList() {
KLog.i("update ecg mark view.");
List<EcgMarkEntity> query = DataRepository.getInstance().getEcgMarkDao().query(this.patient.getIdCard(), this.currentTime);
this.ecgMarkEntityList = query;
if (query.size() > 0 && this.ecgMarkEntityList.get(0) != null && this.ecgMarkEntityList.get(0).getEcgTime().longValue() != 0) {
this.mark1EcgTitle.setVisibility(0);
this.mark1EcgFl.setVisibility(0);
this.mark1EcgTitle.setText(this.ecgMarkEntityList.get(0).getEcgDesc());
this.mark1Time = this.ecgMarkEntityList.get(0).getEcgTime().longValue();
clearList();
for (int i = 0; i < this.mark1EcgHisDataGridChartList.size(); i++) {
HisDataGridChart hisDataGridChart = this.mark1EcgHisDataGridChartList.get(i);
this.hisDataGridChart = hisDataGridChart;
hisDataGridChart.setVisibility(0);
getLine(this.waveDataTypeList.get(i).byteValue(), this.mark1Time);
}
this.mark1EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(this.mark1Time));
} else {
this.mark1EcgTitle.setVisibility(8);
this.mark1EcgFl.setVisibility(8);
}
if (this.ecgMarkEntityList.size() > 1 && this.ecgMarkEntityList.get(1) != null && this.ecgMarkEntityList.get(1).getEcgTime().longValue() != 0) {
this.mark2EcgTitle.setVisibility(0);
this.mark2EcgFl.setVisibility(0);
this.mark2EcgTitle.setText(this.ecgMarkEntityList.get(1).getEcgDesc());
this.mark2Time = this.ecgMarkEntityList.get(1).getEcgTime().longValue();
clearList();
for (int i2 = 0; i2 < this.mark2EcgHisDataGridChartList.size(); i2++) {
HisDataGridChart hisDataGridChart2 = this.mark2EcgHisDataGridChartList.get(i2);
this.hisDataGridChart = hisDataGridChart2;
hisDataGridChart2.setVisibility(0);
getLine(this.waveDataTypeList.get(i2).byteValue(), this.mark2Time);
}
this.mark2EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(this.mark2Time));
} else {
this.mark2EcgTitle.setVisibility(8);
this.mark2EcgFl.setVisibility(8);
}
if (this.ecgMarkEntityList.size() > 2 && this.ecgMarkEntityList.get(2) != null && this.ecgMarkEntityList.get(2).getEcgTime().longValue() != 0) {
this.mark3EcgTitle.setVisibility(0);
this.mark3EcgFl.setVisibility(0);
this.mark3EcgTitle.setText(this.ecgMarkEntityList.get(2).getEcgDesc());
this.mark3Time = this.ecgMarkEntityList.get(2).getEcgTime().longValue();
clearList();
for (int i3 = 0; i3 < this.mark3EcgHisDataGridChartList.size(); i3++) {
HisDataGridChart hisDataGridChart3 = this.mark3EcgHisDataGridChartList.get(i3);
this.hisDataGridChart = hisDataGridChart3;
hisDataGridChart3.setVisibility(0);
getLine(this.waveDataTypeList.get(i3).byteValue(), this.mark3Time);
}
this.mark3EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(this.mark3Time));
} else {
this.mark3EcgTitle.setVisibility(8);
this.mark3EcgFl.setVisibility(8);
}
if (this.ecgMarkEntityList.size() > 3 && this.ecgMarkEntityList.get(3) != null && this.ecgMarkEntityList.get(3).getEcgTime().longValue() != 0) {
this.mark4EcgTitle.setVisibility(0);
this.mark4EcgFl.setVisibility(0);
this.mark4EcgTitle.setText(this.ecgMarkEntityList.get(3).getEcgDesc());
this.mark4Time = this.ecgMarkEntityList.get(3).getEcgTime().longValue();
clearList();
for (int i4 = 0; i4 < this.mark4EcgHisDataGridChartList.size(); i4++) {
HisDataGridChart hisDataGridChart4 = this.mark4EcgHisDataGridChartList.get(i4);
this.hisDataGridChart = hisDataGridChart4;
hisDataGridChart4.setVisibility(0);
getLine(this.waveDataTypeList.get(i4).byteValue(), this.mark4Time);
}
this.mark4EcgTimestamp.setText(DateUtils.longToHourMinuteSecond(this.mark4Time));
return;
}
this.mark4EcgTitle.setVisibility(8);
this.mark4EcgFl.setVisibility(8);
}
protected void onResume() {
super.onResume();
HospitalEntity hospitalEntity = this.hospitalEntity;
if (hospitalEntity != null) {
String hospitalImagePath = hospitalEntity.getHospitalImagePath() == null ? "" : this.hospitalEntity.getHospitalImagePath();
if (TextUtils.isEmpty(hospitalImagePath)) {
return;
}
this.hospitalLogoIv.setImageBitmap(BitmapFactory.decodeFile(hospitalImagePath));
}
}
protected void onActivityResult(int i, int i2, Intent intent) {
super.onActivityResult(i, i2, intent);
if (i != 10) {
if (i == 15 && intent != null && intent.getExtras().getBoolean("popupresult")) {
KLog.d("user cancel save walk test report.");
finish();
return;
}
return;
}
if (intent != null) {
long longExtra = intent.getLongExtra("slow_time", 0L);
long longExtra2 = intent.getLongExtra("fast_time", 0L);
if (longExtra != 0) {
this.slowTime = longExtra;
clearList();
for (int i3 = 0; i3 < this.slowEcgHisDataGridChartList.size(); i3++) {
this.hisDataGridChart = this.slowEcgHisDataGridChartList.get(i3);
getLine(this.waveDataTypeList.get(i3).byteValue(), longExtra);
}
this.slowEcgTimestamp.setText(DateUtils.longToHourMinuteSecond(this.slowTime));
}
if (longExtra2 != 0) {
this.fastTime = longExtra2;
clearList();
for (int i4 = 0; i4 < this.fastEcgHisDataGridChartList.size(); i4++) {
this.hisDataGridChart = this.fastEcgHisDataGridChartList.get(i4);
getLine(this.waveDataTypeList.get(i4).byteValue(), longExtra2);
}
this.fastEcgTimestamp.setText(DateUtils.longToHourMinuteSecond(this.fastTime));
}
refreshEcgMarkList();
}
}
protected void onDestroy() {
super.onDestroy();
KLog.d("destroy walk test report activity");
DisplayUtils.resetDeviceConfigDisplay(this);
this.handler.removeCallbacks(this.createDataRunnable);
}
public boolean onKeyDown(int i, KeyEvent keyEvent) {
if (i != 4 && i != 3) {
return true;
}
showNotSavePopupWindow();
return true;
}
public class DataFactory {
public DataFactory() {
}
List<ReportDataEntity> createReportDataList(Context context) {
int i;
String valueOf;
if (WalkTestReportActivity.this.bpList == null) {
WalkTestReportActivity.this.bpList = new ArrayList();
}
while (true) {
if (WalkTestReportActivity.this.bpList.size() >= 2) {
break;
}
WalkTestReportActivity.this.bpList.add("--");
}
if (WalkTestReportActivity.this.spo2MeanList == null) {
WalkTestReportActivity.this.spo2MeanList = new ArrayList();
}
while (WalkTestReportActivity.this.spo2MeanList.size() < 6) {
WalkTestReportActivity.this.spo2MeanList.add(0);
}
ArrayList arrayList = new ArrayList();
arrayList.add(new ReportDataEntity(context.getString(R.string.before_1), String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(0)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(0).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(0)), "--", "--", (String) WalkTestReportActivity.this.bpList.get(0)));
boolean hideStepCount = WalkTestReportActivity.this.reportParaEntity.getHideStepCount();
if (!WalkTestReportActivity.this.reportParaEntity.getHideEveryStepCount() && WalkTestReportActivity.this.hasDistanceAndStepCount()) {
arrayList.add(new ReportDataEntity("1", String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(1)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(1).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(1)), hideStepCount ? "--" : String.valueOf(WalkTestReportActivity.this.calStepCountList.get(0)), String.format("%.0f", WalkTestReportActivity.this.calDistanceList.get(0)), "--"));
arrayList.add(new ReportDataEntity(ExifInterface.GPS_MEASUREMENT_2D, String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(2)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(2).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(2)), hideStepCount ? "--" : String.valueOf(WalkTestReportActivity.this.calStepCountList.get(1)), String.format("%.0f", WalkTestReportActivity.this.calDistanceList.get(1)), "--"));
String format = String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(3));
String valueOf2 = String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(3).intValue()));
String format2 = String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(3));
if (hideStepCount) {
valueOf = "--";
i = 2;
} else {
i = 2;
valueOf = String.valueOf(WalkTestReportActivity.this.calStepCountList.get(2));
}
arrayList.add(new ReportDataEntity(ExifInterface.GPS_MEASUREMENT_3D, format, valueOf2, format2, valueOf, String.format("%.0f", WalkTestReportActivity.this.calDistanceList.get(i)), "--"));
arrayList.add(new ReportDataEntity("4", String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(4)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(4).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(4)), hideStepCount ? "--" : String.valueOf(WalkTestReportActivity.this.calStepCountList.get(3)), String.format("%.0f", WalkTestReportActivity.this.calDistanceList.get(3)), "--"));
arrayList.add(new ReportDataEntity("5", String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(5)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(5).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(5)), hideStepCount ? "--" : String.valueOf(WalkTestReportActivity.this.calStepCountList.get(4)), String.format("%.0f", WalkTestReportActivity.this.calDistanceList.get(4)), "--"));
arrayList.add(new ReportDataEntity("6", String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(6)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(6).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(6)), hideStepCount ? "--" : String.valueOf(WalkTestReportActivity.this.calStepCountList.get(5)), String.format("%.0f", WalkTestReportActivity.this.calDistanceList.get(5)), "--"));
} else {
arrayList.add(new ReportDataEntity("1", String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(1)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(1).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(1)), "--", "--", "--"));
arrayList.add(new ReportDataEntity(ExifInterface.GPS_MEASUREMENT_2D, String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(2)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(2).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(2)), "--", "--", "--"));
arrayList.add(new ReportDataEntity(ExifInterface.GPS_MEASUREMENT_3D, String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(3)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(3).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(3)), "--", "--", "--"));
arrayList.add(new ReportDataEntity("4", String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(4)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(4).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(4)), "--", "--", "--"));
arrayList.add(new ReportDataEntity("5", String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(5)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(5).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(5)), "--", "--", "--"));
arrayList.add(new ReportDataEntity("6", String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(6)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(6).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(6)), "--", "--", "--"));
}
arrayList.add(new ReportDataEntity(context.getString(R.string.after_1), String.format("%.0f", WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute().get(7)), String.valueOf(Math.max(75, WalkTestReportActivity.this.spo2MeanList.get(7).intValue())), String.format("%.0f", WalkTestReportActivity.this.respPeakCalResult.getHrMinute().get(7)), hideStepCount ? "--" : String.valueOf(WalkTestReportActivity.this.totalStepCount), String.format("%.0f", Double.valueOf(WalkTestReportActivity.this.totalDistance)), (String) WalkTestReportActivity.this.bpList.get(1)));
arrayList.add(new ReportDataEntity(context.getString(R.string.max), String.format("%.0f", Double.valueOf(getMaxDouble(WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute()))), String.valueOf(Math.max(75, getMaxInt(WalkTestReportActivity.this.spo2MeanList))), String.format("%.0f", Double.valueOf(getMaxDouble(WalkTestReportActivity.this.respPeakCalResult.getHrMinute()))), "--", "--", "--"));
arrayList.add(new ReportDataEntity(context.getString(R.string.min), String.format("%.0f", Double.valueOf(getMinDouble(WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute()))), String.valueOf(Math.max(75, getMinInt(WalkTestReportActivity.this.spo2MeanList))), String.format("%.0f", Double.valueOf(getMinDouble(WalkTestReportActivity.this.respPeakCalResult.getHrMinute()))), "--", "--", "--"));
arrayList.add(new ReportDataEntity(context.getString(R.string.ave), String.format("%.0f", Double.valueOf(getAveDouble(WalkTestReportActivity.this.panTompkinsForEcgResult.getHrMinute()))), String.format("%.0f", Float.valueOf(Math.max(75.0f, getAveInt(WalkTestReportActivity.this.spo2MeanList)))), String.format("%.0f", Double.valueOf(getAveDouble(WalkTestReportActivity.this.respPeakCalResult.getHrMinute()))), hideStepCount ? "--" : String.format("%.0f", Float.valueOf(WalkTestReportActivity.this.totalStepCount / 6.0f)), String.format("%.0f", Float.valueOf(((float) WalkTestReportActivity.this.totalDistance) / 6.0f)), "--"));
return arrayList;
}
public double getMaxDouble(List<Double> list) {
if (list == null || list.size() == 0) {
return 0.0d;
}
double doubleValue = list.get(0).doubleValue();
Iterator<Double> it = list.iterator();
while (it.hasNext()) {
doubleValue = Math.max(it.next().doubleValue(), doubleValue);
}
return doubleValue;
}
public int getMaxInt(List<Integer> list) {
int i = 0;
if (list != null && list.size() != 0) {
i = list.get(0).intValue();
Iterator<Integer> it = list.iterator();
while (it.hasNext()) {
i = Math.max(it.next().intValue(), i);
}
}
return i;
}
public double getMinDouble(List<Double> list) {
if (list == null || list.size() == 0) {
return 0.0d;
}
double doubleValue = list.get(0).doubleValue();
Iterator<Double> it = list.iterator();
while (it.hasNext()) {
doubleValue = Math.min(it.next().doubleValue(), doubleValue);
}
return doubleValue;
}
public int getMinInt(List<Integer> list) {
int i = 0;
if (list != null && list.size() != 0) {
i = list.get(0).intValue();
Iterator<Integer> it = list.iterator();
while (it.hasNext()) {
i = Math.min(it.next().intValue(), i);
}
}
return i;
}
public double getAveDouble(List<Double> list) {
double d = 0.0d;
if (list == null || list.size() == 0) {
return 0.0d;
}
Iterator<Double> it = list.iterator();
while (it.hasNext()) {
d += it.next().doubleValue();
}
return d / list.size();
}
public float getAveInt(List<Integer> list) {
if (list == null || list.size() == 0) {
return 0.0f;
}
int i = 0;
Iterator<Integer> it = list.iterator();
while (it.hasNext()) {
i += it.next().intValue();
}
return i / list.size();
}
List<HrvStatisticDataEntity> createHrvStatisticDataList(Context context) {
ArrayList arrayList = new ArrayList();
arrayList.add(new HrvStatisticDataEntity(context.getString(R.string.measured_value), WalkTestReportActivity.this.panTompkinsForEcgResult.getLen(), ((float) WalkTestReportActivity.this.panTompkinsForEcgResult.getSdnn()) * 1000.0f, ((float) WalkTestReportActivity.this.panTompkinsForEcgResult.getRmsdd()) * 1000.0f, ((float) WalkTestReportActivity.this.panTompkinsForEcgResult.getSdsd()) * 1000.0f, WalkTestReportActivity.this.panTompkinsForEcgResult.getNn50(), (float) WalkTestReportActivity.this.panTompkinsForEcgResult.getPnn50(), WalkTestReportActivity.this.panTompkinsForEcgResult.getNn20(), (float) WalkTestReportActivity.this.panTompkinsForEcgResult.getPnn20()));
return arrayList;
}
}
public void startGradePopupWindows() {
BreathGradePopupWindow breathGradePopupWindow = new BreathGradePopupWindow(this, new BreathGradePopupWindow.BreathGradeItemClickListener() {
@Override
public void onBreathGradeItemClick(String str) {
WalkTestReportActivity.this.breathGradeTv.setText(String.format("%s %s", WalkTestReportActivity.this.getString(R.string.breath_scale_), str));
WalkTestReportActivity.this.breathGradeScore = str;
KLog.d(String.format("%s %s", WalkTestReportActivity.this.getString(R.string.breath_scale_), str));
BorgGradePopupWindow borgGradePopupWindow = new BorgGradePopupWindow(WalkTestReportActivity.this, new AnonymousClass1());
borgGradePopupWindow.setOutSideDismiss(false);
borgGradePopupWindow.setBackPressEnable(false);
borgGradePopupWindow.showPopupWindow();
}
class AnonymousClass1 implements BorgGradePopupWindow.BorgGradeItemClickListener {
AnonymousClass1() {
}
@Override
public void onBorgGradeItemClick(String str) {
double maleStepPitch;
float maleStepPitch2;
WalkTestReportActivity.this.borgScaleTv.setText(String.format("%s %s", WalkTestReportActivity.this.getString(R.string.borg_scale_), str));
WalkTestReportActivity.this.borgGradeScore = str;
KLog.d(String.format("%s %s", WalkTestReportActivity.this.getString(R.string.borg_scale_), str));
if (WalkTestReportActivity.this.isValidStepCountList() || WalkTestReportActivity.this.patient.getStepPitch() > 0.0d) {
return;
}
double height = WalkTestReportActivity.this.patient.getHeight();
if (WalkTestReportActivity.this.patient.getGender().equals(WalkTestReportActivity.this.getString(R.string.woman))) {
maleStepPitch = height > 0.0d ? (height / WalkTestReportActivity.FEMALE_STANDARD_HEIGHT) * WalkTestReportActivity.FEMALE_STANDARD_STEP_COUNT : WalkTestReportActivity.this.reportParaEntity.getFemaleStepPitch();
maleStepPitch2 = WalkTestReportActivity.this.reportParaEntity.getFemaleStepPitch();
} else {
maleStepPitch = height > 0.0d ? (height / WalkTestReportActivity.MALE_STANDARD_HEIGHT) * WalkTestReportActivity.MALE_STANDARD_STEP_COUNT : WalkTestReportActivity.this.reportParaEntity.getMaleStepPitch();
maleStepPitch2 = WalkTestReportActivity.this.reportParaEntity.getMaleStepPitch();
}
final double d = maleStepPitch2;
View inflate = LayoutInflater.from(WalkTestReportActivity.this).inflate(R.layout.dialog_edit_text, (ViewGroup) null);
final EditText editText = (EditText) inflate.findViewById(R.id.et_step_pitch);
final String format = String.format(Locale.CHINA, "%.1f", Double.valueOf(maleStepPitch));
DialogUtils.showEditTextDialog(WalkTestReportActivity.this, WalkTestReportActivity.this.getString(R.string.dialog_02), WalkTestReportActivity.this.getString(R.string.notice_no_patient_step_pitch), WalkTestReportActivity.this.getString(R.string.yes), WalkTestReportActivity.this.getString(R.string.returndefault) + String.format(Locale.CHINA, "%.1f", Double.valueOf(d)) + WalkTestReportActivity.this.getString(R.string.centimetre), new DialogInterface.OnClickListener() {
@Override
public final void onClick(DialogInterface dialogInterface, int i) {
WalkTestReportActivity.AnonymousClass5.AnonymousClass1.this.m254x129be0a1(format, editText, dialogInterface, i);
}
}, new DialogInterface.OnClickListener() {
@Override
public final void onClick(DialogInterface dialogInterface, int i) {
WalkTestReportActivity.AnonymousClass5.AnonymousClass1.this.m255x2cb75f40(d, dialogInterface, i);
}
}, inflate, editText, format);
}
public void m254x129be0a1(String str, EditText editText, DialogInterface dialogInterface, int i) {
if (str.equals(editText.getText().toString())) {
return;
}
double parseDouble = Double.parseDouble(editText.getText().toString());
if (parseDouble > 0.0d) {
WalkTestReportActivity.this.updateStepPitch(parseDouble);
} else {
ToastUtils.showMessage((Context) WalkTestReportActivity.this, R.string.param_can_not_below_zero);
}
}
public void m255x2cb75f40(double d, DialogInterface dialogInterface, int i) {
if (d > 0.0d) {
WalkTestReportActivity.this.updateStepPitch(d);
}
}
}
});
breathGradePopupWindow.setOutSideDismiss(false);
breathGradePopupWindow.setBackPressEnable(false);
breathGradePopupWindow.showPopupWindow();
}
public void refreshReportDataView() {
if (this.reportDataTableView != null) {
this.reportDataEntityList.clear();
this.reportDataEntityList = this.dataFactory.createReportDataList(this);
TableDataAdapter reportTableDataAdapter = new ReportTableDataAdapter(this, this.reportDataEntityList, this.reportDataTableView);
this.reportTableDataAdapter = reportTableDataAdapter;
this.reportDataTableView.setDataAdapter(reportTableDataAdapter);
this.reportDataTableView.setSwipeToRefreshEnabled(false);
this.reportTableDataAdapter.notifyDataSetChanged();
initHrRelations();
}
}
public void refreshReportVisible() {
this.mets = String.format("%.1f", Double.valueOf((((this.totalDistance * 0.1d) / 6.0d) + 3.5d) / 3.5d));
this.metsTv.setText(this.reportParaEntity.getHideMet() ? "" : String.format("%s%s", getString(R.string.mets_), this.mets + "METs"));
initHrRelations();
this.sportAdviceTitle.setVisibility(this.reportParaEntity.getHideExercisePrescription() ? 8 : 0);
this.sportAdviceTv.setVisibility(this.reportParaEntity.getHideExercisePrescription() ? 8 : 0);
if (this.reportParaEntity.getHideHr()) {
Iterator<HisDataGridChart> it = this.beforeEcgHisDataGridChartList.iterator();
while (it.hasNext()) {
it.next().setVisibility(8);
}
this.beforeEcgTitle.setVisibility(8);
this.beforeEcgFl.setVisibility(8);
Iterator<HisDataGridChart> it2 = this.fastEcgHisDataGridChartList.iterator();
while (it2.hasNext()) {
it2.next().setVisibility(8);
}
this.fastEcgTitle.setVisibility(8);
this.fastEcgFl.setVisibility(8);
Iterator<HisDataGridChart> it3 = this.slowEcgHisDataGridChartList.iterator();
while (it3.hasNext()) {
it3.next().setVisibility(8);
}
this.slowEcgTitle.setVisibility(8);
this.slowEcgFl.setVisibility(8);
Iterator<HisDataGridChart> it4 = this.mark1EcgHisDataGridChartList.iterator();
while (it4.hasNext()) {
it4.next().setVisibility(8);
}
this.mark1EcgTitle.setVisibility(8);
this.mark1EcgFl.setVisibility(8);
Iterator<HisDataGridChart> it5 = this.mark2EcgHisDataGridChartList.iterator();
while (it5.hasNext()) {
it5.next().setVisibility(8);
}
this.mark2EcgTitle.setVisibility(8);
this.mark2EcgFl.setVisibility(8);
Iterator<HisDataGridChart> it6 = this.mark3EcgHisDataGridChartList.iterator();
while (it6.hasNext()) {
it6.next().setVisibility(8);
}
this.mark3EcgTitle.setVisibility(8);
this.mark3EcgFl.setVisibility(8);
Iterator<HisDataGridChart> it7 = this.mark4EcgHisDataGridChartList.iterator();
while (it7.hasNext()) {
it7.next().setVisibility(8);
}
this.mark4EcgTitle.setVisibility(8);
this.mark4EcgFl.setVisibility(8);
Iterator<HisDataGridChart> it8 = this.afterEcgHisDataGridChartList.iterator();
while (it8.hasNext()) {
it8.next().setVisibility(8);
}
this.afterEcgTitle.setVisibility(8);
this.afterEcgFl.setVisibility(8);
Iterator<HisDataGridChart> it9 = this.start1EcgHisDataGridChartList.iterator();
while (it9.hasNext()) {
it9.next().setVisibility(8);
}
this.start1EcgTitle.setVisibility(8);
this.start1EcgFl.setVisibility(8);
Iterator<HisDataGridChart> it10 = this.start2EcgHisDataGridChartList.iterator();
while (it10.hasNext()) {
it10.next().setVisibility(8);
}
this.start2EcgTitle.setVisibility(8);
this.start2EcgFl.setVisibility(8);
Iterator<HisDataGridChart> it11 = this.start3EcgHisDataGridChartList.iterator();
while (it11.hasNext()) {
it11.next().setVisibility(8);
}
this.start3EcgTitle.setVisibility(8);
this.start3EcgFl.setVisibility(8);
Iterator<HisDataGridChart> it12 = this.start4EcgHisDataGridChartList.iterator();
while (it12.hasNext()) {
it12.next().setVisibility(8);
}
this.start4EcgTitle.setVisibility(8);
this.start4EcgFl.setVisibility(8);
Iterator<HisDataGridChart> it13 = this.start5EcgHisDataGridChartList.iterator();
while (it13.hasNext()) {
it13.next().setVisibility(8);
}
this.start5EcgTitle.setVisibility(8);
this.start5EcgFl.setVisibility(8);
Iterator<HisDataGridChart> it14 = this.start6EcgHisDataGridChartList.iterator();
while (it14.hasNext()) {
it14.next().setVisibility(8);
}
this.start6EcgTitle.setVisibility(8);
this.start6EcgFl.setVisibility(8);
} else {
Iterator<HisDataGridChart> it15 = this.beforeEcgHisDataGridChartList.iterator();
while (it15.hasNext()) {
it15.next().setVisibility(0);
}
this.beforeEcgTitle.setVisibility(0);
this.beforeEcgFl.setVisibility(0);
Iterator<HisDataGridChart> it16 = this.fastEcgHisDataGridChartList.iterator();
while (it16.hasNext()) {
it16.next().setVisibility(0);
}
this.fastEcgTitle.setVisibility(0);
this.fastEcgFl.setVisibility(0);
if (this.ecgMarkEntityList.size() > 0 && this.ecgMarkEntityList.get(0) != null && this.ecgMarkEntityList.get(0).getEcgTime().longValue() != 0) {
Iterator<HisDataGridChart> it17 = this.mark1EcgHisDataGridChartList.iterator();
while (it17.hasNext()) {
it17.next().setVisibility(0);
}
this.mark1EcgTitle.setVisibility(0);
this.mark1EcgFl.setVisibility(0);
} else {
Iterator<HisDataGridChart> it18 = this.mark1EcgHisDataGridChartList.iterator();
while (it18.hasNext()) {
it18.next().setVisibility(8);
}
this.mark1EcgTitle.setVisibility(8);
this.mark1EcgFl.setVisibility(8);
}
if (this.ecgMarkEntityList.size() > 1 && this.ecgMarkEntityList.get(1) != null && this.ecgMarkEntityList.get(1).getEcgTime().longValue() != 0) {
Iterator<HisDataGridChart> it19 = this.mark2EcgHisDataGridChartList.iterator();
while (it19.hasNext()) {
it19.next().setVisibility(0);
}
this.mark2EcgTitle.setVisibility(0);
this.mark2EcgFl.setVisibility(0);
} else {
Iterator<HisDataGridChart> it20 = this.mark2EcgHisDataGridChartList.iterator();
while (it20.hasNext()) {
it20.next().setVisibility(8);
}
this.mark2EcgTitle.setVisibility(8);
this.mark2EcgFl.setVisibility(8);
}
if (this.ecgMarkEntityList.size() > 2 && this.ecgMarkEntityList.get(2) != null && this.ecgMarkEntityList.get(2).getEcgTime().longValue() != 0) {
Iterator<HisDataGridChart> it21 = this.mark3EcgHisDataGridChartList.iterator();
while (it21.hasNext()) {
it21.next().setVisibility(0);
}
this.mark3EcgTitle.setVisibility(0);
this.mark3EcgFl.setVisibility(0);
} else {
Iterator<HisDataGridChart> it22 = this.mark3EcgHisDataGridChartList.iterator();
while (it22.hasNext()) {
it22.next().setVisibility(8);
}
this.mark3EcgTitle.setVisibility(8);
this.mark3EcgFl.setVisibility(8);
}
if (this.ecgMarkEntityList.size() > 3 && this.ecgMarkEntityList.get(3) != null && this.ecgMarkEntityList.get(3).getEcgTime().longValue() != 0) {
Iterator<HisDataGridChart> it23 = this.mark4EcgHisDataGridChartList.iterator();
while (it23.hasNext()) {
it23.next().setVisibility(0);
}
this.mark4EcgTitle.setVisibility(0);
this.mark4EcgFl.setVisibility(0);
} else {
Iterator<HisDataGridChart> it24 = this.mark4EcgHisDataGridChartList.iterator();
while (it24.hasNext()) {
it24.next().setVisibility(8);
}
this.mark4EcgTitle.setVisibility(8);
this.mark4EcgFl.setVisibility(8);
}
Iterator<HisDataGridChart> it25 = this.slowEcgHisDataGridChartList.iterator();
while (it25.hasNext()) {
it25.next().setVisibility(0);
}
this.slowEcgTitle.setVisibility(0);
this.slowEcgFl.setVisibility(0);
Iterator<HisDataGridChart> it26 = this.afterEcgHisDataGridChartList.iterator();
while (it26.hasNext()) {
it26.next().setVisibility(0);
}
this.afterEcgTitle.setVisibility(0);
this.afterEcgFl.setVisibility(0);
Iterator<HisDataGridChart> it27 = this.start1EcgHisDataGridChartList.iterator();
while (it27.hasNext()) {
it27.next().setVisibility(0);
}
this.start1EcgTitle.setVisibility(0);
this.start1EcgFl.setVisibility(0);
Iterator<HisDataGridChart> it28 = this.start2EcgHisDataGridChartList.iterator();
while (it28.hasNext()) {
it28.next().setVisibility(0);
}
this.start2EcgTitle.setVisibility(0);
this.start2EcgFl.setVisibility(0);
Iterator<HisDataGridChart> it29 = this.start3EcgHisDataGridChartList.iterator();
while (it29.hasNext()) {
it29.next().setVisibility(0);
}
this.start3EcgTitle.setVisibility(0);
this.start3EcgFl.setVisibility(0);
Iterator<HisDataGridChart> it30 = this.start4EcgHisDataGridChartList.iterator();
while (it30.hasNext()) {
it30.next().setVisibility(0);
}
this.start4EcgTitle.setVisibility(0);
this.start4EcgFl.setVisibility(0);
Iterator<HisDataGridChart> it31 = this.start5EcgHisDataGridChartList.iterator();
while (it31.hasNext()) {
it31.next().setVisibility(0);
}
this.start5EcgTitle.setVisibility(0);
this.start5EcgFl.setVisibility(0);
Iterator<HisDataGridChart> it32 = this.start6EcgHisDataGridChartList.iterator();
while (it32.hasNext()) {
it32.next().setVisibility(0);
}
this.start6EcgTitle.setVisibility(0);
this.start6EcgFl.setVisibility(0);
boolean hideBeforeHr = this.reportParaEntity.getHideBeforeHr();
boolean hideAfterHr = this.reportParaEntity.getHideAfterHr();
boolean hideStartEveryHr = this.reportParaEntity.getHideStartEveryHr();
Iterator<HisDataGridChart> it33 = this.beforeEcgHisDataGridChartList.iterator();
while (it33.hasNext()) {
it33.next().setVisibility(hideBeforeHr ? 8 : 0);
}
this.beforeEcgTitle.setVisibility(hideBeforeHr ? 8 : 0);
this.beforeEcgFl.setVisibility(hideBeforeHr ? 8 : 0);
Iterator<HisDataGridChart> it34 = this.afterEcgHisDataGridChartList.iterator();
while (it34.hasNext()) {
it34.next().setVisibility(hideAfterHr ? 8 : 0);
}
this.afterEcgTitle.setVisibility(hideAfterHr ? 8 : 0);
this.afterEcgFl.setVisibility(hideAfterHr ? 8 : 0);
Iterator<HisDataGridChart> it35 = this.start1EcgHisDataGridChartList.iterator();
while (it35.hasNext()) {
it35.next().setVisibility(hideStartEveryHr ? 8 : 0);
}
this.start1EcgTitle.setVisibility(hideStartEveryHr ? 8 : 0);
this.start1EcgFl.setVisibility(hideStartEveryHr ? 8 : 0);
Iterator<HisDataGridChart> it36 = this.start2EcgHisDataGridChartList.iterator();
while (it36.hasNext()) {
it36.next().setVisibility(hideStartEveryHr ? 8 : 0);
}
this.start2EcgTitle.setVisibility(hideStartEveryHr ? 8 : 0);
this.start2EcgFl.setVisibility(hideStartEveryHr ? 8 : 0);
Iterator<HisDataGridChart> it37 = this.start3EcgHisDataGridChartList.iterator();
while (it37.hasNext()) {
it37.next().setVisibility(hideStartEveryHr ? 8 : 0);
}
this.start3EcgTitle.setVisibility(hideStartEveryHr ? 8 : 0);
this.start3EcgFl.setVisibility(hideStartEveryHr ? 8 : 0);
Iterator<HisDataGridChart> it38 = this.start4EcgHisDataGridChartList.iterator();
while (it38.hasNext()) {
it38.next().setVisibility(hideStartEveryHr ? 8 : 0);
}
this.start4EcgTitle.setVisibility(hideStartEveryHr ? 8 : 0);
this.start4EcgFl.setVisibility(hideStartEveryHr ? 8 : 0);
Iterator<HisDataGridChart> it39 = this.start5EcgHisDataGridChartList.iterator();
while (it39.hasNext()) {
it39.next().setVisibility(hideStartEveryHr ? 8 : 0);
}
this.start5EcgTitle.setVisibility(hideStartEveryHr ? 8 : 0);
this.start5EcgFl.setVisibility(hideStartEveryHr ? 8 : 0);
Iterator<HisDataGridChart> it40 = this.start6EcgHisDataGridChartList.iterator();
while (it40.hasNext()) {
it40.next().setVisibility(hideStartEveryHr ? 8 : 0);
}
this.start6EcgTitle.setVisibility(hideStartEveryHr ? 8 : 0);
this.start6EcgFl.setVisibility(hideStartEveryHr ? 8 : 0);
}
if (this.reportParaEntity.getHideTrend()) {
this.hrTrendTitleLayout.setVisibility(8);
this.spo2TrendTitleLayout.setVisibility(8);
this.respTrendTitleLayout.setVisibility(8);
this.hrTrendChart.setVisibility(8);
this.spo2TrendChart.setVisibility(8);
this.respTrendChart.setVisibility(8);
} else {
this.hrTrendTitleLayout.setVisibility(0);
this.spo2TrendTitleLayout.setVisibility(0);
this.respTrendTitleLayout.setVisibility(0);
this.hrTrendChart.setVisibility(0);
this.spo2TrendChart.setVisibility(0);
this.respTrendChart.setVisibility(0);
}
boolean hideRrStatistic = this.reportParaEntity.getHideRrStatistic();
this.hrvStatisticTitle.setVisibility(hideRrStatistic ? 8 : 0);
this.hrvStatisticTableView.setVisibility(hideRrStatistic ? 8 : 0);
this.rrIntervalStatisticTitle.setVisibility(hideRrStatistic ? 8 : 0);
this.rrIntervalStatisticChart.setVisibility(hideRrStatistic ? 8 : 0);
this.rrDiffIntervalStatisticTitle.setVisibility(hideRrStatistic ? 8 : 0);
this.rrDiffIntervalStatisticChart.setVisibility(hideRrStatistic ? 8 : 0);
this.rrLorenzStatisticTitle.setVisibility(hideRrStatistic ? 8 : 0);
this.rrLorenzStatisticChart.setVisibility(hideRrStatistic ? 8 : 0);
}
public void startReportParasWindows() {
ReportParasPopupWindow reportParasPopupWindow = new ReportParasPopupWindow(this, this.totalDistance, this.reportParaEntity, new ReportParasPopupWindow.ReportParasConfirmClickListener() {
@Override
public void onConfirmClick(double d, int i, boolean z, boolean z2, boolean z3, boolean z4, boolean z5, boolean z6, boolean z7, boolean z8, boolean z9, boolean z10, boolean z11) {
int reportEcgGain = WalkTestReportActivity.this.reportParaEntity.getReportEcgGain();
WalkTestReportActivity.this.reportParaEntity.setReportEcgGain(i);
WalkTestReportActivity.this.reportParaEntity.setHideStepCount(z);
WalkTestReportActivity.this.reportParaEntity.setHideEveryStepCount(z2);
WalkTestReportActivity.this.reportParaEntity.setHideMet(z3);
WalkTestReportActivity.this.reportParaEntity.setHideExercisePrescription(z4);
WalkTestReportActivity.this.reportParaEntity.setHideBeforeHr(z5);
WalkTestReportActivity.this.reportParaEntity.setHideAfterHr(z6);
WalkTestReportActivity.this.reportParaEntity.setHideStartEveryHr(z7);
WalkTestReportActivity.this.reportParaEntity.setHideHr(z8);
WalkTestReportActivity.this.reportParaEntity.setHideTrend(z9);
WalkTestReportActivity.this.reportParaEntity.setHideRrStatistic(z10);
KLog.i("set report parameters: " + WalkTestReportActivity.this.reportParaEntity);
if (reportEcgGain != i) {
WalkTestReportActivity.this.initHisDataGridChartList();
WalkTestReportActivity walkTestReportActivity = WalkTestReportActivity.this;
walkTestReportActivity.createEcgDataTables(walkTestReportActivity.slowTime, WalkTestReportActivity.this.fastTime);
}
if (!String.format("%.2f", Double.valueOf(WalkTestReportActivity.this.totalDistance)).equals(String.format("%.2f", Double.valueOf(d)))) {
KLog.i("update totalDistance:" + String.format("%.2f", Double.valueOf(WalkTestReportActivity.this.totalDistance)) + " to " + String.format("%.2f", Double.valueOf(d)));
WalkTestReportActivity.this.updateTotalDistance(Double.parseDouble(String.format("%.2f", Double.valueOf(d))));
}
WalkTestReportActivity.this.refreshReportDataView();
WalkTestReportActivity.this.refreshReportVisible();
}
});
reportParasPopupWindow.setOutSideDismiss(false);
reportParasPopupWindow.setBackPressEnable(false);
reportParasPopupWindow.showPopupWindow();
}
public void getTrendData() {
Drawable drawable;
ArrayList<Entry> arrayList = new ArrayList<>();
int parseInt = Integer.parseInt(String.format("%.0f", this.panTompkinsForEcgResult.getHrMinute().get(0)));
int parseInt2 = Integer.parseInt(String.format("%.0f", this.panTompkinsForEcgResult.getHrMinute().get(0)));
int i = 0;
while (true) {
drawable = null;
if (i >= 8) {
break;
}
float parseFloat = Float.parseFloat(String.format("%.0f", this.panTompkinsForEcgResult.getHrMinute().get(i)));
if (i == 0 || i == 7) {
arrayList.add(new Entry(i + 1, parseFloat, getResources().getDrawable(R.drawable.star)));
} else {
arrayList.add(new Entry(i + 1, parseFloat, (Drawable) null));
}
if (parseInt <= parseFloat) {
parseInt = Integer.parseInt(String.format("%.0f", this.panTompkinsForEcgResult.getHrMinute().get(i)));
}
if (parseInt2 >= parseFloat) {
parseInt2 = Integer.parseInt(String.format("%.0f", this.panTompkinsForEcgResult.getHrMinute().get(i)));
}
i++;
}
float f = ((parseInt / 10) + 1) * 10;
this.hrTrendChart.getAxisLeft().setAxisMaximum(f);
float f2 = (parseInt2 / 10) * 10;
this.hrTrendChart.getAxisLeft().setAxisMinimum(f2);
this.hrTrendChart.getAxisRight().setAxisMaximum(f);
this.hrTrendChart.getAxisRight().setAxisMinimum(f2);
setLineChartData(this.hrTrendChart, arrayList);
ArrayList<Entry> arrayList2 = new ArrayList<>();
int intValue = this.spo2MeanList.get(0).intValue();
int intValue2 = this.spo2MeanList.get(0).intValue();
if (this.spo2MeanList.get(0).intValue() > 100) {
intValue = 100;
intValue2 = 100;
}
if (this.spo2MeanList.get(0).intValue() < 75) {
intValue = 75;
intValue2 = 75;
}
int i2 = 0;
while (i2 < 8) {
float parseFloat2 = Float.parseFloat(String.valueOf(this.spo2MeanList.get(i2)));
if (parseFloat2 > 100.0f) {
parseFloat2 = 100.0f;
}
if (parseFloat2 < 75.0f) {
parseFloat2 = 75.0f;
}
if (intValue <= parseFloat2) {
intValue = (int) parseFloat2;
}
if (intValue2 >= parseFloat2) {
intValue2 = (int) parseFloat2;
}
if (i2 == 0 || i2 == 7) {
arrayList2.add(new Entry(i2 + 1, parseFloat2, getResources().getDrawable(R.drawable.star)));
} else {
arrayList2.add(new Entry(i2 + 1, parseFloat2, drawable));
}
i2++;
drawable = null;
}
int i3 = ((intValue / 10) + 1) * 10;
float f3 = i3 <= 100 ? i3 : 100;
this.spo2TrendChart.getAxisLeft().setAxisMaximum(f3);
float f4 = (intValue2 / 10) * 10;
this.spo2TrendChart.getAxisLeft().setAxisMinimum(f4);
this.spo2TrendChart.getAxisRight().setAxisMaximum(f3);
this.spo2TrendChart.getAxisRight().setAxisMinimum(f4);
setLineChartData(this.spo2TrendChart, arrayList2);
ArrayList<Entry> arrayList3 = new ArrayList<>();
int parseInt3 = Integer.parseInt(String.format("%.0f", this.respPeakCalResult.getHrMinute().get(0)));
int parseInt4 = Integer.parseInt(String.format("%.0f", this.respPeakCalResult.getHrMinute().get(0)));
for (int i4 = 0; i4 < 8; i4++) {
float parseFloat3 = Float.parseFloat(String.format("%.0f", this.respPeakCalResult.getHrMinute().get(i4)));
if (parseInt3 <= parseFloat3) {
parseInt3 = Integer.parseInt(String.format("%.0f", this.respPeakCalResult.getHrMinute().get(i4)));
}
if (parseInt4 >= parseFloat3) {
parseInt4 = Integer.parseInt(String.format("%.0f", this.respPeakCalResult.getHrMinute().get(i4)));
}
if (i4 == 0 || i4 == 7) {
arrayList3.add(new Entry(i4 + 1, parseFloat3, getResources().getDrawable(R.drawable.star)));
} else {
arrayList3.add(new Entry(i4 + 1, parseFloat3, (Drawable) null));
}
}
float f5 = ((parseInt3 / 10) + 1) * 10;
this.respTrendChart.getAxisLeft().setAxisMaximum(f5);
float f6 = (parseInt4 / 10) * 10;
this.respTrendChart.getAxisLeft().setAxisMinimum(f6);
this.respTrendChart.getAxisRight().setAxisMaximum(f5);
this.respTrendChart.getAxisRight().setAxisMinimum(f6);
setLineChartData(this.respTrendChart, arrayList3);
}
public void setLineChartData(final LineChart lineChart, ArrayList<Entry> arrayList) {
lineChart.setBackgroundColor(-1);
lineChart.getDescription().setEnabled(false);
lineChart.getXAxis().setPosition(XAxis.XAxisPosition.BOTTOM);
lineChart.setTouchEnabled(false);
lineChart.setDrawGridBackground(false);
if (lineChart.getData() != null && lineChart.getData().getDataSetCount() > 0) {
LineDataSet dataSetByIndex = lineChart.getData().getDataSetByIndex(0);
dataSetByIndex.setValues(arrayList);
dataSetByIndex.notifyDataSetChanged();
lineChart.getData().notifyDataChanged();
lineChart.notifyDataSetChanged();
return;
}
LineDataSet lineDataSet = new LineDataSet(arrayList, getString(R.string.ave_min));
lineDataSet.setDrawIcons(true);
lineDataSet.enableDashedLine(10.0f, 5.0f, 0.0f);
lineDataSet.setColor(-16777216);
lineDataSet.setCircleColor(-16777216);
lineDataSet.setLineWidth(2.0f);
lineDataSet.setCircleRadius(5.0f);
lineDataSet.setDrawCircleHole(false);
lineDataSet.setFormLineWidth(1.0f);
lineDataSet.setFormLineDashEffect(new DashPathEffect(new float[]{10.0f, 5.0f}, 0.0f));
lineDataSet.setFormSize(15.0f);
lineDataSet.setValueTextSize(9.0f);
lineDataSet.setValueFormatter(new DefaultValueFormatter(0));
lineDataSet.enableDashedHighlightLine(10.0f, 5.0f, 0.0f);
lineDataSet.setDrawFilled(true);
lineDataSet.setFillFormatter(new IFillFormatter() {
public float getFillLinePosition(ILineDataSet iLineDataSet, LineDataProvider lineDataProvider) {
return lineChart.getAxisLeft().getAxisMinimum();
}
});
ArrayList arrayList2 = new ArrayList();
arrayList2.add(lineDataSet);
lineChart.setData(new LineData(arrayList2));
}
public void clearEcgIList() {
this.ecgIList.clear();
this.ecgIIList.clear();
}
public void clearList() {
this.originalPoint = 0L;
this.dataTime = 0L;
this.ecgIList.clear();
this.ecgIIList.clear();
this.ecgIIIList.clear();
this.ecgVList.clear();
this.ecgAVLList.clear();
this.ecgAVFList.clear();
this.ecgAVRList.clear();
}
public String setDHS(String str) {
return DateUtils.longToTimeMillisStr(Long.parseLong(str)).split(" +")[1];
}
public int getNowPoint() {
FileInputStream fileInputStream;
File file = new File(CURRENT_POINT_FILE);
int length = (int) file.length();
if (length == 0) {
return 0;
}
byte[] bArr = new byte[length];
?? r3 = 0;
FileInputStream fileInputStream2 = null;
try {
try {
try {
fileInputStream = new FileInputStream(file);
} catch (Throwable th) {
th = th;
}
} catch (Exception e) {
e = e;
}
} catch (IOException e2) {
e2.printStackTrace();
}
try {
fileInputStream.read(bArr);
fileInputStream.close();
} catch (Exception e3) {
e = e3;
fileInputStream2 = fileInputStream;
e.printStackTrace();
fileInputStream2.close();
r3 = 65536;
return (bArr[0] & 255) + ((bArr[1] & 255) * 256) + ((bArr[2] & 255) * 65536) + ((bArr[3] & 255) * 16777216);
} catch (Throwable th2) {
th = th2;
r3 = fileInputStream;
try {
r3.close();
} catch (IOException e4) {
e4.printStackTrace();
}
throw th;
}
r3 = 65536;
return (bArr[0] & 255) + ((bArr[1] & 255) * 256) + ((bArr[2] & 255) * 65536) + ((bArr[3] & 255) * 16777216);
}
public long findTime(int i) {
this.fileData = new byte[8];
this.mChannel = null;
this.out = null;
long j = 0;
try {
try {
try {
FileChannel channel = new RandomAccessFile(this.mFile, "rw").getChannel();
this.mChannel = channel;
MappedByteBuffer map = channel.map(FileChannel.MapMode.READ_ONLY, i, 8L);
this.out = map;
map.get(this.fileData, 0, 8);
for (int i2 = 0; i2 < 8; i2++) {
j += (this.fileData[i2] & 255) << (i2 * 8);
}
FileChannel fileChannel = this.mChannel;
if (fileChannel != null) {
fileChannel.close();
}
} catch (Exception e) {
e.printStackTrace();
FileChannel fileChannel2 = this.mChannel;
if (fileChannel2 != null) {
fileChannel2.close();
}
}
} catch (Throwable th) {
try {
FileChannel fileChannel3 = this.mChannel;
if (fileChannel3 != null) {
fileChannel3.close();
}
} catch (Exception e2) {
e2.printStackTrace();
}
throw th;
}
} catch (Exception e3) {
e3.printStackTrace();
}
return j;
}
public void drawWaveLine(List<?> list, long j, long j2, int i, long j3) {
System.out.println("进入 drawLine");
Vector vector = new Vector();
Vector vector2 = new Vector();
for (int i2 = 0; i2 < 2; i2++) {
vector2.add("");
}
vector.add("");
for (int i3 = 1; i3 < 17; i3++) {
vector.add(setDHS((j3 + (i3 * 1000)) + ""));
}
this.hisDataGridChart.setAxisYTitles(vector2);
this.hisDataGridChart.setAxisXTitles(vector);
this.hisDataGridChart.setAxisYColor(getResources().getColor(R.color.black));
this.hisDataGridChart.setAxisXColor(getResources().getColor(R.color.black));
this.hisDataGridChart.setLatitudeFontColor(getResources().getColor(R.color.table_red));
this.hisDataGridChart.setLongtitudeFontColor(getResources().getColor(R.color.table_red));
int i4 = this.speedType;
if (i4 == 1) {
this.hisDataGridChart.SetDataType(10, 4000.0f, 10.0f);
} else if (i4 == 2) {
this.hisDataGridChart.SetDataType(10, 2000.0f, 10.0f);
} else if (i4 == 3) {
this.hisDataGridChart.SetDataType(10, 1000.0f, 10.0f);
}
this.hisDataGridChart.drawWaveDataLine(list, j, j2, i, list == this.ecgAVRList ? 1.1f : 0.8f);
this.hisDataGridChart.postInvalidate();
}
public void getECGIList(int i, int i2) {
int i3;
int i4 = i;
while (true) {
i3 = i + i2;
if (i4 >= i3) {
break;
}
if (i4 < TestWaveDataLists.getInstance().getECGIWaveDataFilterList().size()) {
this.ecgIList.add(TestWaveDataLists.getInstance().getECGIWaveDataFilterList().get(i4));
}
i4++;
}
while (i < i3) {
if (i < TestWaveDataLists.getInstance().getECGIIWaveDataFilterList().size()) {
this.ecgIIList.add(TestWaveDataLists.getInstance().getECGIIWaveDataFilterList().get(i));
}
i++;
}
}
public void getECGIIIList(int i, int i2) {
for (int i3 = i; i3 < i + i2; i3++) {
if (i3 < TestWaveDataLists.getInstance().getECGIIIWaveDataFilterList().size()) {
this.ecgIIIList.add(TestWaveDataLists.getInstance().getECGIIIWaveDataFilterList().get(i3));
}
}
}
public void getECGaVLList(int i, int i2) {
for (int i3 = i; i3 < i + i2; i3++) {
if (i3 < TestWaveDataLists.getInstance().getECGaVLWaveDataFilterList().size()) {
this.ecgAVLList.add(TestWaveDataLists.getInstance().getECGaVLWaveDataFilterList().get(i3));
}
}
}
public void getECGaVFList(int i, int i2) {
for (int i3 = i; i3 < i + i2; i3++) {
if (i3 < TestWaveDataLists.getInstance().getECGaVFWaveDataFilterList().size()) {
this.ecgAVFList.add(TestWaveDataLists.getInstance().getECGaVFWaveDataFilterList().get(i3));
}
}
}
public void getECGaVRList(int i, int i2) {
for (int i3 = i; i3 < i + i2; i3++) {
if (i3 < TestWaveDataLists.getInstance().getECGaVRWaveDataFilterList().size()) {
this.ecgAVRList.add(TestWaveDataLists.getInstance().getECGaVRWaveDataFilterList().get(i3));
}
}
}
public void getECGVList(int i, int i2) {
for (int i3 = i; i3 < i + i2; i3++) {
if (i3 < TestWaveDataLists.getInstance().getECGVWaveDataFilterList().size()) {
this.ecgVList.add(TestWaveDataLists.getInstance().getECGVWaveDataFilterList().get(i3));
}
}
}
public void getLine(byte r10, long r11) {
throw new UnsupportedOperationException("Method not decompiled: cn.neoprint.padmonitor.ui.WalkTestReportActivity.getLine(byte, long):void");
}
public void saveWaveData() {
this.handler.post(new Runnable() {
@Override
public void run() {
if (WalkTestReportActivity.this.testData != null) {
KLog.d("save 8min wave data size=" + WalkTestReportActivity.this.testData.length);
String str = ConstDefine.SD_PATH + "/WalkTest/HistoryData/" + (Constants.ReportFile.HISTORY_DATA_PREFIX + WalkTestReportActivity.this.patient.getIdCard() + "_" + WalkTestReportActivity.this.currentTime + Constants.ReportFile.HISTORY_DATA_SUFFIX);
File file = new File(ConstDefine.SD_PATH + "/WalkTest/HistoryData/");
if (!file.exists()) {
file.mkdirs();
}
File file2 = new File(str);
if (file2.exists()) {
file2.delete();
}
try {
file2.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
FileUtils.createFile(str, WalkTestReportActivity.this.testData);
}
}
});
}
public byte[] get8MinFileData(int i, int i2) {
byte[] bArr = new byte[i2];
FileChannel fileChannel = null;
try {
try {
try {
fileChannel = new RandomAccessFile(this.mFile, "rw").getChannel();
fileChannel.map(FileChannel.MapMode.READ_ONLY, i, i2).get(bArr, 0, i2);
if (fileChannel != null) {
fileChannel.close();
}
} catch (Throwable th) {
if (fileChannel != null) {
try {
fileChannel.close();
} catch (IOException e) {
e.printStackTrace();
}
}
throw th;
}
} catch (Exception e2) {
e2.printStackTrace();
if (fileChannel != null) {
fileChannel.close();
}
}
} catch (IOException e3) {
e3.printStackTrace();
}
return bArr;
}
public byte[] getWaveData(int i) {
int length;
this.dataTime = 0L;
if (this.reportEntity == null) {
length = getNowPoint();
this.mFile = new File(CURRENT_DATA_FILE);
} else {
File file = new File(ConstDefine.SD_PATH + "/WalkTest/HistoryData/" + Constants.ReportFile.HISTORY_DATA_PREFIX + this.patient.getIdCard() + "_" + this.currentTime + Constants.ReportFile.HISTORY_DATA_SUFFIX);
this.mFile = file;
length = (int) file.length();
}
int length2 = (int) this.mFile.length();
this.length = length2;
if (length2 < 530841600 || (length2 == 530841600 && length2 == length)) {
int i2 = (length2 / 8192) - 1;
this.fileData = new byte[8];
while (i2 >= 0 && findTime(i2 * 8192) - this.startTime >= 4000) {
i2--;
}
return get8MinFileData(i2 * 8192, i);
}
if (length2 != 530841600 || length2 <= length) {
return null;
}
int i3 = length / 8192;
int i4 = i3 - 1;
while (i4 >= 0 && findTime(i4 * 8192) - this.startTime >= 4000) {
i4--;
}
if (i4 >= 0) {
return get8MinFileData(i4 * 8192, i);
}
int i5 = 64799;
while (i5 >= i3 && findTime(i5 * 8192) - this.startTime >= 4000) {
i5--;
}
if (i5 >= i3) {
int i6 = i5 * 8192;
int i7 = 530841600 - i6;
byte[] bArr = get8MinFileData(i6, i7);
byte[] bArr2 = get8MinFileData(0, i - i7);
byte[] bArr3 = new byte[bArr.length + bArr2.length];
System.arraycopy(bArr, 0, bArr3, 0, bArr.length);
System.arraycopy(bArr2, 0, bArr3, bArr.length, bArr2.length);
return bArr3;
}
System.out.println(AppGlobal.getInstance().getResources().getString(R.string.toast_noData));
return null;
}
public void parseWalkTestWaveDataList(byte[] bArr) {
ArrayList arrayList = new ArrayList();
ArrayList arrayList2 = new ArrayList();
ArrayList arrayList3 = new ArrayList();
ArrayList arrayList4 = new ArrayList();
ArrayList arrayList5 = new ArrayList();
ArrayList arrayList6 = new ArrayList();
int i = 0;
while (i < bArr.length / 8192) {
int i2 = i * 8192;
int i3 = i2 + 7;
int i4 = 0;
while (i4 < 500) {
int i5 = (i4 * 16) + i3;
short merge = (short) merge(bArr[i5 + 2], bArr[i5 + 1]);
short merge2 = (short) merge(bArr[i5 + 9], bArr[i5 + 8]);
arrayList4.add(Integer.valueOf(merge));
arrayList4.add(Integer.valueOf(merge2));
short merge3 = (short) merge(bArr[i5 + 4], bArr[i5 + 3]);
short merge4 = (short) merge(bArr[i5 + 11], bArr[i5 + 10]);
arrayList5.add(Integer.valueOf(merge3));
arrayList5.add(Integer.valueOf(merge4));
int i6 = i3;
short merge5 = (short) merge(bArr[i5 + 6], bArr[i5 + 5]);
ArrayList arrayList7 = arrayList5;
short merge6 = (short) merge(bArr[i5 + 13], bArr[i5 + 12]);
arrayList6.add(Integer.valueOf(merge5));
arrayList6.add(Integer.valueOf(merge6));
arrayList.add(Integer.valueOf((merge3 * (-1)) + 2048));
arrayList.add(Integer.valueOf((merge4 * (-1)) + 2048));
int i7 = i5 + 16;
this.testRespWaveDataList.add(Integer.valueOf(bArr[i7] & 255));
arrayList2.add(Integer.valueOf(bArr[i5 + 15] & 255));
arrayList3.add(Integer.valueOf(bArr[i7] & 255));
i4++;
i3 = i6;
arrayList5 = arrayList7;
}
this.testSpo2WaveDataList.add(Integer.valueOf(merge(bArr[i2 + 8023], bArr[i2 + 8022])));
i++;
arrayList5 = arrayList5;
}
TestWaveDataLists.getInstance().initECGWaveDataList(arrayList4, arrayList5, arrayList6, arrayList2, arrayList3);
LogFile.printLog(arrayList.toString());
LogFile.saveLog(arrayList);
}
private void initRrCharts() {
this.rrIntervalStatisticChart.setDrawBarShadow(false);
this.rrIntervalStatisticChart.setDrawValueAboveBar(true);
this.rrIntervalStatisticChart.getDescription().setEnabled(false);
this.rrIntervalStatisticChart.setMaxVisibleValueCount(60);
this.rrIntervalStatisticChart.setPinchZoom(false);
this.rrIntervalStatisticChart.setDrawGridBackground(false);
this.rrIntervalStatisticChart.setTouchEnabled(false);
rrChartValueFormatter rrchartvalueformatter = new rrChartValueFormatter();
XAxis xAxis = this.rrIntervalStatisticChart.getXAxis();
xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
xAxis.setDrawGridLines(false);
xAxis.setGranularity(1.0f);
xAxis.setLabelCount(40);
xAxis.setValueFormatter(rrchartvalueformatter);
YAxis axisLeft = this.rrIntervalStatisticChart.getAxisLeft();
axisLeft.setLabelCount(20, false);
axisLeft.setPosition(YAxis.YAxisLabelPosition.OUTSIDE_CHART);
axisLeft.setSpaceTop(15.0f);
axisLeft.setAxisMinimum(0.0f);
YAxis axisRight = this.rrIntervalStatisticChart.getAxisRight();
axisRight.setDrawGridLines(false);
axisRight.setLabelCount(8, false);
axisRight.setSpaceTop(15.0f);
axisRight.setAxisMinimum(0.0f);
Legend legend = this.rrIntervalStatisticChart.getLegend();
legend.setVerticalAlignment(Legend.LegendVerticalAlignment.BOTTOM);
legend.setHorizontalAlignment(Legend.LegendHorizontalAlignment.LEFT);
legend.setOrientation(Legend.LegendOrientation.HORIZONTAL);
legend.setDrawInside(false);
legend.setForm(Legend.LegendForm.SQUARE);
legend.setFormSize(9.0f);
legend.setTextSize(11.0f);
legend.setXEntrySpace(4.0f);
this.rrDiffIntervalStatisticChart.setDrawBarShadow(false);
this.rrDiffIntervalStatisticChart.setDrawValueAboveBar(true);
this.rrDiffIntervalStatisticChart.getDescription().setEnabled(false);
this.rrDiffIntervalStatisticChart.setMaxVisibleValueCount(60);
this.rrDiffIntervalStatisticChart.setPinchZoom(false);
this.rrDiffIntervalStatisticChart.setDrawGridBackground(false);
this.rrDiffIntervalStatisticChart.setTouchEnabled(false);
XAxis xAxis2 = this.rrDiffIntervalStatisticChart.getXAxis();
xAxis2.setPosition(XAxis.XAxisPosition.BOTTOM);
xAxis2.setDrawGridLines(false);
xAxis2.setGranularity(1.0f);
xAxis2.setLabelCount(20);
xAxis2.setValueFormatter(rrchartvalueformatter);
YAxis axisLeft2 = this.rrDiffIntervalStatisticChart.getAxisLeft();
axisLeft2.setLabelCount(10, false);
axisLeft2.setPosition(YAxis.YAxisLabelPosition.OUTSIDE_CHART);
axisLeft2.setSpaceTop(15.0f);
axisLeft2.setAxisMinimum(0.0f);
YAxis axisRight2 = this.rrDiffIntervalStatisticChart.getAxisRight();
axisRight2.setDrawGridLines(false);
axisRight2.setLabelCount(8, false);
axisRight2.setSpaceTop(15.0f);
axisRight2.setAxisMinimum(0.0f);
Legend legend2 = this.rrDiffIntervalStatisticChart.getLegend();
legend2.setVerticalAlignment(Legend.LegendVerticalAlignment.BOTTOM);
legend2.setHorizontalAlignment(Legend.LegendHorizontalAlignment.LEFT);
legend2.setOrientation(Legend.LegendOrientation.HORIZONTAL);
legend2.setDrawInside(false);
legend2.setForm(Legend.LegendForm.SQUARE);
legend2.setFormSize(9.0f);
legend2.setTextSize(11.0f);
legend2.setXEntrySpace(4.0f);
this.rrLorenzStatisticChart.getDescription().setEnabled(false);
this.rrLorenzStatisticChart.setDrawGridBackground(false);
this.rrLorenzStatisticChart.setTouchEnabled(false);
this.rrLorenzStatisticChart.setClipValuesToContent(false);
this.rrLorenzStatisticChart.setDragEnabled(false);
this.rrLorenzStatisticChart.setScaleEnabled(false);
this.rrLorenzStatisticChart.setMaxVisibleValueCount(20000);
this.rrLorenzStatisticChart.setPinchZoom(false);
Legend legend3 = this.rrLorenzStatisticChart.getLegend();
legend3.setVerticalAlignment(Legend.LegendVerticalAlignment.TOP);
legend3.setHorizontalAlignment(Legend.LegendHorizontalAlignment.RIGHT);
legend3.setOrientation(Legend.LegendOrientation.VERTICAL);
legend3.setDrawInside(false);
legend3.setXOffset(5.0f);
YAxis axisLeft3 = this.rrLorenzStatisticChart.getAxisLeft();
axisLeft3.setDrawGridLines(false);
axisLeft3.setAxisMinimum(0.0f);
this.rrLorenzStatisticChart.getAxisRight().setEnabled(false);
XAxis xAxis3 = this.rrLorenzStatisticChart.getXAxis();
xAxis3.setPosition(XAxis.XAxisPosition.BOTTOM);
xAxis3.setDrawGridLines(false);
xAxis3.setAxisMinimum(0.0f);
}
private void setData(BarChart barChart, int i, float f, int i2) {
ArrayList arrayList = new ArrayList();
for (int i3 = 0; i3 < i; i3++) {
arrayList.add(0);
}
if (i2 == 1) {
Iterator<Double> it = this.panTompkinsForEcgResult.getRrList().iterator();
while (it.hasNext()) {
double doubleValue = it.next().doubleValue() * 1000.0d;
System.out.println("rr==" + doubleValue);
if (doubleValue >= 0.0d && doubleValue < i * 50) {
int i4 = ((int) doubleValue) / 50;
arrayList.set(i4, Integer.valueOf(((Integer) arrayList.get(i4)).intValue() + 1));
}
}
} else if (i2 == 2) {
Iterator<Double> it2 = this.panTompkinsForEcgResult.getRrDelList().iterator();
while (it2.hasNext()) {
double abs = Math.abs(it2.next().doubleValue()) * 1000.0d;
System.out.println("del rr==" + abs);
if (abs >= 0.0d && abs < i * 50) {
int i5 = ((int) abs) / 50;
arrayList.set(i5, Integer.valueOf(((Integer) arrayList.get(i5)).intValue() + 1));
}
}
}
ArrayList arrayList2 = new ArrayList();
int i6 = (int) 1.0f;
while (true) {
float f2 = i6;
if (f2 >= i + 1.0f) {
break;
}
arrayList2.add(new BarEntry(f2, ((Integer) arrayList.get(i6 - 1)).intValue()));
i6++;
}
if (barChart.getData() != null && barChart.getData().getDataSetCount() > 0) {
barChart.getData().getDataSetByIndex(0).setValues(arrayList2);
barChart.getData().notifyDataChanged();
barChart.notifyDataSetChanged();
return;
}
BarDataSet barDataSet = new BarDataSet(arrayList2, getString(R.string.interval_count));
barDataSet.setDrawIcons(false);
ArrayList arrayList3 = new ArrayList();
arrayList3.add(barDataSet);
BarData barData = new BarData(arrayList3);
barData.setValueTextSize(10.0f);
barData.setBarWidth(0.9f);
barChart.setData(barData);
barChart.invalidate();
}
private void setRrLorenzData(ScatterChart scatterChart, int i, int i2) {
ArrayList arrayList = new ArrayList();
ArrayList arrayList2 = new ArrayList();
ArrayList arrayList3 = new ArrayList();
List<Double> rrList = this.panTompkinsForEcgResult.getRrList();
for (int i3 = 0; i3 < rrList.size() - 1; i3++) {
if (rrList.get(i3).doubleValue() * 1000.0d >= 0.0d && rrList.get(i3).doubleValue() * 1000.0d <= 2000.0d) {
int i4 = i3 + 1;
if (rrList.get(i4).doubleValue() * 1000.0d >= 0.0d && rrList.get(i4).doubleValue() * 1000.0d <= 2000.0d) {
float parseFloat = Float.parseFloat(String.valueOf(rrList.get(i3).doubleValue() * 1000.0d));
float parseFloat2 = Float.parseFloat(String.valueOf(rrList.get(i4).doubleValue() * 1000.0d));
if (parseFloat < parseFloat2) {
arrayList.add(new Entry(parseFloat, parseFloat2));
} else if (parseFloat == parseFloat2) {
arrayList2.add(new Entry(parseFloat, parseFloat2));
} else if (parseFloat > parseFloat2) {
arrayList3.add(new Entry(parseFloat, parseFloat2));
}
}
}
}
Collections.sort(arrayList, new EntryXComparator());
Collections.sort(arrayList2, new EntryXComparator());
Collections.sort(arrayList3, new EntryXComparator());
ScatterDataSet scatterDataSet = new ScatterDataSet(arrayList, "x < y");
scatterDataSet.setScatterShape(ScatterChart.ScatterShape.SQUARE);
scatterDataSet.setColor(ColorTemplate.COLORFUL_COLORS[0]);
scatterDataSet.setDrawValues(false);
ScatterDataSet scatterDataSet2 = new ScatterDataSet(arrayList2, "x = y");
scatterDataSet2.setScatterShape(ScatterChart.ScatterShape.CIRCLE);
scatterDataSet2.setScatterShapeHoleColor(ColorTemplate.COLORFUL_COLORS[3]);
scatterDataSet2.setScatterShapeHoleRadius(3.0f);
scatterDataSet2.setColor(ColorTemplate.COLORFUL_COLORS[3]);
scatterDataSet2.setDrawValues(false);
ScatterDataSet scatterDataSet3 = new ScatterDataSet(arrayList3, "x > y");
scatterDataSet3.setScatterShape(ScatterChart.ScatterShape.TRIANGLE);
scatterDataSet3.setScatterShapeHoleColor(ColorTemplate.COLORFUL_COLORS[2]);
scatterDataSet3.setScatterShapeHoleRadius(3.0f);
scatterDataSet3.setColor(ColorTemplate.COLORFUL_COLORS[2]);
scatterDataSet3.setDrawValues(false);
scatterDataSet.setScatterShapeSize(8.0f);
scatterDataSet2.setScatterShapeSize(8.0f);
scatterDataSet3.setScatterShapeSize(8.0f);
ArrayList arrayList4 = new ArrayList();
arrayList4.add(scatterDataSet);
arrayList4.add(scatterDataSet2);
arrayList4.add(scatterDataSet3);
scatterChart.setData(new ScatterData(arrayList4));
scatterChart.invalidate();
}
protected void saveChartsToGallery(Chart chart, String str) {
if (chart.saveToGallery(str + "_" + this.currentTime, 100)) {
System.out.println("Save charts SUCCESSFUL!");
} else {
System.out.println("Save charts FAILED!");
}
}
protected void handWrittenSignature() {
this.saveBtn.setEnabled(false);
this.signaturePad.setEnabled(false);
this.digitalSignatureBtn.setVisibility(4);
}
protected void digitalSignature() {
this.digitalSignatureBtn.setEnabled(false);
this.saveBtn.setVisibility(4);
this.clearBtn.setEnabled(true);
this.signaturePad.clear();
this.signaturePad.setEnabled(false);
this.signaturePad.setVisibility(8);
this.digitalSignatureTv.setVisibility(0);
}
protected void clearSignature() {
this.saveBtn.setVisibility(0);
this.saveBtn.setEnabled(false);
this.clearBtn.setEnabled(false);
this.digitalSignatureBtn.setEnabled(true);
this.signaturePad.setVisibility(0);
this.digitalSignatureTv.setVisibility(8);
this.signaturePad.setEnabled(true);
this.signaturePad.clear();
this.digitalSignatureBtn.setVisibility(0);
}
protected void outputCsv() {
new CSVOpThread(this).start();
}
public static class rrChartValueFormatter extends ValueFormatter {
public String getFormattedValue(float f) {
return String.valueOf(((int) f) * 50);
}
}
public class AnalysisThread extends Thread {
private List<Integer> signInput;
private int signalGain;
public AnalysisThread() {
}
public void setSign(List<Integer> list, int i) {
this.signInput = list;
this.signalGain = i;
}
@Override
public void run() {
super.run();
WalkTestReportActivity walkTestReportActivity = WalkTestReportActivity.this;
List<Integer> list = this.signInput;
if (list == null) {
list = TestWaveDataLists.getInstance().getECGIIWaveDataList();
}
walkTestReportActivity.panTompkinsForEcgResult = PanTompkinsForEcg.cal(409.6d, 250, list, 1, this.signalGain);
LogFile.saveLog(WalkTestReportActivity.this.panTompkinsForEcgResult.getInfo());
WalkTestReportActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
WalkTestReportActivity.this.createEcgDataTables();
}
});
}
}
}