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
323c976a
Commit
323c976a
authored
Oct 10, 2020
by
xiexiaoqin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 修改任务列表的状态
parent
46b647de
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
326 additions
and
30 deletions
+326
-30
login.js
api/login.js
+1
-0
app.acss
app.acss
+1
-1
createTask.js
pages/createTask/createTask.js
+2
-1
index.js
pages/index/index.js
+28
-1
meetingDetail.js
pages/meetingDetail/meetingDetail.js
+9
-26
store.js
pages/meetingDetail/store.js
+57
-0
tasks.js
pages/tasks/tasks.js
+5
-1
websocket.js
utils/websocket.js
+223
-0
No files found.
api/login.js
View file @
323c976a
...
@@ -24,6 +24,7 @@ export default async function login() {
...
@@ -24,6 +24,7 @@ export default async function login() {
getApp
().
globalData
.
token
=
res
.
data
.
data
.
accessToken
.
access_token
;
getApp
().
globalData
.
token
=
res
.
data
.
data
.
accessToken
.
access_token
;
getApp
().
globalData
.
name
=
res
.
data
.
data
.
oapiUser
.
name
;
getApp
().
globalData
.
name
=
res
.
data
.
data
.
oapiUser
.
name
;
getApp
().
globalData
.
userid
=
res
.
data
.
data
.
oapiUser
.
userid
;
getApp
().
globalData
.
userid
=
res
.
data
.
data
.
oapiUser
.
userid
;
getApp
().
globalData
.
mwUserId
=
res
.
data
.
data
.
mwUserId
;
getApp
().
globalData
.
avatar
=
res
.
data
.
data
.
oapiUser
.
avatar
;
getApp
().
globalData
.
avatar
=
res
.
data
.
data
.
oapiUser
.
avatar
;
getApp
().
globalData
.
userInfo
=
JSON
.
stringify
({
getApp
().
globalData
.
userInfo
=
JSON
.
stringify
({
username
:
oapiUser
.
name
,
username
:
oapiUser
.
name
,
...
...
app.acss
View file @
323c976a
...
@@ -62,7 +62,7 @@ view {
...
@@ -62,7 +62,7 @@ view {
margin-top: 10rpx;
margin-top: 10rpx;
}
}
.list-item {
view
.list-item {
border: none;
border: none;
border-radius: 0;
border-radius: 0;
border-bottom: 2rpx solid rgba(25, 31, 37, 0.12);
border-bottom: 2rpx solid rgba(25, 31, 37, 0.12);
...
...
pages/createTask/createTask.js
View file @
323c976a
...
@@ -73,7 +73,8 @@ create.Page({
...
@@ -73,7 +73,8 @@ create.Page({
if
(
res
.
data
.
data
)
{
if
(
res
.
data
.
data
)
{
const
addData
=
res
.
data
.
data
[
0
].
commentListDataModelList
[
0
];
const
addData
=
res
.
data
.
data
[
0
].
commentListDataModelList
[
0
];
addData
.
updateTime
=
getCreateShowTime
(
addData
.
updateTime
);
addData
.
updateTime
=
getCreateShowTime
(
addData
.
updateTime
);
this
.
store
.
data
.
affairList
.
unshift
(
addData
)
this
.
store
.
data
.
affairList
.
unshift
(
addData
);
this
.
store
.
data
.
tasks
.
unshift
(
addData
);
dd
.
navigateBack
();
dd
.
navigateBack
();
}
}
}
}
...
...
pages/index/index.js
View file @
323c976a
...
@@ -148,10 +148,12 @@ create.Page({
...
@@ -148,10 +148,12 @@ create.Page({
dd
.
onSocketMessage
((
res
)
=>
{
dd
.
onSocketMessage
((
res
)
=>
{
dd
.
alert
({
content
:
'收到数据!'
+
JSON
.
stringify
(
res
)
});
dd
.
alert
({
content
:
'收到数据!'
+
JSON
.
stringify
(
res
)
});
});
});
//this.WebSocketTest();
},
},
connect_start
()
{
connect_start
()
{
dd
.
connectSocket
({
dd
.
connectSocket
({
url
:
`ws://
139.196.213.18:9999/meet-websocket/websocket/
${
getApp
().
globalData
.
useri
d
}
`
,
// 开发者服务器接口地址,必须是 wss 协议,且域名必须是后台配置的合法域名
url
:
`ws://
gateway-beta.mingwork.com/meet-websocket/websocket/
${
getApp
().
globalData
.
mwUserI
d
}
`
,
// 开发者服务器接口地址,必须是 wss 协议,且域名必须是后台配置的合法域名
success
:
(
res
)
=>
{
success
:
(
res
)
=>
{
},
},
...
@@ -162,6 +164,31 @@ create.Page({
...
@@ -162,6 +164,31 @@ create.Page({
}
}
});
});
},
},
WebSocketTest
()
{
// 打开一个 web socket
var
ws
=
new
WebSocket
(
`wss://gateway-beta.mingwork.com/meet-websocket/websocket/1310054599841542146`
);
console
.
log
(
ws
);
ws
.
onopen
=
function
()
{
// Web Socket 已连接上,使用 send() 方法发送数据
ws
.
send
(
"发送数据"
);
dd
.
alert
({
content
:
"数据发送中..."
});
};
ws
.
onmessage
=
function
(
evt
)
{
var
received_msg
=
evt
.
data
;
console
.
log
(
received_msg
)
dd
.
alert
({
content
:
"数据已接收..."
});
};
ws
.
onclose
=
function
()
{
// 关闭 websocket
dd
.
alert
({
content
:
"连接已关闭..."
});
};
},
//添加单次会议
//添加单次会议
async
addOnceMeeting
(
content
)
{
async
addOnceMeeting
(
content
)
{
await
this
.
getData
(
true
);
await
this
.
getData
(
true
);
...
...
pages/meetingDetail/meetingDetail.js
View file @
323c976a
...
@@ -1017,32 +1017,15 @@ create.Page({
...
@@ -1017,32 +1017,15 @@ create.Page({
},
},
//修改任务状态
//修改任务状态
changeTaskStatus
(
e
)
{
changeTaskStatus
(
e
)
{
const
data
=
{
this
.
store
.
changeStatus
(
this
.
store
.
data
.
scheduleId
,
{
meetingId
:
this
.
store
.
data
.
scheduleId
,
commentId
:
e
.
commentId
,
platform
:
'dingTalk'
,
processState
:
e
.
status
,
taskModifyModel
:
{
taskId
:
e
.
taskId
commentId
:
e
.
commentId
,
},
()
=>
{
processState
:
e
.
status
,
dd
.
pageScrollTo
({
taskId
:
e
.
taskId
scrollTop
:
0
}
})
};
})
updateMeetingTask
(
data
).
then
(
res
=>
{
if
(
res
.
data
.
code
===
0
)
{
const
[
index
]
=
this
.
getIndexFromAffairList
(
e
.
commentId
);
if
(
index
!==
-
1
)
{
const
changeData
=
this
.
store
.
data
.
affairList
[
index
];
changeData
.
meetingTaskSimpleViewModel
.
processState
=
e
.
status
;
changeData
.
updateTime
=
getCreateShowTime
(
new
Date
());
this
.
store
.
data
.
affairList
.
splice
(
index
,
1
);
this
.
store
.
data
.
affairList
.
unshift
(
changeData
);
dd
.
pageScrollTo
({
scrollTop
:
0
})
}
this
.
update
();
}
});
},
},
// 创建任务
// 创建任务
goCreateTask
(
e
)
{
goCreateTask
(
e
)
{
...
...
pages/meetingDetail/store.js
View file @
323c976a
import
{
getCreateShowTime
}
from
'../../utils/utils'
;
import
{
updateMeetingTask
}
from
'../../api/request'
;
class
Store
{
class
Store
{
data
=
{
data
=
{
affairList
:
[],
affairList
:
[],
...
@@ -17,5 +19,59 @@ class Store {
...
@@ -17,5 +19,59 @@ class Store {
logId
:
''
,
logId
:
''
,
relatedAppPlatform
:
null
relatedAppPlatform
:
null
}
}
changeStatus
(
meetingId
,
taskModifyModel
,
callBack
)
{
const
data
=
{
meetingId
:
meetingId
,
platform
:
'dingTalk'
,
taskModifyModel
};
// 提前改
const
index
=
this
.
data
.
affairList
.
findIndex
(
it
=>
it
.
commentId
===
taskModifyModel
.
commentId
);
if
(
index
!==
-
1
)
{
// 修改详情列表数据
const
changeData
=
this
.
data
.
affairList
[
index
];
changeData
.
meetingTaskSimpleViewModel
.
processState
=
taskModifyModel
.
processState
;
changeData
.
updateTime
=
getCreateShowTime
(
new
Date
());
this
.
data
.
affairList
.
splice
(
index
,
1
);
this
.
data
.
affairList
.
unshift
(
changeData
);
// 修改任务列表页面数据
this
.
data
.
tasks
[
index
].
processState
=
taskModifyModel
.
processState
;
this
.
data
.
tasks
[
index
].
updateTime
=
getCreateShowTime
(
new
Date
());
this
.
update
();
if
(
callBack
)
{
callBack
()
}
}
updateMeetingTask
(
data
).
then
(
res
=>
{
if
(
res
.
data
.
code
===
0
)
{
// const index = this.data.affairList.findIndex(it => it.commentId === taskModifyModel.commentId);
// if (index !== -1) {
// // 修改详情列表数据
// const changeData = this.data.affairList[index];
// changeData.meetingTaskSimpleViewModel.processState = taskModifyModel.processState;
// changeData.updateTime = getCreateShowTime(new Date());
// this.data.affairList.splice(index, 1);
// this.data.affairList.unshift(changeData);
// // 修改任务列表页面数据
// this.data.tasks[index].processState = taskModifyModel.processState;
// this.data.tasks[index].updateTime = getCreateShowTime(new Date());
// this.update();
// if (callBack) {
// callBack()
// }
// }
}
});
}
}
}
export
default
new
Store
()
export
default
new
Store
()
\ No newline at end of file
pages/tasks/tasks.js
View file @
323c976a
...
@@ -12,6 +12,10 @@ create.Page({
...
@@ -12,6 +12,10 @@ create.Page({
})
})
},
},
changeTaskStatus
({
status
,
taskId
,
commentId
,
meetingId
})
{
changeTaskStatus
({
status
,
taskId
,
commentId
,
meetingId
})
{
this
.
store
.
changeStatus
(
this
.
data
.
meetingId
,
{
commentId
:
commentId
,
processState
:
status
,
taskId
:
taskId
})
}
}
});
});
utils/websocket.js
0 → 100644
View file @
323c976a
// socket已经连接成功
var
socketOpen
=
false
// socket已经调用关闭function
var
socketClose
=
false
// socket发送的消息队列
var
socketMsgQueue
=
[]
// 判断心跳变量
var
heart
=
''
// 心跳失败次数
var
heartBeatFailCount
=
0
// 终止心跳
var
heartBeatTimeOut
=
null
;
// 终止重新连接
var
connectSocketTimeOut
=
null
;
var
webSocket
=
{
/**
* 创建一个 WebSocket 连接
* @param {options}
* url String 是 开发者服务器接口地址,必须是 wss 协议,且域名必须是后台配置的合法域名
* header Object 否 HTTP Header , header 中不能设置 Referer
* method String 否 默认是GET,有效值:OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
* protocols StringArray 否 子协议数组 1.4.0
* success Function 否 接口调用成功的回调函数
* fail Function 否 接口调用失败的回调函数
* complete Function 否 接口调用结束的回调函数(调用成功、失败都会执行)
*/
connectSocket
:
function
(
options
)
{
// dd.showLoading({
// title: '',
// mask: true,
// })
socketOpen
=
false
socketClose
=
false
socketMsgQueue
=
[]
dd
.
connectSocket
({
url
:
`wss://mingpay-websocket.mingwork.com/v1/mingpaywebsocket?param=
${
dd
.
corpId
}
_
${
dd
.
getStorageSync
({
key
:
'userId'
}).
data
}
`
,
// url: `ws://192.168.1.102:8400/v1/mingpaywebsocket?param=${dd.corpId}_${dd.getStorageSync({ key: 'userId' }).data}`,
data
:
{},
header
:
{
'content-type'
:
'application/json'
},
method
:
"GET"
,
success
:
function
(
res
)
{
console
.
log
(
res
,
`wss://gateway.mingwork.com/mingpay-phone/v1/mingpaywebsocket?param=
${
dd
.
corpId
}
_
${
dd
.
getStorageSync
({
key
:
'userId'
}).
data
}
`
)
if
(
options
)
{
// 成功回调
options
.
success
&&
options
.
success
(
res
);
}
},
fail
:
function
(
res
)
{
console
.
log
(
res
)
if
(
options
)
{
// 失败回调
options
.
fail
&&
options
.
fail
(
res
);
}
}
})
},
/**
* 通过 WebSocket 连接发送数据
* @param {options}
* data String / ArrayBuffer 是 需要发送的内容
* success Function 否 接口调用成功的回调函数
* fail Function 否 接口调用失败的回调函数
* complete Function 否 接口调用结束的回调函数(调用成功、失败都会执行)
*/
sendSocketMessage
:
function
(
options
)
{
if
(
socketOpen
)
{
dd
.
sendSocketMessage
({
data
:
options
.
msg
,
success
:
function
(
res
)
{
if
(
options
)
{
options
.
success
&&
options
.
success
(
res
);
}
},
fail
:
function
(
res
)
{
if
(
options
)
{
options
.
fail
&&
options
.
fail
(
res
);
}
}
})
}
else
{
socketMsgQueue
.
push
(
options
.
msg
)
}
},
/**
* 关闭 WebSocket 连接。
* @param {options}
* code Number 否 一个数字值表示关闭连接的状态号,表示连接被关闭的原因。如果这个参数没有被指定,默认的取值是1000 (表示正常连接关闭)
* reason String 否 一个可读的字符串,表示连接被关闭的原因。这个字符串必须是不长于123字节的UTF-8 文本(不是字符)
* fail Function 否 接口调用失败的回调函数
* complete Function 否 接口调用结束的回调函数(调用成功、失败都会执行)
*/
closeSocket
:
function
(
options
)
{
if
(
connectSocketTimeOut
)
{
clearTimeout
(
connectSocketTimeOut
);
connectSocketTimeOut
=
null
;
}
socketClose
=
true
;
var
self
=
this
;
self
.
stopHeartBeat
();
dd
.
closeSocket
({
success
:
function
(
res
)
{
console
.
log
(
'WebSocket 已关闭!'
);
if
(
options
)
{
options
.
success
&&
options
.
success
(
res
);
}
},
fail
:
function
(
res
)
{
if
(
options
)
{
options
.
fail
&&
options
.
fail
(
res
);
}
}
})
},
// 收到消息回调
onSocketMessageCallback
:
function
(
msg
)
{
},
// 开始心跳
startHeartBeat
:
function
()
{
console
.
log
(
'socket开始心跳'
)
var
self
=
this
;
heart
=
'heart'
;
self
.
heartBeat
();
},
// 结束心跳
stopHeartBeat
:
function
()
{
console
.
log
(
'socket结束心跳'
)
var
self
=
this
;
heart
=
''
;
if
(
heartBeatTimeOut
)
{
clearTimeout
(
heartBeatTimeOut
);
heartBeatTimeOut
=
null
;
}
if
(
connectSocketTimeOut
)
{
clearTimeout
(
connectSocketTimeOut
);
connectSocketTimeOut
=
null
;
}
},
// 心跳
heartBeat
:
function
()
{
var
self
=
this
;
if
(
!
heart
)
{
return
;
}
self
.
sendSocketMessage
({
msg
:
JSON
.
stringify
({
'msg_type'
:
'heart'
}),
success
:
function
(
res
)
{
console
.
log
(
'socket心跳成功'
);
if
(
heart
)
{
heartBeatTimeOut
=
setTimeout
(()
=>
{
self
.
heartBeat
();
},
7000
);
}
},
fail
:
function
(
res
)
{
console
.
log
(
'socket心跳失败'
);
if
(
heartBeatFailCount
>
2
)
{
// 重连
self
.
connectSocket
();
}
if
(
heart
)
{
heartBeatTimeOut
=
setTimeout
(()
=>
{
self
.
heartBeat
();
},
7000
);
}
heartBeatFailCount
++
;
},
});
}
}
// 监听WebSocket连接打开事件。callback 回调函数
dd
.
onSocketOpen
(
function
(
res
)
{
console
.
log
(
'WebSocket连接已打开!'
)
// 如果已经调用过关闭function
if
(
socketClose
)
{
webSocket
.
closeSocket
();
}
else
{
socketOpen
=
true
for
(
var
i
=
0
;
i
<
socketMsgQueue
.
length
;
i
++
)
{
webSocket
.
sendSocketMessage
(
socketMsgQueue
[
i
])
}
socketMsgQueue
=
[]
webSocket
.
startHeartBeat
();
}
})
// 监听WebSocket错误。
dd
.
onSocketError
(
function
(
res
)
{
console
.
log
(
'WebSocket连接打开失败,请检查!'
,
res
)
})
// 监听WebSocket接受到服务器的消息事件。
dd
.
onSocketMessage
(
function
(
res
)
{
console
.
log
(
'收到服务器内容:'
+
res
.
data
)
webSocket
.
onSocketMessageCallback
(
res
.
data
)
})
// 监听WebSocket关闭。
dd
.
onSocketClose
(
function
(
res
)
{
console
.
log
(
'WebSocket 已关闭!'
)
if
(
!
socketClose
)
{
clearTimeout
(
connectSocketTimeOut
)
connectSocketTimeOut
=
setTimeout
(()
=>
{
webSocket
.
connectSocket
();
},
3000
);
}
})
module
.
exports
=
webSocket
\ 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