Browse Source

版本1.7.7 我有事说标签增加人物选择

release
ZhaoTongYao 4 years ago
parent
commit
bb67f3793c
  1. 2
      pages/toRegister/toRegister.js
  2. 100
      subpages/discussion/pages/addIssue/addIssue.js
  3. 32
      subpages/discussion/pages/addIssue/addIssue.wxml
  4. 99
      subpages/discussion/pages/addIssue/addIssue.wxss
  5. 12
      subpages/discussion/utils/api.js

2
pages/toRegister/toRegister.js

@ -21,7 +21,7 @@ Page({
// } // }
// }) // })
let that = this let that = this
const versionNum = "1.7.6" const versionNum = "1.7.7"
api.getScanSwitch(versionNum).then(function (res) { api.getScanSwitch(versionNum).then(function (res) {
console.log(res.data) console.log(res.data)
let state = res.data.scanFlag let state = res.data.scanFlag

100
subpages/discussion/pages/addIssue/addIssue.js

@ -1,7 +1,7 @@
const QQMapWX = require("../../utils/qqmap-wx-jssdk") const QQMapWX = require("../../utils/qqmap-wx-jssdk")
import { $wuxActionSheet } from "../../../../dist/index" import { $wuxActionSheet } from "../../../../dist/index"
const config = require("../../../../utils/config") const config = require("../../../../utils/config")
import { addIssue, getEventTagList } from "../../utils/api" import { addIssue, getEventTagList, getEventtagWorkuser } from "../../utils/api"
Page({ Page({
data: { data: {
@ -21,6 +21,14 @@ Page({
tagIds: [], tagIds: [],
checkboxs: [], checkboxs: [],
lock: false, //锁定发布状态,防止连击 lock: false, //锁定发布状态,防止连击
showDialog: false,
boxTitle: '', // checkbox 对话框标题
leaderList: [],
pageIndex: 1,
pageSize: 10,
loadMoreType: "none",
workuserId: '', // 选中工作人员id
workUserIds: [], // 选中工作人员id集合
}, },
onLoad () { onLoad () {
this.getEventTagList() this.getEventTagList()
@ -46,6 +54,32 @@ Page({
addressContent: e.detail.value.trim('') addressContent: e.detail.value.trim('')
}) })
}, },
//
getEventtagWorkuser () {
let param = {
pageIndex: this.data.pageIndex,
pageSize: this.data.pageSize,
eventTagId: this.data.workuserId
}
getEventtagWorkuser(param).then(res => {
let leaderList = [ ...this.data.leaderList, ...res.data ]
this.setData({
leaderList,
loadMoreType: res.data.length === 10 ? "loading" : "none"
})
if (this.data.leaderList.length > 0 && !this.data.showDialog) {
this.setData({
showDialog: true
})
}
}).catch(err => {
this.setData({
leaderList: [],
loadMoreType: "none"
})
console.log(err)
})
},
//获取事件标签列表 //获取事件标签列表
getEventTagList () { getEventTagList () {
getEventTagList().then(res => { getEventTagList().then(res => {
@ -252,7 +286,8 @@ Page({
issueLatitude: this.data.latitude, issueLatitude: this.data.latitude,
images: imagesList, images: imagesList,
isConReview: this.data.isConReview, isConReview: this.data.isConReview,
tagIds: this.data.tagIds tagIds: this.data.tagIds,
workUserIds: this.data.workUserIds
} }
this.setData({ this.setData({
lock: true lock: true
@ -330,9 +365,10 @@ Page({
}, },
checkboxClick (e) { checkboxClick (e) {
this.data.tagIds = [] //当前版本标签单选
this.data.workUserIds = []
if (this.data.checkboxs[e.currentTarget.dataset.index].checked) { if (this.data.checkboxs[e.currentTarget.dataset.index].checked) {
this.data.checkboxs[e.currentTarget.dataset.index].checked = false this.data.checkboxs[e.currentTarget.dataset.index].checked = false
this.data.tagIds = [] //当前版本标签单选
} else { } else {
for(let i=0;i<this.data.checkboxs.length;i++) { for(let i=0;i<this.data.checkboxs.length;i++) {
this.data.checkboxs[i].checked = false this.data.checkboxs[i].checked = false
@ -340,18 +376,58 @@ Page({
this.data.checkboxs[e.currentTarget.dataset.index].checked = true this.data.checkboxs[e.currentTarget.dataset.index].checked = true
this.data.tagIds = [] //当前版本标签单选 this.data.tagIds = [] //当前版本标签单选
this.data.tagIds.push(this.data.checkboxs[e.currentTarget.dataset.index].id) this.data.tagIds.push(this.data.checkboxs[e.currentTarget.dataset.index].id)
this.setData({
boxTitle: e.currentTarget.dataset.title,
workuserId: this.data.tagIds[0]
}, () => {
this.getEventtagWorkuser()
})
} }
this.setData({ this.setData({
checkboxs: this.data.checkboxs checkboxs: this.data.checkboxs
}) })
console.log(this.data.tagIds) // console.log(this.data.tagIds)
},
// 关闭对话框
closeCheckboxDialog () {
this.setData({
showDialog: false,
leaderList: [],
loadMoreType: "none",
pageIndex: 1
})
},
//
confirmCheckboxDialog () {
let list = []
this.data.leaderList.forEach(item => {
if (item.checked) {
list.push(item.id)
}
})
this.setData({
showDialog: false,
leaderList: [],
loadMoreType: "none",
pageIndex: 1,
workUserIds: [ ...list ]
})
},
checkboxChange (e) {
let item = this.data.leaderList[e.currentTarget.dataset.index]
item.checked = !item.checked
this.setData({
leaderList: this.data.leaderList
})
},
dialogReachBottom () {
if (this.data.loadMoreType === "loading") {
this.setData({
pageIndex: this.data.pageIndex + 1
})
this.getEventtagWorkuser()
}
} }
// toOperationDesc(phrase) { //常用于点击事件
// // console.log(phrase.currentTarget.dataset.phrase)
// this.setData({
// issueContent: this.data.issueContent + phrase.currentTarget.dataset.phrase,
// })
// // console.log(phrase.currentTarget.dataset.phrase)
// },
}) })

32
subpages/discussion/pages/addIssue/addIssue.wxml

@ -22,7 +22,7 @@
</view> </view>
<checkbox-group class="info-tips"> <checkbox-group class="info-tips">
<label class="tips" wx:for="{{checkboxs}}" wx:for-index="index" wx:for-item="item" wx:key="index" data-index="{{index}}" bindtap="checkboxClick"> <label class="tips" wx:for="{{checkboxs}}" wx:for-index="index" wx:for-item="item" wx:key="index" data-index="{{index}}" data-title="{{item.name}}" bindtap="checkboxClick">
<!-- <view class="spot"></view> --> <!-- <view class="spot"></view> -->
<checkbox value="{{item.name}}" checked="{{item.checked}}"></checkbox> <checkbox value="{{item.name}}" checked="{{item.checked}}"></checkbox>
<view class="content display-inline">{{item.name}}</view> <view class="content display-inline">{{item.name}}</view>
@ -63,3 +63,33 @@
bind:confirm="confirmDialog" bind:confirm="confirmDialog"
bind:cancel="confirmDialog"> bind:cancel="confirmDialog">
</tip-dialog> </tip-dialog>
<view class="dialog-bg" wx:if="{{showDialog}}">
<view class="leader-dialog">
<view class="topbar">
<view class="title">{{boxTitle}}</view>
<view class="close" bindtap="closeCheckboxDialog"><image src="../../images/IC_guanbi@2x.png" /></view>
</view>
<view class="dialog-content">
<scroll-view scroll-y="{{true}}" class="list" bindscrolltolower="dialogReachBottom">
<checkbox-group>
<view class="item" wx:for="{{leaderList}}" wx:for-index="index" wx:for-item="item" wx:key="index" data-index="{{index}}" bindtap="checkboxChange">
<view class="leader-box">
<view class="leader-head">
<image src="{{item.headUrl || 'https://epdc-shibei.elinkservice.cn/epdcFile/M00/00/00/CgUipV3wgl6Afm4cAAAa8QfEb00266_big.png'}}" />
</view>
<view class="leader-info">
<view class="name">{{item.realName}}</view>
<view class="position">{{item.position}}</view>
</view>
</view>
<checkbox value="{{item.realName}}" checked="{{item.checked}}"></checkbox>
</view>
</checkbox-group>
</scroll-view>
</view>
<view class="footer">
<view class="confirm" bindtap="confirmCheckboxDialog">确定</view>
</view>
</view>
</view>

99
subpages/discussion/pages/addIssue/addIssue.wxss

@ -246,4 +246,103 @@ button::after {
line-height: 46rpx; line-height: 46rpx;
overflow-wrap: break-word; overflow-wrap: break-word;
float: left; float: left;
}
.dialog-bg {
width: 100%;
height: 100%;
background-color: rgba(102, 102, 102, 0.7);
position: absolute;
top: 0;
z-index: 999;
}
.leader-dialog {
position: relative;
margin: 240rpx auto 0;
width: 690rpx;
height: 820rpx;
background-color: #fff;
border-radius: 20rpx;
}
.leader-dialog .topbar {
height: 130rpx;
display: flex;
align-items: center;
justify-content: center;
position: relative;
}
.leader-dialog .topbar .title {
font-size: 34rpx;
}
.leader-dialog .topbar .close {
position: absolute;
top: 20rpx;
right: 20rpx;
width: 60rpx;
height: 60rpx;
display: flex;
justify-content: flex-end;
}
.leader-dialog .topbar .close image{
width: 32rpx;
height: 32rpx;
}
.leader-dialog .dialog-content {
padding: 0 40rpx;
}
.leader-dialog .dialog-content .list .item .leader-box .leader-head image{
width: 100%;
height: 100%;
}
.leader-dialog .dialog-content .list {
height: 500rpx;
}
.leader-dialog .dialog-content .list .item {
width: 100%;
height: 124rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.leader-dialog .dialog-content .list .item .leader-box {
display: flex;
align-items: center;
}
.leader-dialog .dialog-content .list .item .leader-box .leader-head{
width: 100rpx;
height: 100rpx;
border-radius: 50%;
overflow: hidden;
}
.leader-dialog .dialog-content .list .item .leader-box .leader-info {
margin-left: 20rpx;
height: 88rpx;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.leader-dialog .dialog-content .list .item .leader-box .leader-info .name{
font-size: 34rpx;
color: #333333;
}
.leader-dialog .dialog-content .list .item .leader-box .leader-info .position{
font-size: 28rpx;
color: #999999;
}
.leader-dialog .footer {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
margin-top: 50rpx;
}
.leader-dialog .footer .confirm {
width: 300rpx;
height: 76rpx;
background-color: #df0006;
box-shadow: 0rpx 3rpx 12rpx 0rpx rgba(188, 0, 5, 0.36);
border-radius: 38rpx;
line-height: 76rpx;
text-align: center;
color: #fff;
font-size: 34rp;
} }

12
subpages/discussion/utils/api.js

@ -3,7 +3,7 @@ const request = require("../../../utils/request")
/** /**
* 发布议题 * 发布议题
*/ */
export function addIssue ({ eventContent, issueAddress, issueLongitude, issueLatitude, images, isConReview, tagIds }) { export function addIssue ({ eventContent, issueAddress, issueLongitude, issueLatitude, images, isConReview, tagIds, workUserIds }) {
return request.post("events/issue/submit", { return request.post("events/issue/submit", {
eventContent, eventContent,
issueAddress, issueAddress,
@ -11,7 +11,8 @@ export function addIssue ({ eventContent, issueAddress, issueLongitude, issueLat
issueLatitude, issueLatitude,
images, images,
isConReview, isConReview,
tagIds tagIds,
workUserIds
}) })
} }
@ -321,4 +322,11 @@ export function getProjectHandleProgressV2 (itemId) {
*/ */
export function getEventTagList (itemId) { export function getEventTagList (itemId) {
return request.get(`events/issue/eventtag/list`) return request.get(`events/issue/eventtag/list`)
}
/**
* 根据事件标签获取关联的工作人员列表
*/
export function getEventtagWorkuser (params) {
return request.get(`admin/eventtagworkuser`,params)
} }
Loading…
Cancel
Save