From ccebfdf1fc9354e550ae4dc8c20c3bcbc6339b28 Mon Sep 17 00:00:00 2001 From: Ruud Lipper Date: Wed, 18 May 2016 12:00:52 +0000 Subject: [PATCH] FSN#36536 diverse verbeteringen aan mobile opdrachten (oa notities maken/inzien, uitvoerende beter weergeven, block styling weg bij geavanceerd) svn path=/Website/trunk/; revision=29430 --- APPL/PDA/melding.asp | 2 +- APPL/PDA/notitie.asp | 31 ++++++++++++++++++-- APPL/PDA/order.asp | 67 +++++++++++++++++++++++++++++++++++++------- 3 files changed, 86 insertions(+), 14 deletions(-) diff --git a/APPL/PDA/melding.asp b/APPL/PDA/melding.asp index e7a9e90196..2586fcf6fd 100644 --- a/APPL/PDA/melding.asp +++ b/APPL/PDA/melding.asp @@ -467,7 +467,7 @@ if (action != "forward") var prs_melder = new Perslid(mld_info.melder_key); ROFIELD("fld", L("lcl_caller") , prs_melder.naam(), { moreinfo: "tel:"+(prs_melder.prs_perslid_mobiel()||prs_melder.prs_perslid_telefoonnr()) }); ROFIELD("fld", L("lcl_mld_date_time") , toDateTimeString(mld_info.melddatum)); - ROFIELD("fld", L("lcl_vakgroup") , (mld_info.prefix+"-" || "") + mld_info.ins_discipline_omschrijving); + ROFIELD("fld", L("lcl_vakgroup") , (mld_info.prefix ? mld_info.prefix+"-" : "") + mld_info.ins_discipline_omschrijving); BLOCK_END(); } diff --git a/APPL/PDA/notitie.asp b/APPL/PDA/notitie.asp index 91d93a542b..5071ce91f1 100644 --- a/APPL/PDA/notitie.asp +++ b/APPL/PDA/notitie.asp @@ -41,7 +41,8 @@ var sql = ""; pnote.canwritenotes = mfe.canWriteNotes; pnote.onlyFErights = mfe.haveOnlyFErights; - + + var action = "../mld/mld_edit_note_save.asp?mld_key=" +pkey; var mld_info = mld.mld_melding_info(pkey); lcl.set_dialect(mld_info.srtdisc, "MLD_SRTDISCIPLINE_KEY"); @@ -109,9 +110,32 @@ var sql = ""; sql = "SELECT * FROM ("+ sql + " UNION " + sql_t + ")"; } break; + case 'opdracht': + var this_opdr = mld.func_enabled_opdracht(pkey); // Wat heb ik zoal aan rechten op deze opdracht? + user.auth_required_or_abort(this_opdr.canShowOpdrNote); + + pnote.canwritenotes = this_opdr.canEditOpdrNote; + var action = "../mld/opdr_edit_note_save.asp?opdr_key=" +pkey; + + var mld_opdr = mld.mld_opdr_info(pkey); + pnote.subject = L("lcl_opdr_info") + " " + mld_opdr.mld_key + "/" + mld_opdr.mld_opdr_bedrijfopdr_volgnr; + + var sql = "SELECT n.mld_opdr_note_aanmaak note_aanmaak" + + " , n.mld_opdr_note_key note_key" + + " , pf.prs_perslid_key" + + " , pf.prs_perslid_naam_friendly" + + " , n.mld_opdr_note_omschrijving note_omschrijving" + + " , NULL fac_srtnotificatie_code" + + " FROM mld_opdr_note n" + + " , prs_v_perslid_fullnames_all pf" + + " WHERE n.prs_perslid_key = pf.prs_perslid_key (+)" + + " AND n.mld_opdr_key = " + pkey; + break; case 'contract': var this_cnt = cnt.func_enabled_contract(pkey); // Wat heb ik zoal aan rechten op dit contract? - user.auth_required_or_abort(this_cnt.canWriteNotes); + user.auth_required_or_abort(this_cnt.canReadNotes); + + pnote.canwritenotes = false; var cnt_info = cnt.cnt_contract_info(pkey); pnote.subject = L("lcl_cnt_contract") + " " + cnt_info.nummer_intern+ (cnt_info.versie == null || cnt_info.versie == ""? "" : "." + cnt_info.versie); @@ -153,6 +177,7 @@ var sql = ""; switch (pnode) { case "melding": url = "melding.asp?mld_key=" + pkey; break; // Terug naar de melding. + case "opdracht": url = "order.asp?opdr_key=" + pkey; break; // Terug naar de opdracht. case "contract": url = "contract.asp?cnt_key=" + pkey; break; // Terug naar het contract. } @@ -246,7 +271,7 @@ var sql = ""; HEADER({title: L("lcl_mobile_notes")+" " + pnote.subject, nohome: true}); CONTENT_START() %> -
+ method="post"> <% RWFIELD("note", L("lcl_mld_note_new"), pnote.omschrijving, {multi: true, pclass: "required"}); diff --git a/APPL/PDA/order.asp b/APPL/PDA/order.asp index 1edf43c3ba..ea4dc86335 100644 --- a/APPL/PDA/order.asp +++ b/APPL/PDA/order.asp @@ -13,12 +13,15 @@ + + <% FCLTHeader.Requires({ js: ["./modernizr-3.3.0.custom.min.js"] }); FCLTHeader.Requires({ plugins: ["suggest"] - , js: ["../mld/mld_edit_opdr.js", "num2curr.js"] - }); + , js: ["../mld/mld_edit_opdr.js", "num2curr.js", "jquery.timepicker-table.js"], + css: ["timePicker-table.css"]}); + var opdr_key = getQParamInt("opdr_key", -1); var mld_key = getQParamInt("mld_key", -1); var copy = false; @@ -43,7 +46,7 @@ if (opdr_key > -1) var mld_melding = mld.mld_melding_info(mld_opdr.mld_key); var opdr_type = mld_opdr.opdr_type; var uitv_key = mld_opdr.uitvoerende_key; - var subject = L("lcl_opdr_info") + " " + mld_opdr.mld_key + "/" + mld_opdr.mld_opdr_bedrijfopdr_volgnr; + var subject = L("lcl_opdr_info") + " " + (mld_melding.prefix || "") + mld_opdr.mld_key + "/" + mld_opdr.mld_opdr_bedrijfopdr_volgnr; mld_opdr.opdr_type_org = mld_opdr.opdr_type; mld_key = mld_opdr.mld_key; @@ -72,7 +75,7 @@ else oRs.Close(); var mld_melding = mld.mld_melding_info(mld_key); - var subject = L("lcl_mobile_newopdracht") + " " + mld_opdr.mld_key + "/" + mld_opdr.mld_opdr_bedrijfopdr_volgnr; + var subject = L("lcl_mobile_newopdracht") + " " + (mld_melding.prefix || "") + mld_opdr.mld_key + "/" + mld_opdr.mld_opdr_bedrijfopdr_volgnr; var sqlCount = ", 0 aantal_open"; } @@ -81,7 +84,8 @@ else + " NVL2(g.alg_gebouw_code,'-'||g.alg_gebouw_code,'') ||" + " NVL2(g.alg_verdieping_code,'-'||g.alg_verdieping_code,'') ||" + " NVL2(g.alg_ruimte_nr,'-'||g.alg_ruimte_nr,'')||" - + " NVL2(g.alg_terreinsector_code,'-'||g.alg_terreinsector_code,'') plaats" + + " NVL2(g.alg_terreinsector_code,'-'||g.alg_terreinsector_code,'') plaatscode," + + " alg_onroerendgoed_omschrijving plaats " + sqlCount + " FROM mld_melding m" + " , alg_v_allonrgoed_gegevens g" @@ -93,7 +97,7 @@ else + " AND m.mld_alg_onroerendgoed_keys=g.alg_onroerendgoed_keys(+)"; oRs = Oracle.Execute(sql); - lcode = oRs.fields("plaats").value; + lcode = !oRs.Eof && oRs("plaatscode").value? oRs("plaatscode").value + " " + oRs("plaats").value : ""; aantal_open = oRs.fields("aantal_open").value; oRs.close(); @@ -281,8 +285,26 @@ else <% BLOCK_START({collapsed: true, title: mld_opdr.opdr_type_omschr}); - ROFIELD("fld", L("lcl_ord_company_uit"), mld_opdr.uitvoerende); - + FCLTuitvoerendeselector("uitvoerende", + "sgUitv", + { uitvoerendekey: mld_opdr.uitvoerende_key, + label: mld_opdr.srtdiscbes ? L("lcl_bes_Supplier") : L("lcl_ord_company_uit"), + readonly: true + }); + + if (opdr_key > -1) + { + FCLTcontactpersoonselector("contactpers", + "sgCntPersUitv", + { contactpersoonKey: mld_opdr.contactpersuitv_key, + label: L("lcl_contact_pers"), + filtercode: "U", + suppressEmpty: true, + readonly: true + }); + } + + ROFIELD("fld", L("lcl_mld_meldingsoort") ,mld_melding.ins_discipline_omschrijving + "-" + mld_melding.mld_stdmelding_omschrijving) ; var vOrderdate = (opdr_key > 0 ? mld_opdr.mld_opdr_datumbegin : new Date()); ROFIELD("fld", L("lcl_orderdate"), toDateTimeString(vOrderdate) , { readonly: true @@ -305,13 +327,32 @@ else mobile: true } ); + if (!mld_opdr.typeopdr_isofferte) + { + FCLTcalendar("date_plan", + { datum: mld_opdr.mld_opdr_plandatum, + // werkt niet omdat mld_einddatum niet bestaand en heeft toch geen effect? onChange: "DateChanged()", + readonly: (opdr_key > 0 && !this_opdr.canDatesChange), + label: L("lcl_opdr_plandate"), + required: false, + timeField: true, + timeStep: 15, + startTime: 8, + endTime: 18, + calendars: 1, + initEmpty: !mld_opdr.mld_opdr_plandatum, + initTimeEmpty: !mld_opdr.mld_opdr_plandatum, + mobile: true + } ); + } + if (opdr_key > -1) ROFIELD("fld", L("lcl_txt"), mld_opdr.opdr_omschr, {multi: true}); else RWFIELD("opdr_omschr", L("lcl_txt"), mld_opdr.opdr_omschr, {multi: true}); - generateFlexKenmerkBlock ({ fnpre: function () { BLOCK_START({collapsed: false, title: L("lcl_mld_flexblok"), xmini: true}); }, - fnpost: BLOCK_END, + generateFlexKenmerkBlock ({ fnpre: function () {}, + fnpost: "", opdr_key: opdr_key, opdr_type: mld_opdr.opdr_type, opdr_type_org: mld_opdr.opdr_type_org, @@ -399,6 +440,12 @@ else { BUTTON(L("lcl_history"), {linkid: "#opdr-2-"+opdr_key, dataicon: "bullets", transition: "pop", datarel: "dialog"}); } + if (this_opdr.canShowOpdrNote) // Heb ik rechten om notities te zien + { + var tsql = "SELECT COUNT(*) FROM mld_opdr_note n WHERE n.mld_opdr_key = " + opdr_key; + toRs = Oracle.Execute(tsql); + BUTTON(L("lcl_mld_frame_notes")+" ("+toRs(0).value+")", {linkid: "./notitie.asp?node=opdracht&key="+opdr_key, dataicon: "comment", dataajax: 'false'}); + } var this_mld = mld.func_enabled_melding(mld_key); // Wat heb ik zoal aan rechten op deze specifieke melding if (this_mld.canReadAny) {