XH_Digital_Management/application/rsc_mgnt/views.py

283 lines
13 KiB
Python
Raw Normal View History

from django.shortcuts import render
2024-05-31 20:17:40 +08:00
from application.rsc_mgnt.models import *
from common.utils.page_helper import paginate_query_and_assign_numbers
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
def cg_cat_list_view(request):
# 声明查询集
query_set = ConsumableGoodsCategory.objects.filter().order_by('-category_id')
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
# 获取查询参数
category_name = request.GET.get('category_name', '')
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
# 根据提供的参数进行筛选
if request.GET.get('category_name', ''):
query_set = query_set.filter(category_name__icontains=request.GET.get('category_name', ''))
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
# 对查询结果进行分页每页10条记录
items = paginate_query_and_assign_numbers(
request=request,
queryset=query_set,
per_page=10
)
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
# 构建上下文查询参数字符串
query_params = '&category_name={}' + format(category_name)
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
# 准备上下文
context = {
'items': items,
'filters': [{"type": "text", "id": "category_name", "name": "category_name", "label": "类别名称",
"placeholder": "请输入类别名称"}],
'form_action_url': 'cg_cat_list',
'breadcrumb_list': [{"title": "首页", "name": "index"}, {"title": "资源管理", "name": "index"},
{"title": "消耗品类别管理", "name": "cg_cat_list"}],
'query_params': query_params,
'table_columns': [{"header": "类别名称", "field": "category_name"}, {"header": "描述", "field": "description"},
{"header": "操作", "field": "actions"}],
'show_modify_button': True,
'show_add_button': True,
'show_download_button': True,
'show_upload_button': True,
}
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
return render(request, 'rsc_mgnt/cg_cat_list.html', context)
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
def cg_inv_list_view(request):
# 声明查询集
query_set = ConsumableGoodsInventory.objects.filter().order_by('-inventory_id')
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
# 获取查询参数
inventory_id = request.GET.get('inventory_id', '')
2024-05-29 09:27:39 +08:00
2024-05-31 20:17:40 +08:00
# 根据提供的参数进行筛选
if request.GET.get('inventory_id', ''):
query_set = query_set.filter(inventory_id__icontains=request.GET.get('inventory_id', ''))
# 对查询结果进行分页每页10条记录
items = paginate_query_and_assign_numbers(
request=request,
queryset=query_set,
per_page=10
)
# 构建上下文查询参数字符串
query_params = '&inventory_id={}' + format(inventory_id)
# 准备上下文
context = {
'items': items,
'filters': [{"type": "text", "id": "inventory_id", "name": "inventory_id", "label": "库存id",
"placeholder": "请输库存id"}],
'form_action_url': 'cg_inv_list',
'breadcrumb_list': [{"title": "首页", "name": "index"}, {"title": "资源管理", "name": "index"},
{"title": "消耗品库存", "name": "cg_inv_list"}],
'query_params': query_params,
'table_columns': [{"header": "库存ID", "field": "inventory_id"}, {"header": "物品名称", "field": "item"},
{"header": "类别", "field": "category"}, {"header": "规格", "field": "specification"},
{"header": "单位", "field": "unit"}, {"header": "当前库存量", "field": "current_inventory"},
{"header": "安全库存量", "field": "safety_stock"},
{"header": "补货提醒", "field": "replenishment_alert"},
{"header": "库存地", "field": "storage_location"}, {"header": "操作", "field": "actions"}],
'show_modify_button': True,
'show_add_button': True,
'show_download_button': True,
'show_upload_button': True,
}
return render(request, 'rsc_mgnt/cg_inv_list.html', context)
def cmp_phone_reg_list_view(request):
# 声明查询集
query_set = CompanyMobilePhoneUsageRegistry.objects.filter().order_by('-record_id')
# 获取查询参数
mobile_number = request.GET.get('mobile_number', '')
current_user = request.GET.get('current_user', '')
owner = request.GET.get('owner', '')
# 根据提供的参数进行筛选
if request.GET.get('mobile_number', ''):
query_set = query_set.filter(mobile_number__icontains=request.GET.get('mobile_number', ''))
if request.GET.get('current_user', ''):
query_set = query_set.filter(current_user__icontains=request.GET.get('current_user', ''))
if request.GET.get('owner', ''):
query_set = query_set.filter(owner__icontains=request.GET.get('owner', ''))
# 对查询结果进行分页每页10条记录
items = paginate_query_and_assign_numbers(
request=request,
queryset=query_set,
per_page=10
)
# 构建上下文查询参数字符串
query_params = '&mobile_number={}' + format(mobile_number) + '&current_user={}' + format(
current_user) + '&owner={}' + format(owner)
# 准备上下文
context = {
'items': items,
'filters': [{"type": "text", "id": "mobile_number", "name": "mobile_number", "label": "手机号",
"placeholder": "请输入手机号"},
{"type": "text", "id": "current_user", "name": "current_user", "label": "现使用人",
"placeholder": "请输入现使用人"},
{"type": "text", "id": "owner", "name": "owner", "label": "机主", "placeholder": "请输入机主"}],
'form_action_url': 'cmp_phone_reg_list',
'breadcrumb_list': [{"title": "首页", "name": "index"}, {"title": "资源管理", "name": "index"},
{"title": "公司手机号使用登记", "name": "cmp_phone_reg_list"}],
'query_params': query_params,
'table_columns': [{"header": "手机号", "field": "mobile_number"}, {"header": "机主", "field": "owner"},
{"header": "现使用人", "field": "current_user"}, {"header": "用途", "field": "purpose"},
{"header": "操作", "field": "actions"}],
'show_modify_button': True,
'show_add_button': True,
'show_download_button': True,
'show_upload_button': True,
}
return render(request, 'rsc_mgnt/cmp_phone_reg_list.html', context)
def bv_usage_list_view(request):
# 声明查询集
query_set = BusinessVehicleUsageRegistry.objects.filter().order_by('-record_id')
# 获取查询参数
license_plate = request.GET.get('license_plate', '')
checkout_time = request.GET.get('checkout_time', '')
# 根据提供的参数进行筛选
if request.GET.get('license_plate', ''):
query_set = query_set.filter(license_plate__icontains=request.GET.get('license_plate', ''))
if request.GET.get('checkout_time', ''):
query_set = query_set.filter(checkout_time__icontains=request.GET.get('checkout_time', ''))
# 对查询结果进行分页每页10条记录
items = paginate_query_and_assign_numbers(
request=request,
queryset=query_set,
per_page=10
)
# 构建上下文查询参数字符串
query_params = '&license_plate={}' + format(license_plate) + '&checkout_time={}' + format(checkout_time)
# 准备上下文
context = {
'items': items,
'filters': [{"type": "text", "id": "license_plate", "name": "license_plate", "label": "车牌",
"placeholder": "请输入车牌"},
{"type": "date", "id": "checkout_time", "name": "checkout_time", "label": "借用时间"}],
'form_action_url': 'bv_usage_list',
'breadcrumb_list': [{"title": "首页", "name": "index"}, {"title": "资源管理", "name": "index"},
{"title": "商务车使用登记", "name": "bv_usage_list"}],
'query_params': query_params,
'table_columns': [{"header": "车牌", "field": "license_plate"},
{"header": "借出时间", "field": "checkout_time"}, {"header": "借用人", "field": "borrower"},
{"header": "同行人员", "field": "accompanying_personnel"},
{"header": "事由", "field": "reason"}, {"header": "目的地", "field": "destination"},
{"header": "用车天数", "field": "days_of_use"},
{"header": "还车时间", "field": "return_time"}, {"header": "操作", "field": "actions"}],
'show_modify_button': True,
'show_add_button': True,
'show_download_button': True,
'show_upload_button': True,
}
return render(request, 'rsc_mgnt/bv_usage_list.html', context)
def mem_acc_list_view(request):
# 声明查询集
query_set = MembershipAccountsRegistry.objects.filter().order_by('-record_id')
# 获取查询参数
platform_name = request.GET.get('platform_name', '')
status = request.GET.get('status', '')
# 根据提供的参数进行筛选
if request.GET.get('platform_name', ''):
query_set = query_set.filter(platform_name__icontains=request.GET.get('platform_name', ''))
if request.GET.get('status', ''):
query_set = query_set.filter(status__icontains=request.GET.get('status', ''))
# 对查询结果进行分页每页10条记录
items = paginate_query_and_assign_numbers(
request=request,
queryset=query_set,
per_page=10
)
# 构建上下文查询参数字符串
query_params = '&platform_name={}' + format(platform_name) + '&status={}' + format(status)
# 准备上下文
context = {
'items': items,
'filters': [{"type": "text", "id": "platform_name", "name": "platform_name", "label": "平台名称",
"placeholder": "请输入平台名称"},
{"type": "select", "id": "status", "name": "status", "label": "状态",
"options": [{"value": "有效", "display": "有效"}, {"value": "过期", "display": "过期"}]}],
'form_action_url': 'mem_acc_list',
'breadcrumb_list': [{"title": "首页", "name": "index"}, {"title": "资源管理", "name": "index"},
{"title": "会员账号登记", "name": "mem_acc_list"}],
'query_params': query_params,
'table_columns': [{"header": "平台名称", "field": "platform_name"}, {"header": "用途", "field": "purpose"},
{"header": "价格", "field": "price"}, {"header": "管理人", "field": "manager"},
{"header": "账号", "field": "account"}, {"header": "密码", "field": "password"},
{"header": "会员生效日", "field": "effective_date"},
{"header": "会员到期日", "field": "expiration_date"}, {"header": "状态", "field": "status"},
{"header": "操作", "field": "actions"}],
'show_modify_button': True,
'show_add_button': True,
'show_download_button': True,
'show_upload_button': True,
}
return render(request, 'rsc_mgnt/mem_acc_list.html', context)
def svc_reg_list_view(request):
# 声明查询集
query_set = StoredValueCardRegistration.objects.filter().order_by('-record_id')
# 获取查询参数
merchant_name = request.GET.get('merchant_name', '')
# 根据提供的参数进行筛选
if request.GET.get('merchant_name', ''):
query_set = query_set.filter(merchant_name__icontains=request.GET.get('merchant_name', ''))
# 对查询结果进行分页每页10条记录
items = paginate_query_and_assign_numbers(
request=request,
queryset=query_set,
per_page=10
)
# 构建上下文查询参数字符串
query_params = '&merchant_name={}' + format(merchant_name)
# 准备上下文
context = {
'items': items,
'filters': [{"type": "text", "id": "merchant_name", "name": "merchant_name", "label": "商家名称",
"placeholder": "请输入商家名称"}],
'form_action_url': 'svc_reg_list',
'breadcrumb_list': [{"title": "首页", "name": "index"}, {"title": "资源管理", "name": "index"},
{"title": "储值卡登记表", "name": "svc_reg_list"}],
'query_params': query_params,
'table_columns': [{"header": "商家名称", "field": "merchant_name"},
{"header": "商家类型", "field": "merchant_type"}, {"header": "余额", "field": "balance"},
{"header": "使用记录", "field": "usage_records"}, {"header": "操作", "field": "actions"}],
'show_modify_button': True,
'show_add_button': True,
'show_download_button': True,
'show_upload_button': True,
}
return render(request, 'rsc_mgnt/svc_reg_list.html', context)