Skip to content

Commit

Permalink
feat: new texts to pdf (drac, udap, marianne)
Browse files Browse the repository at this point in the history
  • Loading branch information
ledouxm committed Jun 13, 2024
1 parent 2e5a6b1 commit c7f8e33
Show file tree
Hide file tree
Showing 27 changed files with 167 additions and 130 deletions.
3 changes: 3 additions & 0 deletions db/migrations/01-add_users.sql
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@ CREATE TABLE "udap"(
,city TEXT
,phone TEXT
,email TEXT
,marianne_text TEXT
,drac_text TEXT
,udap_text TEXT
);

ALTER TABLE "udap" ENABLE ELECTRIC;
Expand Down
3 changes: 0 additions & 3 deletions db/migrations/06-add_udap_drac.sql

This file was deleted.

31 changes: 31 additions & 0 deletions db/migrations/06-insert_drac.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@

UPDATE udap SET marianne_text='Préfet
de la région
Nouvelle-Aquitaine', drac_text='Direction régionale des affaires
culturelles de Nouvelle-Aquitaine', udap_text='Unité départementale de
l''architecture et du patrimone des Landes' WHERE id='udap-landes';
UPDATE udap SET marianne_text='Préfet
de la région
Nouvelle-Aquitaine', drac_text='Direction régionale des affaires
culturelles de Nouvelle-Aquitaine', udap_text='Unité départementale de
l''architecture et du patrimone des Deux-Sèvres' WHERE id= 'udap-deux-sèvres';
UPDATE udap SET marianne_text='Préfet
de la région
Nouvelle-Aquitaine', drac_text='Direction régionale des affaires
culturelles de Nouvelle-Aquitaine', udap_text='Unité départementale de
l''architecture et du patrimone de la Vienne' WHERE id= 'udap-vienne';
UPDATE udap SET marianne_text='Préfet
de la région
Nouvelle-Aquitaine', drac_text='Direction régionale des affaires
culturelles de Nouvelle-Aquitaine', udap_text='Unité départementale de
l''architecture et du patrimone de la Charente-Maritime' WHERE id= 'udap-charente-maritime';
UPDATE udap SET marianne_text='Préfet
de la région
Nouvelle-Aquitaine', drac_text='Direction régionale des affaires
culturelles de Nouvelle-Aquitaine', udap_text='Unité départementale de
l''architecture et du patrimone du Lot-et-Garonne' WHERE id='udap-lot-et-garonne';
UPDATE udap SET marianne_text='Préfet
de la région
Nouvelle-Aquitaine', drac_text='Direction régionale des affaires
culturelles de Nouvelle-Aquitaine', udap_text='Unité départementale de
l''architecture et du patrimone de la Dordogne' WHERE id='udap-dordogne';
7 changes: 0 additions & 7 deletions db/migrations/07-insert_drac.sql

This file was deleted.

2 changes: 1 addition & 1 deletion packages/backend/openapi.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"openapi":"3.1.0","info":{"title":"CR VIF API","description":"CR VIF API Documentation","version":"1.0"},"components":{"schemas":{}},"paths":{"/api/create-user":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"udap_id":{"type":"string"},"email":{"type":"string"},"password":{"type":"string"}},"required":["name","udap_id","email","password"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"udap_id":{"type":"string"},"udap":{"type":"object","properties":{"id":{"type":"string"},"department":{"type":"string"},"completeCoords":{"type":"string"},"visible":{"type":"boolean"},"name":{"type":"string"},"address":{"type":"string"},"zipCode":{"type":"string"},"city":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"}},"required":["id","department"]}},"required":["id","name","udap_id","udap"]},"token":{"type":"string"},"refreshToken":{"type":"string"}},"required":["token","refreshToken"]}}}}}}},"/api/login":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"type":"string"},"password":{"type":"string"}},"required":["email","password"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"udap_id":{"type":"string"},"udap":{"type":"object","properties":{"id":{"type":"string"},"department":{"type":"string"},"completeCoords":{"type":"string"},"visible":{"type":"boolean"},"name":{"type":"string"},"address":{"type":"string"},"zipCode":{"type":"string"},"city":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"}},"required":["id","department"]}},"required":["id","name","udap_id","udap"]},"token":{"type":"string"},"refreshToken":{"type":"string"}},"required":["token","refreshToken"]}}}}}}},"/api/refresh-token":{"get":{"parameters":[{"schema":{"type":"string"},"in":"query","name":"token","required":true},{"schema":{"type":"string"},"in":"query","name":"refreshToken","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"udap_id":{"type":"string"},"udap":{"type":"object","properties":{"id":{"type":"string"},"department":{"type":"string"},"completeCoords":{"type":"string"},"visible":{"type":"boolean"},"name":{"type":"string"},"address":{"type":"string"},"zipCode":{"type":"string"},"city":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"}},"required":["id","department"]}},"required":["id","name","udap_id","udap"]},"token":{"type":"string"},"refreshToken":{"type":"string"}},"required":["token","refreshToken"]}}}}}}},"/api/send-reset-password":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"type":"string"}},"required":["email"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"]}}}}}}},"/api/reset-password":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"temporaryLink":{"type":"string"},"newPassword":{"type":"string"}},"required":["temporaryLink","newPassword"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"]}}}}}}},"/api/udaps":{"get":{"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"department":{"type":"string"},"completeCoords":{"type":"string"},"visible":{"type":"boolean"},"name":{"type":"string"},"address":{"type":"string"},"zipCode":{"type":"string"},"city":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"}},"required":["id","department"]}}}}}}}},"/api/pdf/report":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"htmlString":{"type":"string"},"reportId":{"type":"string"},"recipients":{"type":"string"}},"required":["htmlString","reportId","recipients"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"string"}}}}}},"get":{"parameters":[{"schema":{"type":"string"},"in":"query","name":"reportId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}}}}
{"openapi":"3.1.0","info":{"title":"CR VIF API","description":"CR VIF API Documentation","version":"1.0"},"components":{"schemas":{}},"paths":{"/api/create-user":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"udap_id":{"type":"string"},"email":{"type":"string"},"password":{"type":"string"}},"required":["name","udap_id","email","password"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"udap_id":{"type":"string"},"udap":{"type":"object","properties":{"id":{"type":"string"},"department":{"type":"string"},"completeCoords":{"type":"string"},"visible":{"type":"boolean"},"name":{"type":"string"},"address":{"type":"string"},"zipCode":{"type":"string"},"city":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"marianne_text":{"type":"string"},"drac_text":{"type":"string"},"udap_text":{"type":"string"}},"required":["id","department"]}},"required":["id","name","udap_id","udap"]},"token":{"type":"string"},"refreshToken":{"type":"string"}},"required":["token","refreshToken"]}}}}}}},"/api/login":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"type":"string"},"password":{"type":"string"}},"required":["email","password"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"udap_id":{"type":"string"},"udap":{"type":"object","properties":{"id":{"type":"string"},"department":{"type":"string"},"completeCoords":{"type":"string"},"visible":{"type":"boolean"},"name":{"type":"string"},"address":{"type":"string"},"zipCode":{"type":"string"},"city":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"marianne_text":{"type":"string"},"drac_text":{"type":"string"},"udap_text":{"type":"string"}},"required":["id","department"]}},"required":["id","name","udap_id","udap"]},"token":{"type":"string"},"refreshToken":{"type":"string"}},"required":["token","refreshToken"]}}}}}}},"/api/refresh-token":{"get":{"parameters":[{"schema":{"type":"string"},"in":"query","name":"token","required":true},{"schema":{"type":"string"},"in":"query","name":"refreshToken","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"udap_id":{"type":"string"},"udap":{"type":"object","properties":{"id":{"type":"string"},"department":{"type":"string"},"completeCoords":{"type":"string"},"visible":{"type":"boolean"},"name":{"type":"string"},"address":{"type":"string"},"zipCode":{"type":"string"},"city":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"marianne_text":{"type":"string"},"drac_text":{"type":"string"},"udap_text":{"type":"string"}},"required":["id","department"]}},"required":["id","name","udap_id","udap"]},"token":{"type":"string"},"refreshToken":{"type":"string"}},"required":["token","refreshToken"]}}}}}}},"/api/send-reset-password":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"type":"string"}},"required":["email"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"]}}}}}}},"/api/reset-password":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"temporaryLink":{"type":"string"},"newPassword":{"type":"string"}},"required":["temporaryLink","newPassword"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"]}}}}}}},"/api/udaps":{"get":{"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"department":{"type":"string"},"completeCoords":{"type":"string"},"visible":{"type":"boolean"},"name":{"type":"string"},"address":{"type":"string"},"zipCode":{"type":"string"},"city":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"marianne_text":{"type":"string"},"drac_text":{"type":"string"},"udap_text":{"type":"string"}},"required":["id","department"]}}}}}}}},"/api/pdf/report":{"post":{"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"htmlString":{"type":"string"},"reportId":{"type":"string"},"recipients":{"type":"string"}},"required":["htmlString","reportId","recipients"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"string"}}}}}},"get":{"parameters":[{"schema":{"type":"string"},"in":"query","name":"reportId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}}}}
Binary file added packages/backend/public/marianne.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added packages/backend/public/marianne_footer.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed packages/backend/public/pdf_header.png
Binary file not shown.
6 changes: 5 additions & 1 deletion packages/backend/src/routes/pdfRoutes.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,11 @@ export const pdfPlugin: FastifyPluginAsyncTypebox = async (fastify, _) => {

const generatePdf = async ({ htmlString, udap }: { htmlString: string; udap: Udap }) => {
return renderToBuffer(
<ReportPDFDocument udap={udap as Udap} htmlString={htmlString} images={{ header: "./public/pdf_header.png" }} />,
<ReportPDFDocument
udap={udap as Udap}
htmlString={htmlString}
images={{ marianne: "./public/marianne.png", marianneFooter: "./public/marianneFooter.png" }}
/>,
);
};

Expand Down
1 change: 1 addition & 0 deletions packages/backend/src/services/userService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ export class UserService {
},
},
});
console.log(user?.user);
assertUserExists(user);
await assertPasswordsMatch(payload.password, user!.password);

