VLKC#40642 De Hold-mogelijkheid van opdrachten is nu per type configureerbaar.
svn path=/Website/branches/v2017.1/; revision=34015
This commit is contained in:
@@ -167,7 +167,7 @@ mld = {setmeldingstatus:
|
||||
function (opdr_key, params)
|
||||
{
|
||||
if (params.resume)
|
||||
{ // Als er al een opdracht actief is en sequentieel is aangevinkt, dan moet de actieve opdracht onderbroken worden.
|
||||
{ // Als er al een opdracht actief is en sequentieel&2, dan moet de actieve opdracht onderbroken worden.
|
||||
// Als de opdrachten niet sequentieel uitgevoerd moeten worden, dan wordt er ook geen actieve opdracht gevonden.
|
||||
var activeopdr = mld.getactiveopdracht(opdr_key);
|
||||
if (activeopdr.opdr_key > 0)
|
||||
@@ -691,7 +691,7 @@ mld = {setmeldingstatus:
|
||||
+ " AND o.prs_perslid_key = " + (pprs_key > 0? pprs_key : "(SELECT o2.prs_perslid_key FROM mld_opdr o2 WHERE o2.mld_opdr_key = " + popdr_key + ")")
|
||||
+ " AND o.mld_uitvoerende_keys = " + (puitv_key > 0? puitv_key : "(SELECT o2.mld_uitvoerende_keys FROM mld_opdr o2 WHERE o2.mld_opdr_key = " + popdr_key + ")")
|
||||
+ " AND o.mld_statusopdr_key = 8" // Alleen Actieve (Status Geaccepteerd(8)) opdrachten.
|
||||
+ " AND top.mld_typeopdr_sequential = 1" // Alleen opdrachten die sequentieel uitgevoerd moeten worden.
|
||||
+ " AND BITAND(top.mld_typeopdr_sequential, 2) = 2" // Alleen opdrachten die sequentieel uitgevoerd moeten worden.
|
||||
+ (mode == "A"
|
||||
? " AND o.mld_opdr_halted = 0"
|
||||
: " AND o.mld_opdr_halted = 1")
|
||||
@@ -2182,7 +2182,7 @@ mld = {setmeldingstatus:
|
||||
typeopdr_contract: oRs("mld_typeopdr_contract").Value, // Of bij deze opdracht een contract moet (3), kan (2) of niet kan (0) worden opgegeven
|
||||
typeopdr_afhandeling: oRs("mld_typeopdr_afhandeling").Value, // Afhandeling verplicht bij afmelden opdracht van dit opdrachttype (0=Nee/1=Ja)
|
||||
typeopdr_kosten_verplicht: oRs("mld_typeopdr_kosten_verplicht").Value || 0, // Opdracht kosten verplicht (bitwise) bij (0 = niet verplicht, 1 = save + 2 = afmelden, 4 = afronden).
|
||||
typeopdr_sequential: oRs("mld_typeopdr_sequential").Value == 1,
|
||||
typeopdr_sequential: oRs("mld_typeopdr_sequential").Value, // 0,1,2 of 3
|
||||
contactpers_key: oRs("mld_opdr_contact_key").Value || -1,
|
||||
contactpers_naam: oRs("mld_opdr_contact_naam").Value,
|
||||
contactpersuitv_key: oRs("prs_contactpersoon_key").Value,
|
||||
@@ -3350,6 +3350,7 @@ mld = {setmeldingstatus:
|
||||
+ " , m.prs_perslid_key melding_user_key"
|
||||
+ " , mto.mld_typeopdr_kosten"
|
||||
+ " , mto.mld_typeopdr_decentraal"
|
||||
+ " , mto.mld_typeopdr_sequential"
|
||||
+ " , mto.mld_typeopdr_isofferte"
|
||||
+ " , mld_typeopdr_afmelden_extern"
|
||||
+ " , mto.mld_typeopdr_matchtype"
|
||||
@@ -3440,6 +3441,7 @@ mld = {setmeldingstatus:
|
||||
var halted = moRs("mld_opdr_halted").Value == 1;
|
||||
var typehas_cost = moRs("mld_typeopdr_kosten").Value == 1;
|
||||
var decentraal = moRs("mld_typeopdr_decentraal").Value;
|
||||
var sequential = moRs("mld_typeopdr_sequential").Value; // 0,1,2 of 3
|
||||
var isofferte = moRs("mld_typeopdr_isofferte").Value == 1;
|
||||
var afmelden_extern = moRs("mld_typeopdr_afmelden_extern").Value;
|
||||
var typeopdr_matchtype = moRs("mld_typeopdr_matchtype").Value;
|
||||
@@ -3728,8 +3730,8 @@ mld = {setmeldingstatus:
|
||||
(mresult.canWrite("WEB_ORDBO2") && myBO2Change) ||
|
||||
(mresult.canWrite("WEB_MLDORD") && user.isCollega(uitv_key))) &&
|
||||
!is_planned_action;
|
||||
mresult.canOnderbreken = mresult.canCloseRights && opdr_status == 8 && !halted;
|
||||
mresult.canHervatten = mresult.canCloseRights && opdr_status == 8 && halted;
|
||||
mresult.canOnderbreken = sequential&1==1 && mresult.canCloseRights && opdr_status == 8 && !halted;
|
||||
mresult.canHervatten = mresult.canCloseRights && opdr_status == 8 && halted; /* && sequential&1==1 would be logical but halted will do */
|
||||
mresult.canClose = mresult.canCloseRights && !mresult.canHervatten;
|
||||
mresult.canCopy = (mresult.canWrite("WEB_ORDBOF") && !is_planned_action && !mld_afgerond);
|
||||
mresult.canVeldChange = (mresult.canWrite("WEB_ORDBOF") ||
|
||||
|
||||
@@ -1008,10 +1008,10 @@ if (!isNew)
|
||||
mld.trackuitvoerende(opdr_key, uitvoerende);
|
||||
|
||||
// Bij status "Geaccepteerd(8):
|
||||
// a) Als behandelaar veranderd moeten een actieve opdracht worden onderbroken.
|
||||
// a) Als behandelaar verandert moeten een actieve opdracht worden onderbroken.
|
||||
// b) zorgen dat er maar 1 opdracht van het opdrachttype van deze opdracht actief mag zijn.
|
||||
var new_behandelaar = getFParamInt("behandelaar");
|
||||
if ((new_behandelaar != old_behandelaar) || (mld_opdr.typeopdr_sequential && opdr_status == 8))
|
||||
if ((new_behandelaar != old_behandelaar) || (mld_opdr.typeopdr_sequential&2==2 && opdr_status == 8))
|
||||
{
|
||||
var extendedopdrstatus = mld.getextendedopdrstatus(opdr_status, opdr_key);
|
||||
if (extendedopdrstatus == 8 || extendedopdrstatus == 82)
|
||||
|
||||
Reference in New Issue
Block a user