order package label

main
alex 2024-05-02 22:55:11 +02:00
parent 4f7169d42e
commit a532af2be6
15 changed files with 214 additions and 5 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 596 KiB

View File

@ -0,0 +1,63 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Versandlabel</title>
<link
href="https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap"
rel="stylesheet"
/>
<style>
@page {
margin: 0;
padding: 0;
size: 2046mm 360mm;
}
:root {
--container-width: 2046mm;
--container-height: 360mm;
}
body,
html {
margin: 0;
padding: 0;
font-family: "Outfit";
width: var(--container-width); /* Breite des Containers */
height: var(--container-height); /* Höhe des Containers */
font-size: 40px;
}
.large-container {
width: var(--container-width); /* Breite des Containers */
height: var(--container-height); /* Höhe des Containers */
background-color: #ddd; /* Hintergrundfarbe */
display: flex;
align-items: center;
}
.container {
height: var(--container-height); /* Höhe des Containers */
}
</style>
</head>
<body>
<div class="large-container">
<h1 style="">Von SHINNEX für Annete</h1>
<div style="display: flex; flex-direction: column; align-items: center">
<h1>Folge uns</h1>
<img src="instagram-logo.png" width="80px" />
<h1>SHINNEX</h1>
</div>
<div style="display: flex; flex-direction: column; align-items: center">
<h1>Folge uns</h1>
<img src="tiktok-logo.png" width="80px" />
<h1>SHINNEX</h1>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,87 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Versandlabel</title>
<style>
@page {
margin: 0;
padding: 0;
size: 2046mm 360mm;
}
:root {
--container-width: 2046mm;
--container-height: 360mm;
}
body,
html {
margin: 0;
padding: 0;
font-size: 14px;
width: var(--container-width); /* Breite des Containers */
height: var(--container-height); /* Höhe des Containers */
}
.large-container {
width: var(--container-width); /* Breite des Containers */
height: var(--container-height); /* Höhe des Containers */
background-color: #808080; /* Hintergrundfarbe */
display: flex;
align-items: center;
}
.container {
height: var(--container-height); /* Höhe des Containers */
}
</style>
</head>
<body>
<div class="large-container">
<div
class="container"
style="width: 200mm; background-color: orange"
></div>
<div
class="container"
style="width: 12mm; background-color: #d9d9d9; position: absolute"
></div>
<div
class="container"
style="
width: 2400mm;
background-color: blue;
display: flex;
justify-content: center;
align-items: center;
"
>
<img src="Stempel.png" width="1500" />
</div>
<div class="container" style="width: 400mm; background-color: pink"></div>
<div
class="container"
style="
width: 2400mm;
background-color: purple;
display: flex;
justify-content: center;
align-items: center;
"
>
<img src="label.png" width="2600" />
</div>
<div
class="container"
style="width: 400mm; background-color: yellow"
></div>
</div>
</body>
</html>

View File

