Brak opisu

theme.html 27KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <script src="../Script/Common/huayi.load.js"></script>
  6. <script src="../Script/Common/huayi.config.js"></script>
  7. <link rel="stylesheet" href="../js/zTree/zTreeStyle.css" />
  8. <link rel="stylesheet" href="../css/init.css" />
  9. <link rel="stylesheet" href="../js/comboSelect/combo.select.css" />
  10. <link rel="stylesheet" href="./css/yongHuManger.css" />
  11. <!--<link rel="stylesheet" href="../js/layui/css/layui.css">-->
  12. <link rel="stylesheet" href="../css/layui/css/layui.css" />
  13. <title>主题管理</title>
  14. <style>
  15. .toolRight input {
  16. width: 100%;
  17. height: 36px;
  18. }
  19. .toolRight {
  20. position: relative;
  21. line-height: 30px;
  22. }
  23. .toolRight .tooldiv1 {
  24. /* position: absolute; */
  25. display: inline-block;
  26. margin-right: 10px;
  27. vertical-align: top;
  28. }
  29. #characterSelect {
  30. width: 170px;
  31. height: 36px;
  32. border: 2px solid rgb(235, 235, 235);
  33. }
  34. .model select {
  35. width: 200px;
  36. height: 27px;
  37. }
  38. .xg {
  39. color: #337ab7;
  40. }
  41. .btns {
  42. background: #00a1cb;
  43. color: #fff;
  44. padding: 1px 18px;
  45. outline: none;
  46. /* font-size: 14px; */
  47. margin-left: 15px;
  48. border: 0;
  49. border-radius: 3px;
  50. box-sizing: border-box;
  51. cursor: pointer;
  52. vertical-align: middle;
  53. }
  54. </style>
  55. </head>
  56. <body class="gray-bg">
  57. <div class="container-fluid wrapper-content animated fadeInRight">
  58. <div class="daoHang clearfix">
  59. <div class="dhLeft">
  60. <sapn><i class="syIcon"></i>位置:
  61. <a id="ReIndex" href="javaScript:;">首页</a>&gt;
  62. <a href="javaScript:;">主题管理</a>&gt;
  63. <a href="" class="nowPosition">主题管理</a>
  64. </sapn>
  65. </div>
  66. <div class="dhRight">
  67. <a href="" title="刷新"><i class="fa fa-refresh"></i></a>
  68. </div>
  69. </div>
  70. <div class="toolBar clearfix">
  71. <div class="toolLeft">
  72. <button class="btns add">添加主题</button>
  73. <button class="btns change">修改主题</button>
  74. <button class="btns del">删除主题</button>
  75. </div>
  76. </div>
  77. <div class="treeTable clearfix">
  78. <div class="tree col-md-3">
  79. <div class="trTitle"> 月主题</div>
  80. <div class="treeCon">
  81. <ul id="treeDemo" class="ztree">
  82. <!--类名为ztree是必须的-->
  83. </ul>
  84. </div>
  85. </div>
  86. <div class="tableCon col-md-9">
  87. <div class="trTitle">主题分类 <span id="time" style="color: darkgray;font-size: 14px;"></span>
  88. </div>
  89. <div class="layui-tab layui-tab-brief">
  90. <ul class="layui-tab-title">
  91. <li class="layui-this">分类管理</li>
  92. <li>样本池</li>
  93. <li>分类占比</li>
  94. <!--<li>商品管理</li>
  95. <li>订单管理</li>-->
  96. </ul>
  97. <div class="layui-tab-content" style="height: 100px;">
  98. <div class="layui-tab-item layui-show">
  99. <div class="toolRight">
  100. <button id="addClassBut" hidden="hidden" class="btns addclass" style="margin-bottom: 10px;">添加分类</button>
  101. </div>
  102. <table id="table1" data-row-style="rowStyle" data-query-params="queryParams" data-pagination="true">
  103. <thead>
  104. <tr>
  105. <th data-field="F_Name" data-align="center" data-formatter="Cr">序号</th>
  106. <th data-field="F_Name" data-align="left">分类名称</th>
  107. <th data-field="F_CreateTime" data-align="center">创建时间</th>
  108. <th data-field="F_ID" data-formatter="Dispose" data-align="center">操作</th>
  109. </tr>
  110. </thead>
  111. </table>
  112. </div>
  113. <div class="layui-tab-item">
  114. <div class="toolRight">
  115. <div class="layui-form-item">
  116. <div class="layui-inline">
  117. <label class="layui-form-label" style="width: 100px;">工单编号</label>
  118. <div class="layui-input-inline" style="width: 200px;">
  119. <input type="text" id="orderId" autocomplete="off" class="layui-input">
  120. </div>
  121. </div>
  122. <div class="layui-inline">
  123. <label class="layui-form-label" style="width: 100px;">工单内容</label>
  124. <div class="layui-input-inline" style="width: 200px;">
  125. <input type="text" id="orderContent" autocomplete="off" class="layui-input">
  126. </div>
  127. </div>
  128. <div class="layui-inline">
  129. <label class="layui-form-label" style="width: 100px;">主题分类</label>
  130. <div class="layui-input-inline" style="width: 200px;">
  131. <select name="" id="orderClass" class="form-control">
  132. </select>
  133. </div>
  134. </div>
  135. <div class="layui-inline">
  136. <label class="layui-form-label" style="width: 100px;">是否典型</label>
  137. <div class="layui-input-inline" style="width: 200px;">
  138. <select name="" id="orderRep" class="form-control">
  139. <option selected="selected" value="">
  140. 请选择
  141. </option>
  142. <option value="0">否</option>
  143. <option value="1">是</option>
  144. </select>
  145. </div>
  146. </div>
  147. <div class="layui-inline">
  148. <button id="searchOrder" class="btns" style="margin-bottom: 10px;">查询</button>
  149. <button id="exportOrder" class="btns" style="margin-bottom: 10px;">导出工单</button>
  150. <button id="addOrder" class="btns" style="margin-bottom: 10px;">添加工单</button>
  151. </div>
  152. </div>
  153. <!--<button id="addOrder" class="btns" style="margin-bottom: 10px;">导出工单</button>
  154. <button id="addOrder" class="btns" style="margin-bottom: 10px;">添加工单</button>-->
  155. </div>
  156. <table id="workorder" data-row-style="rowStyle" data-query-params="queryParams" data-pagination="true">
  157. <thead>
  158. <tr>
  159. <th data-field="F_WorkOrderId" data-formatter="View" data-align="center">工单单号</th>
  160. <th data-field="F_ComTitle" data-formatter="GetCont" data-align="center">诉求标题</th>
  161. <th data-field="F_ComContent" data-formatter="GetCont" data-align="center">来电内容</th>
  162. <th data-field="DeptName" data-align="center">承办单位</th>
  163. <!--<th data-field="UserName" data-align="center">受理人</th>-->
  164. <th data-field="F_WorkState" data-align="center" data-formatter="States">办理状态</th>
  165. <!--<th data-field="OverState" data-formatter="OverTime" data-align="center">时限</th>
  166. <th data-field="LimitTime" data-formatter="BanTime" data-align="center">办理时限</th>-->
  167. <th data-field="F_Result" data-formatter="GetCont" data-align="center">办理结果</th>
  168. <th data-field="F_ID" data-formatter="PoolDispose" data-align="center">操作</th>
  169. </tr>
  170. </thead>
  171. </table>
  172. </div>
  173. <div class="layui-tab-item">
  174. <form class="layui-form" lay-filter="zb">
  175. <div class="layui-form-item">
  176. <label class="layui-form-label" style="width: 100px;">反应类别</label>
  177. <div class="layui-input-block">
  178. <select id="fylb" lay-filter="fylb" lay-verify="required">
  179. </select>
  180. </div>
  181. </div>
  182. <div class="layui-form-item">
  183. <label class="layui-form-label">占比</label>
  184. <div class="layui-input-block" style="line-height: 36px;">
  185. <span id="proporation"></span>
  186. </div>
  187. </div>
  188. <div class="layui-form-item">
  189. </div>
  190. </form>
  191. <div class="layui-input-block">
  192. <button class="layui-btn" onclick="save()">保存</button>
  193. </div>
  194. </div>
  195. </div>
  196. </div>
  197. </div>
  198. </div>
  199. </div>
  200. <script src="../js/jquery.md5.js"></script>
  201. <script src="../css/laydate/laydate.js"></script>
  202. <script src="../css/layer/layer.js"></script>
  203. <script src="../js/layui/layui.js"></script>
  204. <script src="../js/zTree/jquery.ztree.core.js"></script>
  205. <script src="../js/comboSelect/jquery.combo.select.js"></script>
  206. <script src="../js/WorkOrder/orderListOperation.js"></script>
  207. <script src="../js/WorkOrder/WorkOrderList.js"></script>
  208. <script>
  209. var table = $("#table1"); //右边表格
  210. var orderTable = $("#workorder"); //右边表格
  211. var selectThemeId = '';
  212. var selectTreeNode;
  213. $(document).ready(function() {
  214. bindtree();
  215. // initTable();
  216. // initOrderTable();
  217. layui.form.on('select(fylb)', function(data) {
  218. // console.log(data.elem); //得到select原始DOM对象
  219. // console.log(data.value); //得到被选中的值
  220. // console.log(data.othis); //得到美化后的DOM对象
  221. $('#proporation').text('');
  222. if(data.value) {
  223. getProp(data.value);
  224. }
  225. });
  226. })
  227. function Cr(val, row, index) {
  228. return index + 1;
  229. }
  230. function getProp(id) {
  231. // 获取占比
  232. $.getJSON(
  233. huayi.config.callcenter_url + "Theme/Proportion", {
  234. token: $.cookie("token"),
  235. id: selectThemeId,
  236. keyid: id,
  237. },
  238. function(result) {
  239. if(result.state.toLowerCase() == "success") {
  240. $('#proporation').text(result.data.Proportion);
  241. }
  242. }
  243. );
  244. }
  245. function save() {
  246. console.log('sava')
  247. var keyId = $('#fylb').val();
  248. if(!keyId) {
  249. layer.confirm('请选择反应类别!', {
  250. btn: ['确定']
  251. });
  252. return;
  253. }
  254. $.post(huayi.config.callcenter_url + 'Theme/Proportion', {
  255. id: selectThemeId,
  256. Proportion: keyId,
  257. "token": $.cookie("token")
  258. }, function(result) {
  259. result = $.parseJSON(result);
  260. if(result.state.toLowerCase() == "success") {
  261. layer.msg("操作成功");
  262. }
  263. })
  264. }
  265. //状态
  266. function States(val, row) {
  267. var html = "";
  268. switch(val + "") {
  269. case "0":
  270. html = "新工单";
  271. if(row.F_IsReturn == 1) {
  272. html = "新工单(回退)";
  273. }
  274. break;
  275. case "1":
  276. html = "待交办";
  277. break;
  278. case "2":
  279. html = '<span style="color:#FF0000;">待查收</span>';
  280. break;
  281. case "3":
  282. html = "退回审核中";
  283. break;
  284. case "4":
  285. html = "办理中";
  286. break;
  287. case "5":
  288. html = "延时审核";
  289. break;
  290. case "6":
  291. if(row.F_IsProtect === 2 || row.F_IsProtect === 3) {
  292. html = "已办未果"
  293. } else {
  294. html = "已办理";
  295. }
  296. break;
  297. case "7":
  298. html = "待回访";
  299. break;
  300. case "8":
  301. if(row.F_Identification === 0) {
  302. html = "重置转发";
  303. } else if(row.F_Identification === 1) {
  304. html = "退回重办";
  305. } else {
  306. html = "重办中";
  307. }
  308. break;
  309. case "9":
  310. html = "已结案";
  311. break;
  312. case "10":
  313. html = "待审核";
  314. break;
  315. case "11":
  316. html = "重办待交办";
  317. break;
  318. // case '12':
  319. // html = '待审核';
  320. // break;
  321. case "13":
  322. html = "重办驳回";
  323. break;
  324. }
  325. return html;
  326. }
  327. function GetCont(val) {
  328. if(val) {
  329. var str = "<div ";
  330. if(val.length > 10) {
  331. str = str + ' title="' + val + '" ';
  332. val = val.substr(0, 10) + "...";
  333. }
  334. return str + ">" + val + "</div>";
  335. } else {
  336. return "";
  337. }
  338. }
  339. //时限
  340. function OverTime(val, row) {
  341. if(val == 1) {
  342. return(
  343. '<div class="" style="cursor: pointer;">' +
  344. '<span class="Greens">' +
  345. row.GapTime +
  346. "</span>" +
  347. "</div>"
  348. );
  349. } else if(val == 2) {
  350. return(
  351. '<div class="" style="cursor: pointer;">' +
  352. '<span class="Yellows">' +
  353. row.GapTime +
  354. "</span>" +
  355. "</div>"
  356. );
  357. } else if(val == 3) {
  358. return(
  359. '<div class="" style="cursor: pointer;">' +
  360. '<span class="Reds">' +
  361. row.GapTime +
  362. "</span>" +
  363. "</div>"
  364. );
  365. }
  366. }
  367. //办理时限
  368. function BanTime(val) {
  369. if(val) {
  370. var time = val.substring(0, val.indexOf(" "));
  371. return(
  372. '<div class="" style="cursor: pointer;">' +
  373. "<span>" +
  374. time +
  375. "</span>" +
  376. "</div>"
  377. );
  378. }
  379. }
  380. function getDicValueList(treeNode) {
  381. $.getJSON(
  382. huayi.config.callcenter_url + "Dictionary/GetDicValueListById", {
  383. token: $.cookie("token"),
  384. id: 3,
  385. },
  386. function(result) {
  387. if(result.state.toLowerCase() == "success") {
  388. console.log(treeNode, 'treeNode')
  389. var trees = result.data;
  390. var treeStr = '<option value="">请选择</option>';
  391. if(trees.length > 0) {
  392. trees.forEach((o) => {
  393. treeStr += '<option value="' + o.F_ValueId + '" ' + (treeNode.F_Proportion == o.F_ValueId ? 'selected=""' : '') + '>' + o.F_Value + '</option>';
  394. })
  395. }
  396. $("#fylb").append(treeStr);
  397. layui.form.render("select");
  398. if(treeNode && treeNode.F_Proportion) {
  399. getProp(treeNode.F_Proportion);
  400. }
  401. }
  402. }
  403. );
  404. }
  405. $(".add").click(function() {
  406. console.log('123123')
  407. layer.open({
  408. type: 2,
  409. content: "editTheme.html?type=1&themeType=2", //iframe的url,no代表不显示滚动条
  410. title: '新增主题',
  411. area: ['50%', '80%'], //宽高
  412. end: function() {
  413. bindtree();
  414. // initTable();
  415. // initOrderTable();
  416. }
  417. });
  418. });
  419. $(".addclass").click(function() {
  420. layer.open({
  421. type: 2,
  422. content: "editTheme.html?type=2&themeid=" + selectThemeId, //iframe的url,no代表不显示滚动条
  423. title: '新增分类',
  424. area: ['50%', '50%'], //宽高
  425. end: function() {
  426. console.log('关闭')
  427. initTable();
  428. }
  429. });
  430. });
  431. $(".change").click(function() {
  432. if(!selectThemeId) {
  433. layer.msg("请选择要修改的数据");
  434. return;
  435. }
  436. layer.open({
  437. type: 2,
  438. content: "editTheme.html?type=1&themeType=2&id=" + selectThemeId, //iframe的url,no代表不显示滚动条
  439. title: '修改主题',
  440. area: ['50%', '80%'], //宽高
  441. end: function() {
  442. bindtree();
  443. }
  444. });
  445. });
  446. $('#exportOrder').click(function() {
  447. // $.getJSON(
  448. // huayi.config.callcenter_url + "SamplePool/GetSampleList", {
  449. // token: $.cookie("token"),
  450. // workid: $('#orderId').val(),
  451. // ComContent: $('#orderContent').val(),
  452. // classification: $('#orderClass').val(),
  453. // istypical: $('#orderRep').val(),
  454. // isdc: 1,
  455. //
  456. // specialid: selectThemeId,
  457. // },
  458. // function(result) {
  459. //
  460. // }
  461. // );
  462. var url =
  463. huayi.config.callcenter_url +
  464. "SamplePool/GetSampleList?token=" +
  465. $.cookie("token") +
  466. "&isdc=1";
  467. url +=
  468. "&workid=" +
  469. $('#orderId').val() +
  470. "&ComContent=" +
  471. $('#orderContent').val() +
  472. "&classification=" +
  473. $('#orderClass').val() +
  474. "&istypical=" +
  475. $('#orderRep').val() +
  476. "&specialid=" +
  477. $('#orderRep').val();
  478. window.location.href = url;
  479. })
  480. $('#searchOrder').click(function() {
  481. initOrderTable();
  482. });
  483. $('#addOrder').click(function() {
  484. if(!selectThemeId) {
  485. layer.msg("请选择要主题");
  486. return;
  487. }
  488. var str = '';
  489. if(selectTreeNode.F_StatisticsBeginTime) {
  490. str += '&startTime=' + selectTreeNode.F_StatisticsBeginTime;
  491. }
  492. if(selectTreeNode.F_StatisticsEndTime) {
  493. str += '&endTime=' + selectTreeNode.F_StatisticsEndTime;
  494. }
  495. layer.open({
  496. type: 2,
  497. content: "workorder.html?id=" + selectThemeId + str, //iframe的url,no代表不显示滚动条
  498. title: '获取对应工单列表',
  499. area: ['80%', '60%'], //宽高
  500. end: function() {
  501. console.log('关闭')
  502. initOrderTable();
  503. }
  504. });
  505. })
  506. $(".del").click(function() {
  507. if(!selectThemeId) {
  508. layer.msg("请选择要删除的数据");
  509. return;
  510. }
  511. layer.confirm('确定删除该主题吗?', function(index) {
  512. $.post(huayi.config.callcenter_url + 'Theme/DelModel', {
  513. ids: selectThemeId,
  514. "token": $.cookie("token")
  515. }, function(result) {
  516. result = $.parseJSON(result);
  517. if(result.state.toLowerCase() == "success") {
  518. layer.msg("操作成功");
  519. bindtree();
  520. layer.close(index);
  521. }
  522. })
  523. });
  524. });
  525. function Dispose(val, row) {
  526. return '<div class="imgs" >' +
  527. '<a class="xg" onclick="xg(' + row.F_ID + ')">编辑</a>' +
  528. '<a class="xg" onclick="remove(' + row.F_ID + ')">删除</a>' + '<a class="xg" onclick="getKeys(' + row.F_ID + ')">关键词 </a>' +
  529. '</div>';
  530. }
  531. function PoolDispose(val, row) {
  532. var optionStr = '<div class="imgs" ><a class="xg" onclick="delPool(\'' + row.F_WorkOrderId + '\')">移除</a>';
  533. if(row.Theme && row.Theme.length > 0) {
  534. optionStr += '<a class="xg" onclick="updateClass(\'' + row.F_WorkOrderId + '\')">变更</a>';
  535. } else {
  536. optionStr += '<a class="xg" onclick="transDispatch(\'' + row.F_WorkOrderId + '\')")">转调度</a>';
  537. }
  538. optionStr += '</div>';
  539. return optionStr;
  540. // return '<div class="imgs" >' +
  541. // '<a class="xg" onclick="xg(' + row.F_ID + ')">编辑</a>' +
  542. // '<a class="xg" onclick="remove(' + row.F_ID + ')">移除</a>' + '<a class="xg" onclick="getKeys(' + row.F_ID + ')">关键词 </a>' +
  543. // '</div>';
  544. }
  545. // 转调度
  546. function transDispatch(id) {
  547. layer.open({
  548. type: 2,
  549. content: "../CommonHtml/reschedule.html?wid=" + id + '&themeid=' + selectThemeId, //iframe的url,no代表不显示滚动条
  550. title: "转调度",
  551. area: ["30%", "50%"], //宽高
  552. shade: 0,
  553. end: function() {
  554. initOrderTable()
  555. }
  556. });
  557. }
  558. //变更分类
  559. function updateClass(id) {
  560. layer.open({
  561. type: 2,
  562. content: "../CommonHtml/reschedule.html?wid=" + id + '&themeid=' + selectThemeId, //iframe的url,no代表不显示滚动条
  563. title: "转调度",
  564. area: ["30%", "50%"], //宽高
  565. shade: 0,
  566. end: function() {
  567. initOrderTable()
  568. }
  569. });
  570. }
  571. //从样本池移除
  572. function delPool(id) {
  573. layer.confirm('是否确定移除该数据?', function(index) {
  574. //do something
  575. $.post(huayi.config.callcenter_url + 'SamplePool/DelWorkorder', {
  576. workorderid: id,
  577. specialid: selectThemeId,
  578. "token": $.cookie("token")
  579. }, function(result) {
  580. result = $.parseJSON(result);
  581. if(result.state.toLowerCase() == "success") {
  582. layer.msg("操作成功");
  583. }
  584. initOrderTable();
  585. })
  586. layer.close(index);
  587. });
  588. }
  589. function getKeys(id) {
  590. layer.open({
  591. type: 2,
  592. content: "keys.html?type=2&id=" + id + '&themeid=' + selectThemeId, //iframe的url,no代表不显示滚动条
  593. title: '分类关键词',
  594. area: ['60%', '80%'], //宽高
  595. end: function() {
  596. console.log('关闭')
  597. // initTable();
  598. }
  599. });
  600. }
  601. function xg(id) {
  602. layer.open({
  603. type: 2,
  604. content: "editTheme.html?type=2&id=" + id, //iframe的url,no代表不显示滚动条
  605. title: '修改主题',
  606. area: ['40%', '50%'], //宽高
  607. end: function() {
  608. console.log('关闭')
  609. initTable();
  610. }
  611. });
  612. }
  613. function remove(id) {
  614. layer.confirm('确定删除该分类吗?', function(index) {
  615. $.post(huayi.config.callcenter_url + 'Theme/DelModel', {
  616. ids: id,
  617. "token": $.cookie("token")
  618. }, function(result) {
  619. result = $.parseJSON(result);
  620. if(result.state.toLowerCase() == "success") {
  621. layer.msg("操作成功");
  622. initTable(selectThemeId)
  623. layer.close(index);
  624. }
  625. })
  626. });
  627. }
  628. //右边表格
  629. function initTable(id) {
  630. if (!id) id = selectThemeId;
  631. //先销毁表格
  632. table.bootstrapTable("destroy");
  633. //初始化表格,动态从服务器加载数据
  634. table.bootstrapTable({
  635. method: "get",
  636. //使用get请求到服务器获取数据
  637. url: huayi.config.callcenter_url + "Theme/GetList",
  638. //获取数据的Servlet地址
  639. striped: true,
  640. //表格显示条纹
  641. pagination: false,
  642. //启动分页
  643. pageSize: 100,
  644. //每页显示的记录数
  645. pageNumber: 1,
  646. //当前第几页
  647. // pageList: [10, 20, 50, 100],
  648. //记录数可选列表
  649. search: false,
  650. //是否启用查询
  651. showColumns: false,
  652. //显示下拉框勾选要显示的列
  653. showRefresh: false,
  654. //显示刷新按钮
  655. sidePagination: "server",
  656. //表示服务端请求
  657. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  658. //设置为limit可以获取limit, offset, search, sort, order
  659. queryParamsType: "undefined",
  660. queryParams: function queryParams(params) {
  661. //设置查询参数
  662. var param = {
  663. page: 1,
  664. pagesize: 200,
  665. token: $.cookie("token"),
  666. type: 2,
  667. parentid: id,
  668. };
  669. return param;
  670. },
  671. onLoadSuccess: function(data) {
  672. //加载成功时执行
  673. console.log(data, 'datas')
  674. if (data.rows && data.rows.length > 0) {
  675. // orderClass
  676. var optionStr = '<option selected="selected" value="">请选择</option>';
  677. data.rows.forEach(function(o) {
  678. optionStr += '<option value="'+o.F_ID+'">'+ o.F_Name +'</option>';
  679. })
  680. $('#orderClass').append(optionStr)
  681. }
  682. //layer.msg("加载成功");
  683. },
  684. onLoadError: function() {
  685. //加载失败时执行
  686. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  687. },
  688. });
  689. }
  690. //右边表格
  691. function initOrderTable(id) {
  692. if (!id) id = selectThemeId;
  693. //先销毁表格
  694. orderTable.bootstrapTable("destroy");
  695. //初始化表格,动态从服务器加载数据
  696. orderTable.bootstrapTable({
  697. method: "get",
  698. //使用get请求到服务器获取数据
  699. url: huayi.config.callcenter_url + "SamplePool/GetSampleList",
  700. //获取数据的Servlet地址
  701. striped: true,
  702. //表格显示条纹
  703. pagination: true,
  704. //启动分页
  705. pageSize: 10,
  706. //每页显示的记录数
  707. pageNumber: 1,
  708. //当前第几页
  709. pageList: [10, 20, 50, 100],
  710. //记录数可选列表
  711. search: false,
  712. //是否启用查询
  713. showColumns: false,
  714. //显示下拉框勾选要显示的列
  715. showRefresh: false,
  716. //显示刷新按钮
  717. sidePagination: "server",
  718. //表示服务端请求
  719. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  720. //设置为limit可以获取limit, offset, search, sort, order
  721. queryParamsType: "undefined",
  722. queryParams: function queryParams(params) {
  723. //设置查询参数
  724. var param = {
  725. page: params.pageNumber,
  726. pagesize: params.pageSize,
  727. token: $.cookie("token"),
  728. workid: $('#orderId').val(),
  729. ComContent: $('#orderContent').val(),
  730. classification: $('#orderClass').val(),
  731. istypical: $('#orderRep').val(),
  732. specialid: id,
  733. };
  734. return param;
  735. },
  736. onLoadSuccess: function() {
  737. //加载成功时执行
  738. //layer.msg("加载成功");
  739. },
  740. onLoadError: function() {
  741. //加载失败时执行
  742. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  743. },
  744. });
  745. }
  746. function bindtree() {
  747. $('#proporation').text('');
  748. $("#fylb").empty();
  749. console.log('bindtree')
  750. $("#orderClass").empty();
  751. $.getJSON(
  752. huayi.config.callcenter_url + "Theme/GetList", {
  753. token: $.cookie("token"),
  754. type: 1,
  755. types: 2,
  756. },
  757. function(result) {
  758. if(result.state.toLowerCase() == "success") {
  759. var checked = false;
  760. const rows = result.rows.map((o) => {
  761. o.F_Name = '【' + o.F_Cycle + '】' + o.F_Name;
  762. if(!checked) {
  763. o.checked = true;
  764. checked = true;
  765. }
  766. return o;
  767. });
  768. console.log(rows, 'rows')
  769. $.fn.zTree.init($("#treeDemo"), {
  770. data: {
  771. key: {
  772. name: "F_Name",
  773. checked: 'checked',
  774. },
  775. simpleData: {
  776. enable: false,
  777. idKey: "F_ID",
  778. pIdKey: "",
  779. rootPId: 0,
  780. },
  781. },
  782. callback: {
  783. onClick: zTreeOnClick,
  784. },
  785. view: {
  786. nameIsHTML: true,
  787. fontCss: setFontCss_ztree
  788. }
  789. }, rows);
  790. var zTreeObj = $.fn.zTree.getZTreeObj("treeDemo");
  791. var node = zTreeObj.getNodeByParam("F_ID", rows[0].F_ID);
  792. zTreeObj.selectNode(node, '', true);
  793. // node.highlight = true;
  794. zTreeObj.updateNode(node);
  795. // 默认点击第一个
  796. zTreeOnClick(null, null, {
  797. F_ID: rows[0].F_ID,
  798. F_Proportion: rows[0].F_Proportion,
  799. F_StatisticsBeginTime: rows[0].F_StatisticsBeginTime,
  800. F_StatisticsEndTime: rows[0].F_StatisticsEndTime,
  801. });
  802. }
  803. }
  804. );
  805. }
  806. function setFontCss_ztree(treeId, treeNode) {
  807. console.log(treeNode, 'treeNode')
  808. if (treeNode.F_IsDisplay) {
  809. //根节点
  810. return { color: "red", "font-weight": "bold" };
  811. } else if (treeNode.isParent == false) {
  812. //叶子节点
  813. return (!!treeNode.highlight) ? { color: "#ff0000", "font-weight": "bold" } : { color: "#000", "font-weight": "normal" };
  814. } else {
  815. //父节点
  816. return (!!treeNode.highlight) ? { color: "#ff0000", "font-weight": "bold" } : { color: "#333", "font-weight": "normal" };
  817. }
  818. }
  819. function zTreeOnClick(event, treeId, treeNode) {
  820. selectThemeId = treeNode.F_ID
  821. selectTreeNode = treeNode
  822. $("#fylb").empty();
  823. console.log('bindtree')
  824. $("#orderClass").empty();
  825. $('#addClassBut').show();
  826. initTable(treeNode.F_ID);
  827. initOrderTable(treeNode.F_ID);
  828. if(treeNode.F_StatisticsBeginTime) {
  829. $('#time').html(`${treeNode.F_StatisticsBeginTime} ~ ${treeNode.F_StatisticsEndTime}`)
  830. }
  831. getDicValueList(treeNode);
  832. }
  833. </script>
  834. </body>
  835. </html>