first commit

This commit is contained in:
2026-01-16 14:13:44 +08:00
commit 903ff8d495
34603 changed files with 8585054 additions and 0 deletions

View File

@ -0,0 +1,215 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="com.sipai.entity.maintenance.MaintenanceDetail"%>
<%request.setAttribute("Wait", MaintenanceDetail.Status_Wait); %>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
var opt=$("#condition").val();
if(opt == '1' || opt == '2'){
if($('#nationCriterionValue').val() == null || $('#nationCriterionValue').val() == ''){
swal('请输入国标值!');
return;
}else if($('#areaCriterionValue').val() == null || $('#areaCriterionValue').val() == ''){
swal('请输入地标值!');
return;
}else if($('#companyCriterionValue').val() == null || $('#companyCriterionValue').val() == ''){
swal('请输入内控值!');
return;
}
}else{
if($('#nationCriterionMin').val() == null || $('#nationCriterionMin').val() == '' || $('#nationCriterionMax').val() == null ||$('#nationCriterionMax').val() == ''){
swal('请输入国标上下限值!');
return;
}else if($('#areaCriterionMin').val() == null || $('#areaCriterionMin').val() == '' || $('#companyCriterionMax').val() == null ||$('#companyCriterionMax').val() == ''){
swal('请输入地标上下限值!');
return;
}else if($('#companyCriterionMin').val() == null || $('#companyCriterionMin').val() == '' || $('#areaCriterionMax').val() == null ||$('#areaCriterionMax').val() == ''){
swal('请输入内控上下限值!');
return;
}
}
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/criterion/dosave.do", $("#subForm").serialize(), function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal')
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
criterionName: '名称不能为空'
}
}
},
}
});
$(function(){
$("#condition").change(function(){
var opt=$("#condition").val();
if(opt == '1' || opt == '2'){
$('#nationCriterionValue').removeAttr("disabled");
$('#areaCriterionValue').removeAttr("disabled");
$('#companyCriterionValue').removeAttr("disabled");
$('#detectionLimit').removeAttr("disabled");
$('#nationCriterionValue').val("0");
$('#areaCriterionValue').val("0");
$('#companyCriterionValue').val("0");
$('#nationCriterionMin').val('');
$('#nationCriterionMax').val('');
$('#areaCriterionMin').val('');
$('#areaCriterionMax').val('');
$('#companyCriterionMax').val('');
$('#companyCriterionMin').val('');
$('#nationCriterionMin').attr("disabled","disabled");
$('#nationCriterionMax').attr("disabled","disabled");
$('#areaCriterionMin').attr("disabled","disabled");
$('#areaCriterionMax').attr("disabled","disabled");
$('#companyCriterionMin').attr("disabled","disabled");
$('#companyCriterionMax').attr("disabled","disabled");
}else{
$('#nationCriterionMin').removeAttr("disabled");
$('#nationCriterionMax').removeAttr("disabled");
$('#areaCriterionMin').removeAttr("disabled");
$('#areaCriterionMax').removeAttr("disabled");
$('#companyCriterionMin').removeAttr("disabled");
$('#companyCriterionMax').removeAttr("disabled");
$('#nationCriterionMin').val("0");
$('#nationCriterionMax').val("0");
$('#areaCriterionMin').val("0");
$('#areaCriterionMax').val("0");
$('#companyCriterionMin').val("0");
$('#companyCriterionMax').val("0");
$('#nationCriterionValue').val('');
$('#areaCriterionValue').val('');
$('#companyCriterionValue').val('');
$('#detectionLimit').val('');
$('#nationCriterionValue').attr("disabled","disabled");
$('#areaCriterionValue').attr("disabled","disabled");
$('#companyCriterionValue').attr("disabled","disabled");
$('#detectionLimit').attr("disabled","disabled");
}
});
})
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<div class="modal-content" style="width: 700px;">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div class="form-group">
<label class="col-sm-2 control-label">*名称</label>
<div class="col-sm-4">
<input class="form-control" type="text" id="criterionName" name ="criterionName" >
</div>
<label class="col-sm-2 control-label">*条件</label>
<div class="col-sm-4">
<select id="condition" name="condition" class="form-control select2">
<option value="2">小于等于</option>
<option value="1">大于等于</option>
<option value="3">区间内</option>
<option value="4">区间外</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">国家标准基准</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="nationCriterionValue" name ="nationCriterionValue" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" value="0">
</div>
<label class="col-sm-2 control-label">最小值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="nationCriterionMin" name ="nationCriterionMin" disabled="disabled" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')">
</div>
<label class="col-sm-2 control-label">最大值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="nationCriterionMax" name ="nationCriterionMax" disabled="disabled" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">地区标准基准</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="areaCriterionValue" name ="areaCriterionValue" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" value="0">
</div>
<label class="col-sm-2 control-label">最小值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="areaCriterionMin" name ="areaCriterionMin" disabled="disabled" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')">
</div>
<label class="col-sm-2 control-label">最大值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="areaCriterionMax" name ="areaCriterionMax" disabled="disabled" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">内控标准基准</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="companyCriterionValue" name ="companyCriterionValue" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" value="0">
</div>
<label class="col-sm-2 control-label">最小值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="companyCriterionMin" name ="companyCriterionMin" disabled="disabled" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')">
</div>
<label class="col-sm-2 control-label">最大值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="companyCriterionMax" name ="companyCriterionMax" disabled="disabled" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">检测限</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="detectionLimit" name ="detectionLimit" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" value="">
</div>
<label class="col-sm-2 control-label">级数指标</label>
<div class="col-sm-2">
<select class="form-control select2" name="isSeries">
<option value='0'>否</option>
<option value='1'>是</option>
</select>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,205 @@
<%@ 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"%>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
var opt=$("#condition").val();
if(opt == '1' || opt == '2'){
if($('#nationCriterionValue').val() == null || $('#nationCriterionValue').val() == ''){
swal('请输入国标值!');
return;
}else if($('#areaCriterionValue').val() == null || $('#areaCriterionValue').val() == ''){
swal('请输入地标值!');
return;
}else if($('#companyCriterionValue').val() == null || $('#companyCriterionValue').val() == ''){
swal('请输入内控值!');
return;
}
}else{
if($('#nationCriterionMin').val() == null || $('#nationCriterionMin').val() == '' || $('#nationCriterionMax').val() == null ||$('#nationCriterionMax').val() == ''){
swal('请输入国标上下限值!');
return;
}else if($('#areaCriterionMin').val() == null || $('#areaCriterionMin').val() == '' || $('#companyCriterionMax').val() == null ||$('#companyCriterionMax').val() == ''){
swal('请输入地标上下限值!');
return;
}else if($('#companyCriterionMin').val() == null || $('#companyCriterionMin').val() == '' || $('#areaCriterionMax').val() == null ||$('#areaCriterionMax').val() == ''){
swal('请输入内控上下限值!');
return;
}
}
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/criterion/doupdate.do", $("#subForm").serialize(), function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal')
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
criterionName: '名称不能为空'
}
}
},
}
});
$(function(){
$("#condition").change(function(){
var opt=$("#condition").val();
if(opt == '1' || opt == '2'){
$('#nationCriterionValue').removeAttr("disabled");
$('#areaCriterionValue').removeAttr("disabled");
$('#companyCriterionValue').removeAttr("disabled");
$('#detectionLimit').removeAttr("disabled");
$('#nationCriterionMin').val('');
$('#nationCriterionMax').val('');
$('#areaCriterionMin').val('');
$('#areaCriterionMax').val('');
$('#companyCriterionMax').val('');
$('#companyCriterionMin').val('');
$('#nationCriterionMin').attr("disabled","disabled");
$('#nationCriterionMax').attr("disabled","disabled");
$('#areaCriterionMin').attr("disabled","disabled");
$('#areaCriterionMax').attr("disabled","disabled");
$('#companyCriterionMin').attr("disabled","disabled");
$('#companyCriterionMax').attr("disabled","disabled");
}else{
$('#nationCriterionMin').removeAttr("disabled");
$('#nationCriterionMax').removeAttr("disabled");
$('#areaCriterionMin').removeAttr("disabled");
$('#areaCriterionMax').removeAttr("disabled");
$('#companyCriterionMin').removeAttr("disabled");
$('#companyCriterionMax').removeAttr("disabled");
$('#nationCriterionValue').val('');
$('#areaCriterionValue').val('');
$('#companyCriterionValue').val('');
$('#detectionLimit').val('');
$('#nationCriterionValue').attr("disabled","disabled");
$('#areaCriterionValue').attr("disabled","disabled");
$('#companyCriterionValue').attr("disabled","disabled");
$('#detectionLimit').attr("disabled","disabled");
}
});
})
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<div class="modal-content" style="width: 700px;">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<input type="hidden" class="form-control" id="id" name ="id" value ="${evaluationCriterion.id}">
<div class="form-group">
<label class="col-sm-2 control-label">*名称</label>
<div class="col-sm-4">
<input class="form-control" type="text" id="criterionName" name ="criterionName" value="${evaluationCriterion.criterionName}">
</div>
<label class="col-sm-2 control-label">*条件</label>
<div class="col-sm-4">
<select id="condition" name="condition" class="form-control select2">
<option value="2" <c:if test="${evaluationCriterion.condition == '2'}"> selected="selected"</c:if>>小于等于</option>
<option value="1" <c:if test="${evaluationCriterion.condition == '1'}"> selected="selected"</c:if>>大于等于</option>
<option value="3" <c:if test="${evaluationCriterion.condition == '3'}"> selected="selected"</c:if>>区间内</option>
<option value="4" <c:if test="${evaluationCriterion.condition == '4'}"> selected="selected"</c:if>>区间外</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">国家标准基准</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="nationCriterionValue" name ="nationCriterionValue" value="${evaluationCriterion.nationCriterionValue}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" <c:if test="${evaluationCriterion.condition == '3' || evaluationCriterion.condition == '4'}">disabled='disabled'</c:if>>
</div>
<label class="col-sm-2 control-label">最小值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="nationCriterionMin" name ="nationCriterionMin" value="${evaluationCriterion.nationCriterionMin}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}">disabled='disabled'</c:if>>
</div>
<label class="col-sm-2 control-label">最大值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="nationCriterionMax" name ="nationCriterionMax" value="${evaluationCriterion.nationCriterionMax}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}">disabled='disabled'</c:if>>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">地区标准基准</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="areaCriterionValue" name ="areaCriterionValue" value="${evaluationCriterion.areaCriterionValue}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" <c:if test="${evaluationCriterion.condition == '3' || evaluationCriterion.condition == '4'}">disabled='disabled'</c:if>>
</div>
<label class="col-sm-2 control-label">最小值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="areaCriterionMin" name ="areaCriterionMin" value="${evaluationCriterion.areaCriterionMin}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}">disabled='disabled'</c:if>>
</div>
<label class="col-sm-2 control-label">最大值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="areaCriterionMax" name ="areaCriterionMax" value="${evaluationCriterion.areaCriterionMax}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}">disabled='disabled'</c:if> >
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">内控标准基准</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="companyCriterionValue" name ="companyCriterionValue" value="${evaluationCriterion.companyCriterionValue}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" <c:if test="${evaluationCriterion.condition == '3' || evaluationCriterion.condition == '4'}">disabled='disabled'</c:if>>
</div>
<label class="col-sm-2 control-label">最小值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="companyCriterionMin" name ="companyCriterionMin" value="${evaluationCriterion.companyCriterionMin}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}">disabled='disabled'</c:if>>
</div>
<label class="col-sm-2 control-label">最大值</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="companyCriterionMax" name ="companyCriterionMax" value="${evaluationCriterion.companyCriterionMax}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}">disabled='disabled'</c:if> >
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">检测限</label>
<div class="col-sm-2">
<input class="form-control" type="text" id="detectionLimit" name ="detectionLimit" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" value="${evaluationCriterion.detectionLimit}" <c:if test="${evaluationCriterion.condition == '3' || evaluationCriterion.condition == '4'}">disabled='disabled'</c:if>>
</div>
<div class="col-sm-2">
<select class="form-control select2" name="isSeries">
<option value='0' <c:if test='${evaluationCriterion.isSeries == "false"}'>selected="selected"</c:if>>否</option>
<option value='1' <c:if test='${evaluationCriterion.isSeries == "true"}'>selected="selected"</c:if>>是</option>
</select>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,251 @@
<%@page import="com.sipai.tools.CommString"%>
<%@ 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"%>
<%@page import="com.sipai.entity.equipment.EquipmentCommStr"%>
<%request.setAttribute("EquipmentLife_Standard_Trade", EquipmentCommStr.EquipmentLife_Standard_Trade); %>
<%request.setAttribute("EquipmentLife_Standard_Supplier", EquipmentCommStr.EquipmentLife_Standard_Supplier); %>
<%request.setAttribute("EquipmentLife_Standard_Enterprise", EquipmentCommStr.EquipmentLife_Standard_Enterprise); %>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<!-- bootstrap switch -->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"
charset="utf-8"></script>
<script type="text/javascript">
//查看设备等级
var viewFun = function (id) {
$.post(ext.contextPath + '/alarm/alarmRecord/doview.do', { id: id }, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
};
var addFun = function () {
$.get(ext.contextPath + '/evaluation/criterion/doAdd.do', function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var editFun = function (id) {
$.get(ext.contextPath + '/evaluation/criterion/doEdit.do', {id:id}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var deletesFun = function() {
var checkedItems = $("#table").bootstrapTable('getSelections');
var datas="";
$.each(checkedItems, function(index, item){
datas+=item.id+",";
});
if(datas==""){
showAlert('d','请先选择记录','mainAlertdiv');
}else{
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) {
$.post(ext.contextPath + '/evaluation/criterion/dodeletes.do', {ids:datas} , function(data) {
if(data>0){
$("#table").bootstrapTable('refresh');
}else{
showAlert('d','删除失败','mainAlertdiv');
}
},'json');
}
});
}
};
//模糊查询列表中的数据
var dosearch = function () {
$("#table").bootstrapTable('refresh');
};
$(function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/evaluation/criterion/getList.do', // 获取表格数据的url
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
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},
{
field: 'criterionName', // 返回json数据中的name
title: '标准名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
}, {
field: 'condition', // 返回json数据中的name
title: '条件', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
formatter: function(value, row, index){
if(row.condition == '1'){
return '大于等于';
}else if(row.condition == '2'){
return '小于等于';
}else if(row.condition == '3'){
return '区间内';
}else{
return '区间外';
}
}
},{
field: 'condition', // 返回json数据中的name
title: '国家标准', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
formatter: function(value, row, index){
if(row.condition == '1' || row.condition == '2'){
return row.nationCriterionValue;
}else if(row.condition == '3'){
return '[' + row.nationCriterionMin + ',' + row.nationCriterionMax + ']';
}else{
return '[-∞,' + row.nationCriterionMin + '],[' + row.nationCriterionMax + ',+∞]';
}
}
}, {
field: 'condition', // 返回json数据中的name
title: '地区标准', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
formatter: function (value, row, index) {
if(row.condition == '1' || row.condition == '2'){
return row.areaCriterionValue;
}else if(row.condition == '3'){
return '[' + row.areaCriterionMin + ',' + row.areaCriterionMax + ']';
}else{
return '[-∞,' + row.areaCriterionMin + '],[' + row.areaCriterionMax + ',+∞]';
}
}
},{
field: 'condition', // 返回json数据中的name
title: '内控值', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
formatter: function (value, row, index) {
if(row.condition == '1' || row.condition == '2'){
return row.companyCriterionValue;
}else if(row.condition == '3'){
return '[' + row.companyCriterionMin + ',' + row.companyCriterionMax + ']';
}else{
return '[-∞,' + row.companyCriterionMin + '],[' + row.companyCriterionMax + ',+∞]';
}
}
},{
field: 'detectionLimit', // 返回json数据中的name
title: '检测限', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},{
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="editFun(\'' + row.id + '\')"><i class="fa fa-edit"></i><span class="hidden-md hidden-lg"> 编辑</span></button>';
buts = '<div class="btn-group" >' + buts + '</div>';
return buts;
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<!-- 引用top -->
<%--<jsp:include page="/jsp/side.jsp"></jsp:include> --%>
<!-- 菜单栏 -->
<%-- <jsp:include page="/jsp/left.jsp"></jsp:include> --%>
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1 id="head_title"></h1>
<ol class="breadcrumb">
<li><a id='head_firstlevel' href="#"><i class="fa fa-dashboard"></i> </a></li>
<!-- <li class="active">Here</li> -->
</ol>
</section>
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div>
<div class="btn-group" style="width: 280px;padding-bottom:10px;">
<button type="button" class="btn btn-default btn-sm" onclick="addFun();"><i class="fa fa-plus"></i> 新增</button>
<button type="button" class="btn btn-default btn-sm" onclick="deletesFun();"><i class="fa fa-trash-o"></i> 删除</button>
</div>
<table id="table"></table>
</div>
</section>
<!-- /.content -->
</div>
<%-- <jsp:include page="/jsp/bottom.jsp"></jsp:include> --%>
<jsp:include page="/jsp/side.jsp"></jsp:include>
</div>
</body>
</html>

View File

@ -0,0 +1,111 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="com.sipai.entity.maintenance.MaintenanceDetail"%>
<%request.setAttribute("Wait", MaintenanceDetail.Status_Wait); %>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/Index/dosave.do", $("#subForm").serialize(), function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
criterionName: '名称不能为空'
}
}
},
}
});
var selectCriterion = function (ids) {
$.get(ext.contextPath + '/evaluation/criterion/selectCriterion.do', function (data) {
$("#subDivSelect").html(data);
openModal('criterion4SelectModal');
});
}
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div id="subDivSelect"></div>
<div class="form-group">
<label class="col-sm-2 control-label">评价名称</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexName" name ="indexName" >
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">评价定义</label>
<div class="col-sm-10">
<!-- <input class="form-control" type="text" id="indexDefinition" name ="indexDefinition" > -->
<textarea rows="3" cols="62" name="indexDefinition"></textarea>
</div>
</div>
<!-- <div class="form-group">
<label class="col-sm-2 control-label">评价频率</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexFrequency" name ="indexFrequency" >
</div>
</div> -->
<div class="form-group">
<label class="col-sm-2 control-label">评价方式</label>
<div class="col-sm-10">
<!-- <input class="form-control" type="text" id="indexFunction" name ="indexFunction" > -->
<textarea rows="3" cols="62" name="indexFunction"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">评价指数</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationCriterionIds" name ="evaluationCriterionIds" >
<textarea rows="10" cols="62" id="evaluationCriterions" onclick="selectCriterion();"></textarea>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,391 @@
<%@ 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"%>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
doreckon();
//$("#subForm").bootstrapValidator('validate');//提交验证
//if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/indexDay/dosave.do", {params:$("#subForm").serialize()}, function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
// }
}
function doreckon() {
var json = JSON.parse('${evs}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var Ci = [];
var Ii_gb = [];
var Ii_db = [];
var Ii_nk = [];
var Iie_gb = [];
var Iie_db = [];
var Iie_nk = [];
for(var i = 0; i < json.length; i++){
var v = $('#key_'+json[i].id).val();
if(v == null || v == ''){
swal('请全部填完!');
return;
}
Ci.push(v);
var b_gb = $('#gb_'+json[i].id).val();
var b_db = $('#db_'+json[i].id).val();
var b_nk = $('#nk_'+json[i].id).val();
var dl = $('#dl_'+json[i].id).val();
var series = $('#series_'+json[i].id).val();
var name = $('#name_'+json[i].id).val();
var f_gb;
var f_db;
var f_nk;
if(json[i].condition == '1' || json[i].condition == '2'){
if(name == '总大肠菌群' || name == '耐热大肠菌群' || name == '大肠埃希氏菌'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1 + 0.5 * (v - 1);
}
}else if(name == '肉眼可见物'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1.5;
}
}else{
if(b_gb <= 0){
f_gb = v > 0 ? v : 0;
}else{
if(series == 'true'){
f_gb = v;
}else{
if(dl != null && dl != ''){
f_gb = (v - dl < Number.EPSILON) ? 0.1 : (v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2));
}else{
//f_gb = (v / b_gb).toFixed(2);
f_gb = v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2);
}
}
}
if(b_db <= 0){
f_db = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_db = v;
}else{
if(dl != null && dl != ''){
f_db = (v - dl < Number.EPSILON) ? 0.1 : (v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2));
}else{
//f_db = (v / b_db).toFixed(2);
f_db = v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2);
}
}
}
if(b_nk <= 0){
f_nk = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_nk = v;
}else{
if(dl != null && dl != ''){
f_nk = (v - dl < Number.EPSILON) ? 0.1 : (v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2));
}else{
//f_nk = (v / b_nk).toFixed(2);
f_nk = v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2);
}
}
}
}
if(series == 'true'){
if(v - f_gb < Number.EPSILON){
Ii_gb.push(v);
}else{
Iie_gb.push(v);
}
if(v - f_db < Number.EPSILON){
Ii_db.push(v);
}else{
Iie_db.push(v);
}
if(v - f_nk < Number.EPSILON){
Ii_nk.push(v);
}else{
Iie_nk.push(v);
}
}else{
if(f_gb > 1){
if(b_gb <= 0){
Iie_gb.push(v);
}else{
Iie_gb.push(Math.abs(v-b_gb) / b_gb +1);
}
}else {
Ii_gb.push(f_gb);
//Si_gb.push(b_gb);
}
if(f_db > 1){
if(b_db <= 0){
Iie_db.push(v);
}else{
Iie_db.push(Math.abs(v-b_db) / b_db +1);
}
}else {
Ii_db.push(f_db);
//Si_db.push(b_db);
}
if(f_nk > 1){
if(b_nk <= 0){
Iie_nk.push(v);
}else{
Iie_nk.push(Math.abs(v-b_nk) / b_nk +1);
}
}else {
Ii_nk.push(f_nk);
//Si_nk.push(b_nk);
}
}
}else if(json[i].condition == '3'){
if(name == '总氯'){
//console.log(Number.parseFloat($('#date').val().substring(5,7)));
if(Number.parseFloat($('#date').val().substring(5,7)) > 4 & Number.parseFloat($('#date').val().substring(5,7)) < 11){//5-10月份
if(v > 0.85 & v < 1.25){
f_gb = f_db = f_nk = 0;
}else if(v >= 0.6 & v <= 0.85){
f_gb = f_db = f_nk = Math.abs(v-0.85) / (0.85 - 0.6);
}else if(v - 1.25 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.25) / (2 - 1.25);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.85) / 0.85 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
}else{//1-4和11-12月份
if(v - 0.8 > Number.EPSILON & v - 1.2 < Number.EPSILON){
f_gb = f_db = f_nk = 0;
}else if(v - 0.6 > Number.EPSILON & v - 0.8 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.8) / (0.8 - 0.6);
}else if(v - 1.2 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.2) / (2 - 1.2);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.8) / 0.8 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
}
if(f_gb - 1 < Number.EPSILON){
Ii_gb.push(f_gb);
Ii_db.push(f_db);
Ii_nk.push(f_nk);
}else{
Iie_gb.push(f_gb);
Iie_db.push(f_db);
Iie_nk.push(f_nk);
}
}else{
f_gb = (v > json[i].nationCriterionMin & v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v > json[i].areaCriterionMin & v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v > json[i].companyCriterionMin & v < json[i].companyCriterionMax) ? 0 : 1;
if(f_gb < 1){
Ii_gb.push(f_gb);
}else {
if(v < json[i].nationCriterionMin){
f_gb = Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1;
Iie_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
}else{
f_gb = Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1;
Iie_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
}
}
if(f_db < 1){
Ii_db.push(f_db);
}else {
if(v < json[i].areaCriterionMin){
f_db = Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1;
Iie_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_db = Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1;
Iie_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
if(f_nk < 1){
Ii_nk.push(f_nk);
}else {
if(v < json[i].companyCriterionMin){
f_nk = Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1;
Iie_nk.push(Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1);
}else{
f_nk = Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1;
Iie_nk.push(Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1);
}
}
}
}else if(json[i].condition == '4'){
f_gb = (v < json[i].nationCriterionMin || v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v < json[i].areaCriterionMin || v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v < json[i].companyCriterionMin || v < json[i].companyCriterionMax) ? 0 : 1;
}
$('#gbfzs_'+json[i].id).val(Number.parseFloat(f_gb).toFixed(2));
$('#dbfzs_'+json[i].id).val(Number.parseFloat(f_db).toFixed(2));
$('#nkfzs_'+json[i].id).val(Number.parseFloat(f_nk).toFixed(2));
// console.log(Iie_db);
// console.log(Ii_db);
// console.log(Ii_gb);
}
var qwi_gb = (Ii_gb.length<=0? 1 : Math.sqrt(sum(Ii_gb) / Ii_gb.length)) * Math.sqrt(_max(Ii_gb)) * product(Iie_gb);
$('#wqiDayNation').val(qwi_gb.toFixed(2));
var qwi_db = (Ii_db.length<=0? 1 : Math.sqrt(sum(Ii_db) / Ii_db.length)) * Math.sqrt(_max(Ii_db)) * product(Iie_db);
$('#wqiDayArea').val(qwi_db.toFixed(2));
var qwi_nk = (Ii_nk.length<=0? 1 : Math.sqrt(sum(Ii_nk) / Ii_nk.length)) * Math.sqrt(_max(Ii_nk)) * product(Iie_nk);
$('#wqiDayCompany').val(qwi_nk.toFixed(2));
}
function _max(arr){
if(arr instanceof Array && arr.length >0){
let max = arr[0];
for (let i = 0; i < arr.length - 1; i++) {
max = max < arr[i+1] ? arr[i+1] : max
}
return max;
}else{
return 1;
}
}
function sum(arr) {
if(arr instanceof Array && arr.length >0){
//console.log(eval(arr.join("+")));
if(eval(arr.join("+")) <= 0){
return 1;
}
return eval(arr.join("+"));
}else{
return 1;
}
};
function product(arr) {
if(arr instanceof Array && arr.length >0) {
var len = arr.length;
var result = len > 0 ? 1 : null;
for(var i = 0; i < arr.length; i++) {
result *= arr[i];
}
if(result <= 0){
return 1;
}
return result;
}
return 1;
}
$('#date').datepicker({
language: 'zh-CN',
autoclose: true,
todayHighlight: true,
format:'yyyy-mm-dd',
}).on('hide',function(e) {
$('#subForm').data('bootstrapValidator')
.updateStatus('date', 'NOT_VALIDATED',null)
.validateField('date');
});
$('#date').datepicker('setDate','${nowDate.substring(0, 10)}');
</script>
<div class="modal fade" id="subModal" >
<div class="modal-dialog" style="width: 1200px;">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div id="subDivSelect"></div>
<table style="width: 100%;">
<tr>
<td colspan="8"><div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control" id="date" name="date" autocomplete="off" style="width: 132px;">
</div></td>
</tr>
<tr>
<td>指标名称</td>
<!-- <td>级数指标</td> -->
<td>检测值</td>
<td>检测限</td>
<td>国家标准</td>
<td>分指数(国标)</td>
<td>地区标准</td>
<td>分指数(地区)</td>
<td>内控标准</td>
<td>分指数(内控)</td>
</tr>
<c:forEach items="${evaluationCriterions}" var="evaluationCriterion">
<tr>
<td><input class="form-control" type="text" id="name_${evaluationCriterion.id}" value ="${evaluationCriterion.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterion.isSeries}" disabled id="series_${evaluationCriterion.id}">
<td><input class="form-control" type="text" name ="key_${evaluationCriterion.id}" id="key_${evaluationCriterion.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="dl_${evaluationCriterion.id}" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}"> value="${evaluationCriterion.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="gb_${evaluationCriterion.id}" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}"> value="${evaluationCriterion.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterion.condition == '3'}"> value="[${evaluationCriterion.nationCriterionMin}-${evaluationCriterion.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="gbfzs_${evaluationCriterion.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="db_${evaluationCriterion.id}" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}"> value="${evaluationCriterion.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterion.condition == '3'}"> value="[${evaluationCriterion.areaCriterionMin}-${evaluationCriterion.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="dbfzs_${evaluationCriterion.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="nk_${evaluationCriterion.id}" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}"> value="${evaluationCriterion.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterion.condition == '3'}"> value="[${evaluationCriterion.companyCriterionMin}-${evaluationCriterion.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="nkfzs_${evaluationCriterion.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="日评指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiDayNation" readonly="readonly" name="wqiDayNation"></td>
<td><input class="form-control" type="text" value ="日评指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiDayArea" readonly="readonly" name="wqiDayArea"></td>
<td><input class="form-control" type="text" value ="日评指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiDayCompany" readonly="readonly" name="wqiDayCompany"></td>
</tr>
</table>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary left" onclick="doreckon()" id="btn_save">计算</button>
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,212 @@
<%@page import="com.sipai.tools.CommString"%>
<%@ 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"%>
<%@page import="com.sipai.entity.equipment.EquipmentCommStr"%>
<%request.setAttribute("EquipmentLife_Standard_Trade", EquipmentCommStr.EquipmentLife_Standard_Trade); %>
<%request.setAttribute("EquipmentLife_Standard_Supplier", EquipmentCommStr.EquipmentLife_Standard_Supplier); %>
<%request.setAttribute("EquipmentLife_Standard_Enterprise", EquipmentCommStr.EquipmentLife_Standard_Enterprise); %>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<!-- bootstrap switch -->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"
charset="utf-8"></script>
<script type="text/javascript">
//查看设备等级
var viewFun = function (id) {
$.post(ext.contextPath + '/evaluation/indexDay/doview.do', { id: id }, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
};
var addFun = function () {
$.get(ext.contextPath + '/evaluation/indexDay/doAdd.do', function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var editFun = function (id) {
$.get(ext.contextPath + '/evaluation/Index/doedit.do', {id:id}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var deletesFun = function() {
var checkedItems = $("#table").bootstrapTable('getSelections');
var datas="";
$.each(checkedItems, function(index, item){
datas+=item.id+",";
});
if(datas==""){
showAlert('d','请先选择记录','mainAlertdiv');
}else{
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) {
$.post(ext.contextPath + '/evaluation/indexDay/dodeletes.do', {ids:datas} , function(data) {
if(data>0){
$("#table").bootstrapTable('refresh');
}else{
showAlert('d','删除失败','mainAlertdiv');
}
},'json');
}
});
}
};
//模糊查询列表中的数据
var dosearch = function () {
$("#table").bootstrapTable('refresh');
};
$(function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/evaluation/indexDay/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 50, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},
{
field: 'date', // 返回json数据中的name
title: '指标名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter: function(value, row, index){
if(value != null){
return '日评价指数('+value.substring(0,10)+')';
}
}
}, {
field: 'wqiDayNation', // 返回json数据中的name
title: '日评指数(国标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiDayArea', // 返回json数据中的name
title: '日评指数(地标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiDayCompany', // 返回json数据中的name
title: '日评指数(内控)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
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="viewFun(\'' + row.id + '\')"><i class="fa fa-edit"></i><span class="hidden-md hidden-lg"> 修改</span></button>';
buts = '<div class="btn-group" >' + buts + '</div>';
return buts;
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onDblClickRow:function(row){
viewFun(row.id);
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<!-- 引用top -->
<%--<jsp:include page="/jsp/side.jsp"></jsp:include> --%>
<!-- 菜单栏 -->
<%-- <jsp:include page="/jsp/left.jsp"></jsp:include> --%>
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1 id="head_title"></h1>
<ol class="breadcrumb">
<li><a id='head_firstlevel' href="#"><i class="fa fa-dashboard"></i> </a></li>
<!-- <li class="active">Here</li> -->
</ol>
</section>
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div>
<div class="btn-group" style="width: 280px;padding-bottom:10px;">
<button type="button" class="btn btn-default btn-sm" onclick="addFun();"><i class="fa fa-plus"></i> 新增</button>
<button type="button" class="btn btn-default btn-sm" onclick="deletesFun();"><i class="fa fa-trash-o"></i> 删除</button>
</div>
<table id="table"></table>
</div>
</section>
<!-- /.content -->
</div>
<%-- <jsp:include page="/jsp/bottom.jsp"></jsp:include> --%>
<jsp:include page="/jsp/side.jsp"></jsp:include>
</div>
</body>
</html>

View File

@ -0,0 +1,410 @@
<%@ 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"%>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
doreckon();
//$("#subForm").bootstrapValidator('validate');//提交验证
//if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/indexDay/dosave.do", {params:$("#subForm").serialize()}, function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
// }
}
$(function(){
var criterionValue = '${criterionValue}';
var json = JSON.parse(criterionValue);
for(var key in json){
var value = json[key];
$('#key_'+key).val(value);
};
doreckon();
})
function doreckon() {
var json = JSON.parse('${evs}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var Ci = [];
var Ii_gb = [];
var Ii_db = [];
var Ii_nk = [];
var Iie_gb = [];
var Iie_db = [];
var Iie_nk = [];
for(var i = 0; i < json.length; i++){
console.log(json[i].id);
var v = $('#key_'+json[i].id).val();
if(v == null || v == ''){
swal('请全部填完!');
return;
}
Ci.push(v);
var b_gb = $('#gb_'+json[i].id).val();
var b_db = $('#db_'+json[i].id).val();
var b_nk = $('#nk_'+json[i].id).val();
var dl = $('#dl_'+json[i].id).val();
var series = $('#series_'+json[i].id).val();
var name = $('#name_'+json[i].id).val();
var f_gb;
var f_db;
var f_nk;
if(json[i].condition == '1' || json[i].condition == '2'){
if(name == '总大肠菌群' || name == '耐热大肠菌群' || name == '大肠埃希氏菌'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1 + 0.5 * (v - 1);
}
}else if(name == '肉眼可见物'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1.5;
}
}else{
if(b_gb <= 0){
f_gb = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_gb = v;
}else{
if(dl != null && dl != ''){
f_gb = (v - dl < Number.EPSILON) ? 0.1 : (v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2));
}else{
//f_gb = (v / b_gb).toFixed(2);
f_gb = v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2);
}
}
}
if(b_db <= 0){
f_db = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_db = v;
}else{
if(dl != null && dl != ''){
f_db = (v - dl < Number.EPSILON) ? 0.1 : (v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2));
}else{
//f_db = (v / b_db).toFixed(2);
f_db = v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2);
}
}
}
if(b_nk <= 0){
f_nk = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_nk = v;
}else{
if(dl != null && dl != ''){
f_nk = (v - dl < Number.EPSILON) ? 0.1 : (v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2));
}else{
//f_nk = (v / b_nk).toFixed(2);
f_nk = v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2);
}
}
}
}
if(series == 'true'){
if(v - f_gb < Number.EPSILON){
Ii_gb.push(v);
}else{
Iie_gb.push(v);
}
if(v - f_db < Number.EPSILON){
Ii_db.push(v);
}else{
Iie_db.push(v);
}
if(v - f_nk < Number.EPSILON){
Ii_nk.push(v);
}else{
Iie_nk.push(v);
}
}else{
if(f_gb > 1){
if(b_gb <= 0){
Iie_gb.push(v);
}else{
Iie_gb.push(Math.abs(v-b_gb) / b_gb +1);
}
}else {
Ii_gb.push(f_gb);
//Si_gb.push(b_gb);
}
if(f_db > 1){
if(b_db <= 0){
Iie_db.push(v);
}else{
Iie_db.push(Math.abs(v-b_db) / b_db +1);
}
}else {
Ii_db.push(f_db);
//Si_db.push(b_db);
}
if(f_nk > 1){
if(b_nk <= 0){
Iie_nk.push(v);
}else{
Iie_nk.push(Math.abs(v-b_nk) / b_nk +1);
}
}else {
Ii_nk.push(f_nk);
//Si_nk.push(b_nk);
}
}
}else if(json[i].condition == '3'){
if(name == '总氯'){
//console.log(Number.parseFloat($('#date').val().substring(5,7)));
if(Number.parseFloat($('#date').val().substring(5,7)) > 4 & Number.parseFloat($('#date').val().substring(5,7)) < 11){//5-10月份
if(v > 0.85 & v < 1.25){
f_gb = f_db = f_nk = 0;
}else if(v >= 0.6 & v <= 0.85){
f_gb = f_db = f_nk = Math.abs(v-0.85) / (0.85 - 0.6);
}else if(v - 1.25 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.25) / (2 - 1.25);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.85) / 0.85 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
}else{//1-4和11-12月份
if(v - 0.8 > Number.EPSILON & v - 1.2 < Number.EPSILON){
f_gb = f_db = f_nk = 0;
}else if(v - 0.6 > Number.EPSILON & v - 0.8 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.8) / (0.8 - 0.6);
}else if(v - 1.2 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.2) / (2 - 1.2);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.8) / 0.8 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
}
if(f_gb - 1 < Number.EPSILON){
Ii_gb.push(f_gb);
Ii_db.push(f_db);
Ii_nk.push(f_nk);
}else{
Iie_gb.push(f_gb);
Iie_db.push(f_db);
Iie_nk.push(f_nk);
}
}else{
f_gb = (v > json[i].nationCriterionMin & v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v > json[i].areaCriterionMin & v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v > json[i].companyCriterionMin & v < json[i].companyCriterionMax) ? 0 : 1;
if(f_gb < 1){
Ii_gb.push(f_gb);
}else {
if(v < json[i].nationCriterionMin){
f_gb = Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1;
Iie_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
}else{
f_gb = Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1;
Iie_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
}
}
if(f_db < 1){
Ii_db.push(f_db);
}else {
if(v < json[i].areaCriterionMin){
f_db = Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1;
Iie_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_db = Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1;
Iie_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
if(f_nk < 1){
Ii_nk.push(f_nk);
}else {
if(v < json[i].areaCriterionMin){
f_nk = Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1;
Iie_nk.push(Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1);
}else{
f_nk = Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1;
Iie_nk.push(Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1);
}
}
}
}else if(json[i].condition == '4'){
f_gb = (v < json[i].nationCriterionMin || v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v < json[i].areaCriterionMin || v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v < json[i].companyCriterionMin || v < json[i].companyCriterionMax) ? 0 : 1;
}
$('#gbfzs_'+json[i].id).val(Number.parseFloat(f_gb).toFixed(2));
$('#dbfzs_'+json[i].id).val(Number.parseFloat(f_db).toFixed(2));
$('#nkfzs_'+json[i].id).val(Number.parseFloat(f_nk).toFixed(2));
console.log(Iie_db);
console.log(Ii_db);
console.log(Ii_gb);
}
var qwi_gb = (Ii_gb.length<=0? 1 : Math.sqrt(sum(Ii_gb) / Ii_gb.length)) * Math.sqrt(_max(Ii_gb)) * product(Iie_gb);
$('#wqiDayNation').val(qwi_gb.toFixed(2));
var qwi_db = (Ii_db.length<=0? 1 : Math.sqrt(sum(Ii_db) / Ii_db.length)) * Math.sqrt(_max(Ii_db)) * product(Iie_db);
$('#wqiDayArea').val(qwi_db.toFixed(2));
var qwi_nk = (Ii_nk.length<=0? 1 : Math.sqrt(sum(Ii_nk) / Ii_nk.length)) * Math.sqrt(_max(Ii_nk)) * product(Iie_nk);
$('#wqiDayCompany').val(qwi_nk.toFixed(2));
}
function _max(arr){
if(arr instanceof Array && arr.length >0){
let max = arr[0];
for (let i = 0; i < arr.length - 1; i++) {
max = max < arr[i+1] ? arr[i+1] : max
}
return max;
}else{
return 1;
}
// if(arr instanceof Array && arr.length >0){
// if(Math.sqrt(Math.max.apply(null, arr)) <= 0){
// return 1;
// }else{
// return Math.sqrt(Math.max.apply(null, arr));
// }
// }else{
// return 1;
// }
}
function sum(arr) {
if(arr instanceof Array && arr.length >0){
//console.log(eval(arr.join("+")));
if(eval(arr.join("+")) <= 0){
return 1;
}
return eval(arr.join("+"));
}else{
return 1;
}
};
function product(arr) {
if(arr instanceof Array && arr.length >0) {
var len = arr.length;
var result = len > 0 ? 1 : null;
for(var i = 0; i < arr.length; i++) {
result *= arr[i];
}
if(result <= 0){
return 1;
}
return result;
}
return 1;
}
$('#date').datepicker({
language: 'zh-CN',
autoclose: true,
todayHighlight: true,
format:'yyyy-mm-dd',
}).on('hide',function(e) {
$('#subForm').data('bootstrapValidator')
.updateStatus('date', 'NOT_VALIDATED',null)
.validateField('date');
});
</script>
<div class="modal fade" id="subModal" >
<div class="modal-dialog" style="width: 1200px;">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div id="subDivSelect"></div>
<input type="hidden" name="id" value="${id}">
<table style="width: 100%;">
<tr>
<td colspan="8"><div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control" id="date" name="date" value="${date}" autocomplete="off" style="width: 132px;">
</div></td>
</tr>
<tr>
<td>指标名称</td>
<td>检测值</td>
<td>检测限</td>
<td>国家标准</td>
<td>分指数(国标)</td>
<td>地区标准</td>
<td>分指数(地区)</td>
<td>内控标准</td>
<td>分指数(内控)</td>
</tr>
<c:forEach items="${evaluationCriterions}" var="evaluationCriterion">
<tr>
<td><input class="form-control" type="text" id="name_${evaluationCriterion.id}" value ="${evaluationCriterion.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterion.isSeries}" disabled id="series_${evaluationCriterion.id}">
<td><input class="form-control" type="text" name ="key_${evaluationCriterion.id}" id="key_${evaluationCriterion.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="dl_${evaluationCriterion.id}" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}"> value="${evaluationCriterion.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="gb_${evaluationCriterion.id}" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}"> value="${evaluationCriterion.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterion.condition == '3'}"> value="[${evaluationCriterion.nationCriterionMin}-${evaluationCriterion.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="gbfzs_${evaluationCriterion.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="db_${evaluationCriterion.id}" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}"> value="${evaluationCriterion.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterion.condition == '3'}"> value="[${evaluationCriterion.areaCriterionMin}-${evaluationCriterion.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="dbfzs_${evaluationCriterion.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="nk_${evaluationCriterion.id}" <c:if test="${evaluationCriterion.condition == '1' || evaluationCriterion.condition == '2'}"> value="${evaluationCriterion.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterion.condition == '3'}"> value="[${evaluationCriterion.companyCriterionMin}-${evaluationCriterion.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="nkfzs_${evaluationCriterion.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="日评指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiDayNation" readonly="readonly" name="wqiDayNation"></td>
<td><input class="form-control" type="text" value ="日评指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiDayArea" readonly="readonly" name="wqiDayArea"></td>
<td><input class="form-control" type="text" value ="日评指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiDayCompany" readonly="readonly" name="wqiDayCompany"></td>
</tr>
</table>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary left" onclick="doreckon()" id="btn_save">计算</button>
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,111 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="com.sipai.entity.maintenance.MaintenanceDetail"%>
<%request.setAttribute("Wait", MaintenanceDetail.Status_Wait); %>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/Index/doupdate.do", $("#subForm").serialize(), function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
criterionName: '名称不能为空'
}
}
},
}
});
var selectCriterion = function () {
$.get(ext.contextPath + '/evaluation/criterion/selectCriterion.do',{ids:$('#evaluationCriterionIds').val()}, function (data) {
$("#subDivSelect").html(data);
openModal('criterion4SelectModal');
});
}
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<input type="hidden" class="form-control" id="id" name ="id" value ="${evaluationIndex.id}">
<div class="form-group">
<label class="col-sm-2 control-label">评价名称</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexName" name ="indexName" value="${evaluationIndex.indexName}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">评价定义</label>
<div class="col-sm-10">
<!-- <input class="form-control" type="text" id="indexDefinition" name ="indexDefinition" > -->
<textarea rows="3" cols="62" name="indexDefinition">${evaluationIndex.indexDefinition}</textarea>
</div>
</div>
<!-- <div class="form-group">
<label class="col-sm-2 control-label">评价频率</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexFrequency" name ="indexFrequency" value="${evaluationIndex.indexFrequency}">
</div>
</div> -->
<div class="form-group">
<label class="col-sm-2 control-label">评价方式</label>
<div class="col-sm-10">
<!-- <input class="form-control" type="text" id="indexFunction" name ="indexFunction" > -->
<textarea rows="3" cols="62" name="indexFunction">${evaluationIndex.indexFunction}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">评价指数</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationCriterionIds" name ="evaluationCriterionIds" value="${evaluationIndex.evaluationCriterionIds}">
<textarea rows="3" cols="62" id="evaluationCriterions" onclick="selectCriterion();">${evs}</textarea>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,204 @@
<%@page import="com.sipai.tools.CommString"%>
<%@ 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"%>
<%@page import="com.sipai.entity.equipment.EquipmentCommStr"%>
<%request.setAttribute("EquipmentLife_Standard_Trade", EquipmentCommStr.EquipmentLife_Standard_Trade); %>
<%request.setAttribute("EquipmentLife_Standard_Supplier", EquipmentCommStr.EquipmentLife_Standard_Supplier); %>
<%request.setAttribute("EquipmentLife_Standard_Enterprise", EquipmentCommStr.EquipmentLife_Standard_Enterprise); %>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<!-- bootstrap switch -->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"
charset="utf-8"></script>
<script type="text/javascript">
//查看设备等级
var viewFun = function (id) {
$.post(ext.contextPath + '/alarm/alarmRecord/doview.do', { id: id }, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
};
var addFun = function () {
$.get(ext.contextPath + '/evaluation/Index/doAdd.do', function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var editFun = function (id) {
$.get(ext.contextPath + '/evaluation/Index/doedit.do', {id:id}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var deletesFun = function() {
var checkedItems = $("#table").bootstrapTable('getSelections');
var datas="";
$.each(checkedItems, function(index, item){
datas+=item.id+",";
});
if(datas==""){
showAlert('d','请先选择记录','mainAlertdiv');
}else{
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) {
$.post(ext.contextPath + '/evaluation/Index/dodeletes.do', {ids:datas} , function(data) {
if(data>0){
$("#table").bootstrapTable('refresh');
}else{
showAlert('d','删除失败','mainAlertdiv');
}
},'json');
}
});
}
};
//模糊查询列表中的数据
var dosearch = function () {
$("#table").bootstrapTable('refresh');
};
$(function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/evaluation/Index/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 50, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},
{
field: 'indexName', // 返回json数据中的name
title: '指标名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
}, {
field: 'indexDefinition', // 返回json数据中的name
title: '定义', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: 'indexFunction', // 返回json数据中的name
title: '评价方法', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationCriterions', // 返回json数据中的name
title: '指数标准', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
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="editFun(\'' + row.id + '\')"><i class="fa fa-edit"></i><span class="hidden-md hidden-lg"> 编辑</span></button>';
buts = '<div class="btn-group" >' + buts + '</div>';
return buts;
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<!-- 引用top -->
<%--<jsp:include page="/jsp/side.jsp"></jsp:include> --%>
<!-- 菜单栏 -->
<%-- <jsp:include page="/jsp/left.jsp"></jsp:include> --%>
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1 id="head_title"></h1>
<ol class="breadcrumb">
<li><a id='head_firstlevel' href="#"><i class="fa fa-dashboard"></i> </a></li>
<!-- <li class="active">Here</li> -->
</ol>
</section>
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div>
<div class="btn-group" style="width: 280px;padding-bottom:10px;">
<button type="button" class="btn btn-default btn-sm" onclick="addFun();"><i class="fa fa-plus"></i> 新增</button>
<button type="button" class="btn btn-default btn-sm" onclick="deletesFun();"><i class="fa fa-trash-o"></i> 删除</button>
</div>
<table id="table"></table>
</div>
</section>
<!-- /.content -->
</div>
<%-- <jsp:include page="/jsp/bottom.jsp"></jsp:include> --%>
<jsp:include page="/jsp/side.jsp"></jsp:include>
</div>
</body>
</html>

View File

@ -0,0 +1,130 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="com.sipai.entity.maintenance.MaintenanceDetail"%>
<%request.setAttribute("Wait", MaintenanceDetail.Status_Wait); %>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/IndexM/dosave.do", $("#subForm").serialize(), function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
criterionName: '名称不能为空'
}
}
},
}
});
var selectCriterion = function (pid,pname) {
$.get(ext.contextPath + '/evaluation/criterion/selectCriterion.do',{pid:pid,pname:pname}, function (data) {
$("#subDivSelect").html(data);
openModal('criterion4SelectModal');
});
}
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div class="form-group">
<label class="col-sm-2 control-label">评价名称</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexName" name ="indexName" >
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">评价定义</label>
<div class="col-sm-10">
<!-- <input class="form-control" type="text" id="indexDefinition" name ="indexDefinition" > -->
<textarea rows="3" cols="62" name="indexDefinition"></textarea>
</div>
</div>
<!-- <div class="form-group">
<label class="col-sm-2 control-label">评价频率</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexFrequency" name ="indexFrequency" >
</div>
</div> -->
<div class="form-group">
<label class="col-sm-2 control-label">评价方式</label>
<div class="col-sm-10">
<!-- <input class="form-control" type="text" id="indexFunction" name ="indexFunction" > -->
<textarea rows="3" cols="62" name="indexFunction"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">细菌学指标</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationcriterionBacteriologyIds" name ="evaluationcriterionBacteriologyIds" >
<textarea rows="3" cols="62" id="evaluationCriterionBacteriologys" onclick="selectCriterion('evaluationcriterionBacteriologyIds','evaluationCriterionBacteriologys');"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">消毒剂指标</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationcriterionDisinfectantIds" name ="evaluationcriterionDisinfectantIds" >
<textarea rows="3" cols="62" id="evaluationCriterionDisinfectants" onclick="selectCriterion('evaluationcriterionDisinfectantIds','evaluationCriterionDisinfectants');"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">感官指标</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationcriterionSensoryorgansIds" name ="evaluationcriterionSensoryorgansIds" >
<textarea rows="3" cols="62" id="evaluationCriterionSensoryorgans" onclick="selectCriterion('evaluationcriterionSensoryorgansIds','evaluationCriterionSensoryorgans');"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">毒理指标</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationcriterionToxicologyIds" name ="evaluationcriterionToxicologyIds" >
<textarea rows="3" cols="62" id="evaluationCriterionToxicologys" onclick="selectCriterion('evaluationcriterionToxicologyIds','evaluationCriterionToxicologys');"></textarea>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,132 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="com.sipai.entity.maintenance.MaintenanceDetail"%>
<%request.setAttribute("Wait", MaintenanceDetail.Status_Wait); %>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
//$("#subForm").bootstrapValidator('validate');//提交验证
//if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/IndexM/doupdate.do", $("#subForm").serialize(), function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
//}
}
// $("#subForm").bootstrapValidator({
// live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
// fields: {
// name: {
// validators: {
// notEmpty: {
// criterionName: '名称不能为空'
// }
// }
// },
// }
// });
var selectCriterion = function (pid,pname) {console.log(pid);
$.get(ext.contextPath + '/evaluation/criterion/selectCriterion.do',{ids:$('#'+pid).val(),pid:pid,pname:pname}, function (data) {
$("#subDivSelect").html(data);
openModal('criterion4SelectModal');
});
}
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div id="subDivSelect"></div>
<input type="hidden" class="form-control" id="id" name ="id" value ="${evaluationIndexM.id}">
<div class="form-group">
<label class="col-sm-2 control-label">评价名称</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexName" name ="indexName" value="${evaluationIndexM.indexName}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">评价定义</label>
<div class="col-sm-10">
<!-- <input class="form-control" type="text" id="indexDefinition" name ="indexDefinition" > -->
<textarea rows="3" cols="62" name="indexDefinition">${evaluationIndexM.indexDefinition}</textarea>
</div>
</div>
<!-- <div class="form-group">
<label class="col-sm-2 control-label">评价频率</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexFrequency" name ="indexFrequency" value="${evaluationIndexM.indexFrequency}">
</div>
</div> -->
<div class="form-group">
<label class="col-sm-2 control-label">评价方式</label>
<div class="col-sm-10">
<!-- <input class="form-control" type="text" id="indexFunction" name ="indexFunction" > -->
<textarea rows="3" cols="62" name="indexFunction">${evaluationIndexM.indexFunction}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">细菌学指标</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationcriterionBacteriologyIds" name ="evaluationcriterionBacteriologyIds" value="${evaluationIndexM.evaluationcriterionBacteriologyIds}">
<textarea rows="3" cols="62" id="evaluationCriterionBacteriologys" onclick="selectCriterion('evaluationcriterionBacteriologyIds','evaluationCriterionBacteriologys');">${ebs}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">消毒剂指标</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationcriterionDisinfectantIds" name ="evaluationcriterionDisinfectantIds" value="${evaluationIndexM.evaluationcriterionDisinfectantIds}">
<textarea rows="3" cols="62" id="evaluationCriterionDisinfectants" onclick="selectCriterion('evaluationcriterionDisinfectantIds','evaluationCriterionDisinfectants');">${eds}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">感官指标</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationcriterionSensoryorgansIds" name ="evaluationcriterionSensoryorgansIds" value="${evaluationIndexM.evaluationcriterionSensoryorgansIds}">
<textarea rows="3" cols="62" id="evaluationCriterionSensoryorgans" onclick="selectCriterion('evaluationcriterionSensoryorgansIds','evaluationCriterionSensoryorgans');">${ess}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">毒理指标</label>
<div class="col-sm-10">
<input hidden="hidden" type="text" id="evaluationcriterionToxicologyIds" name ="evaluationcriterionToxicologyIds" value="${evaluationIndexM.evaluationcriterionToxicologyIds}">
<textarea rows="3" cols="62" id="evaluationCriterionToxicologys" onclick="selectCriterion('evaluationcriterionToxicologyIds','evaluationCriterionToxicologys');">${ets}</textarea>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,213 @@
<%@page import="com.sipai.tools.CommString"%>
<%@ 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"%>
<%@page import="com.sipai.entity.equipment.EquipmentCommStr"%>
<%request.setAttribute("EquipmentLife_Standard_Trade", EquipmentCommStr.EquipmentLife_Standard_Trade); %>
<%request.setAttribute("EquipmentLife_Standard_Supplier", EquipmentCommStr.EquipmentLife_Standard_Supplier); %>
<%request.setAttribute("EquipmentLife_Standard_Enterprise", EquipmentCommStr.EquipmentLife_Standard_Enterprise); %>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<!-- bootstrap switch -->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"
charset="utf-8"></script>
<script type="text/javascript">
//查看设备等级
var addFun = function () {
$.get(ext.contextPath + '/evaluation/IndexM/doAdd.do', function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var editFun = function (id) {
$.get(ext.contextPath + '/evaluation/IndexM/doedit.do', {id:id}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var deletesFun = function() {
var checkedItems = $("#table").bootstrapTable('getSelections');
var datas="";
$.each(checkedItems, function(index, item){
datas+=item.id+",";
});
if(datas==""){
showAlert('d','请先选择记录','mainAlertdiv');
}else{
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) {
$.post(ext.contextPath + '/evaluation/IndexM/dodeletes.do', {ids:datas} , function(data) {
if(data>0){
$("#table").bootstrapTable('refresh');
}else{
showAlert('d','删除失败','mainAlertdiv');
}
},'json');
}
});
}
};
//模糊查询列表中的数据
var dosearch = function () {
$("#table").bootstrapTable('refresh');
};
$(function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/evaluation/IndexM/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 50, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},
{
field: 'indexName', // 返回json数据中的name
title: '指标名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
}, {
field: 'indexDefinition', // 返回json数据中的name
title: '定义', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: 'indexFunction', // 返回json数据中的name
title: '评价方法', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationCriterionBacteriologys', // 返回json数据中的name
title: '细菌学指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationCriterionDisinfectants', // 返回json数据中的name
title: '消毒剂指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationCriterionSensoryorgans', // 返回json数据中的name
title: '感官指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationCriterionToxicologys', // 返回json数据中的name
title: '毒理指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
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="editFun(\'' + row.id + '\')"><i class="fa fa-edit"></i><span class="hidden-md hidden-lg"> 编辑</span></button>';
buts = '<div class="btn-group" >' + buts + '</div>';
return buts;
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<!-- 引用top -->
<%--<jsp:include page="/jsp/side.jsp"></jsp:include> --%>
<!-- 菜单栏 -->
<%-- <jsp:include page="/jsp/left.jsp"></jsp:include> --%>
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1 id="head_title"></h1>
<ol class="breadcrumb">
<li><a id='head_firstlevel' href="#"><i class="fa fa-dashboard"></i> </a></li>
<!-- <li class="active">Here</li> -->
</ol>
</section>
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div id="subDivSelect"></div>
<div>
<div class="btn-group" style="width: 280px;padding-bottom:10px;">
<button type="button" class="btn btn-default btn-sm" onclick="addFun();"><i class="fa fa-plus"></i> 新增</button>
<button type="button" class="btn btn-default btn-sm" onclick="deletesFun();"><i class="fa fa-trash-o"></i> 删除</button>
</div>
<table id="table"></table>
</div>
</section>
<!-- /.content -->
</div>
<%-- <jsp:include page="/jsp/bottom.jsp"></jsp:include> --%>
<jsp:include page="/jsp/side.jsp"></jsp:include>
</div>
</body>
</html>

View File

@ -0,0 +1,527 @@
<%@ 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"%>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
if($('#date').val() == null || $('#date').val() == ''){
swal('请先选择月份!');
return;
}
doreckon();
//$("#subForm").bootstrapValidator('validate');//提交验证
//if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/indexMonth/dosave.do", {paramecb:$("#ecb_subForm").serialize(),paramecd:$("#ecd_subForm").serialize(),paramecs:$("#ecs_subForm").serialize(),paramect:$("#ect_subForm").serialize()}, function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
// }
}
function doreckon(){
var json_ecb = JSON.parse('${ecb}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecd = JSON.parse('${ecd}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecs = JSON.parse('${ecs}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ect = JSON.parse('${ect}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
doreckon_detail(json_ecb,'ecb','wqiBacteriologyMonthNation','wqiBacteriologyMonthArea','wqiBacteriologyMonthCompany');
doreckon_detail(json_ecd,'ecd','wqiDisinfectantMonthNation','wqiDisinfectantMonthArea','wqiDisinfectantMonthCompany');
doreckon_detail(json_ecs,'ecs','wqiSensoryorganMonthNation','wqiSensoryorganMonthArea','wqiSensoryorganMonthCompany');
doreckon_detail(json_ect,'ect','wqiToxicologyMonthNation','wqiToxicologyMonthArea','wqiToxicologyMonthCompany');
var gb = [];
gb.push($('#wqiBacteriologyMonthNation').val());
gb.push($('#wqiDisinfectantMonthNation').val());
gb.push($('#wqiSensoryorganMonthNation').val());
gb.push($('#wqiToxicologyMonthNation').val());
$('#wqiMonthNation').val(Math.sqrt((sum(gb) / gb.length) * _max(gb)).toFixed(2));
var db = [];
db.push($('#wqiBacteriologyMonthArea').val());
db.push($('#wqiDisinfectantMonthArea').val());
db.push($('#wqiSensoryorganMonthArea').val());
db.push($('#wqiToxicologyMonthArea').val());
$('#wqiMonthArea').val(Math.sqrt((sum(db) / db.length) * _max(db)).toFixed(2));
var nk = [];
nk.push($('#wqiBacteriologyMonthCompany').val());
nk.push($('#wqiDisinfectantMonthCompany').val());
nk.push($('#wqiSensoryorganMonthCompany').val());
nk.push($('#wqiToxicologyMonthCompany').val());
$('#wqiMonthCompany').val(Math.sqrt((sum(nk) / nk.length) * _max(nk)).toFixed(2));
// doreckon_ecd();
// doreckon_ecs();
// doreckon_ect();
}
function doreckon_detail(json,id1,id2,id3,id4) {
//var json = JSON.parse('${ecb}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var Ci = [];
var Ii_gb = [];
var Ii_db = [];
var Ii_nk = [];
// var Iie_gb = [];
// var Iie_db = [];
// var Iie_nk = [];
for(var i = 0; i < json.length; i++){
var v = $('#'+id1+'_key_'+json[i].id).val();
if(v == null || v == ''){
swal('请全部填完!');
return;
}
Ci.push(v);
var b_gb = $('#'+id1+'_gb_'+json[i].id).val();
var b_db = $('#'+id1+'_db_'+json[i].id).val();
var b_nk = $('#'+id1+'_nk_'+json[i].id).val();
var dl = $('#'+id1+'_dl_'+json[i].id).val();
var series = $('#'+id1+'_series_'+json[i].id).val();
var name = $('#'+id1+'_name_'+json[i].id).val();
var f_gb;
var f_db;
var f_nk;
if(json[i].condition == '1' || json[i].condition == '2'){
if(name == '总大肠菌群' || name == '耐热大肠菌群' || name == '大肠埃希氏菌'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1 + 0.5 * (v - 1);
}
}else if(name == '肉眼可见物'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1.5;
}
}else{
if(b_gb <= 0){
f_gb = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_gb = v;
}else{
if(dl != null && dl != ''){
f_gb = (v - dl < Number.EPSILON) ? 0.1 : (v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2));
}else{
//f_gb = (v / b_gb).toFixed(2);
f_gb = v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2);
}
}
}
if(b_db <= 0){
f_db = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_db = v;
}else{
if(dl != null && dl != ''){
f_db = (v - dl < Number.EPSILON) ? 0.1 : (v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2));
}else{
//f_db = (v / b_db).toFixed(2);
f_db = v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2);
}
}
}
if(b_nk <= 0){
f_nk = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_nk = v;
}else{
if(dl != null && dl != ''){
f_nk = (v - dl < Number.EPSILON) ? 0.1 : (v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2));
}else{
//f_nk = (v / b_nk).toFixed(2);
f_nk = v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2);
}
}
}
}
if(series == 'true'){
Ii_gb.push(v);
Ii_db.push(v);
Ii_nk.push(v);
}else{
if(f_gb >= 1){
if(b_gb <= 0){
//Iie_gb.push(999);
Ii_gb.push(v);
}else{
Ii_gb.push(Math.abs(v-b_gb) / b_gb +1);
//Iie_gb.push(Math.abs(v-b_gb) / b_gb +1);
}
}else {
Ii_gb.push(f_gb);
//Si_gb.push(b_gb);
}
if(f_db >= 1){
if(b_db <= 0){
Ii_db.push(v);
//Iie_db.push(999);
}else{
Ii_db.push(Math.abs(v-b_db) / b_db +1);
//Iie_db.push(Math.abs(v-b_db) / b_db +1);
//Iie_db.push(Math.abs(v-b_db) / b_db +1);
}
}else {
Ii_db.push(f_db);
//Si_db.push(b_db);
}
if(f_nk >= 1){
if(b_nk <= 0){
Ii_nk.push(v)
//Iie_nk.push(999);
}else{
Ii_nk.push(Math.abs(v-b_nk) / b_nk +1);
//Iie_nk.push(Math.abs(v-b_nk) / b_nk +1);
}
}else {
Ii_nk.push(f_nk);
//Si_nk.push(b_nk);
}
}
}else if(json[i].condition == '3'){
if(name == '总氯'){
//console.log(Number.parseFloat($('#date').val().substring(5,7)));
if(Number.parseFloat($('#date').val().substring(5,7)) > 4 & Number.parseFloat($('#date').val().substring(5,7)) < 11){//5-10月份
if(v > 0.85 & v < 1.25){
f_gb = f_db = f_nk = 0;
}else if(v >= 0.6 & v <= 0.85){
f_gb = f_db = f_nk = Math.abs(v-0.85) / (0.85 - 0.6);
}else if(v - 1.25 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.25) / (2 - 1.25);
console.log(f_gb);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.85) / 0.85 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
}else{//1-4和11-12月份
if(v - 0.8 > Number.EPSILON & v - 1.2 < Number.EPSILON){
f_gb = f_db = f_nk = 0;
}else if(v - 0.6 > Number.EPSILON & v - 0.8 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.8) / (0.8 - 0.6);
}else if(v - 1.2 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.2) / (2 - 1.2);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.8) / 0.8 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
}
//if(f_gb - 1 < Number.EPSILON){
Ii_gb.push(f_gb);
Ii_db.push(f_db);
Ii_nk.push(f_nk);
// }else{
// Iie_gb.push(f_gb);
// Iie_db.push(f_db);
// Iie_nk.push(f_nk);
// }
}else{
f_gb = (v > json[i].nationCriterionMin & v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v > json[i].areaCriterionMin & v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v > json[i].companyCriterionMin & v < json[i].companyCriterionMax) ? 0 : 1;
if(f_gb < 1){
Ii_gb.push(f_gb);
}else {
if(v < json[i].nationCriterionMin){
f_gb = Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1;
Ii_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
//Iie_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
}else{
f_gb = Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1;
Ii_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
//Iie_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
}
}
if(f_db < 1){
Ii_db.push(f_db);
}else {
if(v < json[i].areaCriterionMin){
f_db = Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1;
Ii_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
//Iie_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_db = Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1;
Ii_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
//Iie_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
if(f_nk < 1){
Ii_nk.push(f_nk);
}else {
if(v < json[i].areaCriterionMin){
f_nk = Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1;
Ii_nk.push(Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1);
//Iie_nk.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_nk = Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1;
Ii_nk.push(Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1);
//Iie_nk.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
}
}else if(json[i].condition == '4'){
f_gb = (v < json[i].nationCriterionMin || v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v < json[i].areaCriterionMin || v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v < json[i].companyCriterionMin || v < json[i].companyCriterionMax) ? 0 : 1;
}
$('#'+id1+'_gbfzs_'+json[i].id).val(Number.parseFloat(f_gb).toFixed(2));
$('#'+id1+'_dbfzs_'+json[i].id).val(Number.parseFloat(f_db).toFixed(2));
$('#'+id1+'_nkfzs_'+json[i].id).val(Number.parseFloat(f_nk).toFixed(2));
}
var qwi_gb = Math.sqrt(sum(Ii_gb) / Ii_gb.length * _max(Ii_gb));
var qwi_db = Math.sqrt(sum(Ii_db) / Ii_db.length * _max(Ii_db));
var qwi_nk = Math.sqrt(sum(Ii_nk) / Ii_nk.length * _max(Ii_nk));
// var ecb_qwi_gb = (Ii_gb.length<=0? 1 : Math.sqrt(sum(Ii_gb) / Ii_gb.length)) * Math.sqrt(_max(Ii_gb)) * product(Iie_gb);
$('#'+id2).val(qwi_gb.toFixed(2));
// var ecb_qwi_db = (Ii_db.length<=0? 1 : Math.sqrt(sum(Ii_db) / Ii_db.length)) * Math.sqrt(_max(Ii_db)) * product(Iie_db);
$('#'+id3).val(qwi_db.toFixed(2));
// var ecb_qwi_nk = (Ii_nk.length<=0? 1 : Math.sqrt(sum(Ii_nk) / Ii_nk.length)) * Math.sqrt(_max(Ii_nk)) * product(Iie_nk);
$('#'+id4).val(qwi_nk.toFixed(2));
}
function _max(arr){
if(arr instanceof Array && arr.length >0){
let max = arr[0];
for (let i = 0; i < arr.length - 1; i++) {
max = Number.parseFloat(max) < Number.parseFloat(arr[i+1]) ? arr[i+1] : max
}
return max;
}else{
return 1;
}
}
function sum(arr) {
if(arr instanceof Array && arr.length >0){
//console.log(eval(arr.join("+")));
if(eval(arr.join("+")) <= 0){
return 1;
}
return eval(arr.join("+"));
}else{
return 1;
}
};
function product(arr) {
if(arr instanceof Array && arr.length >0) {
var len = arr.length;
var result = len > 0 ? 1 : null;
for(var i = 0; i < arr.length; i++) {
result *= arr[i];
}
if(result <= 0){
return 1;
}
return result;
}
return 1;
}
$('#date').datepicker({
format: 'yyyy-mm',
weekStart: 1,
autoclose: true,
startView: 2,
minViewMode: 1,
maxViewMode: 2,
forceParse: false,
language: 'zh-CN'
});
$('#date').datepicker('setDate','${nowDate.substring(0, 7)}');
</script>
<div class="modal fade" id="subModal" >
<div class="modal-dialog" style="width: 1200px;">
<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="alertDiv"></div>
<div id="subDivSelect"></div>
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="ecb_subForm">
<!-- 界面提醒div强制id为alertDiv -->
<table style="width: 100%;">
<tr>
<td colspan="8"><div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control" id="date" name="date" autocomplete="off" style="width: 132px;">
</div></td>
</tr>
<tr>
<td>指标名称</td>
<td>检测值</td>
<td>检测限</td>
<td>国家标准</td>
<td>分指数(国标)</td>
<td>地区标准</td>
<td>分指数(地区)</td>
<td>内控标准</td>
<td>分指数(内控)</td>
</tr>
<c:forEach items="${evaluationCriterionBacteriologys}" var="evaluationCriterionBacteriology">
<tr>
<td><input class="form-control" type="text" id="ecb_name_${evaluationCriterionBacteriology.id}" value ="${evaluationCriterionBacteriology.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionBacteriology.isSeries}" disabled id="ecb_series_${evaluationCriterionBacteriology.id}">
<td><input class="form-control" type="text" name ="ecb_key_${evaluationCriterionBacteriology.id}" id="ecb_key_${evaluationCriterionBacteriology.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecb_dl_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_gb_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.nationCriterionMin}-${evaluationCriterionBacteriology.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_gbfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecb_db_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.areaCriterionMin}-${evaluationCriterionBacteriology.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_dbfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecb_nk_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.companyCriterionMin}-${evaluationCriterionBacteriology.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_nkfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyMonthNation" readonly="readonly" name="wqiBacteriologyMonthNation"></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyMonthArea" readonly="readonly" name="wqiBacteriologyMonthArea"></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyMonthCompany" readonly="readonly" name="wqiBacteriologyMonthCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecd_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionDisinfectants}" var="evaluationCriterionDisinfectant">
<tr>
<td><input class="form-control" type="text" id="ecd_name_${evaluationCriterionDisinfectant.id}" value ="${evaluationCriterionDisinfectant.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionDisinfectant.isSeries}" disabled id="ecd_series_${evaluationCriterionDisinfectant.id}">
<td><input class="form-control" type="text" name ="ecd_key_${evaluationCriterionDisinfectant.id}" id="ecd_key_${evaluationCriterionDisinfectant.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecd_dl_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_gb_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.nationCriterionMin}-${evaluationCriterionDisinfectant.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_gbfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecd_db_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.areaCriterionMin}-${evaluationCriterionDisinfectant.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_dbfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecd_nk_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.companyCriterionMin}-${evaluationCriterionDisinfectant.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_nkfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantMonthNation" readonly="readonly" name="wqiDisinfectantMonthNation"></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantMonthArea" readonly="readonly" name="wqiDisinfectantMonthArea"></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantMonthCompany" readonly="readonly" name="wqiDisinfectantMonthCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecs_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionSensoryorgans}" var="evaluationCriterionSensoryorgan">
<tr>
<td><input class="form-control" type="text" id="ecs_name_${evaluationCriterionSensoryorgan.id}" value ="${evaluationCriterionSensoryorgan.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionSensoryorgan.isSeries}" disabled id="ecs_series_${evaluationCriterionSensoryorgan.id}">
<td><input class="form-control" type="text" name ="ecs_key_${evaluationCriterionSensoryorgan.id}" id="ecs_key_${evaluationCriterionSensoryorgan.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecs_dl_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_gb_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.nationCriterionMin}-${evaluationCriterionSensoryorgan.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_gbfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecs_db_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.areaCriterionMin}-${evaluationCriterionSensoryorgan.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_dbfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecs_nk_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.companyCriterionMin}-${evaluationCriterionSensoryorgan.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_nkfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganMonthNation" readonly="readonly" name="wqiSensoryorganMonthNation"></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganMonthArea" readonly="readonly" name="wqiSensoryorganMonthArea"></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganMonthCompany" readonly="readonly" name="wqiSensoryorganMonthCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ect_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionToxicologys}" var="evaluationCriterionToxicology">
<tr>
<td><input class="form-control" type="text" id="ect_name_${evaluationCriterionToxicology.id}" value ="${evaluationCriterionToxicology.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionToxicology.isSeries}" disabled id="ect_series_${evaluationCriterionToxicology.id}">
<td><input class="form-control" type="text" name ="ect_key_${evaluationCriterionToxicology.id}" id="ect_key_${evaluationCriterionToxicology.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ect_dl_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_gb_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.nationCriterionMin}-${evaluationCriterionToxicology.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_gbfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ect_db_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.areaCriterionMin}-${evaluationCriterionToxicology.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_dbfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ect_nk_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.companyCriterionMin}-${evaluationCriterionToxicology.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_nkfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyMonthNation" readonly="readonly" name="wqiToxicologyMonthNation"></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyMonthArea" readonly="readonly" name="wqiToxicologyMonthArea"></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyMonthCompany" readonly="readonly" name="wqiToxicologyMonthCompany"></td>
</tr>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="月评指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiMonthNation" readonly="readonly" name="wqiMonthNation"></td>
<td><input class="form-control" type="text" value ="月评指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiMonthArea" readonly="readonly" name="wqiMonthArea"></td>
<td><input class="form-control" type="text" value ="月评指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiMonthCompany" readonly="readonly" name="wqiMonthCompany"></td>
</tr>
</table>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary left" onclick="doreckon()" id="btn_save">计算</button>
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,272 @@
<%@page import="com.sipai.tools.CommString"%>
<%@ 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"%>
<%@page import="com.sipai.entity.equipment.EquipmentCommStr"%>
<%request.setAttribute("EquipmentLife_Standard_Trade", EquipmentCommStr.EquipmentLife_Standard_Trade); %>
<%request.setAttribute("EquipmentLife_Standard_Supplier", EquipmentCommStr.EquipmentLife_Standard_Supplier); %>
<%request.setAttribute("EquipmentLife_Standard_Enterprise", EquipmentCommStr.EquipmentLife_Standard_Enterprise); %>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<!-- bootstrap switch -->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"
charset="utf-8"></script>
<script type="text/javascript">
//查看设备等级
var viewFun = function (id) {
$.post(ext.contextPath + '/evaluation/indexMonth/doview.do', { id: id }, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
};
var addFun = function () {
$.get(ext.contextPath + '/evaluation/indexMonth/doAdd.do', function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var editFun = function (id) {
$.get(ext.contextPath + '/evaluation/Index/doedit.do', {id:id}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var deletesFun = function() {
var checkedItems = $("#table").bootstrapTable('getSelections');
var datas="";
$.each(checkedItems, function(index, item){
datas+=item.id+",";
});
if(datas==""){
showAlert('d','请先选择记录','mainAlertdiv');
}else{
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) {
$.post(ext.contextPath + '/evaluation/indexMonth/dodeletes.do', {ids:datas} , function(data) {
if(data>0){
$("#table").bootstrapTable('refresh');
}else{
showAlert('d','删除失败','mainAlertdiv');
}
},'json');
}
});
}
};
//模糊查询列表中的数据
var dosearch = function () {
$("#table").bootstrapTable('refresh');
};
$(function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/evaluation/indexMonth/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 50, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},
{
field: 'date', // 返回json数据中的name
title: '指标名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter: function(value, row, index){
if(value != null){
return '月评价指数('+value.substring(0,7)+')';
}
}
}, {
field: 'wqiBacteriologyMonthNation', // 返回json数据中的name
title: '细菌学综合指数(国标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiBacteriologyMonthArea', // 返回json数据中的name
title: '细菌学综合指数(地标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiBacteriologyMonthCompany', // 返回json数据中的name
title: '细菌学综合指数(内控)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiDisinfectantMonthNation', // 返回json数据中的name
title: '消毒剂综合指数(国标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiDisinfectantMonthArea', // 返回json数据中的name
title: '消毒剂综合指数(地标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiDisinfectantMonthCompany', // 返回json数据中的name
title: '消毒剂综合指数(内控)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiSensoryorganMonthNation', // 返回json数据中的name
title: '感官综合指数(国标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiSensoryorganMonthArea', // 返回json数据中的name
title: '感官综合指数(地标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiSensoryorganMonthCompany', // 返回json数据中的name
title: '感官综合指数(内控)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiToxicologyMonthNation', // 返回json数据中的name
title: '毒理综合指数(国标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiToxicologyMonthArea', // 返回json数据中的name
title: '毒理综合指数(地标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiToxicologyMonthCompany', // 返回json数据中的name
title: '毒理综合指数(内控)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiMonthNation', // 返回json数据中的name
title: '月评指数(国标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiMonthArea', // 返回json数据中的name
title: '月评指数(地标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiMonthCompany', // 返回json数据中的name
title: '月评指数(内控)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
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="viewFun(\'' + row.id + '\')"><i class="fa fa-edit"></i><span class="hidden-md hidden-lg"> 修改</span></button>';
buts = '<div class="btn-group" >' + buts + '</div>';
return buts;
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onDblClickRow:function(row){
viewFun(row.id);
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<!-- 引用top -->
<%--<jsp:include page="/jsp/side.jsp"></jsp:include> --%>
<!-- 菜单栏 -->
<%-- <jsp:include page="/jsp/left.jsp"></jsp:include> --%>
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1 id="head_title"></h1>
<ol class="breadcrumb">
<li><a id='head_firstlevel' href="#"><i class="fa fa-dashboard"></i> </a></li>
<!-- <li class="active">Here</li> -->
</ol>
</section>
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div>
<div class="btn-group" style="width: 280px;padding-bottom:10px;">
<button type="button" class="btn btn-default btn-sm" onclick="addFun();"><i class="fa fa-plus"></i> 新增</button>
<button type="button" class="btn btn-default btn-sm" onclick="deletesFun();"><i class="fa fa-trash-o"></i> 删除</button>
</div>
<table id="table"></table>
</div>
</section>
<!-- /.content -->
</div>
<%-- <jsp:include page="/jsp/bottom.jsp"></jsp:include> --%>
<jsp:include page="/jsp/side.jsp"></jsp:include>
</div>
</body>
</html>

View File

@ -0,0 +1,549 @@
<%@ 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"%>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
$(function(){
var criterionBacteriologyValue = '${criterionBacteriologyValue}';
var json = JSON.parse(criterionBacteriologyValue);
for(var key in json){
var value = json[key];
$('#ecb_key_'+key).val(value);
};
var criterionDisinfectantValue = '${criterionDisinfectantValue}';
var json = JSON.parse(criterionDisinfectantValue);
for(var key in json){
var value = json[key];
$('#ecd_key_'+key).val(value);
};
var criterionSensoryorganValue = '${criterionSensoryorganValue}';
var json = JSON.parse(criterionSensoryorganValue);
for(var key in json){
var value = json[key];
$('#ecs_key_'+key).val(value);
};
var criterionToxicologyValue = '${criterionToxicologyValue}';
var json = JSON.parse(criterionToxicologyValue);
for(var key in json){
var value = json[key];
$('#ect_key_'+key).val(value);
};
doreckon();
});
function dosave() {
doreckon();
//$("#subForm").bootstrapValidator('validate');//提交验证
//if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/indexMonth/dosave.do", {paramecb:$("#ecb_subForm").serialize(),paramecd:$("#ecd_subForm").serialize(),paramecs:$("#ecs_subForm").serialize(),paramect:$("#ect_subForm").serialize(),}, function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
// }
}
function doreckon(){
var json_ecb = JSON.parse('${ecb}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecd = JSON.parse('${ecd}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecs = JSON.parse('${ecs}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ect = JSON.parse('${ect}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
doreckon_detail(json_ecb,'ecb','wqiBacteriologyMonthNation','wqiBacteriologyMonthArea','wqiBacteriologyMonthCompany');
doreckon_detail(json_ecd,'ecd','wqiDisinfectantMonthNation','wqiDisinfectantMonthArea','wqiDisinfectantMonthCompany');
doreckon_detail(json_ecs,'ecs','wqiSensoryorganMonthNation','wqiSensoryorganMonthArea','wqiSensoryorganMonthCompany');
doreckon_detail(json_ect,'ect','wqiToxicologyMonthNation','wqiToxicologyMonthArea','wqiToxicologyMonthCompany');
var gb = [];
gb.push($('#wqiBacteriologyMonthNation').val());
gb.push($('#wqiDisinfectantMonthNation').val());
gb.push($('#wqiSensoryorganMonthNation').val());
gb.push($('#wqiToxicologyMonthNation').val());
$('#wqiMonthNation').val(Math.sqrt((sum(gb) / gb.length) * _max(gb)).toFixed(2));
var db = [];
db.push($('#wqiBacteriologyMonthArea').val());
db.push($('#wqiDisinfectantMonthArea').val());
db.push($('#wqiSensoryorganMonthArea').val());
db.push($('#wqiToxicologyMonthArea').val());
$('#wqiMonthArea').val(Math.sqrt((sum(db) / db.length) * _max(db)).toFixed(2));
var nk = [];
nk.push($('#wqiBacteriologyMonthCompany').val());
nk.push($('#wqiDisinfectantMonthCompany').val());
nk.push($('#wqiSensoryorganMonthCompany').val());
nk.push($('#wqiToxicologyMonthCompany').val());
//(sum(nk) / nk.length) * _max(nk)
$('#wqiMonthCompany').val(Math.sqrt((sum(nk) / nk.length) * _max(nk)).toFixed(2));
// doreckon_ecd();
// doreckon_ecs();
// doreckon_ect();
}
function doreckon_detail(json,id1,id2,id3,id4) {
//var json = JSON.parse('${ecb}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var Ci = [];
var Ii_gb = [];
var Ii_db = [];
var Ii_nk = [];
// var Iie_gb = [];
// var Iie_db = [];
// var Iie_nk = [];
for(var i = 0; i < json.length; i++){
var v = $('#'+id1+'_key_'+json[i].id).val();
if(v == null || v == ''){
swal('请全部填完!');
return;
}
Ci.push(v);
var b_gb = $('#'+id1+'_gb_'+json[i].id).val();
var b_db = $('#'+id1+'_db_'+json[i].id).val();
var b_nk = $('#'+id1+'_nk_'+json[i].id).val();
var dl = $('#'+id1+'_dl_'+json[i].id).val();
var series = $('#'+id1+'_series_'+json[i].id).val();
var name = $('#'+id1+'_name_'+json[i].id).val();
var f_gb;
var f_db;
var f_nk;
if(json[i].condition == '1' || json[i].condition == '2'){
if(name == '总大肠菌群' || name == '耐热大肠菌群' || name == '大肠埃希氏菌'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1 + 0.5 * (v - 1);
}
}else if(name == '肉眼可见物'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1.5;
}
}else{
if(b_gb <= 0){
f_gb = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_gb = v;
}else{
if(dl != null && dl != ''){
f_gb = (v - dl < Number.EPSILON) ? 0.1 : (v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2));
}else{
//f_gb = (v / b_gb).toFixed(2);
f_gb = v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2);
}
}
}
if(b_db <= 0){
f_db = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_db = v;
}else{
if(dl != null && dl != ''){
f_db = (v - dl < Number.EPSILON) ? 0.1 : (v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2));
}else{
//f_db = (v / b_db).toFixed(2);
f_db = v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2);
}
}
}
if(b_nk <= 0){
f_nk = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_nk = v;
}else{
if(dl != null && dl != ''){
f_nk = (v - dl < Number.EPSILON) ? 0.1 : (v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2));
}else{
//f_nk = (v / b_nk).toFixed(2);
f_nk = v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2);
}
}
}
}
if(series == 'true'){
Ii_gb.push(v);
Ii_db.push(v);
Ii_nk.push(v);
}else{
if(f_gb >= 1){
if(b_gb <= 0){
//Iie_gb.push(999);
Ii_gb.push(v);
}else{
Ii_gb.push(Math.abs(v-b_gb) / b_gb +1);
//Iie_gb.push(Math.abs(v-b_gb) / b_gb +1);
}
}else {
Ii_gb.push(f_gb);
//Si_gb.push(b_gb);
}
if(f_db >= 1){
if(b_db <= 0){
Ii_db.push(v);
//Iie_db.push(999);
}else{
Ii_db.push(Math.abs(v-b_db) / b_db +1);
//Iie_db.push(Math.abs(v-b_db) / b_db +1);
//Iie_db.push(Math.abs(v-b_db) / b_db +1);
}
}else {
Ii_db.push(f_db);
//Si_db.push(b_db);
}
if(f_nk >= 1){
if(b_nk <= 0){
Ii_nk.push(v)
//Iie_nk.push(999);
}else{
Ii_nk.push(Math.abs(v-b_nk) / b_nk +1);
//Iie_nk.push(Math.abs(v-b_nk) / b_nk +1);
}
}else {
Ii_nk.push(f_nk);
//Si_nk.push(b_nk);
}
}
}else if(json[i].condition == '3'){
if(name == '总氯'){
//console.log(Number.parseFloat($('#date').val().substring(5,7)));
if(Number.parseFloat($('#date').val().substring(5,7)) > 4 & Number.parseFloat($('#date').val().substring(5,7)) < 11){//5-10月份
if(v > 0.85 & v < 1.25){
f_gb = f_db = f_nk = 0;
}else if(v >= 0.6 & v <= 0.85){
f_gb = f_db = f_nk = Math.abs(v-0.85) / (0.85 - 0.6);
}else if(v - 1.25 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.25) / (2 - 1.25);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.85) / 0.85 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
}else{//1-4和11-12月份
if(v - 0.8 > Number.EPSILON & v - 1.2 < Number.EPSILON){
f_gb = f_db = f_nk = 0;
}else if(v >= 0.6 & v <= 0.8){
f_gb = f_db = f_nk = Math.abs(v-0.8) / (0.8 - 0.6);
}else if(v - 1.2 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.2) / (2 - 1.2);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.8) / 0.8 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
}
//if(f_gb - 1 < Number.EPSILON){
Ii_gb.push(f_gb);
Ii_db.push(f_db);
Ii_nk.push(f_nk);
// }else{
// Iie_gb.push(f_gb);
// Iie_db.push(f_db);
// Iie_nk.push(f_nk);
// }
}else{
f_gb = (v > json[i].nationCriterionMin & v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v > json[i].areaCriterionMin & v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v > json[i].companyCriterionMin & v < json[i].companyCriterionMax) ? 0 : 1;
if(f_gb < 1){
Ii_gb.push(f_gb);
}else {
if(v < json[i].nationCriterionMin){
f_gb = Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1;
Ii_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
//Iie_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
}else{
f_gb = Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1;
Ii_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
//Iie_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
}
}
if(f_db < 1){
Ii_db.push(f_db);
}else {
if(v < json[i].areaCriterionMin){
f_db = Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1;
Ii_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
//Iie_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_db = Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1;
Ii_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
//Iie_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
if(f_nk < 1){
Ii_nk.push(f_nk);
}else {
if(v < json[i].areaCriterionMin){
f_nk = Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1;
Ii_nk.push(Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1);
//Iie_nk.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_nk = Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1;
Ii_nk.push(Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1);
//Iie_nk.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
}
}else if(json[i].condition == '4'){
f_gb = (v < json[i].nationCriterionMin || v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v < json[i].areaCriterionMin || v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v < json[i].companyCriterionMin || v < json[i].companyCriterionMax) ? 0 : 1;
}
$('#'+id1+'_gbfzs_'+json[i].id).val(Number.parseFloat(f_gb).toFixed(2));
$('#'+id1+'_dbfzs_'+json[i].id).val(Number.parseFloat(f_db).toFixed(2));
$('#'+id1+'_nkfzs_'+json[i].id).val(Number.parseFloat(f_nk).toFixed(2));
}
var qwi_gb = Math.sqrt(sum(Ii_gb) / Ii_gb.length * _max(Ii_gb));
var qwi_db = Math.sqrt(sum(Ii_db) / Ii_db.length * _max(Ii_db));
var qwi_nk = Math.sqrt(sum(Ii_nk) / Ii_nk.length * _max(Ii_nk));
// var ecb_qwi_gb = (Ii_gb.length<=0? 1 : Math.sqrt(sum(Ii_gb) / Ii_gb.length)) * Math.sqrt(_max(Ii_gb)) * product(Iie_gb);
$('#'+id2).val(qwi_gb.toFixed(2));
// var ecb_qwi_db = (Ii_db.length<=0? 1 : Math.sqrt(sum(Ii_db) / Ii_db.length)) * Math.sqrt(_max(Ii_db)) * product(Iie_db);
$('#'+id3).val(qwi_db.toFixed(2));
// var ecb_qwi_nk = (Ii_nk.length<=0? 1 : Math.sqrt(sum(Ii_nk) / Ii_nk.length)) * Math.sqrt(_max(Ii_nk)) * product(Iie_nk);
$('#'+id4).val(qwi_nk.toFixed(2));
}
function _max(arr){
if(arr instanceof Array && arr.length >0){
let max = arr[0];
for (let i = 0; i < arr.length - 1; i++) {
max = Number.parseFloat(max) < Number.parseFloat(arr[i+1]) ? arr[i+1] : max
}
return max;
}else{
return 1;
}
}
function sum(arr) {
if(arr instanceof Array && arr.length >0){
//console.log(eval(arr.join("+")));
if(eval(arr.join("+")) <= 0){
return 1;
}
return eval(arr.join("+"));
}else{
return 1;
}
};
function product(arr) {
if(arr instanceof Array && arr.length >0) {
var len = arr.length;
var result = len > 0 ? 1 : null;
for(var i = 0; i < arr.length; i++) {
result *= arr[i];
}
if(result <= 0){
return 1;
}
return result;
}
return 1;
}
$('#date').datepicker({
format: 'yyyy-mm',
weekStart: 1,
autoclose: true,
startView: 2,
minViewMode: 1,
maxViewMode: 2,
forceParse: false,
language: 'zh-CN'
});
</script>
<div class="modal fade" id="subModal" >
<div class="modal-dialog" style="width: 1200px;">
<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="alertDiv"></div>
<div id="subDivSelect"></div>
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="ecb_subForm">
<input type="hidden" name="id" value="${id}">
<!-- 界面提醒div强制id为alertDiv -->
<table style="width: 100%;">
<tr>
<td colspan="8"><div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control" id="date" name="date" value="${date}" autocomplete="off" style="width: 132px;">
</div></td>
</tr>
<tr>
<td>指标名称</td>
<td>检测值</td>
<td>检测限</td>
<td>国家标准</td>
<td>分指数(国标)</td>
<td>地区标准</td>
<td>分指数(地区)</td>
<td>内控标准</td>
<td>分指数(内控)</td>
</tr>
<c:forEach items="${evaluationCriterionBacteriologys}" var="evaluationCriterionBacteriology">
<tr>
<td><input class="form-control" type="text" id="ecb_name_${evaluationCriterionBacteriology.id}" value ="${evaluationCriterionBacteriology.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionBacteriology.isSeries}" disabled id="ecb_series_${evaluationCriterionBacteriology.id}">
<td><input class="form-control" type="text" name ="ecb_key_${evaluationCriterionBacteriology.id}" id="ecb_key_${evaluationCriterionBacteriology.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecb_dl_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_gb_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.nationCriterionMin}-${evaluationCriterionBacteriology.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_gbfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecb_db_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.areaCriterionMin}-${evaluationCriterionBacteriology.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_dbfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecb_nk_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.companyCriterionMin}-${evaluationCriterionBacteriology.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_nkfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyMonthNation" readonly="readonly" name="wqiBacteriologyMonthNation"></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyMonthArea" readonly="readonly" name="wqiBacteriologyMonthArea"></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyMonthCompany" readonly="readonly" name="wqiBacteriologyMonthCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecd_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionDisinfectants}" var="evaluationCriterionDisinfectant">
<tr>
<td><input class="form-control" type="text" id="ecd_name_${evaluationCriterionDisinfectant.id}" value ="${evaluationCriterionDisinfectant.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionDisinfectant.isSeries}" disabled id="ecd_series_${evaluationCriterionDisinfectant.id}">
<td><input class="form-control" type="text" name ="ecd_key_${evaluationCriterionDisinfectant.id}" id="ecd_key_${evaluationCriterionDisinfectant.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecd_dl_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_gb_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.nationCriterionMin}-${evaluationCriterionDisinfectant.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_gbfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecd_db_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.areaCriterionMin}-${evaluationCriterionDisinfectant.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_dbfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecd_nk_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.companyCriterionMin}-${evaluationCriterionDisinfectant.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_nkfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantMonthNation" readonly="readonly" name="wqiDisinfectantMonthNation"></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantMonthArea" readonly="readonly" name="wqiDisinfectantMonthArea"></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantMonthCompany" readonly="readonly" name="wqiDisinfectantMonthCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecs_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionSensoryorgans}" var="evaluationCriterionSensoryorgan">
<tr>
<td><input class="form-control" type="text" id="ecs_name_${evaluationCriterionSensoryorgan.id}" value ="${evaluationCriterionSensoryorgan.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionSensoryorgan.isSeries}" disabled id="ecs_series_${evaluationCriterionSensoryorgan.id}">
<td><input class="form-control" type="text" name ="ecs_key_${evaluationCriterionSensoryorgan.id}" id="ecs_key_${evaluationCriterionSensoryorgan.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecs_dl_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_gb_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.nationCriterionMin}-${evaluationCriterionSensoryorgan.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_gbfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecs_db_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.areaCriterionMin}-${evaluationCriterionSensoryorgan.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_dbfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecs_nk_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.companyCriterionMin}-${evaluationCriterionSensoryorgan.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_nkfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganMonthNation" readonly="readonly" name="wqiSensoryorganMonthNation"></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganMonthArea" readonly="readonly" name="wqiSensoryorganMonthArea"></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganMonthCompany" readonly="readonly" name="wqiSensoryorganMonthCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ect_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionToxicologys}" var="evaluationCriterionToxicology">
<tr>
<td><input class="form-control" type="text" id="ect_name_${evaluationCriterionToxicology.id}" value ="${evaluationCriterionToxicology.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionToxicology.isSeries}" disabled id="ect_series_${evaluationCriterionToxicology.id}">
<td><input class="form-control" type="text" name ="ect_key_${evaluationCriterionToxicology.id}" id="ect_key_${evaluationCriterionToxicology.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ect_dl_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_gb_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.nationCriterionMin}-${evaluationCriterionToxicology.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_gbfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ect_db_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.areaCriterionMin}-${evaluationCriterionToxicology.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_dbfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ect_nk_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.companyCriterionMin}-${evaluationCriterionToxicology.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_nkfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyMonthNation" readonly="readonly" name="wqiToxicologyMonthNation"></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyMonthArea" readonly="readonly" name="wqiToxicologyMonthArea"></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyMonthCompany" readonly="readonly" name="wqiToxicologyMonthCompany"></td>
</tr>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="月评指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiMonthNation" readonly="readonly" name="wqiMonthNation"></td>
<td><input class="form-control" type="text" value ="月评指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiMonthArea" readonly="readonly" name="wqiMonthArea"></td>
<td><input class="form-control" type="text" value ="月评指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiMonthCompany" readonly="readonly" name="wqiMonthCompany"></td>
</tr>
</table>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary left" onclick="doreckon()" id="btn_save">计算</button>
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,151 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="com.sipai.entity.maintenance.MaintenanceDetail"%>
<%request.setAttribute("Wait", MaintenanceDetail.Status_Wait); %>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/IndexY/dosave.do", $("#subForm").serialize(), function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
criterionName: '名称不能为空'
}
}
},
}
});
var selectCriterion = function (pid,pname) {
$.get(ext.contextPath + '/evaluation/criterion/selectCriterion.do',{pid:pid,pname:pname}, function (data) {
$("#subDivSelect").html(data);
openModal('criterion4SelectModal');
});
}
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<div class="modal-content" style="width: 700px;">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div class="form-group">
<label class="col-sm-3 control-label">评价名称</label>
<div class="col-sm-9">
<input class="form-control" type="text" id="indexName" name ="indexName" >
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">评价定义</label>
<div class="col-sm-9">
<!-- <input class="form-control" type="text" id="indexDefinition" name ="indexDefinition" > -->
<textarea rows="3" cols="62" name="indexDefinition"></textarea>
</div>
</div>
<!-- <div class="form-group">
<label class="col-sm-2 control-label">评价频率</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexFrequency" name ="indexFrequency" >
</div>
</div> -->
<div class="form-group">
<label class="col-sm-3 control-label">评价方式</label>
<div class="col-sm-9">
<!-- <input class="form-control" type="text" id="indexFunction" name ="indexFunction" > -->
<textarea rows="3" cols="62" name="indexFunction"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">细菌学指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionBacteriologyIds" name ="evaluationcriterionBacteriologyIds" >
<textarea rows="3" cols="62" id="evaluationCriterionBacteriologys" onclick="selectCriterion('evaluationcriterionBacteriologyIds','evaluationCriterionBacteriologys');"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">消毒剂指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionDisinfectantIds" name ="evaluationcriterionDisinfectantIds" >
<textarea rows="3" cols="62" id="evaluationCriterionDisinfectants" onclick="selectCriterion('evaluationcriterionDisinfectantIds','evaluationCriterionDisinfectants');"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">感官指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionSensoryorgansIds" name ="evaluationcriterionSensoryorgansIds" >
<textarea rows="3" cols="62" id="evaluationCriterionSensoryorgans" onclick="selectCriterion('evaluationcriterionSensoryorgansIds','evaluationCriterionSensoryorgans');"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">毒理指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionToxicologyIds" name ="evaluationcriterionToxicologyIds" >
<textarea rows="3" cols="62" id="evaluationCriterionToxicologys" onclick="selectCriterion('evaluationcriterionToxicologyIds','evaluationCriterionToxicologys');"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">有机物指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionOrganicIds" name ="evaluationcriterionOrganicIds" >
<textarea rows="3" cols="62" id="evaluationcriterionOrganics" onclick="selectCriterion('evaluationcriterionOrganicIds','evaluationcriterionOrganics');"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">嗅味指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionSmellIds" name ="evaluationcriterionSmellIds" >
<textarea rows="3" cols="62" id="evaluationcriterionSmells" onclick="selectCriterion('evaluationcriterionSmellIds','evaluationcriterionSmells');"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">消毒副产品指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionDbpsIds" name ="evaluationcriterionDbpsIds" >
<textarea rows="3" cols="62" id="evaluationcriterionDbpss" onclick="selectCriterion('evaluationcriterionDbpsIds','evaluationcriterionDbpss');"></textarea>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,153 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="com.sipai.entity.maintenance.MaintenanceDetail"%>
<%request.setAttribute("Wait", MaintenanceDetail.Status_Wait); %>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
function dosave() {
//$("#subForm").bootstrapValidator('validate');//提交验证
//if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/IndexY/doupdate.do", $("#subForm").serialize(), function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
//}
}
// $("#subForm").bootstrapValidator({
// live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
// fields: {
// name: {
// validators: {
// notEmpty: {
// criterionName: '名称不能为空'
// }
// }
// },
// }
// });
var selectCriterion = function (pid,pname) {console.log(pid);
$.get(ext.contextPath + '/evaluation/criterion/selectCriterion.do',{ids:$('#'+pid).val(),pid:pid,pname:pname}, function (data) {
$("#subDivSelect").html(data);
openModal('criterion4SelectModal');
});
}
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<div class="modal-content" style="width: 700px;">
<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">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div id="subDivSelect"></div>
<input type="hidden" class="form-control" id="id" name ="id" value ="${evaluationIndexY.id}">
<div class="form-group">
<label class="col-sm-3 control-label">评价名称</label>
<div class="col-sm-9">
<input class="form-control" type="text" id="indexName" name ="indexName" value="${evaluationIndexY.indexName}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">评价定义</label>
<div class="col-sm-9">
<!-- <input class="form-control" type="text" id="indexDefinition" name ="indexDefinition" > -->
<textarea rows="3" cols="65" name="indexDefinition">${evaluationIndexY.indexDefinition}</textarea>
</div>
</div>
<!-- <div class="form-group">
<label class="col-sm-2 control-label">评价频率</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="indexFrequency" name ="indexFrequency" value="${evaluationIndexY.indexFrequency}">
</div>
</div> -->
<div class="form-group">
<label class="col-sm-3 control-label">评价方式</label>
<div class="col-sm-9">
<!-- <input class="form-control" type="text" id="indexFunction" name ="indexFunction" > -->
<textarea rows="3" cols="65" name="indexFunction">${evaluationIndexY.indexFunction}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">细菌学指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionBacteriologyIds" name ="evaluationcriterionBacteriologyIds" value="${evaluationIndexY.evaluationcriterionBacteriologyIds}">
<textarea rows="3" cols="65" id="evaluationCriterionBacteriologys" onclick="selectCriterion('evaluationcriterionBacteriologyIds','evaluationCriterionBacteriologys');">${ebs}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">消毒剂指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionDisinfectantIds" name ="evaluationcriterionDisinfectantIds" value="${evaluationIndexY.evaluationcriterionDisinfectantIds}">
<textarea rows="3" cols="65" id="evaluationCriterionDisinfectants" onclick="selectCriterion('evaluationcriterionDisinfectantIds','evaluationCriterionDisinfectants');">${eds}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">感官指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionSensoryorgansIds" name ="evaluationcriterionSensoryorgansIds" value="${evaluationIndexY.evaluationcriterionSensoryorgansIds}">
<textarea rows="3" cols="65" id="evaluationCriterionSensoryorgans" onclick="selectCriterion('evaluationcriterionSensoryorgansIds','evaluationCriterionSensoryorgans');">${ess}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">毒理指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionToxicologyIds" name ="evaluationcriterionToxicologyIds" value="${evaluationIndexY.evaluationcriterionToxicologyIds}">
<textarea rows="3" cols="65" id="evaluationCriterionToxicologys" onclick="selectCriterion('evaluationcriterionToxicologyIds','evaluationCriterionToxicologys');">${ets}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">有机物指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionOrganicIds" name ="evaluationcriterionOrganicIds" value="${evaluationIndexY.evaluationcriterionOrganicIds}">
<textarea rows="3" cols="65" id="evaluationcriterionOrganics" onclick="selectCriterion('evaluationcriterionOrganicIds','evaluationcriterionOrganics');">${eos}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">嗅味指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionSmellIds" name ="evaluationcriterionSmellIds" value="${evaluationIndexY.evaluationcriterionSmellIds}">
<textarea rows="3" cols="65" id="evaluationcriterionSmells" onclick="selectCriterion('evaluationcriterionSmellIds','evaluationcriterionSmells');">${ems}</textarea>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">消毒副产品指标</label>
<div class="col-sm-9">
<input hidden="hidden" type="text" id="evaluationcriterionDbpsIds" name ="evaluationcriterionDbpsIds" value="${evaluationIndexY.evaluationcriterionDbpsIds}">
<textarea rows="3" cols="65" id="evaluationcriterionDbpss" onclick="selectCriterion('evaluationcriterionDbpsIds','evaluationcriterionDbpss');">${eps}</textarea>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,225 @@
<%@page import="com.sipai.tools.CommString"%>
<%@ 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>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<!-- bootstrap switch -->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"
charset="utf-8"></script>
<script type="text/javascript">
//查看设备等级
var addFun = function () {
$.get(ext.contextPath + '/evaluation/IndexY/doAdd.do', function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var editFun = function (id) {
$.get(ext.contextPath + '/evaluation/IndexY/doedit.do', {id:id}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var deletesFun = function() {
var checkedItems = $("#table").bootstrapTable('getSelections');
var datas="";
$.each(checkedItems, function(index, item){
datas+=item.id+",";
});
if(datas==""){
showAlert('d','请先选择记录','mainAlertdiv');
}else{
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) {
$.post(ext.contextPath + '/evaluation/IndexY/dodeletes.do', {ids:datas} , function(data) {
if(data>0){
$("#table").bootstrapTable('refresh');
}else{
showAlert('d','删除失败','mainAlertdiv');
}
},'json');
}
});
}
};
//模糊查询列表中的数据
var dosearch = function () {
$("#table").bootstrapTable('refresh');
};
$(function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/evaluation/IndexY/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 50, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},
{
field: 'indexName', // 返回json数据中的name
title: '指标名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
}, {
field: 'indexDefinition', // 返回json数据中的name
title: '定义', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: 'indexFunction', // 返回json数据中的name
title: '评价方法', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationCriterionBacteriologys', // 返回json数据中的name
title: '细菌学指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationCriterionDisinfectants', // 返回json数据中的name
title: '消毒剂指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationCriterionSensoryorgans', // 返回json数据中的name
title: '感官指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationCriterionToxicologys', // 返回json数据中的name
title: '毒理指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationcriterionOrganics', // 返回json数据中的name
title: '有机物指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationcriterionSmells', // 返回json数据中的name
title: '嗅味指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: '_evaluationcriterionDbpss', // 返回json数据中的name
title: '消毒副产品指标', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
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="editFun(\'' + row.id + '\')"><i class="fa fa-edit"></i><span class="hidden-md hidden-lg"> 编辑</span></button>';
buts = '<div class="btn-group" >' + buts + '</div>';
return buts;
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<!-- 引用top -->
<%--<jsp:include page="/jsp/side.jsp"></jsp:include> --%>
<!-- 菜单栏 -->
<%-- <jsp:include page="/jsp/left.jsp"></jsp:include> --%>
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1 id="head_title"></h1>
<ol class="breadcrumb">
<li><a id='head_firstlevel' href="#"><i class="fa fa-dashboard"></i> </a></li>
<!-- <li class="active">Here</li> -->
</ol>
</section>
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div id="subDivSelect"></div>
<div>
<div class="btn-group" style="width: 280px;padding-bottom:10px;">
<button type="button" class="btn btn-default btn-sm" onclick="addFun();"><i class="fa fa-plus"></i> 新增</button>
<button type="button" class="btn btn-default btn-sm" onclick="deletesFun();"><i class="fa fa-trash-o"></i> 删除</button>
</div>
<table id="table"></table>
</div>
</section>
<!-- /.content -->
</div>
<%-- <jsp:include page="/jsp/bottom.jsp"></jsp:include> --%>
<jsp:include page="/jsp/side.jsp"></jsp:include>
</div>
</body>
</html>

View File

@ -0,0 +1,714 @@
<%@ 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"%>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
var Iie_gb = [];
var Iie_db = [];
var Iie_nk = [];
var wqi_gb = [];
var wqi_db = [];
var wqi_nk = [];
function dosave() {
if($('#date').val() == null || $('#date').val() == ''){
swal('请先选择年份!');
return;
}
doreckon();
//$("#subForm").bootstrapValidator('validate');//提交验证
//if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/indexYear/dosave.do", {paramecb:$("#ecb_subForm").serialize(),paramecd:$("#ecd_subForm").serialize(),paramecs:$("#ecs_subForm").serialize(),paramect:$("#ect_subForm").serialize(),parameco:$("#eco_subForm").serialize(),paramecsl:$("#ecsl_subForm").serialize(),paramecp:$("#ecp_subForm").serialize()}, function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
// }
}
function doreckon(){
var json_ecb = JSON.parse('${ecb}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecd = JSON.parse('${ecd}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecs = JSON.parse('${ecs}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ect = JSON.parse('${ect}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_eco = JSON.parse('${eco}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecsl = JSON.parse('${ecsl}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecp = JSON.parse('${ecp}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
doreckon_detail(json_ecb,'ecb','wqiBacteriologyYearNation','wqiBacteriologyYearArea','wqiBacteriologyYearCompany');
doreckon_detail(json_ecd,'ecd','wqiDisinfectantYearNation','wqiDisinfectantYearArea','wqiDisinfectantYearCompany');
doreckon_detail(json_ecs,'ecs','wqiSensoryorganYearNation','wqiSensoryorganYearArea','wqiSensoryorganYearCompany');
doreckon_detail(json_ect,'ect','wqiToxicologyYearNation','wqiToxicologyYearArea','wqiToxicologyYearCompany');
doreckon_detail(json_eco,'eco','wqiOrganicYearNation','wqiOrganicYearArea','wqiOrganicYearCompany');
doreckon_detail(json_ecsl,'ecsl','wqiSmellYearNation','wqiSmellYearArea','wqiSmellYearCompany');
doreckon_detail(json_ecp,'ecp','wqiDbpsYearNation','wqiDbpsYearArea','wqiDbpsYearCompany');
var basib_gb = [];
basib_gb.push($('#wqiBacteriologyYearNation').val());
basib_gb.push($('#wqiDisinfectantYearNation').val());
basib_gb.push($('#wqiSensoryorganYearNation').val());
basib_gb.push($('#wqiToxicologyYearNation').val());
$('#wqiBasicYearNation').val(Math.sqrt(sum(basib_gb) / basib_gb.length * _max(basib_gb)).toFixed(2));
var basib_db = [];
basib_db.push($('#wqiBacteriologyYearArea').val());
basib_db.push($('#wqiDisinfectantYearArea').val());
basib_db.push($('#wqiSensoryorganYearArea').val());
basib_db.push($('#wqiToxicologyYearArea').val());
$('#wqiBasicYearArea').val(Math.sqrt(sum(basib_db) / basib_db.length * _max(basib_db)).toFixed(2));
var basib_nk = [];
basib_nk.push($('#wqiBacteriologyYearCompany').val());
basib_nk.push($('#wqiDisinfectantYearCompany').val());
basib_nk.push($('#wqiSensoryorganYearCompany').val());
basib_nk.push($('#wqiToxicologyYearCompany').val());
$('#wqiBasicYearCompany').val(Math.sqrt(sum(basib_nk) / basib_nk.length * _max(basib_nk)).toFixed(2));
var feature_gb = [];
feature_gb.push($('#wqiOrganicYearNation').val());
feature_gb.push($('#wqiSmellYearNation').val());
feature_gb.push($('#wqiDbpsYearNation').val());
// $('#wqiFeaturesYearNation').val(Math.sqrt(sum(feature_gb) / feature_gb.length * _max(feature_gb)).toFixed(2));
$('#wqiFeaturesYearNation').val((sig(wqi_gb) * Math.sqrt(_max(wqi_gb)) * product(Iie_gb)).toFixed(2));
var feature_db = [];
feature_db.push($('#wqiOrganicYearArea').val());
feature_db.push($('#wqiSmellYearArea').val());
feature_db.push($('#wqiDbpsYearArea').val());
// $('#wqiFeaturesYearArea').val(Math.sqrt(sum(feature_db) / feature_db.length * _max(feature_db)).toFixed(2));
$('#wqiFeaturesYearArea').val((sig(wqi_db)* Math.sqrt(_max(wqi_db)) * product(Iie_db)).toFixed(2));
var feature_nk = [];
feature_nk.push($('#wqiOrganicYearCompany').val());
feature_nk.push($('#wqiSmellYearCompany').val());
feature_nk.push($('#wqiDbpsYearCompany').val());
// $('#wqiFeaturesYearCompany').val(Math.sqrt(sum(feature_nk) / feature_nk.length * _max(feature_nk)).toFixed(2));
$('#wqiFeaturesYearCompany').val((sig(wqi_nk)* Math.sqrt(_max(wqi_nk)) * product(Iie_nk)).toFixed(2));
$('#wqiYearNation').val(($('#wqiBasicYearNation').val() * 0.3 +$('#wqiFeaturesYearNation').val() * 0.7).toFixed(2));
$('#wqiYearArea').val(($('#wqiBasicYearArea').val() * 0.3 +$('#wqiFeaturesYearArea').val() * 0.7).toFixed(2));
$('#wqiYearCompany').val(($('#wqiBasicYearCompany').val() * 0.3 +$('#wqiFeaturesYearCompany').val() * 0.7).toFixed(2));
// doreckon_ecd();
// doreckon_ecs();
// doreckon_ect();
}
function doreckon_detail(json,id1,id2,id3,id4) {
//var json = JSON.parse('${ecb}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var Ci = [];
var Ii_gb = [];
var Ii_db = [];
var Ii_nk = [];
for(var i = 0; i < json.length; i++){
var v = $('#'+id1+'_key_'+json[i].id).val();
if(v == null || v == ''){
swal('请全部填完!');
return;
}
Ci.push(v);
var b_gb = $('#'+id1+'_gb_'+json[i].id).val();
var b_db = $('#'+id1+'_db_'+json[i].id).val();
var b_nk = $('#'+id1+'_nk_'+json[i].id).val();
var dl = $('#'+id1+'_dl_'+json[i].id).val();
var series = $('#'+id1+'_series_'+json[i].id).val();
var name = $('#'+id1+'_name_'+json[i].id).val();
var f_gb;
var f_db;
var f_nk;
if(json[i].condition == '1' || json[i].condition == '2'){
if(name == '总大肠菌群' || name == '耐热大肠菌群' || name == '大肠埃希氏菌'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1 + 0.5 * (v - 1);
}
}else if(name == '肉眼可见物'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1.5;
}
}else{
if(b_gb <= 0){
f_gb = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_gb = v;
}else{
if(dl != null && dl != ''){
f_gb = (v - dl < Number.EPSILON) ? 0.1 : (v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2));
}else{
//f_gb = (v / b_gb).toFixed(2);
f_gb = v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2);
}
}
}
if(b_db <= 0){
f_db = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_db = v;
}else{
if(dl != null && dl != ''){
f_db = (v - dl < Number.EPSILON) ? 0.1 : (v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2));
}else{
//f_db = (v / b_db).toFixed(2);
f_db = v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2);
}
}
}
if(b_nk <= 0){
f_nk = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_nk = v;
}else{
if(dl != null && dl != ''){
f_nk = (v - dl < Number.EPSILON) ? 0.1 : (v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2));
}else{
//f_nk = (v / b_nk).toFixed(2);
f_nk = v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2);
}
}
}
}
if(series == 'true'){
Ii_gb.push(v);
Ii_db.push(v);
Ii_nk.push(v);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
if(v > b_gb){
Iie_gb.push(v);
Iie_db.push(v);
Iie_nk.push(v);
}
}
}else{
if(f_gb >= 1){
if(b_gb <= 0){
Ii_gb.push(f_gb);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_gb.push(f_gb);
}
}else{
Ii_gb.push(Math.abs(v-b_gb) / b_gb +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_gb.push(Math.abs(v-b_gb) / b_gb +1);
}
}
}else {
Ii_gb.push(f_gb);
//Si_gb.push(b_gb);
}
if(f_db >= 1){
if(b_db <= 0){
Ii_db.push(f_db);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_db.push(f_db);
}
}else{
Ii_db.push(Math.abs(v-b_db) / b_db +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_db.push(Math.abs(v-b_db) / b_db +1);
}
}
}else {
Ii_db.push(f_db);
//Si_db.push(b_db);
}
if(f_nk >= 1){
if(b_nk <= 0){
Ii_nk.push(f_nk)
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_nk.push(f_nk);
}
}else{
Ii_nk.push(Math.abs(v-b_nk) / b_nk +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_nk.push(Math.abs(v-b_nk) / b_nk +1);
}
}
}else {
Ii_nk.push(f_nk);
//Si_nk.push(b_nk);
}
}
}else if(json[i].condition == '3'){
if(name == '总氯'){
if(v - 0.8 > Number.EPSILON & v - 1.2 < Number.EPSILON){
f_gb = f_db = f_nk = 0;
}else if(v >= 0.6 & v <= 0.8){
f_gb = f_db = f_nk = Math.abs(v-0.8) / (0.8 - 0.6);
}else if(v - 1.2 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.2) / (2 - 1.2);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.8) / 0.8 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
Ii_gb.push(f_gb);
Ii_db.push(f_db);
Ii_nk.push(f_nk);
}else{
f_gb = (v > json[i].nationCriterionMin & v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v > json[i].areaCriterionMin & v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v > json[i].companyCriterionMin & v < json[i].companyCriterionMax) ? 0 : 1;
if(f_gb < 1){
Ii_gb.push(f_gb);
}else {
if(v < json[i].nationCriterionMin){
f_gb = Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1;
Ii_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
}
//Iie_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
}else{
f_gb = Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1;
Ii_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
}
//Iie_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
}
}
if(f_db < 1){
Ii_db.push(f_db);
}else {
if(v < json[i].areaCriterionMin){
f_db = Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1;
Ii_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}
//Iie_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_db = Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1;
Ii_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
//Iie_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
if(f_nk < 1){
Ii_nk.push(f_nk);
}else {
if(v < json[i].companyCriterionMin){
f_nk = Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1;
Ii_nk.push(Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_nk.push(Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1);
}
//Iie_nk.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_nk = Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1;
Ii_nk.push(Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_nk.push(Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1);
}
//Iie_nk.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
}
}else if(json[i].condition == '4'){
f_gb = (v < json[i].nationCriterionMin || v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v < json[i].areaCriterionMin || v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v < json[i].companyCriterionMin || v < json[i].companyCriterionMax) ? 0 : 1;
}
$('#'+id1+'_gbfzs_'+json[i].id).val(Number.parseFloat(f_gb).toFixed(2));
$('#'+id1+'_dbfzs_'+json[i].id).val(Number.parseFloat(f_db).toFixed(2));
$('#'+id1+'_nkfzs_'+json[i].id).val(Number.parseFloat(f_nk).toFixed(2));
}
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
var qwi_gb = Number.parseFloat(_max(Ii_gb));
var qwi_db = Number.parseFloat(_max(Ii_db));
var qwi_nk = Number.parseFloat(_max(Ii_nk));
}else{
var qwi_gb = Math.sqrt(sum(Ii_gb) / Ii_gb.length * _max(Ii_gb));
var qwi_db = Math.sqrt(sum(Ii_db) / Ii_db.length * _max(Ii_db));
var qwi_nk = Math.sqrt(sum(Ii_nk) / Ii_nk.length * _max(Ii_nk));
}
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
if(qwi_gb <= 1){
wqi_gb.push(qwi_gb);
}
if(qwi_db <= 1){
wqi_db.push(qwi_db);
}
if(qwi_nk <= 1){
wqi_nk.push(qwi_nk);
}
}
// var ecb_qwi_gb = (Ii_gb.length<=0? 1 : Math.sqrt(sum(Ii_gb) / Ii_gb.length)) * Math.sqrt(_max(Ii_gb)) * product(Iie_gb);
$('#'+id2).val(qwi_gb.toFixed(2));
// var ecb_qwi_db = (Ii_db.length<=0? 1 : Math.sqrt(sum(Ii_db) / Ii_db.length)) * Math.sqrt(_max(Ii_db)) * product(Iie_db);
$('#'+id3).val(qwi_db.toFixed(2));
// var ecb_qwi_nk = (Ii_nk.length<=0? 1 : Math.sqrt(sum(Ii_nk) / Ii_nk.length)) * Math.sqrt(_max(Ii_nk)) * product(Iie_nk);
$('#'+id4).val(qwi_nk.toFixed(2));
}
function _max(arr){
if(arr instanceof Array && arr.length >0){
let max = arr[0];
for (let i = 0; i < arr.length - 1; i++) {
max = Number.parseFloat(max) < Number.parseFloat(arr[i+1]) ? arr[i+1] : max
}
return max;
}else{
return 1;
}
}
function sum(arr) {
if(arr instanceof Array && arr.length >0){
//console.log(eval(arr.join("+")));
if(eval(arr.join("+")) <= 0){
return 1;
}
return eval(arr.join("+"));
}else{
return 1;
}
};
function sig(arr) {
if(arr instanceof Array && arr.length >0){
//console.log(eval(arr.join("+")));
if(eval(arr.join("+")) <= 0){
return 1;
}
return Math.sqrt(Number.parseFloat(eval(arr.join("+"))) / arr.length);
}else{
return 1;
}
};
function product(arr) {
if(arr instanceof Array && arr.length >0) {
var len = arr.length;
var result = len > 0 ? 1 : null;
for(var i = 0; i < arr.length; i++) {
result *= arr[i];
}
if(result <= 0){
return 1;
}
return result;
}
return 1;
}
$('#date').datepicker({
format: 'yyyy',
weekStart: 1,
autoclose: true,
startView: 2,
minViewMode: 1,
maxViewMode: 2,
forceParse: false,
language: 'zh-CN'
});
$('#date').datepicker('setDate','${nowDate.substring(0, 4)}');
</script>
<div class="modal fade" id="subModal" >
<div class="modal-dialog" style="width: 1200px;">
<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="alertDiv"></div>
<div id="subDivSelect"></div>
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="ecb_subForm">
<!-- 界面提醒div强制id为alertDiv -->
<table style="width: 100%;">
<tr>
<td colspan="8"><div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control" id="date" name="date" style="width: 132px;" autocomplete="off">
</div></td>
</tr>
<tr>
<td>指标名称</td>
<td>检测值</td>
<td>检测限</td>
<td>国家标准</td>
<td>分指数(国标)</td>
<td>地区标准</td>
<td>分指数(地区)</td>
<td>内控标准</td>
<td>分指数(内控)</td>
</tr>
<tr>
<td colspan="9"><input class="form-control" type="text" value ="基础项指标/0.3" disabled></td></td>
</tr>
<c:forEach items="${evaluationCriterionBacteriologys}" var="evaluationCriterionBacteriology">
<tr>
<td><input class="form-control" type="text" id="ecb_name_${evaluationCriterionBacteriology.id}" value ="${evaluationCriterionBacteriology.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionBacteriology.isSeries}" disabled id="ecb_series_${evaluationCriterionBacteriology.id}">
<td><input class="form-control" type="text" name ="ecb_key_${evaluationCriterionBacteriology.id}" id="ecb_key_${evaluationCriterionBacteriology.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecb_dl_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_gb_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.nationCriterionMin}-${evaluationCriterionBacteriology.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_gbfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecb_db_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.areaCriterionMin}-${evaluationCriterionBacteriology.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_dbfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecb_nk_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.companyCriterionMin}-${evaluationCriterionBacteriology.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_nkfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyYearNation" readonly="readonly" name="wqiBacteriologyYearNation"></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyYearArea" readonly="readonly" name="wqiBacteriologyYearArea"></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyYearCompany" readonly="readonly" name="wqiBacteriologyYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecd_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionDisinfectants}" var="evaluationCriterionDisinfectant">
<tr>
<td><input class="form-control" type="text" id="ecd_name_${evaluationCriterionDisinfectant.id}" value ="${evaluationCriterionDisinfectant.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionDisinfectant.isSeries}" disabled id="ecd_series_${evaluationCriterionDisinfectant.id}">
<td><input class="form-control" type="text" name ="ecd_key_${evaluationCriterionDisinfectant.id}" id="ecd_key_${evaluationCriterionDisinfectant.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecd_dl_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_gb_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.nationCriterionMin}-${evaluationCriterionDisinfectant.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_gbfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecd_db_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.areaCriterionMin}-${evaluationCriterionDisinfectant.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_dbfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecd_nk_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.companyCriterionMin}-${evaluationCriterionDisinfectant.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_nkfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantYearNation" readonly="readonly" name="wqiDisinfectantYearNation"></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantYearArea" readonly="readonly" name="wqiDisinfectantYearArea"></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantYearCompany" readonly="readonly" name="wqiDisinfectantYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecs_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionSensoryorgans}" var="evaluationCriterionSensoryorgan">
<tr>
<td><input class="form-control" type="text" id="ecs_name_${evaluationCriterionSensoryorgan.id}" value ="${evaluationCriterionSensoryorgan.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionSensoryorgan.isSeries}" disabled id="ecs_series_${evaluationCriterionSensoryorgan.id}">
<td><input class="form-control" type="text" name ="ecs_key_${evaluationCriterionSensoryorgan.id}" id="ecs_key_${evaluationCriterionSensoryorgan.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecs_dl_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_gb_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.nationCriterionMin}-${evaluationCriterionSensoryorgan.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_gbfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecs_db_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.areaCriterionMin}-${evaluationCriterionSensoryorgan.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_dbfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecs_nk_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.companyCriterionMin}-${evaluationCriterionSensoryorgan.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_nkfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganYearNation" readonly="readonly" name="wqiSensoryorganYearNation"></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganYearArea" readonly="readonly" name="wqiSensoryorganYearArea"></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganYearCompany" readonly="readonly" name="wqiSensoryorganYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ect_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionToxicologys}" var="evaluationCriterionToxicology">
<tr>
<td><input class="form-control" type="text" id="ect_name_${evaluationCriterionToxicology.id}" value ="${evaluationCriterionToxicology.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionToxicology.isSeries}" disabled id="ect_series_${evaluationCriterionToxicology.id}">
<td><input class="form-control" type="text" name ="ect_key_${evaluationCriterionToxicology.id}" id="ect_key_${evaluationCriterionToxicology.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ect_dl_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_gb_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.nationCriterionMin}-${evaluationCriterionToxicology.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_gbfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ect_db_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.areaCriterionMin}-${evaluationCriterionToxicology.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_dbfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ect_nk_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.companyCriterionMin}-${evaluationCriterionToxicology.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_nkfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyYearNation" readonly="readonly" name="wqiToxicologyYearNation"></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyYearArea" readonly="readonly" name="wqiToxicologyYearArea"></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyYearCompany" readonly="readonly" name="wqiToxicologyYearCompany"></td>
</tr>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="基础指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiBasicYearNation" readonly="readonly" name="wqiBasicYearNation"></td>
<td><input class="form-control" type="text" value ="基础指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiBasicYearArea" readonly="readonly" name="wqiBasicYearArea"></td>
<td><input class="form-control" type="text" value ="基础指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiBasicYearCompany" readonly="readonly" name="wqiBasicYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="eco_subForm">
<table style="width: 100%;">
<tr>
<td colspan="9"><input class="form-control" type="text" value ="特征项指标/0.7" disabled></td></td>
</tr>
<c:forEach items="${evaluationcriterionOrganics}" var="evaluationcriterionOrganic">
<tr>
<td><input class="form-control" type="text" id="eco_name_${evaluationcriterionOrganic.id}" value ="${evaluationcriterionOrganic.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationcriterionOrganic.isSeries}" disabled id="eco_series_${evaluationcriterionOrganic.id}">
<td><input class="form-control" type="text" name ="eco_key_${evaluationcriterionOrganic.id}" id="eco_key_${evaluationcriterionOrganic.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="eco_dl_${evaluationcriterionOrganic.id}" <c:if test="${evaluationcriterionOrganic.condition == '1' || evaluationcriterionOrganic.condition == '2'}"> value="${evaluationcriterionOrganic.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="eco_gb_${evaluationcriterionOrganic.id}" <c:if test="${evaluationcriterionOrganic.condition == '1' || evaluationcriterionOrganic.condition == '2'}"> value="${evaluationcriterionOrganic.nationCriterionValue}"</c:if> <c:if test="${evaluationcriterionOrganic.condition == '3'}"> value="[${evaluationcriterionOrganic.nationCriterionMin}-${evaluationcriterionOrganic.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="eco_gbfzs_${evaluationcriterionOrganic.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="eco_db_${evaluationcriterionOrganic.id}" <c:if test="${evaluationcriterionOrganic.condition == '1' || evaluationcriterionOrganic.condition == '2'}"> value="${evaluationcriterionOrganic.areaCriterionValue}"</c:if> <c:if test="${evaluationcriterionOrganic.condition == '3'}"> value="[${evaluationcriterionOrganic.areaCriterionMin}-${evaluationcriterionOrganic.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="eco_dbfzs_${evaluationcriterionOrganic.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="eco_nk_${evaluationcriterionOrganic.id}" <c:if test="${evaluationcriterionOrganic.condition == '1' || evaluationcriterionOrganic.condition == '2'}"> value="${evaluationcriterionOrganic.companyCriterionValue}"</c:if> <c:if test="${evaluationcriterionOrganic.condition == '3'}"> value="[${evaluationcriterionOrganic.companyCriterionMin}-${evaluationcriterionOrganic.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="eco_nkfzs_${evaluationcriterionOrganic.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="有机物综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiOrganicYearNation" readonly="readonly" name="wqiOrganicYearNation"></td>
<td><input class="form-control" type="text" value ="有机物综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiOrganicYearArea" readonly="readonly" name="wqiOrganicYearArea"></td>
<td><input class="form-control" type="text" value ="有机物综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiOrganicYearCompany" readonly="readonly" name="wqiOrganicYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecsl_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationcriterionSmells}" var="evaluationcriterionSmell">
<tr>
<td><input class="form-control" type="text" id="ecsl_name_${evaluationcriterionSmell.id}" value ="${evaluationcriterionSmell.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationcriterionSmell.isSeries}" disabled id="ecsl_series_${evaluationcriterionSmell.id}">
<td><input class="form-control" type="text" name ="ecsl_key_${evaluationcriterionSmell.id}" id="ecsl_key_${evaluationcriterionSmell.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecsl_dl_${evaluationcriterionSmell.id}" <c:if test="${evaluationcriterionSmell.condition == '1' || evaluationcriterionSmell.condition == '2'}"> value="${evaluationcriterionSmell.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecsl_gb_${evaluationcriterionSmell.id}" <c:if test="${evaluationcriterionSmell.condition == '1' || evaluationcriterionSmell.condition == '2'}"> value="${evaluationcriterionSmell.nationCriterionValue}"</c:if> <c:if test="${evaluationcriterionSmell.condition == '3'}"> value="[${evaluationcriterionSmell.nationCriterionMin}-${evaluationcriterionSmell.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecsl_gbfzs_${evaluationcriterionSmell.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecsl_db_${evaluationcriterionSmell.id}" <c:if test="${evaluationcriterionSmell.condition == '1' || evaluationcriterionSmell.condition == '2'}"> value="${evaluationcriterionSmell.areaCriterionValue}"</c:if> <c:if test="${evaluationcriterionSmell.condition == '3'}"> value="[${evaluationcriterionSmell.areaCriterionMin}-${evaluationcriterionSmell.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecsl_dbfzs_${evaluationcriterionSmell.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecsl_nk_${evaluationcriterionSmell.id}" <c:if test="${evaluationcriterionSmell.condition == '1' || evaluationcriterionSmell.condition == '2'}"> value="${evaluationcriterionSmell.companyCriterionValue}"</c:if> <c:if test="${evaluationcriterionSmell.condition == '3'}"> value="[${evaluationcriterionSmell.companyCriterionMin}-${evaluationcriterionSmell.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecsl_nkfzs_${evaluationcriterionSmell.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="嗅味综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSmellYearNation" readonly="readonly" name="wqiSmellYearNation"></td>
<td><input class="form-control" type="text" value ="嗅味综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSmellYearArea" readonly="readonly" name="wqiSmellYearArea"></td>
<td><input class="form-control" type="text" value ="嗅味综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSmellYearCompany" readonly="readonly" name="wqiSmellYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecp_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationcriterionDbpss}" var="evaluationcriterionDbps">
<tr>
<td><input class="form-control" type="text" id="ecp_name_${evaluationcriterionDbps.id}" value ="${evaluationcriterionDbps.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationcriterionDbps.isSeries}" disabled id="ecp_series_${evaluationcriterionDbps.id}">
<td><input class="form-control" type="text" name ="ecp_key_${evaluationcriterionDbps.id}" id="ecp_key_${evaluationcriterionDbps.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecp_dl_${evaluationcriterionDbps.id}" <c:if test="${evaluationcriterionDbps.condition == '1' || evaluationcriterionDbps.condition == '2'}"> value="${evaluationcriterionDbps.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecp_gb_${evaluationcriterionDbps.id}" <c:if test="${evaluationcriterionDbps.condition == '1' || evaluationcriterionDbps.condition == '2'}"> value="${evaluationcriterionDbps.nationCriterionValue}"</c:if> <c:if test="${evaluationcriterionDbps.condition == '3'}"> value="[${evaluationcriterionDbps.nationCriterionMin}-${evaluationcriterionDbps.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecp_gbfzs_${evaluationcriterionDbps.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecp_db_${evaluationcriterionDbps.id}" <c:if test="${evaluationcriterionDbps.condition == '1' || evaluationcriterionDbps.condition == '2'}"> value="${evaluationcriterionDbps.areaCriterionValue}"</c:if> <c:if test="${evaluationcriterionDbps.condition == '3'}"> value="[${evaluationcriterionDbps.areaCriterionMin}-${evaluationcriterionDbps.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecp_dbfzs_${evaluationcriterionDbps.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecp_nk_${evaluationcriterionDbps.id}" <c:if test="${evaluationcriterionDbps.condition == '1' || evaluationcriterionDbps.condition == '2'}"> value="${evaluationcriterionDbps.companyCriterionValue}"</c:if> <c:if test="${evaluationcriterionDbps.condition == '3'}"> value="[${evaluationcriterionDbps.companyCriterionMin}-${evaluationcriterionDbps.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecp_nkfzs_${evaluationcriterionDbps.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="消毒副产品综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDbpsYearNation" readonly="readonly" name="wqiDbpsYearNation"></td>
<td><input class="form-control" type="text" value ="消毒副产品综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDbpsYearArea" readonly="readonly" name="wqiDbpsYearArea"></td>
<td><input class="form-control" type="text" value ="消毒副产品综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDbpsYearCompany" readonly="readonly" name="wqiDbpsYearCompany"></td>
</tr>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="特征指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiFeaturesYearNation" readonly="readonly" name="wqiFeaturesYearNation"></td>
<td><input class="form-control" type="text" value ="特征指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiFeaturesYearArea" readonly="readonly" name="wqiFeaturesYearArea"></td>
<td><input class="form-control" type="text" value ="特征指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiFeaturesYearCompany" readonly="readonly" name="wqiFeaturesYearCompany"></td>
</tr>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="年评指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiYearNation" readonly="readonly" name="wqiYearNation"></td>
<td><input class="form-control" type="text" value ="年评指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiYearArea" readonly="readonly" name="wqiYearArea"></td>
<td><input class="form-control" type="text" value ="年评指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiYearCompany" readonly="readonly" name="wqiYearCompany"></td>
</tr>
</table>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary left" onclick="doreckon()" id="btn_save">计算</button>
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,242 @@
<%@page import="com.sipai.tools.CommString"%>
<%@ 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"%>
<%@page import="com.sipai.entity.equipment.EquipmentCommStr"%>
<%request.setAttribute("EquipmentLife_Standard_Trade", EquipmentCommStr.EquipmentLife_Standard_Trade); %>
<%request.setAttribute("EquipmentLife_Standard_Supplier", EquipmentCommStr.EquipmentLife_Standard_Supplier); %>
<%request.setAttribute("EquipmentLife_Standard_Enterprise", EquipmentCommStr.EquipmentLife_Standard_Enterprise); %>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<!-- bootstrap switch -->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"
charset="utf-8"></script>
<script type="text/javascript">
//查看设备等级
var viewFun = function (id) {
$.post(ext.contextPath + '/evaluation/indexYear/doview.do', { id: id }, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
};
var addFun = function () {
$.get(ext.contextPath + '/evaluation/indexYear/doAdd.do', function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var editFun = function (id) {
$.get(ext.contextPath + '/evaluation/Index/doedit.do', {id:id}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
var deletesFun = function() {
var checkedItems = $("#table").bootstrapTable('getSelections');
var datas="";
$.each(checkedItems, function(index, item){
datas+=item.id+",";
});
if(datas==""){
showAlert('d','请先选择记录','mainAlertdiv');
}else{
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) {
$.post(ext.contextPath + '/evaluation/indexYear/dodeletes.do', {ids:datas} , function(data) {
if(data>0){
$("#table").bootstrapTable('refresh');
}else{
showAlert('d','删除失败','mainAlertdiv');
}
},'json');
}
});
}
};
//模糊查询列表中的数据
var dosearch = function () {
$("#table").bootstrapTable('refresh');
};
$(function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/evaluation/indexYear/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 50, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},
{
field: 'date', // 返回json数据中的name
title: '指标名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter: function(value, row, index){
if(value != null){
return '年评价指数('+value.substring(0,4)+')';
}
}
}, {
field: 'wqiBasicYearNation', // 返回json数据中的name
title: '基础指数(国标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: 'wqiBasicYearArea', // 返回json数据中的name
title: '基础指数(地标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: 'wqiBasicYearCompany', // 返回json数据中的name
title: '基础指数(内控)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
},{
field: 'wqiFeaturesYearNation', // 返回json数据中的name
title: '特征指数(国标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiFeaturesYearArea', // 返回json数据中的name
title: '特征指数(地标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiFeaturesYearCompany', // 返回json数据中的name
title: '特征指数(内控)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiYearNation', // 返回json数据中的name
title: '年评价指数(国标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiYearArea', // 返回json数据中的name
title: '年评价指数(地标)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
field: 'wqiYearCompany', // 返回json数据中的name
title: '年评价指数(内控)', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle'// 上下居中
}, {
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="viewFun(\'' + row.id + '\')"><i class="fa fa-eye"></i><span class="hidden-md hidden-lg"> 查看</span></button>';
buts = '<div class="btn-group" >' + buts + '</div>';
return buts;
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onDblClickRow:function(row){
viewFun(row.id);
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<!-- 引用top -->
<%--<jsp:include page="/jsp/side.jsp"></jsp:include> --%>
<!-- 菜单栏 -->
<%-- <jsp:include page="/jsp/left.jsp"></jsp:include> --%>
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1 id="head_title"></h1>
<ol class="breadcrumb">
<li><a id='head_firstlevel' href="#"><i class="fa fa-dashboard"></i> </a></li>
<!-- <li class="active">Here</li> -->
</ol>
</section>
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div>
<div class="btn-group" style="width: 280px;padding-bottom:10px;">
<button type="button" class="btn btn-default btn-sm" onclick="addFun();"><i class="fa fa-plus"></i> 新增</button>
<button type="button" class="btn btn-default btn-sm" onclick="deletesFun();"><i class="fa fa-trash-o"></i> 删除</button>
</div>
<table id="table"></table>
</div>
</section>
<!-- /.content -->
</div>
<%-- <jsp:include page="/jsp/bottom.jsp"></jsp:include> --%>
<jsp:include page="/jsp/side.jsp"></jsp:include>
</div>
</body>
</html>

View File

@ -0,0 +1,760 @@
<%@ 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"%>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
var Iie_gb = [];
var Iie_db = [];
var Iie_nk = [];
var wqi_gb = [];
var wqi_db = [];
var wqi_nk = [];
function dosave() {
if($('#date').val() == null || $('#date').val() == ''){
swal('请先选择年份!');
return;
}
doreckon();
//$("#subForm").bootstrapValidator('validate');//提交验证
//if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/evaluation/indexYear/dosave.do", {paramecb:$("#ecb_subForm").serialize(),paramecd:$("#ecd_subForm").serialize(),paramecs:$("#ecs_subForm").serialize(),paramect:$("#ect_subForm").serialize(),parameco:$("#eco_subForm").serialize(),paramecsl:$("#ecsl_subForm").serialize(),paramecp:$("#ecp_subForm").serialize()}, function(data) {
if (data == 1){
swal('保存成功');
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data == 0){
swal('保存失败');
}else{
swal(data);
}
},'json');
// }
}
$(function(){
var criterionBacteriologyValue = '${criterionBacteriologyValue}';
var json = JSON.parse(criterionBacteriologyValue);
for(var key in json){
var value = json[key];
$('#ecb_key_'+key).val(value);
};
var criterionDisinfectantValue = '${criterionDisinfectantValue}';
var json = JSON.parse(criterionDisinfectantValue);
for(var key in json){
var value = json[key];
$('#ecd_key_'+key).val(value);
};
var criterionSensoryorganValue = '${criterionSensoryorganValue}';
var json = JSON.parse(criterionSensoryorganValue);
for(var key in json){
var value = json[key];
$('#ecs_key_'+key).val(value);
};
var criterionToxicologyValue = '${criterionToxicologyValue}';
var json = JSON.parse(criterionToxicologyValue);
for(var key in json){
var value = json[key];
$('#ect_key_'+key).val(value);
};
var criterionOrganicValue = '${criterionOrganicValue}';
var json = JSON.parse(criterionOrganicValue);
for(var key in json){
var value = json[key];
$('#eco_key_'+key).val(value);
};
var criterionSmellValue = '${criterionSmellValue}';
var json = JSON.parse(criterionSmellValue);
for(var key in json){
var value = json[key];
$('#ecsl_key_'+key).val(value);
};
var criterionDbpsValue = '${criterionDbpsValue}';
var json = JSON.parse(criterionDbpsValue);
for(var key in json){
var value = json[key];
$('#ecp_key_'+key).val(value);
};
doreckon();
});
function doreckon(){
var json_ecb = JSON.parse('${ecb}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecd = JSON.parse('${ecd}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecs = JSON.parse('${ecs}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ect = JSON.parse('${ect}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_eco = JSON.parse('${eco}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecsl = JSON.parse('${ecsl}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var json_ecp = JSON.parse('${ecp}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
doreckon_detail(json_ecb,'ecb','wqiBacteriologyYearNation','wqiBacteriologyYearArea','wqiBacteriologyYearCompany');
doreckon_detail(json_ecd,'ecd','wqiDisinfectantYearNation','wqiDisinfectantYearArea','wqiDisinfectantYearCompany');
doreckon_detail(json_ecs,'ecs','wqiSensoryorganYearNation','wqiSensoryorganYearArea','wqiSensoryorganYearCompany');
doreckon_detail(json_ect,'ect','wqiToxicologyYearNation','wqiToxicologyYearArea','wqiToxicologyYearCompany');
doreckon_detail(json_eco,'eco','wqiOrganicYearNation','wqiOrganicYearArea','wqiOrganicYearCompany');
doreckon_detail(json_ecsl,'ecsl','wqiSmellYearNation','wqiSmellYearArea','wqiSmellYearCompany');
doreckon_detail(json_ecp,'ecp','wqiDbpsYearNation','wqiDbpsYearArea','wqiDbpsYearCompany');
var basib_gb = [];
basib_gb.push($('#wqiBacteriologyYearNation').val());
basib_gb.push($('#wqiDisinfectantYearNation').val());
basib_gb.push($('#wqiSensoryorganYearNation').val());
basib_gb.push($('#wqiToxicologyYearNation').val());
$('#wqiBasicYearNation').val(Math.sqrt(sum(basib_gb) / basib_gb.length * _max(basib_gb)).toFixed(2));
var basib_db = [];
basib_db.push($('#wqiBacteriologyYearArea').val());
basib_db.push($('#wqiDisinfectantYearArea').val());
basib_db.push($('#wqiSensoryorganYearArea').val());
basib_db.push($('#wqiToxicologyYearArea').val());
$('#wqiBasicYearArea').val(Math.sqrt(sum(basib_db) / basib_db.length * _max(basib_db)).toFixed(2));
var basib_nk = [];
basib_nk.push($('#wqiBacteriologyYearCompany').val());
basib_nk.push($('#wqiDisinfectantYearCompany').val());
basib_nk.push($('#wqiSensoryorganYearCompany').val());
basib_nk.push($('#wqiToxicologyYearCompany').val());
$('#wqiBasicYearCompany').val(Math.sqrt(sum(basib_nk) / basib_nk.length * _max(basib_nk)).toFixed(2));
var feature_gb = [];
feature_gb.push($('#wqiOrganicYearNation').val());
feature_gb.push($('#wqiSmellYearNation').val());
feature_gb.push($('#wqiDbpsYearNation').val());
// $('#wqiFeaturesYearNation').val(Math.sqrt(sum(feature_gb) / feature_gb.length * _max(feature_gb)).toFixed(2));
$('#wqiFeaturesYearNation').val((sig(wqi_gb) * Math.sqrt(_max(wqi_gb)) * product(Iie_gb)).toFixed(2));
var feature_db = [];
feature_db.push($('#wqiOrganicYearArea').val());
feature_db.push($('#wqiSmellYearArea').val());
feature_db.push($('#wqiDbpsYearArea').val());
// $('#wqiFeaturesYearArea').val(Math.sqrt(sum(feature_db) / feature_db.length * _max(feature_db)).toFixed(2));
$('#wqiFeaturesYearArea').val((sig(wqi_db)* Math.sqrt(_max(wqi_db)) * product(Iie_db)).toFixed(2));
var feature_nk = [];
feature_nk.push($('#wqiOrganicYearCompany').val());
feature_nk.push($('#wqiSmellYearCompany').val());
feature_nk.push($('#wqiDbpsYearCompany').val());
// $('#wqiFeaturesYearCompany').val(Math.sqrt(sum(feature_nk) / feature_nk.length * _max(feature_nk)).toFixed(2));
$('#wqiFeaturesYearCompany').val((sig(wqi_nk)* Math.sqrt(_max(wqi_nk)) * product(Iie_nk)).toFixed(2));
$('#wqiYearNation').val(($('#wqiBasicYearNation').val() * 0.3 +$('#wqiFeaturesYearNation').val() * 0.7).toFixed(2));
$('#wqiYearArea').val(($('#wqiBasicYearArea').val() * 0.3 +$('#wqiFeaturesYearArea').val() * 0.7).toFixed(2));
$('#wqiYearCompany').val(($('#wqiBasicYearCompany').val() * 0.3 +$('#wqiFeaturesYearCompany').val() * 0.7).toFixed(2));
// doreckon_ecd();
// doreckon_ecs();
// doreckon_ect();
}
function doreckon_detail(json,id1,id2,id3,id4) {
//var json = JSON.parse('${ecb}'.replace(/\ +/g,"").replace(/[\r\n]/g,""));
var Ci = [];
var Ii_gb = [];
var Ii_db = [];
var Ii_nk = [];
for(var i = 0; i < json.length; i++){
var v = $('#'+id1+'_key_'+json[i].id).val();
if(v == null || v == ''){
swal('请全部填完!');
return;
}
Ci.push(v);
var b_gb = $('#'+id1+'_gb_'+json[i].id).val();
var b_db = $('#'+id1+'_db_'+json[i].id).val();
var b_nk = $('#'+id1+'_nk_'+json[i].id).val();
var dl = $('#'+id1+'_dl_'+json[i].id).val();
var series = $('#'+id1+'_series_'+json[i].id).val();
var name = $('#'+id1+'_name_'+json[i].id).val();
var f_gb;
var f_db;
var f_nk;
if(json[i].condition == '1' || json[i].condition == '2'){
if(name == '总大肠菌群' || name == '耐热大肠菌群' || name == '大肠埃希氏菌'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1 + 0.5 * (v - 1);
}
}else if(name == '肉眼可见物'){
if(v -0 < Number.EPSILON){
f_gb = f_db = f_nk = 0.1;
}else{
f_gb = f_db = f_nk = 1.5;
}
}else{
if(b_gb <= 0){
f_gb = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_gb = v;
}else{
if(dl != null && dl != ''){
f_gb = (v - dl < Number.EPSILON) ? 0.1 : (v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2));
}else{
//f_gb = (v / b_gb).toFixed(2);
f_gb = v / b_gb < 0.1 ? 0.1 : (v / b_gb).toFixed(2);
}
}
}
if(b_db <= 0){
f_db = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_db = v;
}else{
if(dl != null && dl != ''){
f_db = (v - dl < Number.EPSILON) ? 0.1 : (v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2));
}else{
//f_db = (v / b_db).toFixed(2);
f_db = v / b_db < 0.1 ? 0.1 : (v / b_db).toFixed(2);
}
}
}
if(b_nk <= 0){
f_nk = v > 0 ? v : 0;;
}else{
if(series == 'true'){
f_nk = v;
}else{
if(dl != null && dl != ''){
f_nk = (v - dl < Number.EPSILON) ? 0.1 : (v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2));
}else{
//f_nk = (v / b_nk).toFixed(2);
f_nk = v / b_nk < 0.1 ? 0.1 : (v / b_nk).toFixed(2);
}
}
}
}
if(series == 'true'){
Ii_gb.push(v);
Ii_db.push(v);
Ii_nk.push(v);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
if(v > b_gb){
Iie_gb.push(v);
Iie_db.push(v);
Iie_nk.push(v);
}
}
}else{
if(f_gb >= 1){
if(b_gb <= 0){
Ii_gb.push(f_gb);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_gb.push(f_gb);
}
}else{
Ii_gb.push(Math.abs(v-b_gb) / b_gb +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_gb.push(Math.abs(v-b_gb) / b_gb +1);
}
}
}else {
Ii_gb.push(f_gb);
//Si_gb.push(b_gb);
}
if(f_db >= 1){
if(b_db <= 0){
Ii_db.push(f_db);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_db.push(f_db);
}
}else{
Ii_db.push(Math.abs(v-b_db) / b_db +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_db.push(Math.abs(v-b_db) / b_db +1);
}
}
}else {
Ii_db.push(f_db);
//Si_db.push(b_db);
}
if(f_nk >= 1){
if(b_nk <= 0){
Ii_nk.push(f_nk)
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_nk.push(f_nk);
}
}else{
Ii_nk.push(Math.abs(v-b_nk) / b_nk +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_nk.push(Math.abs(v-b_nk) / b_nk +1);
}
}
}else {
Ii_nk.push(f_nk);
//Si_nk.push(b_nk);
}
}
}else if(json[i].condition == '3'){
if(name == '总氯'){
if(v - 0.8 > Number.EPSILON & v - 1.2 < Number.EPSILON){
f_gb = f_db = f_nk = 0;
}else if(v >= 0.6 & v <= 0.8){
f_gb = f_db = f_nk = Math.abs(v-0.8) / (0.8 - 0.6);
}else if(v - 1.2 > Number.EPSILON & v - 2 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-1.2) / (2 - 1.2);
}else if(v - 0.6 < Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-0.8) / 0.8 +1;
}else if(v - 2 > Number.EPSILON){
f_gb = f_db = f_nk = Math.abs(v-2) / 2 +1;
}
Ii_gb.push(f_gb);
Ii_db.push(f_db);
Ii_nk.push(f_nk);
}else{
f_gb = (v > json[i].nationCriterionMin & v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v > json[i].areaCriterionMin & v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v > json[i].companyCriterionMin & v < json[i].companyCriterionMax) ? 0 : 1;
if(f_gb < 1){
Ii_gb.push(f_gb);
}else {
if(v < json[i].nationCriterionMin){
f_gb = Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1;
Ii_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
}
//Iie_gb.push(Math.abs(v-json[i].nationCriterionMin) / json[i].nationCriterionMin +1);
}else{
f_gb = Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1;
Ii_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
}
//Iie_gb.push(Math.abs(v-json[i].nationCriterionMax) / json[i].nationCriterionMax +1);
}
}
if(f_db < 1){
Ii_db.push(f_db);
}else {
if(v < json[i].areaCriterionMin){
f_db = Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1;
Ii_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}
//Iie_db.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_db = Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1;
Ii_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
//Iie_db.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
if(f_nk < 1){
Ii_nk.push(f_nk);
}else {
if(v < json[i].companyCriterionMin){
f_nk = Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1;
Ii_nk.push(Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_nk.push(Math.abs(v-json[i].companyCriterionMin) / json[i].companyCriterionMin +1);
}
//Iie_nk.push(Math.abs(v-json[i].areaCriterionMin) / json[i].areaCriterionMin +1);
}else{
f_nk = Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1;
Ii_nk.push(Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1);
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
Iie_nk.push(Math.abs(v-json[i].companyCriterionMax) / json[i].companyCriterionMax +1);
}
//Iie_nk.push(Math.abs(v-json[i].areaCriterionMax) / json[i].areaCriterionMax +1);
}
}
}
}else if(json[i].condition == '4'){
f_gb = (v < json[i].nationCriterionMin || v < json[i].nationCriterionMax) ? 0 : 1;
f_db = (v < json[i].areaCriterionMin || v < json[i].areaCriterionMax) ? 0 : 1;
f_nk = (v < json[i].companyCriterionMin || v < json[i].companyCriterionMax) ? 0 : 1;
}
$('#'+id1+'_gbfzs_'+json[i].id).val(Number.parseFloat(f_gb).toFixed(2));
$('#'+id1+'_dbfzs_'+json[i].id).val(Number.parseFloat(f_db).toFixed(2));
$('#'+id1+'_nkfzs_'+json[i].id).val(Number.parseFloat(f_nk).toFixed(2));
}
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
var qwi_gb = Number.parseFloat(_max(Ii_gb));
var qwi_db = Number.parseFloat(_max(Ii_db));
var qwi_nk = Number.parseFloat(_max(Ii_nk));
}else{
var qwi_gb = Math.sqrt(sum(Ii_gb) / Ii_gb.length * _max(Ii_gb));
var qwi_db = Math.sqrt(sum(Ii_db) / Ii_db.length * _max(Ii_db));
var qwi_nk = Math.sqrt(sum(Ii_nk) / Ii_nk.length * _max(Ii_nk));
}
if(id1 == 'eco' || id1 == 'ecsl' || id1 == 'ecp'){
if(qwi_gb <= 1){
wqi_gb.push(qwi_gb);
}
if(qwi_db <= 1){
wqi_db.push(qwi_db);
}
if(qwi_nk <= 1){
wqi_nk.push(qwi_nk);
}
}
// var ecb_qwi_gb = (Ii_gb.length<=0? 1 : Math.sqrt(sum(Ii_gb) / Ii_gb.length)) * Math.sqrt(_max(Ii_gb)) * product(Iie_gb);
$('#'+id2).val(qwi_gb.toFixed(2));
// var ecb_qwi_db = (Ii_db.length<=0? 1 : Math.sqrt(sum(Ii_db) / Ii_db.length)) * Math.sqrt(_max(Ii_db)) * product(Iie_db);
$('#'+id3).val(qwi_db.toFixed(2));
// var ecb_qwi_nk = (Ii_nk.length<=0? 1 : Math.sqrt(sum(Ii_nk) / Ii_nk.length)) * Math.sqrt(_max(Ii_nk)) * product(Iie_nk);
$('#'+id4).val(qwi_nk.toFixed(2));
}
function _max(arr){
if(arr instanceof Array && arr.length >0){
let max = arr[0];
for (let i = 0; i < arr.length - 1; i++) {
max = Number.parseFloat(max) < Number.parseFloat(arr[i+1]) ? arr[i+1] : max
}
return max;
}else{
return 1;
}
}
function sum(arr) {
if(arr instanceof Array && arr.length >0){
//console.log(eval(arr.join("+")));
if(eval(arr.join("+")) <= 0){
return 1;
}
return eval(arr.join("+"));
}else{
return 1;
}
};
function sig(arr) {
if(arr instanceof Array && arr.length >0){
//console.log(eval(arr.join("+")));
if(eval(arr.join("+")) <= 0){
return 1;
}
return Math.sqrt(Number.parseFloat(eval(arr.join("+"))) / arr.length);
}else{
return 1;
}
};
function product(arr) {
if(arr instanceof Array && arr.length >0) {
var len = arr.length;
var result = len > 0 ? 1 : null;
for(var i = 0; i < arr.length; i++) {
result *= arr[i];
}
if(result <= 0){
return 1;
}
return result;
}
return 1;
}
$('#date').datepicker({
format: 'yyyy',
weekStart: 1,
autoclose: true,
startView: 2,
minViewMode: 1,
maxViewMode: 2,
forceParse: false,
language: 'zh-CN'
});
</script>
<div class="modal fade" id="subModal" >
<div class="modal-dialog" style="width: 1200px;">
<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="alertDiv"></div>
<div id="subDivSelect"></div>
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="ecb_subForm">
<input type="hidden" name="id" value="${id}">
<!-- 界面提醒div强制id为alertDiv -->
<table style="width: 100%;">
<tr>
<td colspan="8"><div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control" id="date" name="date" value="${date}" style="width: 132px;" autocomplete="off">
</div></td>
</tr>
<tr>
<td>指标名称</td>
<td>检测值</td>
<td>检测限</td>
<td>国家标准</td>
<td>分指数(国标)</td>
<td>地区标准</td>
<td>分指数(地区)</td>
<td>内控标准</td>
<td>分指数(内控)</td>
</tr>
<tr>
<td colspan="9"><input class="form-control" type="text" value ="基础项指标/0.3" disabled></td></td>
</tr>
<c:forEach items="${evaluationCriterionBacteriologys}" var="evaluationCriterionBacteriology">
<tr>
<td><input class="form-control" type="text" id="ecb_name_${evaluationCriterionBacteriology.id}" value ="${evaluationCriterionBacteriology.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionBacteriology.isSeries}" disabled id="ecb_series_${evaluationCriterionBacteriology.id}">
<td><input class="form-control" type="text" name ="ecb_key_${evaluationCriterionBacteriology.id}" id="ecb_key_${evaluationCriterionBacteriology.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecb_dl_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_gb_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.nationCriterionMin}-${evaluationCriterionBacteriology.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_gbfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecb_db_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.areaCriterionMin}-${evaluationCriterionBacteriology.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_dbfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecb_nk_${evaluationCriterionBacteriology.id}" <c:if test="${evaluationCriterionBacteriology.condition == '1' || evaluationCriterionBacteriology.condition == '2'}"> value="${evaluationCriterionBacteriology.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionBacteriology.condition == '3'}"> value="[${evaluationCriterionBacteriology.companyCriterionMin}-${evaluationCriterionBacteriology.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecb_nkfzs_${evaluationCriterionBacteriology.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyYearNation" readonly="readonly" name="wqiBacteriologyYearNation"></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyYearArea" readonly="readonly" name="wqiBacteriologyYearArea"></td>
<td><input class="form-control" type="text" value ="细菌学综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiBacteriologyYearCompany" readonly="readonly" name="wqiBacteriologyYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecd_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionDisinfectants}" var="evaluationCriterionDisinfectant">
<tr>
<td><input class="form-control" type="text" id="ecd_name_${evaluationCriterionDisinfectant.id}" value ="${evaluationCriterionDisinfectant.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionDisinfectant.isSeries}" disabled id="ecd_series_${evaluationCriterionDisinfectant.id}">
<td><input class="form-control" type="text" name ="ecd_key_${evaluationCriterionDisinfectant.id}" id="ecd_key_${evaluationCriterionDisinfectant.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecd_dl_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_gb_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.nationCriterionMin}-${evaluationCriterionDisinfectant.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_gbfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecd_db_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.areaCriterionMin}-${evaluationCriterionDisinfectant.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_dbfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecd_nk_${evaluationCriterionDisinfectant.id}" <c:if test="${evaluationCriterionDisinfectant.condition == '1' || evaluationCriterionDisinfectant.condition == '2'}"> value="${evaluationCriterionDisinfectant.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionDisinfectant.condition == '3'}"> value="[${evaluationCriterionDisinfectant.companyCriterionMin}-${evaluationCriterionDisinfectant.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecd_nkfzs_${evaluationCriterionDisinfectant.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantYearNation" readonly="readonly" name="wqiDisinfectantYearNation"></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantYearArea" readonly="readonly" name="wqiDisinfectantYearArea"></td>
<td><input class="form-control" type="text" value ="消毒剂综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDisinfectantYearCompany" readonly="readonly" name="wqiDisinfectantYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecs_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionSensoryorgans}" var="evaluationCriterionSensoryorgan">
<tr>
<td><input class="form-control" type="text" id="ecs_name_${evaluationCriterionSensoryorgan.id}" value ="${evaluationCriterionSensoryorgan.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionSensoryorgan.isSeries}" disabled id="ecs_series_${evaluationCriterionSensoryorgan.id}">
<td><input class="form-control" type="text" name ="ecs_key_${evaluationCriterionSensoryorgan.id}" id="ecs_key_${evaluationCriterionSensoryorgan.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecs_dl_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_gb_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.nationCriterionMin}-${evaluationCriterionSensoryorgan.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_gbfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecs_db_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.areaCriterionMin}-${evaluationCriterionSensoryorgan.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_dbfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecs_nk_${evaluationCriterionSensoryorgan.id}" <c:if test="${evaluationCriterionSensoryorgan.condition == '1' || evaluationCriterionSensoryorgan.condition == '2'}"> value="${evaluationCriterionSensoryorgan.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionSensoryorgan.condition == '3'}"> value="[${evaluationCriterionSensoryorgan.companyCriterionMin}-${evaluationCriterionSensoryorgan.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecs_nkfzs_${evaluationCriterionSensoryorgan.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganYearNation" readonly="readonly" name="wqiSensoryorganYearNation"></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganYearArea" readonly="readonly" name="wqiSensoryorganYearArea"></td>
<td><input class="form-control" type="text" value ="感官综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSensoryorganYearCompany" readonly="readonly" name="wqiSensoryorganYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ect_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationCriterionToxicologys}" var="evaluationCriterionToxicology">
<tr>
<td><input class="form-control" type="text" id="ect_name_${evaluationCriterionToxicology.id}" value ="${evaluationCriterionToxicology.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationCriterionToxicology.isSeries}" disabled id="ect_series_${evaluationCriterionToxicology.id}">
<td><input class="form-control" type="text" name ="ect_key_${evaluationCriterionToxicology.id}" id="ect_key_${evaluationCriterionToxicology.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ect_dl_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_gb_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.nationCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.nationCriterionMin}-${evaluationCriterionToxicology.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_gbfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ect_db_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.areaCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.areaCriterionMin}-${evaluationCriterionToxicology.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_dbfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ect_nk_${evaluationCriterionToxicology.id}" <c:if test="${evaluationCriterionToxicology.condition == '1' || evaluationCriterionToxicology.condition == '2'}"> value="${evaluationCriterionToxicology.companyCriterionValue}"</c:if> <c:if test="${evaluationCriterionToxicology.condition == '3'}"> value="[${evaluationCriterionToxicology.companyCriterionMin}-${evaluationCriterionToxicology.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ect_nkfzs_${evaluationCriterionToxicology.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyYearNation" readonly="readonly" name="wqiToxicologyYearNation"></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyYearArea" readonly="readonly" name="wqiToxicologyYearArea"></td>
<td><input class="form-control" type="text" value ="毒理综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiToxicologyYearCompany" readonly="readonly" name="wqiToxicologyYearCompany"></td>
</tr>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="基础指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiBasicYearNation" readonly="readonly" name="wqiBasicYearNation"></td>
<td><input class="form-control" type="text" value ="基础指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiBasicYearArea" readonly="readonly" name="wqiBasicYearArea"></td>
<td><input class="form-control" type="text" value ="基础指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiBasicYearCompany" readonly="readonly" name="wqiBasicYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="eco_subForm">
<table style="width: 100%;">
<tr>
<td colspan="9"><input class="form-control" type="text" value ="特征项指标/0.7" disabled></td></td>
</tr>
<c:forEach items="${evaluationcriterionOrganics}" var="evaluationcriterionOrganic">
<tr>
<td><input class="form-control" type="text" id="eco_name_${evaluationcriterionOrganic.id}" value ="${evaluationcriterionOrganic.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationcriterionOrganic.isSeries}" disabled id="eco_series_${evaluationcriterionOrganic.id}">
<td><input class="form-control" type="text" name ="eco_key_${evaluationcriterionOrganic.id}" id="eco_key_${evaluationcriterionOrganic.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="eco_dl_${evaluationcriterionOrganic.id}" <c:if test="${evaluationcriterionOrganic.condition == '1' || evaluationcriterionOrganic.condition == '2'}"> value="${evaluationcriterionOrganic.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="eco_gb_${evaluationcriterionOrganic.id}" <c:if test="${evaluationcriterionOrganic.condition == '1' || evaluationcriterionOrganic.condition == '2'}"> value="${evaluationcriterionOrganic.nationCriterionValue}"</c:if> <c:if test="${evaluationcriterionOrganic.condition == '3'}"> value="[${evaluationcriterionOrganic.nationCriterionMin}-${evaluationcriterionOrganic.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="eco_gbfzs_${evaluationcriterionOrganic.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="eco_db_${evaluationcriterionOrganic.id}" <c:if test="${evaluationcriterionOrganic.condition == '1' || evaluationcriterionOrganic.condition == '2'}"> value="${evaluationcriterionOrganic.areaCriterionValue}"</c:if> <c:if test="${evaluationcriterionOrganic.condition == '3'}"> value="[${evaluationcriterionOrganic.areaCriterionMin}-${evaluationcriterionOrganic.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="eco_dbfzs_${evaluationcriterionOrganic.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="eco_nk_${evaluationcriterionOrganic.id}" <c:if test="${evaluationcriterionOrganic.condition == '1' || evaluationcriterionOrganic.condition == '2'}"> value="${evaluationcriterionOrganic.companyCriterionValue}"</c:if> <c:if test="${evaluationcriterionOrganic.condition == '3'}"> value="[${evaluationcriterionOrganic.companyCriterionMin}-${evaluationcriterionOrganic.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="eco_nkfzs_${evaluationcriterionOrganic.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="有机物综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiOrganicYearNation" readonly="readonly" name="wqiOrganicYearNation"></td>
<td><input class="form-control" type="text" value ="有机物综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiOrganicYearArea" readonly="readonly" name="wqiOrganicYearArea"></td>
<td><input class="form-control" type="text" value ="有机物综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiOrganicYearCompany" readonly="readonly" name="wqiOrganicYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecsl_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationcriterionSmells}" var="evaluationcriterionSmell">
<tr>
<td><input class="form-control" type="text" id="ecsl_name_${evaluationcriterionSmell.id}" value ="${evaluationcriterionSmell.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationcriterionSmell.isSeries}" disabled id="ecsl_series_${evaluationcriterionSmell.id}">
<td><input class="form-control" type="text" name ="ecsl_key_${evaluationcriterionSmell.id}" id="ecsl_key_${evaluationcriterionSmell.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecsl_dl_${evaluationcriterionSmell.id}" <c:if test="${evaluationcriterionSmell.condition == '1' || evaluationcriterionSmell.condition == '2'}"> value="${evaluationcriterionSmell.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecsl_gb_${evaluationcriterionSmell.id}" <c:if test="${evaluationcriterionSmell.condition == '1' || evaluationcriterionSmell.condition == '2'}"> value="${evaluationcriterionSmell.nationCriterionValue}"</c:if> <c:if test="${evaluationcriterionSmell.condition == '3'}"> value="[${evaluationcriterionSmell.nationCriterionMin}-${evaluationcriterionSmell.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecsl_gbfzs_${evaluationcriterionSmell.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecsl_db_${evaluationcriterionSmell.id}" <c:if test="${evaluationcriterionSmell.condition == '1' || evaluationcriterionSmell.condition == '2'}"> value="${evaluationcriterionSmell.areaCriterionValue}"</c:if> <c:if test="${evaluationcriterionSmell.condition == '3'}"> value="[${evaluationcriterionSmell.areaCriterionMin}-${evaluationcriterionSmell.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecsl_dbfzs_${evaluationcriterionSmell.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecsl_nk_${evaluationcriterionSmell.id}" <c:if test="${evaluationcriterionSmell.condition == '1' || evaluationcriterionSmell.condition == '2'}"> value="${evaluationcriterionSmell.companyCriterionValue}"</c:if> <c:if test="${evaluationcriterionSmell.condition == '3'}"> value="[${evaluationcriterionSmell.companyCriterionMin}-${evaluationcriterionSmell.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecsl_nkfzs_${evaluationcriterionSmell.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="嗅味综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSmellYearNation" readonly="readonly" name="wqiSmellYearNation"></td>
<td><input class="form-control" type="text" value ="嗅味综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSmellYearArea" readonly="readonly" name="wqiSmellYearArea"></td>
<td><input class="form-control" type="text" value ="嗅味综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiSmellYearCompany" readonly="readonly" name="wqiSmellYearCompany"></td>
</tr>
</table>
</form>
<form class="form-horizontal" id="ecp_subForm">
<table style="width: 100%;">
<c:forEach items="${evaluationcriterionDbpss}" var="evaluationcriterionDbps">
<tr>
<td><input class="form-control" type="text" id="ecp_name_${evaluationcriterionDbps.id}" value ="${evaluationcriterionDbps.criterionName}" disabled></td>
<input class="form-control" type="hidden" value ="${evaluationcriterionDbps.isSeries}" disabled id="ecp_series_${evaluationcriterionDbps.id}">
<td><input class="form-control" type="text" name ="ecp_key_${evaluationcriterionDbps.id}" id="ecp_key_${evaluationcriterionDbps.id}" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,6})?).*$/g, '$1')" autocomplete="off"></td>
<td><input class="form-control" type="text" id="ecp_dl_${evaluationcriterionDbps.id}" <c:if test="${evaluationcriterionDbps.condition == '1' || evaluationcriterionDbps.condition == '2'}"> value="${evaluationcriterionDbps.detectionLimit}"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecp_gb_${evaluationcriterionDbps.id}" <c:if test="${evaluationcriterionDbps.condition == '1' || evaluationcriterionDbps.condition == '2'}"> value="${evaluationcriterionDbps.nationCriterionValue}"</c:if> <c:if test="${evaluationcriterionDbps.condition == '3'}"> value="[${evaluationcriterionDbps.nationCriterionMin}-${evaluationcriterionDbps.nationCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecp_gbfzs_${evaluationcriterionDbps.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecp_db_${evaluationcriterionDbps.id}" <c:if test="${evaluationcriterionDbps.condition == '1' || evaluationcriterionDbps.condition == '2'}"> value="${evaluationcriterionDbps.areaCriterionValue}"</c:if> <c:if test="${evaluationcriterionDbps.condition == '3'}"> value="[${evaluationcriterionDbps.areaCriterionMin}-${evaluationcriterionDbps.areaCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecp_dbfzs_${evaluationcriterionDbps.id}" readonly="readonly"></td>
<td><input class="form-control" type="text" id="ecp_nk_${evaluationcriterionDbps.id}" <c:if test="${evaluationcriterionDbps.condition == '1' || evaluationcriterionDbps.condition == '2'}"> value="${evaluationcriterionDbps.companyCriterionValue}"</c:if> <c:if test="${evaluationcriterionDbps.condition == '3'}"> value="[${evaluationcriterionDbps.companyCriterionMin}-${evaluationcriterionDbps.companyCriterionMax}]"</c:if> disabled></td>
<td><input class="form-control" type="text" id="ecp_nkfzs_${evaluationcriterionDbps.id}" readonly="readonly"></td>
</tr>
</c:forEach>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="消毒副产品综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDbpsYearNation" readonly="readonly" name="wqiDbpsYearNation"></td>
<td><input class="form-control" type="text" value ="消毒副产品综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDbpsYearArea" readonly="readonly" name="wqiDbpsYearArea"></td>
<td><input class="form-control" type="text" value ="消毒副产品综合指数" disabled></td>
<td><input class="form-control" type="text" id="wqiDbpsYearCompany" readonly="readonly" name="wqiDbpsYearCompany"></td>
</tr>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="特征指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiFeaturesYearNation" readonly="readonly" name="wqiFeaturesYearNation"></td>
<td><input class="form-control" type="text" value ="特征指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiFeaturesYearArea" readonly="readonly" name="wqiFeaturesYearArea"></td>
<td><input class="form-control" type="text" value ="特征指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiFeaturesYearCompany" readonly="readonly" name="wqiFeaturesYearCompany"></td>
</tr>
<tr>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="" disabled></td>
<td><input class="form-control" type="text" value ="年评指数(国标)" disabled></td>
<td><input class="form-control" type="text" id="wqiYearNation" readonly="readonly" name="wqiYearNation"></td>
<td><input class="form-control" type="text" value ="年评指数(地标)" disabled></td>
<td><input class="form-control" type="text" id="wqiYearArea" readonly="readonly" name="wqiYearArea"></td>
<td><input class="form-control" type="text" value ="年评指数(内控)" disabled></td>
<td><input class="form-control" type="text" id="wqiYearCompany" readonly="readonly" name="wqiYearCompany"></td>
</tr>
</table>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary left" onclick="doreckon()" id="btn_save">计算</button>
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()" id="btn_save">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,794 @@
<%@page import="com.sipai.tools.CommString"%>
<%@ 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>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/echarts/echarts.4.1.0.min.js"
charset="utf-8"></script>
<!-- bootstrap switch -->
<link rel="stylesheet"
href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css" />
<script type="text/javascript"
src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"
charset="utf-8"></script>
<style type="text/css">
html,body{
height: 500px;
}
.line001{
background:#E7E7E7;/*背景色为浅灰色*/
width:1px;/*设置宽高*/
height:60px;
/*调整位置*/
}
</style>
<script type="text/javascript">
$(function(){
var json = '${jsonData}';
// var myChart_gb_day = echarts.init(document.getElementById('myChart_gb_day'));
// var myChart_gb_month = echarts.init(document.getElementById('myChart_gb_month'));
// var myChart_gb_year = echarts.init(document.getElementById('myChart_gb_year'));
var myChart_db_day = echarts.init(document.getElementById('myChart_db_day'));
var myChart_db_month = echarts.init(document.getElementById('myChart_db_month'));
var myChart_db_year = echarts.init(document.getElementById('myChart_db_year'));
// var myChart_nk_day = echarts.init(document.getElementById('myChart_nk_day'));
// var myChart_nk_month = echarts.init(document.getElementById('myChart_nk_month'));
// var myChart_nk_year = echarts.init(document.getElementById('myChart_nk_year'));
// 指定图表的配置项和数据
var colorTemplate1 = [[0.25, "rgba(51, 255, 51,0.8)"],[0.5, "rgba(240,189,0,0.8)"],[1, "rgba(255,0,0,0.8)"]];
var axisLine = { // 仪表盘轴线(轮廓线)相关配置。
show: true, // 是否显示仪表盘轴线(轮廓线),默认 true。
lineStyle: { // 仪表盘轴线样式。
color: colorTemplate1, //仪表盘的轴线可以被分成不同颜色的多段。每段的 结束位置(范围是[0,1]) 和 颜色 可以通过一个数组来表示。默认取值:[[0.2, '#91c7ae'], [0.8, '#63869e'], [1, '#c23531']]
opacity: 1, //图形透明度。支持从 0 到 1 的数字,为 0 时不绘制该图形。
width: 20, //轴线宽度,默认 30。
shadowBlur: 0, //(发光效果)图形阴影的模糊大小。该属性配合 shadowColor,shadowOffsetX, shadowOffsetY 一起设置图形的阴影效果。
shadowColor: "#fff", //阴影颜色。支持的格式同color。
}
};
var splitLine = { // 分隔线样式。
show: true, // 是否显示分隔线,默认 true。
length: 8, // 分隔线线长。支持相对半径的百分比,默认 30。
lineStyle: { // 分隔线样式。
color: "#eee", //线的颜色,默认 #eee。
opacity: 1, //图形透明度。支持从 0 到 1 的数字,为 0 时不绘制该图形。
width: 1, //线度,默认 2。
type: "solid", //线的类型,默认 solid。 此外还有 dashed,dotted
shadowBlur: 0, //(发光效果)图形阴影的模糊大小。该属性配合 shadowColor,shadowOffsetX, shadowOffsetY 一起设置图形的阴影效果。
shadowColor: "#fff", //阴影颜色。支持的格式同color。
}
};
var axisTick = { // 刻度(线)样式。
show: true, // 是否显示刻度(线),默认 true。
splitNumber: 5, // 分隔线之间分割的刻度数,默认 5。
length: 10, // 刻度线长。支持相对半径的百分比,默认 8。
lineStyle: { // 刻度线样式。
color: "rgb(64,75,87)", //线的颜色,默认 #eee。
opacity: 1, //图形透明度。支持从 0 到 1 的数字,为 0 时不绘制该图形。
width: 2, //线度,默认 1。
type: "solid", //线的类型,默认 solid。 此外还有 dashed,dotted
shadowBlur: 0, //(发光效果)图形阴影的模糊大小。该属性配合 shadowColor,shadowOffsetX, shadowOffsetY 一起设置图形的阴影效果。
shadowColor: "#fff", //阴影颜色。支持的格式同color。
},
};
var pointer = { // 仪表盘指针。
show: true, // 是否显示指针,默认 true。
length: "70%", // 指针长度,可以是绝对数值,也可以是相对于半径的百分比,默认 80%。
width: 5, // 指针宽度,默认 8。
};
var itemStyle = { // 仪表盘指针样式。
color: "auto", // 指针颜色,默认(auto)取数值所在的区间的颜色
opacity: 1, // 图形透明度。支持从 0 到 1 的数字,为 0 时不绘制该图形。
borderWidth: 0, // 描边线宽,默认 0。为 0 时无描边。
borderType: "solid", // 柱条的描边类型,默认为实线,支持 'solid', 'dashed', 'dotted'。
borderColor: "#000", // 图形的描边颜色,默认 "#000"。支持的颜色格式同 color不支持回调函数。
shadowBlur: 0, // (发光效果)图形阴影的模糊大小。该属性配合 shadowColor,shadowOffsetX, shadowOffsetY 一起设置图形的阴影效果。
shadowColor: "#fff", // 阴影颜色。支持的格式同color。
};
var title = { // 仪表盘标题。
show: true, // 是否显示标题,默认 true。
offsetCenter: [0,"20%"],//相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
color: "#fff", // 文字的颜色,默认 #333。
fontSize: 30, // 文字的字体大小,默认 15。
};
// // 指定图表的配置项和数据
// var option_gb_day = {
// //backgroundColor: "#000",
// tooltip: { // 本系列特定的 tooltip 设定。
// show: true,
// formatter: "{c}",
// backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色。注意series.tooltip 仅在 tooltip.trigger 为 'item' 时有效。
// borderColor: "#333", // 提示框浮层的边框颜色。...
// borderWidth: 0, // 提示框浮层的边框宽。...
// padding: 5, // 提示框浮层内边距单位px默认各方向内边距为5接受数组分别设定上右下左边距。...
// textStyle: { // 提示框浮层的文本样式。...
// // color ,fontStyle ,fontWeight ,fontFamily ,fontSize ,lineHeight ,.......
// },
// },
// series: [
// {
// name: "单仪表盘示例", // 系列名称,用于tooltip的显示legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
// type: "gauge", // 系列类型
// radius: "80%", // 参数:number, string。 仪表盘半径,默认 75% ,可以是相对于容器高宽中较小的一项的一半的百分比,也可以是绝对的数值。
// center: ["50%", "55%"], // 仪表盘位置(圆心坐标)
// startAngle: 225, // 仪表盘起始角度,默认 225。圆心 正右手侧为0度正上方为90度正左手侧为180度。
// endAngle: -45, // 仪表盘结束角度,默认 -45
// clockwise: true, // 仪表盘刻度是否是顺时针增长,默认 true。
// min: 0, // 最小的数据值,默认 0 。映射到 minAngle。
// max: 2, // 最大的数据值,默认 100 。映射到 maxAngle。
// splitNumber: 4, // 仪表盘刻度的分割段数,默认 10。
// axisLine: axisLine,
// splitLine: splitLine,
// axisTick: axisTick,
// axisLabel: { // 刻度标签。
// show: true, // 是否显示标签,默认 true。
// distance: 2, // 标签与刻度线的距离,默认 5。
// color: "rgb(255,255,255)", // 文字的颜色,默认 #fff。
// fontSize: 10, // 文字的字体大小,默认 5。
// formatter: "{value}", // 刻度标签的内容格式器,支持字符串模板和回调函数两种形式。 示例:// 使用字符串模板,模板变量为刻度默认标签 {value},如:formatter: '{value} kg'; // 使用函数模板,函数参数分别为刻度数值,如formatter: function (value) {return value + 'km/h';}
// },
// pointer: pointer,
// itemStyle: itemStyle,
// title: title,
// detail: { // 仪表盘详情,用于显示数据。
// show: true, // 是否显示详情,默认 true。
// offsetCenter: [0,"100%"],// 相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
// color: "auto", // 文字的颜色,默认 auto。
// fontSize: 15, // 文字的字体大小,默认 15。
// formatter: "日评指数 {value}", // 格式化函数或者字符串
// },
// data: [{
// name: "",
// value: JSON.parse(json).gb_day,
// }]
// }
// ]
// };
// myChart_gb_day.setOption(option_gb_day);
// myChart_gb_day.on('click',function(){
// showline('gb_day');
// });
// var option_gb_month = {
// //backgroundColor: "#000",
// tooltip: { // 本系列特定的 tooltip 设定。
// show: true,
// formatter: "{c}",
// backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色。注意series.tooltip 仅在 tooltip.trigger 为 'item' 时有效。
// borderColor: "#333", // 提示框浮层的边框颜色。...
// borderWidth: 0, // 提示框浮层的边框宽。...
// padding: 5, // 提示框浮层内边距单位px默认各方向内边距为5接受数组分别设定上右下左边距。...
// textStyle: { // 提示框浮层的文本样式。...
// // color ,fontStyle ,fontWeight ,fontFamily ,fontSize ,lineHeight ,.......
// },
// },
// series: [
// {
// name: "单仪表盘示例", // 系列名称,用于tooltip的显示legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
// type: "gauge", // 系列类型
// radius: "80%", // 参数:number, string。 仪表盘半径,默认 75% ,可以是相对于容器高宽中较小的一项的一半的百分比,也可以是绝对的数值。
// center: ["50%", "55%"], // 仪表盘位置(圆心坐标)
// startAngle: 225, // 仪表盘起始角度,默认 225。圆心 正右手侧为0度正上方为90度正左手侧为180度。
// endAngle: -45, // 仪表盘结束角度,默认 -45
// clockwise: true, // 仪表盘刻度是否是顺时针增长,默认 true。
// min: 0, // 最小的数据值,默认 0 。映射到 minAngle。
// max: 2, // 最大的数据值,默认 100 。映射到 maxAngle。
// splitNumber: 4, // 仪表盘刻度的分割段数,默认 10。
// axisLine: axisLine,
// splitLine: splitLine,
// axisTick: axisTick,
// axisLabel: { // 刻度标签。
// show: true, // 是否显示标签,默认 true。
// distance: 2, // 标签与刻度线的距离,默认 5。
// color: "rgb(255,255,255)", // 文字的颜色,默认 #fff。
// fontSize: 10, // 文字的字体大小,默认 5。
// formatter: "{value}", // 刻度标签的内容格式器,支持字符串模板和回调函数两种形式。 示例:// 使用字符串模板,模板变量为刻度默认标签 {value},如:formatter: '{value} kg'; // 使用函数模板,函数参数分别为刻度数值,如formatter: function (value) {return value + 'km/h';}
// },
// pointer: pointer,
// itemStyle: itemStyle,
// title: title,
// detail: { // 仪表盘详情,用于显示数据。
// show: true, // 是否显示详情,默认 true。
// offsetCenter: [0,"100%"],// 相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
// color: "auto", // 文字的颜色,默认 auto。
// fontSize: 15, // 文字的字体大小,默认 15。
// formatter: "月评指数 {value}", // 格式化函数或者字符串
// },
// data: [{
// name: "",
// value: JSON.parse(json).gb_month,
// }]
// }
// ]
// };
// myChart_gb_month.setOption(option_gb_month);
// myChart_gb_month.on('click',function(){
// showline('gb_month');
// });
// var option_gb_year = {
// //backgroundColor: "#000",
// tooltip: { // 本系列特定的 tooltip 设定。
// show: true,
// formatter: "{c}",
// backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色。注意series.tooltip 仅在 tooltip.trigger 为 'item' 时有效。
// borderColor: "#333", // 提示框浮层的边框颜色。...
// borderWidth: 0, // 提示框浮层的边框宽。...
// padding: 5, // 提示框浮层内边距单位px默认各方向内边距为5接受数组分别设定上右下左边距。...
// textStyle: { // 提示框浮层的文本样式。...
// // color ,fontStyle ,fontWeight ,fontFamily ,fontSize ,lineHeight ,.......
// },
// },
// series: [
// {
// name: "单仪表盘示例", // 系列名称,用于tooltip的显示legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
// type: "gauge", // 系列类型
// radius: "80%", // 参数:number, string。 仪表盘半径,默认 75% ,可以是相对于容器高宽中较小的一项的一半的百分比,也可以是绝对的数值。
// center: ["50%", "55%"], // 仪表盘位置(圆心坐标)
// startAngle: 225, // 仪表盘起始角度,默认 225。圆心 正右手侧为0度正上方为90度正左手侧为180度。
// endAngle: -45, // 仪表盘结束角度,默认 -45
// clockwise: true, // 仪表盘刻度是否是顺时针增长,默认 true。
// min: 0, // 最小的数据值,默认 0 。映射到 minAngle。
// max: 2, // 最大的数据值,默认 100 。映射到 maxAngle。
// splitNumber: 4, // 仪表盘刻度的分割段数,默认 10。
// axisLine: axisLine,
// splitLine: splitLine,
// axisTick: axisTick,
// axisLabel: { // 刻度标签。
// show: true, // 是否显示标签,默认 true。
// distance: 2, // 标签与刻度线的距离,默认 5。
// color: "rgb(255,255,255)", // 文字的颜色,默认 #fff。
// fontSize: 10, // 文字的字体大小,默认 5。
// formatter: "{value}", // 刻度标签的内容格式器,支持字符串模板和回调函数两种形式。 示例:// 使用字符串模板,模板变量为刻度默认标签 {value},如:formatter: '{value} kg'; // 使用函数模板,函数参数分别为刻度数值,如formatter: function (value) {return value + 'km/h';}
// },
// pointer: pointer,
// itemStyle: itemStyle,
// title: title,
// detail: { // 仪表盘详情,用于显示数据。
// show: true, // 是否显示详情,默认 true。
// offsetCenter: [0,"100%"],// 相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
// color: "auto", // 文字的颜色,默认 auto。
// fontSize: 15, // 文字的字体大小,默认 15。
// formatter: "年评指数 {value}", // 格式化函数或者字符串
// },
// data: [{
// name: "",
// value: JSON.parse(json).gb_year,
// }]
// }
// ]
// };
// myChart_gb_year.setOption(option_gb_year);
// myChart_gb_year.on('click',function(){
// showline('gb_year');
// });
var option_db_day = {
//backgroundColor: "#000",
tooltip: { // 本系列特定的 tooltip 设定。
show: true,
formatter: "{c}",
backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色。注意series.tooltip 仅在 tooltip.trigger 为 'item' 时有效。
borderColor: "#333", // 提示框浮层的边框颜色。...
borderWidth: 0, // 提示框浮层的边框宽。...
padding: 5, // 提示框浮层内边距单位px默认各方向内边距为5接受数组分别设定上右下左边距。...
textStyle: { // 提示框浮层的文本样式。...
// color ,fontStyle ,fontWeight ,fontFamily ,fontSize ,lineHeight ,.......
},
},
series: [
{
name: "单仪表盘示例", // 系列名称,用于tooltip的显示legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
type: "gauge", // 系列类型
radius: "80%", // 参数:number, string。 仪表盘半径,默认 75% ,可以是相对于容器高宽中较小的一项的一半的百分比,也可以是绝对的数值。
center: ["50%", "55%"], // 仪表盘位置(圆心坐标)
startAngle: 225, // 仪表盘起始角度,默认 225。圆心 正右手侧为0度正上方为90度正左手侧为180度。
endAngle: -45, // 仪表盘结束角度,默认 -45
clockwise: true, // 仪表盘刻度是否是顺时针增长,默认 true。
min: 0, // 最小的数据值,默认 0 。映射到 minAngle。
max: 2, // 最大的数据值,默认 100 。映射到 maxAngle。
splitNumber: 4, // 仪表盘刻度的分割段数,默认 10。
axisLine: axisLine,
splitLine: splitLine,
axisTick: axisTick,
axisLabel: { // 刻度标签。
show: true, // 是否显示标签,默认 true。
distance: 18, // 标签与刻度线的距离,默认 5。
color: "rgb(255,255,255)", // 文字的颜色,默认 #fff。
fontSize: 20, // 文字的字体大小,默认 5。
formatter: "{value}", // 刻度标签的内容格式器,支持字符串模板和回调函数两种形式。 示例:// 使用字符串模板,模板变量为刻度默认标签 {value},如:formatter: '{value} kg'; // 使用函数模板,函数参数分别为刻度数值,如formatter: function (value) {return value + 'km/h';}
},
pointer: pointer,
itemStyle: itemStyle,
title: title,
detail: { // 仪表盘详情,用于显示数据。
show: true, // 是否显示详情,默认 true。
offsetCenter: [0,"100%"],// 相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
color: "auto", // 文字的颜色,默认 auto。
fontSize: 25, // 文字的字体大小,默认 15。
formatter: "日评指数 {value}", // 格式化函数或者字符串
},
data: [{
name: "",
value: JSON.parse(json).db_day,
}]
}
]
};
myChart_db_day.setOption(option_db_day);
myChart_db_day.on('click',function(){
showline('db_day');
});
var option_db_month = {
//backgroundColor: "#000",
tooltip: { // 本系列特定的 tooltip 设定。
show: true,
formatter: "{c}",
backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色。注意series.tooltip 仅在 tooltip.trigger 为 'item' 时有效。
borderColor: "#333", // 提示框浮层的边框颜色。...
borderWidth: 0, // 提示框浮层的边框宽。...
padding: 5, // 提示框浮层内边距单位px默认各方向内边距为5接受数组分别设定上右下左边距。...
textStyle: { // 提示框浮层的文本样式。...
// color ,fontStyle ,fontWeight ,fontFamily ,fontSize ,lineHeight ,.......
},
},
series: [
{
name: "单仪表盘示例", // 系列名称,用于tooltip的显示legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
type: "gauge", // 系列类型
radius: "80%", // 参数:number, string。 仪表盘半径,默认 75% ,可以是相对于容器高宽中较小的一项的一半的百分比,也可以是绝对的数值。
center: ["50%", "55%"], // 仪表盘位置(圆心坐标)
startAngle: 225, // 仪表盘起始角度,默认 225。圆心 正右手侧为0度正上方为90度正左手侧为180度。
endAngle: -45, // 仪表盘结束角度,默认 -45
clockwise: true, // 仪表盘刻度是否是顺时针增长,默认 true。
min: 0, // 最小的数据值,默认 0 。映射到 minAngle。
max: 2, // 最大的数据值,默认 100 。映射到 maxAngle。
splitNumber: 4, // 仪表盘刻度的分割段数,默认 10。
axisLine: axisLine,
splitLine: splitLine,
axisTick: axisTick,
axisLabel: { // 刻度标签。
show: true, // 是否显示标签,默认 true。
distance: 18, // 标签与刻度线的距离,默认 5。
color: "rgb(255,255,255)", // 文字的颜色,默认 #fff。
fontSize: 20, // 文字的字体大小,默认 5。
formatter: "{value}", // 刻度标签的内容格式器,支持字符串模板和回调函数两种形式。 示例:// 使用字符串模板,模板变量为刻度默认标签 {value},如:formatter: '{value} kg'; // 使用函数模板,函数参数分别为刻度数值,如formatter: function (value) {return value + 'km/h';}
},
pointer: pointer,
itemStyle: itemStyle,
title: title,
detail: { // 仪表盘详情,用于显示数据。
show: true, // 是否显示详情,默认 true。
offsetCenter: [0,"100%"],// 相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
color: "auto", // 文字的颜色,默认 auto。
fontSize: 25, // 文字的字体大小,默认 15。
formatter: "月评指数 {value}", // 格式化函数或者字符串
},
data: [{
name: "",
value: JSON.parse(json).db_month,
}]
}
]
};
myChart_db_month.setOption(option_db_month);
myChart_db_month.on('click',function(){
showline('db_month');
});
var option_db_year = {
//backgroundColor: "#000",
tooltip: { // 本系列特定的 tooltip 设定。
show: true,
formatter: "{c}",
backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色。注意series.tooltip 仅在 tooltip.trigger 为 'item' 时有效。
borderColor: "#333", // 提示框浮层的边框颜色。...
borderWidth: 0, // 提示框浮层的边框宽。...
padding: 5, // 提示框浮层内边距单位px默认各方向内边距为5接受数组分别设定上右下左边距。...
textStyle: { // 提示框浮层的文本样式。...
// color ,fontStyle ,fontWeight ,fontFamily ,fontSize ,lineHeight ,.......
},
},
series: [
{
name: "单仪表盘示例", // 系列名称,用于tooltip的显示legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
type: "gauge", // 系列类型
radius: "80%", // 参数:number, string。 仪表盘半径,默认 75% ,可以是相对于容器高宽中较小的一项的一半的百分比,也可以是绝对的数值。
center: ["50%", "55%"], // 仪表盘位置(圆心坐标)
startAngle: 225, // 仪表盘起始角度,默认 225。圆心 正右手侧为0度正上方为90度正左手侧为180度。
endAngle: -45, // 仪表盘结束角度,默认 -45
clockwise: true, // 仪表盘刻度是否是顺时针增长,默认 true。
min: 0, // 最小的数据值,默认 0 。映射到 minAngle。
max: 2, // 最大的数据值,默认 100 。映射到 maxAngle。
splitNumber: 4, // 仪表盘刻度的分割段数,默认 10。
axisLine: axisLine,
splitLine: splitLine,
axisTick: axisTick,
axisLabel: { // 刻度标签。
show: true, // 是否显示标签,默认 true。
distance: 18, // 标签与刻度线的距离,默认 5。
color: "rgb(255,255,255)", // 文字的颜色,默认 #fff。
fontSize: 20, // 文字的字体大小,默认 5。
formatter: "{value}", // 刻度标签的内容格式器,支持字符串模板和回调函数两种形式。 示例:// 使用字符串模板,模板变量为刻度默认标签 {value},如:formatter: '{value} kg'; // 使用函数模板,函数参数分别为刻度数值,如formatter: function (value) {return value + 'km/h';}
},
pointer: pointer,
itemStyle: itemStyle,
title: title,
detail: { // 仪表盘详情,用于显示数据。
show: true, // 是否显示详情,默认 true。
offsetCenter: [0,"100%"],// 相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
color: "auto", // 文字的颜色,默认 auto。
fontSize: 25, // 文字的字体大小,默认 15。
formatter: "年评指数 {value}", // 格式化函数或者字符串
},
data: [{
name: "",
value: JSON.parse(json).db_year,
}]
}
]
};
myChart_db_year.setOption(option_db_year);
myChart_db_year.on('click',function(){
showline('db_year');
});
// var option_nk_day = {
// //backgroundColor: "#000",
// tooltip: { // 本系列特定的 tooltip 设定。
// show: true,
// formatter: "{c}",
// backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色。注意series.tooltip 仅在 tooltip.trigger 为 'item' 时有效。
// borderColor: "#333", // 提示框浮层的边框颜色。...
// borderWidth: 0, // 提示框浮层的边框宽。...
// padding: 5, // 提示框浮层内边距单位px默认各方向内边距为5接受数组分别设定上右下左边距。...
// textStyle: { // 提示框浮层的文本样式。...
// // color ,fontStyle ,fontWeight ,fontFamily ,fontSize ,lineHeight ,.......
// },
// },
// series: [
// {
// name: "单仪表盘示例", // 系列名称,用于tooltip的显示legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
// type: "gauge", // 系列类型
// radius: "80%", // 参数:number, string。 仪表盘半径,默认 75% ,可以是相对于容器高宽中较小的一项的一半的百分比,也可以是绝对的数值。
// center: ["50%", "55%"], // 仪表盘位置(圆心坐标)
// startAngle: 225, // 仪表盘起始角度,默认 225。圆心 正右手侧为0度正上方为90度正左手侧为180度。
// endAngle: -45, // 仪表盘结束角度,默认 -45
// clockwise: true, // 仪表盘刻度是否是顺时针增长,默认 true。
// min: 0, // 最小的数据值,默认 0 。映射到 minAngle。
// max: 2, // 最大的数据值,默认 100 。映射到 maxAngle。
// splitNumber: 4, // 仪表盘刻度的分割段数,默认 10。
// axisLine: axisLine,
// splitLine: splitLine,
// axisTick: axisTick,
// axisLabel: { // 刻度标签。
// show: true, // 是否显示标签,默认 true。
// distance: 2, // 标签与刻度线的距离,默认 5。
// color: "rgb(255,255,255)", // 文字的颜色,默认 #fff。
// fontSize: 10, // 文字的字体大小,默认 5。
// formatter: "{value}", // 刻度标签的内容格式器,支持字符串模板和回调函数两种形式。 示例:// 使用字符串模板,模板变量为刻度默认标签 {value},如:formatter: '{value} kg'; // 使用函数模板,函数参数分别为刻度数值,如formatter: function (value) {return value + 'km/h';}
// },
// pointer: pointer,
// itemStyle: itemStyle,
// title: title,
// detail: { // 仪表盘详情,用于显示数据。
// show: true, // 是否显示详情,默认 true。
// offsetCenter: [0,"100%"],// 相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
// color: "auto", // 文字的颜色,默认 auto。
// fontSize: 15, // 文字的字体大小,默认 15。
// formatter: "日评指数 {value}", // 格式化函数或者字符串
// },
// data: [{
// name: "",
// value: JSON.parse(json).nk_day,
// }]
// }
// ]
// };
// myChart_nk_day.setOption(option_nk_day);
// myChart_nk_day.on('click',function(){
// showline('nk_day');
// });
// var option_nk_month = {
// //backgroundColor: "#000",
// tooltip: { // 本系列特定的 tooltip 设定。
// show: true,
// formatter: "{c}",
// backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色。注意series.tooltip 仅在 tooltip.trigger 为 'item' 时有效。
// borderColor: "#333", // 提示框浮层的边框颜色。...
// borderWidth: 0, // 提示框浮层的边框宽。...
// padding: 5, // 提示框浮层内边距单位px默认各方向内边距为5接受数组分别设定上右下左边距。...
// textStyle: { // 提示框浮层的文本样式。...
// // color ,fontStyle ,fontWeight ,fontFamily ,fontSize ,lineHeight ,.......
// },
// },
// series: [
// {
// name: "单仪表盘示例", // 系列名称,用于tooltip的显示legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
// type: "gauge", // 系列类型
// radius: "80%", // 参数:number, string。 仪表盘半径,默认 75% ,可以是相对于容器高宽中较小的一项的一半的百分比,也可以是绝对的数值。
// center: ["50%", "55%"], // 仪表盘位置(圆心坐标)
// startAngle: 225, // 仪表盘起始角度,默认 225。圆心 正右手侧为0度正上方为90度正左手侧为180度。
// endAngle: -45, // 仪表盘结束角度,默认 -45
// clockwise: true, // 仪表盘刻度是否是顺时针增长,默认 true。
// min: 0, // 最小的数据值,默认 0 。映射到 minAngle。
// max: 2, // 最大的数据值,默认 100 。映射到 maxAngle。
// splitNumber: 4, // 仪表盘刻度的分割段数,默认 10。
// axisLine: axisLine,
// splitLine: splitLine,
// axisTick: axisTick,
// axisLabel: { // 刻度标签。
// show: true, // 是否显示标签,默认 true。
// distance: 2, // 标签与刻度线的距离,默认 5。
// color: "rgb(255,255,255)", // 文字的颜色,默认 #fff。
// fontSize: 10, // 文字的字体大小,默认 5。
// formatter: "{value}", // 刻度标签的内容格式器,支持字符串模板和回调函数两种形式。 示例:// 使用字符串模板,模板变量为刻度默认标签 {value},如:formatter: '{value} kg'; // 使用函数模板,函数参数分别为刻度数值,如formatter: function (value) {return value + 'km/h';}
// },
// pointer: pointer,
// itemStyle: itemStyle,
// title: title,
// detail: { // 仪表盘详情,用于显示数据。
// show: true, // 是否显示详情,默认 true。
// offsetCenter: [0,"100%"],// 相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
// color: "auto", // 文字的颜色,默认 auto。
// fontSize: 15, // 文字的字体大小,默认 15。
// formatter: "月评指数 {value}", // 格式化函数或者字符串
// },
// data: [{
// name: "",
// value: JSON.parse(json).nk_month,
// }]
// }
// ]
// };
// myChart_nk_month.setOption(option_nk_month);
// myChart_nk_month.on('click',function(){
// showline('nk_month');
// });
// var option_nk_year = {
// //backgroundColor: "#000",
// tooltip: { // 本系列特定的 tooltip 设定。
// show: true,
// formatter: "{c}",
// backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色。注意series.tooltip 仅在 tooltip.trigger 为 'item' 时有效。
// borderColor: "#333", // 提示框浮层的边框颜色。...
// borderWidth: 0, // 提示框浮层的边框宽。...
// padding: 5, // 提示框浮层内边距单位px默认各方向内边距为5接受数组分别设定上右下左边距。...
// textStyle: { // 提示框浮层的文本样式。...
// // color ,fontStyle ,fontWeight ,fontFamily ,fontSize ,lineHeight ,.......
// },
// },
// series: [
// {
// name: "单仪表盘示例", // 系列名称,用于tooltip的显示legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
// type: "gauge", // 系列类型
// radius: "80%", // 参数:number, string。 仪表盘半径,默认 75% ,可以是相对于容器高宽中较小的一项的一半的百分比,也可以是绝对的数值。
// center: ["50%", "55%"], // 仪表盘位置(圆心坐标)
// startAngle: 225, // 仪表盘起始角度,默认 225。圆心 正右手侧为0度正上方为90度正左手侧为180度。
// endAngle: -45, // 仪表盘结束角度,默认 -45
// clockwise: true, // 仪表盘刻度是否是顺时针增长,默认 true。
// min: 0, // 最小的数据值,默认 0 。映射到 minAngle。
// max: 2, // 最大的数据值,默认 100 。映射到 maxAngle。
// splitNumber: 4, // 仪表盘刻度的分割段数,默认 10。
// axisLine: axisLine,
// splitLine: splitLine,
// axisTick: axisTick,
// axisLabel: { // 刻度标签。
// show: true, // 是否显示标签,默认 true。
// distance: 2, // 标签与刻度线的距离,默认 5。
// color: "rgb(255,255,255)", // 文字的颜色,默认 #fff。
// fontSize: 10, // 文字的字体大小,默认 5。
// formatter: "{value}", // 刻度标签的内容格式器,支持字符串模板和回调函数两种形式。 示例:// 使用字符串模板,模板变量为刻度默认标签 {value},如:formatter: '{value} kg'; // 使用函数模板,函数参数分别为刻度数值,如formatter: function (value) {return value + 'km/h';}
// },
// pointer: pointer,
// itemStyle: itemStyle,
// title: title,
// detail: { // 仪表盘详情,用于显示数据。
// show: true, // 是否显示详情,默认 true。
// offsetCenter: [0,"100%"],// 相对于仪表盘中心的偏移位置,数组第一项是水平方向的偏移,第二项是垂直方向的偏移。可以是绝对的数值,也可以是相对于仪表盘半径的百分比。
// color: "auto", // 文字的颜色,默认 auto。
// fontSize: 15, // 文字的字体大小,默认 15。
// formatter: "年评指数 {value}", // 格式化函数或者字符串
// },
// data: [{
// name: "",
// value: JSON.parse(json).nk_year,
// }]
// }
// ]
// };
// myChart_nk_year.setOption(option_nk_year);
// myChart_nk_year.on('click',function(){
// showline('nk_year');
// });
});
var k = 0;
var showline = function (type) {
k+=1;
$.get(ext.contextPath + '/evaluation/show/showline.do', {type:type,k:k}, function (data) {
if(data == 'fail'){
swal('最近无数据!');
}else{
$("#subDiv").html(data);
openModal('subModal');
}
});
}
var show = function(type){
$.get(ext.contextPath + '/evaluation/criterion/showCriterion.do', {type:type}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
}
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini" style="background-color:rgba(255,255,255,0.1);height: 500px;">
<div class="wrapper">
<!-- 引用top -->
<%--<jsp:include page="/jsp/side.jsp"></jsp:include> --%>
<!-- 菜单栏 -->
<%-- <jsp:include page="/jsp/left.jsp"></jsp:include> --%>
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<%-- <section class="content-header">--%>
<%-- <h1 id="head_title"></h1>--%>
<%-- <ol class="breadcrumb">--%>
<%-- <li><a id='head_firstlevel' href="#"><i class="fa fa-dashboard"></i> </a></li>--%>
<%-- <!-- <li class="active">Here</li> -->--%>
<%-- </ol>--%>
<%-- </section>--%>
<!-- Main content -->
<section class="content container-fluid footer">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div id="subDivSelect"></div>
<%-- <div>--%>
<%-- <div style="height: 200px;width: 100%;text-align: center;float: right;margin-top: -10px;">--%>
<%-- <table class="table table-bordered" style="width: 30%;float: right;margin-right: 45px;">--%>
<%-- <caption style="text-align: center;"><font size="3" color="black"><b>&nbsp;&nbsp;评价指数值对应级别&nbsp;&nbsp;</b></font></caption>--%>
<%-- <thead>--%>
<%-- <tr align="center" style="background-color: rgb(64,75,87);color: white;">--%>
<%-- <td><font size="3"><b>指数值</b></font></td>--%>
<%-- <td><font size="3"><b>评价级别</b></font></td>--%>
<%-- </tr>--%>
<%-- </thead>--%>
<%-- <tbody>--%>
<%-- <tr style="background-color: rgba(64,75,87,0.5);color: white;">--%>
<%-- <td> <font size="3"><b>< 0.5</b></font></td>--%>
<%-- <td><font size="3"><b>1级</b></font></td>--%>
<%-- </tr>--%>
<%-- <tr style="background-color: rgb(64,75,87);color: white;">--%>
<%-- <td><font size="3"><b>0.5~1.0</b></font></td>--%>
<%-- <td><font size="3"><b>2级合格</b></font></td>--%>
<%-- </tr>--%>
<%-- <tr style="background-color: rgba(64,75,87,0.5);color: white;">--%>
<%-- <td><font size="3"><b>>1.0</b></font></td>--%>
<%-- <td><font size="3"><b>3级不合格</b></font></td>--%>
<%-- </tr>--%>
<%-- </tbody>--%>
<%-- </table>--%>
<%-- </div>--%>
<%-- <div class="divframe_bottom_num" style="float: left;width: 100%;">--%>
<%-- <div style="width:32%; height: 400px;float: left;background-color: rgb(64,75,87);">--%>
<%-- <div style="width: 40%;height: 15%;text-align: center;line-height: 30px;padding-top: 25px;float: left;"><button style="border:1px solid rgb(43,218,219);color: rgb(43,218,219);border-radius: 5px;background-color: rgb(64,75,87);" onclick="show(1)">国家标准限值</button></div>--%>
<%-- <div style="width: 60%;height: 15%;text-align: left;line-height: 30px;padding-top: 25px;float: left;"><font size="6" color="white">国家标准</font></div>--%>
<%-- <div id="myChart_gb_day" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('gb_day');"></div>--%>
<%-- <div id="myChart_gb_month" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('gb_month');"></div>--%>
<%-- <div id="myChart_gb_year" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('gb_year');"></div>--%>
<%-- <!-- <div style="width: 33%;height: 20%;text-align: center;float: left;"><font size="5" color="white">日评指数</font></div>--%>
<%-- <div style="width: 33%;height: 20%;text-align: center;float: left;"><font size="5" color="white">月评指数</font></div>--%>
<%-- <div style="width: 33%;height: 20%;text-align: center;float: left;"><font size="5" color="white">年评指数</font></div> -->--%>
<%-- </div>--%>
<%-- <div style="width:32%; height: 400px;float: left;background-color: rgb(64,75,87);margin-left: 1%;">--%>
<%-- <div style="width: 40%;height: 15%;text-align: center;line-height: 30px;padding-top: 25px;float: left;"><button style="border:1px solid rgb(43,218,219);color: rgb(43,218,219);border-radius: 5px;background-color: rgb(64,75,87);" onclick="show(2)"><b>地方标准限值</b></button></div>--%>
<%-- <div style="width: 60%;height: 15%;text-align: left;line-height: 30px;padding-top: 25px;float: left;"><font size="6" color="white">地方标准</font></div>--%>
<%-- <div id="myChart_db_day" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('db_day');"></div>--%>
<%-- <div id="myChart_db_month" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('db_month');"></div>--%>
<%-- <div id="myChart_db_year" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('db_year');"></div>--%>
<%-- <!-- <div style="width: 33%;height: 20%;text-align: center;float: left;"><font size="5" color="white">日评指数</font></div>--%>
<%-- <div style="width: 33%;height: 20%;text-align: center;float: left;"><font size="5" color="white">月评指数</font></div>--%>
<%-- <div style="width: 33%;height: 20%;text-align: center;float: left;"><font size="5" color="white">年评指数</font></div> -->--%>
<%-- </div>--%>
<%-- <div style="width:32%; height: 400px;float: left;background-color: rgb(64,75,87);margin-left: 1%;">--%>
<%-- <div style="width: 40%;height: 15%;text-align: center;line-height: 30px;padding-top: 25px;float: left;"><button style="border:1px solid rgb(43,218,219);color: rgb(43,218,219);border-radius: 5px;background-color: rgb(64,75,87);" onclick="show(3)">内控标准限值</button></div>--%>
<%-- <div style="width: 60%;height: 15%;text-align: left;line-height: 30px;padding-top: 25px;float: left;"><font size="6" color="white">内控标准</font></div>--%>
<%-- <div id="myChart_nk_day" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('nk_day');"></div>--%>
<%-- <div id="myChart_nk_month" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('nk_month');"></div>--%>
<%-- <div id="myChart_nk_year" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('nk_year');"></div>--%>
<%-- <!-- <div style="width: 33%;height: 20%;text-align: center;float: left;"><font size="5" color="white">日评指数</font></div>--%>
<%-- <div style="width: 33%;height: 20%;text-align: center;float: left;"><font size="5" color="white">月评指数</font></div>--%>
<%-- <div style="width: 33%;height: 20%;text-align: center;float: left;"><font size="5" color="white">年评指数</font></div> -->--%>
<%-- </div>--%>
<%-- </div>--%>
<%-- </div>--%>
<div style="float: left;width: 100%;height: 640px;background-color: rgb(64,75,87);border-radius: 25px;">
<!-- <div style="width:26%; height: 640px;float: left;border-right: white 1px solid;">
<div style="width: 60%;height: 15%;text-align: right;line-height: 30px;padding-top: 50px;float: left;"><font size="12" face="宋体" color="white"><b>&nbsp;&nbsp;国家标准</b></font></div>
<div style="width: 40%;height: 15%;text-align: center;line-height: 30px;padding-top: 50px;float: left;"><button style="border:1px solid rgb(43,218,219);color: rgb(43,218,219);border-radius: 5px;background-color: rgb(64,75,87);" onclick="show(1)">标准内控值</button></div>
<div id="myChart_gb_day" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('gb_day');"></div>
<div id="myChart_gb_month" style="width:33%; height: 40%;float: left;margin-top: 10%;margin-left: 0.1px;" onclick="showline('gb_month');"></div>
<div id="myChart_gb_year" style="width:33%; height: 40%;float: left;margin-top: 10%;margin-left: 0.1px;" onclick="showline('gb_year');"></div>
</div> -->
<div style="width:78%; height: 640px;float: left;margin-left: 1%;border-right: white 1px solid;">
<div style="width: 60%;height: 15%;text-align: right;line-height: 30px;padding-top: 50px;float: left;"><font size="12" face="宋体" color="white"><b>&nbsp;地方标准</b></font></div>
<div style="width: 40%;height: 15%;text-align: center;line-height: 30px;padding-top: 50px;float: left;"><button style="border:1px solid rgb(43,218,219);color: rgb(43,218,219);border-radius: 5px;background-color: rgb(64,75,87);" onclick="show(2)"><b>标准内控值</b></button></div>
<div id="myChart_db_day" style="width:33%; height: 70%;float: left;" onclick="showline('db_day');"></div>
<div id="myChart_db_month" style="width:33%; height: 70%;float: left;" onclick="showline('db_month');"></div>
<div id="myChart_db_year" style="width:33%; height: 70%;float: left;" onclick="showline('db_year');"></div>
</div>
<!-- <div style="width:78%; height: 640px;float: left;margin-left: 1%;border-right: white 1px solid;">
<div style="width: 60%;height: 15%;text-align: right;line-height: 30px;padding-top: 50px;float: left;"><font size="12" face="宋体" color="white"><b>&nbsp;内控标准</b></font></div>
<div style="width: 40%;height: 15%;text-align: center;line-height: 30px;padding-top: 50px;float: left;"><button style="border:1px solid rgb(43,218,219);color: rgb(43,218,219);border-radius: 5px;background-color: rgb(64,75,87);" onclick="show(3)">标准内控值</button></div>
<div id="myChart_nk_day" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('nk_day');"></div>
<div id="myChart_nk_month" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('nk_month');"></div>
<div id="myChart_nk_year" style="width:33%; height: 40%;float: left;margin-top: 10%;" onclick="showline('nk_year');"></div>
</div> -->
<div style="float: right;width: 18%;height: 640px;margin-right: 1%;">
<table style=" width: 90%; margin-top: 25px; padding-top: 30px;">
<caption style="text-align: center;"><font size="12" style="color: white;"><b>评价指数值对应级别</b></font></caption>
<tr style="background-color: black;color: white;margin-top: 10%;">
<td style="text-align:center"><font size="12"><b>指数值</b></font></td>
<td style="text-align:center"><font size="12" ><b>评价级别</b></font></td>
</tr>
<tr style="background-color: rgb(64,75,87); height:100px;">
<td style="text-align:center"> <font size="12" style="color: white;"><b>< 0.5</b></font></td>
<td style="text-align:center"><font size="12" style="color: limegreen;"><b>1级 优秀</b></font></td>
</tr>
<tr style="background-color: rgb(64,75,87); height:100px;">
<td style="text-align:center"><font size="12" style="color: white;"><b>0.5~1.0</b></font></td>
<td style="text-align:center"><font size="12" style="color: goldenrod;"><b>2级 合格</b></font></td>
</tr>
<tr style="background-color: rgb(64,75,87); height:100px;">
<td style="text-align:center"><font size="12" style="color: white;"><b>>1.0</b></font></td>
<td style="text-align:center"><font size="12" style="color: red;"><b>3级 不合格</b></font></td>
</tr>
</table>
</div>
</div>
</section>
<!-- /.content -->
</div>
<%-- <jsp:include page="/jsp/bottom.jsp"></jsp:include> --%>
<jsp:include page="/jsp/side.jsp"></jsp:include>
</div>
</body>
</html>

View File

@ -0,0 +1,268 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<link rel="stylesheet" href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css"/>
<script type="text/javascript" src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js" charset="utf-8"></script>
<script type="text/javascript">
function doSelect() {
//var checkedItems = $("#table_user").bootstrapTable('getAllSelections');
var datas="";
datas_name="";
$.each(selectionIds, function(index, item){
if(datas!=""){
datas+=",";
}
datas+=item;
});
$.post(ext.contextPath + '/evaluation/criterion/getListForJson.do', {Ids : datas}, function(resp) {
$.each(resp, function(index, item){
if(datas_name!=""){
datas_name+=",";
}
datas_name += item.criterionName;
});
datas_name = datas_name.replace(/\ +/g,"").replace(/[\r\n]/g,"");
//console.log("datas_name:"+datas_name);
if('${pid}' != null && '${pid}' != ''){
$('#${pid}').val(datas);
$('#${pname}').val(datas_name);
}else{
$('#evaluationCriterionIds').val(datas);
$('#evaluationCriterions').val(datas_name);
}
closeModal("criterion4SelectModal");
},'json');
};
function stateFormatter(value, row, index) {
var flag=false;
var evaluationCriterions = '${evaluationCriterions}'.replace(/\ +/g,"").replace(/[\r\n]/g,"");
$.each(eval(evaluationCriterions), function(index, item){
if(row.id==item.id){
flag=true;
}
});
if (flag)
return {
checked : true//设置选中
};
return value;
}
var $table;
var switchStatus=false;
var selectionIds = []; //保存选中ids
function initialSelectionIds(){
var evaluationCriterions = '${evaluationCriterions}'.replace(/\ +/g,"").replace(/[\r\n]/g,"");
var check_array =eval(evaluationCriterions);
//console.log(check_array.length);
if(check_array!=null&& check_array.length>0){
selectionIds =new Array(check_array.length);
for(var i=0;i<check_array.length;i++){
selectionIds[i]=check_array[i].id;
}
}
}
function getCheckedIds(){
var ids="";
var evaluationCriterions = '${evaluationCriterions}'.replace(/\ +/g,"").replace(/[\r\n]/g,"");
var check_array =eval(evaluationCriterions);
$.each(check_array, function(index, item){
if(ids!=""){
ids+=",";
}
ids+=item.id;
});
return ids;
}
$(function() {
initialSelectionIds();
$table=$("#table_criterion").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/evaluation/criterion/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50, 100], // 设置页面可以显示的数据条数
pageSize: 100, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
onClickRow: function (row) {//单击行事件,执行查看功能
viewFun(row.id);
},
columns: [
{
checkbox: true, // 显示一个勾选框
//formatter: stateFormatter
formatter: function (i,row) { // 每次加载 checkbox 时判断当前 row 的 id 是否已经存在全局 Set() 里
if($.inArray(row.id,Array.from(selectionIds))!=-1){ // 因为 Set是集合,需要先转换成数组
return {
checked : true // 存在则选中
}
}
}
},
{
field: 'criterionName', // 返回json数据中的name
title: '标准名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width:120
}, {
field: 'condition', // 返回json数据中的name
title: '条件', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
width:100,
formatter: function(value, row, index){
if(row.condition == '1'){
return '大于';
}else if(row.condition == '2'){
return '小于';
}else if(row.condition == '3'){
return '区间内';
}else{
return '区间外';
}
}
},{
field: 'condition', // 返回json数据中的name
title: '国家标准', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
width:100,
formatter: function(value, row, index){
if(row.condition == '1' || row.condition == '2'){
return row.nationCriterionValue;
}else if(row.condition == '3'){
return '[' + row.nationCriterionMin + ',' + row.nationCriterionMax + ']';
}else{
return '[-∞,' + row.nationCriterionMin + '],[' + row.nationCriterionMax + ',+∞]';
}
}
}, {
field: 'condition', // 返回json数据中的name
title: '地区标准', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
width:100,
formatter: function (value, row, index) {
if(row.condition == '1' || row.condition == '2'){
return row.areaCriterionValue;
}else if(row.condition == '3'){
return '[' + row.areaCriterionMin + ',' + row.areaCriterionMax + ']';
}else{
return '[-∞,' + row.areaCriterionMin + '],[' + row.areaCriterionMax + ',+∞]';
}
}
},{
field: 'condition', // 返回json数据中的name
title: '内控值', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
width:100,
formatter: function (value, row, index) {
if(row.condition == '1' || row.condition == '2'){
return row.companyCriterionValue;
}else if(row.condition == '3'){
return '[' + row.companyCriterionMin + ',' + row.companyCriterionMax + ']';
}else{
return '[-∞,' + row.companyCriterionMin + '],[' + row.companyCriterionMax + ',+∞]';
}
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
})
//绑定选中事件、取消事件、全部选中、全部取消
$table.on('check.bs.table check-all.bs.table uncheck.bs.table uncheck-all.bs.table', function (e,rows, obj) {
var ids = $.map(!$.isArray(rows) ? [rows] : rows, function (row) {
return row.id;
});
func = $.inArray(e.type, ['check', 'check-all']) > -1 ? 'union' : 'difference';
selectionIds = _[func](selectionIds, ids);
if('check'==e.type){
obj.parent().addClass("checked");
}else{
obj.parent().removeClass("checked");
}
//adjustBootstrapTableView("table_user");
});
});
//选中事件操作数组
var union = function(array,ids){
$.each(ids, function (i, id) {
if($.inArray(id,array)==-1){
array[array.length] = id;
}
});
return array;
};
//取消选中事件操作数组
var difference = function(array,ids){
$.each(ids, function (i, id) {
var index = $.inArray(id,array);
if(index!=-1){
array.splice(index, 1);
}
});
return array;
};
var _ = {"union":union,"difference":difference};
//表格分页之前处理多选框数据
function responseHandler(res) {
$.each(res.rows, function (i, row) {
row.checkStatus = $.inArray(row.id, selectionIds) != -1; //判断当前行的数据id是否存在与选中的数组存在则将多选框状态变为true
});
return res;
}
var closeSelect = function () {
closeModal("criterion4SelectModal");
}
</script>
<div class="modal fade" id="criterion4SelectModal">
<div class="modal-dialog" style="width: 600px;">
<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 " style="width:100%">
<div id="alertDiv"></div>
<div>
<div id="table_criterion" style="overflow:auto;width: 100%;"></div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" onclick="closeSelect()">关闭</button>
<button type="button" class="btn btn-primary" onclick="doSelect()">确认</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,126 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
$(function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/evaluation/criterion/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [20, 30, 50], // 设置页面可以显示的数据条数
pageSize: 20, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
field: 'criterionName', // 返回json数据中的name
title: '标准名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
}, {
field: 'condition', // 返回json数据中的name
title: '条件', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
formatter: function(value, row, index){
if(row.condition == '1'){
return '大于等于';
}else if(row.condition == '2'){
return '小于等于';
}else if(row.condition == '3'){
return '区间内';
}else{
return '区间外';
}
}
},
{
field: 'condition', // 返回json数据中的name
title: '${typeCriterion}标准', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',// 上下居中
formatter: function(value, row, index){
if(row.condition == '1' || row.condition == '2'){
if('${type}' == '1'){
return row.nationCriterionValue;
}else if('${type}' == '2'){
return row.areaCriterionValue;
}else{
return row.companyCriterionValue;
}
}else if(row.condition == '3'){
if('${type}' == '1'){
return '[' + row.nationCriterionMin + ',' + row.nationCriterionMax + ']';
}else if('${type}' == '2'){
return '[' + row.areaCriterionMin + ',' + row.areaCriterionMax + ']';
}else{
return '[' + row.companyCriterionMin + ',' + row.companyCriterionMax + ']';
}
}else{
if('${type}' == '1'){
return '[-∞,' + row.nationCriterionMin + '],[' + row.nationCriterionMax + ',+∞]';
}else if('${type}' == '2'){
return '[-∞,' + row.areaCriterionMin + '],[' + row.areaCriterionMax + ',+∞]';
}else{
return '[-∞,' + row.companyCriterionMin + '],[' + row.companyCriterionMax + ',+∞]';
}
}
}
},
{
field: 'detectionLimit', // 返回json数据中的name
title: '检测限', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
});
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<div class="modal-content" style="width: 700px;">
<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">各指标${typeCriterion}标准</h4>
</div>
<div class="modal-body">
<!-- 新增界面formid强制为subForm -->
<table id="table"></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>

View File

@ -0,0 +1,147 @@
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title></title>
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/echarts/echarts.4.1.0.min.js"
charset="utf-8"></script>
<script type="text/javascript">
var nv;
var nt;
var date;
$(function () {
nv = JSON.parse('${nv}');
nt = JSON.parse('${nt}');
date = '${date}';
var data = nv.nv;
var t = nt.nt;
var barHeight = 0;
var chartDom2 = document.getElementById('contain');
var myChart3 = echarts.init(chartDom2);
var num = 0;
if (t.length > 30) {
num = 1;
}
var option3;
option3 = {
title: {
text: date + ' 各指标分指数.'
//subtext: '1级< 0.52级合格0.5~13级不合格> 1'
},
avoidLabelOverlap: true,
angleAxis: {
type: 'category',
data: t,
//max: 100,
axisLabel: {
interval: num,
rotate:45,
fontSize: 18,
}
},
tooltip: {
show: true,
confine: true,
formatter: function (params) {
var id = params.dataIndex;
return t[id] + '<br>分指数:' + data[id][1];
},
/*textStyle: {
fontSize: 22
}*/
},
radiusAxis: {
max: 1,
},
polar: {
radius: 160,
},
series: [{
type: 'bar',
itemStyle: {
color: 'transparent',
/*textStyle: {
fontSize: 22
}*/
},
barWidth: 10,
data: data.map(function (d) {
return d[0];
}),
coordinateSystem: 'polar',
stack: '最大最小值',
label: {
normal: {
show: true,
/*textStyle: {
fontSize: 28
}*/
},
emphasis: {
show: true
}
},
labelLine: { // 统一设置指示线长度
normal: {
length: 15
}
}
}, {
type: 'bar',
barWidth: 10,
itemStyle: {
normal: {
color: function (params) {
var colorList = ['rgba(51, 255, 51,0.8)', 'rgba(240,189,0,0.8)', 'rgba(255,0,0,0.8)'];
if (params.name == '臭和味') {
if (params.value < 1) {
return colorList[0];
} else if (1 <= params.value & 5 > params.value) {
return colorList[1];
} else {
return colorList[2];
}
} else {
if (params.value < 0.5) {
return colorList[0];
} else if (0.5 <= params.value & 1 >= params.value) {
return colorList[1];
} else {
return colorList[2];
}
}
//return colorList[params.dataIndex%colorList.length]
},
/*textStyle: {
fontSize: 30
}*/
},
/*label: {
normal: {
textStyle: {
fontSize: 30,
}
}
}*/
},
data: data.map(function (d) {
return d[1] - d[0];
}),
coordinateSystem: 'polar',
stack: '最大最小值'
}]
};
myChart3.setOption(option3);
})
</script>
</head>
<body>
<div style="width:550px; height: 600px;" id="contain"></div>
</body>
</html>

View File

@ -0,0 +1,260 @@
<%@ page language="java" pageEncoding="UTF-8" %>
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/echarts/echarts.4.1.0.min.js"
charset="utf-8"></script>
<script type="text/javascript">
var json;
var titlejson;
var vj;
var nv;
var nt;
var date;
var myChart = echarts.init(document.getElementById("myLine"));
$(function () {
json = JSON.parse('${jsonDate}');
titlejson = JSON.parse('${title_radar}');
vj = JSON.parse('${values}');
nv = JSON.parse('${newvaluelist}');
nt = JSON.parse('${newtitlelist}');
date = '${date}';
// console.log(nv);
// console.log(nt);
//初始化ehcharts实例
//指定图表的配置项和数据
var option = {
//标题
title: {
text: json.name + '趋势'
},
tooltip: {
trigger: 'axis',
},
//工具箱
//保存图片
toolbox: {
show: true,
feature: {
saveAsImage: {
show: true
}
}
},
//图例-每一条数据的名字
legend: {
data: [json.name],
textStyle: {
fontSize: 18
}
},
//x轴
xAxis: {
data: json.title,
axisLabel: {
textStyle: {
fontSize : 18
}
}
},
//y轴没有显式设置根据值自动生成y轴
yAxis: {
axisLabel: {
textStyle: {
fontSize : 18
}
}
},
//数据-data是最终要显示的数据
series: [{
name: json.name,
type: 'line',
data: json.val
}]
};
//使用刚刚指定的配置项和数据项显示图表
myChart.setOption(option);
showRadarTwo(date);
//showRadar();
//showRadarNew();
});
myChart.on('click', function (params) {
$.post(ext.contextPath + "/evaluation/show/getRadar.do", {date: params.name, type: '${type}'}, function (data) {
//$('#radar').html('');
var jsondata = JSON.parse(data);
titlejson = jsondata.title_radar;
vj = jsondata.vj;
nv = jsondata.nv;
nt = jsondata.nt;
showRadarTwo(params.name);
//console.log(titlejson);
//showRadar();
});
});
function showRadar() {
var chartDom = document.getElementById('radar');
var myChart2 = echarts.init(chartDom);
var option2;
option2 = {
color: ['blue'],
title: {
text: '雷达图'
},
legend: {
data: ['各指标分指数..']
},
tooltip: {
trigger: 'axis',
textStyle: {
fontSize: 18
}
},
radar: [
{
indicator: titlejson,
center: ['50%', '50%'],
radius: 80,
startAngle: 1,
splitNumber: 2,
shape: 'circle',
name: {
formatter: '【{value}】',
textStyle: {
color: '#428BD4'
}
},
splitArea: {
areaStyle: {
color: ['rgba(51, 255, 51,0.8)', 'rgba(240,189,0,0.8)'],
shadowColor: 'rgba(0, 0, 0, 0.2)',
shadowBlur: 10
}
},
axisLine: {
lineStyle: {
color: 'rgba(211, 253, 250, 0.8)'
}
},
splitLine: {
lineStyle: {
color: 'rgba(211, 253, 250, 0.8)'
}
}
}
],
series: [
{
name: '雷达图',
type: 'radar',
emphasis: {
lineStyle: {
width: 4
}
},
label: {
normal: {
show: true,
textStyle: {
fontSize: 22 }
},
emphasis: {
show: true
}
},
data: [
{
value: vj.vj,
name: '各指标分指数.'
}
]
}
]
};
myChart2.setOption(option2);
}
function showRadarNew() {
var data = nv.nv;
var t = nt.nt;
var barHeight = 0;
var chartDom2 = document.getElementById('radarnew');
var myChart3 = echarts.init(chartDom2);
var option3;
option3 = {
title: {
text: '各指标分指数雷达图',
subtext: '1级< 0.52级合格0.5~13级不合格> 1'
},
angleAxis: {
type: 'category',
data: t,
interval: 1
},
tooltip: {
show: true,
confine: true,
formatter: function (params) {
var id = params.dataIndex;
return t[id] + '<br>分指数:' + data[id][1];
}
},
radiusAxis: {},
polar: {
radius: 150,
},
series: [{
type: 'bar',
itemStyle: {
color: 'transparent'
},
data: data.map(function (d) {
return d[0];
}),
coordinateSystem: 'polar',
stack: '最大最小值'
}, {
type: 'bar',
data: data.map(function (d) {
return d[1] - d[0];
}),
coordinateSystem: 'polar',
stack: '最大最小值'
}]
};
myChart3.setOption(option3);
}
function showRadarTwo(date) {
// console.log(JSON.stringify(nv));
// console.log(JSON.stringify(nt));
$("#radartwo").attr("src", ext.contextPath + "/evaluation/show/showRadar.do?nv=" + encodeURI(JSON.stringify(nv)) + '&nt=' + encodeURI(JSON.stringify(nt)) + '&date=' + date);
}
//$('#radartwo').src = 'http://baidu.com';
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog" style="width: 1200px;height: 600px;">
<div class="modal-content" style="width: 100%;">
<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" style="float: left;width: 100%;">
<div style="width:600px; height: 600px;float: left;" id="myLine"></div>
<!-- <div style="width:550px; height: 500px;float: left;" id="radar" hidden="hidden"></div>
<div style="width:550px; height: 500px;float: left;" id="radarnew" hidden="hidden"></div> -->
<div style="width:550px; height: 600px;float: left;">
<iframe style="height:100%;width:100%;" frameborder="1" scrolling="no" id="radartwo"></iframe>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>