DENB#35726: MLD: Standaard teksten voor afwijzingen (vergelijkbaar als voor afmeldingen).

svn path=/Website/trunk/; revision=29732
This commit is contained in:
Maykel Geerdink
2016-06-16 09:33:58 +00:00
parent 1682a0babf
commit 2b3d308172
3 changed files with 89 additions and 1 deletions

View File

@@ -51,6 +51,13 @@ model_mld_afmeldtekst =
"label": L("mld_stdmelding_key"),
"typ": "key",
"foreign": "MLD_STDMELDING"
},
"usefor": {
"dbs": "mld_afmeldtekst_usefor",
"label": L("mld_afmeldtekst_usefor"),
"typ": "number",
"LOV": L("mld_afmeldtekst_useforLOV"),
"emptyoption": null
}
},
"list": {

View File

@@ -221,7 +221,8 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY");
var sql_from_t = " FROM mld_afmeldtekst"
+ " WHERE (mld_stdmelding_key IN (" + stdmld_arr.join(",") + ") )"
+ " OR (mld_stdmelding_key IS NULL AND mld_ins_discipline_key IN (" + disc_arr.join(",") + ") )"
+ " OR (mld_stdmelding_key IS NULL AND mld_ins_discipline_key IS NULL)";
+ " OR (mld_stdmelding_key IS NULL AND mld_ins_discipline_key IS NULL)"
+ " AND BITAND(mld_afmeldtekst_usefor, 1) = 1";
var sql_from_o = " FROM mld_opdr mo"
+ " WHERE mo.mld_melding_key = " + ingesloten[0]

View File

@@ -13,6 +13,7 @@
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/stdmeldingselector.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="mld.inc" -->
@@ -133,6 +134,16 @@ user.anything_todo_or_abort(toberejected > 0); // We klagen niet over enkele wel
{
FcltMgr.closeDetail(window, { cancel: true } );
}
function PasteFromSelectbox()
{
if ($("#stdopmerk :selected").val() > -1)
{
$("#opmerk").focus();
var PastedText = $("#stdopmerk :selected")[0].getAttribute("afmeldtekstoms");
$("#opmerk").val($("#opmerk").val() + ($("#opmerk").val() != ""? "\n" : "") + PastedText);
}
}
</script>
<% } %>
</head>
@@ -179,6 +190,75 @@ user.anything_todo_or_abort(toberejected > 0); // We klagen niet over enkele wel
// Vakgroep
RWFIELDTR("disc", "flddisc", L("lcl_vakgroup"), (ingesloten.length == 1 && prefix? prefix + "-" : "") + (ingesloten.length == 1? ins_discipline_omschrijving : ""), {readonly: true})
// Afwijstekst
var stdmld_arr = [];
var disc_arr = [];
sql = "SELECT DISTINCT mld_stdmelding_afmeldtext"
+ " , mld_melding_opmerking"
+ " , ins_srtdiscipline_prefix"
+ " , std.mld_stdmelding_key"
+ " , md.ins_discipline_key"
+ " FROM mld_melding mm"
+ " , mld_stdmelding std"
+ " , mld_discipline md"
+ " , ins_srtdiscipline sd"
+ " WHERE mld_melding_key IN (" + ingesloten.join(",") + ")"
+ " AND mm.mld_stdmelding_key = std.mld_stdmelding_key"
+ " AND std.mld_ins_discipline_key = md.ins_discipline_key"
+ " AND md.ins_srtdiscipline_key = sd.ins_srtdiscipline_key";
oRs = Oracle.Execute(sql);
while (!oRs.eof)
{
stdmld_arr[stdmld_arr.length] = oRs("mld_stdmelding_key").Value;
disc_arr[disc_arr.length] = oRs("ins_discipline_key").Value;
oRs.MoveNext();
}
var sql_from_t = " FROM mld_afmeldtekst"
+ " WHERE ((mld_stdmelding_key IN (" + stdmld_arr.join(",") + ") )"
+ " OR (mld_stdmelding_key IS NULL AND mld_ins_discipline_key IN (" + disc_arr.join(",") + ") )"
+ " OR (mld_stdmelding_key IS NULL AND mld_ins_discipline_key IS NULL))"
+ " AND BITAND(mld_afmeldtekst_usefor, 2) = 2";
var sql_from_o = " FROM mld_opdr mo"
+ " WHERE mo.mld_melding_key = " + ingesloten[0]
+ " AND mo.mld_statusopdr_key = 6" // status=afgemeld
+ " AND mo.mld_opdr_opmerking IS NOT NULL";
var sql = "SELECT 1"
+ sql_from_t
+ (ingesloten.length == 1
? " UNION SELECT 1" + sql_from_o
: ""
);
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
sql = "SELECT mld_afmeldtekst_key"
+ " , " + lcl.xsqla('mld_afmeldtekst_naam', 'mld_afmeldtekst_key')
+ " , " + lcl.xsql('mld_afmeldtekst_omschrijving', 'mld_afmeldtekst_key') + " afmeldtekstoms"
+ " , 2 src"
+ sql_from_t;
if (ingesloten.length == 1)
{
sql += " UNION "
+ "SELECT mo.mld_opdr_key"
+ " ," + safe.quoted_sql(L("lcl_opdr_closeremark") + " /") +"|| mo.mld_opdr_bedrijfopdr_volgnr"
+ " , mo.mld_opdr_opmerking"
+ " , 1"
+ sql_from_o
}
sql += " ORDER BY 4,2";
FCLTselector("stdopmerk",
sql,
{ label: L("lcl_mld_inf_std_opm"),
initKey: -1,
emptyOption: "",
extraParamValue: "afmeldtekstoms",
onChange: "PasteFromSelectbox()"});
}
// Reden afwijzing
%>
<tr><td class="label"><label></label></td>