PLAT#39733: MJOB Jaarovergang: schone lei.

svn path=/Website/branches/v2017.2/; revision=35781
This commit is contained in:
Maykel Geerdink
2017-10-23 11:16:07 +00:00
parent 4f297e6a13
commit 64b631dd3e
5 changed files with 33 additions and 43 deletions

View File

@@ -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;
}

View File

@@ -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++;

View File

@@ -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.

View File

@@ -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)

View File

@@ -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()
};