Expand Down
39 changes: 13 additions & 26 deletions packages/electric-client/prisma/schema.prisma
Original file line number Diff line number Diff line change
Expand Up @@ -28,18 +28,20 @@ model atdatabases_migrations_version {
}

model clause {
id String @id
label String
value String
report_to_clause report_to_clause[]
key String
value String
udap_id String
text String
@@id([key, value, udap_id])
}

model report {
id String @id
id String @id
title String?
projectDescription String?
redactedBy String?
meetDate DateTime? @db.Timestamp(6)
meetDate DateTime? @db.Timestamp(6)
applicantName String?
applicantAddress String?
projectCadastralRef String?
Expand All @@ -49,30 +51,12 @@ model report {
contacts String?
furtherInformation String?
createdBy String
createdAt DateTime @db.Timestamp(6)
createdAt DateTime @db.Timestamp(6)
serviceInstructeur Int?
pdf String?
disabled Boolean?
udap_id String?
user user @relation(fields: [createdBy], references: [id], onDelete: SetNull, onUpdate: NoAction)
report_to_clause report_to_clause[]
}

model report_to_clause {
id String @id
reportId String
clauseId String
clause clause @relation(fields: [clauseId], references: [id], onDelete: Cascade, onUpdate: NoAction)
report report @relation(fields: [reportId], references: [id], onDelete: Cascade, onUpdate: NoAction)
}

model chip {
key String
value String
udap_id String
text String
@@id([key, value, udap_id])
user user @relation(fields: [createdBy], references: [id], onDelete: SetNull, onUpdate: NoAction)
}

model delegation {
Expand All @@ -95,6 +79,9 @@ model udap {
city String?
phone String?
email String?
marianne_text String?
drac_text String?
udap_text String?
user user[]
}

Expand Down
Loading

0 comments on commit c7f8e33

Please sign in to comment.