Nenhuma Descrição

zhiShiKuManger.js 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458
  1. var token = $.cookie("token");
  2. var zNodes = [];
  3. var id; //当前节点id
  4. var pid; //当前父节点ID
  5. var name = ''; //选择的name
  6. var pidName; //父节点name
  7. var keyWord = $('.searCon').val(); //关键字
  8. var xlName; //添加下拉框节点name
  9. var table = $('#table1'); //右边表格
  10. //搜索按钮
  11. $('.searchGo').click(function() {
  12. keyWord = $('.searCon').val();
  13. //console.log(keyWord);
  14. //if(keyWord){
  15. initTable(token, id, keyWord);
  16. //}else{
  17. // layer.msg("请输入搜索内容!");
  18. //}
  19. })
  20. tree();
  21. function tree() {
  22. $.get(huayi.config.callcenter_url + 'KnowledgeClass/GetList', {
  23. "token": $.cookie("token"),
  24. "pid": pid
  25. }, function(result) {
  26. result = $.parseJSON(result);
  27. $.fn.zTree.init($("#treeDemo"), setting1, result.data); //实例化树形图
  28. });
  29. }
  30. var setting1 = {
  31. data: {
  32. key: {
  33. name: "text"
  34. },
  35. simpleData: {
  36. enable: true,
  37. idKey: "id",
  38. rootPId: 0
  39. }
  40. },
  41. callback: {
  42. onClick: zTreeOnClick
  43. }
  44. };
  45. function zTreeOnClick(event, treeId, treeNode) {
  46. id = treeNode.id;
  47. name = treeNode.text;
  48. var pidnode = treeNode.getParentNode();
  49. if(pidnode) {
  50. pidName = pidnode.text;
  51. pid = pidnode.id;
  52. //console.log(pid);
  53. } else {
  54. pidName = "顶级分类";
  55. pid == 0;
  56. //console.log(pid);
  57. }
  58. keyWord = $('.searCon').val();
  59. initTable(token, id, keyWord);
  60. };
  61. var setting2 = {
  62. data: {
  63. key: {
  64. name: "text"
  65. },
  66. simpleData: {
  67. enable: true,
  68. idKey: "id",
  69. rootPId: 0
  70. }
  71. },
  72. callback: {
  73. onClick: addTreeClick
  74. }
  75. };
  76. function addTreeClick(event, treeId, treeNode) {
  77. addPid = treeNode.id;
  78. //console.log(addPid);
  79. xlName = treeNode.text;
  80. $('.inps1').val(xlName);
  81. };
  82. //编辑器配置
  83. //KindEditor.ready(function(K) {
  84. // window.editor = K.create('#addEditor'); //添加弹出框编辑器
  85. // window.changeEditor = K.create('#changeEditor'); //修改弹出框编辑器
  86. //});
  87. function getTree() {
  88. $.get(huayi.config.callcenter_url + 'KnowledgeClass/GetList', {
  89. "token": $.cookie("token"),
  90. // "pid":pid
  91. }, function(result) {
  92. result = $.parseJSON(result);
  93. $.fn.zTree.init($("#addTreeDemo"), setting2, result.data); //实例化树形图
  94. });
  95. }
  96. //===============添加功能开始=============================
  97. // 清空输入框
  98. function emptyInput() {
  99. $('.addTitle').val('');
  100. $('.addKey').val('');
  101. $('#addEditor').val('');
  102. }
  103. //添加按钮
  104. $('.add').click(function() {
  105. $('.addModel').css('display', 'block');
  106. // console.log(pidName);
  107. if(name) {
  108. $('.inps1').val(name);
  109. addPid = id;
  110. } else {
  111. $('.inps1').val("顶级分类");
  112. addPid = 0
  113. //console.log(addPid);
  114. }
  115. getTree();
  116. })
  117. $('.addBtr').click(function() {
  118. $('.addModel').css('display', 'none');
  119. $('.addTitle').val('');
  120. $('.addKey').val('');
  121. editor.html('');
  122. })
  123. //添加内容下拉
  124. $('.inps1').focus(function() {
  125. $('.xlAdd').css('display', 'block');
  126. })
  127. $('.xl_one').click(function() {
  128. if($('.xlAdd').css('display') == 'block') {
  129. $('.xlAdd').css('display', 'none')
  130. } else {
  131. $('.xlAdd').css('display', 'block')
  132. }
  133. })
  134. $('.addTree').mouseleave(function() {
  135. $(this).css('display', 'none')
  136. })
  137. //保存添加按钮
  138. var addPid, addTitle, addKey, addCon, addDes;
  139. $('.addCun').click(function() {
  140. console.log(addPid);
  141. if($('.inps1').val() == "" || $('.addTitle').val() == "") {
  142. layer.confirm('所添加内容不允许为空!', {
  143. btn: ['确定']
  144. });
  145. return;
  146. } else {
  147. addTitle = $('.addTitle').val();
  148. addKey = $('.addKey').val();
  149. // addCon = encodeURIComponent(editor.html());
  150. addCon = $('#addEditor').val();
  151. //console.log(addCon);
  152. $('.addModel').css('display', 'none');
  153. addCunTree(addPid, addTitle, addKey, addCon);
  154. }
  155. emptyInput();
  156. })
  157. function addCunTree(addPid, addTitle, addKey, addCon) {
  158. $.ajax({
  159. type: "post",
  160. url: huayi.config.callcenter_url + "Knowledge/AddInfo",
  161. dataType: 'json',
  162. async: true,
  163. data: {
  164. title: addTitle,
  165. key: addKey,
  166. con: addCon,
  167. pid: addPid,
  168. token: token
  169. },
  170. success: function(data) {
  171. console.log(data)
  172. console.log(data.state);
  173. if(data.state == "success") {
  174. layer.msg("添加成功!");
  175. // tree();
  176. getTree()
  177. initTable(token, id, keyWord);
  178. }
  179. }
  180. });
  181. }
  182. //***********************添加功能结束=============================
  183. //=======================修改功能开始==============================
  184. var chanId, //修改弹出框内 下拉框当前节点ID
  185. changeName, //修改弹出框内 下拉框当前节点name
  186. changeGetid,
  187. chanCunId;
  188. // JSON.stringify($table.bootstrapTable('getSelections'));
  189. $('.change').click(function() {
  190. var changes = $.map($('#table1').bootstrapTable('getSelections'), function(row) {
  191. return row.F_RepositoryId;
  192. });
  193. if(changes.length <= 0) {
  194. layer.confirm('请选择一行修改!', {
  195. btn: ['确定']
  196. });
  197. return;
  198. } else {
  199. $('.changeModel').css('display', 'block');
  200. }
  201. changeGetid = changes;
  202. getChangeTree();
  203. getChangeBox(changeGetid);
  204. })
  205. $('.changeBtr').click(function() {
  206. $('.changeModel').css('display', 'none');
  207. })
  208. $('.inps4').focus(function() {
  209. $('.xlChange').css('display', 'block')
  210. })
  211. //下拉按钮功能
  212. $('.xl_two').click(function() {
  213. if($('.xlChange').css('display') == 'block') {
  214. $('.xlChange').css('display', 'none')
  215. } else {
  216. $('.xlChange').css('display', 'block')
  217. }
  218. })
  219. //修改弹出框内 下拉树形图参数配置项
  220. var setting3 = {
  221. data: {
  222. key: {
  223. name: "text"
  224. },
  225. simpleData: {
  226. enable: true,
  227. idKey: "id",
  228. rootPId: 0
  229. }
  230. },
  231. callback: {
  232. onClick: changeTreeClick
  233. }
  234. }
  235. function changeTreeClick(event, treeId, treeNode) {
  236. chanId = treeNode.id;
  237. changeName = treeNode.text;
  238. $('.inps4').val(changeName);
  239. chanCunId = chanId;
  240. };
  241. function getChangeTree() {
  242. $.get(huayi.config.callcenter_url + 'KnowledgeClass/GetList', {
  243. "token": $.cookie("token"),
  244. "pid": pid
  245. }, function(result) {
  246. result = $.parseJSON(result);
  247. $.fn.zTree.init($("#changeTreeDemo"), setting3, result.data); //实例化树形图
  248. });
  249. }
  250. var cunId;
  251. function getChangeBox(changeGetid) {
  252. $.ajax({
  253. type: "post",
  254. url: huayi.config.callcenter_url + "Knowledge/GetInfo",
  255. async: true,
  256. dataType: 'json',
  257. data: {
  258. infoid: changeGetid,
  259. token: token
  260. },
  261. success: function(data) {
  262. var con = data.data;
  263. $('.inps4').val(con.F_Expand1);
  264. $('.changeTitle').val(con.F_Title);
  265. $('.changeKey').val(con.F_KeyWords);
  266. $('#changeEditor').val(con.F_Content);
  267. cunId = con.F_CategoryId;
  268. chanCunId = cunId;
  269. }
  270. });
  271. }
  272. function changeBaoCunAjax(changeGetid, chanCunId) {
  273. $.ajax({
  274. type: "post",
  275. url: huayi.config.callcenter_url + "Knowledge/EditInfo",
  276. async: true,
  277. dataType: 'json',
  278. data: {
  279. infoid: changeGetid,
  280. title: $('.changeTitle').val(),
  281. key: $('.changeKey').val(),
  282. con: $('#changeEditor').val(), //内容
  283. pid: chanCunId,
  284. token: token
  285. },
  286. success: function(data) {
  287. if(data.state == "success") {
  288. layer.msg("修改成功!");
  289. initTable(token, id, keyWord);
  290. }
  291. }
  292. });
  293. }
  294. $('.changeCun').click(function() {
  295. console.log(chanCunId)
  296. changeBaoCunAjax(changeGetid, chanCunId);
  297. $('.changeModel').css('display', 'none');
  298. })
  299. //***********************修改功能结束=============================
  300. //=======================删除功能开始==============================
  301. var F_RepositoryId;
  302. $('.del').click(function() {
  303. var ids = $.map($('#table1').bootstrapTable('getSelections'), function(row) {
  304. return row.F_RepositoryId;
  305. });
  306. if(ids.length <= 0) {
  307. layer.confirm('请选择一行删除!', {
  308. btn: ['确定']
  309. });
  310. return;
  311. } else {
  312. $('.delModel').css('display', 'block');
  313. }
  314. console.log(ids);
  315. F_RepositoryId = ids;
  316. })
  317. //关闭按钮
  318. $('.delBtr').click(function() {
  319. $('.delModel').css('display', 'none');
  320. })
  321. //确定删除按钮
  322. $('.sure').click(function() {
  323. $.ajax({
  324. type: "post",
  325. url: huayi.config.callcenter_url + "Knowledge/DelInfos",
  326. async: true,
  327. dataType: 'json',
  328. data: {
  329. ids: F_RepositoryId,
  330. token: token
  331. },
  332. success: function(data) {
  333. if(data.state == "success") {
  334. layer.msg("删除成功!");
  335. initTable(token, id, keyWord);
  336. }
  337. }
  338. });
  339. $('.delModel').css('display', 'none');
  340. })
  341. //取消删除按钮
  342. $('.return').click(function() {
  343. $('.delModel').css('display', 'none');
  344. })
  345. //***********************删除功能结束==============================
  346. initTable(token, id, keyWord);
  347. function initTable(token, id, keyWord) {
  348. //先销毁表格
  349. table.bootstrapTable('destroy');
  350. //初始化表格,动态从服务器加载数据
  351. table.bootstrapTable({
  352. method: "get", //使用get请求到服务器获取数据
  353. url: huayi.config.callcenter_url + "Knowledge/GetList", //获取数据的Servlet地址
  354. contentType: 'application/x-www-form-urlencoded',
  355. striped: true, //表格显示条纹
  356. pagination: true, //启动分页
  357. pageSize: 10, //每页显示的记录数
  358. pageNumber: 1, //当前第几页
  359. pageList: [10, 15, 20, 50, 100], //记录数可选列表
  360. search: false, //是否启用查询
  361. showColumns: false, //显示下拉框勾选要显示的列
  362. showRefresh: false, //显示刷新按钮
  363. sidePagination: "server", //表示服务端请求
  364. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  365. //设置为limit可以获取limit, offset, search, sort, order
  366. queryParamsType: "undefined",
  367. queryParams: function queryParams(params) { //设置查询参数
  368. var param = {
  369. page: params.pageNumber,
  370. pagesize: params.pageSize,
  371. token: token,
  372. pid: id,
  373. keywords: keyWord
  374. };
  375. return param;
  376. },
  377. onLoadSuccess: function() { //加载成功时执行
  378. //layer.msg("加载成功");
  379. },
  380. onLoadError: function() { //加载失败时执行
  381. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  382. }
  383. });
  384. }
  385. function formatterTitle(val, row){
  386. if(val.length > 15){
  387. val = val.substring(0,15) + "...";
  388. }
  389. return '<div onclick="btn_detail('+ row.F_RepositoryId +')" class="content">' + val + '</div>'
  390. }
  391. function oper(val, row) {
  392. if(val.length > 20){
  393. val = val.substring(0,20) + "...";
  394. }
  395. return '<div onclick="btn_detail('+ row.F_RepositoryId +')" class="content">' + val + '</div>'
  396. }
  397. function formatterKey(val, row) {
  398. if(val.length > 10){
  399. val = val.substring(0,10) + "...";
  400. }
  401. return val;
  402. }
  403. function setCode(val, row, index) {
  404. var page = table.bootstrapTable("getPageCode");
  405. return page.pageSize * (page.pageNumber - 1) + index + 1;
  406. }
  407. //点击标题 内容查看详情
  408. function btn_detail(seeid) {
  409. layer.open({
  410. type: 2,
  411. title: '查看知识库',
  412. shadeClose: true, //是否开启点击遮罩关闭
  413. shade: 0.4, //遮罩
  414. maxmin: true, //开启最大化最小化按钮
  415. id: 'LAY_layuipro', //防止重复弹出
  416. moveType: 1, //拖拽类型 默认的拖拽风格正如你所见到的,会有个过度的透明框。但是如果你不喜欢,你可以设定moveType: 1切换到传统的拖拽模式
  417. moveOut: true, //拖拽到窗口外
  418. //resize: true,//是否允许拉伸
  419. area: ['70%', '50%'],
  420. content: 'addModel.html?changeGetid=' + seeid + ''
  421. });
  422. }