当前位置: 首页>>代码示例>>Python>>正文


Python pricing.device_update_cached函数代码示例

本文整理汇总了Python中ralph.util.pricing.device_update_cached函数的典型用法代码示例。如果您正苦于以下问题:Python device_update_cached函数的具体用法?Python device_update_cached怎么用?Python device_update_cached使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了device_update_cached函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: form_valid

 def form_valid(self, form):
     model = form.save(commit=False)
     model.save_comment = form.cleaned_data.get('save_comment')
     model.save(priority=SAVE_PRIORITY, user=self.request.user)
     pricing.device_update_cached(model)
     messages.success(self.request, "Changes saved.")
     return HttpResponseRedirect(self.request.path)
开发者ID:viciu,项目名称:ralph,代码行数:7,代码来源:common.py

示例2: test_blade_server

    def test_blade_server(self):
        encl = Device.create(sn='devicex', model_type=DeviceType.blade_system,
                             model_name='device encl')
        dev = Device.create(sn='device', model_type=DeviceType.blade_server,
                            model_name='device', parent=encl)

        encl_dmg = DeviceModelGroup(name='DeviceModelGroup encl')
        encl_dmg.slots = 4
        encl_dmg.price = 65535
        encl_dmg.save()
        encl.model.group = encl_dmg
        encl.model.save()

        dmg = DeviceModelGroup(name='DeviceModelGroup')
        dmg.price = 1337
        dmg.slots = 1
        dmg.save()
        dev.model.group = dmg
        dev.model.save()

        pricing.device_update_cached(encl)
        pricing.device_update_cached(dev)
        dev = Device.objects.get(id=dev.id)
        encl = Device.objects.get(id=encl.id)

        self.assertEquals(dev.cached_price, 17720.75)
        self.assertEquals(encl.cached_price, 49151.25)
        self.assertEquals(dev.cached_price + encl.cached_price, 65535 + 1337)
开发者ID:damjanek,项目名称:ralph,代码行数:28,代码来源:tests.py

示例3: perform_move

 def perform_move(self, address, new_ip, new_hostname):
     old_ipaddress = IPAddress.objects.get(address=address)
     device = old_ipaddress.device
     mac = None
     for r in Record.objects.filter(
             db.Q(name=old_ipaddress.hostname) |
             db.Q(content=old_ipaddress.hostname) |
             db.Q(content=old_ipaddress.address)
         ):
         r.delete()
     for e in DHCPEntry.objects.filter(ip=old_ipaddress.address):
         mac = e.mac
         e.delete()
     old_ipaddress.device = None
     old_ipaddress.save()
     reset_dns(new_hostname, new_ip)
     new_ipaddress, c = IPAddress.concurrent_get_or_create(
             address=new_ip,
         )
     new_ipaddress.device = device
     new_ipaddress.hostname = new_hostname
     new_ipaddress.save()
     if mac:
         entry = DHCPEntry(ip=new_ip, mac=mac)
         entry.save()
     pricing.device_update_cached(device)
开发者ID:damjanek,项目名称:ralph,代码行数:26,代码来源:common.py

示例4: update_cached

 def update_cached(self, group):
     devices = set()
     for _class in (Storage, Memory, Processor, DiskShare, FibreChannel,
                    GenericComponent, OperatingSystem, Software):
         for component in _class.objects.filter(model__group=group):
             devices.add(component.device)
     for device in devices:
         pricing.device_update_cached(device)
开发者ID:Makdaam,项目名称:ralph,代码行数:8,代码来源:catalog.py

示例5: run_job

def run_job(ip_address):
    try:
        ip = IPAddress.objects.select_related().get(address=ip_address)
    except IPAddress.DoesNotExist:
        return
    device = ip.device
    if not device:
        return  # no device...
    pricing.device_update_cached(device)
开发者ID:ar4s,项目名称:ralph,代码行数:9,代码来源:cache_price.py

示例6: bulk_update

def bulk_update(devices, fields, data, user):
    for d in devices:
        if 'venture' in fields:
            d.venture_role = None
        for name in fields:
            setattr(d, name, data[name])
        d.save_comment = data.get('save_comment')
        d.save(priority=SAVE_PRIORITY, user=user)
        pricing.device_update_cached(d)
开发者ID:viciu,项目名称:ralph,代码行数:9,代码来源:common.py

示例7: test_rack_server

 def test_rack_server(self):
     dev = Device.create(sn='device', model_type=DeviceType.rack_server,
                         model_name='device')
     dmg = DeviceModelGroup(name='DeviceModelGroup')
     dmg.price = 1337
     dmg.save()
     dev.model.group = dmg
     dev.model.save()
     pricing.device_update_cached(dev)
     dev = Device.objects.get(id=dev.id)
     self.assertEquals(dev.cached_price, 1337)
开发者ID:damjanek,项目名称:ralph,代码行数:11,代码来源:tests.py

示例8: test_rack_server

    def test_rack_server(self):
        dev = Device.create(sn="device", model_type=DeviceType.rack_server, model_name="device")
        dmg = DeviceModelGroup(name="DeviceModelGroup")
        dmg.price = 1337
        dmg.save()
        dev.model.group = dmg
        dev.model.save()

        pricing.device_update_cached(dev)

        self.assertEquals(dev.cached_price, 1337)
开发者ID:viciu,项目名称:ralph,代码行数:11,代码来源:tests.py

示例9: cache_price

