123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- //
- // DB_Que_Helper.h
- // Miaxis
- //
- // Created by tong.jun on 14-7-14.
- // Copyright (c) 2014年 tongjun. All rights reserved.
- //
- #import <Foundation/Foundation.h>
- //#import "FMDatabase.h"
- //#import "Progress.h"
- #import "TrainRecord.h"
- #import "Grade.h"
- #define dataBaseName2 @"miaxis.db"
- #define dataBasePath2 [[(NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES)) firstObject]stringByAppendingPathComponent:dataBaseName2]
- @interface DB_Que_Helper : NSObject
- /**
- * @brief 数据库对象单例方法
- *
- * @return 返回FMDateBase数据库操作对象
- */
- + (FMDatabase *)createDataBase;
- /**
- * @brief 关闭数据库
- */
- + (void)closeDataBase;
- //将数据库拷贝到手机
- + (void)copyFileDatabase;
- /**插入数据 考试记录
- */
- +(void)insertGrade:(Grade*)gra;
- +(NSInteger)countForQuery:(NSString *)where;
- +(NSArray *)queryAllGrades;
- /**查询所有地区
- */
- +(NSArray*)queryArea;
- /**查询标识
- */
- +(NSArray *)queryMark:(NSString *)where;
- /**查询标识详情
- */
- +(NSArray *)queryDetailMark:(NSString *)where;
- //得到考题
- +(NSArray *)queryAllQuestion;
- //根据要求得到考题
- +(NSArray *)queryQuestion:(NSString *)where; //这个方法 章节和强化练习继续用
- //获取考题 仿真模拟
- +(NSArray *)queryExamQuestion;
- //根据要求获取章节列表以及章节序号和科目
- +(NSArray *)queryList:(NSString *)where;
- /**删除数据库。
- */
- +(void)removeDB;
- /**更改数据库数据 找到好用的
- */
- +(BOOL)updateDB:(NSString *)sql;
- //查询表字段、、、、
- //+(NSString *)queryColumnNameWithTable:(NSString *)tableName;
- //同步失败做的操作
- +(void)getFaultIfNotNet;
- //收藏、排除、错题 更好的同步方法 如果可以 废弃下边的方法
- +(BOOL)setStateWithArray:(NSArray *)questions;
- //收藏、排除、错题
- +(BOOL)setState:(NSString*)state withId:(NSInteger)qid withType:(NSString *)type;
- //+(void)addToDoneQue:(NSInteger)ID; //已做题 用下边方法替代 还要写个方法 将之前表中的已做题导入进来
- //添加待加强题目
- //+(BOOL)addToStrengthenQue:(NSInteger)ID; //弃用
- //移除待加强题目
- //+(BOOL)removeToStrengthenQue:(NSInteger)ID; //弃用
- //清空错题、收藏、排错
- +(void)clearFavInfo; //可以弃用
- //关于 错题 收藏 排错(单条写入、删除、查询) 已做题(只写入 不移除) 所有的方法全写在这里边 sql也全在这里边写
- /*表的结构
- 一种方式:题号(text) 类型(text 1、错题 2、收藏 3、排错 4、已做未做 不相互影响) 上传(text) 优:可直接做删除操作 缺:条件关联查麻烦
- 另一种:题号(text) 是否错 是否藏 是否排 是否做
- 这里采用第一种
- */
- //设置错题等或删除 两个参数:markType为区分类型 state表示删除还是添加 1添加 0删除
- +(BOOL)setMarkQuestionWithQuestion:(NSInteger)qId Type:(NSString *)markType State:(NSInteger)state;
- //查询单条记录是否存在
- +(BOOL)queryIsHaveWithQuestion:(NSInteger)qId Type:(NSString *)markType;
- //获取1、错题 2、收藏 3、排除 4、已做未做 5、除去排除的题 已知参数(科目、身份证、车型) 待传参数type
- +(NSArray *)queryMarkQuestionWithType:(NSString *)markType; //联查
- //获取错题等_id isUpdata 0为只要没上传的(用于错题上传) 1全部 不管有没有上传(主要用于练习统计 以及首页错题数目查询) markType 1、错题 2、收藏 3、排除 4、已做未做
- +(NSArray *)queryMarkQuestionWithUpData:(NSInteger)isUpdata MarkType:(NSString *)markType Subject:(NSString *)sub;
- //查询错题 已做题 数量
- +(NSInteger)queryMarkQuestionWithMarkType:(NSString *)markType;
- //更改上传状态
- +(BOOL)setIsUpdateWithType:(NSString *)markType;//1、错题 2、收藏 3、排错 0为全部
- +(BOOL)setIsUpdateWithArray:(NSArray<NSString *> *)array;//数组中放的是上传页面的按钮tag
- //同步错题、收藏、排错
- +(BOOL)setMarkQuestionWithArray:(NSArray *)questions;
- //移除所有题目然后来接受同步的数据
- +(BOOL)deleteAllMarkQuestion;
- //将库里原有的已做题导入新的库中
- +(void)moveIsDoneToMarkQuestion;
- + (void)updateQuestionWithId:(NSString *)idStr;
- #pragma mark - 2021年2月18新增功能大车考试
- //得到考题
- + (NSArray *)queryGZPZ_EXAM_CYRYExamQuestion;
- + (NSArray *)queryGZPZ_EXAM_CYRYAllQuestion;
- + (NSArray *)queryGZPZ_EXAM_CYRYList:(NSString *)where;
- + (NSArray *)queryGZPZ_EXAM_CYRYQuestion:(NSString *)where;
- + (NSArray *)queryGZPZ_EXAM_CYRYMarkQuestionWithType:(NSString *)markType;
- + (BOOL)setGZPZ_EXAM_CYRYMarkQuestionWithQuestion:(NSInteger)qId Type:(NSString *)markType State:(NSInteger)state;
- + (BOOL)queryGZPZ_EXAM_CYRYIsHaveWithQuestion:(NSInteger)qId Type:(NSString *)markType;
- + (NSArray *)queryGZPZ_EXAM_CYRYMarkQuestionWithUpData:(NSInteger)isUpdata MarkType:(NSString *)markType Subject:(NSString *)sub;
- + (NSInteger)queryGZPZ_EXAM_CYRYMarkQuestionWithMarkType:(NSString *)markType;
- + (BOOL)setGZPZ_EXAM_CYRYIsUpdateWithType:(NSString *)markType;
- + (BOOL)setGZPZ_EXAM_CYRYIsUpdateWithArray:(NSArray<NSString *> *)array;
- + (BOOL)setGZPZ_EXAM_CYRYMarkQuestionWithArray:(NSArray *)questions;
- + (BOOL)deleteGZPZ_EXAM_CYRYAllMarkQuestion;
- @end
|