@@ -21,11 +21,20 @@ def add_course(request): |
||
21 | 21 |
def update_course(request): |
22 | 22 |
course_id = request.POST.get('course_id', '') |
23 | 23 |
course_name = request.POST.get('course_name', '') |
24 |
+ authorities = request.POST.get('authorities', []) |
|
25 |
+ all_fields = request.POST.get('fields', []) |
|
24 | 26 |
|
25 |
- CourseInfo.objects.filter(course_id=course_id).update(course_name=course_name) |
|
27 |
+ CourseInfo.objects.filter(course_id=course_id).update(course_name=course_name, authorities=authorities) |
|
26 | 28 |
CourseRegisterFieldInfo.objects.filter(course_id=course_id).update(course_name=course_name) |
27 | 29 |
CourseRegisterInfo.objects.filter(course_id=course_id).update(course_name=course_name) |
28 | 30 |
|
31 |
+ for fields in all_fields: |
|
32 |
+ CourseRegisterFieldInfo.objects.update_or_create(field_id=fields.get('field_id'), defaults={ |
|
33 |
+ 'course_id': course_id, |
|
34 |
+ 'course_name': course_name, |
|
35 |
+ 'fields': fields.get('fields', []), |
|
36 |
+ }) |
|
37 |
+ |
|
29 | 38 |
return response() |
30 | 39 |
|
31 | 40 |
|
@@ -75,7 +75,7 @@ class BranchCampusAdministratorInfo(BaseModelMixin): |
||
75 | 75 |
class CourseInfo(BaseModelMixin): |
76 | 76 |
course_id = ShortUUIDField(_('course_id'), max_length=32, blank=True, null=True, help_text='课程唯一标识', db_index=True, unique=True) |
77 | 77 |
course_name = models.CharField(_('course_name'), max_length=255, blank=True, null=True, help_text='课程名称') |
78 |
- # TODO:权限 |
|
78 |
+ authorities = JSONField(_('authorities'), default=[], blank=True, null=True, help_text='课程权限列表') |
|
79 | 79 |
|
80 | 80 |
class Meta: |
81 | 81 |
verbose_name = _('课程信息') |
@@ -89,6 +89,7 @@ class CourseInfo(BaseModelMixin): |
||
89 | 89 |
return { |
90 | 90 |
'course_id': self.course_id, |
91 | 91 |
'course_name': self.course_name, |
92 |
+ 'authorities': self.authorities, |
|
92 | 93 |
} |
93 | 94 |
|
94 | 95 |
|