sf-i-events 1.0.954 → 1.0.955
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dev/index.html +4 -4
- package/package.json +1 -1
- package/sf-i-events.d.ts +6 -0
- package/sf-i-events.js +142 -24
- package/src/sf-i-events.ts +128 -5
package/dev/index.html
CHANGED
|
@@ -889,14 +889,14 @@
|
|
|
889
889
|
disablesignoff="yes" disableclientresponse="yes">
|
|
890
890
|
|
|
891
891
|
</sf-i-events> -->
|
|
892
|
-
<sf-i-events projectid="41ab3c86-ccc0-4c0e-8e31-cd079a07a710" projectname="ABC Global" mode="onboarding"
|
|
892
|
+
<!-- <sf-i-events projectid="41ab3c86-ccc0-4c0e-8e31-cd079a07a710" projectname="ABC Global" mode="onboarding"
|
|
893
893
|
locations="{"India":{"Maharashtra":["Pune","Mumbai"],"Telangana":["Telangana"]},"Canada":{"CanadaSO":["CanadaLO"]},"Singapore":{"SingaporeSO":["Orchard","Raffles","Robinson","Tanjong","Tras"]},"United Kingdom":{"UnitedSO":["UnitedLO"]},"United States of America":{"AmericaSO":["AmericaLO"]}}"
|
|
894
894
|
contractstartdate="1/4/2024" apiid="dwqyez2puoxmu.cloudfront.net/event" username="ninad.t@flagggrc.tech"
|
|
895
895
|
apiidstatutes="dnytrdlrmxgsy.cloudfront.net/statute" apiidcompliances="dnytrdlrmxgsy.cloudfront.net/compliance"
|
|
896
896
|
apiidtags="dnytrdlrmxgsy.cloudfront.net/tagging" apiidusers="dnytrdlrmxgsy.cloudfront.net/userprofile"
|
|
897
897
|
disablesignoff="yes" disableclientresponse="yes">
|
|
898
898
|
|
|
899
|
-
</sf-i-events>
|
|
899
|
+
</sf-i-events> -->
|
|
900
900
|
<!-- <sf-i-events id="sf-i-events-next" name="Next Compliances" apiid="dwqyez2puoxmu.cloudfront.net/event"
|
|
901
901
|
apiidstatutes="dnytrdlrmxgsy.cloudfront.net/statute" apiidcompliances="dnytrdlrmxgsy.cloudfront.net/compliance"
|
|
902
902
|
apiidreportformats="dwqyez2puoxmu.cloudfront.net/reportformat"
|
|
@@ -941,7 +941,7 @@
|
|
|
941
941
|
</div>
|
|
942
942
|
|
|
943
943
|
</sf-i-events> -->
|
|
944
|
-
|
|
944
|
+
<sf-i-events name="Calendar" apiid="dwqyez2puoxmu.cloudfront.net/event" mode="consumer"
|
|
945
945
|
apiidtags="dnytrdlrmxgsy.cloudfront.net/tagging" apiidstatutes="dnytrdlrmxgsy.cloudfront.net/statute"
|
|
946
946
|
apiiddefinitions="dwqyez2puoxmu.cloudfront.net/definition"
|
|
947
947
|
apiidreportformats="dwqyez2puoxmu.cloudfront.net/reportformat"
|
|
@@ -970,7 +970,7 @@
|
|
|
970
970
|
<sf-i-reporting id="reporting-format" mode="view"></sf-i-reporting>
|
|
971
971
|
</div>
|
|
972
972
|
|
|
973
|
-
</sf-i-events>
|
|
973
|
+
</sf-i-events>
|
|
974
974
|
<!-- <sf-i-events id="sf-i-events-next" name="Next Compliances" apiid="dwqyez2puoxmu.cloudfront.net/event"
|
|
975
975
|
apiidstatutes="dnytrdlrmxgsy.cloudfront.net/statute" apiidcompliances="dnytrdlrmxgsy.cloudfront.net/compliance"
|
|
976
976
|
apiidreportformats="dwqyez2puoxmu.cloudfront.net/reportformat"
|
package/package.json
CHANGED
package/sf-i-events.d.ts
CHANGED
|
@@ -306,6 +306,11 @@ export declare class SfIEvents extends LitElement {
|
|
|
306
306
|
suspenseFlag: boolean;
|
|
307
307
|
tablecols: string[];
|
|
308
308
|
reportedLocationsVals: any[];
|
|
309
|
+
minRiskMitigated: number;
|
|
310
|
+
minRiskResidual: number;
|
|
311
|
+
maxRiskMitigated: number;
|
|
312
|
+
maxRiskResidual: number;
|
|
313
|
+
finRiskCurrency: string;
|
|
309
314
|
static styles: import("lit").CSSResult;
|
|
310
315
|
_SfIEventsC: any;
|
|
311
316
|
_SfRowError: any;
|
|
@@ -873,6 +878,7 @@ export declare class SfIEvents extends LitElement {
|
|
|
873
878
|
showChooseProject: () => void;
|
|
874
879
|
showChosenProject: () => void;
|
|
875
880
|
showChosenMapping: () => void;
|
|
881
|
+
formatIndianNumber: (num: number) => string;
|
|
876
882
|
truncate: (str: string, n: number, useWordBoundary: boolean, ellipsis?: boolean) => string;
|
|
877
883
|
initListenersAdmin: () => void;
|
|
878
884
|
isAdmin: () => boolean;
|
package/sf-i-events.js
CHANGED
|
@@ -1275,6 +1275,11 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1275
1275
|
this.suspenseFlag = false;
|
|
1276
1276
|
this.tablecols = [];
|
|
1277
1277
|
this.reportedLocationsVals = [];
|
|
1278
|
+
this.minRiskMitigated = 0;
|
|
1279
|
+
this.minRiskResidual = 0;
|
|
1280
|
+
this.maxRiskMitigated = 0;
|
|
1281
|
+
this.maxRiskResidual = 0;
|
|
1282
|
+
this.finRiskCurrency = "";
|
|
1278
1283
|
this.isSelectedLegend = (value) => {
|
|
1279
1284
|
return this.chartSelectedLegend.includes(value);
|
|
1280
1285
|
};
|
|
@@ -2363,6 +2368,49 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
2363
2368
|
html += '</div>';
|
|
2364
2369
|
html += '</div>';
|
|
2365
2370
|
html += '<div class="chart-container d-flex scroll-x align-center"><div part="chart-item" class="chart-item"><canvas id="myChart"></canvas></div><div part="chart-item" class="chart-item"><canvas id="myChart4" class="gone"></canvas></div><div part="chart-item chart-item-middle" class="chart-item"><canvas id="myChart2" class="gone"></canvas></div><div part="chart-item" class="chart-item"><canvas id="myChart3" class="gone"></canvas></div></div>';
|
|
2371
|
+
html += '<div id="fin-risk-container" class="mt-20 w-100 d-flex align-end">';
|
|
2372
|
+
html += `
|
|
2373
|
+
<!-- Left Label -->
|
|
2374
|
+
<div class="d-flex align-end">
|
|
2375
|
+
<span part="financial-risk-title">Financial Risk</span>
|
|
2376
|
+
<sup part="financial-risk-currency">FIN_RISK_CURRENCY</sup>
|
|
2377
|
+
</div>
|
|
2378
|
+
|
|
2379
|
+
<!-- Lower (Residual / Pending Risk) -->
|
|
2380
|
+
<div class="d-flex align-end" part="financial-risk-section">
|
|
2381
|
+
<div part="financial-risk-limit-label" style="font-weight:700;font-size:15px;color:#000;">Lower</div>
|
|
2382
|
+
<div class="d-flex align-center">
|
|
2383
|
+
<div class="d-flex flex-col align-center">
|
|
2384
|
+
<span style="color:#555;font-weight:500;font-size:13px;">Addressed</span>
|
|
2385
|
+
<span style="font-weight:700;font-size:16px;color:#27ae60;">FIN_RISK_MITIGATED_MIN</span>
|
|
2386
|
+
</div>
|
|
2387
|
+
<div class="d-flex flex-col align-center">
|
|
2388
|
+
<span style="color:#555;font-weight:500;font-size:13px;">Pending</span>
|
|
2389
|
+
<span style="font-weight:700;font-size:16px;color:#a0005a;">FIN_RISK_RESIDUAL_MIN</span>
|
|
2390
|
+
</div>
|
|
2391
|
+
</div>
|
|
2392
|
+
</div>
|
|
2393
|
+
|
|
2394
|
+
<!-- Upper (Mitigated / Addressed Risk) -->
|
|
2395
|
+
<div class="d-flex align-end" part="financial-risk-section">
|
|
2396
|
+
<div part="financial-risk-limit-label" style="font-weight:700;font-size:15px;color:#000;">Upper</div>
|
|
2397
|
+
<div style="display:flex;align-items:center;gap:8px;">
|
|
2398
|
+
<div class="d-flex flex-col align-center">
|
|
2399
|
+
<span style="color:#555;font-weight:500;font-size:13px;">Addressed</span>
|
|
2400
|
+
<span style="font-weight:700;font-size:16px;color:#27ae60;">FIN_RISK_MITIGATED_MAX</span>
|
|
2401
|
+
</div>
|
|
2402
|
+
<div class="d-flex flex-col align-center">
|
|
2403
|
+
<span style="color:#555;font-weight:500;font-size:13px;">Pending</span>
|
|
2404
|
+
<span style="font-weight:700;font-size:16px;color:#a0005a;">FIN_RISK_RESIDUAL_MAX</span>
|
|
2405
|
+
</div>
|
|
2406
|
+
</div>
|
|
2407
|
+
</div>
|
|
2408
|
+
`;
|
|
2409
|
+
// html += '<div part="" class="mb-5">Financial Risk</div>'
|
|
2410
|
+
// html += '<table class="w-100 text-center"><thead><tr><th part="financial-risk-header">Risk Status</th><th part="financial-risk-header" class="financial-risk-header">Minimum Risk</th><th part="financial-risk-header" class="financial-risk-header">Maximum Risk</th></tr></thead><tbody>'
|
|
2411
|
+
// html += '<tr><td>Residual</td><td>FIN_RISK_RESIDUAL_MIN</td><td>FIN_RISK_RESIDUAL_MAX</td></tr>'
|
|
2412
|
+
// html += '<tr><td>Mitigated</td><td>FIN_RISK_MITIGATED_MIN</td><td>FIN_RISK_MITIGATED_MAX</td></tr></tbody></table>'
|
|
2413
|
+
html += '</div>';
|
|
2366
2414
|
html += '<div id="chart-settings-controls" class="mt-20"></div>';
|
|
2367
2415
|
html += '<div id="chart-settings"></div>';
|
|
2368
2416
|
}
|
|
@@ -2943,7 +2991,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
2943
2991
|
};
|
|
2944
2992
|
//(firstDay, endDay, 1, lastDay, true, 0, (firstDate.getMonth()), period, firstDate,"From " + firstDay.toLocaleDateString('en-IN') + " To " + endDay.toLocaleDateString('en-IN'), showBackgroundButton)
|
|
2945
2993
|
this.renderEvents = (_firstDay, _endDay, iInit, iLast, showGraph, index, month, period, firstDate = null, parametersTitle, showBackgroundButton, fromDrilldown = false) => {
|
|
2946
|
-
var _a, _b, _c, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45;
|
|
2994
|
+
var _a, _b, _c, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55;
|
|
2947
2995
|
var total = 0, notStarted = 0, approved = 0, pendingApproval = 0, rejected = 0, inTime = 0, pastDueDate = 0, lateExecuted = 0, lateApproved = 0, lateReported = 0, scheduled = 0, partiallyComplied = 0, notComplied = 0, complied = 0, compliedWithGaps = 0, reportedNonCompliance = 0, active = 0, aboutToExpire = 0, expired = 0, terminated = 0;
|
|
2948
2996
|
var html = '';
|
|
2949
2997
|
this.selectedItemIds = [];
|
|
@@ -2954,6 +3002,11 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
2954
3002
|
var slice = 2;
|
|
2955
3003
|
this.eventsInWindow = [];
|
|
2956
3004
|
var lastDay = iLast;
|
|
3005
|
+
this.minRiskMitigated = 0;
|
|
3006
|
+
this.minRiskResidual = 0;
|
|
3007
|
+
this.maxRiskMitigated = 0;
|
|
3008
|
+
this.maxRiskResidual = 0;
|
|
3009
|
+
this.finRiskCurrency = "";
|
|
2957
3010
|
this.clearGraphData();
|
|
2958
3011
|
console.log('this.clearSelectedGraphParam(); 1', this.graphFilter);
|
|
2959
3012
|
this.clearSelectedGraphParam();
|
|
@@ -2993,6 +3046,16 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
2993
3046
|
htmlSummaryCols += '<tr><th class="td-thin">Id</th><th class="td-wide">ObligationTitle</th><th class="td-wide">Status</th><th class="td-wide">Documents</th></tr>';
|
|
2994
3047
|
}
|
|
2995
3048
|
}
|
|
3049
|
+
let tempMinRiskMitigatedLocal = 0;
|
|
3050
|
+
let tempMinRiskResidualLocal = 0;
|
|
3051
|
+
let tempMaxRiskMitigatedLocal = 0;
|
|
3052
|
+
let tempMaxRiskResidualLocal = 0;
|
|
3053
|
+
let tempMinRiskMitigatedGlobal = 0;
|
|
3054
|
+
let tempMinRiskResidualGlobal = 0;
|
|
3055
|
+
let tempMaxRiskMitigatedGlobal = 0;
|
|
3056
|
+
let tempMaxRiskResidualGlobal = 0;
|
|
3057
|
+
this.finRiskCurrency = "";
|
|
3058
|
+
let flagGlobal = false;
|
|
2996
3059
|
for (var i = iInit; i <= iLast; i++) {
|
|
2997
3060
|
let mmdd = "";
|
|
2998
3061
|
if (firstDate == null) {
|
|
@@ -3041,6 +3104,25 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3041
3104
|
}
|
|
3042
3105
|
// const tempEvents2 = JSON.parse(JSON.stringify(this.events));
|
|
3043
3106
|
// //console.log('eventlog2', tempEvents2['06/30'][7].comments, mmdd, j);
|
|
3107
|
+
if (this.finRiskCurrency == "") {
|
|
3108
|
+
this.finRiskCurrency = (_a = this.events[mmdd][j]['localcurrency']) !== null && _a !== void 0 ? _a : "";
|
|
3109
|
+
}
|
|
3110
|
+
if (this.finRiskCurrency != this.events[mmdd][j]['localcurrency'] && this.finRiskCurrency == "") {
|
|
3111
|
+
this.finRiskCurrency = (_b = this.events[mmdd][j]['globalcurrency']) !== null && _b !== void 0 ? _b : "";
|
|
3112
|
+
flagGlobal = true;
|
|
3113
|
+
}
|
|
3114
|
+
if (partStatus == "approved") {
|
|
3115
|
+
tempMinRiskMitigatedLocal = tempMinRiskMitigatedLocal + parseInt((_c = this.events[mmdd][j]['minlocal']) !== null && _c !== void 0 ? _c : "0");
|
|
3116
|
+
tempMaxRiskMitigatedLocal = tempMaxRiskMitigatedLocal + parseInt((_f = this.events[mmdd][j]['maxlocal']) !== null && _f !== void 0 ? _f : "0");
|
|
3117
|
+
tempMinRiskMitigatedGlobal = tempMinRiskMitigatedGlobal + parseInt((_g = this.events[mmdd][j]['minglobal']) !== null && _g !== void 0 ? _g : "0");
|
|
3118
|
+
tempMaxRiskMitigatedGlobal = tempMaxRiskMitigatedGlobal + parseInt((_h = this.events[mmdd][j]['maxglobal']) !== null && _h !== void 0 ? _h : "0");
|
|
3119
|
+
}
|
|
3120
|
+
else {
|
|
3121
|
+
tempMinRiskResidualLocal = tempMinRiskResidualLocal + parseInt((_j = this.events[mmdd][j]['minlocal']) !== null && _j !== void 0 ? _j : "0");
|
|
3122
|
+
tempMaxRiskResidualLocal = tempMaxRiskResidualLocal + parseInt((_k = this.events[mmdd][j]['maxlocal']) !== null && _k !== void 0 ? _k : "0");
|
|
3123
|
+
tempMinRiskResidualGlobal = tempMinRiskResidualGlobal + parseInt((_l = this.events[mmdd][j]['minglobal']) !== null && _l !== void 0 ? _l : "0");
|
|
3124
|
+
tempMaxRiskResidualGlobal = tempMaxRiskResidualGlobal + parseInt((_m = this.events[mmdd][j]['maxglobal']) !== null && _m !== void 0 ? _m : "0");
|
|
3125
|
+
}
|
|
3044
3126
|
notStarted = notStarted + (partStatus == "not-started" ? 1 : 0);
|
|
3045
3127
|
pendingApproval = pendingApproval + (partStatus == "pending-approval" ? 1 : 0);
|
|
3046
3128
|
rejected = rejected + (partStatus == "rejected" ? 1 : 0);
|
|
@@ -3079,9 +3161,9 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3079
3161
|
csvValues += ('"' + ((this.events[mmdd][j]["party1"] + "").replace(/"/g, "") + '",'));
|
|
3080
3162
|
csvValues += ('"' + ((this.events[mmdd][j]["party2"] + "").replace(/"/g, "") + '",'));
|
|
3081
3163
|
csvValues += ('"' + ((this.events[mmdd][j]["party3"] + "").replace(/"/g, "") + '",'));
|
|
3082
|
-
csvValues += ('"' + ((((
|
|
3083
|
-
csvValues += ('"' + ((((
|
|
3084
|
-
csvValues += ('"' + ((((
|
|
3164
|
+
csvValues += ('"' + ((((_p = ((_o = this.events[mmdd][j]["reporters"]) !== null && _o !== void 0 ? _o : [])[0]) !== null && _p !== void 0 ? _p : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3165
|
+
csvValues += ('"' + ((((_r = ((_q = this.events[mmdd][j]["approvers"]) !== null && _q !== void 0 ? _q : [])[0]) !== null && _r !== void 0 ? _r : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3166
|
+
csvValues += ('"' + ((((_t = ((_s = this.events[mmdd][j]["functionheads"]) !== null && _s !== void 0 ? _s : [])[0]) !== null && _t !== void 0 ? _t : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3085
3167
|
csvValues += ('"' + ((this.events[mmdd][j]["duedate"] + "").replace(/"/g, "") + '",'));
|
|
3086
3168
|
csvValues += ('"' + (this.renderStatusString(partStatus, lateStatus, complianceStatus) + '",'));
|
|
3087
3169
|
csvValues += ('"' + (this.getGraphParam(this.events[mmdd][j]) + '"\n'));
|
|
@@ -3108,19 +3190,19 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3108
3190
|
csvValues += ('"' + ((this.events[mmdd][j]["countryname"] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3109
3191
|
csvValues += ('"' + ((this.events[mmdd][j]["entityname"] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3110
3192
|
csvValues += ('"' + ((this.events[mmdd][j]["locationname"] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3111
|
-
csvValues += ('"' + ((((
|
|
3112
|
-
csvValues += ('"' + ((((
|
|
3113
|
-
csvValues += ('"' + ((((
|
|
3114
|
-
csvValues += ('"' + (((
|
|
3193
|
+
csvValues += ('"' + ((((_v = ((_u = this.events[mmdd][j]["reporters"]) !== null && _u !== void 0 ? _u : [])[0]) !== null && _v !== void 0 ? _v : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3194
|
+
csvValues += ('"' + ((((_x = ((_w = this.events[mmdd][j]["approvers"]) !== null && _w !== void 0 ? _w : [])[0]) !== null && _x !== void 0 ? _x : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3195
|
+
csvValues += ('"' + ((((_z = ((_y = this.events[mmdd][j]["functionheads"]) !== null && _y !== void 0 ? _y : [])[0]) !== null && _z !== void 0 ? _z : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3196
|
+
csvValues += ('"' + (((_4 = (_3 = (_2 = (_1 = (_0 = this.events) === null || _0 === void 0 ? void 0 : _0[mmdd]) === null || _1 === void 0 ? void 0 : _1[j]) === null || _2 === void 0 ? void 0 : _2.statute) === null || _3 === void 0 ? void 0 : _3.state) !== null && _4 !== void 0 ? _4 : "") + '",'));
|
|
3115
3197
|
csvValues += ('"' + (this.events[mmdd][j]["jurisdiction"] + '",'));
|
|
3116
|
-
csvValues += ('"' + (((
|
|
3198
|
+
csvValues += ('"' + (((_9 = (_8 = (_7 = (_6 = (_5 = this.events) === null || _5 === void 0 ? void 0 : _5[mmdd]) === null || _6 === void 0 ? void 0 : _6[j]) === null || _7 === void 0 ? void 0 : _7.complianceobj) === null || _8 === void 0 ? void 0 : _8.category) !== null && _9 !== void 0 ? _9 : "") + '",'));
|
|
3117
3199
|
csvValues += ('"' + (this.events[mmdd][j]["subcategory"] + '",'));
|
|
3118
|
-
csvValues += ('"' + (((
|
|
3200
|
+
csvValues += ('"' + (((_14 = (_13 = (_12 = (_11 = (_10 = this.events) === null || _10 === void 0 ? void 0 : _10[mmdd]) === null || _11 === void 0 ? void 0 : _11[j]) === null || _12 === void 0 ? void 0 : _12.statute) === null || _13 === void 0 ? void 0 : _13.name) !== null && _14 !== void 0 ? _14 : "") + '",'));
|
|
3119
3201
|
csvValues += ('"' + ((this.events[mmdd][j]["obligationtype"] + "").replace(/"/g, "") + '",'));
|
|
3120
3202
|
csvValues += ('"' + ((this.events[mmdd][j]["risk"] + "").replace(/"/g, "") + '",'));
|
|
3121
3203
|
csvValues += ('"' + ((this.events[mmdd][j]["riskarea"] + "").replace(/"/g, "") + '",'));
|
|
3122
3204
|
csvValues += ('"' + ((this.events[mmdd][j]["frequency"] + "").replace(/"/g, "") + '",'));
|
|
3123
|
-
csvValues += ('"' + ((((
|
|
3205
|
+
csvValues += ('"' + ((((_19 = (_18 = (_17 = (_16 = (_15 = this.events) === null || _15 === void 0 ? void 0 : _15[mmdd]) === null || _16 === void 0 ? void 0 : _16[j]) === null || _17 === void 0 ? void 0 : _17.complianceobj) === null || _18 === void 0 ? void 0 : _18.subfrequency) !== null && _19 !== void 0 ? _19 : "") + "").replace(/"/g, "") + '",'));
|
|
3124
3206
|
csvValues += ('"' + ((this.events[mmdd][j]["duedate"] + "").replace(/"/g, "") + '",'));
|
|
3125
3207
|
csvValues += ('"' + (this.renderStatusString(partStatus, lateStatus, complianceStatus) + '",'));
|
|
3126
3208
|
csvValues += ('"' + (this.getGraphParam(this.events[mmdd][j]) + '"\n'));
|
|
@@ -3131,16 +3213,16 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3131
3213
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (this.events[mmdd][j]["countryname"] + "").replace(/\((.*?)\)/g, "") + '</td>'
|
|
3132
3214
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (this.events[mmdd][j]["entityname"] + "").replace(/\((.*?)\)/g, "") + '</td>'
|
|
3133
3215
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (this.events[mmdd][j]["locationname"] + "").replace(/\((.*?)\)/g, "") + '</td>'
|
|
3134
|
-
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + ((
|
|
3216
|
+
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + ((_24 = (_23 = (_22 = (_21 = (_20 = this.events) === null || _20 === void 0 ? void 0 : _20[mmdd]) === null || _21 === void 0 ? void 0 : _21[j]) === null || _22 === void 0 ? void 0 : _22.statute) === null || _23 === void 0 ? void 0 : _23.state) !== null && _24 !== void 0 ? _24 : "") + '</td>'
|
|
3135
3217
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["jurisdiction"] + '</td>'
|
|
3136
|
-
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + ((
|
|
3218
|
+
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + ((_29 = (_28 = (_27 = (_26 = (_25 = this.events) === null || _25 === void 0 ? void 0 : _25[mmdd]) === null || _26 === void 0 ? void 0 : _26[j]) === null || _27 === void 0 ? void 0 : _27.complianceobj) === null || _28 === void 0 ? void 0 : _28.category) !== null && _29 !== void 0 ? _29 : "") + '</td>'
|
|
3137
3219
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + this.events[mmdd][j]["subcategory"] + '</td>'
|
|
3138
|
-
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + ((
|
|
3220
|
+
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + ((_34 = (_33 = (_32 = (_31 = (_30 = this.events) === null || _30 === void 0 ? void 0 : _30[mmdd]) === null || _31 === void 0 ? void 0 : _31[j]) === null || _32 === void 0 ? void 0 : _32.statute) === null || _33 === void 0 ? void 0 : _33.name) !== null && _34 !== void 0 ? _34 : "") + '</td>'
|
|
3139
3221
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["obligationtype"] + '</td>'
|
|
3140
3222
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["risk"] + '</td>'
|
|
3141
3223
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + this.events[mmdd][j]["riskarea"] + '</td>'
|
|
3142
3224
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["frequency"] + '</td>'
|
|
3143
|
-
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (((
|
|
3225
|
+
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (((_39 = (_38 = (_37 = (_36 = (_35 = this.events) === null || _35 === void 0 ? void 0 : _35[mmdd]) === null || _36 === void 0 ? void 0 : _36[j]) === null || _37 === void 0 ? void 0 : _37.complianceobj) === null || _38 === void 0 ? void 0 : _38.subfrequency) !== null && _39 !== void 0 ? _39 : "") + "").replace(/"/g, "") + '</td>'
|
|
3144
3226
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["duedate"] + '</td>'
|
|
3145
3227
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide text-center status-format">' + this.renderStatusString(partStatus, lateStatus, complianceStatus) + '</td>'
|
|
3146
3228
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide status-format">' + this.getGraphParam(this.events[mmdd][j]) + '</td>'
|
|
@@ -3154,9 +3236,9 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3154
3236
|
csvValues += ('"' + ((this.events[mmdd][j]["countryname"] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3155
3237
|
csvValues += ('"' + ((this.events[mmdd][j]["entityname"] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3156
3238
|
csvValues += ('"' + ((this.events[mmdd][j]["locationname"] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3157
|
-
csvValues += ('"' + ((((
|
|
3158
|
-
csvValues += ('"' + ((((
|
|
3159
|
-
csvValues += ('"' + ((((
|
|
3239
|
+
csvValues += ('"' + ((((_41 = ((_40 = this.events[mmdd][j]["reporters"]) !== null && _40 !== void 0 ? _40 : [])[0]) !== null && _41 !== void 0 ? _41 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3240
|
+
csvValues += ('"' + ((((_43 = ((_42 = this.events[mmdd][j]["approvers"]) !== null && _42 !== void 0 ? _42 : [])[0]) !== null && _43 !== void 0 ? _43 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3241
|
+
csvValues += ('"' + ((((_45 = ((_44 = this.events[mmdd][j]["functionheads"]) !== null && _44 !== void 0 ? _44 : [])[0]) !== null && _45 !== void 0 ? _45 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3160
3242
|
csvValues += ('"' + (this.events[mmdd][j]["lastcheckeddate"] + '",'));
|
|
3161
3243
|
csvValues += ('"' + ((this.events[mmdd][j]["duedate"] + "").replace(/"/g, "") + '",'));
|
|
3162
3244
|
csvValues += ('"' + ((this.events[mmdd][j]["terminated"] ? "Yes" : "No").replace(/"/g, "") + '",'));
|
|
@@ -3182,10 +3264,10 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3182
3264
|
csvValues += ('"' + ((this.events[mmdd][j]["countryname"] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3183
3265
|
csvValues += ('"' + ((this.events[mmdd][j]["entityname"] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3184
3266
|
csvValues += ('"' + ((this.events[mmdd][j]["locationname"] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3185
|
-
csvValues += ('"' + ((((
|
|
3186
|
-
csvValues += ('"' + ((((
|
|
3187
|
-
csvValues += ('"' + ((((
|
|
3188
|
-
csvValues += ('"' + ((((
|
|
3267
|
+
csvValues += ('"' + ((((_47 = ((_46 = this.events[mmdd][j]["functions"]) !== null && _46 !== void 0 ? _46 : [])[0]) !== null && _47 !== void 0 ? _47 : "").split(';')[0] + "").replace(/\((.*?)\)/g, "") + '",'));
|
|
3268
|
+
csvValues += ('"' + ((((_49 = ((_48 = this.events[mmdd][j]["reporters"]) !== null && _48 !== void 0 ? _48 : [])[0]) !== null && _49 !== void 0 ? _49 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3269
|
+
csvValues += ('"' + ((((_51 = ((_50 = this.events[mmdd][j]["approvers"]) !== null && _50 !== void 0 ? _50 : [])[0]) !== null && _51 !== void 0 ? _51 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3270
|
+
csvValues += ('"' + ((((_53 = ((_52 = this.events[mmdd][j]["functionheads"]) !== null && _52 !== void 0 ? _52 : [])[0]) !== null && _53 !== void 0 ? _53 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
|
|
3189
3271
|
csvValues += ('"' + (this.events[mmdd][j]["state"] + '",'));
|
|
3190
3272
|
csvValues += ('"' + (this.events[mmdd][j]["jurisdiction"] + '",'));
|
|
3191
3273
|
csvValues += ('"' + (this.events[mmdd][j]["category"] + '",'));
|
|
@@ -3254,7 +3336,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3254
3336
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide"><sf-i-elastic-text exportparts="highlight,highlight-count" text="' + this.events[mmdd][j]["obligationtitle"] + '" minLength="100" lineSize="4"></sf-i-elastic-text></td>'
|
|
3255
3337
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide"><sf-i-elastic-text exportparts="highlight,highlight-count" text="' + this.renderStatusString(partStatus, lateStatus, complianceStatus) + '" minLength="100" lineSize="4"></sf-i-elastic-text></td>'
|
|
3256
3338
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">');
|
|
3257
|
-
for (let document of (
|
|
3339
|
+
for (let document of (_54 = this.events[mmdd][j].contractdocuments) !== null && _54 !== void 0 ? _54 : []) {
|
|
3258
3340
|
htmlSummaryValues += `<sf-i-uploader class="summary-report-doc" max="10" apiid="1peg5170d3" allowedextensions="["jpg","png","pdf","xls","xlsx","doc","docx"]" prepopulatedInputArr="${JSON.stringify([{ "key": document.key, "ext": document.ext }]).replace(/"/g, '"')}" projectid="${this.projectId} " extract="no" mode="view" maximize="yes" hidepreview="yes"></sf-i-uploader><br />`;
|
|
3259
3341
|
}
|
|
3260
3342
|
htmlSummaryValues += '</td></tr>';
|
|
@@ -3264,7 +3346,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3264
3346
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide"><sf-i-elastic-text exportparts="highlight,highlight-count" text="' + this.events[mmdd][j]["obligationtitle"] + '" minLength="100" lineSize="4"></sf-i-elastic-text></td>'
|
|
3265
3347
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide"><sf-i-elastic-text exportparts="highlight,highlight-count" text="' + this.renderStatusString(partStatus, lateStatus, complianceStatus) + '" minLength="100" lineSize="4"></sf-i-elastic-text></td>'
|
|
3266
3348
|
+ '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">');
|
|
3267
|
-
for (let document of (
|
|
3349
|
+
for (let document of (_55 = this.events[mmdd][j].licensedocuments) !== null && _55 !== void 0 ? _55 : []) {
|
|
3268
3350
|
htmlSummaryValues += `<sf-i-uploader class="summary-report-doc" max="10" apiid="1peg5170d3" allowedextensions="["jpg","png","pdf","xls","xlsx","doc","docx"]" prepopulatedInputArr="${JSON.stringify([{ "key": document.key, "ext": document.ext }]).replace(/"/g, '"')}" projectid="${this.projectId} " extract="no" mode="view" maximize="yes" hidepreview="yes"></sf-i-uploader><br />`;
|
|
3269
3351
|
}
|
|
3270
3352
|
htmlSummaryValues += '</td></tr>';
|
|
@@ -3308,6 +3390,18 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3308
3390
|
}
|
|
3309
3391
|
}
|
|
3310
3392
|
html += this.renderCalendarContainerDivEnd();
|
|
3393
|
+
if (flagGlobal) {
|
|
3394
|
+
this.minRiskMitigated = tempMinRiskMitigatedGlobal;
|
|
3395
|
+
this.maxRiskMitigated = tempMaxRiskMitigatedGlobal;
|
|
3396
|
+
this.minRiskResidual = tempMinRiskResidualGlobal;
|
|
3397
|
+
this.maxRiskResidual = tempMaxRiskResidualGlobal;
|
|
3398
|
+
}
|
|
3399
|
+
else {
|
|
3400
|
+
this.minRiskMitigated = tempMinRiskMitigatedLocal;
|
|
3401
|
+
this.maxRiskMitigated = tempMaxRiskMitigatedLocal;
|
|
3402
|
+
this.minRiskResidual = tempMinRiskResidualLocal;
|
|
3403
|
+
this.maxRiskResidual = tempMaxRiskResidualLocal;
|
|
3404
|
+
}
|
|
3311
3405
|
//console.log('final risk severities', this.riskSeverityData);
|
|
3312
3406
|
//this.period = firstDay?.getDate() + '/' + (firstDay!.getMonth()+1) + '/' + firstDay?.getFullYear() + " - " + endDay?.getDate() + '/' + (endDay!.getMonth()+1) + '/' + endDay?.getFullYear();
|
|
3313
3407
|
this.period = period;
|
|
@@ -3338,6 +3432,11 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
3338
3432
|
html = html.replace("DASHBOARD_ABOUT_TO_EXPIRE", aboutToExpire + "");
|
|
3339
3433
|
html = html.replace("DASHBOARD_EXPIRED", expired + "");
|
|
3340
3434
|
html = html.replace("DASHBOARD_TERMINATED", terminated + "");
|
|
3435
|
+
html = html.replace("FIN_RISK_CURRENCY", this.finRiskCurrency);
|
|
3436
|
+
html = html.replace("FIN_RISK_RESIDUAL_MIN", this.formatIndianNumber(this.minRiskResidual));
|
|
3437
|
+
html = html.replace("FIN_RISK_RESIDUAL_MAX", this.formatIndianNumber(this.maxRiskResidual));
|
|
3438
|
+
html = html.replace("FIN_RISK_MITIGATED_MIN", this.formatIndianNumber(this.minRiskMitigated));
|
|
3439
|
+
html = html.replace("FIN_RISK_MITIGATED_MAX", this.formatIndianNumber(this.maxRiskMitigated));
|
|
3341
3440
|
if (this.selectedFeatures.indexOf("contracts") >= 0) {
|
|
3342
3441
|
this.csvDataStats = 'Period,Total,Not Started,Approved,Pending Approval,Rejected,Past Due Date,Late Reported,Late Executed,Late Approved,Active,About To Expire,Expired,Terminated\n';
|
|
3343
3442
|
this.csvDataStats += this.period + "," + total + "," + notStarted + "," + approved + "," + pendingApproval + "," + rejected + "," + pastDueDate + "," + lateReported + "," + lateExecuted + "," + lateApproved + "," + active + "," + aboutToExpire + "," + expired + "," + terminated;
|
|
@@ -24720,6 +24819,25 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
24720
24819
|
elems[index].style.display = 'flex';
|
|
24721
24820
|
}
|
|
24722
24821
|
};
|
|
24822
|
+
this.formatIndianNumber = (num) => {
|
|
24823
|
+
if (num === null || num === undefined || isNaN(num))
|
|
24824
|
+
return '';
|
|
24825
|
+
num = Number(num);
|
|
24826
|
+
if (num >= 10000000) {
|
|
24827
|
+
// 1 Crore = 10,000,000
|
|
24828
|
+
return (num / 10000000).toFixed(num % 10000000 === 0 ? 0 : 2).replace(/\.00$/, '') + ' Cr';
|
|
24829
|
+
}
|
|
24830
|
+
else if (num >= 100000) {
|
|
24831
|
+
// 1 Lakh = 100,000
|
|
24832
|
+
return (num / 100000).toFixed(num % 100000 === 0 ? 0 : 2).replace(/\.00$/, '') + ' Lac';
|
|
24833
|
+
}
|
|
24834
|
+
else if (num >= 1000) {
|
|
24835
|
+
return (num / 1000).toFixed(num % 1000 === 0 ? 0 : 2).replace(/\.00$/, '') + ' K';
|
|
24836
|
+
}
|
|
24837
|
+
else {
|
|
24838
|
+
return num.toString();
|
|
24839
|
+
}
|
|
24840
|
+
};
|
|
24723
24841
|
this.truncate = (str, n, useWordBoundary, ellipsis = true) => {
|
|
24724
24842
|
if (str.length <= n) {
|
|
24725
24843
|
return str;
|
package/src/sf-i-events.ts
CHANGED
|
@@ -1711,6 +1711,15 @@ export class SfIEvents extends LitElement {
|
|
|
1711
1711
|
tablecols: string[] = []
|
|
1712
1712
|
|
|
1713
1713
|
reportedLocationsVals: any[] = []
|
|
1714
|
+
|
|
1715
|
+
minRiskMitigated: number = 0;
|
|
1716
|
+
minRiskResidual: number = 0;
|
|
1717
|
+
|
|
1718
|
+
maxRiskMitigated: number = 0;
|
|
1719
|
+
maxRiskResidual: number = 0;
|
|
1720
|
+
|
|
1721
|
+
finRiskCurrency: string = "";
|
|
1722
|
+
|
|
1714
1723
|
static override styles = css`
|
|
1715
1724
|
|
|
1716
1725
|
.bg-white {
|
|
@@ -4549,6 +4558,50 @@ export class SfIEvents extends LitElement {
|
|
|
4549
4558
|
html += '</div>';
|
|
4550
4559
|
html += '</div>';
|
|
4551
4560
|
html += '<div class="chart-container d-flex scroll-x align-center"><div part="chart-item" class="chart-item"><canvas id="myChart"></canvas></div><div part="chart-item" class="chart-item"><canvas id="myChart4" class="gone"></canvas></div><div part="chart-item chart-item-middle" class="chart-item"><canvas id="myChart2" class="gone"></canvas></div><div part="chart-item" class="chart-item"><canvas id="myChart3" class="gone"></canvas></div></div>';
|
|
4561
|
+
html += '<div id="fin-risk-container" class="mt-20 w-100 d-flex align-end">'
|
|
4562
|
+
html += `
|
|
4563
|
+
<!-- Left Label -->
|
|
4564
|
+
<div class="d-flex align-end">
|
|
4565
|
+
<span part="financial-risk-title">Financial Risk</span>
|
|
4566
|
+
<sup part="financial-risk-currency">FIN_RISK_CURRENCY</sup>
|
|
4567
|
+
</div>
|
|
4568
|
+
|
|
4569
|
+
<!-- Lower (Residual / Pending Risk) -->
|
|
4570
|
+
<div class="d-flex align-end" part="financial-risk-section">
|
|
4571
|
+
<div part="financial-risk-limit-label" style="font-weight:700;font-size:15px;color:#000;">Lower</div>
|
|
4572
|
+
<div class="d-flex align-center">
|
|
4573
|
+
<div class="d-flex flex-col align-center">
|
|
4574
|
+
<span style="color:#555;font-weight:500;font-size:13px;">Addressed</span>
|
|
4575
|
+
<span style="font-weight:700;font-size:16px;color:#27ae60;">FIN_RISK_MITIGATED_MIN</span>
|
|
4576
|
+
</div>
|
|
4577
|
+
<div class="d-flex flex-col align-center">
|
|
4578
|
+
<span style="color:#555;font-weight:500;font-size:13px;">Pending</span>
|
|
4579
|
+
<span style="font-weight:700;font-size:16px;color:#a0005a;">FIN_RISK_RESIDUAL_MIN</span>
|
|
4580
|
+
</div>
|
|
4581
|
+
</div>
|
|
4582
|
+
</div>
|
|
4583
|
+
|
|
4584
|
+
<!-- Upper (Mitigated / Addressed Risk) -->
|
|
4585
|
+
<div class="d-flex align-end" part="financial-risk-section">
|
|
4586
|
+
<div part="financial-risk-limit-label" style="font-weight:700;font-size:15px;color:#000;">Upper</div>
|
|
4587
|
+
<div style="display:flex;align-items:center;gap:8px;">
|
|
4588
|
+
<div class="d-flex flex-col align-center">
|
|
4589
|
+
<span style="color:#555;font-weight:500;font-size:13px;">Addressed</span>
|
|
4590
|
+
<span style="font-weight:700;font-size:16px;color:#27ae60;">FIN_RISK_MITIGATED_MAX</span>
|
|
4591
|
+
</div>
|
|
4592
|
+
<div class="d-flex flex-col align-center">
|
|
4593
|
+
<span style="color:#555;font-weight:500;font-size:13px;">Pending</span>
|
|
4594
|
+
<span style="font-weight:700;font-size:16px;color:#a0005a;">FIN_RISK_RESIDUAL_MAX</span>
|
|
4595
|
+
</div>
|
|
4596
|
+
</div>
|
|
4597
|
+
</div>
|
|
4598
|
+
`
|
|
4599
|
+
// html += '<div part="" class="mb-5">Financial Risk</div>'
|
|
4600
|
+
// html += '<table class="w-100 text-center"><thead><tr><th part="financial-risk-header">Risk Status</th><th part="financial-risk-header" class="financial-risk-header">Minimum Risk</th><th part="financial-risk-header" class="financial-risk-header">Maximum Risk</th></tr></thead><tbody>'
|
|
4601
|
+
// html += '<tr><td>Residual</td><td>FIN_RISK_RESIDUAL_MIN</td><td>FIN_RISK_RESIDUAL_MAX</td></tr>'
|
|
4602
|
+
// html += '<tr><td>Mitigated</td><td>FIN_RISK_MITIGATED_MIN</td><td>FIN_RISK_MITIGATED_MAX</td></tr></tbody></table>'
|
|
4603
|
+
html += '</div>'
|
|
4604
|
+
|
|
4552
4605
|
html += '<div id="chart-settings-controls" class="mt-20"></div>'
|
|
4553
4606
|
html += '<div id="chart-settings"></div>'
|
|
4554
4607
|
} else {
|
|
@@ -5248,6 +5301,12 @@ export class SfIEvents extends LitElement {
|
|
|
5248
5301
|
|
|
5249
5302
|
var lastDay = iLast;
|
|
5250
5303
|
|
|
5304
|
+
this.minRiskMitigated = 0;
|
|
5305
|
+
this.minRiskResidual = 0;
|
|
5306
|
+
this.maxRiskMitigated = 0;
|
|
5307
|
+
this.maxRiskResidual = 0;
|
|
5308
|
+
this.finRiskCurrency = "";
|
|
5309
|
+
|
|
5251
5310
|
this.clearGraphData();
|
|
5252
5311
|
console.log('this.clearSelectedGraphParam(); 1', this.graphFilter);
|
|
5253
5312
|
this.clearSelectedGraphParam();
|
|
@@ -5284,6 +5343,16 @@ export class SfIEvents extends LitElement {
|
|
|
5284
5343
|
htmlSummaryCols += '<tr><th class="td-thin">Id</th><th class="td-wide">ObligationTitle</th><th class="td-wide">Status</th><th class="td-wide">Documents</th></tr>'
|
|
5285
5344
|
}
|
|
5286
5345
|
}
|
|
5346
|
+
let tempMinRiskMitigatedLocal = 0;
|
|
5347
|
+
let tempMinRiskResidualLocal = 0;
|
|
5348
|
+
let tempMaxRiskMitigatedLocal = 0;
|
|
5349
|
+
let tempMaxRiskResidualLocal = 0;
|
|
5350
|
+
let tempMinRiskMitigatedGlobal = 0;
|
|
5351
|
+
let tempMinRiskResidualGlobal = 0;
|
|
5352
|
+
let tempMaxRiskMitigatedGlobal = 0;
|
|
5353
|
+
let tempMaxRiskResidualGlobal = 0;
|
|
5354
|
+
this.finRiskCurrency = ""
|
|
5355
|
+
let flagGlobal = false;
|
|
5287
5356
|
for (var i = iInit; i <= iLast; i++) {
|
|
5288
5357
|
|
|
5289
5358
|
let mmdd: string = "";
|
|
@@ -5341,6 +5410,25 @@ export class SfIEvents extends LitElement {
|
|
|
5341
5410
|
}
|
|
5342
5411
|
// const tempEvents2 = JSON.parse(JSON.stringify(this.events));
|
|
5343
5412
|
// //console.log('eventlog2', tempEvents2['06/30'][7].comments, mmdd, j);
|
|
5413
|
+
if (this.finRiskCurrency == "") {
|
|
5414
|
+
this.finRiskCurrency = this.events[mmdd][j]['localcurrency'] ?? ""
|
|
5415
|
+
}
|
|
5416
|
+
if (this.finRiskCurrency != this.events[mmdd][j]['localcurrency'] && this.finRiskCurrency == "") {
|
|
5417
|
+
this.finRiskCurrency = this.events[mmdd][j]['globalcurrency'] ?? ""
|
|
5418
|
+
flagGlobal = true
|
|
5419
|
+
}
|
|
5420
|
+
|
|
5421
|
+
if (partStatus == "approved") {
|
|
5422
|
+
tempMinRiskMitigatedLocal = tempMinRiskMitigatedLocal + parseInt(this.events[mmdd][j]['minlocal'] ?? "0")
|
|
5423
|
+
tempMaxRiskMitigatedLocal = tempMaxRiskMitigatedLocal + parseInt(this.events[mmdd][j]['maxlocal'] ?? "0")
|
|
5424
|
+
tempMinRiskMitigatedGlobal = tempMinRiskMitigatedGlobal + parseInt(this.events[mmdd][j]['minglobal'] ?? "0")
|
|
5425
|
+
tempMaxRiskMitigatedGlobal = tempMaxRiskMitigatedGlobal + parseInt(this.events[mmdd][j]['maxglobal'] ?? "0")
|
|
5426
|
+
} else {
|
|
5427
|
+
tempMinRiskResidualLocal = tempMinRiskResidualLocal + parseInt(this.events[mmdd][j]['minlocal'] ?? "0")
|
|
5428
|
+
tempMaxRiskResidualLocal = tempMaxRiskResidualLocal + parseInt(this.events[mmdd][j]['maxlocal'] ?? "0")
|
|
5429
|
+
tempMinRiskResidualGlobal = tempMinRiskResidualGlobal + parseInt(this.events[mmdd][j]['minglobal'] ?? "0")
|
|
5430
|
+
tempMaxRiskResidualGlobal = tempMaxRiskResidualGlobal + parseInt(this.events[mmdd][j]['maxglobal'] ?? "0")
|
|
5431
|
+
}
|
|
5344
5432
|
|
|
5345
5433
|
notStarted = notStarted + (partStatus == "not-started" ? 1 : 0);
|
|
5346
5434
|
pendingApproval = pendingApproval + (partStatus == "pending-approval" ? 1 : 0);
|
|
@@ -5621,6 +5709,17 @@ export class SfIEvents extends LitElement {
|
|
|
5621
5709
|
|
|
5622
5710
|
html += this.renderCalendarContainerDivEnd();
|
|
5623
5711
|
|
|
5712
|
+
if (flagGlobal) {
|
|
5713
|
+
this.minRiskMitigated = tempMinRiskMitigatedGlobal
|
|
5714
|
+
this.maxRiskMitigated = tempMaxRiskMitigatedGlobal
|
|
5715
|
+
this.minRiskResidual = tempMinRiskResidualGlobal
|
|
5716
|
+
this.maxRiskResidual = tempMaxRiskResidualGlobal
|
|
5717
|
+
} else {
|
|
5718
|
+
this.minRiskMitigated = tempMinRiskMitigatedLocal
|
|
5719
|
+
this.maxRiskMitigated = tempMaxRiskMitigatedLocal
|
|
5720
|
+
this.minRiskResidual = tempMinRiskResidualLocal
|
|
5721
|
+
this.maxRiskResidual = tempMaxRiskResidualLocal
|
|
5722
|
+
}
|
|
5624
5723
|
//console.log('final risk severities', this.riskSeverityData);
|
|
5625
5724
|
|
|
5626
5725
|
//this.period = firstDay?.getDate() + '/' + (firstDay!.getMonth()+1) + '/' + firstDay?.getFullYear() + " - " + endDay?.getDate() + '/' + (endDay!.getMonth()+1) + '/' + endDay?.getFullYear();
|
|
@@ -5658,6 +5757,12 @@ export class SfIEvents extends LitElement {
|
|
|
5658
5757
|
html = html.replace("DASHBOARD_EXPIRED", expired + "");
|
|
5659
5758
|
html = html.replace("DASHBOARD_TERMINATED", terminated + "");
|
|
5660
5759
|
|
|
5760
|
+
html = html.replace("FIN_RISK_CURRENCY", this.finRiskCurrency);
|
|
5761
|
+
html = html.replace("FIN_RISK_RESIDUAL_MIN", this.formatIndianNumber(this.minRiskResidual));
|
|
5762
|
+
html = html.replace("FIN_RISK_RESIDUAL_MAX", this.formatIndianNumber(this.maxRiskResidual));
|
|
5763
|
+
html = html.replace("FIN_RISK_MITIGATED_MIN", this.formatIndianNumber(this.minRiskMitigated));
|
|
5764
|
+
html = html.replace("FIN_RISK_MITIGATED_MAX", this.formatIndianNumber(this.maxRiskMitigated));
|
|
5765
|
+
|
|
5661
5766
|
if (this.selectedFeatures.indexOf("contracts") >= 0) {
|
|
5662
5767
|
this.csvDataStats = 'Period,Total,Not Started,Approved,Pending Approval,Rejected,Past Due Date,Late Reported,Late Executed,Late Approved,Active,About To Expire,Expired,Terminated\n';
|
|
5663
5768
|
this.csvDataStats += this.period + "," + total + "," + notStarted + "," + approved + "," + pendingApproval + "," + rejected + "," + pastDueDate + "," + lateReported + "," + lateExecuted + "," + lateApproved + "," + active + "," + aboutToExpire + "," + expired + "," + terminated;
|
|
@@ -22437,7 +22542,7 @@ export class SfIEvents extends LitElement {
|
|
|
22437
22542
|
|
|
22438
22543
|
html += '<td class="left-sticky td-body ' + classBg + '" part="td-key">'
|
|
22439
22544
|
html += '<div class="">';
|
|
22440
|
-
html += '<input id="suspense-' + i + '" type="checkbox" part="input" class="suspense-input"' + ((suspenseList[suspenseKey] != null && suspenseList[suspenseKey] != false) ? ' checked' : '') +'/>';
|
|
22545
|
+
html += '<input id="suspense-' + i + '" type="checkbox" part="input" class="suspense-input"' + ((suspenseList[suspenseKey] != null && suspenseList[suspenseKey] != false) ? ' checked' : '') + '/>';
|
|
22441
22546
|
|
|
22442
22547
|
|
|
22443
22548
|
html += '</div>';
|
|
@@ -22504,9 +22609,9 @@ export class SfIEvents extends LitElement {
|
|
|
22504
22609
|
buttonApply.addEventListener('click', () => {
|
|
22505
22610
|
let inputSuspenseCheckboxes = (this._SfOnboardingSuspenseContainer as HTMLDivElement).querySelectorAll('.suspense-input') as NodeListOf<HTMLInputElement>;
|
|
22506
22611
|
let tempSuspenseList: any = {}
|
|
22507
|
-
for(let inputSuspenseCheckbox of inputSuspenseCheckboxes){
|
|
22612
|
+
for (let inputSuspenseCheckbox of inputSuspenseCheckboxes) {
|
|
22508
22613
|
let index = inputSuspenseCheckbox.id.split("-")[1]
|
|
22509
|
-
if(inputSuspenseCheckbox.checked){
|
|
22614
|
+
if (inputSuspenseCheckbox.checked) {
|
|
22510
22615
|
let item = sourceArray.data.mappings.mappings[index]
|
|
22511
22616
|
let suspenseKey = item.entityid + ';' + item.locationid + ';' + item.id
|
|
22512
22617
|
tempSuspenseList[suspenseKey] = true
|
|
@@ -27887,8 +27992,8 @@ export class SfIEvents extends LitElement {
|
|
|
27887
27992
|
|
|
27888
27993
|
let url = "https://" + this.apiId + "/updatemappedsuspense";
|
|
27889
27994
|
|
|
27890
|
-
const body = {
|
|
27891
|
-
"projectid": this.projectId,
|
|
27995
|
+
const body = {
|
|
27996
|
+
"projectid": this.projectId,
|
|
27892
27997
|
"data": JSON.stringify(data),
|
|
27893
27998
|
}
|
|
27894
27999
|
|
|
@@ -31167,6 +31272,24 @@ export class SfIEvents extends LitElement {
|
|
|
31167
31272
|
|
|
31168
31273
|
}
|
|
31169
31274
|
|
|
31275
|
+
formatIndianNumber = (num: number) => {
|
|
31276
|
+
if (num === null || num === undefined || isNaN(num)) return '';
|
|
31277
|
+
num = Number(num);
|
|
31278
|
+
|
|
31279
|
+
if (num >= 10000000) {
|
|
31280
|
+
// 1 Crore = 10,000,000
|
|
31281
|
+
return (num / 10000000).toFixed(num % 10000000 === 0 ? 0 : 2).replace(/\.00$/, '') + ' Cr';
|
|
31282
|
+
} else if (num >= 100000) {
|
|
31283
|
+
// 1 Lakh = 100,000
|
|
31284
|
+
return (num / 100000).toFixed(num % 100000 === 0 ? 0 : 2).replace(/\.00$/, '') + ' Lac';
|
|
31285
|
+
} else if (num >= 1000) {
|
|
31286
|
+
return (num / 1000).toFixed(num % 1000 === 0 ? 0 : 2).replace(/\.00$/, '') + ' K';
|
|
31287
|
+
} else {
|
|
31288
|
+
return num.toString();
|
|
31289
|
+
}
|
|
31290
|
+
}
|
|
31291
|
+
|
|
31292
|
+
|
|
31170
31293
|
truncate = (str: string, n: number, useWordBoundary: boolean, ellipsis: boolean = true) => {
|
|
31171
31294
|
if (str.length <= n) { return str; }
|
|
31172
31295
|
const subString = str.slice(0, n - 1); // the original check
|