{% include 'App/Kanban/Approvisionnement/_js/kanban_graph.js.twig' %} kbId = {{ kanban.id }} console.log(kbId); const arrayId = [] arrayId.push(kbId) $('#valid_cmj_update').click(function(e) { url = '{{ url("app_update_maj_cmj") }}'; $.ajax({ url: url, method: "POST", data: { token : "{{ csrf_token('app_update_maj_cmj') }}", data: arrayId }, success: function (response) { document.getElementById("valid_cmj_update").style.visibility = "hidden"; if (response.hasOwnProperty('result')){ if (response.result){ let url = "{{ url('app_kanban_board_redirect_to_kanban_type', {'kanbanid': '__00__'}) }}"; window.location = url.replace('__00__', kbId); } } }, error: function () { console.log("error") } }) }); nbJours = {{ kanban.familleCmj.nbJours }}; consoPeriode = {{ kanban.consoPeriode }} activeCmjQuantity = {{ kanban.activeCmjQuantity }}; cmj_calc = {{ kanban.cmj }}; if ((nbJours == null) ? "0" : parseFloat(Math.abs(((activeCmjQuantity / nbJours * 100) / cmj_calc - 100)), 2, ',', '') > 20) { document.getElementById("activeCmj").style.color = "red"; document.getElementById("valid_cmj_update").style.visibility = "visible"; } console.log(parseFloat(Math.abs(((activeCmjQuantity / nbJours * 100) / cmj_calc - 100)), 2, ',', '')); let input_valeur_kaban = $('#edit_prog_kanban_appro_valeurKanban'), input_ta1 = $('#edit_prog_kanban_appro_delai1'), input_ta2 = $('#edit_prog_kanban_appro_delai2'), input_appro_mini = $('#edit_prog_kanban_appro_approMini'), input_sm_valeur = $('#edit_prog_kanban_appro_stockMiniValeur'), input_kanban_decide = $('#edit_prog_kanban_appro_nombreKanbanDecide'), input_kanban_ecart = $('#edit_prog_kanban_appro_ecart'), input_cost = $('#edit_prog_kanban_appro_prix'), input_conso = $('#edit_prog_kanban_appro_consoPeriode'), input_period = $('#edit_prog_kanban_appro_nombreJoursPeriode'), input_le_kb = $('#edit_prog_kanban_appro_leKanban'), input_kanban_calc = $('#edit_prog_kanban_appro_nombreKanbanTotal'), input_section_four_printer = $('#edit_prog_kanban_appro_sectionFournisseurPrinter'), input_printed_on_sticker = $('#edit_prog_kanban_appro_isPrintedOnSticker'), input_is_kanban_elec = $('#edit_prog_kanban_appro_isKanbanElectronique'), form_prog = $('#form_prog'), span_cmj = $('#cmj'), stock_table = $('#stock_table'), stock_table_body = $('#stock_table tbody'), btn_submit = $('#submit_form_prog'), data_has_change = false; ; let translators = { 'mini': "{{ 'kanban.stock_table.mini'|trans }}", 'avg': "{{ 'kanban.stock_table.avg'|trans }}", 'maxi': "{{ 'kanban.stock_table.maxi'|trans }}", 'ta_sm': "{{ 'kanban.stock_table.ta_sm'|trans }}" }; $('#edit_prog_kanban_appro_stockMiniBase input[type="radio"]').click(function () { let current_label_input = $('#stockMiniValeur_input_group_label'), obj_translator = { day: "{{ 'kanban.tab.general.select.stock_mini.days'|trans }}", ta: "{{ 'kanban.tab.general.select.stock_mini.percent'|trans }}", ue: "{{ 'kanban.tab.general.select.stock_mini.unit'|trans }}" }, value = $(this).val() if (value === 'day') $(current_label_input).html(obj_translator.day); if (value === 'ta') $(current_label_input).html(obj_translator.ta); if (value === 'ue') $(current_label_input).html(obj_translator.ue); }); $('#form_prog input').change(function () { refresh_display(); $(btn_submit).removeAttr('disabled'); data_has_change = true; }); $('#edit_prog_kanban_appro_fournisseur').change(function () { refresh_display(); $(btn_submit).removeAttr('disabled'); data_has_change = true; }); $('#edit_prog_kanban_appro_familleCmj').change(function () { refresh_display(); $(btn_submit).removeAttr('disabled'); data_has_change = true; }); $('#edit_prog_kanban_appro_sectionFournisseurPrinter').change(function () { refresh_display(); $(btn_submit).removeAttr('disabled'); data_has_change = true; }) $('#select_val_sm').change(function () { let value = $(this).val(); if (value == "ue") { $("#edit_prog_kanban_appro_stockMiniBase_0").prop("checked", true); } else if (value == "percent") { $("#edit_prog_kanban_appro_stockMiniBase_1").prop("checked", true); } else if (value == "days") { $("#edit_prog_kanban_appro_stockMiniBase_2").prop("checked", true); } refresh_display(); $(btn_submit).removeAttr('disabled'); data_has_change = true; }); $('#edit_prog_kanban_appro_manager').change(function () { refresh_display(); $(btn_submit).removeAttr('disabled'); data_has_change = true; }); let form_parsley = $(form_prog).parsley(parsley_options); //form_parsley.validate(); $(btn_submit).click(function () { if (data_has_change) { form_parsley.validate(); form_parsley .whenValid() .then(function () { $(btn_submit).html(btn_spin); $(form_prog).submit(); }); } }); function refresh_display() { let cmj = 0, kb_val = 0, appro_mini = 0, ta_total = 0, le_ue = 0, le_day = 0, le_kb = 0, sm_value = 0, sm_base = $("input:radio[name='edit_prog_kanban_appro[stockMiniBase]']:checked").val(), sm_day = 0, sm_ue = 0, sm_ta = 0, kb_start = $("input:radio[name='edit_prog_kanban_appro[renvoiEtiquetteDebut]']:checked").val(), kb_nb_calc = 0, kb_nb_decide = 0; cmj = parseFloat({{ (kanban.consoPeriode / kanban.familleCmj.nbJours)|number_format(2,'.','') }}); if ($(input_conso).val()) { let conso = parseFloat($(input_conso).val().replace(',', '.')); let period = 1; if ($(input_period).val()) { period = parseFloat($(input_period).val().replace(',', '.')); } else $(input_period).val(1); d_cmj = new Decimal(conso).dividedBy(period); cmj = d_cmj.valueOf(); } $(span_cmj).html(Math.round10(cmj, -4)); {# calcul #} if ($(input_ta1).val()) ta_total = ta_total + parseInt($(input_ta1).val()); if ($(input_ta2).val()) ta_total = ta_total + parseInt($(input_ta2).val()); if (ta_total === 0) ta_total = 1; if ($(input_valeur_kaban).val() && $(input_appro_mini).val()) { kb_val = parseInt($(input_valeur_kaban).val()); appro_mini = parseInt($(input_appro_mini).val()); le_ue = parseFloat(Math.ceil(appro_mini / kb_val) * kb_val); if (le_ue > 0) { d_le_ue = new Decimal(le_ue); le_kb = parseFloat(d_le_ue.dividedBy(kb_val).valueOf()); $(input_le_kb).val(le_kb); // $(span_le_kb).html(Math.round10(le_kb, -2) + ' {{ "kb"|trans }}'); if (cmj > 0) { le_day = Math.round10(parseFloat(d_le_ue.dividedBy(cmj).valueOf()), -2); // $(span_le_day).html(Math.round10(le_day, -2) + ' {{ "days"|trans|capitalize }}'); } } } if ($(input_sm_valeur).val()) { sm_value = parseFloat($(input_sm_valeur).val().replace(',', '.')); if (sm_value && sm_base === 'ta' && ta_total) { sm_percent = new Decimal(sm_value / 100); sm_ta = sm_value; d_sm_day = sm_percent.times(ta_total); sm_day = parseFloat(d_sm_day.valueOf()); if (d_sm_day && cmj) { d_sm_ue = d_sm_day.times(cmj); sm_ue = parseFloat(d_sm_ue.valueOf()); } } else if (sm_value && sm_base === 'ue' && cmj) { sm_ue = sm_value; d_sm_day = new Decimal(sm_value).dividedBy(cmj); sm_day = parseFloat(d_sm_day.valueOf()); if (ta_total) { d_sm_ta = d_sm_day.dividedBy(ta_total).times(100); sm_ta = parseFloat(d_sm_ta.valueOf()); } } else if (sm_value && sm_base === 'day' && ta_total) { sm_day = sm_value; d_sm_ta = new Decimal(sm_value).dividedBy(ta_total); sm_ta = parseFloat(d_sm_ta.times(100).valueOf()); if (cmj) { d_sm_ue = new Decimal(sm_value).times(cmj); sm_ue = parseFloat(d_sm_ue.valueOf()); } } } if (le_day > 0 && kb_val > 0 && ta_total > 0 && cmj > 0) { d_kb_calc = new Decimal(sm_day).plus(le_day).plus(ta_total).times(cmj).dividedBy(kb_val); if (kb_start !== 'undefined') { d_kb_calc = d_kb_calc.minus(parseInt(kb_start)); } kb_nb_calc = d_kb_calc.valueOf(); if (kb_nb_calc > 0) { // $(span_kb_nb_calc).html('Calcul ' + Math.round10(kb_nb_calc, -2)); $(input_kanban_calc).val(Math.round10(kb_nb_calc, -2)); if ($(input_kanban_decide).val()) { kb_nb_decide = parseInt($(input_kanban_decide).val()); // Calc ECART if (kb_nb_decide > 0) { d_gap = new Decimal(Math.round10(kb_nb_decide, 0)); d_gap = d_gap.minus(kb_nb_calc); // $(span_kb_gap).html(Math.round10(d_gap.valueOf(), 0)); $(input_kanban_ecart).val(Math.round10(d_gap.valueOf(), 0)); } else { $(input_kanban_ecart).val(null); } if ($(input_kanban_decide).val() > 0) { let ta_cmj = parseFloat(new Decimal(ta_total).times(cmj).valueOf()); let d_sm_q_mini = new Decimal(kb_nb_decide).minus(le_kb).plus(parseInt(kb_start)).times(kb_val).minus(ta_cmj); let d_sm_q_maxi = new Decimal(d_sm_q_mini.valueOf()).plus(kb_val * le_kb); let d_sm_q_mini_real = new Decimal(kb_nb_calc).minus(le_kb).plus(parseInt(kb_start)).times(kb_val).minus(ta_cmj); let d_sm_q_maxi_real = new Decimal(d_sm_q_mini_real.valueOf()).plus(kb_val * le_kb); let stocks = { 'mini': d_sm_q_mini, 'maxi': d_sm_q_maxi, 'avg': new Decimal(d_sm_q_mini.valueOf()).plus(d_sm_q_maxi.valueOf()).dividedBy(2), 'ta_sm': new Decimal(ta_cmj).plus(d_sm_q_mini.valueOf()) }; let cost = ($(input_cost).val()) ? parseFloat($(input_cost).val().replace(',', '.')) : 0; $(stock_table_body).html(''); ['mini', 'avg', 'maxi', 'ta_sm'].map(function (key) { let tr = ''; tr = tr + ''+translators[key]+''; tr = tr + ''+numberFormat(stocks[key].dividedBy(cmj).valueOf(),2)+''; tr = tr + ''+numberFormat(stocks[key].valueOf(),0)+''; tr = tr + ''+numberFormat(stocks[key].times(cost).valueOf(),2)+''; tr = tr + ''+numberFormat(stocks[key].dividedBy(kb_val).valueOf(),2)+''; tr = tr + ''; $(stock_table_body).append(tr); }); $(stock_table).show(); {# --- GRAPH --- #} if (stocks && le_day > 0 && kb_val > 0 && ta_total > 0 && cmj > 0 && kb_nb_calc > 0 && $(input_kanban_decide).val() > 0) { //refreshGraph(stocks,cmj, cost,appro_mini, ta_total, sm_day, le_ue, le_day, le_kb, ta_cmj, kb_nb_decide, kb_val, d_gap); let kanban_values = { cmj : parseFloat(cmj), kb_val : parseInt(kb_val), appro_mini : parseInt(appro_mini), ta : parseInt(ta_total), le_ue : parseFloat(le_ue), le_kb : parseFloat(le_kb), le_day : parseFloat(le_day), sm_day : parseFloat(sm_day), sm_ue : parseFloat(sm_ue), sm_ta : parseFloat(sm_ta), kb_calc : parseFloat(kb_nb_calc), kb_decide : parseInt(kb_nb_decide), cost: parseFloat(cost), kb_start: (parseInt(kb_start) === 1) } refreshGraph(kanban_values, stocks, "APPRO"); } } } } } else $(stock_table).hide(); } refresh_display(); $('.graph-container').css({opacity:1});