def reset_supplier_declaration(stage, framework_slug, reason, email, supplier_id): data_api_token = get_auth_token('api', stage) if stage != 'development' else 'myToken' data_api_client = DataAPIClient(get_api_endpoint_from_stage(stage), data_api_token) if email: user = data_api_client.get_user(email_address=email) if not user: print(f'No user found for email address `{email}`') exit(1) user_supplier_id = user['users']['supplier']['supplierId'] if user_supplier_id and supplier_id and user_supplier_id != supplier_id: print(f'Email address provided does not match with supplier provided. Email address `{email}` is ' f'associated with supplierId `{supplier_id}`. Script was called with supplierId `{supplier_id}`.') exit(2) supplier_id = user_supplier_id try: supplier_framework = data_api_client.get_supplier_framework_info(supplier_id=supplier_id, framework_slug=framework_slug) print(f"Current supplier declaration: {supplier_framework['frameworkInterest']['declaration']}") except HTTPError: print(f'No supplier framework found for supplierId `{supplier_id}` on framework `{framework_slug}`.') exit(3) if not supplier_framework: print(f'No supplier framework/interest record found for supplierId `{supplier_id}` on framework ' f'`{framework_slug}`.') exit(4) data_api_client.set_supplier_declaration(supplier_id=supplier_id, framework_slug=framework_slug, declaration={}, user=f'{getpass.getuser()} - {reason}') data_api_client.set_supplier_framework_prefill_declaration(supplier_id=supplier_id, framework_slug=framework_slug, prefill_declaration_from_framework_slug=None, user=f'{getpass.getuser()} - {reason}') print(f'Supplier declaration for supplierId `{supplier_id}` on framework `{framework_slug}` has been reset.')
while services_generated < args.quantity: random_lot = random.choice(args.lots) random_supplier = random.choice(suppliers) supplier_id = random_supplier['supplierId'] if supplier_id not in suppliers_prepared: # 2a) For each supplier, register interest in a given (new) framework data_api_client.register_framework_interest( supplier_id=supplier_id, framework_slug=args.new_slug, user=identity) # 2b) Submit and mark as complete a valid supplier declaration for the new framework data_api_client.set_supplier_declaration( supplier_id=supplier_id, framework_slug=args.new_slug, declaration=eligible_g9_declaration_base(), user=identity) suppliers_prepared.add(supplier_id) fake_service = gcloud_service_faker.generate_from_file( filepath_service_lot_schema(args.validation_schema_path, args.new_slug, random_lot)) fake_service['serviceName'] = gen_gcloud_name() draft_service = data_api_client.create_new_draft_service( framework_slug=args.new_slug, lot=random_lot, supplier_id=supplier_id, data=fake_service,