package com.dao.dashboard; import com.model.bo.DashOrder; import com.model.po.Dashboards; import com.model.pojo.TestPage; import org.apache.ibatis.annotations.*; import org.springframework.stereotype.Repository; import java.util.List; @Mapper @Repository public interface DashboardsMapper { /* 插入 */ @Insert("insert into " + "bi_dashboards(id, bd_name,bd_note,CONFIGURATION,create_by,create_date, BD_THUMBNAIL,relation_columns, create_id)" + "values(#{id}, #{bdName},#{bdNote},#{bdConfiguration},#{createBy}," + "to_date(to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),'YYYY-MM-DD hh24:mi:ss'), #{thumbnail},#{relationColumns}, #{createId})") @SelectKey(before=true,keyProperty="id",resultType=Integer.class,statement="SELECT bi_dashboards_squence.nextval from dual",keyColumn = "id") void setDashboards(Dashboards dashboards); /* 更新 */ @Update("") void updateDashboards(Dashboards dashboards); /* 删除看板 */ @Delete("") void delDashboards(List idList); /* 查询看板列表 */ @Select("select id, bd_note as bdNote, bd_name as bdName, CONFIGURATION as bdConfiguration, CREATE_BY as createBy, create_id as createId, CREATE_DATE as createDate, BD_THUMBNAIL as thumbnail " + "from BI_DASHBOARDS where id in " + " (select bo_da_id from bi_DASHBOARDS_object " + "where (bo_type = '0' and bo_ob_id in (select br_user_group from bi_user_rel_groups where br_user_id= #{userId})) " + " or (BO_TYPE='1' and bo_ob_id = #{userId} )) or create_id = #{userId}") List getListDashboards(@Param("userId") int userId, TestPage testPage); /* 查询看板 */ @Select("select id, bd_note as bdNote, bd_name as bdName, CONFIGURATION as bdConfiguration, CREATE_BY as createBy, create_id as createId, CREATE_DATE as createDate, BD_THUMBNAIL as thumbnail, relation_columns as relationColumns" + " from BI_DASHBOARDS where (id in " + " (select bo_da_id from bi_DASHBOARDS_object " + " where (bo_type = '0' and bo_ob_id in (select br_user_group from bi_user_rel_groups where br_user_id= #{userId}))" + " or (BO_TYPE='1' and bo_ob_id = #{userId} )) or create_id = #{userId}) and id = #{id}") Dashboards getDashboards(@Param("userId") int userId, @Param("id") int id); /* 看板移交 */ @Update("update BI_DASHBOARDS set create_by = #{createBy}, create_id = #{createId} where id = #{id}") void changeDashOrder(@Param("createBy") String createBy, @Param("createId") int createId, @Param("id") int id); /* 查看看板分发对象类型 */ @Select("select bo_type from bi_dashboards_object where bo_da_id = #{id}") List getType(int id); /* 查看看板分发用户 */ @Select("select bo_ob_id as id, BG_NAME as name from BI_USER_GROUPS left join BI_DASHBOARDS_OBJECT on bo_ob_id = bg_id where bo_type = '0' and bo_da_id = #{id}") List getOrderGroupName(int id); /* 查看看板分发用户 */ @Select("select bo_ob_id as id, BU_NAME as name from bi_users left join BI_DASHBOARDS_OBJECT on bo_ob_id = bu_id where bo_type = '1' and bo_da_id = #{id}") List getOrderName(int id); /* 添加看板对象 */ @Insert("insert into bi_dashboards_object(bo_id, bo_da_id, bo_type, bo_ob_id) values" + "(#{id}, #{daId}, #{objectType}, #{obId})") @SelectKey(before=true,keyProperty="id",resultType=int.class,statement="SELECT bi_dashboards_object_squence.nextval from dual",keyColumn = "bo_id") void addObject(@Param("daId") int daId, @Param("objectType") String objectType, @Param("obId") int obId); /* 删除对象 */ @Delete("delete from bi_dashboards_object where bo_da_id = #{daId}") void delObject(int daId); /* 获取看板拥有人ID */ @Select("select create_id from bi_dashboards where id = #{id}") int getCreateIdById(int id); }