@ -0,0 +1,15 @@
{
"category": "Shinnex",
"name": "Versandlabel erstellen",
"globalInputs": [],
"tasks": [
{
"name": "Versandlabel erstellen und drucken",
"onFinish": "next",
"undoPossible": false,
"repeatPossible": true,
"scriptPath": "script.py",
"parameters": []
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 KiB

Binary file not shown.

View File

@ -0,0 +1,28 @@
import subprocess
import sys
def createPdf(sourceHtml, outputPdf):
command = [
"google-chrome-stable",
"--headless",
"--no-sandbox",
"--disable-gpu",
"--debug=1",
"--print-to-pdf=" + outputPdf,
"--run-all-compositor-stages-before-draw",
"--virtual-time-budget=10000",
sourceHtml,
]
process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
_, stderr = process.communicate()
if process.returncode != 0:
print("Error creating PDF")
print(stderr)
sys.exit(1)
if __name__ == "__main__":
print("Order Package Label")
createPdf("index.html", "output.pdf")

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

View File

@ -72,7 +72,7 @@
</p> </p>
<div class="code-box first-item" style="margin-top: 39px"> <div class="code-box first-item" style="margin-top: 39px">
<span>ASD</span> <span>{{DISCOUNT_CODE}}</span>
</div> </div>
</div> </div>

View File

@ -53,7 +53,7 @@
Hey, wir haben gerade Dein Paket liebevoll verpackt und konnten es kaum Hey, wir haben gerade Dein Paket liebevoll verpackt und konnten es kaum
erwarten, Dir diese kleine Nachricht zu hinterlassen, erwarten, Dir diese kleine Nachricht zu hinterlassen,
</span> </span>
<b>Anna</b><span>.</span> <b>{{CUSTOMER_NAME}}</b><span>.</span>
</div> </div>
<p> <p>
@ -87,7 +87,7 @@
<p> <p>
<span>Jeder Code ist ein kleines Dankeschön von uns an Dich, </span> <span>Jeder Code ist ein kleines Dankeschön von uns an Dich, </span>
<b>Anna</b <b>{{CUSTOMER_NAME}}</b
><span ><span
>, und wir hoffen, dass sie Dein Shopping-Erlebnis noch besser machen. >, und wir hoffen, dass sie Dein Shopping-Erlebnis noch besser machen.
Falls Du Fragen hast oder Unterstützung brauchst, zögere nicht, uns zu Falls Du Fragen hast oder Unterstützung brauchst, zögere nicht, uns zu

View File

@ -181,7 +181,7 @@
bgcolor="#af9363" bgcolor="#af9363"
> >
<a <a
href="https://shinnex.de" href="https://shinnex.de?utm_source=email&utm_medium=email&utm_campaign=deserved_voucher&utm_content=deserved_voucher"
class="button__text" class="button__text"
style=" style="
font-size: 16px; font-size: 16px;

View File

@ -4,6 +4,6 @@ Dein Gutscheincode als Dankeschön
Dein Gutscheincode lautet: {{VOUCHER_CODE}} Dein Gutscheincode lautet: {{VOUCHER_CODE}}
Zu unserem Shop: https://shinnex.de Zu unserem Shop: https://shinnex.de?utm_source=email&utm_medium=email&utm_campaign=deserved_voucher&utm_content=deserved_voucher
Falls du Fragen hast, antworte auf diese E-Mail oder kontaktiere uns unter info@shinnex.de. Falls du Fragen hast, antworte auf diese E-Mail oder kontaktiere uns unter info@shinnex.de.

View File

@ -832,3 +832,18 @@ func DeleteCrmLink(c *fiber.Ctx) error {
return c.SendStatus(fiber.StatusOK) return c.SendStatus(fiber.StatusOK)
} }
func CrmNoLinkProvidedRedirect(c *fiber.Ctx) error {
// swagger:operation GET /crm/nolink crm crmNoLinkProvidedRedirect
// ---
// summary: Redirect to crm no link provided
// produces:
// - application/json
// responses:
// '200':
// description: Redirect to crm no link provided
// '500':
// description: Failed to redirect to crm no link provided
return c.Redirect("https://shinnex.de?utm_source=web&utm_medium=web&utm_campaign=voucherlinkredirect&utm_content=redirect")
}

View File

@ -80,6 +80,7 @@ func SetupRoutes(app *fiber.App) {
c.Post("/links", requestAccessValidation, crm.CreateCrmLink) c.Post("/links", requestAccessValidation, crm.CreateCrmLink)
c.Get("/links/:customerId", requestAccessValidation, crm.GetCrmLinks) c.Get("/links/:customerId", requestAccessValidation, crm.GetCrmLinks)
c.Get("/link/:id", crm.CrmUseLink) c.Get("/link/:id", crm.CrmUseLink)
c.Get("/link", crm.CrmNoLinkProvidedRedirect)
c.Delete("/links/:id", requestAccessValidation, crm.DeleteCrmLink) c.Delete("/links/:id", requestAccessValidation, crm.DeleteCrmLink)
app.Static("/", config.Cfg.FolderPaths.PublicStatic) app.Static("/", config.Cfg.FolderPaths.PublicStatic)