def cache_price(ip, **kwargs):
    ip = str(ip)
    try:
        ipaddr = IPAddress.objects.select_related().get(address=ip)
    except IPAddress.DoesNotExist:
        return False, 'no device.', kwargs
    dev = ipaddr.device
    if dev is None:
        return False, 'no device.', kwargs
    pricing.device_update_cached(dev)
    return True, 'price=%.2f cost=%.2f, name=%s' % (dev.cached_price or 0,
            dev.cached_cost or 0, dev.name), kwargs
开发者ID:andrzej-jankowski,项目名称:ralph,代码行数:12,代码来源:cache_price.py

示例10: test_manual_price

    def test_manual_price(self):
        dev = Device.create(sn='device', model_type=DeviceType.rack_server,
                            model_name='device')
        dmg = DeviceModelGroup(name='DeviceModelGroup')
        dmg.price = 1337
        dmg.save()
        dev.model.group = dmg
        dev.model.save()

        dev.price = 238
        dev.save()
        pricing.device_update_cached(dev)

        self.assertEquals(dev.cached_price, 238)
开发者ID:Makdaam,项目名称:ralph,代码行数:14,代码来源:tests.py

示例11: test_cost

    def test_cost(self):
        dev = Device.create(sn="device", model_type=DeviceType.rack_server, model_name="device")
        dmg = DeviceModelGroup(name="DeviceModelGroup")
        dmg.price = 100
        dmg.save()
        dev.model.group = dmg
        dev.model.save()

        dev.margin_kind = MarginKind(name="50%", margin=50)
        dev.margin_kind.save()
        dev.deprecation_kind = DeprecationKind(name="10 months", months=10)
        dev.deprecation_kind.save()
        dev.save()
        pricing.device_update_cached(dev)
        self.assertEqual(dev.cached_cost, 15)
开发者ID:szaydel,项目名称:ralph,代码行数:15,代码来源:tests.py

示例12: test_price_deprecation

 def test_price_deprecation(self):
     # Device after deprecation period should have raw price = 0
     dev = Device.create(sn="device", model_type=DeviceType.rack_server, model_name="device")
     dmg = DeviceModelGroup(name="DeviceModelGroup")
     dmg.price = 100
     dmg.save()
     dev.model.group = dmg
     dev.purchase_date = datetime.today() - timedelta(11 * (365 / 12))
     dev.model.save()
     dev.margin_kind = MarginKind(name="50%", margin=50)
     dev.margin_kind.save()
     dev.deprecation_kind = DeprecationKind(name="10 months", months=10)
     dev.deprecation_kind.save()
     dev.save()
     pricing.device_update_cached(dev)
     self.assertEqual(get_device_raw_price(dev), 0)
     self.assertEqual(dev.cached_price, 0)
     self.assertEqual(dev.cached_cost, 0)
开发者ID:szaydel,项目名称:ralph,代码行数:18,代码来源:tests.py

示例13: test_price_deprecation_in_progress

 def test_price_deprecation_in_progress(self):
     # Device in deprecation period should have raw price >0 if price is set
     dev = Device.create(sn='device', model_type=DeviceType.rack_server,
                         model_name='device')
     dmg = DeviceModelGroup(name='DeviceModelGroup')
     dmg.price = 100
     dmg.save()
     dev.model.group = dmg
     # currently first month in deprecation period
     dev.purchase_date = datetime.today() - timedelta(1 * (365 / 12))
     dev.model.save()
     dev.margin_kind = MarginKind(name='50%', margin=50)
     dev.margin_kind.save()
     dev.deprecation_kind = DeprecationKind(name='10 months', months=10)
     dev.deprecation_kind.save()
     dev.save()
     pricing.device_update_cached(dev)
     self.assertEqual(get_device_raw_price(dev), 100)
     self.assertEqual(dev.cached_cost, 15)
     self.assertEqual(dev.cached_price, 100)
开发者ID:Makdaam,项目名称:ralph,代码行数:20,代码来源:tests.py

示例14: bulk_update

def bulk_update(devices, fields, data, user):
    for d in devices:
        if 'venture' in fields:
            d.venture_role = None

        field_classes = {
            'deprecation_kind': DeprecationKind,
            'venture': Venture,
            'venture_role': VentureRole,
            'margin_kind': MarginKind,
        }

        for name in fields:
            if name in field_classes:
                setattr(d, name, field_classes[name].objects.get(id=data[name]))
            else:
                setattr(d, name, data[name])
        d.save_comment = data.get('save_comment')
        d.save(priority=SAVE_PRIORITY, user=user)
        pricing.device_update_cached(d)
开发者ID:damjanek,项目名称:ralph,代码行数:20,代码来源:common.py

示例15: test_cost

    def test_cost(self):
        dev = Device.create(sn='device', model_type=DeviceType.rack_server,
                            model_name='device')
        dmg = DeviceModelGroup(name='DeviceModelGroup')
        dmg.price = 100
        dmg.save()
        dev.model.group = dmg
        dev.model.save()

        mk = MarginKind(name='50%', margin=50)
        mk.save()
        dev.margin_kind = mk
        dk = DeprecationKind(name='10 months', months=10)
        dk.save()
        dev.deprecation_kind = dk
        dev.save()
        self.assertEqual(pricing.get_device_cost(dev), 15)
        pricing.device_update_cached(dev)
        dev = Device.objects.get(id=dev.id)
        self.assertEqual(pricing.get_device_cost(dev), 15)
        self.assertEqual(dev.cached_cost, 15)
开发者ID:damjanek,项目名称:ralph,代码行数:21,代码来源:tests.py


注:本文中的ralph.util.pricing.device_update_cached函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。