fix: team list is not visible and change teams class

This commit is contained in:
prafull-opensignlabs
2024-07-04 20:56:57 +05:30
parent 450de195a7
commit d77477f3d1
15 changed files with 448 additions and 391 deletions
@@ -24,18 +24,16 @@ export default async function GetTemplate(request) {
const extUserQuery = new Parse.Query('contracts_Users');
extUserQuery.equalTo('Email', userRes.data.email);
extUserQuery.include('DepartmentIds');
extUserQuery.include('TeamIds');
const extUser = await extUserQuery.first({ useMasterKey: true });
if (extUser) {
const _extUser = JSON.parse(JSON.stringify(extUser));
if (_extUser?.DepartmentIds && _extUser.DepartmentIds?.length > 0) {
let departmentArr = [];
_extUser?.DepartmentIds?.forEach(
x => (departmentArr = [...departmentArr, ...x.Ancestors])
);
if (_extUser?.TeamIds && _extUser.TeamIds?.length > 0) {
let teamsArr = [];
_extUser?.TeamIds?.forEach(x => (teamsArr = [...teamsArr, ...x.Ancestors]));
// Create the first query
const sharedWithQuery = new Parse.Query('contracts_Template');
sharedWithQuery.containedIn('SharedWith', departmentArr);
sharedWithQuery.containedIn('SharedWith', teamsArr);
// Create the second query
const createdByQuery = new Parse.Query('contracts_Template');
@@ -1,18 +1,34 @@
async function addDepartmentAndOrg(extUser) {
async function addTeamAndOrg(extUser) {
try {
const orgCls = new Parse.Object('contracts_Organizations');
orgCls.set('Name', extUser.Company);
orgCls.set('IsActive', true);
orgCls.set('ExtUserId', {
__type: 'Pointer',
className: 'contracts_Users',
objectId: extUser?.objectId,
});
orgCls.set('CreatedBy', {
__type: 'Pointer',
className: '_User',
objectId: extUser?.UserId?.objectId,
});
orgCls.set('TenantId', {
__type: 'Pointer',
className: 'partners_Tenant',
objectId: extUser?.TenantId?.objectId,
});
const orgRes = await orgCls.save(null, { useMasterKey: true });
const departmentCls = new Parse.Object('contracts_Departments');
departmentCls.set('Name', 'All Users');
departmentCls.set('OrganizationId', {
const teamCls = new Parse.Object('contracts_Teams');
teamCls.set('Name', 'All Users');
teamCls.set('OrganizationId', {
__type: 'Pointer',
className: 'contracts_Organizations',
objectId: orgRes.id,
});
departmentCls.set('IsActive', true);
const departmentRes = await departmentCls.save(null, { useMasterKey: true });
teamCls.set('IsActive', true);
const teamRes = await teamCls.save(null, { useMasterKey: true });
const updateUser = new Parse.Object('contracts_Users');
updateUser.id = extUser.objectId;
updateUser.set('UserRole', 'contracts_Admin');
@@ -21,16 +37,16 @@ async function addDepartmentAndOrg(extUser) {
className: 'contracts_Organizations',
objectId: orgRes.id,
});
updateUser.set('DepartmentIds', [
updateUser.set('TeamIds', [
{
__type: 'Pointer',
className: 'contracts_Departments',
objectId: departmentRes.id,
className: 'contracts_Teams',
objectId: teamRes.id,
},
]);
const extUserRes = await updateUser.save(null, { useMasterKey: true });
} catch (err) {
console.log('err in add department, role, org', err);
console.log('err in add team, role, org', err);
}
}
@@ -50,7 +66,7 @@ export default async function SubscriptionAftersave(request) {
if (extUserRes) {
const extUser = JSON.parse(JSON.stringify(extUserRes));
if (extUser?.UserRole !== 'contracts_Admin') {
await addDepartmentAndOrg(extUser);
await addTeamAndOrg(extUser);
}
}
}
@@ -71,7 +87,7 @@ export default async function SubscriptionAftersave(request) {
if (extUserRes) {
const extUser = JSON.parse(JSON.stringify(extUserRes));
if (extUser?.UserRole !== 'contracts_Admin') {
await addDepartmentAndOrg(extUser);
await addTeamAndOrg(extUser);
}
}
}
@@ -1,4 +1,4 @@
export default async function DepartmentsAftersave(req) {
export default async function TeamsAftersave(req) {
if (!req.original) {
try {
const Ancestors = req.object.get('Ancestors');
@@ -8,7 +8,7 @@ export default async function DepartmentsAftersave(req) {
...Ancestors,
{
__type: 'Pointer',
className: 'contracts_Departments',
className: 'contracts_Teams',
objectId: req.object.id,
},
];
@@ -16,7 +16,7 @@ export default async function DepartmentsAftersave(req) {
updatedAncestors = [
{
__type: 'Pointer',
className: 'contracts_Departments',
className: 'contracts_Teams',
objectId: req.object.id,
},
];
@@ -24,7 +24,7 @@ export default async function DepartmentsAftersave(req) {
req.object.set('Ancestors', updatedAncestors);
await req.object.save(null, { useMasterKey: true });
} catch (err) {
console.log('Err in department aftersave', err);
console.log('Err in team aftersave', err);
}
}
}
@@ -28,19 +28,17 @@ export default async function getReport(request) {
if (reportId == '6TeaPr321t') {
const extUserQuery = new Parse.Query('contracts_Users');
extUserQuery.equalTo('Email', userRes.data.email);
extUserQuery.include('DepartmentIds');
extUserQuery.include('TeamIds');
const extUser = await extUserQuery.first({ useMasterKey: true });
if (extUser) {
const _extUser = JSON.parse(JSON.stringify(extUser));
if (_extUser?.DepartmentIds && _extUser.DepartmentIds?.length > 0) {
let departmentArr = [];
_extUser?.DepartmentIds?.forEach(
x => (departmentArr = [...departmentArr, ...x.Ancestors])
);
if (_extUser?.TeamIds && _extUser.TeamIds?.length > 0) {
let teamArr = [];
_extUser?.TeamIds?.forEach(x => (teamArr = [...teamArr, ...x.Ancestors]));
strParams = JSON.stringify({
...params,
$or: [
{ SharedWith: { $in: departmentArr } },
{ SharedWith: { $in: teamArr } },
{
ExtUserPtr: {
__type: 'Pointer',
@@ -10,7 +10,7 @@ export default async function getUserByOrg(req) {
} else {
try {
const extUser = new Parse.Query('contracts_Users');
extUser.include('DepartmentIds');
extUser.include('TeamIds');
extUser.equalTo('OrganizationId', orgPtr);
const userRes = await extUser.first({ useMasterKey: true });
if (userRes.length > 0) {
@@ -11,7 +11,7 @@ export default async function getUserListByOrg(req) {
try {
const extUser = new Parse.Query('contracts_Users');
extUser.equalTo('OrganizationId', orgPtr);
extUser.include('DepartmentIds');
extUser.include('TeamIds');
extUser.descending('createdAt');
const userRes = await extUser.find({ useMasterKey: true });
if (userRes.length > 0) {