Commit 096faad1 authored by xinzhedeai's avatar xinzhedeai

应急演练上传

parent ebf76af9
...@@ -48,7 +48,7 @@ var http2 = { ...@@ -48,7 +48,7 @@ var http2 = {
if(!value){ if(!value){
vant.Dialog.alert({ vant.Dialog.alert({
title: '信息提示', title: '信息提示',
message: '网络异常, 请重新刷新页面', message: '网络异常, 请重',
// message: '请求异常' // message: '请求异常'
}) })
fn && fn(null) fn && fn(null)
......
...@@ -6,10 +6,6 @@ ...@@ -6,10 +6,6 @@
<meta name="viewport" <meta name="viewport"
content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0, viewprot-fit:cover"> content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0, viewprot-fit:cover">
<title>危险作业备案-详情</title> <title>危险作业备案-详情</title>
<!-- <script src="https://cdn.bootcdn.net/ajax/libs/pdf.js/2.0.193/pdf.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/pdf.js/2.0.193/pdf.worker.min.js"></script> -->
<!-- <script src="../js/pdfjs-4.2.67-dist/build/pdf.mjs"></script>
<script src="../js/pdfjs-4.2.67-dist/build/pdf.worker.mjs"></script> -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.11.338/pdf.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.11.338/pdf.min.js"></script>
<script type="text/javascript" src="../sdk/includeHead.js"></script> <script type="text/javascript" src="../sdk/includeHead.js"></script>
<style> <style>
...@@ -46,15 +42,15 @@ ...@@ -46,15 +42,15 @@
<div class="content" v-cloak> <div class="content" v-cloak>
<input type="submit" id="submitBtn" style="display:none;"> <input type="submit" id="submitBtn" style="display:none;">
<van-cell-group> <van-cell-group>
<van-field v-model="form.name" :disabled="disabled" label="危险作业" placeholder="" /> <van-field v-model="form.name" :disabled="disabled" label="危险作业*" placeholder="" />
</van-cell-group> </van-cell-group>
<van-cell-group :class="{'disable-van-cell': disabled}"> <van-cell-group :class="{'disable-van-cell': disabled}">
<van-cell is-link @click="showPopup('showPopup4hdInspectDate1')" >作业起始时间<span class="formValue">{{form.startTime}}</span></van-cell> <van-cell is-link @click="showPopup('showPopup4hdInspectDate1')" >作业起始时间*<span class="formValue">{{form.startTime}}</span></van-cell>
<van-popup v-model="showPopup4hdInspectDate1" position="bottom" :style="{ height: '30%' }"> <van-popup v-model="showPopup4hdInspectDate1" position="bottom" :style="{ height: '30%' }">
<van-datetime-picker v-model="hdInspectDateModel1" type="date" title="选择年月日" @confirm="confirm4hdInspectDate1" @cancel="showPopup4hdInspectDate1=false" /> <van-datetime-picker v-model="hdInspectDateModel1" type="date" title="选择年月日" @confirm="confirm4hdInspectDate1" @cancel="showPopup4hdInspectDate1=false" />
</van-cell-group> </van-cell-group>
<van-cell-group :class="{'disable-van-cell': disabled}"> <van-cell-group :class="{'disable-van-cell': disabled}">
<van-cell is-link @click="showPopup('showPopup4hdInspectDate2')" >作业结束时间<span class="formValue">{{form.endTime}}</span></van-cell> <van-cell is-link @click="showPopup('showPopup4hdInspectDate2')" >作业结束时间*<span class="formValue">{{form.endTime}}</span></van-cell>
<van-popup v-model="showPopup4hdInspectDate2" position="bottom" :style="{ height: '30%' }"> <van-popup v-model="showPopup4hdInspectDate2" position="bottom" :style="{ height: '30%' }">
<van-datetime-picker v-model="hdInspectDateModel2" type="date" title="选择年月日" @confirm="confirm4hdInspectDate2" @cancel="showPopup4hdInspectDate2=false" /> <van-datetime-picker v-model="hdInspectDateModel2" type="date" title="选择年月日" @confirm="confirm4hdInspectDate2" @cancel="showPopup4hdInspectDate2=false" />
</van-cell-group> </van-cell-group>
...@@ -94,18 +90,19 @@ ...@@ -94,18 +90,19 @@
<span v-show="!disabled" style="font-weight: bold; cursor: pointer;" @click="filePathList=[];fileList=[]"> 删除</span> <span v-show="!disabled" style="font-weight: bold; cursor: pointer;" @click="filePathList=[];fileList=[]"> 删除</span>
</van-cell> </van-cell>
</van-cell-group> </van-cell-group>
<!-- :before-read="beforeRead" :max-size="1*1024*1024"-->
<van-cell-group :class="{'disable-van-cell': disabled}" v-show="pageType !== 'detail' && !filePathList.length"> <van-cell-group :class="{'disable-van-cell': disabled}" v-show="pageType !== 'detail' && !filePathList.length">
<van-cell>文件:<span style="color: red;">(限制大小2.5M以内,格式png/jpg/jpeg/pdf)</span> <van-cell>文件:<span style="color: red;">(限制大小2.5M以内,格式png/jpg/jpeg/pdf)</span>
<div style="width: 2.5rem;"> <div style="width: 2.5rem;">
<van-uploader v-model="fileList" <van-uploader v-model="fileList"
accept=".jpg,.jpeg,.png,.pdf" accept=".jpg,.jpeg,.png,.pdf"
:preview-image="false" :preview-image="false"
:before-upload="beforeUpload"
:after-read="afterRead"
:before-read="beforeRead" :before-read="beforeRead"
:after-read="afterRead"
:preview-full-image="false"> :preview-full-image="false">
<!-- <van-button size="mini" icon="plus" type="primary">上传文件</van-button> --> <!--
:after-read="afterRead"
:before-read="beforeRead"
<van-button size="mini" icon="plus" type="primary">上传文件</van-button> -->
<div style="width: 1.6rem;height: 0.6rem;line-height: 0.6rem; background-color: #1989fa;color:#fff;text-align: center;border-radius: 2px;">上传文件</div> <div style="width: 1.6rem;height: 0.6rem;line-height: 0.6rem; background-color: #1989fa;color:#fff;text-align: center;border-radius: 2px;">上传文件</div>
</van-uploader> </van-uploader>
</div></van-cell> </div></van-cell>
......
...@@ -58,105 +58,103 @@ window.addEventListener("load", function() { ...@@ -58,105 +58,103 @@ window.addEventListener("load", function() {
this.disabled = false this.disabled = false
this.pageType = 'edit' this.pageType = 'edit'
this.detail() this.detail()
} else { // 新增 } else if (gemhoUtil.getParameter('type') === 'add') { // 新增
this.disabled = true this.disabled = true
this.pageType = 'add' this.pageType = 'add'
this.resetData() this.resetData()
} }
}, },
computed:{ computed: {
showImage(){ showImage() {
return this.filePathList[0] && (this.filePathList[0].indexOf('.png')>-1 || this.filePathList[0].indexOf('.jpg')>-1 || this.filePathList[0].indexOf('.jpeg')>-1) return this.filePathList[0] && (this.filePathList[0].indexOf('.png') > -1 ||
this.filePathList[0].indexOf('.jpg') > -1 ||
this.filePathList[0].indexOf('.jpeg') >-1)
}, },
showPdf(){ showPdf() {
return this.filePathList[0] && (this.filePathList[0].indexOf('.pdf')>-1) return this.filePathList[0] && (this.filePathList[0].indexOf('.pdf') > -1)
}, },
showWrapper(){ showWrapper() {
return this.filePathList[0] return this.filePathList[0]
} }
}, },
methods: { methods: {
previewFile(){ previewFile() {
// var src = 'dangerjob/e40eda16-7a86-4a2a-976b-892e17eeed49.pdf' // var src = 'dangerjob/e40eda16-7a86-4a2a-976b-892e17eeed49.pdf'
// location.href = './pdfViewer.html?pdfSrc='+ src // location.href = './pdfViewer.html?pdfSrc='+ src
console.log(this.previewUrl + '/' + this.filePathList[0]) console.log(this.previewUrl + '/' + this.filePathList[0])
location.href = this.previewUrl + '/' + this.filePathList[0] location.href = this.previewUrl + '/' + this.filePathList[0]
}, },
beforeUpload(file) {
console.log('beforeUpload',file)
// 在文件上传之前的处理逻辑,例如校验文件大小、文件类型等
return true; // 返回 true 继续上传,返回 false 中止上传
},
beforeRead(file) { beforeRead(file) {
if (file.size > (2.5*1024*1024)) { if (file.size > (2.5 * 1024 * 1024)) {
vant.Dialog.alert({ vant.Dialog.alert({
title: '信息提示', title: '信息提示',
message: '文件大小不可超过2.5M' message: '文件大小不可超过2.5M'
})
return false;
}
return true;
},
afterRead(file) {
console.log('afterRead',file)
// 文件读取完成后的处理逻辑
const formData = new FormData();
formData.append('file', file.file); // 通过FormData构建要上传的文件数据
formData.append('modelName', 'dangerjob');
// 发送HTTP POST请求
fetch(this.previewUrl + '/api/common/upload', {
method: 'POST',
body: formData
})
.then(response => {
if (response.ok) {
return response.json();
}
throw new Error('Network response was not ok.');
})
.then(data => {
console.log(data); // 处理后端返回的数据
// 可根据后端返回的数据做进一步处理,如显示上传成功信息等
this.filePathList = data.body ? [data.body] : []
}) })
.catch(error => { return false;
console.error('There has been a problem with your fetch operation:', error); }
}); return true;
}, },
// afterRead(file) { // 调用爱山东中台系统,将数据流传递过去 // console.log('afterRead', file)
// // gemhoUtil.setCookie('uploading', 'Y') // // 文件读取完成后的处理逻辑
// vant.Toast.loading({ // const formData = new FormData();
// message: '正在处理...', // formData.append('file', file.file); // 通过FormData构建要上传的文件数据
// forbidClick: true, // formData.append('modelName', 'dangerjob');
// loadingType: 'spinner',
// }); // // 发送HTTP POST请求
// http2.post({ // fetch(this.previewUrl + '/api/common/upload', {
// serviceId: API_KEY_MAP["upload"]['id'], // method: 'POST',
// interfacePublicKey: API_KEY_MAP["upload"]["publicKey"], // body: formData
// interfacePrivateKey: API_KEY_MAP["upload"]["privateKey"], // })
// reqParams: { // .then(response => {
// modelName: 'dangerjob', // if (response.ok) {
// }, // return response.json();
// fileList: [{
// fileName: 'file',
// file: file.file
// }]
// }, (res) => {
// // gemhoUtil.setCookie('uploading', 'N')
// if(res){
// console.log('接口回调数据', JSON.parse(res))
// var result = JSON.parse(res)
// if(result.body && result.body.indexOf('dangerjob') > -1){
// this.filePathList = [result.body]
// }else{
// this.filePathList = []
// }
// vant.Toast.clear()
// } // }
// throw new Error('Network response was not ok.');
// }) // })
// .then(data => {
// console.log(data); // 处理后端返回的数据
// // 可根据后端返回的数据做进一步处理,如显示上传成功信息等
// this.filePathList = data.body ? [data.body] : []
// })
// .catch(error => {
// console.error('There has been a problem with your fetch operation:', error);
// });
// }, // },
// afterRead
// beforeRead
afterRead(file) { // 调用爱山东中台系统,将数据流传递过去
// gemhoUtil.setCookie('uploading', 'Y')
vant.Toast.loading({
message: '正在处理...',
forbidClick: true,
loadingType: 'spinner',
});
http2.post({
serviceId: API_KEY_MAP["upload"]['id'],
interfacePublicKey: API_KEY_MAP["upload"]["publicKey"],
interfacePrivateKey: API_KEY_MAP["upload"]["privateKey"],
reqParams: {
modelName: 'dangerjob',
},
fileList: [{
fileName: 'file',
file: file.file
}]
}, (res) => {
// gemhoUtil.setCookie('uploading', 'N')
if (res) {
console.log('接口回调数据', JSON.parse(res))
var result = JSON.parse(res)
if (result.body && result.body.indexOf('dangerjob') > -1) {
this.filePathList = [result.body]
} else {
this.filePathList = []
}
vant.Toast.clear()
}
})
},
resetData() { resetData() {
// 使用 Object.assign 来重写 this.$data,以达到重置 data 的目的 // 使用 Object.assign 来重写 this.$data,以达到重置 data 的目的
Object.assign(this.$data, this.$options.data.call(this)); Object.assign(this.$data, this.$options.data.call(this));
...@@ -180,18 +178,18 @@ window.addEventListener("load", function() { ...@@ -180,18 +178,18 @@ window.addEventListener("load", function() {
id: gemhoUtil.getParameter('dwId'), id: gemhoUtil.getParameter('dwId'),
} }
}, (res) => { }, (res) => {
if(res){ if (res) {
console.log('接口回调数据', JSON.parse(res)) console.log('接口回调数据', JSON.parse(res))
vant.Toast.clear() vant.Toast.clear()
var result = JSON.parse(res) var result = JSON.parse(res)
// this.noticeContent = result.noticeContent // this.noticeContent = result.noticeContent
this.form = result.content[0] this.form = result.content[0]
this.filePathList = result.content[0].filePathList || [] this.filePathList = result.content[0].filePathList || []
if(this.form.workTime && this.form.workTime.length){ if (this.form.workTime && this.form.workTime.length) {
this.form.startTime = this.form.workTime[0] this.form.startTime = this.form.workTime[0]
this.form.endTime = this.form.workTime[1] this.form.endTime = this.form.workTime[1]
} }
} }
}) })
}, },
...@@ -208,7 +206,7 @@ window.addEventListener("load", function() { ...@@ -208,7 +206,7 @@ window.addEventListener("load", function() {
}) })
return; return;
} }
if(+new Date(this.form.startTime) > +new Date(this.form.endTime)){ if (+new Date(this.form.startTime) > +new Date(this.form.endTime)) {
vant.Dialog.alert({ vant.Dialog.alert({
message: '起始时间不能大于结束时间', message: '起始时间不能大于结束时间',
}) })
...@@ -228,8 +226,8 @@ window.addEventListener("load", function() { ...@@ -228,8 +226,8 @@ window.addEventListener("load", function() {
interfacePrivateKey: API_KEY_MAP["dw-list-detail"]["privateKey"], interfacePrivateKey: API_KEY_MAP["dw-list-detail"]["privateKey"],
reqParams: this.form reqParams: this.form
}, (res) => { }, (res) => {
if(res){ if (res) {
console.log('添加结果', res) console.log('添加结果', res)
vant.Toast({ vant.Toast({
message: '操作成功', message: '操作成功',
...@@ -248,7 +246,7 @@ window.addEventListener("load", function() { ...@@ -248,7 +246,7 @@ window.addEventListener("load", function() {
console.log('value', value) console.log('value', value)
this.form.endTime = gemhoUtil.formatDate(new Date(value)) this.form.endTime = gemhoUtil.formatDate(new Date(value))
this.showPopup4hdInspectDate2 = false this.showPopup4hdInspectDate2 = false
}, },
confirm4hdRectificationDate(value) { confirm4hdRectificationDate(value) {
console.log('value', value) console.log('value', value)
......
...@@ -27,11 +27,21 @@ ...@@ -27,11 +27,21 @@
.van-cell:after { .van-cell:after {
border-bottom: none; border-bottom: none;
} }
.formSubmitBtnWrapper{
display: flex;
justify-content: center;
margin-top: 0.2rem;
margin-bottom:0.2rem;
}
.formSubmitBtnWrapper .van-button{
width: 4rem;
}
</style> </style>
</head> </head>
<body> <body>
<div id="app"> <div id="app">
<div class="content" v-cloak :class="{'disable-van-cell': !disabled}"> <div class="content" v-cloak :class="{'disable-van-cell': disabled}" v-show="form.planName">
<span style="font-size: 16px; color #000; font-weight: bold;margin-left:0.25rem;" >演练任务</span> <span style="font-size: 16px; color #000; font-weight: bold;margin-left:0.25rem;" >演练任务</span>
<van-cell-group> <van-cell-group>
<van-field v-model="form.planName" :disabled="true" label="计划名称" placeholder="" /> <van-field v-model="form.planName" :disabled="true" label="计划名称" placeholder="" />
...@@ -46,14 +56,7 @@ ...@@ -46,14 +56,7 @@
<van-field v-model="form.publishDesc" :disabled="true" label="演练描述" placeholder="" /> <van-field v-model="form.publishDesc" :disabled="true" label="演练描述" placeholder="" />
</van-cell-group> </van-cell-group>
<span style="font-size: 16px; color #000; font-weight: bold; margin-left:0.25rem" >演练情况</span> <span style="font-size: 16px; color #000; font-weight: bold; margin-left:0.25rem" >演练情况</span>
<van-button v-if="!disabled" type="info" size="small" @click="submit" style="margin-left: 4.2rem;width: 1.2rem; height:0.6rem;}">提交</van-button>
<div> <div>
<van-cell-group>
<van-field v-model="form.issueDescription" :disabled="disabled" label="发现问题" placeholder="" />
</van-cell-group>
<van-cell-group>
<van-field v-model="form.processDescription" :disabled="disabled" label="过程描述" placeholder="" />
</van-cell-group>
<van-cell-group :class="{'disable-van-cell': true}" v-show="showWrapper"> <van-cell-group :class="{'disable-van-cell': true}" v-show="showWrapper">
<van-cell>文件预览: <van-cell>文件预览:
<div style="width: 6.5rem;"> <div style="width: 6.5rem;">
...@@ -72,7 +75,6 @@ ...@@ -72,7 +75,6 @@
<van-uploader v-model="fileList" <van-uploader v-model="fileList"
accept=".jpg,.jpeg,.png" accept=".jpg,.jpeg,.png"
:preview-image="false" :preview-image="false"
:before-upload="beforeUpload"
:after-read="afterRead" :after-read="afterRead"
:before-read="beforeRead" :before-read="beforeRead"
:preview-full-image="false"> :preview-full-image="false">
...@@ -83,14 +85,24 @@ ...@@ -83,14 +85,24 @@
</van-uploader> </van-uploader>
</div></van-cell> </div></van-cell>
</van-cell-group> </van-cell-group>
<van-cell-group>
<van-field v-model="form.issueDescription" :disabled="disabled" label="发现问题*" placeholder="" />
</van-cell-group>
<van-cell-group>
<van-field v-model="form.processDescription" :disabled="disabled" label="过程描述*" placeholder="" />
</van-cell-group>
<van-cell-group :class="{'disable-van-cell': disabled}"> <van-cell-group :class="{'disable-van-cell': disabled}">
<van-cell is-link @click="showPopup('showPopup4completionDate')">完成时间<span class="formValue">{{form.completionDate}}</span></van-cell> <van-cell @click="showPopup('showPopup4completionDate')">完成时间*<span class="formValue">{{form.completionDate}}</span></van-cell>
<van-popup v-model="showPopup4completionDate" position="bottom" :style="{ height: '30%' }"> <van-popup v-model="showPopup4completionDate" position="bottom" :style="{ height: '30%' }">
<van-datetime-picker v-model="completionDate" type="date" title="选择年月日" @confirm="confirm4completionDate" @cancel="showPopup4completionDate=false" /> <van-datetime-picker v-model="completionDate" type="date" title="选择年月日" @confirm="confirm4completionDate" @cancel="showPopup4completionDate=false" />
</van-popup> </van-popup>
</van-cell-group> </van-cell-group>
</div> </div>
<div class="formSubmitBtnWrapper" v-if="!disabled">
<van-button type="info" size="small" @click="submit">提交</van-button>
</div>
</div> </div>
</div> </div>
</body> </body>
......
...@@ -89,17 +89,18 @@ window.addEventListener("load", function() { ...@@ -89,17 +89,18 @@ window.addEventListener("load", function() {
vant.Toast({ vant.Toast({
message: '操作成功', message: '操作成功',
}) })
if (!this.form.id) { // 添加时则 // if (!this.form.id) { // 添加时则
location.reload() // location.reload()
} // }
history.back()
} }
}) })
}, },
beforeUpload(file) { // beforeUpload(file) {
console.log('beforeUpload',file) // console.log('beforeUpload',file)
// 在文件上传之前的处理逻辑,例如校验文件大小、文件类型等 // // 在文件上传之前的处理逻辑,例如校验文件大小、文件类型等
return true; // 返回 true 继续上传,返回 false 中止上传 // return true; // 返回 true 继续上传,返回 false 中止上传
}, // },
beforeRead(file) { beforeRead(file) {
if (file.size > (2.5*1024*1024)) { if (file.size > (2.5*1024*1024)) {
vant.Dialog.alert({ vant.Dialog.alert({
...@@ -110,67 +111,67 @@ window.addEventListener("load", function() { ...@@ -110,67 +111,67 @@ window.addEventListener("load", function() {
} }
return true; return true;
}, },
// afterRead(file) {
// // 获取文件流,调用网关中台接口,获取文件全路径url
// console.log('afterRead',file)
// vant.Toast.loading({
// message: '正在处理...',
// forbidClick: true,
// loadingType: 'spinner',
// });
// http2.post({
// serviceId: API_KEY_MAP["upload"]['id'],
// interfacePublicKey: API_KEY_MAP["upload"]["publicKey"],
// interfacePrivateKey: API_KEY_MAP["upload"]["privateKey"],
// reqParams: {
// modelName: 'emergencydrill',
// },
// fileList: [{
// fileName: 'file',
// file: file.file
// }]
// }, (res) => {
// // gemhoUtil.setCookie('uploading', 'N')
// if(res){
// console.log('接口回调数据', JSON.parse(res))
// var result = JSON.parse(res)
// if(result.body && result.body.indexOf('emergencydrill') > -1){
// this.filePathList = [result.body]
// }else{
// this.filePathList = []
// }
// vant.Toast.clear()
// }
// })
// },
afterRead(file) { afterRead(file) {
// 获取文件流,调用网关中台接口,获取文件全路径url
console.log('afterRead',file) console.log('afterRead',file)
// 文件读取完成后的处理逻辑
const formData = new FormData();
formData.append('file', file.file); // 通过FormData构建要上传的文件数据
formData.append('modelName', 'emergencydrill');
// 发送HTTP POST请求 vant.Toast.loading({
fetch(this.previewUrl + '/api/common/upload', { message: '正在处理...',
method: 'POST', forbidClick: true,
body: formData loadingType: 'spinner',
}) });
.then(response => { http2.post({
if (response.ok) { serviceId: API_KEY_MAP["upload"]['id'],
return response.json(); interfacePublicKey: API_KEY_MAP["upload"]["publicKey"],
interfacePrivateKey: API_KEY_MAP["upload"]["privateKey"],
reqParams: {
modelName: 'emergencydrill',
},
fileList: [{
fileName: 'file',
file: file.file
}]
}, (res) => {
// gemhoUtil.setCookie('uploading', 'N')
if(res){
console.log('接口回调数据', JSON.parse(res))
var result = JSON.parse(res)
if(result.body && result.body.indexOf('emergencydrill') > -1){
this.filePathList = [result.body]
}else{
this.filePathList = []
} }
throw new Error('Network response was not ok.'); vant.Toast.clear()
}) }
.then(data => { })
console.log(data); // 处理后端返回的数据
// 可根据后端返回的数据做进一步处理,如显示上传成功信息等
this.filePathList = data.body ? [data.body] : []
})
.catch(error => {
console.error('There has been a problem with your fetch operation:', error);
});
}, },
// afterRead(file) {
// console.log('afterRead',file)
// // 文件读取完成后的处理逻辑
// const formData = new FormData();
// formData.append('file', file.file); // 通过FormData构建要上传的文件数据
// formData.append('modelName', 'emergencydrill');
// // 发送HTTP POST请求
// fetch(this.previewUrl + '/api/common/upload', {
// method: 'POST',
// body: formData
// })
// .then(response => {
// if (response.ok) {
// return response.json();
// }
// throw new Error('Network response was not ok.');
// })
// .then(data => {
// console.log(data); // 处理后端返回的数据
// // 可根据后端返回的数据做进一步处理,如显示上传成功信息等
// this.filePathList = data.body ? [data.body] : []
// })
// .catch(error => {
// console.error('There has been a problem with your fetch operation:', error);
// });
// },
showPopup(popupType) { showPopup(popupType) {
if (!this.disabled) { if (!this.disabled) {
this[popupType] = true this[popupType] = true
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment