Browse Source

修改课程排序、视频播放释放

master
suliang 1 year ago
parent
commit
60da80bfbb

+ 12
- 20
app/src/main/java/com/xkl/cdl/data/bean/course/CoursePack.kt View File

package com.xkl.cdl.data.bean.course package com.xkl.cdl.data.bean.course


import android.os.Parcel
import android.os.Parcelable
import androidx.databinding.BaseObservable import androidx.databinding.BaseObservable
import androidx.databinding.Bindable import androidx.databinding.Bindable
import com.xkl.cdl.BR import com.xkl.cdl.BR
var downLoadZipUrl : String = "" //压缩包下载地址 var downLoadZipUrl : String = "" //压缩包下载地址
var isDown = false //是否下载 var isDown = false //是否下载
//阶段id
var stageId = 0
//年级id
var gradeId = 0
//在CourseManger中的subjectWithCoursePackMap对应subject下的list中所在的位置 //在CourseManger中的subjectWithCoursePackMap对应subject下的list中所在的位置
field = value field = value
notifyPropertyChanged(BR.reviewNumber) notifyPropertyChanged(BR.reviewNumber)
} }
override fun equals(other : Any?) : Boolean {
if (this === other) return true
if (javaClass != other?.javaClass) return false
other as CoursePack
if (coursePackId != other.coursePackId) return false
if (coursePackName != other.coursePackName) return false
if (cover != other.cover) return false
if (summary != other.summary) return false
if (subjectId != other.subjectId) return false
if (coursePackType != other.coursePackType) return false
if (inCoursePackPosition != other.inCoursePackPosition) return false
if (childrenCourses != other.childrenCourses) return false
if (learnProgress != other.learnProgress) return false
return true
}
override fun hashCode() : Int { override fun hashCode() : Int {
var result = coursePackId.hashCode() var result = coursePackId.hashCode()
result = 31 * result + coursePackName.hashCode() result = 31 * result + coursePackName.hashCode()
result = 31 * result + cover.hashCode()
result = 31 * result + summary.hashCode() result = 31 * result + summary.hashCode()
result = 31 * result + subjectId result = 31 * result + subjectId
result = 31 * result + coursePackType result = 31 * result + coursePackType
result = 31 * result + cover.hashCode()
result = 31 * result + downLoadZipUrl.hashCode()
result = 31 * result + isDown.hashCode()
result = 31 * result + stageId
result = 31 * result + gradeId
result = 31 * result + inCoursePackPosition result = 31 * result + inCoursePackPosition
result = 31 * result + childrenCourses.hashCode() result = 31 * result + childrenCourses.hashCode()
result = 31 * result + learnProgress.hashCode()
return result return result
} }
} }

+ 3
- 0
app/src/main/java/com/xkl/cdl/module/learn/LearnCVideoActivity.kt View File

} }
override fun onDestroy() { override fun onDestroy() {
mPlayer?.setCompletionListener(null)
mPlayer?.setOnStopListener(null)
mPlayer?.setPlayingListener(null)
mPlayer?.release() mPlayer?.release()
super.onDestroy() super.onDestroy()
} }

+ 23
- 3
app/src/main/java/com/xkl/cdl/module/splash/SplashViewModel.kt View File

package com.xkl.cdl.module.splash package com.xkl.cdl.module.splash


import android.os.Handler
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import com.suliang.common.base.viewmodel.BaseViewModel import com.suliang.common.base.viewmodel.BaseViewModel
import com.suliang.common.util.LogUtil import com.suliang.common.util.LogUtil
import okhttp3.Request import okhttp3.Request
import okhttp3.RequestBody.Companion.toRequestBody import okhttp3.RequestBody.Companion.toRequestBody
import okhttp3.Response import okhttp3.Response
import org.json.JSONException
import org.json.JSONObject import org.json.JSONObject
import java.io.* import java.io.*
import java.util.zip.ZipEntry import java.util.zip.ZipEntry
}) })
} }
@Throws(JSONException::class)
private fun decodeBinderCourseJson(json : String) : MutableList<CoursePack>? { private fun decodeBinderCourseJson(json : String) : MutableList<CoursePack>? {
if (json.isEmpty()) return null if (json.isEmpty()) return null
val result = mutableListOf<CoursePack>() val result = mutableListOf<CoursePack>()
//定义课程包 //定义课程包
val coursePack = CoursePack(coursePackId, coursePackName, summary, subject_id, coursePackType) val coursePack = CoursePack(coursePackId, coursePackName, summary, subject_id, coursePackType)
coursePack.gradeId = cp.getInt("grade_id")
coursePack.stageId = cp.getInt("stage_id")
//定义课程列表集合 //定义课程列表集合
val courseList = mutableListOf<Course>() val courseList = mutableListOf<Course>()
val courseMap = mutableMapOf<Int, Course>() // key : typeId value : Course val courseMap = mutableMapOf<Int, Course>() // key : typeId value : Course
coursePack.childrenCourses = courseList coursePack.childrenCourses = courseList
result.add(coursePack) result.add(coursePack)
} }
//排序
result.sortWith { o1, o2 ->
var compareResult = o2.stageId.compareTo(o1.stageId)
if (compareResult == 0) {
compareResult = o2.gradeId.compareTo(o1.gradeId)
}
compareResult
}
return result return result
} }
} }
} }
} }
//课程排序
// englishCoursePack.sortBy {
// it.
// }
//
CourseManager.subjectWithCoursePackMap[AppConstants.SUBJECT_ENGLISH] = englishCoursePack.toList() CourseManager.subjectWithCoursePackMap[AppConstants.SUBJECT_ENGLISH] = englishCoursePack.toList()
CourseManager.subjectWithCoursePackMap[AppConstants.SUBJECT_CHINESE] = chineseCoursePack.toList() CourseManager.subjectWithCoursePackMap[AppConstants.SUBJECT_CHINESE] = chineseCoursePack.toList()
mergeCoursePackResult.postValue(true) mergeCoursePackResult.postValue(true)
it.flush() it.flush()
} }
} }
zipInputStream?.close()
outPut.forEach { outPut.forEach {
it.flush()
it.close() it.close()
} }
zipInputStream?.close()
} }
} }
} }

Loading…
Cancel
Save