def form_valid(self, form): context = self.get_context_data() pontoset = context['pontoset'] with transaction.atomic(): self.object = form.save() if pontoset.is_valid(): pontoset.instance = self.object pontoset.save() pedido = self.object data = self.request.POST try: cliente = Cliente.objects.get(user__username=data['login']) except (Exception, ): cliente = None if not cliente: user_data = {} user_data['username'] = data['login'] user_data['password'] = data['login'] user_data['email'] = data['email'] user_data['last_name'] = str(data['nome'])[:30] usuario = User.objects.create_user(**user_data) usuario.save() cliente = Cliente(user=usuario) cliente.save() cliente.phone = data['phone'] cliente.nome = data['nome'] cliente.endereco = data['endereco'] cliente.numero = data['numero'] cliente.bairro = data['bairro'] cliente.cidade = data['cidade'] cliente.save() pedido.cliente = cliente try: vendedor = Vendedor.objects.get(user=self.request.user) pedido.vendedor = vendedor except (Exception, ): pass pedido.save() # message = "Um novo pedido foi feito pelo vendedor " + self.request.user.first_name # pedido = self.object # a = func() if not self.request.user.is_superuser: users = User.objects.filter(is_superuser=True) for user in users: message = "Um novo pedido foi feito pelo vendedor " + self.request.user.first_name n = Notification(type_message='NOVO_PEDIDO_VENDEDOR', to=user, message=message) print(user) n.save() return super(PedidoCreateVendedorView, self).form_valid(form)
def criarCliente(): form = ClienteForm() if form.validate_on_submit(): try: cliente = Cliente() cliente.cpf_cnpj = form.cpfCnpj.data cliente.nome = form.nome.data.upper() db.session.add(cliente) db.session.commit() form.data.clear() flash("Cliente inserido com sucesso!") return redirect(url_for('.criarCliente')) except: if exc.IntegrityError: flash("Cliente já cadastrado!") return redirect(url_for('.criarCliente')) else: return render_template('cliente/clienteCadastro.html', form=form)