Procházet zdrojové kódy

ارسال نحوه مرتب سازی احادیث

HgH před 2 roky
rodič
revize
098309282e

+ 2 - 1
src/api/models/Hadith.js

@@ -30,7 +30,8 @@ export default class HadithAPI extends APIRepository {
       data: this.getNormalizedSendData({
       data: this.getNormalizedSendData({
         status: null, // String
         status: null, // String
         per_page: 10, // Number
         per_page: 10, // Number
-        page: 1 // Number
+        page: 1, // Number
+        ordering: '-publish_date'
       }, data),
       }, data),
       resolveCallback: (response) => {
       resolveCallback: (response) => {
         const paginate = response.data
         const paginate = response.data

+ 10 - 0
src/components/Widgets/Hadithe/AdminHadithList/AdminHadithList.vue

@@ -46,6 +46,7 @@ import Assist from 'src/assets/js/Assist.js'
 import { mixinWidget } from 'src/mixin/Mixins.js'
 import { mixinWidget } from 'src/mixin/Mixins.js'
 import { APIGateway } from 'src/api/APIGateway.js'
 import { APIGateway } from 'src/api/APIGateway.js'
 import BtnControl from 'src/components/Control/btn.vue'
 import BtnControl from 'src/components/Control/btn.vue'
+import { FormBuilderAssist } from 'quasar-form-builder'
 
 
 const BtnControlComp = shallowRef(BtnControl)
 const BtnControlComp = shallowRef(BtnControl)
 
 
@@ -65,6 +66,7 @@ export default {
       },
       },
       inputs: [
       inputs: [
         { type: 'select', name: 'status', label: 'فیلتر', placeholder: ' ', options: [{ label: 'احادیث پیش رو', value: 'ONGOING' }, { label: 'آرشیو احادیث', value: 'PASSED' }], col: 'col-md-3 col-12' },
         { type: 'select', name: 'status', label: 'فیلتر', placeholder: ' ', options: [{ label: 'احادیث پیش رو', value: 'ONGOING' }, { label: 'آرشیو احادیث', value: 'PASSED' }], col: 'col-md-3 col-12' },
+        { type: 'hidden', name: 'ordering', value: null },
         { type: BtnControlComp, name: 'btn', responseKey: 'btn', label: 'جستجو', placeholder: ' ', atClick: this.search, col: 'col-md-3 col-12' }
         { type: BtnControlComp, name: 'btn', responseKey: 'btn', label: 'جستجو', placeholder: ' ', atClick: this.search, col: 'col-md-3 col-12' }
       ],
       ],
       table: {
       table: {
@@ -129,6 +131,14 @@ export default {
   },
   },
   methods: {
   methods: {
     search () {
     search () {
+      const status = FormBuilderAssist.getInputsByName(this.inputs, 'status')?.value
+      if (status) {
+        const prefix = status === 'ONGOING' ? '' : '-'
+        FormBuilderAssist.setAttributeByName(this.inputs, 'ordering', 'value', prefix + 'publish_date')
+      } else {
+        FormBuilderAssist.setAttributeByName(this.inputs, 'ordering', 'value', null)
+      }
+
       this.$refs.entityIndex.search()
       this.$refs.entityIndex.search()
     }
     }
   }
   }

+ 1 - 2
src/components/Widgets/Hadithe/TodayHadith/TodayHadith.vue

@@ -60,8 +60,7 @@ export default {
       this.hadithes.loading = true
       this.hadithes.loading = true
       // return APIGateway.event.index()
       // return APIGateway.event.index()
       return APIGateway.hadith.index({
       return APIGateway.hadith.index({
-        status: 'TODAY',
-        per_page: 9999
+        status: 'TODAY'
       })
       })
     }
     }
   }
   }