部署第一版

parent af021737
<config>
<port>13269</port>
<sign></sign>
<img>http://127.0.0.1:13269</img>
<img>http://127.0.0.1:80</img>
<mysqldb>
<!-- 本地mysql配置 -->
<mysqlHost>127.0.0.1</mysqlHost>
<!-- <mysqlHost>127.0.0.1</mysqlHost>
<mysqlPort>3306</mysqlPort>
<mysqlUser>root</mysqlUser>
<mysqlPwd>123456</mysqlPwd>
<dataBase>dst_technology_platform</dataBase>
<dataBase>dst_technology_platform</dataBase> -->
<!-- 服务器mysql配置 -->
<!-- <mysqlHost>127.0.0.1</mysqlHost>
<mysqlPort>13306</mysqlPort>
<mysqlUser>root</mysqlUser>
<mysqlPwd>root</mysqlPwd>
<dataBase>dst_technology_platform</dataBase> -->
<!-- dst服务器mysql配置 49.235.185.26 -->
<mysqlHost>127.0.0.1</mysqlHost>
<mysqlPort>3306</mysqlPort>
<mysqlUser>deploy</mysqlUser>
<mysqlPwd>Qaz123456!</mysqlPwd>
<dataBase>dst_technology_platform</dataBase>
</mysqldb>
<feiyi>
<feiyiAppKey>0</feiyiAppKey>
<feiyiSecretKey>0</feiyiSecretKey>
<feiyiAppKey>444940462151958528</feiyiAppKey>
<feiyiSecretKey>d30353e191c94ed3a3b1c05345e284b1</feiyiSecretKey>
<feiyiBaseUrl>https://m.achelp.cn/open</feiyiBaseUrl>
</feiyi>
<diqin>
<diqinAppKey>178428005410049</diqinAppKey>
<diqinSecretKey>pGAII3TfpdrJ4zjrPncERwtt</diqinSecretKey>
<!-- <diqinAppKey>178428005410049</diqinAppKey> -->
<!-- <diqinSecretKey>pGAII3TfpdrJ4zjrPncERwtt</diqinSecretKey> -->
<diqinAppKey>178486189110050</diqinAppKey>
<diqinSecretKey>CQuwrqgtaQhnwgcChB9Ejgtt</diqinSecretKey>
<diqinBaseUrl>https://airiccc.com</diqinBaseUrl>
</diqin>
</config>
......@@ -21,8 +21,8 @@ function getFeiYiConfig() {
const config = systemConfig.feiyi;
return {
baseUrl: (config && config.baseUrl) || process.env.FEIYI_BASE_URL || 'https://m.achelp.cn/open',
clientId: (config && config.appKey) || process.env.FEIYI_CLIENT_ID || '419636996764598272',
secretKey: (config && config.secretKey) || process.env.FEIYI_SECRET_KEY || '02fc75446b4544b3a02444a2b5f9be2b',
clientId: (config && config.appKey) || process.env.FEIYI_CLIENT_ID || '444940462151958528',
secretKey: (config && config.secretKey) || process.env.FEIYI_SECRET_KEY || 'd30353e191c94ed3a3b1c05345e284b1',
};
}
......
// ==================== 设备相关枚举 ====================
/**
* 设备类型枚举
*/
export enum DEVICE_TYPE {
/** IEQ传感器(迪勤) */
IEQ传感器 = 'IEQ传感器',
/** 烟感器(规划中) */
烟感器 = '烟感器',
/** 摄像头(规划中) */
摄像头 = '摄像头',
/** 空调内机(飞奕) */
空调 = '空调',
/** 新风机(飞奕,区域名含"新风"时自动判定) */
新风 = '新风',
/** 音响(规划中) */
音响 = '音响',
/** 照明(规划中) */
照明 = '照明',
/** 等离子(规划中) */
等离子 = '等离子',
/** 人流监测(规划中) */
人流监测 = '人流监测',
/** 电表(飞奕) */
电表 = '电表',
/** 排风(规划中) */
排风 = '排风',
}
/**
* 设备状态枚举
*/
export enum DEVICE_STATE {
/** 在线 */
在线 = 0,
/** 离线 */
离线 = 1,
/** 故障 */
故障 = 2,
}
// ==================== 故障相关枚举 ====================
/**
* 故障状态枚举
*/
export enum FAULT_STATUS {
/** 未处理 */
未处理 = 0,
/** 处理中 */
处理中 = 1,
/** 已处理 */
已处理 = 2,
}
/**
* 故障等级枚举
*/
export enum FAULT_LEVEL {
/** 一级(轻微) */
一级 = 1,
/** 二级(一般) */
二级 = 2,
/** 三级(严重) */
三级 = 3,
}
// ==================== 区域相关枚举 ====================
/**
* 区域类型枚举
*/
export enum REGION_TYPE {
/** 楼栋 */
楼栋 = '楼栋',
/** 房间 */
房间 = '房间',
/** 办公室 */
办公室 = '办公室',
/** 机房 */
机房 = '机房',
/** 车间 */
车间 = '车间',
/** 迪勤场所 */
场所 = '场所',
/** 迪勤监测点 */
监测点 = '监测点',
}
// ==================== 关联相关枚举 ====================
/**
* 区域设备关联类型枚举
*/
export enum RELATION_TYPE {
/** 区域一对多设备 */
region_to_device = 'region_to_device',
/** 设备一对多区域 */
device_to_region = 'device_to_region',
}
// ==================== 空调控制相关枚举 ====================
/**
* 工作模式枚举
*/
export enum WORK_MODE {
制冷 = 1,
制热 = 2,
送风 = 3,
除湿 = 4,
}
/**
* 开关状态枚举
*/
export enum POWER_STATE {
on = 'on',
off = 'off',
}
/**
* 风速枚举
*/
export enum FAN_SPEED {
超强 = 1,
= 2,
= 4,
}
/**
* 自动控制状态枚举
*/
export enum AUTO_CONTROL {
生效 = '生效',
解除 = '解除',
}
......@@ -68,6 +68,12 @@ export const TablesConfig = [
unique: true,
comment: '区域编码,唯一'
},
region_ad: {
type: Sequelize.STRING(100),
allowNull: true,
defaultValue: null,
comment: '备用区域编码,多平台接入同一区域时存储其他平台的region_key'
},
region_name: {
type: Sequelize.STRING(255),
allowNull: false,
......@@ -162,13 +168,13 @@ export const TablesConfig = [
device_type: {
type: Sequelize.STRING(50),
allowNull: false,
comment: '设备类型:IEQ传感器, 烟感器, 摄像头, 空调, 音响, 照明, 等离子, 人流监测, 电表, 排风'
comment: '设备类型:IEQ传感器, 烟感器, 摄像头, 空调, 新风, 音响, 照明, 等离子, 人流监测, 电表, 排风'
},
device_state: {
type: DataTypes.INTEGER,
allowNull: false,
defaultValue: 0,
comment: '设备状态:0=离线, 1=在线, 2=故障'
comment: '设备状态:0=在线, 1=离线, 2=故障'
},
device_name: {
type: Sequelize.STRING(255),
......@@ -482,9 +488,9 @@ export const TablesConfig = [
comment: '故障类型'
},
fault_level: {
type: Sequelize.STRING(50),
type: Sequelize.INTEGER,
allowNull: true,
comment: '故障等级:一级, 二级, 三级'
comment: '故障等级: 1=一级, 2=二级, 3=三级'
},
fault_info: {
type: DataTypes.JSON,
......@@ -497,10 +503,10 @@ export const TablesConfig = [
comment: '故障时间'
},
fault_status: {
type: Sequelize.STRING(50),
type: Sequelize.INTEGER,
allowNull: false,
defaultValue: '未处理',
comment: '故障状态:未处理, 处理中, 已处理'
defaultValue: 0,
comment: '故障状态: 0=未处理, 1=处理中, 2=已处理'
},
handle_time: {
type: DataTypes.DATE,
......
......@@ -6,7 +6,7 @@
* - 任务锁死时(超时未释放),会主动强制释放锁,确保后续任务能正常执行
*/
import { region, device, deviceData, alertWorkData, processFaultStatus, diqinSyncAll } from "../biz/dataIntegration";
import { region, device, deviceData, alertWorkData, processFaultStatus, diqinSyncAll, migrateDeviceRegionKey } from "../biz/dataIntegration";
// ==================== 通用任务锁 ====================
......@@ -133,6 +133,7 @@ const dataSyncTask = createScheduledTask('定时任务', TASK_INTERVAL_MS, dataS
await device();
await deviceData();
await diqinSyncAll();
await migrateDeviceRegionKey();
});
// 预警工单任务
......
......@@ -15,9 +15,9 @@ export function setRouter(httpServer) {
* 区域位置
*/
async function getRegionLocation(req, res) {
let reqConf = {gatewayPage:'Number'};
const NotMustHaveKeys = [];
let { gatewayPage } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
const result = await regionBiz.getRegionLocation(gatewayPage);
let reqConf = {gatewayPage:'Number', hour: 'Number'};
const NotMustHaveKeys = [ 'hour' ];
let { gatewayPage, hour } = eccReqParamater(reqConf, req.body, NotMustHaveKeys);
const result = await regionBiz.getRegionLocation(gatewayPage, hour);
res.success(result);
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment