Commit 8672575a209550c7ab5279b09fd96dffec972981

Authored by DESKTOP-P23T5P2\NewTeryEiEi
1 parent 37ec6be6
Exists in master

แก้ไข api ใหม่

package-lock.json
@@ -439,9 +439,9 @@ @@ -439,9 +439,9 @@
439 "dev": true 439 "dev": true
440 }, 440 },
441 "@types/selenium-webdriver": { 441 "@types/selenium-webdriver": {
442 - "version": "2.53.43",  
443 - "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-2.53.43.tgz",  
444 - "integrity": "sha512-UBYHWph6P3tutkbXpW6XYg9ZPbTKjw/YC2hGG1/GEvWwTbvezBUv3h+mmUFw79T3RFPnmedpiXdOBbXX+4l0jg==", 442 + "version": "3.0.10",
  443 + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.10.tgz",
  444 + "integrity": "sha512-ikB0JHv6vCR1KYUQAzTO4gi/lXLElT4Tx+6De2pc/OZwizE9LRNiTa+U8TBFKBD/nntPnr/MPSHSnOTybjhqNA==",
445 "dev": true 445 "dev": true
446 }, 446 },
447 "@webassemblyjs/ast": { 447 "@webassemblyjs/ast": {
@@ -688,10 +688,17 @@ @@ -688,10 +688,17 @@
688 "acorn": "^5.0.0" 688 "acorn": "^5.0.0"
689 } 689 }
690 }, 690 },
  691 + "addressparser": {
  692 + "version": "1.0.1",
  693 + "resolved": "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz",
  694 + "integrity": "sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y=",
  695 + "dev": true,
  696 + "optional": true
  697 + },
691 "adm-zip": { 698 "adm-zip": {
692 - "version": "0.4.4",  
693 - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.4.tgz",  
694 - "integrity": "sha1-ph7VrmkFw66lizplfSUDMJEFJzY=", 699 + "version": "0.4.11",
  700 + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz",
  701 + "integrity": "sha512-L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==",
695 "dev": true 702 "dev": true
696 }, 703 },
697 "after": { 704 "after": {
@@ -701,9 +708,9 @@ @@ -701,9 +708,9 @@
701 "dev": true 708 "dev": true
702 }, 709 },
703 "agent-base": { 710 "agent-base": {
704 - "version": "4.2.0",  
705 - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.0.tgz",  
706 - "integrity": "sha512-c+R/U5X+2zz2+UCrCFv6odQzJdoqI+YecuhnAJLa1zYaMc13zPfwMwZrr91Pd1DYNo/yPRbiM4WVf9whgwFsIg==", 711 + "version": "4.2.1",
  712 + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz",
  713 + "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==",
707 "dev": true, 714 "dev": true,
708 "requires": { 715 "requires": {
709 "es6-promisify": "^5.0.0" 716 "es6-promisify": "^5.0.0"
@@ -755,6 +762,49 @@ @@ -755,6 +762,49 @@
755 "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", 762 "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
756 "dev": true 763 "dev": true
757 }, 764 },
  765 + "amqplib": {
  766 + "version": "0.5.2",
  767 + "resolved": "https://registry.npmjs.org/amqplib/-/amqplib-0.5.2.tgz",
  768 + "integrity": "sha512-l9mCs6LbydtHqRniRwYkKdqxVa6XMz3Vw1fh+2gJaaVgTM6Jk3o8RccAKWKtlhT1US5sWrFh+KKxsVUALURSIA==",
  769 + "dev": true,
  770 + "optional": true,
  771 + "requires": {
  772 + "bitsyntax": "~0.0.4",
  773 + "bluebird": "^3.4.6",
  774 + "buffer-more-ints": "0.0.2",
  775 + "readable-stream": "1.x >=1.1.9",
  776 + "safe-buffer": "^5.0.1"
  777 + },
  778 + "dependencies": {
  779 + "isarray": {
  780 + "version": "0.0.1",
  781 + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
  782 + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
  783 + "dev": true,
  784 + "optional": true
  785 + },
  786 + "readable-stream": {
  787 + "version": "1.1.14",
  788 + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
  789 + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
  790 + "dev": true,
  791 + "optional": true,
  792 + "requires": {
  793 + "core-util-is": "~1.0.0",
  794 + "inherits": "~2.0.1",
  795 + "isarray": "0.0.1",
  796 + "string_decoder": "~0.10.x"
  797 + }
  798 + },
  799 + "string_decoder": {
  800 + "version": "0.10.31",
  801 + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
  802 + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
  803 + "dev": true,
  804 + "optional": true
  805 + }
  806 + }
  807 + },
758 "ansi-html": { 808 "ansi-html": {
759 "version": "0.0.7", 809 "version": "0.0.7",
760 "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", 810 "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz",
@@ -894,9 +944,9 @@ @@ -894,9 +944,9 @@
894 "dev": true 944 "dev": true
895 }, 945 },
896 "arraybuffer.slice": { 946 "arraybuffer.slice": {
897 - "version": "0.0.6",  
898 - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz",  
899 - "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=", 947 + "version": "0.0.7",
  948 + "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
  949 + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==",
900 "dev": true 950 "dev": true
901 }, 951 },
902 "arrify": { 952 "arrify": {
@@ -967,6 +1017,13 @@ @@ -967,6 +1017,13 @@
967 "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", 1017 "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
968 "dev": true 1018 "dev": true
969 }, 1019 },
  1020 + "ast-types": {
  1021 + "version": "0.11.5",
  1022 + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.11.5.tgz",
  1023 + "integrity": "sha512-oJjo+5e7/vEc2FBK8gUalV0pba4L3VdBIs2EKhOLHLcOd2FgQIVQN9xb0eZ9IjEWyAL7vq6fGJxOvVvdCHNyMw==",
  1024 + "dev": true,
  1025 + "optional": true
  1026 + },
970 "async": { 1027 "async": {
971 "version": "1.5.2", 1028 "version": "1.5.2",
972 "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", 1029 "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
@@ -986,6 +1043,12 @@ @@ -986,6 +1043,12 @@
986 "dev": true, 1043 "dev": true,
987 "optional": true 1044 "optional": true
988 }, 1045 },
  1046 + "async-limiter": {
  1047 + "version": "1.0.0",
  1048 + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz",
  1049 + "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==",
  1050 + "dev": true
  1051 + },
989 "asynckit": { 1052 "asynckit": {
990 "version": "0.4.0", 1053 "version": "0.4.0",
991 "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 1054 "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
@@ -1024,6 +1087,28 @@ @@ -1024,6 +1087,28 @@
1024 "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==", 1087 "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==",
1025 "dev": true 1088 "dev": true
1026 }, 1089 },
  1090 + "axios": {
  1091 + "version": "0.15.3",
  1092 + "resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz",
  1093 + "integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=",
  1094 + "dev": true,
  1095 + "optional": true,
  1096 + "requires": {
  1097 + "follow-redirects": "1.0.0"
  1098 + },
  1099 + "dependencies": {
  1100 + "follow-redirects": {
  1101 + "version": "1.0.0",
  1102 + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz",
  1103 + "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=",
  1104 + "dev": true,
  1105 + "optional": true,
  1106 + "requires": {
  1107 + "debug": "^2.2.0"
  1108 + }
  1109 + }
  1110 + }
  1111 + },
1027 "babel-code-frame": { 1112 "babel-code-frame": {
1028 "version": "6.26.0", 1113 "version": "6.26.0",
1029 "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", 1114 "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
@@ -1267,6 +1352,57 @@ @@ -1267,6 +1352,57 @@
1267 "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", 1352 "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
1268 "dev": true 1353 "dev": true
1269 }, 1354 },
  1355 + "bitsyntax": {
  1356 + "version": "0.0.4",
  1357 + "resolved": "https://registry.npmjs.org/bitsyntax/-/bitsyntax-0.0.4.tgz",
  1358 + "integrity": "sha1-6xDMb4K4xJDj6FaY8H6D1G4MuoI=",
  1359 + "dev": true,
  1360 + "optional": true,
  1361 + "requires": {
  1362 + "buffer-more-ints": "0.0.2"
  1363 + }
  1364 + },
  1365 + "bl": {
  1366 + "version": "1.1.2",
  1367 + "resolved": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz",
  1368 + "integrity": "sha1-/cqHGplxOqANGeO7ukHER4emU5g=",
  1369 + "dev": true,
  1370 + "optional": true,
  1371 + "requires": {
  1372 + "readable-stream": "~2.0.5"
  1373 + },
  1374 + "dependencies": {
  1375 + "process-nextick-args": {
  1376 + "version": "1.0.7",
  1377 + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
  1378 + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=",
  1379 + "dev": true,
  1380 + "optional": true
  1381 + },
  1382 + "readable-stream": {
  1383 + "version": "2.0.6",
  1384 + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
  1385 + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
  1386 + "dev": true,
  1387 + "optional": true,
  1388 + "requires": {
  1389 + "core-util-is": "~1.0.0",
  1390 + "inherits": "~2.0.1",
  1391 + "isarray": "~1.0.0",
  1392 + "process-nextick-args": "~1.0.6",
  1393 + "string_decoder": "~0.10.x",
  1394 + "util-deprecate": "~1.0.1"
  1395 + }
  1396 + },
  1397 + "string_decoder": {
  1398 + "version": "0.10.31",
  1399 + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
  1400 + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
  1401 + "dev": true,
  1402 + "optional": true
  1403 + }
  1404 + }
  1405 + },
1270 "blob": { 1406 "blob": {
1271 "version": "0.0.4", 1407 "version": "0.0.4",
1272 "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", 1408 "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
@@ -1492,6 +1628,15 @@ @@ -1492,6 +1628,15 @@
1492 "electron-to-chromium": "^1.3.47" 1628 "electron-to-chromium": "^1.3.47"
1493 } 1629 }
1494 }, 1630 },
  1631 + "browserstack": {
  1632 + "version": "1.5.1",
  1633 + "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.5.1.tgz",
  1634 + "integrity": "sha512-O8VMT64P9NOLhuIoD4YngyxBURefaSdR4QdhG8l6HZ9VxtU7jc3m6jLufFwKA5gaf7fetfB2TnRJnMxyob+heg==",
  1635 + "dev": true,
  1636 + "requires": {
  1637 + "https-proxy-agent": "^2.2.1"
  1638 + }
  1639 + },
1495 "buffer": { 1640 "buffer": {
1496 "version": "4.9.1", 1641 "version": "4.9.1",
1497 "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", 1642 "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
@@ -1503,6 +1648,28 @@ @@ -1503,6 +1648,28 @@
1503 "isarray": "^1.0.0" 1648 "isarray": "^1.0.0"
1504 } 1649 }
1505 }, 1650 },
  1651 + "buffer-alloc": {
  1652 + "version": "1.2.0",
  1653 + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
  1654 + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==",
  1655 + "dev": true,
  1656 + "requires": {
  1657 + "buffer-alloc-unsafe": "^1.1.0",
  1658 + "buffer-fill": "^1.0.0"
  1659 + }
  1660 + },
  1661 + "buffer-alloc-unsafe": {
  1662 + "version": "1.1.0",
  1663 + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
  1664 + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==",
  1665 + "dev": true
  1666 + },
  1667 + "buffer-fill": {
  1668 + "version": "1.0.0",
  1669 + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
  1670 + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=",
  1671 + "dev": true
  1672 + },
1506 "buffer-from": { 1673 "buffer-from": {
1507 "version": "1.1.0", 1674 "version": "1.1.0",
1508 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", 1675 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz",
@@ -1515,12 +1682,43 @@ @@ -1515,12 +1682,43 @@
1515 "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", 1682 "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==",
1516 "dev": true 1683 "dev": true
1517 }, 1684 },
  1685 + "buffer-more-ints": {
  1686 + "version": "0.0.2",
  1687 + "resolved": "https://registry.npmjs.org/buffer-more-ints/-/buffer-more-ints-0.0.2.tgz",
  1688 + "integrity": "sha1-JrOIXRD6E9t/wBquOquHAZngEkw=",
  1689 + "dev": true
  1690 + },
1518 "buffer-xor": { 1691 "buffer-xor": {
1519 "version": "1.0.3", 1692 "version": "1.0.3",
1520 "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", 1693 "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
1521 "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", 1694 "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
1522 "dev": true 1695 "dev": true
1523 }, 1696 },
  1697 + "buildmail": {
  1698 + "version": "4.0.1",
  1699 + "resolved": "https://registry.npmjs.org/buildmail/-/buildmail-4.0.1.tgz",
  1700 + "integrity": "sha1-h393OLeHKYccmhBeO4N9K+EaenI=",
  1701 + "dev": true,
  1702 + "optional": true,
  1703 + "requires": {
  1704 + "addressparser": "1.0.1",
  1705 + "libbase64": "0.1.0",
  1706 + "libmime": "3.0.0",
  1707 + "libqp": "1.1.0",
  1708 + "nodemailer-fetch": "1.6.0",
  1709 + "nodemailer-shared": "1.1.0",
  1710 + "punycode": "1.4.1"
  1711 + },
  1712 + "dependencies": {
  1713 + "punycode": {
  1714 + "version": "1.4.1",
  1715 + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
  1716 + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
  1717 + "dev": true,
  1718 + "optional": true
  1719 + }
  1720 + }
  1721 + },
1524 "builtin-modules": { 1722 "builtin-modules": {
1525 "version": "1.1.1", 1723 "version": "1.1.1",
1526 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", 1724 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
@@ -1736,6 +1934,12 @@ @@ -1736,6 +1934,12 @@
1736 "integrity": "sha512-oC7/DVAyfcY3UWKm0sN/oVoDedQDQiw/vIiAnuTWTpE5s0zWf7l3WY417Xw/Fbi/QbAjctAkxgMiS9P0s3zkmA==", 1934 "integrity": "sha512-oC7/DVAyfcY3UWKm0sN/oVoDedQDQiw/vIiAnuTWTpE5s0zWf7l3WY417Xw/Fbi/QbAjctAkxgMiS9P0s3zkmA==",
1737 "dev": true 1935 "dev": true
1738 }, 1936 },
  1937 + "circular-json": {
  1938 + "version": "0.5.5",
  1939 + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.5.tgz",
  1940 + "integrity": "sha512-13YaR6kiz0kBNmIVM87Io8Hp7bWOo4r61vkEANy8iH9R9bc6avud/1FT0SBpqR1RpIQADOh/Q+yHZDA1iL6ysA==",
  1941 + "dev": true
  1942 + },
1739 "class-utils": { 1943 "class-utils": {
1740 "version": "0.3.6", 1944 "version": "0.3.6",
1741 "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", 1945 "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
@@ -2309,6 +2513,19 @@ @@ -2309,6 +2513,19 @@
2309 "assert-plus": "^1.0.0" 2513 "assert-plus": "^1.0.0"
2310 } 2514 }
2311 }, 2515 },
  2516 + "data-uri-to-buffer": {
  2517 + "version": "1.2.0",
  2518 + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz",
  2519 + "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==",
  2520 + "dev": true,
  2521 + "optional": true
  2522 + },
  2523 + "date-format": {
  2524 + "version": "1.2.0",
  2525 + "resolved": "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz",
  2526 + "integrity": "sha1-YV6CjiM90aubua4JUODOzPpuytg=",
  2527 + "dev": true
  2528 + },
2312 "date-now": { 2529 "date-now": {
2313 "version": "0.1.4", 2530 "version": "0.1.4",
2314 "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", 2531 "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
@@ -2416,6 +2633,27 @@ @@ -2416,6 +2633,27 @@
2416 } 2633 }
2417 } 2634 }
2418 }, 2635 },
  2636 + "degenerator": {
  2637 + "version": "1.0.4",
  2638 + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz",
  2639 + "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=",
  2640 + "dev": true,
  2641 + "optional": true,
  2642 + "requires": {
  2643 + "ast-types": "0.x.x",
  2644 + "escodegen": "1.x.x",
  2645 + "esprima": "3.x.x"
  2646 + },
  2647 + "dependencies": {
  2648 + "esprima": {
  2649 + "version": "3.1.3",
  2650 + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz",
  2651 + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=",
  2652 + "dev": true,
  2653 + "optional": true
  2654 + }
  2655 + }
  2656 + },
2419 "del": { 2657 "del": {
2420 "version": "3.0.0", 2658 "version": "3.0.0",
2421 "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", 2659 "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz",
@@ -2638,6 +2876,13 @@ @@ -2638,6 +2876,13 @@
2638 "domelementtype": "1" 2876 "domelementtype": "1"
2639 } 2877 }
2640 }, 2878 },
  2879 + "double-ended-queue": {
  2880 + "version": "2.1.0-0",
  2881 + "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz",
  2882 + "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=",
  2883 + "dev": true,
  2884 + "optional": true
  2885 + },
2641 "duplexify": { 2886 "duplexify": {
2642 "version": "3.6.0", 2887 "version": "3.6.0",
2643 "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz", 2888 "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz",
@@ -2715,95 +2960,72 @@ @@ -2715,95 +2960,72 @@
2715 } 2960 }
2716 }, 2961 },
2717 "engine.io": { 2962 "engine.io": {
2718 - "version": "1.8.3",  
2719 - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.3.tgz",  
2720 - "integrity": "sha1-jef5eJXSDTm4X4ju7nd7K9QrE9Q=", 2963 + "version": "3.1.5",
  2964 + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.1.5.tgz",
  2965 + "integrity": "sha512-D06ivJkYxyRrcEe0bTpNnBQNgP9d3xog+qZlLbui8EsMr/DouQpf5o9FzJnWYHEYE0YsFHllUv2R1dkgYZXHcA==",
2721 "dev": true, 2966 "dev": true,
2722 "requires": { 2967 "requires": {
2723 - "accepts": "1.3.3", 2968 + "accepts": "~1.3.4",
2724 "base64id": "1.0.0", 2969 "base64id": "1.0.0",
2725 "cookie": "0.3.1", 2970 "cookie": "0.3.1",
2726 - "debug": "2.3.3",  
2727 - "engine.io-parser": "1.3.2",  
2728 - "ws": "1.1.2" 2971 + "debug": "~3.1.0",
  2972 + "engine.io-parser": "~2.1.0",
  2973 + "uws": "~9.14.0",
  2974 + "ws": "~3.3.1"
2729 }, 2975 },
2730 "dependencies": { 2976 "dependencies": {
2731 - "accepts": {  
2732 - "version": "1.3.3",  
2733 - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz",  
2734 - "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=",  
2735 - "dev": true,  
2736 - "requires": {  
2737 - "mime-types": "~2.1.11",  
2738 - "negotiator": "0.6.1"  
2739 - }  
2740 - },  
2741 "debug": { 2977 "debug": {
2742 - "version": "2.3.3",  
2743 - "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",  
2744 - "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=", 2978 + "version": "3.1.0",
  2979 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
  2980 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
2745 "dev": true, 2981 "dev": true,
2746 "requires": { 2982 "requires": {
2747 - "ms": "0.7.2" 2983 + "ms": "2.0.0"
2748 } 2984 }
2749 - },  
2750 - "ms": {  
2751 - "version": "0.7.2",  
2752 - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",  
2753 - "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",  
2754 - "dev": true  
2755 } 2985 }
2756 } 2986 }
2757 }, 2987 },
2758 "engine.io-client": { 2988 "engine.io-client": {
2759 - "version": "1.8.3",  
2760 - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.3.tgz",  
2761 - "integrity": "sha1-F5jtk0USRkU9TG9jXXogH+lA1as=", 2989 + "version": "3.1.6",
  2990 + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.6.tgz",
  2991 + "integrity": "sha512-hnuHsFluXnsKOndS4Hv6SvUrgdYx1pk2NqfaDMW+GWdgfU3+/V25Cj7I8a0x92idSpa5PIhJRKxPvp9mnoLsfg==",
2762 "dev": true, 2992 "dev": true,
2763 "requires": { 2993 "requires": {
2764 "component-emitter": "1.2.1", 2994 "component-emitter": "1.2.1",
2765 "component-inherit": "0.0.3", 2995 "component-inherit": "0.0.3",
2766 - "debug": "2.3.3",  
2767 - "engine.io-parser": "1.3.2", 2996 + "debug": "~3.1.0",
  2997 + "engine.io-parser": "~2.1.1",
2768 "has-cors": "1.1.0", 2998 "has-cors": "1.1.0",
2769 "indexof": "0.0.1", 2999 "indexof": "0.0.1",
2770 - "parsejson": "0.0.3",  
2771 "parseqs": "0.0.5", 3000 "parseqs": "0.0.5",
2772 "parseuri": "0.0.5", 3001 "parseuri": "0.0.5",
2773 - "ws": "1.1.2",  
2774 - "xmlhttprequest-ssl": "1.5.3", 3002 + "ws": "~3.3.1",
  3003 + "xmlhttprequest-ssl": "~1.5.4",
2775 "yeast": "0.1.2" 3004 "yeast": "0.1.2"
2776 }, 3005 },
2777 "dependencies": { 3006 "dependencies": {
2778 "debug": { 3007 "debug": {
2779 - "version": "2.3.3",  
2780 - "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",  
2781 - "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=", 3008 + "version": "3.1.0",
  3009 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
  3010 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
2782 "dev": true, 3011 "dev": true,
2783 "requires": { 3012 "requires": {
2784 - "ms": "0.7.2" 3013 + "ms": "2.0.0"
2785 } 3014 }
2786 - },  
2787 - "ms": {  
2788 - "version": "0.7.2",  
2789 - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",  
2790 - "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",  
2791 - "dev": true  
2792 } 3015 }
2793 } 3016 }
2794 }, 3017 },
2795 "engine.io-parser": { 3018 "engine.io-parser": {
2796 - "version": "1.3.2",  
2797 - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz",  
2798 - "integrity": "sha1-k3sHnwAH0Ik+xW1GyyILjLQ1Igo=", 3019 + "version": "2.1.2",
  3020 + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz",
  3021 + "integrity": "sha512-dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==",
2799 "dev": true, 3022 "dev": true,
2800 "requires": { 3023 "requires": {
2801 "after": "0.8.2", 3024 "after": "0.8.2",
2802 - "arraybuffer.slice": "0.0.6", 3025 + "arraybuffer.slice": "~0.0.7",
2803 "base64-arraybuffer": "0.1.5", 3026 "base64-arraybuffer": "0.1.5",
2804 "blob": "0.0.4", 3027 "blob": "0.0.4",
2805 - "has-binary": "0.1.7",  
2806 - "wtf-8": "1.0.0" 3028 + "has-binary2": "~1.0.2"
2807 } 3029 }
2808 }, 3030 },
2809 "enhanced-resolve": { 3031 "enhanced-resolve": {
@@ -3414,6 +3636,13 @@ @@ -3414,6 +3636,13 @@
3414 "schema-utils": "^0.4.5" 3636 "schema-utils": "^0.4.5"
3415 } 3637 }
3416 }, 3638 },
  3639 + "file-uri-to-path": {
  3640 + "version": "1.0.0",
  3641 + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
  3642 + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
  3643 + "dev": true,
  3644 + "optional": true
  3645 + },
3417 "filename-regex": { 3646 "filename-regex": {
3418 "version": "2.0.1", 3647 "version": "2.0.1",
3419 "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", 3648 "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
@@ -3634,8 +3863,7 @@ @@ -3634,8 +3863,7 @@
3634 "ansi-regex": { 3863 "ansi-regex": {
3635 "version": "2.1.1", 3864 "version": "2.1.1",
3636 "bundled": true, 3865 "bundled": true,
3637 - "dev": true,  
3638 - "optional": true 3866 + "dev": true
3639 }, 3867 },
3640 "aproba": { 3868 "aproba": {
3641 "version": "1.2.0", 3869 "version": "1.2.0",
@@ -3649,23 +3877,21 @@ @@ -3649,23 +3877,21 @@
3649 "dev": true, 3877 "dev": true,
3650 "optional": true, 3878 "optional": true,
3651 "requires": { 3879 "requires": {
3652 - "delegates": "1.0.0",  
3653 - "readable-stream": "2.3.6" 3880 + "delegates": "^1.0.0",
  3881 + "readable-stream": "^2.0.6"
3654 } 3882 }
3655 }, 3883 },
3656 "balanced-match": { 3884 "balanced-match": {
3657 "version": "1.0.0", 3885 "version": "1.0.0",
3658 "bundled": true, 3886 "bundled": true,
3659 - "dev": true,  
3660 - "optional": true 3887 + "dev": true
3661 }, 3888 },
3662 "brace-expansion": { 3889 "brace-expansion": {
3663 "version": "1.1.11", 3890 "version": "1.1.11",
3664 "bundled": true, 3891 "bundled": true,
3665 "dev": true, 3892 "dev": true,
3666 - "optional": true,  
3667 "requires": { 3893 "requires": {
3668 - "balanced-match": "1.0.0", 3894 + "balanced-match": "^1.0.0",
3669 "concat-map": "0.0.1" 3895 "concat-map": "0.0.1"
3670 } 3896 }
3671 }, 3897 },
@@ -3678,20 +3904,17 @@ @@ -3678,20 +3904,17 @@
3678 "code-point-at": { 3904 "code-point-at": {
3679 "version": "1.1.0", 3905 "version": "1.1.0",
3680 "bundled": true, 3906 "bundled": true,
3681 - "dev": true,  
3682 - "optional": true 3907 + "dev": true
3683 }, 3908 },
3684 "concat-map": { 3909 "concat-map": {
3685 "version": "0.0.1", 3910 "version": "0.0.1",
3686 "bundled": true, 3911 "bundled": true,
3687 - "dev": true,  
3688 - "optional": true 3912 + "dev": true
3689 }, 3913 },
3690 "console-control-strings": { 3914 "console-control-strings": {
3691 "version": "1.1.0", 3915 "version": "1.1.0",
3692 "bundled": true, 3916 "bundled": true,
3693 - "dev": true,  
3694 - "optional": true 3917 + "dev": true
3695 }, 3918 },
3696 "core-util-is": { 3919 "core-util-is": {
3697 "version": "1.0.2", 3920 "version": "1.0.2",
@@ -3732,7 +3955,7 @@ @@ -3732,7 +3955,7 @@
3732 "dev": true, 3955 "dev": true,
3733 "optional": true, 3956 "optional": true,
3734 "requires": { 3957 "requires": {
3735 - "minipass": "2.2.4" 3958 + "minipass": "^2.2.1"
3736 } 3959 }
3737 }, 3960 },
3738 "fs.realpath": { 3961 "fs.realpath": {
@@ -3747,14 +3970,14 @@ @@ -3747,14 +3970,14 @@
3747 "dev": true, 3970 "dev": true,
3748 "optional": true, 3971 "optional": true,
3749 "requires": { 3972 "requires": {
3750 - "aproba": "1.2.0",  
3751 - "console-control-strings": "1.1.0",  
3752 - "has-unicode": "2.0.1",  
3753 - "object-assign": "4.1.1",  
3754 - "signal-exit": "3.0.2",  
3755 - "string-width": "1.0.2",  
3756 - "strip-ansi": "3.0.1",  
3757 - "wide-align": "1.1.2" 3973 + "aproba": "^1.0.3",
  3974 + "console-control-strings": "^1.0.0",
  3975 + "has-unicode": "^2.0.0",
  3976 + "object-assign": "^4.1.0",
  3977 + "signal-exit": "^3.0.0",
  3978 + "string-width": "^1.0.1",
  3979 + "strip-ansi": "^3.0.1",
  3980 + "wide-align": "^1.1.0"
3758 } 3981 }
3759 }, 3982 },
3760 "glob": { 3983 "glob": {
@@ -3763,12 +3986,12 @@ @@ -3763,12 +3986,12 @@
3763 "dev": true, 3986 "dev": true,
3764 "optional": true, 3987 "optional": true,
3765 "requires": { 3988 "requires": {
3766 - "fs.realpath": "1.0.0",  
3767 - "inflight": "1.0.6",  
3768 - "inherits": "2.0.3",  
3769 - "minimatch": "3.0.4",  
3770 - "once": "1.4.0",  
3771 - "path-is-absolute": "1.0.1" 3989 + "fs.realpath": "^1.0.0",
  3990 + "inflight": "^1.0.4",
  3991 + "inherits": "2",
  3992 + "minimatch": "^3.0.4",
  3993 + "once": "^1.3.0",
  3994 + "path-is-absolute": "^1.0.0"
3772 } 3995 }
3773 }, 3996 },
3774 "has-unicode": { 3997 "has-unicode": {
@@ -3783,7 +4006,7 @@ @@ -3783,7 +4006,7 @@
3783 "dev": true, 4006 "dev": true,
3784 "optional": true, 4007 "optional": true,
3785 "requires": { 4008 "requires": {
3786 - "safer-buffer": "2.1.2" 4009 + "safer-buffer": "^2.1.0"
3787 } 4010 }
3788 }, 4011 },
3789 "ignore-walk": { 4012 "ignore-walk": {
@@ -3792,7 +4015,7 @@ @@ -3792,7 +4015,7 @@
3792 "dev": true, 4015 "dev": true,
3793 "optional": true, 4016 "optional": true,
3794 "requires": { 4017 "requires": {
3795 - "minimatch": "3.0.4" 4018 + "minimatch": "^3.0.4"
3796 } 4019 }
3797 }, 4020 },
3798 "inflight": { 4021 "inflight": {
@@ -3801,15 +4024,14 @@ @@ -3801,15 +4024,14 @@
3801 "dev": true, 4024 "dev": true,
3802 "optional": true, 4025 "optional": true,
3803 "requires": { 4026 "requires": {
3804 - "once": "1.4.0",  
3805 - "wrappy": "1.0.2" 4027 + "once": "^1.3.0",
  4028 + "wrappy": "1"
3806 } 4029 }
3807 }, 4030 },
3808 "inherits": { 4031 "inherits": {
3809 "version": "2.0.3", 4032 "version": "2.0.3",
3810 "bundled": true, 4033 "bundled": true,
3811 - "dev": true,  
3812 - "optional": true 4034 + "dev": true
3813 }, 4035 },
3814 "ini": { 4036 "ini": {
3815 "version": "1.3.5", 4037 "version": "1.3.5",
@@ -3821,9 +4043,8 @@ @@ -3821,9 +4043,8 @@
3821 "version": "1.0.0", 4043 "version": "1.0.0",
3822 "bundled": true, 4044 "bundled": true,
3823 "dev": true, 4045 "dev": true,
3824 - "optional": true,  
3825 "requires": { 4046 "requires": {
3826 - "number-is-nan": "1.0.1" 4047 + "number-is-nan": "^1.0.0"
3827 } 4048 }
3828 }, 4049 },
3829 "isarray": { 4050 "isarray": {
@@ -3836,25 +4057,22 @@ @@ -3836,25 +4057,22 @@
3836 "version": "3.0.4", 4057 "version": "3.0.4",
3837 "bundled": true, 4058 "bundled": true,
3838 "dev": true, 4059 "dev": true,
3839 - "optional": true,  
3840 "requires": { 4060 "requires": {
3841 - "brace-expansion": "1.1.11" 4061 + "brace-expansion": "^1.1.7"
3842 } 4062 }
3843 }, 4063 },
3844 "minimist": { 4064 "minimist": {
3845 "version": "0.0.8", 4065 "version": "0.0.8",
3846 "bundled": true, 4066 "bundled": true,
3847 - "dev": true,  
3848 - "optional": true 4067 + "dev": true
3849 }, 4068 },
3850 "minipass": { 4069 "minipass": {
3851 "version": "2.2.4", 4070 "version": "2.2.4",
3852 "bundled": true, 4071 "bundled": true,
3853 "dev": true, 4072 "dev": true,
3854 - "optional": true,  
3855 "requires": { 4073 "requires": {
3856 - "safe-buffer": "5.1.1",  
3857 - "yallist": "3.0.2" 4074 + "safe-buffer": "^5.1.1",
  4075 + "yallist": "^3.0.0"
3858 } 4076 }
3859 }, 4077 },
3860 "minizlib": { 4078 "minizlib": {
@@ -3863,14 +4081,13 @@ @@ -3863,14 +4081,13 @@
3863 "dev": true, 4081 "dev": true,
3864 "optional": true, 4082 "optional": true,
3865 "requires": { 4083 "requires": {
3866 - "minipass": "2.2.4" 4084 + "minipass": "^2.2.1"
3867 } 4085 }
3868 }, 4086 },
3869 "mkdirp": { 4087 "mkdirp": {
3870 "version": "0.5.1", 4088 "version": "0.5.1",
3871 "bundled": true, 4089 "bundled": true,
3872 "dev": true, 4090 "dev": true,
3873 - "optional": true,  
3874 "requires": { 4091 "requires": {
3875 "minimist": "0.0.8" 4092 "minimist": "0.0.8"
3876 } 4093 }
@@ -3887,9 +4104,9 @@ @@ -3887,9 +4104,9 @@
3887 "dev": true, 4104 "dev": true,
3888 "optional": true, 4105 "optional": true,
3889 "requires": { 4106 "requires": {
3890 - "debug": "2.6.9",  
3891 - "iconv-lite": "0.4.21",  
3892 - "sax": "1.2.4" 4107 + "debug": "^2.1.2",
  4108 + "iconv-lite": "^0.4.4",
  4109 + "sax": "^1.2.4"
3893 } 4110 }
3894 }, 4111 },
3895 "node-pre-gyp": { 4112 "node-pre-gyp": {
@@ -3898,16 +4115,16 @@ @@ -3898,16 +4115,16 @@
3898 "dev": true, 4115 "dev": true,
3899 "optional": true, 4116 "optional": true,
3900 "requires": { 4117 "requires": {
3901 - "detect-libc": "1.0.3",  
3902 - "mkdirp": "0.5.1",  
3903 - "needle": "2.2.0",  
3904 - "nopt": "4.0.1",  
3905 - "npm-packlist": "1.1.10",  
3906 - "npmlog": "4.1.2",  
3907 - "rc": "1.2.7",  
3908 - "rimraf": "2.6.2",  
3909 - "semver": "5.5.0",  
3910 - "tar": "4.4.1" 4118 + "detect-libc": "^1.0.2",
  4119 + "mkdirp": "^0.5.1",
  4120 + "needle": "^2.2.0",
  4121 + "nopt": "^4.0.1",
  4122 + "npm-packlist": "^1.1.6",
  4123 + "npmlog": "^4.0.2",
  4124 + "rc": "^1.1.7",
  4125 + "rimraf": "^2.6.1",
  4126 + "semver": "^5.3.0",
  4127 + "tar": "^4"
3911 } 4128 }
3912 }, 4129 },
3913 "nopt": { 4130 "nopt": {
@@ -3916,8 +4133,8 @@ @@ -3916,8 +4133,8 @@
3916 "dev": true, 4133 "dev": true,
3917 "optional": true, 4134 "optional": true,
3918 "requires": { 4135 "requires": {
3919 - "abbrev": "1.1.1",  
3920 - "osenv": "0.1.5" 4136 + "abbrev": "1",
  4137 + "osenv": "^0.1.4"
3921 } 4138 }
3922 }, 4139 },
3923 "npm-bundled": { 4140 "npm-bundled": {
@@ -3932,8 +4149,8 @@ @@ -3932,8 +4149,8 @@
3932 "dev": true, 4149 "dev": true,
3933 "optional": true, 4150 "optional": true,
3934 "requires": { 4151 "requires": {
3935 - "ignore-walk": "3.0.1",  
3936 - "npm-bundled": "1.0.3" 4152 + "ignore-walk": "^3.0.1",
  4153 + "npm-bundled": "^1.0.1"
3937 } 4154 }
3938 }, 4155 },
3939 "npmlog": { 4156 "npmlog": {
@@ -3942,17 +4159,16 @@ @@ -3942,17 +4159,16 @@
3942 "dev": true, 4159 "dev": true,
3943 "optional": true, 4160 "optional": true,
3944 "requires": { 4161 "requires": {
3945 - "are-we-there-yet": "1.1.4",  
3946 - "console-control-strings": "1.1.0",  
3947 - "gauge": "2.7.4",  
3948 - "set-blocking": "2.0.0" 4162 + "are-we-there-yet": "~1.1.2",
  4163 + "console-control-strings": "~1.1.0",
  4164 + "gauge": "~2.7.3",
  4165 + "set-blocking": "~2.0.0"
3949 } 4166 }
3950 }, 4167 },
3951 "number-is-nan": { 4168 "number-is-nan": {
3952 "version": "1.0.1", 4169 "version": "1.0.1",
3953 "bundled": true, 4170 "bundled": true,
3954 - "dev": true,  
3955 - "optional": true 4171 + "dev": true
3956 }, 4172 },
3957 "object-assign": { 4173 "object-assign": {
3958 "version": "4.1.1", 4174 "version": "4.1.1",
@@ -3964,9 +4180,8 @@ @@ -3964,9 +4180,8 @@
3964 "version": "1.4.0", 4180 "version": "1.4.0",
3965 "bundled": true, 4181 "bundled": true,
3966 "dev": true, 4182 "dev": true,
3967 - "optional": true,  
3968 "requires": { 4183 "requires": {
3969 - "wrappy": "1.0.2" 4184 + "wrappy": "1"
3970 } 4185 }
3971 }, 4186 },
3972 "os-homedir": { 4187 "os-homedir": {
@@ -3987,8 +4202,8 @@ @@ -3987,8 +4202,8 @@
3987 "dev": true, 4202 "dev": true,
3988 "optional": true, 4203 "optional": true,
3989 "requires": { 4204 "requires": {
3990 - "os-homedir": "1.0.2",  
3991 - "os-tmpdir": "1.0.2" 4205 + "os-homedir": "^1.0.0",
  4206 + "os-tmpdir": "^1.0.0"
3992 } 4207 }
3993 }, 4208 },
3994 "path-is-absolute": { 4209 "path-is-absolute": {
@@ -4009,10 +4224,10 @@ @@ -4009,10 +4224,10 @@
4009 "dev": true, 4224 "dev": true,
4010 "optional": true, 4225 "optional": true,
4011 "requires": { 4226 "requires": {
4012 - "deep-extend": "0.5.1",  
4013 - "ini": "1.3.5",  
4014 - "minimist": "1.2.0",  
4015 - "strip-json-comments": "2.0.1" 4227 + "deep-extend": "^0.5.1",
  4228 + "ini": "~1.3.0",
  4229 + "minimist": "^1.2.0",
  4230 + "strip-json-comments": "~2.0.1"
4016 }, 4231 },
4017 "dependencies": { 4232 "dependencies": {
4018 "minimist": { 4233 "minimist": {
@@ -4029,13 +4244,13 @@ @@ -4029,13 +4244,13 @@
4029 "dev": true, 4244 "dev": true,
4030 "optional": true, 4245 "optional": true,
4031 "requires": { 4246 "requires": {
4032 - "core-util-is": "1.0.2",  
4033 - "inherits": "2.0.3",  
4034 - "isarray": "1.0.0",  
4035 - "process-nextick-args": "2.0.0",  
4036 - "safe-buffer": "5.1.1",  
4037 - "string_decoder": "1.1.1",  
4038 - "util-deprecate": "1.0.2" 4247 + "core-util-is": "~1.0.0",
  4248 + "inherits": "~2.0.3",
  4249 + "isarray": "~1.0.0",
  4250 + "process-nextick-args": "~2.0.0",
  4251 + "safe-buffer": "~5.1.1",
  4252 + "string_decoder": "~1.1.1",
  4253 + "util-deprecate": "~1.0.1"
4039 } 4254 }
4040 }, 4255 },
4041 "rimraf": { 4256 "rimraf": {
@@ -4044,14 +4259,13 @@ @@ -4044,14 +4259,13 @@
4044 "dev": true, 4259 "dev": true,
4045 "optional": true, 4260 "optional": true,
4046 "requires": { 4261 "requires": {
4047 - "glob": "7.1.2" 4262 + "glob": "^7.0.5"
4048 } 4263 }
4049 }, 4264 },
4050 "safe-buffer": { 4265 "safe-buffer": {
4051 "version": "5.1.1", 4266 "version": "5.1.1",
4052 "bundled": true, 4267 "bundled": true,
4053 - "dev": true,  
4054 - "optional": true 4268 + "dev": true
4055 }, 4269 },
4056 "safer-buffer": { 4270 "safer-buffer": {
4057 "version": "2.1.2", 4271 "version": "2.1.2",
@@ -4087,11 +4301,10 @@ @@ -4087,11 +4301,10 @@
4087 "version": "1.0.2", 4301 "version": "1.0.2",
4088 "bundled": true, 4302 "bundled": true,
4089 "dev": true, 4303 "dev": true,
4090 - "optional": true,  
4091 "requires": { 4304 "requires": {
4092 - "code-point-at": "1.1.0",  
4093 - "is-fullwidth-code-point": "1.0.0",  
4094 - "strip-ansi": "3.0.1" 4305 + "code-point-at": "^1.0.0",
  4306 + "is-fullwidth-code-point": "^1.0.0",
  4307 + "strip-ansi": "^3.0.0"
4095 } 4308 }
4096 }, 4309 },
4097 "string_decoder": { 4310 "string_decoder": {
@@ -4100,16 +4313,15 @@ @@ -4100,16 +4313,15 @@
4100 "dev": true, 4313 "dev": true,
4101 "optional": true, 4314 "optional": true,
4102 "requires": { 4315 "requires": {
4103 - "safe-buffer": "5.1.1" 4316 + "safe-buffer": "~5.1.0"
4104 } 4317 }
4105 }, 4318 },
4106 "strip-ansi": { 4319 "strip-ansi": {
4107 "version": "3.0.1", 4320 "version": "3.0.1",
4108 "bundled": true, 4321 "bundled": true,
4109 "dev": true, 4322 "dev": true,
4110 - "optional": true,  
4111 "requires": { 4323 "requires": {
4112 - "ansi-regex": "2.1.1" 4324 + "ansi-regex": "^2.0.0"
4113 } 4325 }
4114 }, 4326 },
4115 "strip-json-comments": { 4327 "strip-json-comments": {
@@ -4124,13 +4336,13 @@ @@ -4124,13 +4336,13 @@
4124 "dev": true, 4336 "dev": true,
4125 "optional": true, 4337 "optional": true,
4126 "requires": { 4338 "requires": {
4127 - "chownr": "1.0.1",  
4128 - "fs-minipass": "1.2.5",  
4129 - "minipass": "2.2.4",  
4130 - "minizlib": "1.1.0",  
4131 - "mkdirp": "0.5.1",  
4132 - "safe-buffer": "5.1.1",  
4133 - "yallist": "3.0.2" 4339 + "chownr": "^1.0.1",
  4340 + "fs-minipass": "^1.2.5",
  4341 + "minipass": "^2.2.4",
  4342 + "minizlib": "^1.1.0",
  4343 + "mkdirp": "^0.5.0",
  4344 + "safe-buffer": "^5.1.1",
  4345 + "yallist": "^3.0.2"
4134 } 4346 }
4135 }, 4347 },
4136 "util-deprecate": { 4348 "util-deprecate": {
@@ -4145,20 +4357,18 @@ @@ -4145,20 +4357,18 @@
4145 "dev": true, 4357 "dev": true,
4146 "optional": true, 4358 "optional": true,
4147 "requires": { 4359 "requires": {
4148 - "string-width": "1.0.2" 4360 + "string-width": "^1.0.2"
4149 } 4361 }
4150 }, 4362 },
4151 "wrappy": { 4363 "wrappy": {
4152 "version": "1.0.2", 4364 "version": "1.0.2",
4153 "bundled": true, 4365 "bundled": true,
4154 - "dev": true,  
4155 - "optional": true 4366 + "dev": true
4156 }, 4367 },
4157 "yallist": { 4368 "yallist": {
4158 "version": "3.0.2", 4369 "version": "3.0.2",
4159 "bundled": true, 4370 "bundled": true,
4160 - "dev": true,  
4161 - "optional": true 4371 + "dev": true
4162 } 4372 }
4163 } 4373 }
4164 }, 4374 },
@@ -4174,16 +4384,56 @@ @@ -4174,16 +4384,56 @@
4174 "rimraf": "2" 4384 "rimraf": "2"
4175 } 4385 }
4176 }, 4386 },
4177 - "function-bind": {  
4178 - "version": "1.1.1",  
4179 - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",  
4180 - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",  
4181 - "dev": true  
4182 - },  
4183 - "gauge": {  
4184 - "version": "2.7.4",  
4185 - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",  
4186 - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", 4387 + "ftp": {
  4388 + "version": "0.3.10",
  4389 + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz",
  4390 + "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=",
  4391 + "dev": true,
  4392 + "optional": true,
  4393 + "requires": {
  4394 + "readable-stream": "1.1.x",
  4395 + "xregexp": "2.0.0"
  4396 + },
  4397 + "dependencies": {
  4398 + "isarray": {
  4399 + "version": "0.0.1",
  4400 + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
  4401 + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
  4402 + "dev": true,
  4403 + "optional": true
  4404 + },
  4405 + "readable-stream": {
  4406 + "version": "1.1.14",
  4407 + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
  4408 + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
  4409 + "dev": true,
  4410 + "optional": true,
  4411 + "requires": {
  4412 + "core-util-is": "~1.0.0",
  4413 + "inherits": "~2.0.1",
  4414 + "isarray": "0.0.1",
  4415 + "string_decoder": "~0.10.x"
  4416 + }
  4417 + },
  4418 + "string_decoder": {
  4419 + "version": "0.10.31",
  4420 + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
  4421 + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
  4422 + "dev": true,
  4423 + "optional": true
  4424 + }
  4425 + }
  4426 + },
  4427 + "function-bind": {
  4428 + "version": "1.1.1",
  4429 + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
  4430 + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
  4431 + "dev": true
  4432 + },
  4433 + "gauge": {
  4434 + "version": "2.7.4",
  4435 + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
  4436 + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
4187 "dev": true, 4437 "dev": true,
4188 "requires": { 4438 "requires": {
4189 "aproba": "^1.0.3", 4439 "aproba": "^1.0.3",
@@ -4241,6 +4491,21 @@ @@ -4241,6 +4491,21 @@
4241 "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", 4491 "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
4242 "dev": true 4492 "dev": true
4243 }, 4493 },
  4494 + "get-uri": {
  4495 + "version": "2.0.2",
  4496 + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.2.tgz",
  4497 + "integrity": "sha512-ZD325dMZOgerGqF/rF6vZXyFGTAay62svjQIT+X/oU2PtxYpFxvSkbsdi+oxIrsNxlZVd4y8wUDqkaExWTI/Cw==",
  4498 + "dev": true,
  4499 + "optional": true,
  4500 + "requires": {
  4501 + "data-uri-to-buffer": "1",
  4502 + "debug": "2",
  4503 + "extend": "3",
  4504 + "file-uri-to-path": "1",
  4505 + "ftp": "~0.3.10",
  4506 + "readable-stream": "2"
  4507 + }
  4508 + },
4244 "get-value": { 4509 "get-value": {
4245 "version": "2.0.6", 4510 "version": "2.0.6",
4246 "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", 4511 "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
@@ -4463,19 +4728,19 @@ @@ -4463,19 +4728,19 @@
4463 "ansi-regex": "^2.0.0" 4728 "ansi-regex": "^2.0.0"
4464 } 4729 }
4465 }, 4730 },
4466 - "has-binary": {  
4467 - "version": "0.1.7",  
4468 - "resolved": "https://registry.npmjs.org/has-binary/-/has-binary-0.1.7.tgz",  
4469 - "integrity": "sha1-aOYesWIQyVRaClzOBqhzkS/h5ow=", 4731 + "has-binary2": {
  4732 + "version": "1.0.3",
  4733 + "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz",
  4734 + "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==",
4470 "dev": true, 4735 "dev": true,
4471 "requires": { 4736 "requires": {
4472 - "isarray": "0.0.1" 4737 + "isarray": "2.0.1"
4473 }, 4738 },
4474 "dependencies": { 4739 "dependencies": {
4475 "isarray": { 4740 "isarray": {
4476 - "version": "0.0.1",  
4477 - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",  
4478 - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", 4741 + "version": "2.0.1",
  4742 + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
  4743 + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=",
4479 "dev": true 4744 "dev": true
4480 } 4745 }
4481 } 4746 }
@@ -4574,6 +4839,17 @@ @@ -4574,6 +4839,17 @@
4574 "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", 4839 "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=",
4575 "dev": true 4840 "dev": true
4576 }, 4841 },
  4842 + "hipchat-notifier": {
  4843 + "version": "1.1.0",
  4844 + "resolved": "https://registry.npmjs.org/hipchat-notifier/-/hipchat-notifier-1.1.0.tgz",
  4845 + "integrity": "sha1-ttJJdVQ3wZEII2d5nTupoPI7Ix4=",
  4846 + "dev": true,
  4847 + "optional": true,
  4848 + "requires": {
  4849 + "lodash": "^4.0.0",
  4850 + "request": "^2.0.0"
  4851 + }
  4852 + },
