|
@@ -340,8 +340,10 @@
|
|
|
|
|
|
|
|
|
<select id="findList" resultType="RuralProjectRecords" >
|
|
|
+ select * from (
|
|
|
SELECT
|
|
|
<include refid="projectRecordsColumns"/>
|
|
|
+ ,concat(ifnull( pfp.STATUS, 0 ),ifnull( ppf.STATUS, 0 )) as "downProjectReportRecordPaperFilingStatus"
|
|
|
,(select group_concat(su.name) from work_project_user wpu left join sys_user su on su.id = wpu.user_id where wpu.project_id = a.id) as "leaderNameStr"
|
|
|
,(select group_concat(su.id) from work_project_user wpu left join sys_user su on su.id = wpu.user_id where wpu.project_id = a.id) as "leaderNameIds"
|
|
|
,a.submit_money as "submitMoney"
|
|
@@ -509,9 +511,6 @@
|
|
|
AND( /*pfp.status is null or*/ ppf.status is null )
|
|
|
</if>
|
|
|
</when>
|
|
|
- <otherwise>
|
|
|
- AND( (a.submit_money = 2 and pfp.status is null) or (a.submit_money = 1 and ppf.status is null) )
|
|
|
- </otherwise>
|
|
|
</choose>
|
|
|
</when>
|
|
|
<otherwise>
|
|
@@ -525,9 +524,6 @@
|
|
|
and ppf.status = #{downProjectReportRecordStatus}
|
|
|
</if>
|
|
|
</when>
|
|
|
- <otherwise>
|
|
|
- and ppf.status = #{downProjectReportRecordStatus}
|
|
|
- </otherwise>
|
|
|
</choose>
|
|
|
|
|
|
</if>
|
|
@@ -622,33 +618,76 @@
|
|
|
ORDER BY SUBSTRING(a.project_id,-9) DESC
|
|
|
</otherwise>
|
|
|
</choose>
|
|
|
+ ) temporarydb
|
|
|
+ <where>
|
|
|
+ 1=1
|
|
|
+ <choose>
|
|
|
+ <when test="downProjectReportRecordStatus == 0">
|
|
|
+ <choose>
|
|
|
+ <when test="submitMoney !=null and submitMoney !=''">
|
|
|
+ <if test="submitMoney == 1">
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus = '00')
|
|
|
+ </if>
|
|
|
+ <if test="submitMoney == 2">
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus = '00')
|
|
|
+ </if>
|
|
|
+ </when>
|
|
|
+ <otherwise>
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus = '00')
|
|
|
+ </otherwise>
|
|
|
+ </choose>
|
|
|
+ </when>
|
|
|
+ <otherwise>
|
|
|
+ <if test="downProjectReportRecordStatus!=null and downProjectReportRecordStatus !=''">
|
|
|
+ <choose>
|
|
|
+ <when test="submitMoney !=null and submitMoney !=''">
|
|
|
+ <if test="submitMoney == 1">
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus like concat(#{downProjectReportRecordStatus},'%'))
|
|
|
+ </if>
|
|
|
+ <if test="submitMoney == 2">
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus like concat('%',#{downProjectReportRecordStatus}))
|
|
|
+ </if>
|
|
|
+ </when>
|
|
|
+ <otherwise>
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus like concat('%',#{downProjectReportRecordStatus},'%'))
|
|
|
+ </otherwise>
|
|
|
+ </choose>
|
|
|
+
|
|
|
+ </if>
|
|
|
+ </otherwise>
|
|
|
+ </choose>
|
|
|
+ </where>
|
|
|
</select>
|
|
|
|
|
|
<select id="queryCount" resultType="int" >
|
|
|
- SELECT count(DISTINCT a.id)
|
|
|
- FROM rural_project_records a
|
|
|
- left join case_base cb on a.id = cb.project_id
|
|
|
-
|
|
|
- <if test="leaderNameStr !=null and leaderNameStr !=''">
|
|
|
- LEFT JOIN work_project_user w on a.id = w.project_id
|
|
|
- LEFT JOIN sys_user su on w.user_id = su.id
|
|
|
- </if>
|
|
|
- LEFT JOIN work_project_user w1 on a.id = w1.project_id
|
|
|
- <if test="workContractInfo !=null">
|
|
|
- LEFT JOIN work_contract_info wci on a.contract_id = wci.id
|
|
|
- </if>
|
|
|
- <if test="workContractInfo!=null and workContractInfo.client !=null and workContractInfo.client.name !=null and workContractInfo.client.name !=''">
|
|
|
- LEFT JOIN work_client_info wct on wci.client_id = wct.id
|
|
|
- </if>
|
|
|
- left join project_report_data prd on prd.project_id = a.id
|
|
|
- left join project_report_data_two prdt on prdt.project_id = a.id
|
|
|
- left join rural_project_report_record prr on prr.report_id = prd.id
|
|
|
- LEFT JOIN project_material_defect_record pmdr on prd.id = pmdr.report_id
|
|
|
- left join rural_project_report_record_down prrd on prrd.report_id = prd.id
|
|
|
- LEFT JOIN project_flingbatch_relation pfp on pfp.project_id= a.id
|
|
|
- LEFT JOIN sys_user sua on a.create_by = sua.id
|
|
|
- left join project_paper_filing ppf on ppf.project_id = a.id
|
|
|
+ select count(DISTINCT id) from (
|
|
|
+ SELECT DISTINCT (a.id) as id
|
|
|
+ ,concat(ifnull( pfp.STATUS, 0 ),ifnull( ppf.STATUS, 0 )) as "downProjectReportRecordPaperFilingStatus"
|
|
|
+ FROM rural_project_records a
|
|
|
+ LEFT JOIN sys_area area
|
|
|
+ ON area.id = a.area_id
|
|
|
+ LEFT JOIN rural_project_records_reported rprr
|
|
|
+ ON rprr.id = a.id
|
|
|
+ LEFT JOIN case_base cb
|
|
|
+ ON a.id = cb.project_id /*LEFT JOIN project_flingbatch_relation pfp
|
|
|
+ ON pfp.project_id=a.id*/
|
|
|
+ LEFT JOIN (select id,status,project_id,filing_batch
|
|
|
+ FROM (
|
|
|
+ SELECT id,create_date,status,project_id,filing_batch
|
|
|
+ FROM project_flingbatch_relation order by create_date desc )z group by z.project_id desc ) pfp
|
|
|
+ ON pfp.project_id = a.id
|
|
|
+ LEFT JOIN project_filingbatch pfb ON pfb.id = pfp.filing_batch
|
|
|
+ LEFT JOIN sys_user sua ON a.create_by = sua.id
|
|
|
+ LEFT JOIN work_project_user w1 ON a.id = w1.project_id
|
|
|
+ LEFT JOIN work_contract_info wci ON a.contract_id = wci.id
|
|
|
+ LEFT JOIN work_client_info wct ON wci.client_id = wct.id
|
|
|
LEFT JOIN sys_office o ON o.id = a.office_id
|
|
|
+ LEFT JOIN project_report_data prd ON prd.project_id = a.id
|
|
|
+ LEFT JOIN project_report_data_two prdt ON prdt.project_id = a.id
|
|
|
+ LEFT JOIN rural_project_report_record prr ON prr.report_id = prd.id
|
|
|
+ LEFT JOIN project_material_defect_record pmdr ON prd.id = pmdr.report_id
|
|
|
+ LEFT JOIN rural_project_report_record_down prrd ON prrd.report_id = prd.id
|
|
|
+ LEFT JOIN project_paper_filing ppf ON ppf.project_id = a.id
|
|
|
<where>
|
|
|
a.status = 5
|
|
|
<if test="projectId != null and projectId != ''">
|
|
@@ -739,9 +778,6 @@
|
|
|
AND( /*pfp.status is null or*/ ppf.status is null )
|
|
|
</if>
|
|
|
</when>
|
|
|
- <otherwise>
|
|
|
- AND( (a.submit_money = 2 and pfp.status is null) or (a.submit_money = 1 and ppf.status is null) )
|
|
|
- </otherwise>
|
|
|
</choose>
|
|
|
</when>
|
|
|
<otherwise>
|
|
@@ -755,9 +791,6 @@
|
|
|
and ppf.status = #{downProjectReportRecordStatus}
|
|
|
</if>
|
|
|
</when>
|
|
|
- <otherwise>
|
|
|
- and ppf.status = #{downProjectReportRecordStatus}
|
|
|
- </otherwise>
|
|
|
</choose>
|
|
|
|
|
|
</if>
|
|
@@ -837,8 +870,47 @@
|
|
|
<if test="sqlMap.dsf !=null and sqlMap.dsf!=''">
|
|
|
AND ((w1.user_id = #{currentUser.id} AND w1.del_flag='0' AND a.company_id = #{currentUser.company.id})${sqlMap.dsf} )
|
|
|
</if>
|
|
|
- </where>
|
|
|
- </select>
|
|
|
+ </where>) temporarydb
|
|
|
+ <where>
|
|
|
+ 1=1
|
|
|
+ <choose>
|
|
|
+ <when test="downProjectReportRecordStatus == 0">
|
|
|
+ <choose>
|
|
|
+ <when test="submitMoney !=null and submitMoney !=''">
|
|
|
+ <if test="submitMoney == 1">
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus = '00')
|
|
|
+ </if>
|
|
|
+ <if test="submitMoney == 2">
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus = '00')
|
|
|
+ </if>
|
|
|
+ </when>
|
|
|
+ <otherwise>
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus = '00')
|
|
|
+ </otherwise>
|
|
|
+ </choose>
|
|
|
+ </when>
|
|
|
+ <otherwise>
|
|
|
+ <if test="downProjectReportRecordStatus!=null and downProjectReportRecordStatus !=''">
|
|
|
+ <choose>
|
|
|
+ <when test="submitMoney !=null and submitMoney !=''">
|
|
|
+ <if test="submitMoney == 1">
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus like concat(#{downProjectReportRecordStatus},'%'))
|
|
|
+ </if>
|
|
|
+ <if test="submitMoney == 2">
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus like concat('%',#{downProjectReportRecordStatus}))
|
|
|
+ </if>
|
|
|
+ </when>
|
|
|
+ <otherwise>
|
|
|
+ AND( temporarydb.downProjectReportRecordPaperFilingStatus like concat('%',#{downProjectReportRecordStatus},'%'))
|
|
|
+ </otherwise>
|
|
|
+ </choose>
|
|
|
+
|
|
|
+ </if>
|
|
|
+ </otherwise>
|
|
|
+ </choose>
|
|
|
+ </where>
|
|
|
+
|
|
|
+ </select>
|
|
|
|
|
|
<select id="findListByStatus" resultType="RuralProjectRecords" >
|
|
|
SELECT
|