SELECT DISTINCT (CASE WHEN IR.call_type IS NULL THEN (CASE WHEN
IR.callmessagerowid=1654 THEN 5 WHEN ORIGIN = 'W' THEN (SELECT (CASE WHEN SubUserType = 'DL' THEN 1 WHEN SubUserType = 'DC' THEN 4 WHEN SubUserType = 'DS' THEN 2 ELSE -1 END) FROM Dishtvindia..Mlogin(NOLOCK) WHERE UserID = IR.complaintrecduser AND MainUserType = 'EXTL' AND IsActive IN(1,2) ) ELSE -1 END) WHEN IR.call_type = 'SR' THEN 8 WHEN IR.call_type = 'DL' THEN 1 WHEN IR.call_type = 'RO' THEN 3 WHEN IR.call_type = 'DC' THEN 4 WHEN IR.call_type = 'OB' THEN 5 WHEN IR.call_type = 'RC' THEN 6 WHEN IR.call_type = 'PR' THEN 7 ELSE -1 END) AS CallTypeID, (CASE WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT)=0 AND PN.RowID NOT IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 1 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT)>0 AND PN.RowID NOT IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 2 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT) <=1 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 1 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT) > 1 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 2 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT) = 0 THEN 1 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT) > 0 THEN 2 ELSE -1 END)AS SDR_ID, dbo.udf_SERVICE_GetTATHours(IR.complaintdt,IR.resolveddt) AS WorkingHourTATInMins, DATEDIFF(mi,IR.ComplaintDT,IR.ResolvedDT) AS ClockHourTATInMins, (CASE WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) < = 1440 AND PN.RowID NOT IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 1 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) > 1440 AND PN.RowID NOT IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 2 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) < = 2880 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 1 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) > 2880 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 2 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) < = 1440 THEN 1 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) > 1440 THEN 2 ELSE -1 END) AS TATCrossedID, (CASE WHEN DATEPART(HH,IR.ComplaintDT) BETWEEN 0 AND 17 THEN 1 WHEN DATEPART(HH,IR.ComplaintDT) BETWEEN 18 AND 23 THEN 2 ELSE -1 END)AS CallRecdID,IR.CallMessageRowID, 'Working4HrTat'= (CASE WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) < = 1440 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1 AND RowID > 0) THEN 1 WHEN dbo.udf_SERVICE_GetTATHours(IR.complaintdt,IR.resolveddt) between 0 and 240 AND not exists(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1 AND RowID > 0 and rowid=PN.RowID) THEN 1 else 2 END), 'Bucketing Activation'= (CASE WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 0 and 120 THEN 1 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 120 and 240 THEN 2 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 240 and 480 THEN 3 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 480 and 720 THEN 4 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 720 and 1440 THEN 5 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 1440 and 2880 THEN 6 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 2880 and 4320 THEN 7 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) > 4320 THEN 8 ELSE -1 END), 'ActivationTATAchieved'=( CASE WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 0 AND 360 AND CT.ServicePolicy=1 AND Sub.CreatedOn IS NOT NULL THEN 1 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) > 360 AND CT.ServicePolicy=1 AND Sub.CreatedOn IS NOT NULL THEN 2 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) BETWEEN 0 AND 720 AND (CT.ServicePolicy IS NULL OR CT.ServicePolicy = 0) AND Sub.CreatedOn IS NOT NULL THEN 1 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) > 720 AND (CT.ServicePolicy IS NULL OR CT.ServicePolicy = 0)AND Sub.CreatedOn IS NOT NULL THEN 2 ELSE 2 END), 'SameDayActivation'= (CASE WHEN DATEDIFF(dd,IR.resolveddt,Sub.CreatedOn) = 0 AND Sub.CreatedOn IS NOT NULL THEN 1 ELSE 2 END), CASE WHEN IR.VcNo <> '' AND Sub.CreatedOn IS NOT NULL THEN CONVERT(VARCHAR,dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn)) ELSE '-' END AS ActivationTAT, (CASE WHEN IR.AppontBucket=1 THEN 1 ELSE 2 END) AS AppontBucket, (CASE WHEN EXISTS( SELECT A.RowID FROM dishtvindia..mHillyAreaPinCodesForService A(NOLOCK) WHERE A.ISActive = 1 AND A.RowID = PN.RowID) THEN 1 ELSE 2 END)AS Hilly, (CASE WHEN ISNULL(IR.VoucherNo,'') = '' THEN IR.VcNo ELSE IR.VoucherNo END)AS VoucherNo, (CASE WHEN IR.Origin = 'W' THEN ML.Company +'('+ ML.Type +')' + '(' + ML.City + ')' ELSE '-' END) AS PartyName, (CASE WHEN IR.ComplaintRecdUser = 745 AND Origin = 'Z' THEN 1 WHEN IR.Origin = 'Z' AND IR.ComplaintRecdUser <> 745 THEN 2 WHEN IR.Origin = 'W' THEN 3 ELSE -1 END)AS Source, CASE WHEN IR.callmessagerowid NOT IN(1411,1829,1841) THEN IR.ProductType ELSE STM.Model_Type END as ProductType, (CASE WHEN STM.Model_Type = 'HD' THEN 1 ELSE 2 END) AS HighDefinition, (CASE WHEN ISNULL(IR.ins_status,0) = 9 THEN 1 WHEN ISNULL(IR.Pending_Reason_id,0) > 0 AND resolveddt < '2017-01-03 08:00' THEN 2 WHEN ISNULL(IR.Pending_Reason_id,0) = 0 AND resolveddt < '2017-01-03 08:00' THEN 1 WHEN ISNULL(IR.ins_status,0) = 0 AND resolveddt > '2017-01-03 08:00' THEN 2 END) AS InstallationResolved, (CASE WHEN IR.ActualFaultFoundID = 121 AND IR.callmessagerowid=1275 AND ISNULL(IR.Pending_Reason_Id,0)> 0 THEN 1 ELSE 2 END) As PrepaidRefund, (CASE WHEN IR.callmessagerowid IN(1621)THEN 1 ELSE 2 END)AS GoDirect, (CASE WHEN IR.callmessagerowid = 1623 THEN 1 ELSE 2 END) AS FreeMulti, (CASE WHEN SSQ.Rating = 1 THEN 1 WHEN SSQ.Rating = 2 THEN 2 WHEN SSQ.Rating = 3 THEN 3 WHEN SSQ.Rating = 4 THEN 4 WHEN SSQ.Rating = 5 THEN 5 ELSE '-' END) AS Rating, DATEDIFF(mi,GDC.CreatedON,GDC.modifiedON) / 60.00 AS CrcTat, 'CVA' = (CASE WHEN EXISTS (SELECT 1 FROM dishtvindia..mRestrictedCableViolentAreaPinCode MR(nolock) WHERE IsActive = 1 AND 1 = (CASE WHEN MR.PinRowID = sub.pin AND MR.LocalityId IS NULL THEN 1 WHEN MR.PinRowID = sub.pin AND MR.LocalityId = sub.localityRowID THEN 1 WHEN MR.PinRowID <> sub.pin THEN 0 ELSE 0 END) ) THEN 1 ELSE 2 END), 'DISHFLIX' = CASE WHEN EXISTS(SELECT 1 FROM dishtvindia..tDishFlix(NOLOCK) WHERE VCNo = IR.VCNo) THEN 1 ELSE 2 END, 'PinCodeType' = (CASE WHEN ISNULL(PN.PinCodeCategory,0) = 1 THEN 1 WHEN ISNULL(PN.PinCodeCategory,0) = 2 THEN 2 ELSE 3 END), 'MonoblockStatus'= CASE WHEN ISNULL(IR.VcNo,'')='' OR IR.ProductType<>'HD' OR IR.ProductType IS NULL THEN -1 WHEN IR.ProductType='HD' AND EXISTS(SELECT 1 FROM dishtvindia..MonoBlock_lnb WHERE vcno=IR.VCNo) THEN 1 ELSE 2 END, (CASE WHEN ISNULL(IsProcessed,0) = 1 AND ISNULL(IR.ins_status,0) = 9 AND CM.RowID NOT IN(1411,1829,1841) THEN 1 WHEN ISNULL(IsProcessed,0) = 0 AND ISNULL(IR.ins_status,0) = 9 AND CM.RowID NOT IN(1411,1829,1841) THEN 2 ELSE -1 END) HappyCode, (CASE WHEN EXISTS(SELECT 1 FROM mDccBaseTownPincodes mDTP (NOLOCK) WHERE mDTP.ID > 0 AND IsActive = 1 AND IR.PinRowId = PinRowID AND ISNULL(LocalityRowId,0) <> 0 AND mDTP.LocalityRowId = IR.localityRowID) THEN 1 WHEN EXISTS(SELECT 1 FROM mDccBaseTownPincodes mDTP1 (NOLOCK) WHERE mDTP1.ID > 0 AND IsActive = 1 AND IR.PinRowId = PinRowID AND ISNULL(LocalityRowId,0) = 0) THEN 1 ELSE 2 END) AS DccBaseTown, (CASE WHEN dbo.udf_SERVICE_GetTATHours(IR.complaintdt,IR.resolveddt) <= 180 THEN 1 ELSE 2 END) AS ThreeHrsHDTat, 'Priority' = (CASE WHEN ISNULL(IR.Priority,0) = 1 THEN 'YES' ELSE 'NO' END), 'PrefferedDate' = IR.PrefferedDate, 'TypeofEscalation' = (CASE WHEN IR. [Priority] = 8 THEN 1 WHEN IR.[Priority] = 9 THEN 2 WHEN IR.callmessagerowid = 1641 THEN 3 WHEN IR.callmessagerowid = 1670 THEN 4 ELSE -1 END), (CASE WHEN ISNULL(STM.boxcategory,'') = 'LIB' THEN 1 ELSE 2 END)AS Liberty, ISNULL(tt.TechTypeName,'-') as TechnicianType,sub.smsid, (CASE WHEN ISNULL(IR.ProcessId,0) = 10810 AND CM.RowID = 1972 THEN CM.Name + '- Auto' WHEN ISNULL(IR.ProcessId,0) = 10811 AND CM.RowID = 1958 THEN CM.Name + '- Auto' WHEN CHARINDEX('IU:3|IN:1',IR.DealerName) > 0 THEN CM.Name + '- (Without ODU & With Installation)' WHEN CHARINDEX('IU:3|IN:0',IR.DealerName) > 0 THEN CM.Name + '- (Without ODU)' WHEN CHARINDEX('IU:1|IN:1',IR.DealerName) > 0 THEN CM.Name + '- (Without ODU & With Installation)' WHEN CHARINDEX('IU:1|IN:0',IR.DealerName) > 0 THEN CM.Name + '- (Without ODU)' ELSE CM.Name END)AS CallCategory, RM.Name AS NotDoneReason,TM.TechnicianID,IR.ArrivalDate AS AppointmentDate,IR.Customer_name,IR.agonycount, L.Name AS Locality,DC.DCCType,UV.division,UV.Som_Name AS Territory,STB.STBNo,STM.ModelName,STM.Model_Type, REPLACE(REPLACE(Ofr.OfferDesc,'<b>',''),'</b>','') AS OfferDesc,ISNULL(APH.CreateOn,IR.ContactedOn)AS ResponseTime, UV.sz_rowid AS ZSHID,UV.sv_rowid AS ASEID,DC.GlCode AS DcID, IR.VcNo,IR.WebRowID,IR.RowID AS ZTTicket,IR.ComplaintDt AS ComplaintDate,GDC.CreatedOn AS TrnsferToCRC,GDC.ModifiedOn AS CrcResolvedTime, HD.ItemName AS HdmiItem, HD.Amount AS HdmiAmount,ISNULL(IR.orderid,'')AS orderid,ME.SourceName,IR.ramarks As Remarks, SSQ.SignalStrength_12688,SSQ.SignalQuality_12688,SSQ.SignalStrength_10990,SSQ.Signa lQuality_10990,SSQ.SignalStrength_12522,SSQ.SignalQuality_12522, PN.Name As PinCode, (CASE WHEN CT.ServiCePolicy = 1 THEN 'Top' ELSE 'Non-Top' END)AS CityType,sub.Offer_Type, CT.Name AS City, (CASE WHEN ISNULL(Inst_MobileNo,'') <> '' THEN Inst_MobileNo ELSE Call_Phone END)AS MobileNo, IR.ResolvedDt AS ResolvedDate,Sub.CreatedOn AS ActivationDate,LM.Name AS CallCenterAgentID,ISNULL(UV.csm_name,'') AS csm_name FROM Complainttrn IR(NOLOCK) LEFT JOIN UserMaster ML(NOLOCK)ON (ML.UserID = IR.ComplaintRecdUser AND ML.Type IN('DS','DL')) INNER JOIN DCCMaster DC(NOLOCK)ON(DC.GlCode=IR.ServicerID) INNER JOIN dishtvindia..UV_SH_SZ_SV_New UV(NOLOCK)ON(UV.SV_RowID=DC.ServiceEngineerRowIDRepair) LEFT Outer JOIN Subscribers sub(NOLOCK) ON(IR.VcNo=Sub.vcno) and NOT EXISTS(SELECT 1 FROM mTestingVcVoucherStb(NOLOCK)WHERE ItemId=2 AND ItemNo=sub.vcno) and sub.TypeOfDealer IN(1,2) and sub.Status IN (1,2) LEFT OUTER JOIN SubscriberDetails SD(NOLOCK)ON SD.SMSID=SUB.SMSID LEFT JOIN dishtvindia..activationitems_nw AI(NOLOCK)ON IR.vcno=AI.vcno LEFT JOIN dishtvindia..activationmaster_nw AM(NOLOCK)ON (AM.ActivationID = AI.ActivationID) LEFT JOIN dishtvindia..STBInfo STB(NOLOCK)ON AI.STBNo = STB.STBNo LEFT JOIN dishtvindia..STB_Model_Master STM(NOLOCK)ON STM.Rowid = STB.stbmodelrowid INNER JOIN dishtvindia..PincodeMaster PN(NOLOCK) ON (PN.RowId=IR.PinRowiD AND PN.rowID > 0 ) INNER JOIN CityDivideMaster CD(NOLOCK)ON CD.RowID = PN.CitydivideRowID INNER JOIN CityMaster CT(NOLOCK) ON (CT.RowID = CD.CityRowID) INNER JOIN CallMessage CM(NOLOCK)ON CM.RowID = IR.CallmessageRowID LEFT OUTER JOIN ReasonMaster RM(NOLOCK)ON RM.RowID = IR.Pending_Reason_ID LEFT OUTER JOIN TechnicianMaster TM(NOLOCK) ON TM.TechnicianID=IR.TechnicianID LEFT JOIN TechnicianTypeMaster TT(NOLOCK) ON TT.TechTypeId =TRY_CONVERT(INT,TM.TechnicianType) LEFT JOIN AppointmentTime_History APH(NOLOCK)ON (APH.WebRowID = IR.Webrowid AND APH.CreateOn = (SELECT MIN(a.CreateOn) FROM AppointmentTime_History a (nolock) WHERE a.WebRowID = IR.Webrowid)) LEFT JOIN dishtvindia..Loginmaster LM(NOLOCK)ON LM.RowID = IR.ComplaintRecdUser LEFT JOIN dishtvindia..voucherinfo VI(NOLOCK)ON VI.VoucherNo = IR.Voucherno LEFT JOIN tSignalStrengthQuality SSQ(NOLOCK)ON SSQ.TokenNo = IR.Webrowid LEFT JOIN tGDCallVerificationByCRC_Log GDC(NOLOCK)ON GDC.TokenNo = IR.Webrowid LEFT JOIN (SELECT WebRowID,ItemName, Amount FROM dishtvindia..tHDMICableUtilization(NOLOCK) GROUP BY WebRowID, ItemName, Amount )HD ON IR.Webrowid = HD.WebRowID LEFT JOIN dishtvindia..LocalityMaster L(NOLOCK) ON IR.localityRowID = L.RowID left join DishTVINDIA..mofferpackage mpack(nolock) on(IR.OfferPackageID=mpack.OfferPackageID) left join DishTVINDIA..moffertype ofr(nolock) on(mpack.offerid=ofr.offerid) LEFT JOIN tHappyCodeProcess THCP (NOLOCK) ON IR.rowid = THCP.TicketId AND THCP.Date_time > IR.complaintdt AND THCP.Rid = (SELECT MAX(Rid) FROM tHappyCodeProcess tHCP1(NOLOCK) WHERE tHCP1.TicketId = IR.Webrowid AND THCP.Date_time > IR.complaintdt AND IsProcessed =1) LEFT JOIN mECommerceSources ME(NOLOCK)ON IR.WARRANTY_AMC = CAST(ME.RowId AS VARCHAR) WHERE IR.Status IN('RS','FC','RT') AND IR.Complaintdt > GETDATE()-120 AND IR.Resolveddt BETWEEN @StartDate AND @EndDate AND EXISTS(SELECT 1 FROM mCallMessageInstallation(NOLOCK)WHERE callmessagerowid=IR.CallmessageRowID) AND IR.callmessagerowid NOT IN(1829,1841) AND DC.GlCode > 0 AND ISNULL(AM.DownloadDone,0) IN(0, DECLARE @StartDate datetime DECLARE @EndDate datetime SET @StartDate=convert(datetime,left(convert(varchar,getdate()-1,121),7)+'-01 00:00:00.000') SET @EndDate=convert(datetime,left(convert(varchar,getdate()- 1,121),11)+'23:59:59.998') SELECT DISTINCT (CASE WHEN IR.call_type IS NULL THEN (CASE WHEN IR.callmessagerowid=1654 THEN 5 WHEN ORIGIN = 'W' THEN (SELECT (CASE WHEN SubUserType = 'DL' THEN 1 WHEN SubUserType = 'DC' THEN 4 WHEN SubUserType = 'DS' THEN 2 ELSE -1 END) FROM Dishtvindia..Mlogin(NOLOCK) WHERE UserID = IR.complaintrecduser AND MainUserType = 'EXTL' AND IsActive IN(1,2) ) ELSE -1 END) WHEN IR.call_type = 'SR' THEN 8 WHEN IR.call_type = 'DL' THEN 1 WHEN IR.call_type = 'RO' THEN 3 WHEN IR.call_type = 'DC' THEN 4 WHEN IR.call_type = 'OB' THEN 5 WHEN IR.call_type = 'RC' THEN 6 WHEN IR.call_type = 'PR' THEN 7 ELSE -1 END) AS CallTypeID, (CASE WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT)=0 AND PN.RowID NOT IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 1 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT)>0 AND PN.RowID NOT IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 2 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT) <=1 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 1 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT) > 1 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 2 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT) = 0 THEN 1 WHEN DATEDIFF(dd,IR.ComplaintDT,IR.ResolvedDT) > 0 THEN 2 ELSE -1 END)AS SDR_ID, dbo.udf_SERVICE_GetTATHours(IR.complaintdt,IR.resolveddt) AS WorkingHourTATInMins, DATEDIFF(mi,IR.ComplaintDT,IR.ResolvedDT) AS ClockHourTATInMins, (CASE WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) < = 1440 AND PN.RowID NOT IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 1 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) > 1440 AND PN.RowID NOT IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 2 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) < = 2880 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 1 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) > 2880 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1) THEN 2 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) < = 1440 THEN 1 WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) > 1440 THEN 2 ELSE -1 END) AS TATCrossedID, (CASE WHEN DATEPART(HH,IR.ComplaintDT) BETWEEN 0 AND 17 THEN 1 WHEN DATEPART(HH,IR.ComplaintDT) BETWEEN 18 AND 23 THEN 2 ELSE -1 END)AS CallRecdID,IR.CallMessageRowID, 'Working4HrTat'= (CASE WHEN DATEDIFF(MI,IR.complaintdt,IR.resolveddt) < = 1440 AND PN.RowID IN(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1 AND RowID > 0) THEN 1 WHEN dbo.udf_SERVICE_GetTATHours(IR.complaintdt,IR.resolveddt) between 0 and 240 AND not exists(SELECT RowID FROM dishtvindia..mHillyAreaPinCodesForService(NOLOCK)WHERE ISActive = 1 AND RowID > 0 and rowid=PN.RowID) THEN 1 else 2 END), 'Bucketing Activation'= (CASE WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 0 and 120 THEN 1 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 120 and 240 THEN 2 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 240 and 480 THEN 3 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 480 and 720 THEN 4 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 720 and 1440 THEN 5 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 1440 and 2880 THEN 6 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 2880 and 4320 THEN 7 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) > 4320 THEN 8 ELSE -1 END), 'ActivationTATAchieved'=( CASE WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) between 0 AND 360 AND CT.ServicePolicy=1 AND Sub.CreatedOn IS NOT NULL THEN 1 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) > 360 AND CT.ServicePolicy=1 AND Sub.CreatedOn IS NOT NULL THEN 2 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) BETWEEN 0 AND 720 AND (CT.ServicePolicy IS NULL OR CT.ServicePolicy = 0) AND Sub.CreatedOn IS NOT NULL THEN 1 WHEN dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn) > 720 AND (CT.ServicePolicy IS NULL OR CT.ServicePolicy = 0)AND Sub.CreatedOn IS NOT NULL THEN 2 ELSE 2 END), 'SameDayActivation'= (CASE WHEN DATEDIFF(dd,IR.resolveddt,Sub.CreatedOn) = 0 AND Sub.CreatedOn IS NOT NULL THEN 1 ELSE 2 END), CASE WHEN IR.VcNo <> '' AND Sub.CreatedOn IS NOT NULL THEN CONVERT(VARCHAR,dbo.udf_SERVICE_GetTATHours(IR.resolveddt,Sub.CreatedOn)) ELSE '-' END AS ActivationTAT, (CASE WHEN IR.AppontBucket=1 THEN 1 ELSE 2 END) AS AppontBucket, (CASE WHEN EXISTS( SELECT A.RowID FROM dishtvindia..mHillyAreaPinCodesForService A(NOLOCK) WHERE A.ISActive = 1 AND A.RowID = PN.RowID) THEN 1 ELSE 2 END)AS Hilly, (CASE WHEN ISNULL(IR.VoucherNo,'') = '' THEN IR.VcNo ELSE IR.VoucherNo END)AS VoucherNo, (CASE WHEN IR.Origin = 'W' THEN ML.Company +'('+ ML.Type +')' + '(' + ML.City + ')' ELSE '-' END) AS PartyName, (CASE WHEN IR.ComplaintRecdUser = 745 AND Origin = 'Z' THEN 1 WHEN IR.Origin = 'Z' AND IR.ComplaintRecdUser <> 745 THEN 2 WHEN IR.Origin = 'W' THEN 3 ELSE -1 END)AS Source, CASE WHEN IR.callmessagerowid NOT IN(1411,1829,1841) THEN IR.ProductType ELSE STM.Model_Type END as ProductType, (CASE WHEN STM.Model_Type = 'HD' THEN 1 ELSE 2 END) AS HighDefinition, (CASE WHEN ISNULL(IR.ins_status,0) = 9 THEN 1 WHEN ISNULL(IR.Pending_Reason_id,0) > 0 AND resolveddt < '2017-01-03 08:00' THEN 2 WHEN ISNULL(IR.Pending_Reason_id,0) = 0 AND resolveddt < '2017-01-03 08:00' THEN 1 WHEN ISNULL(IR.ins_status,0) = 0 AND resolveddt > '2017-01-03 08:00' THEN 2 END) AS InstallationResolved, (CASE WHEN IR.ActualFaultFoundID = 121 AND IR.callmessagerowid=1275 AND ISNULL(IR.Pending_Reason_Id,0)> 0 THEN 1 ELSE 2 END) As PrepaidRefund, (CASE WHEN IR.callmessagerowid IN(1621)THEN 1 ELSE 2 END)AS GoDirect, (CASE WHEN IR.callmessagerowid = 1623 THEN 1 ELSE 2 END) AS FreeMulti, (CASE WHEN SSQ.Rating = 1 THEN 1 WHEN SSQ.Rating = 2 THEN 2 WHEN SSQ.Rating = 3 THEN 3 WHEN SSQ.Rating = 4 THEN 4 WHEN SSQ.Rating = 5 THEN 5 ELSE '-' END) AS Rating, DATEDIFF(mi,GDC.CreatedON,GDC.modifiedON) / 60.00 AS CrcTat, 'CVA' = (CASE WHEN EXISTS (SELECT 1 FROM dishtvindia..mRestrictedCableViolentAreaPinCode MR(nolock) WHERE IsActive = 1 AND 1 = (CASE WHEN MR.PinRowID = sub.pin AND MR.LocalityId IS NULL THEN 1 WHEN MR.PinRowID = sub.pin AND MR.LocalityId = sub.localityRowID THEN 1 WHEN MR.PinRowID <> sub.pin THEN 0 ELSE 0 END) ) THEN 1 ELSE 2 END), 'DISHFLIX' = CASE WHEN EXISTS(SELECT 1 FROM dishtvindia..tDishFlix(NOLOCK) WHERE VCNo = IR.VCNo) THEN 1 ELSE 2 END, 'PinCodeType' = (CASE WHEN ISNULL(PN.PinCodeCategory,0) = 1 THEN 1 WHEN ISNULL(PN.PinCodeCategory,0) = 2 THEN 2 ELSE 3 END), 'MonoblockStatus'= CASE WHEN ISNULL(IR.VcNo,'')='' OR IR.ProductType<>'HD' OR IR.ProductType IS NULL THEN -1 WHEN IR.ProductType='HD' AND EXISTS(SELECT 1 FROM dishtvindia..MonoBlock_lnb WHERE vcno=IR.VCNo) THEN 1 ELSE 2 END, (CASE WHEN ISNULL(IsProcessed,0) = 1 AND ISNULL(IR.ins_status,0) = 9 AND CM.RowID NOT IN(1411,1829,1841) THEN 1 WHEN ISNULL(IsProcessed,0) = 0 AND ISNULL(IR.ins_status,0) = 9 AND CM.RowID NOT IN(1411,1829,1841) THEN 2 ELSE -1 END) HappyCode, (CASE WHEN EXISTS(SELECT 1 FROM mDccBaseTownPincodes mDTP (NOLOCK) WHERE mDTP.ID > 0 AND IsActive = 1 AND IR.PinRowId = PinRowID AND ISNULL(LocalityRowId,0) <> 0 AND mDTP.LocalityRowId = IR.localityRowID) THEN 1 WHEN EXISTS(SELECT 1 FROM mDccBaseTownPincodes mDTP1 (NOLOCK) WHERE mDTP1.ID > 0 AND IsActive = 1 AND IR.PinRowId = PinRowID AND ISNULL(LocalityRowId,0) = 0) THEN 1 ELSE 2 END) AS DccBaseTown, (CASE WHEN dbo.udf_SERVICE_GetTATHours(IR.complaintdt,IR.resolveddt) <= 180 THEN 1 ELSE 2 END) AS ThreeHrsHDTat, 'Priority' = (CASE WHEN ISNULL(IR.Priority,0) = 1 THEN 'YES' ELSE 'NO' END), 'PrefferedDate' = IR.PrefferedDate, 'TypeofEscalation' = (CASE WHEN IR. [Priority] = 8 THEN 1 WHEN IR.[Priority] = 9 THEN 2 WHEN IR.callmessagerowid = 1641 THEN 3 WHEN IR.callmessagerowid = 1670 THEN 4 ELSE -1 END), (CASE WHEN ISNULL(STM.boxcategory,'') = 'LIB' THEN 1 ELSE 2 END)AS Liberty, ISNULL(tt.TechTypeName,'-') as TechnicianType,sub.smsid, (CASE WHEN ISNULL(IR.ProcessId,0) = 10810 AND CM.RowID = 1972 THEN CM.Name + '- Auto' WHEN ISNULL(IR.ProcessId,0) = 10811 AND CM.RowID = 1958 THEN CM.Name + '- Auto' WHEN CHARINDEX('IU:3|IN:1',IR.DealerName) > 0 THEN CM.Name + '- (Without ODU & With Installation)' WHEN CHARINDEX('IU:3|IN:0',IR.DealerName) > 0 THEN CM.Name + '- (Without ODU)' WHEN CHARINDEX('IU:1|IN:1',IR.DealerName) > 0 THEN CM.Name + '- (Without ODU & With Installation)' WHEN CHARINDEX('IU:1|IN:0',IR.DealerName) > 0 THEN CM.Name + '- (Without ODU)' ELSE CM.Name END)AS CallCategory, RM.Name AS NotDoneReason,TM.TechnicianID,IR.ArrivalDate AS AppointmentDate,IR.Customer_name,IR.agonycount, L.Name AS Locality,DC.DCCType,UV.division,UV.Som_Name AS Territory,STB.STBNo,STM.ModelName,STM.Model_Type, REPLACE(REPLACE(Ofr.OfferDesc,'<b>',''),'</b>','') AS OfferDesc,ISNULL(APH.CreateOn,IR.ContactedOn)AS ResponseTime, UV.sz_rowid AS ZSHID,UV.sv_rowid AS ASEID,DC.GlCode AS DcID, IR.VcNo,IR.WebRowID,IR.RowID AS ZTTicket,IR.ComplaintDt AS ComplaintDate,GDC.CreatedOn AS TrnsferToCRC,GDC.ModifiedOn AS CrcResolvedTime, HD.ItemName AS HdmiItem, HD.Amount AS HdmiAmount,ISNULL(IR.orderid,'')AS orderid,ME.SourceName,IR.ramarks As Remarks, SSQ.SignalStrength_12688,SSQ.SignalQuality_12688,SSQ.SignalStrength_10990,SSQ.Signa lQuality_10990,SSQ.SignalStrength_12522,SSQ.SignalQuality_12522, PN.Name As PinCode, (CASE WHEN CT.ServiCePolicy = 1 THEN 'Top' ELSE 'Non-Top' END)AS CityType,sub.Offer_Type, CT.Name AS City, (CASE WHEN ISNULL(Inst_MobileNo,'') <> '' THEN Inst_MobileNo ELSE Call_Phone END)AS MobileNo, IR.ResolvedDt AS ResolvedDate,Sub.CreatedOn AS ActivationDate,LM.Name AS CallCenterAgentID,ISNULL(UV.csm_name,'') AS csm_name FROM Complainttrn IR(NOLOCK) LEFT JOIN UserMaster ML(NOLOCK)ON (ML.UserID = IR.ComplaintRecdUser AND ML.Type IN('DS','DL')) INNER JOIN DCCMaster DC(NOLOCK)ON(DC.GlCode=IR.ServicerID) INNER JOIN dishtvindia..UV_SH_SZ_SV_New UV(NOLOCK)ON(UV.SV_RowID=DC.ServiceEngineerRowIDRepair) LEFT Outer JOIN Subscribers sub(NOLOCK) ON(IR.VcNo=Sub.vcno) and NOT EXISTS(SELECT 1 FROM mTestingVcVoucherStb(NOLOCK)WHERE ItemId=2 AND ItemNo=sub.vcno) and sub.TypeOfDealer IN(1,2) and sub.Status IN (1,2) LEFT OUTER JOIN SubscriberDetails SD(NOLOCK)ON SD.SMSID=SUB.SMSID LEFT JOIN dishtvindia..activationitems_nw AI(NOLOCK)ON IR.vcno=AI.vcno LEFT JOIN dishtvindia..activationmaster_nw AM(NOLOCK)ON (AM.ActivationID = AI.ActivationID) LEFT JOIN dishtvindia..STBInfo STB(NOLOCK)ON AI.STBNo = STB.STBNo LEFT JOIN dishtvindia..STB_Model_Master STM(NOLOCK)ON STM.Rowid = STB.stbmodelrowid INNER JOIN dishtvindia..PincodeMaster PN(NOLOCK) ON (PN.RowId=IR.PinRowiD AND PN.rowID > 0 ) INNER JOIN CityDivideMaster CD(NOLOCK)ON CD.RowID = PN.CitydivideRowID INNER JOIN CityMaster CT(NOLOCK) ON (CT.RowID = CD.CityRowID) INNER JOIN CallMessage CM(NOLOCK)ON CM.RowID = IR.CallmessageRowID LEFT OUTER JOIN ReasonMaster RM(NOLOCK)ON RM.RowID = IR.Pending_Reason_ID LEFT OUTER JOIN TechnicianMaster TM(NOLOCK) ON TM.TechnicianID=IR.TechnicianID LEFT JOIN TechnicianTypeMaster TT(NOLOCK) ON TT.TechTypeId =TRY_CONVERT(INT,TM.TechnicianType) LEFT JOIN AppointmentTime_History APH(NOLOCK)ON (APH.WebRowID = IR.Webrowid AND APH.CreateOn = (SELECT MIN(a.CreateOn) FROM AppointmentTime_History a (nolock) WHERE a.WebRowID = IR.Webrowid)) LEFT JOIN dishtvindia..Loginmaster LM(NOLOCK)ON LM.RowID = IR.ComplaintRecdUser LEFT JOIN dishtvindia..voucherinfo VI(NOLOCK)ON VI.VoucherNo = IR.Voucherno LEFT JOIN tSignalStrengthQuality SSQ(NOLOCK)ON SSQ.TokenNo = IR.Webrowid LEFT JOIN tGDCallVerificationByCRC_Log GDC(NOLOCK)ON GDC.TokenNo = IR.Webrowid LEFT JOIN (SELECT WebRowID,ItemName, Amount FROM dishtvindia..tHDMICableUtilization(NOLOCK) GROUP BY WebRowID, ItemName, Amount )HD ON IR.Webrowid = HD.WebRowID LEFT JOIN dishtvindia..LocalityMaster L(NOLOCK) ON IR.localityRowID = L.RowID left join DishTVINDIA..mofferpackage mpack(nolock) on(IR.OfferPackageID=mpack.OfferPackageID) left join DishTVINDIA..moffertype ofr(nolock) on(mpack.offerid=ofr.offerid) LEFT JOIN tHappyCodeProcess THCP (NOLOCK) ON IR.rowid = THCP.TicketId AND THCP.Date_time > IR.complaintdt AND THCP.Rid = (SELECT MAX(Rid) FROM tHappyCodeProcess tHCP1(NOLOCK) WHERE tHCP1.TicketId = IR.Webrowid AND THCP.Date_time > IR.complaintdt AND IsProcessed =1) LEFT JOIN mECommerceSources ME(NOLOCK)ON IR.WARRANTY_AMC = CAST(ME.RowId AS VARCHAR) WHERE IR.Status IN('RS','FC','RT') AND IR.Complaintdt > GETDATE()-120 AND IR.Resolveddt BETWEEN @StartDate AND @EndDate AND EXISTS(SELECT 1 FROM mCallMessageInstallation(NOLOCK)WHERE callmessagerowid=IR.CallmessageRowID) AND IR.callmessagerowid NOT IN(1829,1841) AND DC.GlCode > 0 AND ISNULL(AM.DownloadDone,0) IN(0,1)