endian11
2021-01-18 9d2a1b1683bea08cf368f54b7220dc38ac3d22c2
app/src/main/java/safeluck/drive/evaluation/DB/WorkRoomDataBase.java
@@ -7,7 +7,6 @@
import androidx.room.Database;
import androidx.room.Room;
import androidx.room.RoomDatabase;
import androidx.room.migration.Migration;
import androidx.sqlite.db.SupportSQLiteDatabase;
import androidx.work.OneTimeWorkRequest;
import androidx.work.WorkContinuation;
@@ -17,20 +16,16 @@
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import okhttp3.Route;
import safeluck.drive.evaluation.DB.appstatusdb.AppStatus;
import safeluck.drive.evaluation.DB.appstatusdb.AppStatusDao;
import safeluck.drive.evaluation.DB.appstatusdb.AppStatusInitWork;
import safeluck.drive.evaluation.DB.criterias.Criteria;
import safeluck.drive.evaluation.DB.criterias.CriteriaDao;
import safeluck.drive.evaluation.DB.criterias.CriteriaForI;
import safeluck.drive.evaluation.DB.criterias.CriteriaForII;
import safeluck.drive.evaluation.DB.criterias.CriteriaForIII;
import safeluck.drive.evaluation.DB.criterias.CriteriaForIIIWorker;
import safeluck.drive.evaluation.DB.criterias.CriteriaForIIWorker;
import safeluck.drive.evaluation.DB.criterias.CriteriaForIWorker;
import safeluck.drive.evaluation.DB.criterias.CriteriaIDao;
import safeluck.drive.evaluation.DB.criterias.CriteriaIIDao;
import safeluck.drive.evaluation.DB.criterias.CriteriaIIIDao;
import safeluck.drive.evaluation.DB.criterias.CriteriaInitWorker;
import safeluck.drive.evaluation.DB.exam_status.ExamStatus;
@@ -43,6 +38,15 @@
import safeluck.drive.evaluation.DB.failitems.LuKaoFailedProj;
import safeluck.drive.evaluation.DB.gps.GPSInfo;
import safeluck.drive.evaluation.DB.gps.GpsInfoDao;
import safeluck.drive.evaluation.DB.lightdb.LightAllAnswerDao;
import safeluck.drive.evaluation.DB.lightdb.LightAllAnswerInitWorker;
import safeluck.drive.evaluation.DB.lightdb.LightAllQuestInitWorker;
import safeluck.drive.evaluation.DB.lightdb.LightAllQuestionsDao;
import safeluck.drive.evaluation.DB.lightdb.LightAnswers;
import safeluck.drive.evaluation.DB.lightdb.LightQuestion;
import safeluck.drive.evaluation.DB.lightdb.LightUseInitWorker;
import safeluck.drive.evaluation.DB.lightdb.LightUseQuestions;
import safeluck.drive.evaluation.DB.lightdb.LightUseQuestionsDao;
import safeluck.drive.evaluation.DB.route.RouteBean;
import safeluck.drive.evaluation.DB.route.RouteBeanDao;
import safeluck.drive.evaluation.DB.route.RouteCross;
@@ -64,8 +68,8 @@
 * 邮箱:632393724@qq.com
 * All Rights Saved! Chongqing AnYun Tech co. LTD
 */
@Database(entities = {Student.class, CriteriaForI.class, FailedProj.class,LuKaoFailedProj.class, CriteriaForII.class, CriteriaForIII.class,RTKConfig.class, GPSInfo.class, AppStatus.class, ExamStatus.class, SingalConfig.class
        , Criteria.class,RouteBean.class, RouteCross.class, RouteTriggerLine.class},version = 1,exportSchema = false)
@Database(entities = {Student.class, CriteriaForI.class, FailedProj.class,LuKaoFailedProj.class, LightUseQuestions.class, CriteriaForIII.class,RTKConfig.class, GPSInfo.class, AppStatus.class, ExamStatus.class, SingalConfig.class
        , Criteria.class,RouteBean.class, RouteCross.class, RouteTriggerLine.class, LightAnswers.class, LightQuestion.class},version = 1,exportSchema = false)
public abstract class WorkRoomDataBase extends RoomDatabase {
    private static final String TAG = "WorkRoomDataBase";
    public abstract StudentDao getstudentDao();
@@ -77,8 +81,9 @@
    public abstract CriteriaIDao getCriteriaIDao();
    //考场评判表
    public abstract CriteriaDao getCriteriaDao();
    //科目二 II类考场评判表
    public abstract CriteriaIIDao getCriteriaIIDao();
    //考场评判表
    public abstract LightUseQuestionsDao getLightUseQuestionsDao();
    public abstract FailProjDao getFailProjDao();
    private static volatile WorkRoomDataBase workRoomDataBase;
@@ -109,7 +114,9 @@
                                    OneTimeWorkRequest oneTimeWorkRequest = OneTimeWorkRequest.from(SeedDatabaseWorker.class);
                                    OneTimeWorkRequest oneTimeWorkRequest1 = OneTimeWorkRequest.from(CriteriaForIWorker.class);
                                    OneTimeWorkRequest criteriaInitWorkRequest = OneTimeWorkRequest.from(CriteriaInitWorker.class);
//                                    OneTimeWorkRequest oneTimeWorkRequest3 = OneTimeWorkRequest.from(CriteriaForIIWorker.class);
                                    OneTimeWorkRequest oneTimeWorkRequest3 = OneTimeWorkRequest.from(LightUseInitWorker.class);
                                    OneTimeWorkRequest lightAllQuestInitWorker = OneTimeWorkRequest.from(LightAllQuestInitWorker.class);
                                    OneTimeWorkRequest lightAllAnswerInitWorker = OneTimeWorkRequest.from(LightAllAnswerInitWorker.class);
                                    OneTimeWorkRequest  mCriteriaForIIIWorker= OneTimeWorkRequest.from(CriteriaForIIIWorker.class);
                                    OneTimeWorkRequest oneTimeWorkRequest2 = OneTimeWorkRequest.from(FailedProjWorker.class);
                                    OneTimeWorkRequest RTKConfigWorkRequest = OneTimeWorkRequest.from(RTKConfigWork.class);
@@ -130,7 +137,7 @@
//单路径执行,可以实现更加复杂的多路径执行方式
                                    WorkContinuation chain1= WorkManager.getInstance(mContext).beginWith(Arrays.asList(oneTimeWorkRequest,oneTimeWorkRequest1,criteriaInitWorkRequest))
                                            .then(mCriteriaForIIIWorker);
                                            .then(mCriteriaForIIIWorker).then(oneTimeWorkRequest3).then(lightAllAnswerInitWorker).then(lightAllQuestInitWorker);
                                    WorkContinuation chain2 = WorkManager.getInstance(mContext).beginWith(Arrays.asList(RTKConfigWorkRequest,appStatusInitWork,signalConigInitWorker,routeInitWorker))
                                            .then(oneTimeWorkRequest2).then(examStatusInitWorker);
@@ -170,4 +177,8 @@
    public abstract CriteriaIIIDao getCriteriaIIIDao();
    public abstract LuKaoFailProjDao getLuKaoFailProjDao();
    public abstract LightAllAnswerDao getLightAllAnswersDao();
    public abstract LightAllQuestionsDao getLightAllQuestionsDao();
}