Skip to content

Commit

Permalink
修复删除Task intervals接口404bug
Browse files Browse the repository at this point in the history
  • Loading branch information
welliamcao committed Jul 16, 2018
1 parent 4c1d669 commit 569fe8f
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 9 deletions.
7 changes: 6 additions & 1 deletion OpsManage/templates/task/task_model.html
Original file line number Diff line number Diff line change
Expand Up @@ -831,13 +831,18 @@ <h4 class="modal-title" id="addIntervalModalLabel">
function onBtnHandleCrontab(obj, id, op) {
var btnObj = $(obj);
var txt = "是否确认删除?";
if (op=='delCrontab'){
var url = '/api/task/crontab/'+ id +'/'
}else if(op=='delInterval'){
var url = '/api/task/intervals/'+ id +'/'
}
var option = {
title : "删除(" + id + ")",
btn : parseInt("0011", 2),
onOk : function() {
$.ajax({
type : 'DELETE',
url : '/api/task/crontab/'+ id +'/',
url : url,
data : {
"id" : id,
"op" : op,
Expand Down
13 changes: 6 additions & 7 deletions api/urls.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
from django.conf.urls import url
from api.views import (wiki_api,assets_api,
deploy_api,cron_api,
logs_api,ansible_api,
db_api,users_api,
orders_api,files_api,
task_api)
from api.views import (wiki_api,assets_api,deploy_api,cron_api,
logs_api,ansible_api,db_api,users_api,
orders_api,files_api,task_api)
urlpatterns = [
url(r'assets/$', assets_api.asset_list),
url(r'assets/(?P<id>[0-9]+)/$', assets_api.asset_detail),
Expand Down Expand Up @@ -62,5 +59,7 @@
url(r'file/download/$', files_api.download_file_list),
url(r'file/download/(?P<id>[0-9]+)/$', files_api.download_file_detail),
url(r'task/crontab/$', task_api.task_crontab_list),
url(r'task/crontab/(?P<id>[0-9]+)/$', task_api.task_crontab_detail),
url(r'task/crontab/(?P<id>[0-9]+)/$', task_api.task_crontab_detail),
url(r'task/intervals/$', task_api.task_intervals_list),
url(r'task/intervals/(?P<id>[0-9]+)/$', task_api.task_intervals_detail),
]
41 changes: 40 additions & 1 deletion api/views/task_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,4 +51,43 @@ def task_crontab_detail(request, id,format=None):
if not request.user.is_superuser:
return Response(status=status.HTTP_403_FORBIDDEN)
snippet.delete()
return Response(status=status.HTTP_204_NO_CONTENT)
return Response(status=status.HTTP_204_NO_CONTENT)

@api_view(['GET', 'POST' ])
@permission_required('djcelery.change_periodictask',raise_exception=True)
def task_intervals_list(request,format=None):
if request.method == 'GET':
snippets = IntervalSchedule.objects.all()
serializer = serializers.TaskIntervalsSerializer(snippets, many=True)
return Response(serializer.data)
elif request.method == 'POST':
serializer = serializers.TaskIntervalsSerializer(data=request.data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data, status=status.HTTP_201_CREATED)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

@api_view(['GET', 'PUT', 'DELETE'])
@permission_required('djcelery.change_periodictask',raise_exception=True)
def task_intervals_detail(request, id,format=None):
try:
snippet = IntervalSchedule.objects.get(id=id)
except IntervalSchedule.DoesNotExist:
return Response(status=status.HTTP_404_NOT_FOUND)

if request.method == 'GET':
serializer = serializers.TaskIntervalsSerializer(snippet)
return Response(serializer.data)

elif request.method == 'PUT':
serializer = serializers.TaskIntervalsSerializer(snippet, data=request.data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

elif request.method == 'DELETE':
if not request.user.is_superuser:
return Response(status=status.HTTP_403_FORBIDDEN)
snippet.delete()
return Response(status=status.HTTP_204_NO_CONTENT)

0 comments on commit 569fe8f

Please sign in to comment.