Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
aixianling
2022-02-11 17:11:34 +08:00
21 changed files with 578 additions and 347 deletions

View File

@@ -171,12 +171,17 @@ uni-page-body {
font-family: PingFang-SC-Heavy, PingFang-SC; font-family: PingFang-SC-Heavy, PingFang-SC;
font-weight: 800; font-weight: 800;
color: #333333; color: #333333;
display: inline-block;
width: 140px;
vertical-align: top;
} }
.boxesRight { .boxesRight {
margin-left: 40px; margin-left: 40px;
font-size: 28px; font-size: 28px;
font-family: PingFangSC-Regular, PingFang SC; font-family: PingFangSC-Regular, PingFang SC;
color: #666666; color: #666666;
display: inline-block;
width: calc(100% - 200px);
} }
} }
} }

View File

@@ -550,12 +550,13 @@ export default {
this.flag = false; this.flag = false;
if (res.code == 0) { if (res.code == 0) {
uni.$emit("update"); uni.$emit("update");
this.$u.toast("提交成功");
setTimeout(() => { setTimeout(() => {
uni.navigateBack(); uni.navigateTo({url: './Success?status=1'})
}, 400); }, 400);
} }
}); }).catch(() => {
uni.navigateTo({url: './Success?status=0'})
})
}, },
}, },
}; };

View File

@@ -0,0 +1,68 @@
<template>
<div class="success">
<img src="./components/img/success.png" alt="" v-if="status">
<img src="./components/img/fail.png" alt="" v-else>
<p>{{status ? '上报成功!' : '上报失败!'}}</p>
<div class="footer">{{status ? '确定' : '我知道了'}}</div>
</div>
</template>
<script>
import { mapState } from 'vuex'
export default {
data() {
return {
status: 1
}
},
onShow() {
document.title = '返乡登记'
},
onLoad(option) {
this.status = option.status
},
methods: {
back() {
uni.navigateBack({delta: 2})
}
},
}
</script>
<style lang="scss" scoped>
uni-page-body{
height: 100%;
background-color: #fff;
}
.success {
text-align: center;
img{
width: 192px;
height: 192px;
margin: 96px 0 16px 0;
}
p{
line-height: 50px;
color: #333;
font-size: 36px;
font-weight: 500;
text-align: center;
margin-bottom: 72px;
}
.footer{
width: calc(100% - 96px);
height: 88px;
line-height: 88px;
background: #1365DD;
box-shadow: inset 0px 1px 0px 0px #EEEEEE;
font-size: 32px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #FFF;
text-align: center;
border-radius: 8px;
margin-left: 48px;
}
}
</style>

View File

