From 0db3aa3ac9bd346973440e299bf4315c5d52d1a3 Mon Sep 17 00:00:00 2001 From: Mikhail Chechnev Date: Thu, 27 Dec 2018 14:18:36 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9D=D0=BE=D0=B2=D1=8B=D0=B5=20=D0=BF=D0=B0?= =?UTF-8?q?=D1=80=D0=B0=D0=BC=D0=B5=D1=82=D1=80=D1=8B=20=D0=BE=D1=87=D0=B5?= =?UTF-8?q?=D1=80=D0=B5=D0=B4=D0=B8=20-=20=D1=81=D0=B2=D1=8F=D0=B7=D0=B0?= =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D0=B5=20=D0=BE=D1=80=D0=B3=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D0=B7=D0=B0=D1=86=D0=B8=D1=8F,=20=D0=B4=D0=BE=D0=BA=D1=83?= =?UTF-8?q?=D0=BC=D0=B5=D0=BD=D1=82=20=D0=B8=20=D1=80=D0=B0=D0=B7=D0=B4?= =?UTF-8?q?=D0=B5=D0=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/PKG_EXS.pck | 118 ++++++++++++++++++++++++------------ models/prms_db_connector.js | 29 +++++++++ modules/parus_oracle_db.js | 5 +- 3 files changed, 113 insertions(+), 39 deletions(-) diff --git a/db/PKG_EXS.pck b/db/PKG_EXS.pck index 1358739..12f1bc3 100644 --- a/db/PKG_EXS.pck +++ b/db/PKG_EXS.pck @@ -378,39 +378,51 @@ create or replace package PKG_EXS as /* */ procedure QUEUE_PUT ( - NEXSSERVICEFN in number, -- . - BMSG in blob, -- - NEXSQUEUE in number := null, -- . - NNEW_EXSQUEUE out number -- + NEXSSERVICEFN in number, -- . + BMSG in blob, -- + NEXSQUEUE in number := null, -- . + NLNK_COMPANY in number := null, -- . + NLNK_DOCUMENT in number := null, -- . + SLNK_UNITCODE in varchar2 := null, -- + NNEW_EXSQUEUE out number -- ); /* ( ) */ procedure QUEUE_PUT ( - NEXSSERVICEFN in number, -- . - BMSG in blob, -- - NEXSQUEUE in number := null, -- . - RCQUEUE out sys_refcursor -- + NEXSSERVICEFN in number, -- . + BMSG in blob, -- + NEXSQUEUE in number := null, -- . + NLNK_COMPANY in number := null, -- . + NLNK_DOCUMENT in number := null, -- . + SLNK_UNITCODE in varchar2 := null, -- + RCQUEUE out sys_refcursor -- ); /* ( ) */ procedure QUEUE_PUT ( - SEXSSERVICE in varchar2, -- - SEXSSERVICEFN in varchar2, -- - BMSG in blob, -- - NEXSQUEUE in number := null, -- . - NNEW_EXSQUEUE out number -- + SEXSSERVICE in varchar2, -- + SEXSSERVICEFN in varchar2, -- + BMSG in blob, -- + NEXSQUEUE in number := null, -- . + NLNK_COMPANY in number := null, -- . + NLNK_DOCUMENT in number := null, -- . + SLNK_UNITCODE in varchar2 := null, -- + NNEW_EXSQUEUE out number -- ); /* ( , ) */ procedure QUEUE_PUT ( - SEXSSERVICE in varchar2, -- - SEXSSERVICEFN in varchar2, -- - BMSG in blob, -- - NEXSQUEUE in number := null, -- . - RCQUEUE out sys_refcursor -- + SEXSSERVICE in varchar2, -- + SEXSSERVICEFN in varchar2, -- + BMSG in blob, -- + NEXSQUEUE in number := null, -- . + NLNK_COMPANY in number := null, -- . + NLNK_DOCUMENT in number := null, -- . + SLNK_UNITCODE in varchar2 := null, -- + RCQUEUE out sys_refcursor -- ); /* */ @@ -1573,10 +1585,13 @@ create or replace package body PKG_EXS as /* */ procedure QUEUE_PUT ( - NEXSSERVICEFN in number, -- . - BMSG in blob, -- - NEXSQUEUE in number := null, -- . - NNEW_EXSQUEUE out number -- + NEXSSERVICEFN in number, -- . + BMSG in blob, -- + NEXSQUEUE in number := null, -- . + NLNK_COMPANY in number := null, -- . + NLNK_DOCUMENT in number := null, -- . + SLNK_UNITCODE in varchar2 := null, -- + NNEW_EXSQUEUE out number -- ) is begin @@ -1595,22 +1610,34 @@ create or replace package body PKG_EXS as BMSG => BMSG, BRESP => null, NEXSQUEUE => NEXSQUEUE, + NLNK_COMPANY => NLNK_COMPANY, + NLNK_DOCUMENT => NLNK_DOCUMENT, + SLNK_UNITCODE => SLNK_UNITCODE, NRN => NNEW_EXSQUEUE); end QUEUE_PUT; /* ( ) */ procedure QUEUE_PUT ( - NEXSSERVICEFN in number, -- . - BMSG in blob, -- - NEXSQUEUE in number := null, -- . - RCQUEUE out sys_refcursor -- + NEXSSERVICEFN in number, -- . + BMSG in blob, -- + NEXSQUEUE in number := null, -- . + NLNK_COMPANY in number := null, -- . + NLNK_DOCUMENT in number := null, -- . + SLNK_UNITCODE in varchar2 := null, -- + RCQUEUE out sys_refcursor -- ) is NRN EXSQUEUE.RN%type; -- . begin /* */ - QUEUE_PUT(NEXSSERVICEFN => NEXSSERVICEFN, BMSG => BMSG, NEXSQUEUE => NEXSQUEUE, NNEW_EXSQUEUE => NRN); + QUEUE_PUT(NEXSSERVICEFN => NEXSSERVICEFN, + BMSG => BMSG, + NEXSQUEUE => NEXSQUEUE, + NLNK_COMPANY => NLNK_COMPANY, + NLNK_DOCUMENT => NLNK_DOCUMENT, + SLNK_UNITCODE => SLNK_UNITCODE, + NNEW_EXSQUEUE => NRN); /* */ QUEUE_GET(NFLAG_SMART => 0, NEXSQUEUE => NRN, RCQUEUE => RCQUEUE); end QUEUE_PUT; @@ -1618,11 +1645,14 @@ create or replace package body PKG_EXS as /* ( ) */ procedure QUEUE_PUT ( - SEXSSERVICE in varchar2, -- - SEXSSERVICEFN in varchar2, -- - BMSG in blob, -- - NEXSQUEUE in number := null, -- . - NNEW_EXSQUEUE out number -- + SEXSSERVICE in varchar2, -- + SEXSSERVICEFN in varchar2, -- + BMSG in blob, -- + NEXSQUEUE in number := null, -- . + NLNK_COMPANY in number := null, -- . + NLNK_DOCUMENT in number := null, -- . + SLNK_UNITCODE in varchar2 := null, -- + NNEW_EXSQUEUE out number -- ) is NEXSSERVICEFN PKG_STD.TREF; -- . @@ -1639,17 +1669,26 @@ create or replace package body PKG_EXS as SEXSSERVICE => SEXSSERVICE, SEXSSERVICEFN => SEXSSERVICEFN); /* */ - QUEUE_PUT(NEXSSERVICEFN => NEXSSERVICEFN, BMSG => BMSG, NEXSQUEUE => NEXSQUEUE, NNEW_EXSQUEUE => NNEW_EXSQUEUE); + QUEUE_PUT(NEXSSERVICEFN => NEXSSERVICEFN, + BMSG => BMSG, + NEXSQUEUE => NEXSQUEUE, + NLNK_COMPANY => NLNK_COMPANY, + NLNK_DOCUMENT => NLNK_DOCUMENT, + SLNK_UNITCODE => SLNK_UNITCODE, + NNEW_EXSQUEUE => NNEW_EXSQUEUE); end QUEUE_PUT; /* ( , ) */ procedure QUEUE_PUT ( - SEXSSERVICE in varchar2, -- - SEXSSERVICEFN in varchar2, -- - BMSG in blob, -- - NEXSQUEUE in number := null, -- . - RCQUEUE out sys_refcursor -- + SEXSSERVICE in varchar2, -- + SEXSSERVICEFN in varchar2, -- + BMSG in blob, -- + NEXSQUEUE in number := null, -- . + NLNK_COMPANY in number := null, -- . + NLNK_DOCUMENT in number := null, -- . + SLNK_UNITCODE in varchar2 := null, -- + RCQUEUE out sys_refcursor -- ) is NRN EXSQUEUE.RN%type; -- . @@ -1659,6 +1698,9 @@ create or replace package body PKG_EXS as SEXSSERVICEFN => SEXSSERVICEFN, BMSG => BMSG, NEXSQUEUE => NEXSQUEUE, + NLNK_COMPANY => NLNK_COMPANY, + NLNK_DOCUMENT => NLNK_DOCUMENT, + SLNK_UNITCODE => SLNK_UNITCODE, NNEW_EXSQUEUE => NRN); /* */ QUEUE_GET(NFLAG_SMART => 0, NEXSQUEUE => NRN, RCQUEUE => RCQUEUE); diff --git a/models/prms_db_connector.js b/models/prms_db_connector.js index be697f0..5a40a02 100644 --- a/models/prms_db_connector.js +++ b/models/prms_db_connector.js @@ -178,6 +178,35 @@ exports.putQueue = new Schema({ `Идентификатор связанной позиции очереди обмена (${path}) имеет некорректный тип данных (ожидалось - Number)`, required: path => `Не указан идентификатор связанной позиции очереди обмена (${path})` } + }, + //Идентификатор связанной организации + nLnkCompanyId: { + type: Number, + required: false, + message: { + type: path => + `Идентификатор связанной организации (${path}) имеет некорректный тип данных (ожидалось - Number)`, + required: path => `Не указан идентификатор связанной организации (${path})` + } + }, + //Идентификатор связанного документа + nLnkDocumentId: { + type: Number, + required: false, + message: { + type: path => + `Идентификатор связанного документа (${path}) имеет некорректный тип данных (ожидалось - Number)`, + required: path => `Не указан идентификатор связанного документа (${path})` + } + }, + //Код связанного раздела + sLnkUnitcode: { + type: String, + required: false, + message: { + type: path => `Код связанного раздела (${path}) имеет некорректный тип данных (ожидалось - String)`, + required: path => `Не указан код связанного раздела (${path})` + } } }); diff --git a/modules/parus_oracle_db.js b/modules/parus_oracle_db.js index 06e0b55..aa3003a 100644 --- a/modules/parus_oracle_db.js +++ b/modules/parus_oracle_db.js @@ -129,11 +129,14 @@ const getQueue = async prms => { const putQueue = async prms => { try { let res = await prms.connection.execute( - "BEGIN PKG_EXS.QUEUE_PUT(NEXSSERVICEFN => :NEXSSERVICEFN, BMSG => :BMSG, NEXSQUEUE => :NEXSQUEUE, RCQUEUE => :RCQUEUE); END;", + "BEGIN PKG_EXS.QUEUE_PUT(NEXSSERVICEFN => :NEXSSERVICEFN, BMSG => :BMSG, NEXSQUEUE => :NEXSQUEUE, NLNK_COMPANY => :NLNK_COMPANY, NLNK_DOCUMENT => :NLNK_DOCUMENT, SLNK_UNITCODE => :SLNK_UNITCODE, RCQUEUE => :RCQUEUE); END;", { NEXSSERVICEFN: prms.nServiceFnId, BMSG: prms.blMsg, NEXSQUEUE: prms.nQueueId, + NLNK_COMPANY: prms.nLnkCompanyId, + NLNK_DOCUMENT: prms.nLnkDocumentId, + SLNK_UNITCODE: prms.sLnkUnitcode, RCQUEUE: { type: oracledb.CURSOR, dir: oracledb.BIND_OUT } }, { outFormat: oracledb.OBJECT, autoCommit: true }