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>
时间: 2025-01-05 23:27:35

TaskMapper的相关文章

Mapped Statements collection does not contain value for TaskMapper.selectByPrimaryKey

Mapped Statements collection does not contain value for后面是什么类什么方法之类的: 错误原因有几种: 1.mapper.xml中没有加入namespace 2.mapper.xml中的方法和接口mapper的方法不对应 3.mapper.xml没有加入到mybatis-config.xml中(即总的配置文件),例外:配置了mapper文件的包路径的除外 4.mapper.xml文件名和所写的mapper名称不相同.

MyBatis的学习总结三:优化MyBatis配置文件中的配置

一.优化Mybatis配置文件conf.xml中数据库的信息 1.添加properties的配置文件,存放数据库的信息:mysql.properties具体代码: driver=com.mysql.jdbc.Driver url=jdbc:mysql://172.32.231.206:3306/edihelper username=root password=joyplus_edi 2.在conf.xml中引入配置文件,进行修改 <?xml version="1.0" encod

Java 对象属性的遍历

package com.cn.mybatis.test; import java.io.IOException; import java.io.InputStream; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Date; import org.apache.ibatis.

mybatis级联

mybatis中有时候表不能都分成单表进行查询,表之间会有联系,这时候需要将表进行级联 下面讲一下如何将mybatis中 的表进行级联.映射表关系如下 1:创建数据表 DROP TABLE IF EXISTS t_female_health_form; DROP TABLE IF EXISTS t_male_health_form; DROP TABLE IF EXISTS t_task; DROP TABLE IF EXISTS t_work_card; DROP TABLE IF EXIST

DO-DTO相互转换时的性能优化

一般情况下,DO是用来映射数据库记录的实体类,DTO是用来在网络上传输的实体类.两者的不同除了适用场景不同外还有就是DTO需要实现序列化接口.从DB查询到数据之后,ORM框架会把数据转换成DO对象,通常我们需要再把DO对象转换为DTO对象.同样的,插入数据到DB之前需要将DTO对象转换为DO对象然后交给ORM框架去执行JDBC. 通常用到的转换工具类BeanUtils是通过反射来实现的,实现源码如下 public static <T> T convertObject(Object source

Quartz实现JAVA定时杏彩平台出租任务的动态配置

先说点无关杏彩平台出租QQ2952777280[话仙源码论坛]hxforum.com[木瓜源码论坛]papayabbs.com 本文的问题,这段时间特别的不爽,可能有些同学也遇到过.其实也可以说是小事一桩,但感觉也是不容忽视的.我刚毕业时的公司,每个人每次提交代码都有着严格的规范,像table和space的缩进都有严格的要求,可以说你不遵守开发规范就相当于线上bug问题,还是比较严重的.现在发现外面的公司真的是没那么重视这个不重要却又特别重要的问题啊,啊啊啊啊啊啊!!! 什么是动态配置定时任务?

Bootstrap分页插件ajax返回数据,工具类的编写

使用Bootstrap分页插件时,需要返回指定的参数,这样Bootstrap才能够识别 需要引入的css: <!-- boostrap table --> <link href="css/bootstrap-table.min.css" rel="stylesheet" /> 需要引入的js: 1 <!-- boostrap table --> 2 <script type="text/javascript&quo

mybatis 级联

级联是一个数据库实体的概念.一对多的级联,一对多的级联,在MyBatis中还有一种被称为鉴别器的级联,它是一种可以选择具体实现类的级联. 级联不是必须的,级联的好处是获取关联数据十分便捷,但是级联过多会增加系统的复杂度,同时降低系统的性能,此增彼减,所以当级联的层级超过3层时,就不要考虑使用级联了,因为这样会造成多个对象的关联,导致系统的耦合.复杂和难以维护.在现实的使用过程中,要根据实际情况判断是否需要使用级联. MyBatis中的级联 MyBatis的级联分为3种. •鉴别器(discrim