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)