4577 "hmac-drbg": { 4853 "hmac-drbg": {
4578 "version": "1.0.1", 4854 "version": "1.0.1",
4579 "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", 4855 "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
@@ -4741,6 +5017,27 @@ @@ -4741,6 +5017,27 @@
4741 "requires-port": "^1.0.0" 5017 "requires-port": "^1.0.0"
4742 } 5018 }
4743 }, 5019 },
  5020 + "http-proxy-agent": {
  5021 + "version": "2.1.0",
  5022 + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz",
  5023 + "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==",
  5024 + "dev": true,
  5025 + "requires": {
  5026 + "agent-base": "4",
  5027 + "debug": "3.1.0"
  5028 + },
  5029 + "dependencies": {
  5030 + "debug": {
  5031 + "version": "3.1.0",
  5032 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
  5033 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
  5034 + "dev": true,
  5035 + "requires": {
  5036 + "ms": "2.0.0"
  5037 + }
  5038 + }
  5039 + }
  5040 + },
4744 "http-proxy-middleware": { 5041 "http-proxy-middleware": {
4745 "version": "0.18.0", 5042 "version": "0.18.0",
4746 "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz", 5043 "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz",
@@ -4764,6 +5061,22 @@ @@ -4764,6 +5061,22 @@
4764 "sshpk": "^1.7.0" 5061 "sshpk": "^1.7.0"
4765 } 5062 }
4766 }, 5063 },
  5064 + "httpntlm": {
  5065 + "version": "1.6.1",
  5066 + "resolved": "https://registry.npmjs.org/httpntlm/-/httpntlm-1.6.1.tgz",
  5067 + "integrity": "sha1-rQFScUOi6Hc8+uapb1hla7UqNLI=",
  5068 + "dev": true,
  5069 + "requires": {
  5070 + "httpreq": ">=0.4.22",
  5071 + "underscore": "~1.7.0"
  5072 + }
  5073 + },
  5074 + "httpreq": {
  5075 + "version": "0.4.24",
  5076 + "resolved": "https://registry.npmjs.org/httpreq/-/httpreq-0.4.24.tgz",
  5077 + "integrity": "sha1-QzX/2CzZaWaKOUZckprGHWOTYn8=",
  5078 + "dev": true
  5079 + },
4767 "https-browserify": { 5080 "https-browserify": {
4768 "version": "1.0.0", 5081 "version": "1.0.0",
4769 "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", 5082 "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
@@ -4866,6 +5179,13 @@ @@ -4866,6 +5179,13 @@
4866 "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", 5179 "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=",
4867 "dev": true 5180 "dev": true
4868 }, 5181 },
  5182 + "inflection": {
  5183 + "version": "1.12.0",
  5184 + "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.12.0.tgz",
  5185 + "integrity": "sha1-ogCTVlbW9fa8TcdQLhrstwMihBY=",
  5186 + "dev": true,
  5187 + "optional": true
  5188 + },
4869 "inflight": { 5189 "inflight": {
4870 "version": "1.0.6", 5190 "version": "1.0.6",
4871 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 5191 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
@@ -5230,10 +5550,13 @@ @@ -5230,10 +5550,13 @@
5230 "dev": true 5550 "dev": true
5231 }, 5551 },
5232 "isbinaryfile": { 5552 "isbinaryfile": {
5233 - "version": "3.0.2",  
5234 - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.2.tgz",  
5235 - "integrity": "sha1-Sj6XTsDLqQBNP8bN5yCeppNopiE=",  
5236 - "dev": true 5553 + "version": "3.0.3",
  5554 + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz",
  5555 + "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==",
  5556 + "dev": true,
  5557 + "requires": {
  5558 + "buffer-alloc": "^1.2.0"
  5559 + }
5237 }, 5560 },
5238 "isexe": { 5561 "isexe": {
5239 "version": "2.0.0", 5562 "version": "2.0.0",
@@ -5673,14 +5996,14 @@ @@ -5673,14 +5996,14 @@
5673 } 5996 }
5674 }, 5997 },
5675 "karma": { 5998 "karma": {
5676 - "version": "1.7.1",  
5677 - "resolved": "https://registry.npmjs.org/karma/-/karma-1.7.1.tgz",  
5678 - "integrity": "sha512-k5pBjHDhmkdaUccnC7gE3mBzZjcxyxYsYVaqiL2G5AqlfLyBO5nw2VdNK+O16cveEPd/gIOWULH7gkiYYwVNHg==", 5999 + "version": "2.0.5",
  6000 + "resolved": "https://registry.npmjs.org/karma/-/karma-2.0.5.tgz",
  6001 + "integrity": "sha512-rECezBeY7mjzGUWhFlB7CvPHgkHJLXyUmWg+6vHCEsdWNUTnmiS6jRrIMcJEWgU2DUGZzGWG0bTRVky8fsDTOA==",
5679 "dev": true, 6002 "dev": true,
5680 "requires": { 6003 "requires": {
5681 "bluebird": "^3.3.0", 6004 "bluebird": "^3.3.0",
5682 "body-parser": "^1.16.1", 6005 "body-parser": "^1.16.1",
5683 - "chokidar": "^1.4.1", 6006 + "chokidar": "^2.0.3",
5684 "colors": "^1.1.0", 6007 "colors": "^1.1.0",
5685 "combine-lists": "^1.0.0", 6008 "combine-lists": "^1.0.0",
5686 "connect": "^3.6.0", 6009 "connect": "^3.6.0",
@@ -5692,8 +6015,8 @@ @@ -5692,8 +6015,8 @@
5692 "graceful-fs": "^4.1.2", 6015 "graceful-fs": "^4.1.2",
5693 "http-proxy": "^1.13.0", 6016 "http-proxy": "^1.13.0",
5694 "isbinaryfile": "^3.0.0", 6017 "isbinaryfile": "^3.0.0",
5695 - "lodash": "^3.8.0",  
5696 - "log4js": "^0.6.31", 6018 + "lodash": "^4.17.4",
  6019 + "log4js": "^2.5.3",
5697 "mime": "^1.3.4", 6020 "mime": "^1.3.4",
5698 "minimatch": "^3.0.2", 6021 "minimatch": "^3.0.2",
5699 "optimist": "^0.6.1", 6022 "optimist": "^0.6.1",
@@ -5701,142 +6024,17 @@ @@ -5701,142 +6024,17 @@
5701 "range-parser": "^1.2.0", 6024 "range-parser": "^1.2.0",
5702 "rimraf": "^2.6.0", 6025 "rimraf": "^2.6.0",
5703 "safe-buffer": "^5.0.1", 6026 "safe-buffer": "^5.0.1",
5704 - "socket.io": "1.7.3",  
5705 - "source-map": "^0.5.3",  
5706 - "tmp": "0.0.31",  
5707 - "useragent": "^2.1.12" 6027 + "socket.io": "2.0.4",
  6028 + "source-map": "^0.6.1",
  6029 + "tmp": "0.0.33",
  6030 + "useragent": "2.2.1"
5708 }, 6031 },
5709 "dependencies": { 6032 "dependencies": {
5710 - "anymatch": {  
5711 - "version": "1.3.2",  
5712 - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",  
5713 - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",  
5714 - "dev": true,  
5715 - "requires": {  
5716 - "micromatch": "^2.1.5",  
5717 - "normalize-path": "^2.0.0"  
5718 - }  
5719 - },  
5720 - "arr-diff": {  
5721 - "version": "2.0.0",  
5722 - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",  
5723 - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",  
5724 - "dev": true,  
5725 - "requires": {  
5726 - "arr-flatten": "^1.0.1"  
5727 - }  
5728 - },  
5729 - "array-unique": {  
5730 - "version": "0.2.1",  
5731 - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",  
5732 - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",  
5733 - "dev": true  
5734 - },  
5735 - "braces": {  
5736 - "version": "1.8.5",  
5737 - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",  
5738 - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",  
5739 - "dev": true,  
5740 - "requires": {  
5741 - "expand-range": "^1.8.1",  
5742 - "preserve": "^0.2.0",  
5743 - "repeat-element": "^1.1.2"  
5744 - }  
5745 - },  
5746 - "chokidar": {  
5747 - "version": "1.7.0",  
5748 - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",  
5749 - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",  
5750 - "dev": true,  
5751 - "requires": {  
5752 - "anymatch": "^1.3.0",  
5753 - "async-each": "^1.0.0",  
5754 - "fsevents": "^1.0.0",  
5755 - "glob-parent": "^2.0.0",  
5756 - "inherits": "^2.0.1",  
5757 - "is-binary-path": "^1.0.0",  
5758 - "is-glob": "^2.0.0",  
5759 - "path-is-absolute": "^1.0.0",  
5760 - "readdirp": "^2.0.0"  
5761 - }  
5762 - },  
5763 - "expand-brackets": {  
5764 - "version": "0.1.5",  
5765 - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",  
5766 - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",  
5767 - "dev": true,  
5768 - "requires": {  
5769 - "is-posix-bracket": "^0.1.0"  
5770 - }  
5771 - },  
5772 - "extglob": {  
5773 - "version": "0.3.2",  
5774 - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",  
5775 - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",  
5776 - "dev": true,  
5777 - "requires": {  
5778 - "is-extglob": "^1.0.0"  
5779 - }  
5780 - },  
5781 - "glob-parent": {  
5782 - "version": "2.0.0",  
5783 - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",  
5784 - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",  
5785 - "dev": true,  
5786 - "requires": {  
5787 - "is-glob": "^2.0.0"  
5788 - }  
5789 - },  
5790 - "is-extglob": {  
5791 - "version": "1.0.0",  
5792 - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",  
5793 - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",  
5794 - "dev": true  
5795 - },  
5796 - "is-glob": {  
5797 - "version": "2.0.1",  
5798 - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",  
5799 - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",  
5800 - "dev": true,  
5801 - "requires": {  
5802 - "is-extglob": "^1.0.0"  
5803 - }  
5804 - },  
5805 - "kind-of": {  
5806 - "version": "3.2.2",  
5807 - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",  
5808 - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",  
5809 - "dev": true,  
5810 - "requires": {  
5811 - "is-buffer": "^1.1.5"  
5812 - }  
5813 - },  
5814 - "lodash": {  
5815 - "version": "3.10.1",  
5816 - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",  
5817 - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", 6033 + "source-map": {
  6034 + "version": "0.6.1",
  6035 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
  6036 + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
5818 "dev": true 6037 "dev": true
5819 - },  
5820 - "micromatch": {  
5821 - "version": "2.3.11",  
5822 - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",  
5823 - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",  
5824 - "dev": true,  
5825 - "requires": {  
5826 - "arr-diff": "^2.0.0",  
5827 - "array-unique": "^0.2.1",  
5828 - "braces": "^1.8.2",  
5829 - "expand-brackets": "^0.1.4",  
5830 - "extglob": "^0.3.1",  
5831 - "filename-regex": "^2.0.0",  
5832 - "is-extglob": "^1.0.0",  
5833 - "is-glob": "^2.0.1",  
5834 - "kind-of": "^3.0.2",  
5835 - "normalize-path": "^2.0.1",  
5836 - "object.omit": "^2.0.0",  
5837 - "parse-glob": "^3.0.4",  
5838 - "regex-cache": "^0.4.2"  
5839 - }  
5840 } 6038 }
5841 } 6039 }
5842 }, 6040 },
@@ -5964,6 +6162,37 @@ @@ -5964,6 +6162,37 @@
5964 "type-check": "~0.3.2" 6162 "type-check": "~0.3.2"
5965 } 6163 }
5966 }, 6164 },
  6165 + "libbase64": {
  6166 + "version": "0.1.0",
  6167 + "resolved": "https://registry.npmjs.org/libbase64/-/libbase64-0.1.0.tgz",
  6168 + "integrity": "sha1-YjUag5VjrF/1vSbxL2Dpgwu3UeY=",
  6169 + "dev": true
  6170 + },
  6171 + "libmime": {
  6172 + "version": "3.0.0",
  6173 + "resolved": "https://registry.npmjs.org/libmime/-/libmime-3.0.0.tgz",
  6174 + "integrity": "sha1-UaGp50SOy9Ms2lRCFnW7IbwJPaY=",
  6175 + "dev": true,
  6176 + "requires": {
  6177 + "iconv-lite": "0.4.15",
  6178 + "libbase64": "0.1.0",
  6179 + "libqp": "1.1.0"
  6180 + },
  6181 + "dependencies": {
  6182 + "iconv-lite": {
  6183 + "version": "0.4.15",
  6184 + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz",
  6185 + "integrity": "sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es=",
  6186 + "dev": true
  6187 + }
  6188 + }
  6189 + },
  6190 + "libqp": {
  6191 + "version": "1.1.0",
  6192 + "resolved": "https://registry.npmjs.org/libqp/-/libqp-1.1.0.tgz",
  6193 + "integrity": "sha1-9ebgatdLeU+1tbZpiL9yjvHe2+g=",
  6194 + "dev": true
  6195 + },
5967 "license-webpack-plugin": { 6196 "license-webpack-plugin": {
5968 "version": "1.3.1", 6197 "version": "1.3.1",
5969 "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-1.3.1.tgz", 6198 "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-1.3.1.tgz",
@@ -6078,44 +6307,185 @@ @@ -6078,44 +6307,185 @@
6078 } 6307 }
6079 }, 6308 },
6080 "log4js": { 6309 "log4js": {
6081 - "version": "0.6.38",  
6082 - "resolved": "https://registry.npmjs.org/log4js/-/log4js-0.6.38.tgz",  
6083 - "integrity": "sha1-LElBFmldb7JUgJQ9P8hy5mKlIv0=", 6310 + "version": "2.11.0",
  6311 + "resolved": "https://registry.npmjs.org/log4js/-/log4js-2.11.0.tgz",
  6312 + "integrity": "sha512-z1XdwyGFg8/WGkOyF6DPJjivCWNLKrklGdViywdYnSKOvgtEBo2UyEMZS5sD2mZrQlU3TvO8wDWLc8mzE1ncBQ==",
6084 "dev": true, 6313 "dev": true,
6085 "requires": { 6314 "requires": {
6086 - "readable-stream": "~1.0.2",  
6087 - "semver": "~4.3.3" 6315 + "amqplib": "^0.5.2",
  6316 + "axios": "^0.15.3",
  6317 + "circular-json": "^0.5.4",
  6318 + "date-format": "^1.2.0",
  6319 + "debug": "^3.1.0",
  6320 + "hipchat-notifier": "^1.1.0",
  6321 + "loggly": "^1.1.0",
  6322 + "mailgun-js": "^0.18.0",
  6323 + "nodemailer": "^2.5.0",
  6324 + "redis": "^2.7.1",
  6325 + "semver": "^5.5.0",
  6326 + "slack-node": "~0.2.0",
  6327 + "streamroller": "0.7.0"
6088 }, 6328 },
6089 "dependencies": { 6329 "dependencies": {
6090 - "isarray": {  
6091 - "version": "0.0.1",  
6092 - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",  
6093 - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",  
6094 - "dev": true 6330 + "debug": {
  6331 + "version": "3.1.0",
  6332 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
  6333 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
  6334 + "dev": true,
  6335 + "requires": {
  6336 + "ms": "2.0.0"
  6337 + }
  6338 + }
  6339 + }
  6340 + },
  6341 + "loggly": {
  6342 + "version": "1.1.1",
  6343 + "resolved": "https://registry.npmjs.org/loggly/-/loggly-1.1.1.tgz",
  6344 + "integrity": "sha1-Cg/B0/o6XsRP3HuJe+uipGlc6+4=",
  6345 + "dev": true,
  6346 + "optional": true,
  6347 + "requires": {
  6348 + "json-stringify-safe": "5.0.x",
  6349 + "request": "2.75.x",
  6350 + "timespan": "2.3.x"
  6351 + },
  6352 + "dependencies": {
  6353 + "ansi-styles": {
  6354 + "version": "2.2.1",
  6355 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
  6356 + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
  6357 + "dev": true,
  6358 + "optional": true
6095 }, 6359 },
6096 - "readable-stream": {  
6097 - "version": "1.0.34",  
6098 - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",  
6099 - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", 6360 + "assert-plus": {
  6361 + "version": "0.2.0",
  6362 + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
  6363 + "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=",
6100 "dev": true, 6364 "dev": true,
  6365 + "optional": true
  6366 + },
  6367 + "aws-sign2": {
  6368 + "version": "0.6.0",
  6369 + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
  6370 + "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=",
  6371 + "dev": true,
  6372 + "optional": true
  6373 + },
  6374 + "caseless": {
  6375 + "version": "0.11.0",
  6376 + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz",
  6377 + "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=",
  6378 + "dev": true,
  6379 + "optional": true
  6380 + },
  6381 + "chalk": {
  6382 + "version": "1.1.3",
  6383 + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
  6384 + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
  6385 + "dev": true,
  6386 + "optional": true,
6101 "requires": { 6387 "requires": {
6102 - "core-util-is": "~1.0.0",  
6103 - "inherits": "~2.0.1",  
6104 - "isarray": "0.0.1",  
6105 - "string_decoder": "~0.10.x" 6388 + "ansi-styles": "^2.2.1",
  6389 + "escape-string-regexp": "^1.0.2",
  6390 + "has-ansi": "^2.0.0",
  6391 + "strip-ansi": "^3.0.0",
  6392 + "supports-color": "^2.0.0"
6106 } 6393 }
6107 }, 6394 },
6108 - "semver": {  
6109 - "version": "4.3.6",  
6110 - "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz",  
6111 - "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=",  
6112 - "dev": true 6395 + "form-data": {
  6396 + "version": "2.0.0",
  6397 + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.0.0.tgz",
  6398 + "integrity": "sha1-bwrrrcxdoWwT4ezBETfYX5uIOyU=",
  6399 + "dev": true,
  6400 + "optional": true,
  6401 + "requires": {
  6402 + "asynckit": "^0.4.0",
  6403 + "combined-stream": "^1.0.5",
  6404 + "mime-types": "^2.1.11"
  6405 + }
6113 }, 6406 },
6114 - "string_decoder": {  
6115 - "version": "0.10.31",  
6116 - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",  
6117 - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",  
6118 - "dev": true 6407 + "har-validator": {
  6408 + "version": "2.0.6",
  6409 + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz",
  6410 + "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=",
  6411 + "dev": true,
  6412 + "optional": true,
  6413 + "requires": {
  6414 + "chalk": "^1.1.1",
  6415 + "commander": "^2.9.0",
  6416 + "is-my-json-valid": "^2.12.4",
  6417 + "pinkie-promise": "^2.0.0"
  6418 + }
  6419 + },
  6420 + "http-signature": {
  6421 + "version": "1.1.1",
  6422 + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
  6423 + "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
  6424 + "dev": true,
  6425 + "optional": true,
  6426 + "requires": {
  6427 + "assert-plus": "^0.2.0",
  6428 + "jsprim": "^1.2.2",
  6429 + "sshpk": "^1.7.0"
  6430 + }
  6431 + },
  6432 + "node-uuid": {
  6433 + "version": "1.4.8",
  6434 + "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz",
  6435 + "integrity": "sha1-sEDrCSOWivq/jTL7HxfxFn/auQc=",
  6436 + "dev": true,
  6437 + "optional": true
  6438 + },
  6439 + "qs": {
  6440 + "version": "6.2.3",
  6441 + "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz",
  6442 + "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=",
  6443 + "dev": true,
  6444 + "optional": true
  6445 + },
  6446 + "request": {
  6447 + "version": "2.75.0",
  6448 + "resolved": "https://registry.npmjs.org/request/-/request-2.75.0.tgz",
  6449 + "integrity": "sha1-0rgmiihtoT6qXQGt9dGMyQ9lfZM=",
  6450 + "dev": true,
  6451 + "optional": true,
  6452 + "requires": {
  6453 + "aws-sign2": "~0.6.0",
  6454 + "aws4": "^1.2.1",
  6455 + "bl": "~1.1.2",
  6456 + "caseless": "~0.11.0",
  6457 + "combined-stream": "~1.0.5",
  6458 + "extend": "~3.0.0",
  6459 + "forever-agent": "~0.6.1",
  6460 + "form-data": "~2.0.0",
  6461 + "har-validator": "~2.0.6",
  6462 + "hawk": "~3.1.3",
  6463 + "http-signature": "~1.1.0",
  6464 + "is-typedarray": "~1.0.0",
  6465 + "isstream": "~0.1.2",
  6466 + "json-stringify-safe": "~5.0.1",
  6467 + "mime-types": "~2.1.7",
  6468 + "node-uuid": "~1.4.7",
  6469 + "oauth-sign": "~0.8.1",
  6470 + "qs": "~6.2.0",
  6471 + "stringstream": "~0.0.4",
  6472 + "tough-cookie": "~2.3.0",
  6473 + "tunnel-agent": "~0.4.1"
  6474 + }
  6475 + },
  6476 + "supports-color": {
  6477 + "version": "2.0.0",
  6478 + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
  6479 + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
  6480 + "dev": true,
  6481 + "optional": true
  6482 + },
  6483 + "tunnel-agent": {
  6484 + "version": "0.4.3",
  6485 + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz",
  6486 + "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=",
  6487 + "dev": true,
  6488 + "optional": true
6119 } 6489 }
6120 } 6490 }
6121 }, 6491 },
@@ -6182,6 +6552,57 @@ @@ -6182,6 +6552,57 @@
6182 "yallist": "^2.1.2" 6552 "yallist": "^2.1.2"
6183 } 6553 }
6184 }, 6554 },
  6555 + "mailcomposer": {
  6556 + "version": "4.0.1",
  6557 + "resolved": "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.1.tgz",
  6558 + "integrity": "sha1-DhxEsqB890DuF9wUm6AJ8Zyt/rQ=",
  6559 + "dev": true,
  6560 + "optional": true,
  6561 + "requires": {
  6562 + "buildmail": "4.0.1",
  6563 + "libmime": "3.0.0"
  6564 + }
  6565 + },
  6566 + "mailgun-js": {
  6567 + "version": "0.18.1",
  6568 + "resolved": "https://registry.npmjs.org/mailgun-js/-/mailgun-js-0.18.1.tgz",
  6569 + "integrity": "sha512-lvuMP14u24HS2uBsJEnzSyPMxzU2b99tQsIx1o6QNjqxjk8b3WvR+vq5oG1mjqz/IBYo+5gF+uSoDS0RkMVHmg==",
  6570 + "dev": true,
  6571 + "optional": true,
  6572 + "requires": {
  6573 + "async": "~2.6.0",
  6574 + "debug": "~3.1.0",
  6575 + "form-data": "~2.3.0",
  6576 + "inflection": "~1.12.0",
  6577 + "is-stream": "^1.1.0",
  6578 + "path-proxy": "~1.0.0",
  6579 + "promisify-call": "^2.0.2",
  6580 + "proxy-agent": "~3.0.0",
  6581 + "tsscmp": "~1.0.0"
  6582 + },
  6583 + "dependencies": {
  6584 + "async": {
  6585 + "version": "2.6.1",
  6586 + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz",
  6587 + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==",
  6588 + "dev": true,
  6589 + "optional": true,
  6590 + "requires": {
  6591 + "lodash": "^4.17.10"
  6592 + }
  6593 + },
  6594 + "debug": {
  6595 + "version": "3.1.0",
  6596 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
  6597 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
  6598 + "dev": true,
  6599 + "optional": true,
  6600 + "requires": {
  6601 + "ms": "2.0.0"
  6602 + }
  6603 + }
  6604 + }
  6605 + },
6185 "make-dir": { 6606 "make-dir": {
6186 "version": "1.3.0", 6607 "version": "1.3.0",
6187 "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", 6608 "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz",
@@ -6537,6 +6958,13 @@ @@ -6537,6 +6958,13 @@
6537 "integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==", 6958 "integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==",
6538 "dev": true 6959 "dev": true
6539 }, 6960 },
  6961 + "netmask": {
  6962 + "version": "1.0.6",
  6963 + "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz",
  6964 + "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=",
  6965 + "dev": true,
  6966 + "optional": true
  6967 + },
