Merge branch 'master' of https://e.coding.net/ctcdevteam/cma_search
This commit is contained in:
commit
5ee5971719
|
@ -82,15 +82,19 @@ export default {
|
||||||
this.$u.api.getUserInfo().then(res=>{
|
this.$u.api.getUserInfo().then(res=>{
|
||||||
this.$u.vuex('vuex_user', res.data)
|
this.$u.vuex('vuex_user', res.data)
|
||||||
// 修改资源请求地址
|
// 修改资源请求地址
|
||||||
this.$u.vuex('vuex_user.avatar', this.vuex_user.avatar +
|
this.$u.vuex('vuex_user.avatar', res.data.avatar +
|
||||||
'?token=' + this.vuex_token)
|
'?token=' + this.vuex_token)
|
||||||
console.log(this.vuex_user)
|
|
||||||
})
|
})
|
||||||
uni.reLaunch({
|
uni.reLaunch({
|
||||||
url:'/pages/home/home'
|
url:'/pages/home/home'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
)
|
).catch(e=>{
|
||||||
|
uni.showToast({
|
||||||
|
title:'账户密码错误',
|
||||||
|
icon:'none'
|
||||||
|
})
|
||||||
|
})
|
||||||
} else {
|
} else {
|
||||||
console.log('验证失败');
|
console.log('验证失败');
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
# Generated by Django 3.0.5 on 2021-06-25 03:17
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
import django.utils.timezone
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
|
('system', '0018_auto_20210430_1156'),
|
||||||
|
('quality', '0014_inspecttask_template'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Document',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('create_time', models.DateTimeField(default=django.utils.timezone.now, help_text='创建时间', verbose_name='创建时间')),
|
||||||
|
('update_time', models.DateTimeField(auto_now=True, help_text='修改时间', verbose_name='修改时间')),
|
||||||
|
('is_deleted', models.BooleanField(default=False, help_text='删除标记', verbose_name='删除标记')),
|
||||||
|
('name', models.CharField(max_length=100, verbose_name='名称')),
|
||||||
|
('description', models.TextField(default='', verbose_name='描述')),
|
||||||
|
('create_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='document_create_by', to=settings.AUTH_USER_MODEL, verbose_name='创建人')),
|
||||||
|
('file', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='system.File')),
|
||||||
|
('update_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='document_update_by', to=settings.AUTH_USER_MODEL, verbose_name='最后编辑人')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': '质量文件库',
|
||||||
|
'verbose_name_plural': '质量文件库',
|
||||||
|
},
|
||||||
|
),
|
||||||
|
]
|
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 3.0.5 on 2021-06-25 03:18
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('quality', '0015_document'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='document',
|
||||||
|
name='description',
|
||||||
|
field=models.TextField(blank=True, default='', verbose_name='描述'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -121,4 +121,12 @@ class InspectRecord(CommonAModel):
|
||||||
verbose_name = '巡查记录'
|
verbose_name = '巡查记录'
|
||||||
verbose_name_plural = verbose_name
|
verbose_name_plural = verbose_name
|
||||||
|
|
||||||
|
class Document(CommonAModel):
|
||||||
|
|
||||||
|
name = models.CharField('名称', max_length=100)
|
||||||
|
description = models.TextField('描述', default="", blank=True)
|
||||||
|
file = models.ForeignKey(File, on_delete=models.CASCADE)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
verbose_name = '质量文件库'
|
||||||
|
verbose_name_plural = verbose_name
|
|
@ -4,6 +4,18 @@ from rest_framework import serializers
|
||||||
from .models import *
|
from .models import *
|
||||||
from apps.system.serializers import OrganizationSerializer,FileListSerializer,UserSimpleSerializer,OrganizationSimpleSerializer, FileSimpleSerializer
|
from apps.system.serializers import OrganizationSerializer,FileListSerializer,UserSimpleSerializer,OrganizationSimpleSerializer, FileSimpleSerializer
|
||||||
from rest_framework.exceptions import ParseError, APIException
|
from rest_framework.exceptions import ParseError, APIException
|
||||||
|
|
||||||
|
class DocumentSerializer(serializers.ModelSerializer):
|
||||||
|
|
||||||
|
file_ = FileListSerializer(source='file', read_only=True)
|
||||||
|
class Meta:
|
||||||
|
model = Document
|
||||||
|
fields = '__all__'
|
||||||
|
@staticmethod
|
||||||
|
def setup_eager_loading(queryset):
|
||||||
|
queryset = queryset.select_related('file')
|
||||||
|
return queryset
|
||||||
|
|
||||||
class InspectItemSerializer(serializers.ModelSerializer):
|
class InspectItemSerializer(serializers.ModelSerializer):
|
||||||
cate_name = serializers.StringRelatedField(source='cate', read_only=True)
|
cate_name = serializers.StringRelatedField(source='cate', read_only=True)
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
from django.urls import path, include
|
from django.urls import path, include
|
||||||
from rest_framework import routers
|
from rest_framework import routers
|
||||||
from .views import InspectItemViewSet, InspectTaskViewSet, InspectTeamViewSet, InspectTemplateViewSet, SubtaskViewSet, InspectRecordViewSet, InspectDeptViewSet, InspectTemplate
|
from .views import DocumentViewSet, InspectItemViewSet, InspectTaskViewSet, InspectTeamViewSet, InspectTemplateViewSet, SubtaskViewSet, InspectRecordViewSet, InspectDeptViewSet, InspectTemplate
|
||||||
|
|
||||||
router = routers.DefaultRouter()
|
router = routers.DefaultRouter()
|
||||||
router.register('inspectitem', InspectItemViewSet, basename="inspectitem")
|
router.register('inspectitem', InspectItemViewSet, basename="inspectitem")
|
||||||
|
@ -10,6 +10,7 @@ router.register('inspectrecord', InspectRecordViewSet, basename='inspectrecord')
|
||||||
router.register('inspectdept', InspectDeptViewSet, basename='inspectdept')
|
router.register('inspectdept', InspectDeptViewSet, basename='inspectdept')
|
||||||
router.register('inspecttemplate', InspectTemplateViewSet, basename='inspecttemplate')
|
router.register('inspecttemplate', InspectTemplateViewSet, basename='inspecttemplate')
|
||||||
router.register('inspectteam', InspectTeamViewSet, basename='inspectteam')
|
router.register('inspectteam', InspectTeamViewSet, basename='inspectteam')
|
||||||
|
router.register('document', DocumentViewSet, basename='document')
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('', include(router.urls))
|
path('', include(router.urls))
|
||||||
]
|
]
|
|
@ -14,7 +14,7 @@ from rest_framework.response import Response
|
||||||
from rest_framework.viewsets import GenericViewSet, ModelViewSet
|
from rest_framework.viewsets import GenericViewSet, ModelViewSet
|
||||||
from utils.pagination import PageOrNot
|
from utils.pagination import PageOrNot
|
||||||
|
|
||||||
from apps.system.mixins import CreateUpdateCustomMixin, OptimizationMixin
|
from apps.system.mixins import CreateUpdateCustomMixin, CreateUpdateModelAMixin, OptimizationMixin
|
||||||
from apps.system.models import Organization
|
from apps.system.models import Organization
|
||||||
from apps.system.permission import get_permission_list, has_permission
|
from apps.system.permission import get_permission_list, has_permission
|
||||||
from apps.system.permission_data import RbacFilterSet
|
from apps.system.permission_data import RbacFilterSet
|
||||||
|
@ -23,6 +23,14 @@ from .models import *
|
||||||
from .serializers import *
|
from .serializers import *
|
||||||
from .permission import IsSubInspectTaskLeader, IsInspectRecordChecker
|
from .permission import IsSubInspectTaskLeader, IsInspectRecordChecker
|
||||||
# Create your views here.
|
# Create your views here.
|
||||||
|
class DocumentViewSet(OptimizationMixin, PageOrNot, CreateUpdateModelAMixin, ModelViewSet):
|
||||||
|
perms_map = {'get': '*', 'post': 'qualitydocument_create',
|
||||||
|
'put': 'qualitydocument_update', 'delete': 'qualitydocument_delete'}
|
||||||
|
queryset = Document.objects.all()
|
||||||
|
serializer_class = DocumentSerializer
|
||||||
|
ordering = ['-id']
|
||||||
|
search_fields = ['name']
|
||||||
|
|
||||||
|
|
||||||
class InspectTemplateViewSet(PageOrNot, CreateUpdateCustomMixin, ModelViewSet):
|
class InspectTemplateViewSet(PageOrNot, CreateUpdateCustomMixin, ModelViewSet):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -420,6 +420,7 @@ class FileViewSet(ModelViewSet):
|
||||||
from rest_framework_simplejwt.state import token_backend
|
from rest_framework_simplejwt.state import token_backend
|
||||||
from django.http import HttpResponseForbidden, HttpResponse
|
from django.http import HttpResponseForbidden, HttpResponse
|
||||||
import urllib.parse as urlparse
|
import urllib.parse as urlparse
|
||||||
|
|
||||||
def mediaauth(request):
|
def mediaauth(request):
|
||||||
token = ""
|
token = ""
|
||||||
token = request.COOKIES.get('token', None)
|
token = request.COOKIES.get('token', None)
|
||||||
|
|
Loading…
Reference in New Issue