73357b5a by xiaomiao

--no commit message

1 parent 239e92c8
......@@ -25,7 +25,7 @@ export default {
async submitViews () {
try {
let { result: res } = await work.submitViews("A20");
res.filter((item) => {
res.map((item) => {
return (
this.cdata.category.push(item.areaName),
this.cdata.barData.push(item.successCount),
......
......@@ -30,7 +30,7 @@ export default {
XZQDM: "",
};
let res = await work.getDjlxtotal(p);
res.result.filter((item) => {
res.result.map((item) => {
return (
this.cdata.category.push(item.AREACODE),
this.cdata.lineData.push(item.ywtotal)
......
......@@ -103,7 +103,7 @@ export default {
},
// 如果需要自定义 tooltip样式,需要使用formatter
formatter: params => {
return `<div style="">${params.name}:${params.value}</div>`
return `<div style="">${params.name}:${params.value+"个"}</div>`
}
},
visualMap: {
......
......@@ -22,9 +22,9 @@ export default {
async mapViews () {
try {
let { result: res } = await work.mapViews("A20");
res.filter((item) => {
res.map((item) => {
return (
this.cdata.push({ "name": item.areaName, "value": item.areaCode })
this.cdata.push({ "name": item.areaName, "value": item.ywtotal })
)
});
......
<template>
<Echart :options="options" id="centreLeft1Chart" height="200px" width="100%"></Echart>
<Echart :options="options" id="centreLeft1Chart" :key="key" height="225px" width="80%"></Echart>
</template>
<script>
import Echart from '@/common/echart'
......@@ -7,6 +7,11 @@ export default {
components: {
Echart,
},
data() {
return {
key:0
}
},
props: {
cdata: {
type: Object,
......@@ -16,11 +21,11 @@ export default {
watch: {
cdata: {
handler (newData) {
console.log("newData",newData);
this.options = {
grid: {
// 让图表占满容器
top: 20,
right: 0,
grid: {
right:"1%",
bottom:"4%"
},
color: [
"#37a2da",
......@@ -44,12 +49,14 @@ export default {
{
name: "业务量",
type: "pie",
radius: [0, 80],
radius: [40,100],
roseType: "area",
data: newData.seriesData
}
]
],
}
this.key++
},
immediate: true,
deep: true
......@@ -60,6 +67,7 @@ export default {
<style lang="scss" scoped>
#centreLeft1Chart {
margin-left: -20px;
margin-bottom: 10px;
margin-left: 60px;
}
</style>
......
<template>
<div>
<Chart :cdata="cdata" />
<el-carousel height="40px" indicator-position="none">
<el-carousel-item v-for="item in 4" :key="item">
<div class="rotograph">佛坪县</div>
</el-carousel-item>
</el-carousel>
</div>
</template>
......@@ -29,6 +24,7 @@ export default {
},
methods: {
// 获取登记业务量玫瑰图数据
async getdjywltotal () {
try {
let p = {
......@@ -38,14 +34,14 @@ export default {
};
let res = await work.getdjywltotal(p);
console.log("res",res);
res.result.filter((item) => {
// 遍历修改数组键,作为echars图表的参数
res.result.map((item) => {
return (
this.cdata.seriesData.push({ "name": item.AREACODE, "value": item.ywtotal })
)
});
console.log("this.cdata.seriesData",this.cdata.seriesData);
} catch (error) {
this.$refs.msg.messageShow();
console.log(error);
}
......@@ -55,16 +51,4 @@ export default {
</script>
<style lang="scss" scoped>
.rotograph {
margin: auto;
width: 200px;
height: 30px;
background-color: rgb(6, 121, 167);
font-size: 20px;
line-height: 30px;
text-align: center;
border-radius: 6px;
font-weight: 600;
color: #02d9fd;
}
</style>
......
import { Message } from "element-ui";
export function removeTreeListItem (treeList, dictId, idName = 'bsmDict') {
if (!treeList || !treeList.length) {
return
}
for (let i = 0; i < treeList.length; i++) {
if (treeList[i][idName] === dictId) {
treeList.splice(i, 1);
break;
}
removeTreeListItem(treeList[i].children, dictId)
}
}
// 创造id
export function getUuid (len, radix) {
var chars = "0123456789abcdefghijklmnopqrstuvwxyz".split(
""
);
var uuid = [],
i;
radix = radix || chars.length;
if (len) {
for (i = 0; i < len; i++) uuid[i] = chars[0 | (Math.random() * radix)];
} else {
var r;
uuid[8] = uuid[13] = uuid[18] = uuid[23] = "-";
uuid[14] = "4";
for (i = 0; i < 36; i++) {
if (!uuid[i]) {
r = 0 | (Math.random() * 16);
uuid[i] = chars[i == 19 ? (r & 0x3) | 0x8 : r];
}
}
}
return uuid.join("");
}
export function judgeSort (arr) {
if (arr.length) {
for (let i in arr) {
arr[i]["isTop"] = false;
arr[i]["isBottom"] = false;
arr[i] == arr[0] && (arr[i].isTop = true);
arr[i] == arr[arr.length - 1] && (arr[i].isBottom = true);
arr[i].children && arr[i].children.length && judgeSort(arr[i].children)
}
}
return arr
}
// 上下移动
export function realMove (bsmDict, operate, data) {
function changeSort (arr, bsmDict) {
if (arr.length) {
let flag = false;
for (let i in arr) {
if (arr[i].bsmDict == bsmDict) {
if (operate === "UP") {
arr[i] = arr.splice(i - 1, 1, arr[i])[0];
} else if (operate === "DOWN") {
let temp = arr.splice(i - 0 + 1, 1, arr[i])
arr[i] = temp[0];
}
flag = true;
break;
}
if (!flag && arr[i].children && arr[i].children.length) {
arr[i].children = changeSort(arr[i].children, bsmDict);
}
}
}
return arr;
}
data = judgeSort(changeSort(data, bsmDict));
}
// 获取所有父节点
export function findParents (treeData, bsmDict) {
if (treeData.length == 0) return
for (let i = 0; i < treeData.length; i++) {
if (treeData[i].bsmDict == bsmDict) {
return []
} else {
if (treeData[i].children) {
let res = findParents(treeData[i].children, bsmDict)
if (res !== undefined) {
return res.concat(treeData[i].bsmDict)
}
}
}
}
}
// 上移下移
export function upward (index, data) {
if (index > 0) {
let upData = data[index - 1];
data.splice(index - 1, 1);
data.splice(index, 0, upData);
} else {
Message({
message: '已经是第一条,上移失败'
});
}
}
export function down (index, data) {
if ((index + 1) == data.length) {
Message({
message: '已经是最后一条,下移失败'
});
} else {
let downData = data[index + 1];
data.splice(index + 1, 1);
data.splice(index, 0, downData);
}
}
......@@ -109,4 +109,4 @@ export function down (index, data) {
data.splice(index + 1, 1);
data.splice(index, 0, downData);
}
}
\ No newline at end of file
}
......
......@@ -87,21 +87,24 @@ export default {
return new Promise(async (resolve) => {
try {
let p = {
DJLX: "A21",
QLLX: "A8",
XZQDM: "A20",
DJLX: "",
QLLX: "",
XZQDM: "",
};
let res = await work.getsthjqxjrtotal(p);
this.stjrl=Number(res.result.sum)
this.qxjrl=Number(res.result.sum)
console.log("res",res);
this.stjrl=res.result.sum
this.qxjrl=res.result.sum
this.qxerrer=Number(res.result.qxjrerrer)
this.sterrer=Number(res.result.sthjerrer)
if(res.result.sum=="0"){
this.qxcgl="100%"
this.stcgl="100%"
}else{
this.qxcgl=Number(res.result.qxjrsuccess)/this.qxjrl*100+"%"
this.stcgl=Number(res.result.sthjsuccess)/Number(res.result.sum)*100+"%"
let qxcglnum=Number(res.result.qxjrsuccess)/this.qxjrl*100
let stcgl=Number(res.result.sthjsuccess)/this.qxjrl*100
this.qxcgl=qxcglnum.toFixed(2)+"%";
this.stcgl=stcgl.toFixed(2)+"%";
}
} catch (error) {
......
<template>
<div class="rightcard">
<div class="card1 cardCon d-center">
<div class="cardhead">房屋情况统计表</div>
<div class="cardhead">新建商品房登记</div>
<div class="cardcontent" style="margin-top: 70px">
<dv-scroll-board :config="config" class="board" />
</div>
......
<template>
<Dialog :title="title" class="tableClass" :show.sync="visible" :width="'715px'" @close="close()">
<template slot="content">
<lb-table ref="multipleTable"
:pagination="false"
:column="tableData.column"
:data="tableData.data"
@selection-change="handleSelectionChange">
</lb-table>
</template>
<template slot="footer">
<el-button type="primary" class="save" @click="handleSaveMember()"
>保存</el-button
>
<el-button class="cancel-button" @click="close()">取消</el-button>
</template>
</Dialog>
</template>
<script>
import Dialog from "@/components/Dialog/";
export default {
name: "",
components: { Dialog },
props: {},
data() {
return {
title: "人员配置",
visible: false,
tableData: {
column: [
{
type: 'selection'
},
{
prop: 'name',
label: '角色名称'
},
{
prop: 'type',
label: '角色类型'
},
{
prop: 'departmentName',
label: '角色描述'
},
],
data: [
{
id: "3127e455-43ba-45ff-9326-0e02ef89485e",
createdAt: null,
updatedAt: "2022-08-04T03:38:27.626+0000",
createdBy: null,
updatedBy: "3127e455-43ba-45ff-9326-0e02ef89485e",
sort: 1,
name: "超级管理员",
loginName: "admin",
password: "05eb15777e8fd1d61c840472e7267f61d432f63340d86b59",
passwordSalt: "5178114777136485",
email: null,
lastLoginTime: null,
mobilePhone: "18291003568",
status: "ACTIVE",
passwordChangeTime: "2021-12-10T08:01:01.569+0000",
idCard: "612725202111021521",
departmentId: "2eae5304-544f-4f5b-b354-8f5d47433c9b",
organizationId: "0bca67ae-1d9e-4b41-b057-f165586d24aa",
sex: "0",
isDuty: true,
type:"",
code: "123324",
jobLevel: null,
telephone: "028-87720898",
address: "办公地点修改测试",
isLocked: false,
departmentName: "研发部",
_X_ROW_KEY: "row_276",
},
{
name: '数据管理员',
type:"1",
},
{
name: '数据管理员2',
type:"d",
}
]
},
multipleSelection: []
}
},
computed: {},
watch: {},
created() {},
mounted() {},
methods: {
authorization() {
this.visible = true;
},
close() {
// this.resetForm()
this.visible = false;
},
// 保存事件
handleSaveMember() {
// if (this.memberList.length === 0) {
// this.$message.warning("请添加待选人员");
// return false;
// }
// const idList = this.memberList.map(item => item.id)
// updateUser(this.roleId, idList).then(res => {
// if (res.status === 1) {
// this.$message.success({ message: '保存成功', showClose: true })
// this.showMemberConfigDialog = false
// this.$emit('setUsers', this.roleId)
// this.resetMemberConfig()
// } else this.$message.error({ message: res.message, showClose: true })
// })
},
handleSelectionChange (val) {
console.log("vadddl",val);
this.multipleSelection = val
}
}
};
</script>
<style scoped lang="scss">
/deep/.el-dialog__header{
text-align: center;
margin-bottom: 10px;
.el-dialog__title{
color: white;
}
}
</style>
......@@ -204,22 +204,14 @@ export default {
// this.form.jumpMode = 1
},
edit(record) {
// this.type = 1
// // 若有id为编辑
// if (record.id) {
// this.$nextTick(() => {
// this.form = Object.assign({}, record)
// this.getParentMenuList(this.productId)
// })
// }
this.visible = true;
},
addChild(record) {
// this.getParentMenuList(this.productId)
// 若有id为编辑
if (record.id) {
this.$nextTick(() => {
this.form = Object.assign({}, record)
// this.getParentMenuList(this.productId)
})
}
this.visible = true;
// this.type = 2
// this.form.jumpMode = 1
// this.form.parentId = record.id
},
handleChange(value) {
// this.form.parentId = value
......@@ -289,12 +281,16 @@ export default {
};
</script>
<style scoped lang="scss">
.el-form {
.el-input {
.el-input__icon {
font-size: 14px;
// color: #3AA3F8 !important;
}
}
/deep/.el-input__inner {
background: #07388B;
border-radius: 2px;
border: 1px solid #6BC1FC;
}
/deep/.el-textarea__inner{
background: #07388B;
color: #fff;
}
/deep/.el-form-item__label{
color:#fff;
}
</style>
......
......@@ -12,7 +12,7 @@
<div class="from-clues-content">
<lb-table
:column="tableData.columns"
:data="tabledata11"
:data="tabledata"
row-key="id"
default-expand-all
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
......@@ -20,27 +20,30 @@
</lb-table>
</div>
<edit-dialog ref="dialogForm" />
<authorizationdiglog ref="rolesForm" />
</div>
</template>
<script>
// 定时任务
import data from "./data";
import EditDialog from "./edit-dialog.vue";
import authorizationdiglog from "./authorizationdiglog.vue";
export default {
name: "menus",
components: {
EditDialog,
authorizationdiglog,
},
data() {
return {
tabledata11: [
tabledata: [
{
id: "c6221838-187b-4a7a-b173-b0543022f560",
createdAt: "2021-08-26T07:00:07.101+0000",
updatedAt: "2021-08-26T07:00:07.101+0000",
createdBy: "3127e455-43ba-45ff-9326-0e02ef89485e",
updatedBy: "3127e455-43ba-45ff-9326-0e02ef89485e",
sort: 135,
sort: 35,
name: "概览",
code: "GL",
description: null,
......@@ -293,14 +296,14 @@ export default {
// 修改
handleEdit(record) {
localStorage.setItem("record", JSON.stringify(record));
this.$refs.dialogForm.edit(record);
this.$refs.dialogForm.title = "修改";
},
// 授权
authorizationQuery(record) {
this.$refs.authorizationList.open(record, 'menu')
this.$refs.authorizationList.emptyJudge = true
this.$refs.rolesForm.authorization(record);
this.$refs.rolesForm.title = "授权查询";
},
// 删除
handleDelete(row, id) {
......@@ -340,4 +343,7 @@ export default {
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
/deep/.el-table__expand-icon{
color: #fff;
}
</style>
......
......@@ -6,17 +6,17 @@ class data extends filter {
columns () {
return [
{
prop: "job_name",
prop: "name",
label: "角色名称",
width: 330
},
{
prop: "description",
prop: "type",
label: "类别",
width: 400
},
{
prop: "cron_expression",
prop: "description",
label: "备注"
}
]
......
import filter from '@/utils/filter.js'
class data extends filter {
constructor() {
super()
}
columns () {
return [
{
prop: "name",
label: "角色名称",
width: 330
},
{
prop: "type",
label: "类别",
width: 400
},
{
prop: "address",
label: "备注"
}
]
}
}
export default new data()
......@@ -171,4 +171,17 @@ export default {
}
}
</script>
<style scoped lang="scss"></style>
<style scoped lang="scss">
/deep/.el-input__inner {
background: #07388B;
border-radius: 2px;
border: 1px solid #6BC1FC;
}
/deep/.el-textarea__inner{
background: #07388B;
color: #fff;
}
/deep/.el-form-item__label{
color:#fff;
}
</style>
......
<template>
<Dialog :title="title" :show.sync="visible" :width="'715px'" @close="close()">
<Dialog
:title="title"
class="tableClass"
:show.sync="visible"
:width="'715px'"
@close="close()"
>
<template slot="content">
<vxe-table
show-overflow
:data="memberList"
border
class="header-bg-type1"
auto-resize
:checkbox-config="{ highlight: true, range: true }"
highlight-hover-row
max-height="500px"
:empty-render="{ name: 'NotData' }"
<lb-table
ref="multipleTable"
:pagination="false"
:column="tableData.column"
:data="tableData.data"
@selection-change="handleSelectionChange"
>
<template #empty>
<table-empty />
</template>
<vxe-table-column
type="checkbox"
width="60"
align="left"
fixed="left"
/>
<vxe-table-column
field="code"
title="工号"
fixed="left"
min-width="100"
show-header-overflow="tooltip"
show-overflow="tooltip"
align="left"
/>
<vxe-table-column
title="姓名"
fixed="left"
show-header-overflow="tooltip"
show-overflow="tooltip"
>
<template slot-scope="scope">
<svg-icon
:icon-class="
scope.row.sex === '0'
? 'male'
: scope.row.sex === '1'
? 'female'
: 'secrecy'
"
/>
{{ scope.row.name }}
</template>
</vxe-table-column>
<vxe-table-column
field="loginName"
title="用户名"
fixed="left"
show-header-overflow="tooltip"
show-overflow="tooltip"
/>
<vxe-table-column
field="departmentName"
title="部门"
show-header-overflow="tooltip"
show-overflow="tooltip"
/>
</vxe-table>
</lb-table>
</template>
<template slot="footer">
<el-button type="primary" class="save" @click="submitForm(1)"
<el-button type="primary" class="save" @click="handleSaveMember()"
>保存</el-button
>
<el-button class="cancel-button" @click="close()">取消</el-button>
......@@ -81,57 +33,92 @@ export default {
props: {},
data() {
return {
form: {
sex: "0",
},
memberList: [
title: "人员配置",
visible: false,
hasSelectList: [
{
id: "3127e455-43ba-45ff-9326-0e02ef89485e",
createdAt: null,
updatedAt: "2022-08-04T03:38:27.626+0000",
createdBy: null,
updatedBy: "3127e455-43ba-45ff-9326-0e02ef89485e",
sort: 1,
name: "超级管理员",
loginName: "admin",
password: "05eb15777e8fd1d61c840472e7267f61d432f63340d86b59",
passwordSalt: "5178114777136485",
email: null,
lastLoginTime: null,
mobilePhone: "18291003568",
status: "ACTIVE",
passwordChangeTime: "2021-12-10T08:01:01.569+0000",
idCard: "612725202111021521",
departmentId: "2eae5304-544f-4f5b-b354-8f5d47433c9b",
organizationId: "0bca67ae-1d9e-4b41-b057-f165586d24aa",
sex: "0",
isDuty: true,
code: "123324",
name: "管理员",
loginName: "admin1",
departmentName: "研发部",
jobLevel: null,
telephone: "028-87720898",
address: "办公地点修改测试",
isLocked: false,
},
{
name: "测试账号",
loginName: "admin2",
departmentName: "研发部",
_X_ROW_KEY: "row_276",
jobLevel: null,
},
],
title: "",
type: "",
visible: false,
showLoginName: false,
options: [],
setProps: {
value: "id",
label: "name",
children: "children",
expandTrigger: "hover",
checkStrictly: true, // 可取消关联,选择任意一级选项
emitPath: false,
], //已经选择的id组成的数组
tableData: {
column: [
{
type: "selection",
},
{
prop: "name",
label: "姓名",
},
{
prop: "loginName",
label: "用户名",
},
{
prop: "departmentName",
label: "部门",
},
{
prop: "jobLevel",
label: "职务",
},
],
data: [
{
id: "3127e455-43ba-45ff-9326-0e02ef89485e",
createdAt: null,
updatedAt: "2022-08-04T03:38:27.626+0000",
createdBy: null,
updatedBy: "3127e455-43ba-45ff-9326-0e02ef89485e",
sort: 1,
name: "超级管理员",
loginName: "admin",
password: "05eb15777e8fd1d61c840472e7267f61d432f63340d86b59",
passwordSalt: "5178114777136485",
email: null,
lastLoginTime: null,
mobilePhone: "18291003568",
status: "ACTIVE",
passwordChangeTime: "2021-12-10T08:01:01.569+0000",
idCard: "612725202111021521",
departmentId: "2eae5304-544f-4f5b-b354-8f5d47433c9b",
organizationId: "0bca67ae-1d9e-4b41-b057-f165586d24aa",
sex: "0",
isDuty: true,
code: "123324",
jobLevel: null,
telephone: "028-87720898",
address: "办公地点修改测试",
isLocked: false,
departmentName: "研发部",
_X_ROW_KEY: "row_276",
},
{
name: "管理员",
loginName: "admin1",
departmentName: "研发部",
jobLevel: null,
selectStatus: 0,
},
{
name: "测试账号",
loginName: "admin2",
departmentName: "研发部",
jobLevel: null,
selectStatus: 0,
},
],
},
sexList: [],
levelList: [],
organizationId: "", // 组织机构ID
departmentId: "", // 部门ID
multipleSelection: [],
};
},
computed: {},
......@@ -141,33 +128,49 @@ export default {
methods: {
adds() {
this.visible = true;
this.tableData.data.forEach((item, index) => {
if (item.selectStatus === 0) {
this.$nextTick(() => {
this.$refs.multipleTable.toggleRowSelection(
this.tableData.data[index],
true
);
});
}
});
},
edit(record) {
this.visible = true;
},
handleChange(value) {
this.form.departmentId = value;
},
close() {
// this.resetForm()
this.visible = false;
},
// 保存事件
handleSaveMember() {
// if (this.memberList.length === 0) {
// this.$message.warning("请添加待选人员");
// return false;
// }
// const idList = this.memberList.map(item => item.id)
// updateUser(this.roleId, idList).then(res => {
// if (res.status === 1) {
// this.$message.success({ message: '保存成功', showClose: true })
// this.showMemberConfigDialog = false
// this.$emit('setUsers', this.roleId)
// this.resetMemberConfig()
// } else this.$message.error({ message: res.message, showClose: true })
// })
},
handleSelectionChange(val) {
this.multipleSelection = val;
},
},
};
</script>
<style scoped lang="scss">
.el-form {
.el-form-item__content {
.el-radio {
margin-right: 6px;
}
}
.el-checkbox {
line-height: 40px;
}
.col-pd0 {
padding: 0 !important;
}
/deep/.el-dialog__header{
text-align: center;
margin-bottom: 10px;
.el-dialog__title{
color: white;
}
}
</style>
......
......@@ -222,17 +222,16 @@ export default {
};
</script>
<style scoped lang="scss">
.el-form {
.el-form-item__content {
.el-radio {
margin-right: 6px;
}
}
.el-checkbox {
line-height: 40px;
}
.col-pd0 {
padding: 0 !important;
}
/deep/.el-input__inner {
background: #07388B;
border-radius: 2px;
border: 1px solid #6BC1FC;
}
/deep/.el-textarea__inner{
background: #07388B;
color: #fff;
}
/deep/.el-form-item__label{
color:#fff;
}
</style>
......
......@@ -7,10 +7,6 @@
<el-col :span="2" class="btnColRight">
<el-form-item>
<btn nativeType="cx" @click="handleAdd">添加人员</btn>
<!-- <btn nativeType="cx" @click="resetPassword(selectionRows)"
>重置密码</btn
>
<btn nativeType="cx" @click="resetSearch()">重置</btn> -->
</el-form-item>
</el-col>
</el-row>
......@@ -33,6 +29,13 @@
</template>
<script>
// 定时任务
import {
getUuid,
judgeSort,
realMove,
findParents,
removeTreeListItem,
} from "@/utils/operation";
import data from "./data";
import sjsbTask from "@/api/sjsbTask.js";
import tableMixin from "@/mixins/tableMixin.js";
......@@ -94,7 +97,28 @@ export default {
label: "排序",
width: 380,
render: (h, scope) => {
return <div></div>;
return (
<div>
<el-button
type="text"
disabled={scope.row.isTop}
onClick={() => {
this.moveUpward(scope.$index, scope.row);
}}
>
上移
</el-button>
<el-button
type="text"
disabled={scope.row.isBottom}
onClick={() => {
this.moveDown(scope.$index, scope.row);
}}
>
下移
</el-button>
</div>
);
},
},
{
......@@ -213,7 +237,7 @@ export default {
address: null,
_X_ROW_KEY: "row_43",
switch: true,
}
},
];
},
// 重置搜索
......@@ -256,6 +280,21 @@ export default {
})
.catch(() => {});
},
// 上移下移
moveUpward(index, row) {
console.log("index",index);
console.log("row",row);
realMove(row.bsmDict, "UP", this.tableData);
this.key++;
let id = findParents(this.tableData, row.bsmDict);
this.keyList = id;
},
moveDown(index, row) {
realMove(row.bsmDict, "DOWN", this.tableData);
this.key++;
let id = findParents(this.tableData, row.bsmDict);
this.keyList = id;
},
// 重置用户密码
resetPassword(data) {
const ids = [];
......
<template>
<!-- 编辑 -->
<dialogBox title="操作内容" @closeDialog="closeDialog" @submitForm="handleSubmit" v-model="myValue">
<p>2222222222222222222222</p>
<p>2</p>
</dialogBox>
</template>
......@@ -29,4 +29,4 @@ export default {
}
}
}
</script>
\ No newline at end of file
</script>
......