Commit 230a8648 authored by xuke's avatar xuke

添加-注释

parent 5d72ca4d
...@@ -532,25 +532,9 @@ getuser() ...@@ -532,25 +532,9 @@ getuser()
let cnNames_before = ref([]) let cnNames_before = ref([])
let cnNames_after = ref([]) let cnNames_after = ref([])
let params = ref({
"pipeAlarmParaId": "",
"pipeParaBaseId": "",
"pipeId": "",
"gatherType": "",
"voicePath": "",
"isVoice": "",
"topMost": "",
"upper": "",
"lower": "",
"downMost": "",
"alarmPlan": "",
"isShortMessage": "",
"isAlarm": "",
"isActive": true,
"updateNullFields": "",
})
// v-moedl表单参数,用于提交
let addParams = ref({ let addParams = ref({
"updateNullFields": "", "updateNullFields": "",
"voicePath": "", "voicePath": "",
...@@ -565,6 +549,7 @@ let addParams = ref({ ...@@ -565,6 +549,7 @@ let addParams = ref({
"isActive": true "isActive": true
}) })
// 重置表单
const reset = () => { const reset = () => {
addParams.value = { addParams.value = {
"updateNullFields": "", "updateNullFields": "",
...@@ -580,6 +565,8 @@ const reset = () => { ...@@ -580,6 +565,8 @@ const reset = () => {
"isActive": true "isActive": true
} }
} }
// 给表单第一个属性"报警名称"赋值
let param = ref({ let param = ref({
"cnName": "", "cnName": "",
"baseId": "" "baseId": ""
...@@ -627,7 +614,6 @@ watchEffect(() => { ...@@ -627,7 +614,6 @@ watchEffect(() => {
param.value.baseId = "transParaBaseId" param.value.baseId = "transParaBaseId"
} }
}) })
// 接口2:换热站基础参数编号(transParaBaseId) -> 接口1:baseId // 接口2:换热站基础参数编号(transParaBaseId) -> 接口1:baseId
const getCnNames = () => { const getCnNames = () => {
// console.log('dept-------------------', dept.value); // console.log('dept-------------------', dept.value);
...@@ -636,8 +622,8 @@ const getCnNames = () => { ...@@ -636,8 +622,8 @@ const getCnNames = () => {
data.then(function (val) { data.then(function (val) {
cnNames_before.value = val.data.before cnNames_before.value = val.data.before
cnNames_after.value = val.data.after cnNames_after.value = val.data.after
// console.log("cnNames_before@@@@", cnNames_before); // console.log("cnNames_before===>", cnNames_before);
// console.log("cnNames_after@@@@", cnNames_after); // console.log("cnNames_after===>", cnNames_after);
// console.log("cnNames_before.transParaBaseId:", cnNames_before.transParaBaseId) // console.log("cnNames_before.transParaBaseId:", cnNames_before.transParaBaseId)
}); });
} }
...@@ -647,6 +633,10 @@ const paramsSetting = () => { ...@@ -647,6 +633,10 @@ const paramsSetting = () => {
getCnNames() getCnNames()
} }
// newRow接收param.value.baseId,添加需要使用
// selectBeforeParams 和 selectAfterParams==> 两个方法调用一个接口
// selectBeforeParams 是点击左侧未参数时调用,此时未配置参数,故data无数据
// selectAfterParams 是点击右侧已配置的参数时调用,此时参数已配置,故data有数据
let newRow = ref({}) let newRow = ref({})
const selectBeforeParams = (row) => { const selectBeforeParams = (row) => {
reset() reset()
...@@ -667,10 +657,7 @@ const selectBeforeParams = (row) => { ...@@ -667,10 +657,7 @@ const selectBeforeParams = (row) => {
if (param.value.baseId) { if (param.value.baseId) {
const data = http.post("api/alarm/para/GetAlarmParaInfo", { type: newType.value, id: dept.value, baseid: param.value.baseId }, false) const data = http.post("api/alarm/para/GetAlarmParaInfo", { type: newType.value, id: dept.value, baseid: param.value.baseId }, false)
// console.log("查看baseId --- dataaaaa:", data); // console.log("查看baseId --- dataaaaa:", data);
data.then(function (val) { data.then(function () {
// console.log("valllll:", val);
params.value = val.data
// console.log("!!!!!Params.value:", params.value);
param.value.cnName = row.cnName param.value.cnName = row.cnName
}); });
} else { } else {
...@@ -704,8 +691,6 @@ const selectAfterParams = (row) => { ...@@ -704,8 +691,6 @@ const selectAfterParams = (row) => {
// console.log("valllll:", val); // console.log("valllll:", val);
// 数据回显 // 数据回显
addParams.value = { ...val.data } addParams.value = { ...val.data }
// console.log("addParams.value/////////", addParams.value);
// console.log("!!!!!Params.value:", params.value);
param.value.cnName = row.cnName param.value.cnName = row.cnName
if (type.value === 1) { if (type.value === 1) {
delId.value = val.data.pipeAlarmParaId delId.value = val.data.pipeAlarmParaId
...@@ -720,7 +705,10 @@ const selectAfterParams = (row) => { ...@@ -720,7 +705,10 @@ const selectAfterParams = (row) => {
} }
} }
// 总管 // 添加 addParams中写三个类型相同的属性,根据类型和设备进行动态的删除和添加
// 点击添加按钮要根据参数所属不同的类型和设备进行传参
// 修改亦如此
const onAdd = () => { const onAdd = () => {
// console.log("!!!!!!!", addParams.value); // console.log("!!!!!!!", addParams.value);
addParams.value.updateNullFields = "" addParams.value.updateNullFields = ""
...@@ -781,6 +769,11 @@ const onAdd = () => { ...@@ -781,6 +769,11 @@ const onAdd = () => {
} }
// 按钮 // 按钮
// 表单下面的按钮
// 按钮分为两组:一组添加和删除 一组修改和删除
// 选择类型和设备 点击确定之后,当点击左侧的参数调用xxbeforexx接口,且表单的报警名称有值添加按钮可用
// 当点击添加之后表单的报警名称没有值,添加按钮不可用
// 点击右侧的参数调用xxxafterxxx接口,添加按钮变为修改,同时修改按钮可用
const button = ref(true) const button = ref(true)
// 删除逻辑 // 删除逻辑
...@@ -825,7 +818,7 @@ const onDel = () => { ...@@ -825,7 +818,7 @@ const onDel = () => {
} }
// 关闭dialog清空数据 // 关闭dialog右上× 清空数据
const onClose = () => { const onClose = () => {
type.value = "" type.value = ""
dept.value = "" dept.value = ""
......
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
<table cellpadding="0" cellspacing="0"> <table cellpadding="0" cellspacing="0">
<tr> <tr>
<td style="text-align: left"> <td style="text-align: left">
<el-form-item prop="openingOfElectricValve"> <el-form-item prop="openingOfElectricValve">
<el-input v-float-number style="width: 80%; text-align: left" <el-input v-float-number style="width: 80%; text-align: left"
v-model="formDatas.openingOfElectricValve"> v-model="formDatas.openingOfElectricValve">
...@@ -19,14 +18,11 @@ ...@@ -19,14 +18,11 @@
</template> </template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
</table> </table>
</td> </td>
</tr> </tr>
<tr> <tr>
<th style="width: 25%">换热站</th> <th style="width: 25%">换热站</th>
<td style="text-align: left"> <td style="text-align: left">
...@@ -34,12 +30,9 @@ ...@@ -34,12 +30,9 @@
<el-checkbox v-for="(option, index) in options" :label="option.value" :key="index"> <el-checkbox v-for="(option, index) in options" :label="option.value" :key="index">
{{ option.label }} {{ option.label }}
</el-checkbox> </el-checkbox>
</el-checkbox-group> </el-checkbox-group>
</td> </td>
</tr> </tr>
<tr> <tr>
<th style="width: 25%">锅炉出水温度增加</th> <th style="width: 25%">锅炉出水温度增加</th>
<td style="width: 60%; margin: 0; padding: 0"> <td style="width: 60%; margin: 0; padding: 0">
...@@ -53,14 +46,11 @@ ...@@ -53,14 +46,11 @@
</template> </template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
</table> </table>
</td> </td>
</tr> </tr>
<tr> <tr>
<th style="width: 25%">电调阈开启度保持时间</th> <th style="width: 25%">电调阈开启度保持时间</th>
<td style="width: 60%; margin: 0; padding: 0"> <td style="width: 60%; margin: 0; padding: 0">
...@@ -79,7 +69,6 @@ ...@@ -79,7 +69,6 @@
</table> </table>
</td> </td>
</tr> </tr>
<tr> <tr>
<th style="width: 25%">锅炉房供水总管流量上限值</th> <th style="width: 25%">锅炉房供水总管流量上限值</th>
<td style="width: 60%; margin: 0; padding: 0"> <td style="width: 60%; margin: 0; padding: 0">
...@@ -93,14 +82,11 @@ ...@@ -93,14 +82,11 @@
</template> </template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
</table> </table>
</td> </td>
</tr> </tr>
<tr> <tr>
<th style="width: 25%">锅炉房供水总管流量下限值</th> <th style="width: 25%">锅炉房供水总管流量下限值</th>
<td style="width: 60%; margin: 0; padding: 0"> <td style="width: 60%; margin: 0; padding: 0">
...@@ -114,8 +100,6 @@ ...@@ -114,8 +100,6 @@
</template> </template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
</table> </table>
...@@ -134,14 +118,11 @@ ...@@ -134,14 +118,11 @@
</template> </template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
</table> </table>
</td> </td>
</tr> </tr>
<tr> <tr>
<th style="width: 25%">总管流量上下限范围内持续时间</th> <th style="width: 25%">总管流量上下限范围内持续时间</th>
<td style="width: 60%; margin: 0; padding: 0"> <td style="width: 60%; margin: 0; padding: 0">
...@@ -155,9 +136,6 @@ ...@@ -155,9 +136,6 @@
</template> </template>
</el-input> </el-input>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
</table> </table>
...@@ -176,7 +154,6 @@ ...@@ -176,7 +154,6 @@
</tr> </tr>
</table> </table>
</el-form> </el-form>
</el-card> </el-card>
</div> </div>
</div> </div>
...@@ -212,36 +189,38 @@ const formDatas = ref([ ...@@ -212,36 +189,38 @@ const formDatas = ref([
//表单校验规则 //表单校验规则
// 正则 /^(-?[0-9]+(\.[0-9]+)?){1,10}$/ ==> {1-10}不起作用,下面又一遍
const rules = reactive({ const rules = reactive({
openingOfElectricValve: [ openingOfElectricValve: [
{ pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "电动调节阀开度输入不合法", trigger: "blur" }, { pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "电动调节阀开度输入不合法", trigger: "blur" },
{ min: 1, max: 10, message: '电动调节阀开度必须是 1-10位的数字', trigger: 'blur' } { min: 1, max: 10, message: '电动调节阀开度必须是 1-10位的数字', trigger: 'change' }
], ],
boilerOutletWaterTemperature: [ boilerOutletWaterTemperature: [
{ pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "锅炉出水温度输入不合法", trigger: "blur" }, { pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "锅炉出水温度输入不合法", trigger: "blur" },
{ min: 1, max: 10, message: '锅炉出水温度必须是 1-10位的数字', trigger: 'blur' } { min: 1, max: 10, message: '锅炉出水温度必须是 1-10位的数字', trigger: 'change' }
], ],
upperLlimitMainFlow: [ upperLlimitMainFlow: [
{ pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "锅炉房供水总管流量上限值输入不合法", trigger: "blur" }, { pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "锅炉房供水总管流量上限值输入不合法", trigger: "blur" },
{ min: 1, max: 10, message: '锅炉房供水总管流量上限值必须是 1-10位的数字', trigger: 'blur' } { min: 1, max: 10, message: '锅炉房供水总管流量上限值必须是 1-10位的数字', trigger: 'change' }
], ],
lowerLlimitMainFlow: [ lowerLlimitMainFlow: [
{ pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "锅炉房供水总管流量下限值输入不合法", trigger: "blur" }, { pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "锅炉房供水总管流量下限值输入不合法", trigger: "blur" },
{ min: 1, max: 10, message: '锅炉房供水总管流量下限值必须是 1-10位的数字', trigger: 'blur' } { min: 1, max: 10, message: '锅炉房供水总管流量下限值必须是 1-10位的数字', trigger: 'change' }
], ],
maxTargetTemperature: [ maxTargetTemperature: [
{ pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "目标温度最大值输入不合法", trigger: "blur" }, { pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "目标温度最大值输入不合法", trigger: "blur" },
{ min: 1, max: 10, message: '目标温度最大值必须是 1-10位的数字', trigger: 'blur' } { min: 1, max: 10, message: '目标温度最大值必须是 1-10位的数字', trigger: 'change' }
], ],
bestHoldingTime: [ bestHoldingTime: [
{ pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "持续时间输入不合法", trigger: "blur" }, { pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, message: "持续时间输入不合法", trigger: "blur" },
{ min: 1, max: 10, message: '持续时间必须是 1-10位的数字', trigger: 'blur' } { min: 1, max: 10, message: '持续时间必须是 1-10位的数字', trigger: 'change' }
], ],
holdingTime: [ holdingTime: [
{ pattern: /^[0-9]\d{1,10}$/, "message": "保持时间必须是 1-10位的数字", trigger: 'blur' } { pattern: /^[0-9]\d{1,10}$/, "message": "保持时间必须是 1-10位的数字", trigger: 'change' }
] ]
}); });
// 获取数据列表
const getListData = () => { const getListData = () => {
loading.value = true loading.value = true
http.get("/api/configboiler/getData").then((result) => { http.get("/api/configboiler/getData").then((result) => {
...@@ -256,6 +235,8 @@ const getListData = () => { ...@@ -256,6 +235,8 @@ const getListData = () => {
console.log(err); console.log(err);
}); });
}; };
// 保存修改
const onSave = async () => { const onSave = async () => {
formDatas.value.transferIds = formDatas.value.transferIds.join(","); formDatas.value.transferIds = formDatas.value.transferIds.join(",");
const result = await postConfigBoilerUpdate({ ...formDatas.value }); const result = await postConfigBoilerUpdate({ ...formDatas.value });
...@@ -282,6 +263,7 @@ function getSupplys() { ...@@ -282,6 +263,7 @@ function getSupplys() {
let c = []; let c = [];
center.supplyList.forEach((supply) => { center.supplyList.forEach((supply) => {
let chi = []; let chi = [];
// 只展示小王庄地区supply.supplyId
if (supply.supplyId === "b354f45b-23e5-42be-a210-0fb92394f457") { if (supply.supplyId === "b354f45b-23e5-42be-a210-0fb92394f457") {
supply.transferList.forEach((unit) => { supply.transferList.forEach((unit) => {
options.push({ value: unit.unitId, label: unit.unitName }); options.push({ value: unit.unitId, label: unit.unitName });
...@@ -294,7 +276,7 @@ function getSupplys() { ...@@ -294,7 +276,7 @@ function getSupplys() {
} }
}); });
} }
console.log("遍历的options===========>:", options); // console.log("遍历的options===========>:", options);
} }
onMounted(() => { onMounted(() => {
getListData(); getListData();
......
...@@ -4,9 +4,6 @@ import { ElMessageBox, ElMessage } from "element-plus"; ...@@ -4,9 +4,6 @@ import { ElMessageBox, ElMessage } from "element-plus";
import axios from "axios"; import axios from "axios";
import { Search, Document } from "@element-plus/icons-vue"; import { Search, Document } from "@element-plus/icons-vue";
import { import {
postEnergyManage,
postEnergyDel,
postEnergyUpdate,
getOrganizationStructureInterface getOrganizationStructureInterface
} from "@/api/scheduling"; } from "@/api/scheduling";
import http from "../../api/http"; import http from "../../api/http";
...@@ -56,12 +53,12 @@ const tableLabel = reactive([ ...@@ -56,12 +53,12 @@ const tableLabel = reactive([
{ {
prop: "allowPagingId", prop: "allowPagingId",
label: "序号", label: "序号",
width: 100, width: 100
}, },
{ {
prop: "supplyName", prop: "supplyName",
label: "名称", label: "名称",
width: 200, width: 200
}, },
{ {
prop: "energyType", prop: "energyType",
...@@ -70,21 +67,21 @@ const tableLabel = reactive([ ...@@ -70,21 +67,21 @@ const tableLabel = reactive([
{ {
prop: "record", prop: "record",
label: "用度", label: "用度",
width: 200, width: 200
}, },
{ {
prop: "recordDate", prop: "recordDate",
label: "日期", label: "日期",
width: 300, width: 300
}, },
]); ]);
const formInline = reactive({ const formInline = reactive({
keyWord: "", keyWord: ""
}); });
const config = reactive({ const config = reactive({
supplyType: ["0", "1", "2", "3", "4"], supplyType: ["0", "1", "2", "3", "4"]
}); });
const handleSearch = () => { const handleSearch = () => {
...@@ -160,7 +157,7 @@ const handleAdd = () => { ...@@ -160,7 +157,7 @@ const handleAdd = () => {
dialogVisible.value = true; dialogVisible.value = true;
reset() reset()
} }
// 编辑
const handleEdit = (val) => { const handleEdit = (val) => {
// console.log("supplyData===>", supplyData.value); // console.log("supplyData===>", supplyData.value);
supplyData.value.forEach((item) => { supplyData.value.forEach((item) => {
...@@ -190,7 +187,7 @@ const onSubmit = () => { ...@@ -190,7 +187,7 @@ const onSubmit = () => {
http.post("api/energy/Save", { ...formEnergy.value }, false).then(res => { http.post("api/energy/Save", { ...formEnergy.value }, false).then(res => {
if (res.success) { if (res.success) {
dialogVisible.value = false dialogVisible.value = false
// ElMessage.success(res.message) ElMessage.success(res.message)
getEnergyData(); getEnergyData();
loading.value = false loading.value = false
} }
...@@ -201,7 +198,7 @@ const onSubmit = () => { ...@@ -201,7 +198,7 @@ const onSubmit = () => {
http.post("api/energy/Save", { ...formEnergy.value }, false).then((res => { http.post("api/energy/Save", { ...formEnergy.value }, false).then((res => {
if (res.success) { if (res.success) {
dialogVisible.value = false dialogVisible.value = false
// ElMessage.success(res.message) ElMessage.success(res.message)
getEnergyData(); getEnergyData();
loading.value = false loading.value = false
} }
...@@ -306,6 +303,7 @@ onMounted(() => { ...@@ -306,6 +303,7 @@ onMounted(() => {
stripe max-height="633"> stripe max-height="633">
<el-table-column prop="allowPagingId" label="序号" /> <el-table-column prop="allowPagingId" label="序号" />
<el-table-column prop="supplyName" label="名称" /> <el-table-column prop="supplyName" label="名称" />
<!-- TODO energyType显示中文 -->
<el-table-column prop="energyType" property="energyType" label="能源类型"> <el-table-column prop="energyType" property="energyType" label="能源类型">
<template #default="scope"> <template #default="scope">
<span v-if="scope.row.energyType == '0'">非节能</span> <span v-if="scope.row.energyType == '0'">非节能</span>
...@@ -454,7 +452,7 @@ table td { ...@@ -454,7 +452,7 @@ table td {
padding: 5px 10px; padding: 5px 10px;
} }
// 固定表头 // 固定表头!!要给table一个最大高度max-height
.el-table__body-wrapper.is-scrolling-none { .el-table__body-wrapper.is-scrolling-none {
overflow-y: auto; overflow-y: auto;
max-height: calc(100vh - 457px); //table-固定头部的高度 max-height: calc(100vh - 457px); //table-固定头部的高度
......
...@@ -33,8 +33,6 @@ ...@@ -33,8 +33,6 @@
</table> </table>
</td> </td>
</tr> </tr>
<tr> <tr>
<th style="width: 25%">判断时间 (分):</th> <th style="width: 25%">判断时间 (分):</th>
<td style="width: 60%; margin: 0; padding: 0"> <td style="width: 60%; margin: 0; padding: 0">
...@@ -49,8 +47,6 @@ ...@@ -49,8 +47,6 @@
</table> </table>
</td> </td>
</tr> </tr>
<tr> <tr>
<th style="width: 25%">调节温度 (℃)</th> <th style="width: 25%">调节温度 (℃)</th>
<td style="width: 60%; margin: 0; padding: 0"> <td style="width: 60%; margin: 0; padding: 0">
...@@ -65,8 +61,6 @@ ...@@ -65,8 +61,6 @@
</table> </table>
</td> </td>
</tr> </tr>
<tr> <tr>
<th style="width: 25%">备注</th> <th style="width: 25%">备注</th>
<td style="width: 60%; margin: 0; padding: 0"> <td style="width: 60%; margin: 0; padding: 0">
...@@ -79,16 +73,12 @@ ...@@ -79,16 +73,12 @@
</table> </table>
</td> </td>
</tr> </tr>
</table> </table>
</el-form> </el-form>
<div class="btngrounp"> <div class="btngrounp">
<el-button type="primary" @click="onSave">保存</el-button> <el-button type="primary" @click="onSave">保存</el-button>
<el-button type="primary" style="margin: 0 0 0 5px" @click="onCancel">关闭</el-button> <el-button type="primary" style="margin: 0 0 0 5px" @click="onCancel">关闭</el-button>
</div> </div>
</el-card> </el-card>
</div> </div>
</div> </div>
...@@ -119,16 +109,16 @@ const rules = reactive({ ...@@ -119,16 +109,16 @@ const rules = reactive({
diffPercentage: [ diffPercentage: [
{ required: true, message: "偏差百分比是必填项", trigger: "blur" }, { required: true, message: "偏差百分比是必填项", trigger: "blur" },
{ pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, "message": "偏差百分比输入不合法", trigger: 'blur' }, { pattern: /^(-?[0-9]+(\.[0-9]+)?){1,10}$/, "message": "偏差百分比输入不合法", trigger: 'blur' },
{ min: 1, max: 10, message: '偏差百分比必须是 1-10位的数字', trigger: 'blur' } { min: 1, max: 10, message: '偏差百分比必须是 1-10位的数字', trigger: 'change' }
], ],
timeoutMin: [ timeoutMin: [
{ required: true, message: "判断时间是必填项", trigger: "blur" }, { required: true, message: "判断时间是必填项", trigger: "blur" },
{ pattern: /^[0-9]\d{1,10}$/, "message": "判断时间必须是 1-10位的数字", trigger: 'blur' } { pattern: /^[0-9]\d{1,10}$/, "message": "判断时间必须是 1-10位的数字", trigger: 'change' }
], ],
tempRegulation: [ tempRegulation: [
{ required: true, message: "调节温度是必选项", trigger: "blur" }, { required: true, message: "调节温度是必选项", trigger: "blur" },
{ pattern: /^(-?[0-9]+(\.[0-9]+)?)$/, "message": "调节温度输入不合法", trigger: 'blur' }, { pattern: /^(-?[0-9]+(\.[0-9]+)?)$/, "message": "调节温度输入不合法", trigger: 'blur' },
{ min: 1, max: 10, message: '调节温度必须是 1-10位的数字', trigger: 'blur' } { min: 1, max: 10, message: '调节温度必须是 1-10位的数字', trigger: 'change' }
] ]
}); });
......
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