Files
java-tutorials/spring-data-rest/src/main/webapp/view/app.js
T

122 lines
3.5 KiB
JavaScript

var app = angular.module('app',[]);
app.controller('UserCRUDCtrl', ['$scope','UserCRUDService', function ($scope,UserCRUDService) {
$scope.updateUser = function () {
UserCRUDService.updateUser($scope.user.id,$scope.user.name,$scope.user.email)
.then(function success(response){
$scope.message = 'User data updated!';
$scope.errorMessage = '';
},
function error(response){
$scope.errorMessage = 'Error updating user!';
$scope.message = '';
});
}
$scope.getUser = function () {
var id = $scope.user.id;
UserCRUDService.getUser($scope.user.id)
.then(function success(response){
$scope.user = response.data;
$scope.user.id = id;
$scope.message='';
$scope.errorMessage = '';
},
function error (response ){
$scope.message = '';
if (response.status === 404){
$scope.errorMessage = 'User not found!';
}
else {
$scope.errorMessage = "Error getting user!";
}
});
}
$scope.addUser = function () {
if ($scope.user != null && $scope.user.name) {
UserCRUDService.addUser($scope.user.name, $scope.user.email)
.then (function success(response){
$scope.message = 'User added!';
$scope.errorMessage = '';
},
function error(response){
$scope.errorMessage = 'Error adding user!';
$scope.message = '';
});
}
else {
$scope.errorMessage = 'Please enter a name!';
$scope.message = '';
}
}
$scope.deleteUser = function () {
UserCRUDService.deleteUser($scope.user.id)
.then (function success(response){
$scope.message = 'User deleted!';
$scope.user = null;
$scope.errorMessage='';
},
function error(response){
$scope.errorMessage = 'Error deleting user!';
$scope.message='';
})
}
$scope.getAllUsers = function () {
UserCRUDService.getAllUsers()
.then(function success(response){
$scope.users = response.data._embedded.users;
$scope.message='';
$scope.errorMessage = '';
},
function error (response ){
$scope.message='';
$scope.errorMessage = 'Error getting users!';
});
}
}]);
app.service('UserCRUDService',['$http', function ($http) {
this.getUser = function getUser(userId){
return $http({
method: 'GET',
url: 'users/'+userId
});
}
this.addUser = function addUser(name, email){
return $http({
method: 'POST',
url: 'users',
data: {name:name, email:email}
});
}
this.deleteUser = function deleteUser(id){
return $http({
method: 'DELETE',
url: 'users/'+id
})
}
this.updateUser = function updateUser(id,name,email){
return $http({
method: 'PATCH',
url: 'users/'+id,
data: {name:name, email:email}
})
}
this.getAllUsers = function getAllUsers(){
return $http({
method: 'GET',
url: 'users'
});
}
}]);