2022-02-11 07:57:38 +11:00

570 lines
17 KiB
Bash
Executable File

#!/bin/bash
# query_type - (Day | Month | Year) for querying data.
START="2022-02-08 00:00:00"
STOP="2022-02-08 23:59:59"
export TOKEN="$(jq -r .result_data.token login.response)"
export USERID="$(jq -r .result_data.user_id login.response)"
export EMAIL="$(jq -r .result_data.email login.response)"
export APPKEY="$(jq -r .appkey login.post)"
export PSID="$(jq --tab '.result_data.pageList[0].ps_id' getPsList.response)"
export START_TIMESTAMP="$(date -j -f '%Y-%m-%d %H:%M:%S' "${START}" +'%Y%m%d%H%M00')"
export END_TIMESTAMP="$(date -j -f '%Y-%m-%d %H:%M:%S' "${STOP}" +'%Y%m%d%H%M00')"
export START_EPOCH="$(date -j -f '%Y-%m-%d %H:%M:%S' "${START}" +'%s000')"
export END_EPOCH="$(date -j -f '%Y-%m-%d %H:%M:%S' "${STOP}" +'%s000')"
export START_DATE="$(date -j -f '%Y-%m-%d %H:%M:%S' "${START}" +'%Y-%m-%d')"
export END_DATE="$(date -j -f '%Y-%m-%d %H:%M:%S' "${STOP}" +'%Y-%m-%d')"
export START_TIME="$(date -j -f '%Y-%m-%d %H:%M:%S' "${START}" +'%H:%M:%S')"
export END_TIME="$(date -j -f '%Y-%m-%d %H:%M:%S' "${STOP}" +'%H:%M:%S')"
export SERIAL_NO="B2192301528"
# SERIAL_NO="A2192703899" # Inverter sn
export PS_KEY="1129147_11_0_0"
export TASK_ID="$2"
export USER_AGENT="$(cat user_agent.data)"
(cat<<EOF
{
"user_id": "${USERID}",
"valid_flag": "1,3",
"lang": "_en_US",
"token": "${TOKEN}",
"appkey": "${APPKEY}",
"sys_code": "200"
}
EOF
) > default.json
export JSON="$(jq -r . default.json)"
API="$1"
export POSTFILE="${API}.post"
export RESPONSEFILE="${API}.response"
shift
case ${API} in
'login')
URL="foo"
;;
'getPowerDevicePointNames')
URL="/v1/reportService/getPowerDevicePointNames"
# DEVICE_TYPE = 1, 3, 4, 5, 7, 11, 14, 17
export DEVICE_TYPE="$1"
if [ "${DEVICE_TYPE}" == "" ]; then DEVICE_TYPE="1"; fi
RESPONSEFILE="${API}-${DEVICE_TYPE}.response"
JSON="$(jq -r '. += {"device_type": env.DEVICE_TYPE}' default.json)"
;;
# getTemplateList -> queryUserCurveTemplateData -> getPsList -> queryMutiPointDataList
'queryMutiPointDataList')
URL="/v1/commonService/queryMutiPointDataList"
export POINTS="$2"
if [ "${POINTS}" == "" ]; then POINTS="p83033,p83022"; fi
# p13116,p13199,p13174,p13028,p13173,p13147,p13112,p13122,p83002,p83032,p83011,p83549,p83072,p83119,p83097,p83102,p83033,p83022,p83006
export PS_KEY="$3"
if [ "${PS_KEY}" == "" ]; then PS_KEY="1129147_11_0_0,1129147_11_0_0"; fi
# 1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0
export MINUTE_INTERVAL="5"
export START_TIMESTAMP="${1}000000"
export END_TIMESTAMP="${1}235900"
RESPONSEFILE="${API}-${1}.response"
JSON="$(jq -r '. += {"start_time_stamp": env.START_TIMESTAMP, "end_time_stamp": env.END_TIMESTAMP, "ps_key": env.PS_KEY, "points": env.POINTS, "minute_interval": env.MINUTE_INTERVAL}' default.json)"
;;
'getHouseholdStoragePsReport')
URL="/v1/powerStationService/getHouseholdStoragePsReport"
# Day
export DATE_TYPE="1"; export DATE_ID="20220208"
# Month
#export DATE_TYPE="2"; export DATE_ID="202202"
# Year
#export DATE_TYPE="3"; export DATE_ID="2022"
# Total
#export DATE_TYPE="3"; export DATE_ID="2022"
export DATE_TYPE="$1"
export DATE_ID="$2"
if [ "${DATE_TYPE}" == "" ]; then DATE_TYPE="1"; fi
if [ "${DATE_ID}" == "" ]; then DATE_ID="$(date +'%Y%m%d')"; fi
RESPONSEFILE="${API}-${DATE_ID}.response"
JSON="$(jq -r '. += {"ps_id": env.PSID, "date_type": env.DATE_TYPE, "date_id": env.DATE_ID}' default.json)"
;;
################################################################################
'getAPIServiceInfo')
URL="/v1/commonService/getAPIServiceInfo"
;;
'getAccessedPermission')
URL="/v1/commonService/getAccessedPermission"
;;
'getAllDeviceByPsId')
URL="/v1/devService/getAllDeviceByPsId"
;;
'getAllPowerDeviceSetName')
URL="/v1/devService/getAllPowerDeviceSetName"
JSON="$(jq -r '.sys_code = "900"' default.json)"
;;
'getAllPowerRobotViewInfoByPsId')
URL="/v1/devService/getAllPowerRobotViewInfoByPsId"
;;
'getAllPsIdByOrgIds')
URL="/v1/devService/getAllPsIdByOrgIds"
;;
'getPsReport')
URL="/v1/reportService/getPsReport"
;;
'getPsDetail')
URL="/v1/powerStationService/getPsDetail"
;;
'getPsDetailForSinglePage')
URL="/v1/powerStationService/getPsDetailForSinglePage"
;;
'getPsHealthState')
URL="/v1/powerStationService/getPsHealthState"
;;
'getPowerStationData')
URL="/v1/powerStationService/getPowerStationData"
;;
'getPowerStationBasicInfo')
URL="/v1/powerStationService/getPowerStationBasicInfo"
;;
'getPowerStationInfo')
URL="/v1/powerStationService/getPowerStationInfo"
;;
'getPowerStationPR')
URL="/v1/powerStationService/getPowerStationPR"
;;
'getPsListStaticData')
URL="/v1/powerStationService/getPsListStaticData"
;;
'getReportData')
URL="/v1/powerStationService/getReportData"
;;
'getReportExportColumns')
URL="/v1/reportService/getReportExportColumns"
;;
'getBoxData')
URL="/v1/devService/getBoxData"
;;
'getPowerTrendDayData')
URL="/v1/powerStationService/getPowerTrendDayData"
JSON="$(jq -r '. += {"beginTime": env.START_TIME, "endTime": env.END_TIME, "ps_id": env.PSID}' default.json)"
;;
'getPowerTrendMonthData')
URL="/v1/powerStationService/getPowerTrendMonthData"
;;
'getPowerTrendYearData')
URL="/v1/powerStationService/getPowerTrendYearData"
;;
################################################################################
# Invalid data.
'getDataFromHBase')
URL="/v1/commonService/getDataFromHBase"
export TABLE_NAME="inverter"
export PRIMARY_KEY="inverter"
export POINT_IDS="81012"
JSON="$(jq -r '. += {"table": env.TABLE_NAME, "primaryKey": env.PRIMARY_KEY, "pointIds": env.POINT_IDS, "datetime": env.START_TIMESTAMP}' default.json)"
;;
# Invalid args.
'getDataFromHbaseByRowKey')
URL="/v1/commonService/getDataFromHbaseByRowKey"
export TABLE_NAME="inverter"
export ROW_KEY_LIST="inverter"
export FAMILY_NAME="Hellstrom"
export COLUMN="2"
JSON="$(jq -r '. += {"table_name": env.TABLE_NAME, "row_key_list": env.ROW_KEY_LIST, "family_name": env.FAMILY_NAME, "column": env.COLUMN}' default.json)"
;;
# Unknown args.
'getListMiFromHBase')
URL="/v1/commonService/getListMiFromHBase"
export TABLE_NAME="inverter"
export PRIMARY_KEY="inverter"
JSON="$(jq -r '. += {"table": env.TABLE_NAME, "primaryKey": env.PRIMARY_KEY}' default.json)"
;;
# Invalid data
'getMapMiFromHBase')
URL="/v1/commonService/getMapMiFromHBase"
export TABLE_NAME="inverter"
JSON="$(jq -r '. += {"tableName": env.TABLE_NAME, "ps_key": env.PS_KEY, "beginTime": env.START_TIME, "endTime": env.END_TIME}' default.json)"
;;
# Invalid data
'getValFromHBase')
URL="/v1/commonService/getValFromHBase"
export TABLE_NAME="inverter"
export ROWKEY="inverter"
JSON="$(jq -r '. += {"table": env.TABLE_NAME, "rowkey": env.ROWKEY}' default.json)"
;;
# Error
'getStationInfoSql')
URL="/v1/devService/getStationInfoSql"
;;
# Uses ps_key from
'devicePointsDataFromMySql')
URL="/v1/devService/devicePointsDataFromMySql"
JSON="$(jq -r '. += {"ps_key": env.PS_KEY}' default.json)"
;;
# OK
'getPListinfoFromMysql')
URL="/v1/powerStationService/getPListinfoFromMysql"
JSON="$(jq -r '. += {"psIds": env.PSID}' default.json)"
;;
# Error
'getPowerStationTableDataSql')
URL="/v1/devService/getPowerStationTableDataSql"
;;
# Error
'getPowerStationTableDataSqlCount')
URL="/v1/devService/getPowerStationTableDataSqlCount"
;;
# OK
'getPListinfoFromMysql')
URL="/v1/powerStationService/getPListinfoFromMysql"
;;
# Unknown args.
'getTableDataSql')
URL="/v1/devService/getTableDataSql"
;;
# Unknown args.
'getTableDataSqlCount')
URL="/v1/devService/getTableDataSqlCount"
;;
################################################################################
'getPowerDeviceSetTaskDetailList')
URL="/v1/devService/getPowerDeviceSetTaskDetailList"
export QUERY_TYPE="1"
if [ "${TASK_ID}" == "" ]; then TASK_ID="1566045"; fi
#JSON="$(jq -r '. += {"ps_key": env.PS_KEY, "data_point": env.DATA_POINT, "data_type": env.DATA_TYPE, "query_type": env.QUERY_TYPE, "start_time": env.START_TIME, "end_time": env.END_TIME}' default.json)"
JSON="$(jq -r '. += {"query_type": env.QUERY_TYPE, "task_id": env.TASK_ID}' default.json)"
;;
'getPowerDeviceSetTaskList')
URL="/v1/devService/getPowerDeviceSetTaskList"
export SIZE="256"
export CURRENT_PAGE="$1"
if [ "${CURRENT_PAGE}" == "" ]; then CURRENT_PAGE="1"; fi
JSON="$(jq -r '. += {"size": env.SIZE, "curPage": env.CURRENT_PAGE}' default.json)"
;;
'getPsDataSupplementTaskList')
URL="/v1/powerStationService/getPsDataSupplementTaskList"
export SIZE="256"
export CURRENT_PAGE="$1"
if [ "${CURRENT_PAGE}" == "" ]; then CURRENT_PAGE="1"; fi
JSON="$(jq -r '. += {"size": env.SIZE, "curPage": env.CURRENT_PAGE}' default.json)"
;;
'getRemoteUpgradeSubTasksList')
URL="/v1/devService/getRemoteUpgradeSubTasksList"
;;
'getRemoteUpgradeTaskList')
URL="/v1/devService/getRemoteUpgradeTaskList"
;;
'getModuleLogTaskList')
URL="/integrationService/getModuleLogTaskList"
#export SIZE="256"
#export CURRENT_PAGE="$1"
#if [ "${CURRENT_PAGE}" == "" ]; then CURRENT_PAGE="1"; fi
# JSON="$(jq -r '. += {"curPage": env.CURRENT_PAGE}' default.json)"
;;
# Error
'getSerialNum')
URL="/v1/devService/getSerialNum"
;;
# Error
'getPsCurveInfo')
URL="/v1/devService/getPsCurveInfo"
;;
'getLoadCurveList')
URL="/v1/reportService/getLoadCurveList"
JSON="$(jq -r '. += {"ps_id": env.PSID, "monthDate": env.START_DATE}' default.json)"
;;
'getPsKpiForHoursByPsId')
URL="/v1/powerStationService/getPsKpiForHoursByPsId"
export DAY="1"
JSON="$(jq -r '. += {"ps_id": env.PSID, "day": env.DAY}' default.json)"
;;
'getDevicePointMinuteDataList')
URL="/v1/commonService/getDevicePointMinuteDataList"
export POINTS="$1"
if [ "${POINTS}" == "" ]; then POINTS="288"; fi
JSON="$(jq -r '. += {"start_time_stamp": env.START_TIMESTAMP, "end_time_stamp": env.END_TIMESTAMP, "ps_key": env.PS_KEY, "points": env.POINTS}' default.json)"
;;
'getUpTimePoint')
URL="/v1/devService/getUpTimePoint"
;;
'getDevicePoints')
URL="/v1/devService/getDevicePoints"
export POINT_ID="$1"
if [ "${POINT_ID}" == "" ]; then POINT_ID="13003"; fi
RESPONSEFILE="${API}-${POINT_ID}.response"
JSON="$(jq -r '. += {"point_id": env.POINT_ID}' default.json)"
;;
'getApiCallsForAppkeys')
URL="/v1/commonService/getApiCallsForAppkeys"
;;
'getAuthKey')
URL="/v1/powerStationService/getAuthKey"
;;
'getPsAuthKey')
URL="/v1/powerStationService/getPsAuthKey"
JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)"
;;
# OK
'getPowerStatistics')
URL="/v1/powerStationService/getPowerStatistics"
JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)"
;;
# OK
'getPsList')
URL="/v1/powerStationService/getPsList"
;;
# OK
'createAppkeyInfo')
URL="/v1/userService/createAppkeyInfo"
export APP_KEY_NAME="MickMake"
JSON="$(jq -r '. += {"appkey_name": env.APP_KEY_NAME, "user_account": env.USERID}' default.json)"
;;
# OK
'exportPlantReportPDF')
URL="/v1/powerStationService/exportPlantReportPDF"
JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)"
;;
# OK
'findPsType')
URL="/v1/powerStationService/findPsType"
JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)"
;;
# Error
'findInfoByuuid')
URL="/v1/devService/findInfoByuuid"
export UUID="$1"
if [ "${UUID}" == "" ]; then UUID="844775"; fi
JSON="$(jq -r '. += {"uuid": env.UUID}' default.json)"
;;
# OK
'findCurrentTask')
URL="/v1/faultService/findCurrentTask"
if [ "${TASK_ID}" == "" ]; then TASK_ID="1566045"; fi
JSON="$(jq -r '. += {"taskId": env.TASK_ID}' default.json)"
;;
'executeTask')
URL="/v1/faultService/executeTask"
;;
# OK
'queryBatchCreatePsTaskList')
URL="/v1/powerStationService/queryBatchCreatePsTaskList"
;;
# OK
'queryAllPsIdAndName')
URL="/v1/powerStationService/queryAllPsIdAndName"
;;
# Error
'queryCtrlTaskById')
URL="/v1/devService/queryCtrlTaskById"
;;
# UUID and TASK_ID from getPowerDeviceSetTaskList OR getPowerDeviceSetTaskDetailList
'queryParamSettingTask')
URL="/v1/devService/queryParamSettingTask"
export QUERY_TYPE="1"
export UUID="844775"
if [ "${TASK_ID}" == "" ]; then TASK_ID="1566045"; fi
JSON="$(jq -r '. += {"query_type": env.QUERY_TYPE, "task_id": env.TASK_ID, "uuid": env.UUID}' default.json)"
;;
# Requires task_id from getModuleLogTaskList
'exportParamSettingValPDF')
if [ "${TASK_ID}" == "" ]; then TASK_ID="1566045"; fi
URL="/v1/devService/exportParamSettingValPDF"
JSON="$(jq -r '. += {"task_id": env.TASK_ID}' default.json)"
;;
# OK
'energyTrend')
URL="/v1/powerStationService/energyTrend"
;;
# OK
'communicationModuleDetail')
URL="/v1/devService/communicationModuleDetail"
JSON="$(jq -r '. += {"sn": env.SERIAL_NO}' default.json)"
;;
# Error
'checkUnitStatus')
URL="/v1/devService/checkUnitStatus"
;;
'saveEnvironmentCurve')
URL="/v1/devService/saveEnvironmentCurve"
;;
################################################################################
'updateTemplate')
URL="/v1/devService/updateDataCurveTemplate"
;;
'getTemplateList')
URL="/v1/devService/getTemplateList"
;;
'getTemplateByInfoType')
URL="/v1/messageService/getTemplateByInfoType"
export INFO_TYPE="1" # Power Station Income Monthly Report-Mail Template
export INFO_TYPE="2" # Power Plant Revenue Annual Report-Mail Template
export INFO_TYPE="3" # Power station revenue report - email template
export INFO_TYPE="4" # Household Energy Storage Monthly Report-Mail Template
export INFO_TYPE="5" # Household Energy Storage Annual Report-Mail Template
export INFO_TYPE="6" # Household energy storage general report-mail template
JSON="$(jq -r '. += {"info_type": env.INFO_TYPE}' default.json)"
;;
# OK - template_id from getTemplateList
'queryUserCurveTemplateData')
URL="/v1/devService/queryUserCurveTemplateData"
export TEMPLATE_ID="7981"
# JSON="$(jq -r '. += {"template_id": env.TEMPLATE_ID, "start_time": env.START_TIMESTAMP, "end_time": env.END_TIMESTAMP}' default.json)"
export SELECT_DATE="2022-02-08 00:00~2022-02-08 23:59"
export START_DATE="2022-02-08"
export START_DATE="2022-02-08 00:00"
export START_TIME="00:00"
export START_TIME="20220208000000"
export STOP_DATE="2022-02-08"
export STOP_DATE="2022-02-08 23:59"
export STOP_TIME="23:59"
export STOP_TIME="20220208235959"
JSON="$(jq -r '. += {"template_id": env.TEMPLATE_ID, "view_select_date": env.SELECT_DATE}' default.json)"
JSON="$(echo "${JSON}" | jq -r '. += {"start_time_stamp": env.STARTT, "start_time": env.START_TIME, "begin_time": env.START_TIME, "startTime": env.START_TIME}')"
JSON="$(echo "${JSON}" | jq -r '. += {"end_time_stamp": env.STOPT, "end_time": env.STOP_TIME, "endTime": env.STOP_TIME, "endtime": env.STOP_TIME}')"
JSON="$(echo "${JSON}" | jq -r '. += {"start_date": env.START_DATE, "startDate": env.START_DATE, "startdate": env.START_DATE}')"
JSON="$(echo "${JSON}" | jq -r '. += {"end_date": env.STOP_DATE, "endDate": env.STOP_DATE, "enddate": env.STOP_DATE, "date_type": "2"}')"
;;
################################################################################
# Possible hourly data.
'psHourPointsValue')
URL="/v1/powerStationService/psHourPointsValue"
JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)"
;;
'powerDevicePointList')
URL="/v1/reportService/powerDevicePointList"
;;
'queryDevicePointMinuteDataList')
URL="/v1/commonService/queryDevicePointMinuteDataList"
export POINTS="$1"
if [ "${POINTS}" == "" ]; then POINTS="13150"; fi
JSON="$(jq -r '. += {"start_time_stamp": env.START_TIMESTAMP, "end_time_stamp": env.END_TIMESTAMP, "ps_key": env.PS_KEY, "points": env.POINTS}' default.json)"
;;
'queryDevicePointsDayMonthYearDataList')
URL="/v1/commonService/queryDevicePointsDayMonthYearDataList"
export DATA_POINT="81012"
export DATA_TYPE="17"
export QUERY_TYPE="1"
JSON="$(jq -r '. += {"ps_key": env.PS_KEY, "data_point": env.DATA_POINT, "data_type": env.DATA_TYPE, "query_type": env.QUERY_TYPE, "start_time": env.START_TIME, "end_time": env.END_TIME}' default.json)"
;;
'queryUnitList')
URL="/v1/userService/queryUnitList"
;;
'showPSView')
URL="/v1/powerStationService/showPSView"
JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)"
;;
*)
echo "Unknown API endpoint..."
grep "')$" get.sh
exit
;;
esac
echo "${JSON}" | jq -r > ${POSTFILE}
curl -X POST -H 'Content-Type: application/json' -A "${USER_AGENT}" --stderr error.log \
--data-binary "@${POSTFILE}" \
https://augateway.isolarcloud.com${URL} | tee ${RESPONSEFILE}