# -*- coding: utf-8 -*- # !/usr/bin/env python import os, sys PROJECT_ROOT = os.path.join(os.path.abspath(os.path.split(os.path.realpath(__file__))[0] + "/.."), '..') sys.path.insert(0, PROJECT_ROOT) os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'configs.production') from apps.web.device.models import Device from script.device_upgrade import DeviceUpgradeLog def translate_driver_code(driver_code): if driver_code == '100205': return '100210' return driver_code def valid_code(driver_code, registerd_code): if driver_code == '100205' or driver_code == '100210': if registerd_code not in ['100205', '100210']: return False else: return True return driver_code == registerd_code def update_device_upgrade_status(): items = DeviceUpgradeLog.objects( status__in = [DeviceUpgradeLog.Status.RUNNING, DeviceUpgradeLog.Status.UPGRADED, DeviceUpgradeLog.Status.FAILURE]) for item in items: # type:DeviceUpgradeLog dev = Device.get_dev(item.devNo) if dev['softVer'] == item.afterSoftVer: print '{} upgrade success.'.format(item.devNo) item.set_stauts(DeviceUpgradeLog.Status.SUCCESS) item.save() update_device_upgrade_status()