From cb492052130c0542c0c153f114a7681d756ba7d6 Mon Sep 17 00:00:00 2001 From: DESKTOP-P23T5P2\NewTeryEiEi Date: Wed, 15 Aug 2018 13:37:42 +0700 Subject: [PATCH] ปุ่มค้นหา department เฉพราะหน้า ติดตั้ง --- src/app/dashboard/dashboard.component.html | 12 +++++++++++- src/app/dashboard/dashboard.component.ts | 177 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------- 2 files changed, 167 insertions(+), 22 deletions(-) diff --git a/src/app/dashboard/dashboard.component.html b/src/app/dashboard/dashboard.component.html index 41318c2..59f76aa 100644 --- a/src/app/dashboard/dashboard.component.html +++ b/src/app/dashboard/dashboard.component.html @@ -65,8 +65,15 @@ -

+
+ +
+
+

0 Tricket

+
@@ -122,6 +129,9 @@

+
+

0 Tricket

+

diff --git a/src/app/dashboard/dashboard.component.ts b/src/app/dashboard/dashboard.component.ts index 67e3c31..c3bdd3e 100644 --- a/src/app/dashboard/dashboard.component.ts +++ b/src/app/dashboard/dashboard.component.ts @@ -74,23 +74,49 @@ export class DashboardComponent implements OnInit { resultDataOnHold9: any; Show1: any = []; + Show1Depart: any = []; Show1Onhold: any = []; + Show1DepartOnhold: any = []; + Show2: any = []; + Show2Depart: any = []; Show2Onhold: any = []; + Show2DepartOnhold: any = []; + Show3: any = []; + Show3Depart: any = []; Show3Onhold: any = []; + Show3DepartOnhold: any = []; + Show4: any = []; + Show4Depart: any = []; Show4Onhold: any = []; + Show4DepartOnhold: any = []; + Show5: any = []; + Show5Depart: any = []; Show5Onhold: any = []; + Show5DepartOnhold: any = []; + Show6: any = []; + Show6Depart: any = []; Show6Onhold: any = []; + Show6DepartOnhold: any = []; + Show7: any = []; + Show7Depart: any = []; Show7Onhold: any = []; + Show7DepartOnhold: any = []; + Show8: any = []; + Show8Depart: any = []; Show8Onhold: any = []; + Show8DepartOnhold: any = []; + Show9: any = []; + Show9Depart: any = []; Show9Onhold: any = []; + Show9DepartOnhold: any = []; ShowNull: any = []; @@ -330,6 +356,50 @@ export class DashboardComponent implements OnInit { } ]; + // tslint:disable-next-line:member-ordering + ButtonValueDepart = [ + { + id: 1, + name: 'All', + valueN: '' + }, + { + id: 2, + name: 'BD', + valueN: 'bd' + }, + { + id: 3, + name: 'R&P', + valueN: 'r&p' + }, + { + id: 4, + name: 'Admin', + valueN: 'admin' + }, + { + id: 5, + name: 'SmartIT', + valueN: 'smartit' + }, + { + id: 6, + name: 'Purchasing', + valueN: 'purchasing' + }, + { + id: 7, + name: 'Contact Center', + valueN: 'contact center' + }, + { + id: 8, + name: 'Customer Service', + valueN: 'customer service' + } + ]; + showSecret: boolean = false; showSecret1: boolean = false; showSecret2: boolean = false; @@ -356,8 +426,8 @@ export class DashboardComponent implements OnInit { try { const data = { // tslint:disable-next-line:max-line-length - "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 ", - "params": ["vtiger_crmentity"] + '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 ', + 'params': ['vtiger_crmentity'] }; const response = await this._apiService.post('dynamic', data); if (response !== null) { @@ -370,6 +440,7 @@ export class DashboardComponent implements OnInit { this.resultData[i].birth_date = this._common.convertDate(this.resultData[i].birth_date); this.resultNum = this.resultData.length; this.Show1.push(this.resultData[i]); + this.Show1Depart.push(this.resultData[i]); } } else { @@ -402,9 +473,11 @@ export class DashboardComponent implements OnInit { this.resultDataOnHold[i].link = this._common.decodeURI(this.resultDataOnHold[i].link); this.resultDataOnHold[i].birth_date = this._common.convertDate(this.resultDataOnHold[i].birth_date); this.Show1Onhold.push(this.resultDataOnHold[i]); + this.Show1DepartOnhold.push(this.resultDataOnHold[i]); } } else { this.resultDataOnHold = []; + this.showSecret = !this.showSecret; } } catch (error) { // console.log(error); @@ -930,6 +1003,7 @@ setInterval(async () => { }); for (let i = 0; i < t9.length; i++) { + // tslint:disable-next-line:no-shadowed-variable const obj = { name: '', value: 0 @@ -1027,7 +1101,7 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; + if (item['type']) { st = item['type'].toLowerCase(); } @@ -1044,6 +1118,42 @@ setInterval(async () => { this.resultData = resultArray; // console.log(this.resultData); } + + getButton1Depart(valueN) { + console.log(valueN); + + if (this.Show1Depart.length === 0) { + return this.Show1Depart; + } + + const resultArray = []; + for (const item of this.Show1Depart) { + // console.log('item: ', item); + + let st = ''; + + if (item['department']) { + st = item['department'].toLowerCase(); + } + + const string2 = valueN.toLowerCase(); + if (st.startsWith(string2)) { + console.log(st); + resultArray.push(item); + } + + } + if (resultArray.length === 0) { + if (valueN !== '') { + this.showSecret1 = true; + } + } else if (resultArray.length > 0) { + this.showSecret1 = false; + } + this.resultData = resultArray; + + } + /* buttondataOnhold1 */ getButton1Onhold(valueN) { console.log(valueN); @@ -1057,7 +1167,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1074,6 +1183,41 @@ setInterval(async () => { } + getButton1DepartOnhold(valueN) { + console.log(valueN); + + if (this.Show1DepartOnhold.length === 0) { + return this.Show1DepartOnhold; + } + + const resultArray = []; + for (const item of this.Show1DepartOnhold) { + // console.log('item: ', item); + + let st = ''; + + if (item['department']) { + st = item['department'].toLowerCase(); + } + + const string2 = valueN.toLowerCase(); + if (st.startsWith(string2)) { + console.log(st); + resultArray.push(item); + } + + } + if (resultArray.length === 0) { + if (valueN !== '') { + this.showSecret2 = true; + } + } else if (resultArray.length > 0) { + this.showSecret2 = false; + } + this.resultDataOnHold = resultArray; + + } + getButton2(valueN) { console.log(valueN); @@ -1086,7 +1230,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1115,7 +1258,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1143,7 +1285,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1172,7 +1313,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1200,7 +1340,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1229,7 +1368,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1257,7 +1395,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1273,7 +1410,7 @@ setInterval(async () => { this.resultData5 = resultArray; } - /* buttondataOnhold1 */ + /* buttondataOnhold5 */ getButton5Onhold(valueN) { console.log(valueN); @@ -1286,7 +1423,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1314,7 +1450,6 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; if (item['type']) { st = item['type'].toLowerCase(); } @@ -1349,7 +1484,7 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; + if (item['type']) { st = item['type'].toLowerCase(); } @@ -1377,7 +1512,7 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; + if (item['type']) { st = item['type'].toLowerCase(); } @@ -1412,7 +1547,7 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; + if (item['type']) { st = item['type'].toLowerCase(); } @@ -1447,7 +1582,7 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; + if (item['type']) { st = item['type'].toLowerCase(); } @@ -1482,7 +1617,7 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; + if (item['type']) { st = item['type'].toLowerCase(); } @@ -1556,7 +1691,7 @@ setInterval(async () => { // console.log('item: ', item); let st = ''; - // st = item['team'].toLowerCase() + item['COMMENT'].toLowerCase() + item['custgroupName'].toLowerCase() + item['STATUS'].toLowerCase() ; + if (item['type']) { st = item['type'].toLowerCase(); } @@ -1965,7 +2100,7 @@ setInterval(async () => { for (const i in this.resultData8) { this.resultData8[i].link = this._common.decodeURI(this.resultData8[i].link); this.resultData8[i].birth_date = this._common.convertDate(this.resultData8[i].birth_date); - this.Show7.push(this.resultData8[i]); + this.Show8.push(this.resultData8[i]); } } else { this.resultData8 = []; -- libgit2 0.21.2