Merge remote-tracking branch 'origin/main' into multi-tenant
This commit is contained in:
@@ -1,5 +1,10 @@
|
|||||||
# 版本发布日志
|
# 版本发布日志
|
||||||
|
|
||||||
|
## 2.2502.3-20250221
|
||||||
|
|
||||||
|
- 修复 网元授权序号查询
|
||||||
|
- 更新 SGWC导出表格数据字段修改/兼容3G的SGWC字段
|
||||||
|
|
||||||
## 2.2502.2-20250214
|
## 2.2502.2-20250214
|
||||||
|
|
||||||
- 修复 修改调度任务导出SMSC-CDR时间格式错误
|
- 修复 修改调度任务导出SMSC-CDR时间格式错误
|
||||||
|
|||||||
@@ -695,6 +695,7 @@ INSERT INTO `sys_dict_data` VALUES (2184, 2184, 'config.sys.homePage', '自定
|
|||||||
INSERT INTO `sys_dict_data` VALUES (2185, 2185, 'config.sys.homePageRemark', '选择列表中的任一页面作为主页路径', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
INSERT INTO `sys_dict_data` VALUES (2185, 2185, 'config.sys.homePageRemark', '选择列表中的任一页面作为主页路径', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
INSERT INTO `sys_dict_data` VALUES (2186, 2186, 'menu.config.neOverview', '网元概览', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
INSERT INTO `sys_dict_data` VALUES (2186, 2186, 'menu.config.neOverview', '网元概览', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
INSERT INTO `sys_dict_data` VALUES (2187, 2187, 'menu.config.neOverviewRemark', '显示所有网元状态配置和license等概览信息', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
INSERT INTO `sys_dict_data` VALUES (2187, 2187, 'menu.config.neOverviewRemark', '显示所有网元状态配置和license等概览信息', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
|
INSERT INTO `sys_dict_data` VALUES (2188, 2188, 'job.exportSGWCCDR', '定期从漫游数据话单表导出文件至指定目录', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
|
|
||||||
-- multi-tenancy
|
-- multi-tenancy
|
||||||
INSERT INTO `sys_dict_data` VALUES (11000, 11000, 'menu.security.tenant', '租户管理', 'i18n_zh', NULL, NULL, '1', 'supervisor', 1700000000000, NULL, 0, NULL);
|
INSERT INTO `sys_dict_data` VALUES (11000, 11000, 'menu.security.tenant', '租户管理', 'i18n_zh', NULL, NULL, '1', 'supervisor', 1700000000000, NULL, 0, NULL);
|
||||||
|
|||||||
@@ -695,6 +695,7 @@ INSERT INTO `sys_dict_data` VALUES (4184, 4184, 'config.sys.homePage', 'Custom H
|
|||||||
INSERT INTO `sys_dict_data` VALUES (4185, 4185, 'config.sys.homePageRemark', 'Select any page in the list as the homepage', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
INSERT INTO `sys_dict_data` VALUES (4185, 4185, 'config.sys.homePageRemark', 'Select any page in the list as the homepage', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
INSERT INTO `sys_dict_data` VALUES (4186, 4186, 'menu.config.neOverview', 'NE Overview', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
INSERT INTO `sys_dict_data` VALUES (4186, 4186, 'menu.config.neOverview', 'NE Overview', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
INSERT INTO `sys_dict_data` VALUES (4187, 4187, 'menu.config.neOverviewRemark', 'Displays overview information such as status, configuration and license of all network elements', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
INSERT INTO `sys_dict_data` VALUES (4187, 4187, 'menu.config.neOverviewRemark', 'Displays overview information such as status, configuration and license of all network elements', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
|
INSERT INTO `sys_dict_data` VALUES (4188, 4188, 'job.exportSGWCCDR', 'Export regularly from Roaming Data CDR table', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
|
|
||||||
-- 多租户
|
-- 多租户
|
||||||
INSERT INTO `sys_dict_data` VALUES (14000, 14000, 'menu.security.tenant', 'Tenant Management', 'i18n_en', '', '', '1', 'supervisor', 1705550000000, '', 0, '');
|
INSERT INTO `sys_dict_data` VALUES (14000, 14000, 'menu.security.tenant', 'Tenant Management', 'i18n_en', '', '', '1', 'supervisor', 1705550000000, '', 0, '');
|
||||||
|
|||||||
@@ -43,5 +43,6 @@ INSERT INTO `sys_job` VALUES (12, 'job.exportIMSCDR', 'SYSTEM', 'exportTable', '
|
|||||||
INSERT INTO `sys_job` VALUES (13, 'job.exportSMFCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_smf\",\"columns\":\"id,ne_type,ne_name,rm_uid,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) AS record_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.chargingID\')) AS charging_id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.subscriberIdentifier.subscriptionIDType\')) AS subscriber_id_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.subscriberIdentifier.subscriptionIDData\')) AS subscriber_id_data,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.duration\')) AS duration,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.invocationTimestamp\')) as invocationTimestamp,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataVolumeUplink\')) AS data_volume_uplink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataVolumeDownlink\')) AS data_volume_downlink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataTotalVolume\')) AS data_total_volume,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.pDUSessionChargingInformation.pDUAddress.pDUIPv4Address\')) AS pdu_ipv4_address,timestamp\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/smf_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
INSERT INTO `sys_job` VALUES (13, 'job.exportSMFCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_smf\",\"columns\":\"id,ne_type,ne_name,rm_uid,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) AS record_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.chargingID\')) AS charging_id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.subscriberIdentifier.subscriptionIDType\')) AS subscriber_id_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.subscriberIdentifier.subscriptionIDData\')) AS subscriber_id_data,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.duration\')) AS duration,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.invocationTimestamp\')) as invocationTimestamp,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataVolumeUplink\')) AS data_volume_uplink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataVolumeDownlink\')) AS data_volume_downlink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataTotalVolume\')) AS data_total_volume,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.pDUSessionChargingInformation.pDUAddress.pDUIPv4Address\')) AS pdu_ipv4_address,timestamp\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/smf_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
||||||
INSERT INTO `sys_job` VALUES (14, 'job.exportSMSCCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_smsc\",\"columns\":\"id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) as record_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.serviceType\')) as service_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.callerParty\')) as caller_party,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.calledParty\')) as called_party,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.result\')) as result,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.updateTime\')) as update_time\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/smsc_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
INSERT INTO `sys_job` VALUES (14, 'job.exportSMSCCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_smsc\",\"columns\":\"id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) as record_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.serviceType\')) as service_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.callerParty\')) as caller_party,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.calledParty\')) as called_party,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.result\')) as result,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.updateTime\')) as update_time\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/smsc_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
||||||
INSERT INTO `sys_job` VALUES (15, 'job.removeExportedFiles', 'SYSTEM', 'removeFile', '[{\"filePath\":\"/usr/local/omc/backup/operate_log\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/ims_cdr\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/smf_cdr\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/smsc_cdr\",\"maxDays\":30}]', '0 10 0 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1728634085631, '');
|
INSERT INTO `sys_job` VALUES (15, 'job.removeExportedFiles', 'SYSTEM', 'removeFile', '[{\"filePath\":\"/usr/local/omc/backup/operate_log\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/ims_cdr\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/smf_cdr\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/smsc_cdr\",\"maxDays\":30}]', '0 10 0 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1728634085631, '');
|
||||||
|
INSERT INTO `sys_job` VALUES (16, 'job.exportSGWCCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_sgwc\",\"columns\":\"id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) as recordType,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.accessPointNameNI\')) as accessPointNameNI,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.servedIMSI\')) as IMSI,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.servedMSISDN\')) as MSISDN,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.servedPDPPDNAddress\')) as PdpAddress,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.duration\')) as duration,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordOpeningTime\')) as recordOpeningTime,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.chargingID\')) as chargingID,JSON_UNQUOTE(JSON_EXTRACT(cdr_json, \'$.listOfTrafficVolumes[0].dataVolumeGPRSDownlink\')) AS dataVolumeGPRSDownlink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json, \'$.listOfTrafficVolumes[0].dataVolumeGPRsUplink\')) as dataVolumeGPRsUplink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.userLocationInformation.tai.tac\')) as tac,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.userLocationInformation.ecgi.eutraCellId\')) as cellID\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/sgwc_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
||||||
|
|
||||||
SET FOREIGN_KEY_CHECKS = 1;
|
SET FOREIGN_KEY_CHECKS = 1;
|
||||||
|
|||||||
@@ -702,6 +702,7 @@ REPLACE INTO `sys_dict_data` VALUES (2184, 2184, 'config.sys.homePage', '自定
|
|||||||
REPLACE INTO `sys_dict_data` VALUES (2185, 2185, 'config.sys.homePageRemark', '选择列表中的任一页面作为主页路径', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
REPLACE INTO `sys_dict_data` VALUES (2185, 2185, 'config.sys.homePageRemark', '选择列表中的任一页面作为主页路径', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
REPLACE INTO `sys_dict_data` VALUES (2186, 2186, 'menu.config.neOverview', '网元概览', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
REPLACE INTO `sys_dict_data` VALUES (2186, 2186, 'menu.config.neOverview', '网元概览', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
REPLACE INTO `sys_dict_data` VALUES (2187, 2187, 'menu.config.neOverviewRemark', '显示所有网元状态配置和license等概览信息', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
REPLACE INTO `sys_dict_data` VALUES (2187, 2187, 'menu.config.neOverviewRemark', '显示所有网元状态配置和license等概览信息', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
|
REPLACE INTO `sys_dict_data` VALUES (2188, 2188, 'job.exportSGWCCDR', '定期从漫游数据话单表导出文件至指定目录', 'i18n_zh', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
|
|
||||||
-- multi-tenancy
|
-- multi-tenancy
|
||||||
REPLACE INTO `sys_dict_data` VALUES (11000, 11000, 'menu.security.tenant', '租户管理', 'i18n_zh', NULL, NULL, '1', 'supervisor', 1700000000000, NULL, 0, NULL);
|
REPLACE INTO `sys_dict_data` VALUES (11000, 11000, 'menu.security.tenant', '租户管理', 'i18n_zh', NULL, NULL, '1', 'supervisor', 1700000000000, NULL, 0, NULL);
|
||||||
|
|||||||
@@ -701,6 +701,7 @@ REPLACE INTO `sys_dict_data` VALUES (4184, 4184, 'config.sys.homePage', 'Custom
|
|||||||
REPLACE INTO `sys_dict_data` VALUES (4185, 4185, 'config.sys.homePageRemark', 'Select any page in the list as the homepage', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
REPLACE INTO `sys_dict_data` VALUES (4185, 4185, 'config.sys.homePageRemark', 'Select any page in the list as the homepage', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
REPLACE INTO `sys_dict_data` VALUES (4186, 4186, 'menu.config.neOverview', 'NE Overview', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
REPLACE INTO `sys_dict_data` VALUES (4186, 4186, 'menu.config.neOverview', 'NE Overview', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
REPLACE INTO `sys_dict_data` VALUES (4187, 4187, 'menu.config.neOverviewRemark', 'Displays overview information such as status, configuration and license of all network elements', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
REPLACE INTO `sys_dict_data` VALUES (4187, 4187, 'menu.config.neOverviewRemark', 'Displays overview information such as status, configuration and license of all network elements', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
|
REPLACE INTO `sys_dict_data` VALUES (4188, 4188, 'job.exportSGWCCDR', 'Export regularly from Roaming Data CDR table', 'i18n_en', '', '', '1', 'supervisor', 1721902269805, '', 0, '');
|
||||||
|
|
||||||
-- 多租户
|
-- 多租户
|
||||||
REPLACE INTO `sys_dict_data` VALUES (14000, 14000, 'menu.security.tenant', 'Tenant Management', 'i18n_en', '', '', '1', 'supervisor', 1705550000000, '', 0, '');
|
REPLACE INTO `sys_dict_data` VALUES (14000, 14000, 'menu.security.tenant', 'Tenant Management', 'i18n_en', '', '', '1', 'supervisor', 1705550000000, '', 0, '');
|
||||||
|
|||||||
@@ -47,5 +47,6 @@ REPLACE INTO `sys_job` VALUES (12, 'job.exportIMSCDR', 'SYSTEM', 'exportTable',
|
|||||||
REPLACE INTO `sys_job` VALUES (13, 'job.exportSMFCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_smf\",\"columns\":\"id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) AS record_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.chargingID\')) AS charging_id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.subscriberIdentifier.subscriptionIDType\')) AS subscriber_id_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.subscriberIdentifier.subscriptionIDData\')) AS subscriber_id_data,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.duration\')) AS duration,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.invocationTimestamp\')) as invocationTimestamp,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataVolumeUplink\')) AS data_volume_uplink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataVolumeDownlink\')) AS data_volume_downlink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataTotalVolume\')) AS data_total_volume,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.pDUSessionChargingInformation.pDUAddress.pDUIPv4Address\')) AS pdu_ipv4_address,timestamp\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/smf_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
REPLACE INTO `sys_job` VALUES (13, 'job.exportSMFCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_smf\",\"columns\":\"id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) AS record_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.chargingID\')) AS charging_id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.subscriberIdentifier.subscriptionIDType\')) AS subscriber_id_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.subscriberIdentifier.subscriptionIDData\')) AS subscriber_id_data,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.duration\')) AS duration,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.invocationTimestamp\')) as invocationTimestamp,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataVolumeUplink\')) AS data_volume_uplink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataVolumeDownlink\')) AS data_volume_downlink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.listOfMultipleUnitUsage[*].usedUnitContainer[*].dataTotalVolume\')) AS data_total_volume,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.pDUSessionChargingInformation.pDUAddress.pDUIPv4Address\')) AS pdu_ipv4_address,timestamp\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/smf_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
||||||
REPLACE INTO `sys_job` VALUES (14, 'job.exportSMSCCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_smsc\",\"columns\":\"id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) as record_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.serviceType\')) as service_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.callerParty\')) as caller_party,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.calledParty\')) as called_party,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.result\')) as result,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.updateTime\')) as update_time\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/smsc_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
REPLACE INTO `sys_job` VALUES (14, 'job.exportSMSCCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_smsc\",\"columns\":\"id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) as record_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.serviceType\')) as service_type,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.callerParty\')) as caller_party,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.calledParty\')) as called_party,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.result\')) as result,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.updateTime\')) as update_time\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/smsc_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
||||||
REPLACE INTO `sys_job` VALUES (15, 'job.removeExportedFiles', 'SYSTEM', 'removeFile', '[{\"filePath\":\"/usr/local/omc/backup/operate_log\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/ims_cdr\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/smf_cdr\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/smsc_cdr\",\"maxDays\":30}]', '0 10 0 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1728634085631, '');
|
REPLACE INTO `sys_job` VALUES (15, 'job.removeExportedFiles', 'SYSTEM', 'removeFile', '[{\"filePath\":\"/usr/local/omc/backup/operate_log\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/ims_cdr\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/smf_cdr\",\"maxDays\":30},{\"filePath\":\"/usr/local/omc/backup/smsc_cdr\",\"maxDays\":30}]', '0 10 0 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1728634085631, '');
|
||||||
|
REPLACE INTO `sys_job` VALUES (16, 'job.exportSGWCCDR', 'SYSTEM', 'exportTable', '{\"duration\":1,\"tableName\":\"cdr_event_sgwc\",\"columns\":\"id,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordType\')) as recordType,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.accessPointNameNI\')) as accessPointNameNI,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.servedIMSI\')) as IMSI,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.servedMSISDN\')) as MSISDN,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.servedPDPPDNAddress\')) as PdpAddress,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.duration\')) as duration,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.recordOpeningTime\')) as recordOpeningTime,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.chargingID\')) as chargingID,JSON_UNQUOTE(JSON_EXTRACT(cdr_json, \'$.listOfTrafficVolumes[0].dataVolumeGPRSDownlink\')) AS dataVolumeGPRSDownlink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json, \'$.listOfTrafficVolumes[0].dataVolumeGPRsUplink\')) as dataVolumeGPRsUplink,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.userLocationInformation.tai.tac\')) as tac,JSON_UNQUOTE(JSON_EXTRACT(cdr_json,\'$.userLocationInformation.ecgi.eutraCellId\')) as cellID\",\"timeCol\":\"timestamp\",\"timeUnit\":\"second\",\"extras\":\"\",\"filePath\":\"/usr/local/omc/backup/sgwc_cdr\"}', '0 0 0/1 * * ?', '3', '0', '1', '1', 'supervisor', 1698478134842, 'admin', 1724309047797, '');
|
||||||
|
|
||||||
SET FOREIGN_KEY_CHECKS = 1;
|
SET FOREIGN_KEY_CHECKS = 1;
|
||||||
2
makefile
2
makefile
@@ -3,7 +3,7 @@
|
|||||||
ProjectL = omc
|
ProjectL = omc
|
||||||
ProjectU = OMC
|
ProjectU = OMC
|
||||||
PROJECT = $(ProjectL)
|
PROJECT = $(ProjectL)
|
||||||
VERSION = 2.2502.2
|
VERSION = 2.2502.3
|
||||||
RelDate = `date +%Y%m%d`
|
RelDate = `date +%Y%m%d`
|
||||||
Release = $(RelDate)
|
Release = $(RelDate)
|
||||||
RelVer = $(VERSION)-$(RelDate)
|
RelVer = $(VERSION)-$(RelDate)
|
||||||
|
|||||||
2
mkpkg.sh
2
mkpkg.sh
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
ProcList="restagent sshsvc"
|
ProcList="restagent sshsvc"
|
||||||
ProjectL=omc
|
ProjectL=omc
|
||||||
VERSION=2.2502.2
|
VERSION=2.2502.3
|
||||||
RelDate=`date +%Y%m%d`
|
RelDate=`date +%Y%m%d`
|
||||||
Release=${RelDate}
|
Release=${RelDate}
|
||||||
RelVer=${VERSION}-${RelDate}
|
RelVer=${VERSION}-${RelDate}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Makefile for rest agent project
|
# Makefile for rest agent project
|
||||||
|
|
||||||
PROJECT = OMC
|
PROJECT = OMC
|
||||||
VERSION = 2.2502.2
|
VERSION = 2.2502.3
|
||||||
PLATFORM = amd64
|
PLATFORM = amd64
|
||||||
ARMPLATFORM = aarch64
|
ARMPLATFORM = aarch64
|
||||||
BUILDDIR = ../../build
|
BUILDDIR = ../../build
|
||||||
|
|||||||
@@ -10,20 +10,28 @@ import (
|
|||||||
|
|
||||||
"be.ems/features/fm"
|
"be.ems/features/fm"
|
||||||
"be.ems/lib/config"
|
"be.ems/lib/config"
|
||||||
"be.ems/lib/dborm"
|
|
||||||
"be.ems/lib/global"
|
|
||||||
"be.ems/lib/log"
|
"be.ems/lib/log"
|
||||||
"be.ems/src/framework/cron"
|
"be.ems/src/framework/cron"
|
||||||
|
"be.ems/src/framework/datasource"
|
||||||
|
"be.ems/src/framework/utils/date"
|
||||||
|
"be.ems/src/framework/utils/parse"
|
||||||
"github.com/go-resty/resty/v2"
|
"github.com/go-resty/resty/v2"
|
||||||
|
|
||||||
|
neModel "be.ems/src/modules/network_element/model"
|
||||||
|
neService "be.ems/src/modules/network_element/service"
|
||||||
)
|
)
|
||||||
|
|
||||||
var NewProcessor = &BarProcessor{
|
var NewProcessor = &BarProcessor{
|
||||||
|
neConfigBackupService: neService.NewNeConfigBackup,
|
||||||
|
neInfoService: neService.NewNeInfo,
|
||||||
progress: 0,
|
progress: 0,
|
||||||
count: 0,
|
count: 0,
|
||||||
}
|
}
|
||||||
|
|
||||||
// bar 队列任务处理
|
// bar 队列任务处理
|
||||||
type BarProcessor struct {
|
type BarProcessor struct {
|
||||||
|
neConfigBackupService *neService.NeConfigBackup // 网元配置文件备份记录服务
|
||||||
|
neInfoService *neService.NeInfo // 网元信息服务
|
||||||
// 任务进度
|
// 任务进度
|
||||||
progress int
|
progress int
|
||||||
// 执行次数
|
// 执行次数
|
||||||
@@ -97,32 +105,26 @@ func (s *BarProcessor) Execute(data any) (any, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
var nes []dborm.NeInfo
|
|
||||||
_, err = dborm.XormGetAllNeInfo(&nes)
|
|
||||||
if err != nil {
|
|
||||||
log.Error("Failed to get all ne info:", err)
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
succActiveAlarmNum := 0
|
succActiveAlarmNum := 0
|
||||||
failActiveAlarmNum := 0
|
failActiveAlarmNum := 0
|
||||||
succClearAlarmNum := 0
|
succClearAlarmNum := 0
|
||||||
failClearAlarmNum := 0
|
failClearAlarmNum := 0
|
||||||
|
|
||||||
for _, ne := range nes {
|
neList := s.neInfoService.SelectList(neModel.NeInfo{}, true, false)
|
||||||
|
for _, ne := range neList {
|
||||||
//log.Debug("ne:", ne)
|
//log.Debug("ne:", ne)
|
||||||
|
|
||||||
sql := fmt.Sprintf("select * from ne_state where ne_type='%s' and ne_id='%s' order by `timestamp` desc limit 1", ne.NeType, ne.NeId)
|
// sql := fmt.Sprintf("select * from ne_state where ne_type='%s' and ne_id='%s' order by `timestamp` desc limit 1", ne.NeType, ne.NeId)
|
||||||
log.Debug("SQL:", sql)
|
// log.Debug("SQL:", sql)
|
||||||
neState, err := dborm.XormGetDataBySQL(sql)
|
// neState, err := dborm.XormGetDataBySQL(sql)
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
log.Error("Failed to get ne_state:", err)
|
// log.Error("Failed to get ne_state:", err)
|
||||||
continue
|
// continue
|
||||||
}
|
// }
|
||||||
if len(*neState) == 0 {
|
// if len(*neState) == 0 {
|
||||||
log.Warn("Not found record in ne_state:")
|
// log.Warn("Not found record in ne_state:")
|
||||||
//continue
|
// //continue
|
||||||
}
|
// }
|
||||||
//log.Debug("neState:", *neState)
|
//log.Debug("neState:", *neState)
|
||||||
|
|
||||||
// params := "10000"
|
// params := "10000"
|
||||||
@@ -138,33 +140,31 @@ func (s *BarProcessor) Execute(data any) (any, error) {
|
|||||||
|
|
||||||
// log.Debug("alarmDefine:", alarmDefine)
|
// log.Debug("alarmDefine:", alarmDefine)
|
||||||
|
|
||||||
sql = fmt.Sprintf("select * from alarm where alarm_id = '%s' and ne_type='%s' and ne_id = '%s' order by event_time desc limit 1",
|
// 是否存在告警
|
||||||
|
sql := fmt.Sprintf("select * from alarm where alarm_id = '%s' and ne_type='%s' and ne_id = '%s' order by event_time desc limit 1",
|
||||||
alarmDefine.AlarmID, ne.NeType, ne.RmUID)
|
alarmDefine.AlarmID, ne.NeType, ne.RmUID)
|
||||||
alarm, err := dborm.XormGetDataBySQL(sql)
|
alarm, err := datasource.RawDB("", sql, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Error("Failed to get alarm:", err)
|
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
//log.Debug("alarm:", *alarm)
|
alarmStatus := "0"
|
||||||
|
if len(alarm) > 0 {
|
||||||
var timestamp string
|
alarmStatus = fmt.Sprint(alarm[0]["alarm_status"])
|
||||||
if len(*neState) == 0 {
|
|
||||||
log.Infof("Not found ne_state neType:%s, neId:%s", ne.NeType, ne.NeId)
|
|
||||||
timestamp = ne.UpdateTime.Format(time.DateTime)
|
|
||||||
} else {
|
|
||||||
timestamp = (*neState)[0]["timestamp"]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 解析日期时间字符串为时间对象
|
changeTime := time.UnixMilli(ne.UpdateTime)
|
||||||
seconds, err := global.GetSecondsSinceDatetime(timestamp)
|
// 检查状态
|
||||||
if err != nil {
|
isOnline := false
|
||||||
log.Error("Failed to GetSecondsSinceDatetime:", err)
|
if ne.ServerState != nil {
|
||||||
|
isOnline = parse.Boolean(ne.ServerState["online"])
|
||||||
|
}
|
||||||
|
|
||||||
|
// 在线且状态为活动告警
|
||||||
|
if isOnline && alarmStatus == "1" {
|
||||||
|
if len(alarm) == 0 {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
log.Debugf("timestamp:%s seconds:%d", timestamp, seconds)
|
if alarmStatus == "0" {
|
||||||
|
|
||||||
if seconds <= alarmDefine.Threshold {
|
|
||||||
if len(*alarm) == 0 || (*alarm)[0]["alarm_status"] == fm.AlarmStatusClearString {
|
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -172,7 +172,8 @@ func (s *BarProcessor) Execute(data any) (any, error) {
|
|||||||
var alarmSeq int = 1
|
var alarmSeq int = 1
|
||||||
threshold := strconv.FormatInt(alarmDefine.Threshold, 10)
|
threshold := strconv.FormatInt(alarmDefine.Threshold, 10)
|
||||||
SpecificProblem := strings.ReplaceAll(alarmDefine.SpecificProblem, "{threshold}", threshold)
|
SpecificProblem := strings.ReplaceAll(alarmDefine.SpecificProblem, "{threshold}", threshold)
|
||||||
locationInfo := fmt.Sprintf("SystemManagement.State: NE heartbeat timestamp=%s,threshold=%v", timestamp, alarmDefine.Threshold)
|
timeStr := date.ParseDateToStr(changeTime, date.YYYY_MM_DDTHH_MM_SSZ)
|
||||||
|
locationInfo := fmt.Sprintf("SystemManagement.State: NE heartbeat timestamp=%s,threshold=%v", timeStr, alarmDefine.Threshold)
|
||||||
alarmData := &Alarm{
|
alarmData := &Alarm{
|
||||||
AlarmSeq: alarmSeq,
|
AlarmSeq: alarmSeq,
|
||||||
AlarmId: alarmDefine.AlarmID,
|
AlarmId: alarmDefine.AlarmID,
|
||||||
@@ -232,16 +233,15 @@ func (s *BarProcessor) Execute(data any) (any, error) {
|
|||||||
_ = json.Unmarshal(response.Body(), &body)
|
_ = json.Unmarshal(response.Body(), &body)
|
||||||
failClearAlarmNum++
|
failClearAlarmNum++
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
var alarmSeq int = 1
|
|
||||||
if len(*alarm) > 0 && (*alarm)[0]["alarm_status"] == fm.AlarmStatusActiveString {
|
|
||||||
log.Info("System state alarm has exist")
|
|
||||||
continue
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 不在线且状态为清除告警
|
||||||
|
if !isOnline && alarmStatus == "0" {
|
||||||
|
var alarmSeq int = 1
|
||||||
threshold := strconv.FormatInt(alarmDefine.Threshold, 10)
|
threshold := strconv.FormatInt(alarmDefine.Threshold, 10)
|
||||||
SpecificProblem := strings.ReplaceAll(alarmDefine.SpecificProblem, "{threshold}", threshold)
|
SpecificProblem := strings.ReplaceAll(alarmDefine.SpecificProblem, "{threshold}", threshold)
|
||||||
locationInfo := fmt.Sprintf("SystemManagement.State: NE heartbeat timestamp=%s,threshold=%v", timestamp, alarmDefine.Threshold)
|
timeStr := date.ParseDateToStr(changeTime, date.YYYY_MM_DDTHH_MM_SSZ)
|
||||||
|
locationInfo := fmt.Sprintf("SystemManagement.State: NE heartbeat timestamp=%s threshold=%v", timeStr, alarmDefine.Threshold)
|
||||||
alarmData := &Alarm{
|
alarmData := &Alarm{
|
||||||
AlarmSeq: alarmSeq,
|
AlarmSeq: alarmSeq,
|
||||||
AlarmId: alarmDefine.AlarmID,
|
AlarmId: alarmDefine.AlarmID,
|
||||||
|
|||||||
@@ -26,10 +26,10 @@ type CDREventIMSQuery struct {
|
|||||||
RecordType string `json:"recordType" form:"recordType"` // 记录行为 MOC MTC MOSM MTSM
|
RecordType string `json:"recordType" form:"recordType"` // 记录行为 MOC MTC MOSM MTSM
|
||||||
CallerParty string `json:"callerParty" form:"callerParty"` // 主叫号码
|
CallerParty string `json:"callerParty" form:"callerParty"` // 主叫号码
|
||||||
CalledParty string `json:"calledParty" form:"calledParty"` // 被叫号码
|
CalledParty string `json:"calledParty" form:"calledParty"` // 被叫号码
|
||||||
StartTime string `json:"startTime" form:"startTime"`
|
|
||||||
EndTime string `json:"endTime" form:"endTime"`
|
|
||||||
TenantName string `json:"tenantName" form:"tenantName"`
|
TenantName string `json:"tenantName" form:"tenantName"`
|
||||||
UserName string `json:"userName" form:"userName"`
|
UserName string `json:"userName" form:"userName"`
|
||||||
|
StartTime int64 `json:"startTime" form:"startTime"`
|
||||||
|
EndTime int64 `json:"endTime" form:"endTime"`
|
||||||
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
||||||
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
||||||
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
||||||
|
|||||||
@@ -27,8 +27,8 @@ type CDREventSGWCQuery struct {
|
|||||||
RmUID string `json:"rmUID" form:"rmUID"`
|
RmUID string `json:"rmUID" form:"rmUID"`
|
||||||
IMSI string `json:"imsi" form:"imsi"`
|
IMSI string `json:"imsi" form:"imsi"`
|
||||||
MSISDN string `json:"msisdn" form:"msisdn"`
|
MSISDN string `json:"msisdn" form:"msisdn"`
|
||||||
StartTime string `json:"startTime" form:"startTime"`
|
StartTime int64 `json:"startTime" form:"startTime"`
|
||||||
EndTime string `json:"endTime" form:"endTime"`
|
EndTime int64 `json:"endTime" form:"endTime"`
|
||||||
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
||||||
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
||||||
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
||||||
|
|||||||
@@ -27,10 +27,10 @@ type CDREventSMFQuery struct {
|
|||||||
RecordType string `json:"recordType" form:"recordType"` // 暂时没用到
|
RecordType string `json:"recordType" form:"recordType"` // 暂时没用到
|
||||||
SubscriberID string `json:"subscriberID" form:"subscriberID"`
|
SubscriberID string `json:"subscriberID" form:"subscriberID"`
|
||||||
DNN string `json:"dnn" form:"dnn"`
|
DNN string `json:"dnn" form:"dnn"`
|
||||||
StartTime string `json:"startTime" form:"startTime"`
|
|
||||||
EndTime string `json:"endTime" form:"endTime"`
|
|
||||||
TenantName string `json:"tenantName" form:"tenantName"`
|
TenantName string `json:"tenantName" form:"tenantName"`
|
||||||
UserName string `json:"userName" form:"userName"`
|
UserName string `json:"userName" form:"userName"`
|
||||||
|
StartTime int64 `json:"startTime" form:"startTime"`
|
||||||
|
EndTime int64 `json:"endTime" form:"endTime"`
|
||||||
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
||||||
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
||||||
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
||||||
|
|||||||
@@ -26,10 +26,10 @@ type CDREventSMSCQuery struct {
|
|||||||
RecordType string `json:"recordType" form:"recordType"` // 记录行为 MOSM MTSM
|
RecordType string `json:"recordType" form:"recordType"` // 记录行为 MOSM MTSM
|
||||||
CallerParty string `json:"callerParty" form:"callerParty"` // 主叫号码
|
CallerParty string `json:"callerParty" form:"callerParty"` // 主叫号码
|
||||||
CalledParty string `json:"calledParty" form:"calledParty"` // 被叫号码
|
CalledParty string `json:"calledParty" form:"calledParty"` // 被叫号码
|
||||||
StartTime string `json:"startTime" form:"startTime"`
|
|
||||||
EndTime string `json:"endTime" form:"endTime"`
|
|
||||||
TenantName string `json:"tenantName" form:"tenantName"` // for multi-tenancy
|
TenantName string `json:"tenantName" form:"tenantName"` // for multi-tenancy
|
||||||
UserName string `json:"userName" form:"userName"`
|
UserName string `json:"userName" form:"userName"`
|
||||||
|
StartTime int64 `json:"startTime" form:"startTime"`
|
||||||
|
EndTime int64 `json:"endTime" form:"endTime"`
|
||||||
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
||||||
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
||||||
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
||||||
|
|||||||
@@ -26,8 +26,8 @@ type UEEventAMFQuery struct {
|
|||||||
RmUID string `json:"rmUID" form:"rmUID"`
|
RmUID string `json:"rmUID" form:"rmUID"`
|
||||||
EventType string `json:"eventType" form:"eventType"` // 事件类型 auth-result detach cm-state
|
EventType string `json:"eventType" form:"eventType"` // 事件类型 auth-result detach cm-state
|
||||||
IMSI string `json:"imsi" form:"imsi"` // imsi
|
IMSI string `json:"imsi" form:"imsi"` // imsi
|
||||||
StartTime string `json:"startTime" form:"startTime"`
|
StartTime int64 `json:"startTime" form:"startTime"`
|
||||||
EndTime string `json:"endTime" form:"endTime"`
|
EndTime int64 `json:"endTime" form:"endTime"`
|
||||||
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
||||||
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
||||||
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
||||||
|
|||||||
@@ -27,8 +27,8 @@ type UEEventMMEQuery struct {
|
|||||||
RmUID string `json:"rmUID" form:"rmUID"`
|
RmUID string `json:"rmUID" form:"rmUID"`
|
||||||
EventType string `json:"eventType" form:"eventType"` // 事件类型 auth-result detach cm-state
|
EventType string `json:"eventType" form:"eventType"` // 事件类型 auth-result detach cm-state
|
||||||
IMSI string `json:"imsi" form:"imsi"` // imsi
|
IMSI string `json:"imsi" form:"imsi"` // imsi
|
||||||
StartTime string `json:"startTime" form:"startTime"`
|
StartTime int64 `json:"startTime" form:"startTime"`
|
||||||
EndTime string `json:"endTime" form:"endTime"`
|
EndTime int64 `json:"endTime" form:"endTime"`
|
||||||
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
SortField string `json:"sortField" form:"sortField" binding:"omitempty,oneof=timestamp"` // 排序字段,填写结果字段
|
||||||
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
SortOrder string `json:"sortOrder" form:"sortOrder" binding:"omitempty,oneof=asc desc"` // 排序升降序,asc desc
|
||||||
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
PageNum int64 `json:"pageNum" form:"pageNum" binding:"required"`
|
||||||
|
|||||||
@@ -69,19 +69,21 @@ func (r *CDREventIMS) SelectPage(querys model.CDREventIMSQuery) map[string]any {
|
|||||||
conditions = append(conditions, "rm_uid = ?")
|
conditions = append(conditions, "rm_uid = ?")
|
||||||
params = append(params, querys.RmUID)
|
params = append(params, querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
conditions = append(conditions, "timestamp >= ?")
|
conditions = append(conditions, "timestamp >= ?")
|
||||||
if len(querys.StartTime) == 13 {
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
querys.StartTime = querys.StartTime[:10]
|
if len(startTime) == 13 {
|
||||||
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.StartTime)
|
params = append(params, startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
conditions = append(conditions, "timestamp <= ?")
|
conditions = append(conditions, "timestamp <= ?")
|
||||||
if len(querys.EndTime) == 13 {
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
querys.EndTime = querys.EndTime[:10]
|
if len(endTime) == 13 {
|
||||||
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.EndTime)
|
params = append(params, endTime)
|
||||||
}
|
}
|
||||||
if querys.CallerParty != "" {
|
if querys.CallerParty != "" {
|
||||||
conditions = append(conditions, "JSON_EXTRACT(cdr_json, '$.callerParty') = ?")
|
conditions = append(conditions, "JSON_EXTRACT(cdr_json, '$.callerParty') = ?")
|
||||||
@@ -204,15 +206,15 @@ func (r CDREventIMS) SelectByPage(querys model.CDREventIMSQuery) ([]model.CDREve
|
|||||||
if querys.RmUID != "" {
|
if querys.RmUID != "" {
|
||||||
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
startTime := querys.StartTime
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
if len(startTime) == 13 {
|
if len(startTime) == 13 {
|
||||||
startTime = startTime[:10]
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
tx = tx.Where("timestamp >= ?", startTime)
|
tx = tx.Where("timestamp >= ?", startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
endTime := querys.EndTime
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
if len(endTime) == 13 {
|
if len(endTime) == 13 {
|
||||||
endTime = endTime[:10]
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
package repository
|
package repository
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
"be.ems/src/framework/datasource"
|
"be.ems/src/framework/datasource"
|
||||||
"be.ems/src/framework/logger"
|
"be.ems/src/framework/logger"
|
||||||
"be.ems/src/modules/network_data/model"
|
"be.ems/src/modules/network_data/model"
|
||||||
@@ -22,15 +24,15 @@ func (r CDREventSGWC) SelectByPage(querys model.CDREventSGWCQuery) ([]model.CDRE
|
|||||||
if querys.RmUID != "" {
|
if querys.RmUID != "" {
|
||||||
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
startTime := querys.StartTime
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
if len(startTime) == 13 {
|
if len(startTime) == 13 {
|
||||||
startTime = startTime[:10]
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
tx = tx.Where("timestamp >= ?", startTime)
|
tx = tx.Where("timestamp >= ?", startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
endTime := querys.EndTime
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
if len(endTime) == 13 {
|
if len(endTime) == 13 {
|
||||||
endTime = endTime[:10]
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import (
|
|||||||
|
|
||||||
dborm "be.ems/lib/core/datasource"
|
dborm "be.ems/lib/core/datasource"
|
||||||
"be.ems/lib/log"
|
"be.ems/lib/log"
|
||||||
|
|
||||||
"be.ems/src/framework/datasource"
|
"be.ems/src/framework/datasource"
|
||||||
"be.ems/src/framework/logger"
|
"be.ems/src/framework/logger"
|
||||||
"be.ems/src/framework/utils/parse"
|
"be.ems/src/framework/utils/parse"
|
||||||
@@ -69,19 +70,21 @@ func (r *CDREventSMF) SelectPage(querys model.CDREventSMFQuery) map[string]any {
|
|||||||
conditions = append(conditions, "rm_uid = ?")
|
conditions = append(conditions, "rm_uid = ?")
|
||||||
params = append(params, querys.RmUID)
|
params = append(params, querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
conditions = append(conditions, "timestamp >= ?")
|
conditions = append(conditions, "timestamp >= ?")
|
||||||
if len(querys.StartTime) == 13 {
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
querys.StartTime = querys.StartTime[:10]
|
if len(startTime) == 13 {
|
||||||
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.StartTime)
|
params = append(params, startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
conditions = append(conditions, "timestamp <= ?")
|
conditions = append(conditions, "timestamp <= ?")
|
||||||
if len(querys.EndTime) == 13 {
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
querys.EndTime = querys.EndTime[:10]
|
if len(endTime) == 13 {
|
||||||
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.EndTime)
|
params = append(params, endTime)
|
||||||
}
|
}
|
||||||
if querys.RecordType != "" {
|
if querys.RecordType != "" {
|
||||||
conditions = append(conditions, "JSON_EXTRACT(cdr_json, '$.recordType') = ?")
|
conditions = append(conditions, "JSON_EXTRACT(cdr_json, '$.recordType') = ?")
|
||||||
@@ -190,15 +193,15 @@ func (r CDREventSMF) SelectByPage(querys model.CDREventSMFQuery) ([]model.CDREve
|
|||||||
if querys.RmUID != "" {
|
if querys.RmUID != "" {
|
||||||
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
startTime := querys.StartTime
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
if len(startTime) == 13 {
|
if len(startTime) == 13 {
|
||||||
startTime = startTime[:10]
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
tx = tx.Where("timestamp >= ?", startTime)
|
tx = tx.Where("timestamp >= ?", startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
endTime := querys.EndTime
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
if len(endTime) == 13 {
|
if len(endTime) == 13 {
|
||||||
endTime = endTime[:10]
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -69,19 +69,21 @@ func (r *CDREventSMSC) SelectPage(querys model.CDREventSMSCQuery) map[string]any
|
|||||||
conditions = append(conditions, "rm_uid = ?")
|
conditions = append(conditions, "rm_uid = ?")
|
||||||
params = append(params, querys.RmUID)
|
params = append(params, querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
conditions = append(conditions, "timestamp >= ?")
|
conditions = append(conditions, "timestamp >= ?")
|
||||||
if len(querys.StartTime) == 13 {
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
querys.StartTime = querys.StartTime[:10]
|
if len(startTime) == 13 {
|
||||||
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.StartTime)
|
params = append(params, startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
conditions = append(conditions, "timestamp <= ?")
|
conditions = append(conditions, "timestamp <= ?")
|
||||||
if len(querys.EndTime) == 13 {
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
querys.EndTime = querys.EndTime[:10]
|
if len(endTime) == 13 {
|
||||||
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.EndTime)
|
params = append(params, endTime)
|
||||||
}
|
}
|
||||||
if querys.CallerParty != "" {
|
if querys.CallerParty != "" {
|
||||||
conditions = append(conditions, "JSON_EXTRACT(cdr_json, '$.callerParty') = ?")
|
conditions = append(conditions, "JSON_EXTRACT(cdr_json, '$.callerParty') = ?")
|
||||||
@@ -205,15 +207,15 @@ func (r CDREventSMSC) SelectByPage(querys model.CDREventSMSCQuery) ([]model.CDRE
|
|||||||
if querys.RmUID != "" {
|
if querys.RmUID != "" {
|
||||||
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
startTime := querys.StartTime
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
if len(startTime) == 13 {
|
if len(startTime) == 13 {
|
||||||
startTime = startTime[:10]
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
tx = tx.Where("timestamp >= ?", startTime)
|
tx = tx.Where("timestamp >= ?", startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
endTime := querys.EndTime
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
if len(endTime) == 13 {
|
if len(endTime) == 13 {
|
||||||
endTime = endTime[:10]
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,19 +70,21 @@ func (r *UEEventAMF) SelectPage(querys model.UEEventAMFQuery) map[string]any {
|
|||||||
conditions = append(conditions, "rm_uid = ?")
|
conditions = append(conditions, "rm_uid = ?")
|
||||||
params = append(params, querys.RmUID)
|
params = append(params, querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
conditions = append(conditions, "timestamp >= ?")
|
conditions = append(conditions, "timestamp >= ?")
|
||||||
if len(querys.StartTime) == 13 {
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
querys.StartTime = querys.StartTime[:10]
|
if len(startTime) == 13 {
|
||||||
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.StartTime)
|
params = append(params, startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
conditions = append(conditions, "timestamp <= ?")
|
conditions = append(conditions, "timestamp <= ?")
|
||||||
if len(querys.EndTime) == 13 {
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
querys.EndTime = querys.EndTime[:10]
|
if len(endTime) == 13 {
|
||||||
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.EndTime)
|
params = append(params, endTime)
|
||||||
}
|
}
|
||||||
if querys.EventType != "" {
|
if querys.EventType != "" {
|
||||||
eventTypes := strings.Split(querys.EventType, ",")
|
eventTypes := strings.Split(querys.EventType, ",")
|
||||||
@@ -191,15 +193,15 @@ func (r UEEventAMF) SelectByPage(querys model.UEEventAMFQuery) ([]model.UEEventA
|
|||||||
if querys.RmUID != "" {
|
if querys.RmUID != "" {
|
||||||
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
startTime := querys.StartTime
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
if len(startTime) == 13 {
|
if len(startTime) == 13 {
|
||||||
startTime = startTime[:10]
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
tx = tx.Where("timestamp >= ?", startTime)
|
tx = tx.Where("timestamp >= ?", startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
endTime := querys.EndTime
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
if len(endTime) == 13 {
|
if len(endTime) == 13 {
|
||||||
endTime = endTime[:10]
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,19 +70,21 @@ func (r *UEEventMME) SelectPage(querys model.UEEventMMEQuery) map[string]any {
|
|||||||
conditions = append(conditions, "rm_uid = ?")
|
conditions = append(conditions, "rm_uid = ?")
|
||||||
params = append(params, querys.RmUID)
|
params = append(params, querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
conditions = append(conditions, "timestamp >= ?")
|
conditions = append(conditions, "timestamp >= ?")
|
||||||
if len(querys.StartTime) == 13 {
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
querys.StartTime = querys.StartTime[:10]
|
if len(startTime) == 13 {
|
||||||
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.StartTime)
|
params = append(params, startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
conditions = append(conditions, "timestamp <= ?")
|
conditions = append(conditions, "timestamp <= ?")
|
||||||
if len(querys.EndTime) == 13 {
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
querys.EndTime = querys.EndTime[:10]
|
if len(endTime) == 13 {
|
||||||
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
params = append(params, querys.EndTime)
|
params = append(params, endTime)
|
||||||
}
|
}
|
||||||
if querys.EventType != "" {
|
if querys.EventType != "" {
|
||||||
eventTypes := strings.Split(querys.EventType, ",")
|
eventTypes := strings.Split(querys.EventType, ",")
|
||||||
@@ -191,15 +193,15 @@ func (r UEEventMME) SelectByPage(querys model.UEEventMMEQuery) ([]model.UEEventM
|
|||||||
if querys.RmUID != "" {
|
if querys.RmUID != "" {
|
||||||
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
tx = tx.Where("rm_uid = ?", querys.RmUID)
|
||||||
}
|
}
|
||||||
if querys.StartTime != "" {
|
if querys.StartTime != 0 {
|
||||||
startTime := querys.StartTime
|
startTime := fmt.Sprintf("%d", querys.StartTime)
|
||||||
if len(startTime) == 13 {
|
if len(startTime) == 13 {
|
||||||
startTime = startTime[:10]
|
startTime = startTime[:10]
|
||||||
}
|
}
|
||||||
tx = tx.Where("timestamp >= ?", startTime)
|
tx = tx.Where("timestamp >= ?", startTime)
|
||||||
}
|
}
|
||||||
if querys.EndTime != "" {
|
if querys.EndTime != 0 {
|
||||||
endTime := querys.EndTime
|
endTime := fmt.Sprintf("%d", querys.EndTime)
|
||||||
if len(endTime) == 13 {
|
if len(endTime) == 13 {
|
||||||
endTime = endTime[:10]
|
endTime = endTime[:10]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -58,8 +58,8 @@ func (r CDREventSGWC) ExportXlsx(rows []model.CDREventSGWC, fileName string) (st
|
|||||||
"H1": "GPRS Downlink",
|
"H1": "GPRS Downlink",
|
||||||
"I1": "Duration",
|
"I1": "Duration",
|
||||||
"J1": "Invocation Time",
|
"J1": "Invocation Time",
|
||||||
"K1": "GGSN Address",
|
"K1": "PGW Address",
|
||||||
"L1": "SGSN Address",
|
"L1": "SGW Address",
|
||||||
"M1": "RAT Type",
|
"M1": "RAT Type",
|
||||||
"N1": "PDPPDN Type",
|
"N1": "PDPPDN Type",
|
||||||
"O1": "PDPPDN Address",
|
"O1": "PDPPDN Address",
|
||||||
@@ -102,17 +102,21 @@ func (r CDREventSGWC) ExportXlsx(rows []model.CDREventSGWC, fileName string) (st
|
|||||||
pGWAddressUsed := ""
|
pGWAddressUsed := ""
|
||||||
if v, ok := cdrJSON["pGWAddressUsed"]; ok && v != nil {
|
if v, ok := cdrJSON["pGWAddressUsed"]; ok && v != nil {
|
||||||
pGWAddressUsed = fmt.Sprint(v)
|
pGWAddressUsed = fmt.Sprint(v)
|
||||||
|
headerCells["K1"] = "PGW Address"
|
||||||
}
|
}
|
||||||
if v, ok := cdrJSON["GGSNAddress"]; ok && v != nil {
|
if v, ok := cdrJSON["GGSNAddress"]; ok && v != nil {
|
||||||
pGWAddressUsed = fmt.Sprint(v)
|
pGWAddressUsed = fmt.Sprint(v)
|
||||||
|
headerCells["K1"] = "GGSN Address"
|
||||||
}
|
}
|
||||||
// sGWAddress
|
// sGWAddress
|
||||||
sGWAddress := ""
|
sGWAddress := ""
|
||||||
if v, ok := cdrJSON["sGWAddress"]; ok && v != nil {
|
if v, ok := cdrJSON["sGWAddress"]; ok && v != nil {
|
||||||
sGWAddress = fmt.Sprint(v)
|
sGWAddress = fmt.Sprint(v)
|
||||||
|
headerCells["L1"] = "SGW Address"
|
||||||
}
|
}
|
||||||
if v, ok := cdrJSON["SGSNAddress"]; ok && v != nil {
|
if v, ok := cdrJSON["SGSNAddress"]; ok && v != nil {
|
||||||
sGWAddress = fmt.Sprint(v)
|
sGWAddress = fmt.Sprint(v)
|
||||||
|
headerCells["L1"] = "SGSN Address"
|
||||||
}
|
}
|
||||||
// recordType
|
// recordType
|
||||||
recordType := ""
|
recordType := ""
|
||||||
|
|||||||
@@ -208,8 +208,10 @@ func (r *NeInfo) UpdateState(id, status string) int64 {
|
|||||||
tx := datasource.DB("").Model(&model.NeInfo{})
|
tx := datasource.DB("").Model(&model.NeInfo{})
|
||||||
// 构建查询条件
|
// 构建查询条件
|
||||||
tx = tx.Where("id = ?", id)
|
tx = tx.Where("id = ?", id)
|
||||||
|
tx.UpdateColumn("status", status)
|
||||||
|
tx.UpdateColumn("update_time", time.Now().UnixMilli())
|
||||||
// 执行更新
|
// 执行更新
|
||||||
if err := tx.UpdateColumn("status", status).Error; err != nil {
|
if err := tx.Error; err != nil {
|
||||||
logger.Errorf("update err => %v", err.Error())
|
logger.Errorf("update err => %v", err.Error())
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Makefile for OMC-OMC-crontask project
|
# Makefile for OMC-OMC-crontask project
|
||||||
|
|
||||||
PROJECT = OMC
|
PROJECT = OMC
|
||||||
VERSION = 2.2502.2
|
VERSION = 2.2502.3
|
||||||
LIBDIR = be.ems/lib
|
LIBDIR = be.ems/lib
|
||||||
BINNAME = sshsvc
|
BINNAME = sshsvc
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user