mirror of
https://gitee.com/java110/MicroCommunityWeb.git
synced 2026-06-11 14:17:24 +08:00
装修功能测试中
This commit is contained in:
parent
dc3c5a73ca
commit
81ca23ff1b
@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<el-dialog :title="$t('roomRenovationManage.add')" :visible.sync="visible" width="50%" @close="resetForm">
|
||||
<el-dialog :title="$t('roomRenovationManage.add')" :visible.sync="visible" width="40%" @close="resetForm">
|
||||
<el-form :model="form" ref="form" label-width="120px">
|
||||
<el-form-item :label="$t('roomRenovationManage.room')" prop="roomName" required>
|
||||
<el-input v-model.trim="form.roomName" :placeholder="$t('roomRenovationManage.roomNumberPlaceholder')"
|
||||
<el-input v-model.trim="form.roomName" :placeholder="$t('roomRenovationManage.roomNumberPlaceholder')"
|
||||
@blur="queryRoom" />
|
||||
</el-form-item>
|
||||
|
||||
@ -31,7 +31,8 @@
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.renovationManager')" prop="personMain" required>
|
||||
<el-input v-model.trim="form.personMain" :placeholder="$t('roomRenovationManage.renovationManagerPlaceholder')" />
|
||||
<el-input v-model.trim="form.personMain"
|
||||
:placeholder="$t('roomRenovationManage.renovationManagerPlaceholder')" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.managerPhone')" prop="personMainTel" required>
|
||||
@ -57,6 +58,8 @@
|
||||
|
||||
<script>
|
||||
import { addRoomRenovation } from '@/api/community/roomRenovationManageApi'
|
||||
import { queryRooms } from '@/api/room/roomApi'
|
||||
import { getCommunityId } from '@/api/community/communityApi'
|
||||
|
||||
export default {
|
||||
name: 'AddRoomRenovation',
|
||||
@ -95,14 +98,14 @@ export default {
|
||||
personMainTel: '',
|
||||
remark: '',
|
||||
isPostpone: 'N',
|
||||
communityId: this.getCommunityId()
|
||||
communityId: getCommunityId()
|
||||
}
|
||||
this.$refs.form && this.$refs.form.resetFields()
|
||||
},
|
||||
|
||||
async saveRoomRenovation() {
|
||||
try {
|
||||
this.form.communityId = this.getCommunityId()
|
||||
this.form.communityId = getCommunityId()
|
||||
await addRoomRenovation(this.form)
|
||||
this.$message.success(this.$t('common.operationSuccess'))
|
||||
this.visible = false
|
||||
@ -118,6 +121,13 @@ export default {
|
||||
|
||||
try {
|
||||
// 这里需要根据实际API实现查询房屋信息
|
||||
const {rooms} = await queryRooms({ roomName: this.form.roomName,page:1,row:10,communityId:getCommunityId() })
|
||||
if(rooms.length > 0){
|
||||
this.form.personName = rooms[0].ownerName
|
||||
this.form.personTel = rooms[0].link
|
||||
this.form.roomId = rooms[0].roomId
|
||||
}
|
||||
|
||||
// const roomInfo = await getRoomInfo({ roomName: this.form.roomName })
|
||||
// this.form.personName = roomInfo.ownerName
|
||||
// this.form.personTel = roomInfo.link
|
||||
@ -127,4 +137,15 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</script>
|
||||
<style scoped>
|
||||
.el-date-editor{
|
||||
width: 100%;
|
||||
}
|
||||
.el-date-editor.el-input{
|
||||
width: 100%;
|
||||
}
|
||||
.el-form-item{
|
||||
width: 95%;
|
||||
}
|
||||
</style>
|
||||
@ -1,130 +1,79 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
:title="$t('roomRenovationManage.modify')"
|
||||
:visible.sync="visible"
|
||||
width="50%"
|
||||
@close="resetForm"
|
||||
>
|
||||
<el-dialog :title="$t('roomRenovationManage.modify')" :visible.sync="visible" width="40%" @close="resetForm">
|
||||
<el-form :model="form" ref="form" label-width="120px">
|
||||
<el-form-item :label="$t('roomRenovationManage.room')" prop="roomName">
|
||||
<el-input
|
||||
v-model.trim="form.roomName"
|
||||
disabled
|
||||
/>
|
||||
<el-input v-model.trim="form.roomName" disabled />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.contactPerson')" prop="personName" required>
|
||||
<el-input
|
||||
v-model.trim="form.personName"
|
||||
:placeholder="$t('roomRenovationManage.contactPersonPlaceholder')"
|
||||
/>
|
||||
<el-input v-model.trim="form.personName" :placeholder="$t('roomRenovationManage.contactPersonPlaceholder')" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.phone')" prop="personTel" required>
|
||||
<el-input
|
||||
v-model.trim="form.personTel"
|
||||
:placeholder="$t('roomRenovationManage.phonePlaceholder')"
|
||||
/>
|
||||
<el-input v-model.trim="form.personTel" :placeholder="$t('roomRenovationManage.phonePlaceholder')" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.renovationStartTime')" prop="startTime" required>
|
||||
<el-date-picker
|
||||
v-model="form.startTime"
|
||||
type="date"
|
||||
:placeholder="$t('roomRenovationManage.startTimePlaceholder')"
|
||||
value-format="yyyy-MM-dd"
|
||||
/>
|
||||
<el-date-picker v-model="form.startTime" type="date"
|
||||
:placeholder="$t('roomRenovationManage.startTimePlaceholder')" value-format="yyyy-MM-dd" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.renovationEndTime')" prop="endTime" required>
|
||||
<el-date-picker
|
||||
v-model="form.endTime"
|
||||
type="date"
|
||||
:placeholder="$t('roomRenovationManage.endTimePlaceholder')"
|
||||
value-format="yyyy-MM-dd"
|
||||
/>
|
||||
<el-date-picker v-model="form.endTime" type="date" :placeholder="$t('roomRenovationManage.endTimePlaceholder')"
|
||||
value-format="yyyy-MM-dd" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.isPostponed')" prop="isPostpone" required>
|
||||
<el-select v-model="form.isPostpone">
|
||||
<el-option :label="$t('roomRenovationManage.yes')" value="Y" />
|
||||
<el-option :label="$t('roomRenovationManage.no')" value="N" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item
|
||||
v-if="form.isPostpone === 'Y'"
|
||||
:label="$t('roomRenovationManage.postponeTime')"
|
||||
prop="postponeTime"
|
||||
>
|
||||
<el-date-picker
|
||||
v-model="form.postponeTime"
|
||||
type="date"
|
||||
:placeholder="$t('roomRenovationManage.endTimePlaceholder')"
|
||||
value-format="yyyy-MM-dd"
|
||||
/>
|
||||
|
||||
<el-form-item v-if="form.isPostpone === 'Y'" :label="$t('roomRenovationManage.postponeTime')" prop="postponeTime">
|
||||
<el-date-picker v-model="form.postponeTime" type="date"
|
||||
:placeholder="$t('roomRenovationManage.endTimePlaceholder')" value-format="yyyy-MM-dd" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.renovationCompany')" prop="renovationCompany" required>
|
||||
<el-input
|
||||
v-model.trim="form.renovationCompany"
|
||||
:placeholder="$t('roomRenovationManage.renovationCompanyPlaceholder')"
|
||||
/>
|
||||
<el-input v-model.trim="form.renovationCompany"
|
||||
:placeholder="$t('roomRenovationManage.renovationCompanyPlaceholder')" value-format="yyyy-MM-dd" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.renovationManager')" prop="personMain" required>
|
||||
<el-input
|
||||
v-model.trim="form.personMain"
|
||||
:placeholder="$t('roomRenovationManage.renovationManagerPlaceholder')"
|
||||
/>
|
||||
<el-input v-model.trim="form.personMain"
|
||||
:placeholder="$t('roomRenovationManage.renovationManagerPlaceholder')" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.managerPhone')" prop="personMainTel" required>
|
||||
<el-input
|
||||
v-model.trim="form.personMainTel"
|
||||
:placeholder="$t('roomRenovationManage.managerPhonePlaceholder')"
|
||||
/>
|
||||
<el-input v-model.trim="form.personMainTel" :placeholder="$t('roomRenovationManage.managerPhonePlaceholder')" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.status')" prop="state" required>
|
||||
|
||||
<!-- <el-form-item :label="$t('roomRenovationManage.status')" prop="state" required>
|
||||
<el-select v-model="form.state">
|
||||
<el-option
|
||||
v-for="(item, index) in states"
|
||||
:key="index"
|
||||
:label="item.name"
|
||||
:value="item.statusCd"
|
||||
/>
|
||||
<el-option v-for="(item, index) in states" :key="index" :label="item.name" :value="item.statusCd" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
</el-form-item> -->
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.isViolation')" prop="isViolation" required>
|
||||
<el-select v-model="form.isViolation">
|
||||
<el-option :label="$t('roomRenovationManage.yes')" value="Y" />
|
||||
<el-option :label="$t('roomRenovationManage.no')" value="N" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item
|
||||
v-if="form.isViolation === 'Y'"
|
||||
:label="$t('roomRenovationManage.violationDesc')"
|
||||
prop="violationDesc"
|
||||
>
|
||||
<el-input
|
||||
v-model.trim="form.violationDesc"
|
||||
type="textarea"
|
||||
:placeholder="$t('roomRenovationManage.violationDescPlaceholder')"
|
||||
/>
|
||||
|
||||
<el-form-item v-if="form.isViolation === 'Y'" :label="$t('roomRenovationManage.violationDesc')"
|
||||
prop="violationDesc">
|
||||
<el-input v-model.trim="form.violationDesc" type="textarea"
|
||||
:placeholder="$t('roomRenovationManage.violationDescPlaceholder')" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item :label="$t('roomRenovationManage.remark')" prop="remark">
|
||||
<el-input
|
||||
v-model.trim="form.remark"
|
||||
type="textarea"
|
||||
:placeholder="$t('roomRenovationManage.remarkPlaceholder')"
|
||||
/>
|
||||
<el-input v-model.trim="form.remark" type="textarea"
|
||||
:placeholder="$t('roomRenovationManage.remarkPlaceholder')" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">
|
||||
{{ $t('roomRenovationManage.cancel') }}
|
||||
@ -138,7 +87,8 @@
|
||||
|
||||
<script>
|
||||
import { updateRoomRenovation } from '@/api/community/roomRenovationManageApi'
|
||||
|
||||
import { getDict } from '@/api/community/communityApi'
|
||||
import { dateFormat } from '@/utils/dateUtil'
|
||||
export default {
|
||||
name: 'EditRoomRenovation',
|
||||
data() {
|
||||
@ -179,9 +129,12 @@ export default {
|
||||
...row,
|
||||
communityId: this.getCommunityId()
|
||||
}
|
||||
this.form.startTime = dateFormat(this.form.startTime)
|
||||
this.form.endTime = dateFormat(this.form.endTime)
|
||||
|
||||
this.visible = true
|
||||
},
|
||||
|
||||
|
||||
resetForm() {
|
||||
this.form = {
|
||||
rId: '',
|
||||
@ -202,16 +155,16 @@ export default {
|
||||
communityId: ''
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
async getDictData() {
|
||||
try {
|
||||
const res = await this.$store.dispatch('dict/getDict', 'room_renovation')
|
||||
this.states = res.state || []
|
||||
const res = await getDict('room_renovation','state')
|
||||
this.states = res || []
|
||||
} catch (error) {
|
||||
console.error('获取字典数据失败:', error)
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
async editRoomRenovation() {
|
||||
try {
|
||||
await updateRoomRenovation(this.form)
|
||||
@ -225,4 +178,15 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</script>
|
||||
<style scoped>
|
||||
.el-date-editor{
|
||||
width: 100%;
|
||||
}
|
||||
.el-date-editor.el-input{
|
||||
width: 100%;
|
||||
}
|
||||
.el-form-item{
|
||||
width: 95%;
|
||||
}
|
||||
</style>
|
||||
@ -5,7 +5,8 @@
|
||||
<div slot="header" class=" flex justify-between">
|
||||
<span>{{ $t('roomRenovationManage.queryCondition') }}</span>
|
||||
<el-button type="text" style="float: right; padding: 3px 0" @click="toggleMoreCondition">
|
||||
{{ roomRenovationManageInfo.moreCondition ? $t('roomRenovationManage.hide') : $t('roomRenovationManage.more') }}
|
||||
{{ roomRenovationManageInfo.moreCondition ? $t('roomRenovationManage.hide') : $t('roomRenovationManage.more')
|
||||
}}
|
||||
</el-button>
|
||||
</div>
|
||||
<div>
|
||||
@ -109,40 +110,36 @@
|
||||
</el-table-column>
|
||||
<el-table-column prop="violationDesc" :label="$t('roomRenovationManage.violationDesc')" align="center" />
|
||||
<el-table-column prop="remark" :label="$t('roomRenovationManage.remark')" align="center" />
|
||||
<el-table-column :label="$t('roomRenovationManage.operation')" align="center" width="350">
|
||||
<el-table-column :label="$t('roomRenovationManage.operation')" align="center" width="150">
|
||||
<template slot-scope="scope">
|
||||
<div v-if="scope.row.state === '1000'">
|
||||
<el-button size="mini" @click="openRoomRenovationFee(scope.row)">
|
||||
{{ $t('roomRenovationManage.fee') }}
|
||||
</el-button>
|
||||
</div>
|
||||
<div v-if="scope.row.state === '1000' && scope.row.isViolation === 'N'">
|
||||
<el-button size="mini" type="primary" @click="openToExamine(scope.row)">
|
||||
{{ $t('roomRenovationManage.review') }}
|
||||
</el-button>
|
||||
</div>
|
||||
<div v-if="scope.row.state === '3000' && scope.row.isViolation === 'N'">
|
||||
<el-button size="mini" type="success" @click="openDecorationCompleted(scope.row)">
|
||||
{{ $t('roomRenovationManage.completeRenovation') }}
|
||||
</el-button>
|
||||
</div>
|
||||
<div v-if="scope.row.state === '4000' && scope.row.isViolation === 'N'">
|
||||
<el-button size="mini" type="warning" @click="openDecorationAcceptanceModel(scope.row)">
|
||||
{{ $t('roomRenovationManage.renovationAcceptance') }}
|
||||
</el-button>
|
||||
</div>
|
||||
<div v-if="scope.row.state === '5000' || scope.row.state === '6000'">
|
||||
<el-button size="mini" @click="openRoomRenovationDetail(scope.row)">
|
||||
{{ $t('roomRenovationManage.acceptanceDetail') }}
|
||||
</el-button>
|
||||
</div>
|
||||
<el-button size="mini" @click="openEditRoomRenovationModel(scope.row)">
|
||||
<el-button v-if="scope.row.state === '1000'" size="mini" type="text"
|
||||
@click="openRoomRenovationFee(scope.row)">
|
||||
{{ $t('roomRenovationManage.fee') }}
|
||||
</el-button>
|
||||
<el-button size="mini" v-if="scope.row.state === '1000' && scope.row.isViolation === 'N'" type="text"
|
||||
@click="openToExamine(scope.row)">
|
||||
{{ $t('roomRenovationManage.review') }}
|
||||
</el-button>
|
||||
|
||||
<el-button size="mini" v-if="scope.row.state === '3000' && scope.row.isViolation === 'N'" type="text"
|
||||
@click="openDecorationCompleted(scope.row)">
|
||||
{{ $t('roomRenovationManage.completeRenovation') }}
|
||||
</el-button>
|
||||
<el-button size="mini" v-if="scope.row.state === '4000' && scope.row.isViolation === 'N'" type="text"
|
||||
@click="openDecorationAcceptanceModel(scope.row)">
|
||||
{{ $t('roomRenovationManage.renovationAcceptance') }}
|
||||
</el-button>
|
||||
<el-button size="mini" v-if="scope.row.state === '5000' || scope.row.state === '6000'" type="text"
|
||||
@click="openRoomRenovationDetail(scope.row)">
|
||||
{{ $t('roomRenovationManage.acceptanceDetail') }}
|
||||
</el-button>
|
||||
<el-button size="mini" type="text" @click="openEditRoomRenovationModel(scope.row)">
|
||||
{{ $t('roomRenovationManage.modify') }}
|
||||
</el-button>
|
||||
<el-button size="mini" type="danger" @click="openDeleteRoomRenovationModel(scope.row)">
|
||||
<el-button size="mini" type="text" @click="openDeleteRoomRenovationModel(scope.row)">
|
||||
{{ $t('roomRenovationManage.delete') }}
|
||||
</el-button>
|
||||
<el-button size="mini" @click="openRoomDecorationRecord(scope.row)">
|
||||
<el-button size="mini" type="text" @click="openRoomDecorationRecord(scope.row)">
|
||||
{{ $t('roomRenovationManage.trackRecord') }}
|
||||
</el-button>
|
||||
</template>
|
||||
@ -150,9 +147,9 @@
|
||||
</el-table>
|
||||
|
||||
<!-- 分页 -->
|
||||
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="page.current"
|
||||
:page-sizes="[10, 20, 50]" :page-size="page.size" layout="total, sizes, prev, pager, next, jumper"
|
||||
:total="page.total" style="margin-top: 20px;" />
|
||||
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
|
||||
:current-page="page.current" :page-sizes="[10, 20, 50]" :page-size="page.size"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="page.total" style="margin-top: 20px;" />
|
||||
</div>
|
||||
</el-card>
|
||||
|
||||
@ -174,7 +171,7 @@ import RoomToExamine from '@/components/community/RoomToExamine'
|
||||
import EditRoomRenovation from '@/components/community/EditRoomRenovation'
|
||||
import DeleteRoomRenovation from '@/components/community/DeleteRoomRenovation'
|
||||
import RoomRenovationCompleted from '@/components/community/RoomRenovationCompleted'
|
||||
import {getDict} from '@/api/community/communityApi'
|
||||
import { getDict } from '@/api/community/communityApi'
|
||||
|
||||
export default {
|
||||
name: 'RoomRenovationManageList',
|
||||
@ -220,7 +217,7 @@ export default {
|
||||
// 获取字典数据
|
||||
async getDictData() {
|
||||
try {
|
||||
const res = await getDict('room_renovation','state')
|
||||
const res = await getDict('room_renovation', 'state')
|
||||
this.roomRenovationManageInfo.states = res || []
|
||||
} catch (error) {
|
||||
console.error('获取字典数据失败:', error)
|
||||
@ -368,5 +365,14 @@ export default {
|
||||
.clearfix:after {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.el-date-editor {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.el-date-editor.el-input {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
||||
@ -1,10 +1,10 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="4">
|
||||
<el-card class="border-radius">
|
||||
<div class="treeview attendance-staff">
|
||||
<ul class="list-group text-center border-radius">
|
||||
<div class="padding">
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="3">
|
||||
<div class="list-group-border-radius">
|
||||
<div class=" treeview">
|
||||
<ul class="list-group text-center ">
|
||||
<li v-for="(item, index) in states" :key="index" @click="swatchState(item)" :class="{
|
||||
'vc-node-selected': conditions.state === item.state
|
||||
}" class="list-group-item node-orgTree">
|
||||
@ -12,9 +12,9 @@
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="20">
|
||||
<el-col :span="21">
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-card>
|
||||
@ -51,7 +51,7 @@
|
||||
</el-card>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-row class="margin-top">
|
||||
<el-col :span="24">
|
||||
<el-card>
|
||||
<div slot="header" class="flex justify-between">
|
||||
@ -269,25 +269,6 @@ export default {
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.list-group {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.list-group-item {
|
||||
padding: 10px 15px;
|
||||
margin-bottom: -1px;
|
||||
background-color: #fff;
|
||||
border: 1px solid #ddd;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.list-group-item:hover,
|
||||
.vc-node-selected {
|
||||
background-color: #f5f7fa;
|
||||
color: #409EFF;
|
||||
}
|
||||
|
||||
.float-right {
|
||||
float: right;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user