1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- # -*- coding: utf-8 -*-
- # !/usr/bin/env python
- import threading
- import uuid
- import simplejson as json
- import sys
- from script.base import init_env, setup_logger, get_logger
- init_env(interactive = False)
- if len(sys.argv) < 2:
- logger = get_logger(__name__)
- else:
- logger = setup_logger(filename = sys.argv[1], namespace = __name__)
- from django.conf import settings
- from apps.web.device.models import Group,Device
- from apps.web.user.models import ConsumeRecord
- from apps.web.dealer.models import Dealer
- from apilib.monetary import RMB
- logger.info('start now ...........')
- objs = Dealer.objects.all()
- costDict = {}
- for obj in objs:
- key = str(float(obj.annualTrafficCost))
- if costDict.has_key(key):
- costDict[key].append(str(obj.id))
- else:
- costDict[key] = [str(obj.id)]
- for cost,ownerIds in costDict.items():
- try:
- Device.get_collection().update({'ownerId':{'$in':ownerIds}},{'$set':{'annualTrafficCost':float(cost)}},upsert=False,multi=True)
- except Exception,e:
- logger.info('some error =%s ' % e)
- continue
-
- logger.info('finish')
|