58
+    user_course_register, _ = UserCourseRegisterInfo.objects.get_or_create(user_id=user_id, course_id=course_id)
59
+    if not user_course_register.campus_id:
60
+        user_course_register.campus_id = admin.campus_id if admin else ''
61
+    if not user_course_register.campus_name:
62
+        user_course_register.campus_name = admin.campus_name if admin else ''
63
+    if not user_course_register.admin_id:
64
+        user_course_register.admin_id = admin.admin_id if admin else ''
65
+    if not user_course_register.admin_name:
66
+        user_course_register.admin_name = admin.admin_name if admin else ''
67
+    user_course_register.course_name = course_name
68
+    user_course_register.fields = registers
31 69
 
32 70
     return response()
33 71
 

+ 2 - 2
api/course_views.py

@@ -6,7 +6,7 @@ from django_query import get_query_value
6 6
 from django_response import response
7 7
 from paginator import pagination
8 8
 
9
-from registration.models import CourseInfo, CourseRegisterFieldInfo, CourseRegisterInfo, BranchCampusAdministratorInfo
9
+from registration.models import BranchCampusAdministratorInfo, CourseInfo, CourseRegisterFieldInfo, CourseRegisterInfo
10 10
 
11 11
 
12 12
 def add_course(request):
@@ -77,7 +77,7 @@ def get_course_list(request):
77 77
 
78 78
     try:
79 79
         admin = BranchCampusAdministratorInfo.objects.get(admin_id=admin_id, user_status=BranchCampusAdministratorInfo.ACTIVATED)
80
-    except:
80
+    except BranchCampusAdministratorInfo.DoesNotExist:
81 81
         return response()
82 82
 
83 83
     course = CourseInfo.objects.filter(authorities__contains=[{'campus_id': admin.campus_id}], status=True)

+ 88 - 0
registration/migrations/0009_auto_20210303_1623.py

@@ -0,0 +1,88 @@
1
+# Generated by Django 2.2.17 on 2021-03-03 08:23
2
+
3
+from django.db import migrations, models
4
+
5
+
6
+class Migration(migrations.Migration):
7
+
8
+    dependencies = [
9
+        ('registration', '0008_auto_20210302_1005'),
10
+    ]
11
+
12
+    operations = [
13
+        migrations.AddField(
14
+            model_name='courseregisterinfo',
15
+            name='admin_id',
16
+            field=models.CharField(blank=True, db_index=True, help_text='管理员唯一标识', max_length=32, null=True, verbose_name='admin_id'),
17
+        ),
18
+        migrations.AddField(
19
+            model_name='courseregisterinfo',
20
+            name='admin_name',
21
+            field=models.CharField(blank=True, help_text='管理员名称', max_length=255, null=True, verbose_name='admin_name'),
22
+        ),
23
+        migrations.AddField(
24
+            model_name='courseregisterinfo',
25
+            name='campus_id',
26
+            field=models.CharField(blank=True, db_index=True, help_text='分院唯一标识', max_length=32, null=True, verbose_name='campus_id'),
27
+        ),
28
+        migrations.AddField(
29
+            model_name='courseregisterinfo',
30
+            name='campus_name',
31
+            field=models.CharField(blank=True, help_text='分院名称', max_length=255, null=True, verbose_name='campus_name'),
32
+        ),
33
+        migrations.AddField(
34
+            model_name='usercourseregisterinfo',
35
+            name='admin_id',
36
+            field=models.CharField(blank=True, db_index=True, help_text='管理员唯一标识', max_length=32, null=True, verbose_name='admin_id'),
37
+        ),
38
+        migrations.AddField(
39
+            model_name='usercourseregisterinfo',
40
+            name='admin_name',
41
+            field=models.CharField(blank=True, help_text='管理员名称', max_length=255, null=True, verbose_name='admin_name'),
42
+        ),
43
+        migrations.AddField(
44
+            model_name='usercourseregisterinfo',
45
+            name='campus_id',
46
+            field=models.CharField(blank=True, db_index=True, help_text='分院唯一标识', max_length=32, null=True, verbose_name='campus_id'),
47
+        ),
48
+        migrations.AddField(
49
+            model_name='usercourseregisterinfo',
50
+            name='campus_name',
51
+            field=models.CharField(blank=True, help_text='分院名称', max_length=255, null=True, verbose_name='campus_name'),
52
+        ),
53
+        migrations.AlterField(
54
+            model_name='branchcampusadministratorinfo',
55
+            name='status',
56
+            field=models.BooleanField(default=True, help_text='Status', verbose_name='status'),
57
+        ),
58
+        migrations.AlterField(
59
+            model_name='branchcampusinfo',
60
+            name='status',
61
+            field=models.BooleanField(default=True, help_text='Status', verbose_name='status'),
62
+        ),
63
+        migrations.AlterField(
64
+            model_name='courseinfo',
65
+            name='status',
66
+            field=models.BooleanField(default=True, help_text='Status', verbose_name='status'),
67
+        ),
68
+        migrations.AlterField(
69
+            model_name='courseregisterfieldinfo',
70
+            name='status',
71
+            field=models.BooleanField(default=True, help_text='Status', verbose_name='status'),
72
+        ),
73
+        migrations.AlterField(
74
+            model_name='courseregisterfieldpoolinfo',
75
+            name='status',
76
+            field=models.BooleanField(default=True, help_text='Status', verbose_name='status'),
77
+        ),
78
+        migrations.AlterField(
79
+            model_name='courseregisterinfo',
80
+            name='status',
81
+            field=models.BooleanField(default=True, help_text='Status', verbose_name='status'),
82
+        ),
83
+        migrations.AlterField(
84
+            model_name='usercourseregisterinfo',
85
+            name='status',
86
+            field=models.BooleanField(default=True, help_text='Status', verbose_name='status'),
87
+        ),
88
+    ]