@@ -281,7 +281,7 @@ export default {
color: #f46; color: #f46;
} }
.color-2{ .color-2{
color: #1365DD; color: #f46;
} }
} }
.img-list{ .img-list{

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -3,7 +3,7 @@
<search-map v-if="show && isAdmin"/> <search-map v-if="show && isAdmin"/>
<div v-if="!isAdmin" class="empty"> <div v-if="!isAdmin" class="empty">
<img src="https://cdn.cunwuyun.cn/dvcp/h5/no-data.png" alt=""> <img src="https://cdn.cunwuyun.cn/dvcp/h5/no-data.png" alt="">
<p>没有网格员/网格长权限<br/>无法查看楼栋信息哦~</p> <p>没有网格员权限<br/>无法查看楼栋信息哦~</p>
</div> </div>
</div> </div>
</template> </template>
@@ -35,7 +35,7 @@ export default {
this.isAdmin = false this.isAdmin = false
this.$http.post('/app/appgirdmemberinfo/checkLogOnUser').then((res) => { this.$http.post('/app/appgirdmemberinfo/checkLogOnUser').then((res) => {
if (res.code == 0) { if (res.code == 0) {
if (res.data.checkType == '2') { if (res.data.checkType != '0') {
this.isAdmin = true this.isAdmin = true
} }
} }

View File

@@ -47,13 +47,13 @@
</div> </div>
<div class="info-flex"> <div class="info-flex">
<span class="label">所属网格</span> <span class="label">所属网格</span>
<span class="value" v-if="detailInfo.gird && detailInfo.gird.girdName">{{ detailInfo.gird.girdName || '' }}</span> <span class="value" v-if="detailInfo.build && detailInfo.build.appGirdInfo">{{ detailInfo.build.appGirdInfo.girdName || '' }}</span>
</div> </div>
<div class="info-flex"> <div class="info-flex">
<span class="label">网格管理员</span> <span class="label">网格管理员</span>
<span class="value" v-if="detailInfo.gird && detailInfo.gird.girdMemberNames && detailInfo.gird.girdMemberNames.length"> <span class="value" v-if="detailInfo.build.appGirdInfo && detailInfo.build.appGirdInfo.girdMemberNames && detailInfo.build.appGirdInfo.girdMemberNames.length">
<span v-for="(item, index) in detailInfo.gird.girdMemberNames" :key="index"> <span v-for="(item, index) in detailInfo.build.appGirdInfo.girdMemberNames" :key="index">
<AiOpenData v-if="item" type="userName" :openid="item" style="display:inline-block;" /><span v-if="index<detailInfo.gird.girdMemberNames.length-1">,</span> <AiOpenData v-if="item" type="userName" :openid="item" style="display:inline-block;" /><span v-if="index<detailInfo.build.appGirdInfo.girdMemberNames.length-1">,</span>
</span> </span>
</span> </span>
</div> </div>
@@ -337,12 +337,15 @@ export default {
getBuildingInfo(item) { getBuildingInfo(item) {
this.$http.post(`/app/appcommunityhouseinfo/queryDetailByIdWithBuilding?buildId=${item.buildingId}&houseId=${item.id}`).then(res => { this.$http.post(`/app/appcommunityhouseinfo/queryDetailByIdWithBuilding?buildId=${item.buildingId}&houseId=${item.id}`).then(res => {
if (res?.data) { if (res?.data) {
this.detailInfo = {...res.data}
console.log(this.detailInfo)
if(this.detailInfo.build.appGirdInfo.girdMemberNames && this.detailInfo.build.appGirdInfo.girdMemberNames) {
this.detailInfo.build.appGirdInfo.girdMemberNames = this.detailInfo.build.appGirdInfo.girdMemberNames.split(',')
}
this.show = false this.show = false
this.showPop = true this.showPop = true
this.detailInfo = {...res.data}
if(this.detailInfo.gird && this.detailInfo.gird.girdMemberNames) {
this.detailInfo.gird.girdMemberNames = this.detailInfo.gird.girdMemberNames.split(',')
}
} }
}) })
}, },

View File

@@ -23,13 +23,13 @@
<div class="titles">{{ item.content }}</div> <div class="titles">{{ item.content }}</div>
<div class="types"> <div class="types">
<span>事件类型</span> <span class="label label1">事件类型</span>
<span class="types-right">{{ item.groupName }}</span> <span class="types-right">{{ item.groupName }}</span>
</div> </div>
<div class="gards"> <div class="gards gird">
<span>所属网格</span> <div class="label">所属网格</div>
<span class="gards-right">{{ item.girdName }}</span> <div class="gards-right">{{ item.girdName }}</div>
</div> </div>
</div> </div>
@@ -45,8 +45,7 @@
<AiEmpty v-if="!datas.length"></AiEmpty> <AiEmpty v-if="!datas.length"></AiEmpty>
</template> </template>
<u-select v-model="showGird" :list="$dict.getDict('clapEventStatusAll')" label-name="dictName" value-name="dictValue" <u-select v-model="showGird" :list="$dict.getDict('clapEventStatusAll')" label-name="dictName" value-name="dictValue" @confirm="changeType" />
@confirm="changeType"/>
<div class="pad-b120" v-if="datas.length"></div> <div class="pad-b120" v-if="datas.length"></div>
</div> </div>
@@ -80,22 +79,22 @@ export default {
staticName: [ staticName: [
{ {
label: '待处理', label: '待处理',
value: 0 value: 0,
}, },
{ {
label: '上报数', label: '上报数',
value: 0 value: 0,
}, },
{ {
label: '已办数', label: '已办数',
value: 0 value: 0,
}, },
{ {
label: '今日办结', label: '今日办结',
value: 0 value: 0,
} },
], ],
statisticsList: [] statisticsList: [],
} }
}, },
computed: { computed: {
@@ -117,7 +116,6 @@ export default {
this.current = 1 this.current = 1
this.getList() this.getList()
}) })
}, },
onShow() { onShow() {
document.title = '矛盾调解' document.title = '矛盾调解'
@@ -141,7 +139,8 @@ export default {
current: this.current, current: this.current,
searchType: this.currentTabs == 1 ? '1' : '0', searchType: this.currentTabs == 1 ? '1' : '0',
eventStatus: this.eventStatus, eventStatus: this.eventStatus,
girdId: this.girdId girdId: this.girdId,
openId: this.eventStatus == 4 ? this.user.openId : '',
}, },
}) })
.then((res) => { .then((res) => {
@@ -171,9 +170,14 @@ export default {
}, },
// 切换类型 // 切换类型
changeType(e) { changeType(e) {
// if (e[0].value != 1) {
this.status = e[0].label this.status = e[0].label
this.datas = []
this.eventStatus = e[0].value this.eventStatus = e[0].value
// } else {
// this.eventStatus = 4
// }
this.current = 1
this.datas = []
this.getList() this.getList()
}, },
@@ -183,7 +187,8 @@ export default {
}, },
girdList() { girdList() {
this.$http.post(`/app/appgirdmemberinfo/queryMyGirdListWithOut01`, null, { this.$http
.post(`/app/appgirdmemberinfo/queryMyGirdListWithOut01`, null, {
params: { params: {
size: 9999, size: 9999,
}, },
@@ -193,7 +198,7 @@ export default {
this.myGirdList = res.data this.myGirdList = res.data
var all = { var all = {
id: '', id: '',
girdName: '全部' girdName: '全部',
} }
this.myGirdList.unshift(all) this.myGirdList.unshift(all)
} }
@@ -254,7 +259,7 @@ uni-page-body {
.content-list { .content-list {
display: flex; display: flex;
background: #FFFFFF; background: #ffffff;
border-radius: 16px; border-radius: 16px;
margin-bottom: 20px; margin-bottom: 20px;
width: 100%; width: 100%;
@@ -269,7 +274,7 @@ uni-page-body {
h3 { h3 {
font-size: 64px; font-size: 64px;
color: #1E88E8; color: #1e88e8;
} }
p { p {
@@ -334,6 +339,9 @@ uni-page-body {
margin-left: 32px; margin-left: 32px;
color: #333333; color: #333333;
} }
.label1 {
margin-right: 12px;
}
} }
} }
@@ -379,6 +387,18 @@ uni-page-body {
} }
} }
.gird {
display: flex;
.label {
width: 120px;
vertical-align: top;
}
.gards-right {
width: calc(100% - 120px);
}
}
.addbtn { .addbtn {
position: fixed; position: fixed;
left: 0; left: 0;
@@ -387,9 +407,9 @@ uni-page-body {
height: 120px; height: 120px;
line-height: 120px; line-height: 120px;
text-align: center; text-align: center;
background-color: #3975C6; background-color: #3975c6;
font-size: 32px; font-size: 32px;
color: #FFFFFF; color: #ffffff;
} }
.pad-b120 { .pad-b120 {

View File

@@ -1,10 +1,9 @@
<template> <template>
<div class="SelectUser"> <div class="SelectUser">
<div class="header-middle"> <div class="header-middle">
<!-- 去掉网格名称 --> <div class="hint">
<!-- <div class="hint">
<span v-for="(item, index) in slectList" :key="index"><span v-if="index" style="margin:0 4px;">/</span><span style="color:#3F8DF5" @click="girdNameClick(item, index)">{{item.girdName}}</span></span> <span v-for="(item, index) in slectList" :key="index"><span v-if="index" style="margin:0 4px;">/</span><span style="color:#3F8DF5" @click="girdNameClick(item, index)">{{item.girdName}}</span></span>
</div> --> </div>
<div class="showTypes" v-if="!userList.length"> <div class="showTypes" v-if="!userList.length">
<div v-if="treeList.length > 0"> <div v-if="treeList.length > 0">
@@ -37,7 +36,7 @@
</div> </div>
<div class="rights"> <div class="rights">
<div class="applicationNames">{{ e.name }}</div> <div class="applicationNames"><AiOpenData v-if="e.name" type="userName" :openid="e.name" style="display: block;"/></div>
<div class="idNumbers">{{ e.phone }}</div> <div class="idNumbers">{{ e.phone }}</div>
</div> </div>
</div> </div>
@@ -209,7 +208,10 @@ export default {
box-shadow: 0px 1px 0px 0px #e4e5e6; box-shadow: 0px 1px 0px 0px #e4e5e6;
font-size: 30px; font-size: 30px;
font-weight: 500; font-weight: 500;
word-break: break-all; // word-break: break-all;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
} }
.showTypes { .showTypes {
@@ -223,13 +225,12 @@ export default {
align-items: center; align-items: center;
height: 120px; height: 120px;
line-height: 120px; line-height: 120px;
// background: pink;
padding: 0 0 0 32px; padding: 0 0 0 32px;
.imges { .imges {
display: flex; display: flex;
align-items: center; align-items: center;
// width: 200px;
.imgselect { .imgselect {
width: 48px; width: 48px;
height: 48px; height: 48px;
@@ -249,16 +250,21 @@ export default {
border-radius: 8px; border-radius: 8px;
} }
.rightes { .rightes {
width: 100%; width: calc(100% - 160px);
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
margin-left: 32px; margin-left: 32px;
border-bottom: 1px solid #e4e5e6; border-bottom: 1px solid #e4e5e6;
.applicationNames { .applicationNames {
max-width: calc(100% - 80px);
font-size: 36px; font-size: 36px;
font-weight: 500; font-weight: 500;
color: #333333; color: #333333;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
} }
.imgs { .imgs {
width: 40px; width: 40px;
@@ -275,7 +281,6 @@ export default {
align-items: center; align-items: center;
height: 120px; height: 120px;
line-height: 120px; line-height: 120px;
// background: pink;
padding: 0 0 0 32px; padding: 0 0 0 32px;
.imges { .imges {
@@ -296,7 +301,7 @@ export default {
} }
.rights { .rights {
width: 100%; width: 70%;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
@@ -307,6 +312,9 @@ export default {
font-size: 36px; font-size: 36px;
font-weight: 500; font-weight: 500;
color: #333333; color: #333333;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
} }
.idNumbers { .idNumbers {
color: #666; color: #666;

View File

@@ -18,7 +18,7 @@
<div class="form-item form-item__imgs"> <div class="form-item form-item__imgs">
<div class="form-item__wrapper"> <div class="form-item__wrapper">
<div class="form-item__title"> <div class="form-item__title">
<i style="opacity: 0;">*</i> <i style="opacity: 0">*</i>
<h2>图片上传</h2> <h2>图片上传</h2>
<span>(最多9张)</span> <span>(最多9张)</span>
</div> </div>
@@ -90,7 +90,7 @@
<h2>办理结果</h2> <h2>办理结果</h2>
</div> </div>
<div class="form-item__right"> <div class="form-item__right">
<textarea v-model="form.result" :maxlength="500" placeholder="请简要描述事件…"></textarea> <textarea v-model="form.result" :maxlength="500" placeholder="请输入办理结果信息"></textarea>
</div> </div>
</div> </div>
</div> </div>
@@ -99,7 +99,7 @@
<div class="form-item form-item__imgs"> <div class="form-item form-item__imgs">
<div class="form-item__wrapper"> <div class="form-item__wrapper">
<div class="form-item__title"> <div class="form-item__title">
<i style="opacity: 0;">*</i> <i style="opacity: 0">*</i>
<h2>图片上传</h2> <h2>图片上传</h2>
<span>(最多9张)</span> <span>(最多9张)</span>
</div> </div>
@@ -113,7 +113,6 @@
<div class="btn" @click="submit">上报</div> <div class="btn" @click="submit">上报</div>
<u-select v-model="showSelect" :list="girdList" label-name="girdName" value-name="id" @confirm="confirmSelect" /> <u-select v-model="showSelect" :list="girdList" label-name="girdName" value-name="id" @confirm="confirmSelect" />
</div> </div>
</template> </template>
@@ -137,7 +136,9 @@
result: '', result: '',
resultFiles: [], resultFiles: [],
opts: 1, opts: 1,
name: '' name: '',
lat: '',
lng: '',
}, },
dictList: [], dictList: [],
arr: [], arr: [],
@@ -147,7 +148,7 @@
}, },
computed: { computed: {
...mapState(['user']) ...mapState(['user']),
}, },
onLoad() { onLoad() {
@@ -162,8 +163,10 @@
uni.chooseLocation({ uni.chooseLocation({
success: (res) => { success: (res) => {
this.form.address = res.address this.form.address = res.address
} this.form.lat = res.latitude
}); this.form.lng = res.longitude
},
})
}, },
confirmSelect(e) { confirmSelect(e) {
@@ -176,12 +179,12 @@
}, },
getDict() { getDict() {
this.$http.post(`/app/appclapeventgroup/list`).then(res => { this.$http.post(`/app/appclapeventgroup/list`).then((res) => {
if (res.code == 0) { if (res.code == 0) {
this.dictList = res.data.records.map(v => { this.dictList = res.data.records.map((v) => {
return { return {
value: v.id, value: v.id,
label: v.groupName label: v.groupName,
} }
}) })
} }
@@ -195,7 +198,7 @@
}, },
getGirdList() { getGirdList() {
this.$http.post(`/app/appgirdmemberinfo/queryMyGirdListByLevel2AndUser`).then(res => { this.$http.post(`/app/appgirdmemberinfo/queryMyGirdListByLevel2AndUser`).then((res) => {
if (res.code == 0) { if (res.code == 0) {
this.arr = res.data this.arr = res.data
this.girdList = res.data this.girdList = res.data
@@ -244,27 +247,25 @@
if (this.flag) return if (this.flag) return
this.flag = true this.flag = true
this.$loading() this.$http
this.$http.post(`/app/appclapeventinfo/addOrUpdate`, { .post(`/app/appclapeventinfo/addOrUpdate?`, {
...this.form, ...this.form,
files: this.form.files, files: this.form.files,
groupName: this.dictList.filter(v => v.value === this.form.groupId)[0].label groupName: this.dictList.filter((v) => v.value === this.form.groupId)[0].label,
}).then(res => { eventStatus: this.form.opts == 0 ? '2' : '0',
this.$hideLoading() })
.then((res) => {
this.$u.toast('上报成功') this.$u.toast('上报成功')
this.flag = false this.flag = false
if (res.code == 0) { if (res.code == 0) {
uni.$emit('update') uni.$emit('update')
setTimeout(() => { setTimeout(() => {
uni.navigateTo({ uni.navigateBack()
url: './List'
})
}, 600) }, 600)
} }
this.$hideLoading()
}) })
} },
} },
} }
</script> </script>
@@ -292,7 +293,7 @@
justify-content: space-between; justify-content: space-between;
height: 128px; height: 128px;
padding-right: 28px; padding-right: 28px;
border-bottom: 1px solid #DDDDDD; border-bottom: 1px solid #dddddd;
input { input {
flex: 1; flex: 1;
@@ -306,7 +307,6 @@
align-items: center; align-items: center;
font-size: 32px; font-size: 32px;
span { span {
max-width: 400px; max-width: 400px;
margin-right: 8px; margin-right: 8px;
@@ -337,7 +337,7 @@
i { i {
font-size: 30px; font-size: 30px;
color: #FF4466; color: #ff4466;
} }
span { span {
@@ -353,8 +353,8 @@
} }
} }
&.form-item__imgs,
&.form-item__imgs, &.form-item__textarea { &.form-item__textarea {
.form-item__wrapper { .form-item__wrapper {
display: block; display: block;
height: auto; height: auto;
@@ -389,7 +389,7 @@
.report { .report {
height: 112px; height: 112px;
width: 45%; width: 45%;
background: #F5F5F5; background: #f5f5f5;
line-height: 112px; line-height: 112px;
text-align: center; text-align: center;
font-size: 30px; font-size: 30px;
@@ -407,10 +407,10 @@
bottom: 0; bottom: 0;
width: 100%; width: 100%;
height: 120px; height: 120px;
background: #3975C6; background: #3975c6;
line-height: 120px; line-height: 120px;
text-align: center; text-align: center;
color: #FFFFFF; color: #ffffff;
} }
} }
</style> </style>

View File

@@ -4,7 +4,8 @@
<div class="avatars" v-if="data.name">{{ data.name.substring(data.name.length, data.name.length - 2) }}</div> <div class="avatars" v-if="data.name">{{ data.name.substring(data.name.length, data.name.length - 2) }}</div>
<div class="right"> <div class="right">
<div class="names">{{ data.name }}的上报</div> <!-- {{ data.name }} -->
<div class="names"><AiOpenData v-if="data.name" type="userName" :openid="data.name" />的上报</div>
<div class="times">{{ data.createTime }}</div> <div class="times">{{ data.createTime }}</div>
</div> </div>
@@ -70,7 +71,8 @@
<div class="cardss-right"> <div class="cardss-right">
<div class="cardsss-right-left"> <div class="cardsss-right-left">
<div class="cardssss-right-left-top"> <div class="cardssss-right-left-top">
<span>{{ item.systemExplain }}</span> <!-- <span>{{ item.systemExplain }}</span> -->
<AiOpenData v-if="item.systemExplain" type="userName" :openid="item.systemExplain" />
<div style="color: #2ea222; font-size: 16px; margin-top: 5px"> <div style="color: #2ea222; font-size: 16px; margin-top: 5px">
{{ $dict.getLabel('clapDoStatus', item.doStatus) }} {{ $dict.getLabel('clapDoStatus', item.doStatus) }}
</div> </div>
@@ -108,6 +110,8 @@
</template> </template>
<script> <script>
import { mapState } from 'vuex'
export default { export default {
name: 'Detail', name: 'Detail',
components: {}, components: {},
@@ -120,7 +124,9 @@ export default {
showPage: false, showPage: false,
} }
}, },
computed: {}, computed: {
...mapState(['user']),
},
watch: {}, watch: {},
onLoad(o) { onLoad(o) {
this.$dict.load('realityStatus', 'clapDoStatus').then(() => { this.$dict.load('realityStatus', 'clapDoStatus').then(() => {
@@ -154,8 +160,8 @@ export default {
}, },
previewImage(images, img) { previewImage(images, img) {
uni.previewImage({ uni.previewImage({
urls: images.map(v => v.url), urls: images.map((v) => v.url),
current: img current: img,
}) })
}, },
}, },
@@ -314,7 +320,7 @@ uni-page-body {
} }
} }
.cardss-right { .cardss-right {
width: calc(100% - 110px); width: calc(100% - 184px);
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
.cardsss-right-left { .cardsss-right-left {

View File

@@ -0,0 +1,25 @@
<template>
<div class="myReply">1</div>
</template>
<script>
export default {
name: 'myReply',
components: {},
props: {},
data() {
return {}
},
computed: {},
watch: {},
onLoad() {},
onShow() {},
methods: {},
}
</script>
<style scoped lang="scss">
.myReply {
height: 100%;
}
</style>

View File

@@ -174,12 +174,17 @@ uni-page-body {
font-family: PingFang-SC-Heavy, PingFang-SC; font-family: PingFang-SC-Heavy, PingFang-SC;
font-weight: 800; font-weight: 800;
color: #333333; color: #333333;
display: inline-block;
width: 140px;
vertical-align: top;
} }
.boxesRight { .boxesRight {
margin-left: 40px; margin-left: 40px;
font-size: 28px; font-size: 28px;
font-family: PingFangSC-Regular, PingFang SC; font-family: PingFangSC-Regular, PingFang SC;
color: #666666; color: #666666;
display: inline-block;
width: calc(100% - 200px);
} }
} }
} }

View File

@@ -207,11 +207,13 @@ export default {
health: this.form.health.join(',') health: this.form.health.join(',')
}).then((res) => { }).then((res) => {
if (res.code == 0) { if (res.code == 0) {
this.$u.toast("上报成功");
this.getCheckTodayReport() this.getCheckTodayReport()
this.getStatis() this.getStatis()
uni.navigateTo({url: './Success?status=1'})
} }
}); }).catch(() => {
uni.navigateTo({url: './Success?status=0'})
})
}, },
getCheckTodayReport() { getCheckTodayReport() {
this.$http.post(`/app/appepidemichealthreport/checkTodayReport`).then((res) => { this.$http.post(`/app/appepidemichealthreport/checkTodayReport`).then((res) => {
@@ -631,7 +633,7 @@ uni-page-body {
color: #f46; color: #f46;
} }
.color-2{ .color-2{
color: #1365DD; color: #f46;
} }
} }
</style> </style>

View File

@@ -113,7 +113,11 @@ export default {
}, },
getStatis() { getStatis() {
this.dayList = [] this.dayList = []
this.$http.post(`/app/appepidemichealthreport/statistic?userId=${this.userId}`).then((res) => { this.$http.post(`/app/appepidemichealthreport/statistic`, this.userId, {
headers: {
'Content-Type': 'text/plain'
}
}).then((res) => {
if (res.code == 0) { if (res.code == 0) {
Object.keys(res.data).forEach((key) => { Object.keys(res.data).forEach((key) => {
var info = { var info = {

View File

@@ -0,0 +1,68 @@
<template>
<div class="success">
<img src="./components/img/success.png" alt="" v-if="status">
<img src="./components/img/fail.png" alt="" v-else>
<p>{{status ? '上报成功!' : '上报失败!'}}</p>
<div class="footer">{{status ? '确定' : '我知道了'}}</div>
</div>
</template>
<script>
import { mapState } from 'vuex'
export default {
data() {
return {
status: 1
}
},
onShow() {
document.title = '健康上报'
},
onLoad(option) {
this.status = option.status
},
methods: {
back() {
uni.navigateBack()
}
},
}
</script>
<style lang="scss" scoped>
uni-page-body{
height: 100%;
background-color: #fff;
}
.success {
text-align: center;
img{
width: 192px;
height: 192px;
margin: 96px 0 16px 0;
}
p{
line-height: 50px;
color: #333;
font-size: 36px;
font-weight: 500;
text-align: center;
margin-bottom: 72px;
}
.footer{
width: calc(100% - 96px);
height: 88px;
line-height: 88px;
background: #1365DD;
box-shadow: inset 0px 1px 0px 0px #EEEEEE;
font-size: 32px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #FFF;
text-align: center;
border-radius: 8px;
margin-left: 48px;
}
}
</style>

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -52,7 +52,7 @@
<span class="label"><span class="tips">*</span>所属区域</span> <span class="label"><span class="tips">*</span>所属区域</span>
<div class="value"> <div class="value">
<AiAreaPicker v-model="form.areaId" @select="areaSelect" :fullName.sync="form.areaName" mode="custom" all> <AiAreaPicker v-model="form.areaId" @select="areaSelect" :fullName.sync="form.areaName" mode="custom" all>
<span class="label" v-if="form.areaName" >{{ form.areaName }}</span> <span class="label" v-if="form.areaName" style="font-size: 16px">{{ form.areaName }}</span>
<span v-else :class="form.areaName === '' ? 'color-999' : ''" >请选择</span> <span v-else :class="form.areaName === '' ? 'color-999' : ''" >请选择</span>
<u-icon name="arrow-right" color="#cccccc" size="24" style="margin-left:4px;"/> <u-icon name="arrow-right" color="#cccccc" size="24" style="margin-left:4px;"/>
</AiAreaPicker> </AiAreaPicker>
@@ -62,7 +62,7 @@
<span class="label"><span class="tips"></span>详细地址</span> <span class="label"><span class="tips"></span>详细地址</span>
<div class="value"> <div class="value">
<u-input type="textarea" placeholder="请输入" v-model="form.address" <u-input type="textarea" placeholder="请输入" v-model="form.address"
placeholder-style="color:#999;font-size:16px;" :maxlength="20" auto-height/> placeholder-style="color:#999;font-size:16px;" :maxlength="20" auto-height style="font-size: 16px"/>
</div> </div>
</div> </div>
@@ -95,6 +95,14 @@
</div> </div>
</div> </div>
<div class="item" v-if="item.type == 'money'">
<span class="label"><span class="tips"></span>{{ item.label }}</span>
<div class="value">
<u-input type="number" placeholder="请输入" v-model="form[item.formDbName]" input-align="right"
placeholder-style="color:#999;font-size:16px;" height="48" :maxlength="item.maxlength" :clearable="false" @input="changeMoney"/>
</div>
</div>
<div class="item" v-if="item.type == 'select'"> <div class="item" v-if="item.type == 'select'">
<span class="label"><span class="tips"></span>{{ item.label }}</span> <span class="label"><span class="tips"></span>{{ item.label }}</span>
<div class="value" @click="selectClick(item.dict, item.formDbName)"> <div class="value" @click="selectClick(item.dict, item.formDbName)">
@@ -197,7 +205,7 @@ export default {
list: [ // 精神病人 list: [ // 精神病人
{ {
label: '家庭年收入', label: '家庭年收入',
type: 'number', type: 'money',
formDbName: 'income', formDbName: 'income',
maxlength: 9 maxlength: 9
}, },
@@ -442,6 +450,13 @@ export default {
} }
}, },
changeMoney() {
let moneyReg = /^([0-9]{1,5})(\.[0-9]{1,3}){0,1}$/
if (!moneyReg.test(this.form.income)) {
return this.$u.toast('输入的数字不能超过10万')
}
},
confirmGirdSelect(e) { confirmGirdSelect(e) {
this.form.girdId = e[0].value this.form.girdId = e[0].value
this.form.girdName = e[0].label this.form.girdName = e[0].label
@@ -536,6 +551,7 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.add { .add {
padding-bottom: 112px; padding-bottom: 112px;
font-size: 32px;
.item { .item {
width: 100%; width: 100%;

View File

@@ -51,7 +51,7 @@
</div> </div>
<div class="user-info"> <div class="user-info">
<p class="name">{{e.name}} <p class="name">{{e.name}}
<span class="btn-icon" v-if="userGird != 0"> <span class="btn-icon" v-if="userGird != 0 && user.wxUserId == e.createUserId">
<img src="./img/edit-icon.png" alt="" @click="toEdit(e,item.dictValue)"> <img src="./img/edit-icon.png" alt="" @click="toEdit(e,item.dictValue)">
<img src="./img/del-icon.png" alt="" @click="del(e,item.dictValue)"> <img src="./img/del-icon.png" alt="" @click="del(e,item.dictValue)">
</span> </span>