package safeluck.drive.evaluation.DB.failitems; import androidx.lifecycle.LiveData; import androidx.room.Dao; import androidx.room.Delete; import androidx.room.Insert; import androidx.room.OnConflictStrategy; import androidx.room.Query; import java.util.List; /** * MyApplication2 * Created by lzw on 2019/11/26. 18:08:08 * 邮箱:632393724@qq.com * All Rights Saved! Chongqing AnYun Tech co. LTD */ @Dao public interface FailProjDao { @Insert(onConflict = OnConflictStrategy.REPLACE) void insert(FailedProj proj); /** * 查询 科目二 I类考场的失败项目 (多表查询) * 如果要添加 科目二II III类考场失败项目,需要建立相应的评判标准表数据表 * @return */ @Query("SELECT emp_id,stu_id, utc ,sn ,deducting_reason,score_deducting,item_content from criteria_one INNER JOIN fail_projects ON criteria_one.item_id= fail_projects.emp_id where fail_projects.stu_id=:stu_id and fail_projects.subject=1") LiveData> getFailedProjectsForI(long stu_id); /** * 查询 科目二 II类考场的失败项目 (多表查询) * 如果要添加 科目二II III类考场失败项目,需要建立相应的评判标准表数据表 * @return */ @Query("SELECT emp_id,stu_id,utc,sn,deducting_reason,score_deducting,item_content from criteria_two INNER JOIN fail_projects ON criteria_two.item_id= fail_projects.emp_id where fail_projects.stu_id=:stu_id and fail_projects.subject=2") LiveData> getFailedProjectsForII(long stu_id); /** * 查询 科目三 路考考场的失败项目 (多表查询) * 如果要添加 科目二II III类考场失败项目,需要建立相应的评判标准表数据表 * @return */ @Query("SELECT emp_id,stu_id,utc,sn,deducting_reason,score_deducting,item_content from criteria_three INNER JOIN fail_projects ON criteria_three.item_id= fail_projects.emp_id where fail_projects.stu_id=:stu_id and fail_projects.subject=3") LiveData> getFailedProjectsForIII(long stu_id); /** * 获取失败项目条数 * @param subject_id * @return */ @Query("SELECT COUNT(*) from fail_projects where subject=:subject_id") LiveData getSubject(int subject_id); @Query("delete from fail_projects") void deleteAll(); /** * 查询 科目二 I类考场的所有失败项目 (多表查询) * @return */ @Query("SELECT emp_id,stu_id, utc ,sn ,deducting_reason,score_deducting,item_content from criteria_one INNER JOIN fail_projects ON criteria_one.item_id= fail_projects.emp_id where fail_projects.stu_id=:stu_id and fail_projects.subject=1") List getAllFailProjI(long stu_id); }