77 lines
2.5 KiB
TypeScript
Raw Normal View History

2024-08-22 13:59:33 +08:00
import FileUtil from './File'
import {getCurrentTime} from './tools'
2024-10-11 13:47:24 +08:00
import {uploadHarmonyLiCheng} from '../../api/judge'
2024-08-22 13:59:33 +08:00
const LOGTAG = 'GetDistance'
export default class GetDistance {
//后续文件路径待替换
private fileUtil: FileUtil
public folderPath: string
public timeStr: string
public totalDistance: number
2024-08-26 16:07:11 +08:00
public totalTime:number
2024-08-22 13:59:33 +08:00
public date: string
2024-12-29 21:43:12 +08:00
public fd: number
2024-08-22 13:59:33 +08:00
constructor(context) {
const fileUtil = new FileUtil(context)
2024-10-11 13:47:24 +08:00
this.fileUtil = fileUtil;
2024-08-22 13:59:33 +08:00
}
// 设置文件夹
public initFolder= async () => {
const {fileUtil} = this
const time = await getCurrentTime()
2024-12-29 21:43:12 +08:00
const folderPath = await fileUtil.initFolder(`/车辆行驶距离统计`);
2024-08-22 13:59:33 +08:00
console.info('surenjun folderPath=>' ,folderPath);
const date = time.split(' ')[0].split('-').join('_')
const timeStr = time.split(' ')[1]
this.timeStr = timeStr
this.folderPath = folderPath;
this.totalDistance = 0;
2024-08-26 16:07:11 +08:00
this.totalTime = 0;
2024-08-22 13:59:33 +08:00
this.date = date;
2024-12-29 21:43:12 +08:00
this.fd=await fileUtil.editFile(
`${folderPath}/${date}.txt`,`程序启动时间:${timeStr} 累计行驶距离:${this.totalDistance}m 累计运行时常:${this.totalTime}min`,this.fd
2024-08-22 13:59:33 +08:00
);
return folderPath
}
// 过程文件数据
public setTimeData = async (str:number) => {
const {fileUtil,folderPath,timeStr,date,totalDistance} = this;
2024-10-28 13:47:03 +08:00
console.log('folderPath',folderPath)
2024-08-22 13:59:33 +08:00
const content = await fileUtil.readFile(`${folderPath}/${date}.txt`) || '';
const contentArr = content.split('\n').filter(item => item)
console.info('surenjun contentArr',JSON.stringify(contentArr))
2024-09-05 08:56:01 +08:00
this.totalDistance += (str * 1 > 200 ? 200 : str*1)
2024-08-26 16:07:11 +08:00
this.totalTime += 1;
contentArr[contentArr.length - 1] = `程序启动时间:${timeStr} 累计行驶距离:${(this.totalDistance).toFixed(2)}m 累计运行时常:${Math.ceil(this.totalTime/60)}min`+ '\n'
2024-08-22 13:59:33 +08:00
console.info('surenjun',contentArr.join('\n'))
2024-10-28 13:47:03 +08:00
console.log('folderPath',folderPath,date)
2024-12-17 17:27:07 +08:00
this.uploadData()
2024-10-28 13:47:03 +08:00
2024-12-17 17:27:07 +08:00
// await fileUtil.addFile(
// `${folderPath}/${date}.txt`,contentArr.join('\n')
// );
2024-08-22 13:59:33 +08:00
}
2024-10-11 13:47:24 +08:00
//上传行驶里程数据
uploadData = async () => {
setInterval(()=>{
2025-02-13 15:30:48 +08:00
const { carId } = AppStorage.get('carInfo');
2024-10-11 13:47:24 +08:00
const {date,timeStr,totalDistance}= this;
2024-12-24 16:43:59 +08:00
return
2024-10-11 13:47:24 +08:00
//"carid":"1001","startTime":"2024-08-24 08:09:01","time":"111233", "mileage":"1222"
uploadHarmonyLiCheng({
carid:carId,
startTime:`${date.split('_').join('-')} ${timeStr}`,
time:timeStr,
mileage:totalDistance
})
},5000)
}
2024-08-22 13:59:33 +08:00
}