rebuild GUI structure(only changed modules' name)
[vnfsdk/refrepo.git] / monitor / src / main / webapp / monitor / js / dacController.js
1 /*
2  * Copyright 2016-2017, CMCC Technologies Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *         http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 var vm = avalon
17     .define({
18         $id : "dacController",
19         $queryDACsRestUrl : '/openoapi/umc/v1/monitor/dacs',
20         server_rtn:{
21                 info_block:false,
22                 warning_block:false,
23                 rtn_info:""
24             },
25         dacLoading:false,
26         dacChecking:false,     
27         dacInfoArray :  [],
28         dacInfo:{
29             oid:"",
30             moc:"",
31             nodeLabel : '',
32             ipAddress : '',
33             note : ''
34         },
35         dacDlgInfo:{
36                 titleName:"",
37                 saveType:""
38         },       
39         initDAC:function(){
40             vm.dacLoading=true;
41
42             $.ajax({
43                     "type": 'get',
44                     "url":  vm.$queryDACsRestUrl,
45                     "dataType": "json",
46                     success: function (resp) {  
47                          vm.dacInfoArray = (resp==null)?[]:resp;  
48                          vm.dacInfoArray.sort(function(a,b){return a.nodeLabel>b.nodeLabel?1:-1});                 
49                     },
50                      error: function(XMLHttpRequest, textStatus, errorThrown) {
51                            // bootbox.alert("query DAC Info fail:"+":"+errorThrown);   
52                            monitorUtil.growl($.i18n.prop('com_zte_openo_umc_monitor_dac_query_failInfo')+errorThrown,"danger");                    
53                            return;
54                      },
55                      complete:function(){
56                         vm.dacLoading=false;
57                      }                     
58                 });
59         },
60         testDAC:function(){
61            vm.server_rtn.warning_block=false;
62            vm.server_rtn.info_block=true;
63            vm.server_rtn.rtn_info="DAC Access Test Pass";
64         },
65         addDAC:function(){
66
67                 vm.dacInfo.oid="";
68                 vm.dacInfo.moc="it.dac";
69                 vm.dacInfo.nodeLabel="";
70                 vm.dacInfo.ipAddress="";
71                 vm.dacInfo.note="";
72
73                 vm.dacDlgInfo.saveType = "add";
74                 vm.dacDlgInfo.titleName=$.i18n.prop('com_zte_openo_umc_monitor_dac_register');
75                 vm.server_rtn.warning_block=false;
76                 vm.server_rtn.info_block=false;
77
78
79                 $(".form-group").each(function () {
80                         $(this).removeClass('has-success');
81                         $(this).removeClass('has-error');
82                         $(this).find(".help-block[id]").remove();
83                  });
84                 $("#dacDlg").modal("show");
85         },
86         saveDAC : function() {
87             success.hide();
88             error.hide();
89             if (form.valid() == false) {
90                     return false;
91              }
92
93              vm.server_rtn.warning_block=false;
94              vm.server_rtn.info_block=true;
95              vm.server_rtn.rtn_info='<i class="fa fa-spinner fa-spin fa-lg"></i>  '+$.i18n.prop('com_zte_openo_umc_monitor_dac_register_check_Info');
96              
97
98              var data= JSON.stringify({
99                               "oid":vm.dacInfo.oid,  
100                               "moc": vm.dacInfo.moc,
101                               "nodeLabel":vm.dacInfo.nodeLabel,
102                               "ipAddress":vm.dacInfo.ipAddress,
103                               "note":vm.dacInfo.note
104                         });
105
106              if(vm.dacDlgInfo.saveType=="add")
107               {
108                     vm.dacChecking=true;
109                     for(var i=0;i<vm.dacInfoArray.length;i++){
110                     
111                             if(vm.dacInfoArray[i].ipAddress==vm.dacInfo.ipAddress)
112                             {
113                                 vm.server_rtn.warning_block=true;
114                                 vm.server_rtn.info_block=false; 
115                                 vm.server_rtn.rtn_info= $.i18n.prop('com_zte_openo_umc_monitor_dac_register_repeat_errInfo',[vm.dacInfo.ipAddress]);
116                                 vm.dacChecking=false;
117                                 return;
118                             }
119                         
120                     }
121
122                     $.ajax({
123                     "type": 'POST',
124                     "url":  vm.$queryDACsRestUrl,
125                     "data" : data,
126                     "dataType": "json",
127                     "contentType":"application/json",
128                     success: function (resp) {  
129                          if(resp.result=="SUCCESS"){
130                               var newDac=JSON.parse(data);
131                               newDac.oid=resp.info;
132
133                               vm.dacInfoArray.push(newDac); 
134                                // vm.dacInfoArray.sort(function(a,b){return a.nodeLabel>b.nodeLabel?1:-1});
135                                $('#dacDlg').modal('hide');                            
136                                 monitorUtil.growl($.i18n.prop('com_zte_openo_umc_monitor_dac_register_successInfo'),"success"); 
137                                 vm.dacChecking=false;  
138                          }
139                          else{
140                             vm.server_rtn.warning_block=true;
141                             vm.server_rtn.info_block=false; 
142                             vm.server_rtn.rtn_info= resp.info;
143                             vm.dacChecking=false;
144                          }    
145                       
146                                       
147                     },
148                      error: function(XMLHttpRequest, textStatus, errorThrown) {
149                         
150                            vm.server_rtn.warning_block=true;
151                            vm.server_rtn.info_block=false; 
152                            vm.server_rtn.rtn_info= $.i18n.prop('com_zte_openo_umc_monitor_dac_save_failInfo')+errorThrown;   
153                            vm.dacChecking=false;             
154                           
155                      }
156                 });
157               }
158               else{
159
160                     $.ajax({
161                     "type": 'PUT',
162                     "url": vm.$queryDACsRestUrl,
163                      "data" :data,
164                     "dataType": "json",
165                     "contentType":"application/json",
166                     success: function (resp) {  
167                         if(resp.result=="SUCCESS"){
168                             for(var i=0;i<vm.dacInfoArray.length;i++){
169                                 if(vm.dacInfoArray[i].oid == vm.dacInfo.oid)
170                                 { 
171                                     vm.dacInfoArray[i].nodeLabel=vm.dacInfo.nodeLabel; 
172                                     vm.dacInfoArray[i].ipAddress=vm.dacInfo.ipAddress;
173                                     vm.dacInfoArray[i].note=vm.dacInfo.note;  
174
175                                    
176                                     break;
177                                 }
178                              }
179                   
180
181
182                         $('#dacDlg').modal('hide');      
183
184                         monitorUtil.growl($.i18n.prop('com_zte_openo_umc_monitor_dac_update_successInfo'),"success");
185
186                         }
187                     else{
188                     
189                           vm.server_rtn.warning_block=true;
190                            vm.server_rtn.info_block=false; 
191                            vm.server_rtn.rtn_info= resp.info;       
192                         }
193
194                     },
195                      error: function(XMLHttpRequest, textStatus, errorThrown) {
196                         
197                            vm.server_rtn.warning_block=true;
198                            vm.server_rtn.info_block=false; 
199                            vm.server_rtn.rtn_info= $.i18n.prop('com_zte_openo_umc_monitor_dac_save_failInfo')+errorThrown;                
200                           
201                      }
202                 });
203
204
205               }
206
207
208         },
209         updateDAC:function(dacInfo){
210
211                 vm.dacInfo.oid=dacInfo.oid;
212                 vm.dacInfo.moc=dacInfo.moc;
213                 vm.dacInfo.nodeLabel=dacInfo.nodeLabel;
214                 vm.dacInfo.ipAddress=dacInfo.ipAddress;
215                 vm.dacInfo.note=dacInfo.note;
216
217
218                 vm.dacDlgInfo.saveType = "update";
219                 vm.dacDlgInfo.titleName=$.i18n.prop('com_zte_openo_umc_monitor_dac_edit');
220                 vm.server_rtn.warning_block=false;
221                 vm.server_rtn.info_block=false;
222
223
224                 $(".form-group").each(function () {
225                         $(this).removeClass('has-success');
226                         $(this).removeClass('has-error');
227                         $(this).find(".help-block[id]").remove();
228                     });
229
230                 $("#dacDlg").modal("show");
231         },
232         delDAC:function(oid){
233                 bootbox.confirm($.i18n.prop('com_zte_openo_umc_monitor_dac_delete_sureInfo'),function(result){
234                 if(result){
235                 $.ajax({
236                     "type": 'DELETE',
237                     "url": vm.$queryDACsRestUrl+"/"+oid,
238                     "dataType": "json",
239                     success: function (resp) {  
240                             
241                             if(resp.result=="SUCCESS"){
242                              for(var i=0;i<vm.dacInfoArray.length;i++){
243                                    if(vm.dacInfoArray[i].oid == oid){
244                                         vm.dacInfoArray.splice(i, 1);
245                                         break;
246                                     }
247                                 }   
248
249                               monitorUtil.growl($.i18n.prop('com_zte_openo_umc_monitor_dac_delete_successInfo'),"success");
250                             }
251                             else{
252                              monitorUtil.growl($.i18n.prop('com_zte_openo_umc_monitor_dac_delete_failInfo')+resp.info,"danger");    
253                             }
254
255                 
256                     },
257                      error: function(XMLHttpRequest, textStatus, errorThrown) {
258                              monitorUtil.growl($.i18n.prop('com_zte_openo_umc_monitor_dac_delete_failInfo')+errorThrown,"danger");
259                          
260                      }
261                   });
262                 }
263                     
264                 
265             });
266            
267         },
268         gotoMonitorPage:function(){
269             window.location.href="monitorSettingList.html";
270         }
271
272        
273     });
274 avalon.scan();
275 vm.initDAC();