Bez popisu

theme.html 30KB

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