Advertisement
pacozaa

refjs

Feb 15th, 2015
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.00 KB | None | 0 0
  1. var jqGridREF = '';
  2. $(document).ready(function ()
  3. {
  4. if($("#requestCode").val()=='' && $("#act").val()!='NEW'
  5. && $("#act").val()!='ADD' && $("#act").val()!='ADDRTN' && $("#act").val()!='ADDERR'
  6. && $("#act").val()!='UPD' && $("#act").val()!='ADDRTN' && $("#act").val()!='UPDERR')
  7. {
  8. $("#barSearch").show();
  9. $("#gridSearch").show();
  10. $("#form1").hide();
  11. createGrid();
  12. }
  13. else
  14. {
  15. $("#barSearch").hide();
  16. $("#gridSearch").hide();
  17. $("#form1").show();
  18. }
  19.  
  20. $("#requestGroupCodeSrh").select2({
  21. width: "100%",
  22. placeholder: "กรุณาเลือก",
  23. allowClear: true
  24. });
  25.  
  26. $("#requestGroupCode").select2({
  27. width: "100%",
  28. placeholder: "กรุณาเลือก",
  29. allowClear: true
  30. });
  31. });
  32.  
  33. function createGrid()
  34. {
  35. jqGridRQ10010 = jQuery("#masterGrid");
  36. //$(function () {
  37.  
  38. $('#act').val('SRH'); // Added for serialize
  39.  
  40. // Setup grid
  41. jqGridRQ10010.jqGrid(
  42. {
  43. url : "../rq/RequestCodeServlet?"+$("#frmREF").serialize()
  44. , datatype : "json"
  45. , mtype : 'POST'
  46. , colNames : [ '','รหัสคำร้อง','ชื่อคำร้อง','กลุ่มคำร้อง', 'สถานะข้อมูล']
  47. , colModel : [{name:'act',index:'act',width:'8%',align:'center',sortable:false, formatter:function(cellval, options, rowObject){return "<span class=\"glyphicon glyphicon-pencil\" style=\"cursor:pointer;\" onclick=\"getData('"+options.rowId+"');\"><\/span>";} }
  48. ,{name : 'requestCode' , index : 'requestCodeInfo.requestCode', align : 'center' , editrules : {required : true}, editoptions: { size: 20, maxlength:20} , editable : true, width:'10%' }
  49. ,{name : 'requestDesc', index : 'requestCodeInfo.requestDesc', align : 'left', width:'30%'}
  50. ,{name : 'requestGroupDesc', index : 'requestCodeInfo.requestGroupDesc', align : 'left', width:'30%'}
  51. ,{name : 'recStatus', index : 'requestCodeInfo.recStatus', align : 'center', editrules : {edithidden:true}, editable : true, editoptions: {readonly: true, size: 20}, width:'15%', formatter:formatStatus }
  52. ]
  53. , height : 300
  54. , width : 700
  55. //, rowNum : 20
  56. //, rowList : [20, 40, 100]
  57. , sortable : true
  58. //, sortname: 'system_code'
  59. , multiSort:true
  60. //, sortorder: 'desc'
  61. //, loadonce : true // loading all data in one time
  62. , autoencode : true
  63. , pager : "#masterGridPager"
  64. , viewrecords : true // display the number of total records from the query in the pager bar
  65. , multiselect : true
  66. //, rownumbers : true
  67. /*, jsonReader : {
  68. root: "rows",
  69. page: "page",
  70. total: "total",
  71. records: "records",
  72. cell: "cell",
  73. id: "id",
  74. userdata: "userdata"
  75. } */
  76. , loadComplete: function (data){
  77. if (data.rows.length > 0)
  78. {
  79. for (var id = 1; id <= data.rows.length; id++)
  80. {
  81. rowData = jqGridREF.getRowData(id);
  82. if(rowData.recStatus == null)
  83. {
  84. continue;
  85. }
  86. if(rowData.recStatus.indexOf("Inactive")!= -1)
  87. {
  88. jQuery("#jqg_masterGrid_"+id).prop('disabled', true);
  89. }
  90. }
  91. }
  92.  
  93. if (jqGridREF.getGridParam("reccount") == 0)
  94. {
  95. // count data in grid
  96. //var htmlString = $("#reloading").html();
  97. if ($("#reloading").html() != "")
  98. {
  99. $("#reloading").delay(3000).fadeOut();
  100. $("#reloading").stop();
  101. $("#reloading").fadeIn(0);
  102. }
  103. $("#reloading").html("<div class='alert alert-warning alert-dismissable' style='height: 37px; text-align: center; " + "vertical-align:middle; line-height: 30px; padding-top: 3px; margin-bottom: 5px;'>" + "<button type='button' class='close' data-dismiss='alert' aria-hidden='true' style='padding-top: 7px;'>&times;<\/button>" + "ไม่พบข้อมูลที่ต้องการค้นหา <\/div>");
  104. //$("body").scrollTop(0);
  105. }
  106. else if (jqGridREF.getGridParam("reccount") != 0)
  107. {
  108. $("#reloading").html("");
  109. }
  110. $("#requestCodeSrh").select();
  111. $("#requestCodeSrh").focus();
  112. }
  113. , beforeSelectRow : function (rowid, e){
  114. if($("#jqg_masterGrid_"+rowid).prop("disabled")){
  115. return false;
  116. }
  117. else
  118. {
  119. return true;
  120. }
  121. }
  122. , onSelectAll : function (aRowids, status){
  123. if (status)
  124. {
  125. for(var i=0;i<aRowids.length;i++)
  126. {
  127. if( $("#jqg_masterGrid_"+aRowids[i]).prop("disabled"))
  128. {
  129. $("#jqg_masterGrid_" + aRowids[i]).removeAttr("checked");
  130. }
  131. }
  132.  
  133. //modify the selarrrow parameter
  134. jqGridREF0[0].p.selarrrow = jqGridREF.find("tr.jqgrow:has(td > input.cbox:checked)")
  135. .map(function() { return this.id; }) // convert to set of ids
  136. .get(); // convert to instance of Array
  137. }
  138. }
  139. });
  140.  
  141.  
  142. setTimeout(function() {
  143. $("#masterGrid").setGridWidth( parseInt($("#form_body").width()) - 20);
  144. }, 330);
  145.  
  146. $(window).bind('resize', function() {
  147. $("#masterGrid").setGridWidth($("#form_body").width() - 20);
  148. }).trigger('resize');
  149. }
  150.  
  151. function verify(paAct)
  152. {
  153. if(paAct == 'SRH')
  154. {
  155. searchData();
  156. }
  157. else if(paAct == 'OPNSRH')
  158. {
  159. openBarSearch();
  160. }
  161. else if(paAct == 'ADD')
  162. {
  163. addData();
  164. }
  165. else if(paAct == 'UPD')
  166. {
  167. editData();
  168. }
  169. else if(paAct == 'DEL')
  170. {
  171. confirmDelete();
  172. }
  173. else if(paAct == 'DELMLT')
  174. {
  175. deleteDataMultiple();
  176. }
  177. else if(paAct == 'CLR'||paAct == 'NEW')
  178. {
  179. newData();
  180. }
  181. }
  182.  
  183. function openBarSearch()
  184. {
  185. $("#barSearch").show();
  186. $("#gridSearch").show();
  187. $("#form1").hide();
  188. if(jqGridREF == '')
  189. {
  190. createGrid();
  191. }
  192. }
  193.  
  194. function formatStatus(cellvalue, options, rowObject)
  195. {
  196. var desc = '';
  197. if(cellvalue == '0')
  198. {
  199. desc = '<span style=\'color:red\'>Inactive<\/span>';
  200. }
  201. return desc;
  202. }
  203.  
  204. function searchData()
  205. {
  206. $('#act').val('SRH'); // Added for serialize
  207. jqGridREF.setGridParam({url:"../ref/RequestCodeServlet?"+$("#frmREF").serialize(), page:1});
  208. jqGridREF.trigger("reloadGrid");
  209. }
  210.  
  211. function deleteData()
  212. {
  213. $("#act").val('DEL');
  214. $("#frmREF").submit();
  215. }
  216.  
  217. function confirmDelete()
  218. {
  219. $("#modalConfirm").html("คุณต้องการลบข้อมูลนี้หรือไม่");
  220. $("#modalButton").html("<button type=\"button\" class=\"btn btn-default btn-xs\" data-dismiss=\"modal\"><b>&nbsp;&nbsp;ยกเลิก&nbsp;&nbsp;<\/b><\/button><button type=\"button\" class=\"btn btn-primary btn-xs\" data-dismiss=\"modal\" onclick=\"deleteData();\"><b>&nbsp;&nbsp;ตกลง&nbsp;&nbsp;<\/b><\/button>");
  221. $('#myModal').modal('show');
  222. }
  223.  
  224. function deleteDataMultiple()
  225. {
  226. var gr = jqGridREF.getGridParam('selarrrow');
  227.  
  228. var rowData = '';
  229. var requestCode = new Array();
  230.  
  231. for (var i = 0;i < gr.length;i++)
  232. {
  233. rowData = jqGridREF.getRowData(gr[i]);
  234. requestCode[i] = rowData.requestCode;
  235. }
  236.  
  237. //alert(rowData);
  238. if (gr != "")
  239. jqGridREF.delGridRow(gr,
  240. {
  241. url : "../ref/RequestCodeServlet"
  242. , delData :
  243. {
  244. act : "DELMLT", requestCode : requestCode.toString()
  245. }
  246. , reloadAfterSubmit : true
  247. , afterComplete : function (response, postdata, formid)
  248. {
  249. if ($("#reloading").html() != "")
  250. {
  251. $("#reloading").delay(3000).fadeOut();
  252. $("#reloading").stop();
  253. $("#reloading").fadeIn(0);
  254. }
  255. //$("#reloading").stop();
  256. $("#reloading").html("<div class='alert alert-success alert-dismissable' style='height: 37px; text-align: center; " + "vertical-align:middle; line-height: 30px; padding-top: 3px; margin-bottom: 5px;'>" + "<button type='button' class='close' data-dismiss='alert' aria-hidden='true' style='padding-top: 7px;'>&times;<\/button><label class='control-label'>" + "ลบข้อมูลเรียบร้อยแล้ว<\/label><\/div>");
  257. //$("#reloading").fadeIn(0);
  258. $("body").scrollTop(0);
  259. //$("#reloading").delay(3000).fadeOut();
  260. }
  261. , errorTextFormat : function (response)
  262. {
  263. if (response.statusText == "D")
  264. {
  265. return '<span class="ui-icon ui-icon-alert" ' + 'style="float:left; margin-right:.3em;"><\/span>' + "ไม่สามารถลบข้อมูลได้";
  266. }
  267. else
  268. {
  269. return '<span class="ui-icon ui-icon-alert" ' + 'style="float:left; margin-right:.3em;"><\/span>' + response.statusText;
  270. }
  271. }
  272.  
  273. });
  274. else
  275. {
  276. $("#modalConfirm").html("กรุณาเลือกข้อมูลที่ต้องการลบ");
  277. $("#modalButton").html("<button type=\"button\" class=\"btn btn-primary btn-xs\" data-dismiss=\"modal\"><b>&nbsp;&nbsp;ตกลง&nbsp;&nbsp;<\/b>");
  278.  
  279. $('#myModal').modal('show');
  280. }
  281. }
  282.  
  283. function getData(id)
  284. {
  285. rowData = jqGridREF.getRowData(id);
  286. $("#requestCode").val(rowData.requestCode);
  287. $("#act").val('INQ');
  288. $("#frmREF").submit();
  289. }
  290.  
  291. function addData()
  292. {
  293. if(validateData())
  294. {
  295. $("#act").val('ADD');
  296. $("#frmREF").submit();
  297. }
  298. }
  299.  
  300. function editData()
  301. {
  302. if(validateData())
  303. {
  304. $("#act").val('UPD');
  305. $("#frmREF").submit();
  306. }
  307. }
  308.  
  309. function validateData()
  310. {
  311. var vbRsl = false;
  312. var vaErrMsg = "กรุณาระบุ";
  313. var vaFocus = "";
  314.  
  315. $("#requestCodeDiv").removeClass("has-error");
  316. $("#requestDescDiv").removeClass("has-error");
  317. $("#requestGroupCodeDiv").removeClass("has-error");
  318.  
  319. if($("#requestCode").val()=='')
  320. {
  321. if(vaErrMsg != "กรุณาระบุ") vaErrMsg = vaErrMsg + ",";
  322. vaErrMsg = vaErrMsg + " รหัสคำร้อง";
  323. if(vaFocus == "")
  324. {
  325. vaFocus = "requestCode";
  326. }
  327. $("#requestCodeDiv").addClass("has-error");
  328. }
  329.  
  330. if($("#requestDesc").val()=='')
  331. {
  332. if(vaErrMsg != "กรุณาระบุ") vaErrMsg = vaErrMsg + ",";
  333. vaErrMsg = vaErrMsg + " ชื่อคำร้อง";
  334. if(vaFocus == "")
  335. {
  336. vaFocus = "requestDesc";
  337. }
  338. $("#requestDescDiv").addClass("has-error");
  339. }
  340.  
  341. if($("#requestGroupCode").val()=='')
  342. {
  343. if(vaErrMsg != "กรุณาระบุ") vaErrMsg = vaErrMsg + ",";
  344. vaErrMsg = vaErrMsg + " รหัสกลุ่มคำร้อง";
  345. if(vaFocus == "")
  346. {
  347. vaFocus = "requestGroupCode";
  348. }
  349. $("#requestGroupCodeDiv").addClass("has-error");
  350. }
  351.  
  352. if(vaErrMsg != 'กรุณาระบุ')
  353. {
  354. $("#reloading").html("<div class=\"alert alert-warning\" style=\"text-align:center;margin-bottom: 5px;\"><button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-hidden=\"true\">&times;<\/button><label class=\"control-label\">"+vaErrMsg+"<\/label><\/div>");
  355. $("#"+vaFocus).focus();
  356. $('html, body').animate({ scrollTop: 0 }, 0);
  357. }
  358. else
  359. {
  360. vbRsl = true;
  361. }
  362.  
  363. return vbRsl;
  364. }
  365.  
  366. function newData()
  367. {
  368. $("#act").val('NEW');
  369. $("#requestCode").val('');
  370. $("#frmREF").submit();
  371. }
  372.  
  373. function getConfirm(confirmMessage,callback){
  374. confirmMessage = confirmMessage || '';
  375.  
  376. $('#confirmbox').modal({show:true,
  377. backdrop:false,
  378. keyboard: false});
  379.  
  380. $('#confirmMessage').html(confirmMessage);
  381. $('#confirmFalse').click(function(){
  382. $('#confirmbox').modal('hide');
  383. if (callback) callback(false);
  384.  
  385. });
  386. $('#confirmTrue').click(function(){
  387. $('#confirmbox').modal('hide');
  388. if (callback) callback(true);
  389. });
  390. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement