find_sku.js 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  1. $(function () {
  2. var token=$.cookie('sku_access_token');
  3. if(token==undefined){
  4. window.location.href = "login.html";
  5. }
  6. var data_list=[]; //套餐的查询记录
  7. var data_list1=[]; //套餐的查询记录
  8. var res_leng=0; // 记录规则的长度
  9. var totalPages=1; //记录总页数
  10. var counts;//记录条数
  11. var counts_all;//记录总条数
  12. var url=http+"cku_suit/query";
  13. var data_string = JSON.stringify({token:token});
  14. // 首次获取
  15. $.ajax({
  16. url: url,
  17. type: "post",
  18. dataType:"JSON",
  19. data: data_string,
  20. success: function (data)
  21. {
  22. if(data.code==0){
  23. let html_='<option>请选择套装名称</option>';
  24. for(let k=0;k<data.res.length;k++){
  25. html_=html_+'<option value="'+data.res[k].id+'">'+data.res[k].suitName+'</option>'
  26. }
  27. $(".select_combo_val").html(html_);
  28. }
  29. },
  30. error:function (XMLHttpRequest) {
  31. console.log("失败!");
  32. }
  33. });
  34. // 选择就触发
  35. $(document).on('change','.select_combo_val', function() {
  36. $(".select_all_val").html('');
  37. $("#Respond_to_feedback_tbody").html('');
  38. let id = $(".select_combo_val option:selected").attr("value");
  39. // console.log(id);
  40. let url=http+"cku_rule/query_all";
  41. let data_string = JSON.stringify({token:token,id:id});
  42. // 首次获取
  43. $.ajax({
  44. url: url,
  45. type: "post",
  46. dataType:"JSON",
  47. data: data_string,
  48. success: function (data)
  49. {
  50. console.log(data)
  51. if(data.code==0){
  52. data_list=[];
  53. for(var k=0;k<data.res.length;k++){
  54. var html_='<select class="select_div rule_name">'
  55. +'<option value="'+data.res[k].cr_qs.length+'">请选择'+data.res[k].ruleName+'</option>';
  56. for(var j=0;j<data.res[k].cr_qs.length;j++){
  57. html_=html_+'<option value="'+j+'">'+data.res[k].cr_qs[j].numName+':'+data.res[k].cr_qs[j].conditionName+'</option>'
  58. }
  59. html_=html_+'</select> '
  60. $(".select_all_val").append(html_);
  61. }
  62. if(data.res.length>0){
  63. $("#ok_button").show();
  64. }else{
  65. $("#ok_button").hide();
  66. }
  67. $(".pagination").hide();
  68. }
  69. },
  70. error:function (XMLHttpRequest) {
  71. console.log("失败!");
  72. }
  73. });
  74. });
  75. function recursion_all_num(data_,num){
  76. let count=num-1;//记录是否继续
  77. for(let b=count;b>=0;b--){
  78. counts_all=counts_all*data_.res[b].cr_qs.length;
  79. }
  80. }
  81. // 递归 --根据套的规则去循环显示所有的条数
  82. function recursion(data_,num,num_,tj_){
  83. if(num>15){
  84. return;
  85. }
  86. let count=num-1;//记录是否继续
  87. for (let a=0;a<data_.res[res_leng-count].cr_qs.length;a++) {
  88. if(count==0){
  89. let num_all=num_ ,tj_all=tj_;
  90. num_all=num_all+data_.res[res_leng-count].cr_qs[a].numName;
  91. tj_all=tj_all+data_.res[res_leng-count].cr_qs[a].conditionName;
  92. counts=counts+1;
  93. if(5000000<counts){
  94. return;
  95. }else{
  96. data_list.push({'num':counts,'all_num':num_all,'all_tj':tj_all});
  97. }
  98. }else{
  99. let num_all=num_ ,tj_all=tj_;
  100. num_all=num_all+data_.res[res_leng-count].cr_qs[a].numName;
  101. tj_all=tj_all+data_.res[res_leng-count].cr_qs[a].conditionName;
  102. recursion(data_,count,num_all,tj_all);
  103. }
  104. }
  105. }
  106. // 循环判断
  107. function cr_qs(data_,num,package_name){
  108. counts_all=1; //重置
  109. counts=1; //重置
  110. $(".pagination").show();//重新显示
  111. data_list=[];//重置
  112. recursion_all_num(data_,num);
  113. console.log('一共有');
  114. $("#all_num").html('共'+counts_all+'条记录');
  115. console.log(counts_all);
  116. recursion(data_,num,"","");
  117. if(totalPages==0){//计算页数
  118. totalPages=1;
  119. }else{
  120. totalPages=parseInt(((counts_all-1)+line-1)/line); //计算页
  121. }
  122. $("#Respond_to_feedback_tbody").html(''); //重置
  123. for(let i=0;i<data_list.length;i++){
  124. if(i<line){
  125. $("#Respond_to_feedback_tbody").append('<tr>'
  126. +'<td>'+data_list[i].num+'</td>'
  127. +'<td>'+data_list[i].all_num+'</td>'
  128. +'<td>'+data_list[i].all_tj+'</td>'
  129. +'</tr>');
  130. }
  131. }
  132. $('#pageLimit').bootstrapPaginator({
  133. currentPage: 1,//当前的请求页面。
  134. totalPages: totalPages,//一共多少页。
  135. size: "normal",//应该是页眉的大小。
  136. bootstrapMajorVersion: 3,//bootstrap的版本要求。
  137. alignment: "right",
  138. numberOfPages: 7,//一页列出多少数据。
  139. itemTexts: function (type, page, current) {//如下的代码是将页眉显示的中文显示我们自定义的中文。
  140. switch (type) {
  141. case "first":
  142. return "首页";
  143. case "prev":
  144. return "上一页";
  145. case "next":
  146. return "下一页";
  147. case "last":
  148. return "末页";
  149. case "page":
  150. return page;
  151. }
  152. },
  153. onPageClicked: function (event, originalEvent, type, page) {//给每个页眉绑定一个事件,其实就是ajax请求,其中page变量为当前点击的页上的数字。
  154. $("#Respond_to_feedback_tbody").html('');
  155. //分页
  156. if((line*page)>5000000){
  157. $("#Respond_to_feedback_tbody").append('<tr>'
  158. +'<td colspan="3">数据量过大浏览器缓存不足</td>'
  159. +'</tr>');
  160. }else{
  161. for(let i=0;i<data_list.length;i++){
  162. if(line*(page-1)<=i && i<line*page){
  163. $("#Respond_to_feedback_tbody").append('<tr>'
  164. +'<td>'+data_list[i].num+'</td>'
  165. +'<td>'+data_list[i].all_num+'</td>'
  166. +'<td>'+data_list[i].all_tj+'</td>'
  167. +'</tr>');
  168. }
  169. }
  170. }
  171. }
  172. });
  173. }
  174. // 点击确认
  175. $("#ok_button").on('click',function(){
  176. var id = $(".select_combo_val option:selected").attr("value");
  177. var package_name = $(".select_combo_val option:selected").text();
  178. // console.log(package_name);
  179. var url=http+"cku_rule/query_all";
  180. var data_string = JSON.stringify({token:token,id:id});
  181. $.ajax({
  182. url: url,
  183. type: "post",
  184. dataType:"JSON",
  185. data: data_string,
  186. success: function (data)
  187. {
  188. if(data.code==0){
  189. // console.log(data);
  190. for (let i=0;i<$(".select_all_val").children().length;i++) {
  191. let ff=$(".select_all_val").children().eq(i).val();
  192. if(ff<data.res[i].cr_qs.length){
  193. data.res[i].cr_qs= [data.res[i].cr_qs[ff]]
  194. }
  195. }
  196. try{
  197. res_leng=data.res.length-1;
  198. cr_qs(data,data.res.length,package_name);
  199. }catch(e){
  200. //TODO handle the exception
  201. }
  202. }
  203. },
  204. error:function (XMLHttpRequest) {
  205. console.log("失败!");
  206. }
  207. });
  208. });
  209. // $(".ipt_find").on('focus',function(){
  210. // $(".find_img").addClass("find_img_hover");
  211. // });
  212. // $(".ipt_find").on('blur',function(){
  213. // $(".find_img").removeClass("find_img_hover");
  214. // });
  215. // 注销登录
  216. $("#logout").on('click',function(){
  217. //清空cookie
  218. $.cookie("sku_access_token", "", {expires: -1});
  219. $.cookie("sku_refresh_token", "", {expires: -1});
  220. $.cookie("sku_role_id", "", {expires: -1});
  221. //回到首页
  222. window.location.href = "login.html";
  223. });
  224. });