Commit c3d1b7c5 by 张超军

Merge branch 'dev_zwpt' of http://47.92.108.28/changchao/founder_vue into dev_zwpt

parents 7b3f6983 2114de66
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2021-11-13 16:32:50 * @Date: 2021-11-13 16:32:50
* @LastEditTime: 2021-11-17 17:34:20 * @LastEditTime: 2021-11-18 09:52:44
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \founder_vue\src\components\swiper.vue * @FilePath: \founder_vue\src\components\swiper.vue
...@@ -41,14 +41,6 @@ ...@@ -41,14 +41,6 @@
</div> </div>
</el-carousel-item> </el-carousel-item>
</el-carousel> </el-carousel>
<div class="carBtn">
<span
v-for="(item, index) in carData"
@click="qiehuan(index)"
:class="{ active: carIndex == index }"
:key="item.barcode"
></span>
</div>
</div> </div>
<div class="left" @click="btnQiehuan('left')"> <div class="left" @click="btnQiehuan('left')">
<img src="@/assets/img/left.png" alt="" /> <img src="@/assets/img/left.png" alt="" />
......
...@@ -187,7 +187,7 @@ ...@@ -187,7 +187,7 @@
: scope.row.taskNumber : scope.row.taskNumber
}} }}
<div <div
v-show="scope.row.personExportRecordGrandchildren && scope.row.personExportRecordGrandchildren !== null" v-show="scope.row.personExportRecordGrandchildren && scope.row.personExportRecordGrandchildren !== null&&scope.row.personExportRecordGrandchildren.length > 0"
class="children-count" class="children-count"
> >
{{ scope.row.personExportRecordGrandchildren ? scope.row.personExportRecordGrandchildren.length : 0 }} {{ scope.row.personExportRecordGrandchildren ? scope.row.personExportRecordGrandchildren.length : 0 }}
...@@ -388,7 +388,178 @@ export default { ...@@ -388,7 +388,178 @@ export default {
currPage2: 1, // 当前在第几页 currPage2: 1, // 当前在第几页
// datahaha: [
// {
// "id": 5,
// "taskNumber": "20211117174241",
// "barcode": "R4301044400002021105001",
// "collectIdcard": 1,
// "picCount": 0,
// "rollCount": 10,
// "plainCount": 10,
// "plamCount": 0,
// "dataType": 1,
// "exportType": 1,
// "exportTime": "2021-11-17T09:42:41.680+0000",
// "status": null,
// "failReason": "",
// "featureStatus": null,
// "declassificationStatus": null,
// "exportName": "同一文件",
// "statusName": null,
// "declassificationName": "脱密",
// "featureName": "特征",
// "collectIdName": "是",
// "sequenceNumber": "5",
// "personExportRecordGrandchildren": [
// ]
// },
// {
// "id": 4,
// "taskNumber": "20211117172016",
// "barcode": "R4301035400002021100020",
// "collectIdcard": 1,
// "picCount": 0,
// "rollCount": 10,
// "plainCount": 10,
// "plamCount": 0,
// "dataType": 1,
// "exportType": 1,
// "exportTime": "2021-11-17T09:20:16.772+0000",
// "status": null,
// "failReason": "",
// "featureStatus": null,
// "declassificationStatus": null,
// "exportName": "同一文件",
// "statusName": null,
// "declassificationName": "脱密",
// "featureName": "特征",
// "collectIdName": "是",
// "sequenceNumber": "6",
// "personExportRecordGrandchildren": [
// {
// "id": 4,
// "taskNumber": "20211117172016",
// "barcode": "R4301035400002021100020",
// "collectIdcard": 1,
// "picCount": 0,
// "rollCount": 10,
// "plainCount": 10,
// "plamCount": 0,
// "dataType": 1,
// "exportType": 1,
// "exportTime": "2021-11-17T09:20:16.772+0000",
// "status": null,
// "failReason": "",
// "featureStatus": null,
// "declassificationStatus": null,
// "exportName": "同一文件",
// "statusName": null,
// "declassificationName": "脱密",
// "featureName": "特征",
// "collectIdName": "是",
// "sequenceNumber": "61"
// }
// ]
// },
// {
// "id": 3,
// "taskNumber": "20211116170544",
// "barcode": "R4301045200002021100110",
// "collectIdcard": 1,
// "picCount": 0,
// "rollCount": 10,
// "plainCount": 10,
// "plamCount": 0,
// "dataType": 1,
// "exportType": 1,
// "exportTime": "2021-11-16T09:05:44.503+0000",
// "status": null,
// "failReason": "",
// "featureStatus": null,
// "declassificationStatus": null,
// "exportName": "同一文件",
// "statusName": null,
// "declassificationName": "脱密",
// "featureName": "特征",
// "collectIdName": "是",
// "sequenceNumber": "7",
// "personExportRecordGrandchildren": [
// {
// "id": 3,
// "taskNumber": "20211116170544",
// "barcode": "R4301045200002021100110",
// "collectIdcard": 1,
// "picCount": 0,
// "rollCount": 10,
// "plainCount": 10,
// "plamCount": 0,
// "dataType": 1,
// "exportType": 1,
// "exportTime": "2021-11-16T09:05:44.503+0000",
// "status": null,
// "failReason": "",
// "featureStatus": null,
// "declassificationStatus": null,
// "exportName": "同一文件",
// "statusName": null,
// "declassificationName": "脱密",
// "featureName": "特征",
// "collectIdName": "是",
// "sequenceNumber": "71"
// }
// ]
// },
// {
// "id": 2,
// "taskNumber": "20211116165827",
// "barcode": "R4301045200002021100110",
// "collectIdcard": 1,
// "picCount": 0,
// "rollCount": 10,
// "plainCount": 10,
// "plamCount": 0,
// "dataType": 1,
// "exportType": 1,
// "exportTime": "2021-11-16T08:58:27.160+0000",
// "status": null,
// "failReason": "",
// "featureStatus": null,
// "declassificationStatus": null,
// "exportName": "同一文件",
// "statusName": null,
// "declassificationName": "脱密",
// "featureName": "特征",
// "collectIdName": "是",
// "sequenceNumber": "8",
// "personExportRecordGrandchildren": [
// {
// "id": 2,
// "taskNumber": "20211116165827",
// "barcode": "R4301045200002021100110",
// "collectIdcard": 1,
// "picCount": 0,
// "rollCount": 10,
// "plainCount": 10,
// "plamCount": 0,
// "dataType": 1,
// "exportType": 1,
// "exportTime": "2021-11-16T08:58:27.160+0000",
// "status": null,
// "failReason": "",
// "featureStatus": null,
// "declassificationStatus": null,
// "exportName": "同一文件",
// "statusName": null,
// "declassificationName": "脱密",
// "featureName": "特征",
// "collectIdName": "是",
// "sequenceNumber": "81"
// }
// ]
// }
// ],
isSelected: false, // 是否批量操作 isSelected: false, // 是否批量操作
...@@ -400,7 +571,7 @@ export default { ...@@ -400,7 +571,7 @@ export default {
isShowTip: false, //批量操作提示 isShowTip: false, //批量操作提示
}; };
}, },
created() { created () {
let w1 = 1920; let w1 = 1920;
let w2 = window.innerWidth; let w2 = window.innerWidth;
...@@ -885,7 +1056,8 @@ export default { ...@@ -885,7 +1056,8 @@ export default {
border-radius: 11px; border-radius: 11px;
position: absolute; position: absolute;
right: 10px; right: 10px;
top: 25%; top: 50%;
transform: translate(0, -50%);
} }
.el-tree /deep/ .el-tree-node__expand-icon.expanded { .el-tree /deep/ .el-tree-node__expand-icon.expanded {
-webkit-transform: rotate(0deg); -webkit-transform: rotate(0deg);
......
...@@ -185,7 +185,13 @@ export default { ...@@ -185,7 +185,13 @@ export default {
// 然后移除 // 然后移除
document.body.removeChild(eleLink) document.body.removeChild(eleLink)
this.dialogVisible = false; this.dialogVisible = false;
this.$router.push('/dclb') // this.$router.push('/dclb')
this.$router.push({
path: '/dclb',
query: {
id: 2
}
})
} }
} else { } else {
this.$message.error(response.data.message); this.$message.error(response.data.message);
......
...@@ -568,7 +568,13 @@ export default { ...@@ -568,7 +568,13 @@ export default {
// 然后移除 // 然后移除
document.body.removeChild(eleLink) document.body.removeChild(eleLink)
this.dialogVisible = false; this.dialogVisible = false;
this.$router.push('/dclb') // this.$router.push('/dclb')
this.$router.push({
path: '/dclb',
query: {
id: 1
}
})
} }
} else { } else {
this.$message.error(response.data.message); this.$message.error(response.data.message);
......
...@@ -997,7 +997,10 @@ export default { ...@@ -997,7 +997,10 @@ export default {
}); });
cityOptions = [] cityOptions = []
this.dialogVisible = false; this.dialogVisible = false;
this.$router.push('/cxyrd') this.$store.commit('layout/delcachePageName','cxyrd');
setTimeout(() => {
this.$router.push('/cxyrd')
}, 20);
} else { } else {
this.$message.error(response.data.message); this.$message.error(response.data.message);
} }
......
...@@ -378,6 +378,7 @@ ...@@ -378,6 +378,7 @@
v-for="item in checkItem.roleNames && v-for="item in checkItem.roleNames &&
checkItem.roleNames.split(',')" checkItem.roleNames.split(',')"
:key="item" :key="item"
:title="item"
> >
<span>{{ item }}</span> <span>{{ item }}</span>
<div class="triangle"> <div class="triangle">
...@@ -390,7 +391,12 @@ ...@@ -390,7 +391,12 @@
添加完成 添加完成
</div> </div>
<div class="add-role-group"> <div class="add-role-group">
<div class="default-btn" v-for="item in userArr" :key="item.id"> <div
class="default-btn"
v-for="item in userArr"
:key="item.id"
:title="item.name"
>
<span>{{ item.name }}</span> <span>{{ item.name }}</span>
<img src="@/assets/img/jiahao.png" alt="" /> <img src="@/assets/img/jiahao.png" alt="" />
</div> </div>
...@@ -823,7 +829,9 @@ export default { ...@@ -823,7 +829,9 @@ export default {
if (res.status == "201") { if (res.status == "201") {
this.isShowAddUserDialogBg = false; this.isShowAddUserDialogBg = false;
this.isShowAddUserDialog = false; this.isShowAddUserDialog = false;
this.$message.success("新增成功"); setTimeout(() => {
this.$message.success("添加成功");
}, 1400);
this.search(); this.search();
} }
}) })
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
/> />
新增角色 新增角色
</div> </div>
<div class="img-btn" @click="copy" title="复制"> <div class="img-btn" @click="copy2" title="复制">
<img <img
src="../../assets/img/role/copy.png" src="../../assets/img/role/copy.png"
style=" style="
...@@ -28,14 +28,15 @@ ...@@ -28,14 +28,15 @@
</div> </div>
</div> </div>
<div class="default-role"> <div class="default-role">
<div <div v-for="item in defaultRoleBtns" :key="item.id" class="roleItemBox">
class="default-role-item" <span class="fzSelect" v-if="fuzhi"></span>
v-for="item in defaultRoleBtns" <div
:key="item.id" class="default-role-item"
:class="{ active: item.id === diyRoleItemIndex }" :class="{ active: item.id === diyRoleItemIndex, fuzhi: fuzhi }"
@click="chooseDefaultRoleItem(item)" @click="chooseDefaultRoleItem(item)"
> >
{{ item.name }} {{ item.name }}
</div>
</div> </div>
</div> </div>
<div class="diy-roles"> <div class="diy-roles">
...@@ -43,7 +44,12 @@ ...@@ -43,7 +44,12 @@
<div <div
class="delicon" class="delicon"
v-if="!delimgBoo" v-if="!delimgBoo"
@click="delimgBoo = !delimgBoo" @click="
() => {
delimgBoo = !delimgBoo;
fuzhi = false;
}
"
> >
<img <img
style="width: 0.85rem; height: 0.85rem; cursor: pointer" style="width: 0.85rem; height: 0.85rem; cursor: pointer"
...@@ -72,17 +78,19 @@ ...@@ -72,17 +78,19 @@
<el-checkbox :label="item.id" class="checkChoose" v-if="delimgBoo" <el-checkbox :label="item.id" class="checkChoose" v-if="delimgBoo"
>1</el-checkbox >1</el-checkbox
> >
<span class="fzSelect2" v-if="fuzhi"></span>
<div <div
@click.stop="() => {}" @click.stop="() => {}"
:class="{ :class="{
'diy-role-item': true, 'diy-role-item': true,
active: item.id === diyRoleItemIndex, active: item.id === diyRoleItemIndex,
delWidth: delimgBoo, delWidth: delimgBoo || fuzhi,
}" }"
> >
<div <div
v-show="!item.edit" v-show="!item.edit"
class="diy-edit-title" class="diy-edit-title"
:title="item.name"
@click="chooseDiyRoleItem(item)" @click="chooseDiyRoleItem(item)"
> >
{{ item.name }} {{ item.name }}
...@@ -366,6 +374,8 @@ export default { ...@@ -366,6 +374,8 @@ export default {
oldCurrtId: null, oldCurrtId: null,
//上一次选中的对象类型 //上一次选中的对象类型
oldBtnType: null, oldBtnType: null,
//复制标识出现
fuzhi: false,
}; };
}, },
methods: { methods: {
...@@ -401,6 +411,10 @@ export default { ...@@ -401,6 +411,10 @@ export default {
console.info(res); console.info(res);
}); });
}, },
copy2() {
this.delimgBoo = false;
this.fuzhi = !this.fuzhi;
},
// 复制 // 复制
copy() { copy() {
if (this.customAddUser.length > 0) { if (this.customAddUser.length > 0) {
...@@ -432,9 +446,6 @@ export default { ...@@ -432,9 +446,6 @@ export default {
this.$refs.diyRoles.scrollTop = this.$refs.diyRoles.scrollHeight; this.$refs.diyRoles.scrollTop = this.$refs.diyRoles.scrollHeight;
}, 20); }, 20);
} }
//defaultRoleBtns
// diyRoleList
// this.diyRoleItemIndex
console.info(item); console.info(item);
}, },
// 保存 // 保存
...@@ -565,11 +576,7 @@ export default { ...@@ -565,11 +576,7 @@ export default {
}, },
//修改名 //修改名
editName(item) { editName(item) {
let edit; this.resetEdit();
let index = this.diyRoleList.findIndex((i) => i.id == item.id);
if (!item.edit && typeof item.edit != Boolean) edit = false;
edit = !item.edit;
this.$set(this.diyRoleList[index], "edit", edit);
}, },
// 编辑 // 编辑
edit() { edit() {
...@@ -718,6 +725,29 @@ export default { ...@@ -718,6 +725,29 @@ export default {
.delWidth { .delWidth {
width: 170px !important; width: 170px !important;
} }
.roleItemBox {
display: flex !important;
justify-content: flex-start;
align-items: center;
}
.fzSelect {
width: 14px;
height: 14px;
background-color: red;
margin-right: 6px;
}
.fzSelect2 {
position: absolute;
left: -20px;
top: 50%;
width: 14px;
height: 14px;
transform: translateY(-30%);
background-color: red;
}
.fuzhi {
width: 170px !important;
}
.el-checkbox /deep/ { .el-checkbox /deep/ {
.is-checked { .is-checked {
.el-checkbox__inner { .el-checkbox__inner {
......
...@@ -675,15 +675,23 @@ export default { ...@@ -675,15 +675,23 @@ export default {
this.$refs.addFormParams.validate((valid) => { this.$refs.addFormParams.validate((valid) => {
console.log(valid); console.log(valid);
if (valid) { if (valid) {
this.$axios.post("/system/users", this.addFormParams).then((res) => { this.$axios
console.log(1111111, res); .post("/system/users", this.addFormParams)
if (res.status == 201) { .then((res) => {
this.$message.success("添加成功"); if (res.status == 201) {
this.isShowAddUserDialog = false; setTimeout(() => {
this.isShowAddUserDialogBg = false; this.$message.success("添加成功");
this.search(); }, 1400);
} this.isShowAddUserDialog = false;
}); this.isShowAddUserDialogBg = false;
this.search();
} else {
console.log(res, 11111111);
}
})
.catch((res) => {
console.log(res);
});
} else { } else {
console.log("error submit!!"); console.log("error submit!!");
return false; return false;
......
...@@ -688,6 +688,17 @@ ...@@ -688,6 +688,17 @@
text-align: center; text-align: center;
margin-right: 16px; margin-right: 16px;
position: relative; position: relative;
> span {
display: inline-block;
width: 100% !important;
text-align: center;
overflow: hidden;
white-space: nowrap;
/*文字超出宽度则显示ellipsis省略号*/
text-overflow: ellipsis;
box-sizing: border-box;
padding: 0 10px;
}
} }
img { img {
width: 14px; width: 14px;
......
...@@ -107,9 +107,14 @@ ...@@ -107,9 +107,14 @@
} }
.diy-edit-title { .diy-edit-title {
width: 146px; width: 146px;
padding-left: 10px;
height: 100%; height: 100%;
font-size: 14px; font-size: 14px;
color: #333333; color: #333333;
overflow: hidden;
white-space: nowrap;
/*文字超出宽度则显示ellipsis省略号*/
text-overflow: ellipsis;
} }
.diy-edit-btn { .diy-edit-btn {
width: 40px; width: 40px;
......
...@@ -5,7 +5,10 @@ ...@@ -5,7 +5,10 @@
<span><b>查询条件</b></span> <span><b>查询条件</b></span>
<div class="clear_btn" @click="clearParams">清空</div> <div class="clear_btn" @click="clearParams">清空</div>
</div> </div>
<div class="width100 margin_top24_bottom24"> <div
class="width100 margin_top24_bottom24"
style="display: flex; align-items: center"
>
<div class="display_style"> <div class="display_style">
<span>条码号:</span> <span>条码号:</span>
<el-input <el-input
...@@ -46,10 +49,14 @@ ...@@ -46,10 +49,14 @@
v-model="reqParam.contrastCustomSearchReq.qid" v-model="reqParam.contrastCustomSearchReq.qid"
></el-input> ></el-input>
</div> </div>
<div class="display_style send_time"> <div
class="display_style send_time"
style="display: flex; align-items: center"
>
<span>发送时间:</span> <span>发送时间:</span>
<el-date-picker <el-date-picker
v-model="startEndDate" v-model="startEndDate"
style="display: flex; align-items: center"
class="el_data_picker" class="el_data_picker"
type="daterange" type="daterange"
range-separator="-" range-separator="-"
......
...@@ -368,6 +368,7 @@ $phone: var(--phone, #606266); //#ff4242; ...@@ -368,6 +368,7 @@ $phone: var(--phone, #606266); //#ff4242;
} }
span { span {
font-size: 17px; font-size: 17px;
} }
} }
} }
......
...@@ -518,7 +518,6 @@ export default { ...@@ -518,7 +518,6 @@ export default {
} }
}, },
methods: { methods: {
// 导入成功,跳转详情 // 导入成功,跳转详情
goList () { goList () {
if (this.drlx == 3 || this.drlx == 6) { if (this.drlx == 3 || this.drlx == 6) {
...@@ -584,7 +583,6 @@ export default { ...@@ -584,7 +583,6 @@ export default {
fileList.pop() fileList.pop()
} }
// 获取文件夹 // 获取文件夹
// var folder = fileList[0].raw.webkitRelativePath.split("/"); // var folder = fileList[0].raw.webkitRelativePath.split("/");
// console.log('fffff', folder[0]) // console.log('fffff', folder[0])
...@@ -706,7 +704,7 @@ export default { ...@@ -706,7 +704,7 @@ export default {
onUploadProgress: function (progressEvent) { onUploadProgress: function (progressEvent) {
// this.dialogVisible = true; // this.dialogVisible = true;
console.log(progressEvent, 1); console.log(progressEvent, 1);
that.UploadPercent = ((progressEvent.loaded / 10 * 9.9) / progressEvent.total).toFixed(2) * 100 that.UploadPercent = (((progressEvent.loaded / 10 * 9.9) / progressEvent.total) * 100).toFixed(2)
console.log(that.UploadPercent, 123) console.log(that.UploadPercent, 123)
// Number(event.percent.toFixed()) // Number(event.percent.toFixed())
}, },
......
...@@ -461,6 +461,24 @@ ...@@ -461,6 +461,24 @@
label="查询类型" label="查询类型"
:width="width4" :width="width4"
> >
<template slot-scope="scope">
<div
v-if='scope.row.queryType==0'
style="color: #fa9500;"
>{{scope.row.dataTypeName}}</div>
<div
v-if='scope.row.queryType==1'
style="color: #e60012;"
>{{scope.row.dataTypeName }}</div>
<div
v-if='scope.row.queryType==2'
style="color: #00b47a;"
>{{scope.row.dataTypeName}}</div>
<div
v-if='scope.row.queryType==3'
style="color: #055fe7;"
>{{scope.row.dataTypeName }}</div>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="barcode" prop="barcode"
...@@ -621,7 +639,7 @@ export default { ...@@ -621,7 +639,7 @@ export default {
fztm, fztm,
fcx, fcx,
}, },
created() { created () {
let w1 = 1920; let w1 = 1920;
let w2 = window.innerWidth; let w2 = window.innerWidth;
...@@ -968,8 +986,8 @@ export default { ...@@ -968,8 +986,8 @@ export default {
* @return {*} * @return {*}
*/ */
handleCurrentChange2 (page) { handleCurrentChange2 (page) {
this.currPage1 = page; this.currPage2 = page;
console.log("当前页", this.currPage1); console.log("当前页", this.currPage2);
this.search(); this.search();
}, },
/** /**
...@@ -1326,7 +1344,8 @@ export default { ...@@ -1326,7 +1344,8 @@ export default {
border-radius: 11px; border-radius: 11px;
position: absolute; position: absolute;
right: 10px; right: 10px;
top: 25%; top: 50%;
transform: translate(0, -50%);
} }
.el-tree /deep/ .el-tree-node__expand-icon.expanded { .el-tree /deep/ .el-tree-node__expand-icon.expanded {
-webkit-transform: rotate(0deg); -webkit-transform: rotate(0deg);
......
/* /*
* @Author: your name * @Author: your name
* @Date: 2021-09-07 09:57:48 * @Date: 2021-09-07 09:57:48
* @LastEditTime: 2021-11-17 14:02:53 * @LastEditTime: 2021-11-18 10:11:45
* @LastEditors: Please set LastEditors * @LastEditors: Please set LastEditors
* @Description: In User Settings Edit * @Description: In User Settings Edit
* @FilePath: \指纹系统\founder_vue\vue.config.js * @FilePath: \指纹系统\founder_vue\vue.config.js
...@@ -92,12 +92,12 @@ module.exports = { ...@@ -92,12 +92,12 @@ module.exports = {
// target: "http://192.168.0.137:8080/", //统一的请求头部每次修改都要重启才会生效 http://39.99.224.27:8006/ // target: "http://192.168.0.137:8080/", //统一的请求头部每次修改都要重启才会生效 http://39.99.224.27:8006/
// target: "http://172.18.108.2:8099/", // 张 认定 // target: "http://172.18.108.2:8099/", // 张 认定
// target: "http://192.168.128.110:8099", // 湖南-张 // target: "http://192.168.128.110:8099", // 湖南-张
target: "http://192.168.128.114:8099", // 湖南-马 // target: "http://192.168.128.114:8099", // 湖南-马
// target: "http://192.168.128.116:8099", // 湖南-王 // target: "http://192.168.128.116:8099", // 湖南-王
// target: "http://172.18.116.73:8099/", //统一的请求头部每次修改都要重启才会生效 http://39.99.224.27:8006/ ma // target: "http://172.18.116.73:8099/", //统一的请求头部每次修改都要重启才会生效 http://39.99.224.27:8006/ ma
// target: "http://127.0.0.1:8099", // target: "http://127.0.0.1:8099",
// target: "http://47.92.225.109:5602", // target: "http://47.92.225.109:5602",
// target: "http://www.meetfood.cn:2390/", // 湖南-线上 target: "http://www.meetfood.cn:2390/", // 湖南-线上
ws: true, ws: true,
changeOrigin: true, changeOrigin: 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