+ 17 - 1
registration/models.py

@@ -99,7 +99,7 @@ class CourseInfo(BaseModelMixin):
99 99
             'authorities': self.authorities,
100 100
             'fields': self.all_fields,
101 101
         }
102
-    
102
+
103 103
     @property
104 104
     def admindata(self, admin_id):
105 105
         fields = CourseRegisterFieldInfo.objects.filter(course_id=self.course_id, status=True)
@@ -192,6 +192,12 @@ class CourseRegisterFieldInfo(BaseModelMixin):
192 192
 
193 193
 
194 194
 class CourseRegisterInfo(BaseModelMixin):
195
+    campus_id = models.CharField(_('campus_id'), max_length=32, blank=True, null=True, help_text='分院唯一标识', db_index=True)
196
+    campus_name = models.CharField(_('campus_name'), max_length=255, blank=True, null=True, help_text='分院名称')
197
+
198
+    admin_id = models.CharField(_('admin_id'), max_length=32, blank=True, null=True, help_text='管理员唯一标识', db_index=True)
199
+    admin_name = models.CharField(_('admin_name'), max_length=255, blank=True, null=True, help_text='管理员名称')
200
+
195 201
     user_id = models.CharField(_('user_id'), max_length=32, blank=True, null=True, help_text='用户唯一标识', db_index=True)
196 202
 
197 203
     course_id = models.CharField(_('course_id'), max_length=32, blank=True, null=True, help_text='课程唯一标识', db_index=True)
@@ -223,6 +229,12 @@ class CourseRegisterInfo(BaseModelMixin):
223 229
 
224 230
 
225 231
 class UserCourseRegisterInfo(BaseModelMixin):
232
+    campus_id = models.CharField(_('campus_id'), max_length=32, blank=True, null=True, help_text='分院唯一标识', db_index=True)
233
+    campus_name = models.CharField(_('campus_name'), max_length=255, blank=True, null=True, help_text='分院名称')
234
+
235
+    admin_id = models.CharField(_('admin_id'), max_length=32, blank=True, null=True, help_text='管理员唯一标识', db_index=True)
236
+    admin_name = models.CharField(_('admin_name'), max_length=255, blank=True, null=True, help_text='管理员名称')
237
+
226 238
     user_id = models.CharField(_('user_id'), max_length=32, blank=True, null=True, help_text='用户唯一标识', db_index=True)
227 239
 
228 240
     course_id = models.CharField(_('course_id'), max_length=32, blank=True, null=True, help_text='课程唯一标识', db_index=True)
@@ -248,6 +260,10 @@ class UserCourseRegisterInfo(BaseModelMixin):
248 260
     @property
249 261
     def data(self):
250 262
         return {
263
+            'campus_id': self.campus_id,
264
+            'campus_name': self.campus_name,
265
+            'admin_id': self.admin_id,
266
+            'admin_name': self.admin_name,
251 267
             'user_id': self.user_id,
252 268
             'fields': self.fields,
253 269
         }

kodo - Gogs: Go Git Service

Няма описание

custom_message.py 997B

    # -*- coding: utf-8 -*- from django.conf import settings from pywe_custom_message import send_custom_wxa_message from pywe_media import media_upload from pywe_storage import RedisStorage from utils.redis.connect import r WECHAT = settings.WECHAT def mediaupload(media_file=None, media_file_path=None): wxcfg = WECHAT.get('JSAPI', {}) appid = wxcfg.get('appID') secret = wxcfg.get('appsecret') res = media_upload(media_file=media_file, media_file_path=media_file_path, appid=appid, secret=secret, token=None, storage=RedisStorage(r)) print(res) def sendcustomwxamessage(openid=None, miniappid=None, pagepath=None, thumb_media_id=None, title=None): wxcfg = WECHAT.get('JSAPI', {}) appid = wxcfg.get('appID') secret = wxcfg.get('appsecret') res = send_custom_wxa_message(openid=openid, miniappid=miniappid, pagepath=pagepath, thumb_media_id=thumb_media_id, title=title, appid=appid, secret=secret, token=None, storage=RedisStorage(r)) print(res)