[Piano Arrivi]
- Aggiunta colonna In Ritardo - Fix scaduti
This commit is contained in:
@@ -41,27 +41,35 @@ class PianoArrivi {
|
||||
$setup = new GestSetup();
|
||||
$exclusion = null;
|
||||
$excludedForn = $setup->keySection("EXCLUDED_COD_ATIP")->get();
|
||||
|
||||
if ($excludedForn) {
|
||||
$exclusion = implode("','", array_unique(explode(";", $excludedForn)));
|
||||
}
|
||||
$Query = new Query;
|
||||
$Query->importSqlFile("list-consegne")
|
||||
|
||||
$query = new Query;
|
||||
$query->importSqlFile("list-consegne")
|
||||
->setVar("user_name", User::get_current_username())
|
||||
->whereDate("ord.data_cons", $data["day"]);
|
||||
|
||||
if ($exclusion) {
|
||||
$Query->where("(cod_atip is null or cod_atip not in ('[exclusion]'))")->setVar("exclusion", $exclusion);
|
||||
$query->where("(cod_atip is null or cod_atip not in ('[exclusion]'))")->setVar("exclusion", $exclusion);
|
||||
}
|
||||
$Ret = $Query->toRet()->execute();
|
||||
if ($Ret->is_OK()) {
|
||||
$listConsegne = $Ret->get_data();
|
||||
|
||||
$ret = $query->toRet()->execute();
|
||||
|
||||
if ($ret->is_OK()) {
|
||||
$listConsegne = $ret->get_data();
|
||||
|
||||
foreach ($listConsegne as $i => $consegna) {
|
||||
$consegna = self::setFlags($consegna);
|
||||
$consegna["stato"] = \PianoArrivi\Stato::getInfo($consegna);
|
||||
$listConsegne[$i] = $consegna;
|
||||
}
|
||||
$Ret->set_data($listConsegne);
|
||||
|
||||
$ret->set_data($listConsegne);
|
||||
}
|
||||
return $Ret;
|
||||
|
||||
return $ret;
|
||||
}
|
||||
|
||||
public static function setFlags($item) {
|
||||
|
||||
@@ -41,8 +41,10 @@ class Stato {
|
||||
$flagInviato = $item["isInviato"];
|
||||
$flagRicevuto = $item["isRicevuto"];
|
||||
$flagEvaso = $item["isEvaso"];
|
||||
$flagScaduto = $item["is_scaduto"];
|
||||
$flagInserito = !$flagInviato && !$flagEvaso;
|
||||
return $item["is_scaduto"] ? self::SCADUTO : ($flagInserito ? self::INSERITO : ($flagEvaso ? self::EVASO : ($flagRicevuto ? self::RICEVUTO : self::INVIATO)));
|
||||
|
||||
return $flagScaduto ? self::SCADUTO : ($flagInserito ? self::INSERITO : ($flagEvaso ? self::EVASO : ($flagRicevuto ? self::RICEVUTO : self::INVIATO)));
|
||||
}
|
||||
|
||||
private static function getColorStyle($item) {
|
||||
|
||||
@@ -67,17 +67,19 @@ var _pianoArrivi = {
|
||||
|
||||
stato: {
|
||||
getCode: function (item) {
|
||||
var codes = [];
|
||||
const codes = [];
|
||||
|
||||
_.each(item.flagsRows, function (_flagsRow) {
|
||||
var isInserito = !_flagsRow.isInviato && !_flagsRow.isEvaso;
|
||||
codes.push(_.eq(parseInt(_flagsRow.is_scaduto), 1) ? 5 : isInserito ? 1 : (_flagsRow.isEvaso ? 4 : (_flagsRow.isRicevuto ? 3 : 2)));
|
||||
const isInserito = !_flagsRow.isInviato && !_flagsRow.isEvaso;
|
||||
codes.push(_flagsRow.is_scaduto ? 5 : isInserito ? 1 : (_flagsRow.isEvaso ? 4 : (_flagsRow.isRicevuto ? 3 : 2)));
|
||||
});
|
||||
|
||||
return _.uniq(codes);
|
||||
},
|
||||
|
||||
getInfo: function (item) {
|
||||
var self = this;
|
||||
var listStatiInfo = [];
|
||||
const self = this;
|
||||
const listStatiInfo = [];
|
||||
|
||||
_.each(self.getCode(item), function (_code) {
|
||||
listStatiInfo.push(_.find(self.getItems(), function (x) {
|
||||
|
||||
@@ -30,8 +30,7 @@ _pianoArrivi.plannerUtils = {
|
||||
.data({day: day})
|
||||
.noticeAsToast()
|
||||
.onSuccess(function (ret) {
|
||||
|
||||
var items = Enumerable.From(ret.returnData)
|
||||
const items = Enumerable.From(ret.returnData)
|
||||
.Where(function (x) {
|
||||
return x.flag_evaso !== "A";
|
||||
})
|
||||
@@ -43,8 +42,8 @@ _pianoArrivi.plannerUtils = {
|
||||
})
|
||||
.ToArray();
|
||||
|
||||
for (var i = 0; i < items.length; i++) {
|
||||
var item = items[i];
|
||||
for (let i = 0; i < items.length; i++) {
|
||||
let item = items[i];
|
||||
|
||||
var rows = Enumerable.From(ret.returnData)
|
||||
.Where(function (x) {
|
||||
@@ -72,7 +71,7 @@ _pianoArrivi.plannerUtils = {
|
||||
return x.isInserito;
|
||||
}).Count() > 0;
|
||||
item.isScaduto = Enumerable.From(rows).Where(function (x) {
|
||||
return _.eq(parseInt(x.is_scaduto), 1);
|
||||
return x.is_scaduto;
|
||||
}).Count() > 0;
|
||||
|
||||
item.flagsRows = _.map(rows, function (x) {
|
||||
|
||||
@@ -6,16 +6,17 @@ _pianoArrivi.planner = {
|
||||
$planner: null,
|
||||
|
||||
init: function () {
|
||||
var self = this;
|
||||
const self = this;
|
||||
|
||||
_pianoArrivi.loadModule("planner").done(function () {
|
||||
$("#container").enableAll();
|
||||
_APP.stayinAlive.start();
|
||||
|
||||
self.$planner = $("[data-planner='weekly']");
|
||||
var wpOptions = {
|
||||
const wpOptions = {
|
||||
$selector: $("#weeklyPlannerSelector"),
|
||||
noWorkingWeekDay: 7,
|
||||
vediColonnaScaduti: true,
|
||||
queryStringParameter: "d",
|
||||
onChange: function () {
|
||||
self.refreshItems();
|
||||
@@ -82,12 +83,13 @@ _pianoArrivi.planner = {
|
||||
},
|
||||
|
||||
refreshItems: function () {
|
||||
var self = this;
|
||||
const self = this;
|
||||
|
||||
self.$planner.weekPlanner("cleanDaysItems");
|
||||
self.$planner.weekPlanner("resetHeight");
|
||||
|
||||
var limitDays = self.getLimitDaysCurrentView();
|
||||
const limitDays = self.getLimitDaysCurrentView();
|
||||
|
||||
_pianoArrivi.plannerUtils.getGiorniUtiliPlanner(limitDays).done(function (days) {
|
||||
self.refreshOrdiniGiorni(days).then(function () {
|
||||
self.$planner.weekPlanner("refreshHeight");
|
||||
@@ -96,18 +98,20 @@ _pianoArrivi.planner = {
|
||||
},
|
||||
|
||||
loadAttivitaGiorno: function (day) {
|
||||
var self = this;
|
||||
const self = this;
|
||||
|
||||
return _pianoArrivi.plannerUtils.loadConsegneGiorno(day, function (listConsegne) {
|
||||
self.buildConsegneGiorno(day, listConsegne);
|
||||
});
|
||||
},
|
||||
|
||||
buildConsegneGiorno: function (day, listConsegne) {
|
||||
var self = this;
|
||||
const self = this;
|
||||
|
||||
self.$planner.weekPlanner("cleanDayItems", day);
|
||||
console.log(listConsegne);
|
||||
if (listConsegne.length > 0) {
|
||||
for (var i = 0; i < listConsegne.length; i++) {
|
||||
for (let i = 0; i < listConsegne.length; i++) {
|
||||
self._appendConsegnaPlanner(listConsegne[i]);
|
||||
}
|
||||
}
|
||||
@@ -139,9 +143,15 @@ _pianoArrivi.planner = {
|
||||
},
|
||||
|
||||
_appendConsegnaPlanner: function (consegna) {
|
||||
var self = this;
|
||||
var $plannerItem = _pianoArrivi.plannerUtils.buildItem(consegna);
|
||||
self.$planner.weekPlanner("appendItem", startOfDay(consegna.data_cons), $plannerItem);
|
||||
const self = this;
|
||||
const $plannerItem = _pianoArrivi.plannerUtils.buildItem(consegna);
|
||||
|
||||
if (consegna.isScaduto) {
|
||||
self.$planner.weekPlanner("appendItem", null, $plannerItem);
|
||||
} else {
|
||||
self.$planner.weekPlanner("appendItem", startOfDay(consegna.data_cons), $plannerItem);
|
||||
}
|
||||
|
||||
if (_pianoArrivi.plannerUtils.isConsegnaEditabile(consegna) && _pianoArrivi.getAbilitazioni("gestioneAcquisti")) {
|
||||
self.$planner.weekPlanner("makeDraggable", $plannerItem);
|
||||
}
|
||||
|
||||
@@ -1,68 +1,63 @@
|
||||
SELECT *
|
||||
FROM (
|
||||
SELECT dtb_ordt.gestione,
|
||||
dtb_ordt.data_ord,
|
||||
dtb_ordt.num_ord,
|
||||
dtb_ordr.riga_ord,
|
||||
dtb_ordt.cod_anag,
|
||||
dtb_ordt.data_ricezione,
|
||||
dtb_ordr.flag_evaso,
|
||||
dtb_ordr.flag_evaso_forzato,
|
||||
dtb_ordr.cod_mart,
|
||||
dtb_ordr.qta_evasa,
|
||||
dtb_ordr.qta_ord,
|
||||
dtb_ordr.unt_ord,
|
||||
dtb_ordr.descrizione_estesa AS descr_articolo,
|
||||
CAST(CASE
|
||||
WHEN dtb_ordr.flag_evaso = 'I' AND dtb_ordr.qta_evasa = 0 AND
|
||||
DATEDIFF(DAY, dtb_ordr.data_cons, GETDATE()) > 0 AND
|
||||
DATEDIFF(WEEK, dtb_ordr.data_cons, GETDATE()) > 0 THEN 1
|
||||
ELSE 0 END AS BIT) AS is_scaduto,
|
||||
CAST(CAST(CASE
|
||||
WHEN dtb_ordr.flag_evaso = 'I' AND dtb_ordr.qta_evasa = 0 AND
|
||||
DATEDIFF(DAY, dtb_ordr.data_cons, GETDATE()) > 0 AND
|
||||
DATEDIFF(WEEK, dtb_ordr.data_cons, GETDATE()) > 0
|
||||
THEN dbo.f_getFirstDayOfWeek(GETDATE())
|
||||
ELSE dtb_ordr.data_cons END AS DATE) AS DATETIME) AS data_cons,
|
||||
mtb_unt_mis.flag_dig,
|
||||
gtb_anag.rag_soc AS rag_soc_fornitore,
|
||||
(
|
||||
SELECT TOP 1 dtb_ord_pdf.data_stampa
|
||||
FROM dtb_ord_pdf
|
||||
WHERE data_stampa IS NOT NULL
|
||||
AND filecontent IS NOT NULL
|
||||
AND mail_dest_invio IS NOT NULL
|
||||
AND dtb_ord_pdf.gestione = dtb_ordt.gestione
|
||||
AND dtb_ord_pdf.data_ord = dtb_ordt.data_ord
|
||||
AND dtb_ord_pdf.num_ord = dtb_ordt.num_ord
|
||||
ORDER BY versione DESC
|
||||
) AS data_esportazione,
|
||||
atb_forn.cod_atip
|
||||
FROM dtb_ordt
|
||||
INNER JOIN dtb_ordr ON dtb_ordt.gestione = dtb_ordr.gestione AND
|
||||
dtb_ordt.data_ord = dtb_ordr.data_ord AND
|
||||
dtb_ordt.num_ord = dtb_ordr.num_ord
|
||||
INNER JOIN mtb_aart ON dtb_ordr.cod_mart = mtb_aart.cod_mart
|
||||
INNER JOIN mtb_grup ON mtb_aart.cod_mgrp = mtb_grup.cod_mgrp
|
||||
LEFT OUTER JOIN mtb_unt_mis ON dtb_ordr.unt_ord = mtb_unt_mis.unt_mis
|
||||
LEFT OUTER JOIN gtb_anag ON dtb_ordt.cod_anag = gtb_anag.cod_anag
|
||||
LEFT OUTER JOIN atb_forn ON gtb_anag.cod_anag = atb_forn.cod_anag
|
||||
WHERE dtb_ordt.gestione = 'A'
|
||||
AND dtb_ordt.flag_annulla = 'N'
|
||||
AND dtb_ordr.data_cons IS NOT NULL
|
||||
AND dtb_ordt.data_ord_rif IS NULL
|
||||
AND dtb_ordt.cod_mdep IN (SELECT cod_mdep
|
||||
FROM mtb_depo
|
||||
WHERE (dbo.getGestSetup('PVM', 'PIANO_ARRIVI', 'FLAG_ALTRI_DEPOSITI') = 'S' OR
|
||||
(dbo.getGestSetup('PVM', 'PIANO_ARRIVI', 'FLAG_ALTRI_DEPOSITI') = 'N' AND
|
||||
mtb_depo.cod_anag IN (SELECT gtb_anag.cod_anag
|
||||
FROM gtb_anag
|
||||
INNER JOIN azienda ON gtb_anag.part_iva = azienda.part_iva)))
|
||||
)
|
||||
AND (mtb_aart.cod_mgrp IN (SELECT value_string
|
||||
FROM dbo.ParseStringIntoArray(
|
||||
(SELECT [dbo].[getGestSetupUser]('[user_name]', 'PVM ', 'PIANO_ARRIVI',
|
||||
'FILTRO_GRP_MERC')), '|'))
|
||||
OR [dbo].[getGestSetupUser]('[user_name]', 'PVM ', 'PIANO_ARRIVI', 'FILTRO_GRP_MERC') IS NULL)
|
||||
) ord
|
||||
FROM (SELECT dtb_ordt.gestione,
|
||||
dtb_ordt.data_ord,
|
||||
dtb_ordt.num_ord,
|
||||
dtb_ordr.riga_ord,
|
||||
dtb_ordt.cod_anag,
|
||||
dtb_ordt.data_ricezione,
|
||||
dtb_ordr.flag_evaso,
|
||||
dtb_ordr.flag_evaso_forzato,
|
||||
dtb_ordr.cod_mart,
|
||||
dtb_ordr.qta_evasa,
|
||||
dtb_ordr.qta_ord,
|
||||
dtb_ordr.unt_ord,
|
||||
dtb_ordr.descrizione_estesa AS descr_articolo,
|
||||
CAST(CASE
|
||||
WHEN dtb_ordr.flag_evaso = 'I' AND dtb_ordr.qta_evasa = 0 AND
|
||||
DATEDIFF(DAY, dtb_ordr.data_cons, GETDATE()) > 0 AND
|
||||
DATEDIFF(WEEK, dtb_ordr.data_cons, GETDATE()) > 0 THEN 1
|
||||
ELSE 0 END AS BIT) AS is_scaduto,
|
||||
CAST(CAST(CASE
|
||||
WHEN dtb_ordr.flag_evaso = 'I' AND dtb_ordr.qta_evasa = 0 AND
|
||||
DATEDIFF(DAY, dtb_ordr.data_cons, GETDATE()) > 0 AND
|
||||
DATEDIFF(WEEK, dtb_ordr.data_cons, GETDATE()) > 0
|
||||
THEN dbo.f_getFirstDayOfWeek(GETDATE())
|
||||
ELSE dtb_ordr.data_cons END AS DATE) AS DATETIME) AS data_cons,
|
||||
mtb_unt_mis.flag_dig,
|
||||
gtb_anag.rag_soc AS rag_soc_fornitore,
|
||||
(SELECT TOP 1 dtb_ord_pdf.data_stampa
|
||||
FROM dtb_ord_pdf
|
||||
WHERE data_stampa IS NOT NULL
|
||||
AND filecontent IS NOT NULL
|
||||
AND mail_dest_invio IS NOT NULL
|
||||
AND dtb_ord_pdf.gestione = dtb_ordt.gestione
|
||||
AND dtb_ord_pdf.data_ord = dtb_ordt.data_ord
|
||||
AND dtb_ord_pdf.num_ord = dtb_ordt.num_ord
|
||||
ORDER BY versione DESC) AS data_esportazione,
|
||||
atb_forn.cod_atip
|
||||
FROM dtb_ordt
|
||||
INNER JOIN dtb_ordr ON dtb_ordt.gestione = dtb_ordr.gestione AND
|
||||
dtb_ordt.data_ord = dtb_ordr.data_ord AND
|
||||
dtb_ordt.num_ord = dtb_ordr.num_ord
|
||||
INNER JOIN mtb_aart ON dtb_ordr.cod_mart = mtb_aart.cod_mart
|
||||
INNER JOIN mtb_grup ON mtb_aart.cod_mgrp = mtb_grup.cod_mgrp
|
||||
LEFT OUTER JOIN mtb_unt_mis ON dtb_ordr.unt_ord = mtb_unt_mis.unt_mis
|
||||
LEFT OUTER JOIN gtb_anag ON dtb_ordt.cod_anag = gtb_anag.cod_anag
|
||||
LEFT OUTER JOIN atb_forn ON gtb_anag.cod_anag = atb_forn.cod_anag
|
||||
WHERE dtb_ordt.gestione = 'A'
|
||||
AND dtb_ordt.flag_annulla = 'N'
|
||||
AND dtb_ordr.data_cons IS NOT NULL
|
||||
AND dtb_ordt.data_ord_rif IS NULL
|
||||
AND dtb_ordt.cod_mdep IN (SELECT cod_mdep
|
||||
FROM mtb_depo
|
||||
WHERE (dbo.getGestSetup('PVM', 'PIANO_ARRIVI', 'FLAG_ALTRI_DEPOSITI') = 'S' OR
|
||||
(dbo.getGestSetup('PVM', 'PIANO_ARRIVI', 'FLAG_ALTRI_DEPOSITI') = 'N' AND
|
||||
mtb_depo.cod_anag IN (SELECT gtb_anag.cod_anag
|
||||
FROM gtb_anag
|
||||
INNER JOIN azienda ON gtb_anag.part_iva = azienda.part_iva))))
|
||||
AND (mtb_aart.cod_mgrp IN (SELECT value_string
|
||||
FROM dbo.ParseStringIntoArray(
|
||||
(SELECT [dbo].[getGestSetupUser]('[user_name]', 'PVM ', 'PIANO_ARRIVI',
|
||||
'FILTRO_GRP_MERC')), '|'))
|
||||
OR [dbo].[getGestSetupUser]('[user_name]', 'PVM ', 'PIANO_ARRIVI', 'FILTRO_GRP_MERC') IS NULL)) ord
|
||||
WHERE 1 = 1
|
||||
@@ -10,20 +10,23 @@ $.widget("nmk.weekPlanner", {
|
||||
onItemDrag: null,
|
||||
limitDroppables: null,
|
||||
onTitleClick: null,
|
||||
onDayTaphold: null
|
||||
onDayTaphold: null,
|
||||
vediColonnaScaduti: false
|
||||
},
|
||||
|
||||
_startWeekDate: null,
|
||||
|
||||
_create: function () {
|
||||
var self = this;
|
||||
const self = this;
|
||||
|
||||
self.setStartDate(self._getInitDay(), false)
|
||||
._build();
|
||||
},
|
||||
|
||||
_getInitDay: function () {
|
||||
var self = this;
|
||||
var options = self.options;
|
||||
const self = this;
|
||||
const options = self.options;
|
||||
|
||||
if (!is_null(options.initDay) && is_numeric(options.initDay)) {
|
||||
return startOfDay(options.initDay);
|
||||
|
||||
@@ -35,22 +38,24 @@ $.widget("nmk.weekPlanner", {
|
||||
},
|
||||
|
||||
_getQueryStringDay: function () {
|
||||
var self = this;
|
||||
var options = self.options;
|
||||
const self = this;
|
||||
const options = self.options;
|
||||
|
||||
if (!is_null(options.queryStringParameter) && isset_urlParameter(options.queryStringParameter)) {
|
||||
var day = get_urlParameter(options.queryStringParameter);
|
||||
if (is_numeric(day)) {
|
||||
return startOfDay(+day);
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
},
|
||||
|
||||
_prevNext: function (prevOrNext) {
|
||||
var self = this;
|
||||
const self = this;
|
||||
const mStartDay = moment.unix(self._startWeekDate);
|
||||
|
||||
var mStartDay = moment.unix(self._startWeekDate);
|
||||
mStartDay.add(1 * (prevOrNext == "prev" ? -1 : 1), "weeks");
|
||||
mStartDay.add(1 * (prevOrNext === "prev" ? -1 : 1), "weeks");
|
||||
|
||||
self.setStartDate(mStartDay.unix(), true)
|
||||
._refreshSelector()
|
||||
@@ -58,10 +63,10 @@ $.widget("nmk.weekPlanner", {
|
||||
},
|
||||
|
||||
_buildSelector: function () {
|
||||
var self = this;
|
||||
var btnSize = self.options.selectorBtnSize;
|
||||
const self = this;
|
||||
const btnSize = self.options.selectorBtnSize;
|
||||
|
||||
var $h = $("<div>", {class: "input-group"})
|
||||
const $h = $("<div>", {class: "input-group"})
|
||||
.append(" <div class='input-group-btn'>\n\
|
||||
<button type='button' class='btn btn-default btn-block btn-" + btnSize + " prev'>\n\
|
||||
<i class='fa fa-angle-left'></i>\n\
|
||||
@@ -74,7 +79,8 @@ $.widget("nmk.weekPlanner", {
|
||||
</button>\n\
|
||||
</div>");
|
||||
|
||||
var $date = $h.find("input[type='text']");
|
||||
const $date = $h.find("input[type='text']");
|
||||
|
||||
$date.datepicker({
|
||||
dateFormat: "dd/mm/yy",
|
||||
firstDay: self.options.firstIsoWeekDay,
|
||||
@@ -82,7 +88,7 @@ $.widget("nmk.weekPlanner", {
|
||||
selectOtherMonths: true,
|
||||
numberOfMonths: 2,
|
||||
changeMonth: true,
|
||||
showWeek: self.options.firstIsoWeekDay == 1,
|
||||
showWeek: self.options.firstIsoWeekDay === 1,
|
||||
changeYear: true,
|
||||
beforeShow: function () {
|
||||
setTimeout(function () {
|
||||
@@ -134,7 +140,7 @@ $.widget("nmk.weekPlanner", {
|
||||
$this.on("swiperight", function(){
|
||||
self._prevNext("prev");
|
||||
});
|
||||
|
||||
|
||||
$this.on("swipeleft", function(){
|
||||
self._prevNext("next");
|
||||
});*/
|
||||
@@ -204,21 +210,19 @@ $.widget("nmk.weekPlanner", {
|
||||
},
|
||||
|
||||
_buildPlannerDay: function (day) {
|
||||
var self = this;
|
||||
var options = self.options;
|
||||
const self = this;
|
||||
const options = self.options;
|
||||
let noWorkingWeekDay = self.options.noWorkingWeekDay;
|
||||
|
||||
var noWorkingWeekDay = self.options.noWorkingWeekDay;
|
||||
if (is_null(noWorkingWeekDay)) {
|
||||
noWorkingWeekDay = [];
|
||||
} else if (!is_array(noWorkingWeekDay)) {
|
||||
noWorkingWeekDay = [noWorkingWeekDay];
|
||||
}
|
||||
|
||||
var isNotWorking = noWorkingWeekDay.indexOf(getIsoDayOfWeek(day)) >= 0;
|
||||
|
||||
var $col = $("<div>", {class: "col p-0", style: "overflow-x: hidden;"});
|
||||
|
||||
var $panel =
|
||||
const isNotWorking = noWorkingWeekDay.indexOf(getIsoDayOfWeek(day)) >= 0;
|
||||
const $col = $("<div>", {class: "col p-0", style: "overflow-x: hidden;"});
|
||||
const $panel =
|
||||
$("<div>", {class: "panel panel-sm panel-default no-border-radius-top no-border-radius-bottom"})
|
||||
.append($("<div>", {class: "panel-heading text-center"})
|
||||
.append(
|
||||
@@ -248,21 +252,49 @@ $.widget("nmk.weekPlanner", {
|
||||
return $col.append($panel);
|
||||
},
|
||||
|
||||
_buildPlannerPreviousDays: function () {
|
||||
const self = this;
|
||||
const $col = $("<div>", {class: "col p-0", style: "overflow-x: hidden;"});
|
||||
const $panel =
|
||||
$("<div>", {class: "panel panel-sm panel-default no-border-radius-top no-border-radius-bottom"})
|
||||
.append($("<div>", {class: "panel-heading text-center"})
|
||||
.append(
|
||||
$("<span>", {
|
||||
class: "small ",
|
||||
html: "<span class='hidden-xs hidden-sm'>In Ritardo</span>" + "<span class='visible-xs visible-sm'>In Ritardo</span>"
|
||||
})
|
||||
)
|
||||
.append($("<div>", {class: "icon-holder pull-right"}))
|
||||
)
|
||||
.append($("<div>", {
|
||||
"data-day": "no",
|
||||
class: "px-2 py-2 scaduti",
|
||||
css: {minHeight: "80vh"}
|
||||
}));
|
||||
|
||||
return $col.append($panel);
|
||||
},
|
||||
|
||||
_buildPlanner: function () {
|
||||
var self = this;
|
||||
var $this = self.element;
|
||||
const self = this;
|
||||
const $this = self.element;
|
||||
const $content = $this.find(".planner-content");
|
||||
const $weekContainer = $this.find(".week-container");
|
||||
|
||||
var $content = $this.find(".planner-content");
|
||||
$content.html("");
|
||||
|
||||
var $weekContainer = $this.find(".week-container");
|
||||
$weekContainer.html("");
|
||||
var isoWeeks = [], days = self.getWeekDates();
|
||||
for (var i = 0; i < days.length; i++) {
|
||||
var day = days[i];
|
||||
|
||||
var dayWeek = moment(day * 1000).isoWeek();
|
||||
var search = _.find(isoWeeks, {isoWeek: dayWeek});
|
||||
const isoWeeks = [], days = self.getWeekDates();
|
||||
|
||||
if (self.options.vediColonnaScaduti) {
|
||||
$content.append(self._buildPlannerPreviousDays());
|
||||
}
|
||||
|
||||
for (let i = 0; i < days.length; i++) {
|
||||
const day = days[i];
|
||||
const dayWeek = moment(day * 1000).isoWeek();
|
||||
const search = _.find(isoWeeks, {isoWeek: dayWeek});
|
||||
|
||||
if (_.isNil(search)) {
|
||||
isoWeeks.push({isoWeek: dayWeek, count: 1});
|
||||
} else {
|
||||
@@ -272,8 +304,10 @@ $.widget("nmk.weekPlanner", {
|
||||
$content.append(self._buildPlannerDay(day));
|
||||
}
|
||||
|
||||
console.log(isoWeeks);
|
||||
|
||||
_.each(isoWeeks, function (week) {
|
||||
var $week = $("<div class='week text-center panel-heading'><b>Settimana " + week.isoWeek + "</b></div>")
|
||||
const $week = $("<div class='week text-center panel-heading'><b>Settimana " + week.isoWeek + "</b></div>")
|
||||
$week.css("width", "calc(100% / " + days.length + " * " + week.count + ")");
|
||||
$weekContainer.append($week);
|
||||
});
|
||||
@@ -284,9 +318,9 @@ $.widget("nmk.weekPlanner", {
|
||||
},
|
||||
|
||||
_initDroppables: function () {
|
||||
var self = this;
|
||||
var $this = self.element;
|
||||
var options = self.options;
|
||||
const self = this;
|
||||
const $this = self.element;
|
||||
const options = self.options;
|
||||
|
||||
self.getDaysCells().on("dragenter dragover", function (e) {
|
||||
e.preventDefault();
|
||||
@@ -296,7 +330,7 @@ $.widget("nmk.weekPlanner", {
|
||||
var $dayTo = $(this);
|
||||
var to = $dayTo.getDataAttr("day");
|
||||
var from = e.originalEvent.dataTransfer.getData("day-from");
|
||||
if (from != to && (is_null(options.limitDroppables) || (is_function(options.limitDroppables) && options.limitDroppables(to)))) {
|
||||
if (from !== to && (is_null(options.limitDroppables) || (is_function(options.limitDroppables) && options.limitDroppables(to)))) {
|
||||
|
||||
var plannerItemId = e.originalEvent.dataTransfer.getData("bc-planner_item");
|
||||
var $de = $this.find(".planner-content [data-bc-planner_item='" + plannerItemId + "']");
|
||||
@@ -384,7 +418,15 @@ $.widget("nmk.weekPlanner", {
|
||||
},
|
||||
|
||||
getDayContent: function (day) {
|
||||
return this.element.find(".planner-content > .col > .panel > [data-day='" + startOfDay(day) + "']");
|
||||
let content;
|
||||
|
||||
if (day) {
|
||||
content = this.element.find(".planner-content > .col > .panel > [data-day='" + startOfDay(day) + "']")
|
||||
} else {
|
||||
content = this.element.find(".planner-content > .col > .panel > .scaduti")
|
||||
}
|
||||
|
||||
return content;
|
||||
},
|
||||
|
||||
enable_dayColumn: function (day, v) {
|
||||
@@ -410,8 +452,9 @@ $.widget("nmk.weekPlanner", {
|
||||
},
|
||||
|
||||
appendItem: function (day, $item) {
|
||||
var self = this;
|
||||
var $subItems = $item.find("[data-key]");
|
||||
const self = this;
|
||||
const $subItems = $item.find("[data-key]");
|
||||
|
||||
if ($subItems.length > 0) {
|
||||
_.forEach($subItems, function (subItem) {
|
||||
$(subItem).attr("data-bc-planner_item", self._calcItemId());
|
||||
@@ -419,7 +462,9 @@ $.widget("nmk.weekPlanner", {
|
||||
} else {
|
||||
$item.attr("data-bc-planner_item", self._calcItemId());
|
||||
}
|
||||
|
||||
self.getDayContent(day).append($item);
|
||||
|
||||
return this;
|
||||
},
|
||||
|
||||
@@ -460,12 +505,15 @@ $.widget("nmk.weekPlanner", {
|
||||
},
|
||||
|
||||
refreshHeight: function () {
|
||||
var self = this;
|
||||
const self = this;
|
||||
|
||||
self.resetHeight();
|
||||
|
||||
var maxDayHeight = 0;
|
||||
let maxDayHeight = 0;
|
||||
|
||||
self.getDaysCells().each(function () {
|
||||
var dayHeight = $(this).height();
|
||||
const dayHeight = $(this).height();
|
||||
|
||||
if (dayHeight > maxDayHeight) {
|
||||
maxDayHeight = dayHeight;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user