Skip to content

Commit

Permalink
VCST-1306: Incomplete quote proposal warning
Browse files Browse the repository at this point in the history
feat: Adds Incomplete quote proposal warning if quote doesn't have either any items or with a zero total.
  • Loading branch information
OlegoO committed Jun 11, 2024
1 parent 46c2eb5 commit 90a4bb2
Show file tree
Hide file tree
Showing 4 changed files with 186 additions and 157 deletions.
Original file line number Diff line number Diff line change
@@ -1,145 +1,149 @@
{
"quotes": {
"quotes": {
"main-menu-title": "Kostenvoranschläge",
"blades": {
"quotes-assets": {
"subtitle": "Anhänge",
"labels": {
"drag-note": "Anzuhängende Dateien hier hin ziehen",
"select-files": "Dateien auswählen",
"progress": "Fortschritt",
"type": "Typ",
"name": "Name",
"actions": "Aktionen"
}
},
"quote-detail": {
"subtitle": "Details zum Kostenvoranschlag",
"labels": {
"customer": "Kunde",
"created": "Erstellt",
"customer-organization": "Organisation",
"last-updated": "Letzte Aktualisierung",
"status": "Status",
"expiry-date": "Verfalldatum",
"assigned-to": "Zugewiesen zu",
"rfq-from": "Angebotsanforderung von",
"reminder-date": "Mahndatum",
"general-comment": "Allgemeine Bemerkung",
"internal-comment": "Interne Bemerkung"
},
"placeholders": {
"status": "Wählen Sie aus...",
"expiry-date": "Datum auswählen",
"assigned-to": "Wählen Sie aus...",
"rfq-from": "Shop auswählen",
"reminder-date": "Datum auswählen",
"general-comment": "Allgemeine Anmerkung",
"internal-comment": "Interne Bemerkung"
}
},
"quote-items": {
"title": "{{title}} Positionen",
"subtitle": "Positionen bearbeiten",
"labels": {
"new-subtotal": "Neue Zwischensumme",
"relative-discount": "Rabatt",
"shipping-method": "Versandart",
"manual-shipping-total": "Manueller Versand gesamt",
"sub-total-placed": "Zwischensumme (gesetzt).",
"adjustment-quote": "Justierung",
"sub-total": "Zwischensumme",
"shipping": "Versand",
"discount": "Rabatt",
"grand-total": "Gesamtsumme",
"taxes": "Steuern",
"grand-total-incl-tax": "Gesamtbetrag (Inkl. Steuern)",
"picture": "Bild",
"comment": "Kommentar mit Produkt",
"list-price": "Listenpreis",
"sale-price": "Sonderangebot",
"quantity": "Menge",
"proposed-price": "Vorgeschlagener Preis",
"margin": "Marge (GP)",
"product": "Produkt",
"sku": "Art.-Nr."
},
"placeholders": {
"shipping-method": "Wählen Sie aus...",
"comment": "Kommentar eingeben"
}
},
"quotes-list": {
"title": "Kostenvoranschläge",
"labels": {
"quote-number": "Angebot Nr.",
"status": "Status",
"items-count": "Anzahl Artikel",
"customer": "Kunde",
"created": "Erstellt",
"no-quotes": "Keine Angebote noch"
}
},
"catalog-items-select": {
"title": "Artikel zum Angebot einfügen"
}
},
"widgets": {
"quote-address": {
"address-type": "Adresse eingeben",
"no-address": "Keine Adresse",
"blade-subtitle": "Adressen verwalten"
},
"quotes-assets": {
"title": "Anhänge"
},
"quote-items": {
"title": "Posten"
},
"quote-totals": {
"sub-total": "Zwischensumme",
"shipping": "Versand",
"discount": "Rabatt",
"grand-total": "Gesamtsumme"
}
},
"dialogs": {
"quote-requests-delete": {
"title": "Bestätigung löschen",
"message": "Sind Sie sicher, dass Sie ausgewählte Angebotanfragen löschen möchten?"
},
"quote-delete": {
"title": "Bestätigung löschen",
"message": "Möchten Sie dieses Angebot wirklich löschen?"
},
"quote-save": {
"title": "Änderungen speichern",
"message": "Der Kostenvoranschlag wurde geändert. Möchten Sie die Änderungen speichern?"
},
"quote-cancel": {
"title": "Angebot stornieren",
"message": "Möchten Sie dieses Angebot wirklich abbrechen?",
"placeholders": {
"reason": "Ein Grund, hier abzubrechen..."
}
},
"proposal-delete": {
"title": "Vorschlag bestätigen",
"message": "Nur begrenzte Änderungen sind verfügbar, nachdem der Antrag gesendet wurde. Sind Sie sicher, dass Sie diesen Vorschlag an den Kunden schicken möchten?"
},
"hold-confirmation": {
"title": "Warteschleifen Bestätigung",
"message-release": "Bist du sicher, dass die Pausierung aus diesem Angebot freigeben willst?",
"message-place": "Bist du sicher, dass die Pausierung aus diesem Angebot einsetzen willst?"
}
},
"commands": {
"release-hold": "Pausierung aufheben",
"place-on-hold": "Pausieren",
"submit-proposal": "Vorschlag senden",
"cancel-document": "Beleg stornieren",
"add-selected": "Ausgewählte hinzufügen",
"add-item": "Artikel hinzufügen"
}
}
}
"blades": {
"quotes-assets": {
"subtitle": "Anhänge",
"labels": {
"drag-note": "Anzuhängende Dateien hier hin ziehen",
"select-files": "Dateien auswählen",
"progress": "Fortschritt",
"type": "Typ",
"name": "Name",
"actions": "Aktionen"
}
},
"quote-detail": {
"subtitle": "Details zum Kostenvoranschlag",
"labels": {
"customer": "Kunde",
"created": "Erstellt",
"customer-organization": "Organisation",
"last-updated": "Letzte Aktualisierung",
"status": "Status",
"expiry-date": "Verfalldatum",
"assigned-to": "Zugewiesen zu",
"rfq-from": "Angebotsanforderung von",
"reminder-date": "Mahndatum",
"general-comment": "Allgemeine Bemerkung",
"internal-comment": "Interne Bemerkung"
},
"placeholders": {
"status": "Wählen Sie aus...",
"expiry-date": "Datum auswählen",
"assigned-to": "Wählen Sie aus...",
"rfq-from": "Shop auswählen",
"reminder-date": "Datum auswählen",
"general-comment": "Allgemeine Anmerkung",
"internal-comment": "Interne Bemerkung"
}
},
"quote-items": {
"title": "{{title}} Positionen",
"subtitle": "Positionen bearbeiten",
"labels": {
"new-subtotal": "Neue Zwischensumme",
"relative-discount": "Rabatt",
"shipping-method": "Versandart",
"manual-shipping-total": "Manueller Versand gesamt",
"sub-total-placed": "Zwischensumme (gesetzt).",
"adjustment-quote": "Justierung",
"sub-total": "Zwischensumme",
"shipping": "Versand",
"discount": "Rabatt",
"grand-total": "Gesamtsumme",
"taxes": "Steuern",
"grand-total-incl-tax": "Gesamtbetrag (Inkl. Steuern)",
"picture": "Bild",
"comment": "Kommentar mit Produkt",
"list-price": "Listenpreis",
"sale-price": "Sonderangebot",
"quantity": "Menge",
"proposed-price": "Vorgeschlagener Preis",
"margin": "Marge (GP)",
"product": "Produkt",
"sku": "Art.-Nr."
},
"placeholders": {
"shipping-method": "Wählen Sie aus...",
"comment": "Kommentar eingeben"
}
},
"quotes-list": {
"title": "Kostenvoranschläge",
"labels": {
"quote-number": "Angebot Nr.",
"status": "Status",
"items-count": "Anzahl Artikel",
"customer": "Kunde",
"created": "Erstellt",
"no-quotes": "Keine Angebote noch"
}
},
"catalog-items-select": {
"title": "Artikel zum Angebot einfügen"
}
},
"widgets": {
"quote-address": {
"address-type": "Adresse eingeben",
"no-address": "Keine Adresse",
"blade-subtitle": "Adressen verwalten"
},
"quotes-assets": {
"title": "Anhänge"
},
"quote-items": {
"title": "Posten"
},
"quote-totals": {
"sub-total": "Zwischensumme",
"shipping": "Versand",
"discount": "Rabatt",
"grand-total": "Gesamtsumme"
}
},
"dialogs": {
"quote-requests-delete": {
"title": "Bestätigung löschen",
"message": "Sind Sie sicher, dass Sie ausgewählte Angebotanfragen löschen möchten?"
},
"quote-delete": {
"title": "Bestätigung löschen",
"message": "Möchten Sie dieses Angebot wirklich löschen?"
},
"quote-save": {
"title": "Änderungen speichern",
"message": "Der Kostenvoranschlag wurde geändert. Möchten Sie die Änderungen speichern?"
},
"quote-cancel": {
"title": "Angebot stornieren",
"message": "Möchten Sie dieses Angebot wirklich abbrechen?",
"placeholders": {
"reason": "Ein Grund, hier abzubrechen..."
}
},
"proposal-submit": {
"title": "Vorschlag bestätigen",
"message": "Nur begrenzte Änderungen sind verfügbar, nachdem der Antrag gesendet wurde. Sind Sie sicher, dass Sie diesen Vorschlag an den Kunden schicken möchten?"
},
"proposal-submit-with-warning": {
"title": "Unvollständiger Angebotsvorschlag",
"message": "Achtung: Das Angebot enthält entweder keine Artikel oder hat einen Gesamtwert von Null. Bitte stellen Sie sicher, dass alle Artikel aufgelistet und mit den richtigen Preisen versehen sind, bevor Sie fortfahren. Möchten Sie wirklich fortfahren?"
},
"hold-confirmation": {
"title": "Warteschleifen Bestätigung",
"message-release": "Bist du sicher, dass die Pausierung aus diesem Angebot freigeben willst?",
"message-place": "Bist du sicher, dass die Pausierung aus diesem Angebot einsetzen willst?"
}
},
"commands": {
"release-hold": "Pausierung aufheben",
"place-on-hold": "Pausieren",
"submit-proposal": "Vorschlag senden",
"cancel-document": "Beleg stornieren",
"add-selected": "Ausgewählte hinzufügen",
"add-item": "Artikel hinzufügen"
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -123,9 +123,13 @@
"reason": "Please enter reason here..."
}
},
"proposal-delete": {
"proposal-submit": {
"title": "Confirm proposal",
"message": "After you send a proposal, you will not be able to modify some parts of your quote. Are you sure you want to proceed?"
"message": "Once you submit your proposal, certain parts of your quote will be locked and cannot be modified. Are you sure you want to proceed?"
},
"proposal-submit-with-warning": {
"title": "Incomplete quote proposal",
"message": "Warning: The quote doesn't have either any items or with a zero total. Please ensure that all items are listed and priced appropriately before proceeding. Are you sure you want to proceed?"
},
"hold-confirmation": {
"title": "Confirm put on hold",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,10 +124,14 @@
}

},
"proposal-delete": {
"proposal-submit": {
"title": "Подтверждение предложения",
"message": "После отправления предложения будут доступны лишь незначительные правки. Вы действительно хотите отправить это предложение покупателю?"
},
"proposal-submit-with-warning": {
"title": "Неполное предложение",
"message": "Предупреждение: Ваша квота будет отправлена ​​без каких-либо позиций или с нулевой общей суммой. Пожалуйста, убедитесь, что все позиции перечислены и оценены надлежащим образом, прежде чем продолжить. Вы уверены, что хотите продолжить?"
},
"hold-confirmation": {
"title": "Ожидание подтверждения",
"message-release": "Вы уверены, что хотите исключить это из квоты?",
Expand Down
39 changes: 28 additions & 11 deletions src/VirtoCommerce.QuoteModule.Web/Scripts/blades/quote-detail.js
Original file line number Diff line number Diff line change
Expand Up @@ -148,18 +148,35 @@ angular.module('virtoCommerce.quoteModule')
{
name: "quotes.commands.submit-proposal", icon: 'fa fa-check-square-o',
executeMethod: function () {
var dialog = {
id: "confirmDelete",
title: "quotes.dialogs.proposal-delete.title",
message: "quotes.dialogs.proposal-delete.message",
callback: function (ok) {
if (ok) {
blade.currentEntity.status = 'Proposal sent';
saveChanges();
if (blade.currentEntity.items.length == 0 ||
blade.currentEntity.totals.grandTotalInclTax == 0) {
var dialog = {
id: "submitProposalWithWarning",
title: "quotes.dialogs.proposal-submit-with-warning.title",
message: "quotes.dialogs.proposal-submit-with-warning.message",
callback: function (ok) {
if (ok) {
blade.currentEntity.status = 'Proposal sent';
saveChanges();
}
}
}
};
dialogService.showConfirmationDialog(dialog);
};
dialogService.showWarningDialog(dialog);
}
else {
var dialog = {
id: "submitProposal",
title: "quotes.dialogs.proposal-submit.title",
message: "quotes.dialogs.proposal-submit.message",
callback: function (ok) {
if (ok) {
blade.currentEntity.status = 'Proposal sent';
saveChanges();
}
}
};
dialogService.showConfirmationDialog(dialog);
}
},
canExecuteMethod: function () {
return blade.origEntity && blade.origEntity.status !== 'Proposal sent';
Expand Down

0 comments on commit 90a4bb2

Please sign in to comment.