From aa8aad94cf7ef87d739f816c3b37a18ebc342021 Mon Sep 17 00:00:00 2001 From: Fachba Date: Tue, 28 Oct 2025 12:12:05 +0700 Subject: [PATCH 1/3] format number value history --- db/history_value.db.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/db/history_value.db.js b/db/history_value.db.js index 3585ad9..72710cd 100644 --- a/db/history_value.db.js +++ b/db/history_value.db.js @@ -234,7 +234,7 @@ const getHistoryValueReportPivotDb = async (tableName, searchParams = {}) => { SELECT DATEADD(MINUTE, DATEDIFF(MINUTE, 0, CAST(a.datetime AS DATETIME)) / @intervalParam * @intervalParam, 0) AS waktu_group, b.tag_name, - AVG(a.val) AS avg_val + ROUND(AVG(a.val), 4) AS avg_val FROM ${tableName} a LEFT JOIN m_tags b ON a.tagnum = b.tag_number AND b.deleted_at IS NULL WHERE a.datetime BETWEEN @fromParam AND @toParam @@ -319,7 +319,7 @@ const getHistoryValueTrendingPivotDb = async (tableName, searchParams = {}) => { SELECT DATEADD(MINUTE, DATEDIFF(MINUTE, 0, CAST(a.datetime AS DATETIME)) / @intervalParam * @intervalParam, 0) AS waktu_group, b.tag_name, - AVG(a.val) AS avg_val + ROUND(AVG(a.val), 4) AS avg_val FROM ${tableName} a LEFT JOIN m_tags b ON a.tagnum = b.tag_number AND b.deleted_at IS NULL WHERE a.datetime BETWEEN @fromParam AND @toParam From d96cbd5e1922ff9237d98d1266db783cf509d080 Mon Sep 17 00:00:00 2001 From: Fachba Date: Tue, 28 Oct 2025 12:24:52 +0700 Subject: [PATCH 2/3] fixing api history event alarm --- db/history_value.db.js | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/db/history_value.db.js b/db/history_value.db.js index 72710cd..41032b5 100644 --- a/db/history_value.db.js +++ b/db/history_value.db.js @@ -93,16 +93,9 @@ const getHistoryEventDb = async (searchParams = {}) => { const queryText = ` SELECT COUNT(*) OVER() AS total_data, - a.*, - b.tag_name, - b.tag_number, - b.lim_low_crash, - b.lim_low, - b.lim_high, - b.lim_high_crash, + a.*, c.status_color - FROM alarm_history a - LEFT JOIN m_tags b ON a.tagnum = b.tag_number AND b.deleted_at IS NULL + FROM event_alarm a LEFT JOIN m_status c ON a.status = c.status_number AND c.deleted_at IS NULL WHERE a.datetime IS NOT NULL ${whereConditions.length > 0 ? ` AND ${whereConditions.join(" AND ")}` : ""} From 93b6b1b15e1923daab88e06087a41cd46a88e7ca Mon Sep 17 00:00:00 2001 From: Antony Kurniawan Date: Tue, 28 Oct 2025 13:20:26 +0700 Subject: [PATCH 3/3] update, column error code color & path icon --- db/brand_code.db.js | 2 ++ services/brand.service.js | 6 ++++++ validate/brand.schema.js | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/db/brand_code.db.js b/db/brand_code.db.js index ec64d0c..5b3b01d 100644 --- a/db/brand_code.db.js +++ b/db/brand_code.db.js @@ -21,6 +21,8 @@ const createErrorCodeDb = async (brandId, data) => { error_code: data.error_code, error_code_name: data.error_code_name, error_code_description: data.error_code_description, + error_code_color: data.error_code_color, + path_icon: data.path_icon, is_active: data.is_active, created_by: data.created_by }; diff --git a/services/brand.service.js b/services/brand.service.js index 33be0d4..2ebfc5e 100644 --- a/services/brand.service.js +++ b/services/brand.service.js @@ -144,6 +144,8 @@ class BrandService { error_code: errorCodeData.error_code, error_code_name: errorCodeData.error_code_name, error_code_description: errorCodeData.error_code_description, + error_code_color: errorCodeData.error_code_color, + path_icon: errorCodeData.path_icon, is_active: errorCodeData.is_active, created_by: data.created_by }); @@ -229,6 +231,8 @@ class BrandService { await updateErrorCodeDb(existingEC.brand_id, existingEC.error_code, { error_code_name: errorCodeData.error_code_name, error_code_description: errorCodeData.error_code_description, + error_code_color: errorCodeData.error_code_color, + path_icon: errorCodeData.path_icon, is_active: errorCodeData.is_active, updated_by: data.updated_by }); @@ -276,6 +280,8 @@ class BrandService { error_code: errorCodeData.error_code, error_code_name: errorCodeData.error_code_name, error_code_description: errorCodeData.error_code_description, + error_code_color: errorCodeData.error_code_color, + path_icon: errorCodeData.path_icon, is_active: errorCodeData.is_active, created_by: data.updated_by }); diff --git a/validate/brand.schema.js b/validate/brand.schema.js index 450972e..1f07a6f 100644 --- a/validate/brand.schema.js +++ b/validate/brand.schema.js @@ -15,6 +15,8 @@ const insertBrandSchema = Joi.object({ error_code: Joi.string().max(100).required(), error_code_name: Joi.string().max(100).required(), error_code_description: Joi.string().optional().allow(''), + error_code_color: Joi.string().optional().allow(''), + path_icon: Joi.string().optional().allow(''), is_active: Joi.boolean().required(), what_action_to_take: Joi.string().optional().allow(''), solution: Joi.array().items( @@ -51,6 +53,8 @@ const updateBrandSchema = Joi.object({ error_code: Joi.string().max(100).required(), error_code_name: Joi.string().max(100).required(), error_code_description: Joi.string().optional().allow(''), + error_code_color: Joi.string().optional().allow(''), + path_icon: Joi.string().optional().allow(''), is_active: Joi.boolean().required(), what_action_to_take: Joi.string().optional().allow(''), solution: Joi.array().items(