adspecial.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359
  1. $(function(){
  2. $('select[name="brandName"]').select2({
  3. placeholder: "请选择品牌",
  4. allowClear: true,
  5. width: '120px'
  6. });
  7. $('select[name="showEnv"]').select2({
  8. placeholder: "请选择播出环境",
  9. allowClear: true,
  10. width: '120px'
  11. });
  12. });
  13. function isEmpty(obj){
  14. if (obj != null && obj != '') {
  15. return false;
  16. } else {
  17. return true;
  18. }
  19. }
  20. // 播出媒体
  21. var mediaNameSelect = $('select[name="mediaName"]').select2({
  22. placeholder: "请输入播出媒体",
  23. allowClear: true,
  24. width:'120px',
  25. ajax:{
  26. url: _PUBLIC_ +'ad-media/select/list.do',
  27. dataType:'json',
  28. quietMillis:100,
  29. data:function(params){
  30. return {
  31. name : params.term,
  32. pageNo : params.page || 1,
  33. pageSize : 20
  34. }
  35. },
  36. processResults: function (data, params) {
  37. params.page = params.page || 1;
  38. return {
  39. results: data.results,
  40. pagination: {
  41. more: (params.page * 20) < data.total
  42. }
  43. };
  44. },
  45. cache: true
  46. }
  47. });
  48. // 产品/栏目
  49. var productNameSelect = $('select[name="productName"]').select2({
  50. placeholder: "请输入名称",
  51. allowClear: true,
  52. width:'120px',
  53. ajax:{
  54. url: _PUBLIC_ + ($("#type").val() == 0 ? 'ad-product/select/list.do' : 'ad-platform/select/list.do'),
  55. dataType:'json',
  56. quietMillis:100,
  57. data:function(params){
  58. return {
  59. productName : params.term,
  60. pageNo : params.page || 1,
  61. pageSize : 20
  62. }
  63. },
  64. processResults: function (data, params) {
  65. params.page = params.page || 1;
  66. return {
  67. results: data.results,
  68. pagination: {
  69. more: (params.page * 20) < data.total
  70. }
  71. };
  72. },
  73. cache: true
  74. }
  75. });
  76. // 品牌
  77. $('select[name="productName"]').live('change',function(){
  78. if($("#type").val() == 0){
  79. ajax( _PUBLIC_ +"ad-product/brand_name_by_product_name.do", {"productName" : $("#productName").val()}, function(res){
  80. $('select[name="brandName"]').html('<option value='+res.brandName+'>'+res.brandName+'</option>');
  81. })
  82. }
  83. });
  84. // 电视剧
  85. var productNameSelect = $('select[name="tvName"]').select2({
  86. placeholder: "请输入播出节目",
  87. allowClear: true,
  88. width:'120px',
  89. ajax:{
  90. url: _PUBLIC_ +'ad-tv/select/list.do',
  91. dataType:'json',
  92. quietMillis:100,
  93. data:function(params){
  94. return {
  95. name : params.term,
  96. pageNo : params.page || 1,
  97. pageSize : 20
  98. }
  99. },
  100. processResults: function (data, params) {
  101. params.page = params.page || 1;
  102. return {
  103. results: data.results,
  104. pagination: {
  105. more: (params.page * 20) < data.total
  106. }
  107. };
  108. },
  109. cache: true
  110. }
  111. });
  112. // 获取表格数据
  113. function getList(page){
  114. page = page || 1;
  115. var pageSize = 10, data = {
  116. "type" : $("#type").val(),
  117. "productName" : $("#productName").val(),
  118. "brandName" : $("#brandName").val(),
  119. "advMaster" : $("#advMaster").val(),
  120. "brandName" : $("#brandName").val(),
  121. "mediaName" : $("#mediaName").val(),
  122. "showEnv" : $("#showEnv").val(),
  123. "tvName" : $("#tvName").val(),
  124. "showTimeStart" : $("#showTimeStart").val(),
  125. "showTimeEnd" : $("#showTimeEnd").val(),
  126. "showDateStart" : $("#showDateStart").val(),
  127. "showDateEnd" : $("#showDateEnd").val(),
  128. "showDurationMin" : $("#showDurationMin").val(),
  129. "showDurationMax" : $("#showDurationMax").val(),
  130. "priceMin" : $("#priceMin").val(),
  131. "priceMax" : $("#priceMax").val(),
  132. "phone" : $("#phone").val(),
  133. "pageNo" : page,
  134. "pageSize" : pageSize
  135. }, html = "";
  136. if(!isEmpty(data.showDurationMin) || !isEmpty(data.showDurationMax)){
  137. var reg = /^[0-9]+$/;
  138. if (!reg.test(data.showDuration) || !reg.test(data.showDurationMax)) {
  139. top.alert('请输入正确的播出时长');
  140. return false;
  141. }
  142. }
  143. if(!isEmpty(data.priceMin) || !isEmpty(data.priceMax)){
  144. var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
  145. if (!reg.test(data.priceMin) || !reg.test(data.priceMax) ) {
  146. top.alert('请输入正确刊例价格');
  147. return false;
  148. }
  149. }
  150. if(!isEmpty(data.phone)){
  151. var reg = /^1\d{10}$/;
  152. if (!reg.test(data.phone)) {
  153. top.alert('请输入正确手机号');
  154. return false;
  155. }
  156. }
  157. $("#page, #list").empty();
  158. ajax("ajax_list.do", data, function(res){
  159. if (res.code == 1 && res.list.records.length > 0){
  160. $.each(res.list.records, function(index, item){
  161. html += '<tr>'+
  162. '<td><input type="checkbox" class="checkbox {click:itemCheck}" name="chk" value="'+item.id+'" /><label></label></td>'+
  163. '<td>'+ (item.productName == undefined || item.productName == null ? '' : item.productName ) +'</td>'+
  164. '<td>'+ (item.brandName == undefined || item.brandName == null ? '' : item.brandName ) +'</td>'+
  165. '<td>'+ (item.advMaster == undefined || item.advMaster == null ? '' : item.advMaster ) +'</td>'+
  166. '<td>'+ (item.mediaName == undefined || item.mediaName == null ? '' : item.mediaName) +'</td>'+
  167. '<td>'+ (item.showDate == undefined || item.showDate == null ? '' : item.showDate) +'</td>'+
  168. '<td>'+ (item.showTime == undefined || item.showTime == null ? '' : item.showTime) +'</td>'+
  169. '<td>'+ (item.showEnv == undefined || item.showEnv == null ? '' : item.showEnv) +'</td>'+
  170. '<td>'+ (item.tvName == undefined || item.tvName == null ? '' : item.tvName) +'</td>'+
  171. '<td>'+ (item.phone == undefined || item.phone == null ? '' : item.phone) +'</td>'+
  172. '<td>'+ (item.showDuration == undefined || item.showDuration == null ? '' : item.showDuration) +'</td>'+
  173. '<td>'+ (item.price == undefined || item.price == null ? '' : item.price) +'</td>'+
  174. '<td class="edit">'+
  175. (update_flag == 1 && item.type == 0 ? '<a href="javascript:platformModfiy(\'edit\',\'专题广告信息\','+item.id+','+item.type+');">编辑</a>&nbsp;&nbsp;' : '') +
  176. (update_flag == 1 && item.type == 1 ? '<a href="javascript:platformModfiy(\'edit\',\'专题栏目信息\','+item.id+','+item.type+');">编辑</a>&nbsp;&nbsp;' : '') +
  177. (delete_flag == 1 ? '<a href="javascript:delRecord('+item.id+');">删除</a>' : '' ) +
  178. '</td>'+
  179. '</tr>';
  180. });
  181. $("#list").html(html);
  182. $.checkbox();
  183. $("#count").text(res.list.total);
  184. var newpage = new createPage(res.list.total, page, pageSize, 3);
  185. $("#page").html(newpage.pageHtml);
  186. } else {
  187. $("#list").info("暂无数据。");
  188. $("#count").text(0);
  189. }
  190. });
  191. }
  192. pageGo = function(page){
  193. resetCheckAll();
  194. getList(page);
  195. }
  196. // 删除单个
  197. function delRecord(id){
  198. confirm("确定删除该条记录吗?", function(){
  199. ajax("del.do", {"id" : id}, function(res){
  200. if (res.code == 1){
  201. alert("删除成功。", 1, function(){
  202. window.location.href = "index.do?type="+$("#type").val();
  203. });
  204. } else {
  205. alert(res.msg);
  206. }
  207. });
  208. });
  209. }
  210. // 删除多个
  211. function delRecordBatch(){
  212. var arr = document.getElementsByName("chk");
  213. var ids = "";
  214. for (i=0; i<arr.length; i++){
  215. if (arr[i].checked){
  216. ids += ("," + arr[i].value);
  217. }
  218. }
  219. if (ids.isEmpty()){
  220. alert("请至少选择一条记录");
  221. return false;
  222. }
  223. confirm("确定删除这些记录吗?", function(){
  224. ajax("batch_del.do", {"ids" : ids.substring(1,ids.length)}, function(res){
  225. if (res.code == 1){
  226. alert("删除成功。", 1, function(){
  227. window.location.href = "index.do?type="+$("#type").val();
  228. });
  229. } else {
  230. alert(res.msg);
  231. }
  232. });
  233. });
  234. }
  235. // 导入表格数据
  236. function importExcel(obj){
  237. $("#fileForm").submit();
  238. }
  239. // 导入结果
  240. function excelCallback(code, msg) {
  241. if (code == 1) {
  242. // 导入成功
  243. alert("导入成功。", 1, function(){
  244. window.location.href = "index.do?type="+$("#type").val();
  245. });
  246. } else {
  247. // 导入失败
  248. alert(msg, 0, function(){
  249. location.reload();
  250. });
  251. }
  252. }
  253. // 保存品牌型号信息
  254. function save(){
  255. // 得到数据
  256. var data = $('#dataForm').serializeJSON(),type =$("#type").val();
  257. data.id = $.getParam("id");
  258. data.brandName = $("#brandName").val();
  259. console.log(data);
  260. // 数据是否完整
  261. if (data['productName'].isEmpty()){
  262. top.alert(type == 0 ? "请选择产品名称" : "请选择栏目名称" , 0, function(){
  263. $("input[name='productName']").focus();
  264. });
  265. return false;
  266. }
  267. if (data['brandName'].isEmpty() && type == 0){
  268. top.alert("请填写品牌", 0, function(){
  269. $("input[name='productName']").focus();
  270. });
  271. return false;
  272. }
  273. if (data['mediaName'].isEmpty()){
  274. top.alert("请填写媒体名称");
  275. return false;
  276. }
  277. if (data['showEnv'].isEmpty()){
  278. top.alert("请选择播出环境");
  279. return false;
  280. }
  281. if (data['tvName'].isEmpty()){
  282. top.alert("请选择播出节目");
  283. return false;
  284. }
  285. if (data['showDate'].isEmpty()){
  286. top.alert("请选择播出日期");
  287. return false;
  288. }
  289. if (data['showTime'].isEmpty()){
  290. top.alert("请选择播出时间");
  291. return false;
  292. }
  293. if (data['showDuration'].isEmpty()){
  294. top.alert("请选择播出时长");
  295. return false;
  296. }
  297. if(!data['showDuration'].isEmpty()){
  298. var reg = /^[0-9]+$/;
  299. if (!reg.test(data['showDuration'])) {
  300. top.alert('请输入正确的播出时长');
  301. return false;
  302. }
  303. }
  304. if(!data['price'].isEmpty()){
  305. var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
  306. if (!reg.test(data['price'])) {
  307. top.alert('请输入正确刊例价格');
  308. return false;
  309. }
  310. }
  311. if(!data['phone'].isEmpty()){
  312. var reg = /^1\d{10}$/;
  313. if (!reg.test(data['phone'])) {
  314. top.alert('请输入正确手机号');
  315. return false;
  316. }
  317. }
  318. // 提交数据
  319. top.ajax("save.do", data, function(res){
  320. if (res.code == 1){
  321. top.alert("保存成功。", 1, function(){
  322. top.getList(1);
  323. top.$.closeWindow();
  324. });
  325. } else {
  326. top.alert(res.msg);
  327. }
  328. });
  329. }
  330. // 弹窗
  331. function platformModfiy(act, title, id , type){
  332. if(type == undefined || type == null){
  333. top.alert("参数为空!");
  334. return false;
  335. }
  336. title = title || "";
  337. id = id || "";
  338. $.openWindow(act.decode("add","新增","edit","修改","")+title, "detail.do?id="+id+"&type="+type, 800, 400, true);
  339. }