物料信息
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
<?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="cn.iocoder.yudao.module.backendlogistics.dal.mysql.bseMngt.rlwyMtrl.RlwyMtrlSubMapper">
|
||||
|
||||
<!--
|
||||
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
|
||||
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
|
||||
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
|
||||
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
||||
-->
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,87 @@
|
||||
<?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="cn.iocoder.yudao.module.backendlogistics.dal.mysql.bseMngt.mtrl.MtrlXpdMapper">
|
||||
|
||||
<!--
|
||||
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
|
||||
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
|
||||
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
|
||||
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
||||
-->
|
||||
|
||||
<select id="selectPage2"
|
||||
resultType="cn.iocoder.yudao.module.backendlogistics.controller.admin.backendlogistics.bseMngt.mtrl.vo.MtrlXpdRespVO">
|
||||
SELECT MI.ID AS materialId,
|
||||
MI.CD AS materialCode,
|
||||
MI.NAME AS materialName,
|
||||
MI.RMK AS description,
|
||||
LMX.INSP_FLG AS inspectionFlag,
|
||||
LMX.MTNG_FLG AS meteringFlag,
|
||||
LMX.SPLG_NDE AS samplingNode
|
||||
from MTRL_INF MI
|
||||
LEFT JOIN MTRL_HS_CLS MHC ON MI.ID = MHC.INF_ID
|
||||
LEFT JOIN LGST_MTRL_XPD LMX ON MI.ID = LMX.MTRL_ID
|
||||
<where>
|
||||
<if test="reqVO.classesId != null">
|
||||
AND MHC.CLS_ID = #{reqVO.classesId}
|
||||
</if>
|
||||
<if test="reqVO.deptId != null">
|
||||
AND LMX.DEPT_ID = #{reqVO.deptId}
|
||||
</if>
|
||||
</where>
|
||||
|
||||
</select>
|
||||
<select id="selectByMaterialId"
|
||||
resultType="cn.iocoder.yudao.module.backendlogistics.dal.dataobject.bseMngt.mtrl.MtrlXpdDO">
|
||||
select * from MTRL_XPD where MTRL_ID = #{materialId}
|
||||
</select>
|
||||
|
||||
<select id="selectMaterialClasses"
|
||||
resultType="cn.iocoder.yudao.module.backendlogistics.controller.admin.backendlogistics.bseMngt.mtrl.vo.MtrlXpdRespVO"
|
||||
flushCache="true"
|
||||
useCache="false">
|
||||
WITH material_class_hierarchy (
|
||||
material_id, class_level, class_id, class_code, class_name, parent_id, hierarchy_level
|
||||
) AS (
|
||||
SELECT mi.ID as material_id,
|
||||
mc.LVL as class_level,
|
||||
mc.ID as class_id,
|
||||
mc.CD as class_code,
|
||||
mc.NAME as class_name,
|
||||
mc.PRN_ID as parent_id,
|
||||
1 as hierarchy_level
|
||||
FROM "RUOYI-VUE-PRO".MTRL_INF mi
|
||||
LEFT JOIN "RUOYI-VUE-PRO".MTRL_HS_CLS mhc ON mi.ID = mhc.INF_ID
|
||||
LEFT JOIN "RUOYI-VUE-PRO".MTRL_CLS mc ON mhc.CLS_ID = mc.ID AND mc.DELETED = 0
|
||||
WHERE mi.id IS NOT NULL
|
||||
<if test="materialIds != null and materialIds.size() > 0">
|
||||
AND mi.ID IN
|
||||
<foreach item="item" index="index" collection="materialIds" separator="," open="(" close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT mch.material_id,
|
||||
mc.LVL as class_level,
|
||||
mc.ID as class_id,
|
||||
mc.CD as class_code,
|
||||
mc.NAME as class_name,
|
||||
mc.PRN_ID as parent_id,
|
||||
mch.hierarchy_level + 1 as hierarchy_level
|
||||
FROM material_class_hierarchy mch
|
||||
JOIN "RUOYI-VUE-PRO".MTRL_CLS mc ON mch.parent_id = mc.id AND mc.DELETED = 0
|
||||
WHERE mch.parent_id IS NOT NULL)
|
||||
SELECT material_id AS materialId,
|
||||
MAX(CASE WHEN hierarchy_level = 1 THEN class_code END) as bigTypeCode,
|
||||
MAX(CASE WHEN hierarchy_level = 1 THEN class_name END) as bigTypeName,
|
||||
MAX(CASE WHEN hierarchy_level = 2 THEN class_code END) as midTypeCode,
|
||||
MAX(CASE WHEN hierarchy_level = 2 THEN class_name END) as midTypeName,
|
||||
MAX(CASE WHEN hierarchy_level = 3 THEN class_code END) as smalTypeCode,
|
||||
MAX(CASE WHEN hierarchy_level = 3 THEN class_name END) as smalTypeName
|
||||
FROM material_class_hierarchy
|
||||
GROUP BY material_id
|
||||
ORDER BY material_id;
|
||||
</select>
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user