123456789101112131415161718192021222324252627282930313233343536373839404142 |
- #coding=utf-8
- import imp
- import os
- import sys
- import traceback
- import datetime
- import django
- from django.utils import timezone
- from django.db import transaction
- from django.db.models import Sum
- def agent_order_expire_remind():
- classes = ClassCommodity.objects.filter()
- for c in classes:
- order = Order.objects.filter(student__classes=c.classes, status=Order.FINISH).aggregate(amount=Sum('total_amount'))
- c.price = order['amount']
- c.save()
- def setup_django_env(path):
- sys.path.insert(0, path)
- f, filename, desc = imp.find_module('settings', [path])
- imp.load_module('settings', f, filename, desc)
- os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")
- sys.path.append(os.path.abspath(os.path.join(path, os.path.pardir)))
- if __name__ == '__main__':
- dirname, filename = os.path.split(os.path.abspath(sys.argv[0]))
- setup_django_env(dirname+'/../bookshop_admin')
- django.setup()
- from apps.order.models import Order,Classes,ClassCommodity
- try:
- print('start=======',timezone.now())
- with transaction.atomic():
- agent_order_expire_remind()
- print('end========', timezone.now())
- except Exception as e:
- traceback.print_exc()
|