Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 
 
 

302 wiersze
14 KiB

  1. $(document).ready(function () {
  2. //桌面切换
  3. $('.inSec3Head').on('click', '.inSec3HeadTab', function () {
  4. if ($(this).hasClass('active')) return;
  5. var ind = $(this).attr('ind');
  6. $('.inSec3Row.active').sortable("destroy");
  7. $(this).addClass('active').siblings('.inSec3HeadTab').removeClass('active');
  8. $('.inSec3Row').css('display', 'none').removeClass('active').siblings('.inSec3Row[ind="' + ind + '"]').fadeIn().addClass('active');
  9. sortableInit();
  10. });
  11. //桌面设置弹框中的事件
  12. $('.desktopSetBox').on('click', '.faR', function () {//点击默认桌面-恢复标识,显示恢复提示
  13. $(this).parents('.deskSetLi').addClass('active')
  14. }).on('click', '.deskSetClose', function () {//点击提示中关闭标识,不显示恢复提示
  15. $(this).parents('.deskSetLi').removeClass('active');
  16. }).on('click', '.deskSetTrue', function () {//点击提示中确定标识,添加桌面或者重置桌面
  17. var parents = $(this).parents('.deskSetLi');
  18. if (parents.hasClass('deskSetLiNew')) {
  19. var inputs = parents.find('input');
  20. desktopNew(inputs.val());
  21. inputs.val('新建桌面');
  22. } else {
  23. var txt = $(this).parent().attr('txt');
  24. parents.removeClass('active');
  25. var desktopId = parents.attr('desktopId');
  26. var defaultFlag = parents.attr('defaultFlag');
  27. if (defaultFlag != 1) {
  28. var ind = parents.attr('ind');
  29. desktopDel(ind, desktopId);
  30. } else {
  31. //ajax默认桌面的恢复操作
  32. if (desktopId != "" && desktopId != undefined) {
  33. $.ajax({
  34. url: "/SSOSystem/RestoreDefaultDesktop",
  35. headers: { __RequestVerificationToken: $.lrToken },
  36. data: { desktopId: desktopId },
  37. type: "post",
  38. dataType: "json",
  39. success: function (res) {
  40. if (res.code == 200) {
  41. layer.msg('恢复成功!');
  42. //操作成功后执行的代码开始
  43. location.reload();
  44. //操作成功后执行的代码结束
  45. }
  46. else if (res.code == 400) {
  47. layer.msg(res.info);
  48. }
  49. else if (res.code == 500) {
  50. layer.msg('服务端异常,请联系管理员');
  51. }
  52. }
  53. });
  54. }
  55. }
  56. }
  57. }).on('click', '.deskNameTxt', function () {
  58. $(this).siblings('.deskNameInput').addClass('active').find('input').focus();
  59. }).on('blur', '.deskSetList input', function () { //桌面名称表单失去焦点时
  60. var parents = $(this).parents('.deskSetLi');
  61. var ind = parents.attr('ind');
  62. var txt = $(this).val();
  63. if (txt.length == 0) {
  64. layer.msg('桌面不能为空!');
  65. $(this).focus();
  66. return;
  67. }
  68. //ajax桌面的修改名称操作
  69. var desktopId = parents.attr('desktopId');
  70. if (desktopId != "" && desktopId != undefined) {
  71. $.ajax({
  72. url: "/SSOSystem/ModifyDesktop",
  73. headers: { __RequestVerificationToken: $.lrToken },
  74. data: { desktopId: desktopId, desktopName: txt },
  75. type: "post",
  76. dataType: "json",
  77. success: function (res) {
  78. if (res.code == 200) {
  79. layer.msg('桌面名称修改成功!');
  80. //操作成功后执行的代码开始
  81. parents.find('.deskNameInput').removeClass('active').siblings('.deskNameTxt').find('b').html(txt);
  82. $('.inSec3HeadTab[ind="' + ind + '"] .inSec3HeadTabTxt').html(txt);
  83. //操作成功后执行的代码结束
  84. }
  85. else if (res.code == 400) {
  86. layer.msg(res.info);
  87. }
  88. else if (res.code == 500) {
  89. layer.msg('服务端异常,请联系管理员');
  90. }
  91. }
  92. });
  93. }
  94. }).on('input', '.deskNameInput input', function () { //监听桌面名称表单input事件
  95. var txt = $(this).val();
  96. var len = txt.length;
  97. if (len >= 8) {
  98. len = 8;
  99. $(this).val(txt.substring(0, 8))
  100. }
  101. $(this).siblings('span').html(len + '/8')
  102. }).on('click', '.deskSetLiNew .deskName', function () {
  103. $(this).parents('.deskSetLi').addClass('active');
  104. }).on('click', '.desktopSet > img', function () {//点击桌面设置弹框右上角关闭按钮
  105. $('.desktopSetBox').removeClass('active');
  106. }).on('click', '.deskSetBtn', function () {//点击桌面设置弹框的完成按钮
  107. $('.desktopSetBox').removeClass('active');
  108. });
  109. //点击桌面栏-设置按钮,显示桌面设置弹框
  110. $('.inSec3Setting').on('click', function () {
  111. deskNum();
  112. $('.desktopSetBox').addClass('active');
  113. });
  114. //监听layer添加桌面弹框中表单的input事件
  115. $(document).on('input', '.layerInput input', function () {
  116. var txt = $(this).val();
  117. var len = txt.length;
  118. if (len >= 8) {
  119. len = 8;
  120. txt = txt.substring(0, 8);
  121. }
  122. if (len == 0) {
  123. txt = '新建桌面';
  124. }
  125. $(this).val(txt);
  126. });
  127. //点击桌面栏-添加按钮,显示layer添加桌面弹框
  128. $('.inSec3HeadAdd').on('click', function () {
  129. var _this = $(this);
  130. layer.open({
  131. type: 1,
  132. title: '命名桌面',
  133. btnAlign: 'c',
  134. content: htmlLayer,
  135. area: ['300px', 'auto'],
  136. btn: ['保存', '取消'],
  137. yes: function (index, layero) {
  138. //按钮【按钮一】的回调
  139. desktopNew($('.layerInput input').val());
  140. layer.close(index);
  141. },
  142. btn2: function (index, layero) {
  143. //按钮【按钮二】的回调
  144. //return false 开启该代码可禁止点击该按钮关闭
  145. }
  146. })
  147. });
  148. //桌面设置弹框中桌面的排序
  149. //$('.deskSetList').sortable({
  150. // opacity: 0.8,
  151. // containment: '.deskSetList',
  152. // handle: '.fa-navicon',
  153. // // helper: 'clone',
  154. // // scroll: false,
  155. // cursor: "move",
  156. // stop: function(event, ui) {
  157. // //当排序停止时触发该事件。
  158. // var ind = $('.inSec3HeadTab.active').attr('ind');
  159. // $('.inSec3HeadTabBox').html('');
  160. // $('.deskSetList .deskSetLi').each(function(i, n){
  161. // var num = $(this).attr('ind');
  162. // var txt = $(n).find('input').val();
  163. // var className = $(n).find('.deskNameTxt span').length? 'newlyBuild' : '';
  164. // var active = num == ind? 'active' : '';
  165. // var html = '<div class="inSec3HeadTab '+ active + ' ' + className +'" ind="'+ num +'">'+
  166. // '<div class="inSec3HeadTabTxt">'+ txt +'</div>'+
  167. // '</div>'+
  168. // '<div class="inSec3HeadLine"></div>';
  169. // $('.inSec3HeadTabBox').append(html)
  170. // })
  171. // },
  172. //});
  173. });
  174. $(window).load(function () {
  175. cardData()
  176. });
  177. //新建桌面
  178. function desktopNew(name) {
  179. var ind = getRandomNum();
  180. //ajax自建桌面新增操作,操作成功后执行下面代码,需要返回Id值并绑定到htmlT的desktopId中;
  181. var modelCode = $('#ModelCode').val();
  182. var userId = $('#UserId').val();
  183. if (userId != "" && userId != undefined && modelCode != "" && modelCode != undefined && name != "" && name != undefined && ind != "" && ind != undefined) {
  184. $.ajax({
  185. url: "/SSOSystem/AddDesktop",
  186. headers: { __RequestVerificationToken: $.lrToken },
  187. data: { userId: userId, modelCode: modelCode, desktopName: name, desktopCode: ind },
  188. type: "post",
  189. dataType: "json",
  190. success: function (res) {
  191. if (res.code == 200) {
  192. layer.msg('添加桌面成功!');
  193. if (res.data != null) {
  194. //操作成功后执行代码开始
  195. var htmlC = '<div class="inSec3Row clearfix" ind="' + ind + '">' + noCard + '</div>';
  196. var htmlT = '<div class="inSec3HeadTab newlyBuild" ind="' + ind + '" desktopId="' + res.data.Id+'">' +
  197. '<div class="inSec3HeadTabTxt">' + name + '</div>' +
  198. '</div>' +
  199. '<div class="inSec3HeadLine"></div>';
  200. var deskSetLi = '<div class="deskSetLi" ind="' + ind + '" defaultFlag="0" desktopId="' + res.data.Id + '">' +
  201. '<i class="fa fa-navicon"></i>' +
  202. '<div class="deskName">' +
  203. '<div class="deskNameTxt"><b>' + name + '</b><span></span></div>' +
  204. '<div class="deskNameInput">' +
  205. '<input type="text" value="' + name + '">' +
  206. '<span>4/8</span>' +
  207. '</div>' +
  208. '</div>' +
  209. '<i class="fa fa-trash-o fa-lg faR"></i>' +
  210. '<div class="deskSetLiTips" txt="删除该桌面成功">' +
  211. '<span>确认删除该桌面?</span>' +
  212. '<div class="deskSetTrue">' +
  213. '<img src="../../Content/images/DragSSO/duigou.png" alt="">' +
  214. '</div>' +
  215. '<div class="deskSetClose">' +
  216. '<img src="../../Content/images/DragSSO/close2.png" alt="">' +
  217. '</div>' +
  218. '</div>' +
  219. '</div>';
  220. $('.deskSetLiNew').removeClass('active').find('.deskNameInput').removeClass('active');
  221. $('.inSec3Row.active').sortable("destroy");
  222. $('.inSec3RowBox').append(htmlC).find('.inSec3Row').css('display', 'none').removeClass('active').last().addClass('active').fadeIn();
  223. $('.inSec3HeadTabBox').append(htmlT).find('.inSec3HeadTab').removeClass('active').last().addClass('active');
  224. $('.deskSetList').append(deskSetLi);
  225. sortableInit();
  226. deskNum();
  227. //最多新建3个桌面
  228. if (($('.inSec3HeadTab').length + 1) > desktopNum) {
  229. $('.inSec3HeadAdd').css('display', 'none').next().css('display', 'none');
  230. $('.deskSetLiNew').css('display', 'none');
  231. }
  232. //操作成功后执行代码结束
  233. }
  234. }
  235. else if (res.code == 400) {
  236. layer.msg(res.info);
  237. }
  238. else if (res.code == 500) {
  239. layer.msg('服务端异常,请联系管理员');
  240. }
  241. }
  242. });
  243. }
  244. }
  245. //删除桌面
  246. function desktopDel(ind, desktopId) {
  247. //ajax自建桌面的删除操作
  248. if (desktopId != "" && desktopId != undefined) {
  249. $.ajax({
  250. url: "/SSOSystem/DeleteDesktop",
  251. headers: { __RequestVerificationToken: $.lrToken },
  252. data: { desktopId: desktopId },
  253. type: "post",
  254. dataType: "json",
  255. success: function (res) {
  256. if (res.code == 200) {
  257. layer.msg('删除该桌面成功!');
  258. //操作成功后执行代码开始
  259. $('.deskSetLi[ind="' + ind + '"]').remove();
  260. $('.inSec3HeadTab[ind="' + ind + '"]').next().remove().end().remove();
  261. var inSec3Row = $('.inSec3Row[ind="' + ind + '"]');
  262. if (inSec3Row.hasClass('active')) {
  263. $('.inSec3Row.active').sortable("destroy");
  264. inSec3Row.remove();
  265. $('.inSec3Row').eq(0).addClass('active').fadeIn();
  266. $('.inSec3HeadTab').eq(0).addClass('active');
  267. sortableInit()
  268. } else {
  269. inSec3Row.remove();
  270. }
  271. deskNum();
  272. $('.inSec3HeadAdd').css('display', 'inline-block').next().css('display', 'inline-block');
  273. $('.deskSetLiNew').css('display', 'block');
  274. //操作成功后执行代码结束
  275. }
  276. else if (res.code == 400) {
  277. layer.msg(res.info);
  278. }
  279. else if (res.code == 500) {
  280. layer.msg('服务端异常,请联系管理员');
  281. }
  282. }
  283. });
  284. }
  285. }
  286. //初始化桌面设置
  287. function deskNum() {
  288. $('.deskSetInfo span').eq(0).html($('.newlyBuild').length);
  289. }
  290. //获取随机数
  291. function getRandomNum() {
  292. var now = new Date();
  293. var result = now.getFullYear() + "" + now.getMonth() + "" + now.getDate() + "" + now.getHours() + "" + now.getMinutes() + "" + now.getSeconds() + "" + now.getMilliseconds();
  294. return result;
  295. }
  296. //console.log(getRandomNum());