Добавлена возможность менять статусы уведомлений
parent
f71cdc7830
commit
d81d5d1509
43
32_7.sql
43
32_7.sql
|
@ -52,6 +52,11 @@ declare variable CUR_APP_NOTE_WCH type of D_BIGINT;
|
||||||
|
|
||||||
declare variable F_OPER type of D_SMALLINT;
|
declare variable F_OPER type of D_SMALLINT;
|
||||||
|
|
||||||
|
-- Execute blocks
|
||||||
|
declare variable EXEC_BLOCK_TEXT_32_NEG_1 type of column EXEC_BLOCKS.EXEC_BLOCKS_TEXT;
|
||||||
|
declare variable EXEC_BLOCK_32_NEG_1_OUT_KEY type of D_BIGINT;
|
||||||
|
declare variable EXEC_BLOCK_32_NEG_1_OUT_VAL type of D_STR1024;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
output = 0;/* 0- Не выполнено, -1 Ошибка*/
|
output = 0;/* 0- Не выполнено, -1 Ошибка*/
|
||||||
-- Находим событие с переданным идентификатором
|
-- Находим событие с переданным идентификатором
|
||||||
|
@ -73,9 +78,27 @@ begin
|
||||||
:F_APP_EVENT_WCR, :F_APP_EVENT_CH, :F_APP_EVENT_WCH, :F_APP_EVENT_SEANS, :F_APP_EVENT_OWNERMST,
|
:F_APP_EVENT_WCR, :F_APP_EVENT_CH, :F_APP_EVENT_WCH, :F_APP_EVENT_SEANS, :F_APP_EVENT_OWNERMST,
|
||||||
:F_APP_EVENT_FIMP, :F_APP_EVENT_MPOST;
|
:F_APP_EVENT_FIMP, :F_APP_EVENT_MPOST;
|
||||||
|
|
||||||
|
-- Получаем текст EXEC 32 -1
|
||||||
|
select E.EXEC_BLOCKS_TEXT
|
||||||
|
from EXEC_BLOCKS E
|
||||||
|
where E.EXEC_BLOCKS_VID = 32 and
|
||||||
|
E.EXEC_BLOCKS_TIP = -1 and
|
||||||
|
E.EXEC_BLOCKS_DEL = 0 rows 1 to 1
|
||||||
|
into :EXEC_BLOCK_TEXT_32_NEG_1;
|
||||||
|
if (:EXEC_BLOCK_TEXT_32_NEG_1 is null) then
|
||||||
|
begin
|
||||||
|
|
||||||
|
output = -1;/*Не найден EXEC BLOCK 32 -1 */
|
||||||
|
suspend;
|
||||||
|
exit;
|
||||||
|
end
|
||||||
|
|
||||||
if (:F_APP_EVENT_VID = 8795 /*Создание уведомления*/ ) then
|
if (:F_APP_EVENT_VID = 8795 /*Создание уведомления*/ ) then
|
||||||
F_OPER = 1;
|
F_OPER = 1;
|
||||||
else
|
else
|
||||||
|
if (:F_APP_EVENT_VID = 8797) /*Изменение уведомения*/ then
|
||||||
|
F_OPER = 2;
|
||||||
|
else
|
||||||
begin
|
begin
|
||||||
output = -2;/*Неизвестная операция*/
|
output = -2;/*Неизвестная операция*/
|
||||||
suspend;
|
suspend;
|
||||||
|
@ -123,7 +146,27 @@ begin
|
||||||
NEW_APP_NOTE_CH = F_APP_EVENT_CH;
|
NEW_APP_NOTE_CH = F_APP_EVENT_CH;
|
||||||
NEW_APP_NOTE_WCH = F_APP_EVENT_WCH;
|
NEW_APP_NOTE_WCH = F_APP_EVENT_WCH;
|
||||||
end
|
end
|
||||||
|
else
|
||||||
|
if (:F_APP_EVENT_VID = 8797) then
|
||||||
|
begin
|
||||||
|
/*Парсим параметры JSON-a APP_EVENT_DATA*/
|
||||||
|
for execute statement(:EXEC_BLOCK_TEXT_32_NEG_1)(IN_PARAM_JSON := :F_APP_EVENT_DATA)
|
||||||
|
into :EXEC_BLOCK_32_NEG_1_OUT_VAL, :EXEC_BLOCK_32_NEG_1_OUT_KEY
|
||||||
|
do
|
||||||
|
begin
|
||||||
|
if (:exec_block_32_neg_1_out_key = 8794) then
|
||||||
|
begin
|
||||||
|
NEW_APP_NOTE_STATUS = cast(:exec_block_32_neg_1_out_val as d_integer);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
IF (new_id_app_note is null) then
|
||||||
|
begin
|
||||||
|
output = -5; /*Не было создано событие о создании Уведомсления (8795) */
|
||||||
|
suspend;
|
||||||
|
exit;
|
||||||
end
|
end
|
||||||
|
|
||||||
update or insert into APP_NOTE (ID_APP_NOTE, APP_NOTE_ID_SOTR, APP_NOTE_ID_APP_TASK, APP_NOTE_STATUS, APP_NOTE_TIP,
|
update or insert into APP_NOTE (ID_APP_NOTE, APP_NOTE_ID_SOTR, APP_NOTE_ID_APP_TASK, APP_NOTE_STATUS, APP_NOTE_TIP,
|
||||||
|
|
Loading…
Reference in New Issue