|
|
@@ -55,10 +55,10 @@
|
|
|
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),XMMC) AS XMMC,
|
|
|
- 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),status) AS status,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMMC', #{ew.yearAndMonth}),XMMC) AS XMMC,
|
|
|
+ COALESCE(get_xm_info(xm.id,'STATUS', #{ew.yearAndMonth}),status) AS status,
|
|
|
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),XMJSSJ) AS XMJSSJ
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMJSSJ', #{ew.yearAndMonth}),XMJSSJ) AS XMJSSJ
|
|
|
FROM kd_xm xm
|
|
|
WHERE DATE_FORMAT(XMKSSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth}
|
|
|
</select>
|
|
|
@@ -67,12 +67,12 @@
|
|
|
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') <![CDATA[<=]]> #{year} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMMC) AS XMMC,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMMC', #{year}),XMMC) AS XMMC,
|
|
|
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') <![CDATA[<=]]> #{year} 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 DATE_FORMAT(bgrz.BGSXSJ,'%Y') <![CDATA[<=]]> #{year} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),STATUS) AS status
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMJSSJ', #{year}),XMJSSJ) AS XMJSSJ,
|
|
|
+ COALESCE(get_xm_info(xm.id,'STATUS', #{year}),STATUS) AS status
|
|
|
FROM kd_xm xm
|
|
|
- WHERE #{year} between DATE_FORMAT(XMKSSJ, '%Y') and DATE_FORMAT(XMJSSJ, '%Y')
|
|
|
+ WHERE #{year} between DATE_FORMAT(XMKSSJ, '%Y') and DATE_FORMAT(COALESCE(get_xm_info(xm.id,'XMJSSJ', #{year}),XMJSSJ), '%Y')
|
|
|
</select>
|
|
|
|
|
|
<!-- <select id="summaryPage" resultType="org.sky.scientific.pojo.vo.XmSummary">-->
|
|
|
@@ -142,12 +142,11 @@
|
|
|
</select>
|
|
|
|
|
|
<select id="selectYszb" resultType="org.sky.scientific.pojo.vo.XmYszbVO">
|
|
|
- SELECT xm.id as xmId,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'xmmc' and bgrz.BGSXSJ <![CDATA[<=]]> now() 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 = '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),xm.XMJSSJ) AS xmjssj,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMYSZEMX' and bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1),xm.XMYSZEMX) AS XMYSZEMX,
|
|
|
+ SELECT xm.id as xmId,xm.XMKSSJ,
|
|
|
+ COALESCE(get_xm_info(xm.id, 'XMMC', null), xm.XMMC) AS xmmc,
|
|
|
+ COALESCE(get_xm_info(xm.id, 'XMSQDWID', null),xm.XMSQDWID) AS xmsqdwid,
|
|
|
+ COALESCE(get_xm_info(xm.id, 'XMJSSJ', null),xm.XMJSSJ) AS xmjssj,
|
|
|
+ COALESCE(get_xm_info(xm.id, 'XMYSZEMX', null),xm.XMYSZEMX) AS XMYSZEMX,
|
|
|
(select ifnull(sum(ZZSC*PJRGFY),0) from kd_ys_ryrgfy where XM_ID = #{xmId}) as ryrgfy,
|
|
|
(select ifnull(sum(yong_liang*dan_jia+YSJE+ZLFYYS),0) from kd_ys_zjtrfy where XM_ID = #{xmId}) as zjtrfy,
|
|
|
(select ifnull(sum(ZZSC*(select ifnull(YZJE,0) from kd_asset where id = asset_id)+CQDTFYYSJE),0) from kd_ys_zjfyycqdtfy t where XM_ID = #{xmId}) as zjfyycqdtfy,
|
|
|
@@ -162,12 +161,12 @@
|
|
|
|
|
|
<select id="selectByXmIdAndYearMonth" resultMap="ResultVoMap" parameterType="java.util.Map">
|
|
|
SELECT
|
|
|
- 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[<=]]> #{param2} ORDER BY bgrz.BGSXSJ DESC LIMIT 1), XMMC ) AS XMMC,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMMC', #{param2}), XMMC) AS XMMC,
|
|
|
XMBH,
|
|
|
- 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[<=]]> #{param2} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMSQDWID) AS XMSQDWID,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMSQDWID', #{param2}),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[<=]]> #{param2} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMJSSJ) AS XMJSSJ,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = id AND bgrz.ZDMC = 'XMFZR' AND DATE_FORMAT(bgrz.BGSXSJ, '%Y%m') <![CDATA[<=]]> #{param2} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMFZR) AS XMFZR,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMJSSJ', #{param2}),XMJSSJ) AS XMJSSJ,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMFZR', #{param2}),XMFZR) AS XMFZR,
|
|
|
XMLY,
|
|
|
XMKZXS,
|
|
|
YQCGXS,
|
|
|
@@ -179,14 +178,13 @@
|
|
|
|
|
|
<select id="selectByXmId" resultMap="ResultVoMap" parameterType="java.lang.Long">
|
|
|
SELECT
|
|
|
- id,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'xmmc' and bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1), XMMC ) AS XMMC,
|
|
|
- XMBH,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMFZR' and bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMFZR) AS XMFZR,
|
|
|
- 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,
|
|
|
+ id, XMBH,xm.XMKSSJ,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMMC', null), XMMC) AS XMMC,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMFZR', null),XMFZR) AS XMFZR,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMSQDWID', null),xm.XMSQDWID) AS XMSQDWID,
|
|
|
+
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMJSSJ', null),XMJSSJ) AS XMJSSJ,
|
|
|
+ COALESCE(get_xm_info(xm.id,'STATUS', null),STATUS) AS STATUS,
|
|
|
YJLX,
|
|
|
XMLY,
|
|
|
XMKZXS,
|
|
|
@@ -204,11 +202,11 @@
|
|
|
<select id="selectByXmIdList" resultMap="ResultVoMap">
|
|
|
SELECT
|
|
|
id, XMBH,XMKSSJ,create_time,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'xmmc' and bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1), XMMC ) AS XMMC,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMFZR' and bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMFZR) AS XMFZR,
|
|
|
- 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,
|
|
|
- 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
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMMC', null), XMMC ) AS XMMC,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMFZR', null),XMFZR) AS XMFZR,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMSQDWID', null),xm.XMSQDWID) AS XMSQDWID,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMJSSJ', null),XMJSSJ) AS XMJSSJ,
|
|
|
+ COALESCE(get_xm_info(xm.id,'STATUS', null),STATUS) AS STATUS
|
|
|
FROM kd_xm xm
|
|
|
where id in <foreach item="xmId" collection="xmIdList" separator="," open="(" close=")" index="index">#{xmId}</foreach>
|
|
|
</select>
|
|
|
@@ -220,10 +218,10 @@
|
|
|
where xm.is_deleted = 0
|
|
|
<if test="xmmc!=null and xmmc!='' ">
|
|
|
<if test="yearAndMonth!=null and yearAndMonth!=''">
|
|
|
- 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[<=]]> #{yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMMC) = #{xmmc}
|
|
|
+ and COALESCE(get_xm_info(xm.id,'XMMC', #{yearAndMonth}),XMMC) = #{xmmc}
|
|
|
</if>
|
|
|
<if test="yearAndMonth==null or yearAndMonth!=''">
|
|
|
- and COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMMC' AND bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMMC) = #{xmmc}
|
|
|
+ and COALESCE(get_xm_info(xm.id,'XMMC', #{yearAndMonth}),XMMC) = #{xmmc}
|
|
|
</if>
|
|
|
</if>
|
|
|
<if test="xmbh!=null and xmbh!=''">and xmbh = #{xmbh}</if>
|
|
|
@@ -233,30 +231,30 @@
|
|
|
SELECT
|
|
|
id,
|
|
|
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[<=]]> #{yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMMC) AS XMMC,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMMC', #{yearAndMonth}),XMMC) AS XMMC,
|
|
|
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[<=]]> #{yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMJSSJ) AS XMJSSJ
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMJSSJ', #{yearAndMonth}),XMJSSJ) AS XMJSSJ
|
|
|
FROM kd_xm xm
|
|
|
- where #{yearAndMonth} between DATE_FORMAT(XMKSSJ, '%Y%m') and DATE_FORMAT(XMJSSJ,'%Y%m')
|
|
|
+ where #{yearAndMonth} between DATE_FORMAT(XMKSSJ, '%Y%m') and DATE_FORMAT(COALESCE(get_xm_info(xm.id,'XMJSSJ', #{yearAndMonth}),XMJSSJ),'%Y%m')
|
|
|
</select>
|
|
|
|
|
|
<select id="selectAssistList" resultType="com.alibaba.fastjson.JSONObject">
|
|
|
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') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMMC) AS XMMC,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMMC', #{ew.yearAndMonth}),XMMC) AS XMMC,
|
|
|
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') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMJSSJ) AS XMJSSJ
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMJSSJ', #{yearAndMonth}),XMJSSJ) AS XMJSSJ
|
|
|
FROM kd_xm xm
|
|
|
- WHERE #{ew.yearAndMonth} between DATE_FORMAT(XMKSSJ, '%Y') and DATE_FORMAT(XMJSSJ,'%Y')
|
|
|
- <if test="ew.xmmc != null and ew.xmmc != ''">and xm.xmmc like concat('%',#{ew.xmmc},'%')</if>
|
|
|
+ WHERE #{ew.yearAndMonth} between DATE_FORMAT(XMKSSJ, '%Y') and DATE_FORMAT(COALESCE(get_xm_info(xm.id,'XMJSSJ', #{yearAndMonth}),XMJSSJ),'%Y')
|
|
|
+ <if test="ew.xmmc != null and ew.xmmc != ''">and COALESCE(get_xm_info(xm.id,'XMMC', #{ew.yearAndMonth}),XMMC) like concat('%',#{ew.xmmc},'%')</if>
|
|
|
<if test="ew.xmbh!=null and ew.xmbh!=''">and xm.xmbh like concat('%',#{ew.xmbh},'%')</if>
|
|
|
</select>
|
|
|
|
|
|
<select id="getXmmcAndXmbhByXmId" resultType="com.alibaba.fastjson.JSONObject">
|
|
|
SELECT
|
|
|
id as xmId,
|
|
|
- COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'xmmc' and bgrz.BGSXSJ <![CDATA[<=]]> now() ORDER BY bgrz.BGSXSJ DESC LIMIT 1), XMMC ) AS xmmc,
|
|
|
+ COALESCE(get_xm_info(xm.id,'XMMC',null), XMMC ) AS xmmc,
|
|
|
xmbh
|
|
|
FROM kd_xm xm
|
|
|
where id = #{xmId}
|