Files
SIPAIIS_WMS_JSSW/WebRoot/jsp/safety/SafetyCheckComprehensiveAdd.jsp

452 lines
19 KiB
Plaintext
Raw Permalink Normal View History

2026-01-16 14:13:44 +08:00
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ 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" %>
<style type="text/css">
.select2-container .select2-selection--single {
height: 34px;
line-height: 34px;
}
.select2-selection__arrow {
margin-top: 3px;
}
.form-horizontal {
padding-top: 20px;
}
.DDD{
list-style: none;
line-height: 30px;
}
</style>
<script type="text/javascript">
var fileList = []
// 初始化
$(function () {
$('#test').outerHTML = initFileInputView()
//初始化 检查日期
$("#checkDate").datepicker({
language: 'zh-CN',
autoclose: true,
todayHighlight: true,
format: 'yyyy-mm-dd',
});
// 检查类型
$('#checkTypePrefix').attr("disabled", "disabled");
$('input[type=radio][name=checkType]').change(function () {
if (this.value == '月度检查') {
$('#checkTypePrefix').val('');
$('#checkTypePrefix').attr("disabled", "disabled");
} else {
$('#checkTypePrefix').removeAttr("disabled");
}
});
// 初始化‘提交’按钮
$("#submitBt").hide();
$("#checkResult").change(function () {
var type = $("#checkResult option:selected").val();
if (type == "1") {
$("#unAccord").hide();
$("#unAccord1").hide();
$("#submitBt").hide();
$('#checkResultDetail').val('');
$('#dutyDeptId').val('');
$('#dutyDeptName').val('');
$('#dutyUserName').val('');
$('#dutyUserId').val('');
}
if (type == "2") {
$("#unAccord").show();
$("#unAccord1").show();
$("#submitBt").show();
$('#confirmUserName').val('');
}
});
// 初始化 检查结果下拉
checkResultDropDownInit()
// 初始化 检查项目下拉
checkItemDropDownInit()
});
// 点击文件
var fileinput = function () {
$('#file').click();
};
// 清空文件
var filedel = function () {
fileList.splice(index,1)
$('#test').html(initFileInputView())
};
// 选中文件
var fileSelected = function () {
var filename = $('#file').val();
fileList.push(...$('#file')[0].files)
$('#test').html(initFileInputView())
};
function initFileInputView() {
let button = (index) => {
return `<button type="button" class="btn btn-default btn-file" onclick="filedel(`+index+`)"
style="position: fixed;right: 193px;height: 24px;width:24px;padding-top:2px;margin-top: 3px" id="btn_save1"><i class="fa fa-trash-o" style="margin-left: -5px"></i></button>`
}
let temp = `<ul class="DDD">`
fileList.forEach((item, index) => {
temp += `<li>`+item.name+button(index)+`</li>`
})
temp += `<ul>`
temp += `<input type="hidden" class="form-control" name="fileName" id="fileName" readonly
style="width:650px;border:none;background-color: white"/>`
return temp
}
// 处理 检查类型 前缀拼接
function handleCheckType(formData) {
let checktype = $('input[type=radio][name=checkType]:checked').val();
if (checktype != '月度检查') {
let checkTypePrefix = $('#checkTypePrefix').val();
formData.set('checkType', checkTypePrefix + checktype);
}
}
// 保存
function saveFun() {
$("#addForm").bootstrapValidator('validate');//提交验证
if ($("#addForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
var formData = new FormData($("#addForm")[0]);
this.handleCheckType(formData);
$.ajax({
url: ext.contextPath + "/safety/SafetyCheckComprehensive/save.do",
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
dataType: 'json',
success: function (data) {
// console.log(data)
if (data.code == 1) {
$("#table").bootstrapTable('refresh');
closeModal('subModal');
} else {
showAlert('d', '保存失败!' + data.msg);
}
},
error: function (data) {
}
});
}
}
// 提交
function submitFun() {
$("#addForm").bootstrapValidator('validate');//提交验证
if ($("#addForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
var formData = new FormData($("#addForm")[0]);
this.handleCheckType(formData);
$.ajax({
url: ext.contextPath + "/safety/SafetyCheckComprehensive/saveApply.do",
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
dataType: 'json',
success: function (data) {
if (data.code == 1) {
$("#table").bootstrapTable('refresh');
closeModal('subModal');
} else {
showAlert('d', '保存失败!' + data.msg);
}
},
error: function (data) {
}
});
}
}
// 表单验证
$("#addForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
educationCode: {
validators: {
notEmpty: {
message: '培训记录编号不能为空。'
}
}
},
}
});
// 检查结果
function checkResultDropDownInit() {
var select_Data = jQuery.parseJSON('${checkResultList}');
var select_3 = $("#checkResult").select2({
data: select_Data,
cache: false,
placeholder: '请选择',//默认文字提示
// allowClear: true,//允许清空
escapeMarkup: function (markup) {
return markup;
}, // 自定义格式化防止xss注入
language: "zh-CN",
minimumInputLength: 0,
minimumResultsForSearch: 10,//数据超过十个启用搜索框
formatResult: function formatRepo(repo) {
return repo.text;
}, // 函数用来渲染结果
formatSelection: function formatRepoSelection(repo) {
return repo.text;
} // 函数用于呈现当前的选择
});
$(".select2-selection--single").css({'height': '30px', 'paddingTop': '4px'});
}
// 检查项目
function checkItemDropDownInit() {
var select_Data = jQuery.parseJSON('${checkItemList}');
var select_3 = $("#checkResultDetail").select2({
data: select_Data,
cache: false,
placeholder: '请选择',//默认文字提示
allowClear: true,//允许清空
escapeMarkup: function (markup) {
return markup;
}, // 自定义格式化防止xss注入
language: "zh-CN",
minimumInputLength: 0,
minimumResultsForSearch: 10,//数据超过十个启用搜索框
multiple: true,
templateResult: function formatRepo(repo) {
return "【" + repo.group + "】 " + repo.text;
}, // 函数用来渲染结果
templateSelection: function formatRepoSelection(repo) {
return "【" + repo.group + "】 " + repo.text;
} // 函数用于呈现当前的选择
});
$(".select2-selection--single").css({'height': '30px', 'paddingTop': '4px'});
}
// 检查人员
function selectCheckUser() {
$.post(ext.contextPath + '/user/userForSelectByCompany.do',
{
formId: "addForm",
hiddenId: "checkerId",
textId: "checkerName"
}, function (data) {
$("#user4SelectDiv").html(data);
openModal("user4SelectModal");
});
};
// 整改负责人
function selectDutyUser() {
$.post(ext.contextPath + '/user/userForOneSelectByStructure.do', {
formId: "addForm",
hiddenId: "dutyUserId",
textId: "dutyUserName",
bean: "dutyUserBean"
}, function (data) {
$("#user4SelectDiv").html(data);
openModal('user4SelectModal');
});
}
// 整改负责人 改变事件
function userInfoChage() {
var userInfo = JSON.parse($('#dutyUserBean').val());
var userInfo2;
$('#dutyDeptId').val(userInfo.pid);
// if (userInfo.sex == '1') {
// $('#gender').val('男');
// } else {
// $('#gender').val('女');
// }
$.post(ext.contextPath + '/user/findUserByIds.do?userIdsStr=' + userInfo.id + ',', function (res) {
userInfo2 = res[0];
$('#dutyDeptName').val(userInfo2.deptName);
}, 'json')
}
// 抄送人
var copyUserSelectsFun = function () {
$.post(ext.contextPath + '/user/userForSelectByCompany.do',
{
formId: "addForm",
hiddenId: "copyUserId",
textId: "copyUserName"
}, function (data) {
$("#user4SelectDiv").html(data);
openModal("user4SelectModal");
});
};
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog modal-lg">
<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强制为addForm -->
<form class="form-horizontal" id="addForm" enctype="multipart/form-data">
<div id="alertDiv"></div>
<div class="form-group">
<label class="col-sm-2 control-label">检查类型</label>
<div class="col-sm-10">
<label class="radio-inline">
<input type="radio" name="checkType" id="monthCheck"
value="月度检查" checked>月度检查
</label>
<label class="radio-inline" style="margin-left: 30px;">
<input type="radio" name="checkType" id="otherCheck" value="(节前)检查">
<input type="text" id="checkTypePrefix" name="checkTypePrefix"
style="width: 200px;"> <%--disabled="disabled"--%>
(节前)检查
</label>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label ">检查日期</label>
<div class="col-sm-4 ">
<div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control" id="checkDate" name="checkDate"
placeholder="请选择.."/>
</div>
</div>
<label class="col-sm-2 control-label">检查地点</label>
<div class="col-sm-4 ">
<input type="text" id="checkPlace" name="checkPlace" class="form-control"
placeholder="请输入..">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">检查人员</label>
<div class="col-sm-4">
<input type="text" id="checkerName" name="checkerName" class="form-control"
placeholder="请选择.." readonly onclick="selectCheckUser()"
style="background-color: white">
<input type="hidden" id="checkerId" name="checkerId" class="form-control"
placeholder="请选择..">
</div>
<label class="col-sm-2 control-label">记录人</label>
<div class="col-sm-4">
<input type="text" id="recorderName" name="recorderName" class="form-control"
placeholder="请输入.." readonly value="${currUser.caption}"
style="background-color: white">
<input type="hidden" id="recorderId" name="recorderId" class="form-control"
placeholder="请选择.." readonly value="${currUser.id}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label ">检查结果</label>
<div class="col-sm-4 ">
<select class="form-control select2" name="checkResult" id="checkResult"
style="width: 100%">
</select>
</div>
</div>
<div class="form-group" id="unAccord" style="display: none">
<label class="col-sm-2 control-label">不相符内容</label>
<div class="col-sm-10 ">
<select class="form-control select2" name="checkResultDetail" id="checkResultDetail"
style="width: 100%">
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label ">附加说明</label>
<div class="col-sm-10">
<textarea class="form-control" id="checkRemark" name="checkRemark"
placeholder="请选择"/>
</div>
</div>
<div class="form-group" id="unAccord1" style="display: none">
<label class="col-sm-2 control-label ">整改负责部门</label>
<div class="col-sm-4">
<input type="hidden" class="form-control" id="dutyDeptId" name="dutyDeptId"
readonly />
<input type="text" class="form-control" id="dutyDeptName" name="dutyDeptName"
placeholder="请选择.." readonly onclick="selectDutyUser()" style="background-color: white"/>
</div>
<label class="col-sm-2 control-label ">整改负责人</label>
<div class="col-sm-4">
<input type="text" class="form-control" id="dutyUserName" name="dutyUserName"
placeholder="请选择.." readonly onclick="selectDutyUser()"
style="background-color: white">
<input type="hidden" class="form-control" id="dutyUserId" name="dutyUserId"
placeholder="请选择"/>
<input type="hidden" class="form-control" id="dutyUserBean" name="dutyUserBean"
placeholder="请选择" onchange="userInfoChage()"/>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label ">抄送人</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="copyUserName" name="copyUserName"
placeholder="点击选择.." onclick="copyUserSelectsFun()" readonly
style="background-color: white">
<input id="copyUserId" name="copyUserId" type="hidden" value=""/>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label ">附件资料:</label>
<div class="col-sm-1" style="display: flex">
<button type="button" class="btn btn-default btn-file" onclick="fileinput()"
id="btn_save"><i class="fa fa-paperclip"></i></button>
</div>
<div class="col-sm-7">
<div id="test" ></div>
</div>
</div>
<div class="form-group" style="margin:8px;">
<input type="file" name="file" id="file" multiple class="file-loading"
onchange="fileSelected()"/>
</div>
</form>
</div>
<div class="modal-foo
ter">
<button type="button" class="btn btn-default " data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary " style="margin-left: 10px" onclick="saveFun()">
保存
</button>
<button type="button" id="submitBt" class="btn btn-primary " style="margin-left: 10px"
onclick="submitFun()">
提交
</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>