var layer;
|
var form;
|
var table;
|
var element;
|
var quantityData;
|
var quantityConf;
|
var player;
|
var recordList;
|
var timer;
|
var batchId;
|
var imgList;
|
$(function () {
|
layui.use(['layer', 'laydate', 'form', 'table', 'element'], function () {
|
element = layui.element;
|
form = layui.form;
|
layer = layui.layer;
|
table = layui.table;
|
form.render();
|
// 监听仓库选择
|
form.on('select(select_depotId)', function (obj) {
|
depotId = $("#depotId").val();
|
|
flushQuantity();
|
|
getCamera();
|
|
flushRecordData();
|
});
|
|
|
// 初始化WebSocket
|
initWS(deptId, bizType, null, userId);
|
});
|
});
|
|
//页面初始化后调整背景图片
|
window.onload = function () {
|
};
|
|
/**
|
* 获取摄像头
|
*/
|
function getCamera() {
|
if (!depotId) {
|
shoTips("请先选择仓库!");
|
return;
|
}
|
var param = {
|
depotId: depotId,
|
companyId: companyId
|
};
|
$.ajax({
|
type: "POST",
|
url: "../../basic/quantity/quantity-camera",
|
dataType: "json",
|
contentType: "application/json;charset=UTF-8",
|
data: JSON.stringify(param),
|
success: function (result) {
|
if (result.code != "0000") {
|
shoTips(result.msg);
|
} else {
|
shoTips("获取摄像头成功……");
|
quantityConf = result.data;
|
// 信息赋值
|
openVideo();
|
}
|
},
|
error: function () {
|
shoTips("根据当前条件获取数据失败!!");
|
}
|
});
|
}
|
|
/**
|
* 播放
|
*/
|
function openVideo() {
|
//console.log(quantityConf);
|
|
var htm = "";
|
if (PlayType.VLC == quantityConf.playType) {
|
htm = "<object type='application/x-vlc-plugin' "
|
+ "events='true' width='100%' height='100%'"
|
+ "pluginspage='http://www.videolan.org'"
|
+ "th:codebase='@{../../static/plugins/vlc/npapi-vlc-2.2.2.tar.xz}'>"
|
+ "<param name='mrl' value='" + quantityConf.mediaAddr + "'/>"
|
+ "<param name='volume' value='50'/>"
|
+ "<param name='autoplay' value='true'/>"
|
+ "<param name='loop' value='false'/>"
|
+ "<param name='fullscreen' value='true'/>"
|
+ "<param name='toolbar' value='false'/>" + "</object>";
|
}
|
if (quantityConf.playAddr) {
|
htm = "<easy-player id='easyPlayer' live=true' show-custom-button='true' auto-play='true' muted='true'"
|
+ " video-url='" + quantityConf.playAddr + "'"
|
+ "></easy-player>";
|
|
//定时器-保活直播
|
if (PlayType.EASY_GBS == quantityConf.playType) {
|
if (timer) clearInterval(timer);
|
timer = setInterval(function () {
|
keepAlive();
|
}, 15 * 1000);
|
}
|
}
|
|
$("#quantity_video").html(htm);
|
}
|
|
// socket信息返回處理
|
function socketOnMessage(pocket) {
|
if (pocket.orderResp == "MSG_SUCCESS") {// 信息解析成功刷新当前数据
|
flushQuantity();
|
}
|
// 表示是执行进度信息
|
if (pocket.orderResp == "ORDER_INPROGRESS") {
|
window.parent.sysNotify(pocket.data.msg);
|
layer.msg(pocket.data.msg, {
|
time: 3000 //20s后自动关闭
|
// ,offset: 'rb'
|
});
|
}
|
};
|
|
// 刷新数据
|
function flushQuantity() {
|
if (!depotId) {
|
shoTips("请先选择仓库!");
|
return;
|
}
|
var param = {
|
depotId: depotId,
|
companyId: companyId
|
};
|
$.ajax({
|
type: "POST",
|
url: "../../basic/quantity/query-data",
|
dataType: "json",
|
contentType: "application/json;charset=UTF-8",
|
data: JSON.stringify(param),
|
success: function (result) {
|
quantityData = result.data;
|
|
//卡片信息赋值
|
renderCardInfo();
|
},
|
error: function () {
|
shoTips("根据当前条件获取数据失败!!");
|
}
|
});
|
};
|
|
|
//获取检测记录信息
|
function flushRecordData() {
|
//清空数据
|
recordList == null;
|
var param = {
|
depotId: depotId,
|
companyId: companyId
|
};
|
$.ajax({
|
type: "POST",
|
url: "../../basic/quantity/query-record",
|
dataType: "json",
|
contentType: "application/json;charset=UTF-8",
|
data: JSON.stringify(param),
|
success: function (result) {
|
recordList = result.data;
|
//渲染检测记录
|
renderRecordInfo();
|
},
|
error: function () {
|
renderRecordInfo();
|
shoTips("未获取到检测记录!!");
|
}
|
});
|
}
|
|
/**
|
* 渲染数据
|
*/
|
function renderRecordInfo() {
|
batchId = null;
|
var html = '';
|
if (recordList && recordList.length > 0) {
|
$.each(recordList, function (index, item) {
|
html += '<tr><td>' + item.weight + '</td>';
|
html += '<td>' + item.bulk + '</td>';
|
html += '<td><span>' + item.receiveDate + '</span></td></tr>';
|
});
|
} else {
|
html += '<tr><td colspan="3">未获取到当前仓库检测记录</td></tr>';
|
}
|
$("#recordList").html(html);
|
}
|
|
|
//卡片信息
|
function renderCardInfo() {
|
if (!quantityData) {
|
return;
|
}
|
|
// 配置仓库卡片信息
|
var depotData = quantityData.depotData;
|
$("#depotTypeName").text(depotData.depotTypeName);
|
$("#storeKeeperName").text(depotData.storeKeeperName == null ? "保管员":item.storeKeeperName);
|
$("#storageReal").text(depotData.storageReal);
|
$("#foodVarietyName").text(depotData.foodVarietyName);
|
$("#foodLevelName").text(depotData.foodLevelName);
|
$("#foodTypeName").text(depotData.foodTypeName);
|
$("#foodYear").text(depotData.foodYear);
|
$("#foodLocation").text(depotData.foodLocation);
|
$("#perWet").text(depotData.perWet);
|
$("#perImpurity").text(depotData.perImpurity);
|
|
batchId = quantityData.batchId;
|
//刷新记录中的抓拍照片
|
flushImg();
|
}
|
|
//查询照片
|
function flushImg() {
|
var param = {
|
batchId: batchId,
|
companyId: companyId
|
};
|
imgList = null;
|
$.ajax({
|
type: "POST",
|
url: "../../basic/quantity/list-snap-img",
|
dataType: 'JSON',
|
contentType: "application/json;charset=UTF-8",
|
data: JSON.stringify(param),
|
success: function (result) {
|
if (result.code != "0000") {
|
imgList = null;
|
shoTips(result.msg);
|
} else {
|
imgList = result.data;
|
}
|
renderImg();
|
},
|
error: function (result) {
|
imgList = result.data;
|
renderImg();
|
shoTips("获取数据失败,请重新尝试!");
|
}
|
});
|
}
|
|
//渲染图片列表
|
function renderImg() {
|
var mainDiv = $("#listImg");
|
mainDiv.empty();
|
var html;
|
if (!imgList || imgList.length == 0) {
|
html = '';
|
html += '<div class="fail-text">未获取到最新检测批次的抓拍图片</div>';
|
$("#listImg").html(html);
|
return;
|
}
|
|
$.each(imgList, function (index, data) {
|
if (index <= 2) {
|
html = '';
|
html += '<div class="layui-col-md4 layui-col-sm6">';
|
html += '<div class="box2-con"><div class="box2-con-d">';
|
if (data.filePath) {
|
//文件流加载图片
|
html += '<img src="../../basic/common/getImg?filePath=' + data.filePath + '"/>';
|
} else {
|
html += '<div style="height: 180px;border: 1px solid #d2d2d2;"><img src="../../static/images/fail.png" style="height: 90px; padding: 30px 0 0 0;"/>';
|
html += '<div style="font-size: 16px;color: #7fb9e6;">图片加载失败</div></div>';
|
}
|
html += '<div class="box2-text">';
|
html += '<span>' + data.createTime + '</span></div></div></div>';
|
mainDiv.append(html);
|
}
|
});
|
}
|
|
/**
|
* 启动开始检测
|
*/
|
function checkStart() {
|
if (!depotId) {
|
shoTips("请先选择仓库!");
|
return;
|
}
|
layer.msg("开始执行……");
|
var data = {
|
'depotId': depotId
|
};
|
$.ajax({
|
type: "POST",
|
url: "../../basic/quantity/check-single",
|
dataType: "json",
|
contentType: "application/json;charset=UTF-8",
|
data: JSON.stringify(data),
|
success: function (result) {
|
if (result.code == "ORDER_SUCCESS") {
|
shoTips("命令发生成功,请等待终端返回结果……");
|
} else {
|
shoTips("命令发送失败:" + result.msg);
|
}
|
},
|
error: function () {
|
shoTips("检测出现异常,执行失败!");
|
}
|
});
|
}
|
|
/**
|
* 停止检测
|
*/
|
function checkStop() {
|
if (!depotId) {
|
shoTips("请先选择仓库!");
|
return;
|
}
|
layer.msg("开始执行……");
|
var data = {
|
'depotId': depotId
|
};
|
$.ajax({
|
type: "POST",
|
url: "../../basic/quantity/check-stop",
|
dataType: "json",
|
contentType: "application/json;charset=UTF-8",
|
data: JSON.stringify(data),
|
success: function (result) {
|
if (result.code == "ORDER_SUCCESS") {
|
shoTips("命令发生成功……");
|
} else {
|
shoTips("命令发送失败:" + result.msg);
|
}
|
},
|
error: function () {
|
shoTips("检测出现异常,执行失败!");
|
}
|
});
|
}
|
|
/**
|
* 关闭警告
|
*/
|
function closeWarn() {
|
if (!depotId) {
|
shoTips("请先选择仓库!");
|
return;
|
}
|
layer.msg("开始执行……");
|
var data = {
|
'depotId': depotId
|
};
|
$.ajax({
|
type: "POST",
|
url: "../../basic/quantity/close-warn",
|
dataType: "json",
|
contentType: "application/json;charset=UTF-8",
|
data: JSON.stringify(data),
|
success: function (result) {
|
if (result.code == "ORDER_SUCCESS") {
|
shoTips("命令发生成功……");
|
} else {
|
shoTips("命令发送失败:" + result.msg);
|
}
|
},
|
error: function () {
|
shoTips("检测出现异常,执行失败!");
|
}
|
});
|
}
|
|
|
//展示三维
|
function show3d() {
|
if (!depotId) {
|
shoTips("请先选择仓库!");
|
return;
|
}
|
var url = "../../basic/quantity/show-3d?depotId=" + depotId;
|
layer.open({
|
type: 2,
|
title: "三维图",
|
area: ['1200px', '640px'],
|
shade: 0,
|
content: url,
|
btn: 0,
|
closeBtn: 2
|
});
|
}
|
|
//查看更多
|
function showMore() {
|
var url = "com.ld.igds.quantity.view.QuantityData.d";
|
window.parent.openTab(url, "检测记录", "QuantityData");
|
};
|
|
function shoTips(msg) {
|
layer.msg(msg,
|
{time: 3000, shift: 5, offset: "rb"},
|
function () {
|
});
|
}
|