2024-01-05 11:11:15 +08:00
|
|
|
import abilityAccessCtrl, { Permissions } from '@ohos.abilityAccessCtrl'
|
|
|
|
|
import promptAction from '@ohos.promptAction'
|
|
|
|
|
import fileAccess from '@ohos.file.fileAccess'
|
|
|
|
|
import common from '@ohos.app.ability.common'
|
|
|
|
|
import Want from '@ohos.app.ability.Want'
|
|
|
|
|
import fs from '@ohos.file.fs'
|
|
|
|
|
import FileUtil from '../../../common/utils/File'
|
|
|
|
|
import {getCurrentTime} from '../../../common/utils/tools'
|
|
|
|
|
|
|
|
|
|
interface StuInfo{
|
|
|
|
|
name:string
|
|
|
|
|
lsh:string
|
|
|
|
|
idCard:string
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const LOGTAG = 'LOGTAG'
|
|
|
|
|
export default class FileLog {
|
|
|
|
|
|
|
|
|
|
//后续文件路径待替换
|
|
|
|
|
private fileUtil: FileUtil
|
|
|
|
|
private stuInfo: StuInfo
|
|
|
|
|
public folderPath: string
|
|
|
|
|
|
|
|
|
|
constructor(context) {
|
|
|
|
|
const fileUtil = new FileUtil(context)
|
|
|
|
|
this.fileUtil = fileUtil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 设置文件夹
|
|
|
|
|
public initFileLogo = async (stuInfo:StuInfo) => {
|
|
|
|
|
const {fileUtil,setExamLineData} = this
|
|
|
|
|
const {name,lsh,idCard} = stuInfo;
|
|
|
|
|
this.stuInfo = stuInfo;
|
|
|
|
|
const time = await getCurrentTime()
|
|
|
|
|
const date = time.split(' ')[0].split('-').join('_')
|
|
|
|
|
const hourTime = time.split(' ')[1].split(':').join('_')
|
2024-08-05 09:47:44 +08:00
|
|
|
const folderPath = await fileUtil.initFolder(`/logs/${date}/${date}_${hourTime}_${lsh}_${idCard}_${name}`);
|
2024-01-05 11:11:15 +08:00
|
|
|
this.folderPath = folderPath;
|
2024-08-15 09:01:09 +08:00
|
|
|
return folderPath
|
2024-01-05 11:11:15 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 过程文件数据
|
2024-05-15 16:22:48 +08:00
|
|
|
public setExamProgressData = async (str:Object) => {
|
2024-01-05 11:11:15 +08:00
|
|
|
const {fileUtil,folderPath} = this;
|
|
|
|
|
await fileUtil.editFile(`${folderPath}/exam_progress_data.txt`,JSON.stringify(str));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 无锡所接口数据
|
2024-02-21 14:53:53 +08:00
|
|
|
public setExamJudgeWuxiData = async (str) => {
|
2024-01-05 11:11:15 +08:00
|
|
|
const {fileUtil,folderPath} = this;
|
2024-02-21 14:53:53 +08:00
|
|
|
await fileUtil.editFile(`${folderPath}/wuxi_exam_data.txt`,str);
|
2024-01-05 11:11:15 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 无锡所过程数据
|
|
|
|
|
public setExamJudgeWuxiProgressData = async (str)=>{
|
|
|
|
|
const {fileUtil,folderPath} = this;
|
|
|
|
|
await fileUtil.editFile(`${folderPath}/wuxi_progress_data.txt`,str);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// plc文件数据
|
2024-05-15 16:22:48 +08:00
|
|
|
public setPlcProgressData = async (str:Object) => {
|
2024-01-05 11:11:15 +08:00
|
|
|
const {fileUtil,folderPath} = this;
|
|
|
|
|
await fileUtil.editFile(`${folderPath}/plc_data.txt`,JSON.stringify(str));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 过程评判json数据
|
2024-05-15 16:22:48 +08:00
|
|
|
public setExamJudgeData = async (str:Object) => {
|
2024-01-05 11:11:15 +08:00
|
|
|
const {fileUtil,folderPath} = this;
|
|
|
|
|
await fileUtil.editFile(`${folderPath}/judge_exam_data.txt`,JSON.stringify(str));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 过程评判回调数据
|
|
|
|
|
public setExamJudgeCallbackData = async (str:string) => {
|
|
|
|
|
const {fileUtil,folderPath} = this;
|
|
|
|
|
await fileUtil.editFile(`${folderPath}/judge_progress_callback_data.txt`,str);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 过程评判日志调数据
|
|
|
|
|
public setExamJudgeLogData = async (str:string) => {
|
|
|
|
|
const {fileUtil,folderPath} = this;
|
|
|
|
|
await fileUtil.editFile(`${folderPath}/judge_log_data.txt`,str);
|
2024-11-20 13:44:40 +08:00
|
|
|
|
|
|
|
|
// 设置四合一画面数据
|
|
|
|
|
public setFourAndOneLogData = async (str:string) => {
|
|
|
|
|
const {fileUtil,folderPath} = this;
|
|
|
|
|
await fileUtil.editFile(`${folderPath}/four_one_log_data.txt`,str);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public setFourAndOneLogDataBytes = async (str:string) => {
|
|
|
|
|
const {fileUtil,folderPath} = this;
|
|
|
|
|
await fileUtil.editFile(`${folderPath}/four_one_log_byte_data.txt`,str);
|
2024-01-05 11:11:15 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 无锡所轨迹数据
|
|
|
|
|
public setExamLineData = async (plcStr) => {
|
|
|
|
|
const {fileUtil,folderPath} = this;
|
|
|
|
|
const plcData = plcStr.split(',');
|
|
|
|
|
const time = await getCurrentTime();
|
|
|
|
|
|
|
|
|
|
const lineData = [
|
|
|
|
|
/*帧头*/ time,
|
|
|
|
|
/*卫星时间*/time,
|
|
|
|
|
/*经度*/ plcData[95],
|
|
|
|
|
/*纬度*/ plcData[95],
|
|
|
|
|
/*高度*/ plcData[86],
|
|
|
|
|
/*方位角*/ 0,
|
|
|
|
|
/*俯仰角*/ plcData[91],
|
|
|
|
|
/*速度角*/'',
|
|
|
|
|
/*速度*/ plcData[97],
|
|
|
|
|
/*横滚*/'',
|
|
|
|
|
/*卫星定位状态*/'',
|
|
|
|
|
/*卫星定向状态*/'',
|
|
|
|
|
/*前天线可用星数*/'',
|
|
|
|
|
/*后天线可用星数*/'',
|
|
|
|
|
/*东向位置坐标*/'',
|
|
|
|
|
/*北向位置坐标*/'',
|
|
|
|
|
/*天向位置坐标*/'',
|
|
|
|
|
/*东向速度*/'',
|
|
|
|
|
/*北向速度*/'',
|
|
|
|
|
/*评判信号1*/[plcData[14],plcData[19],plcData[5],'',plcData[2],plcData[3],plcData[7],plcData[8],plcData[13],plcData[12],plcData[17],'',plcData[4],plcData[11],plcData[20],plcData[9],0].join(','),
|
|
|
|
|
/*评判信号2*/['',plcData[28],'','',plcData[10],'','','','','','','','','','','','',''].join(','),
|
|
|
|
|
/*发动机转速*/ plcData[25],
|
|
|
|
|
/*结束符*/ time,
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
await fileUtil.editFile(`${folderPath}/exam_wuxi_data.txt`,JSON.stringify(lineData));
|
|
|
|
|
};
|
|
|
|
|
}
|