测试 删除账户
This commit is contained in:
parent
f9adc57390
commit
2103e3cdc3
|
@ -60,7 +60,15 @@
|
|||
<td class="text-center">
|
||||
<button class="btn btn-outline-primary btn-sm permission-settings-btn" data-bs-toggle="modal" data-bs-target="#userPermissionModal" data-url="{% url 'get_user_existing_permissions' user_id=item.id %}">权限设置</button>
|
||||
</td>
|
||||
<td class="text-center"><a href="#" class="delete-btn" style="color: red;" data-target_id="{{ item.id }}" data-bs-toggle="modal" data-bs-target="#deleteModal">删除</a></td>
|
||||
<td class="text-center">
|
||||
<a href="#"
|
||||
id="deleteBtn"
|
||||
class="delete-btn"
|
||||
style="color: red"
|
||||
data-target_id="{{ item.id }}"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#deleteModal">删除</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% empty %}
|
||||
<tr>
|
||||
|
@ -151,6 +159,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 账户新增编辑模态框 -->
|
||||
<div class="modal fade" id="createAccountProfileModal" tabindex="-1" aria-labelledby="createAccountProfileLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content">
|
||||
|
@ -181,7 +190,9 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% include "delete_modal.html" %}
|
||||
|
||||
<!-- 删除确认模态框 -->
|
||||
{% include 'delete_modal.html' %}
|
||||
|
||||
<script>
|
||||
// 获取 CSRF 令牌
|
||||
|
@ -570,7 +581,7 @@ document.getElementById('createAccountProfiles').addEventListener('click', funct
|
|||
// 处理成功逻辑
|
||||
showAlert('success', '账户创建成功');
|
||||
$('#createAccountProfileModal').modal('hide');
|
||||
fetchEmployeeList(); // 刷新员工列表
|
||||
location.reload();
|
||||
} else {
|
||||
// 处理失败逻辑
|
||||
showAlert('danger', '账户创建失败');
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
from django.urls import path, include
|
||||
|
||||
from django.contrib.auth import views as auth_views
|
||||
|
||||
from .views import *
|
||||
|
||||
urlpatterns = [
|
||||
|
@ -9,6 +7,7 @@ urlpatterns = [
|
|||
path('login/', custom_login_view, name='user_login'),
|
||||
path('logout/', logout_view, name='user_logout'),
|
||||
path('password_reset/', include('django.contrib.auth.urls')),
|
||||
path('delete/', delete_account_profile, name='delete_account_profile'),
|
||||
path('homepage', user_homepage_view, name='user_homepage'),
|
||||
|
||||
# 账号权限管理
|
||||
|
|
|
@ -4,7 +4,7 @@ from datetime import datetime, date
|
|||
|
||||
from django.db import transaction
|
||||
from django.db.models import Q, Sum
|
||||
from django.http import JsonResponse
|
||||
from django.http import JsonResponse, HttpResponseNotFound
|
||||
from django.shortcuts import redirect, render, get_object_or_404
|
||||
|
||||
# Django组件导入
|
||||
|
@ -12,6 +12,7 @@ from django.contrib import messages
|
|||
from django.contrib.auth import logout, login, authenticate
|
||||
from django.contrib.auth.decorators import login_required
|
||||
from django.contrib.auth.models import Permission, User, Group
|
||||
from django.urls import reverse
|
||||
from django.utils.timezone import now
|
||||
from django.views.decorators.csrf import csrf_protect
|
||||
from django.views.decorators.http import require_http_methods
|
||||
|
@ -185,11 +186,22 @@ def user_permissions_list(request):
|
|||
'query_params': query_params,
|
||||
"columns": ["姓名", "邮箱", "一级部门", "职务", "在职状态", "账号状态", "账号类型"],
|
||||
'items': items,
|
||||
"delete_url": reverse("delete_account_profile"),
|
||||
}
|
||||
|
||||
return render(request, 'accounts/user_permissions_list.html', context)
|
||||
|
||||
|
||||
@login_required
|
||||
@custom_permission_required('auth.delete_user')
|
||||
def delete_account_profile(request):
|
||||
if request.method == 'GET':
|
||||
user_id = request.GET.get('id')
|
||||
AccountProfile.objects.filter(user_id=user_id).delete()
|
||||
return JsonResponse({"message": "删除成功"})
|
||||
return JsonResponse({"message": "无效的请求方法"}, status=405)
|
||||
|
||||
|
||||
@login_required()
|
||||
@custom_permission_required('auth.view_permission')
|
||||
def get_user_existing_permissions(request, user_id):
|
||||
|
|
|
@ -128,11 +128,15 @@
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
<td class="text-center">
|
||||
<a href="#" class="edit-btn"
|
||||
<a href="#"
|
||||
id="editBtn"
|
||||
class="edit-btn"
|
||||
data-id="{{ item|get_pk_value }}"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#addEditModal">编辑</a>
|
||||
<a href="#" class="delete-btn"
|
||||
<a href="#"
|
||||
id="deleteBtn"
|
||||
class="delete-btn"
|
||||
style="color: red;"
|
||||
data-id="{{ item|get_pk_value }}"
|
||||
data-bs-toggle="modal"
|
||||
|
@ -176,6 +180,7 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal fade" id="resignationModal" tabindex="-1" role="dialog" aria-labelledby="resignationModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
|
@ -208,6 +213,7 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal fade" id="salaryChangeModal" tabindex="-1" role="dialog" aria-labelledby="salaryChangeModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
|
|
|
@ -220,7 +220,7 @@ def emp_list_modify(request):
|
|||
@custom_permission_required('hrm_mgnt.delete_employeeinformation')
|
||||
def emp_list_delete(request):
|
||||
if request.method == 'GET':
|
||||
employee_id = request.GET.get('employee_id')
|
||||
employee_id = request.GET.get('id')
|
||||
EmployeeInformation.objects.filter(employee_id=employee_id).delete()
|
||||
return JsonResponse({"message": "删除成功"})
|
||||
return JsonResponse({"message": "无效的请求方法"}, status=405)
|
||||
|
|
|
@ -1,14 +1,11 @@
|
|||
{% load static %}
|
||||
|
||||
<div id="deleteModal" class="modal fade" tabindex="-1" role="dialog"
|
||||
aria-labelledby="deleteModalLabel" aria-hidden="true">
|
||||
<div id="deleteModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="deleteModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="deleteModalLabel">提示
|
||||
</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal"
|
||||
aria-label="Close"></button>
|
||||
<h5 class="modal-title" id="deleteModalLabel">提示</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>此操作会删除当前数据,是否继续?</p>
|
||||
|
@ -23,38 +20,38 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
const deleteUrl = "{{ delete_url }}";
|
||||
let targetIdToDelete = null;
|
||||
|
||||
$(document).ready(function () {
|
||||
var targetIdToDelete = null;
|
||||
var deleteUrl = "{{ url.delete }}";
|
||||
|
||||
// 删除按钮点击事件,打开删除确认模态框
|
||||
$('.delete-btn').on('click', function () {
|
||||
targetIdToDelete = $(this).data('target_id');
|
||||
$('#deleteModal').modal('show');
|
||||
});
|
||||
|
||||
// 确认删除按钮点击事件
|
||||
$('#confirmDeleteBtn').on('click', function () {
|
||||
if (targetIdToDelete !== null) {
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: deleteUrl,
|
||||
data: {
|
||||
'target_id': targetIdToDelete
|
||||
},
|
||||
success: function (response) {
|
||||
alert('删除成功');
|
||||
location.reload(); // 刷新页面
|
||||
},
|
||||
error: function (response) {
|
||||
alert('删除失败,请重试。');
|
||||
}
|
||||
});
|
||||
// 删除和确认删除
|
||||
$(document).on('click', '#deleteBtn, #confirmDeleteBtn', function (event) {
|
||||
if (event.target.id === 'deleteBtn') {
|
||||
// 打开删除模态框
|
||||
targetIdToDelete = $(this).data('id');
|
||||
$('#deleteModal').modal('show');
|
||||
debugger
|
||||
} else if (event.target.id === 'confirmDeleteBtn') {
|
||||
// 确认删除
|
||||
if (targetIdToDelete !== null) {
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: deleteUrl,
|
||||
data: {
|
||||
'id': targetIdToDelete
|
||||
},
|
||||
success: function (response) {
|
||||
showAlert('success', "删除成功");
|
||||
location.reload();
|
||||
},
|
||||
error: function (response) {
|
||||
showAlert('danger', "删除失败");
|
||||
}
|
||||
});
|
||||
}
|
||||
$('#deleteModal').modal('hide');
|
||||
}
|
||||
$('#deleteModal').modal('hide');
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
|
|
|
@ -258,7 +258,6 @@
|
|||
});
|
||||
}
|
||||
|
||||
|
||||
// 删除和确认删除
|
||||
$(document).on('click', '#deleteBtn, #confirmDeleteBtn', function (event) {
|
||||
if (event.target.id === 'deleteBtn') {
|
||||
|
|
Loading…
Reference in New Issue