SmartIT_Extensions/BMC/smart-it-full-helix/scripts/app/asset/asset-contract-directive.js

41 lines
1.5 KiB
JavaScript

"use strict";
/**
* Created by ygowtham on 6/12/2015.
*/
angular.module('assetModule')
.directive('assetContract', ['relationModel', 'metadataModel', '$q', function (relationModel, metadataModel, $q) {
return {
restrict: 'E',
replace: true,
scope: {
context: '=',
isDraft: '='
},
link: function (scope) {
scope.state = {
loadingContracts: true
};
function getRelatedContracts() {
$q.all([metadataModel.getMetadataByType(EntityVO.TYPE_CONTRACT), relationModel.getRelations(scope.context.reconciliationId, scope.context.ticketType)])
.then(function (result) {
scope.metadata = result[0];
scope.savedContracts = _.filter(result[1], ({ type: EntityVO.TYPE_CONTRACT }));
}).finally(function () {
scope.state.loadingContracts = false;
});
}
scope.getSelectedTypeObject = function (type, value) {
var val = _.find(scope.metadata[type], { name: value });
if (!val) {
return value;
}
else {
return val.label;
}
};
getRelatedContracts();
},
templateUrl: 'views/resource/asset-contract.html'
};
}]);