@@ -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 |
|