fix: myschedule 保存时的bug

This commit is contained in:
caoqianming 2024-06-11 11:28:58 +08:00
parent 7258d2e0ca
commit af879ca01b
1 changed files with 5 additions and 4 deletions

View File

@ -687,7 +687,7 @@ class ApkViewSet(MyLoggingMixin, ListModelMixin, CreateModelMixin, GenericViewSe
class MyScheduleViewSet(ListModelMixin, CreateModelMixin, DestroyModelMixin, CustomGenericViewSet):
perms_map = {'get': '*', 'post': '*',
'delete': '*'}
'delete': 'myschedule.delete'}
serializer_class = MyScheduleSerializer
create_serializer_class = MyScheduleCreateSerializer
queryset = MySchedule.objects.all()
@ -703,8 +703,9 @@ class MyScheduleViewSet(ListModelMixin, CreateModelMixin, DestroyModelMixin, Cus
def get_chinese_description(self, type: str = 'interval', data: dict = {}):
"""转换为汉语描述
"""
print(data)
if type == 'interval':
return f"每隔{data['every']}{data['period']}"
return f"每隔{data['every']}{self.period_dict[data['period']]}"
elif type == 'crontab':
locale.setlocale(locale.LC_ALL, 'zh_CN.UTF-8')
return get_description(f"{data['minute']} {data['hour']} {data['day_of_month']} {data['month_of_year']} {data['day_of_week']}")
@ -720,7 +721,7 @@ class MyScheduleViewSet(ListModelMixin, CreateModelMixin, DestroyModelMixin, Cus
interval, _ = IntervalSchedule.objects.get_or_create(
**interval_data, defaults=interval_data)
obj = MySchedule(**vdata)
obj.name = self.get_chinese_description('interval', vdata)
obj.name = self.get_chinese_description('interval', interval_data)
obj.interval = interval
obj.save()
elif vdata['type'] == 20:
@ -728,7 +729,7 @@ class MyScheduleViewSet(ListModelMixin, CreateModelMixin, DestroyModelMixin, Cus
crontab, _ = CrontabSchedule.objects.get_or_create(
**crontab_data, defaults=crontab_data)
obj = MySchedule(**vdata)
obj.name = self.get_chinese_description('crontab', vdata)
obj.name = self.get_chinese_description('crontab', crontab_data)
obj.crontab = crontab
obj.save()