Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

sensors.controller.js 2.8KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. angular.module('camotionAdmin')
  2. .controller('SensorsController', ['$scope', 'SensorsService', 'HelperService', '$q', 'luticateAuthCache',
  3. function($scope, SensorsService, HelperService, $q, luticateAuthCache) {
  4. $scope.foreighLoaded = false;
  5. $scope.hosts = {};
  6. $scope.sensorTypes = {};
  7. $scope.luTable = {
  8. columns: [
  9. {
  10. name: "Name",
  11. width: 3,
  12. getValue: function (item) {
  13. return item.Name;
  14. }
  15. },
  16. {
  17. name: "Type",
  18. width: 3,
  19. getValue: function (item) {
  20. return $scope.sensorTypes[item.SensorTypeId].Name;
  21. }
  22. }, {
  23. name: "Description",
  24. width: 6,
  25. getValue: function (item) {
  26. return item.Description;
  27. }
  28. }
  29. ],
  30. canAdd: function()
  31. {
  32. return luticateAuthCache.hasAllEffectivePermissions([
  33. 'CAMOTION_SENSOR_ADD',
  34. 'CAMOTION_HOST_GET'
  35. ])
  36. },
  37. canDel: 'CAMOTION_SENSOR_DEL',
  38. canEdit: function()
  39. {
  40. return true;
  41. },
  42. getLoadPagePromise: function (page, perPage, query, promise) {
  43. var defer = $q.defer();
  44. SensorsService.getAll({page: page, perPage: perPage, query: query}, promise)
  45. .then(function(sensors)
  46. {
  47. if (!$scope.foreighLoaded) {
  48. HelperService.getForeignEntities(SensorsService, promise).then(function (data) {
  49. $scope.hosts = data.hosts;
  50. $scope.sensorTypes = data.types;
  51. $scope.foreighLoaded = true;
  52. defer.resolve(sensors);
  53. }, defer.reject);
  54. }
  55. else {
  56. defer.resolve(sensors);
  57. }
  58. }, defer.reject);
  59. return defer.promise;
  60. },
  61. getDelPromise: function (id, promise) {
  62. return SensorsService.del({sensor_id: id}, promise);
  63. },
  64. getEditController: function () {
  65. return "SensorEdit";
  66. }
  67. };
  68. }]);