Sfoglia il codice sorgente

项目功能添加区域筛选项

user5 1 anno fa
parent
commit
243d57142b

+ 30 - 5
src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectMessageAllDao.xml

@@ -504,6 +504,14 @@ END) as projectScale*/
 			<if test="projectId != null and projectId != ''">
 				AND a.project_id like concat('%',#{projectId},'%')
 			</if>
+			<if test="area != null and area.id != null and area.id != ''">
+				AND (area.parent_ids LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+				or a.area_id = #{area.id}
+				)
+			</if>
 			<if test="projectName != null and projectName != ''">
 				AND a.project_name like concat(concat('%',#{projectName}),'%')
 			</if>
@@ -525,9 +533,9 @@ END) as projectScale*/
 			<if test="projectDesc != null and projectDesc != ''">
 				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
 			</if>
-			<if test="area != null and area.id != null and area.id != ''">
+			<!--<if test="area != null and area.id != null and area.id != ''">
 				AND a.area_id = #{area.id}
-			</if>
+			</if>-->
 			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
 				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
 			</if>
@@ -1382,6 +1390,14 @@ END) as projectScale*/
 			<if test="projectId != null and projectId != ''">
 				AND a.project_id like concat('%',#{projectId},'%')
 			</if>
+			<if test="area != null and area.id != null and area.id != ''">
+				AND (area.parent_ids LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+				or a.area_id = #{area.id}
+				)
+			</if>
 			<if test="projectName != null and projectName != ''">
 				AND a.project_name like concat(concat('%',#{projectName}),'%')
 			</if>
@@ -1403,9 +1419,9 @@ END) as projectScale*/
 			<if test="projectDesc != null and projectDesc != ''">
 				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
 			</if>
-			<if test="area != null and area.id != null and area.id != ''">
+			<!--<if test="area != null and area.id != null and area.id != ''">
 				AND a.area_id = #{area.id}
-			</if>
+			</if>-->
 			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
 				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
 			</if>
@@ -2126,6 +2142,7 @@ END) as projectScale*/
 		<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 sys_area area ON area.id = a.area_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
@@ -2165,8 +2182,16 @@ END) as projectScale*/
 				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
 			</if>
 			<if test="area != null and area.id != null and area.id != ''">
+				AND (area.parent_ids LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+				or a.area_id = #{area.id}
+				)
+			</if>
+			<!--<if test="area != null and area.id != null and area.id != ''">
 				AND a.area_id = #{area.id}
-			</if>
+			</if>-->
 			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
 				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
 			</if>

+ 19 - 3
src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectMessageDao.xml

@@ -517,8 +517,16 @@
 				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
 			</if>
 			<if test="area != null and area.id != null and area.id != ''">
+				AND (area.parent_ids LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+				or a.area_id = #{area.id}
+				)
+			</if>
+			<!--<if test="area != null and area.id != null and area.id != ''">
 				AND a.area_id = #{area.id}
-			</if>
+			</if>-->
 			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
 				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
 			</if>
@@ -842,9 +850,17 @@
             <if test="projectDesc != null and projectDesc != ''">
                 AND a.project_desc LIKE concat('%',#{projectDesc},'%')
             </if>
-            <if test="area != null and area.id != null and area.id != ''">
+			<if test="area != null and area.id != null and area.id != ''">
+				AND (area.parent_ids LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+				or a.area_id = #{area.id}
+				)
+			</if>
+            <!--<if test="area != null and area.id != null and area.id != ''">
                 AND a.area_id = #{area.id}
-            </if>
+            </if>-->
             <if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
                 AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
             </if>

+ 38 - 4
src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectRecordsDao.xml

@@ -524,8 +524,16 @@
 				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
 			</if>
 			<if test="area != null and area.id != null and area.id != ''">
+				AND (area.parent_ids LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+				or a.area_id = #{area.id}
+				)
+			</if>
+			<!--<if test="area != null and area.id != null and area.id != ''">
 				AND a.area_id = #{area.id}
-			</if>
+			</if>-->
 			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
 				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
 			</if>
@@ -1033,8 +1041,16 @@
 				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
 			</if>
 			<if test="area != null and area.id != null and area.id != ''">
+				AND (area.parent_ids LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+				or a.area_id = #{area.id}
+				)
+			</if>
+			<!--<if test="area != null and area.id != null and area.id != ''">
 				AND a.area_id = #{area.id}
-			</if>
+			</if>-->
 			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
 				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
 			</if>
@@ -2360,9 +2376,18 @@
 			<if test="projectDesc != null and projectDesc != ''">
 				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
 			</if>
+
 			<if test="area != null and area.id != null and area.id != ''">
+				AND (area.parent_ids LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+				or a.area_id = #{area.id}
+				)
+			</if>
+			<!--<if test="area != null and area.id != null and area.id != ''">
 				AND a.area_id = #{area.id}
-			</if>
+			</if>-->
 			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
 				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
 			</if>
@@ -2418,6 +2443,7 @@
 	<select id="projectPlanQueryCount" resultType="int" >
 		SELECT count(DISTINCT a.id)
 		FROM rural_project_records a
+		LEFT JOIN sys_area area ON area.id = a.area_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
@@ -2460,8 +2486,16 @@
 				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
 			</if>
 			<if test="area != null and area.id != null and area.id != ''">
+				AND (area.parent_ids LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+				or a.area_id = #{area.id}
+				)
+			</if>
+			<!--<if test="area != null and area.id != null and area.id != ''">
 				AND a.area_id = #{area.id}
-			</if>
+			</if>-->
 			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
 				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
 			</if>