@@ -693,11 +693,21 @@ def __init__(
693693 scancodeio = ScanCodeIO (user .dataspace )
694694 self .packages = scancodeio .fetch_project_packages (self .project_uuid )
695695 self .dependencies = scancodeio .fetch_project_dependencies (self .project_uuid )
696+
696697 if not self .packages and not self .dependencies :
697698 raise Exception ("Packages could not be fetched from ScanCode.io" )
698699
700+ dataspace = product .dataspace
701+ self .default_review_status = ProductRelationStatus .objects .get_default_on_addition_qs (
702+ dataspace
703+ ).first ()
704+ self .default_purpose = ProductItemPurpose .objects .get_default_on_addition_qs (
705+ dataspace
706+ ).first ()
707+
699708 def save (self ):
700709 self .import_packages ()
710+
701711 if self .create_dependencies :
702712 self .import_dependencies ()
703713
@@ -780,8 +790,11 @@ def import_package(self, package_data):
780790 "license_expression" : package .license_expression ,
781791 "notes" : "Imported from ScanCode.io" ,
782792 "created_by" : self .user ,
793+ "review_status" : self .default_review_status ,
794+ "purpose" : self .default_purpose ,
783795 },
784796 )
797+
785798 package_uid = package_data .get ("package_uid" ) or package .uuid
786799 self .package_uid_mapping [package_uid ] = package
787800
@@ -846,7 +859,7 @@ def look_for_existing_package(self, package_data):
846859 return package
847860
848861 # 2. If the package data does not include a download_url value:
849- # Attemp to find an existing package using purl-only match.
862+ # Attempt to find an existing package using purl-only match.
850863 if not package_data .get ("download_url" ):
851864 purl_lookups = {field : package_data .get (field , "" ) for field in PACKAGE_URL_FIELDS }
852865 same_purl_packages = package_qs .filter (** purl_lookups )
0 commit comments