From ce7336d83a9ff36ba73937c0ebd6356aff73ff9b Mon Sep 17 00:00:00 2001 From: Michail Bortnikov Date: Thu, 2 Mar 2017 12:36:20 +0300 Subject: [PATCH] add clean_phone in models --- _utils/get_reports.py | 3 ++- _utils/open_bills.py | 28 +++++++++-------------- _utils/open_lesson.py | 2 +- _utils/reports/get_all_students_emails.py | 2 +- _utils/reports/get_learn_balance.py | 3 +-- _utils/reports/get_success_for_theme.py | 2 +- _utils/reports/get_success_hw_themes.py | 2 +- _utils/reports/get_theme_try_len.py | 2 +- _utils/reports/post_sale.py | 2 +- access/models.py | 9 ++++++++ finance/amo.py | 2 +- journals/admin.py | 2 ++ management/forum_views.py | 2 ++ management/tools.py | 2 ++ practice/api.py | 2 ++ practice/views.py | 2 ++ requirements.txt | 1 + 17 files changed, 41 insertions(+), 27 deletions(-) diff --git a/_utils/get_reports.py b/_utils/get_reports.py index 931f949..d66e648 100644 --- a/_utils/get_reports.py +++ b/_utils/get_reports.py @@ -1,3 +1,4 @@ +# coding=utf-8 # Получить список файлов папки reports # Выдать выбор отчета # Запустить файл @@ -5,7 +6,7 @@ import os import sys BASEDIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) -REPORTS = '/var/www/projects/codemy/_utils/reports' +REPORTS = '/var/www/skillbox/_utils/reports' class CL: diff --git a/_utils/open_bills.py b/_utils/open_bills.py index c2fb68f..739ac10 100644 --- a/_utils/open_bills.py +++ b/_utils/open_bills.py @@ -3,22 +3,22 @@ import os import django import sys -sys.path.append("/var/www/projects/codemy/") +sys.path.append("/var/www/skillbox/") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.settings") django.setup() from access.models import User from finance.models import Price, Bill -users ={'anastasia.lednik@gmail.com', 'ivans@zeptolab.com', 'Kozingleb73@gmail.com', 'chaocharly@gmail.com', 'supreme1609@yandex.ru', 'julia.fedyaeva@mail.ru', 'me@leonidpotapov.com', 'axnaf@list.ru', 'yuri.sablatazh@gmail.com', 'strekozka_l@mail.ru', 'pavelulitin@fmf.ru', 's.zorin@artsofte.ru', 'mihail@kucherenko.tel', 'ikarp84@gmail.com', 'juliag@zeptolab.com', 'vr8853@gmail.com', 'o.tibirkova@yandex.ru', 'ivan.mesh@gmail.com', 'merabella00@yandex.ru', 'chavrikovev@gmail.com', 'azalmazal1@mail.ru', 'dimpolozkov@gmail.com', 'sidenkowow@mail.ru', 'evgeneva@gmail.com', 'olga@adt.ru', 'alexpallid@gmail.com', 'lllil@yandex.ru', 'reachi73@ya.ru', 'perepelkin.serge@gmail.com', 'el_spirito@bk.ru', 'ninon.sh@yandex.ru', 'smaslenikov@zeptolab.com', 'artemaminov@gmail.com', 'j4gg3rnaut@gmail.com', 'shavcat@ya.ru', 'rozzuvaeva@gmail.com', 'denis.mazaev@mail.ru', 'd.p.voropay@gmail.com', 'uasam@mail.ru', 'cornelldesign@mail.ru', 'jayalila108@mail.ru', 'vetldi@gmail.com', 'ggsurkov@gmail.com', 'freesleeper@gmail.com', 'ilya@iskros.com', 'rodina-vera@inbox.ru', 'hiirinasheveleva@gmail.com', 'lampardromanov@yandex.ru', 'kk.to-art@yandex.ru', 'zukoznik@mail.ru', 'annavolkova@at-consulting.ru', 'mister.ak90@mail.ru', 'tteya@mail.ru', 'egora@zeptolab.com', 'designprojectt@gmail.com', 'ottomy@bk.ru', 'alexander.samofalov@gmail.com', 'akonovalov108@gmail.com', 'kupa0611@gmail.com', 'vladimirprasoloff@gmail.com', 'appsdao@ya.ru', 'igor.n.tomko@gmail.com', '89226890628.sda@gmail.com', 'bara-bord@yandex.ru', 'chriswao@gmail.com', 'anastasiyabd@zeptolab.com', 'andrej.fin@gmail.com', 'litazavr@gmail.com', 'blckg0re@gmail.com', 'asiri.unholy@gmail.com', 'qq-brand@rambler.ru', 'delo@jet-mix.ru', 'hannakulikovast@gmail.com', 'kaiyoo@yandex.ru', 'ekaterinasch@zeptolab.com', 'artem.kudra@func.ru', 'irinash@zeptolab.com', 'nasgul@bk.ru', 'meetstone@yandex.ru', 'neo-quake@yandex.ru', 'Aka@make.st', 'giggslegenda@mail.ru', 'bebeeper@gmail.com', 'ez1982@yandex.RU', 'Hlebb@mail.ru', 'asylov@gmail.com', 'dirubis@gmail.com', 'nazarova-evg@yandex.ru', 'miragann@gmail.com', 'Grondarrin@gmail.com', 'eugened@zeptolab.com', 'o.slava@gmail.com', 'hellodrw@gmail.com', 'e.baranova@make.st', 'bvdesign@mail.ru', 'contrnik@yandex.ru', 'singlegreywolf@mail.ru', 'azatdraw@gmail.com', 'vaynberg.a@gmail.com', 'agnosst@gmail.com', 'tingaevva@mail.ru', 'ipashkov93@yandex.ru', 'anton.m.gook@gmail.com', 'Andreysh@zeptolab.com', 'proschebud@gmail.com', 'alik.vayner@gmail.com', 'd.lugansky@gmail.com', 'tanyas@zeptolab.com', 'markina108@gmail.com', 'gresmik@yandex.ru', 'Pvashkeba@mail.ru'} +users ={'kirillcapote@gmail.com', 'skyfallorigin@gmail.com', 'sadovnikoff@yandex.ru', 'grondarrin@gmail.com', 'fkaterina82@mail.ru', 'frtwork@gmail.com', 'yury.matskevich@gmail.com', 'ecoprint@mail.ru', 'yana1330@yandex.ru', 'rivera1985@mail.ru', 'paul.glukhov@gmail.com', 'elena.markina@xpage.ru', 'polinakomolova@gmail.com', 'etartakovskiy@gmail.com', 'p.jakubovskiy@gmail.com', 'malivanov@bk.ru', 'timplay@mail.ru', 'hello.kurban@gmail.com', 'ovm@aplayweb.ru', 'ux.dozer@gmail.com', 'pk.common@gmail.com', 'annapoluektova@yahoo.ca', 'nasti.vv@gmail.com', 'l4bor@protonmail.com', 'bogdashow@gmail.com', 'zhuck182@gmail.com', 'smannic@yandex.ru', 'victoriabutova@gmail.com', 'designprojectt@gmail.com', 'gartibald@gmail.com', 'alimova.lira@ya.ru', 'zaharenkoaleksey@yandex.ru', 'nataliannovgorod@gmail.com', 'kravtsova.kateryna@gmail.com', 'andrerm@ya.ru'} no_exists = [] no_active = [] no_bill = set() -service = Price.objects.filter(course__id=20).exclude(cost=0) +service = list(Price.objects.filter(course__id=20).values_list('id', flat=True)) -for i in users: +for i in users: try: user = User.objects.get(email=i) except User.DoesNotExist: @@ -27,19 +27,13 @@ for i in users: if not user.is_active: no_active.append(i) else: - good = True - for s in service: - bill = Bill.objects.filter(user=user, service=s) - if bill: - bill = bill.first() - if bill.status != 'F': - bill.status = 'F' - bill.save() - print(u'Смена статуса заказа: {0}'.format(bill.id)) - - else: - good = False - if not good: + if Bill.objects.filter(user=user, service__id__in=service).exists(): + for bill in Bill.objects.filter(user=user, service__id__in=service): + if bill and bill.status != 'F': + bill.status = 'F' + bill.save() + print(u'Смена статуса заказа: {0}'.format(bill.id)) + else: no_bill.add(user.email) print('u===============') diff --git a/_utils/open_lesson.py b/_utils/open_lesson.py index 8bfec94..9555a67 100644 --- a/_utils/open_lesson.py +++ b/_utils/open_lesson.py @@ -11,7 +11,7 @@ django.setup() from journals.models import CourseMap, LessonJ, TeacherJ, HomeworkTry from lms.tools import show_progress -_NEED_OPEN = LessonJ.objects.get(material__id='1154', student__email='parabellum07@gmail.com') +_NEED_OPEN = LessonJ.objects.get(material__id='1154', student__email='parabellum07@gmail.com'.lower()) _TEACHERJ_FILTER = {'progress__gte': 0} _TEACHERJ_EXCLUDE = {'teacher': None} diff --git a/_utils/reports/get_all_students_emails.py b/_utils/reports/get_all_students_emails.py index 7743964..e74a6ec 100644 --- a/_utils/reports/get_all_students_emails.py +++ b/_utils/reports/get_all_students_emails.py @@ -4,7 +4,7 @@ import django import sys -sys.path.append("/var/www/projects/codemy/") +sys.path.append("/var/www/skillbox/") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.settings") django.setup() print('## Формирование списка почт всех студентов системы') diff --git a/_utils/reports/get_learn_balance.py b/_utils/reports/get_learn_balance.py index 9874005..393e003 100644 --- a/_utils/reports/get_learn_balance.py +++ b/_utils/reports/get_learn_balance.py @@ -3,7 +3,7 @@ import os import django import sys -sys.path.append("/var/www/projects/codemy/") +sys.path.append("/var/www/skillbox/") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.settings") django.setup() print('## Отчет по распределению слушателей по курсу') @@ -32,4 +32,3 @@ print('ДЗ в статусе прохождения: {0}'.format(_homeworks.cou for i in CourseTheme.objects.filter(course=_course).order_by('sort'): print('{0}: {2} [{1}]'.format(i.sort, i.get_title(), HomeworkJ.objects.filter(f_date=None, parent__material=i).exclude(date=None).count())) - diff --git a/_utils/reports/get_success_for_theme.py b/_utils/reports/get_success_for_theme.py index 4590325..4d32012 100644 --- a/_utils/reports/get_success_for_theme.py +++ b/_utils/reports/get_success_for_theme.py @@ -5,7 +5,7 @@ import django import sys BASEDIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) -sys.path.append("/var/www/projects/codemy/") +sys.path.append("/var/www/skillbox/") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.settings") django.setup() from access.models import User diff --git a/_utils/reports/get_success_hw_themes.py b/_utils/reports/get_success_hw_themes.py index 890cc2f..3ac4532 100644 --- a/_utils/reports/get_success_hw_themes.py +++ b/_utils/reports/get_success_hw_themes.py @@ -3,7 +3,7 @@ import os import django import sys -sys.path.append("/var/www/projects/codemy/") +sys.path.append("/var/www/skillbox/") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.settings") django.setup() print('## Отчет по распределению слушателей по курсу') diff --git a/_utils/reports/get_theme_try_len.py b/_utils/reports/get_theme_try_len.py index adc2c2d..3316a12 100644 --- a/_utils/reports/get_theme_try_len.py +++ b/_utils/reports/get_theme_try_len.py @@ -5,7 +5,7 @@ import django import sys BASEDIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) -sys.path.append("/var/www/projects/codemy/") +sys.path.append("/var/www/skillbox/") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.settings") django.setup() from access.models import User diff --git a/_utils/reports/post_sale.py b/_utils/reports/post_sale.py index 4ee5432..9291422 100644 --- a/_utils/reports/post_sale.py +++ b/_utils/reports/post_sale.py @@ -3,7 +3,7 @@ import os import django import sys -sys.path.append("/var/www/projects/codemy/") +sys.path.append("/var/www/skillbox/") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.settings") django.setup() diff --git a/access/models.py b/access/models.py index 392f836..7b7a7ed 100755 --- a/access/models.py +++ b/access/models.py @@ -1,5 +1,6 @@ # encoding=utf-8 import random +import re from django.db import models from django.contrib.auth.models import BaseUserManager, AbstractBaseUser import datetime @@ -339,6 +340,14 @@ class User(AbstractBaseUser): return u"%s" \ % (self.id, self.get_short_name()) + def check_phone(self, _type='actual'): # actual = self.phone, back = self.back_phone + phone = self.phone if _type == 'actual' else self.back_phone + return bool(len(''.join([n for n in self.phone if n in [str(x) for x in xrange(0,10)]])) > 9) + + def clean_phone(self, _type='actual'): + return if self.check_phone(): ''.join([n for n in self.phone if n in [str(x) for x in xrange(0,10)]]) else '' + + class Meta: verbose_name = u"Пользователя" verbose_name_plural = u"Пользователи" diff --git a/finance/amo.py b/finance/amo.py index 4bfc1e9..bac1a7b 100644 --- a/finance/amo.py +++ b/finance/amo.py @@ -17,7 +17,7 @@ def new_request(request, context): s = ServiceRequest.objects.create( lead_name=urllib.parse.unquote(request.POST['lead_name'], encoding='utf8').replace("+", " "), send_date=date, - data=str({i: urllib.parse.unquote(n, encoding='utf8').replace("+", " ") for i, n in request.POST.items()}) + data=str({i: urllib.parse.unquote(n, encoding='utf8').replace("+", " ") for i, n in request.POST.items()}).replace('"', '') ) if request.META.get('HTTP_REFERER'): s.host = request.META.get('HTTP_REFERER') diff --git a/journals/admin.py b/journals/admin.py index 87bd39f..f18027a 100755 --- a/journals/admin.py +++ b/journals/admin.py @@ -1,3 +1,5 @@ +#! coding: utf-8 + from django.contrib import admin from django.db.models import Q from django.http import HttpResponse diff --git a/management/forum_views.py b/management/forum_views.py index aa0e4f9..3085658 100644 --- a/management/forum_views.py +++ b/management/forum_views.py @@ -1,3 +1,5 @@ +# coding=utf-8 + from django.http import Http404 from lms.decors import response_decor from management.models import Comment diff --git a/management/tools.py b/management/tools.py index 28a2398..29a31bc 100755 --- a/management/tools.py +++ b/management/tools.py @@ -1,3 +1,5 @@ +# coding=utf-8 + from management.models import ModalPlace diff --git a/practice/api.py b/practice/api.py index 4cb801f..8310eb6 100644 --- a/practice/api.py +++ b/practice/api.py @@ -1,3 +1,5 @@ +# coding=utf-8 + from django.http import Http404 from lms.decors import api_decor diff --git a/practice/views.py b/practice/views.py index d1e9942..477d0d8 100644 --- a/practice/views.py +++ b/practice/views.py @@ -1,3 +1,5 @@ +# coding=utf-8 + from django.http import Http404 from lms.decors import response_decor from practice.models import Workshop diff --git a/requirements.txt b/requirements.txt index 3c3841e..08a729c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -71,3 +71,4 @@ wcwidth==0.1.7 widgetsnbextension==1.2.6 xlwt==1.1.2 fabric +