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 Model = utils.getClass('include', 'model.js'); | |
| class DevicedataBsModel extends Model { | |
| constructor() { | |
| super(); | |
| this._title = '정압기 압력 자동 조절 장치'; | |
| this._database = db.db_scada; | |
| this._tableName = 'devicedataB'; | |
| this._define = config.databases.scada.define; | |
| this._timestamps = false; //--- createdAt, updatedAt 필드를 사용하지 않는다. | |
| } | |
| get fieldDesc() { | |
| const fieldDescribes = Object.assign({ | |
| siteKey: { | |
| type: 'string', len: 8, | |
| allowNull: false, | |
| defaultValue: '', | |
| validate: {}, | |
| title: '사이트', | |
| strType: 'string' | |
| }, | |
| type: { | |
| type: 'string', len: 2, | |
| allowNull: false, | |
| defaultValue: 'B', | |
| validate: {}, | |
| title: '단말기 타입', | |
| strType: 'select', | |
| enum: this.getTypeEnum() | |
| }, | |
| deviceKey: { | |
| type: 'string', len: 8, | |
| allowNull: false, | |
| defaultValue: '', | |
| validate: {}, | |
| title: '아이디', | |
| strType: 'string' | |
| }, | |
| dataCycle: { | |
| type: 'integer', len: 2, | |
| allowNull: false, | |
| defaultValue: 1, | |
| validate: {}, | |
| title: '수집 주기', | |
| strType: 'integer' | |
| }, | |
| dataCycleUnit: { | |
| type: 'string', len: 1, | |
| allowNull: false, | |
| defaultValue: '2', | |
| validate: {}, | |
| title: '수집 주기 단위', | |
| strType: 'select', | |
| enum: [ ['1', '초'], ['2', '분'], ['3', '시'] ] | |
| }, | |
| networkCycle: { | |
| type: 'integer', len: 2, | |
| allowNull: false, | |
| defaultValue: 1, | |
| validate: {}, | |
| title: '통신 주기', | |
| strType: 'integer' | |
| }, | |
| networkCycleUnit: { | |
| type: 'string', len: 1, | |
| allowNull: false, | |
| defaultValue: '2', | |
| validate: {}, | |
| title: '통신 주기 단위', | |
| strType: 'select', | |
| enum: [ ['1', '초'], ['2', '분'], ['3', '시'] ] | |
| }, | |
| statusDatetime: { | |
| type: 'string', len: 14, | |
| allowNull: false, | |
| defaultValue: '', | |
| validate: {}, | |
| title: '발생일자', //--- YYYYMMDDHHmmss | |
| strType: 'string' | |
| }, | |
| operationStatus: { | |
| type: 'string', len: 1, | |
| allowNull: false, | |
| defaultValue: '0', | |
| validate: {}, | |
| title: '운전 상태', | |
| strType: 'select', | |
| enum: [ ['0', '정지'], ['1', '설정 운전'], ['2', '자동 운전'] ] //--- 3. AI 운전 (Reserved) | |
| }, | |
| PTcur: { | |
| type: 'float', len: 4, | |
| allowNull: false, | |
| defaultValue: 0.0, | |
| validate: {}, | |
| title: '현재 압력', | |
| strType: 'float' | |
| }, | |
| PTb_datetime: { | |
| type: 'string', len: 14, | |
| allowNull: false, | |
| defaultValue: '', | |
| validate: {}, | |
| title: '직전 압력 일자', //--- YYYYMMDDHHmmss | |
| strType: 'string' | |
| }, | |
| PTb: { | |
| type: 'float', len: 4, | |
| allowNull: false, | |
| defaultValue: 0.0, | |
| validate: {}, | |
| title: '직전 압력', | |
| strType: 'float' | |
| }, | |
| Pcon_datetime: { | |
| type: 'string', len: 8, | |
| allowNull: false, | |
| defaultValue: '', | |
| validate: {}, | |
| title: '설정 압력 일자', //--- YYYYMMDD | |
| strType: 'string' | |
| }, | |
| Pcon_init: { | |
| type: 'float', len: 4, | |
| allowNull: false, | |
| defaultValue: 0.0, | |
| validate: {}, | |
| title: '초기 설정 압력', | |
| strType: 'float' | |
| }, | |
| Pcon: { | |
| type: 'float', len: 4, | |
| allowNull: false, | |
| defaultValue: 0.0, | |
| validate: {}, | |
| title: '설정 압력', | |
| strType: 'float' | |
| }, | |
| PEcur: { | |
| type: 'float', len: 5, | |
| allowNull: false, | |
| defaultValue: 0.0, | |
| validate: {}, | |
| title: '연산 압력', | |
| strType: 'float' | |
| }, | |
| operation: { | |
| type: 'string', len: 1, | |
| allowNull: false, | |
| defaultValue: '2', | |
| validate: {}, | |
| title: '제어 활동', | |
| strType: 'select', | |
| enum: [ ['1', '활동 없음'], ['2', '승압중'], ['3', '감압중'] ] | |
| }, | |
| remainTimeMinutes: { | |
| type: 'integer', len: 2, | |
| allowNull: false, | |
| defaultValue: 0, | |
| validate: {}, | |
| title: '잔여 대기시간 (분)', | |
| strType: 'integer' | |
| }, | |
| remainTimeSeconds: { | |
| type: 'integer', len: 2, | |
| allowNull: false, | |
| defaultValue: 0, | |
| validate: {}, | |
| title: '잔여 대기시간 (초)', | |
| strType: 'integer' | |
| }, | |
| statusCode: { | |
| type: 'integer', len: 2, | |
| allowNull: false, | |
| defaultValue: 0, | |
| validate: {}, | |
| title: '상태 코드', | |
| strType: 'integer' | |
| } | |
| // alarmDatetime: { | |
| // type: 'string', len: 14, | |
| // allowNull: false, | |
| // defaultValue: '', | |
| // validate: {}, | |
| // title: '알람 일시', //--- YYYYMMDDHHmmss | |
| // strType: 'string' | |
| // }, | |
| // alarmType: { | |
| // type: 'string', len: 1, | |
| // allowNull: false, | |
| // defaultValue: '2', | |
| // validate: {}, | |
| // title: '알람 타입', | |
| // strType: 'select', | |
| // enum: [ ['1', 'ppp'], ['2', 'ppp'], ['3', 'ppp'], ['4', 'ppp'], ['5', 'ppp'], ['6', 'ppp'] ] | |
| // }, | |
| // alarmMessage: { | |
| // type: 'string', len: 80, | |
| // allowNull: false, | |
| // defaultValue: '', | |
| // validate: {}, | |
| // title: '알람 메시지', | |
| // strType: 'string' | |
| // } | |
| }, super.fieldDesc); | |
| return fieldDescribes; | |
| } | |
| } | |
| module.exports = DevicedataBsModel; | |