ali 3 lat temu
rodzic
commit
0d42c010ef
2 zmienionych plików z 34 dodań i 42 usunięć
  1. 27 21
      src/models/EventRegistration.js
  2. 7 21
      src/pages/User/Profile/Events.vue

+ 27 - 21
src/models/EventRegistration.js

@@ -17,28 +17,34 @@ class EventRegistration extends Model {
         relatedModel: Classroom
       },
       { key: 'status' }
-    ])
-
-    this.statusEnums = [
-      {
-        label: 'ثبت نام شده',
-        value: 'REGISTERED'
-      }
-    ]
-
-    this.loadStatusInfo()
-  }
-
-  loadStatusInfo () {
-    const target = this.statusEnums.find(type => type.value === this.status)
-    if (!target) {
-      this.status_info = {
-        label: null,
-        value: null
+    ], {
+      status: {
+        infoKey: 'status_info',
+        enumListKey: 'statusEnums',
+        enums: [
+          {
+            label: 'پیش ثبت نام',
+            value: 'ENROLLED'
+          },
+          {
+            label: 'ثبت نام',
+            value: 'REGISTERED'
+          },
+          {
+            label: 'حذف توسط کاربر',
+            value: 'DROPPED_BY_ITSELF'
+          },
+          {
+            label: 'حذف توسط ادمین',
+            value: 'DROPPED_BY_ADMIN'
+          },
+          {
+            label: 'حذف سیستمی (شرایط غیر مجاز)',
+            value: 'DROPPED_FOR_CONDITION'
+          }
+        ]
       }
-    } else {
-      this.status_info = target
-    }
+    })
   }
 }
 

+ 7 - 21
src/pages/User/Profile/Events.vue

@@ -54,7 +54,7 @@ import ShamsiDate from 'src/assets/ShamsiDate.js'
 import { APIGateway } from 'src/api/APIGateway.js'
 import { FormBuilderAssist } from 'quasar-form-builder'
 import BtnControl from 'src/components/Control/btn.vue'
-import { Registration } from 'src/models/Registration.js'
+import { EventRegistration } from 'src/models/EventRegistration.js'
 import EntityIndexGridItem from 'src/components/EntityIndexGridItem.vue'
 import Breadcrumbs from 'src/components/Widgets/Breadcrumbs/Breadcrumbs.vue'
 
@@ -118,13 +118,6 @@ export default {
             align: 'left',
             field: row => row.event_info?.title
           },
-          // {
-          //   name: 'title',
-          //   required: true,
-          //   label: 'نام درس',
-          //   align: 'left',
-          //   field: row => row.event_info.unit_info.title
-          // },
           {
             name: 'audience_gender_type',
             required: true,
@@ -133,32 +126,25 @@ export default {
             field: row => (new Event(row.event_info)).audience_gender_type_info.label
           },
           {
-            name: 'title',
+            name: 'category',
             required: true,
-            label: 'نوع برگزاری',
+            label: 'دسته بندی',
             align: 'left',
-            field: row => this.getEventHoldingTypeTitle(row.event_info.holding_type)
+            field: row => (new Event(row.event_info)).category_info.label
           },
           {
             name: 'title',
             required: true,
-            label: 'استاد',
-            align: 'left',
-            field: row => row.event_info?.professor_info?.firstname + ' ' + row.event_info?.professor_info?.lastname
-          },
-          {
-            name: 'status',
-            required: true,
-            label: 'تعداد جلسات',
+            label: 'نوع برگزاری',
             align: 'left',
-            field: row => row.event_info?.sessions_info?.length
+            field: row => this.getEventHoldingTypeTitle(row.event_info.holding_type)
           },
           {
             name: 'status',
             required: true,
             label: 'وضعیت',
             align: 'left',
-            field: row => (new Registration(row)).status_info.label
+            field: row => (new EventRegistration(row)).status_info.label
             // field: row => this.getEventStatusTitle(row.event_info.status)
           },
           {