Spaces:
Sleeping
Sleeping
| /** | |
| * Copyright (c) 2017~2023, OBCon Inc. | |
| * All rights reserved. | |
| */ | |
| /** | |
| * @file | |
| * @copyright 2017~2023, OBCon Inc. | |
| * @author gye hyun james kim [pnuskgh@gmail.com] | |
| */ | |
| const Setting = utils.getClass('include', 'setting.js'); | |
| class DevicesSetting extends Setting { | |
| constructor() { | |
| super(); | |
| } | |
| getSettings() { | |
| return { | |
| //--- To-Do: 사용하는 type만 설정할 것 (검토 필요) | |
| types: [ //--- 주의: 사용하지 않더라도 모든 타입이 표시되어야 한다 . | |
| { name: '1', title: '정류기', use: true, color: 'blue' }, | |
| { name: '2', title: '원격 TB', use: true, color: 'green' }, | |
| { name: '3', title: '배관링크', use: true, color: '#E675C4' }, | |
| { name: '4', title: '수위센서', use: true, color: '#BDC000' }, | |
| { name: '5', title: '관말압력', use: true, color: '#5E4485' }, | |
| { name: '6', title: '특정정압기', use: true, color: '#8E5547' }, | |
| { name: '7', title: '수신감도', use: true, color: '#00BFD2' }, | |
| { name: '8', title: '범용장비1', use: true, color: '#00BFFF' }, //--- #FF8000 | |
| { name: 'A', title: '두께측정장비', use: true, color: '#FF8000' }, | |
| { name: 'B', title: '정압기 압력 자동 조절 장치', use: true, color: '#9664C0' } | |
| ], | |
| typeEnum: [ //--- 사용하는 type만 정의 한다. | |
| ['1', '정류기'], ['2', '원격 TB'], ['3', '배관링크'], ['4', '수위센서'], ['5', '관말압력'], | |
| ['6', '특정정압기'], ['7', '수신감도'], ['8', '범용장비1'], ['A', '두께측정장비'], , ['B', '정압기 압력 자동 조절 장치'] | |
| ], | |
| interfaces: { | |
| versionDefault: '1.00', | |
| folders: { //--- Folder에서 Interface를 찾는 version의 순서 | |
| type_default: [ '1.03', '1.02', '1.01', '1.00' ], //--- 타입 지정이 안되어 있는 경우 | |
| type_1: [ '1.02', '1.01', '1.00' ], | |
| type_2: [ '1.03', '1.02', '1.01', '1.00' ], | |
| type_3: [ '1.02', '1.01', '1.00' ], | |
| type_4: [ '1.00' ], | |
| type_5: [ '1.02', '1.01', '1.00' ], | |
| type_6: [ '1.00' ], | |
| type_7: [ '1.00' ], | |
| type_8: [ '1.00' ], | |
| type_A: [ '1.00' ], | |
| type_B: [ '1.00' ] | |
| }, | |
| versionEnum: [ | |
| ['1.03', '버전 1.03'], | |
| ['1.02', '버전 1.02'], | |
| ['1.01', '버전 1.01'], | |
| ['1.00', '버전 1.00'] | |
| ] | |
| }, | |
| dashboardDetail: { //--- 모듈의 action별 설정 | |
| maxSelect: 1 | |
| }, | |
| map: { | |
| layout: 'map_1.ejs' //--- map_1.ejs, map_2.ejs. 2020년 1월 22일 현재, 더이상 사용하지 않는 기능임 | |
| }, | |
| }; | |
| } | |
| getInterfaceVersionEnum(type) { | |
| const versions = this.getSettings().interfaces.folders[`type_${type}`]; | |
| const rtEnum = []; | |
| for (let idx = versions.length - 1; idx >= 0; idx--) { | |
| let version = versions[idx]; | |
| rtEnum.push([ version, `버전 ${version}` ]); | |
| } | |
| return rtEnum; | |
| } | |
| getDataModeEnum(type) { | |
| switch(`${type}`) { | |
| case '7': //--- 수신감도 | |
| return [ | |
| ['0', '통신주기(분)'], | |
| ['1', '통신주기(시)'] | |
| ]; | |
| break; | |
| case '8': //--- 범용장비 | |
| case 'B': //--- SPC | |
| return [ | |
| ['1', '통신주기(초)/수집주기(초)'], | |
| ['2', '통신주기(분)/수집주기(초)'], | |
| ['3', '통신주기(분)/수집주기(분)'], | |
| // ['4', '통신주기(시)/수집주기(초)'], | |
| // ['5', '통신주기(시)/수집주기(분)'], | |
| // ['6', '통신주기(시)/수집주기(시)'] | |
| ]; | |
| break; | |
| case 'A': //--- 두께측정장비 | |
| return [ | |
| ['3', '통신주기(분)/수집주기(분)'], | |
| ['5', '통신주기(시)/수집주기(분)'], | |
| ['6', '통신주기(시)/수집주기(시)'] | |
| ]; | |
| break; | |
| default: | |
| return [ | |
| ['0', '통신주기(분)/수집주기(분)'], | |
| ['1', '통신주기(시)/수집주기(분)'], | |
| ['2', '통신주기(시)/수집주기(시)'] | |
| ]; | |
| break; | |
| } | |
| } | |
| } | |
| module.exports = DevicesSetting; | |