mybatis的dao的注解
import com.jianwu.domain.metting.model.CallPreMember;
import com.jianwu.domain.metting.model.CallPreMemberStatus;
import org.apache.ibatis.annotations.*; import java.util.List; public interface MeetingMemberDao {
/**
* 增加预订成员列表
* @param callPreMember
*/
@SelectKey(statement = "SELECT MEMBER_SEQ.NEXTVAL FROM DUAL",keyProperty = "memberId",before = true, resultType = Long.class)
@Insert("INSERT INTO TAB_CALL_MT_PRE_MEMBER (MEMBER_ID, PRE_ID, MEMBER_TYPE, MEMBER_PHONE,MEMBER_SEX,MEMBER_STATUS,MEMBER_INFO,RELATED_ID,EMPLOYEE_ID,EMPLOYEE_NO,ROOM_ID,IS_HOST,EMPLOYEE_NAME,MEMBER_CALL_STATUS,IS_CALL_AGAIN,MEETING_SERIAL)"+
" VALUES "+
" (#{memberId},#{preId}, #{memberType},#{memberPhone},#{memberSex}, #{memberStatus},#{memberInfo},#{relatedId},#{employeeId},#{employeeNo},#{roomId},#{isHost},#{employeeName},#{memberCallStatus},#{isCallAgain},#{meetingSerial})")
int insertMember(CallPreMember callPreMember); /**
* 删除成员
* @param preId 根据会议ID
* @param list 员工ID列表
* @return
*/
@Delete("<script>" +
"DELETE FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{preId} AND EMPLOYEE_ID IN "+
"<foreach collection='list' open='(' close=')' index='index' item='item' separator=','>" +
" #{item} "+
"</foreach>" +
"</script>")
int deleteMember(@Param("preId") Long preId, @Param("list") List<Long> list); /**
* 获取会议成员
* @param preId
* @return
*/
@Select("SELECT * FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{preId}")
List<CallPreMember> getPreMemberList(@Param("preId") Long preId); /**
* 获取会议成员
* @param preId
* @return
*/
@Select("SELECT * FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{preId} AND IS_CALL_AGAIN=1")
List<CallPreMember> getPreMemberListByAgain(@Param("preId") Long preId); /**
* 获取会议成员列表
* @param preId 会议ID
* @return
*/
@Select("SELECT * FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{preId} ORDER BY IS_HOST DESC")
List<CallPreMember> getMemberListFromData(@Param("preId") Long preId); @Select("SELECT count(*) FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{preId} ORDER BY IS_HOST DESC")
int getMemberListFromDataCount(@Param("preId") Long preId); /**
* 批量增加成员
* @param list
*/
@Insert("<script>" +
"INSERT INTO TAB_CALL_MT_PRE_MEMBER (MEMBER_ID, PRE_ID, MEMBER_TYPE, MEMBER_PHONE,MEMBER_SEX,MEMBER_STATUS,MEMBER_INFO,RELATED_ID,EMPLOYEE_ID,EMPLOYEE_NO,ROOM_ID,PHONE_STATUS)"+
" VALUES "+
"<foreach collection='list' index='index' item='item' separator='union'>" +
" (MEMBER_SEQ.NEXTVAL,#{item.preId}, #{item.memberType},#{item.memberPhone},#{item.memberSex}, #{item.memberStatus},#{item.memberInfo},#{item.relatedId},#{item.employeeId},#{item.employeeNo},#{item.roomId},#{item.phoneStatus})"+
"</foreach>" +
"</script>")
// @Options(useGeneratedKeys = false)
int insertMemberList(@Param("list") List<CallPreMember> list); /**
* 删除成员
* @param list
* @param preId
*/
@Delete("<script>" +
"DELETE FROM TAB_CALL_MT_PRE_MEMBER where PRE_ID=#{preId} and MEMBER_PHONE IN "+
"<foreach collection='list' open='(' close=')' index='index' item='item' separator=','>" +
" #{item} "+
"</foreach>" +
"</script>")
int delMemberList(@Param("list") List<String> list, @Param("preId") Long preId); /**
* 修改成员状态
* @param callMember
*/
@Update("UPDATE TAB_CALL_MT_PRE_MEMBER SET MEMBER_STATUS=#{memberStatus} WHERE PRE_ID=#{preId} and MEMBER_PHONE=#{memberPhone}")
@Options(useGeneratedKeys = false)
int updateMemberStatus(CallPreMember callMember); /**
* 批量修改成员状态
* @param memberStatus
* @param preId
* @param list
*/
@Update("<script>" +
"UPDATE TAB_CALL_MT_PRE_MEMBER SET MEMBER_STATUS=#{memberStatus} WHERE PRE_ID=#{preId} and MEMBER_PHONE IN "+
"<foreach collection='list' open='(' close=')' index='index' item='item' separator=','>" +
" #{item} "+
"</foreach>" +
"</script>")
@Options(useGeneratedKeys = false)
int updateMemberStatusbatch(@Param("memberStatus") Long memberStatus, @Param("preId") Long preId, @Param("list") List<String> list); @Update("UPDATE TAB_CALL_MT_PRE_MEMBER SET MEMBER_STATUS=#{memberStatus} WHERE PRE_ID=#{preId} AND IS_HOST=0")
@Options(useGeneratedKeys = false)
int updateMemberStatusInPreId(@Param("memberStatus") Long memberStatus, @Param("preId") Long preId); /**
* 搜索全部单听或者全部发言的成员信息
* @param preId
* @param memberStatus
* @return
*/
@Select("SELECT * FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{preId} and MEMBER_STATUS=#{memberStatus} AND IS_HOST=0")
List<CallPreMember> getMembersByPreIdAndStatus(@Param("preId") Long preId, @Param("memberStatus") Long memberStatus); /**
* 获取会议成员信息根据员工
* @param employeeId
* @return
*/
@Select("SELECT * FROM TAB_CALL_MT_PRE_MEMBER WHERE EMPLOYEE_ID=#{employeeId}")
List<CallPreMember> getPreMemberInfoByEmployee(@Param("employeeId") Long employeeId); @Select("<script>" +
"SELECT * FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{preId} AND MEMBER_PHONE IN "+
"<foreach collection='list' open='(' close=')' index='index' item='item' separator=','>" +
" #{item} "+
"</foreach>" +
"</script>")
List<CallPreMember> getPreMemberByPhoneAndPreId(@Param("preId") Long preId, @Param("list") List<String> list); List<CallPreMember> getPreMemberChase(@Param("isCallAgain") Long isCallAgain, @Param("preId") Long preId); /**
* 获取会议成员
* @param preId
* @return
*/
@Select("SELECT * FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{preId}")
List<CallPreMemberStatus> getPreMemberListStatus(@Param("preId") Long preId); @Update("UPDATE TAB_CALL_MT_PRE_MEMBER SET IS_CALL_AGAIN=#{isCallAgain} WHERE PRE_ID=#{preId} AND IS_HOST=0")
@Options(useGeneratedKeys = false)
int updateMemberAutoChase(@Param("isCallAgain") Long isCallAgain, @Param("preId") Long preId);
// /**
// *
// * @param preId
// * @param status
// * @return
// */
// @Update("UPDATE TAB_CALL_MT_PRE_MEMBER SET MEMBER_STATUS=#{status} WHERE PRE_ID=#{preId} AND IS_HOST=0")
// @Options(useGeneratedKeys = false)
// int updateAllMemberStatus(@Param("status")Long status,@Param("preId")Long preId); @Select("SELECT * FROM TAB_CALL_MT_PRE_MEMBER WHERE MEMBER_PHONE=#{phone} AND MEMBER_CALL_STATUS!=10")
@Options(useGeneratedKeys = false)
List<CallPreMember> getMemberMeetingIng(@Param("phone") String phone); @Update("UPDATE TAB_CALL_MT_PRE_MEMBER SET MEMBER_CALL_STATUS=0,MEMBER_STATUS=#{memberStatus},IS_CALL_AGAIN=#{isCallAgain} WHERE PRE_ID=#{preId} AND IS_HOST=0")
@Options(useGeneratedKeys = false)
int updateMemberInitStatus(@Param("memberStatus") Long memberStatus, @Param("isCallAgain") Long isCallAgain, @Param("preId") Long preId); @Select("SELECT count(*) FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{preId} AND MEMBER_CALL_STATUS IN (1,4,6,7,26,27)")
int getMemberOnlineCount(@Param("preId") Long preId); /**
* 获取未连接的成员
* @param isHost 是否是主持人1主持人 0成员
* @param preIds 电话会议id列表
* @return List<CallPreMember>
*/
List<CallPreMember> findUnCallByPreIds(@Param("isHost") Integer isHost, @Param("preIds") List<Long> preIds); /**
* 查询号码是否在会议中
* @return
*/
List<CallPreMember> isInConCall(@Param("phone") String phone); @Select("SELECT * FROM TAB_CALL_MT_PRE_MEMBER WHERE PRE_ID=#{meetingId} AND member_phone = #{phone}")
CallPreMember findByPhone(@Param("meetingId") Long meetingId, @Param("phone") String phone); /**
* 修改成员状态 成员状态0初始状态(未连接)1加入会议 2离开会议 5 正在呼叫中 10结束会议'
* @param meetingMember
*/
@Update("UPDATE TAB_CALL_MT_PRE_MEMBER SET member_call_status = #{memberCallStatus} " +
" WHERE PRE_ID=#{preId} and MEMBER_PHONE=#{memberPhone}")
@Options(useGeneratedKeys = false)
int updateMemberCallStatus(CallPreMember meetingMember); /**
* 批量修改成员状态
* @param preId
*/
@Update("UPDATE TAB_CALL_MT_PRE_MEMBER SET member_call_status = #{status} " +
" WHERE PRE_ID=#{preId} ")
@Options(useGeneratedKeys = false)
int updateMemberCallStatusAll(@Param("preId") Long preId, @Param("status") Long status); }
mybatis的dao的注解的更多相关文章
- mybatis源码学习--spring+mybatis注解方式为什么mybatis的dao接口不需要实现类
相信大家在刚开始学习mybatis注解方式,或者spring+mybatis注解方式的时候,一定会有一个疑问,为什么mybatis的dao接口只需要一个接口,不需要实现类,就可以正常使用,笔者最开始的 ...
- Mybatis Dao层注解及XML组合Dao的开发方式
mybatis可以用xml进行数据操作,也可以在dao层用注解的方式,也可以采取xml和dao层接口组合使用的方法.显然 ,后者更加简单. 实体类Student package com.zhao. ...
- Spring Boot入门(六):使用MyBatis访问MySql数据库(注解方式)
本系列博客记录自己学习Spring Boot的历程,如帮助到你,不胜荣幸,如有错误,欢迎指正! 本篇博客我们讲解下在Spring Boot中使用MyBatis访问MySql数据库的简单用法. 1.前期 ...
- Spring + Mybatis - 原始dao开发整合 与 Mapper代理整合
Spring + Mybatis - 原始dao开发整合 与 Mapper代理整合 标签: mybatisSpringbeanApplicationContextMapper 2015-12-31 1 ...
- MyBatis学习--mybatis开发dao的方法
简介 使用Mybatis开发Dao,通常有两个方法,即原始Dao开发方法和Mapper接口开发方法. 主要概念介绍: MyBatis中进行Dao开发时候有几个重要的类,它们是SqlSessionFac ...
- 四 mybatis开发dao的方法
mybatis开发dao的方法 1.1 SqlSession使用范围 1.1.1 SqlSessionFactoryBuilder //以流的方式读取总的配置文件 Reader rea ...
- MyBatis开发Dao
MyBatis开发Dao有两种方法: 1.原始Dao开发方法,就是程序需要编写Dao的接口和Dao的实现类. 2.MyBatis的mapper接口(相当于Dao接口)代理开发方法.(更重要) ---- ...
- MyBatis原始dao开发及问题总结(五)
一.MyBatis原始Dao开发方式 1.原始dao开发需要程序员编写dao接口和dao接口实现类 编写UserDao接口:UserDao.java package codeRose.dao; pub ...
- Spring+SpringMVC+MyBatis深入学习及搭建(二)——MyBatis原始Dao开发和mapper代理开发
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6869133.html 前面有写到Spring+SpringMVC+MyBatis深入学习及搭建(一)——My ...
随机推荐
- Latex中设置字体颜色
在用Latex时,想要使用不同颜色来突出某些关键点,有以下三种方案: 1.组合red.green和blue的值合成我们想要的颜色 \usepackage{color} \textcolor[rgb]{ ...
- HTTP协议,详解
整合网上各种资料,原创,不懂可以加 QQ:3111901846 一般学习一样新的知识,你首先要问问自己这三个问题,如果学完以后,你能回答出来这几个问题,证明你还是不错的 1.什么是HTTP协议?2.H ...
- asp.net,cookie,写cookie,取cookie(转载)
Cookie是一段文本信息,在客户端存储 Cookie 是 ASP.NET 的会话状态将请求与会话关联的方法之一.Cookie 也可以直接用于在请求之间保持数据,但数据随后将存储在客户端并随每个请求一 ...
- Unity3D_NGUI_性能优化实践_CPU卡顿
http://gad.qq.com/college/articledetail/7083468 博尔特以9.58秒创造了百米世界纪录,假设他是跑酷游戏的角色,卡顿一帧就足以把冠军拱手让人. Unity ...
- matplotlib 添加注释的方式
matplotlib 添加注释的方式 matplotlib.pyplot.annotate Annotate the point xy with text s s : str The text of ...
- PHP代码审计学习之命令执行漏洞挖掘及防御
[1]可能存在命令执行漏洞的函数: 00x1:常用的命令执行函数:exec.system.shell_exec.passthru 00x2:常用的函数处理函数:call_user_func.call_ ...
- cocos2d-JS (二)Cocos Creater
我觉得我们开发使用最新的工具.这对于我们非常有帮助. 由于新的工具有着新的功能,简化了我们开发的模式. 站在巨人的肩膀上~~~~~~~~~~~~~ CocosCreator.最大的两个特点 组件化 ...
- 初识layer遮罩层
背景:楼主做了一个先删除数据再插入的功能,但是狂点菜单的时候会有重复数据插入进来,设置字段unique之后,再狂点,控制台也会报错. 为了防止这种问题出现,我采取了制止”狂点“这种行为出现的做法,所以 ...
- Unix系统编程(二)open的练习
在上一篇中学习了一下open函数的基本用法,这里就要练习一下.计算机就是要实践嘛. 用open创建一个文件 #include <sys/types.h> #include <sys/ ...
- R学习----数据类型
今天开始学习R语言了,没原因,就是想学 本人开发环境在ubuntu 16.04 LTS下 R命令提示符 终端直接输入R进入交互模式进行R学习.如下图 R脚本 # My first program in ...