mirror of
https://gitee.com/java110/MicroCommunityWeb.git
synced 2026-02-23 13:26:39 +08:00
v1.9 系统菜单 部分bug 修复
This commit is contained in:
parent
48a861238a
commit
222dee41d3
@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
:title="$t('feePrintSpec.deleteTitle')"
|
||||
:title="$t('common.delete')"
|
||||
:visible.sync="visible"
|
||||
width="30%"
|
||||
center>
|
||||
<div class="text-center">
|
||||
<p>{{ $t('feePrintSpec.deleteConfirm') }}</p>
|
||||
<p>{{ $t('common.deleteConfirm') }}</p>
|
||||
</div>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">
|
||||
|
||||
@ -1,17 +1,9 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
:visible.sync="visible"
|
||||
:title="$t('searchCommunityData.title')"
|
||||
width="80%"
|
||||
@close="handleClose"
|
||||
>
|
||||
<el-dialog :visible.sync="visible" :title="$t('searchCommunityData.title')" width="80%" @close="handleClose">
|
||||
<el-row class="margin-bottom">
|
||||
<el-col :span="14" :offset="2">
|
||||
<el-input
|
||||
v-model="searchValue"
|
||||
:placeholder="$t('searchCommunityData.placeholder')"
|
||||
@keyup.enter.native="doSearch"
|
||||
/>
|
||||
<el-input v-model="searchValue" :placeholder="$t('searchCommunityData.placeholder')"
|
||||
@keyup.enter.native="doSearch" />
|
||||
</el-col>
|
||||
<el-col :span="3" :offset="1">
|
||||
<el-button type="primary" @click="doSearch">
|
||||
@ -30,11 +22,7 @@
|
||||
<div class="vc-search-community-item" v-if="rooms.length > 0">
|
||||
<div class="item-title">{{ $t('searchCommunityData.roomInfo') }}</div>
|
||||
<div class="item-content">
|
||||
<el-link
|
||||
v-for="(item, index) in rooms"
|
||||
:key="'room'+index"
|
||||
@click="toSimplifyAcceptance(item)"
|
||||
>
|
||||
<el-link v-for="(item, index) in rooms" :key="'room' + index" @click="toSimplifyAcceptance(item)">
|
||||
{{ item.roomName }}
|
||||
</el-link>
|
||||
</div>
|
||||
@ -42,12 +30,8 @@
|
||||
<div class="vc-search-community-item" v-if="owners.length > 0">
|
||||
<div class="item-title">{{ $t('searchCommunityData.ownerInfo') }}</div>
|
||||
<div class="item-content">
|
||||
<el-link
|
||||
v-for="(item, index) in owners"
|
||||
:key="'owner'+index"
|
||||
:href="'/#/views/owner/ownerDetail?ownerId='+item.ownerId"
|
||||
target="_blank"
|
||||
>
|
||||
<el-link v-for="(item, index) in owners" :key="'owner' + index"
|
||||
:href="'/#/views/owner/ownerDetail?ownerId=' + item.ownerId" target="_blank">
|
||||
{{ item.name }}
|
||||
</el-link>
|
||||
</div>
|
||||
@ -55,12 +39,8 @@
|
||||
<div class="vc-search-community-item" v-if="ownerMembers.length > 0">
|
||||
<div class="item-title">{{ $t('searchCommunityData.ownerMember') }}</div>
|
||||
<div class="item-content">
|
||||
<el-link
|
||||
v-for="(item, index) in ownerMembers"
|
||||
:key="'ownerMember'+index"
|
||||
:href="'/#/views/owner/ownerDetail?ownerId='+item.ownerId"
|
||||
target="_blank"
|
||||
>
|
||||
<el-link v-for="(item, index) in ownerMembers" :key="'ownerMember' + index"
|
||||
:href="'/#/views/owner/ownerDetail?ownerId=' + item.ownerId" target="_blank">
|
||||
{{ item.name }}
|
||||
</el-link>
|
||||
</div>
|
||||
@ -68,12 +48,8 @@
|
||||
<div class="vc-search-community-item" v-if="cars.length > 0">
|
||||
<div class="item-title">{{ $t('searchCommunityData.communityCar') }}</div>
|
||||
<div class="item-content">
|
||||
<el-link
|
||||
v-for="(item, index) in cars"
|
||||
:key="'car'+index"
|
||||
:href="'/#/views/car/carDetail?memberId='+item.carId"
|
||||
target="_blank"
|
||||
>
|
||||
<el-link v-for="(item, index) in cars" :key="'car' + index"
|
||||
:href="'/#/views/car/carDetail?memberId=' + item.carId" target="_blank">
|
||||
{{ item.carNum }}
|
||||
</el-link>
|
||||
</div>
|
||||
@ -81,12 +57,8 @@
|
||||
<div class="vc-search-community-item" v-if="carMembers.length > 0">
|
||||
<div class="item-title">{{ $t('searchCommunityData.memberCar') }}</div>
|
||||
<div class="item-content">
|
||||
<el-link
|
||||
v-for="(item, index) in carMembers"
|
||||
:key="'carMember'+index"
|
||||
:href="'/#/views/car/carDetail?memberId='+item.carId"
|
||||
target="_blank"
|
||||
>
|
||||
<el-link v-for="(item, index) in carMembers" :key="'carMember' + index"
|
||||
:href="'/#/views/car/carDetail?memberId=' + item.carId" target="_blank">
|
||||
{{ item.carNum }}
|
||||
</el-link>
|
||||
</div>
|
||||
@ -94,12 +66,8 @@
|
||||
<div class="vc-search-community-item" v-if="contracts.length > 0">
|
||||
<div class="item-title">{{ $t('searchCommunityData.contract') }}</div>
|
||||
<div class="item-content">
|
||||
<el-link
|
||||
v-for="(item, index) in contracts"
|
||||
:key="'contract'+index"
|
||||
:href="'/#/views/contract/contractDetail?contractId='+item.contractId"
|
||||
target="_blank"
|
||||
>
|
||||
<el-link v-for="(item, index) in contracts" :key="'contract' + index"
|
||||
:href="'/#/views/contract/contractDetail?contractId=' + item.contractId" target="_blank">
|
||||
{{ item.contractName }}
|
||||
</el-link>
|
||||
</div>
|
||||
@ -107,12 +75,8 @@
|
||||
<div class="vc-search-community-item" v-if="repairs.length > 0">
|
||||
<div class="item-title">{{ $t('searchCommunityData.repairOrder') }}</div>
|
||||
<div class="item-content">
|
||||
<el-link
|
||||
v-for="(item, index) in repairs"
|
||||
:key="'repair'+index"
|
||||
:href="'/#/pages/property/ownerRepairDetail?repairId='+item.repairId"
|
||||
target="_blank"
|
||||
>
|
||||
<el-link v-for="(item, index) in repairs" :key="'repair' + index"
|
||||
:href="'/#/pages/property/ownerRepairDetail?repairId=' + item.repairId" target="_blank">
|
||||
{{ item.repairName }}
|
||||
</el-link>
|
||||
</div>
|
||||
@ -120,12 +84,8 @@
|
||||
<div class="vc-search-community-item" v-if="visits.length > 0">
|
||||
<div class="item-title">{{ $t('searchCommunityData.visitor') }}</div>
|
||||
<div class="item-content">
|
||||
<el-link
|
||||
v-for="(item, index) in visits"
|
||||
:key="'visit'+index"
|
||||
:href="'/#/pages/property/visitDetail?vId='+item.vId+'&flowId='+item.flowId"
|
||||
target="_blank"
|
||||
>
|
||||
<el-link v-for="(item, index) in visits" :key="'visit' + index"
|
||||
:href="'/#/pages/property/visitDetail?vId=' + item.vId + '&flowId=' + item.flowId" target="_blank">
|
||||
{{ item.vName }}
|
||||
</el-link>
|
||||
</div>
|
||||
@ -133,12 +93,8 @@
|
||||
<div class="vc-search-community-item" v-if="staffs.length > 0">
|
||||
<div class="item-title">{{ $t('searchCommunityData.staff') }}</div>
|
||||
<div class="item-content">
|
||||
<el-link
|
||||
v-for="(item, index) in staffs"
|
||||
:key="'staff'+index"
|
||||
:href="'/#/views/staff/staffDetail?staffId='+item.userId"
|
||||
target="_blank"
|
||||
>
|
||||
<el-link v-for="(item, index) in staffs" :key="'staff' + index"
|
||||
:href="'/#/views/staff/staffDetail?staffId=' + item.userId" target="_blank">
|
||||
{{ item.name }}
|
||||
</el-link>
|
||||
</div>
|
||||
@ -215,7 +171,7 @@ export default {
|
||||
this.$message.warning(this.$t('searchCommunityData.inputTip'))
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
searchCommunityData({
|
||||
searchValue: this.searchValue,
|
||||
communityId: this.communityId
|
||||
@ -224,7 +180,7 @@ export default {
|
||||
this.$message.error(res.msg)
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
this.noData = false
|
||||
const data = res.data
|
||||
this.rooms = data.rooms || []
|
||||
@ -236,24 +192,25 @@ export default {
|
||||
this.repairs = data.repairs || []
|
||||
this.visits = data.visitDtos || []
|
||||
this.staffs = data.staffs || []
|
||||
|
||||
this.noData = !(this.rooms.length > 0 || this.owners.length > 0 ||
|
||||
this.ownerMembers.length > 0 || this.cars.length > 0 ||
|
||||
this.carMembers.length > 0 || this.contracts.length > 0 ||
|
||||
this.repairs.length > 0 || this.visits.length > 0 ||
|
||||
this.staffs.length > 0)
|
||||
|
||||
this.noData = !(this.rooms.length > 0 || this.owners.length > 0 ||
|
||||
this.ownerMembers.length > 0 || this.cars.length > 0 ||
|
||||
this.carMembers.length > 0 || this.contracts.length > 0 ||
|
||||
this.repairs.length > 0 || this.visits.length > 0 ||
|
||||
this.staffs.length > 0)
|
||||
}).catch(error => {
|
||||
console.error('Search failed:', error)
|
||||
})
|
||||
},
|
||||
toSimplifyAcceptance(room) {
|
||||
this.visible = false
|
||||
this.$router.push('/pages/property/simplifyAcceptance?tab=业务受理&searchType=1&searchValue=' + `${room.floorNum}-${room.unitNum}-${room.roomNum}`)
|
||||
|
||||
},
|
||||
clearSearchData() {
|
||||
const ws = this.ws
|
||||
const machine = this.machine
|
||||
|
||||
|
||||
this.searchValue = ''
|
||||
this.noData = true
|
||||
this.rooms = []
|
||||
@ -286,29 +243,29 @@ export default {
|
||||
url = "wss://"
|
||||
}
|
||||
url = `${url}${machine.machineIp}:${machine.machinePort}/APP_2AD85C71-BEF8-463C-9B4B-B672F603542A_fast`
|
||||
|
||||
|
||||
const ws = new WebSocket(url)
|
||||
|
||||
|
||||
ws.onerror = (event) => {
|
||||
console.log('WebSocket error:', event)
|
||||
setTimeout(() => {
|
||||
this.connectTelMachine(machine)
|
||||
}, 2000)
|
||||
}
|
||||
|
||||
|
||||
ws.onclose = () => {
|
||||
console.log('WebSocket closed')
|
||||
}
|
||||
|
||||
|
||||
ws.onopen = () => {
|
||||
console.log('WebSocket connected')
|
||||
}
|
||||
|
||||
|
||||
ws.onmessage = (event) => {
|
||||
try {
|
||||
const data = JSON.parse(event.data)
|
||||
console.log('WebSocket message:', data)
|
||||
|
||||
|
||||
if (data.message === 'query') {
|
||||
if (data.name === 'Device' && data.param.CallerId) {
|
||||
this.clearSearchData()
|
||||
@ -322,9 +279,9 @@ export default {
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
const param = data.param
|
||||
|
||||
|
||||
if (param && param.status === 'CallIn') {
|
||||
this.clearSearchData()
|
||||
this.searchValue = param.number
|
||||
@ -332,35 +289,35 @@ export default {
|
||||
this.doSearch()
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
if (param && param.status === 'TalkingStart') {
|
||||
this.$emit('TalkingStart', param)
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
if (param && param.status === 'TalkingEnd') {
|
||||
this.$emit('TalkingEnd', param)
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
this.saveTelMachineMsg(data)
|
||||
} catch (error) {
|
||||
console.error('Error parsing WebSocket message:', error)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
this.ws = ws
|
||||
},
|
||||
saveTelMachineMsg(data) {
|
||||
data.communityId = this.communityId
|
||||
data.machineId = this.machine.machineId
|
||||
|
||||
|
||||
saveTelMachineMsg(data).then(res => {
|
||||
if (res.code !== 0) {
|
||||
console.error('Failed to save tel machine message:', res.msg)
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
const param = res.data || {}
|
||||
if (param.action === 'sms') {
|
||||
this.$emit('sendTelMsg', {
|
||||
@ -410,7 +367,7 @@ export default {
|
||||
}
|
||||
},
|
||||
uuid() {
|
||||
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
|
||||
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
||||
const r = Math.random() * 16 | 0
|
||||
const v = c === 'x' ? r : (r & 0x3 | 0x8)
|
||||
return v.toString(16)
|
||||
@ -422,6 +379,7 @@ export default {
|
||||
|
||||
<style scoped>
|
||||
.vc-search-community-item {
|
||||
text-align: left;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
|
||||
@ -189,7 +189,6 @@ export default {
|
||||
padding: 10px 15px;
|
||||
margin-bottom: -1px;
|
||||
background-color: #fff;
|
||||
border: 1px solid #ddd;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
|
||||
@ -8,9 +8,6 @@
|
||||
@click="_openAddSmallWeChatModal(1100)">
|
||||
<i class="el-icon-plus"></i>{{ $t('common.add') }}
|
||||
</el-button>
|
||||
<el-button type="primary" size="small" @click="showMarkdown('/pages/property/publicWeChatManage')">
|
||||
<i class="el-icon-document"></i>{{ $t('common.document') }}
|
||||
</el-button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -28,26 +28,23 @@
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row :gutter="20" style="margin-top: 20px">
|
||||
<el-col :span="24">
|
||||
<el-card class="box-card">
|
||||
<div slot="header" class="flex justify-between">
|
||||
<span>{{ $t('storeInfoManage.storeInfo') }}</span>
|
||||
</div>
|
||||
<el-table :data="listStoreManageInfo.storeAttrDtoList" border style="width: 100%">
|
||||
<el-table-column prop="name" :label="$t('storeInfoManage.attributeName')" align="center" />
|
||||
<el-table-column prop="value" :label="$t('storeInfoManage.attributeValue')" align="center" />
|
||||
<el-table-column :label="$t('storeInfoManage.operation')" align="center" width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="primary" @click="_openEditStoreAttrModel(scope.row)">
|
||||
{{ $t('storeInfoManage.edit') }}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-card>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-card class="box-card">
|
||||
<div slot="header" class="flex justify-between">
|
||||
<span>{{ $t('storeInfoManage.storeInfo') }}</span>
|
||||
</div>
|
||||
<el-table :data="listStoreManageInfo.storeAttrDtoList" border style="width: 100%">
|
||||
<el-table-column prop="name" :label="$t('storeInfoManage.attributeName')" align="center" />
|
||||
<el-table-column prop="value" :label="$t('storeInfoManage.attributeValue')" align="center" />
|
||||
<el-table-column :label="$t('storeInfoManage.operation')" align="center" width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="primary" @click="_openEditStoreAttrModel(scope.row)">
|
||||
{{ $t('storeInfoManage.edit') }}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-card>
|
||||
|
||||
|
||||
<edit-store-info ref="editStoreInfo" @success="handleSuccess" />
|
||||
<edit-store-attr ref="editStoreAttr" @success="handleSuccess" />
|
||||
|
||||
@ -1,41 +1,25 @@
|
||||
<template>
|
||||
<div class="update-pwd-container">
|
||||
<el-card>
|
||||
<div class="update-pwd-title">{{ $t('updatePwd.title') }}</div>
|
||||
<el-form
|
||||
ref="pwdForm"
|
||||
:model="form"
|
||||
:rules="rules"
|
||||
label-width="100px"
|
||||
class="update-pwd-form"
|
||||
>
|
||||
<el-form ref="pwdForm" :model="form" :rules="rules" label-width="100px" class="update-pwd-form">
|
||||
<el-form-item :label="$t('updatePwd.oldPassword.label')" prop="oldPassword">
|
||||
<el-input
|
||||
v-model="form.oldPassword"
|
||||
type="password"
|
||||
:placeholder="$t('updatePwd.oldPassword.placeholder')"
|
||||
show-password
|
||||
/>
|
||||
<el-input v-model="form.oldPassword" type="password" :placeholder="$t('updatePwd.oldPassword.placeholder')"
|
||||
show-password />
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('updatePwd.newPassword.label')" prop="newPassword">
|
||||
<el-input
|
||||
v-model="form.newPassword"
|
||||
type="password"
|
||||
:placeholder="$t('updatePwd.newPassword.placeholder')"
|
||||
show-password
|
||||
/>
|
||||
<el-input v-model="form.newPassword" type="password" :placeholder="$t('updatePwd.newPassword.placeholder')"
|
||||
show-password />
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('updatePwd.confirmPassword.label')" prop="confirmPassword">
|
||||
<el-input
|
||||
v-model="form.confirmPassword"
|
||||
type="password"
|
||||
:placeholder="$t('updatePwd.confirmPassword.placeholder')"
|
||||
show-password
|
||||
/>
|
||||
<el-input v-model="form.confirmPassword" type="password"
|
||||
:placeholder="$t('updatePwd.confirmPassword.placeholder')" show-password />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="handleSubmit">{{ $t('updatePwd.button') }}</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -80,12 +64,12 @@ export default {
|
||||
this.$refs.pwdForm.validate(async (valid) => {
|
||||
if (valid) {
|
||||
try {
|
||||
const {code,msg} = await updatePassword({
|
||||
const { code, msg } = await updatePassword({
|
||||
oldPwd: this.form.oldPassword,
|
||||
newPwd: this.form.newPassword,
|
||||
reNewPwd:this.form.confirmPassword
|
||||
reNewPwd: this.form.confirmPassword
|
||||
})
|
||||
if(code != 0){
|
||||
if (code != 0) {
|
||||
this.$message.error(msg)
|
||||
return;
|
||||
}
|
||||
@ -104,11 +88,7 @@ export default {
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.update-pwd-container {
|
||||
width: 97%;
|
||||
padding: 20px;
|
||||
background-color: #fff;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
||||
|
||||
.update-pwd-title {
|
||||
font-size: 16px;
|
||||
@ -139,4 +119,4 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</style>
|
||||
Loading…
Reference in New Issue
Block a user