diff --git a/Users/surenjun/.ohos/config/openharmony/material/ac/32b988773bf0432db24cce08d0ad6436 b/Users/surenjun/.ohos/config/openharmony/material/ac/32b988773bf0432db24cce08d0ad6436
new file mode 100644
index 00000000..d7cd9933
--- /dev/null
+++ b/Users/surenjun/.ohos/config/openharmony/material/ac/32b988773bf0432db24cce08d0ad6436
@@ -0,0 +1 @@
+�[8��κ:���9�*�
\ No newline at end of file
diff --git a/Users/surenjun/.ohos/config/openharmony/material/ce/7f409117ae2e4f519a359adb86c69855 b/Users/surenjun/.ohos/config/openharmony/material/ce/7f409117ae2e4f519a359adb86c69855
new file mode 100644
index 00000000..13055422
Binary files /dev/null and b/Users/surenjun/.ohos/config/openharmony/material/ce/7f409117ae2e4f519a359adb86c69855 differ
diff --git a/Users/surenjun/.ohos/config/openharmony/material/fd/0/0f987b935f314177af429d3ff4243af9 b/Users/surenjun/.ohos/config/openharmony/material/fd/0/0f987b935f314177af429d3ff4243af9
new file mode 100644
index 00000000..f3834116
--- /dev/null
+++ b/Users/surenjun/.ohos/config/openharmony/material/fd/0/0f987b935f314177af429d3ff4243af9
@@ -0,0 +1 @@
+�d�|�[%�--�u���
\ No newline at end of file
diff --git a/Users/surenjun/.ohos/config/openharmony/material/fd/1/0e1388f748fe4a12b7ff87e4ed802114 b/Users/surenjun/.ohos/config/openharmony/material/fd/1/0e1388f748fe4a12b7ff87e4ed802114
new file mode 100644
index 00000000..7bedf72f
--- /dev/null
+++ b/Users/surenjun/.ohos/config/openharmony/material/fd/1/0e1388f748fe4a12b7ff87e4ed802114
@@ -0,0 +1 @@
+��#f�|(ɻ4j{1=
\ No newline at end of file
diff --git a/Users/surenjun/.ohos/config/openharmony/material/fd/2/395cc66a82e94ccb9c4cab068ddd79f7 b/Users/surenjun/.ohos/config/openharmony/material/fd/2/395cc66a82e94ccb9c4cab068ddd79f7
new file mode 100644
index 00000000..a01ecaa7
--- /dev/null
+++ b/Users/surenjun/.ohos/config/openharmony/material/fd/2/395cc66a82e94ccb9c4cab068ddd79f7
@@ -0,0 +1 @@
+���.E�
�ʨC*34
\ No newline at end of file
diff --git a/build-profile.json5 b/build-profile.json5
index 7a576700..0d86e37b 100644
--- a/build-profile.json5
+++ b/build-profile.json5
@@ -4,13 +4,13 @@
       {
         "name": "default",
         "material": {
-          "certpath": "/Users/wangzhongjie/.ohos/config/openharmony/auto_ohos_default_subject-two_com.oh.dts.cer",
-          "storePassword": "0000001BC865153A35BD7DDD2950D70622A2081C58D17D2F5BBE67AE83F469B41A05EED0BB09AA66043089",
+          "certpath": "C:\\Users\\lvyuankang\\.ohos\\config\\openharmony\\auto_ohos_default_subject-two_com.oh.dts.cer",
+          "storePassword": "00000019D92C7CDCC6FC0B360DC78BB6597770355E0E9BA7057FB08232B3169B719F8B43FE52F5A6D5",
           "keyAlias": "debugKey",
-          "keyPassword": "0000001BB839AC92D8CB8AF4765ADD271E687C74C82EC1D0ED2072093ADB1E831C3E99148406836748BCD7",
-          "profile": "/Users/wangzhongjie/.ohos/config/openharmony/auto_ohos_default_subject-two_com.oh.dts.p7b",
+          "keyPassword": "000000195EB18D1B848934488E0ED4C0FB63DBF4560DAF395E4960ABBC91B27DF741AD5E9EC9808856",
+          "profile": "C:\\Users\\lvyuankang\\.ohos\\config\\openharmony\\auto_ohos_default_subject-two_com.oh.dts.p7b",
           "signAlg": "SHA256withECDSA",
-          "storeFile": "/Users/wangzhongjie/.ohos/config/openharmony/auto_ohos_default_subject-two_com.oh.dts.p12"
+          "storeFile": "C:\\Users\\lvyuankang\\.ohos\\config\\openharmony\\auto_ohos_default_subject-two_com.oh.dts.p12"
         }
       }
     ],
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/CHANGELOG.md b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/CHANGELOG.md
deleted file mode 100644
index fb0366d2..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/CHANGELOG.md
+++ /dev/null
@@ -1,45 +0,0 @@
-## 1.0.6
-
-- 适配模块化编译
-- 适配IDE覆盖率数据输出
-
-## 1.0.5
-
-- 优化接口异常场景处理能力
-- 修复大规模压力测试下内存溢出问题
-- 修复测试脚本定义扩展原型方法与框架的兼容性问题
-- 异步promise状态判断断言与取反断言兼容
-
-## 1.0.4
-
-- 新增异步promise状态判断断言
-- 新增基础数据判断断言
-- 新增断言异常信息描述
-- 优化用例计时逻辑，采用相对时间计时
-- 修改用例执行过程，异步执行
-- 修复用例结果偶现的乱序问题
-
-## 1.0.3
-
-- 新增mock对象的能力，支持mock无参数函数
-- 新增测试套、测试用例随机执行功能
-- 解决测试套声明不规范，导致用例加载异常的问题
-- 修复命令行窗口输出乱序的问题
-
-## 1.0.2
-
-- 新增mock接口，判断当前mock方法状态、使用次数
-- 修复用例耗时统计问题
-- 修改断言功能，断言失败后，会抛出异常
-
-## 1.0.1
-- 新增mock基础能力
-- 修复部分断言失败后，消息提示异常问题
-
-## 1.0.0
-- 新增应用日志关键字查询接口，查询hilog日志中是否包含指定字符串
-- 支持用例筛选功能，用于指定测试用例的执行。可按用例名称、类型、规模、级别与测试套名称筛选
-- 支持新SDK下单元测试
-- 支持dry run 功能，通过命令行传参数，返回当前测试套用例名称全集
-- 新增框架接口声明文件，用于deveco联想
-- 修复用例状态统计问题
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/README.md b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/README.md
deleted file mode 100644
index 743361cc..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/README.md
+++ /dev/null
@@ -1,219 +0,0 @@
-<div style="text-align: center;font-size: xxx-large" >Hypium</div>
-<div style="text-align: center">A unit test framework for OpenHarmonyOS application</div>
-
-## Hypium是什么?
-***
-- Hypium是OpenHarmony上的测试框架，提供测试用例编写、执行、结果显示能力，用于OpenHarmony系统应用接口以及应用界面测试。
-- Hypium结构化模型：hypium工程主要由List.test.js与TestCase.test.js组成。
-```
-rootProject                  // Hypium工程根目录
-├── moduleA
-│   ├── src
-│      ├── main                   // 被测试应用目录
-│      ├── ohosTest               // 测试用例目录
-│         ├── js/ets
-│            └── test
-│               └── List.test.js      // 测试用例加载脚本，ets目录下为.ets后缀
-│               └── TestCase.test.js  // 测试用例脚本，ets目录下为.ets后缀
-└── moduleB
-    ...
-│               └── List.test.js      // 测试用例加载脚本，ets目录下为.ets后缀
-│               └── TestCase.test.js  // 测试用例脚本，ets目录下为.ets后缀
-```
-
-## 安装使用
-***
-- 在DevEco Studio内使用Hypium
-- 工程级package.json内配置:
-```json
-"dependencies": {
-    "@ohos/hypium": "1.0.6"
-}
-```
-注：
-hypium服务于OpenHarmonyOS应用对外接口测试、系统对外接口测试（SDK中接口），完成HAP自动化测试。详细指导：
-[Deveco Studio](https://developer.harmonyos.com/cn/develop/deveco-studio)
-
-#### 通用语法
-
-- 测试用例采用业内通用语法，describe代表一个测试套， it代表一条用例。
-
-| No. | API        | 功能说明                                                                                                               |
-| --- | ---------- | ---------------------------------------------------------------------------------------------------------------------- |
-| 1   | describe   | 定义一个测试套，支持两个参数：测试套名称和测试套函数                                                                   |
-| 2   | beforeAll  | 在测试套内定义一个预置条件，在所有测试用例开始前执行且仅执行一次，支持一个参数：预置动作函数                           |
-| 3   | beforeEach | 在测试套内定义一个单元预置条件，在每条测试用例开始前执行，执行次数与it定义的测试用例数一致，支持一个参数：预置动作函数 |
-| 4   | afterEach  | 在测试套内定义一个单元清理条件，在每条测试用例结束后执行，执行次数与it定义的测试用例数一致，支持一个参数：清理动作函数 |
-| 5   | afterAll   | 在测试套内定义一个清理条件，在所有测试用例结束后执行且仅执行一次，支持一个参数：清理动作函数                           |
-| 6   | it         | 定义一条测试用例，支持三个参数：用例名称，过滤参数和用例函数                                                           |
-| 7   | expect     | 支持bool类型判断等多种断言方法                                                                                         |
-
-#### 断言库
-
-- 示例代码：
-
-```javascript
-  expect(${actualvalue}).assertX(${expectvalue})
-```
-
-- 断言功能列表：
-
-| No.  | API                              | 功能说明                                                                                       |
-| :--- | :------------------------------- | ---------------------------------------------------------------------------------------------- |
-| 1    | assertClose                      | 检验actualvalue和expectvalue(0)的接近程度是否是expectValue(1)                                  |
-| 2    | assertContain                    | 检验actualvalue中是否包含expectvalue                                                           |
-| 3    | assertDeepEquals                 | @since1.0.4 检验actualvalue和expectvalue(0)是否是同一个对象                                    |
-| 4    | assertEqual                      | 检验actualvalue是否等于expectvalue[0]                                                          |
-| 5    | assertFail                       | 抛出一个错误                                                                                   |
-| 6    | assertFalse                      | 检验actualvalue是否是false                                                                     |
-| 7    | assertTrue                       | 检验actualvalue是否是true                                                                      |
-| 8    | assertInstanceOf                 | 检验actualvalue是否是expectvalue类型                                                           |
-| 9    | assertLarger                     | 检验actualvalue是否大于expectvalue                                                             |
-| 10   | assertLess                       | 检验actualvalue是否小于expectvalue                                                             |
-| 11   | assertNaN                        | @since1.0.4 检验actualvalue是否是NaN                                                           |
-| 12   | assertNegUnlimited               | @since1.0.4 检验actualvalue是否等于Number.NEGATIVE_INFINITY                                    |
-| 13   | assertNull                       | 检验actualvalue是否是null                                                                      |
-| 14   | assertPosUnlimited               | @since1.0.4 检验actualvalue是否等于Number.POSITIVE_INFINITY                                    |
-| 15   | assertPromiseIsPending           | @since1.0.4 检验actualvalue是否处于Pending状态【actualvalue为promse对象】                      |
-| 16   | assertPromiseIsRejected          | @since1.0.4 检验actualvalue是否处于Rejected状态【同15】                                        |
-| 17   | assertPromiseIsRejectedWith      | @since1.0.4 检验actualvalue是否处于Rejected状态，并且比较执行的结果值【同15】                  |
-| 18   | assertPromiseIsRejectedWithError | @since1.0.4 检验actualvalue是否处于Rejected状态并有异常，同时比较异常的类型和message值【同15】 |
-| 19   | assertPromiseIsResolved          | @since1.0.4 检验actualvalue是否处于Resolved状态【同15】                                        |
-| 20   | assertPromiseIsResolvedWith      | @since1.0.4 检验actualvalue是否处于Resolved状态，并且比较执行的结果值【同15】                  |
-| 21   | assertThrowError                 | 检验actualvalue抛出Error内容是否是expectValue                                                  |
-| 22   | assertUndefined                  | 检验actualvalue是否是undefined                                                                 |
-| 23   | not                              | @since1.0.4 断言结果取反                                                                       |
-
-
-  示例代码：
-
-```javascript
-  import { describe, it, expect } from '@ohos/hypium';
-
-  export default async function assertCloseTest() {
-    describe('assertClose', function () {
-      it('assertClose_success', 0, function () {
-        let a = 100;
-        let b = 0.1;
-        expect(a).assertClose(99, b);
-      })
-    })
-  }
-```
-
-#### 公共系统能力
-
-| No.  | API                                                     | 功能描述                                                     |
-| ---- | ------------------------------------------------------- | ------------------------------------------------------------ |
-| 1    | existKeyword(keyword: string, timeout: number): boolean | @since1.0.3 hilog日志中查找指定字段是否存在，keyword是待查找关键字，timeout为设置的查找时间 |
-| 2    | actionStart(tag: string): void                          | @since1.0.3 cmd窗口输出开始tag                               |
-| 3    | actionEnd(tag: string): void                            | @since1.0.3 cmd窗口输出结束tag                               |
-
-  示例代码：
-
-```javascript
-import { describe, it, expect, SysTestKit} from '@ohos/hypium';
-
-export default function existKeywordTest() {
-    describe('existKeywordTest', function () {
-        it('existKeyword',DEFAULT, async function () {
-            console.info("HelloTest");
-            let isExist = await SysTestKit.existKeyword('HelloTest');
-            console.info('isExist ------>' + isExist);
-        })
-    })
-}
-```
-```javascript
-import { describe, it, expect, SysTestKit} from '@ohos/hypium';
-
-export default function actionTest() {
-    describe('actionTest', function () {
-        it('existKeyword',DEFAULT, async function () {
-            let tag = '[MyTest]';
-			SysTestKit.actionStart(tag);
-            //do something
-            SysTestKit.actionEnd(tag);
-        })
-    })
-}
-```
-
-#### 专项能力
-
-- 测试用例属性筛选能力：hypium支持根据用例属性筛选执行指定测试用例，使用方式是先在测试用例上标记用例属性后，再在测试应用的启动shell命令后新增" -s ${Key} ${Value}"。
-
-| Key      | 含义说明     | Value取值范围                                                                                                                                          |
-| -------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| level    | 用例级别     | "0","1","2","3","4", 例如：-s level 1                                                                                                                  |
-| size     | 用例粒度     | "small","medium","large", 例如：-s size small                                                                                                          |
-| testType | 用例测试类型 | "function","performance","power","reliability","security","global","compatibility","user","standard","safety","resilience", 例如：-s testType function |
-
-  示例代码
-
-```javascript
-import { describe, it, expect, TestType, Size, Level } from '@ohos/hypium';
-
-export default function attributeTest() {
-    describe('attributeTest', function () {
-        it("testAttributeIt", TestType.FUNCTION | Size.SMALLTEST | Level.LEVEL0, function () {
-            console.info('Hello Test');
-        })
-    })
-}
-```
-
-  示例命令
-```shell  
-XX -s level 1 -s size small -s testType function
-```
-该命令的作用是：筛选测试应用中同时满足a）用例级别是1 b）用例粒度是small c）用例测试类型是function 三个条件的用例执行。
-
-- 测试套/测试用例名称筛选能力（测试套与用例名称用“#”号连接，多个用“,”英文逗号分隔）
-
-| Key      | 含义说明                | Value取值范围                                                                                |
-| -------- | ----------------------- | -------------------------------------------------------------------------------------------- |
-| class    | 指定要执行的测试套&用例 | ${describeName}#${itName}，${describeName} , 例如：-s class attributeTest#testAttributeIt    |
-| notClass | 指定不执行的测试套&用例 | ${describeName}#${itName}，${describeName} , 例如：-s notClass attributeTest#testAttributeIt |
-
-  示例命令
-```shell  
-XX -s class attributeTest#testAttributeIt,abilityTest#testAbilityIt
-```
-该命令的作用是：筛选测试应用中attributeTest测试套下的testAttributeIt测试用例，abilityTest测试套下的testAbilityIt测试用例，只执行这两条用例。
-
-- 其他能力
-
-| 能力项       | Key     | 含义说明                     | Value取值范围                                  |
-| ------------ | ------- | ---------------------------- | ---------------------------------------------- |
-| 随机执行能力 | random  | 测试套&测试用例随机执行      | true, 不传参默认为false， 例如：-s random true |
-| 空跑能力     | dryRun  | 显示要执行的测试用例信息全集 | true , 不传参默认为false，例如：-s dryRun true |
-| 异步超时能力 | timeout | 异步用例执行的超时时间       | 正整数 , 单位ms，例如：-s timeout 5000         |
-
-##### 约束限制
-随机执行能力和空跑能力从npm包1.0.3版本开始支持
-
-#### Mock能力
-
-##### 约束限制
-
-单元测试框架Mock能力从npm包[1.0.1版本](https://repo.harmonyos.com/#/cn/application/atomService/@ohos%2Fhypium/v/1.0.1)开始支持
-
-## 约束
-
-***
-    本模块首批接口从OpenHarmony SDK API version 8开始支持。
-
-## Hypium开放能力隐私声明
-
--  我们如何收集和使用您的个人信息
-	您在使用集成了Hypium开放能力的测试应用时，Hypium不会处理您的个人信息。
--  SDK处理的个人信息
-	不涉及。
--  SDK集成第三方服务声明
-	不涉及。
--  SDK数据安全保护
-	不涉及。
--  SDK版本更新声明
-	为了向您提供最新的服务，我们会不时更新Hypium版本。我们强烈建议开发者集成使用最新版本的Hypium。
-
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/index.d.ts b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/index.d.ts
deleted file mode 100644
index b0b4394a..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/index.d.ts
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License")
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export const DEFAULT = 0B0000
-
-export const when: when;
-
-export enum TestType {
-    FUNCTION = 0B1,
-    PERFORMANCE = 0B1 << 1,
-    POWER = 0B1 << 2,
-    RELIABILITY = 0B1 << 3,
-    SECURITY = 0B1 << 4,
-    GLOBAL = 0B1 << 5,
-    COMPATIBILITY = 0B1 << 6,
-    USER = 0B1 << 7,
-    STANDARD = 0B1 << 8,
-    SAFETY = 0B1 << 9,
-    RESILIENCE = 0B1 << 10
-}
-
-export enum Size {
-    SMALLTEST = 0B1 << 16,
-    MEDIUMTEST = 0B1 << 17,
-    LARGETEST = 0B1 << 18
-}
-
-export enum Level {
-    LEVEL0 = 0B1 << 24,
-    LEVEL1 = 0B1 << 25,
-    LEVEL2 = 0B1 << 26,
-    LEVEL3 = 0B1 << 27,
-    LEVEL4 = 0B1 << 28
-}
-
-export function describe(testSuiteName: string, callback: Function): void
-
-export function beforeEach(callback: Function): void
-
-export function afterEach(callback: Function): void
-
-export function beforeAll(callback: Function): void
-
-export function afterAll(callback: Function): void
-
-export function it(testCaseName: string, attribute: (TestType | Size | Level), callback: Function)
-
-export interface Assert {
-    assertClose(expectValue: number, precision: number): void
-    assertContain(expectValue: any): void
-    assertEqual(expectValue: any): void
-    assertFail(): void
-    assertFalse(): void
-    assertTrue(): void
-    assertInstanceOf(expectValue: string): void
-    assertLarger(expectValue: number): void
-    assertLess(expectValue: number): void
-    assertNull(): void
-    assertThrowError(expectValue: string): void
-    assertUndefined(): void
-    assertLargerOrEqual(expectValue: number):void
-    assertLessOrEqual(expectValue: number):void
-    assertNaN():void
-    assertNegUnlimited(): void
-    assertPosUnlimited(): void
-    not(): Assert;
-    assertDeepEquals(expectValue: any):void
-    assertPromiseIsPending(): void
-    assertPromiseIsRejected(): void
-    assertPromiseIsRejectedWith(expectValue?: any): void
-    assertPromiseIsRejectedWithError(...expectValue): void
-    assertPromiseIsResolved(): void
-    assertPromiseIsResolvedWith(expectValue?: any): void
-}
-
-export function expect(actualValue?: any): Assert
-
-export class ArgumentMatchers {
-    static any;
-    static anyString;
-    static anyBoolean;
-    static anyNumber;
-    static anyObj;
-    static anyFunction;
-    static matchRegexs(Regex: RegExp): void
-}
-
-declare interface when {
-    afterReturn(value: any): any
-    afterReturnNothing(): undefined
-    afterAction(action: any): any
-    afterThrow(e_msg: string): string
-    (argMatchers?: any): when;
-}
-
-export interface VerificationMode {
-    times(count: Number): void
-    never(): void
-    once(): void
-    atLeast(count: Number): void
-    atMost(count: Number): void
-}
-
-export class MockKit {
-    constructor()
-    mockFunc(obj: Object, func: Function): Function
-    mockObject(obj: Object): Object
-    verify(methodName: String, argsArray: Array<any>): VerificationMode
-    ignoreMock(obj: Object, func: Function): void
-    clear(obj: Object): void
-    clearAll(): void
-}
-
-export class SysTestKit {
-    static actionStart(tag: string): void
-    static actionEnd(tag: string): void
-    static existKeyword(keyword: string, timeout?: number): boolean
-}
-
-export class Hypium {
-    static setData(data: {[key: string]: any}): void
-    static setTimeConfig(systemTime: any)
-    static hypiumTest(abilityDelegator: any, abilityDelegatorArguments: any, testsuite: Function): void
-}
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/index.ets b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/index.ets
deleted file mode 100644
index 3c3fe317..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/index.ets
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License")
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Core from './src/main/core';
-import {DEFAULT, TestType, Size, Level} from './src/main/Constant';
-import DataDriver from './src/main/module/config/DataDriver';
-import ExpectExtend from './src/main/module/assert/ExpectExtend';
-import OhReport from './src/main/module/report/OhReport';
-import SysTestKit from './src/main/module/kit/SysTestKit';
-import {describe, beforeAll, beforeEach, afterEach, afterAll, it, expect} from './src/main/interface';
-import {MockKit, when} from './src/main/module/mock/MockKit';
-import ArgumentMatchers from './src/main/module/mock/ArgumentMatchers';
-
-class Hypium {
-    static setData(data) {
-        const core = Core.getInstance();
-        const dataDriver = new DataDriver({data});
-        core.addService('dataDriver', dataDriver);
-    }
-
-    static setTimeConfig(systemTime) {
-        SysTestKit.systemTime = systemTime;
-    }
-
-    static hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite) {
-        const core = Core.getInstance();
-        const expectExtend = new ExpectExtend({
-            'id': 'extend'
-        });
-        core.addService('expect', expectExtend);
-        const ohReport = new OhReport({
-            'delegator': abilityDelegator,
-            'abilityDelegatorArguments': abilityDelegatorArguments
-        });
-        SysTestKit.delegator = abilityDelegator;
-        core.addService('report', ohReport);
-        core.init();
-        core.subscribeEvent('spec', ohReport);
-        core.subscribeEvent('suite', ohReport);
-        core.subscribeEvent('task', ohReport);
-        const configService = core.getDefaultService('config');
-
-        let testParameters = {};
-        if (abilityDelegatorArguments !== null) {
-            testParameters = configService.translateParams(abilityDelegatorArguments.parameters);
-        }
-        console.info('parameters:' + JSON.stringify(testParameters));
-        configService.setConfig(testParameters);
-
-        testsuite();
-        if (Object.prototype.hasOwnProperty.call(globalThis, 'setupUiTestEnvironment')) {
-            globalThis.setupUiTestEnvironment().then(() => {
-                console.info('UiTestKit::after run uitest setup, start run testcases');
-                core.execute(abilityDelegator);
-            }).catch((error) => {
-                console.error('UiTestKit:: call setupUiTestEnvironment failure:' + error);
-                core.execute(abilityDelegator);
-            });
-        } else {
-            console.info('UiTestKit:: no need to setup uitest, start run testcases');
-            core.execute(abilityDelegator);
-        }
-    }
-}
-
-export {
-    Hypium,
-    Core,
-    DEFAULT,
-    TestType,
-    Size,
-    Level,
-    DataDriver,
-    ExpectExtend,
-    OhReport,
-    SysTestKit,
-    describe, beforeAll, beforeEach, afterEach, afterAll, it, expect,
-    MockKit, when,
-    ArgumentMatchers
-};
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/index.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/index.js
deleted file mode 100644
index 3c3fe317..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/index.js
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License")
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Core from './src/main/core';
-import {DEFAULT, TestType, Size, Level} from './src/main/Constant';
-import DataDriver from './src/main/module/config/DataDriver';
-import ExpectExtend from './src/main/module/assert/ExpectExtend';
-import OhReport from './src/main/module/report/OhReport';
-import SysTestKit from './src/main/module/kit/SysTestKit';
-import {describe, beforeAll, beforeEach, afterEach, afterAll, it, expect} from './src/main/interface';
-import {MockKit, when} from './src/main/module/mock/MockKit';
-import ArgumentMatchers from './src/main/module/mock/ArgumentMatchers';
-
-class Hypium {
-    static setData(data) {
-        const core = Core.getInstance();
-        const dataDriver = new DataDriver({data});
-        core.addService('dataDriver', dataDriver);
-    }
-
-    static setTimeConfig(systemTime) {
-        SysTestKit.systemTime = systemTime;
-    }
-
-    static hypiumTest(abilityDelegator, abilityDelegatorArguments, testsuite) {
-        const core = Core.getInstance();
-        const expectExtend = new ExpectExtend({
-            'id': 'extend'
-        });
-        core.addService('expect', expectExtend);
-        const ohReport = new OhReport({
-            'delegator': abilityDelegator,
-            'abilityDelegatorArguments': abilityDelegatorArguments
-        });
-        SysTestKit.delegator = abilityDelegator;
-        core.addService('report', ohReport);
-        core.init();
-        core.subscribeEvent('spec', ohReport);
-        core.subscribeEvent('suite', ohReport);
-        core.subscribeEvent('task', ohReport);
-        const configService = core.getDefaultService('config');
-
-        let testParameters = {};
-        if (abilityDelegatorArguments !== null) {
-            testParameters = configService.translateParams(abilityDelegatorArguments.parameters);
-        }
-        console.info('parameters:' + JSON.stringify(testParameters));
-        configService.setConfig(testParameters);
-
-        testsuite();
-        if (Object.prototype.hasOwnProperty.call(globalThis, 'setupUiTestEnvironment')) {
-            globalThis.setupUiTestEnvironment().then(() => {
-                console.info('UiTestKit::after run uitest setup, start run testcases');
-                core.execute(abilityDelegator);
-            }).catch((error) => {
-                console.error('UiTestKit:: call setupUiTestEnvironment failure:' + error);
-                core.execute(abilityDelegator);
-            });
-        } else {
-            console.info('UiTestKit:: no need to setup uitest, start run testcases');
-            core.execute(abilityDelegator);
-        }
-    }
-}
-
-export {
-    Hypium,
-    Core,
-    DEFAULT,
-    TestType,
-    Size,
-    Level,
-    DataDriver,
-    ExpectExtend,
-    OhReport,
-    SysTestKit,
-    describe, beforeAll, beforeEach, afterEach, afterAll, it, expect,
-    MockKit, when,
-    ArgumentMatchers
-};
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/oh-package.json5 b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/oh-package.json5
deleted file mode 100644
index 84d3f85c..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/oh-package.json5
+++ /dev/null
@@ -1,11 +0,0 @@
-{
-  "name": "@ohos/hypium",
-  "version": "1.0.6",
-  "description": "A unit test framework for OpenHarmony application",
-  "main": "index.js",
-  "keywords": [],
-  "author": "huawei",
-  "license": "Apache-2.0",
-  "dependencies": {
-  }
-}
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/Constant.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/Constant.js
deleted file mode 100644
index f1829107..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/Constant.js
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/**
- * define the testcase type : TestType, Size , Level
- */
-export const DEFAULT = 0B0000;
-
-export class TestType {
-    static FUNCTION = 0B1;
-    static PERFORMANCE = 0B1 << 1;
-    static POWER = 0B1 << 2;
-    static RELIABILITY = 0B1 << 3;
-    static SECURITY = 0B1 << 4;
-    static GLOBAL = 0B1 << 5;
-    static COMPATIBILITY = 0B1 << 6;
-    static USER = 0B1 << 7;
-    static STANDARD = 0B1 << 8;
-    static SAFETY = 0B1 << 9;
-    static RESILIENCE = 0B1 << 10;
-}
-
-export class Size {
-    static SMALLTEST = 0B1 << 16;
-    static MEDIUMTEST = 0B1 << 17;
-    static LARGETEST = 0B1 << 18;
-}
-
-export class Level {
-    static LEVEL0 = 0B1 << 24;
-    static LEVEL1 = 0B1 << 25;
-    static LEVEL2 = 0B1 << 26;
-    static LEVEL3 = 0B1 << 27;
-    static LEVEL4 = 0B1 << 28;
-}
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/core.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/core.js
deleted file mode 100644
index cfcb5f17..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/core.js
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import {SuiteService, SpecService, ExpectService, ReportService} from './service';
-import {ConfigService} from './module/config/configService';
-import {SpecEvent, TaskEvent, SuiteEvent} from './event';
-
-/**
- * core service for execute testcase.
- */
-class Core {
-    static getInstance() {
-        if (!this.instance) {
-            this.instance = new Core();
-        }
-        return this.instance;
-    }
-
-    constructor() {
-        this.instance = null;
-        this.services = {
-            suite: {},
-            spec: {},
-            config: {},
-            expect: {},
-            log: {},
-            report: {}
-
-        };
-        this.events = {
-            suite: {},
-            spec: {},
-            task: {}
-        };
-    }
-
-    addService(name, service) {
-        let serviceObj = {};
-        if (!this.services[name]) {
-            this.services[name] = serviceObj;
-        } else {
-            serviceObj = this.services[name];
-        }
-        serviceObj[service.id] = service;
-    }
-
-    getDefaultService(name) {
-        return this.services[name].default;
-    }
-
-    getServices(name) {
-        return this.services[name];
-    }
-
-    registerEvent(serviceName, event) {
-        let eventObj = {};
-        if (!this.events[serviceName]) {
-            this.events[serviceName] = eventObj;
-        } else {
-            eventObj = this.events[serviceName];
-        }
-        eventObj[event.id] = event;
-    }
-
-    unRegisterEvent(serviceName, eventID) {
-        const eventObj = this.events[serviceName];
-        if (eventObj) {
-            delete eventObj[eventID];
-        }
-    }
-
-    subscribeEvent(serviceName, serviceObj) {
-        const eventObj = this.events[serviceName];
-        if (eventObj) {
-            for (const attr in eventObj) {
-                eventObj[attr]['subscribeEvent'](serviceObj);
-            }
-        }
-    }
-
-    async fireEvents(serviceName, eventName) {
-        const eventObj = this.events[serviceName];
-        if (!eventObj) {
-            return;
-        }
-        for (const attr in eventObj) {
-            await eventObj[attr][eventName]();
-        }
-    }
-
-    addToGlobal(apis) {
-        if (typeof globalThis !== 'undefined') {
-            for (let api in apis) {
-                globalThis[api] = apis[api];
-            }
-        }
-        for (const api in apis) {
-            this[api] = apis[api];
-        }
-    }
-
-    init() {
-        this.addService('suite', new SuiteService({id: 'default'}));
-        this.addService('spec', new SpecService({id: 'default'}));
-        this.addService('expect', new ExpectService({id: 'default'}));
-        this.addService('report', new ReportService({id: 'default'}));
-        this.addService('config', new ConfigService({id: 'default'}));
-        this.registerEvent('task', new TaskEvent({id: 'default', coreContext: this}));
-        this.registerEvent('suite', new SuiteEvent({id: 'default', coreContext: this}));
-        this.registerEvent('spec', new SpecEvent({id: 'default', coreContext: this}));
-        this.subscribeEvent('spec', this.getDefaultService('report'));
-        this.subscribeEvent('suite', this.getDefaultService('report'));
-        this.subscribeEvent('task', this.getDefaultService('report'));
-        const context = this;
-        for (const key in this.services) {
-            const serviceObj = this.services[key];
-            for (const serviceID in serviceObj) {
-                const service = serviceObj[serviceID];
-                service.init(context);
-
-                if (typeof service.apis !== 'function') {
-                    continue;
-                }
-                const apis = service.apis();
-                if (apis) {
-                    this.addToGlobal(apis);
-                }
-            }
-        }
-    }
-
-    execute(abilityDelegator) {
-        const suiteService = this.getDefaultService('suite');
-        const configService = this.getDefaultService('config');
-        if (configService['dryRun'] === 'true') {
-            (async function () {
-                await suiteService.dryRun(abilityDelegator);
-            })();
-            return;
-        }
-        setTimeout(() => {
-            suiteService.execute();
-        }, 10);
-    }
-}
-
-export default Core;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/event.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/event.js
deleted file mode 100644
index 1333a1c4..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/event.js
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-class SpecEvent {
-    constructor(attr) {
-        this.id = attr.id;
-        this.coreContext = attr.context;
-        this.eventMonitors = [];
-    }
-
-    subscribeEvent(service) {
-        this.eventMonitors.push(service);
-    }
-
-    async specStart() {
-        for (const monitor of this.eventMonitors) {
-            await monitor['specStart']();
-        }
-    }
-
-    async specDone() {
-        for (const monitor of this.eventMonitors) {
-            await monitor['specDone']();
-        }
-    }
-}
-
-class SuiteEvent {
-    constructor(attr) {
-        this.id = attr.id;
-        this.suiteContext = attr.coreContext;
-        this.eventMonitors = [];
-    }
-
-    subscribeEvent(service) {
-        this.eventMonitors.push(service);
-    }
-
-    async suiteStart() {
-        for (const monitor of this.eventMonitors) {
-            await monitor['suiteStart']();
-        }
-    }
-
-    async suiteDone() {
-        for (const monitor of this.eventMonitors) {
-            await monitor['suiteDone']();
-        }
-    }
-}
-
-class TaskEvent {
-    constructor(attr) {
-        this.id = attr.id;
-        this.coreContext = attr.coreContext;
-        this.eventMonitors = [];
-    }
-
-    subscribeEvent(service) {
-        this.eventMonitors.push(service);
-    }
-
-    async taskStart() {
-        for (const monitor of this.eventMonitors) {
-            await monitor['taskStart']();
-        }
-    }
-
-    async taskDone() {
-        for (const monitor of this.eventMonitors) {
-            await monitor['taskDone']();
-        }
-    }
-
-    incorrectFormat() {
-        for (const monitor of this.eventMonitors) {
-            monitor['incorrectFormat']();
-        }
-    }
-}
-
-export {SpecEvent, TaskEvent, SuiteEvent};
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/interface.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/interface.js
deleted file mode 100644
index 40398c84..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/interface.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Core from './core';
-
-const core = Core.getInstance();
-
-const describe = function (desc, func) {
-    return Reflect.has(core, 'describe') ? core.describe(desc, func) : (desc, func) => { };
-};
-const it = function (desc, filter, func) {
-    return Reflect.has(core, 'it') ? core.it(desc, filter, func) : (desc, filter, func) => { };
-};
-const beforeEach = function (func) {
-    return Reflect.has(core, 'beforeEach') ? core.beforeEach(func) : (func) => { };
-};
-const afterEach = function (func) {
-    return Reflect.has(core, 'afterEach') ? core.afterEach(func) : (func) => { };
-};
-const beforeAll = function (func) {
-    return Reflect.has(core, 'beforeAll') ? core.beforeAll(func) : (func) => { };
-};
-const afterAll = function (func) {
-    return Reflect.has(core, 'afterAll') ? core.afterAll(func) : (func) => { };
-};
-const expect = function (actualValue) {
-    return Reflect.has(core, 'expect') ? core.expect(actualValue) : (actualValue) => { };
-};
-
-export {
-    describe, it, beforeAll, beforeEach, afterEach, afterAll, expect
-};
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js
deleted file mode 100644
index d10d15e6..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/ExpectExtend.js
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import assertNull from './assertNull';
-import assertClose from './assertClose';
-import assertContain from './assertContain';
-import assertLess from './assertLess';
-import assertLarger from './assertLarger';
-import assertFail from './assertFail';
-import assertUndefined from './assertUndefined';
-import assertFalse from './assertFalse';
-import assertInstanceOf from './assertInstanceOf';
-import assertThrowError from './assertThrowError';
-import assertLargerOrEqual from './assertLargerOrEqual'
-import assertLessOrEqual from './assertLessOrEqual'
-import assertNaN from './assertNaN'
-import assertNegUnlimited from './assertNegUnlimited'
-import assertPosUnlimited from './assertPosUnlimited'
-import assertDeepEquals from './deepEquals/assertDeepEquals'
-import assertPromiseIsPending from './assertPromiseIsPending';
-import assertPromiseIsRejected from './assertPromiseIsRejected';
-import assertPromiseIsRejectedWith from './assertPromiseIsRejectedWith';
-import assertPromiseIsRejectedWithError from './assertPromiseIsRejectedWithError';
-import assertPromiseIsResolved from './assertPromiseIsResolved';
-import assertPromiseIsResolvedWith from './assertPromiseIsResolvedWith';
-class ExpectExtend {
-    constructor(attr) {
-        this.id = attr.id;
-        this.matchers = {};
-    }
-
-    extendsMatchers() {
-        this.matchers.assertNull = assertNull;
-        this.matchers.assertClose = assertClose;
-        this.matchers.assertContain = assertContain;
-        this.matchers.assertLess = assertLess;
-        this.matchers.assertLarger = assertLarger;
-        this.matchers.assertFail = assertFail;
-        this.matchers.assertUndefined = assertUndefined;
-        this.matchers.assertFalse = assertFalse;
-        this.matchers.assertInstanceOf = assertInstanceOf;
-        this.matchers.assertThrowError = assertThrowError;
-        this.matchers.assertLargerOrEqual = assertLargerOrEqual;
-        this.matchers.assertLessOrEqual = assertLessOrEqual;
-        this.matchers.assertNaN = assertNaN;
-        this.matchers.assertNegUnlimited = assertNegUnlimited;
-        this.matchers.assertPosUnlimited = assertPosUnlimited;
-        this.matchers.assertDeepEquals = assertDeepEquals;
-        this.matchers.assertPromiseIsPending = assertPromiseIsPending;
-        this.matchers.assertPromiseIsRejected = assertPromiseIsRejected;
-        this.matchers.assertPromiseIsRejectedWith = assertPromiseIsRejectedWith;
-        this.matchers.assertPromiseIsRejectedWithError = assertPromiseIsRejectedWithError;
-        this.matchers.assertPromiseIsResolved = assertPromiseIsResolved;
-        this.matchers.assertPromiseIsResolvedWith = assertPromiseIsResolvedWith;
-    }
-
-    init(coreContext) {
-        this.coreContext = coreContext;
-        this.extendsMatchers();
-        const expectService = this.coreContext.getDefaultService('expect');
-        expectService.addMatchers(this.matchers);
-    }
-
-    apis() {
-        return {
-            'expect': function (actualValue) {
-                return this.coreContext.getDefaultService('expect').expect(actualValue);
-            }
-        };
-    }
-}
-
-export default ExpectExtend;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js
deleted file mode 100644
index 63635bea..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertClose.js
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertClose(actualValue, expected) {
-    console.log('expected:' + expected[0] + ',precision:' + expected[1]);
-    if (actualValue === null && expected[0] === null) {
-        throw new Error('actualValue and expected can not be both null!!!');
-    }
-    let result;
-    let diff = Math.abs(expected[0] - actualValue);
-    let actualAbs = Math.abs(actualValue);
-    if ((actualAbs - 0) === 0) {
-        if ((diff - 0) === 0) {
-            result = true;
-        } else {
-            result = false;
-        }
-    } else if (diff / actualAbs < expected[1]) {
-        result = true;
-    } else {
-        result = false;
-    }
-    return {
-        pass: result,
-        message: '|' + actualValue + ' - ' + expected[0] + '|/' + actualValue + ' is not less than ' + expected[1]
-    };
-}
-
-export default assertClose;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js
deleted file mode 100644
index 7fba0d97..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertContain.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertContain(actualValue, expect) {
-    let result = false;
-    if (Object.prototype.toString.call(actualValue).indexOf('Array')) {
-        for (let i in actualValue) {
-            if (actualValue[i] == expect[0]) {
-                result = true;
-            }
-        }
-    }
-    let type = Object.prototype.toString.call(actualValue);
-    if (type === '[object String]') {
-        result = actualValue.indexOf(expect[0]) >= 0;
-    }
-    return {
-        pass: result,
-        message: 'expect false, ' + actualValue + ' do not have  ' + expect[0]
-    };
-}
-
-export default assertContain;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js
deleted file mode 100644
index 8ab4ac5c..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertFail.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertFail() {
-    return {
-        pass: false,
-        message: 'fail '
-    };
-}
-
-export default assertFail;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js
deleted file mode 100644
index c5008e94..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertFalse.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertFalse(actualValue) {
-    return {
-        pass: (actualValue) === false,
-        message: 'expect false, actualValue is ' + actualValue
-    };
-}
-
-export default assertFalse;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js
deleted file mode 100644
index 1e11b93f..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertInstanceOf.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertInstanceOf(actualValue, expected) {
-    if (Object.prototype.toString.call(actualValue) == '[object ' + expected[0] + ']') {
-        return {
-            pass: true
-        };
-    } else {
-        return {
-            pass: false,
-            message: actualValue + ' is ' + Object.prototype.toString.call(actualValue) + 'not  ' + expected[0]
-        };
-    }
-}
-
-export default assertInstanceOf;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js
deleted file mode 100644
index a74f4a8c..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLarger.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertLarger(actualValue, expected) {
-    return {
-        pass: (actualValue) > expected[0],
-        message: (actualValue) + ' is not larger than ' + expected[0]
-    };
-}
-
-export default assertLarger;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js
deleted file mode 100644
index e847e6c2..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLargerOrEqual.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertLargerOrEqual(actualValue, expected) {
-    return {
-        pass: (actualValue) >= expected[0],
-        message: (actualValue) + ' is not larger than ' + expected[0]
-    };
-}
-
-export default assertLargerOrEqual;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js
deleted file mode 100644
index 17e84b0a..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLess.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertLess(actualValue, expected) {
-    return {
-        pass: (actualValue) < expected[0],
-        message: (actualValue) + ' is not less than ' + expected[0]
-    };
-}
-
-export default assertLess;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js
deleted file mode 100644
index f754f97f..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertLessOrEqual.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertLessOrEqual(actualValue, expected) {
-    return {
-        pass: (actualValue) <= expected[0],
-        message: (actualValue) + ' is not less than ' + expected[0]
-    };
-}
-
-export default assertLessOrEqual;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js
deleted file mode 100644
index 8d45d6a9..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertNaN.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertNaN(actualValue) {
-    return {
-        pass: actualValue !== actualValue,
-        message: 'expect NaN, actualValue  is ' + actualValue
-    };
-}
-
-export default assertNaN;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js
deleted file mode 100644
index ceac555a..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertNegUnlimited.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-* Copyright (c) 2022 Huawei Device Co., Ltd.
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*     http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-function assertNegUnlimited(actualValue) {
-    return {
-        pass: actualValue === Number.NEGATIVE_INFINITY,
-        message: 'Expected actualValue not to be -Infinity.  actualValue is,' + actualValue
-    };
-}
-
-export default assertNegUnlimited;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js
deleted file mode 100644
index 53a7bad8..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertNull.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertNull(actualValue) {
-    return {
-        pass: (actualValue) === null,
-        message: 'expect null, actualValue is ' + (actualValue)
-    };
-}
-
-export default assertNull;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js
deleted file mode 100644
index 6e68c0e2..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPosUnlimited.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-* Copyright (c) 2022 Huawei Device Co., Ltd.
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*     http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-function assertPosUnlimited(actualValue) {
-    return {
-        pass: actualValue === Number.POSITIVE_INFINITY,
-        message: 'Expected actualValue is POSITIVE_INFINITY.  actualValue is,' + actualValue
-    };
-}
-
-export default assertPosUnlimited;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js
deleted file mode 100644
index 7e2ca2ce..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsPending.js
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import isPromiseLike from './isPromiseLike';
-
-function assertPromiseIsPending(actualPromise) {
-    if (!isPromiseLike(actualPromise)) {
-        return Promise.reject().then(function () {
-        }, function () {
-            return {pass: false, message: 'Expected not be called on a promise.'};
-        });
-    }
-    const helper = {};
-    return Promise.race([actualPromise, Promise.resolve(helper)]).then(
-        function (got) {
-            return helper === got ? {pass: true, message: 'actualValue is isPending'}
-                : {
-                    pass: false,
-                    message: 'expect isPending, actualValue is resolve'
-                };
-        },
-        function () {
-            return {
-                pass: false
-                , message: 'expect isPending, actualValue is reject'
-            };
-        });
-}
-
-export default assertPromiseIsPending;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js
deleted file mode 100644
index eb8e65c7..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejected.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import isPromiseLike from './isPromiseLike';
-
-function assertPromiseIsRejected(actualPromise) {
-    if (!isPromiseLike(actualPromise)) {
-        return Promise.reject().then(function () {
-        }, function () {
-            return {pass: false, message: 'Expected not be called on a promise.'};
-        });
-    }
-    const helper = {};
-    return Promise.race([actualPromise, Promise.resolve(helper)]).then(
-        function (got) {
-            return {
-                pass: false,
-                message: 'expect isRejected, but actualValue is '
-                    + (helper === got ? 'isPending' : 'resolve')
-            };
-        },
-        function () {
-            return {pass: true, message: 'actualValue is isRejected'};
-        }
-    );
-}
-
-export default assertPromiseIsRejected;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js
deleted file mode 100644
index 48eaf785..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWith.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import isPromiseLike from './isPromiseLike';
-
-function assertPromiseIsRejectedWith(actualPromise, expectedValue) {
-
-    if (!isPromiseLike(actualPromise)) {
-        return Promise.reject().then(function () {
-        }, function () {
-            return {pass: false, message: 'Expected not be called on a promise.'};
-        });
-    }
-
-    function tips(passed) {
-        return ('Expected a promise ' + (passed ? 'not ' : '') +
-            'to be rejected with ' + JSON.stringify(expectedValue[0]));
-    }
-
-    const helper = {};
-    return Promise.race([actualPromise, Promise.resolve(helper)]).then(
-        function (got) {
-            return {
-                pass: false,
-                message: tips(false) + ' but actualValue is '
-                    + (helper === got ? 'isPending' : 'resolve')
-            };
-        },
-        function (actualValue) {
-            if (JSON.stringify(actualValue) == JSON.stringify(expectedValue[0])) {
-                return {
-                    pass: true,
-                    message: 'actualValue was rejected with ' + JSON.stringify(actualValue) + '.'
-                };
-            } else {
-                return {
-                    pass: false,
-                    message: tips(false) + ' but it was rejected with ' + JSON.stringify(actualValue) + '.'
-                };
-            }
-        }
-    );
-}
-
-export default assertPromiseIsRejectedWith;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js
deleted file mode 100644
index 334a3d39..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsRejectedWithError.js
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import isPromiseLike from './isPromiseLike';
-
-function assertPromiseIsRejectedWithError(actualPromise, expectedValue) {
-    if (!isPromiseLike(actualPromise)) {
-        return Promise.reject().then(function () {
-        }, function () {
-            return {pass: false, message: 'Expected not be called on a promise.'};
-        });
-    }
-    const helper = {};
-    return Promise.race([actualPromise, Promise.resolve(helper)]).then(
-        function (got) {
-            return {
-                pass: false,
-                message: 'Expected a promise to be rejected but actualValue is '
-                    + (helper === got ? 'isPending' : 'resolve')
-            };
-        },
-        function (actualValue) {
-            return matchError(actualValue, expectedValue);
-        }
-    );
-
-}
-
-function matchError(actualValue, expectedValue) {
-    if (expectedValue.length == 1 && typeof expectedValue[0] === 'function') {
-        if (expectedValue[0].name === actualValue.__proto__.name) {
-            return {pass: true, message: 'actual error type is ' + actualValue.name + '.'};
-        }
-        return {
-            pass: false,
-            message: 'except error type is ' + expectedValue[0].name + ',but actual is ' + actualValue.name + '.'
-        };
-    }
-
-    if (expectedValue.length == 1 && typeof expectedValue[0] === 'string') {
-        if (expectedValue[0] === actualValue.message) {
-            return {pass: true, message: 'actual error message is ' + actualValue.message + '.'};
-        }
-        return {
-            pass: false,
-            message: 'except error message ' + expectedValue[0] + ',but actual is ' + actualValue.message + '.'
-        };
-    }
-
-    if (expectedValue.length == 1) {
-        return {
-            pass: false,
-            message: 'When only one parameter, it ' +
-                'should be error type or error message.'
-        };
-    }
-
-    if (expectedValue.length == 2 && typeof expectedValue[0] === 'function' && expectedValue[0].name === actualValue.name) {
-        if (typeof expectedValue[1] === 'string' && actualValue.message === expectedValue[1]) {
-            return {pass: true, message: 'actual error message is ' + actualValue.message + '.'};
-        } else {
-            return {
-                pass: false,
-                message: 'except error message is ' + expectedValue[1] + ',but actual is ' + actualValue.message + '.'
-            };
-        }
-    }
-
-    if (expectedValue.length == 2 && typeof expectedValue[0] === 'function' && expectedValue[0].name !== actualValue.name) {
-        if (typeof expectedValue[1] === 'string' && actualValue.message === expectedValue[1]) {
-            return {
-                pass: false,
-                message: 'except error type is ' + expectedValue[0].name + ',but actual is ' + actualValue.name + '.'
-            };
-        } else {
-            return {
-                pass: false,
-                message: 'except error type and message are incorrect.'
-            };
-        }
-    }
-
-    if (expectedValue.length > 2) {
-        return {
-            pass: false,
-            message: 'Up to two parameters are supported.'
-        };
-    }
-}
-
-export default assertPromiseIsRejectedWithError;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js
deleted file mode 100644
index 855426ca..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolved.js
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import isPromiseLike from './isPromiseLike';
-
-function assertPromiseIsResolved(actualPromise) {
-    if (!isPromiseLike(actualPromise)) {
-        return Promise.reject().then(function () {
-        }, function () {
-            return {pass: false, message: 'Expected not be called on a promise.'};
-        });
-    }
-
-    const helper = {};
-    return Promise.race([actualPromise, Promise.resolve(helper)]).then(
-        function (got) {
-            return helper === got ? {
-                pass: false,
-                message: 'expect resolve, actualValue is isPending'
-            }
-                : {pass: true, message: 'actualValue is isResolved'};
-        },
-        function (rej) {
-            return {
-                pass: false,
-                message: 'Expected a promise to be resolved but it was ' +
-                    'rejected with ' + JSON.stringify(rej) + '.'
-            };
-        }
-    );
-}
-
-export default assertPromiseIsResolved;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js
deleted file mode 100644
index d5eb01e3..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertPromiseIsResolvedWith.js
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import isPromiseLike from './isPromiseLike';
-
-function assertPromiseIsResolvedWith(actualPromise, expectedValue) {
-    if (!isPromiseLike(actualPromise)) {
-        return Promise.reject().then(function () {
-        }, function () {
-            return {pass: false, message: 'Expected not be called on a promise.'};
-        });
-    }
-
-    function tips(passed) {
-        return (
-            'Expected a promise ' + (passed ? 'not ' : '') +
-            'to be resolved with ' + JSON.stringify(expectedValue[0]));
-    }
-
-    const helper = {};
-    return Promise.race([actualPromise, Promise.resolve(helper)]).then(
-        function (got) {
-            if (helper === got) {
-                return {pass: false, message: 'expect resolve, actualValue is isPending'};
-            }
-            if (JSON.stringify(got) == JSON.stringify(expectedValue[0])) {
-                return {
-                    pass: true,
-                    message: 'actualValue was resolved with ' + JSON.stringify(got) + '.'
-                };
-            }
-            return {
-                pass: false,
-                message: tips(false) + ' but it was resolved with ' +
-                    JSON.stringify(got) + '.'
-            };
-        },
-        function (rej) {
-            return {
-                pass: false,
-                message: tips(false) + ' but it was rejected with ' + JSON.stringify(rej) + '.'
-            };
-        }
-    );
-}
-
-export default assertPromiseIsResolvedWith;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js
deleted file mode 100644
index 749cab0d..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertThrowError.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertThrowError(actualValue, expected) {
-    let result = false;
-    let err;
-    if (typeof actualValue !== 'function') {
-        throw new Error('actualValue is not a function');
-    }
-    try {
-        actualValue();
-        return {
-            pass: result,
-            message: ' An error is not thrown while it is expected!'
-        };
-    } catch (e) {
-        err = e;
-    }
-
-    if (err instanceof Error) {
-        console.log(err.message);
-        if (err.message == expected[0]) {
-            result = true;
-        }
-    }
-    return {
-        pass: result,
-        message: 'expected throw failed , ' + err.message + ' is not ' + expected[0]
-    };
-}
-
-export default assertThrowError;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js
deleted file mode 100644
index 61f092d7..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/assertUndefined.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function assertUndefined(actualValue) {
-    return {
-        pass: undefined === (actualValue),
-        message: 'expect Undefined, actualValue is ' + (actualValue)
-    };
-}
-
-export default assertUndefined;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js
deleted file mode 100644
index b0be6674..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/DeepTypeUtils.js
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-class DeepTypeUtils {
-    static getType_(value) {
-       return Object.prototype.toString.apply(value);
-   }
-    static isA_(typeName, value) {
-        return this.getType_(value) === '[object ' + typeName + ']';
-    }
-    static isAsymmetricEqualityTester_(obj) {
-        return obj ? this.isA_('Function', obj.asymmetricMatch) : false;
-    }
-
-    /**
-     * 是否是function
-     * @param value
-     */
-    static isFunction_(value) {
-        return this.isA_('Function', value);
-    }
-
-    /**
-     * 是否是undefined
-     * @param obj
-     */
-    static isUndefined(obj) {
-        return obj === void 0;
-    }
-
-    /**
-     * 是否是Node
-     * @param obj
-     */
-    static isDomNode(obj) {
-        return obj !== null &&
-              typeof obj === 'object' &&
-              typeof obj.nodeType === 'number' &&
-              typeof obj.nodeName === 'string';
-    }
-
-    /**
-     * 是否是promise对象
-     * @param obj
-     */
-    static isPromise (obj) {
-        return !!obj && obj.constructor === Promise;
-  };
-    /**
-     *  是否是map对象
-     * @param obj
-     */
-    static isMap(obj) {
-        return (
-            obj !== null &&
-            typeof obj !== 'undefined' &&
-            obj.constructor === Map
-        );
-    }
-
-    /**
-     * 是否是set对象
-     * @param obj 对象
-     */
-    static isSet(obj) {
-        return (
-            obj !== null &&
-            typeof obj !== 'undefined' &&
-            obj.constructor === Set
-        );
-    }
-
-    /**
-     * 对象是否有key属性
-     * @param obj 对象
-     * @param key 对象属性名称
-     */
-    static has(obj, key) {
-        return Object.prototype.hasOwnProperty.call(obj, key);
-    }
-
-    /**
-     * 获取对象的自有属性
-     * @param obj 对象
-     * @param isArray 是否是数组,[object Array]
-     */
-    static keys(obj, isArray) {
-     const extraKeys = [];
-        // 获取对象所有属性
-     const  allKeys = this.getAllKeys(obj);
-        if (!isArray) {
-            return allKeys;
-        }
-        if (allKeys.length === 0) {
-            return allKeys;
-        }
-        for (const k of allKeys) {
-            if (typeof k === 'symbol' || !/^[0-9]+$/.test(k)) {
-                extraKeys.push(k);
-            }
-        }
-        return extraKeys;
-    }
-
-    /**
-     * 获取obj对象的所有属性
-     * @param obj obj对象
-     */
-    static getAllKeys(obj) {
-        const keys = [];
-        for (let key in obj) {
-            if(this.has(obj, key)) {
-                keys.push(key);
-            }
-        }
-        const symbols = Object.getOwnPropertySymbols(obj);
-        for (const sym of symbols) {
-            if (obj.propertyIsEnumerable(sym)) {
-                keys.push(sym);
-            }
-        }
-        return keys;
-    }
-
-}
-export default DeepTypeUtils;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js
deleted file mode 100644
index 4d991b48..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/deepEquals/assertDeepEquals.js
+++ /dev/null
@@ -1,311 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import DeepTypeUtils from './DeepTypeUtils'
-function assertDeepEquals(actualValue, expected) {
-    console.log('actualValue:' + actualValue + ',expected:' + expected[0]);
-    let result = eq(actualValue, expected[0],[], [])
-    let msg = logMsg(actualValue, expected[0]);
-    return {
-        pass: result,
-        message: msg
-    };
-}
-
-/**
- * 获取失败显示日志
- * @param actualValue 实际对象
- * @param expected 期待比较对象
- */
-function logMsg(actualValue, expected) {
-    // 获取a的对象名称
-    const aClassName = Object.prototype.toString.call(actualValue);
-    const bClassName = Object.prototype.toString.call(expected);
-    let actualMsg;
-    let expectMsg;
-    if(aClassName == "[object Function]") {
-        actualMsg = "actualValue Function"
-    }else if(aClassName == "[object Promise]") {
-        actualMsg = "actualValue Promise"
-    }else if(aClassName == "[object Set]" || aClassName == "[object Map]") {
-        actualMsg = JSON.stringify(Array.from(actualValue));;
-    }else if(aClassName == "[object RegExp]") {
-        actualMsg = JSON.stringify(actualValue.source.replace("\\",""));;
-    }
-    else{
-        actualMsg = JSON.stringify(actualValue);
-    }
-    if(bClassName == "[object Function]") {
-        expectMsg = "expected Function"
-    }else if(bClassName == "[object Promise]") {
-        expectMsg = "expected Promise"
-    }else if(aClassName == "[object Set]" || bClassName == "[object Map]") {
-        expectMsg = JSON.stringify(Array.from(expected));
-    }else if(aClassName == "[object RegExp]") {
-        expectMsg = JSON.stringify(expected.source.replace("\\",""));;
-    }
-    else{
-        expectMsg = JSON.stringify(expected);
-    }
-    return actualMsg + " is not deep equal " + expectMsg;
-}
-
-function eq(a, b, aStack, bStack) {
-    let result = true;
-    console.log('a is:' + a + ',b is:' + b);
-    const asymmetricResult = asymmetricMatch_(a,b);
-    if (!DeepTypeUtils.isUndefined(asymmetricResult)) {
-        return asymmetricResult;
-    }
-
-    if (a instanceof Error && b instanceof Error) {
-        result = a.message == b.message;
-        return result;
-    }
-
-    if (a === b) {
-        result = a !== 0 || 1 / a == 1 / b;
-        return result;
-    }
-
-    if (a === null || b === null) {
-        result = a === b;
-        return result;
-    }
-    // 获取a的对象名称
-    const aClassName = Object.prototype.toString.call(a);
-    const bClassName = Object.prototype.toString.call(b);
-    console.log('aClassName is:' + aClassName);
-    console.log('bClassName is:' + bClassName);
-    // 不同类型不同对象
-    if (aClassName != bClassName) {
-        return false;
-    }
-    // 俩个string对象
-    if(aClassName === '[object String]') {
-        result = a == String(b);
-        return result;
-    }
-    // 俩个Number对象
-    if(aClassName === '[object Number]') {
-        result = a != +a ? b != +b : a === 0 && b === 0 ? 1 / a == 1 / b : a == +b;
-        return result;
-    }
-
-    if(aClassName === '[object Date]' || aClassName === '[object Boolean]') {
-        result = +a == +b;
-        return result;
-    }
-
-    // 数组
-    if(aClassName === '[object ArrayBuffer]') {
-        return eq(new Uint8Array(a), new Uint8Array(b), aStack, bStack);
-    }
-
-    // 正则表达式
-    if(aClassName === '[object RegExp]') {
-        return (
-            a.source == b.source &&
-            a.global == b.global &&
-            a.multiline == b.multiline &&
-            a.ignoreCase == b.ignoreCase
-        );
-    }
-
-    if (typeof a != 'object' || typeof b != 'object') {
-        return false;
-    }
-
-    const aIsDomNode = DeepTypeUtils.isDomNode(a);
-    const bIsDomNode = DeepTypeUtils.isDomNode(b);
-    if (aIsDomNode && bIsDomNode) {
-        // At first try to use DOM3 method isEqualNode
-        result = a.isEqualNode(b);
-        return result;
-    }
-    if (aIsDomNode || bIsDomNode) {
-        return false;
-    }
-    const aIsPromise = DeepTypeUtils.isPromise(a);
-    const bIsPromise = DeepTypeUtils.isPromise(b);
-    if (aIsPromise && bIsPromise) {
-        return a === b;
-    }
-    let length = aStack.length;
-    while (length--) {
-        if (aStack[length] == a) {
-            return bStack[length] == b;
-        }
-    }
-    aStack.push(a);
-    bStack.push(b);
-    let size = 0;
-
-    // 都是数组
-    if(aClassName == '[object Array]') {
-        const aLength = a.length;
-        const bLength = b.length;
-        if (aLength !== bLength) {
-            // 数组长度不同，不是同一个对象
-            return false;
-            }
-        for (let i = 0; i < aLength || i < bLength; i++) {
-            // 递归每一个元素是否相同
-            result = eq(i < aLength ? a[i] : void 0, i < bLength ? b[i] : void 0, aStack, bStack) && result;
-        }
-        if (!result) {
-            return false;
-        }
-    } else if(DeepTypeUtils.isMap(a) && DeepTypeUtils.isMap(b)) {
-        if (a.size != b.size) {
-            return false;
-        }
-        const keysA = [];
-        const keysB = [];
-        a.forEach(function(valueA, keyA) {
-            keysA.push(keyA);
-        });
-        b.forEach(function(valueB, keyB) {
-            keysB.push(keyB);
-        });
-        const mapKeys = [keysA, keysB];
-        const cmpKeys = [keysB, keysA];
-        for (let i = 0; result && i < mapKeys.length; i++) {
-            const mapIter = mapKeys[i];
-            const cmpIter = cmpKeys[i];
-
-            for (let j = 0; result && j < mapIter.length; j++) {
-                const mapKey = mapIter[j];
-                const cmpKey = cmpIter[j];
-                const mapValueA = a.get(mapKey);
-                let mapValueB;
-                if (
-                DeepTypeUtils.isAsymmetricEqualityTester_(mapKey) ||
-                (DeepTypeUtils.isAsymmetricEqualityTester_(cmpKey) &&
-                eq(mapKey, cmpKey))
-                ) {
-                    mapValueB = b.get(cmpKey);
-                } else {
-                    mapValueB = b.get(mapKey);
-                }
-                result = eq(mapValueA, mapValueB, aStack, bStack);
-            }
-        }
-        if (!result) {
-            return false;
-        }
-    } else if(DeepTypeUtils.isSet(a) && DeepTypeUtils.isSet(b)) {
-        if (a.size != b.size) {
-            return false;
-        }
-        const valuesA = [];
-        a.forEach(function(valueA) {
-            valuesA.push(valueA);
-        });
-        const valuesB = [];
-        b.forEach(function(valueB) {
-            valuesB.push(valueB);
-        });
-        const setPairs = [[valuesA, valuesB], [valuesB, valuesA]];
-       const stackPairs = [[aStack, bStack], [bStack, aStack]];
-        for (let i = 0; result && i < setPairs.length; i++) {
-            const baseValues = setPairs[i][0];
-            const otherValues = setPairs[i][1];
-            const baseStack = stackPairs[i][0];
-            const otherStack = stackPairs[i][1];
-            for (const baseValue of baseValues) {
-                let found = false;
-                for (let j = 0; !found && j < otherValues.length; j++) {
-                    const otherValue = otherValues[j];
-                    const prevStackSize = baseStack.length;
-                    // 深度比较对象
-                    found = eq(baseValue, otherValue, baseStack, otherStack);
-                    if (!found && prevStackSize !== baseStack.length) {
-                        baseStack.splice(prevStackSize);
-                        otherStack.splice(prevStackSize);
-                    }
-                }
-                result = result && found;
-            }
-        }
-        if (!result) {
-            return false;
-        }
-    } else {
-        const aCtor = a.constructor,
-            bCtor = b.constructor;
-        if (
-        aCtor !== bCtor &&
-        DeepTypeUtils.isFunction_(aCtor) &&
-        DeepTypeUtils.isFunction_(bCtor) &&
-        a instanceof aCtor &&
-        b instanceof bCtor &&
-        !(aCtor instanceof aCtor && bCtor instanceof bCtor)
-        ) {
-            return false;
-        }
-    }
-
-    // 获取对象所有的属性集合
-    const aKeys = DeepTypeUtils.keys(a, aClassName == '[object Array]');
-    size = aKeys.length;
-
-    // 俩个对象属性长度不一致， 俩对象不相同
-    if (DeepTypeUtils.keys(b, bClassName == '[object Array]').length !== size) {
-        return false;
-    }
-
-    // 俩对象属性数量相同， 递归比较每个属性值得值
-    for (const key of aKeys) {
-        console.log('key is:' + key);
-        // b 没有 key 属性
-        if(!DeepTypeUtils.has(b, key)) {
-            result = false;
-            continue;
-        }
-        if (!eq(a[key], b[key], aStack, bStack)) {
-            result = false;
-        }
-    }
-    if (!result) {
-        return false;
-    }
-    aStack.pop();
-    bStack.pop();
-    return result;
-}
-
-function asymmetricMatch_(a, b) {
-    const asymmetricA = DeepTypeUtils.isAsymmetricEqualityTester_(a);
-    const asymmetricB = DeepTypeUtils.isAsymmetricEqualityTester_(b);
-
-    if (asymmetricA === asymmetricB) {
-        return undefined;
-    }
-
-}
-
-/**
- * 获取对象的自有属性
- *
- * @param obj 对象
- * @param isArray 是否是一个数组
- */
-function keys(obj, isArray) {
-    const keys = [];
-
-}
-
-export default assertDeepEquals;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js
deleted file mode 100644
index 015ab19a..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/assert/isPromiseLike.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-function isPromiseLike(obj) {
-    return !!obj && isFunction_(obj.then);
-}
-
-function isFunction_(value) {
-    return isA_('Function', value);
-}
-
-function isA_(typeName, value) {
-    return getType_(value) === '[object ' + typeName + ']';
-}
-
-function getType_(value) {
-    return Object.prototype.toString.apply(value);
-}
-
-export default isPromiseLike;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js
deleted file mode 100644
index 639dffc9..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/config/DataDriver.js
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-const SUITES_KEY = 'suites';
-const SPECS_KEY = 'items';
-const DESCRIBE_KEY = 'describe';
-const IT_KEY = 'it';
-const PARAMS_KEY = 'params';
-const STRESS_KEY = 'stress';
-
-class ObjectUtils {
-    static get(object, name, defaultValue) {
-        let result = defaultValue;
-        for (const key in object) {
-            if (key === name) {
-                return object[key];
-            }
-        }
-        return result;
-    }
-
-    static has(object, key) {
-        return Object.prototype.hasOwnProperty.call(object, key);
-    }
-}
-
-class DataDriver {
-    constructor(attr) {
-        this.id = 'dataDriver';
-        this.data = attr.data || {};
-    }
-
-    init(coreContext) {
-        this.coreContext = coreContext;
-        this.suiteService = this.coreContext.getDefaultService('suite');
-        this.specService = this.coreContext.getDefaultService('spec');
-    }
-
-    getSpecParams() {
-        let specParams = [];
-        let suiteDesc = this.suiteService.getCurrentRunningSuite().description;
-        let specDesc = this.specService.getCurrentRunningSpec().description;
-        let suites = ObjectUtils.get(this.data, SUITES_KEY, []);
-        for (const suiteItem of suites) {
-            let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, '');
-            if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) {
-                let specs = ObjectUtils.get(suiteItem, SPECS_KEY, []);
-                for (const specItem of specs) {
-                    if (ObjectUtils.has(specItem, IT_KEY) && ObjectUtils.get(specItem, IT_KEY) === specDesc) {
-                        return ObjectUtils.get(specItem, PARAMS_KEY, specParams);
-                    }
-                }
-            }
-        }
-        return specParams;
-    }
-
-    getSuiteParams() {
-        let suiteParams = {};
-        let suiteDesc = this.suiteService.getCurrentRunningSuite().description;
-        let suites = ObjectUtils.get(this.data, SUITES_KEY, []);
-        for (const suiteItem of suites) {
-            let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, []);
-            if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) {
-                suiteParams = Object.assign({}, suiteParams, ObjectUtils.get(suiteItem, PARAMS_KEY, suiteParams));
-            }
-        }
-        return suiteParams;
-    }
-
-    getSpecStress(specDesc) {
-        let stress = 1;
-        let suiteDesc = this.suiteService.getCurrentRunningSuite().description;
-        let suites = ObjectUtils.get(this.data, SUITES_KEY, []);
-        for (const suiteItem of suites) {
-            let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, '');
-            if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) {
-                let specs = ObjectUtils.get(suiteItem, SPECS_KEY, []);
-                for (const specItem of specs) {
-                    if (ObjectUtils.has(specItem, IT_KEY) && ObjectUtils.get(specItem, IT_KEY) === specDesc) {
-                        let tempStress = ObjectUtils.get(specItem, STRESS_KEY, stress);
-                        return (Number.isInteger(tempStress) && tempStress >= 1) ? tempStress : stress;
-                    }
-                }
-            }
-        }
-        return stress;
-    }
-
-    getSuiteStress(suiteDesc) {
-        let stress = 1;
-        let suites = ObjectUtils.get(this.data, SUITES_KEY, []);
-        for (const suiteItem of suites) {
-            let describeValue = ObjectUtils.get(suiteItem, DESCRIBE_KEY, []);
-            if (ObjectUtils.has(suiteItem, DESCRIBE_KEY) && (typeof describeValue === 'object') && describeValue.constructor === Array && describeValue.includes(suiteDesc)) {
-                let tempStress = ObjectUtils.get(suiteItem, STRESS_KEY, stress);
-                return (Number.isInteger(tempStress) && tempStress >= 1) ? tempStress : stress;
-            }
-        }
-        return stress;
-    }
-}
-
-export default DataDriver;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/config/Filter.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/config/Filter.js
deleted file mode 100644
index 0ca3b4f4..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/config/Filter.js
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-class ClassFilter {
-    constructor(suiteName, itName, params) {
-        this.suiteName = suiteName;
-        this.itName = itName;
-        this.params = params;
-    }
-
-    filterSuite() {
-        return !this.params.split(',').map(item => item.split('#')[0]).map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false);
-    }
-
-    filterIt() {
-        let classArray = this.params.split(',') || [];
-        let suiteFilterResult = classArray.filter(item => !item.includes('#')).map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false);
-        let itFilterResult = classArray.filter(item => item.includes('#')).map(item => item == (this.suiteName + '#' + this.itName)).reduce((pre, cur) => pre || cur, false);
-        return !(suiteFilterResult || itFilterResult);
-    }
-}
-
-class NotClassFilter {
-    constructor(suiteName, itName, params) {
-        this.suiteName = suiteName;
-        this.itName = itName;
-        this.params = params;
-    }
-
-    filterSuite() {
-        return this.params.split(',').map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false);
-    }
-
-    filterIt() {
-        return this.params.split(',').some(item => item == (this.suiteName + '#' + this.itName));
-    }
-}
-
-class SuiteAndItNameFilter {
-    constructor(suiteName, itName, params) {
-        this.suiteName = suiteName;
-        this.itName = itName;
-        this.params = params;
-    }
-
-    filterSuite() {
-        return !this.params.split(',').map(item => item == this.suiteName).reduce((pre, cur) => pre || cur, false);
-    }
-
-    filterIt() {
-        return !this.params.split(',').map(item => item == this.itName).reduce((pre, cur) => pre || cur, false);
-    }
-}
-
-
-class TestTypesFilter {
-    constructor(suiteName, itName, fi, params) {
-        this.suiteName = suiteName;
-        this.itName = itName;
-        this.params = params;
-        this.fi = fi;
-    }
-
-    filterIt() {
-        return !((this.params === (this.fi & this.params)) || this.fi === 0);
-    }
-}
-
-export {ClassFilter, NotClassFilter, SuiteAndItNameFilter, TestTypesFilter};
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/config/configService.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/config/configService.js
deleted file mode 100644
index 745f137e..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/config/configService.js
+++ /dev/null
@@ -1,292 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import {ClassFilter, NotClassFilter, SuiteAndItNameFilter, TestTypesFilter} from './Filter';
-const STRESS_RULE = /^[1-9]\d*$/;
-
-class ConfigService {
-    constructor(attr) {
-        this.id = attr.id;
-        this.supportAsync = false;
-        this.random = false;
-        this.filterValid = [];
-        this.filter = 0;
-        this.flag = false;
-        this.suite = null;
-        this.itName = null;
-        this.testType = null;
-        this.level = null;
-        this.size = null;
-        this.class = null;
-        this.notClass = null;
-        this.timeout = null;
-        // 遇错即停模式配置
-        this.breakOnError = false;
-        // 压力测试配置
-        this.stress = null;
-    }
-
-    init(coreContext) {
-        this.coreContext = coreContext;
-    }
-
-    isNormalInteger(str) {
-        const n = Math.floor(Number(str));
-        return n !== Infinity && String(n) === String(str) && n >= 0;
-    }
-
-    getStress() {
-        if (this.stress === undefined || this.stress === '' || this.stress === null) {
-            return 1;
-        }
-        return !this.stress.match(STRESS_RULE) ? 1 : Number.parseInt(this.stress);
-    }
-
-    basicParamValidCheck(params) {
-        let size = params.size;
-        if (size !== undefined && size !== '' && size !== null) {
-            let sizeArray = ['small', 'medium', 'large'];
-            if (sizeArray.indexOf(size) === -1) {
-                this.filterValid.push('size:' + size);
-            }
-        }
-        let level = params.level;
-        if (level !== undefined && level !== '' && level !== null) {
-            let levelArray = ['0', '1', '2', '3', '4'];
-            if (levelArray.indexOf(level) === -1) {
-                this.filterValid.push('level:' + level);
-            }
-        }
-        let testType = params.testType;
-        if (testType !== undefined && testType !== '' && testType !== null) {
-            let testTypeArray = ['function', 'performance', 'power', 'reliability', 'security',
-                'global', 'compatibility', 'user', 'standard', 'safety', 'resilience'];
-            if (testTypeArray.indexOf(testType) === -1) {
-                this.filterValid.push('testType:' + testType);
-            }
-        }
-    }
-
-    filterParamValidCheck(params) {
-        let timeout = params.timeout;
-        if (timeout !== undefined && timeout !== '' && timeout !== null) {
-            if (!this.isNormalInteger(timeout)) {
-                this.filterValid.push('timeout:' + timeout);
-            }
-        }
-
-        let paramKeys = ['dryRun', 'random', 'breakOnError', 'coverage'];
-        for (const key of paramKeys) {
-            if (params[key] !== undefined && params[key] !== 'true' && params[key] !== 'false') {
-                this.filterValid.push(`${key}:${params[key]}`);
-            }
-        }
-
-        // 压力测试参数验证,正整数
-        if (params.stress !== undefined && params.stress !== '' && params.stress !== null) {
-            if (!params.stress.match(STRESS_RULE)) {
-                this.filterValid.push('stress:' + params.stress);
-            }
-        }
-
-        let nameRule = /^[A-Za-z]{1}[\w#,.]*$/;
-        let paramClassKeys = ['class', 'notClass'];
-        for (const key of paramClassKeys) {
-            if (params[key] !== undefined && params[key] !== '' && params[key] !== null) {
-                let classArray = params[key].split(',');
-                classArray.forEach(item => !item.match(nameRule) ? this.filterValid.push(`${key}:${params[key]}`) : null);
-            }
-        }
-    }
-
-    setConfig(params) {
-        this.basicParamValidCheck(params);
-        this.filterParamValidCheck(params);
-        try {
-            this.class = params.class;
-            this.notClass = params.notClass;
-            this.flag = params.flag || {flag: false};
-            this.suite = params.suite;
-            this.itName = params.itName;
-            this.filter = params.filter;
-            this.testType = params.testType;
-            this.level = params.level;
-            this.size = params.size;
-            this.timeout = params.timeout;
-            this.dryRun = params.dryRun;
-            this.breakOnError = params.breakOnError;
-            this.random = params.random === 'true' ? true : false;
-            this.stress = params.stress;
-            this.coverage = params.coverage;
-            this.filterParam = {
-                testType: {
-                    'function': 1,
-                    'performance': 1 << 1,
-                    'power': 1 << 2,
-                    'reliability': 1 << 3,
-                    'security': 1 << 4,
-                    'global': 1 << 5,
-                    'compatibility': 1 << 6,
-                    'user': 1 << 7,
-                    'standard': 1 << 8,
-                    'safety': 1 << 9,
-                    'resilience': 1 << 10,
-                },
-                level: {
-                    '0': 1 << 24,
-                    '1': 1 << 25,
-                    '2': 1 << 26,
-                    '3': 1 << 27,
-                    '4': 1 << 28,
-                },
-                size: {
-                    'small': 1 << 16,
-                    'medium': 1 << 17,
-                    'large': 1 << 18,
-                }
-            };
-            this.parseParams();
-        } catch (err) {
-            console.info('setConfig error: ' + err.message);
-        }
-    }
-
-    parseParams() {
-        if (this.filter != null) {
-            return;
-        }
-        let testTypeFilter = 0;
-        let sizeFilter = 0;
-        let levelFilter = 0;
-        if (this.testType != null) {
-            testTypeFilter = this.testType.split(',')
-                .map(item => this.filterParam.testType[item] || 0)
-                .reduce((pre, cur) => pre | cur, 0);
-        }
-        if (this.level != null) {
-            levelFilter = this.level.split(',')
-                .map(item => this.filterParam.level[item] || 0)
-                .reduce((pre, cur) => pre | cur, 0);
-        }
-        if (this.size != null) {
-            sizeFilter = this.size.split(',')
-                .map(item => this.filterParam.size[item] || 0)
-                .reduce((pre, cur) => pre | cur, 0);
-        }
-        this.filter = testTypeFilter | sizeFilter | levelFilter;
-        console.info('filter params:' + this.filter);
-    }
-
-    isCurrentSuite(description) {
-        if (this.suite !== undefined && this.suite !== '' && this.suite !== null) {
-            let suiteArray = this.suite.split(',');
-            return suiteArray.indexOf(description) !== -1;
-        }
-        return false;
-    }
-
-    filterSuite(currentSuiteName) {
-        let filterArray = [];
-        if (this.suite !== undefined && this.suite !== '' && this.suite !== null) {
-            filterArray.push(new SuiteAndItNameFilter(currentSuiteName, '', this.suite));
-        }
-        if (this.class !== undefined && this.class !== '' && this.class !== null) {
-            filterArray.push(new ClassFilter(currentSuiteName, '', this.class));
-        }
-        if (this.notClass !== undefined && this.notClass !== '' && this.notClass !== null) {
-            filterArray.push(new NotClassFilter(currentSuiteName, '', this.notClass));
-        }
-
-        let result = filterArray.map(item => item.filterSuite()).reduce((pre, cur) => pre || cur, false);
-        return result;
-    }
-
-    filterDesc(currentSuiteName, desc, fi, coreContext) {
-        let filterArray = [];
-        if (this.itName !== undefined && this.itName !== '' && this.itName !== null) {
-            filterArray.push(new SuiteAndItNameFilter(currentSuiteName, desc, this.itName));
-        }
-        if (this.class !== undefined && this.class !== '' && this.class !== null) {
-            filterArray.push(new ClassFilter(currentSuiteName, desc, this.class));
-        }
-        if (this.notClass !== undefined && this.notClass !== '' && this.notClass !== null) {
-            filterArray.push(new NotClassFilter(currentSuiteName, desc, this.notClass));
-        }
-        if (typeof (this.filter) !== 'undefined' && this.filter !== 0 && fi !== 0) {
-            filterArray.push(new TestTypesFilter('', '', fi, this.filter));
-        }
-        let result = filterArray.map(item => item.filterIt()).reduce((pre, cur) => pre || cur, false);
-        return result;
-    }
-
-    isRandom() {
-        return this.random || false;
-    }
-
-    isBreakOnError() {
-        return this.breakOnError !== 'true' ? false : true;
-    }
-
-    setSupportAsync(value) {
-        this.supportAsync = value;
-    }
-
-    isSupportAsync() {
-        return this.supportAsync;
-    }
-
-    translateParams(parameters) {
-        const keySet = new Set([
-            '-s class', '-s notClass', '-s suite', '-s itName',
-            '-s level', '-s testType', '-s size', '-s timeout',
-            '-s dryRun', '-s random', '-s breakOnError', '-s stress',
-            '-s coverage', 'class', 'notClass', 'suite', 'itName',
-            'level', 'testType', 'size', 'timeout', 'dryRun', 'random',
-            'breakOnError', 'stress', 'coverage'
-        ]);
-        let targetParams = {};
-        for (const key in parameters) {
-            if (keySet.has(key)) {
-                var newKey = key.replace("-s ", "");
-                targetParams[newKey] = parameters[key];
-            }
-        }
-        return targetParams;
-    }
-    translateParamsToString(parameters) {
-        const keySet = new Set([
-            '-s class', '-s notClass', '-s suite', '-s itName',
-            '-s level', '-s testType', '-s size', '-s timeout',
-            '-s dryRun', '-s random', '-s breakOnError', '-s stress',
-            '-s coverage','class', 'notClass', 'suite', 'itName',
-            'level', 'testType', 'size', 'timeout', 'dryRun', 'random',
-            'breakOnError', 'stress', 'coverage'
-        ]);
-        let targetParams = '';
-        for (const key in parameters) {
-            if (keySet.has(key)) {
-                targetParams += ' ' + key + ' ' + parameters[key];
-            }
-        }
-        return targetParams.trim();
-    }
-
-    execute() {
-    }
-}
-
-export {
-    ConfigService
-};
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js
deleted file mode 100644
index 4707dea3..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/coverage/coverageCollect.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright (c) 2023 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import SysTestKit from "../kit/SysTestKit";
-
-export async function collectCoverageData() {
-    if (globalThis.__coverage__ === undefined) {
-        return;
-    }
-    const strJson = JSON.stringify(globalThis.__coverage__);
-    const strLen = strJson.length;
-    const maxLen = 500;
-    const maxCount = Math.floor(strLen / maxLen);
-    const OHOS_REPORT_COVERAGE_DATA = 'OHOS_REPORT_COVERAGE_DATA:';
-    for (let count = 0; count <= maxCount; count++) {
-        await SysTestKit.print(`${OHOS_REPORT_COVERAGE_DATA} ${strJson.substring(count * maxLen, (count + 1) * maxLen)}`);
-    }
-}
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js
deleted file mode 100644
index d73d46d9..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/kit/SysTestKit.js
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-class SysTestKit {
-
-    static delegator = null;
-    static systemTime = null;
-
-    constructor() {
-        this.id = 'sysTestKit';
-        this.index = 0;
-    }
-
-    static actionStart(tag) {
-        console.info(JSON.stringify(tag));
-        var message = '\n' + 'OHOS_REPORT_ACTIONSTART: ' + JSON.stringify(tag) + '\n';
-        SysTestKit.print(message);
-        console.info(tag + ' actionStart print success');
-    }
-
-    static actionEnd(tag) {
-        console.info(JSON.stringify(tag));
-        var message = '\n' + 'OHOS_REPORT_ACTIONEND: ' + JSON.stringify(tag) + '\n';
-        SysTestKit.print(message);
-        console.info(tag + ' actionEnd print success');
-    }
-
-    static async existKeyword(keyword, timeout) {
-        let reg = new RegExp(/^[a-zA-Z0-9]{1,}$/)
-        if (!reg.test(keyword)) {
-            throw new Error('keyword must contain more than one string, and only letters and numbers are supported.')
-        }
-        timeout = timeout || 4;
-
-        let searchResult = false;
-        let cmd = 'hilog -x | grep -i \'' + keyword + '\' | wc -l';
-        await executePromise(cmd, timeout).then((data) => {
-            searchResult = data;
-        });
-        return searchResult;
-    }
-    static async print(message) {
-        if ('printSync' in SysTestKit.delegator) {
-            console.debug(`printSync called ...`);
-            SysTestKit.delegator.printSync(message);
-        } else {
-            await SysTestKit.delegator.print(message);
-        }
-    }
-
-    static async getRealTime() {
-        let currentTime = new Date().getTime();
-        if (SysTestKit.systemTime !== null && SysTestKit.systemTime !== undefined) {
-            await SysTestKit.systemTime.getRealTime().then((time) => {
-                console.info(`systemTime.getRealTime success data: ${JSON.stringify(time)}`);
-                currentTime = time;
-            }).catch((error) => {
-                console.error(`failed to systemTime.getRealTime because ${JSON.stringify(error)}`);
-            });
-        }
-        return currentTime;
-    }
-}
-
-function executePromise(cmd, timeout) {
-    return new Promise((resolve, reject) => {
-        SysTestKit.delegator.executeShellCommand(cmd, timeout,
-            (error, data) => {
-                console.info('existKeyword CallBack: err : ' + JSON.stringify(error));
-                console.info('existKeyword CallBack: data : ' + JSON.stringify(data));
-                resolve(parseInt(data.stdResult) > 3 ? true : false);
-            });
-    });
-}
-
-export default SysTestKit;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js
deleted file mode 100644
index 6a9d7aac..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/ArgumentMatchers.js
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-class ArgumentMatchers {
-    ANY = "<any>";
-    ANY_STRING = "<any String>";
-    ANY_BOOLEAN = "<any Boolean>";
-    ANY_NUMBER = "<any Number>";
-    ANY_OBJECT = "<any Object>";
-    ANY_FUNCTION = "<any Function>";
-    MATCH_REGEXS = "<match regexs>";
-
-    static any() {
-    }
-
-    static anyString() {
-    }
-
-    static anyBoolean() {
-    }
-
-    static anyNumber() {
-    }
-
-    static anyObj() {
-    }
-
-    static anyFunction() {
-    }
-
-    static matchRegexs() {
-        let regex = arguments[0];
-        if (ArgumentMatchers.isRegExp(regex)) {
-            return regex;
-        }
-        throw Error("not a regex");
-    }
-
-    static isRegExp(value) {
-        return Object.prototype.toString.call(value) === "[object RegExp]";
-    }
-
-    matcheReturnKey() {
-        let arg = arguments[0];
-        let regex = arguments[1];
-        let stubSetKey = arguments[2];
-
-        if (stubSetKey && stubSetKey == this.ANY) {
-            return this.ANY;
-        }
-
-        if (typeof arg === "string" && !regex) {
-            return this.ANY_STRING;
-        }
-
-        if (typeof arg === "boolean" && !regex) {
-            return this.ANY_BOOLEAN;
-        }
-
-        if (typeof arg === "number" && !regex) {
-            return this.ANY_NUMBER;
-        }
-
-        if (typeof arg === "object" && !regex) {
-            return this.ANY_OBJECT;
-        }
-
-        if (typeof arg === "function" && !regex) {
-            return this.ANY_FUNCTION;
-        }
-
-        if (typeof arg === "string" && regex) {
-            return regex.test(arg);
-        }
-
-        return null;
-    }
-
-    matcheStubKey() {
-        let key = arguments[0];
-
-        if (key === ArgumentMatchers.any) {
-            return this.ANY;
-        }
-
-        if (key === ArgumentMatchers.anyString) {
-            return this.ANY_STRING;
-        }
-        if (key === ArgumentMatchers.anyBoolean) {
-            return this.ANY_BOOLEAN;
-        }
-        if (key === ArgumentMatchers.anyNumber) {
-            return this.ANY_NUMBER;
-        }
-        if (key === ArgumentMatchers.anyObj) {
-            return this.ANY_OBJECT;
-        }
-        if (key === ArgumentMatchers.anyFunction) {
-            return this.ANY_FUNCTION;
-        }
-
-        if (ArgumentMatchers.isRegExp(key)) {
-            return key;
-        }
-
-        return null;
-    }
-}
-
-export default ArgumentMatchers;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js
deleted file mode 100644
index c6a866a6..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/ExtendInterface.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-class ExtendInterface {
-    constructor(mocker) {
-        this.mocker = mocker;
-    }
-
-    stub() {
-        this.params = arguments;
-        return this;
-    }
-
-    stubMockedCall(returnInfo) {
-        this.mocker.stubApply(this, this.params, returnInfo);
-    }
-
-    afterReturn(value) {
-        this.stubMockedCall(function () {
-            return value;
-        });
-    }
-
-    afterReturnNothing() {
-        this.stubMockedCall(function () {
-            return undefined;
-        });
-    }
-
-    afterAction(action) {
-        this.stubMockedCall(action);
-    }
-
-    afterThrow(msg) {
-        this.stubMockedCall(function () {
-            throw msg;
-        });
-    }
-
-    clear() {
-        this.mocker.clear();
-    }
-}
-
-export default ExtendInterface;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js
deleted file mode 100644
index a2346247..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/MockKit.js
+++ /dev/null
@@ -1,256 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import ExtendInterface from "./ExtendInterface";
-import VerificationMode from "./VerificationMode";
-import ArgumentMatchers from "./ArgumentMatchers";
-
-class MockKit {
-
-    constructor() {
-        this.mFunctions = [];
-        this.stubs = new Map();
-        this.recordCalls = new Map();
-        this.currentSetKey = null;
-        this.mockObj = null;
-        this.recordMockedMethod = new Map();
-    }
-
-    init() {
-        this.reset();
-    }
-
-    reset() {
-        this.mFunctions = [];
-        this.stubs = {};
-        this.recordCalls = {};
-        this.currentSetKey = null;
-        this.mockObj = null;
-        this.recordMockedMethod = new Map();
-    }
-
-    clearAll() {
-        this.reset();
-        var props = Object.keys(this);
-        for (var i = 0; i < props.length; i++) {
-            delete this[props[i]];
-        }
-
-        var props = Object.getOwnPropertyNames(this);
-        for (var i = 0; i < props.length; i++) {
-            delete this[props[i]];
-        }
-        for (var key in this) {
-            delete this[key];
-        }
-    }
-
-    clear(obj) {
-        if (!obj) throw Error("Please enter an object to be cleaned");
-        if (typeof (obj) != 'object') throw new Error('Not a object');
-        this.recordMockedMethod.forEach(function (value, key, map) {
-            if (key) {
-                obj[key] = value;
-            }
-        });
-    }
-
-    ignoreMock(obj, method) {
-        if (typeof (obj) != 'object') throw new Error('Not a object');
-        if (typeof (method) != 'function') throw new Error('Not a function');
-        let og = this.recordMockedMethod.get(method.propName);
-        if (og) {
-            obj[method.propName] = og;
-            this.recordMockedMethod.set(method.propName, undefined);
-        }
-    }
-
-    extend(dest, source) {
-        dest["stub"] = source["stub"];
-        dest["afterReturn"] = source["afterReturn"];
-        dest["afterReturnNothing"] = source["afterReturnNothing"];
-        dest["afterAction"] = source["afterAction"];
-        dest["afterThrow"] = source["afterThrow"];
-        dest["stubMockedCall"] = source["stubMockedCall"];
-        dest["clear"] = source["clear"];
-        return dest;
-    }
-
-    stubApply(f, params, returnInfo) {
-        let values = this.stubs.get(f);
-        if (!values) {
-            values = new Map();
-        }
-        let key = params[0];
-        if (typeof key == "undefined") {
-            key = "anonymous-mock-" + f.propName;
-        }
-        let matcher = new ArgumentMatchers();
-        if (matcher.matcheStubKey(key)) {
-            key = matcher.matcheStubKey(key);
-            if (key) {
-                this.currentSetKey = key;
-            }
-        }
-        values.set(key, returnInfo);
-        this.stubs.set(f, values);
-    }
-
-    getReturnInfo(f, params) {
-        let values = this.stubs.get(f);
-        if (!values) {
-            return undefined;
-        }
-        let retrunKet = params[0];
-        if (typeof retrunKet == "undefined") {
-            retrunKet = "anonymous-mock-" + f.propName;
-        }
-        let stubSetKey = this.currentSetKey;
-
-        if (this.currentSetKey && (typeof (retrunKet) != "undefined")) {
-            retrunKet = stubSetKey;
-        }
-        let matcher = new ArgumentMatchers();
-        if (matcher.matcheReturnKey(params[0], undefined, stubSetKey) && matcher.matcheReturnKey(params[0], undefined, stubSetKey) != stubSetKey) {
-            retrunKet = params[0];
-        }
-
-        values.forEach(function (value, key, map) {
-            if (ArgumentMatchers.isRegExp(key) && matcher.matcheReturnKey(params[0], key)) {
-                retrunKet = key;
-            }
-        });
-
-        return values.get(retrunKet);
-    }
-
-    findName(obj, value) {
-        let properties = this.findProperties(obj);
-        let name = null;
-        properties.forEach(
-            function (va1, idx, array) {
-                if (obj[va1] === value) {
-                    name = va1;
-                }
-            }
-        );
-        return name;
-    }
-
-    isFunctionFromPrototype(f, container, propName) {
-        if (container.constructor != Object && container.constructor.prototype !== container) {
-            return container.constructor.prototype[propName] === f;
-        }
-        return false;
-    }
-
-    findProperties(obj, ...arg) {
-        function getProperty(new_obj) {
-            if (new_obj.__proto__ === null) {
-                return [];
-            }
-            let properties = Object.getOwnPropertyNames(new_obj);
-            return [...properties, ...getProperty(new_obj.__proto__)];
-        }
-        return getProperty(obj);
-    }
-
-    recordMethodCall(originalMethod, args) {
-        Function.prototype.getName = function () {
-            return this.name || this.toString().match(/function\s*([^(]*)\(/)[1];
-        };
-        let name = originalMethod.getName();
-        let arglistString = name + '(' + Array.from(args).toString() + ')';
-        let records = this.recordCalls.get(arglistString);
-        if (!records) {
-            records = 0;
-        }
-        records++;
-        this.recordCalls.set(arglistString, records);
-    }
-
-    mockFunc(originalObject, originalMethod) {
-        let tmp = this;
-        this.originalMethod = originalMethod;
-        let f = function () {
-            let args = arguments;
-            let action = tmp.getReturnInfo(f, args);
-            if (originalMethod) {
-                tmp.recordMethodCall(originalMethod, args);
-            }
-            if (action) {
-                return action.apply(this, args);
-            }
-        };
-
-        f.container = null || originalObject;
-        f.original = originalMethod || null;
-
-        if (originalObject && originalMethod) {
-            if (typeof (originalMethod) != 'function') throw new Error('Not a function');
-            var name = this.findName(originalObject, originalMethod);
-            originalObject[name] = f;
-            this.recordMockedMethod.set(name, originalMethod);
-            f.propName = name;
-            f.originalFromPrototype = this.isFunctionFromPrototype(f.original, originalObject, f.propName);
-        }
-        f.mocker = this;
-        this.mFunctions.push(f);
-        this.extend(f, new ExtendInterface(this));
-        return f;
-    }
-
-    verify(methodName, argsArray) {
-        if (!methodName) {
-            throw Error("not a function name");
-        }
-        let a = this.recordCalls.get(methodName + '(' + argsArray.toString() + ')');
-        return new VerificationMode(a ? a : 0);
-    }
-
-    mockObject(object) {
-        if (!object || typeof object === "string") {
-            throw Error(`this ${object} cannot be mocked`);
-        }
-        const _this = this;
-        let mockedObject = {};
-        let keys = Reflect.ownKeys(object);
-        keys.filter(key => (typeof Reflect.get(object, key)) === 'function')
-            .forEach(key => {
-                mockedObject[key] = object[key];
-                mockedObject[key] = _this.mockFunc(mockedObject, mockedObject[key]);
-            });
-        return mockedObject;
-    }
-}
-
-function ifMockedFunction(f) {
-    if (Object.prototype.toString.call(f) != "[object Function]" &&
-        Object.prototype.toString.call(f) != "[object AsyncFunction]") {
-        throw Error("not a function");
-    }
-    if (!f.stub) {
-        throw Error("not a mock function");
-    }
-    return true;
-}
-
-function when(f) {
-    if (ifMockedFunction(f)) {
-        return f.stub.bind(f);
-    }
-}
-
-export {MockKit, when};
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js
deleted file mode 100644
index 7bd04c84..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/mock/VerificationMode.js
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import {expect} from '../../interface';
-
-class VerificationMode {
-    constructor(times) {
-        this.doTimes = times;
-    }
-
-    times(count) {
-        expect(count).assertEqual(this.doTimes);
-    }
-
-    never() {
-        console.log(this.doTimes);
-        expect(0).assertEqual(this.doTimes);
-    }
-
-    once() {
-        expect(1).assertEqual(this.doTimes);
-    }
-
-    atLeast(count) {
-        if (count > this.doTimes) {
-            throw Error('failed ' + count + ' greater than the actual execution times of method');
-        }
-    }
-
-    atMost(count) {
-        if (count < this.doTimes) {
-            throw Error('failed ' + count + ' less than the actual execution times of method');
-        }
-    }
-}
-
-export default VerificationMode;
\ No newline at end of file
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js
deleted file mode 100644
index da120dd0..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/report/OhReport.js
+++ /dev/null
@@ -1,148 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import SysTestKit from "../kit/SysTestKit";
-import {collectCoverageData} from '../coverage/coverageCollect';
-
-class OhReport {
-    constructor(attr) {
-        this.delegator = attr.delegator;
-        this.abilityDelegatorArguments = attr.abilityDelegatorArguments;
-        this.id = 'report';
-        this.index = 0;
-        this.duration = 0;
-    }
-
-    init(coreContext) {
-        this.coreContext = coreContext;
-        this.suiteService = this.coreContext.getDefaultService('suite');
-        this.specService = this.coreContext.getDefaultService('spec');
-    }
-
-    taskStart() {
-    }
-
-    async taskDone() {
-        if (this.abilityDelegatorArguments !== null) {
-            this.taskDoneTime = new Date().getTime();
-            let summary = this.suiteService.getSummary();
-            const configService = this.coreContext.getDefaultService('config');
-            if (configService['coverage'] === 'true') {
-                await collectCoverageData();
-            }
-            let message = '\n' + 'OHOS_REPORT_RESULT: stream=Tests run: ' + summary.total + ', Failure: ' + summary.failure;
-            message += ', Error: ' + summary.error;
-            message += ', Pass: ' + summary.pass;
-            message += ', Ignore: ' + summary.ignore;
-            message += '\n' + 'OHOS_REPORT_CODE: ' + (summary.failure > 0 ? -1 : 0) + '\n';
-            let isHasError = summary.failure > 0 || summary.error > 0;
-            let config = this.coreContext.getDefaultService('config');
-            if (config.isBreakOnError() && isHasError) {
-                // 未执行全部说明
-                message += '\n' + 'OHOS_REPORT_RESULT: breakOnError model, Stopping whole test suite if one specific test case failed or error' + '\n';
-            }
-            message += 'OHOS_REPORT_STATUS: taskconsuming=' + summary.duration + '\n';
-            console.info(message);
-            await SysTestKit.print(message);
-        }
-        console.info('report print success');
-        this.delegator.finishTest('your test finished!!!', 0, () => { });
-    }
-
-    incorrectFormat() {
-        if (this.coreContext.getDefaultService('config').filterValid.length !== 0) {
-            var value = this.coreContext.getDefaultService('config').filterValid;
-            var message = 'this param ' + value.join(',') + ' is invalid' + '\n';
-            this.delegator.finishTest(message, 0, () => {
-            });
-        }
-    }
-
-    async suiteStart() {
-        if (this.abilityDelegatorArguments !== null) {
-            let message = '\n' + 'OHOS_REPORT_SUM: ' + this.suiteService.getCurrentRunningSuite().getSpecsNum();
-            message += '\n' + 'OHOS_REPORT_STATUS: class=' + this.suiteService.getCurrentRunningSuite().description + '\n';
-            console.info(message);
-            await SysTestKit.print(message);
-            console.info(this.suiteService.getCurrentRunningSuite().description + ' suiteStart print success');
-        }
-    }
-
-    async suiteDone() {
-        if (this.abilityDelegatorArguments !== null) {
-            let message = '\n' + 'OHOS_REPORT_STATUS: class=' + this.suiteService.getCurrentRunningSuite().description;
-            message += '\n' + 'OHOS_REPORT_STATUS: suiteconsuming=' + this.suiteService.getCurrentRunningSuite().duration + '\n';
-            console.info(message);
-            await SysTestKit.print(message);
-            console.info(this.suiteService.getCurrentRunningSuite().description + ' suiteDone print success');
-        }
-    }
-
-    async specStart() {
-        if (this.abilityDelegatorArguments !== null) {
-            let message = '\n' + 'OHOS_REPORT_STATUS: class=' + this.suiteService.getCurrentRunningSuite().description;
-            message += '\n' + 'OHOS_REPORT_STATUS: current=' + (++this.index);
-            message += '\n' + 'OHOS_REPORT_STATUS: id=JS';
-            message += '\n' + 'OHOS_REPORT_STATUS: numtests=' + this.specService.getTestTotal();
-            message += '\n' + 'OHOS_REPORT_STATUS: stream=';
-            message += '\n' + 'OHOS_REPORT_STATUS: test=' + this.specService.currentRunningSpec.description;
-            message += '\n' + 'OHOS_REPORT_STATUS_CODE: 1' + '\n';
-            console.info(message);
-            await SysTestKit.print(message);
-            console.info(this.specService.currentRunningSpec.description + ' specStart start print success');
-        }
-    }
-
-    async specDone() {
-        if (this.abilityDelegatorArguments !== null) {
-            let message = '\n' + 'OHOS_REPORT_STATUS: class=' + this.suiteService.getCurrentRunningSuite().description;
-            message += '\n' + 'OHOS_REPORT_STATUS: current=' + (this.index);
-            message += '\n' + 'OHOS_REPORT_STATUS: id=JS';
-            message += '\n' + 'OHOS_REPORT_STATUS: numtests=' + this.specService.getTestTotal();
-            let errorMsg = '';
-            if (this.specService.currentRunningSpec.error) {
-                message += '\n' + 'OHOS_REPORT_STATUS: stack=' + this.specService.currentRunningSpec.error.message;
-                message += '\n' + 'OHOS_REPORT_STATUS: stream=';
-                message += '\n' + 'Error in ' + this.specService.currentRunningSpec.description;
-                message += '\n' + this.specService.currentRunningSpec.error.message;
-                message += '\n' + 'OHOS_REPORT_STATUS: test=' + this.specService.currentRunningSpec.description;
-                message += '\n' + 'OHOS_REPORT_STATUS_CODE: -1' + '\n';
-            } else if (this.specService.currentRunningSpec.result) {
-                if (this.specService.currentRunningSpec.result.failExpects.length > 0) {
-                    this.specService.currentRunningSpec.result.failExpects.forEach(failExpect => {
-                        errorMsg = failExpect.message || ('expect ' + failExpect.actualValue + ' ' + failExpect.checkFunc + ' ' + (failExpect.expectValue));
-                    });
-                    message += '\n' + 'OHOS_REPORT_STATUS: stack=' + errorMsg;
-                    message += '\n' + 'OHOS_REPORT_STATUS: stream=';
-                    message += '\n' + 'Error in ' + this.specService.currentRunningSpec.description;
-                    message += '\n' + errorMsg + '\n' + 'OHOS_REPORT_STATUS: test=' + this.specService.currentRunningSpec.description;
-                    message += '\n' + 'OHOS_REPORT_STATUS_CODE: -2' + '\n';
-                } else {
-                    message += '\n' + 'OHOS_REPORT_STATUS: stream=';
-                    message += '\n' + 'OHOS_REPORT_STATUS: test=' + this.specService.currentRunningSpec.description;
-                    message += '\n' + 'OHOS_REPORT_STATUS_CODE: 0' + '\n';
-                }
-            } else {
-                message += '\n';
-            }
-            message += 'OHOS_REPORT_STATUS: consuming=' + this.specService.currentRunningSpec.duration + '\n';
-            console.info(message);
-            await SysTestKit.print(message);
-            console.info(this.specService.currentRunningSpec.description + ' specDone end print success');
-        }
-    }
-}
-
-export default OhReport;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js
deleted file mode 100644
index 852fbcd5..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/module/report/ReportExtend.js
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-class ReportExtend {
-    constructor(fileModule) {
-        this.id = 'extend';
-        this.fileModule = fileModule;
-    }
-
-    init(coreContext) {
-        this.coreContext = coreContext;
-        this.suiteService = this.coreContext.getDefaultService('suite');
-    }
-
-    taskStart() {
-
-    }
-
-    taskDone() {
-        const report = {
-            tag: 'testsuites',
-            name: 'summary_report',
-            timestamp: new Date().toDateString(),
-            time: '1',
-            errors: 0,
-            failures: 0,
-            tests: 0,
-            children: []
-        };
-        const rootSuite = this.suiteService.rootSuite;
-        if (rootSuite && rootSuite.childSuites) {
-            for (let testsuite of rootSuite.childSuites) {
-                let suiteReport = {
-                    tag: 'testsuite',
-                    name: testsuite['description'],
-                    errors: 0,
-                    tests: 0,
-                    failures: 0,
-                    time: '0.1',
-                    children: []
-                };
-                let specs = testsuite['specs'];
-                for (let testcase of specs) {
-                    report.tests++;
-                    suiteReport.tests++;
-                    let caseReport = {
-                        tag: 'testcase',
-                        name: testcase['description'],
-                        status: 'run',
-                        time: '0.0',
-                        classname: testsuite['description']
-                    };
-                    if (testcase.error) {
-                        caseReport['result'] = false;
-                        caseReport['children'] = [{
-                            tag: 'error',
-                            type: '',
-                            message: testcase.error.message
-                        }];
-                        report.errors++;
-                        suiteReport.errors++;
-                    } else if (testcase.result.failExpects.length > 0) {
-                        caseReport['result'] = false;
-                        let message = '';
-                        testcase.result.failExpects.forEach(failExpect => {
-                            message += failExpect.message || ('expect ' + failExpect.actualValue + ' ' + failExpect.checkFunc + ' ' + (failExpect.expectValue || '')) + ';';
-                        });
-                        caseReport['children'] = [{
-                            tag: 'failure',
-                            type: '',
-                            message: message
-                        }];
-                        report.failures++;
-                        suiteReport.failures++;
-                    } else {
-                        caseReport['result'] = true;
-                    }
-                    suiteReport.children.push(caseReport);
-                }
-                report.children.push(suiteReport);
-            }
-        }
-
-        let reportXml = '<?xml version="1.0" encoding="UTF-8"?>\n' + json2xml(report);
-        this.fileModule.writeText({
-            uri: 'internal://app/report.xml',
-            text: reportXml,
-            success: function () {
-                console.info('call success callback success');
-            },
-            fail: function (data, code) {
-                console.info('call fail callback success:');
-            },
-            complete: function () {
-                console.info('call complete callback success');
-            }
-        });
-    }
-}
-
-function json2xml(json) {
-    let tagName;
-    let hasChildren = false;
-    let childrenStr = '';
-    let attrStr = '';
-    for (let key in json) {
-        if (key === 'tag') {
-            tagName = json[key];
-        } else if (key === 'children') {
-            if (json[key].length > 0) {
-                hasChildren = true;
-                for (let child of json[key]) {
-                    childrenStr += json2xml(child);
-                }
-            }
-        } else {
-            attrStr += ` ${key}="${json[key]}"`;
-        }
-    }
-    let xml = `<${tagName}${attrStr}`;
-    xml += hasChildren ? `>${childrenStr}</${tagName}>` : '/>';
-    return xml;
-}
-
-export default ReportExtend;
diff --git a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/service.js b/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/service.js
deleted file mode 100644
index e55a2e4a..00000000
--- a/entry/oh_modules/.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium/src/main/service.js
+++ /dev/null
@@ -1,929 +0,0 @@
-/*
- * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import SysTestKit from "./module/kit/SysTestKit";
-
-class AssertException extends Error {
-    constructor(message) {
-        super();
-        this.name = "AssertException";
-        this.message = message;
-    }
-}
-
-function getFuncWithArgsZero(func, timeout, isStressTest) {
-    return new Promise(async (resolve, reject) => {
-        let timer = null;
-        if (!isStressTest) {
-            timer = setTimeout(() => {
-                reject(new Error('execute timeout ' + timeout + 'ms'));
-            }, timeout);
-        }
-        try {
-            await func();
-        } catch (err) {
-            reject(err);
-        }
-        timer !== null ? clearTimeout(timer) : null;
-        resolve();
-    });
-}
-
-function getFuncWithArgsOne(func, timeout, isStressTest) {
-    return new Promise(async (resolve, reject) => {
-        let timer = null;
-        if (!isStressTest) {
-            timer = setTimeout(() => {
-                reject(new Error('execute timeout ' + timeout + 'ms'));
-            }, timeout);;
-        }
-
-        function done() {
-            timer !== null ? clearTimeout(timer) : null;
-            resolve();
-        }
-
-        try {
-            await func(done);
-        } catch (err) {
-            timer !== null ? clearTimeout(timer) : null;
-            reject(err);
-        }
-    });
-}
-
-function getFuncWithArgsTwo(func, timeout, paramItem, isStressTest) {
-    return new Promise(async (resolve, reject) => {
-        let timer = null;
-        if (!isStressTest) {
-            timer = setTimeout(() => {
-                reject(new Error('execute timeout ' + timeout + 'ms'));
-            }, timeout);
-        }
-
-        function done() {
-            timer !== null ? clearTimeout(timer) : null;
-            resolve();
-        }
-
-        try {
-            await func(done, paramItem);
-        } catch (err) {
-            timer !== null ? clearTimeout(timer) : null;
-            reject(err);
-        }
-    });
-}
-
-function processFunc(coreContext, func) {
-    let argNames = ((func || '').toString()
-        .replace(/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg, '')
-        .match(/^(function)?\s*[^\(]*\(\s*([^\)]*)\)/m) || ['', '', ''])[2]
-        .split(',') // split parameters
-        .map(item => item.replace(/^\s*(_?)(.+?)\1\s*$/, name => name.split('=')[0].trim()))
-        .filter(String);
-    let funcLen = func.length;
-    let processedFunc;
-    const config = coreContext.getDefaultService('config');
-    config.setSupportAsync(true);
-    const timeout = + (config.timeout === undefined ? 5000 : config.timeout);
-    const isStressTest = (coreContext.getServices('dataDriver') !== undefined || config.getStress() > 1);
-    switch (funcLen) {
-        case 0: {
-            processedFunc = function () {
-                return getFuncWithArgsZero(func, timeout, isStressTest);
-            };
-            break;
-        }
-        case 1: {
-            if (argNames[0] === 'data') {
-                processedFunc = function (paramItem) {
-                    func(paramItem);
-                };
-            } else {
-                processedFunc = function () {
-                    return getFuncWithArgsOne(func, timeout, isStressTest);
-                };
-            }
-            break;
-        }
-        default: {
-            processedFunc = function (paramItem) {
-                return getFuncWithArgsTwo(func, timeout, paramItem, isStressTest);
-            };
-            break;
-        }
-    }
-    return processedFunc;
-}
-
-function secureRandomNumber() {
-    return crypto.randomBytes(8).readUInt32LE() / 0xffffffff;
-}
-
-class SuiteService {
-    constructor(attr) {
-        this.id = attr.id;
-        this.rootSuite = new SuiteService.Suite({});
-        this.currentRunningSuite = this.rootSuite;
-        this.suitesStack = [this.rootSuite];
-    }
-
-    describe(desc, func) {
-        const configService = this.coreContext.getDefaultService('config');
-        if (configService.filterSuite(desc)) {
-            console.info('filter suite :' + desc);
-            return;
-        }
-        const suite = new SuiteService.Suite({description: desc});
-        if (typeof this.coreContext.getServices('dataDriver') !== 'undefined' && configService['dryRun'] !== 'true') {
-            let suiteStress = this.coreContext.getServices('dataDriver').dataDriver.getSuiteStress(desc);
-            for (let i = 1; i < suiteStress; i++) {
-                this.currentRunningSuite.childSuites.push(suite);
-            }
-        }
-        this.currentRunningSuite.childSuites.push(suite);
-        this.currentRunningSuite = suite;
-        this.suitesStack.push(suite);
-        func.call();
-        let childSuite = this.suitesStack.pop();
-        if (this.suitesStack.length === 0) {
-            this.currentRunningSuite = childSuite;
-            this.suitesStack.push(childSuite);
-        }
-        if (this.suitesStack.length > 1) {
-            this.currentRunningSuite = this.suitesStack.pop();
-        } else {
-            this.currentRunningSuite = this.suitesStack.pop();
-            this.suitesStack.push(this.currentRunningSuite);
-        }
-    }
-
-    beforeAll(func) {
-        this.currentRunningSuite.beforeAll.push(processFunc(this.coreContext, func));
-    }
-
-    beforeEach(func) {
-        this.currentRunningSuite.beforeEach.push(processFunc(this.coreContext, func));
-    }
-
-    afterAll(func) {
-        this.currentRunningSuite.afterAll.push(processFunc(this.coreContext, func));
-    }
-
-    afterEach(func) {
-        this.currentRunningSuite.afterEach.push(processFunc(this.coreContext, func));
-    }
-
-    getCurrentRunningSuite() {
-        return this.currentRunningSuite;
-    }
-
-    setCurrentRunningSuite(suite) {
-        this.currentRunningSuite = suite;
-    }
-
-    traversalResults(suite, obj, breakOnError) {
-        if (suite.childSuites.length === 0 && suite.specs.length === 0) {
-            return obj;
-        }
-        if (suite.specs.length > 0) {
-            for (const itItem of suite.specs) {
-                obj.total++;
-                if (breakOnError && (obj.error > 0 || obj.failure > 0)) { // breakOnError模式
-                    continue;
-                }
-                if (itItem.error) {
-                    obj.error++;
-                } else if (itItem.result.failExpects.length > 0) {
-                    obj.failure++;
-                } else if (itItem.result.pass === true) {
-                    obj.pass++;
-                }
-            }
-        }
-
-        obj.duration += suite.duration;
-
-        if (suite.childSuites.length > 0) {
-            for (const suiteItem of suite.childSuites) {
-                this.traversalResults(suiteItem, obj, breakOnError);
-            }
-        }
-    }
-
-    getSummary() {
-        let suiteService = this.coreContext.getDefaultService('suite');
-        let rootSuite = suiteService.rootSuite;
-        const specService = this.coreContext.getDefaultService('spec');
-        const configService = this.coreContext.getDefaultService('config');
-        let breakOnError = configService.isBreakOnError();
-        let isError = specService.getStatus();
-        let isBreaKOnError = breakOnError && isError;
-        let obj = {total: 0, failure: 0, error: 0, pass: 0, ignore: 0, duration: 0};
-        for (const suiteItem of rootSuite.childSuites) {
-            this.traversalResults(suiteItem, obj, isBreaKOnError);
-        }
-        obj.ignore = obj.total - obj.pass - obj.failure - obj.error;
-        return obj;
-    }
-
-    init(coreContext) {
-        this.coreContext = coreContext;
-    }
-
-    traversalSuites(suite, obj, configService) {
-        if (suite.childSuites.length === 0 && suite.specs.length === 0) {
-            return [];
-        }
-        if (suite.specs.length > 0) {
-            let itArray = [];
-            for (const itItem of suite['specs']) {
-                if (!configService.filterDesc(suite.description, itItem.description, itItem.fi, null)) {
-                    itArray.push({'itName': itItem.description});
-                }
-            }
-            obj[suite.description] = itArray;
-        }
-
-        if (suite.childSuites.length > 0) {
-            let suiteArray = [];
-            for (const suiteItem of suite.childSuites) {
-                let suiteObj = {};
-                this.traversalSuites(suiteItem, suiteObj, configService);
-                if (!configService.filterSuite(suiteItem.description)) {
-                    suiteArray.push(suiteObj);
-                }
-            }
-            obj.suites = suiteArray;
-        }
-    }
-
-    async dryRun(abilityDelegator) {
-        const configService = this.coreContext.getDefaultService('config');
-        let testSuitesObj = {};
-        let suitesArray = [];
-        for (const suiteItem of this.rootSuite.childSuites) {
-            let obj = {};
-            this.traversalSuites(suiteItem, obj, configService);
-            if (!configService.filterSuite(suiteItem.description)) {
-                suitesArray.push(obj);
-            }
-        }
-        testSuitesObj['suites'] = suitesArray;
-
-        let strJson = JSON.stringify(testSuitesObj);
-        let strLen = strJson.length;
-        let maxLen = 500;
-        let maxCount = Math.floor(strLen / maxLen);
-
-        for (let count = 0; count <= maxCount; count++) {
-            await SysTestKit.print(strJson.substring(count * maxLen, (count + 1) * maxLen));
-        }
-        console.info('dryRun print success');
-        abilityDelegator.finishTest('dry run finished!!!', 0, () => { });
-    }
-
-    execute() {
-        const configService = this.coreContext.getDefaultService('config');
-        if (configService.filterValid.length !== 0) {
-            this.coreContext.fireEvents('task', 'incorrectFormat');
-            return;
-        }
-
-        if (configService.isRandom() && this.rootSuite.childSuites.length > 0) {
-            this.rootSuite.childSuites.sort(function () {
-                return Math.random().toFixed(1) > 0.5 ? -1 : 1;
-            });
-            this.currentRunningSuite = this.rootSuite.childSuites[0];
-        }
-
-        if (configService.isSupportAsync()) {
-            let asyncExecute = async () => {
-                await this.coreContext.fireEvents('task', 'taskStart');
-                await this.rootSuite.asyncRun(this.coreContext);
-            };
-            asyncExecute().then(async () => {
-                await this.coreContext.fireEvents('task', 'taskDone');
-            });
-        } else {
-            this.coreContext.fireEvents('task', 'taskStart');
-            this.rootSuite.run(this.coreContext);
-            this.coreContext.fireEvents('task', 'taskDone');
-        }
-    }
-
-    apis() {
-        const _this = this;
-        return {
-            describe: function (desc, func) {
-                return _this.describe(desc, func);
-            },
-            beforeAll: function (func) {
-                return _this.beforeAll(func);
-            },
-            beforeEach: function (func) {
-                return _this.beforeEach(func);
-            },
-            afterAll: function (func) {
-                return _this.afterAll(func);
-            },
-            afterEach: function (func) {
-                return _this.afterEach(func);
-            }
-        };
-    }
-}
-
-SuiteService.Suite = class {
-    constructor(attrs) {
-        this.description = attrs.description || '';
-        this.childSuites = [];
-        this.specs = [];
-        this.beforeAll = [];
-        this.afterAll = [];
-        this.beforeEach = [];
-        this.afterEach = [];
-        this.duration = 0;
-    }
-
-    pushSpec(spec) {
-        this.specs.push(spec);
-    }
-
-    removeSpec(desc) {
-        this.specs = this.specs.filter((item, index) => {
-            return item.description !== desc;
-        });
-    }
-
-    getSpecsNum() {
-        return this.specs.length;
-    }
-
-    isRun(coreContext) {
-        const configService = coreContext.getDefaultService('config');
-        const suiteService = coreContext.getDefaultService('suite');
-        const specService = coreContext.getDefaultService('spec');
-        let breakOnError = configService.isBreakOnError();
-        let isError = specService.getStatus();
-        return breakOnError && isError;
-    }
-
-    run(coreContext) {
-        const suiteService = coreContext.getDefaultService('suite');
-        suiteService.setCurrentRunningSuite(this);
-        if (this.description !== '') {
-            coreContext.fireEvents('suite', 'suiteStart', this);
-        }
-        this.runHookFunc('beforeAll');
-        if (this.specs.length > 0) {
-            const configService = coreContext.getDefaultService('config');
-            if (configService.isRandom()) {
-                this.specs.sort(function () {
-                    return Math.random().toFixed(1) > 0.5 ? -1 : 1;
-                });
-            }
-            for (let spec in this.specs) {
-                let isBreakOnError = this.isRun(coreContext);
-                if (isBreakOnError) {
-                    break;
-                }
-                this.runHookFunc('beforeEach');
-                spec.run(coreContext);
-                this.runHookFunc('afterEach');
-            }
-        }
-        if (this.childSuites.length > 0) {
-            for (let suite in this.childSuites) {
-                let isBreakOnError = this.isRun(coreContext);
-                if (isBreakOnError) {
-                    break;
-                }
-                suite.run(coreContext);
-                suiteService.setCurrentRunningSuite(suite);
-            }
-        }
-        this.runHookFunc('afterAll');
-        if (this.description !== '') {
-            coreContext.fireEvents('suite', 'suiteDone');
-        }
-    }
-
-    async asyncRun(coreContext) {
-        const suiteService = coreContext.getDefaultService('suite');
-        suiteService.setCurrentRunningSuite(this);
-        suiteService.suitesStack.push(this);
-        if (this.description !== '') {
-            await coreContext.fireEvents('suite', 'suiteStart', this);
-        }
-        await this.runAsyncHookFunc('beforeAll');
-        if (this.specs.length > 0) {
-            const configService = coreContext.getDefaultService('config');
-            if (configService.isRandom()) {
-                this.specs.sort(function () {
-                    return Math.random().toFixed(1) > 0.5 ? -1 : 1;
-                });
-            }
-            for (let i = 0; i < this.specs.length; i++) {
-                // 遇错即停模式,发现用例有问题，直接返回，不在执行后面的it
-                let isBreakOnError = this.isRun(coreContext);
-                if (isBreakOnError) {
-                    console.log("break description :" + this.description);
-                    break;
-                }
-                await this.runAsyncHookFunc('beforeEach');
-                await this.specs[i].asyncRun(coreContext);
-                await this.runAsyncHookFunc('afterEach');
-            }
-        }
-
-        if (this.childSuites.length > 0) {
-            for (let i = 0; i < this.childSuites.length; i++) {
-                // 遇错即停模式, 发现用例有问题，直接返回，不在执行后面的description
-                let isBreakOnError = this.isRun(coreContext);
-                if (isBreakOnError) {
-                    console.log("break description :" + this.description);
-                    break;
-                }
-                await this.childSuites[i].asyncRun(coreContext);
-            }
-        }
-
-        await this.runAsyncHookFunc('afterAll');
-        if (this.description !== '') {
-            await coreContext.fireEvents('suite', 'suiteDone');
-            let childSuite = suiteService.suitesStack.pop();
-            if (suiteService.suitesStack.length === 0) {
-                suiteService.suitesStack.push(childSuite);
-            }
-            if (suiteService.suitesStack.length > 1) {
-                suiteService.setCurrentRunningSuite(suiteService.suitesStack.pop());
-            } else {
-                let currentRunningSuite = suiteService.suitesStack.pop();
-                suiteService.setCurrentRunningSuite(currentRunningSuite);
-                suiteService.suitesStack.push(currentRunningSuite);
-            }
-        }
-    }
-
-    runHookFunc(hookName) {
-        if (this[hookName] && this[hookName].length > 0) {
-            this[hookName].forEach(func => {
-                try {
-                    func();
-                } catch (e) {
-                    console.error(e);
-                }
-            });
-        }
-    }
-
-    runAsyncHookFunc(hookName) {
-        if (this[hookName] && this[hookName].length > 0) {
-            return new Promise(async resolve => {
-                for (let i = 0; i < this[hookName].length; i++) {
-                    try {
-                        await this[hookName][i]();
-                    } catch (e) {
-                        console.error(e);
-                    }
-                }
-                resolve();
-            });
-        }
-    }
-};
-
-class SpecService {
-    constructor(attr) {
-        this.id = attr.id;
-        this.totalTest = 0;
-        this.hasError = false;
-    }
-
-    init(coreContext) {
-        this.coreContext = coreContext;
-    }
-
-    setCurrentRunningSpec(spec) {
-        this.currentRunningSpec = spec;
-    }
-
-    setStatus(obj) {
-        this.hasError = obj;
-    }
-
-    getStatus() {
-        return this.hasError;
-    }
-
-    getTestTotal() {
-        return this.totalTest;
-    }
-
-    getCurrentRunningSpec() {
-        return this.currentRunningSpec;
-    }
-
-    it(desc, filter, func) {
-        const configService = this.coreContext.getDefaultService('config');
-        const currentSuiteName = this.coreContext.getDefaultService('suite').getCurrentRunningSuite().description;
-        if (configService.filterDesc(currentSuiteName, desc, filter, this.coreContext)) {
-            console.info('filter it :' + desc);
-        } else {
-            let processedFunc = processFunc(this.coreContext, func);
-            const spec = new SpecService.Spec({description: desc, fi: filter, fn: processedFunc});
-            const suiteService = this.coreContext.getDefaultService('suite');
-            if (typeof this.coreContext.getServices('dataDriver') !== 'undefined' && configService['dryRun'] !== 'true') {
-                let specStress = this.coreContext.getServices('dataDriver').dataDriver.getSpecStress(desc);
-                for (let i = 1; i < specStress; i++) {
-                    this.totalTest++;
-                    suiteService.getCurrentRunningSuite().pushSpec(spec);
-                }
-            }
-
-            // dryRun 状态下不统计压力测试重复数据
-            if (configService['dryRun'] !== 'true') {
-                let stress = configService.getStress(); // 命令配置压力测试
-                console.info('stress length :' + stress);
-                for (let i = 1; i < stress; i++) {
-                    this.totalTest++;
-                    suiteService.getCurrentRunningSuite().pushSpec(spec);
-                }
-            }
-            this.totalTest++;
-            suiteService.getCurrentRunningSuite().pushSpec(spec);
-        }
-    }
-
-    apis() {
-        const _this = this;
-        return {
-            it: function (desc, filter, func) {
-                return _this.it(desc, filter, func);
-            }
-        };
-    }
-}
-
-SpecService.Spec = class {
-    constructor(attrs) {
-        this.description = attrs.description || '';
-        this.fi = attrs.fi;
-        this.fn = attrs.fn || function () {
-        };
-        this.result = {
-            failExpects: [],
-            passExpects: []
-        };
-        this.error = undefined;
-        this.duration = 0;
-        this.startTime = 0;
-        this.isExecuted = false; // 当前用例是否执行
-    }
-
-    setResult(coreContext) {
-        const specService = coreContext.getDefaultService('spec');
-        if (this.result.failExpects.length > 0) {
-            this.result.pass = false;
-            specService.setStatus(true);
-        } else {
-            this.result.pass = true;
-        }
-        console.info('testcase ' + this.description + ' result:' + this.result.pass);
-    }
-
-    run(coreContext) {
-        const specService = coreContext.getDefaultService('spec');
-        specService.setCurrentRunningSpec(this);
-        coreContext.fireEvents('spec', 'specStart', this);
-        this.isExecuted = true;
-        try {
-            let dataDriver = coreContext.getServices('dataDriver');
-            if (typeof dataDriver === 'undefined') {
-                this.fn();
-            } else {
-                let suiteParams = dataDriver.dataDriver.getSuiteParams();
-                let specParams = dataDriver.dataDriver.getSpecParams();
-                console.info('[suite params] ' + JSON.stringify(suiteParams));
-                console.info('[spec params] ' + JSON.stringify(specParams));
-                if (this.fn.length === 0) {
-                    this.fn();
-                } else if (specParams.length === 0) {
-                    this.fn(suiteParams);
-                } else {
-                    specParams.forEach(paramItem => this.fn(Object.assign({}, paramItem, suiteParams)));
-                }
-            }
-            this.setResult(coreContext);
-        } catch (e) {
-            this.error = e;
-            specService.setStatus(true);
-        }
-        coreContext.fireEvents('spec', 'specDone', this);
-    }
-
-    async asyncRun(coreContext) {
-        const specService = coreContext.getDefaultService('spec');
-        specService.setCurrentRunningSpec(this);
-
-        await coreContext.fireEvents('spec', 'specStart', this);
-        try {
-            let dataDriver = coreContext.getServices('dataDriver');
-            if (typeof dataDriver === 'undefined') {
-                await this.fn();
-                this.setResult(coreContext);
-            } else {
-                let suiteParams = dataDriver.dataDriver.getSuiteParams();
-                let specParams = dataDriver.dataDriver.getSpecParams();
-                console.info('[suite params] ' + JSON.stringify(suiteParams));
-                console.info('[spec params] ' + JSON.stringify(specParams));
-                if (this.fn.length === 0) {
-                    await this.fn();
-                    this.setResult(coreContext);
-                } else if (specParams.length === 0) {
-                    await this.fn(suiteParams);
-                    this.setResult(coreContext);
-                } else {
-                    for (const paramItem of specParams) {
-                        await this.fn(Object.assign({}, paramItem, suiteParams));
-                        this.setResult(coreContext);
-                    }
-                }
-            }
-        } catch (e) {
-            if (e instanceof AssertException) {
-                this.fail = e;
-                specService.setStatus(true);
-            } else {
-                this.error = e;
-                specService.setStatus(true);
-            }
-        }
-        this.isExecuted = true;
-        await coreContext.fireEvents('spec', 'specDone', this);
-    }
-
-    filterCheck(coreContext) {
-        const specService = coreContext.getDefaultService('spec');
-        specService.setCurrentRunningSpec(this);
-        return true;
-    }
-
-    addExpectationResult(expectResult) {
-        if (this.result.failExpects.length === 0) {
-            this.result.failExpects.push(expectResult);
-        }
-        throw new AssertException(expectResult.message);
-    }
-};
-
-class ExpectService {
-    constructor(attr) {
-        this.id = attr.id;
-        this.matchers = {};
-    }
-
-    expect(actualValue) {
-        return this.wrapMatchers(actualValue);
-    }
-
-    init(coreContext) {
-        this.coreContext = coreContext;
-        this.addMatchers(this.basicMatchers());
-    }
-
-    addMatchers(matchers) {
-        for (const matcherName in matchers) {
-            if (Object.prototype.hasOwnProperty.call(matchers, matcherName)) {
-                this.matchers[matcherName] = matchers[matcherName];
-            }
-        }
-    }
-
-    basicMatchers() {
-        return {
-            assertTrue: function (actualValue) {
-                return {
-                    pass: (actualValue) === true,
-                    message: 'expect true, actualValue is ' + actualValue
-                };
-            },
-            assertEqual: function (actualValue, args) {
-                return {
-                    pass: (actualValue) === args[0],
-                    expectValue: args[0],
-                    message: 'expect ' + actualValue + ' equals ' + args[0]
-                };
-            },
-            assertThrow: function (actual, args) {
-                const result = {
-                    pass: false
-                };
-                if (typeof actual !== 'function') {
-                    result.message = 'toThrow\'s Actual should be a Function';
-                } else {
-                    let hasThrow = false;
-                    let throwError;
-                    try {
-                        actual();
-                    } catch (e) {
-                        hasThrow = true;
-                        throwError = e;
-                    }
-                    if (!hasThrow) {
-                        result.message = 'function did not throw an exception';
-                    } else if (throwError && throwError.message === args[0]) {
-                        result.pass = true;
-                    } else {
-                        result.message = `expect to throw ${args[0]} , actual throw ${throwError.message}`;
-                    }
-                }
-                return result;
-            }
-        };
-    }
-
-    wrapMatchers(actualValue) {
-        const _this = this;
-        const wrappedMatchers = {
-            // 翻转标识
-            isNot: false,
-
-            // 翻转方法
-            not: function () {
-                this.isNot = true;
-                return this;
-            }
-        };
-        const specService = _this.coreContext.getDefaultService('spec');
-        const currentRunningSpec = specService.getCurrentRunningSpec();
-        for (const matcherName in this.matchers) {
-            let result = Object.prototype.hasOwnProperty.call(this.matchers, matcherName);
-            if (!result) {
-                continue;
-            }
-            if (matcherName.search('assertPromise') == 0) {
-                wrappedMatchers[matcherName] = async function () {
-                    await _this.matchers[matcherName](actualValue, arguments).then(function (result) {
-                        if (wrappedMatchers.isNot) {
-                            result.pass = !result.pass;
-                        }
-                        result.actualValue = actualValue;
-                        result.checkFunc = matcherName;
-                        if (!result.pass) {
-                            currentRunningSpec.addExpectationResult(result);
-                        }
-                    });
-                };
-            } else {
-                wrappedMatchers[matcherName] = function () {
-                    const result = _this.matchers[matcherName](actualValue, arguments);
-                    if (wrappedMatchers.isNot) {
-                        result.pass = !result.pass;
-                    }
-                    result.actualValue = actualValue;
-                    result.checkFunc = matcherName;
-                    if (!result.pass) {
-                        currentRunningSpec.addExpectationResult(result);
-                    }
-                };
-            }
-        }
-        return wrappedMatchers;
-    }
-
-    apis() {
-        const _this = this;
-        return {
-            expect: function (actualValue) {
-                return _this.expect(actualValue);
-            }
-        };
-    }
-}
-
-class ReportService {
-    constructor(attr) {
-        this.id = attr.id;
-    }
-
-    init(coreContext) {
-        this.coreContext = coreContext;
-        this.specService = this.coreContext.getDefaultService('spec');
-        this.suiteService = this.coreContext.getDefaultService('suite');
-        this.duration = 0;
-    }
-
-    taskStart() {
-        console.info('[start] start run suites');
-    }
-
-    async suiteStart() {
-        console.info('[suite start]' + this.suiteService.getCurrentRunningSuite().description);
-    }
-
-    async specStart() {
-        console.info('start running case \'' + this.specService.currentRunningSpec.description + '\'');
-        this.index = this.index + 1;
-        let spec = this.specService.currentRunningSpec;
-        spec.startTime = await SysTestKit.getRealTime();
-    }
-
-    async specDone() {
-        let msg = '';
-        let spec = this.specService.currentRunningSpec;
-        let suite = this.suiteService.currentRunningSuite;
-        spec.duration = await SysTestKit.getRealTime() - spec.startTime;
-        suite.duration += spec.duration;
-        if (spec.error) {
-            this.formatPrint('error', spec.description + ' ; consuming ' + spec.duration + 'ms');
-            this.formatPrint('errorDetail', spec.error);
-        } else if (spec.result) {
-            if (spec.result.failExpects.length > 0) {
-                this.formatPrint('fail', spec.description + ' ; consuming ' + spec.duration + 'ms');
-                spec.result.failExpects.forEach(failExpect => {
-                    msg = failExpect.message || ('expect ' + failExpect.actualValue + ' '
-                        + failExpect.checkFunc + ' ' + (failExpect.expectValue));
-                    this.formatPrint('failDetail', msg);
-                });
-            } else {
-                this.formatPrint('pass', spec.description + ' ; consuming ' + spec.duration + 'ms');
-            }
-        }
-        this.formatPrint(this.specService.currentRunningSpec.error, msg);
-    }
-
-    suiteDone() {
-        let suite = this.suiteService.currentRunningSuite;
-        console.info(`[suite end] ${suite.description} consuming ${suite.duration} ms`);
-    }
-
-    taskDone() {
-        let msg = '';
-        let summary = this.suiteService.getSummary();
-        msg = 'total cases:' + summary.total + ';failure ' + summary.failure + ',' + 'error ' + summary.error;
-        msg += ',pass ' + summary.pass + '; consuming ' + summary.duration + 'ms';
-        console.info(msg);
-        console.info('[end] run suites end');
-    }
-
-    incorrectFormat() {
-        if (this.coreContext.getDefaultService('config').filterValid.length !== 0) {
-            this.coreContext.getDefaultService('config').filterValid.forEach(function (item) {
-                console.info('this param ' + item + ' is invalid');
-            });
-        }
-    }
-
-    formatPrint(type, msg) {
-        switch (type) {
-            case 'pass':
-                console.info('[pass]' + msg);
-                break;
-            case 'fail':
-                console.info('[fail]' + msg);
-                break;
-            case 'failDetail':
-                console.info('[failDetail]' + msg);
-                break;
-            case 'error':
-                console.info('[error]' + msg);
-                break;
-            case 'errorDetail':
-                console.info('[errorDetail]' + msg);
-                break;
-        }
-    }
-
-    sleep(numberMillis) {
-        var now = new Date();
-        var exitTime = now.getTime() + numberMillis;
-        while (true) {
-            now = new Date();
-            if (now.getTime() > exitTime) {
-                return;
-            }
-        }
-    }
-}
-
-export {
-    SuiteService,
-    SpecService,
-    ExpectService,
-    ReportService
-};
diff --git a/entry/oh_modules/.ohpm/oh_modules/@ohos/hypium b/entry/oh_modules/.ohpm/oh_modules/@ohos/hypium
deleted file mode 120000
index e3f4a5cb..00000000
--- a/entry/oh_modules/.ohpm/oh_modules/@ohos/hypium
+++ /dev/null
@@ -1 +0,0 @@
-../../@ohos+hypium@1.0.6/oh_modules/@ohos/hypium
\ No newline at end of file
diff --git a/entry/oh_modules/@ohos/hypium b/entry/oh_modules/@ohos/hypium
deleted file mode 120000
index ee523c70..00000000
--- a/entry/oh_modules/@ohos/hypium
+++ /dev/null
@@ -1 +0,0 @@
-../.ohpm/@ohos+hypium@1.0.6/oh_modules/@ohos/hypium
\ No newline at end of file
diff --git a/entry/src/main/ets/common/service/indexService.ts b/entry/src/main/ets/common/service/indexService.ts
index 5846eb3c..e5b97f42 100644
--- a/entry/src/main/ets/common/service/indexService.ts
+++ b/entry/src/main/ets/common/service/indexService.ts
@@ -259,15 +259,17 @@ export async function takePhotoFn(context) {
 }
 let fd
 const devPath="/dev/ttyS3"
-function openChuankouFn() {
+function openChuankouFn(callback) {
   console.log('SerialOpen in indexservice, path=' + devPath)
-  fd = testNapi.SerialOpen(devPath);
-  globalThis.num=0
-  globalThis.fd=fd
-  console.log('fdfd1111',globalThis.fd)
 
-  let parity = 0x4e; // 'N'
-  let ret = testNapi.SerialSet(globalThis.fd, 115200, 0, 8, 1, parity);
+  testNapi.SerialOpenAsync(devPath, (fd)=> {
+    globalThis.fd = fd;
+    globalThis.num=0
+    let parity = 0x4e; // 'N'
+    let ret = testNapi.SerialSetAsync(globalThis.fd, 115200, 0, 8, 1, parity, (ret) => {
+      callback()
+    });
+  });
 }
 
 function getChuankouFnMsg() {
@@ -327,10 +329,10 @@ export async function getChuankouFn(){
   if(globalThis.fd){
     return
   }
-  openChuankouFn()
+  openChuankouFn(getChuankouFnMsg)
   // clearInterval(chuankou)
   // chuankou=setInterval(()=>{
-  getChuankouFnMsg()
+  // getChuankouFnMsg()
   // },1000)
 
 }
\ No newline at end of file
diff --git a/entry/src/main/ets/common/service/terminalService.ts b/entry/src/main/ets/common/service/terminalService.ts
index 4f6f5dac..e0d033fc 100644
--- a/entry/src/main/ets/common/service/terminalService.ts
+++ b/entry/src/main/ets/common/service/terminalService.ts
@@ -7,12 +7,7 @@ import { getSyncData } from '../../common/service/initable'
 //获取设备信息
 export async function getDeviceInfo() {
     globalThis.deviceNo = 'HM-AC76'; //科目三设备
-    // globalThis.deviceNo = 'J43405J003101'; //科目二设备
-    // globalThis.deviceNo = '00-E2-69-0A-9F-6E'; //设备mac
-    // // globalThis.deviceNo = 'FE-FC-FE-7C-5C-77'; //设备mac
-    // globalThis.diskId = '1231231231'; //硬盘号
-    // globalThis.hasAuth = true;
-    // // return null
+
     return new Promise((resolve, reject) => {
         getSyncData('DeviceInfoTable').then((result: Array<any>) => {
             if (result.length) {
diff --git a/entry/src/main/ets/common/service/timeService.ts b/entry/src/main/ets/common/service/timeService.ts
index 3858aa49..3e02a81b 100644
--- a/entry/src/main/ets/common/service/timeService.ts
+++ b/entry/src/main/ets/common/service/timeService.ts
@@ -12,17 +12,8 @@ export async function timeSynchronize() {
   res = res.timeSynchronizationRsp;
   globalThis.timeInfo=res.body
 
-  // globalThis.timeInfo.url='http://112.80.35.83:11054/der2/services'
-  // globalThis.timeInfo.url='http://112.80.35.83:11054/der2/services'
-  console.info('jiangsong1:timeSynchronization '+ JSON.stringify(res) );
 
-  // {"timeSynchronizationRsp":
-  //   {"head":
-  //      {"resultCode":"0","resultMessage":"%E6%97%B6%E9%97%B4%E5%90%8C%E6%AD%A5%E6%8E%A5%E5%8F%A3-%E6%88%90%E5%8A%9F","time":"2023-03-07 11:08:09"},
-  //      "body":
-  //          {"carid":"1003","kdid":"2","ksdd":"6224J252","mode":"3","paraKdid":"122","url":"http://192.168.32.167:8084/der2/services"}
-  //   }
-  // }
+
   return res;
 }
 
diff --git a/entry/src/main/ets/common/service/videoService.ts b/entry/src/main/ets/common/service/videoService.ts
index abb6fdc0..5ce4ebd0 100644
--- a/entry/src/main/ets/common/service/videoService.ts
+++ b/entry/src/main/ets/common/service/videoService.ts
@@ -108,15 +108,7 @@ export async function takePhoto(param, context,dir,flag=1,callback?) {
       console.log("baohaowen_detectLoop round end size1:"+snapResult.fileSize);
       callback({fileSize:snapResult.fileSize })
     });
-    // rtsp_server.getVideoSnapshot(context, video_uri, fileName,dir,false,(err,snapResult)=>{
-    //   console.log(`baoyihu getVideoSnapshot  return `);
-    //   console.log(`baoyihu getVideoSnapshot  file_name：` + snapResult.fileName);
-    //   console.log(`baoyihu getVideoSnapshot  file_path：` + snapResult.filePath);
-    //   console.log(`baoyihu getVideoSnapshot  fileSize：` + snapResult.fileSize);
-    //   fileHelper.addFile(fileName,1)
-    //   callback({base64: snapResult.dataString,name:snapResult.fileName,fileSize:snapResult.fileSize })
-    //   console.log('getmyLog01')
-    // });
+
   }
   else{
     return new Promise<takePhotoParam>((resolve,reject)=>{
@@ -183,37 +175,3 @@ export async function deleteAllVideos(context,type: photoAccessHelper.AlbumType,
     }
   }
 }
-// export async function takePhoto(param, context, type = 0, dir) {
-//   return new Promise((reslove, reject) => {
-//     console.log('mmmmmmmttt,04', type)
-//
-//     // const rtsp_server = record.createServer();
-//     var video_uri = `rtsp://${param.userName}:${param.pwd}@${param.ip}:${param.port}/h264/ch${param.pztd}/main/av_stream`;
-//     // var snapResult = rtsp_server.getVideoSnapshot(context, video_uri, dir);
-//     // console.log(`baoyihu Rtsprecord getVideoSnapshot file：` + snapResult.dataString);
-//
-//     console.log(`baoyihu Rtsprecord getVideoSnapshot begin：`);
-//     // const num = Math.floor(Math.random() * 10000)
-//     console.log('mmmmmmmttt,05', video_uri)
-//
-//     const num = Math.floor(Math.random() * 10000)
-//     const fileName = `picture_record${num}.jpg`
-//     console.log(`baoyihu Rtsprecord baohaowen getVideoSnapshot fileName：` + fileName);
-//     // @ts-ignore
-//     var snapResult = rtsp_server.getVideoSnapshot(context, video_uri, fileName, dir, (ret) => {
-//       const str = ret.dataString
-//       if (type == 1) {
-//         console.log('mmmmmmmttt',str.length)
-//         reslove(str)
-//       } else {
-//         reslove('')
-//       }
-//     })
-//     // console.log('mmmmmmmttt,06',snapResult.dataString)
-//
-//     // console.log(`baoyihu Rtsprecord getVideoSnapshot file：` + snapResult.fileName);
-//     // console.log(`baoyihu Rtsprecord getVideoSnapshot dataLen：` + snapResult.dataString.length);
-//     // console.log('datadata1',snapResult.dataString.length)
-//   })
-//
-// }
\ No newline at end of file
diff --git a/entry/src/main/ets/common/utils/GlobalTcp.ts b/entry/src/main/ets/common/utils/GlobalTcp.ts
index d23dd7d6..e8239e87 100644
--- a/entry/src/main/ets/common/utils/GlobalTcp.ts
+++ b/entry/src/main/ets/common/utils/GlobalTcp.ts
@@ -1,95 +1,94 @@
 import TcpClient from './TcpClient';
-import { getSyncData} from '../service/initable'
+import { getSyncData } from '../service/initable'
 import hilog from '@ohos.hilog';
-export async function getTCP(flag=false) {
 
-  getSyncData('IpConfigTable').then(async (result:Array<any>)=>{
-    console.log('result222',JSON.stringify(result))
-    if(result.length){
-      if(globalThis.TcpClient&&globalThis.TcpClient.closeTcp){
-        if(!flag){
-          return
-        }
-        globalThis.TcpClient.closeTcp(async ()=>{
-          // const tcpClient: TcpClient =new TcpClient(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
-          // globalThis.TcpClient = tcpClient
+export async function getTCP(flag?) {
 
-          await globalThis.TcpClient.rebindTcp(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
-          await globalThis.TcpClient.connectTcp()
-          await globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo||'402')//1002
-          await globalThis.TcpClient.onMessage((val)=>{
-            hilog.info(0x0000, 'testTag', "valvalval1" + JSON.stringify(val));
-
-            // console.log('valvalval',val)
-            setTimeout(()=>{
-              globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo||'402')//1002
-              if(val&&globalThis.udpClient&&globalThis.udpClient.sendMsg){
-                // const msg=val.substring(5,val.length-1)
-                globalThis.udpClient?.sendMsg(val)
-              }
-            },1000)
-
-          })
-          globalThis.TcpClient.onError(async()=>{
-            await globalThis.TcpClient.rebindTcp(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
+  getSyncData('IpConfigTable').then(async (result: Array<any>) => {
+    console.log('result222', JSON.stringify(result))
+    if (result.length) {
+      if (globalThis.TcpClient && globalThis.TcpClient.closeTcp) {
+        globalThis.TcpClient.closeTcp(async () => {
+          if(!flag){
+            return
+          }
+          setTimeout(async () => {
+            await globalThis.TcpClient.rebindTcp(result[0].tcplocalIp, result[0].tcplocalIpPort, result[0].tcpOppositeIp, result[0].tcpOppositePort)
             await globalThis.TcpClient.connectTcp()
-            await globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo||'402')//1002
-            await globalThis.TcpClient.onMessage((val)=>{
+            await globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo || '402') //1002
+            await globalThis.TcpClient.onMessage((val) => {
               hilog.info(0x0000, 'testTag', "valvalval1" + JSON.stringify(val));
 
               // console.log('valvalval',val)
-              setTimeout(()=>{
-                globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo||'402')//1002
-                if(val&&globalThis.udpClient&&globalThis.udpClient.sendMsg){
+              setTimeout(() => {
+                globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo || '402') //1002
+                if (val && globalThis.udpClient && globalThis.udpClient.sendMsg) {
                   // const msg=val.substring(5,val.length-1)
                   globalThis.udpClient?.sendMsg(val)
                 }
-              },1000)
+              }, 1000)
 
             })
-          })
+            globalThis.TcpClient.onError(async () => {
+              await globalThis.TcpClient.rebindTcp(result[0].tcplocalIp, result[0].tcplocalIpPort, result[0].tcpOppositeIp, result[0].tcpOppositePort)
+              await globalThis.TcpClient.connectTcp()
+              await globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo || '402') //1002
+              await globalThis.TcpClient.onMessage((val) => {
+                hilog.info(0x0000, 'testTag', "valvalval1" + JSON.stringify(val));
 
+                // console.log('valvalval',val)
+                setTimeout(() => {
+                  globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo || '402') //1002
+                  if (val && globalThis.udpClient && globalThis.udpClient.sendMsg) {
+                    // const msg=val.substring(5,val.length-1)
+                    globalThis.udpClient?.sendMsg(val)
+                  }
+                }, 1000)
+
+              })
+            })
+          },1000)
         })
 
       }
-      else{
+      else {
         // prompt.showToast({
         //   message:'初始化localIp'+ result[0].localIp+ result[0].localIpPort+'oppositeIp'+result[0].oppositeIp+result[0].oppositeIpPort,
         //   duration: 1000
         // });
-        const tcpClient: TcpClient =new TcpClient(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
+        const tcpClient: TcpClient = new TcpClient(result[0].tcplocalIp, result[0].tcplocalIpPort, result[0].tcpOppositeIp, result[0].tcpOppositePort)
         globalThis.TcpClient = tcpClient
         await globalThis.TcpClient.bindTcp()
         await globalThis.TcpClient.connectTcp()
-        await globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo||'402')//1002
+        await globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo || '402') //1002
 
-        await globalThis.TcpClient.onMessage((val)=>{
+        await globalThis.TcpClient.onMessage((val) => {
           hilog.info(0x0000, 'testTag', "valvalval2" + JSON.stringify(val));
-          setTimeout(()=>{
-            globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo||'402')//1002
-            if(val&&globalThis.udpClient&&globalThis.udpClient.sendMsg){
+          setTimeout(() => {
+            globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo || '402') //1002
+            if (val && globalThis.udpClient && globalThis.udpClient.sendMsg) {
               // const msg=val.substring(5,val.length-1)
               globalThis.udpClient?.sendMsg(val)
             }
-          },1000)
+          }, 1000)
 
         })
-        globalThis.TcpClient.onError(async()=>{
-          const tcpClient: TcpClient =new TcpClient(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
+        globalThis.TcpClient.onError(async () => {
+          const tcpClient: TcpClient = new TcpClient(result[0].tcplocalIp, result[0].tcplocalIpPort, result[0].tcpOppositeIp, result[0].tcpOppositePort)
           globalThis.TcpClient = tcpClient
           await globalThis.TcpClient.bindTcp()
           await globalThis.TcpClient.connectTcp()
-          await globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo||'402')//1002
+          await globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo || '402') //1002
 
-          await globalThis.TcpClient.onMessage((val)=>{
+          await globalThis.TcpClient.onMessage((val) => {
             hilog.info(0x0000, 'testTag', "valvalval2" + JSON.stringify(val));
-            setTimeout(()=>{
-              globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo||'402')//1002
-              if(val&&globalThis.udpClient&&globalThis.udpClient.sendMsg){
+            setTimeout(() => {
+              globalThis.TcpClient.sendMsg(globalThis.carInfo?.carNo || '402') //1002
+              if (val && globalThis.udpClient && globalThis.udpClient.sendMsg) {
                 // const msg=val.substring(5,val.length-1)
                 globalThis.udpClient?.sendMsg(val)
               }
-            },1000)
+            }, 1000)
 
           })
         })
@@ -97,9 +96,10 @@ export async function getTCP(flag=false) {
       }
       // globalThis.udpClient = new UdpClient(result[0].localIp, result[0].localIpPort,result[0].oppositeIp,result[0].oppositeIpPort)
 
-    }else{
-      globalThis.TcpClient={}
-      globalThis.TcpClient.onMessage=()=>{}
+    } else {
+      globalThis.TcpClient = {}
+      globalThis.TcpClient.onMessage = () => {
+      }
     }
   })
 }
diff --git a/entry/src/main/ets/common/utils/GlobalUdp.ts b/entry/src/main/ets/common/utils/GlobalUdp.ts
index e802a649..f91422a4 100644
--- a/entry/src/main/ets/common/utils/GlobalUdp.ts
+++ b/entry/src/main/ets/common/utils/GlobalUdp.ts
@@ -8,22 +8,20 @@ import {string2Bytes} from '../../common/utils/tools'
 export async function sendMsg(val){
   // globalThis.udpClient1&&globalThis.udpClient1.sendMsg(val)
 }
-export async function getUDP(flag:Boolean=false) {
+export async function getUDP() {
   getSyncData('IpConfigTable').then((result:Array<any>)=>{
     if(result.length){
-      if(!flag){
-        return
-      }
       if(globalThis.udpClient&&globalThis.udpClient.closeUdp){
         globalThis.udpClient.closeUdp(()=>{
-          globalThis.udpClient.rebindUdp(result[0].udplocalIp, result[0].udplocalIpPort,result[0].udpOppositeIp,result[0].udpOppositeIpPort)
-          globalThis.udpClient.sendMsg('111')
-          globalThis.host=`http://${result[0].centerIp}:${result[0].centerPort}`
-          globalThis.udpClient.onError(globalThis.udpClient.onMessage?globalThis.udpClient.onMessage:()=>{})
+         setTimeout(()=>{
+           globalThis.udpClient.rebindUdp(result[0].udplocalIp, result[0].udplocalIpPort,result[0].udpOppositeIp,result[0].udpOppositeIpPort)
+           globalThis.udpClient.sendMsg('111')
+           globalThis.host=`http://${result[0].centerIp}:${result[0].centerPort}`
+           globalThis.udpClient.onError(globalThis.udpClient.onMessage?globalThis.udpClient.onMessage:()=>{})
 
+         },1000)
         })
       }else{
-
         const udpClient: UdpClient =new UdpClient(result[0].udplocalIp, result[0].udplocalIpPort,result[0].udpOppositeIp,result[0].udpOppositeIpPort)
         udpClient.bindUdp()
         udpClient.sendMsg('111')
@@ -41,19 +39,19 @@ export async function getUDP(flag:Boolean=false) {
   })
 }
 
-export async function getUDP2(flag:Boolean=false) {
+export async function getUDP2() {
   getSyncData('IpConfigTable').then(async (result:Array<any>)=>{
     if(result.length){
       if(globalThis.udpClient2&&globalThis.udpClient2.closeUdp){
-        if(!flag){
-          return
-        }
+
         globalThis.udpClient2.closeUdp(async ()=>{
-          globalThis.udpClient2.rebindUdp(result[0].udplocalIp, '8800',globalThis.carInfo?.udpAddress,globalThis.carInfo?.messagePort)
-          globalThis.udpClient2.onMessage((val)=>{
-          })
-          globalThis.udpClient2.onError()
-          globalThis.udpClient2.setMsgCallBack=()=>{}
+          setTimeout(()=>{
+            globalThis.udpClient2.rebindUdp(result[0].udplocalIp, '8800',globalThis.carInfo?.udpAddress,globalThis.carInfo?.messagePort)
+            globalThis.udpClient2.onMessage((val)=>{
+            })
+            globalThis.udpClient2.onError()
+            globalThis.udpClient2.setMsgCallBack=()=>{}
+          },1000)
 
         })
       }else{
diff --git a/entry/src/main/ets/entryability/EntryAbility.ts b/entry/src/main/ets/entryability/EntryAbility.ts
index 406c4e04..9bf20d97 100644
--- a/entry/src/main/ets/entryability/EntryAbility.ts
+++ b/entry/src/main/ets/entryability/EntryAbility.ts
@@ -32,18 +32,28 @@ export default class EntryAbility extends UIAbility {
         globalThis.judgeVersion = '2024.11.22.14'
         globalThis.videoVersion= '1.0'
         // globalThis.version = '2022.03.14.01'
-
-        globalThis.context = this.context;
+       //视频遮挡
+        globalThis.spzd={
+            spzd1:false,
+            spzd2:false,
+            spzd3:false,
+            spzd4:false,
+        }
+        globalThis.singlePlay=false //单机模式
+        globalThis.signNum=0//心跳指令编号
+        globalThis.lsh='0000000000000'//学员流水号
+        globalThis.statue=1//考试状态
         globalThis.pathDir = this.context.filesDir;
+        globalThis.context=this.context
         console.info('jiangsong globalThis.pathDir = ' + globalThis.pathDir);
         // this.requestPermission(this.context)
         // this.featureAbilityAuth()
 
         const windowClass  = await windowStage.getMainWindow();
         globalThis.windowClass = windowClass
-        await windowClass.setWindowLayoutFullScreen(true)
+        // await windowClass.setWindowLayoutFullScreen(true)
         await windowClass.setWindowSystemBarEnable([]) //全屏
-        // await windowClass.setWindowSystemBarEnable(['navigation'])
+        await windowClass.setWindowSystemBarEnable(['navigation'])
 
         windowStage.loadContent('pages/Index', (err, data) => {
             if (err.code) {
diff --git a/entry/src/main/ets/mock/CandidateData.ts b/entry/src/main/ets/mock/CandidateData.ts
index e338fcfe..a188a7db 100644
--- a/entry/src/main/ets/mock/CandidateData.ts
+++ b/entry/src/main/ets/mock/CandidateData.ts
@@ -255,4 +255,28 @@ export const EmptyCandidateObject = {
   xh: '',
   xldm: '',
   yycs: ''
+}
+export const VideoConfig={
+  spls: '',
+  faceFlag: false,
+  pztd: '2',
+  ljlx: '',
+  ip: '192.168.7.112',
+  port: '554',
+  userName: 'admin',
+  pwd: '12345qwe',
+  td1: '1',
+  td2: '2',
+  td3: '3',
+  td4: '4',
+  videoRecord1: false,
+  videoRecord2: false,
+  videoRecord3: false,
+  videoRecord4: false,
+  rlls: '1',
+  spzd4:false,
+  spzd3:false,
+  spzd2:false,
+  spzd1:false,
+  zdyz:'500'
 }
\ No newline at end of file
diff --git a/entry/src/main/ets/pages/CarCheck.ets b/entry/src/main/ets/pages/CarCheck.ets
index 56b86e87..199c9bdb 100644
--- a/entry/src/main/ets/pages/CarCheck.ets
+++ b/entry/src/main/ets/pages/CarCheck.ets
@@ -1,7 +1,7 @@
 import { voiceService } from '../common/service/voiceService';
 import router from '@ohos.router';
 import { carConfigurationInfo, uploadExamCarCheckResult } from '../api/checkCar';
-import TopLogo from './compontents/topLogo';
+import TopLogo from './compontents/TopLogo';
 import testNapi from '@ohos.hiserialsdk';
 import { dateFormat } from '../common/utils/tools';
 
@@ -209,17 +209,7 @@ export default struct Index {
     });
 
     this.carConfigurationInfoFn()
-    // //todo串口
-    // this.openChuankouFn()
-    // // this.getChuankouFn()
-    //
-    // this.interval=setInterval(()=>{
-    //   const dwArr=[14,15,16,17,18,19,20]
-    //   // if(dwArr.indexOf(this.index)>=0&&!this.stopFlag){
-    //     this.getChuankouFn()
-    //     return
-    //   // }
-    // },1000)
+
   }
 
   openChuankouFn() {
@@ -272,47 +262,47 @@ export default struct Index {
 
   //
   carConfigurationInfoFn() {
-    if (globalThis.singlePlay) {
-      //
-      const str = "1:5;2:5;3:5;4:5;5:5;6:5;7:5;8:5;9:5;10:5;11:5;12:5;13:5;14:5;15:5;16:5;17:5;18:5;19:5;20:5;21:5;22:2;23:5;24:5;25:5;"
-      const data = str.split(';')
-      this.checkList = []
-      const list = data
-      list.map(res => {
-        const arr = res.split(':')
-        this.checkList.push({
-          'key': parseInt(arr[0]) + 2, 'time': arr[1]
-        })
+  if (globalThis.singlePlay) {
+    //
+    const str = "1:5;2:5;3:5;4:5;5:5;6:5;7:5;8:5;9:5;10:5;11:5;12:5;13:5;14:5;15:5;16:5;17:5;18:5;19:5;20:5;21:5;22:2;23:5;24:5;25:5;"
+    const data = str.split(';')
+    this.checkList = []
+    const list = data
+    list.map(res => {
+      const arr = res.split(':')
+      this.checkList.push({
+        'key': parseInt(arr[0]) + 2, 'time': arr[1]
       })
-      this.checkListCopy = JSON.parse(JSON.stringify(this.checkList))
-      return
-    }
-    //模拟真实数据
-    const param = {
-      "body":
-      {
-        "carIdString": globalThis.carInfo.carId, //考车ID
-        "deviceNo": globalThis.deviceNo
-      }
-    }
-
-    carConfigurationInfo(param).then(res => {
-      const data = res.body.ES_CHECK_CAR_ITEM[0].ITEMS.split(';')
-      this.checkList = []
-      const list = data
-      list.map(res => {
-        const arr = res.split(':')
-        this.checkList.push({
-          'key': parseInt(arr[0]) + 2, 'time': arr[1]
-        })
-      })
-      this.checkListCopy = JSON.parse(JSON.stringify(this.checkList))
-      //            this.checkList = JSON.parse(res).body.ES_CHECK_CAR_ITEM[0].split(';')
-      console.log('this.checkList' + this.checkList)
-    }).catch((error) => {
-      console.log('error12error' + error)
     })
+    this.checkListCopy = JSON.parse(JSON.stringify(this.checkList))
+    return
   }
+  //模拟真实数据
+  const param = {
+    "body":
+    {
+      "carIdString": globalThis.carInfo.carId, //考车ID
+      "deviceNo": globalThis.deviceNo
+    }
+  }
+
+  carConfigurationInfo(param).then(res => {
+    const data = res.body.ES_CHECK_CAR_ITEM[0].ITEMS.split(';')
+    this.checkList = []
+    const list = data
+    list.map(res => {
+      const arr = res.split(':')
+      this.checkList.push({
+        'key': parseInt(arr[0]) + 2, 'time': arr[1]
+      })
+    })
+    this.checkListCopy = JSON.parse(JSON.stringify(this.checkList))
+    //            this.checkList = JSON.parse(res).body.ES_CHECK_CAR_ITEM[0].split(';')
+    console.log('this.checkList' + this.checkList)
+  }).catch((error) => {
+    console.log('error12error' + error)
+  })
+}
 
   async kszj() {
     this.breakFlag = true
diff --git a/entry/src/main/ets/pages/ExaminerLogin.ets b/entry/src/main/ets/pages/ExaminerLogin.ets
index 5cee42c7..995a0522 100644
--- a/entry/src/main/ets/pages/ExaminerLogin.ets
+++ b/entry/src/main/ets/pages/ExaminerLogin.ets
@@ -1,5 +1,5 @@
 import router from '@ohos.router';
-import TopLogo from './compontents/topLogo';
+import TopLogo from './compontents/TopLogo';
 import { examinerLoginService } from '../common/service/ExaminerService';
 import Md5 from '../common/utils/md5';
 import promptAction from '@ohos.promptAction';
diff --git a/entry/src/main/ets/pages/Index.ets b/entry/src/main/ets/pages/Index.ets
index d0ad925f..c2ac0e9e 100644
--- a/entry/src/main/ets/pages/Index.ets
+++ b/entry/src/main/ets/pages/Index.ets
@@ -9,10 +9,14 @@ import { getUDP, getUDP2 } from '../common/utils/GlobalUdp';
 import { initJudgeUdp } from '../common/utils/UdpJudge';
 import { getTCP } from '../common/utils/GlobalTcp';
 import testNapi from '@ohos.hiserialsdk';
+import {
+  getEsCarModel,
+} from '../common/service/initable'
 import {
   getDoubleCeneterTable,
   getliushuiNum,
   getSingleCenterTable,
+  setliushuiNum,
   takePhotoFn
 } from '../common/service/indexService';
 import abilityAccessCtrl, { Permissions } from '@ohos.abilityAccessCtrl';
@@ -32,11 +36,9 @@ struct Index {
   @State ratio: number = 1700 / 960
   @State loading: boolean = true
   @State fd: number = -1;
-  @State param: VideoConfig = VideoConfigData
-  fileHelper = null;
-  private interval = null;
+  private  interval=null;
   private context = getContext(this) as common.UIAbilityContext;
-
+  fileHelper =null;
   build() {
     Column() {
       Column() {
@@ -82,6 +84,7 @@ struct Index {
               if (globalThis.timeInfo?.mode == '3') {
                 await getDoubleCeneterTable()
               } else if (globalThis.timeInfo?.mode == '1') {
+                //单中心
                 await getSingleCenterTable()
               } else {
                 promptAction.showToast({
@@ -139,8 +142,6 @@ struct Index {
             GestureGroup(GestureMode.Exclusive,
               TapGesture({ count: 2 })
                 .onAction(() => {
-                  // takePhotoFn(this.context)
-
                   globalThis.singlePlay = !globalThis.singlePlay
                   this.isSingle = globalThis.singlePlay
                 })
@@ -196,41 +197,36 @@ struct Index {
   }
 
   async heartMsg() {
+                //心跳指令编号                //考试状态
     const arr = [globalThis.signNum || 0, globalThis.statue || 1]
     let tmpList = [];
     tmpList.push(string2Bytes(arr[0], 1 * 8)[0])
     tmpList.push(string2Bytes(arr[1], 1 * 8)[0])
-    const str = globalThis.lsh || '0000000000000'
-    for (let i = 0; i < str.length; i++) {
+    const str =globalThis.lsh|| '0000000000000'
+    for (let i = 0;i < str.length; i++) {
       tmpList.push(string2Bytes(str.charCodeAt(i), 1 * 8)[0])
     }
-    const param = {
-      id: 31,
-      list: tmpList,
-      carNo: globalThis.carInfo.carNo,
-      placeId: globalThis.carInfo.examinationRomId
-    }
-    // globalThis.udpClient2.initHeartSendMsg(param,this.context)
+    const param= {id: 31,list:tmpList,carNo: globalThis.carInfo.carNo,placeId: globalThis.carInfo.examinationRomId}
     globalThis.udpClient2.sendMsg(param, this.context)
   }
 
   onPageShow() {
     this.loading = false
-    this.createAlbum()
     this.userAuth();
+    //plc
     getUDP()
+    //中心udp
     getUDP2()
     clearInterval(this.interval)
-    this.interval = setInterval(() => {
-      // setliushuiNum()
+    this.interval=setInterval(() => {
+      setliushuiNum(this.context)
       getliushuiNum()
       this.heartMsg()
     }, 1000)
-    // takePhotoFn(this.context)
-
-    //
+    // 3s拍照
+    takePhotoFn(this.context)
+    //tcp差分转发，如果差分通过udp转发可注释
     getTCP()
-    // const TcpClient: TcpClient =new TcpClient(result[0].tcplocalIp, result[0].tcplocalIpPort,result[0].tcpOppositeIp,result[0].tcpOppositePort)
 
     if (globalThis.singlePlay == undefined || globalThis.singlePlay == null) {
       globalThis.singlePlay = false
@@ -240,16 +236,15 @@ struct Index {
     console.info('Index onPageShow');
 
   }
-
+  //创建截图文件夹
   async createAlbum() {
     this.fileHelper = new FileHelper();
-    this.fileHelper.createAlbum('jt')
+    // this.fileHelper.createAlbum('jt')
     this.fileHelper.createAlbum('pz');
 
   }
-
   userAuth() {
-    const permissions: Array<Permissions> = ["ohos.permission.READ_IMAGEVIDEO", "ohos.permission.DISTRIBUTED_DATASYNC", 'ohos.permission.CONNECTIVITY_INTERNAL', 'ohos.permission.CAMERA', 'ohos.permission.READ_MEDIA', 'ohos.permission.WRITE_MEDIA', 'ohos.permission.FILE_ACCESS_MANAGER'];
+    const permissions: Array<Permissions> = ["ohos.permission.READ_IMAGEVIDEO", "ohos.permission.DISTRIBUTED_DATASYNC" ,'ohos.permission.CONNECTIVITY_INTERNAL','ohos.permission.CAMERA','ohos.permission.READ_MEDIA','ohos.permission.WRITE_MEDIA','ohos.permission.FILE_ACCESS_MANAGER'];
     let context = this.context;
     let atManager = abilityAccessCtrl.createAtManager();
     // requestPermissionsFromUser会判断权限的授权状态来决定是否唤起弹窗
@@ -271,10 +266,12 @@ struct Index {
       console.error(`Failed to request permissions from user. Code is ${err.code}, message is ${err.message}`);
     })
   }
-
   async initParams() {
-    this.loading = false
+    this.loading=false
+    //获取设备信息
+    this.createAlbum()
     await getDeviceInfo()
+    //车辆信息
     getCarInfo()
     await setCurrentTime();
     this.carNum = globalThis.carInfo.plateNo;
@@ -282,9 +279,13 @@ struct Index {
     this.hasAuth = globalThis.hasAuth;
     initJudgeUdp()
     //下载模型
-    // await this.getEsCarModel(this.context)
+    // await this.getModel()
     // const arr = [0x55, 0xaa, 0x01, 0x00, 0x02, 0x01, 0x03, 0x00]
     // globalThis.udpClientByTopLine.sendMsg(Array2Byte(arr).buffer)
-    console.info(testNapi.toString())
+  }
+  async getModel() {
+    const context = this.context;
+    //下载模型
+    await getEsCarModel(context)
   }
 }
\ No newline at end of file
diff --git a/entry/src/main/ets/pages/Judge.ets b/entry/src/main/ets/pages/Judge.ets
index 1cc2a067..d21456be 100644
--- a/entry/src/main/ets/pages/Judge.ets
+++ b/entry/src/main/ets/pages/Judge.ets
@@ -1,105 +1,30 @@
-import router from '@ohos.router';
-import prompt from '@ohos.prompt';
+import router from '@ohos.router'
+import prompt from '@ohos.prompt'
 import common from '@ohos.app.ability.common';
-import EndPoPup from './compontents/judge/end-popup';
-import LoadingPopup from './compontents/judge/loading-popup';
-import DeductedPopup from './compontents/judge/deduction-popup';
-import AmplifyPopup from './compontents/judge/amplify-popup';
-import Judge from './judgeSDK/judge';
-import { defaultJudgeConfigObj } from './judgeSDK/utils//judge-common';
+import EndPoPup from './compontents/judge/end-popup'
+import LoadingPopup from './compontents/judge/loading-popup'
+import DeductedPopup from './compontents/judge/deduction-popup'
+import AmplifyPopup from './compontents/judge/amplify-popup'
+import Judge from './judgeSDK/judge'
+import {defaultJudgeConfigObj} from './judgeSDK/utils//judge-common'
 import {
-  CARINFO,
-  CDSBInfo,
-  MAPITEMPOINTITEM,
-  MAPPOINT,
-  MarkRule,
-  Project,
-  ProjectObj,
-  SYSTEMPARMARR
-} from './judgeSDK/api/judgeSDK.d';
-import { chunkArr, formatTime, getCurrentHourTime, getCurrentTime } from '../common/utils/tools';
-import { examJudgeEndExam } from './judgeSDK/api/index';
-import { getSyncData } from '../common/service/initable';
-import { judgeConfig } from './judgeSDK/utils/judge-config';
+  Project, ProjectObj, MarkRule, CDSBInfo,
+  SYSTEMPARMARR,CARINFO ,MAPPOINT ,MAPITEMPOINTITEM
+} from './judgeSDK/api/judgeSDK.d'
+import { getCurrentTime, formatTime, getCurrentHourTime,chunkArr } from '../common/utils/tools'
+import { examJudgeEndExam } from './judgeSDK/api/index'
+import { getSyncData } from '../common/service/initable'
+import { judgeConfig } from './judgeSDK/utils/judge-config'
 import FileUtil from '../common/utils/File';
-import SignDisplayCom from './compontents/signDisplayCom';
-import { testMarkRules } from './judgeSDK/dataTest/index';
+import SignDisplayCom from './compontents/signDisplayCom'
+import {testMarkRules} from './judgeSDK/dataTest/index'
 
 @Entry
 @Component
-export default struct Index {
+struct Index {
   scroller: Scroller = new Scroller()
-  //页面通用字体大小
-  @State FONTSIZE: number = 28
-  @State BIGFONTSIZE: number = 28
-  //结束考试弹窗
-  @State endPopupVisible: boolean = false
-  //等待弹窗(考试及格，考试不及格使用)
-  @State loadingPopupVisible: boolean = false
-  //实时轨迹弹窗
-  @State signDisplayComVisible: boolean = false
-  @State isDdxk: boolean = false;
-  @State time: string = ''
-  //考试用时
-  @State examTime: number = 0
-  //开始时间
-  @State startTime: string = '00:00:00'
-  @State startFullTime: string = ''
-  @State startHourTime: string = ''
-  //科目类型
-  @State examSubject: 2 | 3 = 2;
-  @State ddxkTime: number = 0;
-  @State ddxkKsxmArr: string[] = ['']
-  @State ddxkKfArr: string[] = ['']
-  @State xmmcStr: string = ''
-  @State carztStr: string = ''
-  @State kfArr: {
-    xmmcStr?: string,
-    score: string,
-    desc: string
-  }[] = []
-  @State name: string = ''
-  @State idCard: string = ''
-  @State totalScore: number = 100
-  //模拟考试项目
-  @State projects: Project[] = []
-  @State projectsObj: ProjectObj = {}
-  @State projectsCenterObj: ProjectObj = {}
-  @State markRuleListObj: MarkRule = {}
-  @State cdsbInfoObj: CDSBInfo = {}
-  @State timer: number = 0
-  @State judgeConfig: { [k: string]: string }[] = []
-  @State judgeConfigObj: { [k: string]: any } = defaultJudgeConfigObj
-  //流水号
-  @State lsh: string = ''
-  @State kszp: string = ''
-  @State ksdd: string = ''
-  @State kssycs: string = ''
-  @State kslx: string = ''
-  //监管接口序列号
-  @State serialNumber: number = 0
-  @State carType: string = ''
-  @State carName: string = ''
-  @State isDeductedPopShow: boolean = false
-  @State isAmplifyPopShow: boolean = false
-  @State amplifiedImgIndex: number = 0
-  @State judge: any = {}
-  //行驶距离
-  @State jl: number = 0
-  //应考里程
-  @State examMileage: string = '0'
-  @State artSubject3Projects: string[] = ['直线', '会车', '变道', '超车', '掉头', '停车']
-  @State artSubject3ProjectsCodesArr: string[] = ['3', '9', '4', '10', '12', '11']
-  @State manualMarkRules: MarkRule[] = []
-  //科目三评判初始化数据
-  @State systemparmArr: SYSTEMPARMARR[] = []
-  @State mapPointItemArr: MAPITEMPOINTITEM[] = []
-  @State carinfoArrr: CARINFO[] = []
-  @State mapPointArr: MAPPOINT[] = []
   private context = getContext(this) as common.UIAbilityContext;
   private img: ImageBitmap = new ImageBitmap("/resources/base/media/1.png")
-  //已考的考试项目
-  private wantInfos = []
 
   async aboutToAppear() {
     globalThis.windowClass.setWindowSystemBarEnable([''])
@@ -128,16 +53,16 @@ export default struct Index {
   }
 
   //初始化相关数据库表
-  async initDb() {
+  async initDb(){
     const examSubject = globalThis.carInfo.examSubject;
     const {isTrajectoryOpen,trajectoryPath} = judgeConfig
     await this.initStudent();
     await this.initCar();
 
     //是否开启轨迹回放模式
-    if (isTrajectoryOpen) {
+    if(isTrajectoryOpen){
       this.initTrajectoryParam(trajectoryPath)
-    } else {
+    }else{
       examSubject == 2
         ? await this.initSystemKm2Param()
         : await this.initSystemKm3Param()
@@ -148,12 +73,11 @@ export default struct Index {
     await this.initCDSBInfo()
 
     // 科目三新增读取表数据
-    if (examSubject == 3) {
+    if(examSubject == 3){
       await this.initMapPoint()
       await this.initMapPointItem()
     }
   }
-
   // 查询考车信息
   async initCar() {
     const result = await getSyncData('ES_CARINFO')
@@ -161,14 +85,14 @@ export default struct Index {
     this.carName = decodeURI(carInfo.carclass)
     this.carType = carInfo.kscx
     this.carinfoArrr.push({
-      CARID: carInfo.carid,
-      IPADDR: '',
-      CARCLASS: decodeURI(carInfo.carclass),
-      KSCX: carInfo.kscx,
-      CARNAME: decodeURI(carInfo.carclass),
-      FLAG: carInfo.flag,
-      BK1: carInfo.bk1,
-      BK2: carInfo.bk2,
+      CARID:carInfo.carid,
+      IPADDR:'',
+      CARCLASS:decodeURI(carInfo.carclass),
+      KSCX:carInfo.kscx,
+      CARNAME:decodeURI(carInfo.carclass),
+      FLAG:carInfo.flag,
+      BK1:carInfo.bk1,
+      BK2:carInfo.bk2,
     })
   }
 
@@ -188,29 +112,29 @@ export default struct Index {
 
   // 获取扣分代码信息
   async initMarkRules(markRules ?: MarkRule[]) {
-    const markRuleParams = markRules || (await getSyncData('MA_MARKRULE') as MarkRule[])
+    const markRuleParams = markRules ||( await getSyncData('MA_MARKRULE') as MarkRule[])
 
-    markRuleParams.forEach(mark => {
+    markRuleParams .forEach(mark => {
       const tempObj = {
-        itemno: mark.itemno * 1,
-        markcatalog: mark.markcatalog,
-        markshow: decodeURI(mark.markshow),
-        markreal: mark.markreal * 1,
-        markserial: mark.markserial,
-        kfxh: mark.kfxh,
+        itemno:mark.itemno * 1,
+        markcatalog:mark.markcatalog,
+        markshow:decodeURI(mark.markshow),
+        markreal:mark.markreal * 1,
+        markserial:mark.markserial,
+        kfxh:mark.kfxh,
         //TODO 科目三评判新参数
-        OnlyOneKind: mark.onlyoneid * 1,
-        NoCancelId: mark.nocancelid * 1,
-        GPS_SID: mark.gps_sid == 0 ? false : true
+        OnlyOneKind:mark.onlyoneid * 1,
+        NoCancelId:mark.nocancelid * 1,
+        GPS_SID:mark.gps_sid == 0 ? false : true
       }
       const markserial = mark.markserial * 1;
 
       //筛选出人工评判的扣分
-      if (markserial > 100 && markserial < 200) {
+      if(markserial > 100 && markserial < 200){
         this.manualMarkRules.push(tempObj)
       }
       this.markRuleListObj[`${mark.itemno}_${mark.markserial}`] = {
-        ...tempObj,
+       ...tempObj,
         markserial: mark.markserial,
       };
     })
@@ -230,9 +154,9 @@ export default struct Index {
       const {v_no,v_value} = sys;
       const v_no_num = v_no * 1;
       const value = decodeURIComponent(v_value)
-      if (v_no_num >= 10 && v_no_num <= 900) {
+      if(v_no_num >= 10 &&v_no_num <= 900){
         judgeConfig.push({
-          key: v_no_num, value: value,
+          key: v_no_num,value: value,
           name: decodeURI(sys.v_name)
         })
       }
@@ -243,35 +167,35 @@ export default struct Index {
   }
 
   // 初始化systemParam表
-  async initSystemKm2Param() {
-    const systemParms: any = await getSyncData('MA_SYSTEMPARM')
+  async initSystemKm2Param(){
+    const systemParms:any = await getSyncData('MA_SYSTEMPARM')
     const carName = this.carName;
 
-    let carNo2 = '', allItems = [];
-    systemParms.forEach((systemParm) => {
+    let carNo2 = '',allItems = [];
+    systemParms.forEach((systemParm)=>{
       const {no1,no2,no3} = systemParm;
 
       //获取当前考车的no2
-      if (no1 == 3 && no3 == 1) {
+      if(no1 == 3 && no3 == 1){
         const txt1 = decodeURI(systemParm.txt1)
-        if (txt1 === carName) {
+        if(txt1 === carName){
           carNo2 = no2;
         }
       }
 
       //获取当前考车的考试项目
-      if (carNo2 !== '' && no2 == carNo2 && no3 == 10) {
+      if(carNo2 !== '' && no2 == carNo2 && no3 == 10){
         allItems = decodeURIComponent(systemParm.txt1).split(',')
       }
 
       // 存储当前考车考试项目
-      if (allItems.length && no1 == 6 && allItems.includes(no2)) {
+      if(allItems.length && no1 == 6 && allItems.includes(no2)){
         const txt2 = decodeURIComponent(systemParm.txt2)
         const currentProject = {
-          name: decodeURI(systemParm.txt1),
-          abbreviation: decodeURI(systemParm.txt3),
-          projectCode: no2,
-          projectCodeCenter: txt2
+          name:decodeURI(systemParm.txt1),
+          abbreviation:decodeURI(systemParm.txt3),
+          projectCode:no2,
+          projectCodeCenter:txt2
           // sbxh:project.type
         }
         this.projectsObj[no2] = currentProject
@@ -281,7 +205,7 @@ export default struct Index {
     })
 
     const projects = this.projects;
-    if (!projects.length) {
+    if(!projects.length){
       prompt.showToast({
         message: '读取数据库信息失败，请重新考试！',
         duration: 8000
@@ -291,14 +215,14 @@ export default struct Index {
   }
 
   //初始化systemParam表
-  async initSystemKm3Param(sysParam?: SYSTEMPARMARR[]) {
+  async initSystemKm3Param(sysParam?:SYSTEMPARMARR[]) {
     const systemParms: any = sysParam || await getSyncData('MA_SYSTEMPARM')
 
     const {isTrajectoryOpen} = judgeConfig
 
     systemParms.forEach((systemParm) => {
 
-      if (isTrajectoryOpen) {
+      if(isTrajectoryOpen){
         systemParm.no1 = systemParm.NO1;
         systemParm.no2 = systemParm.NO2;
         systemParm.no3 = systemParm.NO3;
@@ -310,12 +234,10 @@ export default struct Index {
       const {no1,no2,no3,} = systemParm;
 
       this.systemparmArr.push({
-        'NO1': no1 * 1,
-        'NO2': no2 * 1,
-        'NO3': no3 * 1,
-        'TXT1': decodeURIComponent(systemParm.txt1),
-        'TXT2': decodeURIComponent(systemParm.txt2),
-        'TXT3': decodeURIComponent(systemParm.txt3),
+        'NO1':no1*1,'NO2':no2*1,'NO3':no3*1,
+        'TXT1':decodeURIComponent(systemParm.txt1),
+        'TXT2':decodeURIComponent(systemParm.txt2),
+        'TXT3':decodeURIComponent(systemParm.txt3),
       })
 
       const txt2 = decodeURIComponent(systemParm.txt2)
@@ -331,7 +253,7 @@ export default struct Index {
         this.projectsCenterObj[txt2] = currentProject
         this.projects.push(currentProject)
       }
-      if (no1 == 3 && no2 == 1 && no3 == 15) {
+      if(no1 == 3 && no2 == 1 && no3 == 15){
         this.examMileage = decodeURI(systemParm.txt1)
       }
     })
@@ -381,7 +303,7 @@ export default struct Index {
   // 断点续考判断
   async goDdxkItems() {
     const judgeConfigObj = this.judgeConfigObj
-    if (judgeConfigObj['369'] != 1 || judgeConfigObj['432'] != 1) {
+    if(judgeConfigObj['369'] != 1 || judgeConfigObj['432'] != 1){
       return
     }
     //断点续考判断
@@ -426,64 +348,53 @@ export default struct Index {
   }
 
   // 初始化mapPoint表
-  async initMapPoint() {
+  async initMapPoint(){
     const pointParams = await getSyncData('MA_MAP_POINT')
     //@ts-ignore
-    pointParams.forEach(point => {
-      const {
-        point_no,
-        gps_e,
-        gps_n,
-        point_no_f,
-        point_type,
-        road_code,
-        gps_e_Location,
-        gps_n_Location,
-        f_gps_e,
-        f_gps_n,
-        passed
-      } = point;
+    pointParams.forEach(point=>{
+      const {point_no,gps_e,gps_n,point_no_f,point_type,road_code,gps_e_Location,gps_n_Location,f_gps_e,f_gps_n,passed} = point;
       this.mapPointArr.push({
-        point_no: point_no * 1,
-        gps_e: gps_e * 1,
-        gps_n: gps_n * 1,
-        point_no_f: point_no_f * 1,
-        point_type: point_type * 1,
+        point_no:point_no * 1,
+        gps_e:gps_e * 1,
+        gps_n:gps_n * 1,
+        point_no_f:point_no_f * 1,
+        point_type:point_type * 1,
         road_code,
-        gps_e_Location: (gps_e_Location || 0) * 1,
-        gps_n_Location: (gps_n_Location || 0) * 1,
-        f_gps_e: f_gps_e * 1,
-        f_gps_n: f_gps_n * 1,
-        passed: passed * 1
+        gps_e_Location:(gps_e_Location || 0 ) * 1,
+        gps_n_Location:(gps_n_Location || 0 ) * 1,
+        f_gps_e:f_gps_e * 1,
+        f_gps_n:f_gps_n * 1,
+        passed:passed * 1
       })
     })
   }
 
   // 初始化mapPointItem表
-  async initMapPointItem() {
+  async initMapPointItem(){
     const pointItemPoints = await getSyncData('MA_MAP_POINT_ITEM');
     //@ts-ignore
     pointItemPoints.forEach(itemPoint => {
       const {point_no,itemno,itemno1,subname} = itemPoint
       this.mapPointItemArr.push({
-        point_no: point_no * 1,
-        itemno: itemno * 1,
-        itemno1: itemno1 * 1,
+        point_no:point_no * 1,
+        itemno:itemno * 1,
+        itemno1:itemno1 * 1,
         subname
       })
     })
   }
 
+
   // 初始化本地systemparam表、markrule表
-  async initTrajectoryParam(trajectoryPath: string) {
+  async initTrajectoryParam(trajectoryPath:string){
     const examSubject = globalThis.carInfo.examSubject;
 
     //轨迹回放读取 systemparam表、markrule表
-    const fileUtil = new FileUtil(this.context);
+    const fileUtil  = new FileUtil(this.context);
     const folderPath = await fileUtil.initFolder(trajectoryPath);
     const str = await fileUtil.readFile(folderPath);
     const strArr = str.split('\n');
-    const [initData, beginData] = [strArr[0], strArr[1]];
+    const [initData,beginData] = [strArr[0],strArr[1]];
     const initDataObj = JSON.parse(initData)
 
     examSubject == 2
@@ -493,6 +404,7 @@ export default struct Index {
     await this.initMarkRules(testMarkRules);
   }
 
+
   build() {
     Column() {
       Row() {
@@ -500,7 +412,7 @@ export default struct Index {
           Image($rawfile('judge/signal_logoS.png')).width(120)
           Text(this.time).fontColor('#CCB48F').fontSize(32).padding({ left: 10, right: 5 })
           Image($rawfile('judge/xh_green.png')).width(50)
-        }.padding({ left: 20 })
+        }.padding({left:20})
 
         Row() {
           Text(`当前项目：${this.xmmcStr || '无'} `).fontColor('#E5CCA1').fontSize(32)
@@ -528,7 +440,7 @@ export default struct Index {
                   Text(this.startTime).fontColor('#FFF').fontSize(this.FONTSIZE)
                 }.margin({ bottom: 10 })
 
-                if (this.examSubject == 3) {
+                if(this.examSubject == 3){
                   Row() {
                     Text('考试路线：').fontColor('#E5CCA1').fontSize(this.FONTSIZE)
                     Text('线路6').fontColor('#FFAD33').fontSize(this.FONTSIZE)
@@ -548,13 +460,10 @@ export default struct Index {
                   Text(formatTime(this.examTime)).fontColor('#FFF').fontSize(this.FONTSIZE)
                 }.margin({ bottom: 10 })
 
-                if (this.examSubject == 3) {
+                if(this.examSubject == 3){
                   Row() {
-                    if (this.judgeConfigObj['375'] == '0') {
-                      Text(`应行驶：${this.examMileage}m`)
-                        .fontColor('#E5CCA1')
-                        .fontSize(this.FONTSIZE)
-                        .padding({ right: 20 })
+                    if(this.judgeConfigObj['375'] == '0'){
+                      Text(`应行驶：${this.examMileage}m`).fontColor('#E5CCA1').fontSize(this.FONTSIZE).padding({right:20})
                     }
                     Text(`已行驶：${this.jl}m`).fontColor('#FFAD33').fontSize(this.FONTSIZE)
                   }
@@ -565,10 +474,9 @@ export default struct Index {
             }.width('100%')
 
             Column() {
-              Row() {
+              Row(){
                 Text(this.carztStr).fontColor('#FFA500').fontSize(this.FONTSIZE)
               }.height(40)
-
               Row() {
                 Flex({ direction: FlexDirection.Column }) {
                   List({}) {
@@ -590,115 +498,73 @@ export default struct Index {
                             .margin({ top: 10, bottom: 8, left: 5, right: 5 })
                         }.margin({ top: 15 }).alignItems(HorizontalAlign.Start)
 
-                      }.margin({ bottom: 25 })
+                      }.margin({bottom:25})
                     })
-                  }.padding({ left: 15, right: 15, top: 30, bottom: 5 })
+                  }.padding({left:15,right:15,top:30,bottom:5})
                 }
-                .backgroundImage($rawfile('judge/score_bg.png'), ImageRepeat.NoRepeat)
-                .backgroundImageSize({ width: '100%', height: '100%' })
-                .width(514)
-                .height(618)
-                .padding({ top: 18, bottom: 15, left: 13, right: 14 })
+                  .backgroundImage($rawfile('judge/score_bg.png'), ImageRepeat.NoRepeat)
+                  .backgroundImageSize({ width: '100%', height: '100%' })
+                  .width(514)
+                  .height(618)
+                  .padding({ top: 18, bottom: 15, left: 13, right: 14 })
 
                 //科目二
-                if (this.examSubject == 2) {
-                  Flex({ wrap: FlexWrap.Wrap, direction: FlexDirection.Row, justifyContent: FlexAlign.SpaceBetween }) {
-                    List({}) {
-                      ForEach(chunkArr(this.projects, 2), (item) => {
-                        ListItem() {
-                          Row() {
-                            Row() {
+                if(this.examSubject == 2){
+                  Flex({wrap:FlexWrap.Wrap,direction:FlexDirection.Row,justifyContent:FlexAlign.SpaceBetween}){
+                    List({}){
+                      ForEach(chunkArr(this.projects,2),(item)=>{
+                        ListItem(){
+                          Row(){
+                            Row(){
                               //#FF7566 #00FFD5 #E6DECF
                               // Text(this.projectsObj[item[0].projectCode])
-                              Text(item[0].abbreviation)
-                                .fontSize(item[0].abbreviation.length > 5 ? 28 : 32)
-                                .fontColor(this.getProjectColor(this.projectsObj[item[0].projectCode].type))
-                            }
-                            .backgroundImage($rawfile('judge/project_item.png'), ImageRepeat.NoRepeat)
-                            .backgroundImageSize({ width: '100%', height: '100%' })
-                            .width('48.5%')
-                            .height(115)
-                            .margin({ bottom: 5 })
-                            .justifyContent(FlexAlign.Center)
-
-                            if (item[1]) {
-                              Row() {
+                              Text(item[0].abbreviation).fontSize(item[0].abbreviation.length > 5?28:32).fontColor(this.getProjectColor(this.projectsObj[item[0].projectCode].type))
+                            }.backgroundImage($rawfile('judge/project_item.png'),ImageRepeat.NoRepeat).backgroundImageSize({width:'100%',height:'100%'}).width('48.5%').height(115).margin({bottom:5}).justifyContent(FlexAlign.Center)
+                            if(item[1]){
+                              Row(){
                                 //#FF7566 #00FFD5 #E6DECF
-                                Text(item[1].abbreviation)
-                                  .fontSize(item[1].abbreviation.length > 5 ? 28 : 32)
-                                  .fontColor(this.getProjectColor(this.projectsObj[item[1].projectCode].type))
-                              }
-                              .backgroundImage($rawfile('judge/project_item.png'), ImageRepeat.NoRepeat)
-                              .backgroundImageSize({ width: '100%', height: '100%' })
-                              .width('48.5%')
-                              .height(115)
-                              .margin({ left: 5, bottom: 5 })
-                              .justifyContent(FlexAlign.Center)
+                                Text(item[1].abbreviation).fontSize(item[1].abbreviation.length > 5?28:32).fontColor(this.getProjectColor(this.projectsObj[item[1].projectCode].type))
+                              }.backgroundImage($rawfile('judge/project_item.png'),ImageRepeat.NoRepeat).backgroundImageSize({width:'100%',height:'100%'}).width('48.5%').height(115).margin({left:5,bottom:5}).justifyContent(FlexAlign.Center)
                             }
                           }
                         }
                       });
                     }
-                  }
-                  .backgroundImage($rawfile('judge/project_bg.png'), ImageRepeat.NoRepeat)
-                  .backgroundImageSize({ width: '100%', height: '100%' })
-                  .width('57%')
-                  .height('100%')
-                  .padding(30)
-                  .margin({ right: 10 })
+                  }.backgroundImage($rawfile('judge/project_bg.png'),ImageRepeat.NoRepeat).backgroundImageSize({width:'100%',height:'100%'}).width('57%').height('100%').padding(30).margin({right:10})
                 }
 
                 //科目三
-                if (this.examSubject == 3) {
-                  Column() {
-                    Flex({
-                      wrap: FlexWrap.Wrap,
-                      direction: FlexDirection.Row,
-                      justifyContent: FlexAlign.SpaceBetween
-                    }) {
-                      List({}) {
-                        ForEach(this.projects, (project) => {
-                          ListItem() {
-                            Text(project.name) {
+                if(this.examSubject == 3){
+                  Column(){
+                    Flex({wrap:FlexWrap.Wrap,direction:FlexDirection.Row,justifyContent:FlexAlign.SpaceBetween}){
+                      List({}){
+                        ForEach(this.projects,(project)=>{
+                          ListItem(){
+                            Text(project.name){
 
-                            }
-                            .fontColor(this.getProjectColor(this.projectsObj[project.projectCode].type))
-                            .margin({ bottom: 5 })
-                            .fontSize(26)
-                          }.margin({ bottom: 8 })
+                            }.fontColor(this.getProjectColor(this.projectsObj[project.projectCode].type)).margin({bottom:5}).fontSize(26)
+                          }.margin({bottom:8})
                         })
-                      }.lanes(2).margin({ left: 25 })
-                    }
-                    .width('100%')
-                    .height('50%')
-                    .backgroundImage($rawfile('judge/project_km3_bg.png'), ImageRepeat.NoRepeat)
-                    .backgroundImageSize({ width: '100%', height: '100%' })
-                    .padding(30)
-                    .margin({ right: 5 })
+                      }.lanes(2).margin({left:25})
+                    }.width('100%').height('50%').backgroundImage($rawfile('judge/project_km3_bg.png'),ImageRepeat.NoRepeat).backgroundImageSize({width:'100%',height:'100%'}).padding(30).margin({right:5})
 
-                    Flex({ wrap: FlexWrap.Wrap, direction: FlexDirection.Row, justifyContent: FlexAlign.SpaceAround }) {
-                      List() {
-                        ForEach(this.artSubject3Projects, (item, index) => {
-                          ListItem() {
-                          }
-                          .backgroundImage(
+                    Flex({wrap:FlexWrap.Wrap,direction:FlexDirection.Row,justifyContent:FlexAlign.SpaceAround}){
+                      List(){
+                        ForEach(this.artSubject3Projects,(item,index)=>{
+                          ListItem(){}.backgroundImage(
                             $rawfile(
-                              `judge/km3/${this.getIsExitManualProject(index) ? item : (item + '_gray')}.png`
-                            ), ImageRepeat.NoRepeat)
-                          .backgroundImageSize({ width: '100%', height: '100%' })
-                          .width(174)
-                          .height(118)
-                          .margin({ bottom: 15 })
-                          .onClick(() => {
-                            if (this.getIsExitManualProject(index)) {
+                              `judge/km3/${this.getIsExitManualProject(index) ? item : (item+'_gray')}.png`
+                            ),ImageRepeat.NoRepeat)
+                          .backgroundImageSize({width:'100%',height:'100%'}).width(174).height(118).margin({bottom:15})
+                          .onClick(()=>{
+                            if(this.getIsExitManualProject(index)){
                               // 靠边停车时候可以触发
-                              if (this.judgeConfigObj['343'] == 0) {
+                              if(this.judgeConfigObj['343'] == 0 ){
                                 const xmmcStr = this.xmmcStr;
-                                if (xmmcStr == '无' || xmmcStr == '') {
-                                  this.amplifiedImgIndex = index;
-                                  this.isAmplifyPopShow = true
-                                } else {
-                                  if (index === 5) {
+                                if(xmmcStr == '无' || xmmcStr == ''){
+                                  this.amplifiedImgIndex = index;this.isAmplifyPopShow = true
+                                } else{
+                                  if(index === 5){
                                     prompt.showToast({
                                       message: `${xmmcStr}未结束，不允许靠边停车`,
                                       duration: 8000
@@ -706,22 +572,15 @@ export default struct Index {
                                   }
 
                                 }
-                              } else {
-                                this.amplifiedImgIndex = index;
-                                this.isAmplifyPopShow = true
+                              }else{
+                                this.amplifiedImgIndex = index;this.isAmplifyPopShow = true
                               }
                             }
                           })
                         })
-                      }.lanes(3).margin({ left: 5, top: 18 })
+                      }.lanes(3).margin({left:5,top:18})
                     }
-                  }
-                  .backgroundImage($rawfile('judge/project_bg.png'), ImageRepeat.NoRepeat)
-                  .backgroundImageSize({ width: '100%', height: '100%' })
-                  .width(660)
-                  .height(640)
-                  .padding(44)
-                  .margin({ right: 10 })
+                  }.backgroundImage($rawfile('judge/project_bg.png'),ImageRepeat.NoRepeat).backgroundImageSize({width:'100%',height:'100%'}).width(660).height(640).padding(44).margin({right:10})
                 }
               }.margin({ top: 15 }).height('80%').justifyContent(FlexAlign.SpaceBetween)
             }.width('100%').height('100%').alignItems(HorizontalAlign.Start).margin({ top: 10 })
@@ -752,32 +611,22 @@ export default struct Index {
             .backgroundImageSize({ width: '100%', height: '100%' })
             .justifyContent(FlexAlign.Center)
             .alignItems(VerticalAlign.Center)
-            .margin({ top: 30, bottom: 15 })
+            .margin({ top: 30 ,bottom:15})
           }
 
-          Column() {
-            if (this.examSubject == 3) {
-              Row() {
-                Row() {
-                }
-                .width(60)
-                .height(60)
-                .backgroundImage($rawfile('judge/manual_judge.png'), ImageRepeat.NoRepeat)
-                .backgroundImageSize({ width: '100%', height: '100%' })
-
-                Text('人工评判').fontColor('#FFF').fontSize(32).padding({ right: 12 })
-              }
-              .width(334)
-              .height(110)
-              .justifyContent(FlexAlign.Center)
-              .alignItems(VerticalAlign.Center)
+          Column(){
+            if(this.examSubject == 3){
+              Row(){
+                Row(){}.width(60).height(60).backgroundImage($rawfile('judge/manual_judge.png'), ImageRepeat.NoRepeat).backgroundImageSize({ width: '100%', height: '100%' })
+                Text('人工评判').fontColor('#FFF').fontSize(32).padding({right:12})
+              }.width(334).height(110).justifyContent(FlexAlign.Center).alignItems(VerticalAlign.Center)
               .backgroundImage($rawfile('judge/button_nor.png'), ImageRepeat.NoRepeat)
               .backgroundImageSize({ width: '100%', height: '100%' })
-              .margin({ bottom: 10 })
-              .onClick(() => {
-                if (this.judgeConfigObj['342'] == 0) {
+              .margin({bottom:10})
+              .onClick(()=>{
+                if(this.judgeConfigObj['342'] == 0){
                   this.isDeductedPopShow = true
-                } else {
+                }else{
                   prompt.showToast({
                     message: '平台配置不允许人工评判！',
                     duration: 4000
@@ -787,41 +636,30 @@ export default struct Index {
             }
 
 
-            Row() {
-              Row() {
-              }
-              .width(60)
-              .height(60)
-              .backgroundImage($rawfile('judge/phone.png'), ImageRepeat.NoRepeat)
-              .backgroundImageSize({ width: '100%', height: '100%' })
-
-              Text('呼叫请求').fontColor('#FFF').fontSize(32).padding({ right: 12 })
-            }
-            .width(334)
-            .height(110)
-            .justifyContent(FlexAlign.Center)
-            .alignItems(VerticalAlign.Center)
+            Row(){
+              Row(){}.width(60).height(60).backgroundImage($rawfile('judge/phone.png'), ImageRepeat.NoRepeat).backgroundImageSize({ width: '100%', height: '100%' })
+              Text('呼叫请求').fontColor('#FFF').fontSize(32).padding({right:12})
+            }.width(334).height(110).justifyContent(FlexAlign.Center).alignItems(VerticalAlign.Center)
             .backgroundImage($rawfile('judge/button_nor.png'), ImageRepeat.NoRepeat)
             .backgroundImageSize({ width: '100%', height: '100%' })
-            .margin({ bottom: 10 })
+            .margin({bottom:10})
 
-            Row() {
-            }
+            Row() {}
             .width(334)
             .height(100)
             .backgroundImage($rawfile('judge/anniu_nor.png'), ImageRepeat.NoRepeat)
             .backgroundImageSize({ width: '100%', height: '100%' })
             .onClick(() => {
-              if (this.judgeConfigObj['353'] == '0') {
+              if(this.judgeConfigObj['353'] == '0' ){
                 this.endPopupVisible = true
-              } else {
+              }else{
                 prompt.showToast({
                   message: '车上不允许手动结束考试！',
                   duration: 4000
                 });
               }
             })
-          }.margin({ bottom: 30 })
+          }.margin({bottom:30})
 
         }
         .width('25%')
@@ -867,8 +705,7 @@ export default struct Index {
             msgStr: this.judge.plcStr || ''
           }).margin({ top: 100 })
 
-          Row() {
-          }
+          Row() {}
           .width(240)
           .height(240)
           .position({ x: '81%', y: 80 })
@@ -883,32 +720,30 @@ export default struct Index {
       //科目三人工扣分弹窗
       if (this.isDeductedPopShow) {
         DeductedPopup({
-          currentItems: Reflect.ownKeys(this.projectsObj).map(projectKey => {
+          currentItems:Reflect.ownKeys(this.projectsObj).map(projectKey => {
             const project = this.projectsObj[projectKey]
-            return project.type == '2' ? project.projectCode : ''
+            return project.type == '2'?project.projectCode:''
           }).filter(project => project !== ''),
-          markRules: this.manualMarkRules,
-          closePopup: () => {
-            this.isDeductedPopShow = false
-          },
-          confirmMark: async (itemno, serial) => {
+          markRules:this.manualMarkRules,
+          closePopup:()=>{this.isDeductedPopShow = false},
+          confirmMark:async (itemno,serial) => {
             const judge = this.judge
-            await judge.setJudgeMark(itemno, serial);
+            await judge.setJudgeMark(itemno,serial);
             this.isDeductedPopShow = false
           }
         })
       }
 
       //科目三人工项目确认框
-      if (this.isAmplifyPopShow) {
+      if(this.isAmplifyPopShow){
         AmplifyPopup({
-          amplifyImgIndex: this.amplifiedImgIndex,
-          confirmAmplify: async (amplify) => {
+          amplifyImgIndex:this.amplifiedImgIndex,
+          confirmAmplify:async (amplify)=>{
             const judge = this.judge
             await judge.setJudgeItem(amplify.projectCode);
             this.isAmplifyPopShow = false
           },
-          closeAmplifyPop: () => {
+          closeAmplifyPop:()=>{
             this.isAmplifyPopShow = false
           }
         })
@@ -938,30 +773,108 @@ export default struct Index {
   }
 
   // 获取是否能人工进项目
-  getIsExitManualProject = (index: number) => {
+  getIsExitManualProject = (index:number)=>{
     const {judgeConfigObj,artSubject3ProjectsCodesArr,projectsObj} = this;
 
     const unExitManualProjects = judgeConfigObj['332'].split(',') || [];
     const param348 = judgeConfigObj['348'] || '0';
     const param387 = judgeConfigObj['348'] || '0';
 
-    if (judgeConfigObj['342'] === '3' || judgeConfigObj['342'] === '2') {
+    if(judgeConfigObj['342'] === '3' || judgeConfigObj['342'] === '2'){
       return false
     }
 
-    if (unExitManualProjects.includes(artSubject3ProjectsCodesArr[index])) {
+    if(unExitManualProjects.includes(artSubject3ProjectsCodesArr[index])){
       return false
     }
 
-    if (param348 == '0' && projectsObj['9']?.type == 2) {
+    if(param348 == '0' && projectsObj['9']?.type == 2){
       return index === 0 ? true : false
     }
 
-    if (param387 === '0' && index === 5) {
+    if(param387 === '0' && index === 5){
       const {examMileage,jl} = this
       return jl >= Number(examMileage)
     }
 
     return true
   }
+
+  //页面通用字体大小
+  @State FONTSIZE: number = 28
+  @State BIGFONTSIZE: number = 28
+  //结束考试弹窗
+  @State endPopupVisible: boolean = false
+  //等待弹窗(考试及格，考试不及格使用)
+  @State loadingPopupVisible: boolean = false
+  //实时轨迹弹窗
+  @State signDisplayComVisible: boolean = false
+  @State isDdxk: boolean = false;
+  @State time: string = ''
+  //考试用时
+  @State examTime: number = 0
+  //开始时间
+  @State startTime: string = '00:00:00'
+  @State startFullTime: string = ''
+  @State startHourTime: string = ''
+  //科目类型
+  @State examSubject: 2 | 3 = 2;
+  @State ddxkTime: number = 0;
+  @State ddxkKsxmArr: string[] = ['']
+  @State ddxkKfArr: string[] = ['']
+  @State xmmcStr: string = ''
+  @State carztStr: string = ''
+  @State kfArr: {
+    xmmcStr?: string,
+    score: string,
+    desc: string
+  }[] = []
+
+  @State name: string = ''
+  @State idCard: string = ''
+  @State totalScore: number = 100
+  //模拟考试项目
+  @State projects: Project[] = []
+  @State projectsObj: ProjectObj = {}
+  @State projectsCenterObj: ProjectObj = {}
+  @State markRuleListObj: MarkRule = {}
+  @State cdsbInfoObj: CDSBInfo = {}
+  @State timer: number = 0
+  @State judgeConfig: {[k:string]:string}[] = []
+  @State judgeConfigObj: {[k:string]:any} = defaultJudgeConfigObj
+
+  //流水号
+  @State lsh: string = ''
+  @State kszp: string = ''
+  @State ksdd: string = ''
+  @State kssycs: string = ''
+  @State kslx: string = ''
+
+  //监管接口序列号
+  @State serialNumber: number = 0
+  @State carType: string = ''
+  @State carName: string = ''
+  @State isDeductedPopShow: boolean = false
+  @State isAmplifyPopShow: boolean = false
+  @State amplifiedImgIndex: number = 0
+  @State judge:any = {}
+
+  //行驶距离
+  @State jl:number =0
+  //应考里程
+  @State examMileage:string = '0'
+  //已考的考试项目
+  private wantInfos = []
+
+  @State artSubject3Projects: string[] = ['直线', '会车', '变道','超车', '掉头', '停车']
+  @State artSubject3ProjectsCodesArr: string[] = ['3', '9', '4','10', '12', '11']
+
+  @State manualMarkRules:MarkRule[] = []
+
+  //科目三评判初始化数据
+  @State systemparmArr:SYSTEMPARMARR[] = []
+  @State mapPointItemArr:MAPITEMPOINTITEM[] = []
+  @State carinfoArrr:CARINFO[] = []
+  @State mapPointArr:MAPPOINT[] = []
+
 }
diff --git a/entry/src/main/ets/pages/Register.ets b/entry/src/main/ets/pages/Register.ets
index fea54a4c..5dd6378b 100644
--- a/entry/src/main/ets/pages/Register.ets
+++ b/entry/src/main/ets/pages/Register.ets
@@ -1,4 +1,4 @@
-import TopLogo from './compontents/topLogo'
+import TopLogo from './compontents/TopLogo'
 import { registrationDeviceNo } from '../api/checkCar'
 import { dateFormat } from '../common/utils/tools'
 import deviceManager from '@ohos.distributedHardware.deviceManager'
diff --git a/entry/src/main/ets/pages/Roads.ets b/entry/src/main/ets/pages/Roads.ets
index 443245d9..43ee3759 100644
--- a/entry/src/main/ets/pages/Roads.ets
+++ b/entry/src/main/ets/pages/Roads.ets
@@ -1,4 +1,4 @@
-import TopLogo from './compontents/topLogo';
+import TopLogo from './compontents/TopLogo';
 import MA_SYSTEMPARM from '../common/constants/MA_SYSTEMPARM';
 import AccountTable from '../common/database/tables/AccountTable';
 import { getSyncData } from '../common/service/initable';
diff --git a/entry/src/main/ets/pages/Settings.ets b/entry/src/main/ets/pages/Settings.ets
index 08533b60..daa47348 100644
--- a/entry/src/main/ets/pages/Settings.ets
+++ b/entry/src/main/ets/pages/Settings.ets
@@ -1,5 +1,5 @@
 import router from '@ohos.router'
-import TopLogo from './compontents/topLogo'
+import TopLogo from './compontents/TopLogo'
 
 @Entry
 @Component
diff --git a/entry/src/main/ets/pages/TerminalInfos.ets b/entry/src/main/ets/pages/TerminalInfos.ets
index 1e584cfa..0cdd402e 100644
--- a/entry/src/main/ets/pages/TerminalInfos.ets
+++ b/entry/src/main/ets/pages/TerminalInfos.ets
@@ -1,66 +1,67 @@
-import TopLogo from './compontents/topLogo';
-import ethernet from '@ohos.net.ethernet';
-import prompt from '@ohos.prompt';
-import { getSyncData, upDateTableByArray } from '../common/service/initable';
-import { getUDP, getUDP2 } from '../common/utils/GlobalUdp';
-import { getTCP } from '../common/utils/GlobalTcp';
 
+import TopLogo from './compontents/TopLogo'
+import ethernet from '@ohos.net.ethernet';
+import prompt from '@ohos.prompt'
+import { upDateTableByArray} from '../common/service/initable'
+import { getSyncData} from '../common/service/initable'
+// import { getUDP, getUDP2 } from '../common/utils/GlobleUdp';
+// import { getTCP } from '../common/utils/GlobleTcp';
 @Entry
 @Component
 struct Index {
-  @State textList1: string[] = ['差分服务器Ip', '响应端口', '中心服务器IP', '响应端口', '子网掩码', '默认网关', 'dns', '后置机IP ', '响应端口', '前置机IP', '本地端口', '平台服务器Ip', '响应端口']
+  @State textList1: string[] = ['差分服务器Ip','响应端口','中心服务器IP','响应端口', '子网掩码','默认网关','dns','后置机IP ', '响应端口','前置机IP','本地端口','平台服务器Ip','响应端口']
   // @State textList2: string[] = []
   @State ratio: number = 1700 / 960
-  @State inputFontSize: number = 12 //12
+  @State inputFontSize:number=12  //12
   //
   // @State inputTextList1: string[] = ['192.168.7.170','8084','192.168.7.170','20122','255.255.255.0','192.168.7.1','','','114.114.114.114','112.80.35.83','11055' +
   // '',]
   // @State inputTextList2: string[] = ['192.168.7.124','20022']
 
 
-  @State inputTextList1: string[] = ['112.80.35.83', '11055', '112.80.35.83', '11052', '255.255.255.0', '192.168.7.1', '114.114.114.114', '192.168.7.124', '20022', '192.168.7.170', '20122', '112.80.35.83', '11050']
+  @State inputTextList1: string[] = ['112.80.35.83','11055','112.80.35.83','11052','255.255.255.0','192.168.7.1','114.114.114.114','192.168.7.124','20022','192.168.7.170','20122','112.80.35.83','11050']
   // @State inputTextList2: string[] = []
   // 112.80.35.83 11052
   // @State inputTextList1: string[] = ['192.168.36.2','8084','192.168.36.200','20122','255.255.255.0','192.168.36.1','','','114.114.114.114','192.168.36.139','8000']
   // @State inputTextList2: string[] = ['192.168.36.139','20022']
 
 
-  @State @Watch('outClick') outFlag: boolean = false;
-  scroller: Scroller = new Scroller()
-  private vocObj = null;
 
+
+  @State @Watch('outClick') outFlag: boolean = false;
+  private vocObj = null;
+  scroller: Scroller = new Scroller()
   build() {
     Column() {
-      TopLogo({ outFlag: $outFlag })
+      TopLogo({outFlag:$outFlag})
       Column() {
         Column() {
-          Scroll(this.scroller) {
-            Flex({ 'wrap': FlexWrap.Wrap }) {
-              ForEach(this.textList1, (item: string, index: number) => {
+          Scroll(this.scroller){
+            Flex({'wrap':FlexWrap.Wrap}) {
+              ForEach(this.textList1, (item:string, index:number) => {
                 Row() {
                   Text(item)
                     .width('40%')
                     .height('100%')
                     .fontColor('#E5CBA1')
-                    .padding({ 'left': '35px' })
-                    .fontSize(this.inputFontSize * this.ratio)
-                  TextInput({ 'text': this.inputTextList1[index] ? this.inputTextList1[index] : '' })
+                    .padding({'left': '35px'})
+                    .fontSize(this.inputFontSize*this.ratio)
+                  TextInput({'text':this.inputTextList1[index]?this.inputTextList1[index]: ''})
                     .width('50%')
                     .height('60%')
                     .fontColor('#fff')
                     .borderColor('#E6E0D8')
                     .borderRadius('10px')
                     .borderWidth('2px')
-                    .fontSize(this.inputFontSize * this.ratio)
-                    .padding({ top: 0, bottom: 0 })
+                    .fontSize(this.inputFontSize*this.ratio)
+                    .padding({top:0,bottom:0})
                     .linearGradient({
                       angle: 0,
                       colors: [[0x403C36, 0.0], [0x4D473D, 0.34], [0x3D3A34, 1.0]]
-                    })
-                    .onChange((value: string) => {
-                      this.inputTextList1[index] = value
+                    }).onChange((value: string) => {
+                    this.inputTextList1[index]=value
 
-                    })
+                  })
                 }
                 .width('50%')
                 .height('16.7%')
@@ -70,43 +71,28 @@ struct Index {
           }
           .width('95%')
           .height('90%')
-          .margin({ 'top': '2%' })
+          .margin({'top': '2%'})
           .backgroundColor('#282828')
           .borderRadius('15px')
         }
         .width('100%')
         .height('80%')
         .borderRadius('25px')
-
         Column() {
-          Image($r('app.media.terminal_save')).width('20.5%').height('74%').onClick(() => {
-            upDateTableByArray('IpConfigTable', [{
-              udplocalIp: this.inputTextList1[9],
-              udplocalIpPort: this.inputTextList1[10],
-              udpOppositeIp: this.inputTextList1[7],
-              udpOppositeIpPort: this.inputTextList1[8],
-              tcplocalIp: this.inputTextList1[9],
-              tcplocalIpPort: '8088',
-              tcpOppositeIp: this.inputTextList1[0],
-              tcpOppositePort: this.inputTextList1[1],
-              netMask: this.inputTextList1[4],
-              gateway: this.inputTextList1[5],
-              dnsServers: this.inputTextList1[6],
-              centerIp: this.inputTextList1[2],
-              centerPort: this.inputTextList1[3]
-            }])
+          Image($r('app.media.terminal_save')).width('20.5%').height('74%').onClick(()=>{
+            upDateTableByArray('IpConfigTable',[{udplocalIp:this.inputTextList1[9],udplocalIpPort:this.inputTextList1[10],udpOppositeIp:this.inputTextList1[7],udpOppositeIpPort:this.inputTextList1[8],tcplocalIp:this.inputTextList1[9],tcplocalIpPort:'8088',tcpOppositeIp:this.inputTextList1[0],tcpOppositePort:this.inputTextList1[1],netMask:this.inputTextList1[4],gateway:this.inputTextList1[5],dnsServers:this.inputTextList1[6],centerIp:this.inputTextList1[2],centerPort:this.inputTextList1[3]}])
             ethernet.setIfaceConfig("eth0", {
               mode: 0,
-              ipAddr: this.inputTextList1[9],
+              ipAddr:this.inputTextList1[9],
               route: "0.0.0.0",
-              gateway: this.inputTextList1[5], //value.gateway网关
-              netMask: this.inputTextList1[4], //value.netMask网络掩码
+              gateway: this.inputTextList1[5],//value.gateway网关
+              netMask: this.inputTextList1[4],//value.netMask网络掩码
               dnsServers: this.inputTextList1[6],
               // domain: ""
             }, (error) => {
               if (error) {
                 prompt.showToast({
-                  message: '设置失败' + JSON.stringify(error),
+                  message: '设置失败'+JSON.stringify(error),
                   duration: 3000
                 });
               } else {
@@ -116,51 +102,49 @@ struct Index {
                 });
               }
             });
-            getUDP(true)
-            getUDP2(true)
-            getTCP(true)
+
           })
         }
         .backgroundColor('#CCC4B8')
         .width('100%')
         .height('20%')
-        .borderRadius({ 'bottomLeft': '25px', 'bottomRight': '25px' })
+        .borderRadius({'bottomLeft':'25px','bottomRight':'25px'})
         .justifyContent(FlexAlign.SpaceAround)
       }
       .width('75%')
       .height('69.4%')
       .backgroundColor('#E6E3DF')
       .borderRadius('25px')
-      .margin({ 'top': '7%' })
+      .margin({'top':'7%'})
       .justifyContent(FlexAlign.SpaceAround)
 
     }
     .width('100%')
     .height('100%')
-    .backgroundImagePosition({ x: 0, y: 0 })
+    .backgroundImagePosition({x: 0, y: 0})
     .backgroundImage($r('app.media.index_bg'))
     .backgroundImageSize({ width: '100%', height: '100%' })
   }
 
   aboutToAppear() {
-    getSyncData('IpConfigTable').then((result: Array<any>) => {
-      console.log('result222', JSON.stringify(result))
-      if (result.length) {
-        console.log('tagtag', JSON.stringify(result))
-        this.inputTextList1[9] = result[0].udplocalIp
-        this.inputTextList1[10] = result[0].udplocalIpPort
-        this.inputTextList1[7] = result[0].udpOppositeIp
-        this.inputTextList1[8] = result[0].udpOppositeIpPort
+    getSyncData('IpConfigTable').then((result:Array<any>)=>{
+      console.log('result222',JSON.stringify(result))
+      if(result.length){
+        console.log('tagtag',JSON.stringify(result))
+        this.inputTextList1[9]=result[0].udplocalIp
+        this.inputTextList1[10]=result[0].udplocalIpPort
+        this.inputTextList1[7]=result[0].udpOppositeIp
+        this.inputTextList1[8]=result[0].udpOppositeIpPort
 
         // this.inputTextList1[0]=result[0].tcplocalIp
         // this.inputTextList1[13]=result[0].tcplocalIpPort
-        this.inputTextList1[0] = result[0].tcpOppositeIp
-        this.inputTextList1[1] = result[0].tcpOppositePort
-        this.inputTextList1[5] = result[0].gateway
-        this.inputTextList1[4] = result[0].netMask
-        this.inputTextList1[6] = result[0].dnsServers
-        this.inputTextList1[2] = result[0].centerIp
-        this.inputTextList1[3] = result[0].centerPort
+        this.inputTextList1[0]=result[0].tcpOppositeIp
+        this.inputTextList1[1]=result[0].tcpOppositePort
+        this.inputTextList1[5]=result[0].gateway
+        this.inputTextList1[4]=result[0].netMask
+        this.inputTextList1[6]=result[0].dnsServers
+        this.inputTextList1[2]=result[0].centerIp
+        this.inputTextList1[3]=result[0].centerPort
       }
     })
     ethernet.getIfaceConfig("eth0", (error, value) => {
@@ -178,12 +162,10 @@ struct Index {
     })
 
   }
-
   onPageShow() {
     console.info('Index onPageShow');
   }
-
-  outClick() {
+  outClick(){
 
   }
 }
\ No newline at end of file
diff --git a/entry/src/main/ets/pages/UserInfo.ets b/entry/src/main/ets/pages/UserInfo.ets
index fc7d49ae..7418377d 100644
--- a/entry/src/main/ets/pages/UserInfo.ets
+++ b/entry/src/main/ets/pages/UserInfo.ets
@@ -1,21 +1,22 @@
-import { examinationStuAbsent, getExaminationItem, getExaminationStudentInfo } from '../api/userInfo';
-import router from '@ohos.router';
-import TopLogo from './compontents/topLogo';
+import { getExaminationItem, getExaminationStudentInfo, examinationStuAbsent, getPhotosForOther } from '../api/userInfo'
+import router from '@ohos.router'
+import TopLogo from './compontents/TopLogo'
 import Md5 from '../common/utils/md5';
 import AccountTable from '../common/database/tables/AccountTable';
 import USER from '../common/constants/USER';
-import { dateFormat, getCurrentTime, string2Bytes } from '../common/utils/tools';
+import { dateFormat, getCurrentTime } from '../common/utils/tools';
 import MA_SYSSET from '../common//constants/MA_SYSSET';
-import FaceCompare from './compontents/FaceCompareByhaikang';
-import { writeObjectOut } from '../api/judge';
-import testNapi from '@ohos.idcard';
+import FaceCompare from './compontents/FaceCompare'
+// import { initJudgeUdp } from '../common/utils/UdpJudge'
+import { writeObjectOut } from '../api/judge'
+import testNapi from "@ohos.idcard";
 import common from '@ohos.app.ability.common';
-import { User, VideoConfig } from './interfaces';
-import WebRTCVoice from './webRTC/';
-import promptAction from '@ohos.promptAction';
-import { CandidateData, EmptyCandidateObject } from '../mock';
-import { getSyncData } from '../common/service/initable';
-
+import {  User } from './interfaces'
+import WebRTCVoice from './webRTC/'
+import promptAction from '@ohos.promptAction'
+import { CandidateData, EmptyCandidateObject } from "../mock/CandidateData"
+import {string2Bytes} from '../common/utils/tools'
+import { getSyncData } from '../common/service/initable'
 @Entry
 @Component
 export default struct UserInfo {
@@ -37,30 +38,9 @@ export default struct UserInfo {
   @State currentUser: User = EmptyCandidateObject
   @State dataList: Array<User> = []
   @State list: Array<User> = []
-  @State param: VideoConfig = {
-    spls: '',
-    faceFlag: false,
-    pztd: '2',
-    ljlx: '',
-    ip: '192.168.7.112',
-    port: '554',
-    userName: 'admin',
-    pwd: '12345qwe',
-    td1: '1',
-    td2: '2',
-    td3: '3',
-    td4: '4',
-    videoRecord1: false,
-    videoRecord2: false,
-    videoRecord3: false,
-    videoRecord4: false,
-    rlls: '1',
-    spzd4: false,
-    spzd3: false,
-    spzd2: false,
-    spzd1: false,
-    zdyz: '500'
-  }
+  private AccountTable = new AccountTable(() => {
+  }, USER);
+  private context = getContext(this) as common.UIAbilityContext;
   @State name: string = 'initName';
   @State sex: string = '';
   @State callBackFlag: boolean = false;
@@ -77,41 +57,26 @@ export default struct UserInfo {
   @State signNum: number = 0;
   @State isCanClick: boolean = true;
   @State faceFlag: string = '0';
-  @State FaceOpenStatue: string = '0'; //是否开启人脸识别
+  @State FaceOpenStatue: string = '0';//是否开启人脸识别
   subscriber;
   @State faceCatchImg: string = ''
-  private AccountTable = new AccountTable(() => {
-  }, USER);
-  private context = getContext(this) as common.UIAbilityContext;
-  private labelBlocks = [
-    { label: '考生姓名', key: 'xm' },
-    { label: '身份证号', key: 'sfzmhm' },
-    { label: ' 流 水 号 ', key: 'lsh' },
-    { label: '考试路线', key: 'kslx' },
-    { label: '待考次数', key: 'kssycs' },
-    { label: '考官姓名', key: 'ksy1' },
-  ]
 
   async onPageShow() {
-
     //语音功能
-    const systemParms: any = await getSyncData('MA_SYSTEMPARM')
-    console.log('systemParms', systemParms.length)
     new WebRTCVoice(this.context);
     //初始化数据
     this.initData()
     //身份证读卡器初始化
     // this.openDeviceByIDCard()
     // 如果是单机模式则模拟假数据
-
+    //获取sysset表数据
     this.initSysset()
-    // initJudgeUdp()
+    //心跳处理
     this.heartMsg()
 
   }
-
   //身份证读卡器初始化
-  openDeviceByIDCard() {
+  openDeviceByIDCard(){
     globalThis.indexComponent = this;
     // 应用启动时打开读卡设备
     let ret = testNapi.OpenDevice();
@@ -121,13 +86,11 @@ export default struct UserInfo {
       console.error("zzctest Failed to Open Device");
     }
   }
-
-  stopDeviceById() {
-    if (this.faceFlag == '1') {
-      testNapi && testNapi.StopReadCard()
+  stopDeviceById(){
+    if(this.faceFlag=='1'){
+      testNapi&&testNapi.StopReadCard()
     }
   }
-
   // 通过身份证获取当前学员
   getCurrentStudent(id) {
     let flag = false
@@ -163,7 +126,6 @@ export default struct UserInfo {
       });
     }
   }
-
   onReadCard(ret) {
     console.info(`zzctest xx Read Card ret =${ret.status}`)
     let thisVar = globalThis.indexComponent;
@@ -220,8 +182,8 @@ export default struct UserInfo {
   changeQkfn() {
     this.qkFn()
   }
-
-  initData() {
+  //初始化数据
+  initData(){
     this.stepFlag = false
     this.faceCompareSucess = 0
     this.showFaceCompare = false
@@ -246,20 +208,22 @@ export default struct UserInfo {
   }
 
   async heartMsg() {
-    globalThis.udpClient2 & globalThis.udpClient2.setMsgCallBack((val) => {
-      if (val.id == '32') {
-        globalThis.signNum = val.body[1]
-        if (val.body[0] == '7') {
+    globalThis.udpClient2&globalThis.udpClient2.setMsgCallBack((val)=>{
+      if(val.id=='32'){
+        globalThis.signNum=val.body[1]
+        if(val.body[0]=='7'){
+          //缺考处理
           this.getqkFn()
-          this.signNum = val.body[1]
+          this.signNum=val.body[1]
         }
-      } else if (val.id == '42') {
-        console.log('qkfnqkfn', val.body[0])
+      }else if(val.id=='42'){
+        //收到中心缺考确认消息
+        console.log('qkfnqkfn',val.body[0])
         this.qkFn()
       }
     })
   }
-
+  //考点端查询缺考指令内容消息请求
   getqkFn() {
     let tmpList = [];
     tmpList.push(string2Bytes(globalThis.signNum, 1 * 8)[0])
@@ -273,11 +237,6 @@ export default struct UserInfo {
     globalThis.udpClient2.sendMsg(param, this.context)
   }
 
-  facePass() {
-    if (!this.stepFlag) {
-      this.sfbdinterfaceFn()
-    }
-  }
 
   async initSysset() {
     const that = this;
@@ -292,13 +251,13 @@ export default struct UserInfo {
         const studentRefreshParam = syssetParams.filter(sys => sys.v_no === '452')
         that.studentRefreshStatue = studentRefreshParam?.[0]?.v_value || '0'
         const faceParam = syssetParams.filter(sys => sys.v_no === '2313')
-        that.FaceOpenStatue = faceParam?.[0]?.v_value == '3' ? '1' : '0'
+        that.FaceOpenStatue =faceParam?.[0]?.v_value=='3'? '1':'0'
         that.FaceOpenStatue = '0'
-        console.log('that.FaceOpenStatue', that.FaceOpenStatue)
+        console.log('that.FaceOpenStatue',that.FaceOpenStatue)
         // faceParam?.[0]?.v_value ||
         // 1身份证读卡器 2指纹 3人脸
-        this.faceFlag = faceParam?.[0]?.v_value || '0'
-        if (faceParam?.[0]?.v_value == '1') {
+        this.faceFlag=faceParam?.[0]?.v_value ||'0'
+        if(faceParam?.[0]?.v_value=='1'){
           that.openDeviceByIDCard()
         }
         //0不自动更新 1自动更新（不限次数） 2没有考生更新2次
@@ -324,10 +283,11 @@ export default struct UserInfo {
       })
     })
   }
-
+//人脸比对窗口关闭
   changeFaceCompareSuccess() {
     console.log('this.faceCompareSuces', this.faceCompareSucess, JSON.stringify(this.currentUser))
     if (this.faceCompareSucess > 0) {
+      //人脸比对通过
       this.sfbdinterfaceFn()
     }
   }
@@ -347,7 +307,7 @@ export default struct UserInfo {
     this.pageIndex--;
     this.dataList = this.list.slice(this.pageIndex * 4, this.pageIndex * 4 + 4)
   }
-
+//获取下载考生
   getExaminationStudentInfoFn() {
     if (globalThis.singlePlay) {
       return
@@ -400,7 +360,7 @@ export default struct UserInfo {
       console.log('error12error' + error)
     })
   }
-
+  //缺考
   qkFn() {
     this.faceCompareSucess = 0
     if (globalThis.singlePlay) {
@@ -437,10 +397,10 @@ export default struct UserInfo {
     })
 
   }
-
-  async getExaminationItemFn() {
+  // 获取考试项目
+  async getExaminationItemFn(){
     console.info('surenjun', this.currentUser.lsh)
-    if (!this.currentUser.lsh || globalThis.singlePlay) {
+    if(!this.currentUser.lsh||globalThis.singlePlay){
       return
     }
     const carInfo = globalThis.carInfo;
@@ -459,7 +419,6 @@ export default struct UserInfo {
     }
 
   }
-
   //身份比对
   async sfbdinterfaceFn() {
     this.stepFlag = true
@@ -484,7 +443,7 @@ export default struct UserInfo {
       ksxtbh: this.ksxtbh || '222',
       sfzmhm: this.currentUser.sfzmhm || '',
       ksysfzmhm: this.currentUser.ksy1sfzmhm || '',
-      zp: encodeURIComponent((this.faceCatchImg || this.currentUser.kszp.substr(22)) || ''),
+      zp: encodeURIComponent((this.faceCatchImg||this.currentUser.kszp.substr(22)) || ''),
       kssj: dateFormat(date) || '',
       kchp: decodeURI(plateNo),
       Ksy2sfzmhm: this.currentUser.ksy2sfzmhm || ''
@@ -534,18 +493,14 @@ export default struct UserInfo {
       this.stepFlag = false
     }
   }
-
   aboutToDisappear() {
     this.outClick()
   }
-
   outClick() {
     clearInterval(this.interval)
     this.stopDeviceById()
-    globalThis.udpClient2 && globalThis.udpClient2?.setMsgCallBack(() => {
-    })
+    globalThis.udpClient2&&globalThis.udpClient2?.setMsgCallBack(()=>{})
   }
-
   // 几个按钮公共样式
   @Styles
   commStyle(){
@@ -556,6 +511,15 @@ export default struct UserInfo {
     .margin({ bottom: 12 * this.ratio })
   }
 
+  private labelBlocks = [
+    { label: '考生姓名', key: 'xm' },
+    { label: '身份证号', key: 'sfzmhm' },
+    { label: ' 流 水 号 ', key: 'lsh' },
+    { label: '考试路线', key: 'kslx' },
+    { label: '待考次数', key: 'kssycs' },
+    { label: '考官姓名', key: 'ksy1' },
+  ]
+
   build() {
     Column() {
       TopLogo({ outFlag: $outFlag }).margin({ bottom: 10 })
@@ -694,9 +658,9 @@ export default struct UserInfo {
                 })
                 return
               }
-              if (this.FaceOpenStatue != '0') {
+              if(this.FaceOpenStatue!='0'){
                 this.showFaceCompare = true
-              } else {
+              }else{
                 this.sfbdinterfaceFn()
               }
             })
diff --git a/entry/src/main/ets/pages/compontents/FaceCompare.ets b/entry/src/main/ets/pages/compontents/FaceCompare.ets
index f9492f7a..650bb765 100644
--- a/entry/src/main/ets/pages/compontents/FaceCompare.ets
+++ b/entry/src/main/ets/pages/compontents/FaceCompare.ets
@@ -1,38 +1,72 @@
-import camera from '@ohos.multimedia.camera';
-import { cameraService } from '../../common/service/cameraService';
-import { voiceService } from '../../common/service/voiceService';
-import { faceCompare } from '../../api/userInfo';
-import prompt from '@ohos.prompt';
-import grantPermission from '../../common/utils/PermissionUtils';
-import CameraModel from '../../common/service/CameraModel';
+//@ts-ignore
 
-let previewWidth;
-let previewHeight;
+import util from '@ohos.util';
 
-const PERMISSIONS: Array<string> = [
-  'ohos.permission.CAMERA']
+import { voiceService } from '../../common/service/voiceService'
+import { faceCompare } from '../../api/userInfo'
+import FileUtil from '../../common/utils/File'
+import { VideoConfig } from '../interfaces'
+import common from '@ohos.app.ability.common';
+
+import { string2Bytes } from '../../common/utils/tools'
+import { takePhoto } from '../../common/service/videoService'
+import { GlobalConfig } from '../../config/index'
 
 @Component
 export default struct FaceCompare {
-  @State imageBase64: string = 'data:image/jpeg;base64,'
-  @Prop sfzh: string;
-  @Prop firstImage: string;
-  @Link showFaceCompare: boolean;
-  @Link faceCompareSucess: boolean;
-  @State imageThumbnail: string = '';
-  private mXComponentController: XComponentController = new XComponentController();
-  private cameraModel: CameraModel = new CameraModel();
-  private cameraObj = null;
-  private timer = null; //人脸比对执行任务定时器
-  private stopClose = false; // 阻止用户关闭此组件
-  private times = 1; //人脸比对失败次数， 超过3次将不会自动比对，需要点击重新打开重新触发
-  private vocObj = null;
-  private surfaceId: string = '';
-
   constructor() {
     super()
   }
 
+  @State imageBase64: string = 'data:image/jpeg;base64,'
+  @Prop sfzh: string;
+  @Prop lsh: string;
+  @Prop firstImage: string;
+  @Link faceCompareSucess: number;
+  @Link showFaceCompare: boolean;
+  @Link getqkFlag: boolean;
+  @Link faceCatchImg: string;
+  @State imageThumbnail: string = '';
+  private times = 1; //人脸比对失败次数， 超过3次将不会自动比对，需要点击重新打开重新触发
+  private vocObj = null;
+  @State callBackFlag: boolean = false;
+  @State @Watch('clearIntervalFn') showFaceCompareFlag: Boolean = false;
+  @State video_url: string = 'rtsp://admin:12345qwe@192.168.5.41:8000/h264/ch2/main/av_stream'
+  @State previewUri: Resource = $r('app.media.2_nor')
+  @State curRate: PlaybackSpeed = PlaybackSpeed.Speed_Forward_1_00_X
+  @State showControls: boolean = false
+  private controller: VideoController = new VideoController()
+  @State isAutoPlay: boolean = true
+  @State signNum: number = 0;
+  private fileUtil: FileUtil
+  private interval: any
+  @State param: VideoConfig = {
+    spls: '',
+    videoNum: '1',
+    faceFlag: false,
+    pztd: '1',
+    ljlx: '',
+    ip: '192.168.7.112',
+    port: '554',
+    userName: 'admin',
+    pwd: '12345qwe',
+    td1: '1',
+    td2: '2',
+    td3: '3',
+    td4: '4',
+    videoRecord1: false,
+    videoRecord2: false,
+    videoRecord3: false,
+    videoRecord4: false,
+    rlls: '1',
+    spzd4:false,
+    spzd3:false,
+    spzd2:false,
+    spzd1:false,
+    zdyz:'500',
+  }
+  private context = getContext(this) as common.UIAbilityContext;
+
   build() {
     Column() {
       Column() {
@@ -44,29 +78,22 @@ export default struct FaceCompare {
 
         Row() {
           Row() {
-            XComponent({
-              id: 'componentId',
-              type: 'surface',
-              controller: this.mXComponentController
+            Video({
+              src: this.showFaceCompare ? `rtsp://${this.param.userName}:${this.param.pwd}@${this.param.ip}:${this.param.port}/h264/ch${this.param.rlls}/main/av_stream` : '',
+              previewUri: this.previewUri,
+              currentProgressRate: PlaybackSpeed.Speed_Forward_1_00_X,
+              controller: this.controller,
             })
-              .onLoad(() => {
-                // this.mXComponentController.setXComponentSurfaceSize({surfaceWidth:640,surfaceHeight:480});
-                // let surfaceId = this.mXComponentController.getXComponentSurfaceId()
-                // console.log('jiangsong: xcomponentController this.surfaceId = ' + surfaceId)
-                this.mXComponentController.setXComponentSurfaceSize({ surfaceWidth: 640, surfaceHeight: 480 });
-                this.surfaceId = this.mXComponentController.getXComponentSurfaceId();
-                this.cameraModel.initCamera(this.surfaceId);
-
-                this.readyToTakePhoto(this.surfaceId)
-
-              })
+              .muted(true)
               .width('100%')
               .height('100%')
-              .backgroundColor(Color.Black)
+              .autoPlay(this.isAutoPlay)
+              .controls(this.showControls)
           }
           .width('48%')
           .height('100%')
 
+
           Row() {
             Image(this.firstImage)
               .width('100%')
@@ -106,9 +133,7 @@ export default struct FaceCompare {
             .backgroundImageSize({ width: '100%', height: '100%' })
             .onClick(async () => {
               this.times = 1;
-              // this.takePhoto('face_check.mp3');
-              this.readyToTakePhoto(this.surfaceId);
-              // await this.cameraObj.releaseSource()
+
             })
           }
           .width('88.9%')
@@ -134,24 +159,14 @@ export default struct FaceCompare {
       .backgroundImage($r('app.media.close'))
       .backgroundImageSize({ width: '100%', height: '100%' })
       .onClick(() => {
-        // prompt.showToast({
-        //   message: '人脸比对程序正在执行，请等待程序执行完毕。',
-        //   duration: 3000
-        // });
-        this.showFaceCompare = false
-        this.faceCompareSucess = false
-        return
-        console.log('jiangsong close the faceCompare componet');
-        if (!this.stopClose) {
-          this.showFaceCompare = false
+        this.controller.stop()
+        this.vocObj && this.vocObj.releasePlayer()
+        this.showFaceCompare = !this.showFaceCompare
+        this.showFaceCompareFlag=!this.showFaceCompareFlag
+        this.faceCompareSucess = -1
+        globalThis.statue = 2
+
 
-        } else {
-          prompt.showToast({
-            message: '人脸比对程序正在执行，请等待程序执行完毕。',
-            duration: 3000
-          });
-          this.showFaceCompare = false
-        }
       })
     }
     .width('100%')
@@ -161,178 +176,177 @@ export default struct FaceCompare {
   }
 
   onPageShow() {
-    this.cameraModel.initCamera(this.surfaceId);
   }
 
   async aboutToAppear() {
-    // this.cameraModel.initCamera(this.surfaceId);
-    await grantPermission().then(res => {
-      if (this.surfaceId) {
-        this.cameraModel.initCamera(this.surfaceId);
-      }
-    }).catch(rej => {
-    })
-
-    this.surfaceId = this.mXComponentController.getXComponentSurfaceId();
-    // this.cameraModel.setTakePictureHandleCallback(this.takePictureHandle.bind(this));
+    const fileUtil = new FileUtil(this.context)
+    this.fileUtil = fileUtil
+    this.getVideoConfig()
   }
 
-  // takePictureHandle = (thumbnail: string) => {
-  //   this.imageThumbnail = thumbnail;
-  // };
-
-  async initCamera(surfaceId: string) {
-    //动态获取隐私权限
-    let context = getContext(this) as any
-    await context.requestPermissionsFromUser(PERMISSIONS)
-    console.log('grantPermission,requestPermissionsFromUser');
-    // 创建CameraManager对象
-    let cameraManager = await camera.getCameraManager(context)
-    if (!cameraManager) {
-      console.error('Failed to get the CameraManager instance');
-    }
-    // 获取相机列表
-    let cameraArray = await cameraManager.getSupportedCameras()
-    if (!cameraArray) {
-      console.error('Failed to get the cameras');
-    }
-    for (let index = 0; index < cameraArray.length; index++) {
-      console.log('cameraId : ' + cameraArray[index].cameraId) // 获取相机ID
-      console.log('cameraPosition : ' + cameraArray[index].cameraPosition) // 获取相机位置
-      console.log('cameraType : ' + cameraArray[index].cameraType) // 获取相机类型
-      console.log('connectionType : ' + cameraArray[index].connectionType) // 获取相机连接类型
-    }
-
-    // 创建相机输入流
-    let cameraInput = await cameraManager.createCameraInput(cameraArray[0])
-
-    //  打开相机
-    await cameraInput.open().then(() => {
-      console.log('opencamera succ.');
-    }).catch(function (err) {
-      console.log("opencamera failed with error:" + err);
-    });
-
-    // 获取相机设备支持的输出流能力
-    let cameraOutputCap = await cameraManager.getSupportedOutputCapability(cameraArray[0]);
-    if (!cameraOutputCap) {
-      console.error("outputCapability outputCapability == null || undefined")
-    } else {
-      console.log("outputCapability: " + JSON.stringify(cameraOutputCap));
-    }
-
-    //获取相机支持的输出能力--支持的预览配置信息
-    let previewProfilesArray = cameraOutputCap.previewProfiles;
-    if (!previewProfilesArray) {
-      console.error("createOutput previewProfilesArray == null || undefined")
-    } else {
-      console.log("previewProfiles:" + JSON.stringify(previewProfilesArray[0]))
-      previewWidth = previewProfilesArray[0].size.width;
-      previewHeight = previewProfilesArray[0].size.height;
-    }
-
-    // 创建预览输出流,其中参数 surfaceId 参考下面 XComponent 组件，预览流为XComponent组件提供的surface
-    let previewOutput = await cameraManager.createPreviewOutput(previewProfilesArray[0], surfaceId)
-    if (!previewOutput) {
-      console.error("Failed to create the PreviewOutput instance.")
-    } else {
-      console.log("create the PreviewOutput instance succ.")
-    }
-
-    //创建会话
-    let captureSession = await cameraManager.createCaptureSession()
-    if (!captureSession) {
-      console.error('Failed to create the CaptureSession instance.');
-      return;
-    }
-    console.log('Callback returned with the CaptureSession instance.' + captureSession);
-
-    // 开始配置会话
-    await captureSession.beginConfig()
-
-    // 向会话中添加相机输入流
-    await captureSession.addInput(cameraInput)
-
-    // 向会话中添加预览输入流
-    await captureSession.addOutput(previewOutput)
-
-    // 提交会话配置
-    await captureSession.commitConfig()
-    // 启动会话
-    await captureSession.start().then(() => {
-      console.log('captureSession start success.');
-    }).catch(function (err) {
-      console.log("captureSession start failed with error:" + err);
-    });
+  clearIntervalFn() {
+    this.callBackFlag = false
+    clearInterval(this.interval)
+    this.vocObj && this.vocObj.releasePlayer()
   }
 
-  async aboutToDisappear() {
-    clearTimeout(this.timer)
-    this.vocObj.releasePlayer()
-    this.cameraObj.releaseSource()
+  getqkFn() {
+    let tmpList = [];
+    tmpList.push(string2Bytes(globalThis.signNum, 1 * 8)[0])
+    const param = {
+      id: 41,
+      list: tmpList,
+      carNo: globalThis.carInfo.carNo,
+      placeId: globalThis.carInfo.examinationRoomId
+    }
+    globalThis.udpClient2.sendMsg(param, this.context)
   }
 
-  async readyToTakePhoto(surfaceId) {
-    this.surfaceId = surfaceId;
-    this.cameraObj = new cameraService(surfaceId);
+  async faceComparFn() {
+    console.log('mmmmm0',1)
 
-    setTimeout(() => {
-      this.showFaceCompare = false
-      this.faceCompareSucess = true;
-    }, 3000)
-    return
-    await this.cameraObj.initCamera((img) => {
-      console.log('jiangsong getPhoto res.' + img.slice(0, 100))
-      this.imageBase64 = 'data:image/jpeg;base64,' + img;
-      const firstImage = this.firstImage.substr(22)
+    takePhoto(this.param, this.context, 'jt/',0,({base64})=>{
       faceCompare({
         sfzh: this.sfzh,
-        firstImage: firstImage,
-        // sfzh: '321281198605076819',
-        // firstImage: this.firstImage,
-        secondImage: img,
+        firstImage: this.firstImage.substr(22),
+        secondImage: base64,
         type: 2,
         verifyType: 1
       }).then(res => {
+        console.log('mmmmm8',res)
+
         if (res) {
-          console.log('jiangsong face compare success' + JSON.stringify(res))
-          this.showFaceCompare = false
-          this.faceCompareSucess = true;
+          this.controller.stop()
+          this.showFaceCompare = !this.showFaceCompare
+          this.showFaceCompareFlag=!this.showFaceCompareFlag
+          this.faceCompareSucess = 1;
+          // this.faceCatchImg = result
+          this.vocObj.playAudio({
+            type: 1,
+            name: 'yzcg.wav'
+          })
         } else {
-          console.log('jiangsong face compare faild')
+          this.times++;
           //3s后开始语音提示
-          this.timer = setTimeout(() => {
-            this.takePhoto('face_fail.mp3');
-          }, 3000)
+          this.vocObj.playAudio({
+            type: 1,
+            name: 'face_fail.mp3'
+          })
+
         }
       })
-    });
-    this.vocObj = new voiceService(async (status) => {
-      console.log('jiangsong voiceService callback. status == ' + status)
-      if (status == 'completed') {
-        this.cameraObj.takePhoto();
+    })
+    console.log('mmmmm8',9)
+
+
+
+
+  }
+
+  async heartMsg(context) {
+    let tmpList = []
+    const str = this.lsh
+    for (let i = 0;i < str.length; i++) {
+      tmpList.push(string2Bytes(str.charCodeAt(i), 1 * 8)[0])
+    }
+    const param = {
+      id: 46,
+      list: tmpList,
+      carNo: globalThis.carInfo.carNo,
+      placeId: globalThis.carInfo.examinationRoomId,
+      sendCallback: () => {
+        this.callBackFlag = true
+      }
+    }
+    globalThis.udpClient2 && globalThis.udpClient2.sendMsg(param, this.context)
+    clearInterval(this.interval)
+    this.interval = setInterval(() => {
+      if (this.callBackFlag) {
+        const param2 = {
+          id: 47,
+          list: tmpList,
+          carNo: globalThis.carInfo.carNo,
+          placeId: globalThis.carInfo.examinationRoomId,
+        }
+        globalThis.udpClient2 && globalThis.udpClient2.sendMsg(param2, this.context)
+      }
+    }, 1000)
+    globalThis.udpClient2.setMsgCallBack((val) => {
+      if (val.id == '48') {
+        if (val.body[13] == '1') {
+          this.showFaceCompareFlag=!this.showFaceCompareFlag
+          this.showFaceCompare = !this.showFaceCompare
+          this.vocObj && this.vocObj.releasePlayer()
+          this.faceCompareSucess = 1
+          clearInterval(this.interval)
+        } else if (val.body[13] == '0' && this.callBackFlag) {
+          globalThis.statue = 2
+          this.vocObj && this.vocObj.playAudio({
+            type: 1,
+            name: 'face_chekc_fail.wav'
+          })
+        }
+      }
+    })
+
+  }
+
+  async getVideoConfig() {
+    console.log('faceEnterIn')
+    this.vocObj = new voiceService(async (status, val, next) => {
+      if (status == 'idle') {
+        if (val == 'face_check.mp3' || val == 'face_fail.mp3') {
+          if (this.times >= 3) {
+            globalThis.statue = 3
+            this.faceCompareSucess = -1;
+            this.vocObj && this.vocObj.playAudio({
+              type: 1,
+              name: 'face_checking.wav'
+            })
+            this.heartMsg(this.context)
+          } else {
+            setTimeout(() => {
+              this.faceComparFn()
+            }, 2000)
+          }
+        } else if (val == 'yzcg.wav') {
+          this.showFaceCompare = !this.showFaceCompare
+          this.showFaceCompareFlag=!this.showFaceCompareFlag
+          globalThis.statue = 4
+          this.faceCompareSucess = 1;
+          this.vocObj && this.vocObj.releasePlayer()
+
+        } else if (val == 'face_chekc_fail.wav') {
+          this.vocObj && this.vocObj.releasePlayer()
+          this.faceCompareSucess = -1
+          this.showFaceCompare = !this.showFaceCompare
+          this.showFaceCompareFlag=!this.showFaceCompareFlag
+        }
       }
     });
 
-    //3s后开始语音提示
-    this.timer = setTimeout(() => {
-      this.takePhoto('face_check.mp3');
-    }, 3000)
+    const data = await this.fileUtil.readFile(GlobalConfig.comoonfileWriteAddress + '/config/config3.txt');
+    console.log('faceEnterIn,data',data)
+
+    setTimeout(() => {
+      this.vocObj && this.vocObj.playAudio({
+        type: 1,
+        name: 'face_check.mp3'
+      })
+    }, 1000)
+    this.param = JSON.parse(data)
+    this.param.userName = JSON.parse(data).userName
+    this.param.ip = this.param.ip
+    this.param.pwd = this.param.pwd
+    this.param.port = this.param.port
+    this.param.rlls = this.param.rlls
+    this.controller.start()
   }
 
-  takePhoto(name) {
-    this.stopClose = true;
-    if (this.times > 3) {
-      this.stopClose = false;
-      return;
-    }
-    this.times++;
 
-    this.vocObj.playAudio({
-      type: 1,
-      name: name
-    })
+
+  async aboutToDisappear() {
+
   }
 }
 
-// export default FaceCompare
\ No newline at end of file
diff --git a/entry/src/main/ets/pages/compontents/FaceCompareByhaikang.ets b/entry/src/main/ets/pages/compontents/FaceCompareByhaikang.ets
deleted file mode 100644
index c50618f2..00000000
--- a/entry/src/main/ets/pages/compontents/FaceCompareByhaikang.ets
+++ /dev/null
@@ -1,343 +0,0 @@
-import { voiceService } from '../../common/service/voiceService';
-import { faceCompare } from '../../api/userInfo';
-import FileUtil from '../../common/utils/File';
-import { VideoConfig } from '../interfaces';
-import common from '@ohos.app.ability.common';
-
-import { string2Bytes } from '../../common/utils/tools';
-import { takePhoto } from '../../common/service/videoService';
-import { GlobalConfig } from '../../config/index';
-
-@Component
-export default struct FaceCompare {
-  @State imageBase64: string = 'data:image/jpeg;base64,'
-  @Prop sfzh: string;
-  @Prop lsh: string;
-  @Prop firstImage: string;
-  @Link faceCompareSucess: number;
-  @Link showFaceCompare: boolean;
-  @Link getqkFlag: boolean;
-  @Link faceCatchImg: string;
-  @State imageThumbnail: string = '';
-  @State callBackFlag: boolean = false;
-  @State @Watch('clearIntervalFn') showFaceCompareFlag: Boolean = false;
-  @State video_url: string = 'rtsp://admin:12345qwe@192.168.5.41:8000/h264/ch2/main/av_stream'
-  @State previewUri: Resource = $r('app.media.2_nor')
-  @State curRate: PlaybackSpeed = PlaybackSpeed.Speed_Forward_1_00_X
-  @State showControls: boolean = false
-  @State isAutoPlay: boolean = true
-  @State signNum: number = 0;
-  @State param: VideoConfig = {
-    spls: '',
-    videoNum: '1',
-    faceFlag: false,
-    pztd: '1',
-    ljlx: '',
-    ip: '192.168.7.112',
-    port: '554',
-    userName: 'admin',
-    pwd: '12345qwe',
-    td1: '1',
-    td2: '2',
-    td3: '3',
-    td4: '4',
-    videoRecord1: false,
-    videoRecord2: false,
-    videoRecord3: false,
-    videoRecord4: false,
-    rlls: '1',
-    spzd4: false,
-    spzd3: false,
-    spzd2: false,
-    spzd1: false,
-    zdyz: '500',
-  }
-  private times = 1; //人脸比对失败次数， 超过3次将不会自动比对，需要点击重新打开重新触发
-  private vocObj = null;
-  private controller: VideoController = new VideoController()
-  private fileUtil: FileUtil
-  private interval: any
-  private context = getContext(this) as common.UIAbilityContext;
-
-  constructor() {
-    super()
-  }
-
-  build() {
-    Column() {
-      Column() {
-        Text('照片比对')
-          .lineHeight('16%')
-          .height('16%')
-          .fontWeight(FontWeight.Bold)
-          .fontSize(24)
-
-        Row() {
-          Row() {
-            Video({
-              src: this.showFaceCompare ? `rtsp://${this.param.userName}:${this.param.pwd}@${this.param.ip}:${this.param.port}/h264/ch${this.param.rlls}/main/av_stream` : '',
-              previewUri: this.previewUri,
-              currentProgressRate: PlaybackSpeed.Speed_Forward_1_00_X,
-              controller: this.controller,
-            })
-              .muted(true)
-              .width('100%')
-              .height('100%')
-              .autoPlay(this.isAutoPlay)
-              .controls(this.showControls)
-          }
-          .width('48%')
-          .height('100%')
-
-
-          Row() {
-            Image(this.firstImage)
-              .width('100%')
-              .height('100%')
-              .backgroundColor(Color.Black)
-          }
-          .width('48%')
-          .height('100%')
-        }
-        .width('88.9%')
-        .height('53.2%')
-        .justifyContent(FlexAlign.SpaceBetween)
-
-        Text('正在等待拍照…')
-          .lineHeight('16%')
-          .height('16%')
-          .fontWeight(FontWeight.Bold)
-          .fontColor('#CC7E00')
-
-        Column() {
-          Row() {
-            Text('若验证无响应，点击此处')
-              .lineHeight('100%')
-              .height('100%')
-              .fontColor('#000000')
-
-            Column() {
-              Text('重新打开')
-                .lineHeight('100%')
-                .height('100%')
-                .fontColor(Color.White)
-                .fontSize(23)
-            }
-            .width('22.8%')
-            .height('89.9%')
-            .backgroundImage($r('app.media.nor'))
-            .backgroundImageSize({ width: '100%', height: '100%' })
-            .onClick(async () => {
-              this.times = 1;
-
-            })
-          }
-          .width('88.9%')
-          .height('100%')
-          .justifyContent(FlexAlign.SpaceBetween)
-        }
-        .width('100%')
-        .height('16%')
-        .position({ y: '84%' })
-        .borderRadius({ topLeft: 0, topRight: 0, bottomLeft: 15, bottomRight: 15 })
-        .backgroundColor('#CCC4B8')
-      }
-      .width('68.75%')
-      .height('73.2%')
-      .backgroundColor('#E5E3DF')
-      .borderRadius(15)
-      .margin({ top: '4%' })
-
-      Column() {
-      }
-      .width('8.5%')
-      .height('15.1%')
-      .backgroundImage($r('app.media.close'))
-      .backgroundImageSize({ width: '100%', height: '100%' })
-      .onClick(() => {
-        this.controller.stop()
-        this.vocObj && this.vocObj.releasePlayer()
-        this.showFaceCompare = !this.showFaceCompare
-        this.showFaceCompareFlag = !this.showFaceCompareFlag
-        this.faceCompareSucess = -1
-        globalThis.statue = 2
-
-
-      })
-    }
-    .width('100%')
-    .height('100%')
-    .backgroundColor('rgba(0, 0, 0, 0.8)')
-    .position({ x: 0, y: 0 })
-  }
-
-  onPageShow() {
-  }
-
-  async aboutToAppear() {
-    const fileUtil = new FileUtil(this.context)
-    this.fileUtil = fileUtil
-    this.getVideoConfig()
-  }
-
-  clearIntervalFn() {
-    this.callBackFlag = false
-    clearInterval(this.interval)
-    this.vocObj && this.vocObj.releasePlayer()
-  }
-
-  getqkFn() {
-    let tmpList = [];
-    tmpList.push(string2Bytes(globalThis.signNum, 1 * 8)[0])
-    const param = {
-      id: 41,
-      list: tmpList,
-      carNo: globalThis.carInfo.carNo,
-      placeId: globalThis.carInfo.examinationRoomId
-    }
-    globalThis.udpClient2.sendMsg(param, this.context)
-  }
-
-  async faceComparFn() {
-    console.log('mmmmm0', 1)
-
-    takePhoto(this.param, this.context, 'jt/', 0, ({base64}) => {
-      faceCompare({
-        sfzh: this.sfzh,
-        firstImage: this.firstImage.substr(22),
-        secondImage: base64,
-        type: 2,
-        verifyType: 1
-      }).then(res => {
-        console.log('mmmmm8', res)
-
-        if (res) {
-          this.controller.stop()
-          this.showFaceCompare = !this.showFaceCompare
-          this.showFaceCompareFlag = !this.showFaceCompareFlag
-          this.faceCompareSucess = 1;
-          // this.faceCatchImg = result
-          this.vocObj.playAudio({
-            type: 1,
-            name: 'yzcg.wav'
-          })
-        } else {
-          this.times++;
-          //3s后开始语音提示
-          this.vocObj.playAudio({
-            type: 1,
-            name: 'face_fail.mp3'
-          })
-
-        }
-      })
-    })
-    console.log('mmmmm8', 9)
-
-
-  }
-
-  async heartMsg(context) {
-    let tmpList = []
-    const str = this.lsh
-    for (let i = 0; i < str.length; i++) {
-      tmpList.push(string2Bytes(str.charCodeAt(i), 1 * 8)[0])
-    }
-    const param = {
-      id: 46,
-      list: tmpList,
-      carNo: globalThis.carInfo.carNo,
-      placeId: globalThis.carInfo.examinationRoomId,
-      sendCallback: () => {
-        this.callBackFlag = true
-      }
-    }
-    globalThis.udpClient2 && globalThis.udpClient2.sendMsg(param, this.context)
-    clearInterval(this.interval)
-    this.interval = setInterval(() => {
-      if (this.callBackFlag) {
-        const param2 = {
-          id: 47,
-          list: tmpList,
-          carNo: globalThis.carInfo.carNo,
-          placeId: globalThis.carInfo.examinationRoomId,
-        }
-        globalThis.udpClient2 && globalThis.udpClient2.sendMsg(param2, this.context)
-      }
-    }, 1000)
-    globalThis.udpClient2.setMsgCallBack((val) => {
-      if (val.id == '48') {
-        if (val.body[13] == '1') {
-          this.showFaceCompareFlag = !this.showFaceCompareFlag
-          this.showFaceCompare = !this.showFaceCompare
-          this.vocObj && this.vocObj.releasePlayer()
-          this.faceCompareSucess = 1
-          clearInterval(this.interval)
-        } else if (val.body[13] == '0' && this.callBackFlag) {
-          globalThis.statue = 2
-          this.vocObj && this.vocObj.playAudio({
-            type: 1,
-            name: 'face_chekc_fail.wav'
-          })
-        }
-      }
-    })
-
-  }
-
-  async getVideoConfig() {
-    console.log('faceEnterIn')
-    this.vocObj = new voiceService(async (status, val, next) => {
-      if (status == 'idle') {
-        if (val == 'face_check.mp3' || val == 'face_fail.mp3') {
-          if (this.times >= 3) {
-            globalThis.statue = 3
-            this.faceCompareSucess = -1;
-            this.vocObj && this.vocObj.playAudio({
-              type: 1,
-              name: 'face_checking.wav'
-            })
-            this.heartMsg(this.context)
-          } else {
-            setTimeout(() => {
-              this.faceComparFn()
-            }, 2000)
-          }
-        } else if (val == 'yzcg.wav') {
-          this.showFaceCompare = !this.showFaceCompare
-          this.showFaceCompareFlag = !this.showFaceCompareFlag
-          globalThis.statue = 4
-          this.faceCompareSucess = 1;
-          this.vocObj && this.vocObj.releasePlayer()
-
-        } else if (val == 'face_chekc_fail.wav') {
-          this.vocObj && this.vocObj.releasePlayer()
-          this.faceCompareSucess = -1
-          this.showFaceCompare = !this.showFaceCompare
-          this.showFaceCompareFlag = !this.showFaceCompareFlag
-        }
-      }
-    });
-
-    const data = await this.fileUtil.readFile(GlobalConfig.comoonfileWriteAddress + '/config/config3.txt');
-    console.log('faceEnterIn,data', data)
-
-    setTimeout(() => {
-      this.vocObj && this.vocObj.playAudio({
-        type: 1,
-        name: 'face_check.mp3'
-      })
-    }, 1000)
-    this.param = JSON.parse(data)
-    this.param.userName = JSON.parse(data).userName
-    this.param.ip = this.param.ip
-    this.param.pwd = this.param.pwd
-    this.param.port = this.param.port
-    this.param.rlls = this.param.rlls
-    this.controller.start()
-  }
-
-  async aboutToDisappear() {
-
-  }
-}
\ No newline at end of file
diff --git a/entry/src/main/ets/pages/compontents/FaceCompare_bak.ets b/entry/src/main/ets/pages/compontents/FaceCompare_bak.ets
deleted file mode 100644
index 9596900a..00000000
--- a/entry/src/main/ets/pages/compontents/FaceCompare_bak.ets
+++ /dev/null
@@ -1,326 +0,0 @@
-import camera from '@ohos.multimedia.camera';
-import image from '@ohos.multimedia.image';
-import TopLogo from '../compontents/topLogo';
-
-import buffer from '@ohos.buffer';
-
-@Component
-export default struct FaceCompare {
-  @State imageBase64: string = 'data:image/jpeg;base64,'
-  private cameraObj: any = null;
-  private cameraManager: any = null;
-  private surfaceId: string = '';
-  private xcomponentController: XComponentController = new XComponentController();
-  // 相机会话
-  private captureSession: any = null;
-  // 相机输入流
-  private cameraInput: any = null;
-  // 预览输出流
-  private previewOutput: any = null;
-  // 拍照输出流
-  private photoOutput: any = null;
-  // 照片接收对象
-  private imageRecever: any = null;
-  private timeSetTimeout: number = 0; //定时器执行次数
-  private timer: any = 0; //定时器
-
-  constructor() {
-    super()
-  }
-
-  build() {
-    Column() {
-      TopLogo({
-        outFlag: false
-      })
-      Row() {
-        XComponent({
-          id: 'xcomponent',
-          type: 'surface',
-          controller: this.xcomponentController
-        })
-          .onLoad(async () => {
-            this.xcomponentController.setXComponentSurfaceSize({ surfaceWidth: 640, surfaceHeight: 480 });
-            this.surfaceId = this.xcomponentController.getXComponentSurfaceId()
-            console.log('jiangsong: xcomponentController this.surfaceId = ' + this.surfaceId)
-            await this.initCamera();
-          })
-          .width('420px')
-          .height('240px')
-      }
-      .backgroundColor(Color.Yellow)
-      .position({ x: 0, y: 0 })
-
-      Row() {
-        Text('拍照')
-          .width('100px')
-          .height('55px')
-          .backgroundColor(Color.Blue)
-          .onClick(() => {
-            this.takePhoto()
-          })
-      }
-
-      Row() {
-        Image(this.imageBase64)
-          .width(420).height(240).border({ width: 1 })
-      }
-    }
-    .width('100%')
-  }
-
-  async aboutToAppear() {
-  }
-
-  async aboutToDisappear() {
-    // 停止当前会话
-    this.captureSession.stop()
-    // 释放相机输入流
-    this.cameraInput.close()
-    // 释放预览输出流
-    this.previewOutput.release()
-    // 释放拍照输出流
-    this.photoOutput.release()
-    // 释放会话
-    this.captureSession.release()
-    // 会话置空
-    this.captureSession = null
-  }
-
-  async initCamera() {
-    let cameraManager = await camera.getCameraManager(globalThis.context)
-    if (!cameraManager) {
-      console.error("jiangsong camera.getCameraManager error")
-      return;
-    }
-    // 监听相机状态变化
-    cameraManager.on('cameraStatus', (err, cameraStatusInfo) => {
-      console.info(`jiangsong camera : ${cameraStatusInfo.camera.cameraId}`);
-      console.info(`jiangsong status: ${cameraStatusInfo.status}`);
-    })
-
-    // 获取相机列表
-    let cameraArray = await cameraManager.getSupportedCameras();
-    if (cameraArray.length <= 0) {
-      console.error("jiangsong cameraManager.getSupportedCameras error")
-      return;
-    }
-
-    for (let index = 0; index < cameraArray.length; index++) {
-      console.info('cameraId : ' + cameraArray[index].cameraId); // 获取相机ID
-      console.info('cameraPosition : ' + cameraArray[index].cameraPosition); // 获取相机位置
-      console.info('cameraType : ' + cameraArray[index].cameraType); // 获取相机类型
-      console.info('connectionType : ' + cameraArray[index].connectionType); // 获取相机连接类型
-    }
-
-    // 创建相机输入流
-    try {
-      this.cameraInput = cameraManager.createCameraInput(cameraArray[0]);
-    } catch (error) {
-      console.error('jiangsong Failed to createCameraInput errorCode = ' + error.code);
-    }
-
-    // 监听cameraInput错误信息
-    let cameraDevice = cameraArray[0];
-    this.cameraInput.on('error', cameraDevice, (error) => {
-      console.info(`jiangsong Camera input error code: ${error.code}`);
-    })
-
-    // 打开相机
-    await this.cameraInput.open((err) => {
-      if (err) {
-        console.error(`jiangsong Failed to open the camera. ${err.code}`);
-        return;
-      }
-      console.log('jiangsong Callback returned with camera opened.');
-    });
-    // 获取相机设备支持的输出流能力
-    let cameraOutputCap = await cameraManager.getSupportedOutputCapability(cameraArray[0]);
-    if (!cameraOutputCap) {
-      console.error("jiangsong cameraManager.getSupportedOutputCapability error")
-      return;
-    }
-    console.info("outputCapability: " + JSON.stringify(cameraOutputCap));
-
-    let previewProfilesArray = cameraOutputCap.previewProfiles;
-    if (!previewProfilesArray) {
-      console.error("jiangsong createOutput previewProfilesArray == null || undefined")
-    }
-
-    let photoProfilesArray = cameraOutputCap.photoProfiles;
-    if (!photoProfilesArray) {
-      console.error("jiangsong createOutput photoProfilesArray == null || undefined")
-    }
-
-
-    // 创建预览输出流,其中参数 surfaceId 参考上文 XComponent 组件，预览流为XComponent组件提供的surface
-    try {
-      this.previewOutput = cameraManager.createPreviewOutput(previewProfilesArray[0], this.surfaceId)
-    } catch (error) {
-      console.error("jiangsong Failed to create the PreviewOutput instance.")
-    }
-
-    // 监听预览输出错误信息
-    this.previewOutput.on('error', (error) => {
-      console.info(`jiangosng Preview output error code: ${error.code}`);
-    })
-
-    // 创建ImageReceiver对象，并设置照片参数：分辨率大小是根据前面 photoProfilesArray 获取的当前设备所支持的拍照分辨率大小去设置
-    this.imageRecever = await image.createImageReceiver(1920, 1080, 4, 8)
-    // 获取照片显示SurfaceId
-    let photoSurfaceId = await this.imageRecever.getReceivingSurfaceId()
-    // 创建拍照输出流
-    try {
-      this.photoOutput = cameraManager.createPhotoOutput(photoProfilesArray[0], photoSurfaceId)
-    } catch (error) {
-      console.error('jiangsong Failed to createPhotoOutput errorCode = ' + error.code);
-    }
-    //创建会话
-    try {
-      this.captureSession = cameraManager.createCaptureSession()
-    } catch (error) {
-      console.error('jiangsong Failed to create the CaptureSession instance. errorCode = ' + error.code);
-    }
-
-    // 监听session错误信息
-    this.captureSession.on('error', (error) => {
-      console.info(`jiangsong Capture session error code: ${error.code}`);
-    })
-
-    // 开始配置会话
-    try {
-      this.captureSession.beginConfig()
-    } catch (error) {
-      console.error('jiangsong Failed to beginConfig. errorCode = ' + error.code);
-    }
-
-    // 向会话中添加相机输入流
-    try {
-      this.captureSession.addInput(this.cameraInput)
-    } catch (error) {
-      console.error('jiangsong Failed to addInput. errorCode = ' + error.code);
-    }
-
-    // 向会话中添加预览输出流
-    try {
-      this.captureSession.addOutput(this.previewOutput)
-    } catch (error) {
-      console.error('jiangsong Failed to addOutput(previewOutput). errorCode = ' + error.code);
-    }
-
-    // 向会话中添加拍照输出流
-    try {
-      this.captureSession.addOutput(this.photoOutput)
-    } catch (error) {
-      console.error('jiangsong Failed to addOutput(photoOutput). errorCode = ' + error.code);
-    }
-
-    // 提交会话配置
-    await this.captureSession.commitConfig()
-
-    // 启动会话
-    await this.captureSession.start().then(() => {
-      console.info('jiangsong Promise returned to indicate the session start success.');
-    })
-    // 判断设备是否支持闪光灯
-    let flashStatus
-    try {
-      flashStatus = this.captureSession.hasFlash()
-    } catch (error) {
-      console.error('jiangsong Failed to hasFlash. errorCode = ' + error.code);
-    }
-    console.info('jiangsong Promise returned with the flash light support status:' + flashStatus);
-
-    if (flashStatus) {
-      // 判断是否支持自动闪光灯模式
-      let flashModeStatus
-      try {
-        let status = this.captureSession.isFlashModeSupported(camera.FlashMode.FLASH_MODE_AUTO)
-        flashModeStatus = status
-      } catch (error) {
-        console.error('jiangsong Failed to check whether the flash mode is supported. errorCode = ' + error.code);
-      }
-      if (flashModeStatus) {
-        // 设置自动闪光灯模式
-        try {
-          this.captureSession.setFlashMode(camera.FlashMode.FLASH_MODE_AUTO)
-        } catch (error) {
-          console.error('jiangsong Failed to set the flash mode. errorCode = ' + error.code);
-        }
-      }
-    }
-  }
-
-  takePhoto() {
-    let settings = {
-      quality: camera.QualityLevel.QUALITY_LEVEL_HIGH, // 设置图片质量高
-      rotation: camera.ImageRotation.ROTATION_0                                            // 设置图片旋转角度0
-    }
-    // 使用当前拍照设置进行拍照
-    this.photoOutput.capture(settings, async (err) => {
-      if (err) {
-        console.error(`jiangsong Failed to capture the photo ${err.message}` + JSON.stringify(err));
-        return;
-      }
-      console.info('jiangsong Callback invoked to indicate the photo capture request success.');
-
-      this.imageRecever.getReceivingSurfaceId().then(id => {
-        console.log('jiangsong getReceivingSurfaceId succeeded.');
-      }).catch(error => {
-        console.log('jiangsong getReceivingSurfaceId failed.');
-      })
-
-      this.getPhoto();
-      this.timeSetTimeout = 0;
-      clearTimeout(this.timer);
-    });
-  }
-
-  getPhoto() {
-    this.imageRecever.readLatestImage((err, img) => {
-      if (err) {
-        console.log('jiangsong readLatestImage failed.' + JSON.stringify((err)));
-        this.timeSetTimeout++;
-        if (this.timeSetTimeout > 20) {
-          return;
-        }
-        this.timer = setTimeout(() => {
-          this.getPhoto()
-        }, 300)
-      } else {
-        console.log('jiangsong img.clipRect.' + JSON.stringify(img.clipRect));
-
-        img.getComponent(4, (err, component) => {
-          if (err) {
-            console.log('jiangsong getComponent failed.' + JSON.stringify(err));
-          } else {
-
-            const imagePackerApi = image.createImagePacker();
-            let packOpts = { format: "image/jpeg", quality: 98 };
-
-            let buf = buffer.from(component.byteBuffer);
-            let str = buf.toString('base64')
-            this.imageBase64 = this.imageBase64 + str
-            // console.error('jiangsong this.imageBase64.length: ' + this.imageBase64.length);
-            // console.error('jiangsong this.imageBase64.length: ' + this.imageBase64.slice(1, 100));
-            //
-            // const imageSource = image.createImageSource(component.byteBuffer);
-            // imagePackerApi.packing(imageSource, packOpts).then(async data => {
-            //   console.log('jiangsong encodeToStringSync data.' + typeof data);
-            //   // let res = await writeFile({
-            //   //   fileName: '/test.jpg',
-            //   //   buffer: data
-            //   // });
-            //
-            //   let buf = buffer.from(data);
-            //   let str = buf.toString('base64')
-            //   this.imageBase64 = this.imageBase64 + str
-            // }).catch(error => {
-            //   console.error('jiangsong Failed to pack the image. And the error is: ' + error);
-            // })
-          }
-        })
-      }
-    });
-  }
-}
diff --git a/entry/src/main/ets/pages/compontents/SignDisplayCom.ets b/entry/src/main/ets/pages/compontents/SignDisplayCom.ets
index 325f6b2f..0a33e007 100644
--- a/entry/src/main/ets/pages/compontents/SignDisplayCom.ets
+++ b/entry/src/main/ets/pages/compontents/SignDisplayCom.ets
@@ -5,7 +5,7 @@ import { voiceService } from '../../common/service/voiceService'
 import prompt from '@ohos.prompt'
 import RealTime from '../compontents/judge/real-time'
 @Component
-struct SignDisplayCom {
+export default struct SignDisplayCom {
   constructor() {
     super()
   }
@@ -88,11 +88,9 @@ struct SignDisplayCom {
   private FileLog: FileLog
   private vocObj = null;
   @State url: string = ''
-  //  @State gpsList: Array<any> = []
   build() {
     Column(){
       Column() {
-        // TopLogo({outFlag:$outFlag})
         Flex({ justifyContent: FlexAlign.SpaceBetween }) {
           Row() {
             Image($r('app.media.signal_logoS')).width(30 * this.ratio).height(24 * this.ratio)
@@ -106,10 +104,7 @@ struct SignDisplayCom {
             .justifyContent(FlexAlign.Center)
             .onClick(() => {
               this.active = 0
-              // this.vocObj.playAudio({
-              //   type: 1,
-              //   name: 'media_button.wav'
-              // })
+
             })
 
             Row() {
@@ -138,10 +133,6 @@ struct SignDisplayCom {
             .justifyContent(FlexAlign.Center)
             .onClick(() => {
               this.active = 2
-              // this.vocObj.playAudio({
-              //   type: 1,
-              //   name: 'media_button.wav'
-              // })
             })
           }
 
@@ -158,26 +149,6 @@ struct SignDisplayCom {
                   this.outFlag = true
                 })
             }
-
-            // Row(){
-            //   Text('保存日志').fontSize(21*this.ratio).fontColor('#fff')
-            // }.width(137*this.ratio).height(36*this.ratio).margin({left:12*this.ratio}).backgroundImageSize({width:'100%',height:'100%'}).backgroundImage($r('app.media.button_nor')).justifyContent(FlexAlign.Center).onClick(()=>{
-            //   this.saveLog()
-            // })
-            // Row() {
-            //   Text('关闭').fontSize(21 * this.ratio).fontColor('#fff')
-            // }
-            // .width(137 * this.ratio)
-            // .height(36 * this.ratio)
-            // .margin({ left: 12 * this.ratio })
-            // .backgroundImageSize({ width: '100%', height: '100%' })
-            // .backgroundImage($r('app.media.button_nor'))
-            // .justifyContent(FlexAlign.Center)
-            // .onClick(() => {
-            //   // globalThis.udpClient.closeUdp(()=>{
-            //   router.back()
-            //   // })
-            // })
           }
         }.width(936 * this.ratio)
 
@@ -331,16 +302,6 @@ struct SignDisplayCom {
                 this.gpsActive = 0
               })
 
-              // Row() {
-              //   Text('GPS2').fontColor(this.gpsActive == 1 ? '#2D3C5A' : '#fff')
-              // }
-              // .width(72)
-              // .height(24)
-              // .backgroundColor(this.gpsActive == 1 ? '#fff' : '#1A1A1A')
-              // .justifyContent(FlexAlign.Center)
-              // .onClick(() => {
-              //   this.gpsActive = 1
-              // })
             }.margin({ top: 10*this.ratio })
             Flex({ direction: FlexDirection.Column }) {
               ForEach(this.GPSColum, (item) => {
@@ -418,15 +379,6 @@ struct SignDisplayCom {
 
   onPageShow() {
     console.info('SURENJUN',123)
-    // this.vocObj = new voiceService(async (status, val) => {
-    //   if (status == 'idle') {
-    //     if (this.url == 'back') {
-    //       router.back()
-    //       // that.udpClient.sendMsg('111')
-    //     } else {
-    //     }
-    //   }
-    // });
 
     const getSignal = this.getSignal;
     const that = this
@@ -443,11 +395,7 @@ struct SignDisplayCom {
         getSignal(msgStr)
       },200)
     }
-    // this.getDeviceNo();
-    // this.initTime();
-    // this.initCarInfo();
 
-    // globalThis.isRegist = false; //是否已经注册
   }
 
   getSignal= (msg)=> {
@@ -501,24 +449,7 @@ struct SignDisplayCom {
   }
 
   saveLog() {
-    // this.FileLog.initFileLogo('d          .0ateLog')
-    // this.FileLog.createFile('123')
+
   }
-  // getDeviceNo() {
-  //   globalThis.deviceNo = 'FE-FC-FE-7C-5C-72'; //设备号
-  // }
 
-  // initTime() {
-  //
-  // }
-  //
-  // initCarInfo() {
-  //
-  // }
-  //
-  // getData() {
-  //
-  // }
 }
-
-export default SignDisplayCom
\ No newline at end of file
diff --git a/entry/src/main/ets/pages/compontents/topLogo.ets b/entry/src/main/ets/pages/compontents/TopLogo.ets
similarity index 100%
rename from entry/src/main/ets/pages/compontents/topLogo.ets
rename to entry/src/main/ets/pages/compontents/TopLogo.ets
diff --git a/entry/src/main/ets/pages/compontents/judge/video-play.ets b/entry/src/main/ets/pages/compontents/judge/video-play.ets
index b1ada766..f37e4dcc 100644
--- a/entry/src/main/ets/pages/compontents/judge/video-play.ets
+++ b/entry/src/main/ets/pages/compontents/judge/video-play.ets
@@ -1,6 +1,6 @@
 
 @Component
-struct EndPopup {
+export default struct EndPopup {
   constructor() {
     super()
   }
@@ -23,5 +23,3 @@ struct EndPopup {
     }.width('100%').height('100%').position({y:0}).backgroundColor('rgba(0,0,0,0.7)')
   }
 }
-
-export default EndPopup
\ No newline at end of file
diff --git a/entry/src/main/module.json5 b/entry/src/main/module.json5
index cc86565c..b83f3bb1 100644
--- a/entry/src/main/module.json5
+++ b/entry/src/main/module.json5
@@ -6,7 +6,7 @@
     "mainElement": "EntryAbility",
     "deviceTypes": [
       "default",
-      "tablet"
+      "tablet",
     ],
     "deliveryWithInstall": true,
     "installationFree": false,
