from dbsynce.models import ServiceCategory from dbsynce.models import Service from dbsynce.models import Company from dbsynce.models import Provider from django import forms from sharix_admin.forms import BaseForm from dbsynce.docs.database.service_category import ServiceCategory as ServiceCategoryHelpTexts from dbsynce.docs.database.service import Service as ServiceHelpTexts #RESOURCE_TYPE_CHOICES = [ # ('1', 'Только время'), # ('2', 'Только расстояние'), # ('3', 'За единицу услуги'), # ('4', 'Время за расстояние'), # ('5', 'Единицы за расстояние'), # ('6', 'Единицы за время'), #] class ServiceTariffUpdateForm(forms.ModelForm): def __init__(self, *args, **kwargs): super(ServiceTariffUpdateForm, self).__init__(*args, **kwargs) # Добавляет стиль бутстрапа form-control всем полям таблицы если у них нет своих стилей for field in iter(self.fields): if 'class' not in self.fields[field].widget.attrs: self.fields[field].widget.attrs.update({'class': 'form-control'}) class Meta: model = Service fields = [ #'status', #'ticket_status', 'service_category', 'requirements', 'company_comission', 'codename', 'caption', 'description', 'resource_type', # 'price_type', 'price_km', 'price_min', 'price_amount', 'is_global', 'is_visible' ] widgets = { 'status': forms.TextInput(attrs={'readonly': True}, ), 'ticket_status': forms.TextInput(attrs={'readonly': True}), 'requirements': forms.TextInput(attrs={'readonly': True}), 'resource_type': forms.TextInput(attrs={'readonly': True}), # 'price_type': forms.TextInput(attrs={'readonly': True}), 'service_category': forms.Select(attrs={'class': 'form-select', 'readonly': True}), #'resource': forms.Select(attrs={'class': 'form-select'}), } class ServiceTariffCreateForm(forms.ModelForm): #company_comission = forms.FloatField(label="Комиссия Партнера") # company_comission = forms.FloatField(label=ServiceHelpTexts.company_comission) #resource_type = forms.CharField(label="Необходимый тип ресурса") #resource_type = forms.ChoiceField(choices=RESOURCE_TYPE_CHOICES, label="Необходимый тип ресурса") # codename = forms.CharField(label="Кодовое короткое название тарифа услуги") # caption = forms.CharField(label="Название тарифа услуги") #requirements = forms.CharField(label="Требования") #price_type = forms.ChoiceField(choices=PRICE_CHOICES, label="Ценообразование") # description = forms.CharField(label="Описание") # is_global = forms.BooleanField(label="Доступно во всех сервисах", required=False) # is_visible = forms.BooleanField(label="Доступно для планирования цепочек во всех сервисах", required=False) def __init__(self, *args, **kwargs): super(ServiceTariffCreateForm, self).__init__(*args, **kwargs) # Добавляет стиль бутстрапа form-control всем полям таблицы если у них нет своих стилей for field in iter(self.fields): if 'class' not in self.fields[field].widget.attrs: self.fields[field].widget.attrs.update({'class': 'form-control'}) class Meta: model = Service #fields = '__all__' fields = [ 'service_category', 'company_comission', 'codename', 'caption', 'description', 'resource_type', ] #company - использовать ту, у которой сейчас отображаются услуги #resource - показывать только те, которые имеют отношение к компании widgets = { 'service_category': forms.Select(attrs={'class': 'form-select'}), #'resource': forms.Select(attrs={'class': 'form-select'}), 'ticket_status': forms.TextInput(attrs={'readonly': True}), } #TODO Merge with dicts! #PRICE_CHOICES = [ # ('1', 'Только время'), # ('2', 'Только расстояние'), # ('3', 'За единицу услуги'), # ('4', 'Время за расстояние'), # ('5', 'Единицы за расстояние'), # ('6', 'Единицы за время'), #] class ServiceCategoryUpdateForm(BaseForm, forms.ModelForm): # price_type = forms.ChoiceField(choices=PRICE_CHOICES, label="Ценообразование") def __init__(self, *args, **kwargs): super(ServiceCategoryUpdateForm, self).__init__(*args, **kwargs) class Meta: model = ServiceCategory fields = [ #'status', #'ticket_status', #'id_metaservice', 'codename', 'caption', 'description', #'requirements', 'price_type', 'link_agreement', 'is_global', 'is_visible' ] #widgets = { # 'status': forms.TextInput(attrs={'readonly': True}), # 'ticket_status': forms.TextInput(attrs={'readonly': True}), #} class ServiceCategoryCreateForm(BaseForm, forms.ModelForm): # codename = forms.CharField(label=ServiceCategoryHelpTexts.codename) #codename = forms.CharField(label="Кодовое короткое название услуги") #caption = forms.CharField(label="Название услуги") #requirements = forms.CharField(label="Требования") # price_type = forms.ChoiceField(choices=PRICE_CHOICES, label="Ценообразование") # description = forms.CharField(label="Описание") # link_agreement = forms.CharField(label="Ссылка на договор-оферту") # metaservice_comission = forms.FloatField(label="Комиссия Сервиса") # is_global = forms.BooleanField(label="Доступно во всех сервисах", required=False) # is_visible = forms.BooleanField(label="Доступно для планирования цепочек во всех сервисах", required=False) def __init__(self, *args, **kwargs): super(ServiceCategoryCreateForm, self).__init__(*args, **kwargs) class Meta: model = ServiceCategory fields = [ 'codename', 'caption', #'requirements', 'price_type', 'description', 'link_agreement', 'metaservice_comission', # 'is_global', # 'is_visible', ] widgets = { } class ServiceInformationUpdateForm(BaseForm, forms.ModelForm): def __init__(self, *args, **kwargs): super(ServiceInformationUpdateForm, self).__init__(*args, **kwargs) # Добавляет стиль бутстрапа form-control всем полям таблицы если у них нет своих стилей for field in iter(self.fields): if 'class' not in self.fields[field].widget.attrs: self.fields[field].widget.attrs.update({'class': 'form-control'}) class Meta: model = Service fields = [ 'service_category' ] widgets = { # 'status': forms.TextInput(attrs={'readonly': True}), # 'ticket_status': forms.TextInput(attrs={'readonly': True}), 'service_category': forms.Select(attrs={'class': 'form-select'}), # 'repr': forms.Select(attrs={'class': 'form-select'}), # 'resource': forms.Select(attrs={'class': 'form-select'}), } class ServiceInformationCreateForm(forms.ModelForm): def __init__(self, *args, **kwargs): super(ServiceInformationCreateForm, self).__init__(*args, **kwargs) # Добавляет стиль бутстрапа form-control всем полям таблицы если у них нет своих стилей for field in iter(self.fields): if 'class' not in self.fields[field].widget.attrs: self.fields[field].widget.attrs.update({'class': 'form-control'}) class Meta: model = Service fields = "__all__" exclude = [ "id", "is_global", "is_visible", "ticket_status", "id_metaservice", "resource" ] widgets = { # 'service_category': forms.CharField(max_length=255) # 'legal_name': forms.TextInput(label = 'Название') # 'service_category': forms.Select(attrs={'class': 'form-select'}), # 'repr': forms.Select(attrs={'class': 'form-select'}), # 'resource': forms.Select(attrs={'class': 'form-select'}), # 'ticket_status': forms.Select(attrs={'class': 'form-select'}), } class PartnerInformationUpdateForm(forms.ModelForm): def __init__(self, *args, **kwargs): super(PartnerInformationUpdateForm, self).__init__(*args, **kwargs) # Добавляет стиль бутстрапа form-control всем полям таблицы если у них нет своих стилей for field in iter(self.fields): if 'class' not in self.fields[field].widget.attrs: self.fields[field].widget.attrs.update({'class': 'form-control'}) class Meta: model = Company fields = "__all__" exclude = [ "id", "ticket_status", "is_global", "is_visible", "id_metaservice", "status" ] widgets = { 'description': forms.Select(attrs={'class': 'form-select'}), 'repr': forms.Select(attrs={'class': 'form-select'}), } class PartnerInformationCreateForm(forms.ModelForm): def __init__(self, *args, **kwargs): super(PartnerInformationCreateForm, self).__init__(*args, **kwargs) for field in iter(self.fields): if 'class' not in self.fields[field].widget.attrs: self.fields[field].widget.attrs.update({'class': 'form-control'}) # legal_name = forms.Fi() class Meta: model = Company fields = "__all__" exclude = [ "id", "ticket_status", "is_global", "is_visible", "id_metaservice", "status" ] widgets = { 'description': forms.Select(attrs={'class': 'form-select'}), 'repr': forms.Select(attrs={'class': 'form-select'}), } # username = forms.CharField(label="Номер телефона", # widget=forms.TextInput(attrs={'class':'form-control'})) class ProviderCreateForm(forms.ModelForm): # gap = forms.CharField(label="Промежуток времени до готовности приступить к выполнению") #gap = forms.DateTimeField(label="Промежуток времени до готовности приступить к выполнению") # location_type = forms.CharField(label="Способ отображения геолокации") # default_location = forms.CharField(label="Геолокация по умолчанию") #resource_type = forms.ChoiceField(choices=RESOURCE_TYPE_CHOICES, label="Необходимый тип ресурса") #requirements = forms.CharField(label="Требования") # is_global = forms.BooleanField(label="Доступно во всех сервисах", required=False) # is_visible = forms.BooleanField(label="Доступно для планирования цепочек во всех сервисах", required=False) def __init__(self, *args, **kwargs): super(ProviderCreateForm, self).__init__(*args, **kwargs) # Добавляет стиль бутстрапа form-control всем полям таблицы если у них нет своих стилей for field in iter(self.fields): if 'class' not in self.fields[field].widget.attrs: self.fields[field].widget.attrs.update({'class': 'form-control'}) class Meta: model = Provider #fields = '__all__' fields = [ 'gap', 'location_type', 'default_location', 'service', 'resource', ] #company - использовать ту, у которой сейчас отображаются услуги #resource - показывать только те, которые имеют отношение к компании widgets = { 'service': forms.Select(attrs={'class': 'form-select'}), 'resource': forms.Select(attrs={'class': 'form-select'}), #'resource': forms.Select(attrs={'class': 'form-select'}), #'ticket_status': forms.TextInput(attrs={'readonly': True}), }