from django.shortcuts import render from django.http import HttpResponse from datetime import datetime, timedelta from Info.model_handler import CompanyHandler, UserHandler from .models import Case from .model_handler import SettingHandler, CaseAttachmentHandler # Create your views here. def new_case(request): if request.method == 'GET': return render(request, 'IT_service/new_case.html') if request.method == 'POST': company = CompanyHandler.get_by_id(request.session.get('company_id')) user = UserHandler.get_by_id(request.session.get('user_id')) setting = SettingHandler.get_by_company(company) case = Case() # 保存case case.submitter = user case.contact_name = request.POST.get('contact_name') case.contact_mobile = request.POST.get('contact_mobile') case.description = request.POST.get('description') case.owner = setting.default_owner case.urgency_level = int(request.POST.get('urgency_level')) if case.urgency_level == 1: response_hours = 4 elif case.urgency_level == 2: response_hours = 8 elif case.urgency_level == 3: response_hours = 24 elif case.urgency_level == 4: response_hours = 72 case.due_datetime = datetime.now() + timedelta(hours=response_hours) case.save() attachments = eval(request.POST.get('attachment')) # 保存附件 for attachment in attachments: c_file = CaseAttachmentHandler.get_by_id(attachment['id']) c_file.case = case c_file.save() return render(request, 'info/directPage.html', {'alertMsg': '保存成功', 'dirLink': '/home/'})