zdjn-common-utils 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +115 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +47 -0
- package/dist/index.test.d.ts +2 -0
- package/dist/index.test.d.ts.map +1 -0
- package/dist/index.test.js +127 -0
- package/package.json +33 -0
package/README.md
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# zdjn-common-utils
|
|
2
|
+
|
|
3
|
+
中电节能常用工具库。
|
|
4
|
+
|
|
5
|
+
## 安装
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install zdjn-common-utils
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## 更新版本
|
|
12
|
+
|
|
13
|
+
为确保使用最新的功能,请定期更新包版本:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# 检查是否有更新版本
|
|
17
|
+
npm outdated zdjn-common-utils
|
|
18
|
+
|
|
19
|
+
# 更新到最新版本
|
|
20
|
+
npm update zdjn-common-utils
|
|
21
|
+
|
|
22
|
+
# 或者安装指定版本
|
|
23
|
+
npm install zdjn-common-utils@latest
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**注意**:版本更新可能包含新增的报警类型或功能优化,建议每次更新后查看版本日志。
|
|
27
|
+
|
|
28
|
+
## 使用
|
|
29
|
+
|
|
30
|
+
```typescript
|
|
31
|
+
import { parseSystemAlarmBits, SystemAlarmType } from 'zdjn-common-utils';
|
|
32
|
+
|
|
33
|
+
// 解析位标志值
|
|
34
|
+
const alarms = parseSystemAlarmBits(5); // bit0 + bit2 = 1 + 4 = 5
|
|
35
|
+
|
|
36
|
+
console.log(alarms);
|
|
37
|
+
// 输出: [
|
|
38
|
+
// '供水温度上限报警',
|
|
39
|
+
// '供水温度传感器断线报警'
|
|
40
|
+
// ]
|
|
41
|
+
|
|
42
|
+
// 检查特定报警类型
|
|
43
|
+
const hasAlarm = alarms.includes(SystemAlarmType.WaterSupplyTempHigh);
|
|
44
|
+
console.log(hasAlarm); // true
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## API
|
|
48
|
+
|
|
49
|
+
### SystemAlarmType
|
|
50
|
+
|
|
51
|
+
系统报警类型枚举:
|
|
52
|
+
|
|
53
|
+
- `WaterSupplyTempHigh` - 供水温度上限报警
|
|
54
|
+
- `WaterSupplyTempLow` - 供水温度下限报警
|
|
55
|
+
- `WaterSupplyTempSensorBreak` - 供水温度传感器断线报警
|
|
56
|
+
- `WaterSupplyTempStatus` - 供水温度状态报警
|
|
57
|
+
- `ReturnWaterTempHigh` - 回水温度上限报警
|
|
58
|
+
- `ReturnWaterTempLow` - 回水温度下限报警
|
|
59
|
+
- `ReturnWaterTempSensorBreak` - 回水温度传感器断线报警
|
|
60
|
+
- `ReturnWaterTempStatus` - 回水温度状态报警
|
|
61
|
+
- `ElectromagneticFlowmeterFault` - 电磁流量计连接故障
|
|
62
|
+
- `ExcitationAlarm` - 励磁报警
|
|
63
|
+
- `EmptyPipeAlarm` - 空管报警
|
|
64
|
+
- `BatteryVoltageFault` - 电池电压故障
|
|
65
|
+
- `SystemAlarm` - 系统报警
|
|
66
|
+
|
|
67
|
+
### parseSystemAlarmBits(bitValue)
|
|
68
|
+
|
|
69
|
+
解析系统报警位标志值,返回激活的报警类型数组。
|
|
70
|
+
|
|
71
|
+
**参数:**
|
|
72
|
+
- `bitValue` (number): 位标志值,每个 bit 代表一种报警状态
|
|
73
|
+
|
|
74
|
+
**返回值:**
|
|
75
|
+
- `SystemAlarmType[]`: 激活的报警类型数组
|
|
76
|
+
|
|
77
|
+
**示例:**
|
|
78
|
+
|
|
79
|
+
```typescript
|
|
80
|
+
// 单个报警
|
|
81
|
+
parseSystemAlarmBits(1); // ['供水温度上限报警']
|
|
82
|
+
|
|
83
|
+
// 多个报警
|
|
84
|
+
parseSystemAlarmBits(7); // bit0 + bit1 + bit2
|
|
85
|
+
// ['供水温度上限报警', '供水温度下限报警', '供水温度传感器断线报警']
|
|
86
|
+
|
|
87
|
+
// 所有报警
|
|
88
|
+
parseSystemAlarmBits(8191); // 所有位都为1
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## 位标志说明
|
|
92
|
+
|
|
93
|
+
| 位 | 值 | 报警类型 |
|
|
94
|
+
|---|---|---|
|
|
95
|
+
| bit0 | 1 | 供水温度上限报警 |
|
|
96
|
+
| bit1 | 2 | 供水温度下限报警 |
|
|
97
|
+
| bit2 | 4 | 供水温度传感器断线报警 |
|
|
98
|
+
| bit3 | 8 | 供水温度状态报警 |
|
|
99
|
+
| bit4 | 16 | 回水温度上限报警 |
|
|
100
|
+
| bit5 | 32 | 回水温度下限报警 |
|
|
101
|
+
| bit6 | 64 | 回水温度传感器断线报警 |
|
|
102
|
+
| bit7 | 128 | 回水温度状态报警 |
|
|
103
|
+
| bit8 | 256 | 电磁流量计连接故障 |
|
|
104
|
+
| bit9 | 512 | 励磁报警 |
|
|
105
|
+
| bit10 | 1024 | 空管报警 |
|
|
106
|
+
| bit11 | 2048 | 电池电压故障 |
|
|
107
|
+
| bit12 | 4096 | 系统报警 |
|
|
108
|
+
|
|
109
|
+
## 类型定义
|
|
110
|
+
|
|
111
|
+
完整的 TypeScript 类型支持,无需额外配置。
|
|
112
|
+
|
|
113
|
+
## 许可证
|
|
114
|
+
|
|
115
|
+
MIT
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare enum SystemAlarmType {
|
|
2
|
+
WaterSupplyTempHigh = "\u4F9B\u6C34\u6E29\u5EA6\u4E0A\u9650\u62A5\u8B66",
|
|
3
|
+
WaterSupplyTempLow = "\u4F9B\u6C34\u6E29\u5EA6\u4E0B\u9650\u62A5\u8B66",
|
|
4
|
+
WaterSupplyTempSensorBreak = "\u4F9B\u6C34\u6E29\u5EA6\u4F20\u611F\u5668\u65AD\u7EBF\u62A5\u8B66",
|
|
5
|
+
WaterSupplyTempStatus = "\u4F9B\u6C34\u6E29\u5EA6\u72B6\u6001\u62A5\u8B66",
|
|
6
|
+
ReturnWaterTempHigh = "\u56DE\u6C34\u6E29\u5EA6\u4E0A\u9650\u62A5\u8B66",
|
|
7
|
+
ReturnWaterTempLow = "\u56DE\u6C34\u6E29\u5EA6\u4E0B\u9650\u62A5\u8B66",
|
|
8
|
+
ReturnWaterTempSensorBreak = "\u56DE\u6C34\u6E29\u5EA6\u4F20\u611F\u5668\u65AD\u7EBF\u62A5\u8B66",
|
|
9
|
+
ReturnWaterTempStatus = "\u56DE\u6C34\u6E29\u5EA6\u72B6\u6001\u62A5\u8B66",
|
|
10
|
+
ElectromagneticFlowmeterFault = "\u7535\u78C1\u6D41\u91CF\u8BA1\u8FDE\u63A5\u6545\u969C",
|
|
11
|
+
ExcitationAlarm = "\u52B1\u78C1\u62A5\u8B66",
|
|
12
|
+
EmptyPipeAlarm = "\u7A7A\u7BA1\u62A5\u8B66",
|
|
13
|
+
BatteryVoltageFault = "\u7535\u6C60\u7535\u538B\u6545\u969C",
|
|
14
|
+
SystemAlarm = "\u7CFB\u7EDF\u62A5\u8B66"
|
|
15
|
+
}
|
|
16
|
+
export declare function parseSystemAlarmBits(bitValue: number): SystemAlarmType[];
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,oBAAY,eAAe;IACzB,mBAAmB,qDAAa;IAChC,kBAAkB,qDAAa;IAC/B,0BAA0B,uEAAgB;IAC1C,qBAAqB,qDAAa;IAClC,mBAAmB,qDAAa;IAChC,kBAAkB,qDAAa;IAC/B,0BAA0B,uEAAgB;IAC1C,qBAAqB,qDAAa;IAClC,6BAA6B,2DAAc;IAC3C,eAAe,6BAAS;IACxB,cAAc,6BAAS;IACvB,mBAAmB,yCAAW;IAC9B,WAAW,6BAAS;CACrB;AA0BD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,EAAE,CAaxE"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SystemAlarmType = void 0;
|
|
4
|
+
exports.parseSystemAlarmBits = parseSystemAlarmBits;
|
|
5
|
+
var SystemAlarmType;
|
|
6
|
+
(function (SystemAlarmType) {
|
|
7
|
+
SystemAlarmType["WaterSupplyTempHigh"] = "\u4F9B\u6C34\u6E29\u5EA6\u4E0A\u9650\u62A5\u8B66";
|
|
8
|
+
SystemAlarmType["WaterSupplyTempLow"] = "\u4F9B\u6C34\u6E29\u5EA6\u4E0B\u9650\u62A5\u8B66";
|
|
9
|
+
SystemAlarmType["WaterSupplyTempSensorBreak"] = "\u4F9B\u6C34\u6E29\u5EA6\u4F20\u611F\u5668\u65AD\u7EBF\u62A5\u8B66";
|
|
10
|
+
SystemAlarmType["WaterSupplyTempStatus"] = "\u4F9B\u6C34\u6E29\u5EA6\u72B6\u6001\u62A5\u8B66";
|
|
11
|
+
SystemAlarmType["ReturnWaterTempHigh"] = "\u56DE\u6C34\u6E29\u5EA6\u4E0A\u9650\u62A5\u8B66";
|
|
12
|
+
SystemAlarmType["ReturnWaterTempLow"] = "\u56DE\u6C34\u6E29\u5EA6\u4E0B\u9650\u62A5\u8B66";
|
|
13
|
+
SystemAlarmType["ReturnWaterTempSensorBreak"] = "\u56DE\u6C34\u6E29\u5EA6\u4F20\u611F\u5668\u65AD\u7EBF\u62A5\u8B66";
|
|
14
|
+
SystemAlarmType["ReturnWaterTempStatus"] = "\u56DE\u6C34\u6E29\u5EA6\u72B6\u6001\u62A5\u8B66";
|
|
15
|
+
SystemAlarmType["ElectromagneticFlowmeterFault"] = "\u7535\u78C1\u6D41\u91CF\u8BA1\u8FDE\u63A5\u6545\u969C";
|
|
16
|
+
SystemAlarmType["ExcitationAlarm"] = "\u52B1\u78C1\u62A5\u8B66";
|
|
17
|
+
SystemAlarmType["EmptyPipeAlarm"] = "\u7A7A\u7BA1\u62A5\u8B66";
|
|
18
|
+
SystemAlarmType["BatteryVoltageFault"] = "\u7535\u6C60\u7535\u538B\u6545\u969C";
|
|
19
|
+
SystemAlarmType["SystemAlarm"] = "\u7CFB\u7EDF\u62A5\u8B66";
|
|
20
|
+
})(SystemAlarmType || (exports.SystemAlarmType = SystemAlarmType = {}));
|
|
21
|
+
const ALARM_BIT_MAP = {
|
|
22
|
+
0: SystemAlarmType.WaterSupplyTempHigh,
|
|
23
|
+
1: SystemAlarmType.WaterSupplyTempLow,
|
|
24
|
+
2: SystemAlarmType.WaterSupplyTempSensorBreak,
|
|
25
|
+
3: SystemAlarmType.WaterSupplyTempStatus,
|
|
26
|
+
4: SystemAlarmType.ReturnWaterTempHigh,
|
|
27
|
+
5: SystemAlarmType.ReturnWaterTempLow,
|
|
28
|
+
6: SystemAlarmType.ReturnWaterTempSensorBreak,
|
|
29
|
+
7: SystemAlarmType.ReturnWaterTempStatus,
|
|
30
|
+
8: SystemAlarmType.ElectromagneticFlowmeterFault,
|
|
31
|
+
9: SystemAlarmType.ExcitationAlarm,
|
|
32
|
+
10: SystemAlarmType.EmptyPipeAlarm,
|
|
33
|
+
11: SystemAlarmType.BatteryVoltageFault,
|
|
34
|
+
12: SystemAlarmType.SystemAlarm
|
|
35
|
+
};
|
|
36
|
+
function parseSystemAlarmBits(bitValue) {
|
|
37
|
+
const alarms = [];
|
|
38
|
+
for (let bit = 0; bit <= 12; bit++) {
|
|
39
|
+
const mask = 1 << bit;
|
|
40
|
+
if ((bitValue & mask) !== 0) {
|
|
41
|
+
if (ALARM_BIT_MAP[bit]) {
|
|
42
|
+
alarms.push(ALARM_BIT_MAP[bit]);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return alarms;
|
|
47
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const node_test_1 = require("node:test");
|
|
7
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
|
8
|
+
const index_js_1 = require("./index.js");
|
|
9
|
+
(0, node_test_1.describe)('parseSystemAlarmBits', () => {
|
|
10
|
+
(0, node_test_1.it)('应该返回空数组,当所有位都为0时', () => {
|
|
11
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(0);
|
|
12
|
+
node_assert_1.default.strictEqual(result.length, 0);
|
|
13
|
+
});
|
|
14
|
+
(0, node_test_1.it)('应该正确解析单个位标志', () => {
|
|
15
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(1);
|
|
16
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
17
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.WaterSupplyTempHigh);
|
|
18
|
+
});
|
|
19
|
+
(0, node_test_1.it)('应该正确解析供水温度上限报警 (bit0)', () => {
|
|
20
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(1);
|
|
21
|
+
node_assert_1.default.strictEqual(result.includes(index_js_1.SystemAlarmType.WaterSupplyTempHigh), true);
|
|
22
|
+
});
|
|
23
|
+
(0, node_test_1.it)('应该正确解析供水温度下限报警 (bit1)', () => {
|
|
24
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(2);
|
|
25
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
26
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.WaterSupplyTempLow);
|
|
27
|
+
});
|
|
28
|
+
(0, node_test_1.it)('应该正确解析供水温度传感器断线报警 (bit2)', () => {
|
|
29
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(4);
|
|
30
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
31
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.WaterSupplyTempSensorBreak);
|
|
32
|
+
});
|
|
33
|
+
(0, node_test_1.it)('应该正确解析供水温度状态报警 (bit3)', () => {
|
|
34
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(8);
|
|
35
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
36
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.WaterSupplyTempStatus);
|
|
37
|
+
});
|
|
38
|
+
(0, node_test_1.it)('应该正确解析回水温度上限报警 (bit4)', () => {
|
|
39
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(16);
|
|
40
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
41
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.ReturnWaterTempHigh);
|
|
42
|
+
});
|
|
43
|
+
(0, node_test_1.it)('应该正确解析回水温度下限报警 (bit5)', () => {
|
|
44
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(32);
|
|
45
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
46
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.ReturnWaterTempLow);
|
|
47
|
+
});
|
|
48
|
+
(0, node_test_1.it)('应该正确解析回水温度传感器断线报警 (bit6)', () => {
|
|
49
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(64);
|
|
50
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
51
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.ReturnWaterTempSensorBreak);
|
|
52
|
+
});
|
|
53
|
+
(0, node_test_1.it)('应该正确解析回水温度状态报警 (bit7)', () => {
|
|
54
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(128);
|
|
55
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
56
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.ReturnWaterTempStatus);
|
|
57
|
+
});
|
|
58
|
+
(0, node_test_1.it)('应该正确解析电磁流量计连接故障 (bit8)', () => {
|
|
59
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(256);
|
|
60
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
61
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.ElectromagneticFlowmeterFault);
|
|
62
|
+
});
|
|
63
|
+
(0, node_test_1.it)('应该正确解析励磁报警 (bit9)', () => {
|
|
64
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(512);
|
|
65
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
66
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.ExcitationAlarm);
|
|
67
|
+
});
|
|
68
|
+
(0, node_test_1.it)('应该正确解析空管报警 (bit10)', () => {
|
|
69
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(1024);
|
|
70
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
71
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.EmptyPipeAlarm);
|
|
72
|
+
});
|
|
73
|
+
(0, node_test_1.it)('应该正确解析电池电压故障 (bit11)', () => {
|
|
74
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(2048);
|
|
75
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
76
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.BatteryVoltageFault);
|
|
77
|
+
});
|
|
78
|
+
(0, node_test_1.it)('应该正确解析系统报警 (bit12)', () => {
|
|
79
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(4096);
|
|
80
|
+
node_assert_1.default.strictEqual(result.length, 1);
|
|
81
|
+
node_assert_1.default.strictEqual(result[0], index_js_1.SystemAlarmType.SystemAlarm);
|
|
82
|
+
});
|
|
83
|
+
(0, node_test_1.it)('应该正确解析多个位标志', () => {
|
|
84
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(3);
|
|
85
|
+
node_assert_1.default.strictEqual(result.length, 2);
|
|
86
|
+
node_assert_1.default.strictEqual(result.includes(index_js_1.SystemAlarmType.WaterSupplyTempHigh), true);
|
|
87
|
+
node_assert_1.default.strictEqual(result.includes(index_js_1.SystemAlarmType.WaterSupplyTempLow), true);
|
|
88
|
+
});
|
|
89
|
+
(0, node_test_1.it)('应该正确解析所有位标志', () => {
|
|
90
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(8191);
|
|
91
|
+
node_assert_1.default.strictEqual(result.length, 13);
|
|
92
|
+
const expectedAlarms = [
|
|
93
|
+
index_js_1.SystemAlarmType.WaterSupplyTempHigh,
|
|
94
|
+
index_js_1.SystemAlarmType.WaterSupplyTempLow,
|
|
95
|
+
index_js_1.SystemAlarmType.WaterSupplyTempSensorBreak,
|
|
96
|
+
index_js_1.SystemAlarmType.WaterSupplyTempStatus,
|
|
97
|
+
index_js_1.SystemAlarmType.ReturnWaterTempHigh,
|
|
98
|
+
index_js_1.SystemAlarmType.ReturnWaterTempLow,
|
|
99
|
+
index_js_1.SystemAlarmType.ReturnWaterTempSensorBreak,
|
|
100
|
+
index_js_1.SystemAlarmType.ReturnWaterTempStatus,
|
|
101
|
+
index_js_1.SystemAlarmType.ElectromagneticFlowmeterFault,
|
|
102
|
+
index_js_1.SystemAlarmType.ExcitationAlarm,
|
|
103
|
+
index_js_1.SystemAlarmType.EmptyPipeAlarm,
|
|
104
|
+
index_js_1.SystemAlarmType.BatteryVoltageFault,
|
|
105
|
+
index_js_1.SystemAlarmType.SystemAlarm
|
|
106
|
+
];
|
|
107
|
+
expectedAlarms.forEach(alarm => {
|
|
108
|
+
node_assert_1.default.strictEqual(result.includes(alarm), true);
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
(0, node_test_1.it)('应该正确解析不连续的位标志', () => {
|
|
112
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(4233);
|
|
113
|
+
node_assert_1.default.strictEqual(result.length, 4);
|
|
114
|
+
node_assert_1.default.strictEqual(result.includes(index_js_1.SystemAlarmType.WaterSupplyTempHigh), true);
|
|
115
|
+
node_assert_1.default.strictEqual(result.includes(index_js_1.SystemAlarmType.WaterSupplyTempStatus), true);
|
|
116
|
+
node_assert_1.default.strictEqual(result.includes(index_js_1.SystemAlarmType.ReturnWaterTempStatus), true);
|
|
117
|
+
node_assert_1.default.strictEqual(result.includes(index_js_1.SystemAlarmType.SystemAlarm), true);
|
|
118
|
+
});
|
|
119
|
+
(0, node_test_1.it)('应该处理负数输入', () => {
|
|
120
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(-1);
|
|
121
|
+
node_assert_1.default.ok(Array.isArray(result));
|
|
122
|
+
});
|
|
123
|
+
(0, node_test_1.it)('应该处理大数值输入', () => {
|
|
124
|
+
const result = (0, index_js_1.parseSystemAlarmBits)(999999);
|
|
125
|
+
node_assert_1.default.ok(Array.isArray(result));
|
|
126
|
+
});
|
|
127
|
+
});
|
package/package.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "zdjn-common-utils",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "中电节能常用工具库",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"build": "tsc",
|
|
9
|
+
"dev": "tsc --watch",
|
|
10
|
+
"prepublishOnly": "npm run build",
|
|
11
|
+
"test": "node --test dist/index.test.js"
|
|
12
|
+
},
|
|
13
|
+
"keywords": [
|
|
14
|
+
"utils",
|
|
15
|
+
"utilities",
|
|
16
|
+
"helper",
|
|
17
|
+
"common",
|
|
18
|
+
"typescript"
|
|
19
|
+
],
|
|
20
|
+
"author": "",
|
|
21
|
+
"license": "MIT",
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": ""
|
|
25
|
+
},
|
|
26
|
+
"files": [
|
|
27
|
+
"dist"
|
|
28
|
+
],
|
|
29
|
+
"devDependencies": {
|
|
30
|
+
"@types/node": "^20.11.0",
|
|
31
|
+
"typescript": "^5.3.3"
|
|
32
|
+
}
|
|
33
|
+
}
|