Bladeren bron

项目列表展示sql调整

user5 2 jaren geleden
bovenliggende
commit
32d2b82465
1 gewijzigde bestanden met toevoegingen van 94 en 38 verwijderingen
  1. 94 38
      src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectMessageDao.xml

+ 94 - 38
src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectMessageDao.xml

@@ -65,6 +65,69 @@
 		a.quality_signature_upload_date as "qualitySignatureUploadDate",
 		a.belonging_department as "belongingDepartment"
 	</sql>
+	<sql id="newProjectRecordsColumns">
+		a.id AS "id",
+		a.create_by AS "createBy.id",
+		a.create_date AS "createDate",
+		sua.name AS "createBy.name",
+		a.update_by AS "updateBy.id",
+		a.update_date AS "updateDate",
+		a.del_flag AS "delFlag",
+		a.contract_id AS "workContractInfo.id",
+		a.project_id AS "projectId",
+		a.project_name AS "projectName",
+		a.scale_type AS "scaleType",
+		a.scale_unit AS "scaleUnit",
+		a.scale_quantity AS "scaleQuantity",
+		a.area_id AS "area.id",
+		a.project_site AS "projectSite",
+		a.project_desc AS "projectDesc",
+		a.remarks AS "remarks",
+		a.status AS "projectStatus",
+		a.process_instance_id AS "processInstanceId",
+		a.company_id AS "company.id",
+		a.office_id AS "office.id",
+		a.alter_process_id AS "alterProcessId",
+		area.name AS "area.name",
+		a.province,
+		a.city,
+		a.area_name AS "county",
+		a.project_structure AS "projectStructure",
+		a.on_ground_num AS "onGroundNum",
+		a.under_ground_num AS "underGroundNum",
+		a.building_scale AS "buildingScale",
+		a.measuring_unit AS "measuringUnit",
+		a.project_use AS "projectUse",
+		a.install_fees AS "installFees",
+		a.building_fees AS "buildingFees",
+		a.building_percent AS "buildingPercent",
+		a.install_percent AS "installPercent",
+		a.unit_fees AS "unitFees",
+		a.building_unit_fees AS "buildingUnitFees",
+		a.install_unit_fees AS "installUnitFees",
+		a.total_fees AS "totalFees",
+		ifnull(a.reported_state,0) as "reportedState",
+		a.over_due_status as "overDueStatus",
+		ifnull(a.record_state,0) as "projectRecordStatus",
+		a.over_record_status as "overRecordStatus",
+		a.emergency_project as "emergencyProject",
+		a.attachment_project_sort as "attachmentProjectSort",
+		a.report_signature_flag as "reportSignatureFlag",
+		a.report_signature_document_id as "reportSignatureDocumentId",
+		a.report_signature_contract_id as "reportSignatureContractId",
+		a.report_signature_invalid_document_id as "reportSignatureInvalidDocumentId",
+		a.report_signature_file_name as "reportSignatureFileName",
+		a.report_signature_upload_file_user as "reportSignatureUploadFileUser.id",
+		a.report_signature_upload_date as "reportSignatureUploadDate",
+		a.quality_signature_flag as "qualitySignatureFlag",
+		a.quality_signature_document_id as "qualitySignatureDocumentId",
+		a.quality_signature_contract_id as "qualitySignatureContractId",
+		a.quality_signature_invalid_document_id as "qualitySignatureInvalidDocumentId",
+		a.quality_signature_file_name as "qualitySignatureFileName",
+		a.quality_signature_upload_file_user as "qualitySignatureUploadFileUser.id",
+		a.quality_signature_upload_date as "qualitySignatureUploadDate",
+		a.belonging_department as "belongingDepartment"
+	</sql>
 
 	<sql id="projectReportDataColumns">
 		a.id AS "id",
@@ -342,10 +405,10 @@
 	<select id="findList" resultType="RuralProjectRecords" >
 		select * from (
 		SELECT
-			<include refid="projectRecordsColumns"/>
+			<include refid="newProjectRecordsColumns"/>
 		,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"
+		,su.name as "leaderNameStr"
+		,su.id as "leaderNameIds"
 		,a.submit_money as "submitMoney"
 		,a.project_type as projectType,
 		wci.name AS "workContractInfo.name",
@@ -364,13 +427,9 @@
 				,ifnull(prr.status,0) as "projectReportRecordStatus"
 			</otherwise>
 		</choose>
-		,ifnull(prrd.status,0) as "downProjectReportRecordStatus",
-        prrd.file_num as recodeNum,
-		prr.process_instance_id as prrProcessInstanceId,
-		prrd.process_instance_id as prrdProcessInstanceId
+		,prr.process_instance_id as prrProcessInstanceId
 		,prd.id as prdId
 		,prr.id as prrId
-		,prrd.id as prrdId
 		,prd.audit_pass_date as auditPassDate
 		,if(date_add(prd.audit_pass_date,interval #{endingCount} day) >now(),"0","1") as reportedType
 		,ifnull(rprr.report_status,0) as "reportStatus"
@@ -408,11 +467,8 @@
 
 		LEFT JOIN project_filingbatch pfb on pfb.id=pfp.filing_batch
 		LEFT JOIN sys_user sua on a.create_by = sua.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
+		LEFT JOIN sys_user su on w1.user_id = su.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
@@ -420,7 +476,6 @@
 		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
@@ -660,34 +715,35 @@
 	</select>
 
     <select id="queryCount" resultType="int" >
-		select count(DISTINCT id) from (
-        SELECT DISTINCT (a.id) as id
+		select count( id) from (
+        SELECT  (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_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 sys_user su on w1.user_id = su.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
+		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 project_paper_filing ppf on ppf.project_id = a.id
 		<where>
             a.status = 5
             <if test="projectId != null and projectId != ''">