No Description

associatWorkOrder.html 23KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594
  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 href="../css/layer/need/layer.css" />
  8. <link rel="stylesheet" href="../css/init.css" />
  9. <link rel="stylesheet" href="../js/zTree/zTreeStyle.css" />
  10. <link rel="stylesheet" href="../css/WorkOrder/WorkOrderList.css">
  11. <link rel="stylesheet" href="../js/layui/css/layui.css">
  12. <title>关联工单</title>
  13. <style>
  14. .Common {
  15. z-index: 999;
  16. overflow-y: visible;
  17. }
  18. .box_content {
  19. border: 0;
  20. }
  21. .btn_box {
  22. text-align: center;
  23. }
  24. .inps,
  25. .inpsReactionCategory {
  26. border: 1px solid rgb(229, 230, 231)
  27. }
  28. </style>
  29. </head>
  30. <body>
  31. <div class="">
  32. <div class="Common">
  33. <div class="box_content">
  34. <table id="sqzx" style="width: 100%" border="0" cellspacing="0" cellpadding="0">
  35. <tr>
  36. <th>事项编号:</th>
  37. <td>
  38. <input type="text" placeholder="输入工单号" id="wids" class="form-control" />
  39. </td>
  40. <th>录入时间:</th>
  41. <td colspan="3">
  42. <input id="starttime" class="photo x-color laydate-icon" type="text" autocomplete="off"
  43. style="height: 35px;" />-<input id="endtime" class="photo x-color laydate-icon"
  44. type="text" autocomplete="off" style="height: 35px;" />
  45. </td>
  46. </tr>
  47. <tr>
  48. <th>来电号码:</th>
  49. <td>
  50. <input type="text" id="tel" class="form-control" placeholder="请输入来电号码" />
  51. </td>
  52. <th>来电人:</th>
  53. <td>
  54. <input type="text" id="name" class="form-control" autocomplete="off" />
  55. </td>
  56. <th>工单标题:</th>
  57. <td>
  58. <input type="text" id="workOrderTitle" class="form-control" placeholder="输入工单标题" />
  59. </td>
  60. </tr>
  61. <tr>
  62. <th>来电内容:</th>
  63. <td>
  64. <input type="text" id="workOrderContent" class="form-control" placeholder="输入来电内容" />
  65. </td>
  66. <th>事发区域:</th>
  67. <td>
  68. <select id="sourceAreas" class="form-control"></select>
  69. </td>
  70. <th>反映类别:</th>
  71. <td style="position: relative;">
  72. <div class="inpBox">
  73. <input type="text" class="inpsReactionCategory" />
  74. <input type="hidden" id="keyid" />
  75. <i class="CleansReactionCategory fa fa-close"></i>
  76. <i class="xlReactionCategory xl_one"></i>
  77. <div class="addTreeReactionCategory xlAddReactionCategory">
  78. <ul id="addTreeDemoReactionCategory" class="ztree"></ul>
  79. </div>
  80. </div>
  81. </td>
  82. </tr>
  83. <tr>
  84. <th>承办单位:</th>
  85. <td style="position: relative">
  86. <div class="inpBox">
  87. <input type="text" class="inps" />
  88. <i class="Cleans fa fa-close"></i>
  89. <i class="xl xl_one"></i>
  90. <div class="addTree xlAdd">
  91. <ul id="addTreeDemo" class="ztree"></ul>
  92. </div>
  93. </div>
  94. <div class="selDpart1">
  95. <ul id="sponsor"></ul>
  96. </div>
  97. </td>
  98. <td colspan="7" style="text-align: center">
  99. <botton class="btns Seach">搜索</botton>
  100. </td>
  101. </tr>
  102. <input type="hidden" id="PID" />
  103. <input type="hidden" id="Dpment" />
  104. </table>
  105. </div>
  106. </div>
  107. <div style="width: 100%; padding: 10px; z-index: 1">
  108. <table id="orderlist" data-row-style="rowStyle" data-query-params="queryParams" data-pagination="true">
  109. <thead>
  110. <tr>
  111. <th data-field="state" data-checkbox="true"></th>
  112. <th data-formatter="serialNumber" data-align="center">
  113. 序号
  114. </th>
  115. <th data-field="F_WorkOrderId" data-formatter="View" data-align="center">
  116. 工单单号
  117. </th>
  118. <th data-field="F_ComTitle" data-formatter="GetCont" data-align="center">
  119. 诉求标题
  120. </th>
  121. <th data-field="DeptName" data-align="center">
  122. 承办单位
  123. </th>
  124. <th data-field="UserName" data-align="center">
  125. 受理人
  126. </th>
  127. <th data-field="F_WorkState" data-align="center" data-formatter="States">
  128. 办理状态
  129. </th>
  130. <th data-field="F_IsRelease" data-align="center" data-formatter="isReleaseFormatter">
  131. 关联工单类型
  132. </th>
  133. <!-- <th data-field="OverState" data-formatter="OverTime" data-align="center">
  134. 时限
  135. </th>
  136. <th data-field="LimitTime" data-formatter="BanTime" data-align="center">
  137. 办理时限
  138. </th> -->
  139. </tr>
  140. </thead>
  141. <tbody class="list"></tbody>
  142. </table>
  143. </div>
  144. <div class="btn_box">
  145. <button class="btns associatedBtn">关联</button>
  146. </div>
  147. </div>
  148. <script src="../js/layui/layui.js"></script>
  149. <script src="../js/adjustHeight.js"></script>
  150. <script src="../js/bootstrap-select.js"></script>
  151. <script src="../css/laydate/laydate.js"></script>
  152. <!-- <script src="../My97DatePicker/WdatePicker.js"></script> -->
  153. <script src="../js/zTree/jquery.ztree.core.js"></script>
  154. <script src="../js/search/screen.js"></script>
  155. <script src="../js/WorkOrder/WorkOrderList.js"></script>
  156. <script>
  157. var wid = helper.request.queryString("wid");
  158. var tab = helper.request.queryString("tab");
  159. var roleCode = $.cookie("code")
  160. var comprehensive;
  161. var jianhang;
  162. var phoneType;
  163. $(document).ready(function () {
  164. $(".associatedBtn").click(function () {
  165. submit(1)
  166. })
  167. laydate.skin('blue');
  168. laydate({
  169. elem: '#starttime',
  170. event: 'focus',
  171. istime: true,
  172. format: 'YYYY-MM-DD hh:mm:ss'
  173. });
  174. laydate({
  175. elem: '#endtime',
  176. event: 'focus',
  177. istime: true,
  178. format: 'YYYY-MM-DD hh:mm:ss'
  179. });
  180. if (roleCode === "MTDD") {
  181. comprehensive = ""
  182. jianhang = 1;
  183. phoneType = "";
  184. } else if (roleCode === "ZXLD") {
  185. comprehensive = ""
  186. jianhang = 0;
  187. phoneType = 2;
  188. } else {
  189. comprehensive = 1;
  190. jianhang = "";
  191. phoneType = "";
  192. }
  193. load()
  194. });
  195. // 提交
  196. function submit(state) {
  197. var ids = $.map($('#orderlist').bootstrapTable('getSelections'),
  198. function (row) {
  199. return row.F_WorkOrderId;
  200. });
  201. var workorderid = wid;
  202. var subworkorderid = ids.join(",")
  203. layer.confirm(
  204. "确定要关联工单吗?", {
  205. btn: ["是", "否"], //按钮
  206. },
  207. function () {
  208. /*发送请求*/
  209. $.post(huayi.config.callcenter_url + "WorkOrder/RelationWorkOrder", {
  210. workorderid: workorderid,
  211. subworkorderid: subworkorderid,
  212. token: $.cookie("token")
  213. }, function (result) {
  214. result = JSON.parse(result);
  215. if (result.state.toLowerCase() == "success") {
  216. var index = parent.layer.getFrameIndex(window
  217. .name); //先得到当前iframe层的索引
  218. parent.layer.close(index); //再执行关闭
  219. parent.$("#orderlist").bootstrapTable("refresh");
  220. parent.layer.msg("操作成功");
  221. }
  222. })
  223. }
  224. );
  225. }
  226. function load() {
  227. //坐席
  228. var usercodeID = "";
  229. var usercode_ = $("#ZX").val(); //坐席
  230. if (usercode_ != null) {
  231. $(usercode_).each(function (i, n) {
  232. var obj1 = "";
  233. obj1 = n + ",";
  234. usercodeID += obj1;
  235. });
  236. } else {
  237. usercodeID = "";
  238. }
  239. // 调度员
  240. var ddusercodeID = "";
  241. var ddusercode_ = $("#yardman").val(); //坐席
  242. if (ddusercode_ != null) {
  243. $(ddusercode_).each(function (i, n) {
  244. var obj2 = "";
  245. obj2 = n + ",";
  246. ddusercodeID += obj2;
  247. });
  248. } else {
  249. ddusercodeID = "";
  250. }
  251. //先销毁表格
  252. $("#orderlist").bootstrapTable("destroy");
  253. //初始化表格,动态从服务器加载数据
  254. $("#orderlist").bootstrapTable({
  255. method: "get", //使用get请求到服务器获取数据
  256. url: huayi.config.callcenter_url + "WorkOrder/GetLDDealList", //获取数据的Servlet地址
  257. contentType: "application/x-www-form-urlencoded",
  258. striped: true, //表格显示条纹
  259. pagination: true, //启动分页
  260. pageSize: 10, //每页显示的记录数
  261. pageNumber: 1, //当前第几页
  262. pageList: [10, 20, 50, 100], //记录数可选列表
  263. search: false, //是否启用查询
  264. showColumns: false, //显示下拉框勾选要显示的列
  265. showRefresh: false, //显示刷新按钮
  266. sidePagination: "server", //表示服务端请求
  267. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  268. //设置为limit可以获取limit, offset, search, sort, order
  269. queryParamsType: "undefined",
  270. queryParams: function queryParams(params) {
  271. //设置查询参数
  272. //alert(params.pageNumber)
  273. var param = {
  274. page: params.pageNumber,
  275. pagesize: params.pageSize,
  276. workid: $("#wids").val().replace(/\s+/g, ""),
  277. state: $("#state").val(), //=工单状态
  278. type: $("#type").val(), //=工单类型
  279. //bigtype: $("#bigtype").val(), //=大类别
  280. //smalltype: $("#smalltype").val(), //=小类别
  281. key: $("#key").val(), //=关键字
  282. tel: $("#tel").val().replace(/\s+/g, ""), //=客户电话
  283. name: $("#name").val().replace(/\s+/g, ""), //=客户名称
  284. usercode: usercodeID, //=坐席工号
  285. ddusercode: ddusercodeID,
  286. keyid: $("#keyid").val(), //=关键词id
  287. source: $("#source").val(), //=来源&
  288. starttime: $("#starttime").val(), //=开始时间
  289. endtime: $("#endtime").val(), //=结束时间
  290. deptid: $("#PID").val(),
  291. type: $("#type").val(),
  292. dealtype: $("#dealtype").val(),
  293. sourcearea: $("#sourceAreas").val(), // 区域
  294. ComTitle: $("#workOrderTitle").val().replace(/\s+/g, ""), // 工单标题
  295. ComContent: $("#workOrderContent").val().replace(/\s+/g, ""), // 工单内容
  296. // Result: $("#workOrderProcessingResult").val().replace(/\s+/g, ""), // 办理结果
  297. dealstarttime: $("#dealstarttime").val(), //办理开始时间
  298. dealstrendtime: $("#dealstrendtime").val(), //办理结束时间
  299. isopen: $("#isopen").val(),
  300. comprehensive: comprehensive, // 综合查询
  301. jianhang: jianhang,
  302. tab: 0, //待处理
  303. sourcearea: $("#sourceAreas").val(), //区域
  304. phoneType: 2, // 12345来电
  305. token: $.cookie("token"),
  306. };
  307. return param;
  308. },
  309. onLoadSuccess: function (data) {
  310. //加载成功时执行
  311. // layer.msg("加载成功");
  312. //console.log(data);
  313. },
  314. onLoadError: function () {
  315. //加载失败时执行
  316. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  317. },
  318. });
  319. }
  320. //状态
  321. function States(val, row) {
  322. var html = "";
  323. switch (val + "") {
  324. case "0":
  325. html = "新工单";
  326. if (row.F_IsReturn == 1) {
  327. html = "新工单(回退)";
  328. }
  329. break;
  330. case "1":
  331. html = "待交办";
  332. break;
  333. case "2":
  334. html = '<span style="color:#FF0000;">待查收</span>';
  335. break;
  336. case "3":
  337. html = "退回审核中";
  338. break;
  339. case "4":
  340. html = "办理中";
  341. break;
  342. case "5":
  343. html = "延时审核";
  344. break;
  345. case "6":
  346. if (row.F_IsProtect === 2 || row.F_IsProtect === 3) {
  347. html = "已办未果"
  348. } else {
  349. html = "已办理";
  350. }
  351. break;
  352. case "7":
  353. html = "已回访";
  354. break;
  355. case "8":
  356. html = "重办中";
  357. break;
  358. case "9":
  359. html = "已结案";
  360. break;
  361. case "10":
  362. html = "待审核";
  363. break;
  364. case "11":
  365. html = "重办待交办";
  366. break;
  367. // case '12':
  368. // html = '待审核';
  369. // break;
  370. case "13":
  371. html = "重办驳回";
  372. break;
  373. }
  374. return html;
  375. }
  376. //编号
  377. function serialNumber(val, row, index) {
  378. return index + 1;
  379. }
  380. // 关联工单类型
  381. function isReleaseFormatter(val, row) {
  382. if (String(val) === "2") {
  383. return "<span style='color: #e02433'>主工单</span>"
  384. } else if (String(val) === "3") {
  385. return "<span style='color: #e02433'>子工单</span>"
  386. }
  387. }
  388. function GetCont(val) {
  389. if (val) {
  390. var str = "<div ";
  391. if (val.length > 10) {
  392. str = str + ' title="' + val + '" ';
  393. val = val.substr(0, 10) + "...";
  394. }
  395. return str + ">" + val + "</div>";
  396. } else {
  397. return "";
  398. }
  399. }
  400. //时限
  401. function OverTime(val, row) {
  402. if (val == 1) {
  403. return (
  404. '<div class="" style="cursor: pointer;">' +
  405. '<span class="Greens">' +
  406. row.GapTime +
  407. "</span>" +
  408. "</div>"
  409. );
  410. } else if (val == 2) {
  411. return (
  412. '<div class="" style="cursor: pointer;">' +
  413. '<span class="Yellows">' +
  414. row.GapTime +
  415. "</span>" +
  416. "</div>"
  417. );
  418. } else if (val == 3) {
  419. return (
  420. '<div class="" style="cursor: pointer;">' +
  421. '<span class="Reds">' +
  422. row.GapTime +
  423. "</span>" +
  424. "</div>"
  425. );
  426. }
  427. }
  428. //办理时限
  429. function BanTime(val) {
  430. if (val) {
  431. var time = val.substring(0, val.indexOf(" "));
  432. return (
  433. '<div class="" style="cursor: pointer;">' +
  434. "<span>" +
  435. time +
  436. "</span>" +
  437. "</div>"
  438. );
  439. }
  440. }
  441. //来源
  442. function LY(obj) {
  443. obj.empty();
  444. obj.append(
  445. '<option selected="selected" value="">请选择</option>'
  446. );
  447. $.getJSON(
  448. huayi.config.callcenter_url +
  449. "Dictionary/GetDicValueListById", {
  450. token: $.cookie("token"),
  451. id: 1,
  452. },
  453. function (data) {
  454. if (data.state.toLowerCase() == "success") {
  455. var content = data.data;
  456. $(content).each(function (i, n) {
  457. $(
  458. "<option value='" +
  459. n.F_ValueId +
  460. "'>" +
  461. n.F_Value +
  462. "</option>"
  463. ).appendTo(obj);
  464. });
  465. }
  466. }
  467. );
  468. }
  469. //类别
  470. function LB(obj) {
  471. obj.empty();
  472. obj.append(
  473. '<option selected="selected" value="">请选择</option>'
  474. );
  475. $.getJSON(
  476. huayi.config.callcenter_url +
  477. "Dictionary/GetDicValueListById", {
  478. token: $.cookie("token"),
  479. id: 2,
  480. },
  481. function (data) {
  482. if (data.state.toLowerCase() == "success") {
  483. var content = data.data;
  484. $(content).each(function (i, n) {
  485. $(
  486. "<option value='" +
  487. n.F_ValueId +
  488. "'>" +
  489. n.F_Value +
  490. "</option>"
  491. ).appendTo(obj);
  492. });
  493. }
  494. }
  495. );
  496. }
  497. // 主题
  498. function ZT(obj) {
  499. obj.empty();
  500. obj.append(
  501. '<option selected="selected" value="">请选择</option>'
  502. );
  503. $.getJSON(
  504. huayi.config.callcenter_url +
  505. "Dictionary/GetDicValueListById", {
  506. token: $.cookie("token"),
  507. id: 3,
  508. },
  509. function (data) {
  510. if (data.state.toLowerCase() == "success") {
  511. var content = data.data;
  512. $(content).each(function (i, n) {
  513. $(
  514. "<option value='" +
  515. n.F_ValueId +
  516. "'>" +
  517. n.F_Value +
  518. "</option>"
  519. ).appendTo(obj);
  520. });
  521. }
  522. }
  523. );
  524. }
  525. function tree() {
  526. $.get(
  527. huayi.config.callcenter_url + "Department/GetDeptList", {
  528. token: $.cookie("token"),
  529. // "pid": pid
  530. },
  531. function (result) {
  532. result = $.parseJSON(result);
  533. $.fn.zTree.init(
  534. $("#addTreeDemo"),
  535. setting1,
  536. result.data
  537. ); //实例化树形图
  538. }
  539. );
  540. }
  541. var setting1 = {
  542. data: {
  543. key: {
  544. name: "F_DeptName",
  545. },
  546. simpleData: {
  547. enable: true,
  548. idKey: "F_DeptId",
  549. pIdKey: "F_PartentId",
  550. rootPId: 0,
  551. },
  552. },
  553. callback: {
  554. onClick: zTreeOnClick,
  555. },
  556. };
  557. function zTreeOnClick(event, treeId, treeNode) {
  558. $(".inps").val(treeNode.F_DeptName);
  559. $("#PID").val(treeNode.F_DeptId);
  560. $("#Dpment").val(treeNode.F_DeptId);
  561. $(".Cleans").show();
  562. }
  563. function Close() {
  564. $(".lyxz").removeClass("cx");
  565. if ($("audio").length > 0) {
  566. $("audio")[0].pause();
  567. }
  568. }
  569. </script>
  570. </body>
  571. </html>