协同宣发

This commit is contained in:
shijingjing
2022-09-02 17:47:01 +08:00
parent 46c2872740
commit b04f57d1e0
3 changed files with 42 additions and 29 deletions

View File

@@ -27,8 +27,8 @@
<div class="content_fodder"> <div class="content_fodder">
<!-- <div style="color: #8E8F91;">添加素材</div> --> <!-- <div style="color: #8E8F91;">添加素材</div> -->
<div class="fodder_alls"> <div class="fodder_alls">
<!-- <div class="fodder_add"><u-icon name="plus" color="#CCD0D3" size="32"></u-icon></div> --> <div class="fodder_add" @click="showFodder"><u-icon name="plus" color="#CCD0D3" size="32"></u-icon></div>
<AiUploader :def.sync="files" placeholder="添加素材" type="file" :limit="9" multiple action="/admin/file/add2"></AiUploader> <!-- <AiUploader :def.sync="files" placeholder="添加素材" type="file" :limit="9" multiple action="/admin/file/add2"></AiUploader> -->
</div> </div>
</div> </div>
</div> </div>
@@ -61,6 +61,10 @@
</div> </div>
</div> </div>
<!-- <AiConsole>调试工具</AiConsole> -->
<u-picker v-model="showTaskTime" :params="params" mode="time" @confirm="choiceTime"></u-picker> <u-picker v-model="showTaskTime" :params="params" mode="time" @confirm="choiceTime"></u-picker>
<div class="mask" v-show="showPopup" @tap="showPopup = false"> <div class="mask" v-show="showPopup" @tap="showPopup = false">
@@ -86,7 +90,6 @@
<img :src="fileIcon(item.name)" alt=""> <img :src="fileIcon(item.name)" alt="">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
@@ -96,10 +99,9 @@
</div> </div>
</div> </div>
<AiConsole></AiConsole>
<div class="btn"> <div class="btn">
<div class="submitBtn" @click="confirm">发送</div> <div class="submitBtn" @click="confirm">通知成员发送</div>
</div> </div>
</div> </div>
@@ -131,6 +133,7 @@ export default {
userList: [], userList: [],
userListIds: [], userListIds: [],
showPopup: false, showPopup: false,
showFodder: false,
params: { params: {
year: true, year: true,
month: true, month: true,
@@ -256,9 +259,6 @@ export default {
console.log(err); console.log(err);
}) })
} }
},
onShow() {
}, },
onLoad(o) { onLoad(o) {
this.type = o.index; this.type = o.index;

View File

@@ -3,28 +3,29 @@
<div class="item"> <div class="item">
<div>添加人</div> <div>添加人</div>
<div @click="selectUser"> <div @click="selectUser">
<span>请选择</span> <span v-if="selectedUser.length">已选择{{ selectedUser.length }}名成员</span>
<span class="color_gray" v-else>请选择</span>
<u-icon name="arrow-right" color="#CCD0D3"></u-icon> <u-icon name="arrow-right" color="#CCD0D3"></u-icon>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<div>包含标签</div> <div>包含标签</div>
<div @click="toTagsList(0)"> <div @click="toTagsList(0)">
<span>请选择</span> <span class="color_gray">请选择</span>
<u-icon name="arrow-right" color="#CCD0D3"></u-icon> <u-icon name="arrow-right" color="#CCD0D3"></u-icon>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<div>剔除标签</div> <div>剔除标签</div>
<div @click="toTagsList(1)"> <div @click="toTagsList(1)">
<span>请选择</span> <span class="color_gray">请选择</span>
<u-icon name="arrow-right" color="#CCD0D3"></u-icon> <u-icon name="arrow-right" color="#CCD0D3"></u-icon>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<div>添加时间</div> <div>添加时间</div>
<div @click="showCalendar = true"> <div @click="showCalendar = true">
<span v-if="!startTime.length && !endTime.length">请选择</span> <span v-if="!startTime.length && !endTime.length" class="color_gray">请选择</span>
<span v-if="startTime.length && endTime.length">{{ startTime }} - {{ endTime }}</span> <span v-if="startTime.length && endTime.length">{{ startTime }} - {{ endTime }}</span>
<u-icon name="arrow-right" color="#CCD0D3"></u-icon> <u-icon name="arrow-right" color="#CCD0D3"></u-icon>
</div> </div>
@@ -61,6 +62,7 @@ export default {
sex: "0", sex: "0",
userList: [], userList: [],
userListIds: [], userListIds: [],
selectedUser: []
} }
}, },
methods: { methods: {
@@ -111,6 +113,10 @@ export default {
onLoad(o) { onLoad(o) {
this.type = o.type; this.type = o.type;
document.title = this.type == 1? '按部门选择':'按网格选择' document.title = this.type == 1? '按部门选择':'按网格选择'
uni.$on("pagePicker:custom", res => {
// console.log(res)
this.selectedUser = res
})
} }
} }
@@ -151,6 +157,10 @@ export default {
} }
} }
.color_gray {
color: #CCD0D3;
}
.btn { .btn {
position: fixed; position: fixed;
bottom: 0; bottom: 0;

View File

@@ -5,7 +5,7 @@
<span v-for="(item, index) in selectGridPath" :key="index"><span v-if="index" style="margin:0 4px;">/</span><span <span v-for="(item, index) in selectGridPath" :key="index"><span v-if="index" style="margin:0 4px;">/</span><span
style="color:#3F8DF5" @click="girdNameClick(item, index)">{{ item.girdName }}</span></span> style="color:#3F8DF5" @click="girdNameClick(item, index)">{{ item.girdName }}</span></span>
</div> </div>
<div class="cards" v-for="(item, index) in treeList" :key="item.id" @click="itemClick(item)"> <div class="cards" v-for="item in treeList" :key="item.id" @click="itemClick(item)">
<div class="imges"> <div class="imges">
<!-- <img src="./images/xzh.png" alt="" class="imgselect" v-if="item.isChecked" <!-- <img src="./images/xzh.png" alt="" class="imgselect" v-if="item.isChecked"
@click.stop="girdClick(item, index)"/> @click.stop="girdClick(item, index)"/>
@@ -61,6 +61,7 @@ export default {
onLoad() { onLoad() {
this.selected.id = this.$route.query.id this.selected.id = this.$route.query.id
this.getAllGrids() this.getAllGrids()
this.selected = uni.getStorageSync('userSelect') || []
}, },
onShow() { onShow() {
document.title = '选择人员' document.title = '选择人员'
@@ -89,7 +90,7 @@ export default {
this.userList = [] this.userList = []
this.$http.post(`/app/appgirdmemberinfo/listByGirdIdByThree?girdId=${id}`).then((res) => { this.$http.post(`/app/appgirdmemberinfo/listByGirdIdByThree?girdId=${id}`).then((res) => {
if (res?.data) { if (res?.data) {
this.userList = res.data.map(e => ({...e, isChecked: e.id == this.selected.id})) this.userList = res.data.map(e => ({...e, isChecked: e.id == this.selected.forEach(i => i.id)}))
} }
}) })
}, },
@@ -117,28 +118,30 @@ export default {
// this.$forceUpdate() // this.$forceUpdate()
// }, // },
userClick(row, index) { userClick(row) {
if (this.userList[index].isChecked) {//取消 row.isChecked = !!!row.isChecked
this.userList[index].isChecked = false // if (this.userList[index].isChecked) {//取消
this.selected = {} // this.userList[index].isChecked = false
} else { // this.selected = {}
this.userList.map((item, i) => { // } else {
item.isChecked = index == i // this.userList.map((item, i) => {
}) // item.isChecked = index == i
this.selected = {...row, kind: "user"} // })
} // this.selected = {...row, kind: "user"}
this.$forceUpdate() // }
this.selected = this.userList.filter(v=> v.isChecked)
uni.setStorageSync('userSelect', this.selected)
}, },
submit() { submit() {
if (this.selected.id != null) { if (!this.selected.length) {
return this.$u.toast('请选择网格员')
} else {
uni.navigateBack({ uni.navigateBack({
success: () => { success: () => {
uni.$emit("pagePicker:custom", this.selected) uni.$emit("pagePicker:custom", this.selected)
} }
}) })
} else {
return this.$u.toast('请选择网格或网格员')
} }
}, },
} }