TaskMapper
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="TaskMapper">
<sql id="taskColumns">TASK_ID,NUMBER,NAME,OWNER,TIME,DIR,DIR_URL,TYPE,STATUS</sql> <resultMap type="Task" id="taskResultMap" >
<id column="TASK_ID" property="taskId"/>
<result column="TASK_NUMBER" property="number"/>
<result column="NAME" property="name"/>
<result column="OWNER" property="owner"/>
<result column="TIME" property="time"/>
<result column="LOG_PATH" property="logPath"/>
<result column="LOG_URL" property="logURL"/>
<result column="TYPE" property="type"/>
<result column="STATUS" property="status"/>
</resultMap> <!-- 列表以分页形式 -->
<select id="listTaskPage" parameterType="page" resultType="pd" >
select * from PM_TASK t
where owner =#{pd.userName}
<if test="pd.keyw != null and pd.keyw != ''"><!-- 关键词检索 -->
and
(
t.NUMBER LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
t.NAME LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
t.OWNER LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
t.TIME LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
t.DIR LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
t.TYPE LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
t.STATUS LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
)
order by TIME DESC
</if>
</select> <select id="listTaskByUname" parameterType="String" resultMap="taskResultMap">
select * from PM_TASK
where owner =#{userName} order by TIME DESC
</select> <select id="getTaskByTaskId" parameterType="pd" resultType="pd">
select * from PM_TASK
where TASK_ID=#{taskId} or number=#{number}
order by TIME DESC
</select> <insert id="insertTask" parameterType="Task">
insert into PM_TASK (
TASK_ID,
TASK_NUMBER,
NAME,
OWNER,
TIME,
LOG_PATH,
LOG_URL,
TYPE,
STATUS
) values (
#{taskId},
#{taskNumber},
#{name},
#{owner},
#{time},
#{logPath},
#{logURL},
#{type},
#{status}
)
</insert> <insert id="saveLogInfo" parameterType="pd">
insert into LOG_INFO (
LOG_ID,
TASK_NUMBER,
USERNAME,
FILE_NAME,
FILE_PATH,
CREATETIME,
REMARKS
) values (
#{logId},
#{taskNumber},
#{userName},
#{fileName},
#{filePath},
#{createTime},
#{remarks}
)
</insert> <update id="updateTask" parameterType="Task">
update PM_TASK set
NAME =#{name}
where
TASK_ID=#{taskId}
or number=#{number}
</update> <delete id="deleteByTaskId" parameterType="String">
delete from PM_TASK
where TASK_ID=#{taskId}
or number=#{number}
</delete> <select id="listPmResult" parameterType="page" resultType="pd" >
select * from PM_RESULT r
where TASK_ID =#{pd.taskId}
<if test="pd.keyw != null and pd.keyw != ''"><!-- 关键词检索 -->
and
(
r.TASK_ID LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
r.NEID LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
r.RECEIVE_REPORT_MSG_TIME LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
r.PROCESS_GET_FILE_TIME LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
r.PROCESS_STORE_TIME LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
r.PROCESS_FINISH_TIME LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
r.TOTAL_TIME LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
)
order by TIME DESC
</if>
</select> <select id="listPmResultForCharts" parameterType="page" resultType="pd" >
select NEID,GROUP_CONCAT(TIME_SPAN) as CATEGORY,GROUP_CONCAT(TOTAL_TIME) as DATAS from PM_RESULT
where TASK_ID =#{pd.taskId} GROUP BY NEID order by NEID DESC
</select>
<!-- 获取PO上报的详细信息 -->
<select id="listPOResult" parameterType="page" resultType="pd" >
select * from PM_PO_RESULT r
where STEP_NAME =#{pd.stepName}
<if test="pd.keyw != null and pd.keyw != ''"><!-- 关键词检索 -->
and
(
r.NEID LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
r.PO_NAME LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
or
r.TOTAL_TIME LIKE CONCAT(CONCAT('%', #{pd.keyw}),'%')
)
order by TIME DESC
</if>
</select>
</mapper>
TaskMapper的更多相关文章
- Mapped Statements collection does not contain value for TaskMapper.selectByPrimaryKey
Mapped Statements collection does not contain value for后面是什么类什么方法之类的: 错误原因有几种: 1.mapper.xml中没有加入name ...
- MyBatis的学习总结四:实现关联表查询【参考】
一.一对一的表关联查询(edi_test_task 和 edi_task_detail) 例子:一条任务明细对一条任务记录 对应的sql的映射xml文件如下: <?xml version=& ...
- MyBatis的学习总结三:优化MyBatis配置文件中的配置
一.优化Mybatis配置文件conf.xml中数据库的信息 1.添加properties的配置文件,存放数据库的信息:mysql.properties具体代码: driver=com.mysql.j ...
- Mybatis的学习总结二:使用Mybatis对表进行CRUD操作【参考】
一.使用Mybatis对表进行CRUD操作------基于XML的实现 1.定义SQL的映射文件 2.在conf.xml中进行注册. 2.创建测试类 [具体过程参考:Mybatis的学习总结一] 二. ...
- Mybatis的学习总结:mybatis的入门介绍
一.myBatis简述 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...
- Java 对象属性的遍历
package com.cn.mybatis.test; import java.io.IOException; import java.io.InputStream; import java.lan ...
- MyBatis基础:MyBatis关联查询(4)
1. MyBatis关联查询简介 MyBatis中级联分为3中:association.collection及discriminator. ◊ association:一对一关联 ◊ collecti ...
- Bootstrap分页插件ajax返回数据,工具类的编写
使用Bootstrap分页插件时,需要返回指定的参数,这样Bootstrap才能够识别 需要引入的css: <!-- boostrap table --> <link href=&q ...
- MyBatis联表查询
MyBatis逆向工程主要用于单表操作,那么需要进行联表操作时,往往需要我们自己去写sql语句. 写sql语句之前,我们先修改一下实体类 Course.java: public class Cours ...
随机推荐
- EF Code First 学习笔记:表映射 多个Entity到一张表和一个Entity到多张表
多个实体映射到一张表 Code First允许将多个实体映射到同一张表上,实体必须遵循如下规则: 实体必须是一对一关系 实体必须共享一个公共键 观察下面两个实体: public class Per ...
- FizzBuzzWhizz问题python解法
FizzBuzzWhizz 你是一名体育老师,在某次课距离下课还有五分钟时,你决定搞一个游戏.此时有100名学生在上课.游戏的规则是: 1. 你首先说出三个不同的特殊数,要求必须是个位数,比方3.5. ...
- linux常用C函数目录
字符测试篇 isalnum isalpha isascii iscntrl isdigit isgraphis islower isprint isspace ispunct isupper isxd ...
- python类和实例以及__call__/__del__
面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可 ...
- 【BZOJ】【2730】【HNOI2012】矿场搭建
Tarjan求BCC/割点 然而似乎我一开始抄的白书的板子哪里抄错了?还是本身哪里不对……(可能是不适用于这道题?因为这题要求求出每个BCC的大小..? 膜拜了ydc的写法= = 其实两次dfs也并没 ...
- Iterator 迭代器模式 MD
迭代器模式 简介 Iterator模式是行为模式之一,它把对容器中包含的内部对象的访问[委让]给外部类,使用Iterator按顺序进行遍历访问. 在程序设计中,经常有这种情况:需要从大量的数据集合中一 ...
- css表格单元格中的长文本的显示问题
自动换行问题,正常字符的换行是比较合理的,而连续的数字和英文字符常常将容器撑大,挺让人头疼,下面介绍的是CSS如何实现换行的方法 对于div,p等块级元素 正常文字的换行(亚洲文字和非亚洲文字)元素拥 ...
- 同一页面的两个Iframe获取数据
首先页面: <td style="width: 50%" valign="top"> <iframe name="xxx" ...
- NYOJ-61 传纸条(一)
传纸条(一) 时间限制:2000 ms | 内存限制:65535 KB 难度:5 描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行 ...
- 网络结构设计——负载均衡之LVS学习笔记(三)
LVS按个人理解的说就是将一台Linux服务器当作路由器等功能的技术.LVS---Linux虚拟服务器. LVS实现了三种IP负载均衡技术VS/NAT.VS/TUN.VS/DR. 今天简单分享一下我在 ...