You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
udi-wms-java/src/main/resources/mybatis/mapper/basic/SysWorkplaceDocumentDao.xml

69 lines
3.4 KiB
XML

<?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="com.glxp.api.dao.basic.SysWorkplaceDocumentDao">
<select id="filterList" resultType="com.glxp.api.res.basic.SysWorkplaceDocumentResponse">
select sys_workplace_document.*,
aw.name invName,
basic_bussiness_type.name innerBusName,
thr_bustype_origin.name outBusName
from sys_workplace_document
left join auth_warehouse aw on aw.code = sys_workplace_document.invCode
left join basic_bussiness_type on sys_workplace_document.documentTypeCode = basic_bussiness_type.action
left join thr_bustype_origin on thr_bustype_origin.action = sys_workplace_document.documentTypeCode
<where>
<if test="documentTypeCode != '' and documentTypeCode != null">
AND documentTypeCode = #{documentTypeCode}
</if>
<if test="isPopular >= 0 and isPopular != null">
AND isPopular = #{isPopular}
</if>
<if test="busKey != null and busKey != ''">
AND (sys_workplace_document.documentTypeCode like concat('%', #{busKey}, '%')
or sys_workplace_document.busName like concat('%', #{busKey}, '%')
)
</if>
</where>
ORDER BY sys_workplace_document.number
</select>
<select id="filterListByWorkplace" resultType="com.glxp.api.res.basic.SysWorkplaceDocumentResponse">
select sys_workplace_document.*,sys_workplace_bus.workplaceCode,
basic_bussiness_type.name innerBusName,
thr_bustype_origin.name outBusName
from sys_workplace_bus
LEFT JOIN sys_workplace_document
ON sys_workplace_document.documentTypeCode = sys_workplace_bus.busTypeCode
left join basic_bussiness_type on sys_workplace_document.documentTypeCode = basic_bussiness_type.action
left join thr_bustype_origin on thr_bustype_origin.action = sys_workplace_document.documentTypeCode
<where>
<if test="workplaceCode != '' and workplaceCode != null">
AND sys_workplace_bus.workplaceCode = #{workplaceCode}
</if>
<if test="workPlaceCodes != null and workPlaceCodes.size() > 0">
and sys_workplace_bus.workplaceCode in
<foreach collection="workPlaceCodes" item="item" index="index" separator="," open="(" close=")">
#{item}
</foreach>
</if>
<if test="documentTypeCode != '' and documentTypeCode != null">
AND sys_workplace_document.documentTypeCode = #{documentTypeCode}
</if>
<if test="isPopular >= 0 and isPopular != null">
AND sys_workplace_document.isPopular = #{isPopular}
</if>
<if test="busKey != null and busKey != ''">
AND (sys_workplace_document.documentTypeCode like concat('%', #{busKey}, '%')
or sys_workplace_document.busName like concat('%', #{busKey}, '%')
)
</if>
</where>
</select>
<select id="findMaxNumberByWorkplaceCode" resultType="java.lang.Integer">
SELECT MAX(number) AS maxNumber
FROM sys_workplace_document
</select>
</mapper>