Açıklama Yok

weekTheme.html 26KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906
  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 exportParams;
  210. var table = $("#table1"); //右边表格
  211. var orderTable = $("#workorder"); //右边表格
  212. var selectThemeId = '';
  213. var selectTreeNode;
  214. $(document).ready(function() {
  215. bindtree();
  216. // initTable();
  217. // initOrderTable();
  218. layui.form.on('select(fylb)', function(data) {
  219. // console.log(data.elem); //得到select原始DOM对象
  220. // console.log(data.value); //得到被选中的值
  221. // console.log(data.othis); //得到美化后的DOM对象
  222. $('#proporation').text('');
  223. if(data.value) {
  224. getProp(data.value);
  225. }
  226. });
  227. })
  228. function Cr(val, row, index) {
  229. return index + 1;
  230. }
  231. function getProp(id) {
  232. // 获取占比
  233. $.getJSON(
  234. huayi.config.callcenter_url + "Theme/Proportion", {
  235. token: $.cookie("token"),
  236. id: selectThemeId,
  237. keyid: id,
  238. },
  239. function(result) {
  240. if(result.state.toLowerCase() == "success") {
  241. $('#proporation').text(result.data.Proportion);
  242. }
  243. }
  244. );
  245. }
  246. function save() {
  247. console.log('sava')
  248. var keyId = $('#fylb').val();
  249. if(!keyId) {
  250. layer.confirm('请选择反应类别!', {
  251. btn: ['确定']
  252. });
  253. return;
  254. }
  255. $.post(huayi.config.callcenter_url + 'Theme/Proportion', {
  256. id: selectThemeId,
  257. Proportion: keyId,
  258. "token": $.cookie("token")
  259. }, function(result) {
  260. result = $.parseJSON(result);
  261. if(result.state.toLowerCase() == "success") {
  262. layer.msg("操作成功");
  263. }
  264. })
  265. }
  266. //状态
  267. function States(val, row) {
  268. var html = "";
  269. switch(val + "") {
  270. case "0":
  271. html = "新工单";
  272. if(row.F_IsReturn == 1) {
  273. html = "新工单(回退)";
  274. }
  275. break;
  276. case "1":
  277. html = "待交办";
  278. break;
  279. case "2":
  280. html = '<span style="color:#FF0000;">待查收</span>';
  281. break;
  282. case "3":
  283. html = "退回审核中";
  284. break;
  285. case "4":
  286. html = "办理中";
  287. break;
  288. case "5":
  289. html = "延时审核";
  290. break;
  291. case "6":
  292. if(row.F_IsProtect === 2 || row.F_IsProtect === 3) {
  293. html = "已办未果"
  294. } else {
  295. html = "已办理";
  296. }
  297. break;
  298. case "7":
  299. html = "待回访";
  300. break;
  301. case "8":
  302. if(row.F_Identification === 0) {
  303. html = "重置转发";
  304. } else if(row.F_Identification === 1) {
  305. html = "退回重办";
  306. } else {
  307. html = "重办中";
  308. }
  309. break;
  310. case "9":
  311. html = "已结案";
  312. break;
  313. case "10":
  314. html = "待审核";
  315. break;
  316. case "11":
  317. html = "重办待交办";
  318. break;
  319. // case '12':
  320. // html = '待审核';
  321. // break;
  322. case "13":
  323. html = "重办驳回";
  324. break;
  325. }
  326. return html;
  327. }
  328. function GetCont(val) {
  329. if(val) {
  330. var str = "<div ";
  331. if(val.length > 10) {
  332. str = str + ' title="' + val + '" ';
  333. val = val.substr(0, 10) + "...";
  334. }
  335. return str + ">" + val + "</div>";
  336. } else {
  337. return "";
  338. }
  339. }
  340. //时限
  341. function OverTime(val, row) {
  342. if(val == 1) {
  343. return(
  344. '<div class="" style="cursor: pointer;">' +
  345. '<span class="Greens">' +
  346. row.GapTime +
  347. "</span>" +
  348. "</div>"
  349. );
  350. } else if(val == 2) {
  351. return(
  352. '<div class="" style="cursor: pointer;">' +
  353. '<span class="Yellows">' +
  354. row.GapTime +
  355. "</span>" +
  356. "</div>"
  357. );
  358. } else if(val == 3) {
  359. return(
  360. '<div class="" style="cursor: pointer;">' +
  361. '<span class="Reds">' +
  362. row.GapTime +
  363. "</span>" +
  364. "</div>"
  365. );
  366. }
  367. }
  368. //办理时限
  369. function BanTime(val) {
  370. if(val) {
  371. var time = val.substring(0, val.indexOf(" "));
  372. return(
  373. '<div class="" style="cursor: pointer;">' +
  374. "<span>" +
  375. time +
  376. "</span>" +
  377. "</div>"
  378. );
  379. }
  380. }
  381. function getDicValueList(treeNode) {
  382. $.getJSON(
  383. huayi.config.callcenter_url + "Dictionary/GetDicValueListById", {
  384. token: $.cookie("token"),
  385. id: 3,
  386. },
  387. function(result) {
  388. if(result.state.toLowerCase() == "success") {
  389. console.log(treeNode, 'treeNode')
  390. var trees = result.data;
  391. var treeStr = '<option value="">请选择</option>';
  392. if(trees.length > 0) {
  393. trees.forEach((o) => {
  394. treeStr += '<option value="' + o.F_ValueId + '" ' + (treeNode.F_Proportion == o.F_ValueId ? 'selected=""' : '') + '>' + o.F_Value + '</option>';
  395. })
  396. }
  397. $("#fylb").append(treeStr);
  398. layui.form.render("select");
  399. if(treeNode && treeNode.F_Proportion) {
  400. getProp(treeNode.F_Proportion);
  401. }
  402. }
  403. }
  404. );
  405. }
  406. $(".add").click(function() {
  407. layer.open({
  408. type: 2,
  409. content: "editTheme.html?type=1&themeType=1", //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=1&id=" + selectThemeId, //iframe的url,no代表不显示滚动条
  439. title: '修改主题',
  440. area: ['50%', '80%'], //宽高
  441. end: function() {
  442. bindtree();
  443. }
  444. });
  445. });
  446. $('#exportOrder').click(function() {
  447. exportParams.isdc = 1;
  448. exportFileFun("SamplePool/GetSampleList", exportParams)
  449. })
  450. $('#searchOrder').click(function() {
  451. initOrderTable();
  452. });
  453. $('#addOrder').click(function() {
  454. if(!selectThemeId) {
  455. layer.msg("请选择要主题");
  456. return;
  457. }
  458. var str = '';
  459. if(selectTreeNode.F_StatisticsBeginTime) {
  460. str += '&startTime=' + selectTreeNode.F_StatisticsBeginTime;
  461. }
  462. if(selectTreeNode.F_StatisticsEndTime) {
  463. str += '&endTime=' + selectTreeNode.F_StatisticsEndTime;
  464. }
  465. layer.open({
  466. type: 2,
  467. content: "workorder.html?id=" + selectThemeId + str, //iframe的url,no代表不显示滚动条
  468. title: '获取对应工单列表',
  469. area: ['80%', '60%'], //宽高
  470. end: function() {
  471. console.log('关闭')
  472. initOrderTable();
  473. }
  474. });
  475. })
  476. $(".del").click(function() {
  477. if(!selectThemeId) {
  478. layer.msg("请选择要删除的数据");
  479. return;
  480. }
  481. layer.confirm('确定删除该主题吗?', function(index) {
  482. $.post(huayi.config.callcenter_url + 'Theme/DelModel', {
  483. ids: selectThemeId,
  484. "token": $.cookie("token")
  485. }, function(result) {
  486. result = $.parseJSON(result);
  487. if(result.state.toLowerCase() == "success") {
  488. layer.msg("操作成功");
  489. bindtree();
  490. layer.close(index);
  491. }
  492. })
  493. });
  494. });
  495. function Dispose(val, row) {
  496. return '<div class="imgs" >' +
  497. '<a class="xg" onclick="xg(' + row.F_ID + ')">编辑</a>' +
  498. '<a class="xg" onclick="remove(' + row.F_ID + ')">删除</a>' + '<a class="xg" onclick="getKeys(' + row.F_ID + ')">关键词 </a>' +
  499. '</div>';
  500. }
  501. function PoolDispose(val, row) {
  502. var optionStr = '<div class="imgs" ><a class="xg" onclick="delPool(\'' + row.F_WorkOrderId + '\')">移除</a>';
  503. if(row.Theme && row.Theme.length > 0) {
  504. optionStr += '<a class="xg" onclick="updateClass(\'' + row.F_WorkOrderId + '\')">变更</a>';
  505. } else {
  506. optionStr += '<a class="xg" onclick="transDispatch(\'' + row.F_WorkOrderId + '\')")">转调度</a>';
  507. }
  508. optionStr += '</div>';
  509. return optionStr;
  510. // return '<div class="imgs" >' +
  511. // '<a class="xg" onclick="xg(' + row.F_ID + ')">编辑</a>' +
  512. // '<a class="xg" onclick="remove(' + row.F_ID + ')">移除</a>' + '<a class="xg" onclick="getKeys(' + row.F_ID + ')">关键词 </a>' +
  513. // '</div>';
  514. }
  515. // 转调度
  516. function transDispatch(id) {
  517. layer.open({
  518. type: 2,
  519. content: "../CommonHtml/reschedule.html?wid=" + id + '&themeid=' + selectThemeId, //iframe的url,no代表不显示滚动条
  520. title: "转调度",
  521. area: ["30%", "50%"], //宽高
  522. shade: 0,
  523. end: function() {
  524. initOrderTable()
  525. }
  526. });
  527. }
  528. //变更分类
  529. function updateClass(id) {
  530. layer.open({
  531. type: 2,
  532. content: "../CommonHtml/reschedule.html?wid=" + id + '&themeid=' + selectThemeId, //iframe的url,no代表不显示滚动条
  533. title: "转调度",
  534. area: ["30%", "50%"], //宽高
  535. shade: 0,
  536. end: function() {
  537. initOrderTable()
  538. }
  539. });
  540. }
  541. //从样本池移除
  542. function delPool(id) {
  543. layer.confirm('是否确定移除该数据?', function(index) {
  544. //do something
  545. $.post(huayi.config.callcenter_url + 'SamplePool/DelWorkorder', {
  546. workorderid: id,
  547. specialid: selectThemeId,
  548. "token": $.cookie("token")
  549. }, function(result) {
  550. result = $.parseJSON(result);
  551. if(result.state.toLowerCase() == "success") {
  552. layer.msg("操作成功");
  553. }
  554. initOrderTable();
  555. })
  556. layer.close(index);
  557. });
  558. }
  559. function getKeys(id) {
  560. layer.open({
  561. type: 2,
  562. content: "keys.html?type=2&id=" + id + '&themeid=' + selectThemeId, //iframe的url,no代表不显示滚动条
  563. title: '分类关键词',
  564. area: ['60%', '80%'], //宽高
  565. end: function() {
  566. console.log('关闭')
  567. // initTable();
  568. }
  569. });
  570. }
  571. function xg(id) {
  572. layer.open({
  573. type: 2,
  574. content: "editTheme.html?type=2&id=" + id, //iframe的url,no代表不显示滚动条
  575. title: '修改主题',
  576. area: ['40%', '50%'], //宽高
  577. end: function() {
  578. console.log('关闭')
  579. initTable();
  580. }
  581. });
  582. }
  583. function remove(id) {
  584. layer.confirm('确定删除该分类吗?', function(index) {
  585. $.post(huayi.config.callcenter_url + 'Theme/DelModel', {
  586. ids: id,
  587. "token": $.cookie("token")
  588. }, function(result) {
  589. result = $.parseJSON(result);
  590. if(result.state.toLowerCase() == "success") {
  591. layer.msg("操作成功");
  592. initTable(selectThemeId)
  593. layer.close(index);
  594. }
  595. })
  596. });
  597. }
  598. //右边表格
  599. function initTable(id) {
  600. if (!id) id = selectThemeId;
  601. //先销毁表格
  602. table.bootstrapTable("destroy");
  603. //初始化表格,动态从服务器加载数据
  604. table.bootstrapTable({
  605. method: "get",
  606. //使用get请求到服务器获取数据
  607. url: huayi.config.callcenter_url + "Theme/GetList",
  608. //获取数据的Servlet地址
  609. striped: true,
  610. //表格显示条纹
  611. pagination: false,
  612. //启动分页
  613. pageSize: 100,
  614. //每页显示的记录数
  615. pageNumber: 1,
  616. //当前第几页
  617. // pageList: [10, 20, 50, 100],
  618. //记录数可选列表
  619. search: false,
  620. //是否启用查询
  621. showColumns: false,
  622. //显示下拉框勾选要显示的列
  623. showRefresh: false,
  624. //显示刷新按钮
  625. sidePagination: "server",
  626. //表示服务端请求
  627. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  628. //设置为limit可以获取limit, offset, search, sort, order
  629. queryParamsType: "undefined",
  630. queryParams: function queryParams(params) {
  631. //设置查询参数
  632. var param = {
  633. page: 1,
  634. pagesize: 200,
  635. token: $.cookie("token"),
  636. type: 2,
  637. parentid: id,
  638. };
  639. return param;
  640. },
  641. onLoadSuccess: function(data) {
  642. //加载成功时执行
  643. console.log(data, 'datas')
  644. if (data.rows && data.rows.length > 0) {
  645. // orderClass
  646. var optionStr = '<option selected="selected" value="">请选择</option>';
  647. data.rows.forEach(function(o) {
  648. optionStr += '<option value="'+o.F_ID+'">'+ o.F_Name +'</option>';
  649. })
  650. $('#orderClass').append(optionStr)
  651. }
  652. //layer.msg("加载成功");
  653. },
  654. onLoadError: function() {
  655. //加载失败时执行
  656. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  657. },
  658. });
  659. }
  660. //右边表格
  661. function initOrderTable(id) {
  662. if (!id) id = selectThemeId;
  663. //先销毁表格
  664. orderTable.bootstrapTable("destroy");
  665. //初始化表格,动态从服务器加载数据
  666. orderTable.bootstrapTable({
  667. method: "get",
  668. //使用get请求到服务器获取数据
  669. url: huayi.config.callcenter_url + "SamplePool/GetSampleList",
  670. //获取数据的Servlet地址
  671. striped: true,
  672. //表格显示条纹
  673. pagination: true,
  674. //启动分页
  675. pageSize: 10,
  676. //每页显示的记录数
  677. pageNumber: 1,
  678. //当前第几页
  679. pageList: [10, 20, 50, 100],
  680. //记录数可选列表
  681. search: false,
  682. //是否启用查询
  683. showColumns: false,
  684. //显示下拉框勾选要显示的列
  685. showRefresh: false,
  686. //显示刷新按钮
  687. sidePagination: "server",
  688. //表示服务端请求
  689. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  690. //设置为limit可以获取limit, offset, search, sort, order
  691. queryParamsType: "undefined",
  692. queryParams: function queryParams(params) {
  693. //设置查询参数
  694. var param = {
  695. page: params.pageNumber,
  696. pagesize: params.pageSize,
  697. token: $.cookie("token"),
  698. workid: $('#orderId').val(),
  699. ComContent: $('#orderContent').val(),
  700. classification: $('#orderClass').val(),
  701. istypical: $('#orderRep').val(),
  702. specialid: id,
  703. };
  704. exportParams = param
  705. return param;
  706. },
  707. onLoadSuccess: function() {
  708. //加载成功时执行
  709. //layer.msg("加载成功");
  710. },
  711. onLoadError: function() {
  712. //加载失败时执行
  713. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  714. },
  715. });
  716. }
  717. function bindtree() {
  718. $('#proporation').text('');
  719. $("#fylb").empty();
  720. console.log('bindtree')
  721. $("#orderClass").empty();
  722. $.getJSON(
  723. huayi.config.callcenter_url + "Theme/GetList", {
  724. token: $.cookie("token"),
  725. page:1,
  726. pagesize:9999,
  727. type: 1,
  728. types: 1,
  729. },
  730. function(result) {
  731. if(result.state.toLowerCase() == "success") {
  732. var checked = false;
  733. const rows = result.rows.map((o) => {
  734. o.F_Name = '【' + o.F_Cycle + '】' + o.F_Name;
  735. if(!checked) {
  736. o.checked = true;
  737. checked = true;
  738. }
  739. return o;
  740. });
  741. console.log(rows, 'rows')
  742. $.fn.zTree.init($("#treeDemo"), {
  743. data: {
  744. key: {
  745. name: "F_Name",
  746. checked: 'checked',
  747. },
  748. simpleData: {
  749. enable: false,
  750. idKey: "F_ID",
  751. pIdKey: "",
  752. rootPId: 0,
  753. },
  754. },
  755. callback: {
  756. onClick: zTreeOnClick,
  757. },
  758. view: {
  759. nameIsHTML: true,
  760. fontCss: setFontCss_ztree
  761. }
  762. }, rows);
  763. var zTreeObj = $.fn.zTree.getZTreeObj("treeDemo");
  764. var node = zTreeObj.getNodeByParam("F_ID", rows[0].F_ID);
  765. zTreeObj.selectNode(node, '', true);
  766. // node.highlight = true;
  767. zTreeObj.updateNode(node);
  768. // 默认点击第一个
  769. zTreeOnClick(null, null, {
  770. F_ID: rows[0].F_ID,
  771. F_Proportion: rows[0].F_Proportion,
  772. F_StatisticsBeginTime: rows[0].F_StatisticsBeginTime,
  773. F_StatisticsEndTime: rows[0].F_StatisticsEndTime,
  774. });
  775. }
  776. }
  777. );
  778. }
  779. function setFontCss_ztree(treeId, treeNode) {
  780. console.log(treeNode, 'treeNode')
  781. if (treeNode.F_IsDisplay) {
  782. //根节点
  783. return { color: "red", "font-weight": "bold" };
  784. } else if (treeNode.isParent == false) {
  785. //叶子节点
  786. return (!!treeNode.highlight) ? { color: "#ff0000", "font-weight": "bold" } : { color: "#000", "font-weight": "normal" };
  787. } else {
  788. //父节点
  789. return (!!treeNode.highlight) ? { color: "#ff0000", "font-weight": "bold" } : { color: "#333", "font-weight": "normal" };
  790. }
  791. }
  792. function zTreeOnClick(event, treeId, treeNode) {
  793. selectThemeId = treeNode.F_ID
  794. selectTreeNode = treeNode
  795. $("#fylb").empty();
  796. console.log('bindtree')
  797. $("#orderClass").empty();
  798. $('#addClassBut').show();
  799. initTable(treeNode.F_ID);
  800. initOrderTable(treeNode.F_ID);
  801. if(treeNode.F_StatisticsBeginTime) {
  802. $('#time').html(`${treeNode.F_StatisticsBeginTime} ~ ${treeNode.F_StatisticsEndTime}`)
  803. }
  804. getDicValueList(treeNode);
  805. }
  806. </script>
  807. </body>
  808. </html>