6540 "next-tick": { 6968 "next-tick": {
6541 "version": "1.0.0", 6969 "version": "1.0.0",
6542 "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", 6970 "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz",
@@ -6895,6 +7323,91 @@ @@ -6895,6 +7323,91 @@
6895 } 7323 }
6896 } 7324 }
6897 }, 7325 },
  7326 + "nodemailer": {
  7327 + "version": "2.7.2",
  7328 + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-2.7.2.tgz",
  7329 + "integrity": "sha1-8kLmSa7q45tsftdA73sGHEBNMPk=",
  7330 + "dev": true,
  7331 + "optional": true,
  7332 + "requires": {
  7333 + "libmime": "3.0.0",
  7334 + "mailcomposer": "4.0.1",
  7335 + "nodemailer-direct-transport": "3.3.2",
  7336 + "nodemailer-shared": "1.1.0",
  7337 + "nodemailer-smtp-pool": "2.8.2",
  7338 + "nodemailer-smtp-transport": "2.7.2",
  7339 + "socks": "1.1.9"
  7340 + },
  7341 + "dependencies": {
  7342 + "socks": {
  7343 + "version": "1.1.9",
  7344 + "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.9.tgz",
  7345 + "integrity": "sha1-Yo1+TQSRJDVEWsC25Fk3bLPm1pE=",
  7346 + "dev": true,
  7347 + "optional": true,
  7348 + "requires": {
  7349 + "ip": "^1.1.2",
  7350 + "smart-buffer": "^1.0.4"
  7351 + }
  7352 + }
  7353 + }
  7354 + },
  7355 + "nodemailer-direct-transport": {
  7356 + "version": "3.3.2",
  7357 + "resolved": "https://registry.npmjs.org/nodemailer-direct-transport/-/nodemailer-direct-transport-3.3.2.tgz",
  7358 + "integrity": "sha1-6W+vuQNYVglH5WkBfZfmBzilCoY=",
  7359 + "dev": true,
  7360 + "optional": true,
  7361 + "requires": {
  7362 + "nodemailer-shared": "1.1.0",
  7363 + "smtp-connection": "2.12.0"
  7364 + }
  7365 + },
  7366 + "nodemailer-fetch": {
  7367 + "version": "1.6.0",
  7368 + "resolved": "https://registry.npmjs.org/nodemailer-fetch/-/nodemailer-fetch-1.6.0.tgz",
  7369 + "integrity": "sha1-ecSQihwPXzdbc/6IjamCj23JY6Q=",
  7370 + "dev": true
  7371 + },
  7372 + "nodemailer-shared": {
  7373 + "version": "1.1.0",
  7374 + "resolved": "https://registry.npmjs.org/nodemailer-shared/-/nodemailer-shared-1.1.0.tgz",
  7375 + "integrity": "sha1-z1mU4v0mjQD1zw+nZ6CBae2wfsA=",
  7376 + "dev": true,
  7377 + "requires": {
  7378 + "nodemailer-fetch": "1.6.0"
  7379 + }
  7380 + },
  7381 + "nodemailer-smtp-pool": {
  7382 + "version": "2.8.2",
  7383 + "resolved": "https://registry.npmjs.org/nodemailer-smtp-pool/-/nodemailer-smtp-pool-2.8.2.tgz",
  7384 + "integrity": "sha1-LrlNbPhXgLG0clzoU7nL1ejajHI=",
  7385 + "dev": true,
  7386 + "optional": true,
  7387 + "requires": {
  7388 + "nodemailer-shared": "1.1.0",
  7389 + "nodemailer-wellknown": "0.1.10",
  7390 + "smtp-connection": "2.12.0"
  7391 + }
  7392 + },
  7393 + "nodemailer-smtp-transport": {
  7394 + "version": "2.7.2",
  7395 + "resolved": "https://registry.npmjs.org/nodemailer-smtp-transport/-/nodemailer-smtp-transport-2.7.2.tgz",
  7396 + "integrity": "sha1-A9ccdjFPFKx9vHvwM6am0W1n+3c=",
  7397 + "dev": true,
  7398 + "optional": true,
  7399 + "requires": {
  7400 + "nodemailer-shared": "1.1.0",
  7401 + "nodemailer-wellknown": "0.1.10",
  7402 + "smtp-connection": "2.12.0"
  7403 + }
  7404 + },
  7405 + "nodemailer-wellknown": {
  7406 + "version": "0.1.10",
  7407 + "resolved": "https://registry.npmjs.org/nodemailer-wellknown/-/nodemailer-wellknown-0.1.10.tgz",
  7408 + "integrity": "sha1-WG24EB2zDLRDjrVGc3pBqtDPE9U=",
  7409 + "dev": true
  7410 + },
6898 "nopt": { 7411 "nopt": {
6899 "version": "3.0.6", 7412 "version": "3.0.6",
6900 "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", 7413 "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
@@ -7198,12 +7711,6 @@ @@ -7198,12 +7711,6 @@
7198 "wordwrap": "~1.0.0" 7711 "wordwrap": "~1.0.0"
7199 } 7712 }
7200 }, 7713 },
7201 - "options": {  
7202 - "version": "0.0.6",  
7203 - "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz",  
7204 - "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=",  
7205 - "dev": true  
7206 - },  
7207 "original": { 7714 "original": {
7208 "version": "1.0.1", 7715 "version": "1.0.1",
7209 "resolved": "https://registry.npmjs.org/original/-/original-1.0.1.tgz", 7716 "resolved": "https://registry.npmjs.org/original/-/original-1.0.1.tgz",
@@ -7287,6 +7794,60 @@ @@ -7287,6 +7794,60 @@
7287 "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", 7794 "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
7288 "dev": true 7795 "dev": true
7289 }, 7796 },
  7797 + "pac-proxy-agent": {
  7798 + "version": "2.0.2",
  7799 + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-2.0.2.tgz",
  7800 + "integrity": "sha512-cDNAN1Ehjbf5EHkNY5qnRhGPUCp6SnpyVof5fRzN800QV1Y2OkzbH9rmjZkbBRa8igof903yOnjIl6z0SlAhxA==",
  7801 + "dev": true,
  7802 + "optional": true,
  7803 + "requires": {
  7804 + "agent-base": "^4.2.0",
  7805 + "debug": "^3.1.0",
  7806 + "get-uri": "^2.0.0",
  7807 + "http-proxy-agent": "^2.1.0",
  7808 + "https-proxy-agent": "^2.2.1",
  7809 + "pac-resolver": "^3.0.0",
  7810 + "raw-body": "^2.2.0",
  7811 + "socks-proxy-agent": "^3.0.0"
  7812 + },
  7813 + "dependencies": {
  7814 + "debug": {
  7815 + "version": "3.1.0",
  7816 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
  7817 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
  7818 + "dev": true,
  7819 + "optional": true,
  7820 + "requires": {
  7821 + "ms": "2.0.0"
  7822 + }
  7823 + },
  7824 + "socks-proxy-agent": {
  7825 + "version": "3.0.1",
  7826 + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz",
  7827 + "integrity": "sha512-ZwEDymm204mTzvdqyUqOdovVr2YRd2NYskrYrF2LXyZ9qDiMAoFESGK8CRphiO7rtbo2Y757k2Nia3x2hGtalA==",
  7828 + "dev": true,
  7829 + "optional": true,
  7830 + "requires": {
  7831 + "agent-base": "^4.1.0",
  7832 + "socks": "^1.1.10"
  7833 + }
  7834 + }
  7835 + }
  7836 + },
  7837 + "pac-resolver": {
  7838 + "version": "3.0.0",
  7839 + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz",
  7840 + "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==",
  7841 + "dev": true,
  7842 + "optional": true,
  7843 + "requires": {
  7844 + "co": "^4.6.0",
  7845 + "degenerator": "^1.0.4",
  7846 + "ip": "^1.1.5",
  7847 + "netmask": "^1.0.6",
  7848 + "thunkify": "^2.1.2"
  7849 + }
  7850 + },
7290 "pako": { 7851 "pako": {
7291 "version": "1.0.6", 7852 "version": "1.0.6",
7292 "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", 7853 "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz",
@@ -7370,15 +7931,6 @@ @@ -7370,15 +7931,6 @@
7370 "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", 7931 "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==",
7371 "dev": true 7932 "dev": true
7372 }, 7933 },
7373 - "parsejson": {  
7374 - "version": "0.0.3",  
7375 - "resolved": "https://registry.npmjs.org/parsejson/-/parsejson-0.0.3.tgz",  
7376 - "integrity": "sha1-q343WfIJ7OmUN5c/fQ8fZK4OZKs=",  
7377 - "dev": true,  
7378 - "requires": {  
7379 - "better-assert": "~1.0.0"  
7380 - }  
7381 - },  
7382 "parseqs": { 7934 "parseqs": {
7383 "version": "0.0.5", 7935 "version": "0.0.5",
7384 "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", 7936 "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz",
@@ -7451,6 +8003,25 @@ @@ -7451,6 +8003,25 @@
7451 "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", 8003 "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=",
7452 "dev": true 8004 "dev": true
7453 }, 8005 },
  8006 + "path-proxy": {
  8007 + "version": "1.0.0",
  8008 + "resolved": "https://registry.npmjs.org/path-proxy/-/path-proxy-1.0.0.tgz",
  8009 + "integrity": "sha1-GOijaFn8nS8aU7SN7hOFQ8Ag3l4=",
  8010 + "dev": true,
  8011 + "optional": true,
  8012 + "requires": {
  8013 + "inflection": "~1.3.0"
  8014 + },
  8015 + "dependencies": {
  8016 + "inflection": {
  8017 + "version": "1.3.8",
  8018 + "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.3.8.tgz",
  8019 + "integrity": "sha1-y9Fg2p91sUw8xjV41POWeEvzAU4=",
  8020 + "dev": true,
  8021 + "optional": true
  8022 + }
  8023 + }
  8024 + },
7454 "path-to-regexp": { 8025 "path-to-regexp": {
7455 "version": "0.1.7", 8026 "version": "0.1.7",
7456 "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", 8027 "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
@@ -7687,16 +8258,27 @@ @@ -7687,16 +8258,27 @@
7687 "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", 8258 "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=",
7688 "dev": true 8259 "dev": true
7689 }, 8260 },
  8261 + "promisify-call": {
  8262 + "version": "2.0.4",
  8263 + "resolved": "https://registry.npmjs.org/promisify-call/-/promisify-call-2.0.4.tgz",
  8264 + "integrity": "sha1-1IwtRWUszM1SgB3ey9UzptS9X7o=",
  8265 + "dev": true,
  8266 + "optional": true,
  8267 + "requires": {
  8268 + "with-callback": "^1.0.2"
  8269 + }
  8270 + },
7690 "protractor": { 8271 "protractor": {
7691 - "version": "5.3.2",  
7692 - "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.3.2.tgz",  
7693 - "integrity": "sha512-pw4uwwiy5lHZjIguxNpkEwJJa7hVz+bJsvaTI+IbXlfn2qXwzbF8eghW/RmrZwE2sGx82I8etb8lVjQ+JrjejA==", 8272 + "version": "5.4.0",
  8273 + "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.0.tgz",
  8274 + "integrity": "sha512-6TSYqMhUUzxr4/wN0ttSISqPMKvcVRXF4k8jOEpGWD8OioLak4KLgfzHK9FJ49IrjzRrZ+Mx1q2Op8Rk0zEcnQ==",
7694 "dev": true, 8275 "dev": true,
7695 "requires": { 8276 "requires": {
7696 "@types/node": "^6.0.46", 8277 "@types/node": "^6.0.46",
7697 "@types/q": "^0.0.32", 8278 "@types/q": "^0.0.32",
7698 - "@types/selenium-webdriver": "~2.53.39", 8279 + "@types/selenium-webdriver": "^3.0.0",
7699 "blocking-proxy": "^1.0.0", 8280 "blocking-proxy": "^1.0.0",
  8281 + "browserstack": "^1.5.1",
7700 "chalk": "^1.1.3", 8282 "chalk": "^1.1.3",
7701 "glob": "^7.0.3", 8283 "glob": "^7.0.3",
7702 "jasmine": "2.8.0", 8284 "jasmine": "2.8.0",
@@ -7706,20 +8288,14 @@ @@ -7706,20 +8288,14 @@
7706 "saucelabs": "^1.5.0", 8288 "saucelabs": "^1.5.0",
7707 "selenium-webdriver": "3.6.0", 8289 "selenium-webdriver": "3.6.0",
7708 "source-map-support": "~0.4.0", 8290 "source-map-support": "~0.4.0",
7709 - "webdriver-js-extender": "^1.0.0", 8291 + "webdriver-js-extender": "2.0.0",
7710 "webdriver-manager": "^12.0.6" 8292 "webdriver-manager": "^12.0.6"
7711 }, 8293 },
7712 "dependencies": { 8294 "dependencies": {
7713 "@types/node": { 8295 "@types/node": {
7714 - "version": "6.0.113",  
7715 - "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.113.tgz",  
7716 - "integrity": "sha512-f9XXUWFqryzjkZA1EqFvJHSFyqyasV17fq8zCDIzbRV4ctL7RrJGKvG+lcex86Rjbzd1GrER9h9VmF5sSjV0BQ==",  
7717 - "dev": true  
7718 - },  
7719 - "adm-zip": {  
7720 - "version": "0.4.11",  
7721 - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz",  
7722 - "integrity": "sha512-L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==", 8296 + "version": "6.0.116",
  8297 + "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.116.tgz",
  8298 + "integrity": "sha512-vToa8YEeulfyYg1gSOeHjvvIRqrokng62VMSj2hoZrwZNcYrp2h3AWo6KeBVuymIklQUaY5zgVJvVsC4KiiLkQ==",
7723 "dev": true 8299 "dev": true
7724 }, 8300 },
7725 "ansi-styles": { 8301 "ansi-styles": {
@@ -7798,19 +8374,19 @@ @@ -7798,19 +8374,19 @@
7798 "dev": true 8374 "dev": true
7799 }, 8375 },
7800 "webdriver-manager": { 8376 "webdriver-manager": {
7801 - "version": "12.0.6",  
7802 - "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.0.6.tgz",  
7803 - "integrity": "sha1-PfGkgZdwELTL+MnYXHpXeCjA5ws=", 8377 + "version": "12.1.0",
  8378 + "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.0.tgz",
  8379 + "integrity": "sha512-oEc5fmkpz6Yh6udhwir5m0eN5mgRPq9P/NU5YWuT3Up5slt6Zz+znhLU7q4+8rwCZz/Qq3Fgpr/4oao7NPCm2A==",
7804 "dev": true, 8380 "dev": true,
7805 "requires": { 8381 "requires": {
7806 - "adm-zip": "^0.4.7", 8382 + "adm-zip": "^0.4.9",
7807 "chalk": "^1.1.1", 8383 "chalk": "^1.1.1",
7808 "del": "^2.2.0", 8384 "del": "^2.2.0",
7809 "glob": "^7.0.3", 8385 "glob": "^7.0.3",
7810 "ini": "^1.3.4", 8386 "ini": "^1.3.4",
7811 "minimist": "^1.2.0", 8387 "minimist": "^1.2.0",
7812 "q": "^1.4.1", 8388 "q": "^1.4.1",
7813 - "request": "^2.78.0", 8389 + "request": "^2.87.0",
7814 "rimraf": "^2.5.2", 8390 "rimraf": "^2.5.2",
7815 "semver": "^5.3.0", 8391 "semver": "^5.3.0",
7816 "xml2js": "^0.4.17" 8392 "xml2js": "^0.4.17"
@@ -7828,6 +8404,42 @@ @@ -7828,6 +8404,42 @@
7828 "ipaddr.js": "1.6.0" 8404 "ipaddr.js": "1.6.0"
7829 } 8405 }
7830 }, 8406 },
  8407 + "proxy-agent": {
  8408 + "version": "3.0.1",
  8409 + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-3.0.1.tgz",
  8410 + "integrity": "sha512-mAZexaz9ZxQhYPWfAjzlrloEjW+JHiBFryE4AJXFDTnaXfmH/FKqC1swTRKuEPbHWz02flQNXFOyDUF7zfEG6A==",
  8411 + "dev": true,
  8412 + "optional": true,
  8413 + "requires": {
  8414 + "agent-base": "^4.2.0",
  8415 + "debug": "^3.1.0",
  8416 + "http-proxy-agent": "^2.1.0",
  8417 + "https-proxy-agent": "^2.2.1",
  8418 + "lru-cache": "^4.1.2",
  8419 + "pac-proxy-agent": "^2.0.1",
  8420 + "proxy-from-env": "^1.0.0",
  8421 + "socks-proxy-agent": "^4.0.1"
  8422 + },
  8423 + "dependencies": {
  8424 + "debug": {
  8425 + "version": "3.1.0",
  8426 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
  8427 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
  8428 + "dev": true,
  8429 + "optional": true,
  8430 + "requires": {
  8431 + "ms": "2.0.0"
  8432 + }
  8433 + }
  8434 + }
  8435 + },
  8436 + "proxy-from-env": {
  8437 + "version": "1.0.0",
  8438 + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz",
  8439 + "integrity": "sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4=",
  8440 + "dev": true,
  8441 + "optional": true
  8442 + },
7831 "prr": { 8443 "prr": {
7832 "version": "1.0.1", 8444 "version": "1.0.1",
7833 "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", 8445 "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz",
@@ -8119,6 +8731,32 @@ @@ -8119,6 +8731,32 @@
8119 "strip-indent": "^1.0.1" 8731 "strip-indent": "^1.0.1"
8120 } 8732 }
8121 }, 8733 },
  8734 + "redis": {
  8735 + "version": "2.8.0",
  8736 + "resolved": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz",
  8737 + "integrity": "sha512-M1OkonEQwtRmZv4tEWF2VgpG0JWJ8Fv1PhlgT5+B+uNq2cA3Rt1Yt/ryoR+vQNOQcIEgdCdfH0jr3bDpihAw1A==",
  8738 + "dev": true,
  8739 + "optional": true,
  8740 + "requires": {
  8741 + "double-ended-queue": "^2.1.0-0",
  8742 + "redis-commands": "^1.2.0",
  8743 + "redis-parser": "^2.6.0"
  8744 + }
  8745 + },
  8746 + "redis-commands": {
  8747 + "version": "1.3.5",
  8748 + "resolved": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.5.tgz",
  8749 + "integrity": "sha512-foGF8u6MXGFF++1TZVC6icGXuMYPftKXt1FBT2vrfU9ZATNtZJ8duRC5d1lEfE8hyVe3jhelHGB91oB7I6qLsA==",
  8750 + "dev": true,
  8751 + "optional": true
  8752 + },
  8753 + "redis-parser": {
  8754 + "version": "2.6.0",
  8755 + "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz",
  8756 + "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs=",
  8757 + "dev": true,
  8758 + "optional": true
  8759 + },
8122 "reflect-metadata": { 8760 "reflect-metadata": {
8123 "version": "0.1.12", 8761 "version": "0.1.12",
8124 "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.12.tgz", 8762 "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.12.tgz",
@@ -8272,6 +8910,28 @@ @@ -8272,6 +8910,28 @@
8272 "uuid": "^3.1.0" 8910 "uuid": "^3.1.0"
8273 } 8911 }
8274 }, 8912 },
  8913 + "requestretry": {
  8914 + "version": "1.13.0",
  8915 + "resolved": "https://registry.npmjs.org/requestretry/-/requestretry-1.13.0.tgz",
  8916 + "integrity": "sha512-Lmh9qMvnQXADGAQxsXHP4rbgO6pffCfuR8XUBdP9aitJcLQJxhp7YZK4xAVYXnPJ5E52mwrfiKQtKonPL8xsmg==",
  8917 + "dev": true,
  8918 + "optional": true,
  8919 + "requires": {
  8920 + "extend": "^3.0.0",
  8921 + "lodash": "^4.15.0",
  8922 + "request": "^2.74.0",
  8923 + "when": "^3.7.7"
  8924 + },
  8925 + "dependencies": {
  8926 + "when": {
  8927 + "version": "3.7.8",
  8928 + "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz",
  8929 + "integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I=",
  8930 + "dev": true,
  8931 + "optional": true
  8932 + }
  8933 + }
  8934 + },
8275 "require-directory": { 8935 "require-directory": {
8276 "version": "2.1.1", 8936 "version": "2.1.1",
8277 "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 8937 "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
@@ -8377,17 +9037,17 @@ @@ -8377,17 +9037,17 @@
8377 } 9037 }
8378 }, 9038 },
8379 "rxjs": { 9039 "rxjs": {
8380 - "version": "6.2.1",  
8381 - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.1.tgz",  
8382 - "integrity": "sha512-OwMxHxmnmHTUpgO+V7dZChf3Tixf4ih95cmXjzzadULziVl/FKhHScGLj4goEw9weePVOH2Q0+GcCBUhKCZc/g==", 9040 + "version": "6.2.2",
  9041 + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz",
  9042 + "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==",
8383 "requires": { 9043 "requires": {
8384 "tslib": "^1.9.0" 9044 "tslib": "^1.9.0"
8385 } 9045 }
8386 }, 9046 },
8387 "rxjs-compat": { 9047 "rxjs-compat": {
8388 - "version": "6.2.1",  
8389 - "resolved": "https://registry.npmjs.org/rxjs-compat/-/rxjs-compat-6.2.1.tgz",  
8390 - "integrity": "sha512-Pst0lkAwVodBbBOIZic9aM1vY9asJ2u8GfKN115+goIH83PAlizJDyvixuxPAuQ1UtkmBuro7+0PqKQ3PSkhEg==" 9048 + "version": "6.2.2",
  9049 + "resolved": "https://registry.npmjs.org/rxjs-compat/-/rxjs-compat-6.2.2.tgz",
  9050 + "integrity": "sha512-h113JzEXnqBd6JQ8TYg33oDuM3baZ9WKS49rtbMX0gBW2Kz0z4wDZ0/pCA0T9sRJM1HkZT6mt45gpYOJ2MqWYQ=="
8391 }, 9051 },
8392 "safe-buffer": { 9052 "safe-buffer": {
8393 "version": "5.1.2", 9053 "version": "5.1.2",
@@ -8764,6 +9424,16 @@ @@ -8764,6 +9424,16 @@
8764 "debug": "^2.2.0" 9424 "debug": "^2.2.0"
8765 } 9425 }
8766 }, 9426 },
  9427 + "slack-node": {
  9428 + "version": "0.2.0",
  9429 + "resolved": "https://registry.npmjs.org/slack-node/-/slack-node-0.2.0.tgz",
  9430 + "integrity": "sha1-3kuN3aqLeT9h29KTgQT9q/N9+jA=",
  9431 + "dev": true,
  9432 + "optional": true,
  9433 + "requires": {
  9434 + "requestretry": "^1.2.2"
  9435 + }
  9436 + },
8767 "slash": { 9437 "slash": {
8768 "version": "1.0.0", 9438 "version": "1.0.0",
8769 "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", 9439 "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
@@ -8776,6 +9446,23 @@ @@ -8776,6 +9446,23 @@
8776 "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", 9446 "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=",
8777 "dev": true 9447 "dev": true
8778 }, 9448 },
  9449 + "smart-buffer": {
  9450 + "version": "1.1.15",
  9451 + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz",
  9452 + "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=",
  9453 + "dev": true,
  9454 + "optional": true
  9455 + },
  9456 + "smtp-connection": {
  9457 + "version": "2.12.0",
  9458 + "resolved": "https://registry.npmjs.org/smtp-connection/-/smtp-connection-2.12.0.tgz",
  9459 + "integrity": "sha1-1275EnyyPCJZ7bHoNJwujV4tdME=",
  9460 + "dev": true,
  9461 + "requires": {
  9462 + "httpntlm": "1.6.1",
  9463 + "nodemailer-shared": "1.1.0"
  9464 + }
  9465 + },
8779 "snapdragon": { 9466 "snapdragon": {
8780 "version": "0.8.2", 9467 "version": "0.8.2",
8781 "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", 9468 "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
@@ -8893,143 +9580,70 @@ @@ -8893,143 +9580,70 @@
8893 } 9580 }
8894 }, 9581 },
8895 "socket.io": { 9582 "socket.io": {
8896 - "version": "1.7.3",  
8897 - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-1.7.3.tgz",  
8898 - "integrity": "sha1-uK+cq6AJSeVo42nxMn6pvp6iRhs=", 9583 + "version": "2.0.4",
  9584 + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.0.4.tgz",
  9585 + "integrity": "sha1-waRZDO/4fs8TxyZS8Eb3FrKeYBQ=",
8899 "dev": true, 9586 "dev": true,
8900 "requires": { 9587 "requires": {
8901 - "debug": "2.3.3",  
8902 - "engine.io": "1.8.3",  
8903 - "has-binary": "0.1.7",  
8904 - "object-assign": "4.1.0",  
8905 - "socket.io-adapter": "0.5.0",  
8906 - "socket.io-client": "1.7.3",  
8907 - "socket.io-parser": "2.3.1"  
8908 - },  
8909 - "dependencies": {  
8910 - "debug": {  
8911 - "version": "2.3.3",  
8912 - "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",  
8913 - "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",  
8914 - "dev": true,  
8915 - "requires": {  
8916 - "ms": "0.7.2"  
8917 - }  
8918 - },  
8919 - "ms": {  
8920 - "version": "0.7.2",  
8921 - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",  
8922 - "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",  
8923 - "dev": true  
8924 - },  
8925 - "object-assign": {  
8926 - "version": "4.1.0",  
8927 - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz",  
8928 - "integrity": "sha1-ejs9DpgGPUP0wD8uiubNUahog6A=",  
8929 - "dev": true  
8930 - } 9588 + "debug": "~2.6.6",
  9589 + "engine.io": "~3.1.0",
  9590 + "socket.io-adapter": "~1.1.0",
  9591 + "socket.io-client": "2.0.4",
  9592 + "socket.io-parser": "~3.1.1"
8931 } 9593 }
8932 }, 9594 },
8933 "socket.io-adapter": { 9595 "socket.io-adapter": {
8934 - "version": "0.5.0",  
8935 - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-0.5.0.tgz",  
8936 - "integrity": "sha1-y21LuL7IHhB4uZZ3+c7QBGBmu4s=",  
8937 - "dev": true,  
8938 - "requires": {  
8939 - "debug": "2.3.3",  
8940 - "socket.io-parser": "2.3.1"  
8941 - },  
8942 - "dependencies": {  
8943 - "debug": {  
8944 - "version": "2.3.3",  
8945 - "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",  
8946 - "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",  
8947 - "dev": true,  
8948 - "requires": {  
8949 - "ms": "0.7.2"  
8950 - }  
8951 - },  
8952 - "ms": {  
8953 - "version": "0.7.2",  
8954 - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",  
8955 - "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",  
8956 - "dev": true  
8957 - }  
8958 - } 9596 + "version": "1.1.1",
  9597 + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz",
  9598 + "integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs=",
  9599 + "dev": true
8959 }, 9600 },
8960 "socket.io-client": { 9601 "socket.io-client": {
8961 - "version": "1.7.3",  
8962 - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-1.7.3.tgz",  
8963 - "integrity": "sha1-sw6GqhDV7zVGYBwJzeR2Xjgdo3c=", 9602 + "version": "2.0.4",
  9603 + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.4.tgz",
  9604 + "integrity": "sha1-CRilUkBtxeVAs4Dc2Xr8SmQzL44=",
8964 "dev": true, 9605 "dev": true,
8965 "requires": { 9606 "requires": {
8966 "backo2": "1.0.2", 9607 "backo2": "1.0.2",
  9608 + "base64-arraybuffer": "0.1.5",
8967 "component-bind": "1.0.0", 9609 "component-bind": "1.0.0",
8968 "component-emitter": "1.2.1", 9610 "component-emitter": "1.2.1",
8969 - "debug": "2.3.3",  
8970 - "engine.io-client": "1.8.3",  
8971 - "has-binary": "0.1.7", 9611 + "debug": "~2.6.4",
  9612 + "engine.io-client": "~3.1.0",
  9613 + "has-cors": "1.1.0",
8972 "indexof": "0.0.1", 9614 "indexof": "0.0.1",
8973 "object-component": "0.0.3", 9615 "object-component": "0.0.3",
  9616 + "parseqs": "0.0.5",
8974 "parseuri": "0.0.5", 9617 "parseuri": "0.0.5",
8975 - "socket.io-parser": "2.3.1", 9618 + "socket.io-parser": "~3.1.1",
8976 "to-array": "0.1.4" 9619 "to-array": "0.1.4"
8977 - },  
8978 - "dependencies": {  
8979 - "debug": {  
8980 - "version": "2.3.3",  
8981 - "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",  
8982 - "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",  
8983 - "dev": true,  
8984 - "requires": {  
8985 - "ms": "0.7.2"  
8986 - }  
8987 - },  
8988 - "ms": {  
8989 - "version": "0.7.2",  
8990 - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",  
8991 - "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",  
8992 - "dev": true  
8993 - }  
8994 } 9620 }
8995 }, 9621 },
8996 "socket.io-parser": { 9622 "socket.io-parser": {
8997 - "version": "2.3.1",  
8998 - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.3.1.tgz",  
8999 - "integrity": "sha1-3VMgJRA85Clpcya+/WQAX8/ltKA=", 9623 + "version": "3.1.3",
  9624 + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.1.3.tgz",
  9625 + "integrity": "sha512-g0a2HPqLguqAczs3dMECuA1RgoGFPyvDqcbaDEdCWY9g59kdUAz3YRmaJBNKXflrHNwB7Q12Gkf/0CZXfdHR7g==",
9000 "dev": true, 9626 "dev": true,
9001 "requires": { 9627 "requires": {
9002 - "component-emitter": "1.1.2",  
9003 - "debug": "2.2.0",  
9004 - "isarray": "0.0.1",  
9005 - "json3": "3.3.2" 9628 + "component-emitter": "1.2.1",
  9629 + "debug": "~3.1.0",
  9630 + "has-binary2": "~1.0.2",
  9631 + "isarray": "2.0.1"
9006 }, 9632 },
9007 "dependencies": { 9633 "dependencies": {
9008 - "component-emitter": {  
9009 - "version": "1.1.2",  
9010 - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz",  
9011 - "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=",  
9012 - "dev": true  
9013 - },  
9014 "debug": { 9634 "debug": {
9015 - "version": "2.2.0",  
9016 - "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz",  
9017 - "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", 9635 + "version": "3.1.0",
  9636 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
  9637 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
9018 "dev": true, 9638 "dev": true,
9019 "requires": { 9639 "requires": {
9020 - "ms": "0.7.1" 9640 + "ms": "2.0.0"
9021 } 9641 }
9022 }, 9642 },
9023 "isarray": { 9643 "isarray": {
9024 - "version": "0.0.1",  
9025 - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",  
9026 - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",  
9027 - "dev": true  
9028 - },  
9029 - "ms": {  
9030 - "version": "0.7.1",  
9031 - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",  
9032 - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", 9644 + "version": "2.0.1",
  9645 + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
  9646 + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=",
9033 "dev": true 9647 "dev": true
9034 } 9648 }
9035 } 9649 }
@@ -9069,6 +9683,48 @@ @@ -9069,6 +9683,48 @@
9069 } 9683 }
9070 } 9684 }
9071 }, 9685 },
  9686 + "socks": {
  9687 + "version": "1.1.10",
  9688 + "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz",
  9689 + "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=",
  9690 + "dev": true,
  9691 + "optional": true,
  9692 + "requires": {
  9693 + "ip": "^1.1.4",
  9694 + "smart-buffer": "^1.0.13"
  9695 + }
  9696 + },
  9697 + "socks-proxy-agent": {
  9698 + "version": "4.0.1",
  9699 + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.1.tgz",
  9700 + "integrity": "sha512-Kezx6/VBguXOsEe5oU3lXYyKMi4+gva72TwJ7pQY5JfqUx2nMk7NXA6z/mpNqIlfQjWYVfeuNvQjexiTaTn6Nw==",
  9701 + "dev": true,
  9702 + "optional": true,
  9703 + "requires": {
  9704 + "agent-base": "~4.2.0",
  9705 + "socks": "~2.2.0"
  9706 + },
  9707 + "dependencies": {
  9708 + "smart-buffer": {
  9709 + "version": "4.0.1",
  9710 + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.0.1.tgz",
  9711 + "integrity": "sha512-RFqinRVJVcCAL9Uh1oVqE6FZkqsyLiVOYEZ20TqIOjuX7iFVJ+zsbs4RIghnw/pTs7mZvt8ZHhvm1ZUrR4fykg==",
  9712 + "dev": true,
  9713 + "optional": true
  9714 + },
  9715 + "socks": {
  9716 + "version": "2.2.1",
  9717 + "resolved": "https://registry.npmjs.org/socks/-/socks-2.2.1.tgz",
  9718 + "integrity": "sha512-0GabKw7n9mI46vcNrVfs0o6XzWzjVa3h6GaSo2UPxtWAROXUWavfJWh1M4PR5tnE0dcnQXZIDFP4yrAysLze/w==",
  9719 + "dev": true,
  9720 + "optional": true,
  9721 + "requires": {
  9722 + "ip": "^1.1.5",
  9723 + "smart-buffer": "^4.0.1"
  9724 + }
  9725 + }
  9726 + }
  9727 + },
9072 "source-list-map": { 9728 "source-list-map": {
9073 "version": "2.0.0", 9729 "version": "2.0.0",
9074 "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz", 9730 "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz",
@@ -9305,6 +9961,29 @@ @@ -9305,6 +9961,29 @@
9305 "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", 9961 "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=",
9306 "dev": true 9962 "dev": true
9307 }, 9963 },
  9964 + "streamroller": {
  9965 + "version": "0.7.0",
  9966 + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-0.7.0.tgz",
  9967 + "integrity": "sha512-WREzfy0r0zUqp3lGO096wRuUp7ho1X6uo/7DJfTlEi0Iv/4gT7YHqXDjKC2ioVGBZtE8QzsQD9nx1nIuoZ57jQ==",
  9968 + "dev": true,
  9969 + "requires": {
  9970 + "date-format": "^1.2.0",
  9971 + "debug": "^3.1.0",
  9972 + "mkdirp": "^0.5.1",
  9973 + "readable-stream": "^2.3.0"
  9974 + },
  9975 + "dependencies": {
  9976 + "debug": {
  9977 + "version": "3.1.0",
  9978 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
  9979 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
  9980 + "dev": true,
  9981 + "requires": {
  9982 + "ms": "2.0.0"
  9983 + }
  9984 + }
  9985 + }
  9986 + },
9308 "string-width": { 9987 "string-width": {
9309 "version": "1.0.2", 9988 "version": "1.0.2",
9310 "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 9989 "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
@@ -9473,6 +10152,13 @@ @@ -9473,6 +10152,13 @@
9473 "xtend": "~4.0.1" 10152 "xtend": "~4.0.1"
9474 } 10153 }
9475 }, 10154 },
  10155 + "thunkify": {
  10156 + "version": "2.1.2",
  10157 + "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz",
  10158 + "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=",
  10159 + "dev": true,
  10160 + "optional": true
  10161 + },
9476 "thunky": { 10162 "thunky": {
9477 "version": "1.0.2", 10163 "version": "1.0.2",
9478 "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.2.tgz", 10164 "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.2.tgz",
@@ -9488,13 +10174,20 @@ @@ -9488,13 +10174,20 @@
9488 "setimmediate": "^1.0.4" 10174 "setimmediate": "^1.0.4"
9489 } 10175 }
9490 }, 10176 },
  10177 + "timespan": {
  10178 + "version": "2.3.0",
  10179 + "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz",
  10180 + "integrity": "sha1-SQLOBAvRPYRcj1myfp1ZutbzmSk=",
  10181 + "dev": true,
  10182 + "optional": true
  10183 + },
9491 "tmp": { 10184 "tmp": {
9492 - "version": "0.0.31",  
9493 - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz",  
9494 - "integrity": "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=", 10185 + "version": "0.0.33",
  10186 + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
  10187 + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
9495 "dev": true, 10188 "dev": true,
9496 "requires": { 10189 "requires": {
9497 - "os-tmpdir": "~1.0.1" 10190 + "os-tmpdir": "~1.0.2"
9498 } 10191 }
9499 }, 10192 },
9500 "to-array": { 10193 "to-array": {
@@ -9723,6 +10416,13 @@ @@ -9723,6 +10416,13 @@
9723 } 10416 }
9724 } 10417 }
9725 }, 10418 },
  10419 + "tsscmp": {
  10420 + "version": "1.0.6",
  10421 + "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz",
  10422 + "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==",
  10423 + "dev": true,
  10424 + "optional": true
  10425 + },
9726 "tsutils": { 10426 "tsutils": {
9727 "version": "2.27.1", 10427 "version": "2.27.1",
9728 "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.27.1.tgz", 10428 "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.27.1.tgz",
@@ -9851,9 +10551,15 @@ @@ -9851,9 +10551,15 @@
9851 } 10551 }
9852 }, 10552 },
9853 "ultron": { 10553 "ultron": {
9854 - "version": "1.0.2",  
9855 - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz",  
9856 - "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=", 10554 + "version": "1.1.1",
  10555 + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz",
  10556 + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==",
  10557 + "dev": true
  10558 + },
  10559 + "underscore": {
  10560 + "version": "1.7.0",
  10561 + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz",
  10562 + "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=",
9857 "dev": true 10563 "dev": true
9858 }, 10564 },
9859 "union-value": { 10565 "union-value": {
@@ -10045,13 +10751,21 @@ @@ -10045,13 +10751,21 @@
10045 } 10751 }
10046 }, 10752 },
10047 "useragent": { 10753 "useragent": {
10048 - "version": "2.3.0",  
10049 - "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz",  
10050 - "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", 10754 + "version": "2.2.1",
  10755 + "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.2.1.tgz",
  10756 + "integrity": "sha1-z1k+9PLRdYdei7ZY6pLhik/QbY4=",
10051 "dev": true, 10757 "dev": true,
10052 "requires": { 10758 "requires": {
10053 - "lru-cache": "4.1.x", 10759 + "lru-cache": "2.2.x",
10054 "tmp": "0.0.x" 10760 "tmp": "0.0.x"
  10761 + },
  10762 + "dependencies": {
  10763 + "lru-cache": {
  10764 + "version": "2.2.4",
  10765 + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.2.4.tgz",
  10766 + "integrity": "sha1-bGWGGb7PFAMdDQtZSxYELOTcBj0=",
  10767 + "dev": true
  10768 + }
10055 } 10769 }
10056 }, 10770 },
10057 "util": { 10771 "util": {
@@ -10097,6 +10811,13 @@ @@ -10097,6 +10811,13 @@
10097 "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", 10811 "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==",
10098 "dev": true 10812 "dev": true
10099 }, 10813 },
  10814 + "uws": {
  10815 + "version": "9.14.0",
  10816 + "resolved": "https://registry.npmjs.org/uws/-/uws-9.14.0.tgz",
  10817 + "integrity": "sha512-HNMztPP5A1sKuVFmdZ6BPVpBQd5bUjNC8EFMFiICK+oho/OQsAJy5hnIx4btMHiOk8j04f/DbIlqnEZ9d72dqg==",
  10818 + "dev": true,
  10819 + "optional": true
  10820 + },
10100 "validate-npm-package-license": { 10821 "validate-npm-package-license": {
10101 "version": "3.0.3", 10822 "version": "3.0.3",
10102 "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", 10823 "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz",
@@ -10182,50 +10903,13 @@ @@ -10182,50 +10903,13 @@
10182 } 10903 }
10183 }, 10904 },
10184 "webdriver-js-extender": { 10905 "webdriver-js-extender": {
10185 - "version": "1.0.0",  
10186 - "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-1.0.0.tgz",  
10187 - "integrity": "sha1-gcUzqeM9W/tZe05j4s2yW1R3dRU=", 10906 + "version": "2.0.0",
  10907 + "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.0.0.tgz",
  10908 + "integrity": "sha512-fbyKiVu3azzIc5d4+26YfuPQcFTlgFQV5yQ/0OQj4Ybkl4g1YQuIPskf5v5wqwRJhHJnPHthB6tqCjWHOKLWag==",
10188 "dev": true, 10909 "dev": true,
10189 "requires": { 10910 "requires": {
10190 - "@types/selenium-webdriver": "^2.53.35",  
10191 - "selenium-webdriver": "^2.53.2"  
10192 - },  
10193 - "dependencies": {  
10194 - "sax": {  
10195 - "version": "0.6.1",  
10196 - "resolved": "https://registry.npmjs.org/sax/-/sax-0.6.1.tgz",  
10197 - "integrity": "sha1-VjsZx8HeiS4Jv8Ty/DDjwn8JUrk=",  
10198 - "dev": true  
10199 - },  
10200 - "selenium-webdriver": {  
10201 - "version": "2.53.3",  
10202 - "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-2.53.3.tgz",  
10203 - "integrity": "sha1-0p/1qVff8aG0ncRXdW5OS/vc4IU=",  
10204 - "dev": true,  
10205 - "requires": {  
10206 - "adm-zip": "0.4.4",  
10207 - "rimraf": "^2.2.8",  
10208 - "tmp": "0.0.24",  
10209 - "ws": "^1.0.1",  
10210 - "xml2js": "0.4.4"  
10211 - }  
10212 - },  
10213 - "tmp": {  
10214 - "version": "0.0.24",  
10215 - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.24.tgz",  
10216 - "integrity": "sha1-1qXhmNFKmDXMby18PZ4wJCjIzxI=",  
10217 - "dev": true  
10218 - },  
10219 - "xml2js": {  
10220 - "version": "0.4.4",  
10221 - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.4.tgz",  
10222 - "integrity": "sha1-MREBAAMAiuGSQOuhdJe1fHKcVV0=",  
10223 - "dev": true,  
10224 - "requires": {  
10225 - "sax": "0.6.x",  
10226 - "xmlbuilder": ">=1.0.0"  
10227 - }  
10228 - } 10911 + "@types/selenium-webdriver": "^3.0.0",
  10912 + "selenium-webdriver": "^3.0.1"
10229 } 10913 }
10230 }, 10914 },
10231 "webpack": { 10915 "webpack": {
@@ -10570,6 +11254,13 @@ @@ -10570,6 +11254,13 @@
10570 "dev": true, 11254 "dev": true,
10571 "optional": true 11255 "optional": true
10572 }, 11256 },
  11257 + "with-callback": {
  11258 + "version": "1.0.2",
  11259 + "resolved": "https://registry.npmjs.org/with-callback/-/with-callback-1.0.2.tgz",
  11260 + "integrity": "sha1-oJYpuakgAo1yFAT7Q1vc/1yRvCE=",
  11261 + "dev": true,
  11262 + "optional": true
  11263 + },
10573 "wordwrap": { 11264 "wordwrap": {
10574 "version": "1.0.0", 11265 "version": "1.0.0",
10575 "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", 11266 "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
@@ -10602,21 +11293,16 @@ @@ -10602,21 +11293,16 @@
10602 "dev": true 11293 "dev": true
10603 }, 11294 },
10604 "ws": { 11295 "ws": {
10605 - "version": "1.1.2",  
10606 - "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.2.tgz",  
10607 - "integrity": "sha1-iiRPoFJAHgjJiGz0SoUYnh/UBn8=", 11296 + "version": "3.3.3",
  11297 + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz",
  11298 + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==",
10608 "dev": true, 11299 "dev": true,
10609 "requires": { 11300 "requires": {
10610 - "options": ">=0.0.5",  
10611 - "ultron": "1.0.x" 11301 + "async-limiter": "~1.0.0",
  11302 + "safe-buffer": "~5.1.0",
  11303 + "ultron": "~1.1.0"
10612 } 11304 }
10613 }, 11305 },
10614 - "wtf-8": {  
10615 - "version": "1.0.0",  
10616 - "resolved": "https://registry.npmjs.org/wtf-8/-/wtf-8-1.0.0.tgz",  
10617 - "integrity": "sha1-OS2LotDxw00e4tYw8V0O+2jhBIo=",  
10618 - "dev": true  
10619 - },  
10620 "xml2js": { 11306 "xml2js": {
10621 "version": "0.4.19", 11307 "version": "0.4.19",
10622 "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", 11308 "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz",
@@ -10642,11 +11328,18 @@ @@ -10642,11 +11328,18 @@
10642 "dev": true 11328 "dev": true
10643 }, 11329 },
10644 "xmlhttprequest-ssl": { 11330 "xmlhttprequest-ssl": {
10645 - "version": "1.5.3",  
10646 - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.3.tgz",  
10647 - "integrity": "sha1-GFqIjATspGw+QHDZn3tJ3jUomS0=", 11331 + "version": "1.5.5",
  11332 + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz",
  11333 + "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=",
10648 "dev": true 11334 "dev": true
10649 }, 11335 },
  11336 + "xregexp": {
  11337 + "version": "2.0.0",
  11338 + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz",
  11339 + "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=",
  11340 + "dev": true,
  11341 + "optional": true
  11342 + },
