Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
'use strict';

var dbm;
var type;
var seed;
var fs = require('fs');
var path = require('path');
var Promise;

exports.setup = function(options, seedLink) {
dbm = options.dbmigrate;
type = dbm.dataType;
seed = seedLink;
Promise = options.Promise;
};

exports.up = function(db) {
var filePath = path.join(__dirname, 'sqls', '20260312103000-tdei-default-referral-code-up.sql');
return new Promise(function(resolve, reject) {
fs.readFile(filePath, { encoding: 'utf-8' }, function(err, data) {
if (err) return reject(err);
console.log('received data: ' + data);

resolve(data);
});
})
.then(function(data) {
return db.runSql(data);
});
};

exports.down = function(db) {
var filePath = path.join(__dirname, 'sqls', '20260312103000-tdei-default-referral-code-down.sql');
return new Promise(function(resolve, reject) {
fs.readFile(filePath, { encoding: 'utf-8' }, function(err, data) {
if (err) return reject(err);
console.log('received data: ' + data);

resolve(data);
});
})
.then(function(data) {
return db.runSql(data);
});
};

exports._meta = {
'version': 1
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
DELETE FROM public.promo_referrals pr
USING public.project_group pg
WHERE pr.project_group_id = pg.project_group_id
AND pg.name = 'TDEI Default'
AND UPPER(pr.code) = UPPER('TD-R89-PILT-CA');
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
WITH default_pg AS (
SELECT project_group_id
FROM public.project_group
WHERE name = 'TDEI Default'
LIMIT 1
),
system_usr AS (
SELECT id::uuid AS user_id
FROM keycloak.user_entity
WHERE email = 'admin@tdei.com'
LIMIT 1
),
fallback_user AS (
SELECT COALESCE((SELECT user_id FROM system_usr), gen_random_uuid()) AS user_id
)
INSERT INTO public.promo_referrals
(name, type, valid_from, code, valid_to, instructions_url, project_group_id, user_id, description, is_active, redirect_url)
SELECT
'TDEI System Default Referral',
1,
NOW(),
'TD-R89-PILT-CA',
NULL,
NULL,
default_pg.project_group_id,
fallback_user.user_id,
'Default referral code for TDEI default project group',
true,
NULL
FROM default_pg, fallback_user
WHERE NOT EXISTS (
SELECT 1
FROM public.promo_referrals
WHERE UPPER(code) = UPPER('TD-R89-PILT-CA')
);
3 changes: 2 additions & 1 deletion src/service/user-management-service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,8 @@ export class UserManagementService implements IUserManagement {
let queryStr = format(`INSERT INTO user_roles (user_id, project_group_id, role_id)
SELECT %L, project_group_id, role_id
FROM roles, project_group
WHERE roles.name = %L AND project_group.name = %L`, userProfile.id, Role.TDEI_MEMBER, DEFAULT_PROJECT_GROUP);
WHERE roles.name = %L AND project_group.name = %L
ON CONFLICT ON CONSTRAINT unq_user_role_project_group DO NOTHING`, userProfile.id, Role.TDEI_MEMBER, DEFAULT_PROJECT_GROUP);
await dbClient.query(queryStr);
// }

Expand Down
Loading