adPositionList.jsp 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353
  1. <%@ page language="java" contentType="text/html;charset=GBK" pageEncoding="GBK"%>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html;charset=GBK">
  6. <title>广告发布列表</title>
  7. <link href="${pageContext.request.contextPath}/main.css" rel="stylesheet" type="text/css" />
  8. <link href="${pageContext.request.contextPath }/liger/lib/ligerUI/skins/${sessionScope.css}/css/ligerui-all.css" rel="stylesheet" type="text/css" />
  9. <script src="${pageContext.request.contextPath }/liger/lib/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
  10. <script src="${pageContext.request.contextPath }/liger/lib/ligerUI/js/core/base.js" type="text/javascript"></script>
  11. <script src="${pageContext.request.contextPath }/liger/lib/ligerUI/js/plugins/ligerGrid.js" type="text/javascript"></script>
  12. <script src="${pageContext.request.contextPath}/liger/lib/ligerUI/js/plugins/ligerDialog.js" type="text/javascript"></script>
  13. <script type="text/javascript" src="/shares/js/constant.js"></script>
  14. <script type="text/javascript" src="/shares/js/common.js"></script>
  15. <script type="text/javascript" src="/shares/js/file.js"></script>
  16. <script type="text/javascript" src="/shares/datePicker/WdatePicker.js"></script>
  17. <script src="${pageContext.request.contextPath}/liger/lib/ligerUI/js/ligerui.all.js" type="text/javascript"></script>
  18. <script type="text/javascript">
  19. var grid = null;
  20. var stateData=null;
  21. $(function() {
  22. initStateData();
  23. });
  24. function initStateData(){
  25. $.ajax({
  26. type:"POST",
  27. url:"opAdPositionAction.do?task=posStateList",
  28. data : "",
  29. timeout:10000,
  30. dataType:"json",
  31. success:function(data){
  32. stateData=data.Rows;
  33. },
  34. complete:function(){
  35. loadAdPositionList();
  36. }
  37. });
  38. }
  39. function loadAdPositionList() {
  40. var columns = [
  41. {
  42. display : '位置编码',
  43. name : 'position_code',
  44. width : 100,
  45. editor: { type: 'text' }
  46. }, {
  47. display : '位置名称',
  48. name : 'position_name',
  49. width : 150,
  50. editor: { type: 'text' }
  51. }, {
  52. display : '图片宽(像素)',
  53. name : 'img_width',
  54. width : 120,
  55. editor: { type: 'int' }
  56. },{
  57. display : '图片高(像素)',
  58. name : 'img_height',
  59. width : 120,
  60. editor: { type: 'int' }
  61. },{
  62. display : '状态',
  63. name : 'state',
  64. width : 150,
  65. editor: { type: 'select', data: stateData, valueColumnName: 'dvalue', displayColumnName: 'dname' },
  66. render: function (item)
  67. {
  68. for (var i = 0; i < stateData.length; i++)
  69. {
  70. if (stateData[i]['dvalue'] == item.state)
  71. return stateData[i]['dname'];
  72. }
  73. return item.state;
  74. }
  75. }
  76. ];
  77. columns
  78. .push({
  79. display : '操作',
  80. width : 100,
  81. align : 'center',
  82. isSort: false,
  83. render : function(rowdata, rowindex, value) {
  84. var h = "";
  85. if (!rowdata._editing){
  86. if(rowdata.state=="1"){
  87. h += "<a style=\"color:blue;\" href='javascript:stopPos(\"" + rowindex + "\",\""+ rowdata.universalid+ "\")'>停用</a> ";
  88. }else{
  89. h += "<a style=\"color:blue;\" href='javascript:startPos(\"" + rowindex + "\",\""+ rowdata.universalid+ "\")'>启用</a> ";
  90. h += "<a style=\"color:blue;\" href='javascript:beginPosEdit(\"" + rowindex + "\",\""+ rowdata.universalid+ "\")'>修改</a> ";
  91. h += "<a style=\"color:blue;\" href='javascript:deleteRow(\"" + rowindex + "\",\""+ rowdata.universalid+ "\",\""+ rowdata.state + "\")'>删除</a> ";
  92. }
  93. }
  94. else{
  95. var isDelete = rowdata.universalid ? "false" : "true";
  96. if(rowdata.universalid=="undefined"){
  97. isDelete = "true";
  98. }
  99. h += "<a style=\"color:blue;\" href='javascript:submitEdit(\"" + rowindex + "\",\""+ rowdata.universalid+ "\")'>提交</a> ";
  100. h += "<a style=\"color:blue;\" href='javascript:cancelEdit(" + rowindex + ", "+isDelete+")'>取消</a> ";
  101. }
  102. return h;
  103. }
  104. });
  105. grid = $("#maingrid4").ligerGrid({
  106. columns :columns,
  107. url : 'opAdPositionAction.do?task=adPositionList'+'&time=' + new Date().getTime(),
  108. width : "99.8%",
  109. height : "99.8%",
  110. pageSize : getPageSize(grid),
  111. enabledEdit: true,
  112. clickToEdit: false,
  113. rownumbers:false,
  114. pageParmName : 'p',
  115. usePager:true,
  116. pagesizeParmName : 'pSize',
  117. // onAfterSubmitEdit:f_onAfterSubmitEdit,
  118. // onAfterAddRow :f_onAfterAddRow,
  119. onError:function(err){
  120. alert("获取数据失败,请刷新页面后重试!");
  121. }
  122. });
  123. }
  124. function getPageSize(grid){
  125. if(grid){
  126. return grid.get("pageSize");
  127. }else{
  128. return 20;
  129. }
  130. }
  131. /**
  132. * 启用
  133. */
  134. function startPos(rowid,universalid){
  135. $.ajax({
  136. type:"POST",
  137. url:"opAdPositionAction.do?task=startPos&universalid=" + universalid,
  138. data : "",
  139. timeout:10000,
  140. dataType:"json",
  141. beforeSend:function(){
  142. },
  143. success:function(data){
  144. if(data.success){
  145. grid.loadData();
  146. $.ligerDialog.success(data.success);
  147. }else{
  148. showAjaxError(null, data.error);
  149. }
  150. },
  151. error:function(err){
  152. showAjaxError(err);
  153. },
  154. complete:function(){
  155. }
  156. });
  157. }
  158. /**
  159. * 停用
  160. */
  161. function stopPos(rowid,universalid){
  162. $.ajax({
  163. type:"POST",
  164. url:"opAdPositionAction.do?task=stopPos&universalid=" + universalid,
  165. data : "",
  166. timeout:10000,
  167. dataType:"json",
  168. beforeSend:function(){
  169. },
  170. success:function(data){
  171. if(data.success){
  172. grid.loadData();
  173. $.ligerDialog.success(data.success);
  174. }else{
  175. showAjaxError(null, data.error);
  176. }
  177. },
  178. error:function(err){
  179. showAjaxError(err);
  180. },
  181. complete:function(){
  182. }
  183. });
  184. }
  185. /**
  186. * 新增
  187. */
  188. function addNewRow(){
  189. for (var rowid in grid.records){
  190. var row = grid.getRow(rowid);
  191. if(!row.universalid){
  192. return;
  193. }
  194. }
  195. grid.addEditRow({position_code:"",position_name:"",img_width:0,img_height:0,state:"1"});
  196. }
  197. function beginPosEdit(rowid,universalid) {
  198. grid.beginEdit(rowid);
  199. }
  200. function cancelEdit(rowid, isDelete) {
  201. grid.cancelEdit(rowid);
  202. if(isDelete){
  203. grid.deleteRow(rowid);
  204. }
  205. }
  206. function submitEdit(rowid,universalid){
  207. var regex = /^([0-9])*$/;
  208. grid.endEdit(rowid);
  209. var waittingDialog = undefined;
  210. var rows = grid.getSelected () ;
  211. var position_code=encodeURI(rows.position_code);
  212. var position_name=encodeURI(rows.position_name);
  213. var img_width=encodeURI(rows.img_width);
  214. var img_height=encodeURI(rows.img_height);
  215. var state=encodeURI(rows.state);
  216. if(position_code==null||position_code==""){
  217. $.ligerDialog.error('位置编码不能为空!');
  218. grid.deleteRow(rowid);
  219. grid.addEditRow({position_code:position_code,position_name:position_name,img_width:img_width,img_height:img_height,state:state});
  220. return;
  221. }
  222. if(position_name==null||position_name==""){
  223. $.ligerDialog.error('位置名称不能为空!');
  224. grid.deleteRow(rowid);
  225. grid.addEditRow({position_code:position_code,position_name:position_name,img_width:img_width,img_height:img_height,state:state});
  226. return;
  227. }
  228. if(position_name!=null||position_name!=""){
  229. var datas = grid.getData();
  230. var isExist = false;
  231. for(var i=0;i<datas.length;i++){
  232. var s = datas[i].position_code;
  233. if(rowid!=i){
  234. if(s==position_code){
  235. isExist = true;
  236. }
  237. }
  238. }
  239. if(isExist){
  240. var dec_name = rows.position_name;
  241. $.ligerDialog.error('位置编码不能重复!');
  242. grid.deleteRow(rowid);
  243. grid.addEditRow({universalid:universalid,position_code:position_code,position_name:dec_name,img_width:img_width,img_height:img_height,state:state});
  244. return;
  245. }
  246. }
  247. if("undefined"==universalid){
  248. universalid=null;
  249. }
  250. var jsonObject = {"pos.universalid":universalid,"pos.position_code":position_code,"pos.position_name":position_name,
  251. "pos.img_width":img_width,"pos.img_height":img_height,"pos.state":state};
  252. var url = "";
  253. if(universalid!=null&&universalid!=""&&universalid!=undefined&&universalid!="undefined"){
  254. url = "opAdPositionAction.do?task=editAdPosition";
  255. }else{
  256. url = "opAdPositionAction.do?task=addAdPosition";
  257. }
  258. $.ajax({
  259. type:"POST",
  260. url:url,
  261. data : jsonObject,
  262. contentType: "application/x-www-form-urlencoded; charset=GBK",
  263. timeout:10000,
  264. cache:false,
  265. dataType:"json",
  266. beforeSend:function(){
  267. waittingDialog = $.ligerDialog.open({content:"正在提交中,请稍后……", allowClose:false});
  268. },
  269. success:function(data){
  270. if(data.success){
  271. $.ligerDialog.success(data.success);
  272. grid.loadData();
  273. }else{
  274. showAjaxError(null, data.error);
  275. grid.beginEdit(rowid);
  276. }
  277. },
  278. error:function(err){
  279. grid.beginEdit(rowid);
  280. showAjaxError(err);
  281. },
  282. complete:function(){
  283. if(waittingDialog != undefined){
  284. waittingDialog.close();
  285. waittingDialog = undefined;
  286. }
  287. }
  288. });
  289. }
  290. function deleteRow(rowid,universalid,state){
  291. var waittingDialog;
  292. if(universalid == 'undefined' || universalid == "" || universalid == undefined){
  293. grid.deleteRow(rowid);
  294. }else{
  295. var delRow = grid.getSelected();
  296. if(state=='1'){
  297. $.ligerDialog.error('正在启用状态,请先停用!');
  298. return;
  299. }
  300. if (confirm('您确定要删除吗?')){
  301. $.ajax({
  302. type:"POST",
  303. url:"opAdPositionAction.do?task=delAdPosition&universalid=" + universalid,
  304. data : "",
  305. timeout:10000,
  306. dataType:"json",
  307. beforeSend:function(){
  308. waittingDialog = $.ligerDialog.open({content:"正在提交中,请稍后……", allowClose:false});
  309. },
  310. success:function(data){
  311. if(data.success){
  312. grid.deleteRow(rowid);
  313. $.ligerDialog.success(data.success);
  314. }else{
  315. showAjaxError(null, data.error);
  316. }
  317. },
  318. error:function(err){
  319. showAjaxError(err);
  320. },
  321. complete:function(){
  322. if(waittingDialog != undefined){
  323. waittingDialog.close();
  324. waittingDialog = undefined;
  325. }
  326. }
  327. });
  328. }
  329. }
  330. }
  331. </script>
  332. </head>
  333. <body>
  334. <%@ include file="/include/message.jsp"%>
  335. <div class="container-layout">
  336. <div id="title" class="form-button">
  337. <input type="button" class="l-button" value="新增" onclick="addNewRow();" style="width: 90px"/>
  338. </div>
  339. <div style="clear:both;"></div>
  340. <div id="searchbar">
  341. <div style="overflow: hidden; clear: both;">
  342. <div id="maingrid4" style="margin: 0; padding: 0"></div>
  343. </div>
  344. </div>
  345. </div>
  346. </body>
  347. </html>