mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-30 13:10:47 +00:00
All downloaded PasHub files uploaded to SharePoint property folder 🟩
This commit is contained in:
parent
39fa1ccfa0
commit
7984a6ded8
2 changed files with 23 additions and 12 deletions
|
|
@ -20,7 +20,6 @@ from backend.pashub_fetcher.pashub_client import (
|
||||||
from backend.pashub_fetcher.pashub_to_ara_trigger_request import (
|
from backend.pashub_fetcher.pashub_to_ara_trigger_request import (
|
||||||
PashubToAraTriggerRequest,
|
PashubToAraTriggerRequest,
|
||||||
)
|
)
|
||||||
from backend.pashub_fetcher.sharepoint_subfolders import SharepointSubfolders
|
|
||||||
from datatypes.epc.domain.epc_property_data import EpcPropertyData
|
from datatypes.epc.domain.epc_property_data import EpcPropertyData
|
||||||
from utils.logger import setup_logger
|
from utils.logger import setup_logger
|
||||||
from utils.s3 import upload_file_to_s3
|
from utils.s3 import upload_file_to_s3
|
||||||
|
|
@ -112,10 +111,18 @@ class PashubService:
|
||||||
default_file_type=FileTypeEnum.OTHER.value,
|
default_file_type=FileTypeEnum.OTHER.value,
|
||||||
)
|
)
|
||||||
|
|
||||||
# SharePoint upload disabled: pashub sharepoint_link is inconsistent
|
if request.sharepoint_link and request.address:
|
||||||
# (points to property or project unpredictably)
|
folder_name = request.address.split("|")[0].strip()
|
||||||
# if request.sharepoint_link:
|
folders = self._sharepoint_client.get_folders_in_path(request.sharepoint_link)
|
||||||
# self._upload_to_sharepoint(request.sharepoint_link, downloaded.core)
|
match = next(
|
||||||
|
(f["name"] for f in folders.get("value", []) if f["name"].lower() == folder_name.lower()),
|
||||||
|
None,
|
||||||
|
)
|
||||||
|
if match is None:
|
||||||
|
logger.warning(f"SharePoint folder not found for '{folder_name}' in {request.sharepoint_link}")
|
||||||
|
else:
|
||||||
|
property_folder_path = f"{request.sharepoint_link}/{match}"
|
||||||
|
self._upload_to_sharepoint(property_folder_path, downloaded.core + downloaded.other)
|
||||||
|
|
||||||
for df in downloaded.core + downloaded.other:
|
for df in downloaded.core + downloaded.other:
|
||||||
try:
|
try:
|
||||||
|
|
@ -197,11 +204,12 @@ class PashubService:
|
||||||
|
|
||||||
def _upload_to_sharepoint(
|
def _upload_to_sharepoint(
|
||||||
self,
|
self,
|
||||||
sharepoint_link: str,
|
property_folder_path: str,
|
||||||
job_files: List[str],
|
files: List[DownloadedFile],
|
||||||
) -> None:
|
) -> None:
|
||||||
assessment_path = f"{sharepoint_link}/{SharepointSubfolders.ASSESSMENT.value}"
|
for df in files:
|
||||||
|
filename = os.path.basename(df.file_path)
|
||||||
for file_path in job_files:
|
try:
|
||||||
filename = file_path.split("/")[-1]
|
self._sharepoint_client.upload_file(df.file_path, property_folder_path, filename)
|
||||||
self._sharepoint_client.upload_file(file_path, assessment_path, filename)
|
except Exception:
|
||||||
|
logger.warning(f"Failed to upload {filename} to SharePoint", exc_info=True)
|
||||||
|
|
|
||||||
|
|
@ -52,6 +52,8 @@ EXCEL_PATH: str = os.path.join(
|
||||||
"local_run_02-06-2026/NCHA WAVE 3 RAs.xlsx",
|
"local_run_02-06-2026/NCHA WAVE 3 RAs.xlsx",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
SHAREPOINT_PROPERTIES_FOLDER: str = ""
|
||||||
|
|
||||||
|
|
||||||
def _build_requests(excel_path: str) -> list[PashubToAraTriggerRequest]:
|
def _build_requests(excel_path: str) -> list[PashubToAraTriggerRequest]:
|
||||||
wb = load_workbook(excel_path, data_only=True)
|
wb = load_workbook(excel_path, data_only=True)
|
||||||
|
|
@ -99,6 +101,7 @@ def _build_requests(excel_path: str) -> list[PashubToAraTriggerRequest]:
|
||||||
hubspot_deal_id=hubspot_deal_id,
|
hubspot_deal_id=hubspot_deal_id,
|
||||||
address=address,
|
address=address,
|
||||||
deal_stage=deal_stage,
|
deal_stage=deal_stage,
|
||||||
|
sharepoint_link=SHAREPOINT_PROPERTIES_FOLDER or None,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue