' ).dxDataGrid({
dataSource: agreementDataSource2,
columnAutoWidth: true,
showBorders: true,
allowColumnResizing: true,
columns: [
{ dataField: 'chainSequence', caption: 'Version',
cellTemplate: function( container, options ) {
let promoNbr = options.data.promoNbr;
let assignedContractNbr = options.data.assignedContractNbr;
let chainSequence = options.data.chainSequence;
let versionNbr = '';
if( promoNbr.split( '.' ).length > 1 ) {
versionNbr = promoNbr.replace( assignedContractNbr + '.', '' );
} else if( typeof chainSequence === 'number' ) {
versionNbr = chainSequence
} else {
versionNbr = assignedContractNbr;
}
container.append( versionNbr );
},
},
{ dataField: 'description', caption: 'Version Description', width: '300' },
{ dataField: 'termStart', caption: 'Start', dataType: 'date' },
{ dataField: 'termEnd', caption: 'End', dataType: 'date' },
{ dataField: 'totalEstimatedTrade', dataType: 'number', format: 'currency', caption: 'Est. Cost' },
{ dataField: 'claimCount', title: '# Claims' },
{ dataField: 'source' },
{ dataField: 'status' },
{ width: '30', name: 'agreementActions',
type: 'buttons',
buttons: [{
template: function( data ) {
let button = $( '
' ).addClass( 'dx-icon-overflow' ).css( { 'display' : 'inline-block', 'cursor' : 'pointer' } );
return button;
}
}]
},
],
onCellClick: function( cce ) {
const data = cce.data;
//console.log( data );
if( cce.column.name === 'agreementActions' && data.requestId > 0 ) {
let items = [
{ text: 'View', actionCode: 'viewRequest' },
];
if( Fse.Portal.appConfiguration.STP.ownerType != "BRO" ) {
items.push( { text: 'Compare', actionCode: 'compare' } );
}
if( data.status == 'APPROVED' && data.lastInTheChain == 'true' ) {
let todayDate = new Date();
let endDate = new Date( Date.parse( data.endDate ) );
if( endDate >= todayDate ) {
if( Fse.Portal.checkPermission( "TradeManagementAdmin" ) && Fse.Portal.appConfiguration.STP.ownerType != "BRO" ) {
items.push( { text: 'Correct', actionCode: 'correct' } );
}
items.push( { text: 'Revise', actionCode: 'revise' } );
}
items.push( { text: 'Renew', actionCode: 'renew' } );
} else if( data.status == 'DRAFT' ) {
items.push( { text: 'Edit', actionCode: 'edit' } );
}
if( data.status == 'APPROVED' ) {
items.push( { text: 'Agreement PDF', actionCode: 'agreementPDF' } );
items.push( { text: 'Email Agreement PDF', actionCode: 'emailAgreementPDF' } );
if( data.claimCount > 0 ) {
items.push( { text: 'View Claims', actionCode: 'viewClaims' } );
}
if( Fse.Portal.checkPermission( "TradeManagementAdmin" ) && Fse.Portal.appConfiguration.STP.ownerType != "BRO" ) {
if( ( data.paymentMethod == 'BB' && data.payableTo == data.primaryPartnerType ) || ( data.payableTo != data.primaryPartnerType ) ) {
items.push( { text: 'Process Claim', actionCode: 'processClaim' } );
}
items.push( { text: 'Export', actionCode: 'export' } );
}
}
if( ( data.status == "DRAFT" || data.status == "REJECTED" )|| ( Fse.Portal.checkPermission( "TradeManagementDeleteApprovedAgreements" ) && data.status == "APPROVED" && data.claimCount == 0 && data.lastInTheChain ) ) {
items.push( { text: 'Delete', actionCode: 'delete' } );
}
/*if( Fse.Portal.checkPermission( "TradeManagementDeleteApprovedAgreements" ) && data.status == "APPROVED" && data.claimCount == 0 && data.lastInTheChain ) {
items.push( { text: 'Delete', actionCode: 'delete' } );
}*/
if( Fse.Portal.checkPermission( "TradeManagementAdmin" ) && data.contractId > 0 && data.claimCount > 0 ) {
items.push( { text: 'Audit Diary', actionCode: 'auditDiary' } );
}
if( Fse.Portal.checkPermission( "TradeManagementAgreementSequencing" ) && data.externalAgreement != 'Y' ) {
items.push( { text: 'Version Sequencing...', actionCode: 'versionSequence' } );
}
if( Fse.Portal.checkPermission( "TradeManagementAdminEdit" ) && data.status == 'APPROVED' ) {
items.push( { text: 'Admin Edit', actionCode: 'adminEdit' } );
}
//let sReturnURL = $("link#PortalDocRootURL").attr("href") + '/apps/OPR/index.cfm?operatorId=' + data.primaryPartnerId + '&operatorTk=' + data.partnerTk + 'tab=tpm';
//let sReturnURL = $("link#PortalDocRootURL").attr("href") + '/index.cfm?app=OPR.portfolio';
let sReturnURL = '';
if( instance.partnerType == 'OPR' ) {
sReturnURL = Fse.Util.updateURL( $("link#PortalDocRootURL").attr( "href" ) + "/index.cfm", {
app : 'OPR.portfolio',
tab : 'tpm',
operatorId : instance.partnerId,
operatorTk : instance.partnerTk
})
} else {
sReturnURL = Fse.Util.updateURL( $("link#PortalDocRootURL").attr( "href" ) + "/index.cfm", {
app : 'CDR.portfolio',
tab : 'tpm',
cdr_recordId : instance.partnerId,
cdr_recordTk : instance.partnerTk
})
}
$( '
' ).dxContextMenu( {
items: items,
hideOnOutsideClick: true,
onHidden: function( cme ) {
cme.component.element().remove();
cme.component.dispose();
},
onItemClick: function( cme ) {
if( cme.itemData.actionCode ) {
let _agreementURL = $("link#PortalDocRootURL").attr("href") + '/public/agreementPDF.cfm?r=' + data.requestId + '&t=' + data.requestTk + '&fileName=' + encodeURIComponent( data.assignedContractNbr + '.pdf' );
switch( cme.itemData.actionCode ) {
case 'viewRequest':
Fse.TPM.viewRequest( data.requestId );
break;
case 'compare':
let prevVersionReqId = 0;
if( data.sourceRequestId > 0 ) {
prevVersionReqId = data.sourceRequestId;
}
Fse.TPM.compare( { requestId: data.requestId, partnerType: data.payableTo, compareRequestId: prevVersionReqId, returnURL: sReturnURL } );
break;
case 'correct':
case 'edit':
let _editURL = $("link#PortalDocRootURL").attr("href") + '/apps/TPM/index.cfm?view=request&requestId=' + data.requestId + '&tpmAction=EDIT&returnURL=' + encodeURIComponent( sReturnURL );
//window.open( _editURL, '_blank' );
window.location.href = _editURL;
break;
case 'revise':
let _reviseURL = $("link#PortalDocRootURL").attr("href") + '/apps/TPM/index.cfm?view=directEntry&requestId=' + data.requestId + '&tpmAction=REVISE&returnURL=' + encodeURIComponent( sReturnURL );
//window.open( _reviseURL, '_blank' );
window.location.href = _reviseURL;
break;
case 'renew':
let _renewURL = $("link#PortalDocRootURL").attr("href") + '/apps/TPM/index.cfm?view=directEntry&requestId=' + data.requestId + '&tpmAction=RENEW&returnURL=' + encodeURIComponent( sReturnURL );
//window.open( _renewURL, '_blank' );
window.location.href = _renewURL;
break;
case 'agreementPDF':
window.open( _agreementURL, '_blank' );
//window.location.href = _agreementURL;
break;
case 'emailAgreementPDF':
// Fse.Portal.showEmailDialog( null, _agreementURL );
{
let es = new EmailSender( {
subject : "Trade Agreement PDF",
attachmentLinks : [
{ text : "Trade Agreement PDF", href : _agreementURL }
],
trackingCode : "TPM061"
});
es.show();
}
break;
case 'viewClaims':
//let _viewClaimURL = $("link#PortalDocRootURL").attr("href") + '/apps/OPR/index.cfm?do=gotoMyCustomer&operatorId=' + data.primaryPartnerId + '&operatorTk=' + data.primaryPartnerType;
//window.open( _viewClaimURL, '_blank' );
TradeAgreements.prototype.goToTab( 2 );
break;
case 'processClaim':
if( data.paymentMethod == 'BB' && data.payableTo == data.primaryPartnerType ) {
Fse.TPM.newClaim( { requestId: data.requestId, partnerType: data.primaryPartnerType, partnerId: data.primaryPartnerId, returnURL: sReturnURL } );
} else {
Fse.TPM.newClaim( { requestId: data.requestId, partnerType: data.payableTo, returnURL: sReturnURL } );
}
break;
case 'export':
let _exportURL = $("link#PortalDocRootURL").attr("href") + '/apps/TPM/index.cfm?ajax=agreementExport&mode=direct&requestId=' + data.requestId;
//window.open( _exportURL, '_blank' );
window.location.href = _exportURL;
break;
case 'auditDiary':
Fse.Portal.openWebLog( 'TPM', 'TMT', data.contractId, 'Contract Notes' );
break;
case 'versionSequence':
let _versionSequenceURL = $("link#PortalDocRootURL").attr("href") + '/apps/TPM/index.cfm?view=agreementMaintenance&contractId=' + data.contractId + '&returnURL=' + encodeURIComponent( sReturnURL );
//window.open( _versionSequenceURL, '_blank' );
window.location.href = _versionSequenceURL;
break;
case 'adminEdit':
let _adminEditURL = $("link#PortalDocRootURL").attr("href") + '/apps/TPM/index.cfm?view=request&requestId=' + data.requestId + '&tpmAction=EDIT&returnURL=' + encodeURIComponent( sReturnURL ) + '&adminEdit=true';
//window.open( _adminEditURL, '_blank' );
window.location.href = _adminEditURL;
break;
case 'delete':
//alert( 'Hello World' );
instance.deleteRequest( data.requestId );
break;
}
}
cme.component.hide();
},
target: cce.cellElement,
}).appendTo( 'body' ).dxContextMenu( 'show' );
}
},
}).appendTo( container );
}
}
}).dxDataGrid( 'instance' );
return instance.dataGrid.element();
}
TradeAgreements.prototype.deleteRequest = function( nRequestId ) {
let instance = this;
const loadPanel = $("
").dxLoadPanel( { message : "Deleting, please wait...", }).appendTo( "body" ).dxLoadPanel( "instance" );
let d = $.Deferred();
if( confirm( 'Delete Request?' ) ) {
loadPanel.show();
var deleteURL = $("link#PortalDocRootURL").attr("href") + "/apps/TPM/index.cfm?do=deleteRequest";
$.ajax({
url: deleteURL,
method: 'POST',
data: { requestId: nRequestId },
}).done( function( e ) {
d.resolve( e );
loadPanel.hide();
instance.dataGrid.refresh();
}).fail( function() {
console.log( 'failed' );
})
}
return d;
}
TradeAgreements.prototype.goToTab = function( tabIndex ) {
let tabsInstance = $( '#tradeTabs' ).dxTabPanel( 'instance' );
tabsInstance.option( 'selectedIndex', tabIndex );
}