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