1aad3aa9771fa1e5c08e9732480f12e2d6e26e52
[ccsdk/features.git] / sdnr / wt / odlux / apps / networkMapApp / src / model / stadokOrder.ts
1 /**
2  * ============LICENSE_START========================================================================
3  * ONAP : ccsdk feature sdnr wt odlux
4  * =================================================================================================
5  * Copyright (C) 2021 highstreet technologies GmbH Intellectual Property. All rights reserved.
6  * =================================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
8  * in compliance with the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software distributed under the License
13  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
14  * or implied. See the License for the specific language governing permissions and limitations under
15  * the License.
16  * ============LICENSE_END==========================================================================
17  */
18
19 export type StadokOrder = {
20     date: Date,
21     assignedUser: string,
22     state: string, //todo: type restrict
23     tasks: Task[],
24
25
26 };
27
28 export class OrderToDisplay {
29
30     static parse = (stadokOrder: StadokOrder) =>{
31         let order = new OrderToDisplay();
32         order.assignedUser=stadokOrder.assignedUser;
33         order.state=stadokOrder.state;
34
35         const firstOpenTask = stadokOrder.tasks.find(task => !task.status);
36         
37         if(firstOpenTask){
38             order.currentTask=firstOpenTask.description;
39         }else{
40             order.currentTask="No task description available";
41         }
42
43         return order;
44     }
45
46     state: string;
47     assignedUser: string;
48     currentTask: string;
49
50 };
51
52 type Task = {
53     type: string,
54     description: string,
55     status: boolean
56 }