@@ -840,6 +840,14 @@ async def get_duties_for_month(
840840 "Файл графика дежурных 'Старшинство_НТП.xlsx' не найден"
841841 )
842842 schedule_file = duty_file
843+ # For НЦК division, use separate seniority file
844+ elif division == "НЦК" :
845+ duty_file = self .file_manager .uploads_folder / "Старшинство_НЦК.xlsx"
846+ if not duty_file .exists ():
847+ raise FileNotFoundError (
848+ "Файл графика дежурных 'Старшинство_НЦК.xlsx' не найден"
849+ )
850+ schedule_file = duty_file
843851 else :
844852 schedule_file = self .file_manager .find_schedule_file (division )
845853 if not schedule_file :
@@ -854,8 +862,8 @@ async def get_duties_for_month(
854862 except Exception as e :
855863 logger .warning (f"Failed to read schedule with primary sheet name: { e } " )
856864
857- # For НТП divisions, try different sheet name patterns
858- if division in ["НТП" , "НТП1" , "НТП2" ]:
865+ # For НТП and НЦК divisions, try different sheet name patterns
866+ if division in ["НТП" , "НТП1" , "НТП2" , "НЦК" ]:
859867 # Try just the month name
860868 month_names = [
861869 "Январь" ,
@@ -875,31 +883,15 @@ async def get_duties_for_month(
875883 try :
876884 df = self .read_excel_file (schedule_file , month_name )
877885 logger .debug (
878- f"Successfully read НТП duty sheet with name: { month_name } "
886+ f"Successfully read { division } duty sheet with name: { month_name } "
879887 )
880888 except Exception as e2 :
881889 logger .warning (
882- f"Failed to read НТП duty sheet with month name '{ month_name } ': { e2 } "
890+ f"Failed to read { division } duty sheet with month name '{ month_name } ': { e2 } "
883891 )
884892 df = None
885893 else :
886- # Try alternative English month names for НЦК
887- english_months = {
888- 1 : "January" ,
889- 2 : "February" ,
890- 3 : "March" ,
891- 4 : "April" ,
892- 5 : "May" ,
893- 6 : "June" ,
894- 7 : "July" ,
895- 8 : "August" ,
896- 9 : "September" ,
897- 10 : "October" ,
898- 11 : "November" ,
899- 12 : "December" ,
900- }
901- alt_sheet_name = f"Дежурство { english_months [date .month ]} "
902- df = self .read_excel_file (schedule_file , alt_sheet_name )
894+ df = None
903895
904896 if df is None :
905897 logger .debug (
@@ -1008,6 +1000,14 @@ async def get_duties_for_date(
10081000 "Файл графика дежурных 'Старшинство_НТП.xlsx' не найден"
10091001 )
10101002 schedule_file = duty_file
1003+ # For НЦК division, use separate seniority file
1004+ elif division == "НЦК" :
1005+ duty_file = self .file_manager .uploads_folder / "Старшинство_НЦК.xlsx"
1006+ if not duty_file .exists ():
1007+ raise FileNotFoundError (
1008+ "Файл графика дежурных 'Старшинство_НЦК.xlsx' не найден"
1009+ )
1010+ schedule_file = duty_file
10111011 else :
10121012 schedule_file = self .file_manager .find_schedule_file (division )
10131013 if not schedule_file :
@@ -1022,8 +1022,8 @@ async def get_duties_for_date(
10221022 except Exception as e :
10231023 logger .warning (f"Failed to read schedule with primary sheet name: { e } " )
10241024
1025- # For НТП divisions, try different sheet name patterns
1026- if division in ["НТП" , "НТП1" , "НТП2" ]:
1025+ # For НТП and НЦК divisions, try different sheet name patterns
1026+ if division in ["НТП" , "НТП1" , "НТП2" , "НЦК" ]:
10271027 # Try just the month name
10281028 month_names = [
10291029 "Январь" ,
@@ -1043,31 +1043,15 @@ async def get_duties_for_date(
10431043 try :
10441044 df = self .read_excel_file (schedule_file , month_name )
10451045 logger .debug (
1046- f"Successfully read НТП duty sheet with name: { month_name } "
1046+ f"Successfully read { division } duty sheet with name: { month_name } "
10471047 )
10481048 except Exception as e2 :
10491049 logger .warning (
1050- f"Failed to read НТП duty sheet with month name '{ month_name } ': { e2 } "
1050+ f"Failed to read { division } duty sheet with month name '{ month_name } ': { e2 } "
10511051 )
10521052 df = None
10531053 else :
1054- # Try alternative English month names for НЦК
1055- english_months = {
1056- 1 : "January" ,
1057- 2 : "February" ,
1058- 3 : "March" ,
1059- 4 : "April" ,
1060- 5 : "May" ,
1061- 6 : "June" ,
1062- 7 : "July" ,
1063- 8 : "August" ,
1064- 9 : "September" ,
1065- 10 : "October" ,
1066- 11 : "November" ,
1067- 12 : "December" ,
1068- }
1069- alt_sheet_name = f"Дежурство { english_months [date .month ]} "
1070- df = self .read_excel_file (schedule_file , alt_sheet_name )
1054+ df = None
10711055
10721056 if df is None :
10731057 logger .debug (
0 commit comments