|
|
@@ -18,12 +18,6 @@
|
|
|
narrow-indicator>
|
|
|
<q-tab name="eventInfo"
|
|
|
label="اطلاعات دوره آموزشی" />
|
|
|
- <q-tab name="educations"
|
|
|
- label="جدول آموزشی" />
|
|
|
- <q-tab name="movies1"
|
|
|
- label="آزمون" />
|
|
|
- <q-tab name="projects"
|
|
|
- label="پروژه" />
|
|
|
<q-tab v-if="event.live_streaming_url"
|
|
|
name="live_streaming_url"
|
|
|
label="بخش آنلاین" />
|
|
|
@@ -38,89 +32,6 @@
|
|
|
:options="{ profileMode: true }"
|
|
|
@onloadn="onloadnEvent" />
|
|
|
</q-tab-panel>
|
|
|
-
|
|
|
- <q-tab-panel name="educations"
|
|
|
- class="q-pa-none">
|
|
|
- <entity-index v-if="mounted"
|
|
|
- ref="entityIndex"
|
|
|
- v-model:value="sessionsInputs"
|
|
|
- title="لیست جلسات"
|
|
|
- :api="sessionsApi"
|
|
|
- :table="sessionsTable"
|
|
|
- :table-keys="sessionsTableKeys"
|
|
|
- :table-grid-size="$q.screen.lt.sm"
|
|
|
- :show-expand-button="false"
|
|
|
- :show-reload-button="false"
|
|
|
- :show-search-button="false">
|
|
|
- <template #entity-index-table-cell="{inputData}">
|
|
|
- <template v-if="inputData.col.name === 'number'">
|
|
|
- {{ inputData.rowNumber }}
|
|
|
- </template>
|
|
|
- <template v-else-if="inputData.col.name === 'action'">
|
|
|
- <q-btn size="md"
|
|
|
- color="primary"
|
|
|
- label="جزییات"
|
|
|
- :to="{name: 'UserPanel.Profile.SessionInfo', params: {id: inputData.props.row.id}}" />
|
|
|
- </template>
|
|
|
- <template v-else>
|
|
|
- {{ inputData.col.value }}
|
|
|
- </template>
|
|
|
- </template>
|
|
|
- <template #entity-index-table-item-cell="{inputData}">
|
|
|
- <entity-index-grid-item :input-data="inputData">
|
|
|
- <template #col="{col, row}">
|
|
|
- <template v-if="col.name === 'number'">
|
|
|
- {{ inputData.rowNumber }}
|
|
|
- </template>
|
|
|
- <template v-else-if="col.name === 'action'">
|
|
|
- <q-btn size="md"
|
|
|
- color="primary"
|
|
|
- label="جزییات"
|
|
|
- :to="{name: 'UserPanel.Profile.SessionInfo', params: {id: row.id}}" />
|
|
|
- </template>
|
|
|
- </template>
|
|
|
- </entity-index-grid-item>
|
|
|
- </template>
|
|
|
- </entity-index>
|
|
|
- </q-tab-panel>
|
|
|
-
|
|
|
- <q-tab-panel name="movies1">
|
|
|
- آزمون
|
|
|
- </q-tab-panel>
|
|
|
- <q-tab-panel name="projects"
|
|
|
- class="q-pa-none">
|
|
|
- <entity-index v-if="mounted"
|
|
|
- ref="projectList"
|
|
|
- v-model:value="projectListInputs"
|
|
|
- title="لیست پروژه ها"
|
|
|
- :api="projectListApi"
|
|
|
- :table="projectListTable"
|
|
|
- :table-keys="projectListTableKeys"
|
|
|
- :show-search-button="false"
|
|
|
- :show-reload-button="false"
|
|
|
- :show-expand-button="false">
|
|
|
- <template v-slot:entity-index-table-cell="{inputData}">
|
|
|
- <template v-if="inputData.col.name === 'number'">
|
|
|
- {{ inputData.rowNumber }}
|
|
|
- </template>
|
|
|
- <template v-else-if="inputData.col.name === 'actions'">
|
|
|
- <div class="action-column-entity-index">
|
|
|
- <q-btn size="md"
|
|
|
- color="primary"
|
|
|
- label="جزییات"
|
|
|
- :to="{name: 'UserPanel.Profile.Event.Project.Show', params: {event_id: $route.params.id, project_id: inputData.props.row.id}}"
|
|
|
- class="q-mr-md" />
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- <template v-else>
|
|
|
- {{ inputData.col.value }}
|
|
|
- </template>
|
|
|
- </template>
|
|
|
- </entity-index>
|
|
|
- <q-skeleton v-else
|
|
|
- type="rect"
|
|
|
- height="200px" />
|
|
|
- </q-tab-panel>
|
|
|
<q-tab-panel v-if="event.live_streaming_url"
|
|
|
name="live_streaming_url">
|
|
|
<q-btn class="full-width q-mb-lg"
|
|
|
@@ -148,7 +59,6 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { EntityIndex } from 'quasar-crud'
|
|
|
import { Event } from 'src/models/Event.js'
|
|
|
import Enums from 'src/assets/Enums/Enums.js'
|
|
|
import { Invoice } from 'src/models/Invoice.js'
|
|
|
@@ -156,7 +66,6 @@ import { mixinAuth } from 'src/mixin/Mixins.js'
|
|
|
import ShamsiDate from 'src/assets/ShamsiDate.js'
|
|
|
import { APIGateway } from 'src/api/APIGateway.js'
|
|
|
import { FormBuilderAssist } from 'quasar-form-builder'
|
|
|
-import EntityIndexGridItem from 'src/components/EntityIndexGridItem.vue'
|
|
|
import Breadcrumbs from 'src/components/Widgets/Breadcrumbs/Breadcrumbs.vue'
|
|
|
import { ProjectAttendanceSheets } from 'src/models/ProjectAttendanceSheets.js'
|
|
|
import { SessionAttendanceSheets } from 'src/models/SessionAttendanceSheets.js'
|
|
|
@@ -165,24 +74,17 @@ import ShowEventInfo from 'src/components/Widgets/Event/ShowEventInfo/ShowEventI
|
|
|
export default {
|
|
|
name: 'UserPanel.Profile.EventInfo',
|
|
|
components: {
|
|
|
- EntityIndex,
|
|
|
Breadcrumbs,
|
|
|
- ShowEventInfo,
|
|
|
- EntityIndexGridItem
|
|
|
+ ShowEventInfo
|
|
|
},
|
|
|
mixins: [mixinAuth],
|
|
|
data () {
|
|
|
const eventId = this.$route.params.id
|
|
|
- // const userId = this.$store.getters['Auth/user'].id
|
|
|
return {
|
|
|
mounted: false,
|
|
|
tab: 'eventInfo',
|
|
|
inputs: [],
|
|
|
- sessionsInputs: [
|
|
|
- { type: 'hidden', name: 'event', value: eventId }
|
|
|
- ],
|
|
|
api: APIGateway.event.get(eventId),
|
|
|
- sessionsApi: APIGateway.session.APIAdresses.attendanceSheets,
|
|
|
event: new Event(),
|
|
|
table: {
|
|
|
columns: [
|
|
|
@@ -230,146 +132,12 @@ export default {
|
|
|
}
|
|
|
]
|
|
|
},
|
|
|
- sessionsTable: {
|
|
|
- columns: [
|
|
|
- {
|
|
|
- name: 'number',
|
|
|
- required: true,
|
|
|
- label: 'شماره',
|
|
|
- align: 'left',
|
|
|
- field: () => ''
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'id',
|
|
|
- required: true,
|
|
|
- label: 'شناسه',
|
|
|
- align: 'left',
|
|
|
- field: row => row.id
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'title',
|
|
|
- required: true,
|
|
|
- label: 'عنوان',
|
|
|
- align: 'left',
|
|
|
- field: row => row.title
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'title',
|
|
|
- required: true,
|
|
|
- label: 'زمان شروع',
|
|
|
- align: 'left',
|
|
|
- field: row => row.beginning_time ? ShamsiDate.getDateTime(row.beginning_time) : '-'
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'title',
|
|
|
- required: true,
|
|
|
- label: 'زمان پایان',
|
|
|
- align: 'left',
|
|
|
- field: row => row.ending_time ? ShamsiDate.getDateTime(row.ending_time) : '-'
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'assignment_status',
|
|
|
- required: true,
|
|
|
- label: 'وضعیت تکلیف',
|
|
|
- align: 'left',
|
|
|
- field: row => (new SessionAttendanceSheets(this.getCurrentUserAttendanceSheet(row))).assignment_status_info.label
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'attendance_status',
|
|
|
- required: true,
|
|
|
- label: 'وضعیت حضور و غیاب',
|
|
|
- align: 'left',
|
|
|
- field: row => (new SessionAttendanceSheets(this.getCurrentUserAttendanceSheet(row))).attendance_status_info.label
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'action',
|
|
|
- required: true,
|
|
|
- label: 'جزییات',
|
|
|
- align: 'left',
|
|
|
- field: ''
|
|
|
- }
|
|
|
- ]
|
|
|
- },
|
|
|
- sessionsTableKeys: {
|
|
|
- data: 'results',
|
|
|
- total: 'count',
|
|
|
- currentPage: 'current',
|
|
|
- perPage: 'per_page',
|
|
|
- pageKey: 'page'
|
|
|
- },
|
|
|
tableKeys: {
|
|
|
data: 'results',
|
|
|
total: 'count',
|
|
|
currentPage: 'current',
|
|
|
perPage: 'per_page',
|
|
|
pageKey: 'page'
|
|
|
- },
|
|
|
-
|
|
|
- projectListInputs: [
|
|
|
- { type: 'hidden', name: 'event', value: eventId }
|
|
|
- // { type: 'hidden', name: 'owner', value: userId }
|
|
|
- ],
|
|
|
- // projectListApi: APIGateway.projectAttendanceSheets.APIAdresses.base,
|
|
|
- projectListApi: APIGateway.project.APIAdresses.attendanceSheetsList,
|
|
|
- projectListTable: {
|
|
|
- columns: [
|
|
|
- {
|
|
|
- name: 'number',
|
|
|
- required: true,
|
|
|
- label: 'شماره',
|
|
|
- align: 'left',
|
|
|
- field: () => ''
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'id',
|
|
|
- required: true,
|
|
|
- label: 'شناسه',
|
|
|
- align: 'left',
|
|
|
- field: row => row.id
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'title',
|
|
|
- required: true,
|
|
|
- label: 'عنوان پروژه',
|
|
|
- align: 'left',
|
|
|
- field: row => row.title
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'creation_time',
|
|
|
- required: true,
|
|
|
- label: 'زمان شروع',
|
|
|
- align: 'left',
|
|
|
- field: row => row?.beginning_doing_period ? ShamsiDate.getDateTime(row.beginning_doing_period) : '-'
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'creation_time',
|
|
|
- required: true,
|
|
|
- label: 'زمان پایان',
|
|
|
- align: 'left',
|
|
|
- field: row => row?.ending_doing_period ? ShamsiDate.getDateTime(row.ending_doing_period) : '-'
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'status',
|
|
|
- required: true,
|
|
|
- label: 'وضعیت',
|
|
|
- align: 'left',
|
|
|
- field: row => (new ProjectAttendanceSheets(this.getProjectAttendanceSheets(row))).answer_status_info.label
|
|
|
- },
|
|
|
- {
|
|
|
- name: 'actions',
|
|
|
- required: true,
|
|
|
- label: 'عملیات',
|
|
|
- align: 'left',
|
|
|
- field: ''
|
|
|
- }
|
|
|
- ]
|
|
|
- },
|
|
|
- projectListTableKeys: {
|
|
|
- data: 'results',
|
|
|
- total: 'count',
|
|
|
- currentPage: 'current',
|
|
|
- perPage: 'per_page',
|
|
|
- pageKey: 'page'
|
|
|
}
|
|
|
}
|
|
|
},
|