Search in sources :

Example 1 with Word

use of pri.weiqiang.liyujapanese.mvp.bean.dic.Word in project MyJapanese by 54wall.

the class DBManager method getFav.

public synchronized List<Word> getFav(String lessonId) {
    Log.e(TAG, "getAllFav!!!!");
    // 收藏这个表,因为经常更新,所以即使mFavList不为null也不能直接使用
    if (isTableExist(DatabaseHelper.DB_TABLE_FAV)) {
        SQLiteDatabase db = DatabaseHelper.getInstance(BaseApplication.getInstance()).getReadableDatabase();
        // Cursor cursor = db.rawQuery("select * from " + DatabaseHelper.DB_TABLE_FAV, null);
        Cursor cursor = db.query(DatabaseHelper.DB_TABLE_FAV, null, null, null, null, null, null);
        mFavList = new ArrayList<>();
        Word item;
        while (cursor.moveToNext()) {
            String lesson_id = cursor.getString(cursor.getColumnIndex("lesson_id"));
            if (lesson_id.equals(lessonId)) {
                int id = cursor.getInt(cursor.getColumnIndex("_id"));
                String book_id = cursor.getString(cursor.getColumnIndex("book_id"));
                String word = cursor.getString(cursor.getColumnIndex("word"));
                String phonetic = cursor.getString(cursor.getColumnIndex("phonetic"));
                String translation = cursor.getString(cursor.getColumnIndex("translation"));
                int fav = cursor.getInt(cursor.getColumnIndex("fav"));
                int cache = cursor.getInt(cursor.getColumnIndex("cache"));
                item = new Word(id, book_id, lesson_id, word, phonetic, translation, fav, cache);
                Log.e(TAG, "getAllFav word:" + item.toString());
                mFavList.add(item);
            }
        }
        cursor.close();
        db.close();
    }
    return mFavList;
}
Also used : Word(pri.weiqiang.liyujapanese.mvp.bean.dic.Word) SQLiteDatabase(android.database.sqlite.SQLiteDatabase) Cursor(android.database.Cursor)

Example 2 with Word

use of pri.weiqiang.liyujapanese.mvp.bean.dic.Word in project MyJapanese by 54wall.

the class DBManager method getAllFav.

public synchronized List<Word> getAllFav() {
    Log.e(TAG, "getAllFav!!!!");
    // 收藏这个表,因为经常更新,所以即使mFavList不为null也不能直接使用
    if (isTableExist(DatabaseHelper.DB_TABLE_FAV)) {
        SQLiteDatabase db = DatabaseHelper.getInstance(BaseApplication.getInstance()).getReadableDatabase();
        // Cursor cursor = db.rawQuery("select * from " + DatabaseHelper.DB_TABLE_FAV, null);
        Cursor cursor = db.query(DatabaseHelper.DB_TABLE_FAV, null, null, null, null, null, null);
        mFavList = new ArrayList<>();
        Word item;
        while (cursor.moveToNext()) {
            int id = cursor.getInt(cursor.getColumnIndex("_id"));
            String book_id = cursor.getString(cursor.getColumnIndex("book_id"));
            String lesson_id = cursor.getString(cursor.getColumnIndex("lesson_id"));
            String word = cursor.getString(cursor.getColumnIndex("word"));
            String phonetic = cursor.getString(cursor.getColumnIndex("phonetic"));
            String translation = cursor.getString(cursor.getColumnIndex("translation"));
            int fav = cursor.getInt(cursor.getColumnIndex("fav"));
            int cache = cursor.getInt(cursor.getColumnIndex("cache"));
            item = new Word(id, book_id, lesson_id, word, phonetic, translation, fav, cache);
            Log.e(TAG, "getAllFav word:" + item.toString());
            mFavList.add(item);
        }
        cursor.close();
        db.close();
    }
    return mFavList;
}
Also used : Word(pri.weiqiang.liyujapanese.mvp.bean.dic.Word) SQLiteDatabase(android.database.sqlite.SQLiteDatabase) Cursor(android.database.Cursor)

