Initial commit
This commit is contained in:
@@ -0,0 +1,95 @@
|
||||
(function () {
|
||||
global.dashModule
|
||||
.controller('documentsAddCtrl', ['$scope', '$http', '$', '$translate', 'Upload', 'utilsService', documentsAddController])
|
||||
.directive('documentsAdd', [documentsAddDirective]);
|
||||
|
||||
function documentsAddDirective() {
|
||||
return {
|
||||
restrict: 'E',
|
||||
templateUrl: 'documents/html/documentsAddTemplate'
|
||||
};
|
||||
}
|
||||
|
||||
function documentsAddController($scope, $http, $, $translate, Upload, utilsService) {
|
||||
$scope.getDocumentTypes = getDocumentTypes;
|
||||
$scope.setDocumentTypes = setDocumentTypes;
|
||||
$scope.uploadFile = uploadFile;
|
||||
$scope.selectType = selectType;
|
||||
$scope.getTypeRowClass = getTypeRowClass;
|
||||
$scope.addNewType = addNewType;
|
||||
$scope.hasInfo = hasInfo;
|
||||
$scope.documentTypes = [];
|
||||
$scope.documentName = '';
|
||||
$scope.documentNewType = '';
|
||||
$scope.selectedType = {};
|
||||
|
||||
function getDocumentTypes() {
|
||||
$http({
|
||||
method: 'GET',
|
||||
url: 'documents/api/getDocumentTypes'
|
||||
}).then(setDocumentTypes, utilsService.onHttpError);
|
||||
}
|
||||
|
||||
function setDocumentTypes(response) {
|
||||
if (response.data && response.data.length) {
|
||||
$scope.documentTypes = response.data;
|
||||
}
|
||||
}
|
||||
|
||||
function uploadFile(file) {
|
||||
if (parseInt($scope.selectedType.isSpecialType) === 1) {
|
||||
displayMessage({data: {messages: [{code:'error', 'message': 'INVALID_DOC_TYPE'}]}});
|
||||
} else {
|
||||
Upload.upload({
|
||||
url: 'documents/api/uploadNewDocument',
|
||||
method: 'POST',
|
||||
file: file,
|
||||
data: {
|
||||
idDocumentType: $scope.selectedType.idDocumentType || 0,
|
||||
documentName: $scope.documentName
|
||||
}
|
||||
}).then(displayMessage, utilsService.onHttpError);
|
||||
}
|
||||
}
|
||||
|
||||
function displayMessage(response) {
|
||||
if (typeof response.data.messages !== 'undefined') {
|
||||
response.data.messages.forEach((messageObj) => {
|
||||
const translatedMessage = $translate.instant('documents.messages.' + messageObj.message);
|
||||
utilsService.displayMessage(messageObj.code, translatedMessage);
|
||||
if (messageObj.code === 'success') {
|
||||
getDocumentTypes();
|
||||
$scope.documentName = '';
|
||||
$scope.documentNewType = '';
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function getTypeRowClass(docType) {
|
||||
let rowClass = parseInt(docType.isSpecialType) === 0 ? 'can-add-document' : 'special-document';
|
||||
rowClass += $scope.selectedType === docType ? ' selected-document' : '';
|
||||
return rowClass;
|
||||
}
|
||||
|
||||
function selectType(docType) {
|
||||
$scope.selectedType = docType;
|
||||
}
|
||||
|
||||
function addNewType() {
|
||||
const params = $.param({
|
||||
documentNewType: $scope.documentNewType
|
||||
});
|
||||
|
||||
$http({
|
||||
method: 'POST',
|
||||
url: 'documents/api/addNewDocumnetType',
|
||||
data: params
|
||||
}).then(displayMessage, utilsService.onHttpError);
|
||||
}
|
||||
}
|
||||
|
||||
function hasInfo(selectedType) {
|
||||
return parseInt(selectedType.isSpecialType) === 1 || parseInt(selectedType.idDocumentType) === 1 || parseInt(selectedType.idDocumentType) === 6;
|
||||
}
|
||||
})();
|
||||
Reference in New Issue
Block a user