365 lines
16 KiB
XML
365 lines
16 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.bonus.sgzb.largeScreen.mapper.LargeScreenMapper">
|
|
|
|
<!--领料数据-->
|
|
<select id="getMaterialReqData" resultType="com.bonus.sgzb.largeScreen.domain.MaTypeDo">
|
|
SELECT SUM(lod.out_num) AS num,
|
|
lod.company_id AS companyId,
|
|
sd.dept_name AS companyName
|
|
FROM lease_out_details lod
|
|
LEFT JOIN sys_dept sd ON lod.company_id = sd.dept_id
|
|
WHERE lod.create_time BETWEEN CONCAT(#{nowDate}, ' 00:00:00') AND CONCAT(#{nowDate}, ' 23:59:59')
|
|
GROUP BY lod.company_id
|
|
</select>
|
|
<!--退料数据-->
|
|
<select id="getMaterialReturnData" resultType="com.bonus.sgzb.largeScreen.domain.MaTypeDo">
|
|
SELECT SUM(bcd.back_num) AS num,
|
|
bcd.company_id AS companyId,
|
|
sd.dept_name AS companyName
|
|
FROM back_check_details bcd
|
|
LEFT JOIN sys_dept sd ON bcd.company_id = sd.dept_id
|
|
WHERE bcd.create_time BETWEEN CONCAT(#{nowDate}, ' 00:00:00') AND CONCAT(#{nowDate}, ' 23:59:59')
|
|
GROUP BY bcd.company_id
|
|
</select>
|
|
<!--当月领料分析-->
|
|
<select id="getPickingAnalysisByMonth" resultType="com.bonus.sgzb.largeScreen.domain.MaTypeDo">
|
|
SELECT lod.out_num AS num,
|
|
a.typeName,
|
|
a.manage_type AS manageType
|
|
FROM lease_out_details lod
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName,mt.manage_type
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON lod.type_id = a.type_id
|
|
WHERE lod.create_time BETWEEN CONCAT(#{startDate}, ' 00:00:00') AND CONCAT(#{endDate}, ' 23:59:59')
|
|
<if test="maType!=null and maType == 1">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</select>
|
|
<!--设备分布-->
|
|
<select id="getEquipmentDisByMap" resultType="com.bonus.sgzb.largeScreen.domain.EquipmentDisVo"></select>
|
|
<!--新购验收入库分析-->
|
|
<select id="getAcceptanceStorage" resultType="java.util.Map">
|
|
/*验收*/
|
|
<if test="type == 1">
|
|
SELECT pcd.check_num AS num,
|
|
a.typeName
|
|
FROM purchase_check_info pci
|
|
LEFT JOIN purchase_check_details pcd ON pci.task_id = pcd.task_id
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON pcd.type_id = a.type_id
|
|
WHERE pci.arrival_time BETWEEN CONCAT(#{startDate}, ' 00:00:00') AND CONCAT(#{endDate}, ' 23:59:59')
|
|
<if test="maType!=null and maType == 1">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</if>
|
|
/*入库*/
|
|
<if test="type == 2">
|
|
SELECT iad.input_num,
|
|
a.typeName
|
|
FROM input_apply_details iad
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON iad.type_id = a.type_id
|
|
WHERE iad.create_time BETWEEN CONCAT(#{startDate}, ' 00:00:00') AND CONCAT(#{endDate}, ' 23:59:59') AND iad.input_type = '1'
|
|
<if test="maType!=null and maType == 1">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</if>
|
|
</select>
|
|
<!--当月报废分析-->
|
|
<select id="getScrapAnalysisByMonth" resultType="com.bonus.sgzb.largeScreen.domain.MaterialDataVo">
|
|
/*领用*/
|
|
<if test="type == 1">
|
|
SELECT SUM(lod.out_num) AS num,
|
|
bui.unit_name AS unitName
|
|
FROM lease_out_details lod
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON lod.type_id = a.type_id
|
|
LEFT JOIN lease_apply_info lai ON lod.parent_id = lai.id
|
|
LEFT JOIN tm_task_agreement tta ON lai.task_id = tta.task_id
|
|
LEFT JOIN bm_agreement_info bai ON tta.agreement_id = bai.agreement_id
|
|
LEFT JOIN bm_unit_info bui ON bai.unit_id = bui.unit_id
|
|
<where>
|
|
<if test="maType!=null and maType == 1">
|
|
a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</where>
|
|
GROUP BY bai.unit_id
|
|
ORDER BY num DESC
|
|
</if>
|
|
/*报废*/
|
|
<if test="type == 2">
|
|
SELECT SUM(scrap_num) AS num,
|
|
bui.unit_name AS unitName
|
|
FROM scrap_apply_details sad
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON sad.type_id = a.type_id
|
|
LEFT JOIN tm_task_agreement tta ON sad.task_id = tta.task_id
|
|
LEFT JOIN bm_agreement_info bai ON tta.agreement_id = bai.agreement_id
|
|
LEFT JOIN bm_unit_info bui ON bai.unit_id = bui.unit_id
|
|
WHERE sad.status = '1'
|
|
<if test="maType!=null and maType == 1">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
GROUP BY bai.unit_id
|
|
ORDER BY num DESC
|
|
</if>
|
|
</select>
|
|
<!--当月退料分析-->
|
|
<select id="getMaterialReturnByMonth" resultType="com.bonus.sgzb.largeScreen.domain.ScrapAnalysisVo">
|
|
SELECT bad.pre_num AS planNum,
|
|
bad.audit_num AS realityNum,
|
|
a.typeName
|
|
FROM back_apply_details bad
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON bad.type_id = a.type_id
|
|
WHERE bad.create_time BETWEEN CONCAT(#{startDate}, ' 00:00:00') AND CONCAT(#{endDate}, ' 23:59:59')
|
|
<if test="maType!=null and maType == 1">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</select>
|
|
<!--当月维修分析-->
|
|
<select id="getMaintenanceByMonth" resultType="com.bonus.sgzb.largeScreen.domain.ScrapAnalysisVo">
|
|
SELECT rad.repair_num AS repairNum,
|
|
rad.repaired_num AS repairedNum,
|
|
rad.scrap_num AS scrapNum,
|
|
a.typeName
|
|
FROM repair_apply_details rad
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON rad.type_id = a.type_id
|
|
WHERE rad.create_time BETWEEN CONCAT(#{startDate}, ' 00:00:00') AND CONCAT(#{endDate}, ' 23:59:59')
|
|
<if test="maType!=null and maType == 1">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</select>
|
|
<!--施工机具/工器具总保有量-->
|
|
<select id="getTotalOwnership" resultType="com.bonus.sgzb.largeScreen.domain.ScrapAnalysisVo">
|
|
/*在库*/
|
|
<if test="type == 1">
|
|
SELECT mt4.type_name AS typeName,
|
|
mt.num AS num
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4' AND mt.del_flag = '0'
|
|
<if test="maType!=null and maType == 1">
|
|
AND mt4.type_name = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND mt4.type_name = #{maTypeName}
|
|
</if>
|
|
</if>
|
|
/*待入库 新购/修试*/
|
|
<if test="type == 2">
|
|
SELECT pcd.purchase_num AS num,
|
|
pcd.input_num AS num2,
|
|
a.typeName AS typeName
|
|
FROM purchase_check_details pcd
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON pcd.type_id = a.type_id
|
|
WHERE pcd.status = '1'
|
|
<if test="maType!=null and maType == 1">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
UNION ALL
|
|
SELECT rid.repair_num AS num,
|
|
rid.input_num AS num2,
|
|
a.typeName AS typeName
|
|
FROM repair_input_details rid
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON rid.type_id = a.type_id
|
|
<where>
|
|
<if test="maType!=null and maType == 1">
|
|
a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</where>
|
|
</if>
|
|
/*在用*/
|
|
<if test="type == 3">
|
|
SELECT lod.out_num AS num,
|
|
'1' AS type,
|
|
a.typeName AS typeName
|
|
FROM lease_out_details lod
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON lod.type_id = a.type_id
|
|
<where>
|
|
<if test="maType!=null and maType == 1">
|
|
a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</where>
|
|
UNION ALL
|
|
SELECT bad.audit_num AS num,
|
|
'2' AS type,
|
|
a.typeName AS typeName
|
|
FROM back_apply_details bad
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON bad.type_id = a.type_id
|
|
<where>
|
|
<if test="maType!=null and maType == 1">
|
|
a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</where>
|
|
</if>
|
|
/*在修*/
|
|
<if test="type == 4">
|
|
SELECT rad.repair_num AS repairNum,
|
|
rad.repaired_num AS repairedNum,
|
|
rad.scrap_num AS scrapNum,
|
|
a.typeName AS typeName
|
|
FROM repair_apply_details rad
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON rad.type_id = a.type_id
|
|
<where>
|
|
<if test="maType!=null and maType == 1">
|
|
a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</where>
|
|
</if>
|
|
/*报废*/
|
|
<if test="type == 5">
|
|
SELECT sad.scrap_num AS num,
|
|
a.typeName AS typeName
|
|
FROM scrap_apply_details sad
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt4.type_name AS typeName
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
LEFT JOIN ma_type mt3 ON mt2.parent_id = mt3.type_id AND mt3.`level` = '2'
|
|
LEFT JOIN ma_type mt4 ON mt3.parent_id = mt4.type_id AND mt4.`level` = '1'
|
|
WHERE mt.`level` = '4'
|
|
)a ON sad.type_id = a.type_id
|
|
WHERE sad.status = '1'
|
|
<if test="maType!=null and maType == 1">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
<if test="maType!=null and maType == 2">
|
|
AND a.typeName = #{maTypeName}
|
|
</if>
|
|
</if>
|
|
</select>
|
|
<!--检修预警-->
|
|
<select id="getMaintenanceWarning" resultType="com.bonus.sgzb.largeScreen.domain.MaintenanceWarningVo">
|
|
SELECT mm.ma_code AS maCode,
|
|
a.typeName,
|
|
a.typeName2 AS machineName,
|
|
mm.next_check_time
|
|
FROM ma_machine mm
|
|
LEFT JOIN (
|
|
SELECT mt.type_id,mt.type_name AS typeName,mt2.type_name AS typeName2
|
|
FROM ma_type mt
|
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id AND mt2.`level` = '3'
|
|
WHERE mt.`level` = '4'
|
|
)a ON mm.type_id = a.type_id
|
|
WHERE mm.next_check_time BETWEEN #{startDate} AND #{endDate}
|
|
</select>
|
|
</mapper> |