Example 3 with Word

use of pri.weiqiang.liyujapanese.mvp.bean.dic.Word in project MyJapanese by 54wall.

the class WordsFragmentModelImpl method getData.

@Override
public void getData(Consumer<List<Word>> consumer, final String lesson) {
    Disposable disposable = Observable.create(new ObservableOnSubscribe<List<Word>>() {

        @Override
        public void subscribe(ObservableEmitter<List<Word>> emitter) throws Exception {
            List<Word> list = DBManager.getInstance().queryWord(lesson);
            if (list == null) {
                emitter.onError(new Exception());
            } else {
                emitter.onNext(list);
            }
            emitter.onComplete();
        }
    }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(consumer);
    mCompositeDisposable.add(disposable);
}
Also used : Disposable(io.reactivex.disposables.Disposable) Word(pri.weiqiang.liyujapanese.mvp.bean.dic.Word) ObservableOnSubscribe(io.reactivex.ObservableOnSubscribe) ObservableEmitter(io.reactivex.ObservableEmitter)

Example 4 with Word

use of pri.weiqiang.liyujapanese.mvp.bean.dic.Word in project LiYuJapanese by 54wall.

the class FavWordsFragmentModelImpl method getData.

@Override
public void getData(Consumer<List<Word>> consumer, Consumer<Throwable> throwable, final String lessonId) {
    Disposable disposable = Observable.create(new ObservableOnSubscribe<List<Word>>() {

        @Override
        public void subscribe(ObservableEmitter<List<Word>> emitter) throws Exception {
            List<Word> list;
            list = DBManager.getInstance().getFav(lessonId);
            if (list == null) {
                Log.e(TAG, "list == null");
            // emitter.onError(new Exception());//经常报这个错误io.reactivex.exceptions.OnErrorNotImplementedException
            } else {
                emitter.onNext(list);
            }
            emitter.onComplete();
        }
    }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(consumer, throwable);
    mCompositeDisposable.add(disposable);
}
Also used : Disposable(io.reactivex.disposables.Disposable) Word(pri.weiqiang.liyujapanese.mvp.bean.dic.Word) ObservableOnSubscribe(io.reactivex.ObservableOnSubscribe) ObservableEmitter(io.reactivex.ObservableEmitter)

Example 5 with Word

use of pri.weiqiang.liyujapanese.mvp.bean.dic.Word in project LiYuJapanese by 54wall.

the class WordsFragmentModelImpl method getData.

@Override
public void getData(Consumer<List<Word>> consumer, final String lesson) {
    Disposable disposable = Observable.create(new ObservableOnSubscribe<List<Word>>() {

        @Override
        public void subscribe(ObservableEmitter<List<Word>> emitter) throws Exception {
            List<Word> list = DBManager.getInstance().queryWord(lesson);
            if (list == null) {
                emitter.onError(new Exception());
            } else {
                emitter.onNext(list);
            }
            emitter.onComplete();
        }
    }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(consumer);
    mCompositeDisposable.add(disposable);
}
Also used : Disposable(io.reactivex.disposables.Disposable) Word(pri.weiqiang.liyujapanese.mvp.bean.dic.Word) ObservableOnSubscribe(io.reactivex.ObservableOnSubscribe) ObservableEmitter(io.reactivex.ObservableEmitter)

Aggregations

Word (pri.weiqiang.liyujapanese.mvp.bean.dic.Word)14 Cursor (android.database.Cursor)6 SQLiteDatabase (android.database.sqlite.SQLiteDatabase)6 ObservableEmitter (io.reactivex.ObservableEmitter)4 ObservableOnSubscribe (io.reactivex.ObservableOnSubscribe)4 Disposable (io.reactivex.disposables.Disposable)4 FavWordsRecyclerAdapter (pri.weiqiang.liyujapanese.ui.adapter.FavWordsRecyclerAdapter)2 WordsRecyclerAdapter (pri.weiqiang.liyujapanese.ui.adapter.WordsRecyclerAdapter)2