软测单独项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

364 lines
14 KiB

layui.config({
base: './'
}).extend({
selectM: '../../layui/layui_extends/selectM',
}).use(['form', 'layer', 'table', 'laytpl', 'laydate', 'upload', 'selectM'], function () {
var form = layui.form,
layer = parent.layer === undefined ? layui.layer : top.layer,
$ = layui.jquery,
laytpl = layui.laytpl,
table = layui.table,
laydate = layui.laydate,
upload = layui.upload,
selectM = layui.selectM;
var userInfo = JSON.parse(window.sessionStorage.getItem("userInfo"));
var OrgId = userInfo.OrgID;
var IS_CAMER_PARAM = userInfo.IS_CAMER_PARAM;
if (IS_CAMER_PARAM == "1") {
$("#camera_btn_div").show();
}
var _orgId = $.getUrlVar("org_id"), _orgName = "";
if (_orgId == "" || _orgId == null) {
_orgId = OrgId;
}
//获取机构信息
$.ajax({
type: "post",
url: "../../ashx/FireOrgHandler.ashx",
async: false,
data: {
Action: "AreaPID",
ORG_ID: _orgId
},
dataType: "json",
success: function (result) {
if ($("#LON").val() == null || $("#LON").val() == "") {
$("#LON").val(result.data.LON); //经度
}
if ($("#LAT").val() == null || $("#LAT").val() == "") {
$("#LAT").val(result.data.LAT); //纬度
}
if ($("#altitude").val() == null || $("#altitude").val() == "") {
$("#altitude").val(result.data.HEI == null ? 0 : result.data.HEI); //高程
}
$("#org_name").val(result.data.ORG_NAME);
_orgName = result.data.ORG_NAME;
}
});
form.verify({
//经度,整数部分为0-90小数部分为0到6位
lat: [/^[-]?[0-9]+\.?[0-9]+?$/ || /^[0-9]+$/, '请输入正确的格式'],
//纬度,整数部分为0-90小数部分为0到6位
lon: [/^[-]?[0-9]+\.?[0-9]+?$/ || /^[0-9]+$/, '请输入正确的格式']
});
var fileInput = $("#upimage");
//选择文件
fileInput.change(function () {
//如果未传入文件则中断
if (fileInput[0].files == undefined) {
return;
}
var fileData = fileInput[0].files[0];
//创建用来读取此文件的对象
var reader = new FileReader();
//使用该对象读取file文件
reader.readAsDataURL(fileData);
//读取文件成功后执行的方法函数
reader.onload = function (e) {
//读取成功后返回的一个参数e,整个的一个进度事件
console.log(e);
//选择所要显示图片的img,要赋值给img的src就是e中target下result里面
//的base64编码格式的地址
document.querySelector("#R_PHOTO").setAttribute("src", e.target.result)
}
})
//启用日期
laydate.render({
elem: '#c_time',
trigger: 'click'
});
var orgStr = "";
$.ajax({
type: "post",
url: "../../ashx/FireOrgHandler.ashx",
data: { Action: "GetDeptTree", OrgId: _orgId },
dataType: "json",
success: function (result) {
result.data.forEach(function (obj, index, arr) {
if (obj.TYPE == "dept") {
orgStr += "<option value='" + obj.ID + "'>" + obj.NAME + "</option>";
}
});
$("#dept_id").append(orgStr);
form.render('select');
}
});
setTimeout(() => {
var c_fun_val = $("#c_fun").val();
var c_fun_val_s = [];
if (c_fun_val != null && c_fun_val != "") {
var c_fun_val_json = JSON.parse(c_fun_val);
for (var i = 0; i < c_fun_val_json.length; i++) {
c_fun_val_s.push(c_fun_val_json[i].DIC_VALUE);
}
}
//初始化
$.ajax({
type: "post",
url: "../../ashx/CommonHandler.ashx",
data: { Action: "getDicList", modtype: "C_FUN_TYPE" },
dataType: "json",
success: function (result) {
tagIns1 = selectM({
elem: '#c_funtext'
, data: result.data
, selected: c_fun_val_s
, max: 5
//, verify: 'required'
, delimiter: ','
, field: { idName: 'DIC_VALUE', titleName: 'DIC_TEXT', company: 'DIC_ORDER' }
});
}
});
}, 1000)
//图片上传
var uploadR = upload.render({
elem: '#PHOTO_btn',
url: '/ashx/CommonHandler.ashx',
size: 500,//限定大小
acceptMime: 'image/jpg', //此版本layui不支持
data: {
Action: 'UploadImg',
fileUrl: 'Upload/Sys/Video/'
},
before: function (obj) {
obj.preview(function (index, file, result) {
if (file.type != "image/jpeg") {
layer.msg('文件格式必须为jpg格式');
flagImageStandard = false;
}
else {
flagImageStandard = true;
}
});
////预读本地文件示例,不支持ie8
//obj.preview(function (index, file, result) {
// if (flagImageStandard) {
// $('#PHOTO').attr('src', result); //图片链接(base64)
// }
// else {
// $('#PHOTO').attr('src', "");
// }
//});
},
done: function (res) {
//如果上传失败
if (res.code > 0) {
return layer.msg('上传失败');
}
//$("#PHOTO_PATH").val(res.data.src);
$('#VIDEO_IMG').attr('src', '/' + res.data.src);
//上传成功
},
error: function () {
//演示失败状态,并实现重传
var demoText = $('#PHOTO_Text');
demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-xs demo-reload">重试</a>');
demoText.find('.demo-reload').on('click', function () {
uploadInst.upload();
});
}
});
form.on("submit(AddEdit)", function (data) {
var cFun = "", EXTEND4;
if (tagIns1 != null ) {
cFun = tagIns1.values.join(',')
EXTEND4 = JSON.stringify(tagIns1.selected);
}
//load提交
var index = layer.msg('数据提交中,请稍候', { icon: 16, time: false, shade: 0.8 });
$.post("../../ashx/ZYCameraHandler.ashx", {
Action: $(".Action").val(),
id: $(".ID").val(), //ID
c_no: $.trim($("#c_no").val()), //设备编号
c_name: $.trim($("#c_name").val()), //设备名称
c_ip: $.trim($("#c_ip").val()), //摄像机ip
nvr_id: $("#nvr_id").val(), //连接nvr编号
nvr_ip: $("#nvr_ip").val(), //nvr ip地址
nvr_port: $("#nvr_port").val(), //nvr控制端口
nvr_user: $("#nvr_user").val(), //nvr登录用户名
nvr_pwd: $("#nvr_pwd").val(), //nvr密码
deviceSerial: $("#deviceSerial").val(), //设备序列号
channelId: $("#channelId").val(), //通道号ID
nvr_channel: $("#nvr_channel").val(), //通道编号
c_fun: cFun,//摄像头功能,逗号分割
EXTEND3: $.trim($("#deviceidentify").val()),//摄像头功能唯一标识
EXTEND4: EXTEND4, //摄像机功能,JSON字符串
c_type: $("#c_type").val(), //摄像机类型
c_model: $("#c_model").val(), //摄像机型号
c_time: $("#c_time").val(), //启用时间
c_guardroom: $("#c_guardroom").val(), //是否为监控室摄像头
ins_addr: $("#ins_addr").val(), //安装位置
org_id: _orgId, //机构id
org_name: _orgName, //机构名称
sta_id: $("#sta_id").val(), //消防站
sta_name: $("#sta_id").find("option:selected").text(), //消防站名称
cpy_area: $("#cpy_area").val(), //行政区域
c_user: $("#c_user").val(), //摄像头用户名
c_pwd: $("#c_pwd").val(), //摄像头密码
c_post: $("#c_post").val(), //摄像头端口号
playurl: $("#playurl").val(), //云播放地址
stopurl: $("#stopurl").val(), //云停放地址
lon: $("#LON").val(), //经度
lat: $("#LAT").val(), //纬度
hei: $("#altitude").val(), //高程
picture: $("#R_PHOTO").attr("src"), //图片
VIDEO_IMG_URL: $('#VIDEO_IMG').attr('src'),//图片URL
c_fac: $("#c_fac").val(), //摄像机厂家
c_state: $("#c_state").val(), //状态
extend2: $("#extend2").val(), //排序
yunmouUnit: $("#yunmouUnit").val(), //云眸判断标志,1: 公司1;2: 公司2;
is_control: $("#is_control").val(), //是否允许云台控制;0:否;1:是;
is_playback: $("#is_playback").val(), //是否允许回放;0:否;1:是;
random: new Date().getTime() //随机参数
}, function (res) {
layer.close(index);
res = $.parseJSON(res);
if (res.code == 1) {
top.layer.msg(res.msg);
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
} else {
layer.close(index);
layer.msg(res.msg);
}
});
layer.close(index);
return false;
})
var flag = false;
$.ajax({
type: "post",
url: "../../ashx/GisBaseHandler.ashx",
data: { Action: "getOrgIdGisBase", OrgId: _orgId },
async: false,
dataType: "json",
success: function (result) {
var data = result.GisBaseData;
if (data.length > 0) {
gisModel = data[0];
flag = true;
}
}
});
//选取坐标
$("#getgps").click(function () {
if (flag) {
var clientWidth = parseInt(document.body.clientWidth * 0.9) + 'px';
var clientHeight = parseInt(document.body.clientHeight * 1) + 'px';
parent.layer.open({
type: 2,
title: '选取坐标',
area: [clientWidth, clientHeight],
content: '../../SysManage/BuildModel/DrawPoints.html?orgId=' + _orgId,
btn: ['确定'],
success: function (layero, index) {
var body = parent.layer.getChildFrame('body', index);
body.find("#points").val($("#LON").val() + "," + $("#LAT").val() + "," + $("#altitude").val()); //ID
},
yes: function (index, layero) {
var body = parent.layer.getChildFrame('body', index);
var point = body.find("#points").val();
if (point == "" || point == null) {
layer.msg("未选取坐标!");
}
var points = point.split(',');
$("#LON").val(points[0]);
$("#LAT").val(points[1]);
$("#altitude").val(points[2]);
parent.layer.close(index); //如果设定了yes回调,需进行手工关闭
}
});
} else {
index = parent.layer.open({
type: 2,
area: ['600px', '520px'],
title: '坐标选取',
skin: 'blue-black',
shade: 0.4,
maxmin: true, //允许全屏最小化
anim: 1,
content: "../../Fire/Map/getgps.html"
});
}
});
$("#camera_btn").click(function () {
var cFac = $("#c_fac").val();
if (cFac == "0") {
parent.layer.open({
type: 2,
title: '选择需要绑定的设备',
area: ["1350px", "740px"],
content: "cloudCamera/yunMouList.html",
success: function (layero, index) {
var body = parent.layer.getChildFrame('body', index);
body.find("deviceSerial").val($("#deviceSerial").val());
body.find("channelId").val($("#channelId").val());
body.find("nvrChannel").val($("#nvr_channel").val());
body.find("playurl").val($("#playurl").val());
},
yes: function (index, layero) {
var body = parent.layer.getChildFrame('body', index);
$("deviceSerial").val(body.find("#deviceSerial").val());
$("channelId").val(body.find("#channelId").val());
$("nvr_channel").val(body.find("#nvrChannel").val());
$("playurl").val(body.find("#playurl").val());
parent.layer.close(index); //如果设定了yes回调,需进行手工关闭
}
});
} else if (cFac == "1") {
parent.layer.open({
type: 2,
title: '选择需要绑定的设备',
area: ["1350px", "740px"],
content: "cloudCamera/yunRuiList.html",
success: function (layero, index) {
var body = parent.layer.getChildFrame('body', index);
body.find("deviceSerial").val($("#deviceSerial").val());
body.find("channelId").val($("#channelId").val());
body.find("nvrChannel").val($("#nvr_channel").val());
body.find("playurl").val($("#playurl").val());
},
yes: function (index, layero) {
var body = parent.layer.getChildFrame('body', index);
$("deviceSerial").val(body.find("#deviceSerial").val());
$("channelId").val(body.find("#channelId").val());
$("nvr_channel").val(body.find("#nvrChannel").val());
$("playurl").val(body.find("#playurl").val());
parent.layer.close(index); //如果设定了yes回调,需进行手工关闭
}
});
} else {
layer.msg("请先选择摄像机厂家!");
}
});
})