Finish Florapulia_OrdiniWebPlants_AggiuntaScontoCliente

This commit is contained in:
2024-02-15 16:56:30 +01:00
5 changed files with 77 additions and 10 deletions

View File

@@ -332,7 +332,7 @@ class OrdiniWebPlants {
$WdtbOrdt->set("codVage", self::getCodVageUtente()); $WdtbOrdt->set("codVage", self::getCodVageUtente());
} }
} }
} else {// UPDATE } else { // UPDATE
$WdtbOrdt->set("gestione", $ordine["key"]["gestione"]) $WdtbOrdt->set("gestione", $ordine["key"]["gestione"])
->setDate("dataOrd", $ordine["key"]["data_ord"]) ->setDate("dataOrd", $ordine["key"]["data_ord"])
->set("numOrd", $ordine["key"]["num_ord"]) ->set("numOrd", $ordine["key"]["num_ord"])
@@ -340,6 +340,12 @@ class OrdiniWebPlants {
->delete_then_insert(); ->delete_then_insert();
} }
$percScontoClie = self::getPercScontoClie();
if ($percScontoClie && User::is_cliente()) {
$WdtbOrdt->set("sconto1", $percScontoClie);
}
$WdtbOrdt->set("flagElaborato", $ordine["flag_complete"] ? self::getValoreFlagConfermato() : "I") $WdtbOrdt->set("flagElaborato", $ordine["flag_complete"] ? self::getValoreFlagConfermato() : "I")
->set("note", $ordine["note_ordine"], true) ->set("note", $ordine["note_ordine"], true)
->set("userName", User::get_current_username()) // sempre dell'ultimo utente che modifica ->set("userName", User::get_current_username()) // sempre dell'ultimo utente che modifica
@@ -359,13 +365,17 @@ class OrdiniWebPlants {
$WdtbOrdt->set("wdtbOrdr")->append($WdtbOrdr); $WdtbOrdt->set("wdtbOrdr")->append($WdtbOrdr);
} }
} }
$EntityList->push($WdtbOrdt); $EntityList->push($WdtbOrdt);
$ret = $EntityList->send(); $ret = $EntityList->send();
if ($ret->is_OK()) { if ($ret->is_OK()) {
if (is_null($ordine["key"])) { // NUOVO if (is_null($ordine["key"])) { // NUOVO
$retData = $ret->get_data(); $retData = $ret->get_data();
if (isset($retData[0]["entity"])) { if (isset($retData[0]["entity"])) {
$retEntity = $retData[0]["entity"]; $retEntity = $retData[0]["entity"];
$ordine["key"] = array( $ordine["key"] = array(
"gestione" => $retEntity["gestione"], "gestione" => $retEntity["gestione"],
"data_ord" => Utility\Date::strtotime($retEntity["dataOrd"], \Format::strtotimeDMYHMS), "data_ord" => Utility\Date::strtotime($retEntity["dataOrd"], \Format::strtotimeDMYHMS),
@@ -376,6 +386,42 @@ class OrdiniWebPlants {
$ret->error("Si è verificato un problema durante la lettura del salvataggio. Controllare la situazione della pagina degli ordini inseriti"); $ret->error("Si è verificato un problema durante la lettura del salvataggio. Controllare la situazione della pagina degli ordini inseriti");
} }
} }
// Commentato come da richiesta, non viene salvato più come riga ma direttamente come sconto1 nella testata
// $percScontoClie = self::getPercScontoClie();
//
// if ($percScontoClie) {
// $key = $ordine["key"];
// $query = new Query();
//
// $query->importSqlFile('getWdtbOrdt')
// ->setVar("gestione", $key["gestione"])
// ->setDateVar("dataOrd", $key["data_ord"])
// ->setVar("numOrd", $key["num_ord"])
// ->setVar("serie", $key["serie"]);
//
// $savedWdtbOrdt = $query->firstRow()->execute();
//
// $wdtbOrdt = new EntityItem("wdtb_ordt");
// $wdtbOrdt->no_op()
// ->set("gestione", $key["gestione"])
// ->setDate("dataOrd", $key["data_ord"])
// ->set("numOrd", $key["num_ord"])
// ->set("serie", $key["serie"]);
//
// $codMartScontoClie = self::getCodMartScontoClie();
//
// $scontoClie = $savedWdtbOrdt["netto_merce"] * ($percScontoClie / 100);
//
// $wdtbOrdr = new EntityItem("wdtb_ordr");
// $wdtbOrdr->insert()
// ->set("codMart", $codMartScontoClie)
// ->set("qtaOrd", -1)
// ->set("valUnt", $scontoClie);
//
// $wdtbOrdt->set("wdtbOrdr")->append($wdtbOrdr);
// $ret = $wdtbOrdt->send();
// }
} }
if ($ret->is_OK() && $ordine["flag_complete"]) { if ($ret->is_OK() && $ordine["flag_complete"]) {
@@ -393,6 +439,20 @@ class OrdiniWebPlants {
return $ret; return $ret;
} }
public static function getPercScontoClie() {
$gestSetup = new GestSetup;
$percScontoClie = $gestSetup->keySection("PERC_SCONTO_CLIE")->asInt()->get();
return $percScontoClie;
}
public static function getCodMartScontoClie() {
$gestSetup = new GestSetup;
$codMartScontoClie = $gestSetup->keySection("COD_MART_SCONTO_CLIE")->get();
return $codMartScontoClie;
}
public static function updateOrdine($data) { public static function updateOrdine($data) {
if (is_null($data["key"])) { if (is_null($data["key"])) {
$ret = self::writeUpdate($data); $ret = self::writeUpdate($data);
@@ -679,7 +739,6 @@ class OrdiniWebPlants {
public static function getPdf($data) { public static function getPdf($data) {
if (isset($data["key_ord"])) { if (isset($data["key_ord"])) {
return self::getPdfOrdine($data["key_ord"]); return self::getPdfOrdine($data["key_ord"]);
} else if (isset($data["key_doc"])) { } else if (isset($data["key_doc"])) {
return PdfDoc::cache($data["key_doc"]); return PdfDoc::cache($data["key_doc"]);
} }
@@ -691,6 +750,7 @@ class OrdiniWebPlants {
// <editor-fold desc="GENERAZIONE REPORT ORDINE" defaultstate="collapsed"> // <editor-fold desc="GENERAZIONE REPORT ORDINE" defaultstate="collapsed">
public static function getPdfOrdine($data) { public static function getPdfOrdine($data) {
$Ret = self::getJPOrdine(); $Ret = self::getJPOrdine();
if ($Ret->is_OK()) { if ($Ret->is_OK()) {
$JP = $Ret->get("JP"); $JP = $Ret->get("JP");
$JP->param("gestione", $data["gestione"]) $JP->param("gestione", $data["gestione"])

View File

@@ -639,16 +639,15 @@ const _ordiniWebPlants = {
if (qtaOrd > 0) { if (qtaOrd > 0) {
if (valUnt > 0) { if (valUnt > 0) {
arr_rows.push({ arr_rows.push({
cod_mart: $tr.getDataAttr("cod_mart"), cod_mart: $tr.attr("data-cod_mart"),
qta_ord: qtaOrd, qta_ord: qtaOrd,
val_unt: valUnt, val_unt: valUnt,
note_riga: $tr.find("input.noteRiga").getValue(), note_riga: $tr.find("input.noteRiga").getValue(),
qta_cnf: $tr.getFloatDataAttr("qta_cnf") qta_cnf: $tr.getFloatDataAttr("qta_cnf")
}); });
} else { } else {
modalBox.warning("Prezzo non valido per uno o più articoli").then(function () { modalBox.warning("Prezzo non valido per uno o più articoli").then(function () {
$("input.valUnt", $tr).select(); $("input.valUnt", $tr).trigger("select");
}); });
flagOk = false; flagOk = false;
return false; return false;
@@ -714,7 +713,6 @@ const _ordiniWebPlants = {
}; };
saveCallback(); saveCallback();
} else { } else {
modalBox.sm().warning("Non è stata specificata la quantità per alcun articolo"); modalBox.sm().warning("Non è stata specificata la quantità per alcun articolo");
} }

View File

@@ -45,12 +45,14 @@ $(function () {
$(".dl_pdfOrdine, [data-pdf_doc]").on("click", function (e) { $(".dl_pdfOrdine, [data-pdf_doc]").on("click", function (e) {
e.preventDefault(); e.preventDefault();
var $this = $(this), data; const $this = $(this)
var $tr = $this.closest("tr"); const $tr = $this.closest("tr");
let data;
if ($this.hasClass("dl_pdfOrdine")) { if ($this.hasClass("dl_pdfOrdine")) {
data = {key_ord: $tr.getDataAttr("order_key")}; data = {key_ord: $tr.attr("data-order_key")};
} else { } else {
data = {key_doc: $this.getDataAttr("pdf_doc")}; data = {key_doc: $this.attr("data-pdf_doc")};
} }
new Ajax() new Ajax()

View File

@@ -0,0 +1,6 @@
SELECT *
FROM wdtb_ordt
WHERE gestione = '[gestione]'
AND data_ord = '[dataOrd]'
AND num_ord = '[numOrd]'
AND serie = '[serie]'

View File

@@ -374,6 +374,7 @@ class PianoArrivi {
if ($Ret->is_OK()) { if ($Ret->is_OK()) {
if (is_null($key)) { if (is_null($key)) {
$result = $DtbOrdt->get_result(); $result = $DtbOrdt->get_result();
if (!is_null($result)) { if (!is_null($result)) {
$key = array( $key = array(
"gestione" => $result["gestione"], "gestione" => $result["gestione"],