Commit 9cbf12a7 authored by yzm's avatar yzm

界面bug

parent ff21f4a3
...@@ -5,6 +5,7 @@ import im.zhaojun.common.annotation.OperationLog; ...@@ -5,6 +5,7 @@ import im.zhaojun.common.annotation.OperationLog;
import im.zhaojun.common.util.PageResultBean; import im.zhaojun.common.util.PageResultBean;
import im.zhaojun.common.util.ResultBean; import im.zhaojun.common.util.ResultBean;
import im.zhaojun.system.model.Code; import im.zhaojun.system.model.Code;
import im.zhaojun.system.model.VideoeRecordType;
import im.zhaojun.system.service.CodeService; import im.zhaojun.system.service.CodeService;
import org.springframework.ui.Model; import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -46,6 +47,25 @@ public class CodeController { ...@@ -46,6 +47,25 @@ public class CodeController {
int result = codeService.updatecode(codelist); int result = codeService.updatecode(codelist);
return ResultBean.success(); return ResultBean.success();
} }
@OperationLog("新增")
@PostMapping("/add")
public ResultBean add(@RequestBody List<Code> codelist) {
int result = codeService.addcode(codelist);
return ResultBean.success();
}
@OperationLog("新增videoalarm")
@PostMapping("/addvideoeRecordType")
public ResultBean VideoeRecordType(@RequestBody VideoeRecordType videoeRecordType) {
//判断存不存在
int resultexixsts= codeService.selectvideoeRecordType(videoeRecordType);
if(resultexixsts>0){
return ResultBean.success("1");
}
int result = codeService.addvideoeRecordType(videoeRecordType);
return ResultBean.success();
}
@OperationLog("更新用户列表") @OperationLog("更新用户列表")
......
...@@ -52,9 +52,9 @@ public class VideoController { ...@@ -52,9 +52,9 @@ public class VideoController {
@OperationLog("新增监控") @OperationLog("新增监控")
@PostMapping("/add") @PostMapping("/add")
@ResponseBody @ResponseBody
public ResultBean add(Video video) { public ResultBean add(Sbtdspsr video) {
video.setCreateTime(sdf.format(new Date())); video.setCjrq(sdf.format(new Date()));
video.setModifyTime(video.getCreateTime()); video.setXgrq(video.getCjrq());
return ResultBean.success(videoService.add(video)); return ResultBean.success(videoService.add(video));
} }
......
package im.zhaojun.system.mapper; package im.zhaojun.system.mapper;
import im.zhaojun.system.model.Code; import im.zhaojun.system.model.Code;
import im.zhaojun.system.model.VideoeRecordType;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -11,6 +12,7 @@ public interface CodeMapper { ...@@ -11,6 +12,7 @@ public interface CodeMapper {
List<Code> selectAllWithKey(); List<Code> selectAllWithKey();
int updatecode(@Param(value = "list") List<Code> code); int updatecode(@Param(value = "list") List<Code> code);
int addcode(@Param(value = "list") List<Code> code);
int updatetime(@Param(value = "list") List<Code> code); int updatetime(@Param(value = "list") List<Code> code);
...@@ -22,4 +24,7 @@ public interface CodeMapper { ...@@ -22,4 +24,7 @@ public interface CodeMapper {
Code selectalarmNum (String keyid); Code selectalarmNum (String keyid);
int addvideoeRecordType(VideoeRecordType videoeRecordType);
int selectvideoeRecordType(VideoeRecordType videoeRecordType);
} }
\ No newline at end of file
...@@ -11,7 +11,7 @@ import java.util.List; ...@@ -11,7 +11,7 @@ import java.util.List;
public interface VideoMapper { public interface VideoMapper {
List<Video> selectByMutiParam(@Param("deptId")String deptId,@Param("videoName")String videoName); List<Video> selectByMutiParam(@Param("deptId")String deptId,@Param("videoName")String videoName);
int insert(Video video); int insert(Sbtdspsr video);
void delete(String id); void delete(String id);
void updateByPrimaryKey(Sbtdspsr video); void updateByPrimaryKey(Sbtdspsr video);
} }
\ No newline at end of file
...@@ -52,6 +52,7 @@ public class TraffpictureParam extends Traffpicture { ...@@ -52,6 +52,7 @@ public class TraffpictureParam extends Traffpicture {
private Integer objh; private Integer objh;
private String tdmc; private String tdmc;
private String xzmc; private String xzmc;
private String metatype;
public String getTdmc() { public String getTdmc() {
return tdmc; return tdmc;
...@@ -270,4 +271,12 @@ public class TraffpictureParam extends Traffpicture { ...@@ -270,4 +271,12 @@ public class TraffpictureParam extends Traffpicture {
public void setRecordtype(String recordtype) { public void setRecordtype(String recordtype) {
this.recordtype = recordtype; this.recordtype = recordtype;
} }
public String getMetatype() {
return metatype;
}
public void setMetatype(String metatype) {
this.metatype = metatype;
}
} }
...@@ -3,6 +3,7 @@ package im.zhaojun.system.service; ...@@ -3,6 +3,7 @@ package im.zhaojun.system.service;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import im.zhaojun.system.mapper.CodeMapper; import im.zhaojun.system.mapper.CodeMapper;
import im.zhaojun.system.model.Code; import im.zhaojun.system.model.Code;
import im.zhaojun.system.model.VideoeRecordType;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -28,6 +29,10 @@ public class CodeService { ...@@ -28,6 +29,10 @@ public class CodeService {
return codeMapper.updatecode(code); return codeMapper.updatecode(code);
} }
public int addcode(List<Code> code){
return codeMapper.addcode(code);
}
public int updatetime(List<Code> code){ public int updatetime(List<Code> code){
return codeMapper.updatetime(code); return codeMapper.updatetime(code);
...@@ -53,5 +58,12 @@ public class CodeService { ...@@ -53,5 +58,12 @@ public class CodeService {
return codeMapper.selectalarmNum(keyid); return codeMapper.selectalarmNum(keyid);
} }
public int addvideoeRecordType(VideoeRecordType code){
return codeMapper.addvideoeRecordType(code);
}
public int selectvideoeRecordType(VideoeRecordType code){
return codeMapper.selectvideoeRecordType(code);
}
} }
\ No newline at end of file
...@@ -32,7 +32,7 @@ public class VideoService { ...@@ -32,7 +32,7 @@ public class VideoService {
} }
@Transactional @Transactional
public Integer add(Video video) { public Integer add(Sbtdspsr video) {
return videoMapper.insert(video); return videoMapper.insert(video);
} }
......
...@@ -26,18 +26,18 @@ spring.datasource.maxOpenPreparedStatements= 20 ...@@ -26,18 +26,18 @@ spring.datasource.maxOpenPreparedStatements= 20
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8 spring.jackson.time-zone=GMT+8
# #
spring.redis.host=127.0.0.1 #spring.redis.host=127.0.0.1
#spring.redis.host=172.16.24.153 spring.redis.host=172.16.24.29
spring.redis.port=6379 spring.redis.port=6379
spring.cache.type=redis spring.cache.type=redis
spring.cache.redis.time-to-live=600000 spring.cache.redis.time-to-live=60000
#spring.redis.password=123456 #spring.redis.password=123456
mybatis.configuration.map-underscore-to-camel-case=true mybatis.configuration.map-underscore-to-camel-case=true
mybatis.mapper-locations=classpath:mapper/*.xml mybatis.mapper-locations=classpath:mapper/*.xml
logging.level.im.zhaojun=debug #logging.level.im.zhaojun=debug
logging.level.org.crazycake.shiro=info #logging.level.org.crazycake.shiro=info
logging.pattern.console=%clr(%d{${LOG_DATEFORMAT_PATTERN:yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:%5p}) %clr(${PID}){magenta} %clr(---){faint} %clr([%15.15t]){faint} [%15.15X{username}] [%15.15X{ip}] %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:%wEx} logging.pattern.console=%clr(%d{${LOG_DATEFORMAT_PATTERN:yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:%5p}) %clr(${PID}){magenta} %clr(---){faint} %clr([%15.15t]){faint} [%15.15X{username}] [%15.15X{ip}] %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:%wEx}
spring.mvc.throw-exception-if-no-handler-found=true spring.mvc.throw-exception-if-no-handler-found=true
......
...@@ -70,5 +70,14 @@ ...@@ -70,5 +70,14 @@
<select id="selectalarmNum" resultMap="BaseResultMap"> <select id="selectalarmNum" resultMap="BaseResultMap">
select * from t_code t where t.type=2 and t.key=#{key,jdbcType=VARCHAR} select * from t_code t where t.type=2 and t.key=#{key,jdbcType=VARCHAR}
</select> </select>
<insert id="addvideoeRecordType">
insert videoerecordtype(id,videoid ,recordtype )
select (select count(*)+1 from videoerecordtype),
#{videoid ,jdbcType=VARCHAR},#{recordtype ,jdbcType=VARCHAR} from dual
</insert>
<select id="selectvideoeRecordType" resultType="java.lang.Integer">
select count(*) from videoerecordtype t where t.videoid=#{videoid ,jdbcType=VARCHAR} and t.recordtype=#{recordtype ,jdbcType=VARCHAR}
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -57,9 +57,9 @@ ...@@ -57,9 +57,9 @@
</if> </if>
order by sbbh order by sbbh
</select> </select>
<insert id="insert" parameterType="im.zhaojun.system.model.Video"> <insert id="insert" parameterType="im.zhaojun.system.model.Sbtdspsr">
insert into video ( id,video_id, video_name, qybh, qymc, x, y, rtsp, factory, chargeman, chargemanlxdh, create_time, modify_time ) insert into sbtdspsr ( xh,sbbh,tdbh, tdmc, xzbh,squrllj, cjrq, xgrq,tdlx)
select max(decode(id,null,0,id))+1,#{videoId}, #{videoName}, #{qybh,jdbcType=INTEGER},#{qymc}, #{x}, #{y},#{rtsp}, #{factory}, #{chargeman},#{chargemanlxdh},#{createTime} ,#{modifyTime} from video select (select count(*)+1 from sbtdspsr),#{sbbh},#{tdbh},#{tdmc}, #{xzbh}, #{ squrllj},#{cjrq} ,#{xgrq},1 from dual
</insert> </insert>
<delete id="delete" parameterType="String"> <delete id="delete" parameterType="String">
......
...@@ -210,20 +210,16 @@ let vue_myjgModal1 = new Vue({ ...@@ -210,20 +210,16 @@ let vue_myjgModal1 = new Vue({
el: '#myjgModal1', el: '#myjgModal1',
data: { data: {
data_s: { data_s: {
videoId: '', sbbh: '',
videoName: '', tdbh: '',
qybh: '', tdmc: '',
qymc: '', squrllj: '',
x: '', xzbh: ''
y: '',
rtsp: '',
factory: '',
chargeman: '',
chargemanlxdh: '',
}, },
}, },
methods: { methods: {
define: function () { define: function () {
vue_myjgModal1.data_s.xzbh=vue_myjgModal1.data_s.qybh;
$.ajax({ $.ajax({
url: "/video/add", url: "/video/add",
dataType: "json", dataType: "json",
......
...@@ -12,7 +12,7 @@ let vue_sjcx = new Vue({ ...@@ -12,7 +12,7 @@ let vue_sjcx = new Vue({
data_sjlxs1: [], data_sjlxs1: [],
count: '', count: '',
deptId: getCookie("bjpt_deptId"), deptId: getCookie("bjpt_deptId"),
fy_select: 20, fy_select: 12,
gd_span: '', gd_span: '',
show_nums: false, show_nums: false,
state_arr: [], state_arr: [],
...@@ -126,24 +126,24 @@ let vue_sjcx = new Vue({ ...@@ -126,24 +126,24 @@ let vue_sjcx = new Vue({
//根据type 查询 详情 //根据type 查询 详情
$.ajax({ $.ajax({
url: "/TrafficStatistics/queryTraffDetail/" + item.id + "/" + item.recordtype, url: "/TrafficStatistics/queryTraffDetail/" + item.id + "/" + item.metatype,
dateType: 'json', dateType: 'json',
type: "GET", type: "GET",
contentType: 'application/json', contentType: 'application/json',
success: function (result) { success: function (result) {
if (result.code == 0) { if (result.code == 0) {
//获得 json 的值,将详细信息展示在界面上 //获得 json 的值,将详细信息展示在界面上
if (item.recordtype == "3") { if (item.metatype == "3") {
vue_sjsstx.dataface = result.data[0]; vue_sjsstx.dataface = result.data[0];
} }
else if (item.recordtype == "1") { else if (item.metatype == "1") {
vue_sjsstx.datapede = result.data[0]; vue_sjsstx.datapede = result.data[0];
} }
else if (item.recordtype == "2") { else if (item.metatype == "2") {
vue_sjsstx.datatraffic = result.data[0]; vue_sjsstx.datatraffic = result.data[0];
} }
else if (item.recordtype == "4") { else if (item.metatype == "4") {
vue_sjsstx.datapeople = result.data[0]; vue_sjsstx.datapeople = result.data[0];
} }
} }
...@@ -151,22 +151,39 @@ let vue_sjcx = new Vue({ ...@@ -151,22 +151,39 @@ let vue_sjcx = new Vue({
$("#myModal").modal("show"); $("#myModal").modal("show");
} }
}); });
if (item.img1path != null) { if (item.imagedata != null && item.imagedata!='') {
vue_sjsstx.img_src_s = '/TrafficStatistics/fielagent?ftpPath=' + item.img1path; if(item.imagedata.indexOf("ftp:")>-1) {
vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.img1path}); vue_sjsstx.img_src_s = '/TrafficStatistics/fielagent?ftpPath=' + item.imagedata;
vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.imagedata});
}else {
vue_sjsstx.img_src_s = 'data:image/jpg;base64,' + item.imagedata;
vue_sjsstx.data_wfsp.push({src: 'data:image/jpg;base64,' + item.imagedata});
}
} }
if (item.img2path != null) { if (item.img2path != null && item.img2path!='') {
if(item.img2path.indexOf("ftp:")>-1) {
vue_sjsstx.img_src_s = '/TrafficStatistics/fielagent?ftpPath=' + item.img2path;
vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.img2path}); vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.img2path});
} }
if (item.img3path != null) { }
if (item.img3path != null && item.img3path!='') {
if(item.img3path.indexOf("ftp:")>-1) {
// vue_sjsstx.img_src_s = '/TrafficStatistics/fielagent?ftpPath=' + item.img3path;
vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.img3path}); vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.img3path});
} }
if (item.img4path != null) { }
if (item.img4path != null && item.img4path!='') {
if(item.img4path.indexOf("ftp:")>-1) {
// vue_sjsstx.img_src_s = '/TrafficStatistics/fielagent?ftpPath=' + item.img4path;
vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.img4path}); vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.img4path});
} }
if (item.img5path != null) { }
if (item.img5path != null && item.img4path!='') {
if(item.img5path.indexOf("ftp:")>-1) {
vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.img5path}); vue_sjsstx.data_wfsp.push({src: '/TrafficStatistics/fielagent?ftpPath=' + item.img5path});
} }
}
} }
, ,
...@@ -503,10 +520,93 @@ let vue_sjsstx = new Vue({ ...@@ -503,10 +520,93 @@ let vue_sjsstx = new Vue({
show_s: false, show_s: false,
img_src_s: '', img_src_s: '',
video_src: '', video_src: '',
dataface: {}, dataface: {
datapede: {}, gender:'',
datatraffic: {}, age:'',
datapeople: {} hasGlasses:'',
hasHat:'',
hasMask:'',
hairstyle:''
},
datapede: {
gender:'',
age:'',
angle:'',
hasBackPack:'',
hasGlasses:'',
hasCarrybag:'',
hasUmbrella:'',
coatlength:'',
coatcolornums:'',
coatColor:'',
trousersLength:'',
trouserscolornums:'',
trousersColor:'',
hasHat:'',
hasMask:'',
hairStyle:'',
coatTexture:'',
trousersTexture:'',
hasTrolley:'',
hasLuggage:'',
luggagecolornums:'',
luggageColor:'',
hasKnife:0,
},
datatraffic: {
vehicleClass:'',
vehiclecolornums:'',
vehicleColor:'',
vehicleBrand:'',
mainbrandname:'',
subbrandname:'',
yearname:'',
hasPlate:'',
plateClass:'',
plateColor:'',
plateNo:'',
plateNeatness:'',
angle:'',
sunvisor:'',
paper:'',
decoration:'',
drop:'',
tag:'',
safetyBelt:{
mainDriver:'',
coDriver:''
},
hasCall:'',
hasCrash:'',
hasDanger:'',
hasSkylight:'',
hasbaggage:'',
hasaerial:'',
},
datapeople: {
type:'',
bikeClass:'',
gender:'',
age:'',
angle:'',
hasBackpack:'',
hasGlasses:'',
hasMask:'',
hasCarrybag:'',
hasUmbrella:'',
coatLength:'',
hasPlate:'',
plateNo:'',
hasHelmet:'',
helmetColor:'',
coatcolornums:'',
coatColor:'',
coatTexture:'',
socialAttribute:'',
enterprise:'',
hasPassenger:'',
}
}, },
methods: { methods: {
sp_qh: function (e) { sp_qh: function (e) {
...@@ -796,7 +896,8 @@ $('[data-gallery=manual]').click(function (e) { ...@@ -796,7 +896,8 @@ $('[data-gallery=manual]').click(function (e) {
new PhotoViewer(items, options); new PhotoViewer(items, options);
}); });
let d = new Date().getTime(); let d = new Date().getTime();
let web_ip = "ws:/127.0.0.1:8089/websocket/" + d; let web_ip = "ws:/172.16.24.29:8089/websocket/" + d;
// let web_ip = "ws:/localhost:8089/websocket/" + d;
let wss = new WebSocket(web_ip); let wss = new WebSocket(web_ip);
wss.onopen = function () { wss.onopen = function () {
console.log("连接成功"); console.log("连接成功");
...@@ -871,10 +972,8 @@ wss.onmessage = function (evt) { ...@@ -871,10 +972,8 @@ wss.onmessage = function (evt) {
else else
{ {
data.imagedata= 'data:image/jpg;base64,' + data.imagedata; data.imagedata= 'data:image/jpg;base64,' + data.imagedata;
} }
} }
wfsp.push({img_src:data.imagedata}); wfsp.push({img_src:data.imagedata});
//右边消息弹出框的id //右边消息弹出框的id
let tss = 'a' + data.createtime; let tss = 'a' + data.createtime;
...@@ -989,24 +1088,8 @@ wss.onmessage = function (evt) { ...@@ -989,24 +1088,8 @@ wss.onmessage = function (evt) {
vue_sjcx.query(1, true); vue_sjcx.query(1, true);
}, 500); }, 500);
} }
// new NoticeJs({
// text: 'Notification message',
// position: 'bottomRight',
// // id: tss,
// id: 11,
// sjlx: bjlx,
// dwmc: jkmc,
// animation: {
// open: 'animated bounceIn',
// close: 'animated bounceOut'
// }
// }).show();
$("#myModal_sjcx").modal("show"); $("#myModal_sjcx").modal("show");
//播放声音
let myMp3 = document.getElementById("audio");
// audio.play();
// }
} }
} }
\ No newline at end of file
...@@ -3,13 +3,15 @@ let vue_sjcx1 = new Vue({ ...@@ -3,13 +3,15 @@ let vue_sjcx1 = new Vue({
data: { data: {
clzt_select: '', clzt_select: '',
data_sjdj: [], data_sjdj: [],
arr_cllx: [],
}, },
methods: { methods: {
add_sjlx: function () { add_sjlx: function () {
$("#myModal2").modal("show"); $("#myModal2").modal("show");
vue_sjcx1.cxsjlx();
$("#dj").selectpicker('deselectAll'); $("#dj").selectpicker('deselectAll');
$("#cllxs").selectpicker('deselectAll'); $("#cllxs").selectpicker('deselectAll');
vue_sjcx1.cxsjlx();
}, },
del:function (item) { del:function (item) {
let arr = []; let arr = [];
...@@ -63,13 +65,11 @@ let vue_sjcx1 = new Vue({ ...@@ -63,13 +65,11 @@ let vue_sjcx1 = new Vue({
alarmlevel: '', alarmlevel: '',
}, },
success: function (result) { success: function (result) {
vue_sjdj.arr_cllx = [];
if (result.code == 0) { if (result.code == 0) {
if (result.data.length > 0) { if (result.data.length > 0) {
vue_sjdj.arr_cllx=[];
result.data.forEach((item, index)=> { result.data.forEach((item, index)=> {
if (item.alarmlevel == null) {
vue_sjdj.arr_cllx.push({id: item.id, value: item.name}); vue_sjdj.arr_cllx.push({id: item.id, value: item.name});
}
}); });
setTimeout(function () { setTimeout(function () {
$("#cllxs").selectpicker('refresh'); $("#cllxs").selectpicker('refresh');
...@@ -114,7 +114,7 @@ let vue_sjdj = new Vue({ ...@@ -114,7 +114,7 @@ let vue_sjdj = new Vue({
success: function (result) { success: function (result) {
if (result.code == 0) { if (result.code == 0) {
vue_sjcx1.query(); vue_sjcx1.query();
info_new("事件类型添加成功"); info_new("事件类型更新成功");
window.setTimeout("$('#info-warning-new').modal('hide')", 2000); window.setTimeout("$('#info-warning-new').modal('hide')", 2000);
$("#myModal2").modal("hide"); $("#myModal2").modal("hide");
} }
...@@ -123,6 +123,8 @@ let vue_sjdj = new Vue({ ...@@ -123,6 +123,8 @@ let vue_sjdj = new Vue({
} }
}, },
mounted(){ mounted(){
} }
}); });
$("#sjlxsss").change(function () { $("#sjlxsss").change(function () {
......
...@@ -83,14 +83,15 @@ ...@@ -83,14 +83,15 @@
</div> </div>
</div> </div>
<div class="modal fade" id="myjgModal1" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal fade" id="myjgModal1_edit" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<form onsubmit="return false;" class="form-horizontal" role="form"> <form onsubmit="return false;" class="form-horizontal" role="form">
<div class="modal-dialog" role="document" style="width: 460px;"> <div class="modal-dialog" role="document" style="width: 460px;">
<div class="modal-content" style="color: #e6eaef;width: 460px;"> <div class="modal-content" style="color: #e6eaef;width: 460px;">
<div class="modal-header" style="background-color: rgb(48, 53, 72);"> <div class="modal-header" style="background-color: rgb(48, 53, 72);">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
aria-hidden="true" style="color: white;">&times;</span></button> aria-hidden="true" style="color: white;">&times;</span></button>
<h6 class="modal-title">新增监控</h6> <h6 class="modal-title">编辑监控</h6>
</div> </div>
<div class="modal-body" style="height:330px;"> <div class="modal-body" style="height:330px;">
<table class="table table-td"> <table class="table table-td">
...@@ -101,29 +102,28 @@ ...@@ -101,29 +102,28 @@
autocomplete="off" required></td> autocomplete="off" required></td>
</tr> </tr>
<tr> <tr>
<td>监控ID:</td> <td>设备编号:</td>
<td><input type="text" name="address" style="width:280px;" class="form-control" v-model="`${data_s.sbbh}_${data_s.tdbh}`" <td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.sbbh"
autocomplete="off" required></td>
</tr>
<tr>
<td>通道编号:</td>
<td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.tdbh"
autocomplete="off" required></td> autocomplete="off" required></td>
</tr> </tr>
<tr> <tr>
<td>RTSP:</td> <td>RTSP:</td>
<td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.squrllj" <td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.squrllj "
autocomplete="off" required></td> autocomplete="off" required></td>
</tr> </tr>
<!--<tr>--> <tr>
<!--<td>所属辖区:</td>--> <td>所属辖区:</td>
<!--<td><input class="easyui-combotree form-control" name="city1" v-model="data_s.qymc"--> <td><input class="easyui-combotree form-control" id="department2" name="city1" v-model="data_s.qymc"
<!--style="width:280px;" disabled/>--> style="width:280px;" disabled/>
<!--</td>-->
<!--</tr>-->
<tr><td>
部门:</td>
<td>
<div class="layui-input-block">
<ul id="deptTree" class="dtree" data-id="0" data-value="请选择部门"></ul>
</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
</div> </div>
...@@ -136,29 +136,27 @@ ...@@ -136,29 +136,27 @@
</div> </div>
</form> </form>
</div> </div>
<div class="modal fade" id="myjgModal1_edit" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> <div class="modal fade" id="myjgModal1" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<form onsubmit="return false;" class="form-horizontal" role="form"> <form onsubmit="return false;" class="form-horizontal" role="form" onkeydown="if(event.keyCode==13){return false;}">
<div class="modal-dialog" role="document" style="width: 460px;"> <div class="modal-dialog" role="document" style="width: 510px;">
<div class="modal-content" style="color: #e6eaef;width: 460px;"> <div class="modal-content" style="color: #e6eaef;width: 510px;">
<div class="modal-header" style="background-color: rgb(48, 53, 72);"> <div class="modal-header" style="background-color: rgb(48, 53, 72);">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
aria-hidden="true" style="color: white;">&times;</span></button> aria-hidden="true" style="color: white;">&times;</span></button>
<h6 class="modal-title">编辑监控</h6> <h6 class="modal-title">新增监控</h6>
</div> </div>
<div class="modal-body" style="height:330px;"> <div class="modal-body" style="height:360px;">
<table class="table table-td"> <table class="table table-td">
<tbody>
<tr> <tr>
<td>监控名称:</td> <td>监控名称:</td>
<td><input type="text" name="name" style="width:280px;" class="form-control" v-model="data_s.tdmc" <td><input type="text" name="name" style="width:280px;" class="form-control" v-model="data_s.tdmc"
autocomplete="off" required></td> ></td>
</tr> </tr>
<tr> <tr>
<td>设备编号:</td> <td>监控编号:</td>
<td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.sbbh" <td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.sbbh"
autocomplete="off" required></td> autocomplete="off" required></td>
</tr> </tr>
<tr> <tr>
<td>通道编号:</td> <td>通道编号:</td>
<td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.tdbh" <td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.tdbh"
...@@ -166,18 +164,25 @@ ...@@ -166,18 +164,25 @@
</tr> </tr>
<tr> <tr>
<td>RTSP:</td> <td>RTSP:</td>
<td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.squrllj " <td><input type="text" name="address" style="width:280px;" class="form-control" v-model="data_s.squrllj"
autocomplete="off" required></td> autocomplete="off" required></td>
</tr> </tr>
<tr> <!--<tr>-->
<td>所属辖区:</td> <!--<td>所属辖区:</td>-->
<td><input class="easyui-combotree form-control" id="department2" name="city1" v-model="data_s.qymc" <!--<td><input class="easyui-combotree form-control" name="city1" v-model="data_s.qymc"-->
style="width:280px;" disabled/> <!--style="width:280px;" disabled/>-->
</td> <!--</td>-->
</tr> <!--</tr>-->
<!--<tr>-->
</tbody> <!--<td>部门:</td>-->
<!--<td>-->
<!--<div class="layui-input-block">-->
<!--<ul id="deptTree" class="dtree" data-id="0" data-value="请选择部门"></ul>-->
<!--</div>-->
<!--</td>-->
<!--</tr>-->
</table> </table>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-sm" data-dismiss="modal" style="color: #2f2f2f;">关闭</button> <button type="button" class="btn btn-sm" data-dismiss="modal" style="color: #2f2f2f;">关闭</button>
...@@ -188,6 +193,11 @@ ...@@ -188,6 +193,11 @@
</div> </div>
</form> </form>
</div> </div>
</body> </body>
<script src="../js/jquery-3.1.1.min.js"></script> <script src="../js/jquery-3.1.1.min.js"></script>
<script th:src="@{/lib/layui/layui.js}"></script> <script th:src="@{/lib/layui/layui.js}"></script>
...@@ -195,8 +205,9 @@ ...@@ -195,8 +205,9 @@
<script src="../bootstrap/js/bootstrap.js"></script> <script src="../bootstrap/js/bootstrap.js"></script>
<script src="../bootstrap/js/bootstrap-treeview.js"></script> <script src="../bootstrap/js/bootstrap-treeview.js"></script>
<script src="../bootstrap/js/bootstrap-paginator.js"></script> <script src="../bootstrap/js/bootstrap-paginator.js"></script>
<script src="../js/util/http_util.js"></script>
<script src="../js/vue.js"></script> <script src="../js/vue.js"></script>
<script src="../js/util/http_util.js"></script>
<script src="../js/jgsbgl/jgsbgl.js"></script> <script src="../js/jgsbgl/jgsbgl.js"></script>
<script> <script>
......
...@@ -8,6 +8,10 @@ ...@@ -8,6 +8,10 @@
<link rel="stylesheet" th:href="@{/css/common.css}"> <link rel="stylesheet" th:href="@{/css/common.css}">
<link rel="stylesheet" th:href="@{/css/animate.min.css}"> <link rel="stylesheet" th:href="@{/css/animate.min.css}">
<link rel="stylesheet" th:href="@{/iconfont/iconfont.css}"> <link rel="stylesheet" th:href="@{/iconfont/iconfont.css}">
<link rel="stylesheet" href="../bootstrap/css/bootstrap.css">
<link rel="stylesheet" href="../bootstrap/css/bootstrap-datetimepicker.css">
<link rel="stylesheet" href="../bootstrap/css/bootstrap-treeview.css">
<link rel="stylesheet" href="../bootstrap/css/bootstrap-switch.min.css">
</head> </head>
<style> <style>
...@@ -57,6 +61,9 @@ ...@@ -57,6 +61,9 @@
</div> </div>
</div> </div>
</div> </div>
</form>
</div>
<div class="modal fade" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> <div class="modal fade" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<form onsubmit="return false;" class="form-horizontal" role="form" onkeydown="if(event.keyCode==13){return false;}"> <form onsubmit="return false;" class="form-horizontal" role="form" onkeydown="if(event.keyCode==13){return false;}">
<div class="modal-dialog" role="document" style="width: 510px;"> <div class="modal-dialog" role="document" style="width: 510px;">
...@@ -64,7 +71,7 @@ ...@@ -64,7 +71,7 @@
<div class="modal-header" style="background-color: rgb(48, 53, 72);"> <div class="modal-header" style="background-color: rgb(48, 53, 72);">
<button type="button" click="add_sjlx()" id="add" class="close" data-dismiss="modal" aria-label="Close"><span <button type="button" click="add_sjlx()" id="add" class="close" data-dismiss="modal" aria-label="Close"><span
aria-hidden="true" style="color: white;">&times;</span></button> aria-hidden="true" style="color: white;">&times;</span></button>
<h6 class="modal-title" >新增监控事件</h6> <h6 class="modal-title" >新增事件</h6>
</div> </div>
<div class="modal-body" style="height:360px;"> <div class="modal-body" style="height:360px;">
...@@ -73,22 +80,27 @@ ...@@ -73,22 +80,27 @@
<div class="col-sm-10"> <div class="col-sm-10">
<select class="form-control" id="recordtype"> <select class="form-control" id="recordtype">
<option th:value="1" > <option th:value="1" >
周界入侵 全目标据结构化
</option> </option>
<option th:value="2" > <option th:value="2" >
人群密度 行人、骑行、车辆检测识别
</option> </option>
<option th:value="3" > <option th:value="3" >
周界越线 人脸检测识别
</option> </option>
<option th:value="4">
非机动车未戴头盔 <option th:value="4" >
单独行人、骑行检测识别
</option> </option>
<option th:value="5" > <option th:value="5" >
非机动车载人 单独车辆检测识别
</option> </option>
<option th:value="6"> <option th:value="6" >
结构化统计 人脸检测识别(不包含大类检测)
</option>
<option th:value="7">
行人、骑行、人脸
</option> </option>
</select> </select>
</div> </div>
...@@ -100,13 +112,11 @@ ...@@ -100,13 +112,11 @@
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-sm" data-dismiss="modal" style="color: #2f2f2f;">关闭</button> <button type="button" class="btn btn-sm" data-dismiss="modal" style="color: #2f2f2f;">关闭</button>
<button type="button submit" class="btn btn-sm btn-info" style="background-color: #368ff3" @click="define">确定 <button type="button submit" class="btn btn-sm btn-info" style="background-color: #368ff3" onclick="define()">确定
</button> </button>
</div> </div>
</div> </div>
</div> </div>
</form>
</div>
<script type="text/html" id="toolbar"> <script type="text/html" id="toolbar">
<shiro:hasPermission name="menu:add"> <shiro:hasPermission name="menu:add">
<button type="button" class="layui-btn layui-btn-xs layui-btn-normal" lay-event="add"> <button type="button" class="layui-btn layui-btn-xs layui-btn-normal" lay-event="add">
...@@ -147,7 +157,7 @@ ...@@ -147,7 +157,7 @@
<script> <script>
var parentMenuId = 0; var parentMenuId = 0;
var table;
// 获取有没有删除, 更新, 和新增的权限. // 获取有没有删除, 更新, 和新增的权限.
var hasMenuDelete = false; var hasMenuDelete = false;
var hasMenuUpdate = false; var hasMenuUpdate = false;
...@@ -168,7 +178,7 @@ ...@@ -168,7 +178,7 @@
}).use(['jquery', 'dtree', 'layer', 'table', 'element', 'tablePlug'], function () { }).use(['jquery', 'dtree', 'layer', 'table', 'element', 'tablePlug'], function () {
var dtree = layui.dtree; var dtree = layui.dtree;
var layer = layui.layer; var layer = layui.layer;
var table = layui.table; table= layui.table;
var tablePlug = layui.tablePlug; var tablePlug = layui.tablePlug;
tablePlug.smartReload.enable(true); tablePlug.smartReload.enable(true);
...@@ -331,32 +341,51 @@ ...@@ -331,32 +341,51 @@
function add(parentId) { function add(parentId) {
// vue_sjcx1.cxsjlx();
$("#myModal2").modal("show"); $("#myModal2").modal("show");
vue_sjcx1.cxsjlx();
} }
});
function define () { function define () {
if ($("#recordtype").val() == '') { if ($("#recordtype").val() == '') {
return; return;
} }
$.ajax({ $.ajax({
url: "/code/update", url: "/code/addvideoeRecordType",
dateType: 'json', dateType: 'json',
type: "POST", type: "POST",
contentType: 'application/json', contentType: 'application/json',
data: JSON.stringify(arr), data: JSON.stringify({
videoid:parentMenuId,
recordtype:$("#recordtype").val()})
,
success: function (result) { success: function (result) {
if (result.code == 0) { if (result.code==0&& result.msg == '1') {
vue_sjcx1.query(); info_new("事件类型已存在");
return;
}
if (result.code==0) {
info_new("事件类型添加成功"); info_new("事件类型添加成功");
window.setTimeout("$('#info-warning-new').modal('hide')", 2000); window.setTimeout("$('#info-warning-new').modal('hide')", 2000);
$("#myModal2").modal("hide"); $("#myModal2").modal("hide");
table.reload("menu-table");
} }
} }
}); });
} }
});
</script> </script>
</body> </body>
<script src="../js/jquery-3.1.1.min.js"></script>
<!--<script src="../js/viewer.min.js"></script>-->
<script src="../js/util/photoviewer.js"></script>
<script src="../js/notice.js"></script>
<script src="../bootstrap/js/bootstrap.js"></script>
<script src="../bootstrap/js/bootstrap-treeview.js"></script>
<script src="../bootstrap/js/bootstrap-switch.min.js"></script>
<script src="../js/echarts.min.js"></script>
<script src="../js/echarts-liquidfill.min.js"></script>
<script src="../js/vue.js"></script>
<script src="../js/util/httputil.js"></script>
</html> </html>
\ No newline at end of file
...@@ -407,24 +407,21 @@ ...@@ -407,24 +407,21 @@
<h6 class="modal-title">详细信息 <h6 class="modal-title">详细信息
</h6> </h6>
</div> </div>
<!--<div class="top-video">--> <div class="top-video">
<!--<video id="my_video_1" class="video-js" controls preload="auto" width="480" height="280"--> <img :src="img_src_s" v-show="!show_s" style="width: 100%;height: 100%;cursor: zoom-in;" data-gallery="manual">
<!--ref='video' v-show="show_s" style="object-fit: fill;width: 100%;height: 100%;" :src="video_src">--> </div>
<!--</video >--> <div class="pub-div" v-show="!show_s">
<!--<img :src="img_src_s" v-show="!show_s" style="width: 100%;height: 100%;cursor: zoom-in;" data-gallery="manual">--> <div class="div-img" style="width: 100%;">
<!--</div>--> <img v-for="(item,index) in data_wfsp" :src="item.src" @click="click_img_bf(item.src)">
<!--<div class="pub-div" v-show="!show_s">--> </div>
<!--<div class="div-img" style="width: 100%;">-->
<!--<img v-for="(item,index) in data_wfsp" :src="item.src" @click="click_img_bf(item.src)">-->
<!--</div>-->
<!--</div>--> </div>
<!--<div class="pub-div">--> <div class="pub-div">
<!--<button type="button" class="btn btn-sm" v-bind:class=class_s @click="sp_qh(1)">事件图片--> <button type="button" class="btn btn-sm" v-bind:class=class_s @click="sp_qh(1)">事件图片
<!--</button>--> </button>
<!--<button type="button" class="btn btn-sm" v-bind:class=class_s1 @click="sp_qh(2)" v-show="data_sj.videopath==null?false:true">事件视频</button>--> <button type="button" class="btn btn-sm" v-bind:class=class_s1 @click="sp_qh(2)" v-show="data_sj.videopath==null?false:true">事件视频</button>
<!--</div>--> </div>
<div style="color: #5d5d5d;" class="pub-div"> <div style="color: #5d5d5d;" class="pub-div">
<div class="gjlx"> <div class="gjlx">
...@@ -432,9 +429,9 @@ ...@@ -432,9 +429,9 @@
</div> </div>
<div class="pub-div-span" v-show="dataface!=null && dataface.id!=null"> <div class="pub-div-span" v-show="dataface!=null && dataface.id!=null">
<span>年龄:</span> <span>年龄:</span>
<span v-text="dataface.age==null?'':dataface.age"></span> <span v-text="dataface==null || dataface.age==null?'':dataface.age"></span>
<span class="leftspan">性别:</span> <span class="leftspan">性别:</span>
<span v-text="dataface.gender"></span> <span v-text="dataface==null || dataface.gender==null?'':dataface.gender"></span>
</div> </div>
<div class="pub-div-span" v-show="dataface!=null && dataface.id!=null"> <div class="pub-div-span" v-show="dataface!=null && dataface.id!=null">
<span>发型:</span> <span>发型:</span>
...@@ -450,9 +447,9 @@ ...@@ -450,9 +447,9 @@
</div> </div>
<div class="pub-div-span" v-show="datapede!=null && datapede.id!=null"> <div class="pub-div-span" v-show="datapede!=null && datapede.id!=null">
<span>年龄:</span> <span>年龄:</span>
<span v-text="datapede.age"></span> <span v-text="datapede==null || datapede.age==null?'':datapede.age"></span>
<span class="leftspan">性别:</span> <span class="leftspan">性别:</span>
<span v-text="datapede.gendera==null?'':datapede.gender"></span> <span v-text="datapede==null || datapede.gendera==null?'':datapede.gender"></span>
</div> </div>
<div class="pub-div-span" v-show="datapede!=null && datapede.id!=null"> <div class="pub-div-span" v-show="datapede!=null && datapede.id!=null">
<span>有无帽子:</span> <span>有无帽子:</span>
...@@ -546,12 +543,12 @@ ...@@ -546,12 +543,12 @@
<span class="leftspan">是否打电话:</span> <span class="leftspan">是否打电话:</span>
<span v-text="datatraffic.hasCall=='1'?'有':'无'"></span> <span v-text="datatraffic.hasCall=='1'?'有':'无'"></span>
</div> </div>
<!--<div class="pub-div-span" v-show="datatraffic.id!=null">--> <div class="pub-div-span" v-show="datatraffic.id!=null">
<!--<span>主驾驶员安全带状态:</span>--> <span>主驾驶员安全带状态:</span>
<!--<span v-text="datatraffic.safetyBelt.mainDriver=='1'?'有系':'未系'"></span>--> <span v-text="datatraffic.safetyBelt.mainDriver=='1'?'有系':'未系'"></span>
<!--<span>副驾驶员安全带状态:</span>--> <span>副驾驶员安全带状态:</span>
<!--<span v-text="datatraffic.safetyBelt.coDriver=='1'?'有系':'未系'"></span>--> <span v-text="datatraffic.safetyBelt.coDriver=='1'?'有系':'未系'"></span>
<!--</div>--> </div>
<div class="pub-div-span" v-show="datatraffic!=null && datatraffic.id!=null"> <div class="pub-div-span" v-show="datatraffic!=null && datatraffic.id!=null">
<span>是否危化车:</span> <span>是否危化车:</span>
...@@ -569,8 +566,8 @@ ...@@ -569,8 +566,8 @@
</div> </div>
<div class="pub-div-span" v-show="datapeople!=null && datapeople.id!=null"> <div class="pub-div-span" v-show="datapeople!=null && datapeople.id!=null">
<span>有无帽子:</span> <!--<span>有无帽子:</span>-->
<span v-text="datapeople.hasHat=='1'?'有':'无'"></span> <!--<span v-text="datapeople.hasHat=='1'?'有':'无'"></span>-->
<span class="leftspan">有无戴口罩:</span> <span class="leftspan">有无戴口罩:</span>
<span v-text="datapeople.hasMask=='1'?'有':'无'"></span> <span v-text="datapeople.hasMask=='1'?'有':'无'"></span>
</div> </div>
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
<div class="div-left"> <div class="div-left">
<div class="div-right"> <div class="div-right">
<div class="div-right-top"> <div class="div-right-top">
<button type="button" class="btn btn-sm pub-btn" @click="add_sjlx()" style="margin-left: 0px">新增事件等级</button> <button type="button" class="btn btn-sm pub-btn" @click="add_sjlx()" style="margin-left: 0px">更新事件等级</button>
<select class="form-control selectpicker" v-model="clzt_select" id="sjlxsss" title="请选择"> <select class="form-control selectpicker" v-model="clzt_select" id="sjlxsss" title="请选择">
<option value="">请选择</option> <option value="">请选择</option>
<option value="1">一级</option> <option value="1">一级</option>
...@@ -92,18 +92,15 @@ ...@@ -92,18 +92,15 @@
<div class="form-group"> <div class="form-group">
<label class="col-sm-3 control-label">最大值</label> <label class="col-sm-3 control-label">最大值</label>
<div class="col-sm-9"> <div class="col-sm-9">
<input type="text" id="maxnumvalue" name="maxnumvalue" v-model="item.maxnumvalue==null?'0':item.maxnumvalue" <input type="text" id="maxnumvalue"
lay-verify="required" lay-vertype="tips" class="layui-input">
autocomplete="off" placeholder="请输入密度检测最大值" class="layui-input">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-sm-3 control-label">告警临界值</label> <label class="col-sm-3 control-label">告警临界值</label>
<div class="col-sm-9"> <div class="col-sm-9">
<input type="text" id="alarmnum" name="alarmnum" v-model="item.alarmnum===null?'0':item.alarmnum" <input type="text" id="alarmnum" name="alarmnum" class="layui-input">
lay-verify="required" lay-vertype="tips"
autocomplete="off" placeholder="请输入密度检测告警临界值" class="layui-input">
</div> </div>
</div> </div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment