2024-02-27 18:44:28 +08:00
|
|
|
<?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.bonus.sgzb.material.mapper.StorageStatusMapper">
|
|
|
|
|
|
|
|
|
|
<select id="getStorageStatusList" resultType="com.bonus.sgzb.material.domain.StorageStatus">
|
2024-11-19 17:21:35 +08:00
|
|
|
SELECT
|
|
|
|
|
mt2.type_name AS typeName,
|
|
|
|
|
mt.type_name AS typeModelName,
|
|
|
|
|
mt.type_id AS typeId,
|
|
|
|
|
mt.unit_name AS unit,
|
|
|
|
|
CASE
|
|
|
|
|
mt.manage_type
|
|
|
|
|
WHEN 0 THEN
|
|
|
|
|
IFNULL( subquery0.num, 0 ) ELSE IFNULL( mt.num, 0 )
|
|
|
|
|
END AS num,
|
|
|
|
|
IFNULL( subquery1.usNum, 0 ) AS usNum,
|
|
|
|
|
IFNULL( subquery2.repairNum, 0 ) AS repairNum,
|
|
|
|
|
IFNULL( subquery3.repairInputNum, 0 ) AS repairInputNum,
|
|
|
|
|
IFNULL( subquery4.inputNum, 0 ) AS inputNum,
|
|
|
|
|
CASE
|
|
|
|
|
mt.manage_type
|
|
|
|
|
WHEN 0 THEN
|
|
|
|
|
IFNULL( subquery0.num, 0 )+ IFNULL( subquery1.usNum, 0 ) + IFNULL( subquery2.repairNum, 0 ) + IFNULL( subquery3.repairInputNum, 0 ) ELSE IFNULL( mt.num, 0 )+ IFNULL( subquery1.usNum, 0 ) + IFNULL( subquery2.repairNum, 0 ) + IFNULL( subquery3.repairInputNum, 0 )
|
|
|
|
|
END AS allNum,
|
|
|
|
|
CASE
|
|
|
|
|
mt.manage_type
|
|
|
|
|
WHEN 0 THEN
|
2024-11-19 17:25:07 +08:00
|
|
|
'编码' ELSE '数量'
|
2024-11-19 17:21:35 +08:00
|
|
|
END manageType,
|
|
|
|
|
subquery5.typeKeepName
|
|
|
|
|
FROM
|
|
|
|
|
ma_type mt
|
|
|
|
|
LEFT JOIN (
|
|
|
|
|
SELECT
|
|
|
|
|
mt.type_id,
|
|
|
|
|
mt2.type_name AS typeName,
|
|
|
|
|
mt.type_name AS typeModelName,
|
|
|
|
|
count( mm.ma_id ) num
|
|
|
|
|
FROM
|
|
|
|
|
ma_machine mm
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = mm.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
WHERE
|
|
|
|
|
mm.ma_code IS NOT NULL
|
|
|
|
|
AND mm.ma_status IN ( 15 )
|
|
|
|
|
GROUP BY
|
|
|
|
|
mt.type_id
|
|
|
|
|
) AS subquery0 ON subquery0.type_id = mt.type_id
|
|
|
|
|
LEFT JOIN (
|
|
|
|
|
SELECT
|
|
|
|
|
subquery1.type_id,
|
|
|
|
|
subquery1.typeName,
|
|
|
|
|
subquery1.typeModelName,
|
|
|
|
|
IFNULL( subquery1.outNum, 0 ) AS outNum,
|
|
|
|
|
IFNULL( subquery2.backNum, 0 ) AS backNum,
|
|
|
|
|
CASE
|
2024-02-27 18:44:28 +08:00
|
|
|
|
2024-11-19 17:21:35 +08:00
|
|
|
WHEN IFNULL( subquery1.outNum, 0 ) - IFNULL( subquery2.backNum, 0 ) > 0 THEN
|
|
|
|
|
IFNULL( subquery1.outNum, 0 ) - IFNULL( subquery2.backNum, 0 ) ELSE 0
|
|
|
|
|
END AS usNum
|
|
|
|
|
FROM
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
|
|
|
|
mt.type_id,
|
|
|
|
|
mt2.type_name AS typeName,
|
|
|
|
|
mt.type_name AS typeModelName,
|
|
|
|
|
SUM(
|
|
|
|
|
IFNULL( lod.out_num, 0 )) AS outNum
|
|
|
|
|
FROM
|
|
|
|
|
lease_out_details lod
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = lod.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
GROUP BY
|
|
|
|
|
mt.type_id
|
|
|
|
|
) AS subquery1
|
|
|
|
|
LEFT JOIN (
|
|
|
|
|
SELECT
|
|
|
|
|
mt.type_id,
|
|
|
|
|
mt2.type_name AS typeName,
|
|
|
|
|
mt.type_name AS typeModelName,
|
|
|
|
|
SUM(
|
|
|
|
|
IFNULL( bcd.back_num, 0 )) backNum
|
|
|
|
|
FROM
|
|
|
|
|
back_check_details bcd
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = bcd.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
LEFT JOIN ma_machine mm ON mm.ma_id = bcd.ma_id
|
2025-03-27 14:04:10 +08:00
|
|
|
WHERE bcd.is_finished IS NOT NULL and bcd.is_finished = '1'
|
2024-11-19 17:21:35 +08:00
|
|
|
GROUP BY
|
|
|
|
|
mt.type_id
|
|
|
|
|
) AS subquery2 ON subquery1.type_id = subquery2.type_id
|
|
|
|
|
) AS subquery1 ON mt.type_id = subquery1.type_id
|
|
|
|
|
LEFT JOIN (
|
|
|
|
|
SELECT
|
|
|
|
|
mt.type_id,
|
|
|
|
|
mt2.type_name AS typeName,
|
|
|
|
|
mt.type_name AS typeModelName,
|
|
|
|
|
SUM(
|
|
|
|
|
IFNULL( rad.repair_num, 0 ) - IFNULL( rad.repaired_num, 0 ) - IFNULL( rad.scrap_num, 0 )) AS repairNum
|
|
|
|
|
FROM
|
|
|
|
|
repair_apply_details rad
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = rad.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
WHERE
|
|
|
|
|
IFNULL( rad.repair_num, 0 ) - IFNULL( rad.repaired_num, 0 ) - IFNULL( rad.scrap_num, 0 ) > 0
|
|
|
|
|
GROUP BY
|
|
|
|
|
mt.type_id
|
|
|
|
|
) AS subquery2 ON subquery2.type_id = mt.type_id
|
|
|
|
|
LEFT JOIN (
|
|
|
|
|
SELECT
|
|
|
|
|
mt.type_id,
|
|
|
|
|
mt2.type_name AS typeName,
|
|
|
|
|
mt.type_name AS typeModelName,
|
|
|
|
|
SUM(
|
|
|
|
|
IFNULL( rid.repair_num, 0 ) - IFNULL( rid.input_num, 0 )) AS repairInputNum
|
|
|
|
|
FROM
|
|
|
|
|
repair_input_details rid
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = rid.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
WHERE
|
|
|
|
|
IFNULL( rid.repair_num, 0 ) - IFNULL( rid.input_num, 0 ) > 0
|
|
|
|
|
GROUP BY
|
|
|
|
|
mt.type_id
|
|
|
|
|
) AS subquery3 ON subquery3.type_id = mt.type_id
|
|
|
|
|
LEFT JOIN (
|
|
|
|
|
SELECT
|
|
|
|
|
mt.type_id,
|
|
|
|
|
mt2.type_name AS typeName,
|
|
|
|
|
mt.type_name AS typeModelName,
|
|
|
|
|
SUM(
|
|
|
|
|
IFNULL( pcd.check_num, 0 ) - IFNULL( pcd.input_num, 0 )) AS inputNum
|
|
|
|
|
FROM
|
|
|
|
|
purchase_check_details pcd
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = pcd.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
LEFT JOIN tm_task tt ON tt.task_id = pcd.task_id
|
|
|
|
|
WHERE
|
|
|
|
|
IFNULL( pcd.check_num, 0 ) - IFNULL( pcd.input_num, 0 ) > 0
|
|
|
|
|
AND tt.task_status != 107
|
|
|
|
|
AND tt.task_status != 106
|
|
|
|
|
GROUP BY
|
|
|
|
|
mt.type_id
|
|
|
|
|
) AS subquery4 ON subquery4.type_id = mt.type_id
|
|
|
|
|
LEFT JOIN (
|
|
|
|
|
SELECT
|
|
|
|
|
mkt.type_id,
|
|
|
|
|
GROUP_CONCAT( su.nick_name SEPARATOR ', ' ) AS typeKeepName,
|
|
|
|
|
GROUP_CONCAT( su.user_id SEPARATOR ', ' ) AS userIds
|
|
|
|
|
FROM
|
|
|
|
|
ma_type_keeper mkt
|
|
|
|
|
LEFT JOIN sys_user su ON mkt.user_id = su.user_id
|
|
|
|
|
GROUP BY
|
|
|
|
|
mkt.type_id
|
|
|
|
|
) AS subquery5 ON subquery5.type_id = mt.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
LEFT JOIN sys_dept sd ON sd.dept_id = mt.company_id
|
|
|
|
|
WHERE
|
|
|
|
|
mt.`level` = 4
|
|
|
|
|
AND mt.del_flag = '0'
|
|
|
|
|
<if test="userId != null and userId != ''">
|
|
|
|
|
AND LOCATE(#{userId}, subquery5.userIds) > 0
|
|
|
|
|
</if>
|
2024-06-24 10:13:06 +08:00
|
|
|
<if test="maTypeName!=null and maTypeName != ''">
|
|
|
|
|
AND sd.dept_name = #{maTypeName}
|
|
|
|
|
</if>
|
2024-02-27 18:44:28 +08:00
|
|
|
<if test="typeName != null and typeName != ''">
|
|
|
|
|
and mt2.type_name like concat('%',#{typeName},'%')
|
|
|
|
|
</if>
|
|
|
|
|
<if test="typeModelName != null and typeModelName != ''">
|
|
|
|
|
and mt.type_name like concat('%',#{typeModelName},'%')
|
|
|
|
|
</if>
|
|
|
|
|
</select>
|
2024-11-20 11:31:50 +08:00
|
|
|
<select id="getMaCodeList" resultType="com.bonus.sgzb.base.api.domain.MaType">
|
|
|
|
|
SELECT
|
|
|
|
|
mm.ma_code,
|
|
|
|
|
mt2.type_name typeName,
|
|
|
|
|
mt.type_name modelName
|
|
|
|
|
FROM
|
|
|
|
|
ma_machine mm
|
|
|
|
|
LEFT JOIN ma_type mt ON mm.type_id = mt.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 on mt.parent_id = mt2.type_id
|
|
|
|
|
WHERE mm.ma_status = 15 and mm.type_id = #{typeId}
|
|
|
|
|
<if test="maCode != null and maCode != ''">
|
|
|
|
|
and mm.ma_code like concat('%',#{maCode},'%')
|
|
|
|
|
</if>
|
|
|
|
|
</select>
|
2024-11-20 14:51:15 +08:00
|
|
|
<select id="getUserRecords" resultType="com.bonus.sgzb.base.api.domain.MaType">
|
|
|
|
|
SELECT
|
|
|
|
|
bpl.lot_name proName,
|
|
|
|
|
mt.type_name modelName,
|
|
|
|
|
mt2.type_name typeName,
|
2024-11-21 15:50:03 +08:00
|
|
|
sai.num,
|
2024-11-20 14:51:15 +08:00
|
|
|
mm.ma_code
|
|
|
|
|
FROM
|
|
|
|
|
slt_agreement_info sai
|
|
|
|
|
LEFT JOIN bm_agreement_info bai ON sai.agreement_id = bai.agreement_id
|
|
|
|
|
LEFT JOIN bm_project_lot bpl ON bai.project_id = bpl.lot_id
|
|
|
|
|
LEFT JOIN ma_type mt on mt.type_id = sai.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 on mt.parent_id = mt2.type_id
|
|
|
|
|
LEFT JOIN ma_machine mm on mm.ma_id = sai.ma_id
|
|
|
|
|
WHERE
|
|
|
|
|
sai.type_id = #{typeId}
|
|
|
|
|
AND sai.end_time IS NULL
|
|
|
|
|
AND sai.back_id IS NULL
|
|
|
|
|
</select>
|
2024-11-20 17:02:14 +08:00
|
|
|
<select id="getzk" resultType="java.lang.Integer">
|
|
|
|
|
SELECT
|
|
|
|
|
mm.ma_id
|
|
|
|
|
FROM
|
|
|
|
|
ma_machine mm
|
|
|
|
|
WHERE mm.ma_status = 15 and mm.type_id = #{typeId}
|
|
|
|
|
</select>
|
|
|
|
|
<select id="getzy" resultType="java.lang.Integer">
|
|
|
|
|
SELECT
|
|
|
|
|
mm.ma_id
|
|
|
|
|
FROM
|
|
|
|
|
(
|
|
|
|
|
SELECT
|
2024-11-21 18:00:28 +08:00
|
|
|
lod.ma_id AS maId,
|
2024-11-20 17:02:14 +08:00
|
|
|
mt.type_id,
|
2024-11-21 18:00:28 +08:00
|
|
|
SUM(IFNULL(lod.out_num, 0)) AS outNum
|
2024-11-20 17:02:14 +08:00
|
|
|
FROM
|
|
|
|
|
lease_out_details lod
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = lod.type_id
|
2024-11-21 18:00:28 +08:00
|
|
|
WHERE
|
|
|
|
|
mt.type_id = #{typeId}
|
2024-11-20 17:02:14 +08:00
|
|
|
GROUP BY
|
2024-11-21 18:00:28 +08:00
|
|
|
lod.ma_id, mt.type_id
|
2024-11-20 17:02:14 +08:00
|
|
|
) AS subquery1
|
2024-11-21 18:00:28 +08:00
|
|
|
LEFT JOIN
|
|
|
|
|
(
|
2024-11-20 17:02:14 +08:00
|
|
|
SELECT
|
2024-11-21 18:00:28 +08:00
|
|
|
bcd.ma_id AS maId,
|
2024-11-20 17:02:14 +08:00
|
|
|
mt.type_id,
|
2024-11-21 18:00:28 +08:00
|
|
|
SUM(IFNULL(bcd.back_num, 0)) AS backNum
|
2024-11-20 17:02:14 +08:00
|
|
|
FROM
|
|
|
|
|
back_check_details bcd
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = bcd.type_id
|
2024-11-21 18:00:28 +08:00
|
|
|
WHERE
|
|
|
|
|
mt.type_id = #{typeId}
|
2024-11-20 17:02:14 +08:00
|
|
|
GROUP BY
|
2024-11-21 18:00:28 +08:00
|
|
|
bcd.ma_id, mt.type_id
|
|
|
|
|
) AS subquery2 ON subquery1.maId = subquery2.maId
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = subquery1.type_id
|
|
|
|
|
LEFT JOIN ma_machine mm ON mm.ma_id = subquery1.maId
|
|
|
|
|
WHERE
|
|
|
|
|
mt.manage_type = 0
|
|
|
|
|
AND mt.del_flag = 0
|
|
|
|
|
AND IFNULL(subquery1.outNum, 0) - IFNULL(subquery2.backNum, 0) > 0
|
2024-11-20 17:02:14 +08:00
|
|
|
</select>
|
|
|
|
|
<select id="getzx" resultType="java.lang.Integer">
|
|
|
|
|
SELECT
|
|
|
|
|
rad.ma_id
|
|
|
|
|
FROM
|
|
|
|
|
repair_apply_details rad
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = rad.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
WHERE
|
|
|
|
|
IFNULL( rad.repair_num, 0 ) - IFNULL( rad.repaired_num, 0 ) - IFNULL( rad.scrap_num, 0 ) > 0
|
|
|
|
|
and mt.manage_type = 0 and mt.del_flag = 0 and rad.type_id = #{typeId}
|
|
|
|
|
GROUP BY
|
|
|
|
|
rad.ma_id
|
|
|
|
|
</select>
|
|
|
|
|
<select id="getxshdrk" resultType="java.lang.Integer">
|
|
|
|
|
SELECT
|
|
|
|
|
rid.ma_id
|
|
|
|
|
FROM
|
|
|
|
|
repair_input_details rid
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = rid.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
WHERE
|
|
|
|
|
IFNULL( rid.repair_num, 0 ) - IFNULL( rid.input_num, 0 ) > 0
|
|
|
|
|
AND mt.manage_type = 0
|
|
|
|
|
AND mt.del_flag = 0
|
|
|
|
|
AND rid.type_id = #{typeId}
|
|
|
|
|
GROUP BY
|
|
|
|
|
rid.ma_id
|
|
|
|
|
</select>
|
|
|
|
|
<select id="getAllRecords" resultType="com.bonus.sgzb.base.api.domain.MaType">
|
2024-11-20 17:44:54 +08:00
|
|
|
SELECT
|
|
|
|
|
mm.ma_code,
|
|
|
|
|
mt2.type_name AS typeName,
|
|
|
|
|
mt.type_name AS modelName
|
|
|
|
|
FROM
|
|
|
|
|
ma_machine mm
|
|
|
|
|
LEFT JOIN ma_type mt ON mt.type_id = mm.type_id
|
|
|
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
|
|
|
|
|
WHERE
|
|
|
|
|
mm.ma_id IN
|
|
|
|
|
<foreach collection="ids" item="maId" open="(" separator="," close=")">
|
|
|
|
|
#{maId}
|
|
|
|
|
</foreach>
|
|
|
|
|
<if test="bean != null">
|
|
|
|
|
<if test="bean.maCode != null and bean.maCode != ''">
|
|
|
|
|
AND mm.ma_code LIKE CONCAT('%', #{bean.maCode}, '%')
|
|
|
|
|
</if>
|
|
|
|
|
</if>
|
2024-11-20 17:02:14 +08:00
|
|
|
</select>
|
|
|
|
|
|
2024-02-27 18:44:28 +08:00
|
|
|
</mapper>
|