This commit is contained in:
parent
77e843a9bc
commit
45c8e3ca57
|
@ -11,7 +11,7 @@ def backup_database():
|
||||||
"""
|
"""
|
||||||
import datetime
|
import datetime
|
||||||
name = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
|
name = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
|
||||||
command = 'echo "{}" | sudo -S pg_dump "user={} password={} dbname={}" > {}/hberp_{}.sql'.format(
|
command = 'echo "{}" | sudo -S pg_dump "user={} password={} dbname={}" > {}/bak_{}.sql'.format(
|
||||||
SD_PWD,
|
SD_PWD,
|
||||||
DATABASES['default']['USER'],
|
DATABASES['default']['USER'],
|
||||||
DATABASES['default']['PASSWORD'],
|
DATABASES['default']['PASSWORD'],
|
||||||
|
@ -30,15 +30,15 @@ def reload_server_git():
|
||||||
|
|
||||||
|
|
||||||
@shared_task
|
@shared_task
|
||||||
def reload_client_git():
|
def reload_web_git():
|
||||||
command = 'bash {}/git_client.sh'.format(SH_PATH)
|
command = 'bash {}/git_web.sh'.format(SH_PATH)
|
||||||
completed = subprocess.run(command, shell=True, capture_output=True, text=True)
|
completed = subprocess.run(command, shell=True, capture_output=True, text=True)
|
||||||
return completed
|
return completed
|
||||||
|
|
||||||
|
|
||||||
@shared_task
|
@shared_task
|
||||||
def reload_server_only():
|
def reload_server_only():
|
||||||
command = 'echo "{}" | sudo -S service supervisor reload'.format(SD_PWD)
|
command = 'echo "{}" | sudo supervisorctl reload'.format(SD_PWD)
|
||||||
completed = subprocess.run(command, shell=True, capture_output=True, text=True)
|
completed = subprocess.run(command, shell=True, capture_output=True, text=True)
|
||||||
return completed
|
return completed
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ HTML_BASE_URL = 'develop/'
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path(API_BASE_URL + 'reload_server_git/', ReloadServerGit.as_view()),
|
path(API_BASE_URL + 'reload_server_git/', ReloadServerGit.as_view()),
|
||||||
path(API_BASE_URL + 'reload_client_git/', ReloadClientGit.as_view()),
|
path(API_BASE_URL + 'reload_web_git/', ReloadClientGit.as_view()),
|
||||||
path(API_BASE_URL + 'reload_server_only/', ReloadServerOnly.as_view()),
|
path(API_BASE_URL + 'reload_server_only/', ReloadServerOnly.as_view()),
|
||||||
path(API_BASE_URL + 'backup_database/', BackupDatabase.as_view()),
|
path(API_BASE_URL + 'backup_database/', BackupDatabase.as_view()),
|
||||||
path(API_BASE_URL + 'backup_media/', BackupMedia.as_view())
|
path(API_BASE_URL + 'backup_media/', BackupMedia.as_view())
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
from rest_framework.views import APIView
|
from rest_framework.views import APIView
|
||||||
from rest_framework.permissions import IsAdminUser
|
from rest_framework.permissions import IsAdminUser
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
from apps.develop.tasks import backup_database, backup_media, reload_client_git, reload_server_git, reload_server_only
|
from apps.develop.tasks import backup_database, backup_media, reload_web_git, reload_server_git, reload_server_only
|
||||||
from rest_framework.exceptions import APIException
|
from rest_framework.exceptions import APIException
|
||||||
# Create your views here.
|
# Create your views here.
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@ class ReloadClientGit(APIView):
|
||||||
|
|
||||||
拉取前端代码并打包
|
拉取前端代码并打包
|
||||||
"""
|
"""
|
||||||
completed = reload_client_git()
|
completed = reload_web_git()
|
||||||
if completed.returncode == 0:
|
if completed.returncode == 0:
|
||||||
return Response()
|
return Response()
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -67,9 +67,8 @@ class RemployeeViewSet(ListModelMixin, RetrieveModelMixin, CreateModelMixin, Cus
|
||||||
serializer_class = RemployeeSerializer
|
serializer_class = RemployeeSerializer
|
||||||
|
|
||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
user = self.request.user
|
|
||||||
queryset = super().get_queryset()
|
queryset = super().get_queryset()
|
||||||
if user.type == 'remployee':
|
if self.request.user.type == 'remployee':
|
||||||
queryset = queryset.filter(rparty=self.request.user.belong_dept)
|
queryset = queryset.filter(rparty=self.request.user.belong_dept)
|
||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
|
@ -103,10 +102,9 @@ class RcertificateViewSet(CustomModelViewSet):
|
||||||
serializer_class = RcertificateSerializer
|
serializer_class = RcertificateSerializer
|
||||||
|
|
||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
user = self.request.user
|
|
||||||
queryset = super().get_queryset()
|
queryset = super().get_queryset()
|
||||||
if user.type == 'remployee':
|
if self.request.user.type == 'remployee':
|
||||||
queryset = queryset.filter(remployee__rparty=user.belong_dept)
|
queryset = queryset.filter(remployee__rparty=self.request.user.belong_dept)
|
||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
|
|
||||||
|
@ -117,19 +115,17 @@ class RpjViewSet(CustomModelViewSet):
|
||||||
serializer_class = RpjListSerializer
|
serializer_class = RpjListSerializer
|
||||||
|
|
||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
user = self.request.user
|
|
||||||
queryset = super().get_queryset()
|
queryset = super().get_queryset()
|
||||||
if user.type == 'remployee':
|
if self.request.user.type == 'remployee':
|
||||||
queryset = queryset.filter(belong_dept=user.belong_dept)
|
queryset = queryset.filter(belong_dept=self.request.user.belong_dept)
|
||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
def create(self, request, *args, **kwargs):
|
def create(self, request, *args, **kwargs):
|
||||||
user = self.request.user
|
|
||||||
serializer = self.get_serializer(data=request.data)
|
serializer = self.get_serializer(data=request.data)
|
||||||
serializer.is_valid(raise_exception=True)
|
serializer.is_valid(raise_exception=True)
|
||||||
vdata = serializer.validated_data
|
vdata = serializer.validated_data
|
||||||
if user.type == 'remployee':
|
if self.request.user.type == 'remployee':
|
||||||
vdata['rparty'] = user.belong_dept.rparty
|
vdata['rparty'] = self.request.user.belong_dept.rparty
|
||||||
if not vdata.get('rparty', None):
|
if not vdata.get('rparty', None):
|
||||||
raise ParseError('请指定相关方')
|
raise ParseError('请指定相关方')
|
||||||
if not vdata.get('belong_dept', None):
|
if not vdata.get('belong_dept', None):
|
||||||
|
|
Loading…
Reference in New Issue