forked from CITKParus/P8-ExchangeService
Добавлен параметр "nIncExecCnt - инкремент счетчика исполнений" в процедуру установки статуса сообщения очереди обмена
This commit is contained in:
parent
12b5e524c1
commit
92b5153dfd
@ -9,8 +9,8 @@
|
|||||||
|
|
||||||
const _ = require("lodash"); //Работа с массивами и объектами
|
const _ = require("lodash"); //Работа с массивами и объектами
|
||||||
const EventEmitter = require("events"); //Обработчик пользовательских событий
|
const EventEmitter = require("events"); //Обработчик пользовательских событий
|
||||||
const { ServerError } = require("../core/server_errors"); //Типовая ошибка
|
const { ServerError } = require("./server_errors"); //Типовая ошибка
|
||||||
const { makeModuleFullPath, validateObject } = require("../core/utils"); //Вспомогательные функции
|
const { makeModuleFullPath, validateObject } = require("./utils"); //Вспомогательные функции
|
||||||
const prmsDBConnectorSchema = require("../models/prms_db_connector"); //Схемы валидации параметров функций модуля
|
const prmsDBConnectorSchema = require("../models/prms_db_connector"); //Схемы валидации параметров функций модуля
|
||||||
const intfDBConnectorModuleSchema = require("../models/intf_db_connector_module"); //Схема валидации интерфейса модуля взаимодействия с БД
|
const intfDBConnectorModuleSchema = require("../models/intf_db_connector_module"); //Схема валидации интерфейса модуля взаимодействия с БД
|
||||||
const objServicesSchema = require("../models/obj_services"); //Схема валидации списка сервисов
|
const objServicesSchema = require("../models/obj_services"); //Схема валидации списка сервисов
|
||||||
@ -21,7 +21,7 @@ const {
|
|||||||
SERR_MODULES_BAD_INTERFACE,
|
SERR_MODULES_BAD_INTERFACE,
|
||||||
SERR_OBJECT_BAD_INTERFACE,
|
SERR_OBJECT_BAD_INTERFACE,
|
||||||
SERR_MODULES_NO_MODULE_SPECIFIED
|
SERR_MODULES_NO_MODULE_SPECIFIED
|
||||||
} = require("../core/constants"); //Глобальные константы
|
} = require("./constants"); //Глобальные константы
|
||||||
|
|
||||||
//----------
|
//----------
|
||||||
// Константы
|
// Константы
|
||||||
|
@ -22,10 +22,22 @@ const {
|
|||||||
NQUEUE_EXEC_STATE_ERR
|
NQUEUE_EXEC_STATE_ERR
|
||||||
} = require("./obj_queue"); //Схемы валидации сообщения очереди обмена
|
} = require("./obj_queue"); //Схемы валидации сообщения очереди обмена
|
||||||
|
|
||||||
|
//----------
|
||||||
|
// Константы
|
||||||
|
//----------
|
||||||
|
|
||||||
|
//Признак инкремента количества попыток исполнения позиции очереди
|
||||||
|
NINC_EXEC_CNT_NO = 0; //Не инкрементировать
|
||||||
|
NINC_EXEC_CNT_YES = 1; //Инкрементировать
|
||||||
|
|
||||||
//------------------
|
//------------------
|
||||||
// Интерфейс модуля
|
// Интерфейс модуля
|
||||||
//------------------
|
//------------------
|
||||||
|
|
||||||
|
//Константы
|
||||||
|
exports.NINC_EXEC_CNT_NO = NINC_EXEC_CNT_NO;
|
||||||
|
exports.NINC_EXEC_CNT_YES = NINC_EXEC_CNT_YES;
|
||||||
|
|
||||||
//Схема валидации параметров конструктора
|
//Схема валидации параметров конструктора
|
||||||
exports.DBConnector = new Schema({
|
exports.DBConnector = new Schema({
|
||||||
//Параметры подключения к БД
|
//Параметры подключения к БД
|
||||||
@ -148,5 +160,17 @@ exports.setQueueState = new Schema({
|
|||||||
type: "Сообщение обработчика (sExecMsg) имеет некорректный тип данных (ожидалось - String)",
|
type: "Сообщение обработчика (sExecMsg) имеет некорректный тип данных (ожидалось - String)",
|
||||||
required: "Не указано сообщени обработчика (sExecMsg)"
|
required: "Не указано сообщени обработчика (sExecMsg)"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
//Флаг инкремента количества исполнений
|
||||||
|
nIncExecCnt: {
|
||||||
|
type: Number,
|
||||||
|
enum: [NINC_EXEC_CNT_NO, NINC_EXEC_CNT_YES],
|
||||||
|
required: false,
|
||||||
|
message: {
|
||||||
|
type:
|
||||||
|
"Флаг инкремента количества исполнений (nIncExecCnt) имеет некорректный тип данных (ожидалось - Number)",
|
||||||
|
enum: "Значение флага инкремента количества исполнений (nIncExecCnt) не поддерживается",
|
||||||
|
required: "Не указан флаг икремента количества исполнений (nIncExecCnt)"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -180,11 +180,12 @@ const putQueueIncoming = async prms => {};
|
|||||||
const setQueueState = async prms => {
|
const setQueueState = async prms => {
|
||||||
try {
|
try {
|
||||||
let res = await prms.connection.execute(
|
let res = await prms.connection.execute(
|
||||||
"BEGIN PKG_EXS.QUEUE_EXEC_STATE_SET(NEXSQUEUE => :NEXSQUEUE, NEXEC_STATE => :NEXEC_STATE, SEXEC_MSG => :SEXEC_MSG, RCQUEUE => :RCQUEUE); END;",
|
"BEGIN PKG_EXS.QUEUE_EXEC_STATE_SET(NEXSQUEUE => :NEXSQUEUE, NEXEC_STATE => :NEXEC_STATE, SEXEC_MSG => :SEXEC_MSG, NINC_EXEC_CNT => :NINC_EXEC_CNT, RCQUEUE => :RCQUEUE); END;",
|
||||||
{
|
{
|
||||||
NEXSQUEUE: prms.nQueueId,
|
NEXSQUEUE: prms.nQueueId,
|
||||||
NEXEC_STATE: prms.nExecState,
|
NEXEC_STATE: prms.nExecState,
|
||||||
SEXEC_MSG: prms.sExecMsg,
|
SEXEC_MSG: prms.sExecMsg,
|
||||||
|
NINC_EXEC_CNT: prms.nIncExecCnt,
|
||||||
RCQUEUE: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }
|
RCQUEUE: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user