Files
SIPAIIS_WMS_JSSW/WebRoot/jsp/visual/wagonBalanceList.jsp

812 lines
33 KiB
Plaintext
Raw Permalink Normal View History

2026-01-16 14:13:44 +08:00
<%@ 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>