You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
2.5 KiB

1 year ago
  1. ALTER PROC proc_riskBasedAssessementRpt(
  2. @flag VARCHAR(50) = NULL
  3. ,@user VARCHAR(50) = NULL
  4. ,@country VARCHAR(50) = NULL
  5. ,@idNumber VARCHAR(50) = NULL
  6. ,@risk VARCHAR(50) = NULL
  7. ,@customerId VARCHAR(50) = NULL
  8. )AS
  9. BEGIN
  10. IF @flag = 'sumRpt'
  11. BEGIN
  12. DECLARE @MinVal INT = 0, @MaxVal INT = 10
  13. DECLARE @tblRisk TABLE (minValue INT, maxValue INT, risklevel VARCHAR(4))
  14. INSERT INTO @tblRisk(minValue,maxValue,risklevel)
  15. SELECT 1,4, 'L'
  16. UNION ALL
  17. SELECT 5,6, 'M'
  18. UNION ALL
  19. SELECT 7,8, 'H'
  20. UNION ALL
  21. SELECT 9,10, 'VH'
  22. SELECT @MinVal = minValue, @MaxVal = maxValue FROM @tblRisk WHERE risklevel = @risk
  23. SELECT
  24. ROW_NUMBER() OVER (ORDER BY customerId ASC) AS [No]
  25. ,customerId
  26. ,firstName AS [Name]
  27. ,idType
  28. ,idNumber
  29. ,ISNULL(RiskScore,0) AS WeightedRisk
  30. FROM dbo.customerMaster(NOLOCK) WHERE nativeCountry = ISNULL(@country,nativeCountry) AND idNumber = ISNULL(@idNumber,idNumber)
  31. AND ISNULL(RiskScore,0) BETWEEN @MinVal AND @MaxVal
  32. END
  33. IF @flag = 'detailRpt'
  34. BEGIN
  35. DECLARE @customerRisk TABLE (RiskType VARCHAR(100), Item VARCHAR(100), RiskScore DECIMAL(10,2), Weightage DECIMAL(10,2), WeightedScore DECIMAL(10,2))
  36. DECLARE @nativeCountry BIGINT, @prodServiceId BIGINT, @customerType BIGINT, @channel BIGINT
  37. SELECT
  38. @nativeCountry = nativeCountry
  39. ,@prodServiceId = 11058
  40. ,@customerType = occupation
  41. ,@channel = CASE WHEN customerType = '11068' THEN '11067' ELSE '11066' END
  42. FROM dbo.customerMaster(NOLOCK) WHERE customerId = @customerId --AND approvedDate IS NOT NULL
  43. --151 11058 8081 4700
  44. SELECT rh.RiskType,x.ItemName,ISNULL(rb.RiskScore,0.00) RiskScore,ISNULL(rh.Weightage,0.00) Weightage,ISNULL(rb.rbaScore,0.00) rbaScore FROM dbo.RiskTypeWeightage(NOLOCK) rh
  45. LEFT JOIN (
  46. SELECT countryId AS ItemId,countryName ItemName, 1 AS RiskType FROM dbo.countryMaster(NOLOCK) WHERE countryId = @nativeCountry
  47. UNION ALL
  48. SELECT valueId,detailTitle, 2 AS RiskType FROM dbo.staticDataValue(NOLOCK) WHERE TypeID = 7008 AND valueId = @prodServiceId
  49. UNION ALL
  50. SELECT valueId,detailTitle, 3 AS RiskType FROM dbo.staticDataValue(NOLOCK) WHERE TypeID = 2000 AND valueId = @customerType
  51. UNION ALL
  52. SELECT valueId,detailTitle, 4 AS RiskType FROM dbo.staticDataValue(NOLOCK) WHERE TypeID = 7009 AND valueId = @channel
  53. )x ON x.RiskType = rh.RowId
  54. LEFT JOIN dbo.RbaSetup(NOLOCK) rb ON rb.RiskType = rh.RowId AND x.RiskType = rb.RiskType AND x.ItemId = rb.Item
  55. END
  56. END