diff --git a/APPL/MLD/mld.inc b/APPL/MLD/mld.inc index f097e14c3e..d3411e7a65 100644 --- a/APPL/MLD/mld.inc +++ b/APPL/MLD/mld.inc @@ -2834,6 +2834,7 @@ mld = {setmeldingstatus: + " , DECODE(COALESCE(sd.ins_srtdiscipline_prefix, ''), '', '', sd.ins_srtdiscipline_prefix) prefix" + ", "+ lcl.xsqla('sd.ins_srtdiscipline_omschrijving', 'sd.ins_srtdiscipline_key') + " , " + lcl.xsqla('md.ins_discipline_omschrijving', 'md.ins_discipline_key') + + " , dp.mld_disc_params_srtgroep srtgroep" // Soort vakgroep + " , ms.mld_stdmelding_default_disc" // Default behandelgroep + " , ms.mld_stdmelding_t_uitvoertijd.tijdsduur uitvoertijd" // Uitvoertijd Normaal + " , ms.mld_stdmelding_t_uitvtijd_pr1.tijdsduur uitvoertijd1" // Uitvoertijd Kritisch @@ -2974,6 +2975,7 @@ mld = {setmeldingstatus: notify: oRs("mld_stdmelding_notify").Value, kostensoort: oRs("prs_kostensoort_key").Value, startdatum: oRs("mld_disc_params_startdatum").Value == 1, + srtgroep: oRs("srtgroep").Value, default_ins_disc_key: oRs("mld_stdmelding_default_disc").Value, accepttijd: oRs("accepttijd_t").Value, eenheid_accepttijd: oRs("accepttijd_e").Value || 'D', diff --git a/APPL/MLD/mld_edit_melding.asp b/APPL/MLD/mld_edit_melding.asp index 2487cfac68..430be7d79f 100644 --- a/APPL/MLD/mld_edit_melding.asp +++ b/APPL/MLD/mld_edit_melding.asp @@ -432,7 +432,6 @@ if (copy) mld_melding.mld_onderwerp = mld_melding_copy.mld_onderwerp; } - lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY"); // ================================ initiele gegevens bepaald ==================================== @@ -490,6 +489,12 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY"); var user_kpnaam = "<%=safe.jsstring(user.afdeling().kpn_naam())%>"; var user_kpmodule = "<%=user.afdeling().kpn_module()%>"; var user_afd_key = <%=user.prs_afdeling_key()%>; + + // The next two are used in toggleBehandelgroep() + var show_abh = (<%=(lBestaandeMelding && this_mld.canBOwrite) ? 1 : 0%> == 1); + // Always set default behandelgroep if initially empty and the field is hidden (so you can't specifically set it) + var alwaysSetBhg = (<%=(!(mld_melding.mld_ins_discipline_key > 0) && (lNieuweMelding || !this_mld.canBOwrite)) ? 1 : 0%> == 1); + var show_alg = (<%=mld_melding.show_alg? 1 : 0%> == 1); var show_bes = (<%=mld_melding.show_bes? 1 : 0%> == 1); var show_ins = (<%=mld_melding.show_ins? 1 : 0%> == 1); @@ -980,7 +985,7 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY"); %><% // div.leftcontainer, de rest staat rechts // Inzicht is inmiddels dat dit geen relevante info is indien nieuwe melding - if (lBestaandeMelding || ((urole == "bo" || urole == "fo") && S("mld_melding_flags") > 0) || (urole != "fe" && S("mld_ins_discipline"))) + if (lBestaandeMelding || ((urole == "bo" || urole == "fo") && S("mld_melding_flags") > 0)) { BLOCK_START("mldInfo", (lBestaandeMelding ? L("lcl_complain") + " " + (mld_melding.prefix != null? mld_melding.prefix : "") + mld_key : L("lcl_mld_new"))); if (lBestaandeMelding) @@ -998,56 +1003,6 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY"); readonly: !this_mld.canAfhandChange, filtercode: (mld_melding.mld_status == 0 ? "BEHF" : "BEHB") }); - } - } - - if (S("mld_ins_discipline")) - { - if (urole == "fe") - { %> - -<% } - else if (urole != "fe") - { - FCLTdisciplineselector("mld_ins_discipline", - "sgDisc", - { idadd: 2, - label: L("mld_ins_discipline"), - disc_key: mld_melding.mld_ins_discipline_key, - module: "MLDB", - perslidKey: (lBestaandeMelding ? mld_melding.melder_key : user_key), - autfunctionKey: -1, // alles is toegestaan! authparams.autfunctionkey, - autRW: "W", - srtdisc_key: S("mld_ins_discipline_all") ? null : mld_melding.srtdisc, - readonly: (mld_key > 0 && !this_mld.canAfhandChange), - required: false, - hidden: !(mld_melding.srtgroep & 1), - filtercode: (frontend? "FE" : ((fronto && (mld_key < 0)) ? "VD" : "")), - moreinfo: !(mld_key > 0 && !this_mld.canAfhandChange) && - (user.checkAutorisation("WEB_FAQUSE", true) || user.checkAutorisation("WEB_FAQFOF", true)) && // !readonly && rechten - !frontend - }); - } - } - - if (lBestaandeMelding || ((urole == "bo" || urole == "fo") && S("mld_melding_flags") > 0) || (urole != "fe" && S("mld_ins_discipline"))) - { - if (lBestaandeMelding) - { - if (S("mld_ins_discipline") && S("mld_behandelaar2")) - { - FCLTpersoonselector("sBehandel2", - "sgBehandelaar", - { perslidKey: mld_melding.behandel2_key, - idadd: 2, - label: L("lcl_mld_behandelaar2"), - autlevel: this_mld.authparams(autfunction) && this_mld.authparams(autfunction).PRSwritelevel, - urlAdd: urlAdd, - readonly: !this_mld.canAfhandChange, - hidden: !(mld_melding.srtgroep & 1), - filtercode: (mld_melding.mld_status == 0 ? "BH2F" : "BH2B") - }); - } if (!mld_melding.show_start_date) { // alleen dan is de melddatum de invoerdatum; in het andere geval staat-ie elders al ROFIELDTR("fld", L("lcl_mld_date_time"), toDateTimeString(mld_melding.melddatum)); } @@ -1136,6 +1091,48 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY"); BLOCK_END(); } + if (S("mld_ins_discipline")) + { + var hideSelectors = !lBestaandeMelding || !this_mld.canBOwrite; + var initHideProcessingBlock = hideSelectors || !(mld_melding.srtgroep & 1); + BLOCK_START("mldProcessing", L("lcl_mld_processing_details"), { hidden: initHideProcessingBlock }); + FCLTdisciplineselector("mld_ins_discipline", + "sgDisc", + { idadd: 2, + label: L("mld_ins_discipline"), + disc_key: mld_melding.mld_ins_discipline_key, + module: "MLDB", + perslidKey: (lBestaandeMelding ? mld_melding.melder_key : user_key), + autfunctionKey: -1, // alles is toegestaan! authparams.autfunctionkey, + autRW: "W", + srtdisc_key: S("mld_ins_discipline_all") ? null : mld_melding.srtdisc, + onChange: "onChangeBehandelgroep", + hidden: hideSelectors, + required: false, + filtercode: (frontend? "FE" : ((fronto && (mld_key < 0)) ? "VD" : "")), + moreinfo: !(mld_key > 0 && !this_mld.canAfhandChange) && + (user.checkAutorisation("WEB_FAQUSE", true) || user.checkAutorisation("WEB_FAQFOF", true)) && // !readonly && rechten + !frontend + }); + + var urlAdd = [{urlParam: "prs_key", field: "person", init: mld_melding.melder_key}, // MOET DIT ? TODO KOEN ! + {urlParam: "disc_key", field: "mld_ins_discipline", init: mld_melding.mld_ins_discipline_key}]; + if (mld_melding.show_alg) // MOET DIT ? TODO KOEN ! + urlAdd.push({urlParam: "loc_key", field: "locatiekey", init: mld_melding.loc_key}); + + FCLTpersoonselector("sBehandel2", + "sgBehandelaar", + { perslidKey: mld_melding.behandel2_key, + idadd: 2, + label: L("lcl_mld_behandelaar2"), + autlevel: this_mld.authparams(autfunction) && this_mld.authparams(autfunction).PRSwritelevel, + urlAdd: urlAdd, + hidden: hideSelectors, + filtercode: (mld_melding.mld_status == 0 ? "BH2F" : "BH2B") + }); + BLOCK_END(); + } + BLOCK_START("mldFaq", L("lcl_faq_kennisbank"), { hidden: true }); // hier komen vaste aanwijzingen BLOCK_END(); diff --git a/APPL/MLD/mld_edit_melding.js b/APPL/MLD/mld_edit_melding.js index 0688ca0a64..13a7b306ef 100644 --- a/APPL/MLD/mld_edit_melding.js +++ b/APPL/MLD/mld_edit_melding.js @@ -939,8 +939,6 @@ function onChangeVakgroep(vakgroep_key) sgStdm.CheckJustOne(); if (window.sgBehandelaar) sgBehandelaar.setValue($("#sBehandel").val(), $("#sBehandel_show").val(), true, true); - if (window.sgBehandelaar2) - sgBehandelaar2.setValue($("#sBehandel2").val(), $("#sBehandel2_show").val(), true, true); if (vakgroep_key > 0) { @@ -951,7 +949,6 @@ function onChangeVakgroep(vakgroep_key) } else if (vakgroep_key == -1) toggleBehandelgroep({ "srtgroep": 0 }); - } function onChangeStdMelding(stdmelding_key, txt, params) @@ -1007,16 +1004,26 @@ function onChangeStdMelding(stdmelding_key, txt, params) if (!params.init) loadKenmerk(); // Bij initialisatie (initOnChange) niet de kenmerken herladen anders worden de waarden gewist. } +function onChangeBehandelgroep(behandelgroep_key) +{ + console.log("onChangeBehandelgroep"); + console.log(typeof sgBehandelaar2); + if (typeof sgBehandelaar2 != "undefined") + { + console.log("onChange sgBehandelaar2"); + sgBehandelaar2.setValue($("#sBehandel2").val(), $("#sBehandel2_show").val(), true, true); + } +} + function toggleBehandelgroep(data) { if (data.srtgroep & 1) { // Toggle on - if (typeof sgDisc2 != "undefined") sgDisc2.undoHidden(); - if (typeof sgBehandelaar2 != "undefined") sgBehandelaar2.undoHidden(); + if (show_abh) $("#mldProcessing").show(); - // Set new default Behandelgroep if there is one and the field is currently empty - if (data.stdmChanged && stdm_info.default_ins_disc_key > 0 && !($("#mld_ins_discipline").val() > 0)) + // Set new default Behandelgroep if there is one and the field ((is currently empty) or (is hidden and was initially empty)) + if (data.stdmChanged && stdm_info.default_ins_disc_key > 0 && (!($("#mld_ins_discipline").val() > 0) || alwaysSetBhg)) { // Verifiëren dat Behandelgroep ook echt Behandelgroep mag zijn (srtgroep & 2) $.getJSON("./get_mld_info_ajax.asp", @@ -1028,16 +1035,20 @@ function toggleBehandelgroep(data) else { // Toggle off + if (show_abh) $("#mldProcessing").hide(); + + // Empty 'Behandelgroep' & 'Actieve behandelaar' value if (typeof sgDisc2 != "undefined") { sgDisc2.setValue(-1, ""); - sgDisc2.makeHidden(); + sgBehandelaar2.setValue(-1, ""); } else + { $("input#mld_ins_discipline").val(-1); + $("input#sBehandel2").val(-1); + } - if (typeof sgBehandelaar2 != "undefined") - sgBehandelaar2.makeHidden(); } } @@ -1045,7 +1056,7 @@ function setBehandelgroep(data) { if (data != null) if (typeof sgDisc2 != "undefined") - sgDisc2.setValue(data.def_ins_disc_key, data.def_ins_disc_descr); + sgDisc2.setValue(data.def_ins_disc_key, data.def_ins_disc_descr, true, true); else $("input#mld_ins_discipline").val(data.def_ins_disc_key); } diff --git a/APPL/MLD/mld_edit_note.inc b/APPL/MLD/mld_edit_note.inc index 55b21aca9f..db4a08ac1d 100644 --- a/APPL/MLD/mld_edit_note.inc +++ b/APPL/MLD/mld_edit_note.inc @@ -130,32 +130,35 @@ function note_save(mld_key, note, params) } } - var behandelaar = -1; - if (S("mld_behandelaar2") && mld_info.behandel2_key > 0 && mld_info.behandel2_key != user_key) - behandelaar = mld_info.behandel2_key; - else if (mld_info.behandel_key > 0 && mld_info.behandel_key != user_key) - behandelaar = mld_info.behandel_key; - - // Laat de Behandelaar weten dat er iemand (anders) een notitie heeft toegevoegd of gewijzigd - if (behandelaar != -1 && mld_info.nobnotify) + if (mld_info.nobnotify) { - // putnotificationsrtprio doet geen vertaling van andere vars dan ##KEY## (notify_tracking zou dat wel doen) - // dus doen we het hier zelf maar. - var omssql = "SELECT fac_srtnotificatie_oms" - + " FROM fac_srtnotificatie" - + " WHERE fac_srtnotificatie_code = 'MLDNOB'"; - var oRs = Oracle.Execute(omssql); - var oms = L(oRs("fac_srtnotificatie_oms").Value, { autolcl: true }); - oRs.Close(); - Oracle.Execute("BEGIN fac.putnotificationsrtprio(" - + "NULL" - + ", " - + behandelaar - + ", 'MLDNOB'" - + ", " - + mld_key - + ", mld.mldsprintf(" + safe.quoted_sql(oms) + ", " + mld_key + ")" - + ", NULL, NULL, NULL, NULL, 2, NULL); END;"); + var behandelaar = -1; + if (S("mld_behandelaar2") && mld_info.behandel2_key > 0 && mld_info.behandel2_key != user_key) + behandelaar = mld_info.behandel2_key; + else if (mld_info.behandel_key > 0 && mld_info.behandel_key != user_key) + behandelaar = mld_info.behandel_key; + + // Laat de Behandelaar weten dat er iemand (anders) een notitie heeft toegevoegd of gewijzigd + if (behandelaar != -1) + { + // putnotificationsrtprio doet geen vertaling van andere vars dan ##KEY## (notify_tracking zou dat wel doen) + // dus doen we het hier zelf maar. + var omssql = "SELECT fac_srtnotificatie_oms" + + " FROM fac_srtnotificatie" + + " WHERE fac_srtnotificatie_code = 'MLDNOB'"; + var oRs = Oracle.Execute(omssql); + var oms = L(oRs("fac_srtnotificatie_oms").Value, { autolcl: true }); + oRs.Close(); + Oracle.Execute("BEGIN fac.putnotificationsrtprio(" + + "NULL" + + ", " + + behandelaar + + ", 'MLDNOB'" + + ", " + + mld_key + + ", mld.mldsprintf(" + safe.quoted_sql(oms) + ", " + mld_key + ")" + + ", NULL, NULL, NULL, NULL, 2, NULL); END;"); + } } if (S("mld_rejected_is_open") && mld_info.mld_status == 1) diff --git a/APPL/MLD/mld_show_melding.asp b/APPL/MLD/mld_show_melding.asp index 34aaf27f00..7358fd3f4c 100644 --- a/APPL/MLD/mld_show_melding.asp +++ b/APPL/MLD/mld_show_melding.asp @@ -440,21 +440,6 @@ function parentButton() readonly: true }); } - if (mld_melding.mld_ins_discipline_key > 0) - { - ROFIELDTR("flddisc", L("mld_ins_discipline"), (mld_melding.mld_srtins_prefix ? mld_melding.mld_srtins_prefix + "-" : "") + mld_melding.mld_ins_discipline_omschrijving); - } - // Tweede behandelaar - if (mld_melding.behandel2_key > 0) { - FCLTpersoonselector("sBehandel2", - "sgBehandelaar", - { perslidKey: mld_melding.behandel2_key, - label: L("lcl_mld_behandelaar2"), - fieldId: "fldbehandel2", - moreinfo: (this_mld.canFOread || this_mld.canBOread), - readonly: true - }); - } if (!mld_melding.show_start_date) { // alleen dan is de melddatum de invoerdatum; in het andere geval staat-ie elders al ROFIELDTR("flddatetime", L("lcl_mld_date_time"), toDateTimeString(mld_melding.melddatum)); } @@ -550,6 +535,27 @@ function parentButton() } BLOCK_END(); + if (!frontend && mld_melding.mld_ins_discipline_key > 0) // Overbodige informatie voor FE + { + BLOCK_START("mldProcessing", L("lcl_mld_processing_details")); + if (mld_melding.mld_ins_discipline_key > 0) + { + ROFIELDTR("flddisc", L("mld_ins_discipline"), (mld_melding.mld_srtins_prefix ? mld_melding.mld_srtins_prefix + "-" : "") + mld_melding.mld_ins_discipline_omschrijving); + } + // Actieve behandelaar + if (mld_melding.behandel2_key > 0) { + FCLTpersoonselector("sBehandel2", + "sgBehandelaar", + { perslidKey: mld_melding.behandel2_key, + label: L("lcl_mld_behandelaar2"), + fieldId: "fldbehandel2", + moreinfo: (this_mld.canFOread || this_mld.canBOread), + readonly: true + }); + } + BLOCK_END(); + } + BLOCK_START("mldFaq", L("lcl_faq_kennisbank"), { hidden: true }); // hier komen vaste aanwijzingen BLOCK_END(); diff --git a/APPL/PDA/melding.asp b/APPL/PDA/melding.asp index bf42e1ad54..dbda955bc9 100644 --- a/APPL/PDA/melding.asp +++ b/APPL/PDA/melding.asp @@ -40,7 +40,6 @@ var multi = 0, maybeDouble = 0, autoConfirm = 0; - <% FCLTHeader.Requires({ js: [rooturl+"/appl/pda/modernizr-3.3.0.custom.min.js", rooturl+"/appl/Localscripts/jquery.timepicker-table.js"] }); FCLTHeader.Requires({ plugins: ["suggest"]}); @@ -710,7 +709,21 @@ if (action != "forward") -<% + +<% // If can appoint process group && has a default process group + if (stdm_info.srtgroep & 1 && stdm_info.default_ins_disc_key > 0) + { + var sql = "SELECT mld_disc_params_srtgroep" + + " FROM mld_disc_params mdp" + + " WHERE mdp.mld_ins_discipline_key = " + stdm_info.default_ins_disc_key; + var oRs = Oracle.Execute(sql); + // If can be a process group + if (!oRs.eOf && oRs("mld_disc_params_srtgroep").Value & 2) + { %> + +<% } + oRs.Close(); + } } if (mld_key > -1) // bestaande diff --git a/APPL/Shared/default.csx b/APPL/Shared/default.csx index 76d01c35d7..61fe56795e 100644 --- a/APPL/Shared/default.csx +++ b/APPL/Shared/default.csx @@ -2483,6 +2483,7 @@ div#statusboxes { #menuCust, #mldFlex, #mldInfo, + #mldProcessing, #mldFaq, #mldIns, #mldObjD, @@ -2590,6 +2591,7 @@ div#statusboxes { #menuCust, #mldFlex, #mldInfo, + #mldProcessing, #mldFaq, #mldIns, #mldObjD,