From 936ba62f1cb2888797ea354f47078c5228ab0cb4 Mon Sep 17 00:00:00 2001
From: shijingjing <1789544664@qq.com>
Date: Fri, 15 Jul 2022 10:44:31 +0800
Subject: [PATCH 1/6] =?UTF-8?q?=E5=AE=A3=E5=8F=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../AppPropagandaStatistics.vue | 602 +++++++++++-------
.../AppPropagandaStatistics/calendarInfo.vue | 44 +-
.../groupSendDetail.vue | 2 +-
.../groupSendResident.vue | 164 ++++-
4 files changed, 573 insertions(+), 239 deletions(-)
diff --git a/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue b/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue
index 9b32b4c4..9f5f28b8 100644
--- a/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue
+++ b/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue
@@ -1,47 +1,115 @@
-
昨天{{ nowMonth }}.{{ nowDate - 1 }}
-
-
+
+ 昨天{{ nowMonth }}.{{ nowDate - 1 }}
+
+
+ 晴风小区志愿者活动
+
+
+ 今日暂无宣发任务
+
-
今天{{ nowMonth }}.{{ nowDate }}
-
-
+
+ 今天{{ nowMonth }}.{{ nowDate }}
+
+
+ 晴风小区志愿者活动
+
+
+ 今日暂无宣发任务
+
-
明天{{ nowMonth }}.{{ nowDate + 1 }}
-
-
-
{{ isShow ? '收起' : '展开' }}
+
+ 明天{{ nowMonth }}.{{ nowDate + 1 }}
+
+
+ 晴风小区志愿者活动
+
+
+ 今日暂无宣发任务
+
+
+ {{ isShow ? "收起" : "展开" }}
+
-
宣发效果
-

筛选
+
+

