# 任务

# 任务集合[TaskSet]

任务集合是相同类型任务要素的集合。

任务集合的常用属性如下:

属性名 值类型 属性描述
name String 任务集合名称
remark String 备注

常用方法如下: |setName|void|设置任务集合名称| |createTask|Promise< TaskFeature >|创建任务| |updateTask|Promise< void >|更新任务| |deleteTask|Promise< void >|删除任务|

# 1、获取任务集合

let taskSets = Cellsys.organization.taskSets;//初始化成功后可直接获取组织对象
if(taskSets.length > 0){
    let taskSet = taskSets[0];
    let name = taskSet.name;//集合名称
    let remark = taskSet.remark;//集合备注信息
}
1
2
3
4
5
6

# 2、新增任务集合

任务集合通过组织[Organization]对象创建。具体操作见代码示例

Cellsys.organization.createTaskSet({
        "name": "集合名称",
        "remark": "集合描述"
    })
    .then(taskSet => {
        let newTaskSet = taskSet; //创建成功后会返回新任务集合对象
    })
    .catch(error => {
        console.log(error.code)
        console.log(error.message)
    })
1
2
3
4
5
6
7
8
9
10
11

# 3、修改任务集合

任务集合通过组织[Organization]对象来修改。具体操作见代码示例

taskSet.setName("修改名称");
taskSet.setRemark("修改备注");
Cellsys.organization.updateTaskSet(taskSet)
    .then(() => {
         //修改成功
        let name = taskSet.name;//修改后的名称
        let remark = taskSet.remark;//修改后的备注
    })
    .catch(error => {
        console.log(error.code)
        console.log(error.message)
    })
1
2
3
4
5
6
7
8
9
10
11
12

# 4、删除任务集合

任务集合通过组织[Organization]对象来删除。具体操作见代码示例

Cellsys.organization.deleteTaskSet(taskSet)
    .then(() => {
        //删除成功
    })
    .catch(error => {
        console.log(error.code)
        console.log(error.message)
    })

1
2
3
4
5
6
7
8
9

# 任务要素[TaskFeature]

任务要素的常用属性如下:

属性名 值类型 属性描述
name String 任务要素名称
remark String 备注
startTime DateTime 任务开始时间
endTime DateTime 任务截止时间
finishTime DateTime 任务完成时间
excuteState String 任务执行状态

常用方法如下:

|updateTask|Promise< void >|更新任务| |deleteTask|Promise< void >|删除任务|

# 1、获取任务要素

任务集合[TaskSet]提供了query方法来查询自身集合中的任务要素。具体操作见代码示例

taskSet.queryTasks()
    .then(queryResult => {
        let pageInfo = queryResult.pageInfo;//页码信息
        let currentPage = pageInfo.pageNo;//当前的页码
        let pageSize = pageInfo.pageSize;//每页数量
        let totalPage = pageInfo.totalPage;//总页数
        let totalCount = pageInfo.totalCount;//数据总量
        /*返回的具体数据*/
        let taskFeatures = queryResult.data; //任务集合数据,即Array<taskFeature>
    })
    .catch(error => {
        console.log(error.code); //错误码
        console.log(error.message); //错误信息
    })
1
2
3
4
5
6
7
8
9
10
11
12
13
14

# 2、新增任务

任务要素[TaskFeature]通过任务集合[TaskSet]对象创建。具体操作见代码示例

taskSet.createTask({
        "name": "任务名称",
        "remark": "备注信息"
    })
    .then((taskFeature) => {
        let newTaskFeature = taskFeature; //创建成功后返回新创建的任务要素对象
        let name = newTaskFeature.name; //获取新任务名称
        let remark = newTaskFeature.remark; //获取新任务的备注信息
    })
    .catch(error => {
        console.log(error.code)
        console.log(error.message)
    })
1
2
3
4
5
6
7
8
9
10
11
12
13

# 3、修改任务

任务要素[TaskFeature]通过任务集合[TaskSet]对象修改。具体操作见代码示例

taskFeature.setName("修改后的名称");
taskFeature.setRemark("修改备注信息");
taskSet.updateTask(taskFeature)
    .then(() => {
        //修改成功
    })
    .catch(error => {
        console.log(error.code)
        console.log(error.message)
    })
1
2
3
4
5
6
7
8
9
10

# 4、删除任务

任务要素[TaskFeature]通过任务集合[TaskSet]对象删除。具体操作见代码示例

taskSet.deleteTask(taskFeature)
    .then(() => {
        //删除成功
    })
    .catch(error => {
        console.log(error.code)
        console.log(error.message)
    })
1
2
3
4
5
6
7
8

# 任务基础信息

/*基础信息*/
let name = taskFeature.name;//名称
let remark = taskFeature.remark;//备注/描述
/*任务执行人*/
taskFeature.queryExecutors()
    .then(queryResult => {
        let pageInfo = queryResult.pageInfo;//页码信息
        let currentPage = pageInfo.pageNo;//当前的页码
        let pageSize = pageInfo.pageSize;//每页数量
        let totalPage = pageInfo.totalPage;//总页数
        let totalCount = pageInfo.totalCount;//数据总量
        /*返回任务执行人的数据*/
        let memberFeatures = queryResult.data; //任务执行人数据,即Array<memberFeature>
    })
    .catch(error => {
        console.log(error.code); //错误码
        console.log(error.message); //错误信息
    })
/*任务期限*/
let startTime = taskFeature.startTime;//开始时间
let endTime = taskFeature.endTime;//结束时间
let finishTime = taskFeature.finishTime;//实际完成时间
/*任务状态*/
let taskExecuteState = taskFeature.excuteState;//枚举类:等待、执行中、完成、取消
/*涉及的任务图形(点线面)*/
taskFeature.queryTaskGraph()
    .then(queryResult => {
            let pageInfo = queryResult.pageInfo;//页码信息
            let currentPage = pageInfo.pageNo;//当前的页码
            let pageSize = pageInfo.pageSize;//每页数量
            let totalPage = pageInfo.totalPage;//总页数
            let totalCount = pageInfo.totalCount;//数据总量
            /*返回任务图形的数据*/
            let taskGraph = queryResult.data; //任务图形数据,即Array<taskGraph>
        })
    .catch(error => {
        console.log(error.code); //错误码
        console.log(error.message); //错误信息
    })
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

# 任务图形

任务图形与地图要素类似,都是由点线面三种元素构成。门户系统中,任务图形可直接选择地图要素导入,或自定义生成。

let name = taskGraph.name;//名称
let remark = taskGraph.remark;//备注/描述
let icon = taskGraph.icon;//图标
let mapSymbol = taskGraph.symbol;//地图样式,根据任务图形不同返回不同类型:标记-PointSymbol;路线-PolylineSymbol;区域-PolygonSymbol
let geometry = taskGraph.geometry;//图形坐标,根据任务图形不同返回不同类型:标记-MapPoint;路线-Polyline;区域-Polygon
let fenceInfo = taskGraph.fenceInfo;//围栏信息
1
2
3
4
5
6