# -*- 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')