IntelligentRecognition/ah-jjsp-web/.svn/pristine/a5/a54ee371d597b61d68a9ed47e94...

446 lines
15 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

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

let form, layer, laydate, upload, formSelects, classId, riskLevel = null, teamName = null,bidCode = null,signCode = null,
fileList = new Array(), imgListUp = new Array(), orgList, vioTypeList, voiLevelList, typeList,typeChildList;
// 违章类别默认手动输入
let checkVoiType = '1';
layui.config({
base: "../../../js/layui/", //此处路径请自行处理, 可以使用绝对路径
}).extend({
formSelects: 'formSelects-v4'
}).use(['form', 'layer', 'laydate', 'upload', 'formSelects'], function () {
layer = layui.layer;
form = layui.form;
laydate = layui.laydate;
upload = layui.upload;
formSelects = layui.formSelects;
orgList = getOrgSelect();
vioTypeList = getRiskLevelSelect('voi_category');
voiLevelList = getRiskLevelSelect('voi_level');
typeList = getRiskLevelSelect('voi_type');
typeChildList = getTypeChildSelect('');
var jldw=getUnitSelect('2');
var sgdw=getUnitSelect('1');
setUnitSelect(jldw,'','bidCode');
setUnitSelect(sgdw,'','signCode');
setOrg();
setLevelId();
setVioType();
setType();
setTypeChild();
form.render();
laydate.render({
elem: '#createTime', //指定元素 元素选择器
type: 'date', //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
trigger: 'click',
min: Date.parse(new Date()),
format: 'yyyy-MM-dd', //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss
btns: ['now', 'confirm'], //选择框右下角显示的按钮 清除-现在-确定
done: function (value, date) { //时间回调
}
});
$('#createTime').val(getNowTime())
let uploadObj = upload.render({
elem: '#test2',
multiple: true,
dataType: "json",
exts: 'jpg|png|jpeg',
acceptMime: 'image/jpg,image/png,image/jpeg',
// number: 3, //最大上传数量
size: 1024 * 100, //最大文件大小单位k
auto: false, //是否自动上传 默认为true
bindAction: '#hideUpload', //绑定的按钮
choose: function (obj) {
uploadObj.config.elem.next()[0].value = '';
obj.preview(function (index, file, result) {
$('#uploader-list').append(
'<div id="" class="file-iteme">' +
'<div class="handle"><p>x</p></div>' +
'<img class="img" style="width: 130px;height: 100px;" data-index=' + index + ' data-name=' + file.name + ' src=' + result + '>' +
'</div>'
);
let map = new Map();//将选择的图片索引和图片写成对象存入集合
map.index = index;
map.file = file;
fileList.push(map);
});
}
});
form.on('select(levelId)', function (data) {
setRecRequirementData(data.value)
})
form.on('select(type)', function (data) {
typeChildList = getTypeChildSelect(data.value);
setTypeChild();
})
});
// 根据选择的违章等级赋值整改要求
function setRecRequirementData(value) {
let recRequirement = '';
if (value) {
let recDate = '';
if (value === '一般违章' || value === '建议整改') {
recDate = setDate(addDate(getNowTime(), 3))
} else if (value === '严重违章') {
recDate = setDate(addDate(getNowTime(), 6))
}
recRequirement = '请立即组织整改,并举一反三,避免同类违章重复出现。' + recDate + '前将《' + value + '分析报告及整改反馈单》报省公司建设部和本中心审查备案。若存在异议请于1日内以书面形式向本中心陈述理由提供证明材料。'
}
$('#recRequirement').val(recRequirement)
}
function addDate(date, days) {
if (days == undefined || days == '') {
days = 1;
}
var date = new Date(date);
date.setDate(date.getDate() + days);
var month = date.getMonth() + 1;
var day = date.getDate();
return date.getFullYear() + '-' + getFormatDate(month) + '-' + getFormatDate(day);
}
// 日期月份/天的显示如果是1位数则在前面加上'0'
function getFormatDate(arg) {
if (arg == undefined || arg == '') {
return '';
}
let re = arg + '';
if (re.length < 2) {
re = '0' + re;
}
return re;
}
// 提交数据
function saveData() {
let objStr = verifyData()
if (objStr === true) {
return false;
}
let formData = new FormData();
//遍历最终图片集合
for (let i = 0; i < fileList.length; i++) {
formData.append("file[]", fileList[i].file)
}
formData.append("params", objStr)
// 加载提示
let loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0});
$.ajax({
url: dataUrl + 'proteam/pot/todayTask/uploadNoticeVio?token=' + token,
type: 'POST',
data: formData,
dataType: 'json',
processData: false,
contentType: false,
beforeSend: function () {
$('.save').addClass("layui-btn-disabled").attr("disabled", true);
$('.cancel').addClass("layui-btn-disabled").attr("disabled", true);
},
success: function (result) {
console.log(result);
layer.close(loadingMsg); // 关闭提示层
if (result.msg === 'success') {
closePage(1);
parent.layer.msg('违章单添加成功', {icon: 1});
} else {
layer.msg('违章单添加出错,请稍后重试', {icon: 2});
$('.save').removeClass("layui-btn-disabled").attr("disabled", false);
$('.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
}
},
error: function (result) {
layer.close(loadingMsg); // 关闭提示层
layer.msg('服务异常,请稍后重试', {icon: 16, scrollbar: false, time: 2000});
$('.save').removeClass("layui-btn-disabled").attr("disabled", false);
$('.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
}
});
}
/*验证字段*/
function verifyData() {
let bidName = $('#proName').val();
let createTime = $('#createTime').val();
let remark2=$("#remark2").val();
let org = $('#org').val();
let bidCode = $('#bidCode').val();
let signCode = $('#signCode').val();
let content = $('#content').val();
let voiYj = $('#voiYj').val();
let recRequirement = $('#recRequirement').val();
if (!bidName) {
layer.msg("请填写工程名称", {icon: 5})
return true;
}
if (!remark2) {
layer.msg("请填写施工内容及施工部位", {icon: 5})
return true;
}
if (!createTime) {
layer.msg("请填写督查时间", {icon: 5})
return true;
}
if (!org) {
layer.msg("请选择主送单位", {icon: 5})
return true;
}
if (!bidCode) {
layer.msg("请选择施工单位", {icon: 5})
return true;
}
if (!signCode) {
layer.msg("请选择监理单位", {icon: 5})
return true;
}
if (!content) {
layer.msg("请填写发现问题", {icon: 5})
return true;
}
if (!voiYj) {
layer.msg("请填写违章条款", {icon: 5})
return true;
}
if (!recRequirement) {
layer.msg("请填写整改要求", {icon: 5})
return true;
}
if (fileList.length === 0) {
layer.msg("请上传督查照片", {icon: 5})
return true;
}
let obj = {
proName: bidName,
remark2: remark2,
createTime: createTime,
voiYj: voiYj,
content: content,
org: org,
recRequirement: recRequirement,
bidCode:bidCode,
signCode:signCode,
supType:3,
}
return JSON.stringify(obj);
}
// 删除图片
$(document).on("click", ".file-iteme .handle", function (event) {
imgListUp.splice(0, imgListUp.length);
let index = $(this).next().attr('data-index');
$.each(fileList, function (inx, ele) {
//对比删除图片索引
//将未删除的存入新集合
if (index != ele.index) {
imgListUp.push(ele);
}
});
$(this).parent().remove();
//将新图片集合替换老集合
fileList.splice(0, fileList.length);
$.each(imgListUp, function (inx, ele) {
fileList.push(ele)
});
});
// 选择违章人员
function openViolatorsPerson() {
if (!classId) {
return layer.msg('请选择作业票编号', {icon: 7})
}
let width = '664px';
let height = '444px';
let layerIndex = layer.open({
id: 'violatorsPerson',
title: ['<div style="border-left: 3px solid #2F82FB;display: flex;align-items: center;height: 20px;padding: 0 10px;">选择违章人员</div>', 'font-size:16px;background-color:#f0f0f0;display: flex;align-items: center;'],
type: 2,
shade: 0.1,
shadeClose: false,
content: '../remotePatrol/violatorsPerson.html',
area: [width, height],
maxmin: false,
move: false,
success: function (layero, index) {
let idNumber = $('#idNumber').val();
let score = $('#score').val();
let iframeWin = window["layui-layer-iframe" + layerIndex];
iframeWin.setParams(classId, score, idNumber);
}
});
}
/*违章依据页面*/
function openViolationBasis() {
let voiTypeId = formSelects.value('voiType', 'val').toString();
if (!voiTypeId) {
return layer.msg('请选择违章类别', {icon: 7})
}
let width = '664px';
let height = '444px';
let layerIndex = layer.open({
id: 'violationBasis',
title: ['<div style="border-left: 3px solid #2F82FB;display: flex;align-items: center;height: 20px;padding: 0 10px;">选择违章依据</div>', 'font-size:16px;background-color:#f0f0f0;display: flex;align-items: center;'],
type: 2,
shade: 0.1,
shadeClose: false,
content: '../remotePatrol/violationBasis.html',
area: [width, height],
maxmin: false,
move: false,
success: function (layero, index) {
let voiTypeSelId = $('#voiTypeId').val()
let iframeWin = window["layui-layer-iframe" + layerIndex];
iframeWin.setParams(voiTypeId, voiTypeSelId);
}
});
}
/*选择作业票*/
function chooseTicketNo() {
let width = '664px';
let height = '444px';
let layerIndex = layer.open({
id: 'violatorsPerson',
title: ['<div style="border-left: 3px solid #2F82FB;display: flex;align-items: center;height: 20px;padding: 0 10px;">选择作业票</div>', 'font-size:16px;background-color:#f0f0f0;display: flex;align-items: center;'],
type: 2,
shade: 0.1,
shadeClose: false,
content: 'violationTicket.html',
area: [width, height],
maxmin: false,
move: false,
success: function (layero, index) {
let iframeWin = window["layui-layer-iframe" + layerIndex];
iframeWin.setParams();
}
});
}
function setOrg(org) {
let html = '<option value="">请选择</option>';
$.each(orgList, function (index, item) {
if (org === item.code) {
html += '<option value="' + item.code + '" selected>' + item.name + '</option>';
} else {
html += '<option value="' + item.code + '">' + item.name + '</option>';
}
})
$('#org').empty().append(html);
layui.form.render();
}
function setUnitSelect(list,data,id) {
let html = '<option value="">请选择</option>';
$.each(list, function (index, item) {
if (data === item.name) {
html += '<option value="' + item.name + '" selected>' + item.name + '</option>';
} else {
html += '<option value="' + item.name + '">' + item.name + '</option>';
}
})
$('#'+id).empty().append(html);
layui.form.render();
}
function setVioType(voiType) {
let keys = [];
$.each(vioTypeList, function (index, item) {
let temp = {
"name": item.name,
"value": item.code
};
keys.push(temp);
})
formSelects.data('voiType', 'local', {
arr: keys
});
layui.form.render();
}
/* 违章等级赋值 */
function setLevelId() {
let html = '<option value="" selected>请选择</option>';
$.each(voiLevelList, function (index, item) {
html += '<option value="' + item.id + '">' + item.name + '</option>';
})
$('#levelId').empty().append(html);
layui.form.render();
}
/* 违章类型赋值 */
function setType() {
let html = '<option value="" selected>请选择</option>';
$.each(typeList, function (index, item) {
html += '<option value="' + item.id + '">' + item.name + '</option>';
})
$('#type').empty().append(html);
layui.form.render();
}
/* 违章子类型赋值 */
function setTypeChild() {
let html = '<option value="" selected>请选择</option>';
$.each(typeChildList, function (index, item) {
html += '<option value="' + item.name + '">' + item.name + '</option>';
})
$('#childType').empty().append(html);
layui.form.render();
}
/* 违章人员赋值 */
function setViolatorsPerson(id, name, score8) {
$('#vioUsers').val(name);
$('#idNumber').val(id);
$('#score').val(score8);
}
/*违章依据赋值*/
function setVioInfo(name) {
let value = $('#voiYj').val();
if (value) {
value = value + ";"
}
$('#voiYj').val(value + "" + name)
}
/*作业票赋值*/
function setTicketInfo(classIdParam, ticketNoParam, proNameParam, orgParam, riskLevelParam, teamNameParam,bidCodeParam,signCodeParam) {
classId = classIdParam
riskLevel = riskLevelParam
teamName = teamNameParam
bidCode = bidCodeParam
signCode = signCodeParam
$('#ticketNo').val(ticketNoParam)
$('#bidName').val(proNameParam)
$('#org').val(orgParam)
layui.form.render()
}
// 违章类别切换下拉选或输入框
function changeVoiType(that) {
if (checkVoiType === '1') {
checkVoiType = '2'
$(that).find('p').eq(0).html('切换手动录入')
$(that).attr('title', '切换手动录入')
$('#voiYj').next().removeAttr('style')
$('#hand').css('display', 'none');
$('#auto').removeAttr('style');
} else {
checkVoiType = '1'
$(that).find('p').eq(0).html('切换自动录入')
$(that).attr('title', '切换自动录入')
$('#voiYj').next().css('display', 'none');
$('#hand').removeAttr('style');
$('#auto').css('display', 'none');
}
}
// 关闭页面
function closePage(type) {
let index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index); //再执行关闭
if (type === 1) {
window.parent.reloadData()
}
}