筛选
+
创建宣发任务数
-
200
+
{{ peopleNum }}
执行宣发次数
-
200
+
{{ sendNum }}
触达人次
-
200
+
{{ predictNum }}
触达人次
@@ -55,9 +123,21 @@
宣发明细
- 近七天
- 近30天
- 近1年
+ 近七天
+ 近30天
+ 近1年
@@ -67,21 +147,45 @@
-
+
确定
@@ -112,10 +226,10 @@
diff --git a/src/project/saas/AppPropagandaStatistics/calendarInfo.vue b/src/project/saas/AppPropagandaStatistics/calendarInfo.vue
index 29644ea2..00397e5a 100644
--- a/src/project/saas/AppPropagandaStatistics/calendarInfo.vue
+++ b/src/project/saas/AppPropagandaStatistics/calendarInfo.vue
@@ -29,23 +29,61 @@ export default {
data() {
return {
date: '',
- selected: [{date: '2022-07-12'}],
+ selected: [],
list: [{
time: '11:00',
info: '晴风小区志愿者活动'
- }]
+ }],
+ calendarList: {},
+ year: '',
+ month: '',
+ day: '',
}
},
components: {
uniCalendar
},
+ created() {
+ this.getNowDay()
+ this.getData()
+
+ },
methods: {
change(val) {
this.date = `${val.year} + '-' + ${val.month} + '-' + ${val.day}`
},
+ getNowDay() {
+ const date = new Date()
+ this.year = date.getFullYear()
+ this.month = date.getMonth() + 1
+ },
toGroup() {
uni.navigateTo({url: './groupSendResident'})
- }
+ },
+ getData() {
+ this.$http.post(`/app/appmasssendingtask/statisticsCalendar`, null, {
+ params: {},
+ })
+ .then((res) => {
+ if (res?.data) {
+ this.calendarList = res.data;
+ var arr = Object.keys(res.data).map(key => (res.data[key]))
+ var calList = arr.filter(item=> (item.taskList && item.taskList.length > 0))
+ this.selected = calList.map(item=> {
+ if(item.day>=1 && item.day<=9) {
+ if(this.month>=1 && this.month <=9) {
+ return this.year + '-' + '0' + this.month + '-' + '0' + item.day
+ }
+ } else if(item.day> 9) {
+ if(this.month > 9) {
+ return this.year + '-' + this.month + '-' + item.day
+ }
+ }
+ })
+ console.log(this.selected);
+ }
+ });
+ },
},
onShow() {
document.title = '宣发日历'
diff --git a/src/project/saas/AppPropagandaStatistics/groupSendDetail.vue b/src/project/saas/AppPropagandaStatistics/groupSendDetail.vue
index de0934a6..4a7c76c6 100644
--- a/src/project/saas/AppPropagandaStatistics/groupSendDetail.vue
+++ b/src/project/saas/AppPropagandaStatistics/groupSendDetail.vue
@@ -119,7 +119,7 @@ export default {
{value: 10, name: '群发送达率', label:{
normal:{
show:true,
- formatter: '{d}%\n群发送达率',
+ formatter: `{d}%\n群发居民群`,
textStyle: {
fontSize: 16,
},
diff --git a/src/project/saas/AppPropagandaStatistics/groupSendResident.vue b/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
index 51ef945d..01629e5d 100644
--- a/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
+++ b/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
@@ -5,7 +5,7 @@
-

筛选
+

筛选
@@ -19,6 +19,57 @@
创建部门:{{ item.createUserDept }}
+
+
+
@@ -29,6 +80,11 @@ export default {
current: 1,
name: '',
list: [],
+ filterShow: false,
+ startTime: '',
+ endTime: '',
+ showStart: false,
+ showEnd: false,
}
},
methods: {
@@ -39,7 +95,6 @@ export default {
this.$http.post(`/app/appmasssendingtask/list`, null, {
params: {
current: this.current,
-
}
}).then(res=> {
if(res?.data) {
@@ -47,14 +102,28 @@ export default {
}
console.log(res);
})
- }
+ },
+ filterBtn() {},
+ reset() {
+ this.startTime = '',
+ this.endTime = ''
+ },
+ selectConfirm() {},
+ confirmStart(val) {
+ this.startTime = val.year + '-' + val.month + '-' + val.day
+ },
+ confirmEnd(val) {
+ this.endTime = val.year + '-' + val.month + '-' + val.day
+ },
},
onShow() {
document.title = '群发居民群'
+ this.current = 1
this.getList()
},
onReachBottom() {
this.current ++
+ this.getList()
},
}
@@ -112,5 +181,94 @@ export default {
}
}
}
+ .popup {
+ box-sizing: border-box;
+ // height: 800px;
+ .tips {
+ width: 80px;
+ height: 6px;
+ background: #dddddd;
+ border-radius: 4px;
+ padding: 0 32px;
+ box-sizing: border-box;
+ margin: 32px auto 8px auto;
+ }
+ .title {
+ height: 48px;
+ line-height: 48px;
+ font-size: 34px;
+ font-family: PingFangSC-Medium, PingFang SC;
+ font-weight: 500;
+ color: #222;
+ padding: 0 32px;
+ box-sizing: border-box;
+ padding-bottom: 32px;
+ .cancel {
+ display: inline-block;
+ width: 200px;
+ color: #aaa;
+ }
+ .confirm {
+ display: inline-block;
+ width: 200px;
+ text-align: right;
+ color: #333;
+ }
+ p {
+ display: inline-block;
+ width: calc(100% - 400px);
+ text-align: center;
+ font-size: 28px;
+ }
+ }
+ .select-content {
+ height: calc(100% - 100px);
+ overflow-y: scroll;
+ }
+ .type-list {
+ padding: 0 32px;
+ box-sizing: border-box;
+ margin-bottom: 32px;
+ .type-title {
+ line-height: 108px;
+ font-size: 32px;
+ font-family: PingFangSC-Medium, PingFang SC;
+ font-weight: 500;
+ color: #333;
+ }
+ .item {
+ display: flex;
+ justify-content: space-between;
+ & > div:last-child {
+ ::v-deep .uni-input-input,
+ ::v-deep .uni-input-placeholder {
+ text-align: right;
+ }
+ }
+ }
+ .active {
+ background: #1365dd;
+ color: #fff;
+ }
+ }
+ .popBtn {
+ display: flex;
+ height: 98px;
+ line-height: 98px;
+ div {
+ width: 50%;
+ border: 2px solid #3399ff;
+ text-align: center;
+ }
+ div:first-child {
+ color: #3399ff;
+ }
+ div:last-child {
+ color: #fff;
+ background: #3399ff;
+ }
+ }
+ }
+
}
\ No newline at end of file
From f2dd80a0187cf30b268217298ead95bca2bf4e96 Mon Sep 17 00:00:00 2001
From: shijingjing <1789544664@qq.com>
Date: Fri, 15 Jul 2022 11:08:32 +0800
Subject: [PATCH 2/6] =?UTF-8?q?=E4=B8=89=E5=B1=82=E7=A0=B4=E5=BC=B9?=
=?UTF-8?q?=E7=AA=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../AppPropagandaStatistics.vue | 57 +++++++++++--------
.../AppPropagandaStatistics/calendarInfo.vue | 1 -
2 files changed, 32 insertions(+), 26 deletions(-)
diff --git a/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue b/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue
index 9f5f28b8..bdd9df2a 100644
--- a/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue
+++ b/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue
@@ -198,26 +198,20 @@
开始时间:
-
@@ -253,6 +247,8 @@ export default {
departId: "",
startTime: "",
endTime: "",
+ showStart: false,
+ showEnd: false,
resX: [],
resY: [],
res2Y: [],
@@ -286,6 +282,8 @@ export default {
if (index == 3) {
this.timeSelect = index;
this.customShow = true;
+ this.showStart = false;
+ this.showEnd = false;
} else {
this.timeSelect = index;
}
@@ -302,17 +300,24 @@ export default {
this.departId = "";
},
- selectConfirm() {
- if (this.timeSelect == 3) {
- this.timeType = this.timeSelect;
- this.startTime = this.start;
- this.endTime = this.end;
- this.getBrokenDate();
- } else {
- this.timeType = this.timeSelect;
- this.getBrokenDate();
- }
- this.filterShow = false;
+ // selectConfirm() {
+ // if (this.timeSelect == 3) {
+ // this.timeType = this.timeSelect;
+ // this.startTime = this.start;
+ // this.endTime = this.end;
+ // this.getBrokenDate();
+ // } else {
+ // this.timeType = this.timeSelect;
+ // this.getBrokenDate();
+ // }
+ // this.filterShow = false;
+ // },
+
+ confirmStart(val) {
+ this.startTime = val.year + '-' + val.month + '-' + val.day
+ },
+ confirmEnd(val) {
+ this.endTime = val.year + '-' + val.month + '-' + val.day
},
handleTime() {
@@ -826,6 +831,7 @@ export default {
.customPop {
padding: 80px 32px 20px 32px;
box-sizing: border-box;
+ height: 600px;
.startTime,
.endTime {
@@ -841,6 +847,7 @@ export default {
text-align: center;
border-radius: 16px;
color: #fff;
+ margin-top: 164px;
}
}
}
diff --git a/src/project/saas/AppPropagandaStatistics/calendarInfo.vue b/src/project/saas/AppPropagandaStatistics/calendarInfo.vue
index 00397e5a..a02149e2 100644
--- a/src/project/saas/AppPropagandaStatistics/calendarInfo.vue
+++ b/src/project/saas/AppPropagandaStatistics/calendarInfo.vue
@@ -80,7 +80,6 @@ export default {
}
}
})
- console.log(this.selected);
}
});
},
From b9f1bee17be016363031acee63dc41a1d2070a08 Mon Sep 17 00:00:00 2001
From: shijingjing <1789544664@qq.com>
Date: Fri, 15 Jul 2022 13:52:11 +0800
Subject: [PATCH 3/6] =?UTF-8?q?=E5=B1=85=E6=B0=91=E7=BE=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../AppPropagandaStatistics.vue | 37 +++++-----
.../groupSendResident.vue | 74 ++++++++++++++-----
2 files changed, 77 insertions(+), 34 deletions(-)
diff --git a/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue b/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue
index bdd9df2a..9ab6cc7d 100644
--- a/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue
+++ b/src/project/saas/AppPropagandaStatistics/AppPropagandaStatistics.vue
@@ -247,6 +247,8 @@ export default {
departId: "",
startTime: "",
endTime: "",
+ start: "",
+ end: "",
showStart: false,
showEnd: false,
resX: [],
@@ -281,7 +283,8 @@ export default {
checkTime(index) {
if (index == 3) {
this.timeSelect = index;
- this.customShow = true;
+ this.customShow = true;
+
this.showStart = false;
this.showEnd = false;
} else {
@@ -300,18 +303,18 @@ export default {
this.departId = "";
},
- // selectConfirm() {
- // if (this.timeSelect == 3) {
- // this.timeType = this.timeSelect;
- // this.startTime = this.start;
- // this.endTime = this.end;
- // this.getBrokenDate();
- // } else {
- // this.timeType = this.timeSelect;
- // this.getBrokenDate();
- // }
- // this.filterShow = false;
- // },
+ selectConfirm() {
+ if (this.timeSelect == 3) {
+ this.timeType = this.timeSelect;
+ this.start = this.startTime;
+ this.end = this.endTime;
+ this.getBrokenDate();
+ } else {
+ this.timeType = this.timeSelect;
+ this.getBrokenDate();
+ }
+ this.filterShow = false;
+ },
confirmStart(val) {
this.startTime = val.year + '-' + val.month + '-' + val.day
@@ -321,8 +324,8 @@ export default {
},
handleTime() {
- this.startTime = this.start;
- this.endTime = this.end;
+ this.start = this.startTime
+ this.end = this.endTime
this.customShow = false;
},
@@ -352,8 +355,8 @@ export default {
.post(`/app/appmasssendingtask/statisticsEffect`, null, {
params: {
type: this.timeSelect,
- startTime: this.startTime,
- endTime: this.endTime,
+ startTime: this.start,
+ endTime: this.end,
// departId: this.departId
},
})
diff --git a/src/project/saas/AppPropagandaStatistics/groupSendResident.vue b/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
index 01629e5d..5fb71a47 100644
--- a/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
+++ b/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
@@ -3,22 +3,24 @@
-
+

筛选
-
+
-
{{ item.content }}
-
进行中
+
{{ item.taskTitle }}
+
{{ $dict.getLabel('mstStatus', item.status) }}
创建时间:{{ item.createTime }}
-
共需56名成员完成群发,目前已完成65%
+
共需56名成员完成群发,目前已完成{{ item.completionRate || 0 }}%
创建部门:{{ item.createUserDept }}
+
- 提醒成员发送
+ 提醒成员发送
@@ -38,8 +38,8 @@
-
-
+
+
@@ -60,25 +60,35 @@ export default {
{name: '无法送达'}
],
subIndex: 0,
- tableData0: [],
- tableData1: [],
+ tableData: [],
+ createTime: '',
+ id: '',
+ info: {},
+ flag: false,
+ timer: null,
+ current: 1,
}
},
computed: {
colConfigs0() {
return [
- { label: '成员', prop: '', width: '240rpx', dict: 'householdRelation' },
- { label: '预计未送达居民', prop: ''},
+ { label: '成员', prop: 'groupOwnerId', width: '240rpx', dict: 'householdRelation' },
+ { label: '预计未送达居民', prop: 'groupCount'},
]
},
colConfigs1() {
return [
- { label: '居民群', prop: '', width: '240rpx', dict: 'householdRelation' },
- { label: '群人数', prop: '', width: '200rpx' },
- { label: '群主', prop: '', dict: 'sex' },
+ { label: '居民群', prop: 'groupName', width: '240rpx', dict: 'householdRelation' },
+ { label: '群人数', prop: 'memberCount', width: '200rpx' },
+ { label: '群主', prop: 'groupOwnerId', dict: 'sex' },
]
},
},
+ onLoad(o) {
+ this.id = o.id
+ this.createTime = o.time
+ this.getStatistics()
+ },
methods: {
tabClick(index) {
this.tabIndex = index
@@ -87,6 +97,38 @@ export default {
toDetail() {
uni.navigateTo({url: `./detail`})
},
+ // 提醒发送
+ remindSend() {
+ if(this.flag) return
+ var n = 60 * 60 * 1000
+ setTimeout(()=> {
+
+ })
+ this.$http.post('/app/appmasssendingtask/remindSend',null,{
+ params: {
+ id: this.id
+ }
+ }).then(res => {
+ console.log(res);
+ }).catch(err => {
+ console.log(err);
+ })
+ },
+
+ getStatistics() {
+ this.$http.post(`/app/appmasssendingtask/detailStatistics`, null, {
+ params: {
+ type: this.tabIndex,
+ sendStatus: this.subIndex,
+ taskId: this.id,
+ current: this.current
+ }
+ }).then(res => {
+ if(res?.data) {
+ this.tableData = res.data.executedList
+ }
+ })
+ },
// 带百分比饼图
getPieEcharts() {
diff --git a/src/project/saas/AppPropagandaStatistics/groupSendResident.vue b/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
index 5fb71a47..7bf24646 100644
--- a/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
+++ b/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
@@ -9,14 +9,14 @@
-
+
{{ item.taskTitle }}
{{ $dict.getLabel('mstStatus', item.status) }}
创建时间:{{ item.createTime }}
-
共需56名成员完成群发,目前已完成{{ item.completionRate || 0 }}%
+
共需{{ item.groupOwnerCount }}名成员完成群发,目前已完成{{ item.completionRate || 0 }}%
创建部门:{{ item.createUserDept }}
@@ -87,8 +87,8 @@ export default {
}
},
methods: {
- toDetail() {
- uni.navigateTo({url: `./groupSendDetail`})
+ toDetail(item) {
+ uni.navigateTo({url: `./groupSendDetail?id=${item.id}&time=${item.createTime}`})
},
searchBtn() {
this.current = 1
From 034e0e463adb908c585e8ab585c302b868a1a8ab Mon Sep 17 00:00:00 2001
From: shijingjing <1789544664@qq.com>
Date: Fri, 15 Jul 2022 16:43:41 +0800
Subject: [PATCH 5/6] =?UTF-8?q?=E5=8D=8F=E5=90=8C=E5=AE=A3=E5=8F=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../AppCooperationPropaganda.vue} | 10 ++-
.../cooperationDetail.vue} | 46 +++++-----
.../detail.vue | 79 ++++++++++++++++--
.../images/shaixuan.png | Bin 0 -> 663 bytes
4 files changed, 100 insertions(+), 35 deletions(-)
rename src/project/saas/{AppPropagandaStatistics/groupSendResident.vue => AppCooperationPropaganda/AppCooperationPropaganda.vue} (97%)
rename src/project/saas/{AppPropagandaStatistics/groupSendDetail.vue => AppCooperationPropaganda/cooperationDetail.vue} (85%)
rename src/project/saas/{AppPropagandaStatistics => AppCooperationPropaganda}/detail.vue (50%)
create mode 100644 src/project/saas/AppCooperationPropaganda/images/shaixuan.png
diff --git a/src/project/saas/AppPropagandaStatistics/groupSendResident.vue b/src/project/saas/AppCooperationPropaganda/AppCooperationPropaganda.vue
similarity index 97%
rename from src/project/saas/AppPropagandaStatistics/groupSendResident.vue
rename to src/project/saas/AppCooperationPropaganda/AppCooperationPropaganda.vue
index 7bf24646..d3ab2be5 100644
--- a/src/project/saas/AppPropagandaStatistics/groupSendResident.vue
+++ b/src/project/saas/AppCooperationPropaganda/AppCooperationPropaganda.vue
@@ -1,5 +1,5 @@
-