haha
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
from django.urls import path
|
||||
|
||||
from .models import Schedule
|
||||
from .views import registration,registrationDetail,Project,Projectquerytype,ProjectDetail,EditProject,BidRegistration,BidDetail,registrationList,caseManagement,caseManagementDetail,CaseAttachmentUpload,CaseAttachmentUpdate,Uploadinvoice,InvoiceDetail,Log,LogDetail,accumulate,preFilingLinkedCases,Application,ApplicationDetail,WarehousingRegistration,WarehousingDetail,PlatformRegistration,PlatformDetail,EditPlatformDetail,DeletePlatformDetail,bulletin,BulletinDetail,EditBulletin,deleteBulletin,Lawyersdocuments,LawyersdocumentsDetail,LwaDetail,CreateSchedule,DeleteSchedule,ScheduleDetail,handleSchedule,AddRermission,DisplayRermission,DeleteRermission,EditRermission,addRole,DeleteRole,EditRole,displayRole,modifypermissions,getRolePermissions,DeleteRegistration,EditRegistration,DeleteProject,EditBid,DeleteBid,EditCase,DeleteCase,EditApplication,DeleteApplication,EditWarehousing,DeleteWarehousing,EditLawyerFlie,EditSchedule,TransferCase,CaseChangeRequestCreate,CaseChangeRequestList,CaseChangeRequestDetail,ProjectDropdownList
|
||||
from .views import registration,registrationDetail,Project,Projectquerytype,ProjectDetail,EditProject,BidRegistration,BidDetail,registrationList,caseManagement,caseManagementDetail,CaseAttachmentUpload,CaseAttachmentUpdate,Uploadinvoice,InvoiceDetail,Log,LogDetail,accumulate,preFilingLinkedCases,Application,ApplicationDetail,WarehousingRegistration,WarehousingDetail,PlatformRegistration,PlatformDetail,EditPlatformDetail,DeletePlatformDetail,bulletin,BulletinDetail,EditBulletin,deleteBulletin,Lawyersdocuments,LawyersdocumentsDetail,LwaDetail,CreateSchedule,DeleteSchedule,ScheduleDetail,handleSchedule,AddRermission,DisplayRermission,DeleteRermission,EditRermission,addRole,DeleteRole,EditRole,displayRole,modifypermissions,getRolePermissions,DeleteRegistration,EditRegistration,DeleteProject,EditBid,DeleteBid,EditCase,DeleteCase,EditApplication,DeleteApplication,EditWarehousing,DeleteWarehousing,EditLawyerFlie,EditSchedule,TransferCase,CaseChangeRequestCreate,CaseChangeRequestList,CaseChangeRequestDetail,ProjectDropdownList,CaseDropdownList
|
||||
urlpatterns = [
|
||||
|
||||
path('register',registration.as_view(),name='register'),
|
||||
@@ -69,5 +69,6 @@ urlpatterns = [
|
||||
path('transferCase',TransferCase.as_view(),name='transferCase'),
|
||||
path('case-change-request-create',CaseChangeRequestCreate.as_view(),name='case-change-request-create'),
|
||||
path('case-change-request-list',CaseChangeRequestList.as_view(),name='case-change-request-list'),
|
||||
path('case-change-request-detail',CaseChangeRequestDetail.as_view(),name='case-change-request-detail')
|
||||
path('case-change-request-detail',CaseChangeRequestDetail.as_view(),name='case-change-request-detail'),
|
||||
path('case-dropdown-list',CaseDropdownList.as_view(),name='case-dropdown-list')
|
||||
]
|
||||
@@ -1703,6 +1703,71 @@ class ProjectDropdownList(APIView):
|
||||
}, status=status.HTTP_200_OK)
|
||||
|
||||
|
||||
class CaseDropdownList(APIView):
|
||||
"""获取案件的下拉列表接口"""
|
||||
def post(self, request, *args, **kwargs):
|
||||
"""
|
||||
获取案件列表(用于下拉选择)
|
||||
返回案件数据,格式简洁,适合下拉列表使用
|
||||
:param request:
|
||||
:param args:
|
||||
:param kwargs:
|
||||
:return:
|
||||
"""
|
||||
# 可选参数:状态过滤
|
||||
state_filter = request.data.get('state', None) # 可以按状态过滤,如"已通过"
|
||||
|
||||
# 查询未删除的案件
|
||||
Q_obj = Q(is_deleted=False)
|
||||
|
||||
# 如果指定了状态过滤
|
||||
if state_filter:
|
||||
Q_obj &= Q(state=state_filter)
|
||||
|
||||
cases = Case.objects.filter(Q_obj).order_by('-id')
|
||||
|
||||
data = []
|
||||
for case in cases:
|
||||
# 解析负责人信息,获取负责人姓名
|
||||
responsible_person = ""
|
||||
try:
|
||||
responsiblefor_dict = json.loads(case.responsiblefor) if case.responsiblefor else {}
|
||||
if isinstance(responsiblefor_dict, dict):
|
||||
responsible_person = responsiblefor_dict.get('responsible_person', '')
|
||||
except (json.JSONDecodeError, TypeError):
|
||||
pass
|
||||
|
||||
# 构建显示文本(用于下拉列表显示)
|
||||
display_text = case.contract_no or f"案件#{case.id}"
|
||||
if case.project_type:
|
||||
display_text += f" - {case.project_type}"
|
||||
if case.client_name:
|
||||
display_text += f" ({case.client_name})"
|
||||
elif responsible_person:
|
||||
display_text += f" ({responsible_person})"
|
||||
|
||||
data.append({
|
||||
"id": case.id,
|
||||
"value": case.id, # 下拉列表的值
|
||||
"label": display_text, # 下拉列表的显示文本
|
||||
"contract_no": case.contract_no or "", # 合同编号
|
||||
"project_type": case.project_type or "", # 项目类型
|
||||
"client_name": case.client_name or "", # 客户名称
|
||||
"party_name": case.party_name or "", # 相对方名称
|
||||
"project_description": case.project_description or "", # 项目简述
|
||||
"responsible_person": responsible_person, # 负责人
|
||||
"times": case.times, # 立案时间
|
||||
"state": case.state, # 状态
|
||||
})
|
||||
|
||||
return Response({
|
||||
'message': '查询成功',
|
||||
'data': data,
|
||||
'total': len(data),
|
||||
'code': 0
|
||||
}, status=status.HTTP_200_OK)
|
||||
|
||||
|
||||
class Application(APIView):
|
||||
def post(self, request, *args, **kwargs):
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user