' );
instance.createToolbar();
instance.createDataGrid();
instance.rootElement.append( instance.toolbar.element().css( { 'margin' : '5px', 'padding-right' : '10px' } ) );
instance.rootElement.append( instance.dataGrid.element() );
return instance.rootElement;
}
TradeDrafts.prototype.createToolbar = function() {
let instance = this;
instance.toolbar = $( '
' ).dxToolbar({
items:[
{
widget: 'dxButton',
location: 'after',
options: {
text: 'New Contract',
},
onClick: function( e ) {
let sReturnURL = '';
if( instance.partnerType == 'OPR' ) {
//console.log( 'OPR Here');
sReturnURL = Fse.Util.updateURL( $("link#PortalDocRootURL").attr( "href" ) + "/index.cfm", {
app : 'OPR.portfolio',
tab : 'tpm',
operatorId : instance.partnerId,
operatorTk : instance.partnerTk
})
//sPartnerURL = $("link#PortalDocRootURL").attr("href") + '/apps/OPR/index.cfm?tab=tpm';
} else {
//console.log( 'CDR Here');
sReturnURL = Fse.Util.updateURL( $("link#PortalDocRootURL").attr( "href" ) + "/index.cfm", {
app : 'CDR.portfolio',
tab : 'tpm',
cdr_recordId : instance.partnerId,
cdr_recordTk : instance.partnerTk
})
//sPartnerURL = $("link#PortalDocRootURL").attr("href") + '/apps/102/details.cfm?distributorId=' + instance.partnerId + '&distributorTk=' + instance.partnerTk + '&tab=tpm';
}
Fse.TPM.newPartnerRequest( instance.partnerType, instance.partnerId, sReturnURL );
}
},{
location : "after", widget : "dxButton", options : {
type : "normal",
icon :"help",
hint : "View Help",
onClick : function( e ) {
Fse.Portal.showQuickHelp( "PartnerTradeDrafts" );
}
}
}
]
}).dxToolbar( 'instance' );
return instance.toolbar.element();
}
TradeDrafts.prototype.createDataGrid = function( sAgreementType ) {
let instance = this;
if( instance.dataGrid ) {
instance.dataGrid.element().remove();
instance.dataGrid = null;
}
const appDataURL = $( '#appDataURL' ).attr( 'href' );
const agreementDataSource = Fse.Data.createDataSource({
customStore: {
dataURL: appDataURL,
object: 'TPM.tradeDrafts',
objectParams: { partnerId: this.partnerId, partnerType: this.partnerType, agreementType: sAgreementType }
}
});
let colItems = [
{ dataField: 'description', width: '300' },
{ dataField: 'requestType', caption: 'Cost Component' },
{ dataField: 'startDate', dataType: 'date', caption: 'Start' },
{ dataField: 'endDate', dataType: 'date', caption: 'End' },
{ dataField: 'totalEstimatedTrade', dataType: 'number', format: 'currency', caption: 'Est. Cost' },
{ width: '30', name: 'draftActions',
type: 'buttons',
buttons: [{
template: function( data ) {
let button = $( '
' ).addClass( 'dx-icon-overflow' ).css( { 'display' : 'inline-block', 'cursor' : 'pointer' } );
return button;
}
}]
}
];
if( Fse.Portal.appConfiguration.STP.ownerType == "BRO" ) {
colItems.unshift({
dataField: 'mfrName', caption: 'Manufacturer'
})
}
instance.dataGrid = $( '
' ).dxDataGrid({
dataSource: agreementDataSource,
showBorders: false,
columns: colItems,
onCellClick: function( cce ) {
const data = cce.data;
if( cce.column.name === 'draftActions' && data.requestId > 0 ) {
let items = [];
if( Fse.Portal.checkPermission( "TradeManagementAdminEdit" ) || Fse.Portal.appConfiguration.STP.userId == data.createdBy ) {
items.push( { text: 'View/Edit', actionCode: 'editDraft' } );
}
items.push( { text: 'Delete', actionCode: 'deleteDraft' } );
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 ) {
switch( cme.itemData.actionCode ) {
case 'deleteDraft':
instance.deleteDraft( data );
break;
case 'editDraft':
let _editURL = $("link#PortalDocRootURL").attr("href") + '/apps/TPM/index.cfm?view=request&requestId=' + data.requestId + '&tpmAction=EDIT&returnURL=' + encodeURIComponent( sReturnURL );
window.location.href = _editURL;
break;
}
}
cme.component.hide();
},
target: cce.cellElement,
}).appendTo( 'body' ).dxContextMenu( 'show' );
}
},
}).dxDataGrid( 'instance' );
return instance.dataGrid.element();
}
TradeDrafts.prototype.deleteDraft = function( data ) {
let instance = this;
let d = $.Deferred();
if( confirm( 'Delete Draft?' ) ) {
var deleteURL = $("link#PortalDocRootURL").attr("href") + "/apps/TPM/index.cfm?do=deleteRequest";
$.ajax({
url: deleteURL,
method: 'POST',
data: { requestId: data.requestId },
}).done( function( e ) {
d.resolve( e );
instance.dataGrid.refresh();
}).fail( function() {
console.log( 'failed' );
})
}
return d;
}