|
|
@@ -77,13 +77,15 @@
|
|
|
|
|
|
<select id="summaryPage" resultType="org.sky.scientific.pojo.vo.XmSummary">
|
|
|
SELECT
|
|
|
- xm.id, xm.XMBH,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'xmmc' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1), xm.XMMC ) AS XMMC,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMFZR' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMFZR) AS XMFZR,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMSQDWID' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMSQDWID) AS XMSQDWID,
|
|
|
- xm.XMKSSJ,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMJSSJ' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMJSSJ) AS XMJSSJ,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMYSZEMX' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMYSZEMX) AS XMYSZEMX,
|
|
|
+ xm.id, xm.xmbh,
|
|
|
+ COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'xmmc' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1), xm.XMMC ) AS xmmc,
|
|
|
+ COALESCE( (SELECT BGHDZ FROM kd_xm_bgrz WHERE XM_ID = xm.id AND ZDMC = 'XMFZR' AND DATE_FORMAT(BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY BGSXSJ DESC LIMIT 1), xm.XMFZR) as xmfzr,
|
|
|
+ tech.name AS xmfzrxm,
|
|
|
+ COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMSQDWID' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMSQDWID) AS xmsqdwid,
|
|
|
+ CONCAT_WS('/',(SELECT name FROM kd_department d2 WHERE d2.id = d.parent_id), d.`name`) as xmsqdw,
|
|
|
+ xm.xmkssj,
|
|
|
+ COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMJSSJ' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMJSSJ) AS xmjssj,
|
|
|
+ COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMYSZEMX' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMYSZEMX) AS xmyszemx,
|
|
|
COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'STATUS' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.status) AS status,
|
|
|
LXBG as lxbg,
|
|
|
(select count(*) from kd_xm_jdxbg jdxbg where jdxbg.xm_id = xm.id and date_format(jdxbg.fill_date,'%Y%m') between concat(left(#{ew.yearAndMonth},4),'01') and #{ew.yearAndMonth}) as jdxbgCount,
|
|
|
@@ -96,12 +98,14 @@
|
|
|
(select count(*) from kd_cg_qt qt where qt.xm_id = xm.id and date_format(qt.SHOUQUAN_RQ,'%Y%m') between concat(left(#{ew.yearAndMonth},4),'01') and #{ew.yearAndMonth}) as qtCount,
|
|
|
(select ifnull(sum(WWFYJE), 0) from kd_xm_wwxm ww where ww.XM_ID = xm.id and ww.year_and_month = left(#{ew.yearAndMonth}, 4)) as wwAmount
|
|
|
FROM kd_xm xm
|
|
|
- WHERE DATE_FORMAT(xm.XMKSSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth}
|
|
|
- <if test="ew.XMBH!=null and ew.XMBH!=''">and xm.XMBH like concat('%',#{ew.XMBH},'%')</if>
|
|
|
- <if test="ew.XMMC!=null and ew.XMMC!=''">and xm.XMMC like concat('%',#{ew.XMMC},'%')</if>
|
|
|
- <if test="ew.XMFZR!=null and ew.XMFZR!=''">and xm.XMFZR = #{ew.XMFZR}</if>
|
|
|
- <if test="ew.XMSQDW!=null and ew.XMSQDW!=''">and xm.XMSQDW like concat('%',#{ew.XMSQDW},'%')</if>
|
|
|
- <if test="ew.status!=null">and xm.status = #{ew.status}</if>
|
|
|
+ LEFT JOIN kd_technician tech ON tech.id = COALESCE( (SELECT BGHDZ FROM kd_xm_bgrz WHERE XM_ID = xm.id AND ZDMC = 'XMFZR' AND DATE_FORMAT(BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY BGSXSJ DESC LIMIT 1), xm.XMFZR)
|
|
|
+ LEFT JOIN kd_department d on d.id = COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMSQDWID' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMSQDWID)
|
|
|
+ WHERE xm.tenant_id = #{ew.tenantId} and DATE_FORMAT(xm.XMKSSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth}
|
|
|
+ <if test="ew.xmbh!=null and ew.xmbh!=''">and xm.XMBH like concat('%',#{ew.xmbh},'%')</if>
|
|
|
+ <if test="ew.xmmc!=null and ew.xmmc!=''">and COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'xmmc' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1), xm.XMMC ) like concat('%',#{ew.xmmc},'%')</if>
|
|
|
+ <if test="ew.xmfzrxm!=null and ew.xmfzrxm!=''">and tech.name like concat('%', #{ew.xmfzrxm},'%')</if>
|
|
|
+ <if test="ew.xmsqdw!=null and ew.xmsqdw!=''">and CONCAT_WS('/',(SELECT name FROM kd_department d2 WHERE d2.id = d.parent_id), d.`name`) like concat('%',#{ew.xmsqdw},'%')</if>
|
|
|
+ <if test="ew.status!=null">and COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'STATUS' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.status) = #{ew.status}</if>
|
|
|
</select>
|
|
|
|
|
|
<select id="selectYszb" resultType="org.sky.scientific.pojo.vo.XmYszbVO">
|
|
|
@@ -149,6 +153,7 @@
|
|
|
COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMSQDWID' and bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMSQDWID) AS XMSQDWID,
|
|
|
xm.XMKSSJ,
|
|
|
COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMJSSJ' and bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMJSSJ) AS XMJSSJ,
|
|
|
+ COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'STATUS' and bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1),STATUS) AS STATUS,
|
|
|
YJLX,
|
|
|
XMLY,
|
|
|
XMKZXS,
|