/**
* @ngdoc service
* @name GrupoMensageria
* @module s4c.services.GrupoMensageria
*
* @description Componente para acesso a api do backend e/ou comunicação entre controllers
*
*
*/
'use strict';
(function () {
/**
* @method GrupoMensageria
* @param {*} $http
* @param {*} $q
* @param {*} API_ENDPOINT
*/
function GrupoMensageria($http, $q, API_ENDPOINT) {
var service = {
remove: remove,
save: save,
queryByDepartamento: queryByDepartamento
}
/**
* @method remove
* @param {*} id
*/
function remove(id) {
var deferred = $q.defer();
$http.delete(API_ENDPOINT + 'grupo_mensageria/' + id)
.then(function (res) {
if (typeof res.data === 'object') {
deferred.resolve(res.data);
} else {
deferred.reject(res);
}
}, function (err) {
deferred.reject(err);
});
return deferred.promise;
}
/**
* @method save
* @param {*} grupo
*/
function save(grupo) {
var deferred = $q.defer();
$http.put(API_ENDPOINT + 'grupo_mensageria/', grupo)
.then(function (res) {
if (typeof res.data === 'object') {
deferred.resolve(res.data);
} else {
deferred.reject(res);
}
}, function (err) {
deferred.reject(err);
});
return deferred.promise;
}
/**
* @method queryByDepartamento
* @param {*} departamentoId
*/
function queryByDepartamento(departamentoId) {
var deferred = $q.defer();
$http.get(API_ENDPOINT + 'grupo_mensageria/departamento/' + departamentoId)
.then(function (res) {
if (typeof res.data === 'object') {
deferred.resolve(res.data);
} else {
deferred.reject(res);
}
}, function (err) {
deferred.reject(err);
});
return deferred.promise;
}
return service;
}
angular.module('s4c.services.GrupoMensageria', [])
.factory('GrupoMensageria', GrupoMensageria);
GrupoMensageria.$inject = ['$http', '$q', 'API_ENDPOINT'];
}());