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 ...
随机推荐
- 【前端】CSS
CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素.l 当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染). CSS语法 CSS实 ...
- maven打包时加入依赖包及加入本地依赖包
maven打包的时候默认是不加入依赖的jar包的,所以想打出一个独立的可运行jar包的话直接mvn clean install package是不行的.需要略改动下pom文件,加入如下plugin & ...
- unity3d控制模型的运动
这里就不多做解释了,直接上代码,只为了备忘. public class HeroMove : MonoBehaviour { private float speed;//人物行动速度 private ...
- Java程序猿的JavaScript学习笔记(10—— jQuery-在“类”层面扩展)
计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...
- c++ 头文件循环引用解法
A.h #include "B.h" class A{ public: B* m_b; } B.h #include "A.h" class B{ public ...
- unity, 不要试图用rigidbody.Sleep()停止rigidbody
如果想让rigidbody pause,用rigidbody.Sleep()是完全错误的办法.因为有很多情况都可能使一个处在sleep的rigidbody唤醒,所以调用rigidbody.Sleep( ...
- Android图片二级缓存
点击下载源代码 想起刚開始写代码的时候,领导叫我写一个头像下载的方法,当时屁颠屁颠就写了一个图片下载的,每次都要去网络上请求,最后直接被pass掉了 当时的思路是这种 后来渐渐地就知道了有二级缓存这东 ...
- vue2项目 :在hosts里面配置了装逼的模式。设置应用在127.0.0.1:80端口访问; 并将127.0.0.1指向www.yours.com ;问题“ Invalid Host header”
转自博客:https://www.cnblogs.com/cynthia-wuqian/p/8575401.html 1.MAC设置应用在127.0.0.1:80端口访问: config/index. ...
- jQuery 语法(一)
通过 jQuery,您可以选取(查询,query) HTML 元素,并对它们执行“操作”(actions). jQuery 语法实例 $(this).hide() 演示 jQuery hide() 函 ...
- 基于numpy的随机数构造
class numpy.random.RandomState(seed=None) RandomState 是一个基于Mersenne Twister算法的伪随机数生成类 RandomState 包含 ...