398 lines
12 KiB
HTML
398 lines
12 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
<meta
|
|
name="viewport"
|
|
content="width=device-width, initial-scale=1.0,maximum-scale=1.0,user-scalable=no"
|
|
/>
|
|
<title>情况上报</title>
|
|
<style>
|
|
* {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
.form {
|
|
padding: 34px 22px 0 19px;
|
|
}
|
|
.form-item {
|
|
margin-bottom: 20px;
|
|
display: flex;
|
|
}
|
|
.label {
|
|
width: 74px;
|
|
margin-right: 10px;
|
|
}
|
|
.preUploadDiv {
|
|
width: 80px;
|
|
height: 80px;
|
|
margin-right: 10px;
|
|
margin-bottom: 10px;
|
|
position: relative;
|
|
}
|
|
.preUploadImg {
|
|
width: 80px;
|
|
height: 80px;
|
|
}
|
|
.preUploadDiv:nth-child(3n) {
|
|
margin-right: 0;
|
|
}
|
|
.uploadBox {
|
|
background: url("./img/upload.png");
|
|
background-size: cover;
|
|
width: 80px;
|
|
height: 80px;
|
|
}
|
|
.upload {
|
|
opacity: 0;
|
|
width: 80px;
|
|
height: 80px;
|
|
}
|
|
.fileList {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
}
|
|
|
|
.icon_delete {
|
|
width: 24px;
|
|
height: 24px;
|
|
display: inline-block;
|
|
background: url("./img/icon_delete.png");
|
|
background-size: cover;
|
|
position: absolute;
|
|
right: -8px;
|
|
top: -8px;
|
|
}
|
|
input {
|
|
width: 100%;
|
|
height: 40px;
|
|
background: #f5f5f6;
|
|
flex: 1;
|
|
/* padding: 8px 16px; */
|
|
font-family: Source Han Sans CN, Source Han Sans CN;
|
|
font-weight: 400;
|
|
font-size: 14px;
|
|
/* color: #999999; */
|
|
line-height: 25px;
|
|
text-align: left;
|
|
font-style: normal;
|
|
text-transform: none;
|
|
background: #f5f5f6;
|
|
padding-left: 16px;
|
|
border-radius: 8px 8px 8px 8px;
|
|
border: 0;
|
|
outline: none;
|
|
}
|
|
select {
|
|
/* width: 256px; */
|
|
width: 100%;
|
|
height: 40px;
|
|
background: #f5f5f6;
|
|
flex: 1;
|
|
padding: 8px 16px;
|
|
font-family: Source Han Sans CN, Source Han Sans CN;
|
|
font-weight: 400;
|
|
font-size: 14px;
|
|
/* color: #999999; */
|
|
line-height: 25px;
|
|
text-align: left;
|
|
font-style: normal;
|
|
text-transform: none;
|
|
background: #f5f5f6;
|
|
border-radius: 8px 8px 8px 8px;
|
|
border: 0;
|
|
outline: none;
|
|
}
|
|
textarea {
|
|
width: 100%;
|
|
height: 80px;
|
|
background: #f5f5f6;
|
|
flex: 1;
|
|
padding: 8px 16px;
|
|
font-family: Source Han Sans CN, Source Han Sans CN;
|
|
font-weight: 400;
|
|
font-size: 14px;
|
|
/* color: #999999; */
|
|
line-height: 25px;
|
|
text-align: left;
|
|
font-style: normal;
|
|
text-transform: none;
|
|
border-radius: 8px 8px 8px 8px;
|
|
border: 0;
|
|
outline: none;
|
|
}
|
|
.fileListBox {
|
|
flex: 1;
|
|
}
|
|
.btn_center {
|
|
display: flex;
|
|
justify-content: center;
|
|
position: fixed;
|
|
left: 10px;
|
|
right: 10px;
|
|
bottom: 10px;
|
|
}
|
|
.btn_submit {
|
|
width: 330px;
|
|
height: 40px;
|
|
background: #4876ff;
|
|
border-radius: 8px 8px 8px 8px;
|
|
|
|
font-family: Source Han Sans CN, Source Han Sans CN;
|
|
font-weight: 400;
|
|
font-size: 18px;
|
|
color: #ffffff;
|
|
line-height: 25px;
|
|
letter-spacing: 3px;
|
|
text-align: center;
|
|
font-style: normal;
|
|
text-transform: none;
|
|
border: 0;
|
|
margin: 0 auto;
|
|
}
|
|
</style>
|
|
<script src="./js/jquery.min.js"></script>
|
|
<script>
|
|
var BASE = "https://ykdz.yundazhou.com:8000/api";
|
|
|
|
var fileList = [];
|
|
$(function () {
|
|
type2 = getUrlParam("type2");
|
|
// $("#type2").val(type2);
|
|
// switch (type2) {
|
|
// case "1":
|
|
// $("#item_type").hide();
|
|
// break;
|
|
// case "2":
|
|
// // $("#item_type").hide();
|
|
// // $("#type").attr("type", "text");
|
|
// $("#item_type").find("select").remove();
|
|
// $("#item_type").append(`<input id="type" type="text">`);
|
|
// break;
|
|
// case "3":
|
|
// $("#item_type").hide();
|
|
// break;
|
|
// case "4":
|
|
// $("#item_type").show();
|
|
// break;
|
|
// default:
|
|
// break;
|
|
// }
|
|
// getNewsInfo(newsId);
|
|
});
|
|
function getUrlParam(name) {
|
|
var searchParams = new URLSearchParams(window.location.search);
|
|
return searchParams.get(name);
|
|
}
|
|
function uploadChange(event) {
|
|
var file = event.target.files[0];
|
|
|
|
if (file) {
|
|
var reader = new FileReader();
|
|
reader.onload = function (e) {
|
|
var img = document.createElement("img");
|
|
img.src = e.target.result;
|
|
// document.body.appendChild(img);
|
|
// 这里可以添加上传图片到服务器的代码
|
|
// alert(e.target.result)
|
|
|
|
let tempFile = DataURIToBlob(e.target.result);
|
|
|
|
let fd = new FormData();
|
|
fd.append("file", tempFile);
|
|
upload(fd);
|
|
};
|
|
reader.readAsDataURL(file);
|
|
// alert(JSON.stringify(reader.readAsDataURL(file)))
|
|
}
|
|
|
|
// var input = document.getElementById('upload');
|
|
// if (input.files && input.files) {
|
|
// var reader = new FileReader();
|
|
|
|
// reader.onload = function (e) {
|
|
// var previewImage = document.getElementById("previewImage");
|
|
// previewImage.src = e.target.result;
|
|
// previewImage.style.display = "block";
|
|
// };
|
|
// // alert(JSON.stringify(input.files))
|
|
// reader.readAsDataURL(input.files);
|
|
// }
|
|
// var formData = new FormData();
|
|
|
|
// let files = $("#upload")[0].files;
|
|
|
|
// alert(JSON.stringify(val));
|
|
// var formData = new FormData();
|
|
// for (let i = 0; i < files.length; i++) {
|
|
// formData.append("file", files[i]);
|
|
// upload(formData);
|
|
// }
|
|
}
|
|
|
|
function DataURIToBlob(dataURI) {
|
|
const splitDataURI = dataURI.split(",");
|
|
const byteString =
|
|
splitDataURI[0].indexOf("base64") >= 0
|
|
? atob(splitDataURI[1])
|
|
: decodeURI(splitDataURI[1]);
|
|
const mimeString = splitDataURI[0].split(":")[1].split(";")[0];
|
|
|
|
const ia = new Uint8Array(byteString.length);
|
|
for (let i = 0; i < byteString.length; i++)
|
|
ia[i] = byteString.charCodeAt(i);
|
|
|
|
return new Blob([ia], { type: mimeString });
|
|
}
|
|
|
|
function upload(formData) {
|
|
// alert(formData);
|
|
$.ajax({
|
|
url: BASE + "/commonLogin/upload",
|
|
type: "POST",
|
|
data: formData,
|
|
processData: false,
|
|
contentType: false,
|
|
|
|
headers: { Authorization: sessionStorage.token },
|
|
success: function (data) {
|
|
// alert(JSON.stringify(data));
|
|
if (data.c === 200) {
|
|
// console.log(data);
|
|
// alert('200',JSON.stringify(data));
|
|
fileList.push(data.d);
|
|
renderFileList();
|
|
}
|
|
},
|
|
});
|
|
}
|
|
function renderFileList() {
|
|
$(".preUploadDiv").remove();
|
|
fileList.map((item, index) => {
|
|
$(".fileList").prepend(
|
|
`<div class="preUploadDiv"><img class="preUploadImg" src="${item}"><i class="icon_delete" onclick="removeUpload(${index})"></i></div>`
|
|
);
|
|
});
|
|
}
|
|
function removeUpload(index) {
|
|
fileList.splice(index, 1);
|
|
renderFileList();
|
|
// $('.fileList')[index].remove()
|
|
// $(".preUploadDiv")[index].remove();
|
|
}
|
|
function submit() {
|
|
let params = {
|
|
// address: "",
|
|
content: $("#content").val(),
|
|
imageUrls: [...fileList].toString(),
|
|
// lat: "",
|
|
// lng: "",
|
|
staffName: $("#staffName").val(),
|
|
staffPhone: $("#staffPhone").val(),
|
|
type: $("#type").val(),
|
|
dept: $("#dept").val().toString(),
|
|
type2: $("#type2").val(),
|
|
};
|
|
$.ajax({
|
|
url: BASE + "/eventRecord/upload",
|
|
type: "POST",
|
|
// data: JSON.stringify(param),
|
|
data: JSON.stringify(params),
|
|
// async: true,
|
|
dataType: "json",
|
|
contentType: "application/json; charset=UTF-8",
|
|
headers: { Authorization: sessionStorage.token },
|
|
success: function (data) {
|
|
if (data.c === 200) {
|
|
console.log(data);
|
|
window.history.back();
|
|
}
|
|
},
|
|
});
|
|
}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<input
|
|
id="upload"
|
|
type="file"
|
|
hidden
|
|
onchange="uploadChange(event)"
|
|
capture="camera"
|
|
accept="image/*"
|
|
/>
|
|
<input type="text" id="type2" hidden value="4" />
|
|
|
|
<div class="form">
|
|
<div class="form-item">
|
|
<div class="label">联系人</div>
|
|
<input type="text" id="staffName" />
|
|
</div>
|
|
<div class="form-item">
|
|
<div class="label">联系电话</div>
|
|
<input type="text" id="staffPhone" />
|
|
</div>
|
|
<div class="form-item" id="item_type">
|
|
<div class="label">巡查类型</div>
|
|
<select id="type">
|
|
<option value="" style="display: none; font-size: 14px">
|
|
请选择
|
|
</option>
|
|
<option label="发现国动设施附近施工" value="发现国动设施附近施工"></option>
|
|
<option label="发现国动设施处倾倒建渣或垃圾" value="发现国动设施处倾倒建渣或垃圾"></option>
|
|
<option label="发现在国动设施正被破坏" value="发现在国动设施正被破坏"></option>
|
|
<option label="发现在国动设施已被破坏" value="发现在国动设施已被破坏"></option>
|
|
</select>
|
|
</div>
|
|
<!-- <div class="form-item" id="item_type_input">
|
|
<div class="label">巡查类型</div>
|
|
<input type="text" id="type">
|
|
</div> -->
|
|
<div class="form-item">
|
|
<div class="label">部门</div>
|
|
<select id="dept" multiple=”multiple”>
|
|
<option value="" style="display: none; font-size: 14px">
|
|
请选择
|
|
</option>
|
|
<option label="社区" value="社区"></option>
|
|
<option label="国动部门" value="国动部门"></option>
|
|
<option label="国动设施管理单位" value="国动设施管理单位"></option>
|
|
</select>
|
|
</div>
|
|
<div class="form-item">
|
|
<div class="label">巡查内容</div>
|
|
<textarea
|
|
name=""
|
|
id="content"
|
|
cols="30"
|
|
rows="10"
|
|
placeholder="请输入"
|
|
></textarea>
|
|
</div>
|
|
<!-- <div class="form-item">
|
|
<label for="">现场照片</label>
|
|
<input id="upload" type="file" multiple onchange="uploadChange()" />
|
|
<div class="fileList"></div>
|
|
</div> -->
|
|
<div class="form-item">
|
|
<div class="label">现场照片</div>
|
|
<div class="fileListBox">
|
|
<div class="fileList">
|
|
<img
|
|
id="previewImage"
|
|
src="#"
|
|
alt="Image preview"
|
|
style="display: none; width: 100%; max-width: 300px"
|
|
/>
|
|
<div class="uploadBox" onclick="$('#upload').click()"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="btn_center">
|
|
<button class="btn_submit" type="button" onclick="submit()">上报</button>
|
|
</div>
|
|
</body>
|
|
</html>
|