Skip to content

Commit

Permalink
dnk: use service.edit() from user_services module
Browse files Browse the repository at this point in the history
  • Loading branch information
danuk committed Aug 1, 2019
1 parent d7a53b3 commit 4ccd69f
Show file tree
Hide file tree
Showing 4 changed files with 55 additions and 55 deletions.
10 changes: 5 additions & 5 deletions admin_html/angular/app/scripts/shm/modules/services_select.js
Expand Up @@ -22,17 +22,17 @@ angular.module('shm_services_select', [
request = request + '?' + key_field + '=' + $scope.id;
}

shm_request('GET', request).then(function(data) {
if (!data) return;
$scope.items = data;
shm_request('GET', request).then(function(rows) {
if (!rows) return;
$scope.items = rows;

if ( $scope.id ) {
data.forEach(function(item) {
rows.forEach(function(item) {
if ( $scope.id == item[key_field] ) {
$scope.data = item;
}
});
} else $scope.data = data[0];
} else $scope.data = rows[0];
});
},
templateUrl: "views/shm/modules/services-list/select.html"
Expand Down
86 changes: 39 additions & 47 deletions admin_html/angular/app/scripts/shm/services.js
@@ -1,35 +1,16 @@
angular
.module('shm_services', [
])
.controller('ShmServicesController', ['$scope', '$modal', 'shm', 'shm_request', function($scope, $modal, shm, shm_request) {
'use strict';

var url = 'admin/service.cgi';
$scope.url = url;

$scope.parent_key_id = 'service_id';

$scope.columnDefs = [
{
field: 'service_id',
width: 100,
},
{
field: 'name',
width: 500,
},
{field: 'category'},
{field: 'cost', displayName: 'Цена'},
];

$scope.service_editor = function (title, row, size) {
.service('shm_services', ['$modal', 'shm', 'shm_request', function($modal, shm, shm_request) {
this.edit = function(row, title) {
return $modal.open({
templateUrl: 'views/service_edit.html',
controller: function ($scope, $modalInstance, $modal) {
$scope.title = title;
$scope.title = title || 'Редактирование услуги';
$scope.data = angular.copy(row);
$scope.data.children = [];

var url = 'admin/service.cgi';

// Load all services
shm_request('GET','/'+url).then(function(data) {
$scope.services = data;
Expand All @@ -47,11 +28,15 @@ angular
};

$scope.save = function () {
$modalInstance.close( $scope.data );
shm_request( $scope.data.service_id ? 'POST_JSON' : 'PUT_JSON','/'+url, $scope.data ).then(function(row) {
$modalInstance.close( $scope.data );
});
};

$scope.delete = function () {
$modalInstance.dismiss('delete');
shm_request('DELETE','/'+url+'?service_id='+row.service_id ).then(function() {
$modalInstance.dismiss('delete');
})
};

$scope.editSubServices = function(service_id,children) {
Expand All @@ -68,16 +53,29 @@ angular
});
};
},
size: size,
});
}

var save_service = function( row, save_data ) {
delete save_data.$$treeLevel;
shm_request('POST_JSON','/'+url, save_data ).then(function(new_data) {
angular.extend( row, new_data );
size: 'lg',
});
};
}])
.controller('ShmServicesController', ['$scope', 'shm_services', function($scope, shm_services) {
'use strict';

var url = 'admin/service.cgi';
$scope.url = url;
$scope.parent_key_id = 'service_id';

$scope.columnDefs = [
{
field: 'service_id',
width: 100,
},
{
field: 'name',
width: 500,
},
{field: 'category'},
{field: 'cost', displayName: 'Цена'},
];

$scope.add = function() {
var row = {
Expand All @@ -86,26 +84,20 @@ angular
cost: 0,
};

$scope.service_editor('Создание услуги', row, 'lg').result.then(function(data){
shm_request('PUT_JSON','/'+url, data ).then(function(row) {
row.$$treeLevel = 0;
$scope.gridOptions.data.push( row );
});
shm_services.edit(row, 'Создание услуги').result.then(function(data){
data.$$treeLevel = 0;
$scope.gridOptions.data.push( data );
}, function(cancel) {
});
};

$scope.row_dbl_click = function(row) {
$scope.service_editor('Редактирование услуги', row, 'lg').result.then(function(data){
save_service( row, data );
shm_services.edit(row).result.then(function(data){
delete row.$$treeLevel;
angular.extend( row, data );
}, function(resp) {
if ( resp === 'delete' ) {
shm_request('DELETE','/'+url+'?service_id='+row.service_id ).then(function() {
$scope.gridOptions.data.splice(
$scope.gridOptions.data.indexOf( row ),
1
);
})
$scope.gridOptions.data.splice( $scope.gridOptions.data.indexOf( row ), 1 );
}
});
}
Expand Down
10 changes: 9 additions & 1 deletion admin_html/angular/app/scripts/shm/user_services.js
@@ -1,8 +1,9 @@
angular
.module('shm_user_services', [
'shm_spool',
'shm_services',
])
.service('shm_user_services', [ '$q', '$modal', 'shm_request', 'shm_spool', function( $q, $modal, shm_request, shm_spool ) {
.service('shm_user_services', [ '$q', '$modal', 'shm_request', 'shm_spool', 'shm_services', function( $q, $modal, shm_request, shm_spool, shm_services ) {
this.add = function(data) {
return $modal.open({
templateUrl: 'views/user_service_add.html',
Expand Down Expand Up @@ -87,6 +88,13 @@ angular
}
})
};

$scope.edit_service = function() {
shm_services.edit( $scope.data.service ).result.then(function(data){
angular.extend( $scope.data.service, data );
}, function(resp) {
});
}
},
size: size,
});
Expand Down
4 changes: 2 additions & 2 deletions admin_html/angular/app/views/user_service_edit.html
Expand Up @@ -12,10 +12,10 @@ <h4 class="modal-title">{{ title }}</h4>
<div class="form-group">
<label class="col-sm-2 control-label">Услуга</label>
<div class="col-sm-8">
<services-list id="data.service_id" readonly></services-list>
<services-list id="data.service_id" data="data.service" readonly></services-list>
</div>
<div class="col-sm-2">
<a ng-click="editService(data.service_id)" class="btn btn-default"><i class="ti ti-info"></i></a>
<a ng-click="edit_service()" class="btn btn-default"><i class="ti ti-info"></i></a>
</div>
</div>
<div class="form-group">
Expand Down

0 comments on commit 4ccd69f

Please sign in to comment.