sku_index.js 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524
  1. $(function () {
  2. $(".new_suit").show(400);
  3. var token=$.cookie('access_token');
  4. var role_id=$.cookie('role_id');
  5. if(token==undefined){
  6. window.location.href = "login.html";
  7. }
  8. var url=http+"cku_suit/query_all";
  9. var data_string = JSON.stringify({token:token});
  10. if(role_id=="admin"){
  11. }else{
  12. $(".new_suit_a").hide();
  13. }
  14. // 首次获取
  15. $.ajax({
  16. url: url,
  17. type: "post",
  18. dataType:"JSON",
  19. data: data_string,
  20. success: function (data)
  21. {
  22. console.log(data);
  23. if(data.code==0){
  24. for(let k=0;k<data.res.length;k++){
  25. let suit_html='<div class="suit_" >'
  26. + '<div style="height: 80px;width: 100%;">';
  27. suit_html=suit_html + '<div class="suit_title ">';
  28. suit_html=suit_html + '<div class="suit_title_text">'+data.res[k].suitName+'</div>';
  29. suit_html=suit_html + '<div class="suit_title_ico"><img src="img/spread.png"></div>';
  30. suit_html=suit_html + '</div>';
  31. if(role_id=="admin"){
  32. suit_html=suit_html + '<div class="add_rule" >'
  33. + '<div class="add_rule_a" rid="'+data.res[k].id+'">'
  34. + '<div class="icon_img">'
  35. + '<img src="img/Add@2x.png">'
  36. + '</div>'
  37. + '<div class="add_rule_title">新增规则</div>'
  38. + '</div>'
  39. + '</div>'
  40. + '</div>';
  41. }else{
  42. suit_html=suit_html + '<div class="add_rule" >'
  43. + '<div class="add_rule_a" style=" border: 1px solid white;">'
  44. + '<div class="icon_img">'
  45. + '</div>'
  46. + '<div class="add_rule_title"></div>'
  47. + '</div>'
  48. + '</div>'
  49. + '</div>';
  50. }
  51. suit_html=suit_html + '<div class="rule_all_list" >';
  52. let num=8;
  53. for(var i=0;i<data.res[k].sr_qs.length;i++){
  54. if(i==0){
  55. suit_html=suit_html + '<div class="rule_one" style="border-top: 1px solid #e4e7e9;">';
  56. }else{
  57. suit_html=suit_html + '<div class="rule_one">';
  58. }
  59. suit_html=suit_html+ '<div class="rule_ rule_hr" rid="'+data.res[k].sr_qs[i].id+'">'+data.res[k].sr_qs[i].ruleName+'</div>';
  60. //
  61. if(data.res[k].sr_qs[i].cr_qs.length<8){
  62. num=8
  63. }
  64. if(data.res[k].sr_qs[i].cr_qs.length>8){
  65. num=17
  66. }
  67. if(data.res[k].sr_qs[i].cr_qs.length>18){
  68. num=26
  69. }
  70. for(let j=0;j<num;j++){
  71. if(j==9){
  72. suit_html=suit_html+ '<div class="rule_ rule_hr"></div>';
  73. try{
  74. suit_html=suit_html+ '<div class="rule_"><span class="rule_term">'+data.res[k].sr_qs[i].cr_qs[j].numName+':'+data.res[k].sr_qs[i].cr_qs[j].conditionName+'</span> <input class="rule_input" rid="'+data.res[k].sr_qs[i].cr_qs[j].id+'" value="'+data.res[k].sr_qs[i].cr_qs[j].numName+':'+data.res[k].sr_qs[i].cr_qs[j].conditionName+'"></div>'
  75. }catch(e){
  76. //TODO handle the exception
  77. suit_html=suit_html+ '<div class="rule_ rule_hr"></div>';
  78. }
  79. }else if(j==18){
  80. suit_html=suit_html+ '<div class="rule_ rule_hr"></div>';
  81. suit_html=suit_html+ '<div class="rule_"><span class="rule_term">'+data.res[k].sr_qs[i].cr_qs[j].numName+':'+data.res[k].sr_qs[i].cr_qs[j].conditionName+'</span> <input class="rule_input" rid="'+data.res[k].sr_qs[i].cr_qs[j].id+'" value="'+data.res[k].sr_qs[i].cr_qs[j].numName+':'+data.res[k].sr_qs[i].cr_qs[j].conditionName+'"></div>';
  82. }else{
  83. if(j<data.res[k].sr_qs[i].cr_qs.length){
  84. suit_html=suit_html+ '<div class="rule_"><span class="rule_term">'+data.res[k].sr_qs[i].cr_qs[j].numName+':'+data.res[k].sr_qs[i].cr_qs[j].conditionName+'</span> <input class="rule_input" rid="'+data.res[k].sr_qs[i].cr_qs[j].id+'" value="'+data.res[k].sr_qs[i].cr_qs[j].numName+':'+data.res[k].sr_qs[i].cr_qs[j].conditionName+'"></div>';
  85. }else{
  86. suit_html=suit_html+ '<div class="rule_"></div>';
  87. }
  88. }
  89. }
  90. if(role_id=="admin"){
  91. suit_html=suit_html + '<div class="rule_" style="float: right;">'
  92. + '<div class="rule_operate"><img style="margin-left: 50%; "src="img/modify@2x.png" class="compile" title="编辑"></div>'
  93. + '<div class="rule_operate"><img style="margin-left: 10%; " src="img/delete@2x.png" class="remove" title="删除"></div>'
  94. + '<div class="rule_save_div"><div class="rule_save">保存</div></div>'
  95. + '</div>'
  96. }else{
  97. suit_html=suit_html + '<div class="rule_" style="float: right;">'
  98. + '</div>'
  99. }
  100. suit_html=suit_html+'</div>';
  101. }
  102. suit_html=suit_html+ '</div>';
  103. $("#suit_html").append(suit_html);
  104. }
  105. for(let k=0;k<data.res.length;k++){
  106. if(k>1){
  107. $('.suit_title').eq(k).parent().parent().children().eq(1).hide();
  108. $('.suit_title').eq(k).parent().children().eq(1).children().hide();
  109. $('.suit_title').eq(k).children().eq(1).children().attr('src','img/pack_up.png');
  110. }
  111. }
  112. }else{
  113. }
  114. },
  115. error:function (XMLHttpRequest) {
  116. console.log("失败!");
  117. }
  118. });
  119. var suit_exit_value;
  120. // 添加套装
  121. $(document).on('click','.new_suit_b', function() {
  122. console.log('添加套装');
  123. $('#suit_add_id').fadeIn(100);
  124. $('#suit_add').slideDown(200);
  125. suit_exit_value=$(this);
  126. });
  127. // 保存套装
  128. $(document).on('click','#suit_exit_value', function() {
  129. let suit_name = $("#suit_name").val();
  130. let url=http+"cku_suit/add";
  131. let data_string = JSON.stringify({token:token,name:suit_name});
  132. $.ajax({
  133. url: url,
  134. type: "post",
  135. dataType:"JSON",
  136. data: data_string,
  137. async: true,//同步
  138. success: function (data)
  139. { console.log(data);
  140. if(data.code==0){
  141. let id = data.res[0].id;
  142. var suit_html=' <div class="suit_" >';
  143. suit_html=suit_html + '<div style="height: 80px;width: 100%;">';
  144. suit_html=suit_html + '<div class="suit_title ">';
  145. suit_html=suit_html + '<div class="suit_title_text">'+suit_name+'</div>';
  146. suit_html=suit_html + '<div class="suit_title_ico"><img src="img/spread.png"></div>';
  147. suit_html=suit_html + '</div>';
  148. suit_html=suit_html+ '<div class="add_rule">'
  149. + '<div class="add_rule_a" rid="'+id+'">'
  150. + '<div class="icon_img">'
  151. + '<img src="img/Add@2x.png">'
  152. + '</div>'
  153. + '<div class="add_rule_title">新增规则</div>'
  154. + '</div>'
  155. + '</div>'
  156. + '</div>';
  157. suit_html=suit_html + '<div class="rule_all_list">';
  158. suit_html=suit_html + '</div>';
  159. suit_html=suit_html+'</div>';
  160. console.log(suit_exit_value.parent());
  161. suit_exit_value.parent().parent().parent().children().eq(0).append(suit_html);
  162. }else{
  163. alert("该用户没有权限!")
  164. return;
  165. }
  166. },
  167. error:function (XMLHttpRequest) {
  168. console.log("失败!");
  169. }
  170. });
  171. $('#suit_add_id').fadeOut(100);
  172. $('#suit_add').slideUp(200);
  173. });
  174. var add_rule;
  175. var add_i=0;
  176. var suit_rid;
  177. // 添加规则和添加条件
  178. $(document).on('click','.add_rule_a', function() {
  179. if(role_id=="admin"){
  180. suit_rid = $(this).attr("rid");
  181. add_i=0;
  182. add_rule = $(this).parent().parent().parent().children().eq(1);
  183. $(".add_role_div").parent().children().eq(0).html('');
  184. var html_ = '<div>'
  185. +' <div class="condition_one">'
  186. +' <input class="ipt_condition" id="condition_number_'+add_i+'" type="text" placeholder="输入条件编号,例如:1"> :'
  187. +' </div>'
  188. +' <div class="condition_one">'
  189. +' <input class="ipt_condition" id="condition_that_'+add_i+'" type="text" placeholder="输入条件说明,例如:红色">'
  190. +' </div>'
  191. +' </div>'
  192. $(".add_role_div").parent().children().eq(0).append(html_);
  193. add_i=add_i+1;
  194. $('#rule_add_id').fadeIn(100);
  195. $('#rule_add').slideDown(200);
  196. }
  197. });
  198. // 编辑
  199. $(document).on('click','.compile', function() {
  200. // console.log('编辑');
  201. let a = $(this).parent().parent().parent().children().length;
  202. $(this).parent().parent().children().eq(0).hide();
  203. $(this).parent().parent().children().eq(1).hide();
  204. $(this).parent().parent().children().eq(2).show();
  205. console.log(a);
  206. for(let i=0;i<a-1;i++){
  207. if(i.toString().indexOf('10') !=-1 || i==0){
  208. $(this).parent().parent().parent().children().eq(i).children().eq(0).show();
  209. $(this).parent().parent().parent().children().eq(i).children().eq(1).hide();
  210. }else{
  211. $(this).parent().parent().parent().children().eq(i).children().eq(1).show();
  212. $(this).parent().parent().parent().children().eq(i).children().eq(0).hide();
  213. }
  214. }
  215. });
  216. // 保存
  217. $(document).on('click','.rule_save', function() {
  218. // console.log('编辑');
  219. //获取保存的长度
  220. let a = $(this).parent().parent().parent().children().length;
  221. // 显示和隐藏
  222. $(this).parent().parent().children().eq(0).show();
  223. $(this).parent().parent().children().eq(1).show();
  224. $(this).parent().parent().children().eq(2).hide();
  225. // console.log(a);
  226. for(let i=0;i<a-1;i++){ //循环请求添加
  227. if(i.toString().indexOf('10') !=-1 || i==0){
  228. $(this).parent().parent().parent().children().eq(i).children().eq(0).hide();
  229. $(this).parent().parent().parent().children().eq(i).children().eq(1).show();
  230. }else{
  231. if($(this).parent().parent().parent().children().eq(i).children().eq(1).val()==undefined){
  232. }else{
  233. let id=$(this).parent().parent().parent().children().eq(i).children().eq(1).attr("rid");
  234. let num_name=$(this).parent().parent().parent().children().eq(i).children().eq(1).val().split(/:/);
  235. if(num_name.length!=2){
  236. num_name=$(this).parent().parent().parent().children().eq(i).children().eq(1).val().split(/:/);
  237. }
  238. $(this).parent().parent().parent().children().eq(i).children().eq(0).html(num_name[0]+":"+num_name[1]);
  239. // console.log(id);
  240. // console.log(num_name);
  241. let url=http+"sku_condition/update";
  242. let data_string = JSON.stringify({token:token,numName:num_name[0],name:num_name[1],id:id});
  243. $.ajax({
  244. url: url,
  245. type: "post",
  246. dataType:"JSON",
  247. data: data_string,
  248. async: true,//同步
  249. success: function (data)
  250. {
  251. if(data.code==0){
  252. // console.log(data);
  253. }else{
  254. return;
  255. }
  256. },
  257. error:function (XMLHttpRequest) {
  258. console.log("失败!");
  259. }
  260. });
  261. }
  262. // 显示隐藏
  263. $(this).parent().parent().parent().children().eq(i).children().eq(1).hide();
  264. $(this).parent().parent().parent().children().eq(i).children().eq(0).show();
  265. }
  266. }
  267. });
  268. // 添加一行的条件
  269. $(document).on('click','.add_role_div', function() {
  270. // 添加一行条件并显示到页面
  271. var html_ = '<div>'
  272. +' <div class="condition_one">'
  273. +' <input class="ipt_condition" id="condition_number_'+add_i+'" type="text" placeholder="输入条件编号,例如:1"> :'
  274. +' </div>'
  275. +' <div class="condition_one">'
  276. +' <input class="ipt_condition" id="condition_that_'+add_i+'" type="text" placeholder="输入条件说明,例如:红色">'
  277. +' </div>'
  278. +' </div>'
  279. $(this).parent().children().eq(0).append(html_);
  280. add_i=add_i+1;
  281. });
  282. // 保存添加的规则和条件
  283. $(document).on('click','#role_add_value', function() {
  284. // console.log(suit_rid);
  285. let role_edit_name = $("#role_edit_name").val();
  286. let condition_number=[];
  287. let condition_that=[];
  288. let condition_id=[];
  289. if(role_edit_name==""){
  290. add_i=0;
  291. add_i=add_i+1;
  292. alert("规则名称不可以为空!")
  293. return;
  294. }else{
  295. $('#rule_add_id').fadeOut(100);
  296. $('#rule_add').slideUp(200);
  297. }
  298. let url=http+"cku_rule/add";
  299. let rule_id="";
  300. let data_string = JSON.stringify({token:token,name:role_edit_name,id:suit_rid});
  301. $.ajax({
  302. url: url,
  303. type: "post",
  304. dataType:"JSON",
  305. data: data_string,
  306. async: false,//同步
  307. success: function (data)
  308. {
  309. console.log(data);
  310. if(data.code==0){
  311. // console.log(data);
  312. rule_id = data.res[0].id;
  313. for(let i=0;i<add_i;i++){
  314. let number = $("#condition_number_"+i).val();
  315. if(number!="" && number!=undefined){
  316. condition_number.push([number]);
  317. }
  318. let that = $("#condition_that_"+i).val();
  319. if(that!="" && that!=undefined){
  320. condition_that.push([that]);
  321. }
  322. let url=http+"sku_condition/add";
  323. let data_string = JSON.stringify({token:token,numName:number,name:that,id:rule_id});
  324. $.ajax({
  325. url: url,
  326. type: "post",
  327. dataType:"JSON",
  328. data: data_string,
  329. async: false,//同步
  330. success: function (data)
  331. {
  332. if(data.code==0){
  333. // console.log(data);
  334. condition_id.push(data.res[0].id);
  335. }else{
  336. return;
  337. }
  338. },
  339. error:function (XMLHttpRequest) {
  340. console.log("失败!");
  341. }
  342. });
  343. }
  344. // console.log(condition_number);
  345. // console.log(condition_that)
  346. let suit_html='';
  347. let num=8;
  348. for(let i=0;i<1;i++){
  349. suit_html=suit_html + '<div class="rule_one">';
  350. suit_html=suit_html+ '<div class="rule_ rule_hr" rid="'+rule_id+'">'+role_edit_name+'</div>';
  351. if (condition_that.length>8){
  352. num=17
  353. }
  354. if (condition_that.length>18){
  355. num=26
  356. }
  357. for(let j=0;j<num;j++){
  358. if(j==9){
  359. suit_html=suit_html+ '<div class="rule_ rule_hr"></div>';
  360. try{
  361. suit_html=suit_html+ '<div class="rule_"><span class="rule_term">'+condition_number[j]+':'+condition_that[j]+'</span> <input class="rule_input" rid="'+condition_id[j]+'" value="'+condition_number[j]+':'+condition_that[j]+'"></div>';
  362. }catch(e){
  363. //TODO handle the exception
  364. suit_html=suit_html+ '<div class="rule_ rule_hr"></div>';
  365. }
  366. }else{
  367. if(j<condition_number.length){
  368. suit_html=suit_html+ '<div class="rule_"><span class="rule_term">'+condition_number[j]+':'+condition_that[j]+'</span> <input class="rule_input" rid="'+condition_id[j]+'" value="'+condition_number[j]+':'+condition_that[j]+'"></div>';
  369. }else{
  370. suit_html=suit_html+ '<div class="rule_"></div>';
  371. }
  372. }
  373. }
  374. suit_html=suit_html+ '<div class="rule_" style="float: right;">'
  375. + '<div class="rule_operate"><img style="margin-left: 50%; "src="img/modify@2x.png" class="compile" title="编辑"></div>'
  376. + '<div class="rule_operate"><img style="margin-left: 10%; " src="img/delete@2x.png" class="remove" title="删除"></div>'
  377. + '<div class="rule_save_div"><div class="rule_save">保存</div></div>'
  378. + '</div>'
  379. + '</div>';
  380. }
  381. add_rule.append(suit_html);
  382. add_i=0; //重置为0
  383. }else{
  384. alert("该用户没有权限!");
  385. return;
  386. }
  387. },
  388. error:function (XMLHttpRequest) {
  389. console.log("失败!");
  390. }
  391. });
  392. });
  393. // 套装的显示隐藏
  394. $(document).on('click','.suit_title', function() {
  395. // console.log($(this).parent().parent().children().eq(1).is(':hidden'))
  396. if($(this).parent().children().eq(1).children().is(':hidden')){
  397. console.log($(this).parent().children().eq(1).children().html())
  398. $(this).parent().parent().children().eq(1).show();
  399. $(this).parent().children().eq(1).children().show();
  400. // 切换图标
  401. $(this).children().eq(1).children().attr('src','img/spread.png');
  402. }else{
  403. $(this).parent().parent().children().eq(1).hide();
  404. $(this).parent().children().eq(1).children().hide();
  405. // 切换图标
  406. $(this).children().eq(1).children().attr('src','img/pack_up.png');
  407. }
  408. });
  409. // 删除
  410. $(document).on('click','.remove', function() {
  411. let html__=$(this).parent().parent().parent().children().eq(0).html();
  412. let r = confirm("你确定删除"+html__+"吗?");
  413. if (r == true) {
  414. let id=$(this).parent().parent().parent().children().eq(0).attr("rid");
  415. // console.log(id);
  416. let url=http+"cku_rule/delete";
  417. let data_string = JSON.stringify({token:token,id:id});
  418. $.ajax({
  419. url: url,
  420. type: "post",
  421. dataType:"JSON",
  422. data: data_string,
  423. async: true,//同步
  424. success: function (data)
  425. {
  426. if(data.code==0){
  427. console.log("删除成功!");
  428. }else{
  429. return;
  430. }
  431. },
  432. error:function (XMLHttpRequest) {
  433. console.log("失败!");
  434. }
  435. });
  436. $(this).parent().parent().parent().hide();
  437. } else {
  438. return;
  439. }
  440. });
  441. //取消
  442. $('.closes').click(function(){
  443. $('#suit_add_id').fadeOut(100);
  444. $('#suit_add').slideUp(200);
  445. $('#rule_add_id').fadeOut(100);
  446. $('#rule_add').slideUp(200);
  447. });
  448. // 注销登录
  449. $("#logout").on('click',function(){
  450. //清空cookie
  451. $.cookie("access_token", "", {expires: -1});
  452. $.cookie("refresh_token", "", {expires: -1});
  453. $.cookie("role_id", "", {expires: -1});
  454. //回到首页
  455. window.location.href = "sku_index.html";
  456. });
  457. });