Co-authored-by: Michael Hoennig <michael@hoennig.de> Reviewed-on: https://dev.hostsharing.net/hostsharing/hs.hsadmin.ng/pulls/20 Reviewed-by: Timotheus Pokorra <timotheus.pokorra@hostsharing.net>
63 lines
2.8 KiB
PL/PgSQL
63 lines
2.8 KiB
PL/PgSQL
--liquibase formatted sql
|
||
|
||
|
||
-- ============================================================================
|
||
--changeset hs-office-debitor-TEST-DATA-GENERATOR:1 endDelimiter:--//
|
||
-- ----------------------------------------------------------------------------
|
||
|
||
/*
|
||
Creates a single debitor test record.
|
||
*/
|
||
create or replace procedure createHsOfficeDebitorTestData(
|
||
withDebitorNumberSuffix numeric(5),
|
||
forPartnerPersonName varchar,
|
||
forBillingContactLabel varchar,
|
||
withDefaultPrefix varchar
|
||
)
|
||
language plpgsql as $$
|
||
declare
|
||
currentTask varchar;
|
||
idName varchar;
|
||
relatedDebitorRelUuid uuid;
|
||
relatedBankAccountUuid uuid;
|
||
begin
|
||
idName := cleanIdentifier( forPartnerPersonName|| '-' || forBillingContactLabel);
|
||
currentTask := 'creating debitor test-data ' || idName;
|
||
call defineContext(currentTask, null, 'superuser-alex@hostsharing.net', 'global#global.admin');
|
||
execute format('set local hsadminng.currentTask to %L', currentTask);
|
||
|
||
select debitorRel.uuid
|
||
into relatedDebitorRelUuid
|
||
from hs_office_relation debitorRel
|
||
join hs_office_person person on person.uuid = debitorRel.holderUuid
|
||
and (person.tradeName = forPartnerPersonName or person.familyName = forPartnerPersonName)
|
||
where debitorRel.type = 'DEBITOR';
|
||
|
||
select b.uuid
|
||
into relatedBankAccountUuid
|
||
from hs_office_bankaccount b
|
||
where b.holder = forPartnerPersonName;
|
||
|
||
raise notice 'creating test debitor: % (#%)', idName, withDebitorNumberSuffix;
|
||
-- raise exception 'creating test debitor: (uuid=%, debitorRelUuid=%, debitornumbersuffix=%, billable=%, vatbusiness=%, vatreversecharge=%, refundbankaccountuuid=%, defaultprefix=%)',
|
||
-- uuid_generate_v4(), relatedDebitorRelUuid, withDebitorNumberSuffix, true, true, false, relatedBankAccountUuid, withDefaultPrefix;
|
||
insert
|
||
into hs_office_debitor (uuid, debitorRelUuid, debitornumbersuffix, billable, vatbusiness, vatreversecharge, refundbankaccountuuid, defaultprefix)
|
||
values (uuid_generate_v4(), relatedDebitorRelUuid, withDebitorNumberSuffix, true, true, false, relatedBankAccountUuid, withDefaultPrefix);
|
||
end; $$;
|
||
--//
|
||
|
||
|
||
-- ============================================================================
|
||
--changeset hs-office-debitor-TEST-DATA-GENERATION:1 –context=dev,tc endDelimiter:--//
|
||
-- ----------------------------------------------------------------------------
|
||
|
||
do language plpgsql $$
|
||
begin
|
||
call createHsOfficeDebitorTestData(11, 'First GmbH', 'first contact', 'fir');
|
||
call createHsOfficeDebitorTestData(12, 'Second e.K.', 'second contact', 'sec');
|
||
call createHsOfficeDebitorTestData(13, 'Third OHG', 'third contact', 'thi');
|
||
end;
|
||
$$;
|
||
--//
|