drop table systur.smv_servicos_log;
drop table systur.smv_servicos;
drop sequence systur.smv_servicos_log_sq01;
create sequence systur.smv_servicos_log_sq01 minvalue 1 maxvalue 9999999999 start with 1 increment by 1 nocache;
create table smv_servicos
( cd_servico number (3)
, id_ambiente varchar2 (1) not null
, ds_servico varchar2 (400) not null
, ds_url varchar2 (800) not null
, ds_username varchar2 (50)
, ds_password varchar2 (50)
, dt_atualizacao date not null
, nm_usuario varchar2 (30) not null
, cd_pessoa_mnt number (8) not null
, ip_usuario varchar2 (50) ) tablespace syst_dados_05;
alter table systur.smv_servicos add constraint smv_servicos_pk primary key (cd_servico, id_ambiente) using index tablespace syst_index_05;
comment on table systur.smv_servicos is 'Tabela com os serviços do Santander Mais Vezes.';
comment on column systur.smv_servicos.cd_servico is 'Código do serviço';
comment on column systur.smv_servicos.id_ambiente is 'Id do Ambiente';
comment on column systur.smv_servicos.ds_servico is 'Nome do serviço';
comment on column systur.smv_servicos.ds_url is 'URL do serviço';
comment on column systur.smv_servicos.ds_username is 'Usuário informado pelo Santander.';
comment on column systur.smv_servicos.ds_password is 'Senha informada pelo Santander.';
comment on column systur.smv_servicos.dt_atualizacao is 'Data de atualização';
comment on column systur.smv_servicos.nm_usuario is 'Nome do usuário que fez a alteração';
comment on column systur.smv_servicos.cd_pessoa_mnt is 'Código pessoa do usuário que fez a alteração';
comment on column systur.smv_servicos.ip_usuario is 'IP do usuário que fez a alteração';
create table smv_servicos_log
( cd_execucao number (10) not null
, cd_servico number (3)
, cd_proposta number (10)
, cd_proposta_santander number (10)
, cd_proposta_externa number (10)
, id_ambiente varchar2 (1) not null
, ds_envio clob not null
, ds_retorno clob not null
, ds_erro varchar2(4000)
, ds_arquivo blob
, dt_atualizacao date not null
, nm_usuario varchar2 (30) not null
, cd_pessoa_mnt number (8) not null
, ip_usuario varchar2 (50) ) tablespace syst_dados_05;
alter table systur.smv_servicos_log add constraint smv_servicos_log_pk primary key (cd_execucao,cd_servico) using index tablespace syst_index_05;
alter table systur.smv_servicos_log add constraint smv_servicos_log_fk01 foreign key (cd_proposta) references systur.ven_transacao_proposta (cd_proposta);
alter table systur.smv_servicos_log add constraint smv_servicos_log_fk02 foreign key (cd_servico,id_ambiente) references systur.smv_servicos (cd_servico,id_ambiente);
comment on table systur.smv_servicos_log is 'Tabela com os logs dos serviços do Santander Mais Vezes.';
comment on column systur.smv_servicos_log.cd_execucao is 'Número gerado pela sequence smv_servicos_log_sq01';
comment on column systur.smv_servicos_log.cd_proposta is 'Código da Proposta';
comment on column systur.smv_servicos_log.cd_proposta_santander is 'Código da Proposta gerado no Santander.';
comment on column systur.smv_servicos_log.cd_proposta_santander is 'Código da Proposta externa gerado no Santander.';
comment on column systur.smv_servicos_log.cd_servico is 'Código do Serviço';
comment on column systur.smv_servicos_log.ds_envio is 'Json de envio';
comment on column systur.smv_servicos_log.ds_retorno is 'Json de retorno';
comment on column systur.smv_servicos_log.ds_erro is 'Descrição do erro';
comment on column systur.smv_servicos_log.ds_arquivo is 'Boleto gerado pelo Santander.';
comment on column systur.smv_servicos_log.dt_atualizacao is 'Data de atualização';
comment on column systur.smv_servicos_log.nm_usuario is 'Nome do usuário que fez a alteração';
comment on column systur.smv_servicos_log.cd_pessoa_mnt is 'Código pessoa do usuário que fez a alteração';
comment on column systur.smv_servicos_log.ip_usuario is 'IP do usuário que fez a alteração';
insert into systur.smv_servicos values (1,'H','Token','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/uaa/hml/auth/token',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (2,'H','Integration Code','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/api/hml/tab/code/?',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (3,'H','Objeto Financiado','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/api/hml/domains/store/?/financed-objects/',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (4,'H','Subsegmento','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/api/hml/tab/subsegment/?',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (5,'H','Identificação/Pré-Análise','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/api/hml/identification/assets/',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (6,'H','Simulação','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/api/hml/simulation/assets/',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (7,'H','Captura','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/api/hml/capture/assets/proposal/',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (8,'H','Status','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/api/hml/status/proposal/?',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (9,'H','Cancelamento','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/api/pro/cancel/proposal/',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (10,'H','Consulta de CEP','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/api/hml/address/zipcode/?/address',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
insert into systur.smv_servicos values (11,'H','Boleto','http://apihom.services.cvc.com.br/SantanderMaisVezesHml/apicdchml/api/bens-documento/download-boleto-integra',null,null,sysdate,'MTZCPD230',6772910,'1.1.1.1');
/
create or replace trigger systur.smv_servicos_log_usu
before insert or update on systur.smv_servicos_log for each row
declare
vcd_pessoa_mnt smv_servicos_log.cd_pessoa_mnt%type := nvl(upper(trim(wsgsec.get_cd_pessoa_user)),0);
vip_usuario smv_servicos_log.ip_usuario%type := sys_context('userenv','ip_address');
vnm_usuario smv_servicos_log.nm_usuario%type := nvl(upper(trim(wsgsec.get_user)),user);
begin
if owa.num_cgi_vars > 0 then
vip_usuario := owa_util.get_cgi_env('remote_addr');
end if;
case
when inserting then
:new.dt_atualizacao := nvl(:new.dt_atualizacao,sysdate);
:new.cd_pessoa_mnt := nvl(:new.cd_pessoa_mnt,vcd_pessoa_mnt);
:new.ip_usuario := nvl(:new.ip_usuario,vip_usuario);
:new.nm_usuario := nvl(:new.nm_usuario,vnm_usuario);
when updating then
if not updating('dt_atualizacao') then
:new.dt_atualizacao := sysdate;
end if;
if not updating('cd_pessoa_mnt') then
:new.cd_pessoa_mnt := vcd_pessoa_mnt;
end if;
if not updating('ip_usuario') then
:new.ip_usuario := vip_usuario;
end if;
if not updating('nm_usuario') then
:new.nm_usuario := vnm_usuario;
end if;
else
null;
end case;
end;
/
create or replace trigger systur.smv_servicos_usu
before insert or update on systur.smv_servicos for each row
declare
vcd_pessoa_mnt smv_servicos.cd_pessoa_mnt%type := nvl(upper(trim(wsgsec.get_cd_pessoa_user)),0);
vip_usuario smv_servicos.ip_usuario%type := sys_context('userenv','ip_address');
vnm_usuario smv_servicos.nm_usuario%type := nvl(upper(trim(wsgsec.get_user)),user);
begin
if owa.num_cgi_vars > 0 then
vip_usuario := owa_util.get_cgi_env('remote_addr');
end if;
case
when inserting then
:new.dt_atualizacao := nvl(:new.dt_atualizacao,sysdate);
:new.cd_pessoa_mnt := nvl(:new.cd_pessoa_mnt,vcd_pessoa_mnt);
:new.ip_usuario := nvl(:new.ip_usuario,vip_usuario);
:new.nm_usuario := nvl(:new.nm_usuario,vnm_usuario);
when updating then
if not updating('dt_atualizacao') then
:new.dt_atualizacao := sysdate;
end if;
if not updating('cd_pessoa_mnt') then
:new.cd_pessoa_mnt := vcd_pessoa_mnt;
end if;
if not updating('ip_usuario') then
:new.ip_usuario := vip_usuario;
end if;
if not updating('nm_usuario') then
:new.nm_usuario := vnm_usuario;
end if;
else
null;
end case;
end;
/