def add_enquiry(request): response = {} response.update({'customer_type_choices':customer_type_choices}) response.update({'company_type_choices':company_type_choices}) response.update({'salutation_choices':salutation_choices}) response.update({'enquiry_choices':enquiry_choices}) response.update({'services':EnquiryService.objects.all()}) if request.method == 'POST': if 'enquiry_id' in request.POST and request.POST['enquiry_id']: enquiry = get_object_or_404(Enquiry, enquiry_id=request.POST['enquiry_id']) else: enquiry = None # initialize customer object if enquiry: customer = enquiry.customer else: customer = Customer() customer.customer_type = request.POST['customer_type'] if customer.customer_type == 'cmcl': customer.company_name = request.POST.get('company_name', '') customer.company_type = request.POST.get('company_type', '') else: customer.company_name = '' customer.company_type = '' customer.salutation = request.POST['salutation'] customer.contact_person = request.POST['contact_person'] customer.address = request.POST.get('address', '') customer.pincode = request.POST.get('pincode', '') customer.mobile = request.POST.get('mobile', '') customer.landline = request.POST.get('landline', '') customer.email = request.POST.get('email', '') customer.save() # initialize enquiry object if not enquiry: enquiry = Enquiry() enquiry.customer = customer enquiry.enquiry_date = datetime.datetime.strptime(request.POST['enquiry_date'], '%m/%d/%Y') enquiry.status = request.POST.get('status', '') if enquiry.status == 'c': enquiry.amount = request.POST.get('amount', '') enquiry.service_required = get_object_or_404(EnquiryService, id=request.POST['service']) else: enquiry.status_date = datetime.datetime.strptime(request.POST['status_date'], '%m/%d/%Y') enquiry.comments = request.POST.get('comments', '') try: enquiry.save() except: customer.delete() response.update({'error':True}) else: response.update({'success':True}) if enquiry.status == 'c': return HttpResponseRedirect('/enquiry/' + enquiry.enquiry_id + '/contract/') return render(request, 'userprofile/add_enquiry.html', response)
def delete(self, request, pk, format=None): Customer = self.get_object(pk) Customer.delete() return Response(status=status.HTTP_204_NO_CONTENT)