10650 "xtend": { 11343 "xtend": {
10651 "version": "4.0.1", 11344 "version": "4.0.1",
10652 "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 11345 "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
@@ -22,15 +22,14 @@ @@ -22,15 +22,14 @@
22 "@angular/router": "^6.0.3", 22 "@angular/router": "^6.0.3",
23 "core-js": "^2.5.4", 23 "core-js": "^2.5.4",
24 "moment": "^2.22.2", 24 "moment": "^2.22.2",
25 - "rxjs": "^6.2.1",  
26 - "rxjs-compat": "^6.2.1", 25 + "rxjs": "^6.2.2",
  26 + "rxjs-compat": "^6.2.2",
27 "zone.js": "^0.8.26" 27 "zone.js": "^0.8.26"
28 }, 28 },
29 "devDependencies": { 29 "devDependencies": {
30 - "@angular/compiler-cli": "^6.0.3",  
31 "@angular-devkit/build-angular": "~0.6.8", 30 "@angular-devkit/build-angular": "~0.6.8",
32 - "typescript": "~2.7.2",  
33 "@angular/cli": "~6.0.8", 31 "@angular/cli": "~6.0.8",
  32 + "@angular/compiler-cli": "^6.0.3",
34 "@angular/language-service": "^6.0.3", 33 "@angular/language-service": "^6.0.3",
35 "@types/jasmine": "~2.8.6", 34 "@types/jasmine": "~2.8.6",
36 "@types/jasminewd2": "~2.0.3", 35 "@types/jasminewd2": "~2.0.3",
@@ -38,13 +37,14 @@ @@ -38,13 +37,14 @@
38 "codelyzer": "~4.2.1", 37 "codelyzer": "~4.2.1",
39 "jasmine-core": "~2.99.1", 38 "jasmine-core": "~2.99.1",
40 "jasmine-spec-reporter": "~4.2.1", 39 "jasmine-spec-reporter": "~4.2.1",
41 - "karma": "~1.7.1", 40 + "karma": "^2.0.5",
42 "karma-chrome-launcher": "~2.2.0", 41 "karma-chrome-launcher": "~2.2.0",
43 "karma-coverage-istanbul-reporter": "~2.0.0", 42 "karma-coverage-istanbul-reporter": "~2.0.0",
44 "karma-jasmine": "~1.1.1", 43 "karma-jasmine": "~1.1.1",
45 "karma-jasmine-html-reporter": "^0.2.2", 44 "karma-jasmine-html-reporter": "^0.2.2",
46 - "protractor": "~5.3.0", 45 + "protractor": "^5.4.0",
47 "ts-node": "~5.0.1", 46 "ts-node": "~5.0.1",
48 - "tslint": "~5.9.1" 47 + "tslint": "~5.9.1",
  48 + "typescript": "~2.7.2"
49 } 49 }
50 } 50 }
src/app/dashboard/dashboard.component.ts
@@ -92,7 +92,9 @@ export class DashboardComponent implements OnInit { @@ -92,7 +92,9 @@ export class DashboardComponent implements OnInit {
92 Show9: any = []; 92 Show9: any = [];
93 Show9Onhold: any = []; 93 Show9Onhold: any = [];
94 94
95 - ShowNull:any = []; 95 + ShowNull: any = [];
  96 +
  97 + // tslint:disable-next-line:member-ordering
96 ButtonValue = [ 98 ButtonValue = [
97 { 99 {
98 id: 33, 100 id: 33,
@@ -336,7 +338,7 @@ export class DashboardComponent implements OnInit { @@ -336,7 +338,7 @@ export class DashboardComponent implements OnInit {
336 // summary = {}; 338 // summary = {};
337 Type9: any = []; 339 Type9: any = [];
338 Type7: any = []; 340 Type7: any = [];
339 - NumType9: number = 0; 341 + NumType9 = 0;
340 ShowType: any = []; 342 ShowType: any = [];
341 sum: any = []; 343 sum: any = [];
342 sum1: any = []; 344 sum1: any = [];
@@ -349,15 +351,15 @@ export class DashboardComponent implements OnInit { @@ -349,15 +351,15 @@ export class DashboardComponent implements OnInit {
349 // } 351 // }
350 352
351 async ngOnInit() { 353 async ngOnInit() {
352 - //----------------------------1------------------------ 354 + // ----------------------------1------------------------
353 // Active 355 // Active
354 try { 356 try {
355 const data = { 357 const data = {
356 // tslint:disable-next-line:max-line-length 358 // tslint:disable-next-line:max-line-length
357 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
358 - "params": ["vtiger_crmentity"] 359 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  360 + 'params': ['vtiger_crmentity']
359 }; 361 };
360 - let response = await this._apiService.post('dynamic', data); 362 + const response = await this._apiService.post('dynamic', data);
361 if (response !== null) { 363 if (response !== null) {
362 this.resultData = response; 364 this.resultData = response;
363 this.resultData.link = decodeURIComponent(decodeURIComponent(this.resultData.link)); 365 this.resultData.link = decodeURIComponent(decodeURIComponent(this.resultData.link));
@@ -383,14 +385,14 @@ export class DashboardComponent implements OnInit { @@ -383,14 +385,14 @@ export class DashboardComponent implements OnInit {
383 }, 600000); 385 }, 600000);
384 386
385 387
386 - //OnHold 388 + // OnHold
387 try { 389 try {
388 const dataOnHold = { 390 const dataOnHold = {
389 // tslint:disable-next-line:max-line-length 391 // tslint:disable-next-line:max-line-length
390 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'SET (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
391 - "params": ["vtiger_crmentity"] 392 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'SET (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  393 + 'params': ['vtiger_crmentity']
392 }; 394 };
393 - let response = await this._apiService.post('dynamic', dataOnHold); 395 + const response = await this._apiService.post('dynamic', dataOnHold);
394 if (response !== null) { 396 if (response !== null) {
395 this.resultDataOnHold = response; 397 this.resultDataOnHold = response;
396 this.resultDataOnHold.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold.link)); 398 this.resultDataOnHold.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold.link));
@@ -414,15 +416,15 @@ export class DashboardComponent implements OnInit { @@ -414,15 +416,15 @@ export class DashboardComponent implements OnInit {
414 416
415 417
416 418
417 - //----------------------------2------------------------ 419 + // ----------------------------2------------------------
418 // Active 420 // Active
419 try { 421 try {
420 const data2 = { 422 const data2 = {
421 // tslint:disable-next-line:max-line-length 423 // tslint:disable-next-line:max-line-length
422 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'RND (Renovate)' AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
423 - "params": ["vtiger_crmentity"] 424 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'RND (Renovate)\' AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  425 + 'params': ['vtiger_crmentity']
424 }; 426 };
425 - let response = await this._apiService.post('dynamic', data2); 427 + const response = await this._apiService.post('dynamic', data2);
426 if (response !== null) { 428 if (response !== null) {
427 this.resultData2 = response; 429 this.resultData2 = response;
428 this.resultData2.link = decodeURIComponent(decodeURIComponent(this.resultData2.link)); 430 this.resultData2.link = decodeURIComponent(decodeURIComponent(this.resultData2.link));
@@ -446,14 +448,14 @@ export class DashboardComponent implements OnInit { @@ -446,14 +448,14 @@ export class DashboardComponent implements OnInit {
446 }, 600000); 448 }, 600000);
447 449
448 450
449 - //OnHold 451 + // OnHold
450 try { 452 try {
451 const dataOnHold2 = { 453 const dataOnHold2 = {
452 // tslint:disable-next-line:max-line-length 454 // tslint:disable-next-line:max-line-length
453 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'RND (Renovate)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
454 - "params": ["vtiger_crmentity"] 455 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'RND (Renovate)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  456 + 'params': ['vtiger_crmentity']
455 }; 457 };
456 - let response = await this._apiService.post('dynamic', dataOnHold2); 458 + const response = await this._apiService.post('dynamic', dataOnHold2);
457 if (response !== null) { 459 if (response !== null) {
458 this.resultDataOnHold2 = response; 460 this.resultDataOnHold2 = response;
459 this.resultDataOnHold2.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold2.link)); 461 this.resultDataOnHold2.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold2.link));
@@ -475,15 +477,15 @@ export class DashboardComponent implements OnInit { @@ -475,15 +477,15 @@ export class DashboardComponent implements OnInit {
475 await this.getDataOnHold2(); 477 await this.getDataOnHold2();
476 478
477 }, 600000); 479 }, 600000);
478 - //----------------------------3------------------------ 480 + // ----------------------------3------------------------
479 // Active 481 // Active
480 try { 482 try {
481 const data3 = { 483 const data3 = {
482 // tslint:disable-next-line:max-line-length 484 // tslint:disable-next-line:max-line-length
483 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('SDE (Site Down บ่อย)','SDN (Site Down Reset แล้วใช้งานไม่ได้)') AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
484 - "params": ["vtiger_crmentity"] 485 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'SDE (Site Down บ่อย)\',\'SDN (Site Down Reset แล้วใช้งานไม่ได้)\') AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  486 + 'params': ['vtiger_crmentity']
485 }; 487 };
486 - let response = await this._apiService.post('dynamic', data3); 488 + const response = await this._apiService.post('dynamic', data3);
487 if (response !== null) { 489 if (response !== null) {
488 this.resultData3 = response; 490 this.resultData3 = response;
489 console.log(this.resultData3); 491 console.log(this.resultData3);
@@ -508,14 +510,14 @@ export class DashboardComponent implements OnInit { @@ -508,14 +510,14 @@ export class DashboardComponent implements OnInit {
508 }, 600000); 510 }, 600000);
509 511
510 512
511 - //OnHold 513 + // OnHold
512 try { 514 try {
513 const dataOnHold3 = { 515 const dataOnHold3 = {
514 // tslint:disable-next-line:max-line-length 516 // tslint:disable-next-line:max-line-length
515 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('SDE (Site Down บ่อย)','SDN (Site Down Reset แล้วใช้งานไม่ได้)') AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
516 - "params": ["vtiger_crmentity"] 517 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'SDE (Site Down บ่อย)\',\'SDN (Site Down Reset แล้วใช้งานไม่ได้)\') AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  518 + 'params': ['vtiger_crmentity']
517 }; 519 };
518 - let response = await this._apiService.post('dynamic', dataOnHold3); 520 + const response = await this._apiService.post('dynamic', dataOnHold3);
519 if (response !== null) { 521 if (response !== null) {
520 this.resultDataOnHold3 = response; 522 this.resultDataOnHold3 = response;
521 this.resultDataOnHold3.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold3.link)); 523 this.resultDataOnHold3.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold3.link));
@@ -537,14 +539,14 @@ export class DashboardComponent implements OnInit { @@ -537,14 +539,14 @@ export class DashboardComponent implements OnInit {
537 await this.getDataOnHold3(); 539 await this.getDataOnHold3();
538 }, 600000); 540 }, 600000);
539 541
540 - //----------------------------4------------------------ 542 + // ----------------------------4------------------------
541 try { 543 try {
542 const data4 = { 544 const data4 = {
543 // tslint:disable-next-line:max-line-length 545 // tslint:disable-next-line:max-line-length
544 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('ADE (AP Down มีปัญหาบ่อย)','APD (อุปกรณ์กระจายสัญญาณขัดข้อง)') AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
545 - "params": ["vtiger_crmentity"] 546 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'ADE (AP Down มีปัญหาบ่อย)\',\'APD (อุปกรณ์กระจายสัญญาณขัดข้อง)\') AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  547 + 'params': ['vtiger_crmentity']
546 }; 548 };
547 - let response = await this._apiService.post('dynamic', data4); 549 + const response = await this._apiService.post('dynamic', data4);
548 if (response !== null) { 550 if (response !== null) {
549 this.resultData4 = response; 551 this.resultData4 = response;
550 this.resultData4.link = decodeURIComponent(decodeURIComponent(this.resultData4.link)); 552 this.resultData4.link = decodeURIComponent(decodeURIComponent(this.resultData4.link));
@@ -568,14 +570,14 @@ export class DashboardComponent implements OnInit { @@ -568,14 +570,14 @@ export class DashboardComponent implements OnInit {
568 }, 600000); 570 }, 600000);
569 571
570 572
571 - //OnHold 573 + // OnHold
572 try { 574 try {
573 const dataOnHold4 = { 575 const dataOnHold4 = {
574 // tslint:disable-next-line:max-line-length 576 // tslint:disable-next-line:max-line-length
575 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('ADE (AP Down มีปัญหาบ่อย)','APD (อุปกรณ์กระจายสัญญาณขัดข้อง)') AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
576 - "params": ["vtiger_crmentity"] 577 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'ADE (AP Down มีปัญหาบ่อย)\',\'APD (อุปกรณ์กระจายสัญญาณขัดข้อง)\') AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  578 + 'params': ['vtiger_crmentity']
577 }; 579 };
578 - let response = await this._apiService.post('dynamic', dataOnHold4); 580 + const response = await this._apiService.post('dynamic', dataOnHold4);
579 if (response !== null) { 581 if (response !== null) {
580 this.resultDataOnHold4 = response; 582 this.resultDataOnHold4 = response;
581 this.resultDataOnHold4.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold4.link)); 583 this.resultDataOnHold4.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold4.link));
@@ -597,14 +599,14 @@ export class DashboardComponent implements OnInit { @@ -597,14 +599,14 @@ export class DashboardComponent implements OnInit {
597 await this.getDataOnHold4(); 599 await this.getDataOnHold4();
598 600
599 }, 600000); 601 }, 600000);
600 - //----------------------------5------------------------ 602 + // ----------------------------5------------------------
601 try { 603 try {
602 const data5 = { 604 const data5 = {
603 // tslint:disable-next-line:max-line-length 605 // tslint:disable-next-line:max-line-length
604 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('BNW (ตรวจสอบความเร็วเน็ต)','NDS (บางเส้นมีปัญหา Offline, Unplug)','NED (เนตหลุดบ่อย)','NES (Internet ช้า)','NET (Set Internet)') AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
605 - "params": ["vtiger_crmentity"] 606 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'BNW (ตรวจสอบความเร็วเน็ต)\',\'NDS (บางเส้นมีปัญหา Offline, Unplug)\',\'NED (เนตหลุดบ่อย)\',\'NES (Internet ช้า)\',\'NET (Set Internet)\') AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  607 + 'params': ['vtiger_crmentity']
606 }; 608 };
607 - let response = await this._apiService.post('dynamic', data5); 609 + const response = await this._apiService.post('dynamic', data5);
608 if (response !== null) { 610 if (response !== null) {
609 this.resultData5 = response; 611 this.resultData5 = response;
610 this.resultData5.link = decodeURIComponent(decodeURIComponent(this.resultData5.link)); 612 this.resultData5.link = decodeURIComponent(decodeURIComponent(this.resultData5.link));
@@ -628,14 +630,14 @@ export class DashboardComponent implements OnInit { @@ -628,14 +630,14 @@ export class DashboardComponent implements OnInit {
628 }, 600000); 630 }, 600000);
629 631
630 632
631 - //OnHold 633 + // OnHold
632 try { 634 try {
633 const dataOnHold5 = { 635 const dataOnHold5 = {
634 // tslint:disable-next-line:max-line-length 636 // tslint:disable-next-line:max-line-length
635 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('BNW (ตรวจสอบความเร็วเน็ต)','NDS (บางเส้นมีปัญหา Offline, Unplug)','NED (เนตหลุดบ่อย)','NES (Internet ช้า)','NET (Set Internet)') AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
636 - "params": ["vtiger_crmentity"] 637 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'BNW (ตรวจสอบความเร็วเน็ต)\',\'NDS (บางเส้นมีปัญหา Offline, Unplug)\',\'NED (เนตหลุดบ่อย)\',\'NES (Internet ช้า)\',\'NET (Set Internet)\') AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  638 + 'params': ['vtiger_crmentity']
637 }; 639 };
638 - let response = await this._apiService.post('dynamic', dataOnHold5); 640 + const response = await this._apiService.post('dynamic', dataOnHold5);
639 if (response !== null) { 641 if (response !== null) {
640 this.resultDataOnHold5 = response; 642 this.resultDataOnHold5 = response;
641 this.resultDataOnHold5.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold5.link)); 643 this.resultDataOnHold5.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold5.link));
@@ -656,14 +658,14 @@ export class DashboardComponent implements OnInit { @@ -656,14 +658,14 @@ export class DashboardComponent implements OnInit {
656 setInterval(async () => { 658 setInterval(async () => {
657 await this.getDataOnHold5(); 659 await this.getDataOnHold5();
658 }, 600000); 660 }, 600000);
659 - //----------------------------6------------------------ 661 + // ----------------------------6------------------------
660 try { 662 try {
661 const data6 = { 663 const data6 = {
662 // tslint:disable-next-line:max-line-length 664 // tslint:disable-next-line:max-line-length
663 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'CUS (ตรวจสอบเครื่องลูกค้า)' AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
664 - "params": ["vtiger_crmentity"] 665 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'CUS (ตรวจสอบเครื่องลูกค้า)\' AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  666 + 'params': ['vtiger_crmentity']
665 }; 667 };
666 - let response = await this._apiService.post('dynamic', data6); 668 + const response = await this._apiService.post('dynamic', data6);
667 if (response !== null) { 669 if (response !== null) {
668 this.resultData6 = response; 670 this.resultData6 = response;
669 this.resultData6.link = decodeURIComponent(decodeURIComponent(this.resultData6.link)); 671 this.resultData6.link = decodeURIComponent(decodeURIComponent(this.resultData6.link));
@@ -687,14 +689,14 @@ export class DashboardComponent implements OnInit { @@ -687,14 +689,14 @@ export class DashboardComponent implements OnInit {
687 }, 600000); 689 }, 600000);
688 690
689 691
690 - //OnHold 692 + // OnHold
691 try { 693 try {
692 const dataOnHold6 = { 694 const dataOnHold6 = {
693 // tslint:disable-next-line:max-line-length 695 // tslint:disable-next-line:max-line-length
694 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'CUS (ตรวจสอบเครื่องลูกค้า)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
695 - "params": ["vtiger_crmentity"] 696 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'CUS (ตรวจสอบเครื่องลูกค้า)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  697 + 'params': ['vtiger_crmentity']
696 }; 698 };
697 - let response = await this._apiService.post('dynamic', dataOnHold6); 699 + const response = await this._apiService.post('dynamic', dataOnHold6);
698 if (response !== null) { 700 if (response !== null) {
699 this.resultDataOnHold6 = response; 701 this.resultDataOnHold6 = response;
700 this.resultDataOnHold6.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold6.link)); 702 this.resultDataOnHold6.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold6.link));
@@ -720,8 +722,8 @@ export class DashboardComponent implements OnInit { @@ -720,8 +722,8 @@ export class DashboardComponent implements OnInit {
720 try { 722 try {
721 const data7 = { 723 const data7 = {
722 // tslint:disable-next-line:max-line-length 724 // tslint:disable-next-line:max-line-length
723 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) NOT IN('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
724 - "params": ["vtiger_crmentity"] 725 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) NOT IN(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  726 + 'params': ['vtiger_crmentity']
725 }; 727 };
726 const response = await this._apiService.post('dynamic', data7); 728 const response = await this._apiService.post('dynamic', data7);
727 if (response !== null) { 729 if (response !== null) {
@@ -806,8 +808,8 @@ export class DashboardComponent implements OnInit { @@ -806,8 +808,8 @@ export class DashboardComponent implements OnInit {
806 try { 808 try {
807 const dataOnHold7 = { 809 const dataOnHold7 = {
808 // tslint:disable-next-line:max-line-length 810 // tslint:disable-next-line:max-line-length
809 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
810 - "params": ["vtiger_crmentity"] 811 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  812 + 'params': ['vtiger_crmentity']
811 }; 813 };
812 const response = await this._apiService.post('dynamic', dataOnHold7); 814 const response = await this._apiService.post('dynamic', dataOnHold7);
813 if (response !== null) { 815 if (response !== null) {
@@ -836,8 +838,8 @@ export class DashboardComponent implements OnInit { @@ -836,8 +838,8 @@ export class DashboardComponent implements OnInit {
836 try { 838 try {
837 const data8 = { 839 const data8 = {
838 // tslint:disable-next-line:max-line-length 840 // tslint:disable-next-line:max-line-length
839 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'ITS (SmartIT)' AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
840 - "params": ["vtiger_crmentity"] 841 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'ITS (SmartIT)\' AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  842 + 'params': ['vtiger_crmentity']
841 }; 843 };
842 const response = await this._apiService.post('dynamic', data8); 844 const response = await this._apiService.post('dynamic', data8);
843 if (response !== null) { 845 if (response !== null) {
@@ -852,7 +854,7 @@ try { @@ -852,7 +854,7 @@ try {
852 } 854 }
853 855
854 // this.Show = Object.assign(this.resultData7); 856 // this.Show = Object.assign(this.resultData7);
855 - console.log('hi', this.Show7) 857 + console.log('hi', this.Show7);
856 858
857 } else { 859 } else {
858 this.resultData8 = []; 860 this.resultData8 = [];
@@ -870,8 +872,8 @@ setInterval(async () => { @@ -870,8 +872,8 @@ setInterval(async () => {
870 try { 872 try {
871 const dataOnHold8 = { 873 const dataOnHold8 = {
872 // tslint:disable-next-line:max-line-length 874 // tslint:disable-next-line:max-line-length
873 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'ITS (SmartIT)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
874 - "params": ["vtiger_crmentity"] 875 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'ITS (SmartIT)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  876 + 'params': ['vtiger_crmentity']
875 }; 877 };
876 const response = await this._apiService.post('dynamic', dataOnHold8); 878 const response = await this._apiService.post('dynamic', dataOnHold8);
877 if (response !== null) { 879 if (response !== null) {
@@ -898,24 +900,24 @@ setInterval(async () => { @@ -898,24 +900,24 @@ setInterval(async () => {
898 try { 900 try {
899 const data9 = { 901 const data9 = {
900 // tslint:disable-next-line:max-line-length 902 // tslint:disable-next-line:max-line-length
901 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) NOT IN('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid HAVING days2 > 2 ORDER BY vtiger_crmentity.modifiedtime ASC",  
902 - "params": ["vtiger_crmentity"] 903 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) NOT IN(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid HAVING days2 > 2 ORDER BY vtiger_crmentity.modifiedtime ASC',
  904 + 'params': ['vtiger_crmentity']
903 }; 905 };
904 const response = await this._apiService.post('dynamic', data9); 906 const response = await this._apiService.post('dynamic', data9);
905 if (response !== null) { 907 if (response !== null) {
906 - var t9 =[];  
907 -  
908 - var obj = {  
909 - name:'',  
910 - value:0  
911 - } 908 + const t9 = [];
  909 +
  910 + const obj = {
  911 + name: '',
  912 + value: 0
  913 + };
912 let flag = false; 914 let flag = false;
913 this.resultData9 = response; 915 this.resultData9 = response;
914 this.resultData9.link = decodeURIComponent(decodeURIComponent(this.resultData9.link)); 916 this.resultData9.link = decodeURIComponent(decodeURIComponent(this.resultData9.link));
915 console.log('link: ', this.resultData9.link); 917 console.log('link: ', this.resultData9.link);
916 // tslint:disable-next-line:forin 918 // tslint:disable-next-line:forin
917 this.resultData9 = this.resultData9.map(r => { 919 this.resultData9 = this.resultData9.map(r => {
918 - console.log(r) 920 + console.log(r);
919 // t9: r.type 921 // t9: r.type
920 r.link = this._common.decodeURI(r.link); 922 r.link = this._common.decodeURI(r.link);
921 r.birth_date = this._common.convertDate(r.birth_date); 923 r.birth_date = this._common.convertDate(r.birth_date);
@@ -925,47 +927,47 @@ setInterval(async () => { @@ -925,47 +927,47 @@ setInterval(async () => {
925 t9.push(r.type); 927 t9.push(r.type);
926 r.t9 = t9; 928 r.t9 = t9;
927 return r; 929 return r;
928 - }) 930 + });
929 931
930 - for(var i=0;i<t9.length;i++){  
931 - var obj = {  
932 - name:'',  
933 - value:0  
934 - }  
935 - if(this.sum.length<=0){  
936 - obj.name=t9[i].substring(0,3).toLowerCase();  
937 - obj.value=1; 932 + for (let i = 0; i < t9.length; i++) {
  933 + const obj = {
  934 + name: '',
  935 + value: 0
  936 + };
  937 + if (this.sum.length <= 0) {
  938 + obj.name = t9[i].substring(0, 3).toLowerCase();
  939 + obj.value = 1;
938 this.sum.push(obj); 940 this.sum.push(obj);
939 - }else{  
940 - for(var j=0;j<this.sum.length;j++){  
941 - if(this.sum[j].name === t9[i].substring(0,3).toLowerCase()){  
942 - this.sum[j].value+=1; 941 + } else {
  942 + for (let j = 0; j < this.sum.length; j++) {
  943 + if (this.sum[j].name === t9[i].substring(0, 3).toLowerCase()) {
  944 + this.sum[j].value += 1;
943 flag = false; 945 flag = false;
944 break; 946 break;
945 - }else{ 947 + } else {
946 flag = true; 948 flag = true;
947 } 949 }
948 } 950 }
949 - if(flag){  
950 - obj.name=t9[i].substring(0,3).toLowerCase();  
951 - obj.value=1; 951 + if (flag) {
  952 + obj.name = t9[i].substring(0, 3).toLowerCase();
  953 + obj.value = 1;
952 flag = false; 954 flag = false;
953 this.sum.push(obj); 955 this.sum.push(obj);
954 } 956 }
955 - } 957 + }
956 } 958 }
957 - for(var k=0; k<this.ButtonValue.length; k++){  
958 - for(var o=0;o<this.sum.length;o++){ 959 + for (let k = 0; k < this.ButtonValue.length; k++) {
  960 + for (let o = 0; o < this.sum.length; o++) {
959 if (this.ButtonValue[k].valueN === this.sum[o].name) { 961 if (this.ButtonValue[k].valueN === this.sum[o].name) {
960 this.ButtonValue[k].num = this.sum[o].value; 962 this.ButtonValue[k].num = this.sum[o].value;
961 this.ButtonValue[0].num = this.resultNum9; 963 this.ButtonValue[0].num = this.resultNum9;
962 } 964 }
963 } 965 }
964 } 966 }
965 -  
966 - console.log('summ',this.ButtonValue);  
967 - console.log('summ',this.sum);  
968 - 967 +
  968 + console.log('summ', this.ButtonValue);
  969 + console.log('summ', this.sum);
  970 +
969 971
970 } else { 972 } else {
971 this.resultData9 = []; 973 this.resultData9 = [];
@@ -985,8 +987,8 @@ setInterval(async () =&gt; { @@ -985,8 +987,8 @@ setInterval(async () =&gt; {
985 try { 987 try {
986 const dataOnHold9 = { 988 const dataOnHold9 = {
987 // tslint:disable-next-line:max-line-length 989 // tslint:disable-next-line:max-line-length
988 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
989 - "params": ["vtiger_crmentity"] 990 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  991 + 'params': ['vtiger_crmentity']
990 }; 992 };
991 const response = await this._apiService.post('dynamic', dataOnHold9); 993 const response = await this._apiService.post('dynamic', dataOnHold9);
992 if (response !== null) { 994 if (response !== null) {
@@ -1024,13 +1026,13 @@ setInterval(async () =&gt; { @@ -1024,13 +1026,13 @@ setInterval(async () =&gt; {
1024 for (const item of this.Show1) { 1026 for (const item of this.Show1) {
1025 // console.log('item: ', item); 1027 // console.log('item: ', item);
1026 1028
1027 - var st = ''; 1029 + let st = '';
1028 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1030 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1029 if (item['type']) { 1031 if (item['type']) {
1030 st = item['type'].toLowerCase(); 1032 st = item['type'].toLowerCase();
1031 } 1033 }
1032 1034
1033 - var string2 = valueN.toLowerCase(); 1035 + const string2 = valueN.toLowerCase();
1034 if (st.indexOf(string2) > -1) { 1036 if (st.indexOf(string2) > -1) {
1035 // console.log(st); 1037 // console.log(st);
1036 resultArray.push(item); 1038 resultArray.push(item);
@@ -1054,13 +1056,13 @@ setInterval(async () =&gt; { @@ -1054,13 +1056,13 @@ setInterval(async () =&gt; {
1054 for (const item of this.Show1Onhold) { 1056 for (const item of this.Show1Onhold) {
1055 // console.log('item: ', item); 1057 // console.log('item: ', item);
1056 1058
1057 - var st = ''; 1059 + let st = '';
1058 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1060 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1059 if (item['type']) { 1061 if (item['type']) {
1060 st = item['type'].toLowerCase(); 1062 st = item['type'].toLowerCase();
1061 } 1063 }
1062 1064
1063 - var string2 = valueN.toLowerCase(); 1065 + const string2 = valueN.toLowerCase();
1064 if (st.indexOf(string2) > -1) { 1066 if (st.indexOf(string2) > -1) {
1065 console.log(st); 1067 console.log(st);
1066 resultArray.push(item); 1068 resultArray.push(item);
@@ -1083,13 +1085,13 @@ setInterval(async () =&gt; { @@ -1083,13 +1085,13 @@ setInterval(async () =&gt; {
1083 for (const item of this.Show2) { 1085 for (const item of this.Show2) {
1084 // console.log('item: ', item); 1086 // console.log('item: ', item);
1085 1087
1086 - var st = ''; 1088 + let st = '';
1087 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1089 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1088 if (item['type']) { 1090 if (item['type']) {
1089 st = item['type'].toLowerCase(); 1091 st = item['type'].toLowerCase();
1090 } 1092 }
1091 1093
1092 - var string2 = valueN.toLowerCase(); 1094 + const string2 = valueN.toLowerCase();
1093 if (st.indexOf(string2) > -1) { 1095 if (st.indexOf(string2) > -1) {
1094 console.log(st); 1096 console.log(st);
1095 resultArray.push(item); 1097 resultArray.push(item);
@@ -1112,13 +1114,13 @@ setInterval(async () =&gt; { @@ -1112,13 +1114,13 @@ setInterval(async () =&gt; {
1112 for (const item of this.Show2Onhold) { 1114 for (const item of this.Show2Onhold) {
1113 // console.log('item: ', item); 1115 // console.log('item: ', item);
1114 1116
1115 - var st = ''; 1117 + let st = '';
1116 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1118 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1117 if (item['type']) { 1119 if (item['type']) {
1118 st = item['type'].toLowerCase(); 1120 st = item['type'].toLowerCase();
1119 } 1121 }
1120 1122
1121 - var string2 = valueN.toLowerCase(); 1123 + const string2 = valueN.toLowerCase();
1122 if (st.indexOf(string2) > -1) { 1124 if (st.indexOf(string2) > -1) {
1123 console.log(st); 1125 console.log(st);
1124 resultArray.push(item); 1126 resultArray.push(item);
@@ -1140,13 +1142,13 @@ setInterval(async () =&gt; { @@ -1140,13 +1142,13 @@ setInterval(async () =&gt; {
1140 for (const item of this.Show3) { 1142 for (const item of this.Show3) {
1141 // console.log('item: ', item); 1143 // console.log('item: ', item);
1142 1144
1143 - var st = ''; 1145 + let st = '';
1144 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1146 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1145 if (item['type']) { 1147 if (item['type']) {
1146 st = item['type'].toLowerCase(); 1148 st = item['type'].toLowerCase();
1147 } 1149 }
1148 1150
1149 - var string2 = valueN.toLowerCase(); 1151 + const string2 = valueN.toLowerCase();
1150 if (st.indexOf(string2) > -1) { 1152 if (st.indexOf(string2) > -1) {
1151 console.log(st); 1153 console.log(st);
1152 resultArray.push(item); 1154 resultArray.push(item);
@@ -1169,13 +1171,13 @@ setInterval(async () =&gt; { @@ -1169,13 +1171,13 @@ setInterval(async () =&gt; {
1169 for (const item of this.Show3Onhold) { 1171 for (const item of this.Show3Onhold) {
1170 // console.log('item: ', item); 1172 // console.log('item: ', item);
1171 1173
1172 - var st = ''; 1174 + let st = '';
1173 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1175 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1174 if (item['type']) { 1176 if (item['type']) {
1175 st = item['type'].toLowerCase(); 1177 st = item['type'].toLowerCase();
1176 } 1178 }
1177 1179
1178 - var string2 = valueN.toLowerCase(); 1180 + const string2 = valueN.toLowerCase();
1179 if (st.indexOf(string2) > -1) { 1181 if (st.indexOf(string2) > -1) {
1180 console.log(st); 1182 console.log(st);
1181 resultArray.push(item); 1183 resultArray.push(item);
@@ -1197,13 +1199,13 @@ setInterval(async () =&gt; { @@ -1197,13 +1199,13 @@ setInterval(async () =&gt; {
1197 for (const item of this.Show4) { 1199 for (const item of this.Show4) {
1198 // console.log('item: ', item); 1200 // console.log('item: ', item);
1199 1201
1200 - var st = ''; 1202 + let st = '';
1201 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1203 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1202 if (item['type']) { 1204 if (item['type']) {
1203 st = item['type'].toLowerCase(); 1205 st = item['type'].toLowerCase();
1204 } 1206 }
1205 1207
1206 - var string2 = valueN.toLowerCase(); 1208 + const string2 = valueN.toLowerCase();
1207 if (st.indexOf(string2) > -1) { 1209 if (st.indexOf(string2) > -1) {
1208 console.log(st); 1210 console.log(st);
1209 resultArray.push(item); 1211 resultArray.push(item);
@@ -1226,13 +1228,13 @@ setInterval(async () =&gt; { @@ -1226,13 +1228,13 @@ setInterval(async () =&gt; {
1226 for (const item of this.Show4Onhold) { 1228 for (const item of this.Show4Onhold) {
1227 // console.log('item: ', item); 1229 // console.log('item: ', item);
1228 1230
1229 - var st = ''; 1231 + let st = '';
1230 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1232 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1231 if (item['type']) { 1233 if (item['type']) {
1232 st = item['type'].toLowerCase(); 1234 st = item['type'].toLowerCase();
1233 } 1235 }
1234 1236
1235 - var string2 = valueN.toLowerCase(); 1237 + const string2 = valueN.toLowerCase();
1236 if (st.indexOf(string2) > -1) { 1238 if (st.indexOf(string2) > -1) {
1237 console.log(st); 1239 console.log(st);
1238 resultArray.push(item); 1240 resultArray.push(item);
@@ -1254,13 +1256,13 @@ setInterval(async () =&gt; { @@ -1254,13 +1256,13 @@ setInterval(async () =&gt; {
1254 for (const item of this.Show5) { 1256 for (const item of this.Show5) {
1255 // console.log('item: ', item); 1257 // console.log('item: ', item);
1256 1258
1257 - var st = ''; 1259 + let st = '';
1258 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1260 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1259 if (item['type']) { 1261 if (item['type']) {
1260 st = item['type'].toLowerCase(); 1262 st = item['type'].toLowerCase();
1261 } 1263 }
1262 1264
1263 - var string2 = valueN.toLowerCase(); 1265 + const string2 = valueN.toLowerCase();
1264 if (st.indexOf(string2) > -1) { 1266 if (st.indexOf(string2) > -1) {
1265 console.log(st); 1267 console.log(st);
1266 resultArray.push(item); 1268 resultArray.push(item);
@@ -1283,13 +1285,13 @@ setInterval(async () =&gt; { @@ -1283,13 +1285,13 @@ setInterval(async () =&gt; {
1283 for (const item of this.Show5Onhold) { 1285 for (const item of this.Show5Onhold) {
1284 // console.log('item: ', item); 1286 // console.log('item: ', item);
1285 1287
1286 - var st = ''; 1288 + let st = '';
1287 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1289 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1288 if (item['type']) { 1290 if (item['type']) {
1289 st = item['type'].toLowerCase(); 1291 st = item['type'].toLowerCase();
1290 } 1292 }
1291 1293
1292 - var string2 = valueN.toLowerCase(); 1294 + const string2 = valueN.toLowerCase();
1293 if (st.indexOf(string2) > -1) { 1295 if (st.indexOf(string2) > -1) {
1294 console.log(st); 1296 console.log(st);
1295 resultArray.push(item); 1297 resultArray.push(item);
@@ -1311,13 +1313,13 @@ setInterval(async () =&gt; { @@ -1311,13 +1313,13 @@ setInterval(async () =&gt; {
1311 for (const item of this.Show6) { 1313 for (const item of this.Show6) {
1312 // console.log('item: ', item); 1314 // console.log('item: ', item);
1313 1315
1314 - var st = ''; 1316 + let st = '';
1315 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1317 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1316 if (item['type']) { 1318 if (item['type']) {
1317 st = item['type'].toLowerCase(); 1319 st = item['type'].toLowerCase();
1318 } 1320 }
1319 1321
1320 - var string2 = valueN.toLowerCase(); 1322 + const string2 = valueN.toLowerCase();
1321 if (st.indexOf(string2) > -1) { 1323 if (st.indexOf(string2) > -1) {
1322 console.log(st); 1324 console.log(st);
1323 resultArray.push(item); 1325 resultArray.push(item);
@@ -1346,13 +1348,13 @@ setInterval(async () =&gt; { @@ -1346,13 +1348,13 @@ setInterval(async () =&gt; {
1346 for (const item of this.Show6Onhold) { 1348 for (const item of this.Show6Onhold) {
1347 // console.log('item: ', item); 1349 // console.log('item: ', item);
1348 1350
1349 - var st = ''; 1351 + let st = '';
1350 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1352 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1351 if (item['type']) { 1353 if (item['type']) {
1352 st = item['type'].toLowerCase(); 1354 st = item['type'].toLowerCase();
1353 } 1355 }
1354 1356
1355 - var string2 = valueN.toLowerCase(); 1357 + const string2 = valueN.toLowerCase();
1356 if (st.indexOf(string2) > -1) { 1358 if (st.indexOf(string2) > -1) {
1357 console.log(st); 1359 console.log(st);
1358 resultArray.push(item); 1360 resultArray.push(item);
@@ -1374,23 +1376,23 @@ setInterval(async () =&gt; { @@ -1374,23 +1376,23 @@ setInterval(async () =&gt; {
1374 for (const item of this.Show7) { 1376 for (const item of this.Show7) {
1375 // console.log('item: ', item); 1377 // console.log('item: ', item);
1376 1378
1377 - var st = ''; 1379 + let st = '';
1378 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1380 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1379 if (item['type']) { 1381 if (item['type']) {
1380 st = item['type'].toLowerCase(); 1382 st = item['type'].toLowerCase();
1381 } 1383 }
1382 1384
1383 - var string2 = valueN.toLowerCase(); 1385 + const string2 = valueN.toLowerCase();
1384 if (st.startsWith(string2)) { 1386 if (st.startsWith(string2)) {
1385 // console.log(st); 1387 // console.log(st);
1386 resultArray.push(item); 1388 resultArray.push(item);
1387 } 1389 }
1388 } 1390 }
1389 if (resultArray.length === 0) { 1391 if (resultArray.length === 0) {
1390 - if (valueN !== "") { 1392 + if (valueN !== '') {
1391 this.showSecret1 = true; 1393 this.showSecret1 = true;
1392 } 1394 }
1393 - }else if(resultArray.length > 0) { 1395 + } else if (resultArray.length > 0) {
1394 this.showSecret1 = false; 1396 this.showSecret1 = false;
1395 } 1397 }
1396 1398
@@ -1409,13 +1411,13 @@ setInterval(async () =&gt; { @@ -1409,13 +1411,13 @@ setInterval(async () =&gt; {
1409 for (const item of this.Show7Onhold) { 1411 for (const item of this.Show7Onhold) {
1410 // console.log('item: ', item); 1412 // console.log('item: ', item);
1411 1413
1412 - var st = ''; 1414 + let st = '';
1413 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1415 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1414 if (item['type']) { 1416 if (item['type']) {
1415 st = item['type'].toLowerCase(); 1417 st = item['type'].toLowerCase();
1416 } 1418 }
1417 1419
1418 - var string2 = valueN.toLowerCase(); 1420 + const string2 = valueN.toLowerCase();
1419 if (st.startsWith(string2)) { 1421 if (st.startsWith(string2)) {
1420 console.log(st); 1422 console.log(st);
1421 resultArray.push(item); 1423 resultArray.push(item);
@@ -1423,10 +1425,10 @@ setInterval(async () =&gt; { @@ -1423,10 +1425,10 @@ setInterval(async () =&gt; {
1423 1425
1424 } 1426 }
1425 if (resultArray.length === 0) { 1427 if (resultArray.length === 0) {
1426 - if (valueN !== "") { 1428 + if (valueN !== '') {
1427 this.showSecret2 = true; 1429 this.showSecret2 = true;
1428 } 1430 }
1429 - }else if(resultArray.length > 0) { 1431 + } else if (resultArray.length > 0) {
1430 this.showSecret2 = false; 1432 this.showSecret2 = false;
1431 } 1433 }
1432 this.resultDataOnHold7 = resultArray; 1434 this.resultDataOnHold7 = resultArray;
@@ -1444,23 +1446,23 @@ setInterval(async () =&gt; { @@ -1444,23 +1446,23 @@ setInterval(async () =&gt; {
1444 for (const item of this.Show8) { 1446 for (const item of this.Show8) {
1445 // console.log('item: ', item); 1447 // console.log('item: ', item);
1446 1448
1447 - var st = ''; 1449 + let st = '';
1448 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1450 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1449 if (item['type']) { 1451 if (item['type']) {
1450 st = item['type'].toLowerCase(); 1452 st = item['type'].toLowerCase();
1451 } 1453 }
1452 1454
1453 - var string2 = valueN.toLowerCase(); 1455 + const string2 = valueN.toLowerCase();
1454 if (st.indexOf(string2) > -1) { 1456 if (st.indexOf(string2) > -1) {
1455 // console.log(st); 1457 // console.log(st);
1456 resultArray.push(item); 1458 resultArray.push(item);
1457 } 1459 }
1458 } 1460 }
1459 if (resultArray.length === 0) { 1461 if (resultArray.length === 0) {
1460 - if (valueN !== "") { 1462 + if (valueN !== '') {
1461 this.showSecret1 = true; 1463 this.showSecret1 = true;
1462 } 1464 }
1463 - }else if(resultArray.length > 0) { 1465 + } else if (resultArray.length > 0) {
1464 this.showSecret1 = false; 1466 this.showSecret1 = false;
1465 } 1467 }
1466 1468
@@ -1479,13 +1481,13 @@ setInterval(async () =&gt; { @@ -1479,13 +1481,13 @@ setInterval(async () =&gt; {
1479 for (const item of this.Show8Onhold) { 1481 for (const item of this.Show8Onhold) {
1480 // console.log('item: ', item); 1482 // console.log('item: ', item);
1481 1483
1482 - var st = ''; 1484 + let st = '';
1483 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1485 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1484 if (item['type']) { 1486 if (item['type']) {
1485 st = item['type'].toLowerCase(); 1487 st = item['type'].toLowerCase();
1486 } 1488 }
1487 1489
1488 - var string2 = valueN.toLowerCase(); 1490 + const string2 = valueN.toLowerCase();
1489 if (st.indexOf(string2) > -1) { 1491 if (st.indexOf(string2) > -1) {
1490 console.log(st); 1492 console.log(st);
1491 resultArray.push(item); 1493 resultArray.push(item);
@@ -1493,10 +1495,10 @@ setInterval(async () =&gt; { @@ -1493,10 +1495,10 @@ setInterval(async () =&gt; {
1493 1495
1494 } 1496 }
1495 if (resultArray.length === 0) { 1497 if (resultArray.length === 0) {
1496 - if (valueN !== "") { 1498 + if (valueN !== '') {
1497 this.showSecret2 = true; 1499 this.showSecret2 = true;
1498 } 1500 }
1499 - }else if(resultArray.length > 0) { 1501 + } else if (resultArray.length > 0) {
1500 this.showSecret2 = false; 1502 this.showSecret2 = false;
1501 } 1503 }
1502 this.resultDataOnHold8 = resultArray; 1504 this.resultDataOnHold8 = resultArray;
@@ -1514,31 +1516,31 @@ setInterval(async () =&gt; { @@ -1514,31 +1516,31 @@ setInterval(async () =&gt; {
1514 for (const item of this.Show9) { 1516 for (const item of this.Show9) {
1515 // console.log('item: ', item); 1517 // console.log('item: ', item);
1516 1518
1517 - var st = ''; 1519 + let st = '';
1518 if (item['type']) { 1520 if (item['type']) {
1519 st = item['type'].toLowerCase(); 1521 st = item['type'].toLowerCase();
1520 // this.Type9.push(st); 1522 // this.Type9.push(st);
1521 // console.log('st: ', this.Type9); 1523 // console.log('st: ', this.Type9);
1522 // this.NumType9 = this.Type9.lent; 1524 // this.NumType9 = this.Type9.lent;
1523 } 1525 }
1524 -  
1525 - var string2 = valueN.toLowerCase(); 1526 +
  1527 + const string2 = valueN.toLowerCase();
1526 if (st.startsWith(string2)) { 1528 if (st.startsWith(string2)) {
1527 resultArray.push(item); 1529 resultArray.push(item);
1528 1530
1529 } 1531 }
1530 } 1532 }
1531 if (resultArray.length === 0) { 1533 if (resultArray.length === 0) {
1532 - if (valueN !== "") { 1534 + if (valueN !== '') {
1533 this.showSecret1 = true; 1535 this.showSecret1 = true;
1534 } 1536 }
1535 - }else if(resultArray.length > 0) { 1537 + } else if (resultArray.length > 0) {
1536 this.showSecret1 = false; 1538 this.showSecret1 = false;
1537 } 1539 }
1538 1540
1539 this.resultData9 = resultArray; 1541 this.resultData9 = resultArray;
1540 this.NumType9 = resultArray.length; 1542 this.NumType9 = resultArray.length;
1541 - // this.Type9.push(this.NumType9); 1543 + // this.Type9.push(this.NumType9);
1542 } 1544 }
1543 1545
1544 /* buttondataOnhold9 */ 1546 /* buttondataOnhold9 */
@@ -1553,13 +1555,13 @@ setInterval(async () =&gt; { @@ -1553,13 +1555,13 @@ setInterval(async () =&gt; {
1553 for (const item of this.Show9Onhold) { 1555 for (const item of this.Show9Onhold) {
1554 // console.log('item: ', item); 1556 // console.log('item: ', item);
1555 1557
1556 - var st = ''; 1558 + let st = '';
1557 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 1559 // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
1558 if (item['type']) { 1560 if (item['type']) {
1559 st = item['type'].toLowerCase(); 1561 st = item['type'].toLowerCase();
1560 } 1562 }
1561 1563
1562 - var string2 = valueN.toLowerCase(); 1564 + const string2 = valueN.toLowerCase();
1563 if (st.startsWith(string2)) { 1565 if (st.startsWith(string2)) {
1564 console.log(st); 1566 console.log(st);
1565 resultArray.push(item); 1567 resultArray.push(item);
@@ -1567,29 +1569,29 @@ setInterval(async () =&gt; { @@ -1567,29 +1569,29 @@ setInterval(async () =&gt; {
1567 1569
1568 } 1570 }
1569 if (resultArray.length === 0) { 1571 if (resultArray.length === 0) {
1570 - if (valueN !== "") { 1572 + if (valueN !== '') {
1571 this.showSecret2 = true; 1573 this.showSecret2 = true;
1572 } 1574 }
1573 - }else if(resultArray.length > 0) { 1575 + } else if (resultArray.length > 0) {
1574 this.showSecret2 = false; 1576 this.showSecret2 = false;
1575 } 1577 }
1576 this.resultDataOnHold9 = resultArray; 1578 this.resultDataOnHold9 = resultArray;
1577 1579
1578 } 1580 }
1579 1581
1580 - /////////////Get data come to use////////////////////// 1582 + ///////////// Get data come to use//////////////////////
1581 1583
1582 1584
1583 - //----------------------------1------------------------ 1585 + // ----------------------------1------------------------
1584 // Active 1586 // Active
1585 async getData() { 1587 async getData() {
1586 try { 1588 try {
1587 const data = { 1589 const data = {
1588 // tslint:disable-next-line:max-line-length 1590 // tslint:disable-next-line:max-line-length
1589 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
1590 - "params": ["vtiger_crmentity"] 1591 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  1592 + 'params': ['vtiger_crmentity']
1591 }; 1593 };
1592 - let response = await this._apiService.post('dynamic', data); 1594 + const response = await this._apiService.post('dynamic', data);
1593 if (response !== null) { 1595 if (response !== null) {
1594 this.resultData = response; 1596 this.resultData = response;
1595 this.resultData.link = decodeURIComponent(decodeURIComponent(this.resultData.link)); 1597 this.resultData.link = decodeURIComponent(decodeURIComponent(this.resultData.link));
@@ -1606,15 +1608,15 @@ setInterval(async () =&gt; { @@ -1606,15 +1608,15 @@ setInterval(async () =&gt; {
1606 console.log(error); 1608 console.log(error);
1607 } 1609 }
1608 } 1610 }
1609 - //On Hold 1611 + // On Hold
1610 async getDataOnHold() { 1612 async getDataOnHold() {
1611 try { 1613 try {
1612 const dataOnHold = { 1614 const dataOnHold = {
1613 // tslint:disable-next-line:max-line-length 1615 // tslint:disable-next-line:max-line-length
1614 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
1615 - "params": ["vtiger_crmentity"] 1616 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'SET (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  1617 + 'params': ['vtiger_crmentity']
1616 }; 1618 };
1617 - let response = await this._apiService.post('dynamic', dataOnHold); 1619 + const response = await this._apiService.post('dynamic', dataOnHold);
1618 if (response !== null) { 1620 if (response !== null) {
1619 this.resultDataOnHold = response; 1621 this.resultDataOnHold = response;
1620 this.resultDataOnHold.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold.link)); 1622 this.resultDataOnHold.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold.link));
@@ -1632,16 +1634,16 @@ setInterval(async () =&gt; { @@ -1632,16 +1634,16 @@ setInterval(async () =&gt; {
1632 } 1634 }
1633 } 1635 }
1634 1636
1635 - //----------------------------2------------------------ 1637 + // ----------------------------2------------------------
1636 // Active 1638 // Active
1637 async getData2() { 1639 async getData2() {
1638 try { 1640 try {
1639 const data2 = { 1641 const data2 = {
1640 // tslint:disable-next-line:max-line-length 1642 // tslint:disable-next-line:max-line-length
1641 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'RND (Renovate)' AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1642 - "params": ["vtiger_crmentity"] 1643 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'RND (Renovate)\' AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1644 + 'params': ['vtiger_crmentity']
1643 }; 1645 };
1644 - let response = await this._apiService.post('dynamic', data2); 1646 + const response = await this._apiService.post('dynamic', data2);
1645 if (response !== null) { 1647 if (response !== null) {
1646 this.resultData2 = response; 1648 this.resultData2 = response;
1647 this.resultData2.link = decodeURIComponent(decodeURIComponent(this.resultData2.link)); 1649 this.resultData2.link = decodeURIComponent(decodeURIComponent(this.resultData2.link));
@@ -1658,15 +1660,15 @@ setInterval(async () =&gt; { @@ -1658,15 +1660,15 @@ setInterval(async () =&gt; {
1658 console.log(error); 1660 console.log(error);
1659 } 1661 }
1660 } 1662 }
1661 - //On Hold 1663 + // On Hold
1662 async getDataOnHold2() { 1664 async getDataOnHold2() {
1663 try { 1665 try {
1664 const dataOnHold2 = { 1666 const dataOnHold2 = {
1665 // tslint:disable-next-line:max-line-length 1667 // tslint:disable-next-line:max-line-length
1666 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'RND (Renovate)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1667 - "params": ["vtiger_crmentity"] 1668 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'RND (Renovate)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1669 + 'params': ['vtiger_crmentity']
1668 }; 1670 };
1669 - let response = await this._apiService.post('dynamic', dataOnHold2); 1671 + const response = await this._apiService.post('dynamic', dataOnHold2);
1670 if (response !== null) { 1672 if (response !== null) {
1671 this.resultDataOnHold2 = response; 1673 this.resultDataOnHold2 = response;
1672 this.resultDataOnHold2.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold2.link)); 1674 this.resultDataOnHold2.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold2.link));
@@ -1684,16 +1686,16 @@ setInterval(async () =&gt; { @@ -1684,16 +1686,16 @@ setInterval(async () =&gt; {
1684 } 1686 }
1685 } 1687 }
1686 1688
1687 - //----------------------------3------------------------ 1689 + // ----------------------------3------------------------
1688 // Active 1690 // Active
1689 async getData3() { 1691 async getData3() {
1690 try { 1692 try {
1691 const data3 = { 1693 const data3 = {
1692 // tslint:disable-next-line:max-line-length 1694 // tslint:disable-next-line:max-line-length
1693 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('SDE (Site Down บ่อย)','SDN (Site Down Reset แล้วใช้งานไม่ได้)') AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1694 - "params": ["vtiger_crmentity"] 1695 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'SDE (Site Down บ่อย)\',\'SDN (Site Down Reset แล้วใช้งานไม่ได้)\') AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1696 + 'params': ['vtiger_crmentity']
1695 }; 1697 };
1696 - let response = await this._apiService.post('dynamic', data3); 1698 + const response = await this._apiService.post('dynamic', data3);
1697 if (response !== null) { 1699 if (response !== null) {
1698 this.resultData3 = response; 1700 this.resultData3 = response;
1699 this.resultData3.link = decodeURIComponent(decodeURIComponent(this.resultData3.link)); 1701 this.resultData3.link = decodeURIComponent(decodeURIComponent(this.resultData3.link));
@@ -1711,15 +1713,15 @@ setInterval(async () =&gt; { @@ -1711,15 +1713,15 @@ setInterval(async () =&gt; {
1711 } 1713 }
1712 } 1714 }
1713 1715
1714 - //On Hold 1716 + // On Hold
1715 async getDataOnHold3() { 1717 async getDataOnHold3() {
1716 try { 1718 try {
1717 const dataOnHold3 = { 1719 const dataOnHold3 = {
1718 // tslint:disable-next-line:max-line-length 1720 // tslint:disable-next-line:max-line-length
1719 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('SDE (Site Down บ่อย)','SDN (Site Down Reset แล้วใช้งานไม่ได้)') AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1720 - "params": ["vtiger_crmentity"] 1721 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'SDE (Site Down บ่อย)\',\'SDN (Site Down Reset แล้วใช้งานไม่ได้)\') AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1722 + 'params': ['vtiger_crmentity']
1721 }; 1723 };
1722 - let response = await this._apiService.post('dynamic', dataOnHold3); 1724 + const response = await this._apiService.post('dynamic', dataOnHold3);
1723 if (response !== null) { 1725 if (response !== null) {
1724 this.resultDataOnHold3 = response; 1726 this.resultDataOnHold3 = response;
1725 this.resultDataOnHold3.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold3.link)); 1727 this.resultDataOnHold3.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold3.link));
@@ -1737,16 +1739,16 @@ setInterval(async () =&gt; { @@ -1737,16 +1739,16 @@ setInterval(async () =&gt; {
1737 } 1739 }
1738 } 1740 }
1739 1741
1740 - //----------------------------4------------------------ 1742 + // ----------------------------4------------------------
1741 // Active 1743 // Active
1742 async getData4() { 1744 async getData4() {
1743 try { 1745 try {
1744 const data4 = { 1746 const data4 = {
1745 // tslint:disable-next-line:max-line-length 1747 // tslint:disable-next-line:max-line-length
1746 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('ADE (AP Down มีปัญหาบ่อย)','APD (อุปกรณ์กระจายสัญญาณขัดข้อง)') AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1747 - "params": ["vtiger_crmentity"] 1748 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'ADE (AP Down มีปัญหาบ่อย)\',\'APD (อุปกรณ์กระจายสัญญาณขัดข้อง)\') AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1749 + 'params': ['vtiger_crmentity']
1748 }; 1750 };
1749 - let response = await this._apiService.post('dynamic', data4); 1751 + const response = await this._apiService.post('dynamic', data4);
1750 if (response !== null) { 1752 if (response !== null) {
1751 this.resultData4 = response; 1753 this.resultData4 = response;
1752 this.resultData4.link = decodeURIComponent(decodeURIComponent(this.resultData4.link)); 1754 this.resultData4.link = decodeURIComponent(decodeURIComponent(this.resultData4.link));
@@ -1763,15 +1765,15 @@ setInterval(async () =&gt; { @@ -1763,15 +1765,15 @@ setInterval(async () =&gt; {
1763 console.log(error); 1765 console.log(error);
1764 } 1766 }
1765 } 1767 }
1766 - //On Hold 1768 + // On Hold
1767 async getDataOnHold4() { 1769 async getDataOnHold4() {
1768 try { 1770 try {
1769 const dataOnHold4 = { 1771 const dataOnHold4 = {
1770 // tslint:disable-next-line:max-line-length 1772 // tslint:disable-next-line:max-line-length
1771 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('ADE (AP Down มีปัญหาบ่อย)','APD (อุปกรณ์กระจายสัญญาณขัดข้อง)') AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1772 - "params": ["vtiger_crmentity"] 1773 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'ADE (AP Down มีปัญหาบ่อย)\',\'APD (อุปกรณ์กระจายสัญญาณขัดข้อง)\') AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1774 + 'params': ['vtiger_crmentity']
1773 }; 1775 };
1774 - let response = await this._apiService.post('dynamic', dataOnHold4); 1776 + const response = await this._apiService.post('dynamic', dataOnHold4);
1775 if (response !== null) { 1777 if (response !== null) {
1776 this.resultDataOnHold4 = response; 1778 this.resultDataOnHold4 = response;
1777 this.resultDataOnHold4.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold4.link)); 1779 this.resultDataOnHold4.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold4.link));
@@ -1788,16 +1790,16 @@ setInterval(async () =&gt; { @@ -1788,16 +1790,16 @@ setInterval(async () =&gt; {
1788 console.log(error); 1790 console.log(error);
1789 } 1791 }
1790 } 1792 }
1791 - //----------------------------5------------------------ 1793 + // ----------------------------5------------------------
1792 // Active 1794 // Active
1793 async getData5() { 1795 async getData5() {
1794 try { 1796 try {
1795 const data5 = { 1797 const data5 = {
1796 // tslint:disable-next-line:max-line-length 1798 // tslint:disable-next-line:max-line-length
1797 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('BNW (ตรวจสอบความเร็วเน็ต)','NDS (บางเส้นมีปัญหา Offline, Unplug)','NED (เนตหลุดบ่อย)','NES (Internet ช้า)','NET (Set Internet)') AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1798 - "params": ["vtiger_crmentity"] 1799 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'BNW (ตรวจสอบความเร็วเน็ต)\',\'NDS (บางเส้นมีปัญหา Offline, Unplug)\',\'NED (เนตหลุดบ่อย)\',\'NES (Internet ช้า)\',\'NET (Set Internet)\') AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1800 + 'params': ['vtiger_crmentity']
1799 }; 1801 };
1800 - let response = await this._apiService.post('dynamic', data5); 1802 + const response = await this._apiService.post('dynamic', data5);
1801 if (response !== null) { 1803 if (response !== null) {
1802 this.resultData5 = response; 1804 this.resultData5 = response;
1803 this.resultData5.link = decodeURIComponent(decodeURIComponent(this.resultData5.link)); 1805 this.resultData5.link = decodeURIComponent(decodeURIComponent(this.resultData5.link));
@@ -1814,15 +1816,15 @@ setInterval(async () =&gt; { @@ -1814,15 +1816,15 @@ setInterval(async () =&gt; {
1814 console.log(error); 1816 console.log(error);
1815 } 1817 }
1816 } 1818 }
1817 - //On Hold 1819 + // On Hold
1818 async getDataOnHold5() { 1820 async getDataOnHold5() {
1819 try { 1821 try {
1820 const dataOnHold5 = { 1822 const dataOnHold5 = {
1821 // tslint:disable-next-line:max-line-length 1823 // tslint:disable-next-line:max-line-length
1822 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN ('BNW (ตรวจสอบความเร็วเน็ต)','NDS (บางเส้นมีปัญหา Offline, Unplug)','NED (เนตหลุดบ่อย)','NES (Internet ช้า)','NET (Set Internet)') AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1823 - "params": ["vtiger_crmentity"] 1824 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) IN (\'BNW (ตรวจสอบความเร็วเน็ต)\',\'NDS (บางเส้นมีปัญหา Offline, Unplug)\',\'NED (เนตหลุดบ่อย)\',\'NES (Internet ช้า)\',\'NET (Set Internet)\') AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1825 + 'params': ['vtiger_crmentity']
1824 }; 1826 };
1825 - let response = await this._apiService.post('dynamic', dataOnHold5); 1827 + const response = await this._apiService.post('dynamic', dataOnHold5);
1826 if (response !== null) { 1828 if (response !== null) {
1827 this.resultDataOnHold5 = response; 1829 this.resultDataOnHold5 = response;
1828 this.resultDataOnHold5.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold5.link)); 1830 this.resultDataOnHold5.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold5.link));
@@ -1840,16 +1842,16 @@ setInterval(async () =&gt; { @@ -1840,16 +1842,16 @@ setInterval(async () =&gt; {
1840 } 1842 }
1841 } 1843 }
1842 1844
1843 - //----------------------------6------------------------ 1845 + // ----------------------------6------------------------
1844 // Active 1846 // Active
1845 async getData6() { 1847 async getData6() {
1846 try { 1848 try {
1847 const data6 = { 1849 const data6 = {
1848 // tslint:disable-next-line:max-line-length 1850 // tslint:disable-next-line:max-line-length
1849 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'CUS (ตรวจสอบเครื่องลูกค้า)' AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1850 - "params": ["vtiger_crmentity"] 1851 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'CUS (ตรวจสอบเครื่องลูกค้า)\' AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1852 + 'params': ['vtiger_crmentity']
1851 }; 1853 };
1852 - let response = await this._apiService.post('dynamic', data6); 1854 + const response = await this._apiService.post('dynamic', data6);
1853 if (response !== null) { 1855 if (response !== null) {
1854 this.resultData6 = response; 1856 this.resultData6 = response;
1855 this.resultData6.link = decodeURIComponent(decodeURIComponent(this.resultData6.link)); 1857 this.resultData6.link = decodeURIComponent(decodeURIComponent(this.resultData6.link));
@@ -1866,15 +1868,15 @@ setInterval(async () =&gt; { @@ -1866,15 +1868,15 @@ setInterval(async () =&gt; {
1866 console.log(error); 1868 console.log(error);
1867 } 1869 }
1868 } 1870 }
1869 - //On Hold 1871 + // On Hold
1870 async getDataOnHold6() { 1872 async getDataOnHold6() {
1871 try { 1873 try {
1872 const dataOnHold6 = { 1874 const dataOnHold6 = {
1873 // tslint:disable-next-line:max-line-length 1875 // tslint:disable-next-line:max-line-length
1874 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'CUS (ตรวจสอบเครื่องลูกค้า)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100",  
1875 - "params": ["vtiger_crmentity"] 1876 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'CUS (ตรวจสอบเครื่องลูกค้า)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC LIMIT 0 , 100',
  1877 + 'params': ['vtiger_crmentity']
1876 }; 1878 };
1877 - let response = await this._apiService.post('dynamic', dataOnHold6); 1879 + const response = await this._apiService.post('dynamic', dataOnHold6);
1878 if (response !== null) { 1880 if (response !== null) {
1879 this.resultDataOnHold6 = response; 1881 this.resultDataOnHold6 = response;
1880 this.resultDataOnHold6.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold6.link)); 1882 this.resultDataOnHold6.link = decodeURIComponent(decodeURIComponent(this.resultDataOnHold6.link));
@@ -1898,8 +1900,8 @@ setInterval(async () =&gt; { @@ -1898,8 +1900,8 @@ setInterval(async () =&gt; {
1898 try { 1900 try {
1899 const data7 = { 1901 const data7 = {
1900 // tslint:disable-next-line:max-line-length 1902 // tslint:disable-next-line:max-line-length
1901 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) NOT IN('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
1902 - "params": ["vtiger_crmentity"] 1903 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) NOT IN(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  1904 + 'params': ['vtiger_crmentity']
1903 }; 1905 };
1904 const response = await this._apiService.post('dynamic', data7); 1906 const response = await this._apiService.post('dynamic', data7);
1905 if (response !== null) { 1907 if (response !== null) {
@@ -1924,8 +1926,8 @@ setInterval(async () =&gt; { @@ -1924,8 +1926,8 @@ setInterval(async () =&gt; {
1924 try { 1926 try {
1925 const dataOnHold7 = { 1927 const dataOnHold7 = {
1926 // tslint:disable-next-line:max-line-length 1928 // tslint:disable-next-line:max-line-length
1927 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
1928 - "params": ["vtiger_crmentity"] 1929 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  1930 + 'params': ['vtiger_crmentity']
1929 }; 1931 };
1930 const response = await this._apiService.post('dynamic', dataOnHold7); 1932 const response = await this._apiService.post('dynamic', dataOnHold7);
1931 if (response !== null) { 1933 if (response !== null) {
@@ -1951,8 +1953,8 @@ setInterval(async () =&gt; { @@ -1951,8 +1953,8 @@ setInterval(async () =&gt; {
1951 try { 1953 try {
1952 const data8 = { 1954 const data8 = {
1953 // tslint:disable-next-line:max-line-length 1955 // tslint:disable-next-line:max-line-length
1954 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'ITS (SmartIT)' AND LCASE(vtiger_troubletickets. STATUS) not in('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
1955 - "params": ["vtiger_crmentity"] 1956 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'ITS (SmartIT)\' AND LCASE(vtiger_troubletickets. STATUS) not in(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  1957 + 'params': ['vtiger_crmentity']
1956 }; 1958 };
1957 const response = await this._apiService.post('dynamic', data8); 1959 const response = await this._apiService.post('dynamic', data8);
1958 if (response !== null) { 1960 if (response !== null) {
@@ -1977,8 +1979,8 @@ setInterval(async () =&gt; { @@ -1977,8 +1979,8 @@ setInterval(async () =&gt; {
1977 try { 1979 try {
1978 const dataOnHold8 = { 1980 const dataOnHold8 = {
1979 // tslint:disable-next-line:max-line-length 1981 // tslint:disable-next-line:max-line-length
1980 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , ' (' , vtiger_cf_568.day_amount , ')') AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = 'ITS (SmartIT)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
1981 - "params": ["vtiger_crmentity"] 1982 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days , concat( vtiger_ticketcf.cf_568 , \' (\' , vtiger_cf_568.day_amount , \')\') AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) = \'ITS (SmartIT)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  1983 + 'params': ['vtiger_crmentity']
1982 }; 1984 };
1983 const response = await this._apiService.post('dynamic', dataOnHold8); 1985 const response = await this._apiService.post('dynamic', dataOnHold8);
1984 if (response !== null) { 1986 if (response !== null) {
@@ -2004,8 +2006,8 @@ setInterval(async () =&gt; { @@ -2004,8 +2006,8 @@ setInterval(async () =&gt; {
2004 try { 2006 try {
2005 const data9 = { 2007 const data9 = {
2006 // tslint:disable-next-line:max-line-length 2008 // tslint:disable-next-line:max-line-length
2007 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) NOT IN('closed' , 'Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid HAVING days2 > 2 ORDER BY vtiger_crmentity.modifiedtime ASC",  
2008 - "params": ["vtiger_crmentity"] 2009 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) NOT IN(\'closed\' , \'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid HAVING days2 > 2 ORDER BY vtiger_crmentity.modifiedtime ASC',
  2010 + 'params': ['vtiger_crmentity']
2009 }; 2011 };
2010 const response = await this._apiService.post('dynamic', data9); 2012 const response = await this._apiService.post('dynamic', data9);
2011 if (response !== null) { 2013 if (response !== null) {
@@ -2030,8 +2032,8 @@ setInterval(async () =&gt; { @@ -2030,8 +2032,8 @@ setInterval(async () =&gt; {
2030 try { 2032 try {
2031 const dataOnHold9 = { 2033 const dataOnHold9 = {
2032 // tslint:disable-next-line:max-line-length 2034 // tslint:disable-next-line:max-line-length
2033 - "query": "SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( 'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , ' : ' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN 'Closed' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT 'Wait for response by' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , 'Created by') userType , IFNULL(( SELECT concat('' , assigned_by , '') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = 'Wait for response' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vtiger_users.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = 'HelpDesk' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != '' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != 'set (ติดตั้ง)' AND LCASE(vtiger_troubletickets. STATUS) IN('Wait For Customer')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ",  
2034 - "params": ["vtiger_crmentity"] 2035 + 'query': 'SELECT vtiger_account.accountname AS custgroupName , vtiger_troubletickets.ticketid AS id , IF( vtiger_groups.groupname IS NOT NULL , vtiger_groups.groupname , vu.user_name) AS team , vtiger_troubletickets.title , vtiger_troubletickets. STATUS , vtiger_troubletickets.priority , CONCAT( \'http%3A%2F%2Fvtiger.sourcecode.co.th%2Findex.php%3Faction%3DDetailView%26module%3DHelpDesk%26parenttab%3DSupport%26record%3D\' , vtiger_troubletickets.ticketid) AS link ,( SELECT CONCAT( xx.createdtime , \' : \' , xx.comments) FROM vtiger_ticketcomments xx WHERE xx.ticketid = vtiger_troubletickets.ticketid ORDER BY xx.createdtime DESC LIMIT 1) AS COMMENT , CASE vtiger_troubletickets. STATUS WHEN \'Closed\' THEN( unix_timestamp(vtiger_crmentity.modifiedtime) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 ELSE( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.createdtime)) / 86400 END AS days ,( unix_timestamp(now()) - unix_timestamp(vtiger_crmentity.modifiedtime)) / 86400 AS days2 , vtiger_ticketcf.cf_568 AS type , IFNULL(( SELECT \'Wait for response by\' FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , \'Created by\') userType , IFNULL(( SELECT concat(\'\' , assigned_by , \'\') FROM vtiger_ticket_history WHERE vtiger_troubletickets.ticketid = vtiger_ticket_history.ticketid AND assigned_type = \'Wait for response\' ORDER BY updatetime DESC LIMIT 0 , 1) , vtiger_users.user_name) username , vtiger_crmentity.description , vtiger_crmentity.createdtime , vtiger_crmentity.modifiedtime , vtiger_cf_568.cf_568id , vu.department FROM vtiger_crmentity JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smcreatorid JOIN vtiger_troubletickets ON vtiger_crmentity.crmid = vtiger_troubletickets.ticketid JOIN vtiger_account ON vtiger_account.accountid = vtiger_troubletickets.parent_id JOIN vtiger_ticketcf ON vtiger_ticketcf.ticketid = vtiger_troubletickets.ticketid JOIN vtiger_cf_568 ON vtiger_cf_568.cf_568 = vtiger_ticketcf.cf_568 LEFT OUTER JOIN vtiger_groups ON vtiger_crmentity.smownerid = vtiger_groups.groupid LEFT OUTER JOIN vtiger_users vu ON vtiger_crmentity.smownerid = vu.id WHERE 1 AND vtiger_crmentity.setype = \'HelpDesk\' AND vtiger_crmentity.deleted = 0 AND vtiger_ticketcf.cf_568 != \'\' AND vtiger_cf_568.cf_568id NOT IN(8 , 9 , 10) AND( LCASE(vtiger_cf_568.cf_568) != \'set (ติดตั้ง)\' AND LCASE(vtiger_troubletickets. STATUS) IN(\'Wait For Customer\')) GROUP BY vtiger_troubletickets.ticketid ORDER BY vtiger_crmentity.createdtime ASC ',
  2036 + 'params': ['vtiger_crmentity']
2035 }; 2037 };
2036 const response = await this._apiService.post('dynamic', dataOnHold9); 2038 const response = await this._apiService.post('dynamic', dataOnHold9);
2037 if (response !== null) { 2039 if (response !== null) {
@@ -2050,4 +2052,4 @@ setInterval(async () =&gt; { @@ -2050,4 +2052,4 @@ setInterval(async () =&gt; {
2050 console.log(error); 2052 console.log(error);
2051 } 2053 }
2052 } 2054 }
2053 -}  
2054 \ No newline at end of file 2055 \ No newline at end of file
  2056 +}
src/app/dashboard/filter.pipe.ts
@@ -7,17 +7,17 @@ export class FilterPipe implements PipeTransform { @@ -7,17 +7,17 @@ export class FilterPipe implements PipeTransform {
7 7
8 transform(value: any, filterString: string, propName: any): any { 8 transform(value: any, filterString: string, propName: any): any {
9 console.log('propName: ', propName); 9 console.log('propName: ', propName);
10 - 10 +
11 if (value.length === 0) { 11 if (value.length === 0) {
12 return value; 12 return value;
13 } 13 }
14 - 14 +
15 const resultArray = []; 15 const resultArray = [];
16 for (const item of value) { 16 for (const item of value) {
17 // console.log('item: ', item); 17 // console.log('item: ', item);
18 18
19 - var st = '';  
20 - //st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; 19 + let st = '';
  20 + // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ;
21 if (item['team']) { 21 if (item['team']) {
22 st += item['team'].toLowerCase(); 22 st += item['team'].toLowerCase();
23 } 23 }
@@ -37,7 +37,7 @@ export class FilterPipe implements PipeTransform { @@ -37,7 +37,7 @@ export class FilterPipe implements PipeTransform {
37 st += item['department'].toLowerCase(); 37 st += item['department'].toLowerCase();
38 } 38 }
39 39
40 - var string2 = filterString.toLowerCase(); 40 + const string2 = filterString.toLowerCase();
41 if (st.indexOf(string2) > -1) { 41 if (st.indexOf(string2) > -1) {
42 resultArray.push(item); 42 resultArray.push(item);
43 } 43 }
@@ -47,8 +47,8 @@ export class FilterPipe implements PipeTransform { @@ -47,8 +47,8 @@ export class FilterPipe implements PipeTransform {
47 // return resultArray.push(txt); 47 // return resultArray.push(txt);
48 // }else{ 48 // }else{
49 return resultArray; 49 return resultArray;
50 -  
51 - 50 +
  51 +
52 } 52 }
53 53
54 } 54 }
src/app/dashboard/font.ts
1 -import { PipeTransform, Pipe } from "@angular/core"; 1 +import { PipeTransform, Pipe } from '@angular/core';
2 2
3 @Pipe ({ 3 @Pipe ({
4 name: 'font' 4 name: 'font'
5 }) 5 })
6 export class PontPipe implements PipeTransform { 6 export class PontPipe implements PipeTransform {
7 transform(value: string): string { 7 transform(value: string): string {
8 - if(value === null){ 8 + if (value === null) {
9 value = ''; 9 value = '';
10 } 10 }
11 if (value.length > 19) { 11 if (value.length > 19) {
@@ -13,4 +13,4 @@ export class PontPipe implements PipeTransform { @@ -13,4 +13,4 @@ export class PontPipe implements PipeTransform {
13 } 13 }
14 return value; 14 return value;
15 } 15 }
16 -}  
17 \ No newline at end of file 16 \ No newline at end of file
  17 +}
src/app/dashboard/short.ts
1 -import { PipeTransform, Pipe } from "@angular/core"; 1 +import { PipeTransform, Pipe } from '@angular/core';
2 2
3 @Pipe ({ 3 @Pipe ({
4 name: 'short' 4 name: 'short'
5 }) 5 })
6 export class ShortPipe implements PipeTransform { 6 export class ShortPipe implements PipeTransform {
7 transform(value: string): string { 7 transform(value: string): string {
8 - if(value === null){ 8 + if (value === null) {
9 value = ''; 9 value = '';
10 } 10 }
11 if (value.length > 19) { 11 if (value.length > 19) {
12 - return value.substr(0, 19) 12 + return value.substr(0, 19);
13 } 13 }
14 return value; 14 return value;
15 } 15 }
16 -}  
17 \ No newline at end of file 16 \ No newline at end of file
  17 +}
src/app/dashboard/texrshort.ts
1 -import { PipeTransform, Pipe } from "@angular/core"; 1 +import { PipeTransform, Pipe } from '@angular/core';
2 2
3 @Pipe ({ 3 @Pipe ({
4 name: 'textshort' 4 name: 'textshort'
5 }) 5 })
6 export class TextShortPipe implements PipeTransform { 6 export class TextShortPipe implements PipeTransform {
7 transform(value: string): string { 7 transform(value: string): string {
8 - if(value === null){ 8 + if (value === null) {
9 value = ''; 9 value = '';
10 } 10 }
11 if (value.length > 20) { 11 if (value.length > 20) {
@@ -13,4 +13,4 @@ export class TextShortPipe implements PipeTransform { @@ -13,4 +13,4 @@ export class TextShortPipe implements PipeTransform {
13 } 13 }
14 return value; 14 return value;
15 } 15 }
16 -}  
17 \ No newline at end of file 16 \ No newline at end of file
  17 +}