news.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319
  1. layui.use([ 'laypage', 'layer', 'table', 'element','form','upload'], function(){
  2. var laypage = layui.laypage //分页
  3. ,$ = layui.jquery
  4. ,layer = layui.layer //弹层
  5. ,table = layui.table //表格
  6. ,element = layui.element //元素操作
  7. ,form = layui.form
  8. ,upload = layui.upload;
  9. var type_id = $('input[name="type"]').val();
  10. var tableIds = 'videolist'; //表格ID
  11. var oindex = 0;
  12. //第一个实例
  13. table.render({
  14. elem: '#'+tableIds
  15. ,url: '/pushnews/poneform' //数据接口
  16. ,where:{token:csrfToken,type:type_id}
  17. ,method:'post'
  18. ,page: false //开启分页
  19. ,height:600
  20. ,text:'数据加载中'
  21. ,id:'tablerReload'
  22. ,cols: [[ //表头
  23. {type:'numbers',title:'序号',width:50},
  24. {field: 'subject', title: '标题', align:'center'},
  25. /*{field: 'img', title: '图片',width:200, align:'center',templet:function(d){
  26. return '<img class="layui_magnify" src="'+d.img+'"/>'
  27. }},*/
  28. {field: 'sort', title: '排序',width:100, event:'sortData',edit: 'text', align:'center',sort: true,templet:"#sortBox"}
  29. ,{field: 'create_at', title: '添加时间',width:150, align:'center'}
  30. /* ,{field: 'is_show', title: '审核',align:'center',width:100, templet:function (d) {
  31. if(d.is_show == 2){
  32. return '<input type="checkbox" value="'+d.id+'" name="open" lay-skin="switch" lay-filter="switchTest" lay-text="|">'
  33. } else {
  34. return '<input type="checkbox" checked value="'+d.id+'" name="open" lay-skin="switch" lay-filter="switchTest" lay-text="|">'
  35. }
  36. }}*/
  37. // ,{fixed: 'right',title:'操作', width: 200, align:'center', toolbar: '#operate'}
  38. ]]
  39. });
  40. // 列表点击放大图片
  41. $('.layui-table-main').on('click','.layui_magnify', function(){
  42. var _src = $(this).attr('src');
  43. layui.layer.open({
  44. type: 1,
  45. title: false, //是否显示标题
  46. area: ['95%', '55%'],
  47. shade: 0.6, //透明度
  48. closeBtn: 1, //按钮 1有,0无
  49. shadeClose: true,
  50. content: '<img style="width:100%;height:100%" src="'+_src+'">',
  51. });
  52. });
  53. //监听指定开关
  54. form.on('switch(switchTest)', function(data){
  55. layer.confirm('确定要修改此操作吗?',{btn: ['确定', '取消']},function () {
  56. $.post('/pushnews/newsdelandshow',{id:data.value,type:'show'},function (data) {
  57. layer.msg(data.msg);
  58. table.reload('tablerReload');
  59. })
  60. },function (aa) {
  61. table.reload('tablerReload'); //重新加载
  62. })
  63. });
  64. //列表操作
  65. table.on('tool('+tableIds+')', function(obj){
  66. var layEvent = obj.event,
  67. data = obj.data;
  68. if(layEvent === 'sortData'){ //修改排序
  69. table.on('edit('+tableIds+')', function(obj){
  70. var data = obj.data;
  71. // console.log(data)
  72. $.post('/pushnews/newsdelandshow',{id:data.id,type:'sort',sort:data.sort},function (data) {
  73. if(data.code == 200)
  74. {
  75. layer.msg(data.msg);
  76. } else if(data.code == 300 ) {
  77. layer.msg(data.msg);
  78. }
  79. })
  80. })
  81. // layer.prompt({
  82. // formType: 2
  83. // ,title: '排序'
  84. // ,value: data.sort
  85. // }, function(value, index){
  86. // $.post('/pushnews/newsdelandshow',{id:data.id,type:'sort',sort:value},function (data) {
  87. // layer.msg(data.msg);
  88. // table.reload('tablerReload');
  89. // })
  90. // });
  91. }else if(layEvent === 'del') {
  92. layer.confirm('您确定要删除吗?',{ btn: ['确定', '取消']},function () {
  93. $.post('/pushnews/newsdelandshow',{id:data.id,type:'del'},function (data) {
  94. layer.msg(data.msg);
  95. table.reload('tablerReload');
  96. })
  97. })
  98. } else if(layEvent === 'edit'){
  99. var index = layer.open({
  100. type: 2,
  101. title: '编辑',
  102. area:['800px','500px'],
  103. content: '/pushfresh/freshcityedit?id='+data.id+'&name='+data.city_name,
  104. end:function () {
  105. table.reload('tablerReload'); //重新加载
  106. }
  107. });
  108. } else if(layEvent === 'Relation'){
  109. var index =layui.layer.open({
  110. title :'<span style="color:red" >['+data.city_name+']</span>区域相关楼盘',
  111. type : 2,
  112. area:['','100%'],
  113. maxmin: true,
  114. content : "/pushfresh/cityhouse?id="+data.city_id,
  115. end:function () {
  116. table.reload('tablerReload');
  117. }
  118. })
  119. layui.layer.full(index);
  120. //改变窗口大小时,重置弹窗的宽高,防止超出可视区域(如F12调出debug的操作)
  121. $(window).on("resize",function(){
  122. layui.layer.full(index);
  123. })
  124. }
  125. });
  126. //添加图片上传
  127. upload.render({
  128. elem: '#test1'
  129. ,url: '/house/createimg'
  130. ,data:{token:csrfToken}
  131. ,field:'img'
  132. ,size:1000 //限制上传图片的大小,单位为KB
  133. ,exts: 'png|jpg|jpeg' //只允许上传压缩文件
  134. ,auto:false
  135. ,bindAction:'#addcity'
  136. ,choose: function(obj){
  137. obj.preview(function(index, file, result){
  138. $('#breviary_img').attr('src', result); //图片链接(base64)
  139. });
  140. }
  141. });
  142. // 图片放大浏览
  143. $('.layui_magnify').click(function(){
  144. var _src = $(this).attr('src');
  145. layui.layer.open({
  146. type: 1,
  147. title: false, //是否显示标题
  148. area: ['60%', '80%'],
  149. shade: 0.6, //透明度
  150. closeBtn: 1, //按钮 1有,0无
  151. shadeClose: true,
  152. content: '<img style="width:100%;height:100%" src="'+_src+'">',
  153. });
  154. })
  155. // 新增
  156. var $ = layui.$, active = {
  157. addData: function(){ //获取选中数据
  158. oindex = layui.layer.open({
  159. type: 2,
  160. title: '添加',
  161. closeBtn: 1, //不显示关闭按钮
  162. area: ['800px','500px'],
  163. content: '/pushnews/newsadd?type='+type_id //iframe的url,no代表不显示滚动条
  164. ,success:function (layero, index) {
  165. },
  166. end:function () {
  167. table.reload('tablerReload');
  168. }
  169. });
  170. },
  171. reload:function(){//搜索
  172. var form = pfgs_serialize($('form'));
  173. var name = '';
  174. var house_name = '';
  175. if(form.input_house == 'name'){
  176. name = form.input_house_text;
  177. } else if(form.input_house == 'house_name'){
  178. house_name = form.input_house_text;
  179. }
  180. table.reload('tablerReload',{
  181. where:{
  182. title:name,
  183. house_name:house_name,
  184. city:form.input_city,
  185. type_name:form.type_name
  186. }
  187. })
  188. },
  189. };
  190. $('.demoTable .layui-btn').on('click', function(){
  191. var type = $(this).data('type');
  192. active[type] ? active[type].call(this) : '';
  193. });
  194. $('.The_house').focus(function(){
  195. indexOpen = parent.layui.layer.open({
  196. type: 2,
  197. /*title: '选择需要添加的资讯',*/
  198. area: ['','100%'],
  199. content: '/publicuse/news?type=1', //1单选
  200. success:function (layero, index) {
  201. },
  202. end:function(){
  203. }
  204. });
  205. parent.layui.layer.full(indexOpen);
  206. //改变窗口大小时,重置弹窗的宽高,防止超出可视区域(如F12调出debug的操作)
  207. $(window).on("resize",function(){
  208. parent.layui.layer.full(indexOpen);
  209. })
  210. })
  211. //添加页面提交数据
  212. form.on('submit(add)', function(data){
  213. var formData = new FormData($('form')[0]);
  214. layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
  215. $.ajax({
  216. type : "post",
  217. url : "/pushnews/newsaddform",
  218. data : formData,
  219. contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
  220. processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
  221. error : function(request) {
  222. layer.close(index);
  223. layer.msg("请联系管理员");
  224. },
  225. success : function(data) {
  226. if(data.data != null){
  227. layer.msg(ReturnInfo(data.data),{icon:5});
  228. return ;
  229. }
  230. layer.msg(data.msg);
  231. parent.layer.closeAll(); //再执行关闭
  232. }
  233. });
  234. return false;
  235. });
  236. form.on('submit(del_alls_house)',function (data) {
  237. var checkStatus = table.checkStatus('tablerReload');
  238. var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
  239. if(typeof checkStatus.data[0] == 'object'){
  240. layer.confirm('您确定要删除吗?',{btn:['确认','取消']},function(){
  241. var formdat = new FormData();
  242. $.each(checkStatus.data,function (key,val) {
  243. formdat.append('hid[]',val.id);
  244. })
  245. $.ajax({
  246. cache : true,
  247. type : "post",
  248. url : "/pushnews/newpdel",
  249. data : formdat, // 你的formid
  250. // async : false, //async 默认为true异步,修改为false为同步
  251. contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
  252. processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
  253. error : function(request) {
  254. layer.close(index); //关闭数据提交信息
  255. layer.alert("网络超时");
  256. },
  257. success : function(data) {
  258. if (data.code == 200) {
  259. layer.msg(data.msg);
  260. reloadTable(reloadId);
  261. } else {
  262. layer.msg(data.msg);
  263. }
  264. }
  265. });
  266. })
  267. return false;
  268. }
  269. layer.msg('请选择需要删除的楼盘',{icon:5});
  270. return false;
  271. })
  272. form.on('submit(edit_city)', function(data){
  273. var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
  274. var formData = new FormData($('form')[0]);
  275. $.ajax({
  276. type : "post",
  277. url : "/pushfresh/freshcityeditform",
  278. data : formData,
  279. contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
  280. processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
  281. error : function(request) {
  282. layer.close(index);
  283. layer.msg("请联系管理员");
  284. },
  285. success : function(data) {
  286. if(data.data != null){
  287. layer.msg(ReturnInfo(data.data),{icon:5});
  288. return ;
  289. }
  290. layer.msg(data.msg);
  291. parent.layer.close(oindex); //再执行关闭
  292. }
  293. });
  294. return false;
  295. });
  296. })