Browse Source

修改应急场所

bihuisong 10 months ago
parent
commit
800944cffc

+ 8 - 0
zhsq_qk-admin/src/main/java/zhsq_qk/web/controller/system/SysCameraController.java

@@ -127,4 +127,12 @@ public class SysCameraController extends BaseController {
         return success(sysCameraService.getCameraStatisticsByTypeList(sysCamera));
     }
 
+    /**
+     * 查询安全应急摄像头
+     */
+    @GetMapping("/getBuildTypeFourList")
+    public AjaxResult getBuildTypeFourList() {
+        return success(sysCameraService.getBuildTypeFourList());
+    }
+
 }

+ 75 - 0
zhsq_qk-system/src/main/java/zhsq_qk/system/domain/SysCamera.java

@@ -69,6 +69,36 @@ public class SysCamera extends BaseEntity {
     @Excel(name = "摄像头状态")
     private Integer cameraStatus;
 
+    /**
+     * 视频点
+     */
+    @Excel(name = "视频点")
+    private String videoSpot;
+
+    /**
+     * 型号
+     */
+    @Excel(name = "型号")
+    private String cameraModel;
+
+    /**
+     * 单位
+     */
+    @Excel(name = "单位")
+    private String unit;
+
+    /**
+     * 数量
+     */
+    @Excel(name = "数量")
+    private String number;
+
+    /**
+     * 备注
+     */
+    @Excel(name = "备注")
+    private String remark;
+
     private Long policeId;
 
     public Long getPoliceId() {
@@ -135,6 +165,46 @@ public class SysCamera extends BaseEntity {
         return cameraStatus;
     }
 
+    public void setVideoSpot(String videoSpot) {
+        this.videoSpot = videoSpot;
+    }
+
+    public String getVideoSpot() {
+        return videoSpot;
+    }
+
+    public void setCameraModel(String cameraModel) {
+        this.cameraModel = cameraModel;
+    }
+
+    public String getCameraModel() {
+        return cameraModel;
+    }
+
+    public void setUnit(String unit) {
+        this.unit = unit;
+    }
+
+    public String getUnit() {
+        return unit;
+    }
+
+    public void setNumber(String number) {
+        this.number = number;
+    }
+
+    public String getNumber() {
+        return number;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
@@ -147,6 +217,11 @@ public class SysCamera extends BaseEntity {
                 .append("buildType", getBuildType())
                 .append("policeId", getPoliceId())
                 .append("cameraName", getCameraName())
+                .append("videoSpot", getVideoSpot())
+                .append("cameraModel", getCameraModel())
+                .append("unit", getUnit())
+                .append("number", getNumber())
+                .append("remark", getRemark())
                 .toString();
     }
 }

+ 77 - 0
zhsq_qk-system/src/main/java/zhsq_qk/system/domain/SysCameraPolice.java

@@ -81,6 +81,37 @@ public class SysCameraPolice extends BaseEntity {
     @Excel(name = "类型")
     private String cameraStatusName;
 
+
+    /**
+     * 视频点
+     */
+    @Excel(name = "视频点")
+    private String videoSpot;
+
+    /**
+     * 型号
+     */
+    @Excel(name = "型号")
+    private String cameraModel;
+
+    /**
+     * 单位
+     */
+    @Excel(name = "单位")
+    private String unit;
+
+    /**
+     * 数量
+     */
+    @Excel(name = "数量")
+    private String number;
+
+    /**
+     * 备注
+     */
+    @Excel(name = "备注")
+    private String remark;
+
     private String policeName;
 
     public String getPoliceName() {
@@ -175,6 +206,7 @@ public class SysCameraPolice extends BaseEntity {
     public String getCameraStatus() {
         return cameraStatus;
     }
+
     public void setCameraStatusName(String cameraStatusName) {
         this.cameraStatusName = cameraStatusName;
     }
@@ -183,6 +215,46 @@ public class SysCameraPolice extends BaseEntity {
         return cameraStatusName;
     }
 
+    public void setVideoSpot(String videoSpot) {
+        this.videoSpot = videoSpot;
+    }
+
+    public String getVideoSpot() {
+        return videoSpot;
+    }
+
+    public void setCameraModel(String cameraModel) {
+        this.cameraModel = cameraModel;
+    }
+
+    public String getCameraModel() {
+        return cameraModel;
+    }
+
+    public void setUnit(String unit) {
+        this.unit = unit;
+    }
+
+    public String getUnit() {
+        return unit;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setNumber(String number) {
+        this.number = number;
+    }
+
+    public String getNumber() {
+        return number;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
@@ -199,6 +271,11 @@ public class SysCameraPolice extends BaseEntity {
                 .append("cameraName", getCameraName())
                 .append("buildTypeName", getBuildTypeName())
                 .append("cameraStatusName", getCameraStatusName())
+                .append("videoSpot", getVideoSpot())
+                .append("cameraModel", getCameraModel())
+                .append("unit", getUnit())
+                .append("remark", getRemark())
+                .append("number", getNumber())
                 .toString();
     }
 }

+ 2 - 0
zhsq_qk-system/src/main/java/zhsq_qk/system/mapper/SysCameraMapper.java

@@ -69,4 +69,6 @@ public interface SysCameraMapper {
     List<Integer> getCameraStatisticsList(SysCameraPolice sysCamera);
 
     List<Integer> getCameraStatisticsByTypeList(SysCameraPolice sysCamera);
+
+    List<SysCameraPolice> getBuildTypeFourList();
 }

+ 2 - 0
zhsq_qk-system/src/main/java/zhsq_qk/system/service/ISysCameraService.java

@@ -66,4 +66,6 @@ public interface ISysCameraService {
     Map<String, Object> getCameraStatisticsList(SysCameraPolice sysCamera);
 
     Map<String, Object> getCameraStatisticsByTypeList(SysCameraPolice sysCamera);
+
+    List<SysCameraPolice> getBuildTypeFourList();
 }

+ 6 - 4
zhsq_qk-system/src/main/java/zhsq_qk/system/service/impl/SysCameraServiceImpl.java

@@ -7,10 +7,7 @@ import zhsq_qk.system.domain.SysCameraPolice;
 import zhsq_qk.system.mapper.SysCameraMapper;
 import zhsq_qk.system.service.ISysCameraService;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 摄像头Service业务层处理
@@ -127,4 +124,9 @@ public class SysCameraServiceImpl implements ISysCameraService {
         }
         return map;
     }
+
+    @Override
+    public List<SysCameraPolice> getBuildTypeFourList() {
+        return sysCameraMapper.getBuildTypeFourList();
+    }
 }

+ 64 - 2
zhsq_qk-system/src/main/resources/mapper/system/SysCameraMapper.xml

@@ -12,6 +12,11 @@
             <result property="longitude" column="longitude"/>
             <result property="latitude" column="latitude"/>
             <result property="buildType" column="build_type"/>
+            <result property="videoSpot" column="video_spot"/>
+            <result property="cameraModel" column="camera_model"/>
+            <result property="unit" column="unit"/>
+            <result property="number" column="number"/>
+            <result property="remark" column="remark"/>
     </resultMap>
 
     <resultMap type="SysCameraPolice" id="SysPoliceStationResult">
@@ -27,10 +32,15 @@
         <result property="cameraStatus" column="camera_status"/>
         <result property="buildTypeName" column="buildTypeName"/>
         <result property="cameraStatusName" column="cameraStatusName"/>
+        <result property="videoSpot" column="video_spot"/>
+        <result property="cameraModel" column="camera_model"/>
+        <result property="unit" column="unit"/>
+        <result property="number" column="number"/>
+        <result property="remark" column="remark"/>
     </resultMap>
 
     <sql id="selectSysCameraVo">
-        select id, cameraName, address, longitude, latitude, build_type,camera_status
+        select id, camera_name, address, longitude, latitude, build_type,camera_status,video_spot,camera_model,unit,number,remark
         from sys_camera
     </sql>
 
@@ -48,9 +58,16 @@
         a.longitude,
         a.latitude,
         a.build_type,
+        a.video_spot,
+        a.camera_model,
+        a.unit,
+        a.number,
+        a.remark,
         case
         when a.build_type = 1 then '小区内部'
         when a.build_type = 2 then '街道路面'
+        when a.build_type = 3 then '已有'
+        when a.build_type = 4 then '应急场所'
         end buildTypeName
         FROM
         sys_camera a
@@ -81,7 +98,12 @@
             a.address,
             a.longitude,
             a.latitude,
-            a.build_type
+            a.build_type,
+            a.video_spot,
+            a.camera_model,
+            a.unit,
+            a.number,
+            a.remark
         FROM
             sys_camera a
                 left join sys_police_station b on a.police_id = b.id
@@ -107,6 +129,16 @@
             </if>
             <if test="cameraStatus != null">camera_status,
             </if>
+            <if test="videoSpot != null">video_spot,
+            </if>
+            <if test="cameraModel != null">camera_model,
+            </if>
+            <if test="unit != null">unit,
+            </if>
+            <if test="number != null">`number`,
+            </if>
+            <if test="remark != null">remark,
+            </if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="id != null">#{id},
@@ -125,6 +157,16 @@
             </if>
             <if test="cameraStatus != null">#{cameraStatus},
             </if>
+            <if test="videoSpot != null">#{videoSpot},
+            </if>
+            <if test="cameraModel != null">#{cameraModel},
+            </if>
+            <if test="unit != null">#{unit},
+            </if>
+            <if test="number != null">#{number},
+            </if>
+            <if test="remark != null">#{remark},
+            </if>
         </trim>
     </insert>
 
@@ -150,6 +192,21 @@
             <if test="cameraStatus != null">camera_status =
                 #{cameraStatus},
             </if>
+            <if test="videoSpot != null">video_spot =
+                #{videoSpot},
+            </if>
+            <if test="cameraModel != null">camera_model =
+                #{cameraModel},
+            </if>
+            <if test="unit != null">unit =
+                #{unit},
+            </if>
+            <if test="number != null">`number` =
+                #{number},
+            </if>
+            <if test="remark != null">remark =
+                #{remark},
+            </if>
         </trim>
         where id = #{id}
     </update>
@@ -188,4 +245,9 @@
         UNION all
         SELECT COUNT(1) FROM `sys_camera` where camera_status = 2 and build_type = 2
     </select>
+    <select id="getBuildTypeFourList" resultMap="SysPoliceStationResult">
+        select id, camera_name, address, longitude, latitude, build_type,camera_status,video_spot,camera_model,unit,number,IFNULL(remark,'') as remark
+        from sys_camera
+        where build_type = 4
+    </select>
 </mapper>

+ 2 - 0
zhsq_qk-ui/src/api/components/supermap.js

@@ -20,6 +20,7 @@ export function listForMark(query) {
 export const iconList={
   "lmjs":require('@/assets/images/cameraType/sprh_11.png'),
   "xqjs":require('@/assets/images/cameraType/sprh_12.png'),
+  "yjcs":require('@/assets/images/cameraType/yjcs.png'),
   // "yy":require('@/assets/images/cameraType/yy.png'),
 }
 
@@ -28,6 +29,7 @@ export function getIcon (state) {
   switch (state) {
     case "1" : return iconList.xqjs;break;
     case "2" : return iconList.lmjs;break;
+    case "4" : return iconList.yjcs;break;
     // case "3" : return iconList.yy;break;
   }
 }

+ 1 - 1
zhsq_qk-ui/src/api/system/aqyj.js

@@ -11,7 +11,7 @@ export function selectQkEmergencyRescueTeamAllList() {
 // 可视化查询应急避难所列表
 export function selectQkEmergencyShelterAllList() {
   return request({
-    url: '/system/shelter/selectQkEmergencyShelterAllList',
+    url: '/system/camera/getBuildTypeFourList',
     method: 'get',
   })
 }

+ 45 - 45
zhsq_qk-ui/src/views/fusion/aqyj.vue

@@ -34,7 +34,7 @@
               <!-- li上加on类名是点击选中后效果 -->
               <li v-for="(item, index) in shelter" :class="{ on: item.id == shelterCurrent }" :key="index"
                   @click="onShelterlick(item)">
-                <div class="link">{{ item.name }} - {{ item.address }}</div>
+                <div class="link">{{ item.cameraName }}</div>
               </li>
             </ul>
           </div>
@@ -131,8 +131,8 @@
     <!--右侧结束-->
     <!-- 多选按钮  开始 -->
     <form class="qkq_dx">
-      <label><input checked type="checkbox" name="ckbx" id="sxt" @click="handleClick"/>摄像头</label>
-      <label><input type="checkbox" name="ckbx" id="yjcs" @click="handleClick"/>应急场所</label>
+      <label><input type="checkbox" name="ckbx" id="sxt" @click="handleClick"/>摄像头</label>
+      <label><input checked type="checkbox" name="ckbx" id="yjcs" @click="handleClick"/>应急场所</label>
       <label><input type="checkbox" name="ckbx" id="nld" @click="handleClick"/>城市内涝点</label>
       <label><input type="checkbox" name="ckbx" id="jyd" @click="handleClick"/>抢险救援队</label>
       <label><input type="checkbox" name="ckbx" id="fxwz" @click="handleClick"/>防汛物资</label>
@@ -276,36 +276,36 @@ export default {
     loadd() {
       this.$refs.supermap.selectQkRescueSuppliesAllList();
     },
-    onTeamlick(val) {
-      let dataSource = [];
-      this.suppliesCurrent = null;
-      this.shelterCurrent = null;
-      if (val.id == this.teamCurrent) {
-        this.teamCurrent = null;
-      } else {
-        this.teamCurrent = val.id;
-      }
-      dataSource.push(val)
-      // var checkbox = document.getElementById("jyd");
-      // checkbox.setAttribute("checked", "");
-      this.$refs.supermap.addMarkers(dataSource, "jyd")
-      this.$refs.supermap.dropLocation(val.latitude, val.longitude);
-    },
-    onSuppliesclick(val) {
-      let dataSource = [];
-      this.teamCurrent = null;
-      this.shelterCurrent = null;
-      if (val.id == this.suppliesCurrent) {
-        this.suppliesCurrent = null;
-      } else {
-        this.suppliesCurrent = val.id;
-      }
-      dataSource.push(val)
-      // var checkbox = document.getElementById("fxwz");
-      // checkbox.setAttribute("checked", "");
-      this.$refs.supermap.addMarkers(dataSource, "fxwz")
-      this.$refs.supermap.dropLocation(val.latitude, val.longitude);
-    },
+    // onTeamlick(val) {
+    //   let dataSource = [];
+    //   this.suppliesCurrent = null;
+    //   this.shelterCurrent = null;
+    //   if (val.id == this.teamCurrent) {
+    //     this.teamCurrent = null;
+    //   } else {
+    //     this.teamCurrent = val.id;
+    //   }
+    //   dataSource.push(val)
+    //   // var checkbox = document.getElementById("jyd");
+    //   // checkbox.setAttribute("checked", "");
+    //   this.$refs.supermap.addMarkers(dataSource, "jyd")
+    //   this.$refs.supermap.dropLocation(val.latitude, val.longitude);
+    // },
+    // onSuppliesclick(val) {
+    //   let dataSource = [];
+    //   this.teamCurrent = null;
+    //   this.shelterCurrent = null;
+    //   if (val.id == this.suppliesCurrent) {
+    //     this.suppliesCurrent = null;
+    //   } else {
+    //     this.suppliesCurrent = val.id;
+    //   }
+    //   dataSource.push(val)
+    //   // var checkbox = document.getElementById("fxwz");
+    //   // checkbox.setAttribute("checked", "");
+    //   this.$refs.supermap.addMarkers(dataSource, "fxwz")
+    //   this.$refs.supermap.dropLocation(val.latitude, val.longitude);
+    // },
     onShelterlick(val) {
       let dataSource = [];
       this.teamCurrent = null;
@@ -1243,10 +1243,10 @@ export default {
          { offset: 0.95, color: 'rgba(0, 170, 255, 0.7)' },
          { offset: 1, color: 'rgba(0, 170, 255, 0.9)' }
      ];
-     
+
      // 圆环宽度
      const barMaxWidth = 10
-     
+
      // 坐标轴
      const angleAxis = {
          show: false,
@@ -1255,13 +1255,13 @@ export default {
          startAngle: 225,
          splitLine: { show: false }
      }
-     
+
      // 坐标轴
      const radiusAxis = {
          show: false,
          type: 'category',
      }
-     
+
      //圆环位置和大小
      const polar = {
          center: ['50%', '60%'],
@@ -1269,7 +1269,7 @@ export default {
      }
      const series =  [{
          type: 'bar',
-         data: [{ 
+         data: [{
              //上层圆环,显示数据
              value: mockData.value,
              itemStyle: {
@@ -1278,7 +1278,7 @@ export default {
          }],
          label: {
              show: true,
-			  
+
              formatter: params => {
                  return `{a|${params.value}}{b| %}\n\n\n{c|${mockData.name}}`
              },
@@ -1293,13 +1293,13 @@ export default {
 			   }
 			 },
          },
-		 
-         barGap: '-100%', 
-         coordinateSystem: 'polar', 
+
+         barGap: '-100%',
+         coordinateSystem: 'polar',
          roundCap: true,
-         z: 2 
+         z: 2
      },
-     { 
+     {
          type: 'bar',
          data: [{
              value: 100,
@@ -1312,7 +1312,7 @@ export default {
      }]
      // 渲染
      var option = { barMaxWidth, radiusAxis, polar, angleAxis, series};
-  
+
 
       if (option) {
         myChart.setOption(option);

+ 142 - 145
zhsq_qk-ui/src/views/supermap/supermap.vue

@@ -301,14 +301,13 @@ export default {
       //定义泡泡层
       marker.on('mouseover', function () {
         let html = "";
-        html += "<p class='v-p-color'>避难场所名称:" + option.name + "</p>";
-        html += "<p class='v-p-color'>类型:" + option.type + "</p>";
-        html += "<p class='v-p-color'>地址:" + option.address + "</p>";
-        html += "<p class='v-p-color'>避难场所范围:" + option.range + "</p>";
-        html += "<p class='v-p-color'>避难场所现状描述:" + option.state + "</p>";
-        html += "<p class='v-p-color'>占地面积(m²):" + option.area + "</p>";
-        html += "<p class='v-p-color'>可转移安置人数(万人):" + option.transferPerson + "</p>";
-        html += "<p class='v-p-color'>建设内容:" + option.constructionContent + "</p>";
+        html += "<p class='v-p-color'>摄像头名称:" + option.cameraName + "</p>";
+        html += "<p class='v-p-color'>点位具体位置:" + option.address + "</p>";
+        html += "<p class='v-p-color'>视频点:" + option.videoSpot + "</p>";
+        html += "<p class='v-p-color'>型号:" + option.cameraModel + "</p>";
+        html += "<p class='v-p-color'>数量:" + option.number + "</p>";
+        html += "<p class='v-p-color'>单位:" + option.unit + "</p>";
+        html += "<p class='v-p-color'>备注:" + option.remark + "</p>";
         this.bindPopup(html).openPopup(this.getLatLng());
       });
       // /**鼠标移开关闭popup**/
@@ -366,8 +365,6 @@ export default {
      * 清理地图标点
      */
     clearM: function () {
-      console.log("this.myLayerGroup",this.myLayerGroup)
-      console.log("this.resultLayer",this.resultLayer)
       let that = this;
       if (that.myLayerGroup != null && that.myLayerGroup.length > 0) {
         for (var i = this.myLayerGroup.length - 1; i >= 0; i--) {
@@ -440,143 +437,143 @@ td {
   width: 100%;
   /* height: 1080px !important; */
   background: none;
-}
+}
 .el-dialog {
-    background: #014f9f;
+    background: #014f9f;
+
+}
+.el-dialog__title {
+		    color: #ffffff;
+		}
+		.el-dialog__headerbtn .el-dialog__close {
+		    color: #ffffff;
+		}
+		.el-table {
+		    background-color: #014f9f;
+		    color: #fff;
+			 border-bottom: 1px solid #335d81;
+		}
+		.el-table .el-table__header-wrapper th, .el-table .el-table__fixed-header-wrapper th {
+		    background-color: #032d58c9;
+		    color: #fff;
+		}
+		.el-table .cell{
+			 color: #fff;
+		}
+		.el-table tr {
+		    background-color: #04346f61;
+		}
+		.el-table--enable-row-hover .el-table__body tr:hover > td.el-table__cell {
+		    background-color: #1c7fdb;
+		}
+		.el-table td.el-table__cell div{
+			color: #fff;
+		}
+		.el-table th.el-table__cell.is-leaf, .el-table td.el-table__cell {
+		    border-bottom: 1px solid #335d81;
+		}
+		.el-table::before, .el-table--group::after, .el-table--border::after {
+		    background-color: #335d81;
+		}
+		.el-table__body-wrapper::-webkit-scrollbar{
+			background: #294f76;
+		}
+		.el-table__body-wrapper::-webkit-scrollbar-thumb {
+		  background-color: #34669c;
+		}
+		.el-table__body-wrapper::-webkit-scrollbar-track {
+		  background-color: #294f76;
+		}
+		/* popup */
 
-}
-.el-dialog__title {
-		    color: #ffffff;
-		}
-		.el-dialog__headerbtn .el-dialog__close {
-		    color: #ffffff;
-		}
-		.el-table {
-		    background-color: #014f9f;
-		    color: #fff;
-			 border-bottom: 1px solid #335d81;
-		}
-		.el-table .el-table__header-wrapper th, .el-table .el-table__fixed-header-wrapper th {
-		    background-color: #032d58c9;
-		    color: #fff;
-		}
-		.el-table .cell{
-			 color: #fff;
-		}
-		.el-table tr {
-		    background-color: #04346f61;
-		}
-		.el-table--enable-row-hover .el-table__body tr:hover > td.el-table__cell {
-		    background-color: #1c7fdb;
-		}
-		.el-table td.el-table__cell div{
-			color: #fff;
-		}
-		.el-table th.el-table__cell.is-leaf, .el-table td.el-table__cell {
-		    border-bottom: 1px solid #335d81;
-		}
-		.el-table::before, .el-table--group::after, .el-table--border::after {
-		    background-color: #335d81;
-		}
-		.el-table__body-wrapper::-webkit-scrollbar{
-			background: #294f76;
-		}
-		.el-table__body-wrapper::-webkit-scrollbar-thumb {
-		  background-color: #34669c;
-		}
-		.el-table__body-wrapper::-webkit-scrollbar-track {
-		  background-color: #294f76;
-		}
-		/* popup */
-
-		.leaflet-popup {
-		    position: absolute;
-		    text-align: center;
-		    margin-bottom: 20px;
-		}
-		.leaflet-popup-content-wrapper {
-		    padding: 1px;
-		    text-align: left;
-		    border-radius: 12px;
-		}
-		.leaflet-popup-content {
-		    margin: 13px 19px;
+		.leaflet-popup {
+		    position: absolute;
+		    text-align: center;
+		    margin-bottom: 20px;
+		}
+		.leaflet-popup-content-wrapper {
+		    padding: 1px;
+		    text-align: left;
+		    border-radius: 12px;
+		}
+		.leaflet-popup-content {
+		    margin: 13px 19px;
 		    line-height: 1.4;
-        width: 298px!important;
-		}
-		.leaflet-popup-content p {
-		    margin: 18px 0;
-			color: #fff;
-		}
-		.leaflet-popup-tip-container {
-		    width: 40px;
-		    height: 20px;
-		    position: absolute;
-		    left: 50%;
-		    margin-left: -20px;
-		    overflow: hidden;
-		    pointer-events: none;
-		}
-		.leaflet-popup-tip {
-		    width: 17px;
-		    height: 17px;
-		    padding: 1px;
-
-		    margin: -10px auto 0;
-
-		    -webkit-transform: rotate(45deg);
-		    -moz-transform: rotate(45deg);
-		    -ms-transform: rotate(45deg);
-		    transform: rotate(45deg);
-		}
-		.leaflet-popup-content-wrapper,
-		.leaflet-popup-tip {
-		    background: rgba(4, 45, 106, 0.7);
-		    color: #333;
-		    box-shadow: 0 3px 14px rgba(0,0,0,0.4);
-		}
-		.leaflet-container a.leaflet-popup-close-button {
-		    position: absolute;
-		    top: 0;
-		    right: 0;
-		    padding: 4px 4px 0 0;
-		    border: none;
-		    text-align: center;
-		    width: 18px;
-		    height: 14px;
-		    font: 16px/14px Tahoma, Verdana, sans-serif;
-		    color: #c3c3c3;
-		    text-decoration: none;
-		    font-weight: bold;
-		    background: transparent;
-		}
-		.leaflet-container a.leaflet-popup-close-button:hover {
-		    color: #999;
-		}
-		.leaflet-popup-scrolled {
-		    overflow: auto;
-		    border-bottom: 1px solid #ddd;
-		    border-top: 1px solid #ddd;
-		}
-
-		.leaflet-oldie .leaflet-popup-content-wrapper {
-		    -ms-zoom: 1;
-		}
-		.leaflet-oldie .leaflet-popup-tip {
-		    width: 24px;
-		    margin: 0 auto;
-
-		    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
-		    filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
-		}
-		.leaflet-oldie .leaflet-popup-tip-container {
-		    margin-top: -1px;
-		}
-
-		.leaflet-oldie .leaflet-control-zoom,
-		.leaflet-oldie .leaflet-control-layers,
-		.leaflet-oldie .leaflet-popup-content-wrapper,
-		.leaflet-oldie .leaflet-popup-tip {
-		    border: 1px solid #999;
+        width: 298px!important;
+		}
+		.leaflet-popup-content p {
+		    margin: 18px 0;
+			color: #fff;
+		}
+		.leaflet-popup-tip-container {
+		    width: 40px;
+		    height: 20px;
+		    position: absolute;
+		    left: 50%;
+		    margin-left: -20px;
+		    overflow: hidden;
+		    pointer-events: none;
+		}
+		.leaflet-popup-tip {
+		    width: 17px;
+		    height: 17px;
+		    padding: 1px;
+
+		    margin: -10px auto 0;
+
+		    -webkit-transform: rotate(45deg);
+		    -moz-transform: rotate(45deg);
+		    -ms-transform: rotate(45deg);
+		    transform: rotate(45deg);
+		}
+		.leaflet-popup-content-wrapper,
+		.leaflet-popup-tip {
+		    background: rgba(4, 45, 106, 0.7);
+		    color: #333;
+		    box-shadow: 0 3px 14px rgba(0,0,0,0.4);
+		}
+		.leaflet-container a.leaflet-popup-close-button {
+		    position: absolute;
+		    top: 0;
+		    right: 0;
+		    padding: 4px 4px 0 0;
+		    border: none;
+		    text-align: center;
+		    width: 18px;
+		    height: 14px;
+		    font: 16px/14px Tahoma, Verdana, sans-serif;
+		    color: #c3c3c3;
+		    text-decoration: none;
+		    font-weight: bold;
+		    background: transparent;
+		}
+		.leaflet-container a.leaflet-popup-close-button:hover {
+		    color: #999;
+		}
+		.leaflet-popup-scrolled {
+		    overflow: auto;
+		    border-bottom: 1px solid #ddd;
+		    border-top: 1px solid #ddd;
+		}
+
+		.leaflet-oldie .leaflet-popup-content-wrapper {
+		    -ms-zoom: 1;
+		}
+		.leaflet-oldie .leaflet-popup-tip {
+		    width: 24px;
+		    margin: 0 auto;
+
+		    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
+		    filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
+		}
+		.leaflet-oldie .leaflet-popup-tip-container {
+		    margin-top: -1px;
+		}
+
+		.leaflet-oldie .leaflet-control-zoom,
+		.leaflet-oldie .leaflet-control-layers,
+		.leaflet-oldie .leaflet-popup-content-wrapper,
+		.leaflet-oldie .leaflet-popup-tip {
+		    border: 1px solid #999;
 		}
 </style>

+ 21 - 1
zhsq_qk-ui/src/views/system/camera/index.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="90px">
       <el-form-item label="摄像头名称" prop="cameraName">
         <el-input
           v-model="queryParams.cameraName"
@@ -98,6 +98,11 @@
           <dict-tag :options="dict.type.build_type" :value="scope.row.buildType"/>
         </template>
       </el-table-column>
+      <el-table-column label="视频点" align="center" prop="videoSpot"/>
+      <el-table-column label="型号" align="center" prop="cameraModel"/>
+      <el-table-column label="单位" align="center" prop="unit"/>
+      <el-table-column label="数量" align="center" prop="number"/>
+      <el-table-column label="备注" align="center" prop="remark"/>
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button
@@ -173,6 +178,21 @@
             ></el-option>
           </el-select>
         </el-form-item>
+        <el-form-item label="视频点" prop="videoSpot">
+          <el-input v-model="form.videoSpot" placeholder="请输入视频点"/>
+        </el-form-item>
+        <el-form-item label="型号" prop="cameraModel">
+          <el-input v-model="form.cameraModel" placeholder="请输入型号"/>
+        </el-form-item>
+        <el-form-item label="单位" prop="unit">
+          <el-input v-model="form.unit" placeholder="请输入单位"/>
+        </el-form-item>
+        <el-form-item label="数量" prop="number">
+          <el-input v-model="form.number" placeholder="请输入数量"/>
+        </el-form-item>
+        <el-form-item label="备注" prop="remark">
+          <el-input v-model="form.remark" placeholder="请输入备注"/>
+        </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitForm">确 定</el-button>