Files
SIPAIIS_WMS_JSSW/WebRoot/jsp/visual/wagonBalanceList.jsp
2026-01-16 14:13:44 +08:00

812 lines
33 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ page import="com.sipai.entity.base.ServerObject"%>
<%@ taglib uri="http://www.springsecurity.org/jsp" prefix="security"%>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" />
<title>
<%= ServerObject.atttable.get("TOPTITLE")%>
</title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<!-- 引入daterangepicker-->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/plugins/bootstrap-daterangepicker/daterangepicker.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/plugins/bootstrap-daterangepicker/moment.min.js"
charset="utf-8"></script>
<script type="text/javascript"
src="<%=request.getContextPath()%>/plugins/bootstrap-daterangepicker/daterangepicker.js"
charset="utf-8"></script>
<!--bootstrap-edittable 表格行内编辑 -->
<link rel="stylesheet" href="<%=request.getContextPath()%>/plugins/bootstrap-editable/css/bootstrap-editable.css"/>
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/bootstrap-editable/js/bootstrap-editable.js" charset="utf-8"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/bootstrap-editable/js/bootstrap-table-editable.js" charset="utf-8"></script>
<!-- 引入viewer.js-->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/node_modules/viewer-js/viewer.min.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/node_modules/viewer-js/viewer.min.js"
charset="utf-8"></script>
<style type="text/css">
.modal-full {
width: 100%;
margin: 0;
}
.viewer{
margin: 0;
padding: 0;
min-height: 470px;
}
.viewer>li{
overflow: hidden;
width: calc(100% / 2);
float: left;
cursor: pointer;
padding: 0 1px;
}
.viewer>li>img{
width: 100%;
}
</style>
<script type="text/javascript">
let modelIp = "${modelIp}";
var beginTimeStore = '';
var endTimeStore = '';
function initDate() {
//定义locale汉化插件
beginTimeStore = moment().subtract(30, 'days').format('YYYY-MM-DD') + ' 00:00';
endTimeStore = moment().subtract(0, 'days').format('YYYY-MM-DD') + ' 23:59';
var locale = {
"format": 'YYYY-MM-DD HH:mm',
"separator": " ~ ",
"applyLabel": "确定",
"cancelLabel": "取消",
"fromLabel": "起始时间",
"toLabel": "结束时间'",
"customRangeLabel": "自定义",
"weekLabel": "W",
"daysOfWeek": ["日", "一", "二", "三", "四", "五", "六"],
"monthNames": ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
"firstDay": 1
};
$('#reservationtime').daterangepicker({
"timePicker": true,
"timePicker24Hour": true,
"linkedCalendars": false,
"autoUpdateInput": false,
"timePickerIncrement": 10,
"locale": locale,
//汉化按钮部分
ranges: {
// '今日': [moment(), moment().subtract(-1, 'days')],
'昨日': [moment().subtract(1, 'days'), moment()],
'最近7日': [moment().subtract(6, 'days'), moment().subtract(-1, 'days')],
'本月': [moment().startOf('month'), moment().endOf('month').subtract(-1, 'days')],
'上月': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month').subtract(-1, 'days')]
},
startDate: beginTimeStore,
endDate: endTimeStore
}, function (start, end, label) {
beginTimeStore = start.format(this.locale.format);
endTimeStore = end.format(this.locale.format);
if (!this.startDate) {
this.element.val('');
} else {
this.element.val(this.startDate.format(this.locale.format) + this.locale.separator + this.endDate.format(this.locale.format));
}
});
$('#reservationtime').val(beginTimeStore + locale.separator + endTimeStore);
};
var dosearch = function() {
$("#table").bootstrapTable('refresh');
$("#table_fitting").bootstrapTable('refresh');
};
var companyId = "";
var goodsNames = [];
$(function() {
initDate();
initFun();
goodsList();
});
function goodsList(){
$.ajax({
type: 'GET',
url: ext.contextPath + '/sparepart/goods/getList.do',
dataType: 'json',
data: {
rows: 1000, // 每页要显示的数据条数
page: 1, // 每页显示数据的开始页码
className: "地磅",
},
error: function () {
initFun_fitting();
return false;
},
success: function (data) {
var total = data.total;
if(total>0){
seriesdata = [];
var rows = data.rows;
$.each(rows,function(index,value){
let goods = {value:value.name,text:value.name}
goodsNames.push(goods);
});
}
initFun_fitting();
}
});
}
var initFun = function(){
$("#table").bootstrapTable({ // 对应table标签的id
url: "http://"+modelIp + "/work/weighingData/getList.do", // 获取表格数据的url
contentType : null,
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20,50], // 设置页面可以显示的数据条数
pageSize: 10, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset/params.limit+1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
startDateStr: beginTimeStore,
endDateStr: endTimeStore,
carNumber: $('#search_name').val(),
errorCode: $('#errorCode').val(),
}
},
sortName: 'gross_weight_time', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
/*checkbox: true, // 显示一个勾选框
},{*/
field: 'serialNo', // 返回json数据中的name
title: '流水号', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},{
field: 'grossWeightTime', // 返回json数据中的name
title: '称重日期', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter:function (value, row, index){
return value.substring(0,16);
},
},{
field: 'grossWeight', // 返回json数据中的name
title: '称重', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},{
field: 'IOType', // 返回json数据中的name
title: '进/出', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
editable: {
type: 'select',
title: '进/出',
source:[{value:1,text:'进'},{value:2,text:'出'},{value:3,text:'未知'}],
display: function(value) {
let text = "未知";
if (value==1) {
text = "进";
}
if (value==2){
text = "出";
}
$(this).text(text);
}
},
},{
field: 'carNumber', // 返回json数据中的name
title: '车牌号', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
editable: { //编辑列元素
type: 'text',
title: '车牌号',
validate: function (v) {
if (!v) return '车牌号不能为空';
}
}
},{
field: 'errorCode', // 返回json数据中的name
title: '车牌状态', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter: function (value, row, index){
if(value){
return "未识别";
}else{
return "已识别";
}
}
}, {
field: 'isUse', // 返回json数据中的name
title: '是否拟合', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter: function (value, row, index) {
if (value == '1') {
return "已拟合";
} else {
return "未拟合";
}
}
},{
title: "操作",
align: 'center',
valign: 'middle',
width: 160, // 定义列的宽度单位为像素px
formatter: function (value, row, index) {
var buts= '';
buts+= '<button class="btn btn-default btn-sm" title="图片" onclick="getimg(\'' + row.serialNo + '\')">图片</button>';
buts+= '<button class="btn btn-default btn-sm" title="识别" onclick="getCarNumber(\'' + row.serialNo + '\')">识别</button>';
buts+= '<button class="btn btn-default btn-sm" title="拟合" onclick="fitting(\'' + row.serialNo + '\',\'' + row.IOType + '\')">拟合</button>';
buts='<div class="btn-group" >'+buts+'</div>';
return buts;
}
}
],
//保存列修改后的数据
onEditableSave: function (field, row, oldValue, $el) {
$.post("http://"+modelIp + "/work/weighingData/doUpdate.do", {serialNo:row.serialNo,carNumber:row.carNumber,IOType:row.IOType
}, function(data) {
if (data.res == 1){
$("#table").bootstrapTable('refresh');
}else if(data.res == 0){
showAlert('d','修改失败','mainAlertdiv');
}else{
showAlert('d',data.res,'mainAlertdiv');
}
},'json');
},
onLoadSuccess: function(){ //加载成功时执行
adjustBootstrapTableView("table");
},
onLoadError: function(){ //加载失败时执行
console.info("加载数据失败");
}
});
}
var initFun_fitting = function(){
$("#table_fitting").bootstrapTable({ // 对应table标签的id
url: "http://"+modelIp + "/work/weighingSaveData/getList.do", // 获取表格数据的url
contentType : null,
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20,50], // 设置页面可以显示的数据条数
pageSize: 10, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset/params.limit+1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
startDateStr: beginTimeStore,
endDateStr: endTimeStore,
carNumber: $('#search_name').val(),
goodsName: $('#goodsName').val(),
}
},
sortName: 'i_weight_time', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},{
field: 'goodsName', // 返回json数据中的name
title: '物品名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
editable: {
type: 'select',
title: '物品名称',
source:goodsNames
}
},{
field: 'carNumber', // 返回json数据中的name
title: '车牌号', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},{
field: 'IWeightTime', // 返回json数据中的name
title: '来料时间', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter:function (value, row, index){
return value.substring(0,16);
},
},{
field: 'weight', // 返回json数据中的name
title: '来料重量', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter:function (value, row, index){
return Math.abs(value);
},
},{
field: 'OWeightTime', // 返回json数据中的name
title: '出厂时间', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter:function (value, row, index){
return value.substring(0,16);
},
},{
field: 'carType', // 返回json数据中的name
title: '车辆类型', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
editable: { //编辑列元素
type: 'text',
title: '车辆类型',
validate: function (v) {
if (!v) return '车辆类型不能为空';
}
}
}
],
//保存列修改后的数据
onEditableSave: function (field, row, oldValue, $el) {
$.post("http://"+modelIp + "/work/weighingSaveData/doUpdate.do", {id:row.id,carType:row.carType,goodsName:row.goodsName
}, function(data) {
if (data.res == 1){
$("#table_fitting").bootstrapTable('refresh');
}else if(data.res == 0){
showAlert('d','修改失败','fittingAlertdiv');
}else{
showAlert('d',data.res,'fittingAlertdiv');
}
},'json');
},
onLoadSuccess: function(){ //加载成功时执行
adjustBootstrapTableView("table_fitting");
},
onLoadError: function(){ //加载失败时执行
showAlert('d',"加载数据失败",'fittingAlertdiv');
console.info("加载数据失败");
}
});
}
var viewer = null;
function getimg(serialNo) {
$('#img-serialNo').html(serialNo);
$.ajax({
type: 'GET',
url: "http://"+modelIp + "/work/weighingData/doView.do",
dataType: 'json',
data: {
serialNo: serialNo,
},
error: function () {
showAlert('d','获取照片失败','mainAlertdiv');
},
success: function (datas) {
if(datas.length>0){
var data = datas[0];
/*$("#img13").attr("src", "data:image/jpeg;base64,"+data.weighingPictures13);
$("#img14").attr("src", "data:image/jpeg;base64,"+data.weighingPictures14);*/
let str = '<li><img data-original="data:image/jpeg;base64,'+data.weighingPictures13+'" src="data:image/jpeg;base64,'+data.weighingPictures13+'" alt="图片1"></li>' +
'<li><img data-original="data:image/jpeg;base64,'+data.weighingPictures14+'" src="data:image/jpeg;base64,'+data.weighingPictures14+'" alt="图片2"></li>';
$('#viewer').html(str);
if (viewer) {
viewer.destroy();
}
viewer = new Viewer(document.getElementById('viewer'), {
url: 'data-original',
fullscreen: false,
});
/*$('#viewer').viewer({
url: 'data-original'
});*/
}
stopBubbleDefaultEvent();
openModal('imgModal');
}
});
}
function getCarNumber(serialNo) {
$('#img-serialNo').html(serialNo);
$.ajax({
type: 'GET',
url: "http://"+modelIp + "/work/weighingData/run.do",
dataType: 'json',
data: {
serialNo: serialNo,
},
error: function () {
showAlert('d','识别失败','mainAlertdiv');
},
success: function (data) {
if (data.res == 1){
showAlert('s',data.msg,'mainAlertdiv');
$("#table").bootstrapTable('refresh');
}else {
showAlert('d',data.msg,'mainAlertdiv');
}
}
});
}
function fitting(serialNo,IOType) {
if(IOType==1 || IOType==2){
$("#table_grossWeight").bootstrapTable('destroy'); //加载前先销毁
$("#table_grossWeight").bootstrapTable({ // 对应table标签的id
url: "http://"+modelIp + "/work/weighingData/getList.do", // 获取表格数据的url
contentType : null,
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20,50], // 设置页面可以显示的数据条数
pageSize: 10, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset/params.limit+1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
serialNo: serialNo,
}
},
sortName: 'gross_weight_time', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},{
field: 'serialNo', // 返回json数据中的name
title: '流水号', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},{
field: 'grossWeightTime', // 返回json数据中的name
title: '称重日期', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter:function (value, row, index){
return value.substring(0,16);
},
},{
field: 'grossWeight', // 返回json数据中的name
title: '称重', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},{
field: 'IOType', // 返回json数据中的name
title: '进/出', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter: function (value, row, index){
let text = "未知";
if (value==1) {
text = "进";
}
if (value==2){
text = "出";
}
return text;
}
},{
field: 'carNumber', // 返回json数据中的name
title: '车牌号', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
},{
field: 'errorCode', // 返回json数据中的name
title: '车牌状态', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter: function (value, row, index){
if(value){
return "未识别";
}else{
return "已识别";
}
}
},{
field: 'isUse', // 返回json数据中的name
title: '是否拟合', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter: function (value, row, index){
if(value == '1'){
return "已拟合";
}else{
return "未拟合";
}
}
},{
title: "操作",
align: 'center',
valign: 'middle',
width: 120, // 定义列的宽度单位为像素px
formatter: function (value, row, index) {
var buts= '';
buts+= '<button class="btn btn-default btn-sm" title="选择" onclick="doNewSaveData(\'' + serialNo + '\',\'' + row.serialNo + '\')">' +
'<i class="fa fa-check"></i><span class="hidden-md hidden-lg">选择</span></button>';
buts='<div class="btn-group" >'+buts+'</div>';
return buts;
}
}
],
onLoadSuccess: function(){ //加载成功时执行
adjustBootstrapTableView("table_grossWeight");
},
onLoadError: function(){ //加载失败时执行
showAlert('d',"加载数据失败",'grossAlertdiv');
console.info("加载数据失败");
}
});
stopBubbleDefaultEvent();
openModal('fittingModal');
}else {
showAlert('d','未明确进/出,无法拟合。','mainAlertdiv');
return false;
}
}
function doNewSaveData(serialNo01,serialNo02) {
$.ajax({
type: 'GET',
url: "http://"+modelIp + "/work/weighingData/doNewSaveData.do",
dataType: 'json',
data: {
serialNo01: serialNo01,
serialNo02: serialNo02,
},
error: function () {
showAlert('d','接口错误','grossAlertdiv');
},
success: function (data) {
if(data.res>0){
showAlert('s',data.msg,'grossAlertdiv');
closeModal('subModal');
dosearch();
}else{
showAlert('d',data.msg,'grossAlertdiv');
}
}
});
}
var websocket = null;
//判断当前浏览器是否支持WebSocket
if ('WebSocket' in window) {
websocket = new ReconnectingWebSocket("ws://"+modelIp + "/WeighingSocket/");
} else {
console.info('当前浏览器 Not support websocket')
}
//连接发生错误的回调方法
websocket.onerror = function () {
};
//连接成功建立的回调方法
websocket.onopen = function () {
console.info('地磅websocker开启');
}
//接收到消息的回调方法
websocket.onmessage = function (event) {
let str = '<div class="alert alert-warning alert-dismissible">' +
'<button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>' +
' <h4><i class="icon fa fa-warning"></i> ' + event.data+'<button class="btn btn-danger btn-sm" title="刷新" onclick="doRenovate()">刷新</button></h4>' +
'</div>';
$('#subDiv').html(str);
}
//连接关闭的回调方法
websocket.onclose = function () {
console.info('地磅websocker关闭');
closeWebSocket();
}
//监听窗口关闭事件当窗口关闭时主动去关闭websocket连接防止连接还没断开就关闭窗口server端会抛异常。
window.onbeforeunload = function () {
closeWebSocket();
}
//关闭WebSocket连接
function closeWebSocket() {
websocket.close();
}
function doRenovate(){
location.reload(true);
}
function showErrorCode(){
$('#errorCodeElem').show();
$('#goodsNameElem').hide();
$('#excelElem').hide();
}
function hideErrorCode(){
$('#errorCodeElem').hide();
$('#goodsNameElem').show();
$('#excelElem').show();
}
function doExcel(){
var checkedItems = $("#table_fitting").bootstrapTable('getSelections');
var datas = "";
$.each(checkedItems, function (index, item) {
datas += item.id + ",";
});
if (datas == "") {
swal({
text: "未检测到勾选内容,您确定要全部导出吗?",
dangerMode: true,
buttons: {
cancel: {
text: "取消",
value: null,
visible: true,
className: "btn btn-default btn-sm",
closeModal: true,
},
confirm: {
text: "确定",
value: true,
visible: true,
className: "btn btn-danger btn-sm",
closeModal: true
}
}
}).then(function (willDelete) {
if (willDelete) {
window.open("http://"+modelIp + "/work/weighingSaveData/downloadExcel.do?startDateStr="+beginTimeStore+"&endDateStr="+endTimeStore+"&carNumber="+$('#search_name').val()+"&goodsName="+$('#goodsName').val());
}
});
} else {
window.open("http://"+modelIp + "/work/weighingSaveData/downloadExcel.do?ids="+datas);
}
}
</script>
</head>
<body class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<div class="content-wrapper">
<input type="hidden" name="jsp_id" id="jsp_id" value="waterQualityModel">
<!-- Main content -->
<section class="content container-fluid">
<div id="subDiv"></div>
<div id="subEditDiv"></div>
<div id="subDetailDiv"></div>
<div id="PRDetail4SelectsDiv"></div>
<div id="user4SelectDiv"></div>
<div id="Goods4SelectsDiv"></div>
<div id="fileInputDiv"></div>
<div id="goodsAddDiv"></div>
<div id="equ4SelectDiv"></div>
<div id="fault4SelectDiv"></div>
<div class="nav-tabs-custom">
<ul class="nav nav-tabs">
<li class="active"><a href="#tab_1" data-toggle="tab" onclick="showErrorCode()">称重数据</a></li>
<li><a href="#tab_2" data-toggle="tab" onclick="hideErrorCode()">拟合数据</a></li>
<li class="pull-right">
<a href="#" class="text-muted">
<form id="searchForm">
<div class="input-group pull-left input-group-sm" style="margin-right: 10px" id="errorCodeElem">
<label style="padding-top:5px">识别情况:</label>
<select id="errorCode" class="form-control select2 pull-right" style="width:80px" onchange="dosearch();">
<option selected value="">全部</option>
<option value="0">已识别</option>
<option value="1">未识别</option>
</select>
</div>
<div class="input-group pull-left input-group-sm" style="margin-right: 10px;width: 50px;display: none" id="excelElem">
<div class="input-group-btn">
<button class="btn btn-default" onclick="doExcel();">导出</button>
</div>
</div>
<div class="input-group pull-left input-group-sm" style="margin-right: 10px">
<label style="padding-top:5px">时间范围:</label>
<input type="text" class="form-control pull-right" id="reservationtime" style="width:240px">
</div>
<div class="input-group pull-left input-group-sm" style="width: 250px;display: none" id="goodsNameElem">
<input type="text" id="goodsName" name="goodsName" class="form-control pull-right" placeholder="物品">
</div>
<div class="input-group pull-left input-group-sm" style="width: 250px;">
<input type="text" id="search_name" name="search_name" class="form-control pull-right" placeholder="车牌号">
<div class="input-group-btn">
<button class="btn btn-default" onclick="dosearch();"><i class="fa fa-search"></i></button>
</div>
</div>
</form>
</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="tab_1">
<div id="mainAlertdiv"></div>
<table id="table"></table>
</div>
<!-- /.tab-pane -->
<div class="tab-pane" id="tab_2">
<div id="fittingAlertdiv"></div>
<table id="table_fitting"></table>
</div>
<!-- /.tab-pane -->
</div>
<!-- /.tab-content -->
</div>
<div class="modal fade" id="imgModal">
<div class="modal-dialog modal-full">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">查看图片(流水号:<span id="img-serialNo"></span>)</h4>
</div>
<div class="modal-body">
<!-- 多张图片 -->
<ul id="viewer" class="viewer">
</ul>
<%--<img src="" id="img13" style="width: 100%;">
<img src="" id="img14" style="width: 100%;">--%>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<div class="modal fade" id="fittingModal">
<div class="modal-dialog modal-xlg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">选择拟合数据</h4>
</div>
<div class="modal-body">
<div id="grossAlertdiv"></div>
<table id="table_grossWeight"></table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
</section>
</div>
</div>
</body>
</html>