DJIN#41676 BES: kleurbolletjes zoals in andere modules ook in BES-module
svn path=/Website/trunk/; revision=36617
This commit is contained in:
@@ -611,6 +611,7 @@
|
||||
+ " , b.bes_bestelopdr_delivery_opmerk"
|
||||
+ " , b.bes_bestelopdr_korting"
|
||||
+ " , b.bes_bestelopdr_levkosten"
|
||||
+ " , b.bes_bestelopdr_flag"
|
||||
+ " , bes_bestelopdr_status"
|
||||
+ " , (SELECT ks.prs_kostensoort_btw"
|
||||
+ " FROM prs_kostensoort ks"
|
||||
@@ -659,7 +660,8 @@
|
||||
perslid_key : oRs("prs_perslid_key").Value,
|
||||
dis_key : oRs("ins_discipline_key").Value,
|
||||
korting : parseFloat((oRs("bes_bestelopdr_korting").Value? oRs("bes_bestelopdr_korting").Value : 0).toFixed(2)),
|
||||
levkosten : parseFloat((oRs("bes_bestelopdr_levkosten").Value? oRs("bes_bestelopdr_levkosten").Value : 0).toFixed(2))
|
||||
levkosten : parseFloat((oRs("bes_bestelopdr_levkosten").Value? oRs("bes_bestelopdr_levkosten").Value : 0).toFixed(2)),
|
||||
flag : oRs("bes_bestelopdr_flag").Value
|
||||
}
|
||||
if(oRs("bes_bestelopdr_status").Value == 6 && oRs("bes_bestelling_retourvan_key").Value > 0)
|
||||
bes_bestelopdr.statustxt = L("lcl_bes_collected");
|
||||
@@ -947,6 +949,7 @@
|
||||
bresult.canReadAny = bresult.canRead("WEB_BESBOF") || bresult.canRead("WEB_BESBOR") || bresult.canRead("WEB_BESBAC"); // Bestel opdracht alleen zichtbaar voor backoffice
|
||||
bresult.canReadBOF = bresult.canRead("WEB_BESBOF");
|
||||
bresult.canReadBOR = bresult.canRead("WEB_BESBOR");
|
||||
bresult.canWriteFlags = bresult.canWrite("WEB_BESBOF") || bresult.canWrite("WEB_BESFOF"); // Kan ik flags aanpassen
|
||||
|
||||
// Op button niveau
|
||||
bresult.canChange = false; // Wijzigen
|
||||
|
||||
@@ -47,7 +47,8 @@ var this_bestelopdr = bes.func_enabled_bestelopdracht(opdr_key);
|
||||
|
||||
var fields = [ { dbs: "bes_bestelopdr_opmerking", typ: "varchar", frm: "opmerk", track: L("lcl_remark"), len: 320 },
|
||||
{ dbs: "mld_adres_key_lev", typ: "key", frm: "levering", track: L("lcl_bes_adres_lev"), foreign: "MLD_V_AFLEVERADRES" } ,
|
||||
{ dbs: "mld_adres_key_fac", typ: "key", frm: "factuur", track: L("lcl_bes_adres_fac"), foreign: "MLD_V_FACTUURADRES" }
|
||||
{ dbs: "mld_adres_key_fac", typ: "key", frm: "factuur", track: L("lcl_bes_adres_fac"), foreign: "MLD_V_FACTUURADRES" } ,
|
||||
{ dbs: "bes_bestelopdr_flag", typ: "number", frm: "besopdrflag" }
|
||||
];
|
||||
if (getFParam("chkproceed", "off") == "on")
|
||||
fields.push({ dbs: "bes_bestelopdr_status", typ: "key", val: 3});
|
||||
@@ -229,6 +230,22 @@ var this_bestelopdr = bes.func_enabled_bestelopdracht(opdr_key);
|
||||
RWTEXTAREATR("opmerk", "fldtxt", L("lcl_remark"), bes_bestelopdr.opmerking, {html: "rows='3'", suppressEmpty: true}); // Afhandeling, reden niet akkoord
|
||||
ROTEXTAREATR("fldtxt", L("lcl_bes_comment"), bes_bestelopdr.delivery_opmerk, {suppressEmpty: true});
|
||||
ROTEXTAREATR("fldtxt", L("lcl_bes_bestelling_lev_opm"), bes_bestelling.lev_opm, {suppressEmpty: true} );
|
||||
|
||||
if (this_bestelopdr.canWriteFlags && (S("bes_bestelopdr_flags") > 0))
|
||||
{
|
||||
var besflagnr = bes_bestelopdr.flag || 0;
|
||||
sql = "";
|
||||
for (var i=0; i<S("bes_bestelopdr_flags"); i++)
|
||||
{
|
||||
sql += "SELECT "+i+","+safe.quoted_sql(L("lcl_bestelopdr_flag"+i))+" FROM DUAL" + (i<(parseInt(S("bes_bestelopdr_flags"))-1)?" UNION ALL ":"");
|
||||
}
|
||||
FCLTselector("besopdrflag",
|
||||
sql,
|
||||
{ initKey: bes_bestelopdr.flag,
|
||||
label: L("lcl_bestelopdr_flags")
|
||||
});
|
||||
}
|
||||
|
||||
BLOCK_END();
|
||||
|
||||
|
||||
|
||||
39
APPL/BES/bes_flag.asp
Normal file
39
APPL/BES/bes_flag.asp
Normal file
@@ -0,0 +1,39 @@
|
||||
<%@language = "javascript" %>
|
||||
<% /*
|
||||
$Revision$
|
||||
$Id$
|
||||
|
||||
verhoog de status van de flag met 1.
|
||||
*/ %>
|
||||
<%
|
||||
var JSON_Result = true;
|
||||
%>
|
||||
|
||||
<!-- #include file="../Shared/common.inc" -->
|
||||
<!-- #include file="../Shared/json2.js" -->
|
||||
<!-- #include file="bes.inc" -->
|
||||
|
||||
<%
|
||||
protectRequest.validateToken();
|
||||
var besopdr_key = getFParamInt("besopdr_key");
|
||||
var flagkey = getFParamInt("flagkey");
|
||||
|
||||
var this_besopdr = bes.func_enabled_bestelopdracht(besopdr_key);
|
||||
user.auth_required_or_abort(this_besopdr.canWriteFlags);
|
||||
|
||||
var result = {};
|
||||
|
||||
flagkey += 1;
|
||||
flagkey = flagkey % S("bes_bestelopdr_flags"); // cycle door de waarden {0, 1, ... , (S('bes_bestelopdr_flags')-1)}.
|
||||
|
||||
var updatesql = "UPDATE bes_bestelopdr"
|
||||
+ " SET bes_bestelopdr_flag = " + flagkey
|
||||
+ " WHERE bes_bestelopdr_key = " + besopdr_key;
|
||||
Oracle.Execute(updatesql);
|
||||
|
||||
result.success = true;
|
||||
result.besopdr_key = besopdr_key;
|
||||
result.newflag = flagkey; // Het nieuwe volgnummer van de bezoeker vlaggetjes.
|
||||
|
||||
Response.Write(JSON.stringify(result));
|
||||
%>
|
||||
@@ -203,6 +203,11 @@ user.auth_required_or_abort(this_bestelopdr.canReadAny || this_bestelling.isVera
|
||||
ROTEXTAREATR("fldtxt", L("lcl_remark"), bes_bestelopdr.opmerking, {id: "txt", suppressEmpty: true}); // Afhandeling, reden niet akkoord
|
||||
ROTEXTAREATR("fldtxt", L("lcl_bes_comment"), bes_bestelopdr.delivery_opmerk, {id: "odtxt", suppressEmpty: true});
|
||||
ROTEXTAREATR("fldtxt", L("lcl_bes_bestelling_lev_opm"), bes_bestelling.lev_opm, {suppressEmpty: true} );
|
||||
|
||||
if (this_bestelopdr.canWriteFlags && bes_bestelopdr.flag)
|
||||
{
|
||||
ROFIELDTR("fld showflag", L("lcl_bestelopdr_flags")+I("fa-circle besopdrflag"+ bes_bestelopdr.flag), L("lcl_bestelopdr_flag" + bes_bestelopdr.flag), {trclass: "showflag"});
|
||||
}
|
||||
BLOCK_END();
|
||||
|
||||
BLOCK_START("besOpdrItems", L("lcl_bes_geselecteerd"));
|
||||
|
||||
@@ -63,10 +63,14 @@ function opdr_list (pautfunction, params)
|
||||
// params.besopdrstbev : boolean (true | false)
|
||||
// params.besopdrstlev : boolean (true | false)
|
||||
// params.besopdrstver : boolean (true | false)
|
||||
// params.flags : intArray [flagkeys {0-9}]
|
||||
|
||||
var authparams = user.checkAutorisation(pautfunction);
|
||||
|
||||
var urole = params.urole;
|
||||
var urole = params.urole;
|
||||
var fronto = (urole == "fo");
|
||||
var backo = (urole == "bo");
|
||||
var frontend = (urole == "fe");
|
||||
|
||||
// Voor resulttable de globalen zetten; zou ng anders moeten.
|
||||
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
|
||||
@@ -93,6 +97,7 @@ function opdr_list (pautfunction, params)
|
||||
var besopdrstbev = params.besopdrstbev;
|
||||
var besopdrstlev = params.besopdrstlev;
|
||||
var besopdrstver = params.besopdrstver;
|
||||
var flags = params.flags;
|
||||
|
||||
var showopdrstatus = "";
|
||||
if (besopdrstafg) showopdrstatus = (showopdrstatus == ""? "" : showopdrstatus + ",") + "1";
|
||||
@@ -125,6 +130,7 @@ function opdr_list (pautfunction, params)
|
||||
+ ", be.prs_bedrijf_naam prs_bedrijf_naam"
|
||||
// straks + ", bes.bestelopdr_tooltip(b.bes_bestelopdr_key) tooltip" // TODO JGL: Dit is een dure tooltip!
|
||||
+ ", b.bes_bestelopdr_status"
|
||||
+ ", b.bes_bestelopdr_flag"
|
||||
+ ", ma.mld_adres_naam afleveradres"
|
||||
+ ", bst.bes_bestelling_plaats"
|
||||
+ ", bst.bes_bestelling_leverdatum"
|
||||
@@ -226,6 +232,23 @@ function opdr_list (pautfunction, params)
|
||||
|
||||
if (supplier_key)
|
||||
sql += " AND be.prs_bedrijf_key = " + supplier_key;
|
||||
|
||||
if (!frontend && flags && flags.length > 0 && flags.length < S("bes_bestelopdr_flags"))
|
||||
{
|
||||
var filterNull = false;
|
||||
|
||||
for (var i = 0; i < flags.length; i++)
|
||||
{
|
||||
if (flags[i] === 0)
|
||||
{
|
||||
filterNull = true;
|
||||
}
|
||||
}
|
||||
|
||||
sql += " AND (b.bes_bestelopdr_flag IN (" + flags.join(",") + ")"
|
||||
+ (filterNull ? " OR b.bes_bestelopdr_flag IS NULL" : "")
|
||||
+ " )";
|
||||
}
|
||||
}
|
||||
|
||||
// apply 3D authorization to the locations and to the to the organisations (both ALG and PRS)
|
||||
@@ -307,6 +330,33 @@ function opdr_list (pautfunction, params)
|
||||
return safe.html(bestellingvoor);
|
||||
}
|
||||
|
||||
function fncolFlags(oRs)
|
||||
{
|
||||
var bestelopdr_key = oRs("bes_bestelopdr_key").Value;
|
||||
var flagkey = oRs("bes_bestelopdr_flag").Value || 0;
|
||||
var ttl = L("lcl_bestelopdr_flag" + flagkey);
|
||||
var displ = "";
|
||||
|
||||
if (print)
|
||||
{
|
||||
if (flagkey != 0) displ = safe.html(ttl); // else blijft-ie gewoon leeg
|
||||
}
|
||||
else if (excel) // dan gewoon maar de code, handig groeperen
|
||||
{
|
||||
displ = flagkey||"";
|
||||
}
|
||||
else // maak er dan nog leuke plaatjes van
|
||||
{
|
||||
var flagIcon = flagkey == 0 ? "fa-circle-o" : "fa-circle";
|
||||
// Met hidden flagkey voor sortering. 999 zorgt dat bij 1 keer sorteren de gevlagde direct bovenaan staan
|
||||
displ = "<div " + ((urole == "bo" || urole == "fo") ? "onclick='toggleBesopdrFlag(event, "+ bestelopdr_key +");'":"")
|
||||
+ " title='"+safe.htmlattr(ttl)+"'>"
|
||||
+ "<i id='besopdrflagimg"+bestelopdr_key+"' flagkey='"+flagkey+"' class='fa "+flagIcon+" besopdrflag"+flagkey+"'></i>"
|
||||
+ "<span style='display:none'>"+(flagkey||999)+"</span></div>";
|
||||
}
|
||||
return displ;
|
||||
}
|
||||
|
||||
var rst = new ResultsetTable({keyColumn: "bes_bestelopdr_key",
|
||||
ID: "opdrtable",
|
||||
rowData: fnrowData,
|
||||
@@ -319,6 +369,10 @@ function opdr_list (pautfunction, params)
|
||||
});
|
||||
|
||||
// Kolommen
|
||||
if (S("bes_bestelopdr_flags") > 0 && !frontend) // Flags
|
||||
{
|
||||
rst.addColumn(new Column({caption: (outputmode == 0 ? I("fa-circle") : L("lcl_bestelopdr_flags")), content: fncolFlags, align: "center"}));
|
||||
}
|
||||
rst.addColumn(new Column({caption: L("lcl_ord_order_num"), content: fncolBesOpdrId}));
|
||||
rst.addColumn(new Column({caption: L("lcl_bes_add_date"), content: "datum", datatype: "date"}));
|
||||
rst.addColumn(new Column({caption: L("lcl_bes_Supplier"), content: "prs_bedrijf_naam", tooltip: "tooltip"}));
|
||||
|
||||
@@ -65,3 +65,32 @@ function opdrDeliver(row)
|
||||
FcltMgr.openModalDetail(url, L("lcl_bes_delivery"), {xwidth: 800});
|
||||
}
|
||||
}
|
||||
|
||||
function toggleBesopdrFlag(evt, besopdr_key)
|
||||
{
|
||||
FcltMgr.stopPropagation(evt);
|
||||
|
||||
var flagkey = $('#besopdrflagimg'+besopdr_key).attr('flagkey');
|
||||
var data = { besopdr_key: besopdr_key
|
||||
, flagkey : flagkey
|
||||
};
|
||||
protectRequest.dataToken(data);
|
||||
$.post("../bes/bes_flag.asp"
|
||||
, data
|
||||
, FcltCallbackAndThen(setBesopdrFlag)
|
||||
, "json"
|
||||
);
|
||||
}
|
||||
|
||||
function setBesopdrFlag(data)
|
||||
{ // Zet de flag en het volgnummer van de flag.
|
||||
var bes_key = data.besopdr_key;
|
||||
var flagkey = data.newflag;
|
||||
var flagimg = (flagkey == 0 ? 'fa fa-circle-o besopdrflag'+flagkey : 'fa fa-circle besopdrflag'+flagkey);
|
||||
|
||||
$('#besopdrflagimg'+bes_key).attr('flagkey', flagkey);
|
||||
$('#besopdrflagimg'+bes_key).attr('class', flagimg);
|
||||
$('#besopdrflagimg'+bes_key).parent().attr('title', L("lcl_bestelopdr_flag" + flagkey));
|
||||
$('#besopdrflagimg'+bes_key).next().text(flagkey||999); // Hidden span voor sorteren
|
||||
$('#opdrtable th').removeClass('sorttable_sorted sorttable_sorted_reverse'); // sortable cache't namelijk
|
||||
}
|
||||
@@ -149,6 +149,26 @@ oRs.Close();
|
||||
trclass: "secsearch"
|
||||
}) ;
|
||||
|
||||
if (!frontend && S("bes_bestelopdr_flags") > 1) // Flags checkboxen -->
|
||||
{
|
||||
%>
|
||||
<tr>
|
||||
<td class="label"><label><%=L("lcl_bestelopdr_flags")%>: </label></td>
|
||||
<td id="besFlags">
|
||||
<% for (flagkey=0; flagkey < S("bes_bestelopdr_flags"); flagkey++)
|
||||
{
|
||||
if (flagkey == 0)
|
||||
{
|
||||
%><label for="flag0"><input type="checkbox" name="flag0" id="flag0" checked> <%=safe.html(L("lcl_bestelopdr_flag0"))%></label><br>
|
||||
<% }
|
||||
else
|
||||
{
|
||||
%><label for="flag<%=flagkey%>"><input type="checkbox" name="flag<%=flagkey%>" id="flag<%=flagkey%>" checked><i class="fa fa-circle besopdrflag<%=flagkey%> besopdrs"></i> <%=safe.html(L("lcl_bestelopdr_flag"+flagkey))%></label><br>
|
||||
<% }
|
||||
} %>
|
||||
</td>
|
||||
</tr>
|
||||
<% }
|
||||
%>
|
||||
</table>
|
||||
</td><!-- end column 1 -->
|
||||
|
||||
@@ -65,6 +65,15 @@ else
|
||||
params.adr_key = (adr_key != -1 ? adr_key : null);
|
||||
params.loc_key = (loc_key != -1 ? loc_key : null);
|
||||
|
||||
// Flags
|
||||
var flags = [];
|
||||
for (flagkey=0; flagkey < S("bes_bestelopdr_flags"); flagkey++)
|
||||
{
|
||||
if (getQParam("flag" + flagkey, "off") == "on")
|
||||
flags.push(flagkey);
|
||||
}
|
||||
params.flags = flags;
|
||||
|
||||
// FORM checkboxes
|
||||
var st_opdrRej = (getQParamInt("opdrRej", 0) == 1);
|
||||
var st_opdrOpen = (getQParamInt("opdrOpen", 0) == 1);
|
||||
|
||||
@@ -1630,23 +1630,27 @@ border-spacing: 1px;
|
||||
.finflag0,.finflag1,.finflag2,
|
||||
.finflag3,.finflag4,.finflag5,
|
||||
.finflag6,.finflag7,.finflag8,
|
||||
.finflag9 {
|
||||
.finflag9,
|
||||
.besopdrflag0,.besopdrflag1,.besopdrflag2,
|
||||
.besopdrflag3,.besopdrflag4,.besopdrflag5,
|
||||
.besopdrflag6,.besopdrflag7,.besopdrflag8,
|
||||
.besopdrflag9 {
|
||||
font-size: 1.3em;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.mldflag0, .resflag0, .opdrflag0, .bezflag0, .finflag0 { color: #b0b0b0; }
|
||||
.mldflag1, .resflag1, .opdrflag1, .bezflag1, .finflag1 { color: #4d4d4d; }
|
||||
.mldflag2, .resflag2, .opdrflag2, .bezflag2, .finflag2 { color: #f15854; }
|
||||
.mldflag3, .resflag3, .opdrflag3, .bezflag3, .finflag3 { color: #ffd600; }
|
||||
.mldflag4, .resflag4, .opdrflag4, .bezflag4, .finflag4 { color: #5da5da; }
|
||||
.mldflag5, .resflag5, .opdrflag5, .bezflag5, .finflag5 { color: #60bd68; }
|
||||
.mldflag6, .resflag6, .opdrflag6, .bezflag6, .finflag6 { color: #673ab7; }
|
||||
.mldflag7, .resflag7, .opdrflag7, .bezflag7, .finflag7 { color: #faa43a; }
|
||||
.mldflag8, .resflag8, .opdrflag8, .bezflag8, .finflag8 { color: #b276b2; }
|
||||
.mldflag9, .resflag9, .opdrflag9, .bezflag9, .finflag9 { color: #b2912f; }
|
||||
.mldflag0, .resflag0, .opdrflag0, .bezflag0, .finflag0, .besopdrflag0 { color: #b0b0b0; }
|
||||
.mldflag1, .resflag1, .opdrflag1, .bezflag1, .finflag1, .besopdrflag1 { color: #4d4d4d; }
|
||||
.mldflag2, .resflag2, .opdrflag2, .bezflag2, .finflag2, .besopdrflag2 { color: #f15854; }
|
||||
.mldflag3, .resflag3, .opdrflag3, .bezflag3, .finflag3, .besopdrflag3 { color: #ffd600; }
|
||||
.mldflag4, .resflag4, .opdrflag4, .bezflag4, .finflag4, .besopdrflag4 { color: #5da5da; }
|
||||
.mldflag5, .resflag5, .opdrflag5, .bezflag5, .finflag5, .besopdrflag5 { color: #60bd68; }
|
||||
.mldflag6, .resflag6, .opdrflag6, .bezflag6, .finflag6, .besopdrflag6 { color: #673ab7; }
|
||||
.mldflag7, .resflag7, .opdrflag7, .bezflag7, .finflag7, .besopdrflag7 { color: #faa43a; }
|
||||
.mldflag8, .resflag8, .opdrflag8, .bezflag8, .finflag8, .besopdrflag8 { color: #b276b2; }
|
||||
.mldflag9, .resflag9, .opdrflag9, .bezflag9, .finflag9, .besopdrflag9 { color: #b2912f; }
|
||||
|
||||
.mlds, .ress, .opdrs, .bezs, .fins { /* small flags for search use*/
|
||||
.mlds, .ress, .opdrs, .bezs, .fins, .besopdrs { /* small flags for search use*/
|
||||
font-size: 1em;
|
||||
vertical-align: inherit;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user