Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
schedule
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fengzhaoyu
schedule
Commits
153cf0a3
Commit
153cf0a3
authored
Mar 27, 2020
by
xiexiaoqin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
stash: wait to merge
parent
aba792bc
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
142 additions
and
97 deletions
+142
-97
request.js
api/request.js
+2
-2
app.json
app.json
+3
-2
taskList.acss
components/taskList/taskList.acss
+6
-3
taskList.axml
components/taskList/taskList.axml
+4
-3
taskList.js
components/taskList/taskList.js
+4
-6
taskPanel.acss
components/taskPanel/taskPanel.acss
+13
-1
taskPanel.axml
components/taskPanel/taskPanel.axml
+14
-11
taskPanel.js
components/taskPanel/taskPanel.js
+4
-4
attendeeList.js
pages/attendeeList/attendeeList.js
+1
-0
excutorList.axml
pages/excutorList/excutorList.axml
+3
-2
excutorList.js
pages/excutorList/excutorList.js
+32
-13
meetingDetail.acss
pages/meetingDetail/meetingDetail.acss
+2
-2
meetingDetail.axml
pages/meetingDetail/meetingDetail.axml
+8
-8
meetingDetail.js
pages/meetingDetail/meetingDetail.js
+42
-29
exampleStore.js
stores/exampleStore.js
+1
-11
index.acss
template/checkbox/index.acss
+3
-0
No files found.
api/request.js
View file @
153cf0a3
...
...
@@ -245,10 +245,10 @@ export function isParticipate(data) {
}
//会议室详情的获取动态列表
export
function
getMeetingRoomAffairs
()
{
export
function
getMeetingRoomAffairs
(
id
)
{
return
$http
({
method
:
'get'
,
url
:
`/meet/
schedule/confirm
`
url
:
`/meet/
meeting-log/datail/4902
`
})
}
//会议室创建新任务
...
...
app.json
View file @
153cf0a3
{
"pages"
:
[
"pages/meetingDetail/meetingDetail"
,
"demo/index/index"
,
"pages/excutorList/excutorList"
,
"demo/sideslipping/sideslipping"
,
...
...
@@ -20,7 +21,6 @@
"pages/participantsDetail/participantsDetail"
,
"pages/createOrEditSchedule/createOrEditSchedule"
,
"pages/applicationDetails/applicationDetails"
,
"pages/attendeeList/attendeeList"
,
"pages/meetingDetail/meetingDetail"
"pages/attendeeList/attendeeList"
]
}
\ No newline at end of file
components/taskList/taskList.acss
View file @
153cf0a3
...
...
@@ -12,7 +12,8 @@
background: rgba(255, 255, 255, 1);
border-radius: 8rpx;
box-shadow: 0 0 8rpx 0rpx rgba(0, 0, 0, 0.04);
padding: 16rpx 26rpx;
padding: 0 16rpx;
height: 80rpx;
color: rgba(27, 38, 61, 1);
margin-bottom: 14rpx;
position: relative;
...
...
@@ -23,7 +24,7 @@
.task-box>.task-title {
flex: 1;
font-size: 28rpx;
line-height:
28
rpx;
line-height:
80
rpx;
}
.task-box>.task-title>.avater {
...
...
@@ -31,6 +32,7 @@
height: 48rpx;
position: absolute;
right: 14rpx;
top:
8
rpx;
top:
16
rpx;
line-height: 48rpx;
overflow: hidden;
}
\ No newline at end of file
components/taskList/taskList.axml
View file @
153cf0a3
...
...
@@ -2,9 +2,9 @@
<import src="../../template/checkbox/index.axml"/>
<view class="task-list">
<view class="task-box" a:for='{{taskList}}'>
<template is="checkbox" data="{{status: item.
s
tatus}}"></template>
<view class="task-title" data-pop="{{title: '会议任务', type: 'updateTask'}}" onTap="showPop" data-task="{{item}}">{{item.title}}
<template is="avater" data="{{item}}"/>
<template is="checkbox" data="{{status: item.
taskS
tatus}}"></template>
<view class="task-title" data-pop="{{title: '会议任务', type: 'updateTask'}}" onTap="showPop" data-task="{{item}}">{{item.t
askInfos.taskT
itle}}
<template is="avater" data="{{item
: item.acceptorInfo
}}"/>
</view>
</view>
</view>
\ No newline at end of file
components/taskList/taskList.js
View file @
153cf0a3
...
...
@@ -5,14 +5,13 @@ Component({
mixins
:
[],
data
:
{
show
:
false
,
currentTask
:
null
,
//
currentTask: null,
// actionList: null
},
props
:
{
isCanEdit
:
true
},
didMount
()
{
console
.
log
(
this
.
props
)
},
didUpdate
()
{
},
...
...
@@ -20,10 +19,9 @@ Component({
methods
:
{
showPop
(
e
)
{
if
(
this
.
props
.
isCanEdit
)
{
this
.
setData
({
currentTask
:
e
.
target
.
dataset
.
task
});
this
.
props
.
onShowPop
(
e
)
console
.
log
(
e
.
target
.
dataset
.
task
)
this
.
props
.
onShowPop
(
e
);
this
.
props
.
onSetCurrentTask
(
e
.
target
.
dataset
.
task
);
}
},
closePop
()
{
...
...
components/taskPanel/taskPanel.acss
View file @
153cf0a3
@import "../../template/avater/index.acss";
@import "../../template/checkbox/index.acss";
@import "../../template/deleteBtn/index.acss";
.task-column {
box-sizing: border-box;
padding: 0 42rpx 0 32rpx;
...
...
@@ -40,7 +43,6 @@
.participator-bottom {
padding: 14rpx 42rpx 14rpx 96rpx;
margin-bottom: 300rpx;
}
.people {
...
...
@@ -69,4 +71,13 @@
color: red;
font-size: 24rpx;
flex: 1;
}
.edit-column>.checkbox {
width: 32rpx;
height: 32rpx;
}
.margin-bottom {
margin-bottom: 300rpx;
}
\ No newline at end of file
components/taskPanel/taskPanel.axml
View file @
153cf0a3
...
...
@@ -3,18 +3,20 @@
<import src="../../template/checkbox/index.axml"/>
<view a:if="{{action == 'create'}}" class="picker-complete" onTap='complete'>完成</view>
<view class="task-column edit-column">
<template a:if="{{action == 'update'}}" is="checkbox" data="{{status: currentTask.
s
tatus}}"></template>
<input onBlur="inputChange" value="{{currentTask.title}}" placeholder="请输入任务标题"/>
<template a:if="{{action == 'update'}}" is="checkbox" data="{{status: currentTask.
taskS
tatus}}"></template>
<input onBlur="inputChange" value="{{currentTask.t
askInfos.taskT
itle}}" placeholder="请输入任务标题"/>
</view>
<view class="task-column participator-top">
<text class="iconicon_attender1 iconfont icon"></text>
<text class="participator-title">执行人</text>
<text class="iconicon_open iconfont icon" data-userId="{{currentTask.userId}}" onTap="handleExcutorChange"></text>
</view>
<view class="participator-bottom">
<view class="people">
<template is="avater" data="{{item: currentTask}}"/>
<view class="name">{{currentTask.username}}</view>
<view class="margin-bottom">
<view class="task-column participator-top">
<text class="iconicon_attender iconfont icon"></text>
<text class="participator-title">{{currentTask.acceptorInfo ? '执行人' : '设置执行人'}}</text>
<text class="iconright iconfont icon" data-acceptorInfo="{{currentTask.acceptorInfo}}" onTap="handleExcutorChange"></text>
</view>
<view class="participator-bottom" a:if="{{currentTask.acceptorInfo}}">
<view class="people">
<template is="avater" data="{{item: currentTask.acceptorInfo}}"/>
<view class="name">{{currentTask.acceptorInfo.username}}</view>
</view>
</view>
</view>
<template a:if="{{action == 'update'}}" is="deleteBtn" data="{{title: '删除该任务' }}"/>
\ No newline at end of file
components/taskPanel/taskPanel.js
View file @
153cf0a3
...
...
@@ -3,7 +3,7 @@ Component({
data
:
{
task
:
{
title
:
''
,
excutor
:
''
excutor
:
''
,
}
},
props
:
{
...
...
@@ -39,10 +39,10 @@ Component({
}
},
handleExcutorChange
(
e
)
{
const
userId
=
e
.
target
.
dataset
.
userId
;
const
acceptorInfo
=
e
.
target
.
dataset
.
acceptorInfo
;
//执行人页面可删除执行人
if
(
userId
)
{
dd
.
navigateTo
({
url
:
`../../pages/excutorList/excutorList?
userId=
${
userId
}
&action=
${
this
.
props
.
action
}
`
})
if
(
acceptorInfo
)
{
dd
.
navigateTo
({
url
:
`../../pages/excutorList/excutorList?
acceptorInfo=
${
JSON
.
stringify
(
acceptorInfo
)
}
&action=
${
this
.
props
.
action
}
`
})
}
//参会人列表页面可选择参会人
else
{
...
...
pages/attendeeList/attendeeList.js
View file @
153cf0a3
...
...
@@ -12,6 +12,7 @@ create.Page({
excutor
:
''
//store
},
onLoad
(
query
)
{
console
.
log
(
this
)
const
{
user
,
action
}
=
query
;
console
.
log
(
'onLoad'
)
console
.
log
(
query
)
...
...
pages/excutorList/excutorList.axml
View file @
153cf0a3
<import src="../../template/avater/index.axml"/>
<view class="column">
<template is="avater" data="{{item}}"/>
<view class="name">{{
item
.username}}
<template is="avater" data="{{item
: acceptorInfo
}}"/>
<view class="name">{{
acceptorInfo
.username}}
<text class="iconfont iconicon_close" onTap="deleteExcutor"></text>
</view>
</view>
\ No newline at end of file
pages/excutorList/excutorList.js
View file @
153cf0a3
Page
({
data
:
{},
onLoad
()
{
},
import
create
from
'dd-store'
;
import
pageStore
from
'../meetingDetail/store'
;
create
.
Page
({
store
:
pageStore
,
data
:
{
action
:
""
,
acceptorInfo
:
''
},
onLoad
(
query
)
{
this
.
setData
({
action
:
query
.
action
,
acceptorInfo
:
JSON
.
parse
(
query
.
acceptorInfo
)
})
},
deleteExcutor
()
{
dd
.
confirm
({
title
:
'删除执行人'
,
content
:
'确认删除执行人吗?'
,
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
success
:
(
res
)
=>
{
if
(
res
.
confirm
)
{
dd
.
navigateBack
();
//编辑调用删除接口
if
(
this
.
data
.
action
==
'update'
)
{
dd
.
confirm
({
title
:
'删除执行人'
,
content
:
'确认删除执行人吗?'
,
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
success
:
(
res
)
=>
{
if
(
res
.
confirm
)
{
dd
.
navigateBack
();
}
}
}
})
})
}
//更新通知任务模板
else
{
}
}
});
pages/meetingDetail/meetingDetail.acss
View file @
153cf0a3
...
...
@@ -82,14 +82,14 @@ page {
.footer>view {
width: 35rpx;
height: 35rpx;
margin: 0 38rpx;
font-size: 16rpx;
color: rgba(10, 10, 10, 0.56);
text-align: center;
}
.footer>view>.iconfont {
font-size:
40
rpx;
font-size:
36
rpx;
}
.footer>view:last-child {
...
...
pages/meetingDetail/meetingDetail.axml
View file @
153cf0a3
<import src="../../template/avater/index.axml"/>
<view class="list">
<block a:for="{{affairList}}">
<view a:if="{{item.logType == 'task
'
}}" class='compose-column'>
<view a:if="{{item.logType == 'task
_add' && item.taskViewList
}}" class='compose-column'>
<view class="avater task-avater">
<text class="iconfont iconicon_task1"></text>
</view>
...
...
@@ -9,12 +9,12 @@
会议任务
<text>{{item.createTime}}</text>
</view>
<task-list onShowPop="showPop"
taskList="{{item.taskInfos
}}" onCheckChange="checkChange"/>
<task-list onShowPop="showPop"
onSetCurrentTask="setCurrentTask" taskList="{{item.taskViewList
}}" onCheckChange="checkChange"/>
</view>
<view a:if="{{item.logType == '
asseory'
}}" class='compose-column'>
<template is="avater" data="{{item}}"/>
<view a:if="{{item.logType == '
schedule_accessory_add' && item.fileView.fileInfos
}}" class='compose-column'>
<template is="avater" data="{{item
: item.fileView.creatorInfo
}}"/>
<view class="title">
{{item.
creator
}}
{{item.
fileView.creatorInfo.username
}}
<text>{{item.createTime}}</text>
</view>
<view class="desc">
...
...
@@ -22,17 +22,17 @@
</view>
<file-list fileList="{{item.fileInfos}}" onReload="reload"/>
</view>
<view a:
else class='simple-column'>{{item.content
}}</view>
<view a:
if="{{item.content}}" class='simple-column'>{{item.content}}{{item.createTime
}}</view>
</block>
</view>
<view class="footer">
<view onTap="showPop" data-pop="{{title: '创建任务', type: 'createTask'}}">
<text class="iconfont iconicon_
data
"></text>任务</view>
<text class="iconfont iconicon_
task1
"></text>任务</view>
<view>
<text class="iconfont iconicon_data"></text>文件</view>
<text class="devider"></text>
<view>
<text class="iconfont iconicon_
data
"></text></view>
<text class="iconfont iconicon_
share1
"></text></view>
</view>
<popup show="{{show}}" onClose="closePop" title="{{pop.title}}">
<!-- 任务创建弹出框 -->
...
...
pages/meetingDetail/meetingDetail.js
View file @
153cf0a3
...
...
@@ -10,41 +10,48 @@ create.Page({
pop
:
{
title
:
''
,
type
:
''
}
},
currentTask
:
{}
},
onLoad
()
{
onLoad
(
query
)
{
this
.
reload
();
},
//获取动态列表
reload
()
{
// getMeetingRoomAffairs().then(res => {
// this.store.data.affairList = res.data.data;
// this.update();
// })
this
.
store
.
data
.
affairList
=
[{
id
:
1
,
content
:
'大actionList鹏13::00创建了会议'
,
logType
:
''
},
{
id
:
2
,
username
:
'大鹏'
,
creator
:
'大鹏'
,
createTime
:
'13::00'
,
logType
:
'asseory'
,
headUrl
:
''
,
fileInfos
:
[{
filename
:
'打算的你到哪搜点'
,
fileSize
:
'1201'
}]
},
{
id
:
2
,
creator
:
'大鹏'
,
createTime
:
'13::00'
,
logType
:
'task'
,
taskInfos
:
[
{
status
:
false
,
title
:
'梳理产品流程图'
,
headUrl
:
''
,
username
:
'name'
,
userId
:
'1'
},
{
status
:
true
,
title
:
'梳理产品流程图2'
,
headUrl
:
''
,
username
:
'name2'
,
userId
:
'2'
getMeetingRoomAffairs
().
then
(
res
=>
{
const
affairList
=
res
.
data
.
data
;
const
newAffairList
=
affairList
.
map
(
it
=>
{
if
(
it
.
logType
==
'schedule_accessory_add'
)
{
if
(
it
.
fileView
.
creatorInfo
)
{
it
.
fileView
.
creatorInfo
=
JSON
.
parse
(
it
.
fileView
.
creatorInfo
);
}
if
(
it
.
fileView
.
fileInfos
)
{
it
.
fileView
.
fileInfos
=
JSON
.
parse
(
it
.
fileView
.
fileInfos
)
}
return
it
}
]
}
];
else
if
(
it
.
logType
===
'task_add'
)
{
it
.
taskViewList
.
map
(
o
=>
{
if
(
o
.
acceptorInfo
)
{
o
.
acceptorInfo
=
JSON
.
parse
(
o
.
acceptorInfo
)
}
if
(
o
.
creatorInfo
)
{
o
.
creatorInfo
=
JSON
.
parse
(
o
.
creatorInfo
)
}
if
(
o
.
taskInfos
)
{
o
.
taskInfos
=
JSON
.
parse
(
o
.
taskInfos
)
}
return
o
})
return
it
}
return
it
})
console
.
log
(
newAffairList
)
this
.
store
.
data
.
affairList
=
newAffairList
;
this
.
update
();
})
},
showPop
(
e
)
{
this
.
setData
({
...
...
@@ -57,6 +64,12 @@ create.Page({
show
:
false
})
},
//设置修改任务弹框中当前任务
setCurrentTask
(
currentTask
)
{
this
.
setData
({
currentTask
})
},
//修改任务标题
inputChange
(
value
)
{
console
.
log
(
value
);
...
...
stores/exampleStore.js
View file @
153cf0a3
class
Store
{
data
=
{
participatorList
:
[
{
status
:
true
,
username
:
'Ceshi'
,
userId
:
1
,
headUrl
:
''
,
platform
:
'dingtalk'
},
{
status
:
false
,
username
:
'Ceshi2'
,
userId
:
2
,
headUrl
:
''
,
platform
:
'dingtalk'
},
{
status
:
false
,
username
:
'Ceshi3'
,
userId
:
3
,
headUrl
:
''
,
platform
:
'dingtalk'
}
],
// 参会人列表
participatorList
:
[],
// 参会人列表
locationName
:
''
,
participatorUserId
:
[],
// 参会人的userId
userList
:
[],
...
...
template/checkbox/index.acss
View file @
153cf0a3
...
...
@@ -11,4 +11,6 @@
.checkbox-active>.iconfont {
color: rgba(77, 217, 100, 1);
font-size: 24rpx;
top: -3rpx;
position: relative;
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment