wip
This commit is contained in:
@@ -1,142 +1,150 @@
|
||||
class DocumentServer {
|
||||
baseUrl: string;
|
||||
apiKey: string;
|
||||
baseUrl: string;
|
||||
apiKey: string;
|
||||
|
||||
constructor(baseUrl: string, apiKey: string){
|
||||
this.baseUrl = baseUrl;
|
||||
this.apiKey = apiKey;
|
||||
}
|
||||
constructor(baseUrl: string, apiKey: string) {
|
||||
this.baseUrl = baseUrl;
|
||||
this.apiKey = apiKey;
|
||||
}
|
||||
|
||||
async generateCards(cards: any[], locale: string) {
|
||||
const generateCards = new Array<any>();
|
||||
async generateCards(cards: any[], locale: string) {
|
||||
const generateCards = new Array<any>();
|
||||
|
||||
for (let i = 0; i < cards.length; i++) {
|
||||
const card = {
|
||||
id: cards[i].id,
|
||||
enabled: cards[i].enabled,
|
||||
code: cards[i].code,
|
||||
runner: {
|
||||
id: cards[i]?.runner?.id,
|
||||
first_name: cards[i]?.runner?.firstname,
|
||||
middle_name: cards[i]?.runner?.middlename,
|
||||
last_name: cards[i]?.runner?.lastname,
|
||||
group: {
|
||||
id: cards[i]?.runner?.group.id,
|
||||
name: cards[i]?.runner?.group.name,
|
||||
parent_group: {
|
||||
id: cards[i]?.runner?.group?.parentGroup?.id,
|
||||
name: cards[i]?.runner?.group?.parentGroup?.name,
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
generateCards.push(card)
|
||||
|
||||
}
|
||||
|
||||
const response = await fetch(`${this.baseUrl}/v1/pdfs/cards?key=${this.apiKey}`, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
for (let i = 0; i < cards.length; i++) {
|
||||
const card = {
|
||||
id: cards[i].id,
|
||||
enabled: cards[i].enabled,
|
||||
code: cards[i].code,
|
||||
runner: {
|
||||
id: cards[i]?.runner?.id,
|
||||
first_name: cards[i]?.runner?.firstname,
|
||||
middle_name: cards[i]?.runner?.middlename,
|
||||
last_name: cards[i]?.runner?.lastname,
|
||||
group: {
|
||||
id: cards[i]?.runner?.group.id,
|
||||
name: cards[i]?.runner?.group.name,
|
||||
parent_group: {
|
||||
id: cards[i]?.runner?.group?.parentGroup?.id,
|
||||
name: cards[i]?.runner?.group?.parentGroup?.name,
|
||||
},
|
||||
body: JSON.stringify({
|
||||
locale,
|
||||
cards: generateCards,
|
||||
}),
|
||||
});
|
||||
|
||||
const blob = await response.blob();
|
||||
return blob;
|
||||
},
|
||||
},
|
||||
};
|
||||
generateCards.push(card);
|
||||
}
|
||||
|
||||
async generateContracts(runners: any[], locale: string) {
|
||||
const generateRunners = new Array<any>();
|
||||
|
||||
for (let i = 0; i < runners.length; i++) {
|
||||
console.log(runners[i])
|
||||
const card = {
|
||||
id: runners[i].id,
|
||||
first_name: runners[i].firstname,
|
||||
middle_name: runners[i].middlename,
|
||||
last_name: runners[i].lastname,
|
||||
group: {
|
||||
id: runners[i].group.id,
|
||||
name: runners[i].group.name,
|
||||
parent_group: {
|
||||
id: runners[i]?.group?.parentGroup?.id,
|
||||
name: runners[i]?.group?.parentGroup?.name,
|
||||
}
|
||||
}
|
||||
}
|
||||
generateRunners.push(card)
|
||||
|
||||
}
|
||||
const response = await fetch(
|
||||
`${this.baseUrl}/v1/pdfs/cards?key=${this.apiKey}`,
|
||||
{
|
||||
method: "POST",
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
body: JSON.stringify({
|
||||
locale,
|
||||
cards: generateCards,
|
||||
}),
|
||||
},
|
||||
);
|
||||
|
||||
const response = await fetch(`${this.baseUrl}/v1/pdfs/contracts?key=${this.apiKey}`, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
},
|
||||
body: JSON.stringify({
|
||||
locale,
|
||||
runners: generateRunners,
|
||||
}),
|
||||
});
|
||||
const blob = await response.blob();
|
||||
return blob;
|
||||
}
|
||||
|
||||
const blob = await response.blob();
|
||||
return blob;
|
||||
async generateContracts(runners: any[], locale: string) {
|
||||
const generateRunners = new Array<any>();
|
||||
|
||||
for (let i = 0; i < runners.length; i++) {
|
||||
console.log(runners[i]);
|
||||
const card = {
|
||||
id: runners[i].id,
|
||||
first_name: runners[i].firstname,
|
||||
middle_name: runners[i].middlename,
|
||||
last_name: runners[i].lastname,
|
||||
group: {
|
||||
id: runners[i].group.id,
|
||||
name: runners[i].group.name,
|
||||
parent_group: {
|
||||
id: runners[i]?.group?.parentGroup?.id,
|
||||
name: runners[i]?.group?.parentGroup?.name,
|
||||
},
|
||||
},
|
||||
};
|
||||
generateRunners.push(card);
|
||||
}
|
||||
|
||||
async generateCertificates(runners: any[], locale: string) {
|
||||
const generateRunners = new Array<any>();
|
||||
|
||||
for (let i = 0; i < runners.length; i++) {
|
||||
const certificate = {
|
||||
id: runners[i].id,
|
||||
first_name: runners[i].firstname,
|
||||
middle_name: runners[i].middlename,
|
||||
last_name: runners[i].lastname,
|
||||
group: {
|
||||
id: runners[i].group.id,
|
||||
name: runners[i].group.name,
|
||||
parent_group: {
|
||||
id: runners[i]?.group?.parentGroup?.id,
|
||||
name: runners[i]?.group?.parentGroup?.name,
|
||||
}
|
||||
},
|
||||
distance: runners[i].distance,
|
||||
distance_donations: runners[i].distanceDonations.map((distanceDonation: any) =>{
|
||||
return {
|
||||
id: distanceDonation.id,
|
||||
amount: distanceDonation.amount,
|
||||
amount_per_distance: distanceDonation.amountPerDistance,
|
||||
donor: {
|
||||
id: distanceDonation.donor.id,
|
||||
first_name: distanceDonation.donor.firstname,
|
||||
middle_name: distanceDonation.donor.middlename,
|
||||
last_name: distanceDonation.donor.lastname,
|
||||
}
|
||||
}
|
||||
}),
|
||||
}
|
||||
generateRunners.push(certificate)
|
||||
|
||||
}
|
||||
const response = await fetch(
|
||||
`${this.baseUrl}/v1/pdfs/contracts?key=${this.apiKey}`,
|
||||
{
|
||||
method: "POST",
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
body: JSON.stringify({
|
||||
locale,
|
||||
runners: generateRunners,
|
||||
}),
|
||||
},
|
||||
);
|
||||
|
||||
const response = await fetch(`${this.baseUrl}/v1/pdfs/certificates?key=${this.apiKey}`, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
},
|
||||
body: JSON.stringify({
|
||||
locale,
|
||||
runners: generateRunners,
|
||||
}),
|
||||
});
|
||||
const blob = await response.blob();
|
||||
return blob;
|
||||
}
|
||||
|
||||
const blob = await response.blob();
|
||||
return blob;
|
||||
async generateCertificates(runners: any[], locale: string) {
|
||||
const generateRunners = new Array<any>();
|
||||
|
||||
for (let i = 0; i < runners.length; i++) {
|
||||
const certificate = {
|
||||
id: runners[i].id,
|
||||
first_name: runners[i].firstname,
|
||||
middle_name: runners[i].middlename,
|
||||
last_name: runners[i].lastname,
|
||||
group: {
|
||||
id: runners[i].group.id,
|
||||
name: runners[i].group.name,
|
||||
parent_group: {
|
||||
id: runners[i]?.group?.parentGroup?.id,
|
||||
name: runners[i]?.group?.parentGroup?.name,
|
||||
},
|
||||
},
|
||||
distance: runners[i].distance,
|
||||
distance_donations: runners[i].distanceDonations.map(
|
||||
(distanceDonation: any) => {
|
||||
return {
|
||||
id: distanceDonation.id,
|
||||
amount: distanceDonation.amount,
|
||||
amount_per_distance: distanceDonation.amountPerDistance,
|
||||
donor: {
|
||||
id: distanceDonation.donor.id,
|
||||
first_name: distanceDonation.donor.firstname,
|
||||
middle_name: distanceDonation.donor.middlename,
|
||||
last_name: distanceDonation.donor.lastname,
|
||||
},
|
||||
};
|
||||
},
|
||||
),
|
||||
};
|
||||
generateRunners.push(certificate);
|
||||
}
|
||||
|
||||
const response = await fetch(
|
||||
`${this.baseUrl}/v1/pdfs/certificates?key=${this.apiKey}`,
|
||||
{
|
||||
method: "POST",
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
body: JSON.stringify({
|
||||
locale,
|
||||
runners: generateRunners,
|
||||
}),
|
||||
},
|
||||
);
|
||||
|
||||
const blob = await response.blob();
|
||||
return blob;
|
||||
}
|
||||
}
|
||||
|
||||
export default DocumentServer;
|
||||
export default DocumentServer;
|
||||
|
||||
Reference in New Issue
Block a user