Kaynağa Gözat

重点工程 新增cameraCode

吕宣芝 1 yıl önce
ebeveyn
işleme
5e838e6dba

+ 11 - 11
src/main/java/com/sooka/sponest/data/commandcenter/service/impl/ICommandCenterServiceImpl.java

@@ -174,17 +174,17 @@ public class ICommandCenterServiceImpl extends BaseServiceImpl implements IComma
                 item.setPark(parkMap.get(item.getPark()).toString());
             }
         });
-        List<Map<String, Object>> cameraList = commandCenterMapper.getKeyProjectsCamera(commandCenterBO);
-        projectBodies.forEach(project -> {
-            List<String> projectCameraCodes = new ArrayList<>();
-            cameraList.forEach(item -> {
-                if (project.getProjectId().equals(MapUtils.getString(item, "projectId"))) {
-                    projectCameraCodes.add(MapUtils.getString(item, "cameraCode"));
-                }
-            });
-            String joinedCameraCodes = String.join(",", projectCameraCodes);
-            project.setCameraCode(joinedCameraCodes);
-        });
+//        List<Map<String, Object>> cameraList = commandCenterMapper.getKeyProjectsCamera(commandCenterBO);
+//        projectBodies.forEach(project -> {
+//            List<String> projectCameraCodes = new ArrayList<>();
+//            cameraList.forEach(item -> {
+//                if (project.getProjectId().equals(MapUtils.getString(item, "projectId"))) {
+//                    projectCameraCodes.add(MapUtils.getString(item, "cameraCode"));
+//                }
+//            });
+//            String joinedCameraCodes = String.join(",", projectCameraCodes);
+//            project.setCameraCode(joinedCameraCodes);
+//        });
         List<CenterdataTKeyProjectsSchedule> scheduleList = commandCenterMapper.getKeyProjectsSchedule(commandCenterBO);
         projectBodies.forEach(project -> scheduleList.forEach(schedule -> {
             if (project.getProjectId().equals(schedule.getKeyProjectsId())) {

+ 15 - 7
src/main/resources/mapper/commandcenter/CommandCentreMapper.xml

@@ -140,9 +140,10 @@
 
     <select id="getKeyProjects" parameterType="CommandCenterBO" resultType="ProjectBody">
         SELECT
-        id projectId,
-        longitude,
-        latitude,
+        GROUP_CONCAT(c.camera_code) cameraCode,
+        a.id projectId,
+        a.longitude,
+        a.latitude,
         project_name projectName,
         project_target projectTarget,
         project_type projectType,
@@ -171,11 +172,13 @@
         secretary,
         secretary_duties secretaryDuties,
         secretary_phone secretaryPhone,
-        a.dept_id as deptId,
-        d.dept_name as deptName
-        FROM centerdata_t_key_projects a
+        a.dept_id AS deptId,
+        d.dept_name AS deptName
+        FROM
+        centerdata_t_key_projects a
         LEFT JOIN ${database_system}.sys_dept d ON d.dept_id = a.dept_id
         LEFT JOIN ${database_system}.sys_dept b on a.park = b.dept_id
+        left join centerdata_t_equipment_camera c on a.id = c.business_id
         <where>
             <choose>
                 <when test="deptId != null and deptId != ''">and FIND_IN_SET( #{deptId}, CONCAT(d.ancestors,',',d.dept_id) )</when>
@@ -197,7 +200,12 @@
                 AND nature in (${params.nature})
             </if>
         </where>
-        ORDER BY a.create_time DESC
+        GROUP BY a.id
+        <if test="state != null and state != ''" >
+            HAVING cameraCode is not null
+        </if>
+        ORDER BY
+            a.create_time DESC
     </select>
 
     <select id="getKeyProjectsCamera" parameterType="CommandCenterBO" resultType="map">