def post(self, request): customer_form = CustomerForm(request.POST) item_formset = self.OrderItemFormSet(request.POST) customer_selectform = OrderCustomerSelectForm(request.POST) if ((customer_selectform.is_valid() or customer_form.is_valid()) and item_formset.is_valid()): if request.POST.get('reg'): customer = customer_selectform.cleaned_data.get('customer') else: customer = customer_form.save() sh = Shipment.objects.create(customer=customer) stocks = dict() for form in item_formset: name = form.cleaned_data['item'] stocks[name] = (stocks.get(name, 0) + form.cleaned_data.get('count')) for stock, count in stocks.items(): ShipmentStock.objects.create(shipment=sh, stock=stock, number=count) messages.info(request, _('Заявка отправлена')) return redirect('shipment:order_successful') else: return redirect('shipment:order')
def register(request): """A view that manages the registration form""" if request.method == 'POST': user_form = UserRegistrationForm(request.POST) customer_form = CustomerForm(request.POST) if user_form.is_valid(): user_form.save() user = auth.authenticate(request.POST.get('email'), password=request.POST.get('password1')) if user: auth.login(request, user) user.customer.full_name = request.POST.get('full_name') user.customer.street_Address1 = request.POST.get('street_Address1') user.customer.street_Address2 = request.POST.get('street_Address2') user.customer.town_or_city = request.POST.get('town_or_city') user.customer.county = request.POST.get('county') user.customer.country = request.POST.get('country') user.customer.postcode = request.POST.get('postcode') user.customer.phone_number = request.POST.get('phone_number') user.save() messages.success(request, "You have successfully registered") return redirect(reverse('index')) else: messages.error(request, "unable to log you in at this time!") else: user_form = UserRegistrationForm() customer_form = CustomerForm() args = {'user_form': user_form, 'customer_form' : customer_form} return render(request, 'register.html', args)
def update(request, id): customer = Customer.objects.get(id=id) form = CustomerForm(request.POST, instance=customer) if form.is_valid(): form.save() return redirect("/show") return render(request, 'edit.html', {'customer': customer})
def update(request, customer_id): customer = Customer.objects.get(id=customer_id) if request.method == "POST": customer_form = CustomerForm(request.POST) if customer_form.is_valid(): name = customer_form.cleaned_data['name'] phone = customer_form.cleaned_data['phone'] address = customer_form.cleaned_data['address'] if name: customer.name = name if phone: customer.phone = phone if address: customer.address = address customer.save() context = {'customer_id': customer_id} messages.add_message(request, messages.SUCCESS, '修改成功') return redirect(reverse('customer:index')) else: context = {'customer_form': customer_form} messages.add_message(request, messages.WARNING, '请检查填写的内容') return render(request, 'customer/edit.html', context) else: customer_form = CustomerForm({ 'id': customer.id, 'name': customer.name, 'phone': customer.phone, 'address': customer.address, 'create_time': customer.create_time }) context = {'customer_form': customer_form, 'customer_id': customer_id} return render(request, 'customer/edit.html', context)
def customer_update(request, id, template_name="customer/customer_update.html"): customer = Customer.objects.get(id=id) form = CustomerForm(request.POST or None, instance=customer) if form.is_valid(): form.save() return redirect("customer_list") return render(request, template_name, {"form": form})
def register(request): if request.method == "POST": form = CustomerForm(request.POST) result = form.save() request.session['customer_id'] = result.customer_id return redirect("/") else: form = CustomerForm() return render(request, "home/register.html", {'form': form})
def post(self, request, *args, **kwargs): self.object = None form_class = self.get_form_class() user_form = self.get_form(form_class) cust_form = CustomerForm(self.request.POST, self.request.FILES) if (user_form.is_valid() and cust_form.is_valid()): return self.form_valid(user_form, cust_form) else: return self.form_invalid(user_form, cust_form)
def nuevo(request): if request.method == "POST": form = CustomerForm(request.POST) if form.is_valid(): customer = form.save() customer.save() return redirect('customer.views.listar') else: form = CustomerForm return render(request, 'customer/customer_nuevo.html', {'form':form, 'nuevo':True, 'texto':"Guardar"})
def create(request): print(request.POST) if request.method == "POST": form = BookForm(request.POST) form.save() form_a = CustomerForm(request.POST) form_a.save() return redirect("/book") else: form = BookForm() return render(request, "book/create.html", {'form': form})
def editar(request, pk): cust = get_object_or_404(Customer, pk=pk) if request.method == "POST": form = CustomerForm(request.POST, instance=cust) if form.is_valid(): customer = form.save() customer.save() return redirect('customer.views.listar') else: form = CustomerForm(instance=cust) return render(request, 'customer/customer_nuevo.html', {'form':form, 'texto':"Actualizar"},)
def add_order_view(request): #if method is post ( if request.method == 'POST': form = CustomerForm2(request.POST) context = {} if form.is_valid(): phone = request.POST.get("phone") #print(phone) cu = None if Customer.objects.filter(phone=phone): cu = Customer.objects.get(phone=phone) # print(cu[0]['name']) if cu: order_obj = Repair_order(customer_id=cu) order_obj.save() base_url = reverse('repair:AddI') # 1 /addItem/ query_string = urlencode({ 'phone': request.POST['phone'], 'order': order_obj.id }) # 2 phone=011 url = '{}?{}'.format( base_url, query_string ) # concatenate to this form /addItem/?phone=011&order=1 return redirect(url) else: url = reverse('repair:AddC') return redirect(url, request) else: form = CustomerForm() context = {'go_to_item': 0, 'form': form} return render(request, 'repair/addOrder.html', context)
def customer_all_detail(request, pk): """客户详情(不能更改信息)""" customer = get_object_or_404(Customer, pk=pk, is_valid=True) form = CustomerForm(instance=customer) # 添加上地址信息 # 下面这里引入异常处理,如果数据库里没有该字段,那么表单渲染为空 try: customer_shop = CustomerShop.objects.get(customer=pk) shopform = CustomerShopForm(instance=customer_shop) except CustomerShop.DoesNotExist: shopform = CustomerShopForm() try: customer_invoice = CustomerInvoice.objects.get(customer=pk) invoiceform = CustomerInvoiceForm(instance=customer_invoice) except CustomerInvoice.DoesNotExist: invoiceform = CustomerInvoiceForm() # 添加联系人,商机,拜访记录信息 liaisons = Liaison.objects.filter(customer_id=pk, is_valid=True) records = Record.objects.filter(customer_id=pk, is_valid=True) businesses = Business.objects.filter(customer_id=pk, is_valid=True) return render( request, 'customer_all_detail.html', { 'form': form, 'pk': pk, 'shopform': shopform, 'invoiceform': invoiceform, 'liaisons': liaisons, 'records': records, 'businesses': businesses })
def get(self, request, *args, **kwargs): self.object = None form_class = self.get_form_class() user_form = self.get_form(form_class) cust_form = CustomerForm() return self.render_to_response( self.get_context_data(form1=user_form, form2=cust_form))
def customer_detail(request, pk): """查看和修改客户信息""" """获取客户详细信息""" user = request.user customer = get_object_or_404(Customer, pk=pk, is_valid=True) # 拿到该客户名称,存到session中,供后面使用 cus_name = str(customer) request.session['name'] = cus_name if request.method == 'POST': form = CustomerForm(request=request, data=request.POST, instance=customer) if form.is_valid(): form.save() return redirect('customer:customer_list') else: form = CustomerForm(request=request, instance=customer) """获取该客户的其他信息""" businesse_list = CustomerBusiness.objects.filter(customer=customer, is_valid=True) liaison_list = Liaison.objects.filter(customer=customer, is_valid=True) record_list = CustomerRecord.objects.filter(customer=customer, is_valid=True) return render( request, 'customer_detail.html', { 'form': form, 'businesse_list': businesse_list, 'liaison_list': liaison_list, 'record_list': record_list, 'cus_id': pk, })
def register(request): """A view that manages the registration form""" if request.method == 'POST': """create form for the user object and the customer object""" user_form = UserRegistrationForm(request.POST) customer_form = CustomerForm(request.POST) if user_form.is_valid(): """if the user from information is valid, """ """save it and authenticate user""" user_form.save() user = auth.authenticate(request.POST.get('email'), password=request.POST.get('password1')) if user: """if user is valid log them in and update their user """ """ profile from registration information""" auth.login(request, user) user.customer.full_name = request.POST.get('full_name') user.customer.street_Address1 = \ request.POST.get('street_Address1') user.customer.street_Address2 = \ request.POST.get('street_Address2') user.customer.town_or_city = request.POST.get('town_or_city') user.customer.county = request.POST.get('county') user.customer.country = request.POST.get('country') user.customer.postcode = request.POST.get('postcode') user.customer.phone_number = request.POST.get('phone_number') user.save() messages.success(request, "You have successfully registered") return redirect(reverse('index')) else: """if there is an error in information/logging prompt user that they cannot be logged in""" messages.error(request, "unable to log you in at this time!") else: user_form = UserRegistrationForm() customer_form = CustomerForm() args = {'user_form': user_form, 'customer_form': customer_form} """pass user form informtion and customer form information""" """ to the registration to the register.html""" return render(request, 'register.html', args)
def profile(request, id): """A view that displays the profile page of a logged in user""" customer = get_object_or_404(Customer, pk=id) form = CustomerForm(instance=customer) if request.method == "POST": form = CustomerForm(request.POST, instance=customer) if form.is_valid(): form = form.save() return redirect(profile, id) else: form = CustomerForm(instance=customer) return render(request, "profile.html", {'form': form})
def add_customer(request): #accounts = Account.objects.all() #users = User.objects.filter(is_active=True).order_by('email') #teams = Team.objects.all() #assignedto_list = request.POST.getlist('assigned_to') #teams_list = request.POST.getlist('teams') #lead_account = request.POST.get('account_name') customer_email = request.POST.get('email') customer_phone = request.POST.get('phone') form = CustomerForm() #address_form = BillingAddressForm() if request.method == 'POST': form = CustomerForm(request.POST) #address_form = BillingAddressForm(request.POST) if form.is_valid(): customer_obj = form.save(commit=False) #address_object = address_form.save() #lead_obj.address = address_object #lead_obj.created_by = request.user customer_obj.save() #lead_obj.assigned_to.add(*assignedto_list) #lead_obj.teams.add(*teams_list) if request.POST.get("savenewform"): return HttpResponseRedirect(reverse("customer:add_customer")) else: return HttpResponseRedirect(reverse('customer:list')) else: return render(request, 'customers/create_customer.html', {'customer_form': form}) else: return render(request, 'customers/create_customer.html', {'customer_form': form})
def cust(request): if request.method == "POST": form = CustomerForm(request.POST) if form.is_valid(): try: form.save() return redirect('/show') except: pass else: form = CustomerForm() return render(request, 'index.html', {'form': form})
def customer_add(request): """客户添加""" if request.method == 'POST': form = CustomerForm(data=request.POST) if form.is_valid(): form.save() return redirect('customer') else: print(form.errors.as_json) else: form = CustomerForm() return render(request, 'customer_add.html', {'form': form})
def add(request): if request.method == "POST": customer_form = CustomerForm(request.POST) if customer_form.is_valid(): name = customer_form.cleaned_data['name'] phone = customer_form.cleaned_data['phone'] address = customer_form.cleaned_data['address'] new_customer = Customer.objects.create(name=name, phone=phone, address=address) context = {'id': new_customer.id} messages.add_message(request, messages.WARNING, '添加成功') return redirect(reverse('customer:index')) else: context = {'customer_form': customer_form} messages.add_message(request, messages.WARNING, '请检查填写的内容') return render(request, 'customer/add.html', context) else: customer_form = CustomerForm() context = {'customer_form': customer_form} return render(request, 'customer/add.html', context)
def create(request): print(request.POST) if request.method == "POST": form = CustomerForm(request.POST) form.save() return redirect("/customer") else: form = CustomerForm() return render(request, "customer/create.html", {'form': form})
def handle_uploaded_file(f): for chunk in f.chunks(): lines = chunk.decode('utf-8').split('\n') for line in lines: if len(line) > 0: items = line.split('\t') customer_form = CustomerForm({ 'id': items[0], 'first_name': items[1], 'last_name': items[2], 'street_address_line': items[3], 'state': items[4], 'zip_code': items[5], }) product_form = ProductForm({ 'id': items[7], 'name': items[8], 'purchase_amount': items[9], }) if customer_form.is_valid() and product_form.is_valid(): customer, _ = Customer.objects.get_or_create( **customer_form.data) product, _ = Product.objects.get_or_create( **product_form.data) order, _ = Order.objects.get_or_create(customer=customer, product=product, defaults={ 'date': datetime.now(), }) order.status = items[6] order.date = items[10] order.save() else: print(customer_form.errors) print(product_form.errors)
def update(request, id): customer = Customer.objects.get(customer_id=id) if request.method == "POST": form = CustomerForm(request.POST, instance=customer) form.save() return redirect("/customer") else: form = CustomerForm(instance=customer) return render(request, "customer/edit.html", {'form': form})
def customer_edit(request, pk): """客户编辑""" user = request.session.get('user_id') customer = get_object_or_404(Customer, pk=pk, user=user, is_valid=True) if request.method == 'POST': form = CustomerForm(data=request.POST, instance=customer) if form.is_valid(): form.save() return redirect('customer') else: print(form.errors.as_json) else: form = CustomerForm(instance=customer) return render(request, 'customer_edit.html', {'form': form, 'pk': pk})
def profile(request, id): """A view that displays the profile page of a logged in user""" """get USer object for the user currently logged in """ customer = get_object_or_404(Customer, pk=id) """create a customer form, pre-filled with the current user's info""" form = CustomerForm(instance=customer) if request.method == "POST": form = CustomerForm(request.POST, instance=customer) if form.is_valid(): """If form is valid, save it""" form = form.save() """return to the profile page with the """ """current user info displayed""" return redirect(profile, id) else: form = CustomerForm(instance=customer) return render(request, "profile.html", {'form': form})
def customer_edit(request, pk): """单个修改界面""" user = request.session.get('user_id') customer = get_object_or_404(Customer, pk=pk, user=user, is_valid=True) if request.method == 'POST': form = CustomerForm(request=request, data=request.POST, instance=customer) if form.is_valid(): form.save() return redirect('customer:customer_list') else: form = CustomerForm(request=request, instance=customer) return render(request, 'customer_edit.html', { 'form': form, })
def get(self, request): if self.request.is_ajax(): cat = request.GET['category'] if cat: category = (Category.objects.get(pk=cat).get_descendants( include_self=True)) stock = Stock.objects.filter(category__in=category) stock_dict = {k: v for k, v in stock.values_list('pk', 'name')} return JsonResponse(stock_dict) customer_form = CustomerForm() item_formset = self.OrderItemFormSet() customer_selectform = OrderCustomerSelectForm() context = { 'customer_form': customer_form, 'item_formset': item_formset, 'customer_selectform': customer_selectform, } return render(request, 'shipment/order.html', context)
def register(request): registered = False next_page = request.GET.get('next', '/') print(next_page) if request.user.is_authenticated: return HttpResponseRedirect(next_page) else: if request.method == 'POST': user_form = UserForm(data=request.POST) customer_form = CustomerForm(data=request.POST) if user_form.is_valid() and customer_form.is_valid(): print("valid") user = user_form.save() user.set_password(user.password) user.save() customer = customer_form.save(commit=False) customer.user = user if 'photo' in request.FILES: print('Photo found!') customer.photo = request.FILES['photo'] customer.save() registered = True login(request, user) return HttpResponseRedirect(next_page) else: print(user_form.errors, customer_form.errors) else: user_form = UserForm() customer_form = CustomerForm() context = { 'user_form': user_form, 'customer_form': customer_form, 'registered': registered, } return render(request, 'register.html', context)
def add_customer_view(request): form = CustomerForm() if request.method == "POST": new_customer = Customer(name=request.POST['name'], phone=request.POST['phone']) new_customer.save() order_obj = Repair_order(customer_id=new_customer) order_obj.save() base_url = reverse('repair:AddI') # 1 /addItem/ query_string = urlencode({ 'phone': request.POST['phone'], 'order': order_obj.id }) # 2 phone=011 url = '{}?{}'.format( base_url, query_string ) # concatenate to this form /addItem/?phone=011&order=1 return redirect(url) else: context = {'form': form} return render(request, 'repair/addCustomer.html', context)
def customer_detail(request, pk): """客户详情(外带地址信息)""" user = request.session.get('user_id') customer = get_object_or_404(Customer, pk=pk, user=user, is_valid=True) if request.method == 'POST': form = CustomerForm(data=request.POST, instance=customer) if form.is_valid(): form.save() return redirect('customer_detail', pk) else: print(form.errors.as_json) else: form = CustomerForm(instance=customer) # 添加上地址信息 # 下面这里引入异常处理,如果数据库里没有该字段,那么表单渲染为空 try: customer_shop = CustomerShop.objects.get(customer=pk) shopform = CustomerShopForm(instance=customer_shop) except CustomerShop.DoesNotExist: shopform = CustomerShopForm() try: customer_invoice = CustomerInvoice.objects.get(customer=pk) invoiceform = CustomerInvoiceForm(instance=customer_invoice) except CustomerInvoice.DoesNotExist: invoiceform = CustomerInvoiceForm() # 添加联系人,商机,拜访记录信息 liaisons = Liaison.objects.filter(customer_id=pk, is_valid=True) records = Record.objects.filter(customer_id=pk, is_valid=True) businesses = Business.objects.filter(customer_id=pk, is_valid=True) return render( request, 'customer_detail.html', { 'form': form, 'pk': pk, 'shopform': shopform, 'invoiceform': invoiceform, 'liaisons': liaisons, 'records': records, 'businesses': businesses })
def update_customer(request): if request.method == 'POST': user_form = UserForm(request.POST, instance=request.user) customer_form = CustomerForm(request.POST, instance=request.user.customer) if user_form.is_valid() and customer_form.is_valid(): user_form.save() customer_form.save() messages.success(request, 'Your profile was successfully updated') return redirect('settings:profile') else: messages.error(request, 'Please correct the error below') else: user_form = UserForm(request.POST, instance=request.user) customer_form = CustomerForm(request.POST, instance=request.user.customer) return render(request, 'profiles/profile.html', { 'user_form': user_form, 'customer_form': customer_form })
def customer_add(request): """添加客户信息""" user = request.session.get('user_id') customer = None now = datetime.datetime.now().month if request.method == 'POST': form = CustomerForm(request=request, data=request.POST, instance=customer) if form.is_valid(): form.save() tody_cus = Customer.objects.filter(user=user, is_valid=True, created_at__month=now).count() Count.objects.get_or_create(user=user) Count.objects.filter(user=user).update(add_cus=tody_cus) return redirect('customer:customer_list') else: form = CustomerForm(request=request, instance=customer) return render(request, 'customer_add.html', {'form': form})
def customer_create(request, template_name="customer/customer_add.html"): form = CustomerForm(request.POST or None) if form.is_valid(): form.save() return redirect("customer_list") return render(request, template_name, {"form": form})
def post(self, request): form = CustomerForm(request.POST, request.FILES) if form.is_valid(): form.save() return redirect('/display')