Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
H
housing-estate
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
物业总平台
housing-estate
Commits
4b30296c
提交
4b30296c
authored
6月 28, 2023
作者:
宋雄
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
增加对账
上级
f98a35c0
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
727 行增加
和
8 行删除
+727
-8
.env.development
.env.development
+2
-2
NoticeForm.vue
src/views/information/building/modules/NoticeForm.vue
+24
-2
complaint-detail.vue
src/views/property/complaint/complaint-detail.vue
+4
-1
complaint.vue
src/views/property/complaint/complaint.vue
+3
-2
living.vue
src/views/property/living/living.vue
+1
-1
RecordDetails.vue
src/views/property/record/RecordDetails.vue
+432
-0
RecordList.vue
src/views/property/record/RecordList.vue
+261
-0
没有找到文件。
.env.development
浏览文件 @
4b30296c
NODE_ENV=development
VUE_APP_API_BASE_URL='http://192.168.0.119:9999'
#
VUE_APP_API_BASE_URL='http://192.168.0.119:9999'
# VUE_APP_API_BASE_URL='http://192.168.0.100:9999'
#
VUE_APP_API_BASE_URL='http://220.203.25.212:9999'
VUE_APP_API_BASE_URL='http://220.203.25.212:9999'
VUE_APP_CAS_BASE_URL=http://cas.example.org:8443/cas
VUE_APP_ONLINE_BASE_URL=http://fileview.jeecg.com/onlinePreview
...
...
src/views/information/building/modules/NoticeForm.vue
浏览文件 @
4b30296c
...
...
@@ -77,6 +77,13 @@
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"管理员头像"
:labelCol=
"
{ xs:{ span: 24 }, sm:{ span: 3 } }" :wrapperCol="wrapperCol" prop="adminAvatar">
<j-image-upload
:isMultiple=
"false"
text=
"点击上传"
bizPath=
"scott/pic"
v-model=
"model.adminAvatar"
></j-image-upload>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</j-form-container>
</a-spin>
...
...
@@ -87,6 +94,7 @@
import
{
httpAction
,
getAction
}
from
'@/api/manage'
import
{
validateDuplicateValue
}
from
'@/utils/util'
import
{
ajaxGetDictItems
,
getDictItemsFromCache
}
from
'@/api/api'
import
{
isMobile
}
from
'@/utils/validate'
const
columns
=
[
{
title
:
'序号'
,
...
...
@@ -122,6 +130,13 @@
}
},
data
()
{
const
validateToNextPhone
=
(
rule
,
value
,
callback
)
=>
{
if
(
value
&&
isMobile
(
value
))
{
callback
();
}
else
{
callback
(
'请输入正确的联系人电话!'
);
}
}
return
{
dictOptions
:
[],
model
:{
...
...
@@ -132,7 +147,8 @@
communityUnitList
:
[],
haveLift
:
'1'
,
buildingAdmin
:
''
,
adminPhone
:
''
adminPhone
:
''
,
adminAvatar
:
''
},
labelCol
:
{
xs
:
{
span
:
24
},
...
...
@@ -146,7 +162,13 @@
validatorRules
:
{
buildingName
:
[{
required
:
true
,
message
:
'请输入楼宇名称'
,
trigger
:
'blur'
}],
communityUnitList
:
[{
required
:
true
,
message
:
'请输入单元数量'
,
trigger
:
'change'
}],
useTo
:
[{
required
:
true
,
message
:
'请选择房屋用途'
,
trigger
:
'change'
}]
useTo
:
[{
required
:
true
,
message
:
'请选择房屋用途'
,
trigger
:
'change'
}],
buildingAdmin
:
[{
required
:
true
,
message
:
'请输入楼栋管理员'
,
trigger
:
'blur'
}],
adminPhone
:
[
{
required
:
true
,
message
:
'请输入管理员联系电话'
,
trigger
:
'blur'
},
{
validator
:
validateToNextPhone
}
],
adminAvatar
:
[{
required
:
true
,
message
:
'请上传管理员头像'
,
trigger
:
'blur'
}]
},
url
:
{
add
:
"/property-community/building/communityBuilding/add"
,
...
...
src/views/property/complaint/complaint-detail.vue
浏览文件 @
4b30296c
...
...
@@ -53,7 +53,7 @@
<a-form-model-item
label=
"处理状态"
:labelCol=
"
{ xs: { span: 24 }, sm: { span: 2 } }" :wrapperCol="wrapperCol"
prop="handleStatus">
<a-select
v-model=
"form.handleStatus"
placeholder=
"请选择处理状态"
style=
"width:50%"
>
<a-select-option
value=
"pending"
>
处理中
</a-select-option>
<a-select-option
value=
"pending"
v-if=
"model.handleStatus !== 'pending'"
>
处理中
</a-select-option>
<a-select-option
value=
"finish"
>
处理完成
</a-select-option>
</a-select>
</a-form-model-item>
...
...
@@ -114,6 +114,9 @@ export default {
this
.
confirmLoading
=
true
let
{
result
}
=
await
querycommunityComplaintApi
({
id
:
this
.
$route
.
query
.
id
})
this
.
model
=
{
...
result
}
if
(
this
.
model
.
handleStatus
==
'pending'
)
{
this
.
form
.
handleStatus
=
'finish'
}
if
(
this
.
model
.
handleStatus
==
'finish'
)
{
this
.
form
.
handleStatus
=
this
.
model
.
handleStatus
this
.
form
.
handleResult
=
this
.
model
.
handleResult
...
...
src/views/property/complaint/complaint.vue
浏览文件 @
4b30296c
...
...
@@ -69,7 +69,7 @@
<template
v-if=
"record.handleStatus !== 'finish'"
>
<a-divider
type=
"vertical"
/>
<a
@
click=
"onDetail(record.id, '2')"
>
处理
</a>
<a
@
click=
"onDetail(record.id, '2')"
>
{{
record
.
handleStatus
===
'pending'
?
'去完成'
:
'处理'
}}
</a>
</
template
>
</span>
</a-table>
...
...
@@ -133,7 +133,8 @@
dataIndex
:
'action'
,
scopedSlots
:
{
customRender
:
'action'
},
align
:
'center'
,
width
:
150
width
:
150
,
fixed
:
'right'
}
]
...
...
src/views/property/living/living.vue
浏览文件 @
4b30296c
...
...
@@ -110,7 +110,7 @@ const columns = [
title
:
'收费项目'
,
dataIndex
:
'chargeItem'
,
key
:
'chargeItem'
,
width
:
1
20
,
width
:
2
20
,
align
:
'center'
,
},
{
...
...
src/views/property/record/RecordDetails.vue
0 → 100644
浏览文件 @
4b30296c
<
template
>
<a-spin
:spinning=
"confirmLoading"
>
<div
class=
"title-top"
>
<h3>
{{
title
}}
</h3>
<div
class=
"button"
>
<a-button
@
click=
"onCancel"
>
返回
</a-button>
<a-button
type=
"danger"
@
click=
"onExamine(2)"
v-if=
"pageType == '2'"
>
审核驳回
</a-button>
<a-button
type=
"primary"
@
click=
"onExamine(1)"
v-if=
"pageType == '2'"
>
审核通过
</a-button>
<a-button
type=
"primary"
@
click=
"onExamine(3)"
v-if=
"pageType == '3'"
>
确认
</a-button>
</div>
</div>
<j-form-container
:disabled=
"pageType !== '3'"
>
<a-form-model
ref=
"form"
:model=
"model"
:rules=
"validatorRules"
slot=
"detail"
>
<a-card
title=
"对账信息"
>
<a-row>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"对账单号"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
>
<a-input
v-model=
"model.propertyName"
placeholder=
"请输入对账单号"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"对账开始时间"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"creditCode"
>
<a-input
v-model=
"model.creditCode"
placeholder=
"请输入对账开始时间"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"对账结束时间"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"legalName"
>
<a-input
v-model=
"model.legalName"
placeholder=
"请输入对账结束时间"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"操作人"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"registCapital"
>
<a-input-number
v-model=
"model.registCapital"
:min=
"1"
placeholder=
"请输入操作人"
style=
"width: 100%"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"操作日期"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"contactName"
>
<a-input
v-model=
"model.contactName"
placeholder=
"请输入操作日期"
></a-input>
</a-form-model-item>
</a-col>
</a-row>
</a-card>
<a-card
title=
"对账明细"
>
<a-row>
<div>
<a-table
ref=
"table"
size=
"middle"
:scroll=
"
{x:true}" bordered rowKey="id" :columns="columns"
:dataSource="dataSource" :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" :pagination="ipagination" :loading="loading" class="j-table-force-nowrap" @change="handleTableChange">
</a-table>
</div>
</a-row>
</a-card>
</a-form-model>
</j-form-container>
</a-spin>
</
template
>
<
script
>
import
{
getPropertyChargruleListApi
,
getPropertyDetailApi
,
auditPropertyApi
}
from
'@/api/api'
import
{
httpAction
,
getAction
}
from
'@/api/manage'
import
{
isMobile
,
validateCreditCode
}
from
'@/utils/validate'
import
{
JeecgListMixin
}
from
'@/mixins/JeecgListMixin'
const
columns
=
[
{
title
:
'所属小区'
,
dataIndex
:
'propertyName'
,
key
:
'propertyName'
,
align
:
'center'
,
},
{
title
:
'费用项目'
,
dataIndex
:
'creditCode'
,
key
:
'creditCode'
,
align
:
'center'
,
},
{
title
:
'业主'
,
dataIndex
:
'reconciliationBeginDate'
,
key
:
'reconciliationBeginDate'
,
align
:
'center'
,
},
{
title
:
'与业主关系'
,
dataIndex
:
'reaship'
,
key
:
'reaship'
,
align
:
'center'
,
},
{
title
:
'住户'
,
dataIndex
:
'reconcilname'
,
key
:
'reconcilname'
,
align
:
'center'
,
},
{
title
:
'房屋编号'
,
dataIndex
:
'reconciliationEndDate'
,
key
:
'reconciliationEndDate'
,
align
:
'center'
,
},
{
title
:
'费用'
,
dataIndex
:
'reconciliationAmount'
,
key
:
'reconciliationAmount'
,
align
:
'center'
,
},
{
title
:
'缴费日期'
,
dataIndex
:
'updateTime'
,
key
:
'updateTime'
,
align
:
'center'
,
},
{
title
:
'缴费单号'
,
dataIndex
:
'empowerCommunityNum'
,
key
:
'empowerCommunityNum'
,
// customRender: function (text) {
// return filterDictTextByCache('companyAuditStatus', text)
// },
},
{
title
:
'创建日期'
,
dataIndex
:
'auditStatus'
,
key
:
'auditStatus'
,
},
]
export
default
{
name
:
'PropertySettledForm'
,
inject
:
[
'closeCurrent'
],
mixins
:
[
JeecgListMixin
],
data
()
{
const
validateToNextPhone
=
(
rule
,
value
,
callback
)
=>
{
if
(
value
&&
isMobile
(
value
))
{
callback
()
}
else
{
callback
(
'请输入正确的联系人电话!'
)
}
}
const
validateCode
=
(
rule
,
value
,
callback
)
=>
{
if
(
value
&&
validateCreditCode
(
value
))
{
callback
()
}
else
{
callback
(
'社会统一信用代码输入错误'
)
}
}
return
{
title
:
''
,
pageType
:
''
,
pcaa
:
this
.
$Jpcaa
,
model
:
{
propertyName
:
'234234234'
,
creditCode
:
'2023-03-22'
,
legalName
:
'2023-06-22'
,
registCapital
:
'ADMIN'
,
contactName
:
'2023-06-23'
,
image
:
''
},
labelCol
:
{
xs
:
{
span
:
24
},
sm
:
{
span
:
6
},
},
wrapperCol
:
{
xs
:
{
span
:
24
},
sm
:
{
span
:
16
},
},
confirmLoading
:
false
,
validatorRules
:
{
propertyName
:
[{
required
:
true
,
message
:
'请输入物业集团名称'
,
trigger
:
'blur'
}],
creditCode
:
[{
required
:
true
,
message
:
'请输入统一信用代码'
,
trigger
:
'blur'
},
{
validator
:
validateCode
}],
legalName
:
[{
required
:
true
,
message
:
'请输入法人代表'
,
trigger
:
'blur'
}],
registCapital
:
[{
required
:
true
,
message
:
'请输入注册资本'
,
trigger
:
'blur'
}],
contactName
:
[{
required
:
true
,
message
:
'请输入联系人'
,
trigger
:
'blur'
}],
contactPhone
:
[
{
required
:
true
,
message
:
'请输入联系人电话'
,
trigger
:
'blur'
},
{
validator
:
validateToNextPhone
},
],
registAdress
:
[{
required
:
true
,
message
:
'请选择注册地址'
,
trigger
:
'change'
}],
addressInfo
:
[{
required
:
true
,
message
:
'请输入详细地址'
,
trigger
:
'blur'
}],
logoUrl
:
[{
required
:
true
,
message
:
'请上传集团LOGO'
,
trigger
:
'change'
}],
empowerBeginDate
:
[{
required
:
true
,
message
:
'请选择授权开始日期'
,
trigger
:
'change'
}],
empowerEndDate
:
[{
required
:
true
,
message
:
'请选择权结束日期'
,
trigger
:
'change'
}],
empowerCommunityNum
:
[{
required
:
true
,
message
:
'请输入授权小区数量'
,
trigger
:
'blur'
}],
chargingStandardId
:
[{
required
:
true
,
message
:
'请选择收费标准'
,
trigger
:
'change'
}],
adminLoginName
:
[{
required
:
true
,
message
:
'请输入管理员账号'
,
trigger
:
'blur'
}],
adminPassword
:
[{
required
:
true
,
message
:
'请输入管理员密码'
,
trigger
:
'blur'
}],
contractUrl
:
[{
required
:
true
,
message
:
'请上传合同附件'
,
trigger
:
'change'
}],
},
url
:
{
add
:
'/property-central/property/propertySettled/add'
,
edit
:
'/property-central/property/propertySettled/edit'
,
queryById
:
'/property-central/property/propertySettled/queryById'
,
list
:
'/property-central/property/communityReconciliation/communityAccountPage'
},
costList
:
[],
mapRef
:
null
,
columns
:
columns
,
loading
:
false
,
dataSource
:
[
{
id
:
'DSF3453534'
,
propertyName
:
'汉江之星小区'
,
creditCode
:
'物业费'
,
reconciliationBeginDate
:
'张飒,15198765634'
,
reaship
:
'租户'
,
reconcilname
:
'李白,15165245634'
,
reconciliationEndDate
:
'2栋2单元101'
,
reconciliationAmount
:
'345.23'
,
updateTime
:
'2023-04-05'
,
empowerCommunityNum
:
'LD23423843223'
,
auditStatus
:
'2023-05-06'
},
{
id
:
'DSF32342334'
,
propertyName
:
'汉江之星小区'
,
creditCode
:
'水费'
,
reconciliationBeginDate
:
'李生,1515235634'
,
reaship
:
'本人'
,
reconcilname
:
'李生,1515235634'
,
reconciliationEndDate
:
'1栋2单元301'
,
reconciliationAmount
:
'1345.45'
,
updateTime
:
'2023-05-05'
,
empowerCommunityNum
:
'DFG2342342323'
,
auditStatus
:
'2023-05-16'
},
{
id
:
'DSF23423434'
,
propertyName
:
'汉江之星小区'
,
creditCode
:
'电费'
,
reconciliationBeginDate
:
'李丽,19812348976'
,
reaship
:
'租户'
,
reconcilname
:
'张飒,15198765634'
,
reconciliationEndDate
:
'9栋1单元401'
,
reconciliationAmount
:
'34234'
,
updateTime
:
'2023-02-06'
,
empowerCommunityNum
:
'JTR323422'
,
auditStatus
:
'2023-03-06'
},
{
id
:
'DSF36783434'
,
propertyName
:
'汉江之星小区'
,
creditCode
:
'水费'
,
reconciliationBeginDate
:
'张盛,1890987567'
,
reaship
:
'本人'
,
reconcilname
:
'张盛,1890987567'
,
reconciliationEndDate
:
'4栋2单元403'
,
reconciliationAmount
:
'34'
,
updateTime
:
'2023-06-07'
,
empowerCommunityNum
:
'DFGD32423423'
,
auditStatus
:
'2023-04-23'
},
{
id
:
'DS235345534'
,
propertyName
:
'汉江之星小区'
,
creditCode
:
'燃气费'
,
reconciliationBeginDate
:
'李婷婷,18809875634'
,
reaship
:
'租户'
,
reconcilname
:
'话梅,15198765634'
,
reconciliationEndDate
:
'9栋2单元1201'
,
reconciliationAmount
:
'654'
,
updateTime
:
'2023-05-06'
,
empowerCommunityNum
:
'FDBEWRW2342342'
,
auditStatus
:
'2023-06-26'
},
]
}
},
methods
:
{
async
onLoadCostList
()
{
let
data
=
await
getPropertyChargruleListApi
()
this
.
costList
=
data
.
result
},
async
getPageDetail
()
{
let
{
result
}
=
await
getPropertyDetailApi
({
id
:
this
.
$route
.
query
.
id
})
this
.
edit
(
result
)
if
(
result
.
provinceName
)
{
this
.
getLongitude
(
result
.
provinceName
,
result
.
provinceName
+
result
.
cityName
+
result
.
countyName
+
result
.
addressInfo
,
mapZoom
[
3
]
)
}
},
onCancel
()
{
this
.
closeCurrent
()
},
contactPhoneChange
(
e
)
{
if
(
!
this
.
model
.
adminLoginName
)
{
this
.
model
.
adminLoginName
=
e
.
target
.
value
}
},
edit
(
record
)
{
this
.
model
=
Object
.
assign
({},
record
)
this
.
model
.
registAdress
=
[
record
.
provinceCode
,
record
.
cityCode
,
record
.
countyCode
]
this
.
visible
=
true
},
onExamine
(
type
)
{
this
.
closeCurrent
()
// const that = this
// if (type == 1) {
// return auditPropertyApi({
// id: this.$route.query.id,
// auditStatus: 'auditPass',
// }).then((res) => {
// that.$message.success('审核通过成功')
// that.$emit('ok')
// this.closeCurrent()
// })
// } else if (type == 2) {
// return auditPropertyApi({
// id: this.$route.query.id,
// auditStatus: 'refuse',
// }).then((res) => {
// that.$message.success('审核驳回成功')
// this.closeCurrent()
// })
// }
},
addressChange
(
val
)
{
const
province
=
Object
.
keys
(
val
[
0
])[
0
]
const
city
=
Object
.
keys
(
val
[
1
])[
0
]
const
county
=
Object
.
keys
(
val
[
2
])[
0
]
this
.
model
.
provinceName
=
val
[
0
][
province
]
this
.
model
.
provinceCode
=
province
this
.
model
.
cityName
=
val
[
1
][
city
]
this
.
model
.
cityCode
=
city
this
.
model
.
countyName
=
val
[
2
][
county
]
this
.
model
.
countyCode
=
county
if
(
this
.
model
.
addressInfo
)
{
this
.
getLongitude
(
this
.
model
.
provinceName
,
this
.
model
.
provinceName
+
this
.
model
.
cityName
+
this
.
model
.
countyName
+
this
.
model
.
addressInfo
,
mapZoom
[
3
]
)
}
},
addressBlur
(
val
)
{
if
(
this
.
model
.
provinceName
)
{
this
.
getLongitude
(
this
.
model
.
provinceName
,
this
.
model
.
provinceName
+
this
.
model
.
cityName
+
this
.
model
.
countyName
+
val
.
target
.
value
,
mapZoom
[
3
]
)
}
},
getAddress
(
e
)
{
let
_this
=
this
// 创建地理编码实例
var
myGeo
=
new
BMapGL
.
Geocoder
()
// 根据坐标得到地址描述
myGeo
.
getLocation
(
new
BMapGL
.
Point
(
e
.
latlng
.
lng
,
e
.
latlng
.
lat
),
function
(
result
)
{
if
(
result
)
{
_this
.
mapRef
.
clearOverlays
()
_this
.
model
.
registAdress
=
[
result
.
addressComponents
.
province
,
result
.
addressComponents
.
city
,
result
.
addressComponents
.
district
,
]
_this
.
model
.
addressInfo
=
result
.
addressComponents
.
street
+
result
.
addressComponents
.
streetNumber
_this
.
model
.
longitude
=
result
.
point
.
lng
_this
.
model
.
latitude
=
result
.
point
.
lat
_this
.
positionMap
(
e
.
latlng
.
lng
,
e
.
latlng
.
lat
,
mapZoom
[
3
],
result
.
address
)
console
.
log
(
result
)
}
})
},
positionMap
(
mapCenterLng
,
mapCenterLat
,
mapzoom
,
address
)
{
var
point
=
new
BMapGL
.
Point
(
mapCenterLng
,
mapCenterLat
)
// 创建点坐标
this
.
mapRef
.
centerAndZoom
(
point
,
mapzoom
)
var
marker
=
new
BMapGL
.
Marker
(
point
,
{
title
:
address
})
// 创建标注
this
.
mapRef
.
addOverlay
(
marker
)
// 将标注添加到地图中
let
_this
=
this
// marker.addEventListener("click", function(){
var
label
=
new
BMapGL
.
Label
(
address
,
{
// 创建文本标注
position
:
point
,
// 设置标注的地理位置
offset
:
new
BMapGL
.
Size
(
0
,
-
55
),
// 设置标注的偏移量
})
_this
.
mapRef
.
addOverlay
(
label
)
// 将标注添加到地图中
label
.
setStyle
({
// 设置label的样式
color
:
'#333'
,
fontSize
:
'14px'
,
padding
:
'4px 10px'
,
border
:
'1px solid #1E90FF'
,
borderRadius
:
'4px'
,
transform
:
'translateX(-40%)'
,
})
// });
},
getLongitude
(
city
,
address
,
zoom
)
{
let
_this
=
this
var
myGeo
=
new
BMapGL
.
Geocoder
()
myGeo
.
getPoint
(
address
,
function
(
point
)
{
if
(
point
)
{
_this
.
mapRef
.
clearOverlays
()
_this
.
model
.
longitude
=
point
.
lng
_this
.
model
.
latitude
=
point
.
lat
_this
.
positionMap
(
point
.
lng
,
point
.
lat
,
zoom
,
address
)
}
else
{
console
.
log
(
'您选择的地址没有解析到结果!'
)
}
},
city
)
},
submitForm
()
{
const
that
=
this
// 触发表单验证
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
valid
)
{
that
.
confirmLoading
=
true
let
httpurl
=
''
let
method
=
''
if
(
!
this
.
model
.
id
)
{
httpurl
+=
this
.
url
.
add
method
=
'post'
}
else
{
httpurl
+=
this
.
url
.
edit
method
=
'put'
}
//this.model.registAdress = undefined
httpAction
(
httpurl
,
this
.
model
,
method
)
.
then
((
res
)
=>
{
if
(
res
.
success
)
{
that
.
$message
.
success
(
res
.
message
)
that
.
$emit
(
'ok'
)
this
.
closeCurrent
()
}
else
{
that
.
$message
.
warning
(
res
.
message
)
}
})
.
finally
(()
=>
{
that
.
confirmLoading
=
false
})
}
})
},
loadData
()
{
console
.
log
(
'不请求'
)
}
},
mounted
()
{
//备份model原始值
//this.modelDefault = JSON.parse(JSON.stringify(this.model))
// this.onLoadCostList()
this
.
pageType
=
this
.
$route
.
query
.
type
if
(
this
.
$route
.
query
.
type
==
'1'
)
{
this
.
title
=
'详情'
}
else
if
(
this
.
$route
.
query
.
type
==
'2'
)
{
this
.
title
=
'审核'
}
else
if
(
this
.
$route
.
query
.
type
==
'3'
)
{
this
.
title
=
'新增对账'
}
console
.
log
(
this
.
title
)
console
.
log
(
this
.
pageType
)
// if (this.$route.query.id) {
// this.getPageDetail()
// }
}
}
</
script
>
<
style
lang=
"less"
scoped
>
.title-top {
background: #fff;
padding: 0 25px;
line-height: 50px;
height: 50px;
margin-bottom: 5px;
h3 {
font-weight: bold;
display: inline-block;
}
.button {
float: right;
.ant-btn {
margin-left: 15px;
}
}
}
</
style
>
<
style
>
.area-select
{
width
:
100%
!important
;
}
</
style
>
\ No newline at end of file
src/views/property/record/RecordList.vue
0 → 100644
浏览文件 @
4b30296c
<
template
>
<a-card
:bordered=
"false"
>
<!-- 查询区域 -->
<div
class=
"table-page-search-wrapper"
>
<a-form
layout=
"inline"
@
keyup
.
enter
.
native=
"searchQuery"
>
<a-row
:gutter=
"24"
>
<a-col
:md=
"6"
:sm=
"8"
>
<a-form-item
label=
"对账单号"
>
<j-input
placeholder=
"请输入对账单号"
v-model=
"queryParam.propertyName"
></j-input>
</a-form-item>
</a-col>
<a-col
:md=
"6"
:sm=
"8"
>
<a-form-item
label=
"小区名称"
>
<j-input
placeholder=
"请输入小区名称"
v-model=
"queryParam.propertyName"
></j-input>
</a-form-item>
</a-col>
<a-col
:md=
"8"
:sm=
"10"
>
<a-form-item
label=
"缴费日期"
>
<a-range-picker
@
change=
"onChange"
/>
</a-form-item>
</a-col>
<span
style=
"float: left;overflow: hidden;"
class=
"table-page-search-submitButtons"
>
<a-col
:md=
"6"
:sm=
"24"
>
<a-button
type=
"primary"
@
click=
"searchQuery"
>
查询
</a-button>
<a-button
style=
"margin-left: 8px"
@
click=
"searchReset"
>
重置
</a-button>
</a-col>
</span>
</a-row>
</a-form>
</div>
<!-- 操作按钮区域 -->
<div
class=
"table-operator"
>
<a-button
@
click=
"propertyDetails(3)"
type=
"primary"
icon=
"plus"
>
新增对账
</a-button>
<!--
<a-button
type=
"primary"
icon=
"download"
@
click=
"handleExportXls('t_property_settled')"
>
导出
</a-button>
-->
<!--
<a-dropdown
v-if=
"selectedRowKeys.length > 0"
>
<a-menu
slot=
"overlay"
>
<a-menu-item
key=
"1"
@
click=
"batchDel"
><a-icon
type=
"delete"
/>
删除
</a-menu-item>
</a-menu>
<a-button
style=
"margin-left: 8px"
>
批量操作
<a-icon
type=
"down"
/></a-button>
</a-dropdown>
-->
</div>
<!-- table区域-begin -->
<div>
<!--
<div
class=
"ant-alert ant-alert-info"
style=
"margin-bottom: 16px;"
>
<i
class=
"anticon anticon-info-circle ant-alert-icon"
></i>
已选择
<a
style=
"font-weight: 600"
>
{{
selectedRowKeys
.
length
}}
</a>
项
<a
style=
"margin-left: 24px"
v-if=
"selectedRowKeys.length > 0"
@
click=
"onClearSelected"
>
清空
</a>
</div>
-->
<a-table
ref=
"table"
size=
"middle"
:scroll=
"
{x:true}" bordered rowKey="id" :columns="columns"
:dataSource="dataSource" :pagination="ipagination" :loading="loading" class="j-table-force-nowrap" @change="handleTableChange">
<span
slot=
"empowerEndDate"
slot-scope=
"text, record"
>
<span
v-if=
"record.empowerEndDate"
>
{{
record
.
empowerBeginDate
}}
至
{{
record
.
empowerEndDate
}}
</span>
</span>
<span
slot=
"propertyStatus"
slot-scope=
"text, record"
>
<span>
{{
record
.
propertyStatus
===
'normal'
?
'正常'
:
'冻结'
}}
</span>
</span>
<span
slot=
"expirationStatus"
slot-scope=
"text, record"
>
<a-tag>
{{
record
.
expirationStatus
===
'notStarted'
?
'未开始'
:
record
.
expirationStatus
===
'normal'
?
'正常'
:
record
.
expirationStatus
===
'soonExpired'
?
'即将到期'
:
record
.
expirationStatus
===
'expire'
?
'已过期'
:
''
}}
</a-tag>
</span>
<span
slot=
"action"
slot-scope=
"text, record"
>
<a
href=
"javascript:;"
@
click=
"propertyDetails(1, record.id)"
>
详情
</a>
<template
v-if=
"record.auditStatus === '待审核'"
>
<a-divider
type=
"vertical"
/>
<a
href=
"javascript:;"
@
click=
"propertyDetails(2, record.id)"
>
审核
</a>
</
template
>
<!-- <a-dropdown>
<a class="ant-dropdown-link">
更多 <a-icon type="down" />
</a>
<a-menu slot="overlay">
<a-menu-item>
<a href="javascript:;" @click="propertyDetails(2, record.id)">审核</a>
</a-menu-item>
<a-menu-item>
<a href="javascript:;" @click="propertyDetails(3, record.id)">拨款</a>
</a-menu-item>
</a-menu>
</a-dropdown> -->
</span>
</a-table>
</div>
<!-- table区域-end -->
</a-card>
</template>
<
script
>
import
{
auditPropertyApi
,
freezeOrPropertyApi
}
from
'@/api/api'
import
{
JeecgListMixin
}
from
'@/mixins/JeecgListMixin'
import
{
filterDictTextByCache
}
from
'@/components/dict/JDictSelectUtil'
const
columns
=
[
{
title
:
'对账单号'
,
dataIndex
:
'id'
,
key
:
'id'
,
align
:
'center'
,
},
{
title
:
'对账开始日期'
,
dataIndex
:
'reconciliationBeginDate'
,
key
:
'reconciliationBeginDate'
,
align
:
'center'
,
},
{
title
:
'对账结束日期'
,
dataIndex
:
'reconciliationEndDate'
,
key
:
'reconciliationEndDate'
,
align
:
'center'
,
},
{
title
:
'对账金额'
,
dataIndex
:
'reconciliationAmount'
,
key
:
'reconciliationAmount'
,
align
:
'center'
,
},
{
title
:
'操作日期'
,
dataIndex
:
'updateTime'
,
key
:
'updateTime'
,
align
:
'center'
,
},
{
title
:
'操作人'
,
dataIndex
:
'empowerCommunityNum'
,
key
:
'empowerCommunityNum'
,
align
:
'center'
,
},
{
title
:
'审核状态'
,
dataIndex
:
'auditStatus'
,
scopedSlots
:
{
customRender
:
'auditStatus'
},
align
:
'center'
,
},
{
title
:
'公司审核状态'
,
dataIndex
:
'companyAuditStatus'
,
key
:
'companyAuditStatus'
,
// customRender: function (text) {
// return filterDictTextByCache('companyAuditStatus', text)
// },
},
{
title
:
'操作'
,
dataIndex
:
'action'
,
scopedSlots
:
{
customRender
:
'action'
},
align
:
'center'
,
fixed
:
'right'
,
width
:
150
,
},
]
export
default
{
name
:
'PermissionListAsync'
,
mixins
:
[
JeecgListMixin
],
data
()
{
return
{
// 表头
columns
:
columns
,
loading
:
false
,
url
:
{
list
:
'/property-central/property/communityReconciliation/list'
,
delete
:
'/property-central/property/communityReconciliation/delete'
,
deleteBatch
:
'/property-central/property/communityReconciliation/deleteBatch'
,
},
dataSource
:
[
{
id
:
'JD239423'
,
creditCode
:
'汉江之星小区'
,
propertyName
:
'汉江之星物业集团'
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'2023-02-03'
,
reconciliationAmount
:
'345.23'
,
updateTime
:
'2023-04-05'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'审核通过'
,
companyAuditStatus
:
'待审核'
},
{
id
:
'JD453454'
,
creditCode
:
'汉江之星小区'
,
propertyName
:
'汉江之星物业集团'
,
reconciliationBeginDate
:
'2023-04-06'
,
reconciliationEndDate
:
'2023-06-03'
,
reconciliationAmount
:
'1345.45'
,
updateTime
:
'2023-05-05'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'审核通过'
,
companyAuditStatus
:
'审核通过'
},
{
id
:
'JD567454'
,
creditCode
:
'汉江之星小区'
,
propertyName
:
'汉江之星物业集团'
,
reconciliationBeginDate
:
'2023-02-05'
,
reconciliationEndDate
:
'2023-02-23'
,
reconciliationAmount
:
'34234'
,
updateTime
:
'2023-02-06'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'待审核'
,
companyAuditStatus
:
'待审核'
},
{
id
:
'KF343455'
,
creditCode
:
'汉江之星小区'
,
propertyName
:
'汉江之星物业集团'
,
reconciliationBeginDate
:
'2022-11-01'
,
reconciliationEndDate
:
'2023-01-03'
,
reconciliationAmount
:
'34'
,
updateTime
:
'2023-06-07'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'审核通过'
,
companyAuditStatus
:
'审核通过'
},
{
id
:
'KD435345'
,
creditCode
:
'汉江之星小区'
,
propertyName
:
'汉江之星物业集团'
,
reconciliationBeginDate
:
'2022-01-21'
,
reconciliationEndDate
:
'2022-10-03'
,
reconciliationAmount
:
'654'
,
updateTime
:
'2023-05-06'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'待审核'
,
companyAuditStatus
:
'待审核'
},
{
id
:
'LG345352'
,
creditCode
:
'汉江之星小区'
,
propertyName
:
'汉江之星物业集团'
,
reconciliationBeginDate
:
'2022-01-10'
,
reconciliationEndDate
:
'2022-02-03'
,
reconciliationAmount
:
'897.98'
,
updateTime
:
'2023-05-08'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'待审核'
,
companyAuditStatus
:
'待审核'
},
{
id
:
'MG345354'
,
creditCode
:
'汉江之星小区'
,
propertyName
:
'汉江之星物业集团'
,
reconciliationBeginDate
:
'2023-01-04'
,
reconciliationEndDate
:
'2023-06-03'
,
reconciliationAmount
:
'234'
,
updateTime
:
'2023-05-05'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'审核通过'
,
companyAuditStatus
:
'待审核'
},
{
id
:
'LB345353'
,
creditCode
:
'汉江之星小区'
,
propertyName
:
'汉江之星物业集团'
,
reconciliationBeginDate
:
'2023-02-01'
,
reconciliationEndDate
:
'2023-05-03'
,
reconciliationAmount
:
'1000'
,
updateTime
:
'2023-04-04'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'审核通过'
,
companyAuditStatus
:
'待审核'
},
{
id
:
'LC234234'
,
creditCode
:
'汉江之星小区'
,
propertyName
:
'汉江之星物业集团'
,
reconciliationBeginDate
:
'2023-01-23'
,
reconciliationEndDate
:
'2023-02-03'
,
reconciliationAmount
:
'3443'
,
updateTime
:
'2023-01-02'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'审核通过'
,
companyAuditStatus
:
'审核通过'
},
]
}
},
methods
:
{
propertyDetails
(
type
,
id
)
{
this
.
$router
.
push
({
path
:
'/property/RecordDetails?type='
+
type
+
'&id='
+
id
})
},
onLoadDetail
(
record
,
type
)
{
record
[
'registAdress'
]
=
[
record
.
provinceCode
,
record
.
cityCode
,
record
.
countyCode
]
if
(
type
===
'edit'
)
{
this
.
handleEdit
(
record
)
}
else
{
this
.
handleDetail
(
record
)
}
},
onChange
(
date
,
dateString
)
{
if
(
dateString
.
length
>
0
)
{
this
.
queryParam
.
createTime_begin
=
dateString
[
0
]
this
.
queryParam
.
createTime_end
=
dateString
[
1
]
}
else
{
this
.
queryParam
.
createTime_begin
=
''
this
.
queryParam
.
createTime_end
=
''
}
},
onExamine
(
record
)
{
let
that
=
this
this
.
$confirm
({
title
:
'确认审核此物业?'
,
closable
:
true
,
okText
:
'审核通过'
,
cancelText
:
'审核驳回'
,
onOk
()
{
return
auditPropertyApi
({
id
:
record
.
id
,
auditStatus
:
'auditPass'
,
}).
then
((
res
)
=>
{
that
.
searchQuery
()
})
},
onCancel
()
{
return
auditPropertyApi
({
id
:
record
.
id
,
auditStatus
:
'refuse'
,
}).
then
((
res
)
=>
{
that
.
searchQuery
()
})
},
})
},
onStatus
(
record
)
{
let
that
=
this
this
.
$confirm
({
title
:
`确认
${
record
.
propertyStatus
===
'normal'
?
'冻结'
:
'解冻'
}
此物业?`
,
closable
:
true
,
okText
:
`
${
record
.
propertyStatus
===
'normal'
?
'冻结'
:
'解冻'
}
`
,
onOk
()
{
return
freezeOrPropertyApi
({
id
:
record
.
id
,
status
:
`
${
record
.
propertyStatus
===
'normal'
?
'freeze'
:
'normal'
}
`
,
}).
then
((
res
)
=>
{
that
.
searchQuery
()
})
},
onCancel
()
{},
})
},
handlePerssion
(
roleId
)
{
this
.
$refs
.
modalUserRole
.
show
(
roleId
)
},
loadData
()
{
console
.
log
(
'不请求'
)
}
},
}
</
script
>
<
style
scoped
>
@import
'~@assets/less/common.less'
;
</
style
>
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论