From 64b631dd3e07f2ace75f940c16d13694daff04ee Mon Sep 17 00:00:00 2001 From: Maykel Geerdink Date: Mon, 23 Oct 2017 11:16:07 +0000 Subject: [PATCH] PLAT#39733: MJOB Jaarovergang: schone lei. svn path=/Website/branches/v2017.2/; revision=35781 --- APPL/INS/ins.inc | 23 ++++++++++++----------- APPL/INS/ins_edit_inspect.asp | 10 +++++----- APPL/INS/ins_inspect_save.asp | 15 +++++++++------ APPL/MJB/mjb_search_list.asp | 24 +++++------------------- APPL/MLD/mld_close_confirm.asp | 4 ++-- 5 files changed, 33 insertions(+), 43 deletions(-) diff --git a/APPL/INS/ins.inc b/APPL/INS/ins.inc index cd8c0745ce..c7abd06728 100644 --- a/APPL/INS/ins.inc +++ b/APPL/INS/ins.inc @@ -774,10 +774,12 @@ ins = {checkAutLevel: !vervallen && actief && iresult.hasCTRWrite; iresult.canInspShow = iresult.readuse && !vervallen && (ins_deelsrtcontrole_status >= 0) && iresult.hasCTRRead && !isScenario; // Bij eerste inspectie of verwerkte inspectie kan er gepland worden. - iresult.canInspPlan = iresult.readuse && !vervallen && - (ins_deelsrtcontrole_status == -1 || ins_deelsrtcontrole_status == 6) && - actief && iresult.hasCTRWrite && - ((isc_options & 1) == 1); + iresult.canInspPlanReq = iresult.readuse && !vervallen && + (ins_deelsrtcontrole_status == -1 || ins_deelsrtcontrole_status == 6) && + actief && iresult.hasCTRWrite && + ((isc_options & 1) == 1); + iresult.canInspPlan = iresult.canInspPlanReq && ((isc_options & 1) == 1) && !ctr_ismjob; + iresult.canInspPlanMjb = iresult.canInspPlanReq && ctr_ismjob; // Bij eerste inspectie, geplande inspectie of verwerkte inspectie kan er gestart worden. iresult.canInspStartReq = iresult.readuse && invoerAfterNext && !vervallen && (ins_deelsrtcontrole_status <= 0 || ins_deelsrtcontrole_status == 6) && @@ -794,14 +796,13 @@ ins = {checkAutLevel: (ins_deelsrtcontrole_status == 0 || ins_deelsrtcontrole_status == 2)) && actief && iresult.hasCTRWrite && ((isc_options & 4) == 4) && - !isScenario; + !isScenario && !ctr_ismjob; // Afronden kan vanuit elke status. Alleen vanuit status Gereed gemeld/Afgemeld(5) kan het zonder gegevens in te vullen. - iresult.canInspFinish = iresult.readuse && invoerAfterNext && - //(ins_deelsrtcontrole_status == 5 || - // (ins_deelsrtcontrole_status < 5 && ((isc_options & 4) != 4))) && - actief && iresult.hasCTRWrite && - ((isc_options & 8) == 8) && - !isScenario; + iresult.canInspFinishReq = iresult.readuse && invoerAfterNext && + actief && iresult.hasCTRWrite && + !isScenario; + iresult.canInspFinish = iresult.canInspFinishReq && ((isc_options & 8) == 8) && !ctr_ismjob; + iresult.canInspFinishMjb = iresult.canInspFinishReq && ins_deelsrtcontrole_status == 2 && ctr_ismjob; // Alleen als de inspectie gereedgemeld is kan SNEL afgerond worden zonder gegevens in te vullen. iresult.canInspFastFinish = iresult.canInspFinish && ins_deelsrtcontrole_status == 5; } diff --git a/APPL/INS/ins_edit_inspect.asp b/APPL/INS/ins_edit_inspect.asp index f6ab7ebdc4..4c4f5cace3 100644 --- a/APPL/INS/ins_edit_inspect.asp +++ b/APPL/INS/ins_edit_inspect.asp @@ -95,7 +95,7 @@ for (var i = 0; i < ins_key_arr.length; i++) oRs.Close(); // Het is de eerste inspectie of de laatste inspectie moet verwerkt(6) zijn, anders kan de inspectie niet ingepland worden. - if (insPlan && !this_ins.canInspPlan) // Inplannen. + if (insPlan && !this_ins.canInspPlan) // Inplannen. Inplan scherm n.v.t. voor MJOB. { // Het is niet de eerste inspectie of de laatste inspectie is niet verwerkt. Overslaan. continue; } @@ -103,8 +103,8 @@ for (var i = 0; i < ins_key_arr.length; i++) // Kan de inspectie gereed gemeld/afgemeld of afgerond worden? if (insClose) { // Bij bulkacties (multi) alleen kijken naar de bulkactie die uitgevoerd moet worden. - if (insClose && ((multi && ((!fromfinish && !this_ins.canInspClose) || (fromfinish && !this_ins.canInspFinish))) || - (!multi && !this_ins.canInspClose && !this_ins.canInspFinish))) + if (insClose && ((multi && ((!fromfinish && !this_ins.canInspClose) || (fromfinish && !(this_ins.canInspFinish || this_ins.canInspFinishMjb)))) || + (!multi && !this_ins.canInspClose && !(this_ins.canInspFinish || this_ins.canInspFinishMjb)))) // De inspectie kan niet afgemeld/afgerond worden. Overslaan. continue; } @@ -126,8 +126,8 @@ for (var i = 0; i < ins_key_arr.length; i++) // Als 1 van de srtcontroles niet gereed te melden is, dan kan er niet gereed gemeld worden en moet de button niet getoond worden. canClose = canClose && this_ins.canInspClose; // Als 1 van de srtcontroles niet af te ronden is, dan kan er niet afgerond worden en moet de button niet getoond worden. - canFinish = canFinish && this_ins.canInspFinish; - // Kan 1 van de srtcontroles na het gereed melden worden afgerond? Dan kan ook de afrond button getoond worden. + canFinish = canFinish && (this_ins.canInspFinish || this_ins.canInspFinishMjb); + // Kan 1 van de srtcontroles na het gereed melden worden afgerond? Dan kan ook de afrond button getoond worden. N.v.t. voor mjob. if (this_ins.canInspClose && this_ins.canInspFinish) nrCanFinishAfterClose++; tobehandled++; diff --git a/APPL/INS/ins_inspect_save.asp b/APPL/INS/ins_inspect_save.asp index 26441cd0a1..98361c4778 100644 --- a/APPL/INS/ins_inspect_save.asp +++ b/APPL/INS/ins_inspect_save.asp @@ -214,7 +214,7 @@ for (var i = 0; i < ins_key_arr.length; i++) // Als er nog geen inspectie is geweest en er is een startdatum ingevuld, dan moet de plandatum verwijderd worden afhankelijk van mjob. // Voor mjob = false: als de plandatum eerder is als de startdatum (kan eigenlijk niet ingevoerd worden in edit scherm). // mjob = true: als de plandatum in hetzelfde jaar of eerder is als de startdatum. - if (savemode == "P" && !this_ins.canInspPlan) // Inplannen. + if (savemode == "P" && !(this_ins.canInspPlan || this_ins.canInspPlanMjb)) // Inplannen. { // Ik heb geen Plan (inplannen) rechten of er was al een planrecord. if (ins_deelsrtcontrole_status == 0 && !multi) savemode = "E"; @@ -255,7 +255,7 @@ for (var i = 0; i < ins_key_arr.length; i++) continue; } - if (!this_ins.canInspClose && !this_ins.canInspFinish) + if (!this_ins.canInspClose && !(this_ins.canInspFinish || this_ins.canInspFinishMjb)) { // Ik heb geen Close (gereedmelden/afronden) rechten of laatste inspectie is niet verwerkt (dan moet ins_inspect_finish.asp aangeroepen worden). Overslaan. continue; } @@ -591,13 +591,16 @@ else if (savemode == "C") // De periodieke taken direct afronden indien mogelijk. var hasActionFinish = false; if (finish) - { // Wel even checken of de actie "Afronden" is ingeschakeld voor de periodiek taak. + { // Wel even checken of de actie "Afronden" is ingeschakeld voor de periodiek taak of dat het een mjob taak is. ingesloten[i].srtcont_key sql = "SELECT ins_srtcontrole_options" - + " FROM ins_srtcontrole" - + " WHERE ins_srtcontrole_key = " + ingesloten[i].srtcont_key; + + " , ctr_ismjob" + + " FROM ins_v_defined_inspect_xcp" + + " WHERE ins_deel_key = " + ingesloten[i].ins_key + + " AND ins_srtcontrole_key = " + ingesloten[i].srtcont_key + + " AND ins_scenario_key = " + ingesloten[i].scen_key; oRs = Oracle.Execute(sql); - hasActionFinish = (oRs("ins_srtcontrole_options").Value & 8) == 8; + hasActionFinish = (oRs("ins_srtcontrole_options").Value & 8) == 8 || oRs("ctr_ismjob").Value == 1; } // Afhankelijk van de modus de inspectie(s) opslaan. diff --git a/APPL/MJB/mjb_search_list.asp b/APPL/MJB/mjb_search_list.asp index 3af939e221..fbd4dc5d7f 100644 --- a/APPL/MJB/mjb_search_list.asp +++ b/APPL/MJB/mjb_search_list.asp @@ -1150,11 +1150,8 @@ var transitParam = buildTransitParam(["disc", "srtgroep", "srtdeel", "srtcontrol function fnrowActionEnabler(oRs) { var data = {}; - //var eShowInsp = false; - var ePlan = false; - var eStart = false; - var eClose = false; - var eFinish = false; + var eFinishMjb = false; + var eFreeze = false; var eAddScen = false; if (fulldetails) { // Functie ins.func_enabled_deel kost tijd om voor elke regel uit te voeren. @@ -1165,14 +1162,11 @@ var transitParam = buildTransitParam(["disc", "srtgroep", "srtdeel", "srtcontrol deelsrtcont_key: oRs("ins_deelsrtcontrole_key").Value? oRs("ins_deelsrtcontrole_key").Value : -1, scen_key: oRs("ins_scenario_key").Value }); - ePlan = this_ins.canInspPlan; - eStart = this_ins.canInspStart; - eClose = this_ins.canInspClose; - eFinish = this_ins.canInspFinish; + eFinishMjb = this_ins.canInspFinishMjb; eFreeze = this_ins.canInspFreeze; eAddScen = true; } - var data = {ePlan: ePlan, eStart: eStart, eClose: eClose, eFinish: eFinish, eFreeze: eFreeze}; + var data = {eFinishMjb: eFinishMjb, eFreeze: eFreeze, eAddScen: eAddScen}; return data; } @@ -1417,16 +1411,8 @@ var transitParam = buildTransitParam(["disc", "srtgroep", "srtdeel", "srtcontrol if (scenario == 1) { - // Vooralsnog de acties niet in de regels weergeven en alleen als multi aanbieden. - // Anders zijn de links naar gebouw, object en taak vaak niet niet zichtbaar en daardoor niet klikbaar. - // De aanwezigheid van deze acties zou mogen afhangen van de vinkjes, maar dan is het bepalen best lastig/duur (is er in de selectie *een* taak met enz) - // en eigenklijk weten we wel dat ze hier weg moeten. Dus halen we ze hard weg hier. - //rst.addAction({ action: "insPlan", caption: L("lcl_ins_schedule"), multi: true, multiOnce: true, enabler: "ePlan", onlyMulti: true }); - //rst.addAction({ action: "insStart", caption: L("lcl_ins_start"), multi: true, multiOnce: true, enabler: "eStart", onlyMulti: true }); - //rst.addAction({ action: "insClose", caption: L("lcl_ins_close") + "/" + L("lcl_ins_finish"), multi: true, multiOnce: true, enabler: "eClose", onlyMulti: true }); - //rst.addAction({ action: "insFinish", caption: L("lcl_ins_finish"), multi: true, multiOnce: true, enabler: "eFinish", onlyMulti: true }); - rst.addAction({ action: "insFreeze", caption: L("lcl_mjb_freeze"), multi: true, multiOnce: true, enabler: "eFreeze", onlyMulti: true }); + rst.addAction({ action: "insFinish", caption: L("lcl_ins_finish"), multi: true, multiOnce: true, enabler: "eFinishMjb", onlyMulti: true }); rst.addAction({ action: "insAddScen", caption: L("lcl_mjb_incl_scen"), multi: true, multiOnce: true, enabler: "eAddScen", onlyMulti: true }); } else if (scenario > 1 && actsit) diff --git a/APPL/MLD/mld_close_confirm.asp b/APPL/MLD/mld_close_confirm.asp index 056f710656..ad011df761 100644 --- a/APPL/MLD/mld_close_confirm.asp +++ b/APPL/MLD/mld_close_confirm.asp @@ -136,7 +136,7 @@ for (var i = 0; i < ingesloten.length; i++) deelsrtcont_key: mld_melding.kto_key, scen_key: 1 }); - if (this_ins.canInspClose) + if (this_ins.canInspFinishMjb) { canCloseCtr.push({ ins_key: oRs("ins_deel_key").Value, srtcont_key: oRs("ins_srtcontrole_key").Value, @@ -183,7 +183,7 @@ for (var i = 2; i >= 0; i--) ins_keys: <%=canCloseCtr[i].ins_key%>, srtcont_key_arr: <%=canCloseCtr[i].srtcont_key%>, //deelsrtcont_key wordt niet gebruikt door ins_inspect_save.asp - finish: 0, + finish: 1, deelsrtcontrole_datum: (new Date()).getTime(), sel_controlemode: $("#sel_controlemode" + <%=canCloseCtr[i].controlemode%>).val() };