import TopLogo from './compontents/TopLogo' import { registrationDeviceNo } from '../api/checkCar' import { dateFormat } from '../common/utils/tools' import deviceManager from '@ohos.distributedHardware.deviceManager' import { upDateTableByArray } from '../common/service/initable' import promptAction from '@ohos.promptAction' import FileUtil from '../common/utils/File' import common from '@ohos.app.ability.common'; @Entry @Component export default struct Index { @State ratio: number = 1700 / 960 @State ip: string = '' @State deviceNo: string = '' @State deviceName: string = '' @State checked: string = '0' @State net: any = '' @State plateNo: string = '' @State @Watch('outClick') outFlag: boolean = false; @State subType: string = '2'; private context = getContext(this) as common.UIAbilityContext; onPageShow() { // this.plateNo=globalThis.carInfo.plateNo console.log('createDeviceManagerstart') try{ deviceManager.createDeviceManager('com.oh.dts', (error, value) => { if (error) { console.error('createDeviceManager failed.'); return; } let dvMgrObj = value; this.deviceName = dvMgrObj.getLocalDeviceInfoSync().deviceName this.deviceNo = dvMgrObj.getLocalDeviceInfoSync().deviceId.substring(0, 10).toUpperCase() this.ip = 'MAC-' + this.deviceNo globalThis.deviceNo = 'MAC-' + this.deviceNo }); }catch (error){ console.log('createDeviceManagererror',error) } } build() { Column() { TopLogo({ outFlag: $outFlag }) Column() { Row() { Row() { Radio({ value: '0', group: 'radioGroup' }).checked(this.subType == '2' ? true : false) .height(50) .width(50).onChange((isChecked: boolean) => { if (isChecked) this.subType = '2' this.ip = 'MAC-' + this.deviceNo globalThis.deviceNo = this.ip }) Text('网卡').fontSize(34 * this.ratio).fontColor('#FFE0B2').margin({ right: 98.5 * this.ratio }) } Row() { Radio({ value: '1', group: 'radioGroup' }).checked(this.subType == '3' ? true : false) .height(50) .width(50).onChange((isChecked: boolean) => { if (isChecked) this.subType = '3' this.ip = 'DISK-' + this.deviceNo globalThis.deviceNo = this.ip // this.ip = ip }) Text('硬盘').fontSize(34 * this.ratio).fontColor('#FFE0B2').margin({ right: 83 * this.ratio }) } }.margin({ top: 35 * this.ratio }) Row() { Column() { Flex({ justifyContent: FlexAlign.Center, alignItems: ItemAlign.Center }) { Text(this.ip).fontColor('#fff') .fontSize(33.6 * this.ratio) } .width('100%') .height('100%') .padding({ left: 30 * this.ratio, right: 30 * this.ratio }) } .backgroundImage($r('app.media.xk')) .backgroundImageSize({ width: '100%', height: '100%' }) .width(610 * this.ratio) .height(108 * this.ratio) .margin({ left: 22 * this.ratio }) }.margin({ top: 30 * this.ratio }) } .width(720 * this.ratio) .height(310 * this.ratio) .backgroundColor('#333230') .margin({ top: 37 * this.ratio }) .borderRadius(19 * this.ratio) Image($r('app.media.zhuce_nor')) .width(320 * this.ratio) .height(92 * this.ratio) .margin({ top: 30 * this.ratio }) .onClick(() => { this.registrationDeviceNoFn() }) } .height('100%') .width('100%') .backgroundImage($r('app.media.bg')) .backgroundImageSize({ width: '100%', height: '100%' }) } outClick() { } async registrationDeviceNoFn() { const date = new Date() const param = { time: dateFormat(date), deviceName: this.ip, type: '1' } const fileUtil = new FileUtil(this.context) const folderPath = await fileUtil.initFolder(`/config`); fileUtil.addFile(`${folderPath}/deviceNo.txt`, JSON.stringify(param)) globalThis.deviceNo = this.ip console.log('globalThis.deviceNo',globalThis.deviceNo) // upDateTableByArray('DeviceInfoTable', [{ deviceId: this.ip }]) registrationDeviceNo(param).then(res => { // @ts-ignore if (res.registrationDeviceNoRsp.head.resultCode == '0') { promptAction.showToast({ // @ts-ignore message: decodeURIComponent(res.registrationDeviceNoRsp.head.resultMessage), duration: 3000 }); } }) } }