Example #1
0
    def handle(self, *args, **options):
        domain, group_name = args
        group = Group.by_name(domain, name=group_name)
        owner_ids = get_all_owner_ids_from_group(group)
        pillow = CareBiharFluffPillow()
        db = CommCareCase.get_db()

        greenlets = []

        def process_case(case):
            pillow.change_transport(pillow.change_transform(case))


        for i, owner_id in enumerate(owner_ids):
            print '{0}/{1} owner_ids'.format(i, len(owner_ids))
            rows = CommCareCase.view(
                'hqcase/by_owner',
                startkey=[domain, owner_id],
                endkey=[domain, owner_id, {}],
                reduce=False,
            ).all()
            case_ids = [row['id'] for row in rows]
            print '{0} case_ids'.format(len(case_ids))
            for case in iter_docs(db, case_ids):
                g = gevent.Greenlet.spawn(process_case, case)
                greenlets.append(g)
        gevent.joinall(greenlets)
Example #2
0
    def handle(self, *args, **options):
        domain, group_name = args
        group = Group.by_name(domain, name=group_name)
        owner_ids = get_all_owner_ids_from_group(group)
        pillow = CareBiharFluffPillow()
        db = CommCareCase.get_db()

        greenlets = []

        def process_case(case):
            pillow.change_transport(pillow.change_transform(case))

        for i, owner_id in enumerate(owner_ids):
            print '{0}/{1} owner_ids'.format(i, len(owner_ids))
            rows = CommCareCase.view(
                'hqcase/by_owner',
                startkey=[domain, owner_id],
                endkey=[domain, owner_id, {}],
                reduce=False,
            ).all()
            case_ids = [row['id'] for row in rows]
            print '{0} case_ids'.format(len(case_ids))
            for case in iter_docs(db, case_ids):
                g = gevent.Greenlet.spawn(process_case, case)
                greenlets.append(g)
        gevent.joinall(greenlets)
    def handle(self, *args, **options):
        args = list(args)
        domain = args.pop(0)
        group_id_or_name = args.pop(0)
        slugs = args.pop(0) if args else None

        try:
            group = Group.get(group_id_or_name)
            assert group.domain == domain
        except ResourceNotFound:
            group = Group.by_name(domain, group_id_or_name)

        owner_ids = get_all_owner_ids_from_group(group)

        if slugs:
            lines = [(slug,) + get_calculation(owner_ids, slug)
                     for slug in slugs.split(' ')]
        else:
            lines = get_all_calculations(owner_ids)

        for line in lines:
            print '\t'.join(map(unicode, line))
Example #4
0
    def handle(self, *args, **options):
        args = list(args)
        domain = args.pop(0)
        group_id_or_name = args.pop(0)
        slugs = args.pop(0) if args else None

        try:
            group = Group.get(group_id_or_name)
            assert group.domain == domain
        except ResourceNotFound:
            group = Group.by_name(domain, group_id_or_name)

        owner_ids = get_all_owner_ids_from_group(group)

        if slugs:
            lines = [(slug, ) + get_calculation(owner_ids, slug)
                     for slug in slugs.split(' ')]
        else:
            lines = get_all_calculations(owner_ids)

        for line in lines:
            print '\t'.join(map(unicode, line))
Example #5
0
 def all_owner_ids(self):
     return get_all_owner_ids_from_group(self.group)
Example #6
0
 def all_owner_ids(self):
     return get_all_owner_ids_from_group(self.group)