地铁二期项目正式开始

OverOrderView.js 15KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467
  1. var urlExcel;
  2. layui.use('laydate', function () {
  3. var laydate = layui.laydate;
  4. //日期时间范围
  5. laydate.render({
  6. elem: '#test10'
  7. , range: true
  8. });
  9. });
  10. layui.use(['table', 'jquery'], function () {
  11. var table = layui.table;
  12. var form = layui.form,
  13. layer = parent.layer === undefined ? layui.layer : parent.layer,
  14. $ = layui.jquery;
  15. //监听表格复选框选择
  16. table.on('checkbox(demo)', function (obj) {
  17. console.log(obj)
  18. });
  19. //监听工具条
  20. table.on('tool(demo)', function (obj) {
  21. var data = obj.data;
  22. if (obj.event === 'view') {
  23. layer.open({
  24. type: 2,
  25. anim: 4,
  26. scrollbar: false,
  27. content: '/Order/ViewMyOrder/?orderKeyId=' + data.F_WORKORDERID,
  28. area: ['90%', '90%'],
  29. id: 'ViewMyOrder',
  30. title: '服务监督热线系统业务工单'
  31. });
  32. }
  33. else if (obj.event === 'reset') {
  34. layer.confirm('确认要撤回该行数据么?', function (index) {
  35. $.ajax({
  36. url: "/CallRecord/ResetWorkOrder",
  37. type: "get",
  38. async: false,//同步请求
  39. contentType: "application/json",
  40. dataType: "text",
  41. cache: false,
  42. data: "workOrderId=" + data.F_WORKORDERID,
  43. success: function (thisResult, result) {
  44. if (thisResult == "True") {
  45. layer.open({
  46. content: '撤回成功'
  47. , icon: 1
  48. , btn: ['确定']
  49. , yes: function (index, layero) {
  50. //执行重载
  51. table.reload('recordtable', {
  52. page: {
  53. curr: 1 //重新从第 1 页开始
  54. }
  55. , where: {
  56. types: 0,
  57. dateParty: $("#test10").val()
  58. , NowDateTime: new Date()
  59. , workorderNum: $("#workorderNum").val()
  60. , cusName: $("#cusName").val()
  61. , phoneNumber: $("#phoneNumber").val()
  62. , userInfo: $("#userInfo").val()
  63. , status: $("#status").val()
  64. , turnout: $("#turnout").val()
  65. , bussType: $("#bussType").val()
  66. , level: $("#F_Level").val()
  67. , labelname: $("#riskLevel").val()
  68. , detailType: $("#bussDetail").val()
  69. , Content: $("#Content").val()
  70. , GoType: $("#GoType").val()
  71. , FromType: $("#FromType").val()
  72. , F_HASTENCOUNTS: $("#F_HASTENCOUNTS").val()
  73. }
  74. });
  75. layer.close(index);
  76. }
  77. });
  78. } else {
  79. layui.layer.alert("撤回失败!", {
  80. icon: 2
  81. });
  82. }
  83. },
  84. error: function (error) {
  85. return false;
  86. }
  87. });
  88. layer.close(index);
  89. });
  90. }
  91. else if (obj.event === 'edit') {
  92. //置忙
  93. if ($("#SeatFlag").val() == 1) {
  94. top.AgentBusy();
  95. }
  96. var openUrl = "";
  97. var timeno = new Date().getTime();
  98. ////微信
  99. //if (data.F_REPAIRMANID === 3) {
  100. // openUrl = '/CallRecord/WXWorkFlowEdit/?workOrderNum=' + data.F_WORKORDERID + '&timeno=' + timeno;
  101. //}
  102. ////微博
  103. //else if (data.F_REPAIRMANID === 4) {
  104. // openUrl = '/CallRecord/WXWorkFlowEdit/?workOrderNum=' + data.F_WORKORDERID + '&timeno=' + timeno;
  105. //}
  106. ////语音工单
  107. //else {
  108. // openUrl = '/CallRecord/EditCallWorkFolw/?workOrderNum=' + data.F_WORKORDERID + '&timeno=' + timeno;
  109. //}
  110. openUrl = '/CallRecord/EditCallWorkFolw/?workOrderNum=' + data.F_WORKORDERID + '&timeno=' + timeno;
  111. layer.open({
  112. type: 2,
  113. anim: 4,
  114. scrollbar: false,
  115. content: openUrl,
  116. //content: '/CallRecord/EditCallWorkFolw/?workOrderNum=' + data.F_WORKORDERID,
  117. area: ['90%', '90%'],
  118. id: 'EditCallWorkFolw',
  119. title: '服务监督热线系统业务工单',
  120. end: function () {
  121. //置闲
  122. if ($("#SeatFlag").val() == 1) {
  123. top.AgentFree();
  124. }
  125. //执行重载
  126. table.reload('recordtable', {
  127. page: {
  128. curr: 1 //重新从第 1 页开始
  129. }
  130. , where: {
  131. types: 0,
  132. dateParty: $("#test10").val()
  133. , NowDateTime: new Date()
  134. , workorderNum: $("#workorderNum").val()
  135. , cusName: $("#cusName").val()
  136. , phoneNumber: $("#phoneNumber").val()
  137. , userInfo: $("#userInfo").val()
  138. , status: $("#status").val()
  139. , turnout: $("#turnout").val()
  140. , bussType: $("#bussType").val()
  141. , level: $("#F_Level").val()
  142. , labelname: $("#riskLevel").val()
  143. , detailType: $("#bussDetail").val()
  144. , Content: $("#Content").val()
  145. , GoType: $("#GoType").val()
  146. , FromType: $("#FromType").val()
  147. , F_HASTENCOUNTS: $("#F_HASTENCOUNTS").val()
  148. }
  149. });
  150. }
  151. });
  152. }
  153. });
  154. $ = layui.$, active = {
  155. //查询按钮
  156. reload: function () {
  157. //var dataParty = getWeekStartDate() + ' - ' + getWeekEndDate();
  158. //$(".dayParty").val(dataParty);
  159. //执行重载
  160. table.reload('recordtable', {
  161. page: {
  162. curr: 1 //重新从第 1 页开始
  163. }
  164. , where: {
  165. types: 0,
  166. dateParty: $("#test10").val()
  167. , NowDateTime: new Date()
  168. , workorderNum: $("#workorderNum").val()
  169. , cusName: $("#cusName").val()
  170. , phoneNumber: $("#phoneNumber").val()
  171. , userInfo: $("#userInfo").val()
  172. , status: $("#status").val()
  173. , turnout: $("#turnout").val()
  174. , bussType: $("#bussType").val()
  175. , level: $("#F_Level").val()
  176. , labelname: $("#riskLevel").val()
  177. , detailType: $("#bussDetail").val()
  178. , Content: $("#Content").val()
  179. , GoType: $("#GoType").val()
  180. , FromType: $("#FromType").val()
  181. , F_HASTENCOUNTS: $("#F_HASTENCOUNTS").val()
  182. }
  183. });
  184. }
  185. //一天
  186. , oneDay: function () {
  187. var dataParty = formatDate(now) + ' - ' + formatDate(now);
  188. $(".dayParty").val(dataParty);
  189. //执行重载
  190. table.reload('recordtable', {
  191. page: {
  192. curr: 1 //重新从第 1 页开始
  193. }
  194. , where: {
  195. types: 4
  196. , NowDateTime: new Date()
  197. , workorderNum: $("#workorderNum").val()
  198. , cusName: $("#cusName").val()
  199. , phoneNumber: $("#phoneNumber").val()
  200. , userInfo: $("#userInfo").val()
  201. , status: $("#status").val()
  202. , turnout: $("#turnout").val()
  203. , bussType: $("#bussType").val()
  204. , level: $("#F_Level").val()
  205. , labelname: $("#riskLevel").val()
  206. , detailType: $("#bussDetail").val()
  207. , Content: $("#Content").val()
  208. , GoType: $("#GoType").val()
  209. , FromType: $("#FromType").val()
  210. , F_HASTENCOUNTS: $("#F_HASTENCOUNTS").val()
  211. }
  212. });
  213. }
  214. //一周
  215. , oneWeek: function () {
  216. var dataParty = getWeekStartDate() + ' - ' + formatDate(now);
  217. $(".dayParty").val(dataParty);
  218. //执行重载
  219. table.reload('recordtable', {
  220. page: {
  221. curr: 1 //重新从第 1 页开始
  222. }
  223. , where: {
  224. types: 1
  225. , NowDateTime: new Date()
  226. , workorderNum: $("#workorderNum").val()
  227. , cusName: $("#cusName").val()
  228. , phoneNumber: $("#phoneNumber").val()
  229. , userInfo: $("#userInfo").val()
  230. , status: $("#status").val()
  231. , turnout: $("#turnout").val()
  232. , bussType: $("#bussType").val()
  233. , level: $("#F_Level").val()
  234. , labelname: $("#riskLevel").val()
  235. , detailType: $("#bussDetail").val()
  236. , Content: $("#Content").val()
  237. , GoType: $("#GoType").val()
  238. , FromType: $("#FromType").val()
  239. , F_HASTENCOUNTS: $("#F_HASTENCOUNTS").val()
  240. }
  241. });
  242. }
  243. //一月
  244. , oneMonth: function () {
  245. var dataParty = getMonthStartDate() + ' - ' + formatDate(now);
  246. $(".dayParty").val(dataParty);
  247. //执行重载
  248. table.reload('recordtable', {
  249. page: {
  250. curr: 1 //重新从第 1 页开始
  251. }
  252. , where: {
  253. types: 2
  254. , NowDateTime: new Date()
  255. , workorderNum: $("#workorderNum").val()
  256. , cusName: $("#cusName").val()
  257. , phoneNumber: $("#phoneNumber").val()
  258. , userInfo: $("#userInfo").val()
  259. , status: $("#status").val()
  260. , turnout: $("#turnout").val()
  261. , bussType: $("#bussType").val()
  262. , level: $("#F_Level").val()
  263. , labelname: $("#riskLevel").val()
  264. , detailType: $("#bussDetail").val()
  265. , Content: $("#Content").val()
  266. , GoType: $("#GoType").val()
  267. , FromType: $("#FromType").val()
  268. , F_HASTENCOUNTS: $("#F_HASTENCOUNTS").val()
  269. }
  270. });
  271. }
  272. //一年
  273. , oneYear: function () {
  274. var dataParty = getYearStartDate() + ' - ' + formatDate(now);
  275. $(".dayParty").val(dataParty);
  276. //执行重载
  277. table.reload('recordtable', {
  278. page: {
  279. curr: 1 //重新从第 1 页开始
  280. }
  281. , where: {
  282. types: 3
  283. , NowDateTime: new Date()
  284. , workorderNum: $("#workorderNum").val()
  285. , cusName: $("#cusName").val()
  286. , phoneNumber: $("#phoneNumber").val()
  287. , userInfo: $("#userInfo").val()
  288. , status: $("#status").val()
  289. , turnout: $("#turnout").val()
  290. , bussType: $("#bussType").val()
  291. , level: $("#F_Level").val()
  292. , labelname: $("#riskLevel").val()
  293. , detailType: $("#bussDetail").val()
  294. , Content: $("#Content").val()
  295. , GoType: $("#GoType").val()
  296. , FromType: $("#FromType").val()
  297. , F_HASTENCOUNTS: $("#F_HASTENCOUNTS").val()
  298. }
  299. });
  300. }
  301. };
  302. function saveAs (blob, filename) {
  303. var type = blob.type;
  304. var force_saveable_type = 'application/octet-stream';
  305. if (type && type != force_saveable_type) { // 强制下载,而非在浏览器中打开
  306. var slice = blob.slice || blob.webkitSlice || blob.mozSlice;
  307. blob = slice.call(blob, 0, blob.size, force_saveable_type);
  308. }
  309. var url = URL.createObjectURL(blob);
  310. var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');
  311. save_link.href = url;
  312. save_link.download = filename;
  313. var theevent = document.createEvent('MouseEvents');
  314. theevent.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
  315. save_link.dispatchEvent(theevent);
  316. URL.revokeObjectURL(url);
  317. }
  318. $('.searchfilter .layui-btn').on('click', function () {
  319. var type = $(this).data('type');
  320. active[type] ? active[type].call(this) : '';
  321. });
  322. //回车执行
  323. document.onkeydown = function (event) {
  324. var e = event || window.event || arguments.callee.caller.arguments[0];
  325. if (e && e.keyCode == 13) {
  326. //执行重载
  327. table.reload('recordtable', {
  328. page: {
  329. curr: 1 //重新从第 1 页开始
  330. }
  331. , where: {
  332. types: 0,
  333. dateParty: $("#test10").val()
  334. , NowDateTime: new Date()
  335. , workorderNum: $("#workorderNum").val()
  336. , cusName: $("#cusName").val()
  337. , phoneNumber: $("#phoneNumber").val()
  338. , userInfo: $("#userInfo").val()
  339. , status: $("#status").val()
  340. , turnout: $("#turnout").val()
  341. , bussType: $("#bussType").val()
  342. , level: $("#F_Level").val()
  343. , labelname: $("#riskLevel").val()
  344. , detailType: $("#bussDetail").val()
  345. , Content: $("#Content").val()
  346. , GoType: $("#GoType").val()
  347. , FromType: $("#FromType").val()
  348. , F_HASTENCOUNTS: $("#F_HASTENCOUNTS").val()
  349. }
  350. });
  351. }
  352. };
  353. //高级查询折叠
  354. $('#advanceBtn').on('click', function () {
  355. $('.collapsible_box').slideToggle(200);
  356. })
  357. //导出到excel
  358. $('#ExToExcel').on('click', function () {
  359. urlExcel = "/Order/ExToExcel"
  360. ExToExcel()
  361. })
  362. //定责数据导出
  363. $('#ExToExcelDZ').on('click', function () {
  364. if ($("#F_HASTENCOUNTS").val() == "1") {
  365. urlExcel = "/Order/ExToExcelDZ"
  366. ExToExcel()
  367. } else {
  368. layer.msg('请选择已定责类型')
  369. }
  370. })
  371. function ExToExcel () {
  372. var img = $("#progressImgage");
  373. var mask = $("#maskOfProgressImage");
  374. var dataModel = {
  375. dateParty: $("#test10").val()
  376. , workorderNum: $("#workorderNum").val()
  377. , cusName: $("#cusName").val()
  378. , phoneNumber: $("#phoneNumber").val()
  379. , userInfo: $("#userInfo").val()
  380. , status: $("#status").val()
  381. , turnout: $("#turnout").val()
  382. , bussType: $("#bussType").val()
  383. , detailType: $("#bussDetail").val()
  384. , Content: $("#Content").val()
  385. , GoType: $("#GoType").val()
  386. , FromType: $("#FromType").val()
  387. , F_HASTENCOUNTS: $("#F_HASTENCOUNTS").val()
  388. }
  389. var para = JSON.stringify(dataModel);
  390. $.ajaxLoading({
  391. url: urlExcel,
  392. type: "post",
  393. async: true,
  394. contentType: "application/json;charset=utf-8",
  395. dataType: "json",
  396. cache: false,
  397. data: para,
  398. success: function (dataContent, result) {
  399. if (dataContent.Code == "0") {
  400. var datajson = dataContent.Data.replace(/"/g, "\"");
  401. var ItemList = JSON.parse(datajson);
  402. // alert(ItemList);
  403. var bytes = window.atob(ItemList); //转换为byte
  404. //处理异常,将ascii码小于0的转换为大于0
  405. var ab = new ArrayBuffer(bytes.length);
  406. var ia = new Uint8Array(ab);
  407. for (var i = 0; i < bytes.length; i++) {
  408. ia[i] = bytes.charCodeAt(i);
  409. }
  410. var blob = new Blob([ab], { type: 'application/vnd.ms-excel' })
  411. var fileName = '工单数据.xls';
  412. if (dataContent.Message != null && dataContent.Message != "") {
  413. fileName = dataContent.Message;
  414. }
  415. //获取浏览器信息
  416. var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
  417. var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器
  418. var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器
  419. var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
  420. if (isIE || isEdge || isIE11) {
  421. navigator.msSaveBlob(blob, fileName);
  422. }
  423. else {
  424. saveAs(blob, fileName);
  425. }
  426. }
  427. else {
  428. layer.msg('数据转换失败');
  429. }
  430. },
  431. error: function (XMLHttpRequest, textStatus, errorThrown) {
  432. layer.msg(textStatus);
  433. layer.msg(errorThrown);
  434. }
  435. });
  436. }
  437. });