whychdw
2025-04-23 365d008f877821ac8b429be302372387f2a77324
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
/**
 * 验证设备类型
 *
 * @param   {[String, Number]}  dev_id  设备id
 * @param   {[String,Array]}  type    设备类型
 *
 * @return  {[type]}          验证结果
 */
function regEquipType(dev_id, type) {
    let patterns = {
        LD9: /^40190/,
        equip61850: /^(61850)|(71850)|(61852)/,
        // 全功能逆变一拖一 一拖二
        equip6184: /^(6184)/,
        // 全功能假负载一拖一 一拖二
        equip6183: /^(6183)/,
        equip61853: /^61853/,
        BTS: /^(9100)|(9600)|(9616)/,
        BTS9110: /^(9110)|(9111)/,
        BTS9120: /^9120/,
        BTS9150: /^9150/,
        BTSSreen: /^(9611)/,
        equip4016: /^4016/,
        BTS9605: /^9605/,
        BTS9611: /^9611|(9800)|(9711)/,
        power: /^110/,
        power1: /^115/,
        isolating: /^111/,
        charger: /^112/,
        air: /^113/,
        // 一体机一期
        aio0: /^8060/,
        // 一体机二期
        aio: /^8059/,
        fbo4830: /^4830/,
        fbo4831: /^4831/,
        // 61850假负载-Z
        fbo6186: /^6186/,
        fbo6286: /^6286/,
        // 61850逆变
        fbo6187: /^6187/,
        // 61850假负载-L
        fbo6188: /^6188/,
        fbo4815: /^(4815)|(6001)/,
        fbo6001: /^6001/,
        lithium: /^9130/,   // 锂电池
        lithiumPack: /^9131/, // 锂电池包
        li9132: /^9132/, // 杭州锂电 送检
        kgdy: /^2500/, // 杭州送检 开关电源
        storage: /^3100/,
        BTS9140:/^9140/,//并联BTS
        BTS9141:/^9141/,//并联BTS 新
        BTS9149:/^9149/,//并联BTS 交流9路
        BTS9612:/^9612/, // 蓄电池分布式10寸主机
        remoteRestartDevice: /^61851/,  // 远程重启装置
        eleOperation: /^60870/,         // 电操核容产品
        peiWang: /^5100/,   // 配网电源
        ups: /^116/,
        intelDev: /^2100/,  // 智能母联
        dyhr: /^6159/,  // 电源核容一体机
        dh: /^1200/,  // 动环设备
        dfBms: /^6138/, // 东峰BMS设备
    };
    let effectPtns = [];
    // 数据类型为字符串
    if (typeof type == 'string') {
        if (patterns[type]) {
            effectPtns.push(patterns[type]);
        }
    } else {     // 为数组时
        type.forEach(item => {
            if (patterns[item]) {
                effectPtns.push(patterns[item]);
            }
        });
    }
 
    let result = false;     // 定义返回结果,默认为false
    // 遍历所有的形参
    for (let i = 0; i < effectPtns.length; i++) {
        if (effectPtns[i].test(dev_id)) {
            result = true;
            break;
        }
    }
    return result;
}
 
export default regEquipType;