Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
A
applet
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
物业总平台
applet
Commits
c3c176e7
提交
c3c176e7
authored
6月 16, 2023
作者:
宋雄
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
完成设备管理员切换
上级
04516444
显示空白字符变更
内嵌
并排
正在显示
12 个修改的文件
包含
297 行增加
和
136 行删除
+297
-136
App.vue
App.vue
+1
-1
api.js
config/api.js
+35
-11
server_config.js
config/server_config.js
+2
-1
index.vue
pages/community/index.vue
+24
-14
index.vue
pages/complaints/index.vue
+7
-7
index.vue
pages/complaintsAdd/index.vue
+18
-19
index.vue
pages/complaintsDetail/index.vue
+2
-2
index.vue
pages/home/index.vue
+117
-20
index.vue
pages/maintenance/index.vue
+18
-32
index.vue
pages/maintenanceAdd/index.vue
+15
-19
index.vue
pages/mine/index.vue
+58
-10
banner.png
static/images/banner.png
+0
-0
没有找到文件。
App.vue
浏览文件 @
c3c176e7
...
...
@@ -39,7 +39,7 @@
repairPhoto
:
[]
},
complaintInfo
:
{
// complaintThem: '',
// complaintThem
e
: '',
// userName: '',
// userPhone: '',
// problemDesc: '',
...
...
config/api.js
浏览文件 @
c3c176e7
...
...
@@ -262,11 +262,15 @@ export const updateStatusApi = (params, config = {})=> {
}
// 维修上报列表
export
const
getCommunityRepairListApi
=
(
params
,
config
=
{})
=>
{
export
const
getCommunityRepairListApi
=
(
params
=
{}
,
config
=
{})
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
http
.
get
(
'/property-community/wechat/communityRepair/list'
,
{
data
:
{
...
params
},
data
:
{
...
params
,
ownerId
:
uni
.
getStorageSync
(
'openid'
),
platformCode
:
uni
.
getStorageSync
(
'platform_code'
)
},
...
config
})
.
then
(
res
=>
{
resolve
(
res
)
})
...
...
@@ -279,7 +283,11 @@ export const getCommunityRepairDetailApi = (params, config = {})=> {
return
new
Promise
((
resolve
,
reject
)
=>
{
http
.
get
(
'/property-community/wechat/communityRepair/queryById'
,
{
data
:
{
...
params
},
data
:
{
...
params
,
ownerId
:
uni
.
getStorageSync
(
'openid'
),
platformCode
:
uni
.
getStorageSync
(
'platform_code'
)
},
...
config
})
.
then
(
res
=>
{
resolve
(
res
)
})
...
...
@@ -288,10 +296,14 @@ export const getCommunityRepairDetailApi = (params, config = {})=> {
}
// 新增维修上报
export
const
addCommunityRepairApi
=
(
params
,
config
=
{})
=>
{
export
const
addCommunityRepairApi
=
(
params
=
{}
,
config
=
{})
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
http
.
post
(
'/property-community/wechat/communityRepair/add'
,
{
...
params
},
{
...
params
,
ownerId
:
uni
.
getStorageSync
(
'openid'
),
platformCode
:
uni
.
getStorageSync
(
'platform_code'
)
},
{
...
config
})
.
then
(
res
=>
{
resolve
(
res
)
})
.
catch
(
err
=>
{
reject
(
err
)
})
...
...
@@ -299,10 +311,14 @@ export const addCommunityRepairApi = (params, config = {})=> {
}
// 修改维修上报
export
const
editCommunityRepairApi
=
(
params
,
config
=
{})
=>
{
export
const
editCommunityRepairApi
=
(
params
=
{}
,
config
=
{})
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
http
.
post
(
'/property-community/wechat/communityRepair/edit'
,
{
...
params
},
{
...
params
,
ownerId
:
uni
.
getStorageSync
(
'openid'
),
platformCode
:
uni
.
getStorageSync
(
'platform_code'
)
},
{
...
config
})
.
then
(
res
=>
{
resolve
(
res
)
})
.
catch
(
err
=>
{
reject
(
err
)
})
...
...
@@ -323,11 +339,15 @@ export const deleteCommunityRepairApi = (params, config = {})=> {
}
// 投诉列表
export
const
getCommunityComplaintListApi
=
(
params
,
config
=
{})
=>
{
export
const
getCommunityComplaintListApi
=
(
params
=
{}
,
config
=
{})
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
http
.
get
(
'/property-community/wechat/communityComplaint/list'
,
{
data
:
{
...
params
},
data
:
{
...
params
,
userId
:
uni
.
getStorageSync
(
'openid'
),
platformCode
:
uni
.
getStorageSync
(
'platform_code'
)
},
...
config
})
.
then
(
res
=>
{
resolve
(
res
)
})
...
...
@@ -349,10 +369,14 @@ export const getCommunityComplaintDetailApi = (params, config = {})=> {
}
// 新增投诉
export
const
addCommunityComplaintApi
=
(
params
,
config
=
{})
=>
{
export
const
addCommunityComplaintApi
=
(
params
=
{}
,
config
=
{})
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
http
.
post
(
'/property-community/wechat/communityComplaint/add'
,
{
...
params
},
{
...
params
,
userId
:
uni
.
getStorageSync
(
'openid'
),
platformCode
:
uni
.
getStorageSync
(
'platform_code'
)
},
{
...
config
})
.
then
(
res
=>
{
resolve
(
res
)
})
.
catch
(
err
=>
{
reject
(
err
)
})
...
...
config/server_config.js
浏览文件 @
c3c176e7
...
...
@@ -2,7 +2,8 @@
* 接口参数
*/
const
serverConfig
=
{
baseURL
:
"http://192.168.0.118:9999"
,
baseURL
:
"http://192.168.0.100:9999"
,
// baseURL: "http://192.168.0.118:9999",
// baseURL: "http://220.203.25.212:9999", /* 根域名 */
// baseURL: "http://114.67.111.37:8001" /* 根域名 */
}
...
...
pages/community/index.vue
浏览文件 @
c3c176e7
...
...
@@ -4,10 +4,7 @@
<view
class=
"search"
>
<uni-search-bar
placeholder=
"请输入您的小区名"
bgColor=
"#EEEEEE"
@
confirm=
"search"
/>
<view
class=
"list"
>
<view
class=
"item"
>
汉江之星小区
</view>
<view
class=
"item"
>
南航碧桂园小区
</view>
<view
class=
"item"
>
阳光花园小区
</view>
<view
class=
"item"
>
天河彩虹城
</view>
<view
class=
"item"
:class=
"
{'active': item.platformCode === currentHouseCode}" @click="onChangeHouse(item)" v-for="item in houseList" :key="item.platformCode">
{{
item
.
platformName
}}
</view>
</view>
</view>
</view>
...
...
@@ -18,22 +15,32 @@
export
default
{
data
()
{
return
{
houseList
:
[],
currentHouseCode
:
''
}
},
methods
:
{
toDetails
()
{
uni
.
navigateTo
({
url
:
'/pages/announcementDetails/index'
,
});
onChangeHouse
(
item
)
{
if
(
item
.
platformCode
===
this
.
currentHouseCode
)
return
uni
.
setStorageSync
(
'platform_code'
,
item
.
platformCode
)
uni
.
reLaunch
({
url
:
'/pages/home/index'
})
},
search
(
value
)
{
console
.
log
(
value
)
}
},
onLoad
()
{
},
onShow
()
{
this
.
currentHouseCode
=
uni
.
getStorageSync
(
'platform_code'
)
let
userType
=
uni
.
getStorageSync
(
'user_type'
)
if
(
userType
===
'1'
)
{
let
data
=
uni
.
getStorageSync
(
'user_house_list'
)
this
.
houseList
=
JSON
.
parse
(
data
)
}
else
{
let
data
=
uni
.
getStorageSync
(
'employee_house_list'
)
this
.
houseList
=
JSON
.
parse
(
data
)
}
}
}
</
script
>
...
...
@@ -53,6 +60,9 @@
height
:
84rpx
;
line-height
:
84rpx
;
border-bottom
:
1px
solid
#F8F6F9
;
&
.active
{
color
:
#6A59F2
;
}
}
}
}
...
...
pages/complaints/index.vue
浏览文件 @
c3c176e7
<
template
>
<view
class=
"container"
>
<view
class=
"page"
>
<view
class=
"complaints"
>
<view
class=
"complaints"
v-if=
"maintenanceList.length !== 0"
>
<view
class=
"information"
v-for=
"item in maintenanceList"
:key=
"item.id"
@
click=
"toDetail(item.id)"
>
<view
class=
"title"
:class=
"item.handleStatus === 'finish' ? 'gray' : 'yellow'"
>
{{
item
.
complaintTheme
}}
<view
class=
"tag"
>
{{
item
.
statusName
}}
</view>
</view>
...
...
@@ -17,6 +17,7 @@
</view>
</view>
</view>
<no-data
:show=
"maintenanceList.length === 0"
text=
"暂无投诉信息"
></no-data>
</view>
<view
class=
"form-submit-fixed"
>
<view
class=
"form-submit"
@
click=
"toEditor()"
>
新增投诉
</view>
...
...
@@ -29,11 +30,14 @@
getCommunityComplaintListApi
,
}
from
'@/config/api.js'
import
{
Moment
}
from
'@/utils/moment.js'
import
noData
from
'@/components/no-data/no-data'
const
handleStatus
=
{
waitPending
:
'待处理'
,
pending
:
'处理中'
,
finish
:
'处理完成'
}
export
default
{
components
:
{
noData
},
data
()
{
return
{
maintenanceList
:
[]
...
...
@@ -51,7 +55,7 @@
});
},
async
getList
()
{
let
{
result
}
=
await
getCommunityComplaintListApi
(
{
userId
:
getApp
().
globalData
.
houseInfo
.
id
}
)
let
{
result
}
=
await
getCommunityComplaintListApi
()
this
.
maintenanceList
=
result
.
records
.
map
(
item
=>
{
return
{
...
item
,
...
...
@@ -75,13 +79,9 @@
}
</
style
>
<
style
lang=
"scss"
scoped
>
.
page
{
.
complaints
{
padding
:
30rpx
30rpx
90rpx
;
background-color
:
#F8F6F9
;
}
.complaints
{
.information
{
background-color
:
#ffffff
;
border-radius
:
16rpx
;
...
...
pages/complaintsAdd/index.vue
浏览文件 @
c3c176e7
...
...
@@ -69,28 +69,27 @@
},
methods
:
{
async
toAudit
()
{
// let complaintImg = this.formData.complaintImg.map(item=>item.url).join(',')
// let data =await addCommunityComplaintApi({
// ...this.formData,
// complaintImg,
// userId: getApp().globalData.houseInfo.id
// })
// getApp().globalData.complaintInfo = {
// ...this.formData,
// complaintImg,
// repairStatus: 'waitAudit'
// }
// setTimeout(()=> {
// uni.showToast({
// title: '提交成功!',
// icon: 'none'
// });
// setTimeout(()=> {
let
complaintImg
=
this
.
formData
.
complaintImg
.
map
(
item
=>
item
.
url
).
join
(
','
)
let
data
=
await
addCommunityComplaintApi
({
...
this
.
formData
,
complaintImg
})
getApp
().
globalData
.
complaintInfo
=
{
...
this
.
formData
,
complaintImg
,
repairStatus
:
'waitAudit'
}
setTimeout
(()
=>
{
uni
.
showToast
({
title
:
'提交成功!'
,
icon
:
'none'
});
setTimeout
(()
=>
{
uni
.
navigateTo
({
url
:
'/pages/complaintsDetail/index'
,
});
//
}, 1500)
//
}, 30)
},
1500
)
},
30
)
},
uploadImage
(
path
)
{
return
new
Promise
((
resolve
,
reject
)
=>
{
...
...
pages/complaintsDetail/index.vue
浏览文件 @
c3c176e7
...
...
@@ -3,7 +3,7 @@
<view
class=
"page"
>
<view
class=
"complaints"
>
<view
class=
"information"
>
<view
class=
"title"
>
{{
complaintsDetail
.
complaintThem
||
''
}}
</view>
<view
class=
"title"
>
{{
complaintsDetail
.
complaintThem
e
||
''
}}
</view>
<view
class=
"content"
>
<view
class=
"item"
>
<view
class=
"name"
>
投诉人
</view>
...
...
@@ -55,7 +55,7 @@
data
()
{
return
{
complaintsDetail
:
{
complaintThem
:
''
,
complaintThem
e
:
''
,
userName
:
''
,
userPhone
:
''
,
problemDesc
:
''
,
...
...
pages/home/index.vue
浏览文件 @
c3c176e7
<
template
>
<view
class=
"container"
style=
"background-image: url('../../static/images/bg_home.png');"
>
<view
class=
"container"
>
<view
class=
"page"
:style=
"
{'padding-top': statusBarHeight + 'px'}">
<view
class=
"nav-top-box"
@
click=
"toCommunity()"
>
<view
class=
"nav-top"
v-if=
"houseInfo.platformName"
>
<view
class=
"title"
>
{{
houseInfo
.
platformName
}}
</view>
<image
v-if=
"
houseList.length > 1
"
mode=
"aspectFill"
src=
"../../static/images/icon_up.png"
class=
"icon"
></image>
<image
v-if=
"
canChange
"
mode=
"aspectFill"
src=
"../../static/images/icon_up.png"
class=
"icon"
></image>
</view>
</view>
<view
class=
"banner"
>
...
...
@@ -23,11 +23,12 @@
</swiper-item>
</swiper>
</view>
<template
v-if=
"userType === '1'"
>
<view
class=
"quick-entry"
>
<view
class=
"item"
@
click=
"quickEntry(1)"
>
<view
class=
"item-img"
>
<image
src=
"../../static/images/quick01.png"
class=
"icon"
></image>
<view
class=
"num"
>
{{
communityInfo
.
noticeNotRead
}}
</view>
<view
v-if=
"communityInfo.noticeNotRead"
class=
"num"
>
{{
communityInfo
.
noticeNotRead
}}
</view>
</view>
<text>
我的消息
</text>
</view>
...
...
@@ -38,7 +39,7 @@
<view
class=
"item"
@
click=
"quickEntry(3)"
>
<view
class=
"item-img"
>
<image
src=
"../../static/images/quick03.png"
class=
"icon"
></image>
<view
class=
"num"
>
{{
communityInfo
.
notPay
}}
</view>
<view
v-if=
"communityInfo.notPay"
class=
"num"
>
{{
communityInfo
.
notPay
}}
</view>
</view>
<text>
生活缴费
</text>
</view>
...
...
@@ -59,7 +60,8 @@
<text>
缴纳物业费
</text>
</view>
</view>
<view
v-if=
"communityInfo.adminPhone"
class=
"housekeeper"
style=
"background-image: url('../../static/images/bg_guanjia.png');"
>
<!--
<view
v-if=
"communityInfo.adminPhone"
class=
"housekeeper"
style=
"background-image: url('../../static/images/bg_guanjia.png');"
>
-->
<view
v-if=
"communityInfo.adminPhone"
class=
"housekeeper"
>
<view
class=
"information"
>
<image
:src=
"communityInfo.adminAvatar"
class=
"icon"
></image>
<view
class=
"title"
>
...
...
@@ -72,6 +74,20 @@
<text>
{{
communityInfo
.
adminPhone
}}
</text>
</view>
</view>
<!--
<view
class=
"housekeeper"
>
<view
class=
"information"
>
<image
src=
"../../static/images/img01.png"
class=
"icon"
></image>
<view
class=
"title"
>
<text
class=
"name"
>
王一一
</text>
<text
class=
"about"
>
您的专属管家
</text>
</view>
</view>
<view
class=
"phone"
>
<image
src=
"../../static/images/icon_phone.png"
class=
"icon"
></image>
<text>
159-2546-5285
</text>
</view>
</view>
-->
<view
v-if=
"noticeList.length"
class=
"news"
>
<view
class=
"title"
>
...
...
@@ -88,6 +104,30 @@
</view>
</view>
</view>
</
template
>
<view
v-if=
"userType === '2'"
class=
"news"
>
<view
class=
"title"
>
<text>
社区活动公告
</text>
<image
src=
"../../static/images/icon_more.png"
class=
"icon"
></image>
</view>
<view
class=
"list"
>
<view
class=
"item"
@
click=
"toDetails(2)"
>
<image
src=
"../../static/images/img02.png"
class=
"icon"
></image>
<view
class=
"con"
>
<view
class=
"name"
>
开展民族团结进步创建进社区 活动
</view>
<view
class=
"time"
>
物业服务中心 2020/09/08
</view>
</view>
</view>
<view
class=
"item"
@
click=
"toDetails(2)"
>
<image
src=
"../../static/images/img03.png"
class=
"icon"
></image>
<view
class=
"con"
>
<view
class=
"name"
>
开展民族团结进步创建进社区 活动
</view>
<view
class=
"time"
>
物业服务中心 2020/09/08
</view>
</view>
</view>
</view>
</view>
<authorization-modal
ref=
"authorization"
@
loginEnd=
"onLoginEnd"
@
refuse=
"onRefuse"
/>
</view>
...
...
@@ -111,6 +151,7 @@
data
()
{
return
{
statusBarHeight
:
24
,
userType
:
'0'
,
// 1:业主,2:维修员
houseList
:
[],
// 审核通过的小区列表
waitList
:
[],
// 待审核或已驳回列表
...
...
@@ -122,7 +163,9 @@
communityInfo
:
{},
// isLogin: false,
messageList
:
[],
messageList
:
[{
noticeContent
:
'紧急通知!!! 所有居民请于下午3点于张湾广场'
}],
noticeList
:
[]
}
},
...
...
@@ -138,6 +181,9 @@
},
isRefuse
()
{
return
this
.
waitList
.
some
(
item
=>
item
.
auditStatus
===
'refuse'
)
},
canChange
()
{
return
this
.
houseList
.
length
>
1
}
},
methods
:
{
...
...
@@ -282,25 +328,58 @@
let
phone
=
uni
.
getStorageSync
(
'user_phone'
)
let
{
result
}
=
await
queryCommunityRoomByUnitIdApi
({
openId
,
phone
})
if
(
result
)
{
let
data
=
result
.
communityOwners
if
(
data
.
length
)
{
let
houseList
=
data
.
filter
(
item
=>
item
.
auditStatus
===
'auditPass'
)
let
houseData
=
result
.
communityOwners
if
(
houseData
.
length
)
{
this
.
userType
=
'1'
uni
.
setStorageSync
(
'user_type'
,
'1'
)
let
houseList
=
houseData
.
filter
(
item
=>
item
.
auditStatus
===
'auditPass'
)
if
(
houseList
.
length
)
{
let
house_id
=
uni
.
getStorageSync
(
'house_id'
)
if
(
house_id
)
{
let
houseKey
=
houseList
.
findIndex
(
item
=>
item
.
id
===
house_id
)
uni
.
setStorageSync
(
'user_name'
,
houseList
[
0
].
residentName
)
let
house_code
=
uni
.
getStorageSync
(
'house_code'
)
if
(
house_code
)
{
let
houseKey
=
houseList
.
findIndex
(
item
=>
item
.
id
===
house_code
)
this
.
houseKey
=
houseKey
===
-
1
?
0
:
houseKey
}
this
.
houseList
=
houseList
getApp
().
globalData
.
houseInfo
=
{
id
:
this
.
houseList
[
this
.
houseKey
].
id
,
platformCode
:
this
.
houseList
[
this
.
houseKey
].
platformCode
this
.
houseList
=
houseList
.
map
(
item
=>
{
return
{
id
:
item
.
id
,
platformCode
:
item
.
platformCode
,
platformName
:
item
.
platformName
}
})
uni
.
setStorageSync
(
'user_house_list'
,
JSON
.
stringify
(
this
.
houseList
))
uni
.
setStorageSync
(
'platform_code'
,
this
.
houseList
[
this
.
houseKey
].
platformCode
)
this
.
getCommunityInfo
()
this
.
getAdvertisement
()
}
this
.
waitList
=
data
.
filter
(
item
=>
item
.
auditStatus
!==
'auditPass'
)
this
.
waitList
=
houseData
.
filter
(
item
=>
item
.
auditStatus
!==
'auditPass'
)
}
if
(
result
.
employeeVos
)
{
uni
.
setStorageSync
(
'employee_name'
,
result
.
employeeVos
.
employeeName
)
let
employeeData
=
result
.
employeeVos
.
comList
this
.
houseList
=
employeeData
.
map
(
item
=>
{
return
{
platformCode
:
item
.
comCode
,
platformName
:
item
.
comName
}
})
uni
.
setStorageSync
(
'employee_house_list'
,
JSON
.
stringify
(
this
.
houseList
))
if
(
houseData
.
length
===
0
)
{
this
.
userType
=
'2'
uni
.
setStorageSync
(
'user_type'
,
'2'
)
let
house_code
=
uni
.
getStorageSync
(
'house_code'
)
if
(
house_code
)
{
let
houseKey
=
employeeData
.
findIndex
(
item
=>
item
.
id
===
house_code
)
this
.
houseKey
=
houseKey
===
-
1
?
0
:
houseKey
}
else
{
this
.
houseKey
=
0
}
uni
.
setStorageSync
(
'platform_code'
,
this
.
houseList
[
this
.
houseKey
].
platformCode
)
this
.
getCommunityInfo
()
this
.
getAdvertisement
()
}
}
if
(
houseData
.
length
===
0
&&
!
result
.
employeeVos
)
{
this
.
neverRegister
=
true
}
}
...
...
@@ -339,10 +418,26 @@
const
menuButton
=
wx
.
getMenuButtonBoundingClientRect
()
this
.
statusBarHeight
=
menuButton
.
top
this
.
getPropertyAdv
()
//
this.getPropertyLogin()
this
.
getPropertyLogin
()
if
(
this
.
isLogin
)
{
let
platformCode
=
uni
.
getStorageSync
(
'platform_code'
)
if
(
platformCode
)
{
let
type
=
uni
.
getStorageSync
(
'user_type'
)
let
data
=
type
===
'1'
?
uni
.
getStorageSync
(
'user_house_list'
)
:
uni
.
getStorageSync
(
'employee_house_list'
)
this
.
houseList
=
JSON
.
parse
(
data
)
let
houseKey
=
this
.
houseList
.
findIndex
(
item
=>
item
.
platformCode
===
platformCode
)
this
.
houseKey
=
houseKey
if
(
type
===
'1'
)
{
this
.
userType
=
'1'
this
.
getCommunityInfo
()
}
else
{
this
.
userType
=
'2'
}
this
.
getAdvertisement
()
}
else
{
// 已注册,但首次进入
this
.
getUserInfo
()
}
}
},
onPullDownRefresh
()
{
...
...
@@ -360,6 +455,7 @@
background-position
:
top
center
;
background-repeat
:
no-repeat
;
background-size
:
cover
;
background-image
:
url('http://192.168.0.118:9999/sys/common/static/scott/pic/bg_home_1686729455023.png')
;
}
.page
{
...
...
@@ -454,8 +550,8 @@
.num
{
position
:
absolute
;
top
:
-
10
px
;
right
:
-
10
px
;
top
:
-
5
px
;
right
:
-
5
px
;
font-size
:
20rpx
;
color
:
#FFFFFF
;
padding
:
4rpx
8rpx
;
...
...
@@ -488,6 +584,7 @@
background-position
:
top
center
;
background-repeat
:
no-repeat
;
background-size
:
cover
;
background-image
:
url('http://192.168.0.118:9999/sys/common/static/scott/pic/bg_guanjia_1686729699631.png')
;
padding
:
20rpx
30rpx
;
margin
:
30rpx
0
;
...
...
pages/maintenance/index.vue
浏览文件 @
c3c176e7
<
template
>
<view
class=
"container"
>
<view
class=
"page"
>
<view
class=
"maintenance"
>
<view
class=
"maintenance"
v-if=
"maintenanceList.length !== 0"
>
<view
class=
"information"
v-for=
"item in maintenanceList"
:key=
"item.id"
@
click=
"onDetail(item.id)"
>
<view
class=
"title"
:class=
"item.color"
>
{{
item
.
repairTitle
}}
<view
class=
"tag"
>
{{
item
.
statusName
}}
</view>
</view>
...
...
@@ -20,7 +20,7 @@
</view>
</view>
</view>
<view
class=
"information"
@
click=
"toDetails()"
>
<
!--
<
view
class=
"information"
@
click=
"toDetails()"
>
<view
class=
"title gray"
>
浴霸不出水了
<view
class=
"tag"
>
已评价
</view><view
class=
"tag"
>
已完成
</view>
</view>
<view
class=
"content"
>
...
...
@@ -49,8 +49,9 @@
<view
class=
"detail"
><uni-rate
:value=
"4"
:size=
"20"
/></view>
</view>
</view>
</view>
-->
</view>
<
/view
>
<
no-data
:show=
"maintenanceList.length === 0"
text=
"暂无报修信息"
></no-data
>
</view>
<view
class=
"form-submit-fixed"
>
<view
class=
"form-submit"
@
click=
"toEditor()"
>
维修上报
</view>
...
...
@@ -59,32 +60,21 @@
</
template
>
<
script
>
import
{
getCommunityRepairListApi
,
}
from
'@/config/api.js'
import
{
getCommunityRepairListApi
}
from
'@/config/api.js'
import
noData
from
'@/components/no-data/no-data'
let
statusList
=
{
waitAudit
:
{
name
:
'待审核'
,
color
:
'green'
},
waitDispatch
:
{
name
:
'待派单'
,
color
:
'yellow'
},
inRepair
:
{
name
:
'维修中'
,
color
:
'blue'
},
finish
:
{
name
:
'已完成'
,
color
:
'gray'
},
refuse
:
{
name
:
'审核驳回'
,
color
:
'red'
}
initiateWaitAudit
:
{
name
:
'待维修'
,
color
:
'green'
},
waitDispatch
:
{
name
:
'待维修'
,
color
:
'green'
},
waitReceive
:
{
name
:
'待维修'
,
color
:
'green'
},
initiateRefuse
:
{
name
:
'已驳回'
,
color
:
'red'
},
finishRefuse
:
{
name
:
'已驳回'
,
color
:
'red'
},
inRepair
:
{
name
:
'维修中'
,
color
:
'blue'
},
finishWaitAudit
:
{
name
:
'维修中'
,
color
:
'blue'
},
finishAuditPass
:
{
name
:
'已完成'
,
color
:
'gray'
}
// waitDispatch: { name: '待派单', color: 'yellow' }
}
export
default
{
components
:
{
noData
},
data
()
{
return
{
maintenanceList
:
[]
...
...
@@ -97,7 +87,7 @@ export default {
});
},
async
getList
()
{
let
{
result
}
=
await
getCommunityRepairListApi
(
{
ownerId
:
getApp
().
globalData
.
houseInfo
.
id
}
)
let
{
result
}
=
await
getCommunityRepairListApi
()
this
.
maintenanceList
=
result
.
records
.
map
(
item
=>
{
return
{
...
item
,
...
...
@@ -126,13 +116,9 @@ export default {
}
</
style
>
<
style
lang=
"scss"
scoped
>
.
pag
e
{
.
maintenanc
e
{
padding
:
30rpx
30rpx
90rpx
;
background-color
:
#F8F6F9
;
}
.maintenance
{
.information
{
background-color
:
#ffffff
;
...
...
pages/maintenanceAdd/index.vue
浏览文件 @
c3c176e7
...
...
@@ -6,26 +6,26 @@
<uni-forms>
<view
class=
"form-item"
>
<view
class=
"form-item-fl"
>
<view
class=
"asterisk"
>
*
</view>
报修位置
<view
class=
"asterisk"
>
</view>
标题
</view>
<view
class=
"form-item-fr"
>
<input
class=
"form-item-tit"
v-model=
"formData.repair
Address"
focus
placeholder=
"请输入报修位置
"
/>
<input
class=
"form-item-tit"
v-model=
"formData.repair
Title"
placeholder=
"请输入标题
"
/>
</view>
</view>
<view
class=
"form-item"
>
<view
class=
"form-item-fl"
>
<view
class=
"asterisk"
>
*
</view>
报修
物品
<view
class=
"asterisk"
>
*
</view>
报修
位置
</view>
<view
class=
"form-item-fr"
>
<input
class=
"form-item-tit"
v-model=
"formData.repairA
rticle"
placeholder=
"请输入报修物品
"
/>
<input
class=
"form-item-tit"
v-model=
"formData.repairA
ddress"
focus
placeholder=
"请输入报修位置
"
/>
</view>
</view>
<view
class=
"form-item"
>
<view
class=
"form-item-fl"
>
<view
class=
"asterisk"
>
</view>
标题
<view
class=
"asterisk"
>
*
</view>
报修物品
</view>
<view
class=
"form-item-fr"
>
<input
class=
"form-item-tit"
v-model=
"formData.repair
Title"
placeholder=
"请输入标题
"
/>
<input
class=
"form-item-tit"
v-model=
"formData.repair
Article"
placeholder=
"请输入报修物品
"
/>
</view>
</view>
<!--
<view
class=
"form-item"
>
...
...
@@ -87,26 +87,23 @@
return
{
isPageEdit
:
false
,
formData
:
{
repairAddress
:
''
,
repairArticle
:
''
,
repairTitle
:
''
,
ownerPhone
:
''
,
repairTitle
:
'上报小区垃圾桶太少'
,
repairAddress
:
'10栋一单元101'
,
repairArticle
:
'垃圾桶'
,
reservationTime
:
''
,
repairDesc
:
''
,
ownerPhone
:
'13109890986'
,
repairDesc
:
'啥都好说SDK房价是SDK积分是'
,
repairPhoto
:
[]
},
}
},
methods
:
{
async
toAudit
()
{
console
.
log
(
new
Moment
(
this
.
formData
.
reservationTime
,
'YYYY-MM-DD HH-mm'
))
return
let
repairPhoto
=
this
.
formData
.
repairPhoto
.
map
(
item
=>
item
.
url
).
join
(
','
)
if
(
this
.
isPageEdit
)
{
// 编辑
let
data
=
await
editCommunityRepairApi
({
let
data
=
await
editCommunityRepairApi
({
...
this
.
formData
,
repairPhoto
,
ownerId
:
getApp
().
globalData
.
houseInfo
.
id
repairPhoto
})
// getApp().globalData.maintenanceInfo = {
// ...this.formData,
...
...
@@ -126,10 +123,9 @@
// }, 1500)
// }, 30)
}
else
{
let
data
=
await
addCommunityRepairApi
({
let
data
=
await
addCommunityRepairApi
({
...
this
.
formData
,
repairPhoto
,
ownerId
:
getApp
().
globalData
.
houseInfo
.
id
repairPhoto
})
// getApp().globalData.maintenanceInfo = {
// ...this.formData,
...
...
pages/mine/index.vue
浏览文件 @
c3c176e7
<
template
>
<view
class=
"container"
>
<view
class=
"page"
>
<view
class=
"user"
style=
"background-image: url('../../static/images/bg_mine.png');"
>
<!--
<view
class=
"user"
style=
"background-image: url('../../static/images/bg_mine.png');"
>
-->
<view
class=
"user"
>
<image
src=
"../../static/images/img01.png"
class=
"icon"
></image>
<view
class=
"name"
>
林二
</view>
<view
class=
"phone"
>
15245214563
</view>
<view
class=
"name"
>
{{
userName
}}
</view>
<view
class=
"phone"
>
{{
userPhone
}}
</view>
</view>
<view
class=
"service"
>
<view
class=
"item"
@
click=
"quickEntry(1)"
>
...
...
@@ -49,14 +50,14 @@
</view>
<image
src=
"../../static/images/icon_more.png"
class=
"arrow"
></image>
</view>
<view
class=
"item"
@
click=
"quickEntry(7)"
>
<view
v-if=
"isUser && userType === '2'"
class=
"item"
@
click=
"quickEntry(7)"
>
<view
class=
"left"
>
<image
src=
"../../static/images/user07.png"
class=
"icon"
></image>
<div
class=
"title"
>
切换
物业公司
</div>
<div
class=
"title"
>
切换
业主
</div>
</view>
<image
src=
"../../static/images/icon_more.png"
class=
"arrow"
></image>
</view>
<view
class=
"item"
@
click=
"quickEntry(8)"
>
<view
v-if=
"isEmployee && userType === '1'"
class=
"item"
@
click=
"quickEntry(8)"
>
<view
class=
"left"
>
<image
src=
"../../static/images/user08.png"
class=
"icon"
></image>
<div
class=
"title"
>
维修员
</div>
...
...
@@ -72,7 +73,17 @@
export
default
{
data
()
{
return
{
userType
:
'0'
,
userName
:
''
,
userPhone
:
''
,
}
},
computed
:
{
isUser
()
{
return
!!
uni
.
getStorageSync
(
'user_house_list'
)
},
isEmployee
()
{
return
!!
uni
.
getStorageSync
(
'employee_house_list'
)
}
},
methods
:
{
...
...
@@ -105,14 +116,50 @@
url
:
'/pages/myReceipt/index'
,
});
}
else
if
(
type
==
7
)
{
uni
.
navigateTo
({
url
:
'/pages/community/index'
,
const
that
=
this
uni
.
showModal
({
title
:
'提示'
,
content
:
'确认切换到业主吗?'
,
success
:
function
(
res
)
{
if
(
res
.
confirm
)
{
that
.
onChangeEmployee
(
'1'
)
}
else
if
(
res
.
cancel
)
{
console
.
log
(
'用户点击取消'
);
}
}
});
}
else
{
const
that
=
this
uni
.
showModal
({
title
:
'提示'
,
content
:
'确认切换到维修员吗?'
,
success
:
function
(
res
)
{
if
(
res
.
confirm
)
{
that
.
onChangeEmployee
(
'2'
)
}
else
if
(
res
.
cancel
)
{
console
.
log
(
'用户点击取消'
);
}
}
});
}
},
onChangeEmployee
(
type
)
{
let
data
=
JSON
.
parse
(
uni
.
getStorageSync
(
'employee_house_list'
))
uni
.
setStorageSync
(
'platform_code'
,
data
[
0
].
platformCode
)
uni
.
setStorageSync
(
'user_type'
,
type
)
uni
.
reLaunch
({
url
:
'/pages/home/index'
})
}
},
onLoad
()
{
this
.
userType
=
uni
.
getStorageSync
(
'user_type'
)
this
.
userPhone
=
uni
.
getStorageSync
(
'user_phone'
)
if
(
this
.
userType
===
'1'
)
{
this
.
userName
=
uni
.
getStorageSync
(
'user_name'
)
}
else
{
this
.
userName
=
uni
.
getStorageSync
(
'employee_name'
)
}
},
onShow
()
{
...
...
@@ -130,6 +177,7 @@
}
.user
{
background-image
:
url('http://192.168.0.118:9999/sys/common/static/scott/pic/bg_mine_1686729855474.png')
;
background-position
:
top
center
;
background-repeat
:
no-repeat
;
background-size
:
cover
;
...
...
static/images/banner.png
deleted
100644 → 0
浏览文件 @
04516444
96.1 KB
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论