ZhiYeJianKang/职业健康平台后端/bin/mappings/modules/reportCustomer/standardPlanDaoMapper.xml

159 lines
6.1 KiB
XML
Raw Normal View History

2025-02-20 15:25:59 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">
<mapper namespace="com.hx.slj.modules.reportCustomer.dao.StandardPlanDao">
<!-- parameterType:参数类型,填写实体类的完整名字 -->
<resultMap id="baseStandardPlan" type="com.hx.slj.modules.reportCustomer.entity.StandardPlan" >
<id column="ID" property="id"/>
<result column="year" property="year"/>
<result column="cycle" property="cycle"/>
<result column="title" property="title"/>
<result column="enable" property="enable"/>
<result column="sort" property="sort"/>
<result column="assessment_system_id" property="assessmentSystemId"/>
<result column="assessment_start_date" property="assessmentStartDate"/>
<result column="assessment_end_date" property="assessmentEndDate"/>
</resultMap>
<resultMap id="joinAssessmentSystem" type="com.hx.slj.modules.reportCustomer.entity.StandardPlan" >
<id column="ID" property="id"/>
<result column="year" property="year"/>
<result column="cycle" property="cycle"/>
<result column="title" property="title"/>
<result column="enable" property="enable"/>
<result column="sort" property="sort"/>
<result column="del_flag" property="delFlag"/>
<result column="create_by" property="createBy"/>
<result column="create_date" property="createDate"/>
<result column="update_by" property="updateBy"/>
<result column="update_date" property="updateDate"/>
<result column="remarks" property="remarks"/>
<result column="assessment_system_id" property="assessmentSystemId"/>
<result column="assessment_start_date" property="assessmentStartDate"/>
<result column="assessment_end_date" property="assessmentEndDate"/>
<association property="assessmentSystem" javaType="com.hx.slj.modules.reportCustomer.entity.AssessmentSystem">
<id column="assId" property="id"/>
<result column="assNumber" property="number"/>
<result column="assName" property="name"/>
<result column="assPeriods" property="periods"/>
<result column="assIsUsed" property="isUsed"/>
<result column="assDel_flag" property="delFlag"/>
<result column="assCreate_by" property="createBy"/>
<result column="assCreate_date" property="createDate"/>
<result column="assUpdate_by" property="updateBy"/>
<result column="assUpdate_date" property="updateDate"/>
<result column="assRemarks" property="remarks"/>
</association>
</resultMap>
<resultMap id="joinSysUser" type="com.hx.slj.modules.reportCustomer.entity.StandardPlan" >
<id column="ID" property="id"/>
<result column="year" property="year"/>
<result column="cycle" property="cycle"/>
<result column="title" property="title"/>
<result column="enable" property="enable"/>
<result column="sort" property="sort"/>
<result column="del_flag" property="delFlag"/>
<result column="create_by" property="createBy"/>
<result column="create_date" property="createDate"/>
<result column="update_by" property="updateBy"/>
<result column="update_date" property="updateDate"/>
<result column="remarks" property="remarks"/>
<result column="assessment_system_id" property="assessmentSystemId"/>
<result column="assessment_start_date" property="assessmentStartDate"/>
<result column="assessment_end_date" property="assessmentEndDate"/>
<result column="usId" property="userId"/>
<result column="usOfficeId" property="officeId"/>
</resultMap>
<sql id="baseSql">
id,
year,
cycle,
title,
enable,
sort,
assessment_system_id,
assessment_start_date,
assessment_end_date,
del_flag,
create_by,
create_date,
update_by,
update_date,
remarks
</sql>
<sql id="joinAssessmentSystemSql">
sp.id as "id",
sp.year as "year",
sp.title as "title",
sp.cycle as "cycle",
sp.enable as "enable",
sp.sort as "sort",
sp.assessment_system_id as "assessment_system_id",
sp.assessment_start_date as "assessment_start_date",
sp.assessment_end_date as "assessment_end_date",
sp.del_flag as "del_flag",
sp.create_by as "create_by",
sp.create_date as "create_date",
sp.update_by as "update_by",
sp.update_date as "update_date",
sp.remarks as "remarks",
ass.id as "assId",
ass.number as "assNumber",
ass.name as "assName",
ass.periods as "assPeriods",
ass.isUsed as "assIsUsed",
ass.del_flag as "assDel_flag",
ass.create_by as "assCreate_by",
ass.create_date as "assCreate_date",
ass.update_by as "assUpdate_by",
ass.update_date as "assUpdate_date",
ass.remarks as "assRemarks"
</sql>
<sql id="joinSysUserSql">
sp.id as "id",
sp.year as "year",
sp.title as "title",
sp.cycle as "cycle",
sp.enable as "enable",
sp.sort as "sort",
sp.assessment_system_id as "assessment_system_id",
sp.assessment_start_date as "assessment_start_date",
sp.assessment_end_date as "assessment_end_date",
sp.del_flag as "del_flag",
sp.create_by as "create_by",
sp.create_date as "create_date",
sp.update_by as "update_by",
sp.update_date as "update_date",
sp.remarks as "remarks",
su.id as "usId",
su.office_id as "usOfficeId"
</sql>
<select id="findJoinAssessmentSystem" resultMap="joinAssessmentSystem">
select
<include refid="joinAssessmentSystemSql"/>
from standard_plan sp LEFT JOIN assessment_system ass ON sp.assessment_system_id = ass.id and sp.del_flag = '0' and sp.`enable` = '1' and ass.isUsed = '1' and ass.DEL_FLAG = '0'
</select>
<select id="findJoinSysUser" resultMap="joinSysUser" parameterType="com.hx.slj.modules.reportCustomer.entity.StandardPlan">
select
<include refid="joinSysUserSql"/>
from standard_plan sp LEFT JOIN sys_user su ON sp.create_by = su.ID
where sp.`enable` = '1' and sp.del_flag = '0' and su.DEL_FLAG = '0'
<if test="officeId != null">
and su.office_id = #{officeId}
</if>
</select>
</mapper>