# 十、任务

# (一)任务集合[TaskSet]

# 1、获取任务集合

let organization = Cellsys.shared.organization //初始化成功后可直接获取组织对象
let taskSets = organization.taskSets
1
2

# 2、基础信息

let name = taskSet.name //名称
let remark = taskSet.remark //备注
let icon = taskSet.icon //图标
1
2
3

# 3、新增任务集合

organization.createTaskSet(name: "任务集合名称", remark: "备注信息") { obj, errorMessage in
    //成功
    if (obj != nil) {
        let taskSet = obj?.data as? TaskSet
        
    }
    //失败
    if (errorMessage != nil) {
        let errorCode = errorMessage?.code //错误码
        let errorMsg = errorMessage?.message //错误信息
        
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13

# 4、修改任务集合

taskSet.remark = "修改备注信息"
organization.updateTaskSet(taskSet: taskSet) { obj, errorMessage in
    //成功
    if (obj != nil) {

    }
    //失败
    if (errorMessage != nil) {
        let errorCode = errorMessage?.code //错误码
        let errorMsg = errorMessage?.message //错误信息
    }
}
1
2
3
4
5
6
7
8
9
10
11
12

# 5、删除任务集合

organization.deleteTaskSet(taskSet: taskSet) { obj, errorMessage in
    //成功
    if (obj != nil) {
        
    }
    //失败
    if (errorMessage != nil) {
        let errorCode = errorMessage?.code //错误码
        let errorMsg = errorMessage?.message //错误信息
    }
}
1
2
3
4
5
6
7
8
9
10
11

# (二)任务要素[TaskFeature]

# 1、获取任务

taskSet?.queryTasks(callback: { obj, errorMessage in
    //成功
    if (obj != nil) {
        let tasks = obj as? [TaskFeature]
    }
    //失败
    if (errorMessage != nil) {
        let errorCode = errorMessage?.code //错误码
        let errorMsg = errorMessage?.message //错误信息
    }
})
1
2
3
4
5
6
7
8
9
10
11

# 2、基础信息

/*基础信息*/
let name = taskFeature.name //名称
let remark = taskFeature.remark //备注/描述
let icon = taskFeature.icon //图标
/*任务执行人*/
taskFeature?.queryExecutors(callback: { obj, errorMessage in
    //成功
    if (obj != nil) {
        let memberFeatures = obj?.data as? [MemberFeature]
    }
    //失败
    if (errorMessage != nil) {
        let errorCode = errorMessage?.code //错误码
        let errorMsg = errorMessage?.message //错误信息
    }
})
/*任务期限*/
let startTime = taskFeature.startTime//开始时间
let endTime = taskFeature.endTime//结束时间
let finishTime = taskFeature.finishTime//实际完成时间
/*任务状态*/
let taskExecuteState = taskFeature.excuteState//枚举类:等待、执行中、完成、取消
/*涉及的任务图形(点线面)*/
taskFeature?.queryTaskGraphs(callback: { obj, errorMessage in
    //成功
    if (obj != nil) {
        let taskGraphs = obj?.data as? [TaskGraph]
    }
    //失败
    if (errorMessage != nil) {
        let errorCode = errorMessage?.code //错误码
        let errorMsg = errorMessage?.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

# 3、任务图形

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

let name = taskGraph.name//名称
let remark = taskGraph.remark//备注/描述
let icon = taskGraph.icon//图标
let mapSymbol = taskGraph.symbol//地图样式
let geometry = taskGraph.geometry//图形坐标
let fenceInfo = taskGraph.fenceInfo//围栏信息
1
2
3
4
5
6

# 4、新增任务

let name = "任务名称"
let remark = "备注信息"
let startTime = DateTime.new(timestamp: Int(CSDateTool.getNowTimeMilliStamp()))
let endTime = DateTime.new(timestamp: Int(CSDateTool.getNowTimeMilliStamp())! + 3600000)
taskSet.createTaskFeature(name: name, remark: remark, startTime: startTime, endTime: endTime) { obj, errorMessage in
    //成功
    if (obj != nil) {
        let taskFeature = obj?.data as? TaskFeature
    }
    //失败
    if (errorMessage != nil) {
        let errorCode = errorMessage?.code //错误码
        let errorMsg = errorMessage?.message //错误信息
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 5、修改任务

taskFeature.remark = "备注信息"
taskSet.updateTaskFeature(taskFeature: taskFeature) { obj, errorMessage in
    //成功
    if (obj != nil) {
    }
    //失败
    if (errorMessage != nil) {
        let errorCode = errorMessage?.code //错误码
        let errorMsg = errorMessage?.message //错误信息
    }
}
1
2
3
4
5
6
7
8
9
10
11

# 6、删除任务

taskSet.deleteTaskFeature(taskFeature: taskFeature) { obj, errorMessage in
    //成功
    if (obj != nil) {
    }
    //失败
    if (errorMessage != nil) {
        let errorCode = errorMessage?.code //错误码
        let errorMsg = errorMessage?.message //错误信息
    }
}

1
2
3
4
5
6
7
8
9
10
11