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.

1514 lines
83 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_transactionView] Script Date: 11/10/2023 12:22:18 AM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. ALTER PROC [dbo].[proc_transactionView] (
  9. @flag VARCHAR(50)
  10. ,@user VARCHAR(30) = NULL
  11. ,@controlNo VARCHAR(30) = NULL
  12. ,@tranId BIGINT = NULL
  13. ,@message NVARCHAR(500) = NULL
  14. ,@messageComplaince VARCHAR(500) = NULL
  15. ,@messageOFAC VARCHAR(500) = NULL
  16. ,@messageCashLimitHold VARCHAR(500) = NULL
  17. ,@lockMode CHAR(1) = NULL
  18. ,@viewType VARCHAR(50) = NULL
  19. ,@viewMsg VARCHAR(MAX) = NULL
  20. ,@branch INT = NULL
  21. ,@sortBy VARCHAR(50) = NULL
  22. ,@sortOrder VARCHAR(5) = NULL
  23. ,@pageSize INT = NULL
  24. ,@pageNumber INT = NULL
  25. ,@ip VARCHAR(MAX) = NULL
  26. ,@dcInfo VARCHAR(MAX) = NULL
  27. ,@holdTranId INT = NULL
  28. ,@rowId INT = NULL
  29. ,@newAnswer VARCHAR(50) = NULL
  30. )
  31. AS
  32. -----------------------------------
  33. --July 14 --> Flag='@flag='Compliance'
  34. --Aug 05 JME-567 ->add col 'receiverNameAlt' changes to show BENEFICIARY NAME AS PER BANK
  35. --Sept 21 #134 -> Allow edit option of address in Town Area
  36. --Replace with FNAGetCustomerAddress
  37. --#298 Trim white space of Control number and TranId
  38. --#469 Show additional fields incase of Payment of Import Good
  39. --#334 : OFAC screening changes.
  40. --#101: mobile changes
  41. --#618 ID TYPE empty for mobile transaction
  42. --#807 Add hyperlink as View Details in Search transaction --AGT: VIEW TXN (SEARCH TRANSACTION)
  43. -- #932 - goods origin
  44. --#1320 - Remove Khanji character from search transaction
  45. --#1404 - @flag = 's' , add payer label in search transactioN
  46. --#1553 - Search transaction ui , @flag = 's'
  47. --#9658 -- add delete trouble ticket in search transaction
  48. --#10906 - approve transacation doc details
  49. --#10703 - allow edit Questionnaire , @flag = 'show-QA'
  50. --#18970 change to redirect to edit customer page
  51. -----------------------------------
  52. DECLARE @select_field_list VARCHAR(MAX)
  53. ,@extra_field_list VARCHAR(MAX)
  54. ,@table VARCHAR(MAX)
  55. ,@sql_filter VARCHAR(MAX)
  56. DECLARE @controlNoEncrypted VARCHAR(100)
  57. ,@code VARCHAR(50)
  58. ,@userName VARCHAR(50)
  59. ,@password VARCHAR(50)
  60. ,@userType VARCHAR(10)
  61. ,@tranStatus VARCHAR(50)
  62. ,@tranIdType CHAR(1)
  63. ,@voucherNo VARCHAR(50)
  64. ,@nepDate VARCHAR(50)
  65. SET NOCOUNT ON;
  66. SET XACT_ABORT ON;
  67. SET @tranIdType = DBO.FNAGetTranIdType(LTRIM(RTRIM(@tranId)))
  68. SET @nepDate = GETDATE()
  69. IF @controlNo IS NOT NULL
  70. BEGIN
  71. SET @controlNo = LTRIM(RTRIM(@controlNo))
  72. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  73. SELECT @tranId = id
  74. ,@tranStatus = tranStatus
  75. ,@holdTranId = holdTranId
  76. FROM vwRemitTran WITH (NOLOCK)
  77. WHERE controlNo = @controlNoEncrypted
  78. END
  79. ELSE IF @tranId IS NOT NULL
  80. BEGIN
  81. IF @tranIdType = 'H' --- h - remitTRanTemp , c- remitTran
  82. SELECT @controlNoEncrypted = controlNo
  83. ,@tranStatus = tranStatus
  84. ,@voucherNo = voucherNo
  85. ,@holdTranId = holdTranId
  86. ,@controlNo = dbo.FNADecryptString(controlNo)
  87. FROM vwremitTran WITH (NOLOCK)
  88. WHERE holdTranId = @tranId
  89. ELSE
  90. SELECT @controlNoEncrypted = controlNo
  91. ,@tranStatus = tranStatus
  92. ,@voucherNo = voucherNo
  93. ,@holdTranId = holdTranId
  94. ,@controlNo = dbo.FNADecryptString(controlNo)
  95. FROM remitTran WITH (NOLOCK)
  96. WHERE id = @tranId
  97. IF LEN(@controlNoEncrypted) = 0
  98. SET @controlNoEncrypted = '0'
  99. END
  100. IF @flag = 's'
  101. BEGIN
  102. DECLARE @partnerId INT
  103. ,@isRealTime BIT
  104. ,@pcountry INT
  105. ,@IsQuestionnaire VARCHAR(30) = 'NONE'
  106. ,@TranType CHAR(1) = 'I'
  107. ,@customerId INT
  108. SELECT @customerId = customerid
  109. FROM tranSendersTemp(NOLOCK)
  110. WHERE tranId = @tranId
  111. SELECT @partnerId = pSuperAgent
  112. ,@pcountry = CM.COUNTRYID
  113. FROM REMITTRANTEMP(NOLOCK) RTT
  114. INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = RTT.PCOUNTRY
  115. WHERE DBO.DECRYPTDB(CONTROLNO) = @controlNo
  116. SELECT @isRealTime = isRealTime
  117. FROM TblPartnerwiseCountry(NOLOCK)
  118. WHERE AgentId = @partnerId
  119. AND COUNTRYID = @pcountry
  120. IF @viewType = 'COMPLIANCE'
  121. BEGIN
  122. SELECT @TranType = tranType
  123. ,@holdTranId = holdtranId
  124. FROM vwRemitTran(NOLOCK)
  125. WHERE controlNo = @controlNoEncrypted
  126. OR isnull(id, holdTranId) = @tranId
  127. IF NOT EXISTS (
  128. SELECT *
  129. FROM TBL_TXN_COMPLIANCE_CDDI(NOLOCK)
  130. WHERE TRAN_ID = @holdTranId
  131. )
  132. BEGIN
  133. IF @TranType = 'M'
  134. BEGIN
  135. IF EXISTS (
  136. SELECT TOP 1 1
  137. FROM remitTranCompliance RTC(NOLOCK)
  138. INNER JOIN csDetail CD(NOLOCK) ON RTC.csDetailTranId = CD.csDetailId
  139. WHERE RTC.TranId = @tranId
  140. AND CD.nextAction = 'Q'
  141. )
  142. BEGIN
  143. SET @IsQuestionnaire = 'ONLY NORMAL'
  144. END
  145. IF EXISTS (
  146. SELECT *
  147. FROM remitTranCompliance(NOLOCK)
  148. WHERE TranId = @tranId
  149. AND reason = 'Questionnaire require due to Visa Status'
  150. )
  151. BEGIN
  152. IF @IsQuestionnaire = 'ONLY NORMAL'
  153. BEGIN
  154. SET @IsQuestionnaire = 'BOTH'
  155. END
  156. ELSE
  157. BEGIN
  158. SET @IsQuestionnaire = 'ONLY VISA'
  159. END
  160. END
  161. END
  162. END
  163. END
  164. EXEC proc_tranViewHistory 'i'
  165. ,@user
  166. ,@tranId
  167. ,@controlNo
  168. ,NULL
  169. ,@viewType
  170. ,@viewMsg
  171. DECLARE @referralName VARCHAR(100)
  172. SELECT @referralName = referral_name
  173. FROM vwremittran rt(NOLOCK)
  174. INNER JOIN referral_agent_wise ref(NOLOCK) ON ref.referral_code = rt.promotionCode
  175. WHERE (
  176. rt.controlNo = @controlNoEncrypted
  177. OR isnull(rt.id, rt.holdTranId) = @tranId
  178. )
  179. AND ref.staff_visit = 1
  180. --Transaction Details
  181. SELECT tranId = trn.holdtranid
  182. ,holdTranId = trn.holdTranId
  183. ,controlNo = dbo.FNADecryptString(trn.controlNo)
  184. --Sender Information
  185. ,sMemId = sen.membershipId
  186. ,sCustomerId = sen.customerId
  187. ,Isnull(cm.postalcode, cm.membershipid) uniqueId
  188. ,senderName = sen.firstName + ISNULL(' ' + sen.middleName, '') + ISNULL(' ' + sen.lastName1, '') + ISNULL(' ' + sen.lastName2, '')
  189. ,ShowDetails = CASE @viewMsg
  190. WHEN 'AGT: VIEW TXN (SEARCH TRANSACTION)'
  191. THEN '<a class= "btn btn-primary" style="padding-left:0.2em;" target="_blank" title = "Show Deatils" href="/AgentNew/Customer/CustomerDetails.aspx?customerId=' + CAST(sen.customerid AS VARCHAR) + '" > View Details </a>'
  192. ELSE '<a class= "btn btn-primary" style="padding-left:0.2em;" target="_blank" title = "Show Deatils" href="/Remit/Administration/CustomerSetup/CustomerDetails.aspx?customerId=' + CAST(sen.customerid AS VARCHAR) + '" > View Details </a>'
  193. END
  194. ,editCustomer = '<a class="btn btn-edit" style="padding-left:0.2em;" target="_blank" title="Edit Customer" href="/Remit/Administration/CustomerRegistration/Manage.aspx?customerId=' + CAST(sen.customerid AS VARCHAR) + '&MethodName=GetCustomerDetailsForEdit" > Edit Customer </a>'
  195. ,sCountryName = trn.sCountry
  196. ,sStateName = sen.STATE
  197. ,sDistrict = sen.district
  198. ,sCity = isnull(sen.city, '')
  199. --,sAddress = DBO.FNAGetCustomerAddress(trn.ID, 'TXN-SEARCH')
  200. ,sAddress = ISNULL(cm.zipCode, cm.postalCode) + ISNULL(', ' + cm.city,'') + ISNULL(', ' + cm.address, '') + ISNULL(', ' + cm.ADDITIONALADDRESS,'')--DBO.FNAGetCustomerAddress(sen.customerId, 'SEARCH-TXN')
  201. ,sContactNo = COALESCE(sen.mobile, sen.homephone, sen.workphone)
  202. ,sDob = convert(VARCHAR(10), sen.dob, 121)
  203. ,sIdType = ISNULL(sen.idtype, 'Other (please specify)' + (':') + ('' + cm.otherIdNumber))
  204. ,sIdNo = UPPER(sen.idNumber)
  205. ,sValidDate = sen.validDate
  206. ,sEmail = sen.email
  207. ,extCustomerId = sen.extCustomerId
  208. ,walletNo = cm.walletAccountNo
  209. ,VISA.detailTitle visaStatus
  210. ,CASE
  211. WHEN cm.occupation = '11383'
  212. THEN (occ.DETAILTITLE) + (':') + cm.occupationOther
  213. ELSE occ.DETAILTITLE
  214. END [Occupation]
  215. --Receiver Information
  216. ,rMemId = rec.membershipId
  217. ,rCustomerId = rec.customerId
  218. ,receiverName = rec.firstName + ISNULL(' ' + rec.middleName, '') + ISNULL(' ' + rec.lastName1, '') + ISNULL(' ' + rec.lastName2, '')
  219. ,rCountryName = rec.country
  220. ,rStateName = rec.STATE
  221. ,rDistrict = rec.district
  222. ,rCity = isnull(rec.city, '')
  223. ,rAddress = rec.address
  224. ,rContactNo = COALESCE(rec.mobile, rec.homephone, rec.workphone)
  225. ,rIdType = ISNULL(sdv1.detailTitle, rec.idType)
  226. ,rIdNo = UPPER(ISNULL(rec.idNumber2, rec.idNumber) + isnull(' ' + rec.idPlaceOfIssue2, ''))
  227. --Sending Agent Information
  228. ,sAgentEmail = sa.agentEmail1
  229. ,sAgentName = CASE
  230. WHEN trn.sAgentName = trn.sBranchName
  231. THEN '-'
  232. ELSE trn.sAgentName
  233. END
  234. ,sBranchName = trn.sBranchName
  235. ,sAgentCountry = sa.agentCountry
  236. ,sAgentState = sa.agentState
  237. ,sAgentDistrict = sa.agentDistrict
  238. ,sAgentLocation = sLoc.districtName
  239. ,sAgentCity = sa.agentCity
  240. ,sAgentAddress = sa.agentAddress
  241. --Payout Agent Information
  242. ,trn.pAgent
  243. ,pAgentName = CASE
  244. WHEN trn.pAgentName IS NULL
  245. THEN '[Any Where]'
  246. ELSE CASE
  247. WHEN trn.pAgentName = trn.pBranchName
  248. THEN '-'
  249. ELSE trn.pAgentName
  250. END
  251. END
  252. ,pBranchName = trn.pBranchName
  253. ,pAgentCountry = trn.pCountry
  254. ,pAgentState = trn.pState
  255. ,pAgentDistrict = rec.district
  256. ,pAgentLocation = CASE
  257. WHEN trn.pBank IS NOT NULL
  258. THEN trn.pBankName
  259. ELSE ''
  260. END
  261. ,pAgentCity = pa.agentCity
  262. ,pAgentAddress = pa.agentAddress
  263. ,payerName = pbd.PAYER_CODE + ' - ' + pbd.Payer_Name
  264. ,trn.tAmt
  265. ,trn.serviceCharge
  266. ,handlingFee = ISNULL(trn.handlingFee, 0)
  267. ,sAgentComm = isnull(trn.sAgentComm, 0)
  268. ,sAgentCommCurrency = ISNULL(trn.sAgentCommCurrency, 0)
  269. ,pAgentComm = ISNULL(trn.pAgentComm, 0)
  270. ,pAgentCommCurrency = ISNULL(trn.pAgentCommCurrency, 0)
  271. ,exRate = trn.customerRate
  272. ,trn.cAmt
  273. ,pAmt = FLOOR(trn.pAmt)
  274. ,relationship = ISNULL(trn.relWithSender, ISNULL('' + sdv2.detailTitle, ''))
  275. ,purpose = ISNULL(trn.purposeOfRemit, '-')
  276. ,sourceOfFund = ISNULL(trn.sourceOfFund, '-')
  277. ,collMode = trn.collMode
  278. ,trn.collCurr
  279. ,paymentMethod = UPPER(trn.paymentMethod)
  280. ,trn.payoutCurr
  281. ,BranchName = trn.pBankBranchName
  282. ,accountNo = trn.accountNo
  283. ,BankName = trn.pBankName
  284. ,tranStatus = CASE
  285. WHEN trn.payStatus = 'Post'
  286. AND trn.tranType = 'D'
  287. THEN 'Post'
  288. ELSE trn.tranStatus
  289. END
  290. ,trn.payStatus
  291. ,createdFrom = CASE
  292. WHEN (trn.tranType = 'M' AND trn.isOnlineTxn = 'M') THEN 'Mobile'
  293. WHEN (trn.tranType = 'M' AND trn.isOnlineTxn = 'O') THEN 'Web Online'
  294. WHEN trn.tranType = 'I' THEN 'Core'
  295. ELSE trn.tranType END
  296. ,payoutMsg = ISNULL(trn.pMessage, '-')
  297. ,trn.createdBy
  298. ,trn.createdDate
  299. ,trn.approvedBy
  300. ,trn.approvedDate
  301. ,trn.paidBy
  302. ,trn.paidDate
  303. ,trn.cancelRequestBy
  304. ,trn.cancelRequestDate
  305. ,trn.cancelApprovedBy
  306. ,trn.cancelApprovedDate
  307. ,trn.lockedBy
  308. ,trn.lockedDate
  309. ,trn.payTokenId
  310. ,trn.tranStatus
  311. ,trn.tranType
  312. ,trn.holdTranId
  313. ,sTelNo = ISNULL(sen.homephone, sen.workphone)
  314. ,rTelNo = ISNULL(rec.homephone, rec.workphone)
  315. ,CashOrBank = ''
  316. ,PurposeofRemit = CASE
  317. WHEN trn.PurposeofRemit = 'Payment of import good'
  318. THEN CONCAT (
  319. '<b>'
  320. ,trn.purposeOfRemit
  321. ,'</b>'
  322. ,'<br/>'
  323. ,'<b>Goods Type:</b> ' + ISNULL(rec.goodsType, '')
  324. ,'<br/>'
  325. ,'<b>Goods Origin:</b> ' + ISNULL(goodsorigin, '')
  326. ,'<br/>'
  327. ,'<b>Port Of Shipment:</b> ' + ISNULL(rec.portOfShipment, '')
  328. )
  329. ELSE ISNULL(trn.purposeOfRemit, '-')
  330. END
  331. ,custRate = isnull(trn.customerRate, 0) + isnull(trn.schemePremium, 0)
  332. ,settRate = trn.agentCrossSettRate
  333. ,nativeCountry = sen.nativeCountry
  334. ,@isRealTime AS isRealTime
  335. ,CASE
  336. WHEN ISNULL(@referralName, '') = ''
  337. THEN '-'
  338. ELSE @referralName
  339. END referralName
  340. ,introducer = CASE
  341. WHEN trn.referralId IS NULL
  342. THEN '-'
  343. ELSE intro.fullName + ' ' + ' - ' + intro.membershipId
  344. END
  345. ,receiverNameAlt = ISNULL(trn.receiverNameAlt, '')
  346. ,IsQuestionnaire = @IsQuestionnaire
  347. ,pSuperAgent = trn.pSuperAgent
  348. ,cm.createdDate registerDate
  349. ,rewardPoints = trn.rewardPoints
  350. ,customerPremium = trn.customerPremium
  351. ,depositType = rt.depositType
  352. FROM vwRemitTran trn WITH (NOLOCK)
  353. LEFT JOIN remitTranTemp rt WITH (NOLOCK) ON trn.id = rt.id
  354. LEFT JOIN vwTranSenders sen WITH (NOLOCK) ON trn.id = sen.tranId
  355. LEFT JOIN vwTranReceivers rec WITH (NOLOCK) ON trn.id = rec.tranId
  356. LEFT JOIN agentMaster sa WITH (NOLOCK) ON trn.sBranch = sa.agentId
  357. LEFT JOIN agentMaster pa WITH (NOLOCK) ON trn.pBranch = pa.agentId
  358. LEFT JOIN api_districtList pLoc WITH (NOLOCK) ON trn.pLocation = pLoc.districtCode
  359. LEFT JOIN apiLocationMapping ALM WITH (NOLOCK) ON pLoc.districtCode = ALM.apiDistrictCode
  360. LEFT JOIN zoneDistrictMap ZDM WITH (NOLOCK) ON ZDM.districtId = ALM.districtId
  361. LEFT JOIN api_districtList sLoc WITH (NOLOCK) ON sa.agentLocation = sLoc.districtCode
  362. LEFT JOIN staticDataValue sdv WITH (NOLOCK) ON sen.idType = CAST(sdv.valueId AS VARCHAR)
  363. LEFT JOIN staticDataValue sdv1 WITH (NOLOCK) ON rec.idType = CAST(sdv1.valueId AS VARCHAR)
  364. LEFT JOIN staticDataValue sdv2 WITH (NOLOCK) ON rec.relationType = CAST(sdv2.valueId AS VARCHAR)
  365. LEFT JOIN customerMaster cm WITH (NOLOCK) ON cm.customerId = sen.customerId
  366. LEFT JOIN customerMaster intro WITH (NOLOCK) ON intro.customerId = trn.referralId
  367. LEFT JOIN staticDataValue VISA WITH (NOLOCK) ON CM.VISASTATUS = CAST(VISA.VALUEID AS VARCHAR)
  368. LEFT JOIN tbl_japan_address_detail detail WITH (NOLOCK) ON detail.zip_code = sen.zipcode
  369. LEFT JOIN dbo.countryStateMaster SS(NOLOCK) ON cast(SS.stateId AS INT) = detail.state_Id
  370. LEFT JOIN STATICDATAVALUE occ ON occ.VALUEID = CM.occupation
  371. LEFT JOIN PAYER_BANK_DETAILS pbd WITH (NOLOCK) ON pbd.payer_id = trn.payerId
  372. WHERE trn.controlNo = @controlNoEncrypted
  373. OR isnull(trn.id, trn.holdTranId) = LTRIM(RTRIM(@tranId))
  374. --End of Transaction Details------------------------------------------------------------
  375. --Lock Transaction----------------------------------------------------------------------
  376. IF (@lockMode = 'Y')
  377. BEGIN
  378. UPDATE remitTran
  379. SET tranStatus = 'Lock'
  380. ,lockedBy = @user
  381. ,lockedDate = GETDATE()
  382. ,lockedDateLocal = @nepDate
  383. WHERE (
  384. tranStatus = 'Payment'
  385. AND tranStatus <> 'CancelRequest'
  386. )
  387. AND payStatus = 'Unpaid'
  388. AND (
  389. controlNo = @controlNoEncrypted
  390. OR id = @tranId
  391. )
  392. END
  393. --End of Lock Transaction---------------------------------------------------------------
  394. --Log Details---------------------------------------------------------------------------
  395. PRINT @holdTranId
  396. SELECT *
  397. FROM (
  398. SELECT rowId = 0
  399. ,message = 'OFAC Release Msg:' + approvedRemarks
  400. ,createdBy = approvedBy
  401. ,createdDate = approvedDate
  402. ,fileType = NULL
  403. ,deleteComment = 'N'
  404. ,fieldName = NULL
  405. FROM remittranofac
  406. WHERE tranid = @holdTranId
  407. AND approvedBy IS NOT NULL
  408. UNION ALL
  409. SELECT rowId
  410. ,message = CASE
  411. WHEN message IS NULL
  412. THEN fieldName + ' ' + OLDVALUE + ' Changed By ' + REPLACE(REPLACE(FIELDVALUE, '<root><row ', ''), ' secondLastName = ""/></root>', '')
  413. ELSE [MESSAGE]
  414. END
  415. ,trn.createdBy
  416. ,trn.createdDate
  417. ,isnull(trn.fileType, '') fileType
  418. ,deleteComment = 'Y'
  419. ,fieldName
  420. FROM tranModifyLog trn WITH (NOLOCK)
  421. LEFT JOIN applicationUsers au WITH (NOLOCK) ON trn.createdBy = au.userName
  422. WHERE (
  423. trn.tranId = @tranId
  424. OR trn.controlNo = @controlNoEncrypted
  425. )
  426. AND ISNULL(trn.STATUS, '') <> 'Deleted'
  427. AND ISNULL(trn.OLDVALUE, '') NOT IN (
  428. '7000'
  429. ,'100'
  430. ,'415'
  431. ,'416'
  432. )
  433. ) x
  434. ORDER BY X.rowId DESC
  435. SELECT bankName = 'Cash'
  436. ,collMode = 'Cash'
  437. ,amt = ''
  438. ,collDate = ''
  439. ,voucherNo = ''
  440. ,narration = 'Cash Collection'
  441. SELECT C.PARTICULARS
  442. ,C.TRANDATE
  443. ,C.DEPOSITAMOUNT
  444. FROM TBL_BANK_DEPOSIT_TXN_MAPPING B(NOLOCK)
  445. INNER JOIN CUSTOMER_DEPOSIT_LOGS C(NOLOCK) ON C.TRANID = B.DEPOSIT_LOG_ID
  446. WHERE HOLD_TRAN_ID = @holdTranId
  447. -- Document Details
  448. SELECT ROW_NUMBER() OVER (
  449. ORDER BY uploadedDate ASC
  450. ) SN
  451. ,*
  452. FROM (
  453. SELECT documentType = CASE
  454. WHEN cd.documentType = '0'
  455. AND filetype = 'application/pdf'
  456. THEN cd.filedescription
  457. ELSE ISNULL(sdv.detailTitle, 'signature')
  458. END
  459. ,fileType = CASE
  460. WHEN ISNULL(cd.fileType, 'image/jpeg') IN ('receiver')
  461. THEN 'application/pdf'
  462. ELSE ISNULL(cd.fileType, 'image/jpeg')
  463. END
  464. ,uploadedDate = CONVERT(VARCHAR(10), cd.createddate, 111)
  465. ,fileName = '<a style=''cursor:pointer;'' onclick="showDocument(' + Cast(cd.cdId AS VARCHAR) + ',''' + CASE
  466. WHEN ISNULL(cd.fileType, 'image/jpeg') IN ('receiver')
  467. THEN 'application/pdf'
  468. ELSE ISNULL(cd.fileType, 'image/jpeg')
  469. END + ''');">' + cd.fileName + '</a>'
  470. FROM dbo.customerDocument cd
  471. LEFT JOIN dbo.staticDataValue sdv ON sdv.valueId = cd.documentType
  472. WHERE cd.customerId = @customerId
  473. AND ISNULL(isDeleted, 'N') = 'N'
  474. --ORDER BY cd.createdDate
  475. ) X
  476. ---- Questionaire details
  477. --SELECT ROW_NUMBER() OVER (
  478. -- ORDER BY ORDER_BY
  479. -- ) SN
  480. -- ,*
  481. --FROM (
  482. -- SELECT ORDER_BY
  483. -- ,QSN
  484. -- ,ANSWER_TEXT
  485. -- ,editQuestionnaire = '<button id="btnUpdate" class="btn btn-primary" value="Edit" onClick="UpdateQuestionnaire();"/>'
  486. -- FROM dbo.TBL_TXN_COMPLIANCE_CDDI A
  487. -- INNER JOIN dbo.VIEW_COMPLIANCE_QUESTION_SET B ON CAST(B.ID AS VARCHAR) = A.QUES_ID
  488. -- WHERE CAST(A.TRAN_ID AS VARCHAR) = CAST(ISNULL(@holdTranId, 0) AS VARCHAR)
  489. -- ) x
  490. END
  491. ELSE IF @flag = 'voucher'
  492. BEGIN
  493. IF EXISTS (
  494. SELECT *
  495. FROM dbo.bankCollectionVoucherDetail(NOLOCK)
  496. WHERE tempTranId = @tranId
  497. )
  498. BEGIN
  499. SELECT b.voucherAmt
  500. ,b.voucherDate
  501. ,b.voucherNo
  502. ,v.bankName
  503. FROM dbo.bankCollectionVoucherDetail b(NOLOCK)
  504. INNER JOIN vwBankLists v(NOLOCK) ON b.bankId = v.rowId
  505. WHERE b.tempTranId = @tranId
  506. END
  507. ELSE
  508. BEGIN
  509. SELECT b.voucherAmt
  510. ,b.voucherDate
  511. ,b.voucherNo
  512. ,v.bankName
  513. FROM dbo.bankCollectionVoucherDetail b(NOLOCK)
  514. INNER JOIN vwBankLists v(NOLOCK) ON b.bankId = v.rowId
  515. WHERE b.mainTranId = @tranId
  516. END
  517. END
  518. ELSE IF @flag = 'ac' --Add Comment
  519. BEGIN
  520. BEGIN TRY
  521. IF @message IS NULL
  522. BEGIN
  523. EXEC proc_errorHandler 1
  524. ,'Message can not be blank.'
  525. ,@tranId
  526. RETURN
  527. END
  528. IF @user IS NULL
  529. BEGIN
  530. EXEC proc_errorHandler 1
  531. ,'Your session has expired. Cannot add complain.'
  532. ,NULL
  533. RETURN
  534. END
  535. IF @tranId IS NULL
  536. BEGIN
  537. EXEC proc_errorHandler 1
  538. ,'Transaction No can not be blank.'
  539. ,@tranId
  540. RETURN
  541. END
  542. DECLARE @ttId VARCHAR(10) = NULL
  543. ,@OrderNo VARCHAR(50) = NULL
  544. SELECT @OrderNo = NULLIF(LTRIM(RTRIM(voucherNo)), '')
  545. FROM remitTran(NOLOCK)
  546. WHERE id = @tranId
  547. AND sRouteId = 'RIA'
  548. BEGIN TRAN
  549. INSERT INTO tranModifyLog (
  550. tranId
  551. ,controlNo
  552. ,message
  553. ,createdBy
  554. ,createdDate
  555. ,MsgType
  556. ,STATUS
  557. ,needToSync
  558. )
  559. SELECT @tranId
  560. ,@controlNoEncrypted
  561. ,@message
  562. ,@user
  563. ,@nepDate
  564. ,'C'
  565. ,'Not Resolved'
  566. ,CASE
  567. WHEN @OrderNo IS NOT NULL
  568. THEN 1
  569. ELSE 0
  570. END
  571. --SET @ttId=@@IDENTITY
  572. --IF @OrderNo IS NOT NULL
  573. --BEGIN
  574. -- UPDATE tranModifyLog SET needToSync=1 WHERE rowId=@ttId
  575. --END
  576. IF ISNUMERIC(@controlNo) = 1
  577. AND right(@controlNo, 1) <> 'D'
  578. BEGIN
  579. INSERT INTO dbo.rs_remitTranTroubleTicket (
  580. RefNo
  581. ,Comments
  582. ,DatePosted
  583. ,PostedBy
  584. ,uploadBy
  585. ,STATUS
  586. ,noteType
  587. ,tranno
  588. ,category
  589. )
  590. SELECT @controlNoEncrypted
  591. ,@message
  592. ,GETDATE()
  593. ,@user
  594. ,@user
  595. ,NULL
  596. ,2
  597. ,NULL
  598. ,'push'
  599. END
  600. COMMIT TRAN
  601. ---EXEC proc_errorHandler 0, 'Comments has been added successfully.', @tranId
  602. SELECT '0' AS errorCode
  603. ,'Comments has been added successfully.' AS Msg
  604. ,@ttId AS Id
  605. ,'RIA' AS Extra
  606. ,@OrderNo AS Extra2
  607. END TRY
  608. BEGIN CATCH
  609. SELECT 1 error_code
  610. ,ERROR_MESSAGE() mes
  611. ,NULL id
  612. END CATCH
  613. END
  614. IF @flag = 'showLog' --Add Comment
  615. BEGIN
  616. --Log Details---------------------------------------------------------------------------
  617. --SELECT
  618. -- rowId
  619. -- ,message
  620. -- ,trn.createdBy
  621. -- ,trn.createdDate
  622. -- ,isnull(trn.fileType,'') fileType
  623. --FROM tranModifyLog trn WITH(NOLOCK)
  624. --LEFT JOIN applicationUsers au WITH(NOLOCK) ON trn.createdBy = au.userName
  625. --WHERE trn.tranId = @tranId
  626. --ORDER BY trn.createdDate DESC
  627. SELECT *
  628. FROM (
  629. SELECT rowId = 0
  630. ,message = 'OFAC Release Msg:' + approvedRemarks
  631. ,createdBy = approvedBy
  632. ,createdDate = approvedDate
  633. ,fileType = NULL
  634. ,deleteComment = 'N'
  635. ,fieldName = null
  636. FROM remittranofac
  637. WHERE tranid = @holdTranId
  638. UNION ALL
  639. SELECT rowId
  640. ,message = CASE
  641. WHEN message IS NULL
  642. THEN fieldName + ' ' + OLDVALUE + ' Changed By ' + REPLACE(REPLACE(FIELDVALUE, '<root><row ', ''), ' secondLastName = ""/></root>', '')
  643. ELSE [MESSAGE]
  644. END
  645. ,trn.createdBy
  646. ,trn.createdDate
  647. ,isnull(trn.fileType, '') fileType
  648. ,deleteComment = 'Y'
  649. ,fieldName
  650. FROM tranModifyLog trn WITH (NOLOCK)
  651. LEFT JOIN applicationUsers au WITH (NOLOCK) ON trn.createdBy = au.userName
  652. WHERE (
  653. trn.tranId = @tranId
  654. OR trn.controlNo = @controlNoEncrypted
  655. )
  656. AND trn.[status] <> 'Deleted'
  657. ) x
  658. ORDER BY X.rowId DESC
  659. END
  660. ELSE IF @flag = 'OFAC'
  661. BEGIN
  662. DECLARE @TRACK_BY VARCHAR(20)
  663. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  664. IF @controlNoEncrypted IS NOT NULL
  665. SELECT @holdTranId = holdTranId
  666. ,@tranId = id
  667. FROM vwRemitTran WITH (NOLOCK)
  668. WHERE controlNo = @controlNoEncrypted
  669. IF OBJECT_ID('tempdb..#tempMaster') IS NOT NULL
  670. DROP TABLE #tempMaster
  671. IF OBJECT_ID('tempdb..#tempDataTable') IS NOT NULL
  672. DROP TABLE #tempDataTable
  673. CREATE TABLE #tempDataTable (DATA NVARCHAR(MAX) NULL)
  674. DECLARE @ofacKeyIds VARCHAR(MAX)
  675. ,@ofacRemarks NVARCHAR(MAX)
  676. SELECT @ofacKeyIds = blackListId
  677. ,@TRACK_BY = ISNULL(TRACK_BY, 'OFAC')
  678. ,@ofacRemarks = ofacDetail
  679. FROM dbo.remitTranOfac
  680. WHERE TranId = ISNULL(@holdTranId, @tranId)
  681. IF @ofacRemarks IS NOT NULL
  682. BEGIN
  683. SELECT ofacRemarks = @ofacRemarks
  684. ,'Y' isJsonData
  685. RETURN
  686. END
  687. DECLARE @TNA_ID AS INT
  688. ,@MAX_ROW_ID AS INT
  689. ,@ROW_ID AS INT = 1
  690. ,@ofacKeyId VARCHAR(100)
  691. ,@SDN VARCHAR(MAX) = ''
  692. ,@ADDRESS VARCHAR(MAX) = ''
  693. ,@REMARKS AS VARCHAR(MAX) = ''
  694. ,@ALT AS VARCHAR(MAX) = ''
  695. ,@DATA AS NVARCHAR(MAX) = ''
  696. ,@DATA_SOURCE AS VARCHAR(200) = ''
  697. IF @TRACK_BY = 'DJ'
  698. BEGIN
  699. IF OBJECT_ID('tempdb..#tempDJresult') IS NOT NULL
  700. DROP TABLE #tempDJ
  701. SELECT DISTINCT X.val ofacKeyId
  702. INTO #tempDJ
  703. FROM (
  704. SELECT *
  705. FROM dbo.SplitXML(',', @ofacKeyIds)
  706. ) X
  707. ALTER TABLE #tempDJ ADD ROWID INT IDENTITY (
  708. 1
  709. ,1
  710. )
  711. SELECT @MAX_ROW_ID = MAX(ROWID)
  712. FROM #tempDJ
  713. WHILE @MAX_ROW_ID >= @ROW_ID
  714. BEGIN
  715. SELECT @ofacKeyId = ofacKeyId
  716. FROM #tempDJ
  717. WHERE ROWID = @ROW_ID
  718. SELECT @DATA = RESULT
  719. FROM Dowjones.DBO.DJ_FNAGET_PERSON_DETAIL(@ofacKeyId)
  720. IF ISNULL(@DATA, '') <> ''
  721. BEGIN
  722. INSERT INTO #tempDataTable
  723. SELECT @DATA
  724. END
  725. SET @ROW_ID = @ROW_ID + 1
  726. END
  727. ALTER TABLE #tempDataTable ADD ROWID INT IDENTITY (
  728. 1
  729. ,1
  730. )
  731. SELECT ROWID [S.N.]
  732. ,DATA [Remarks]
  733. ,'N' isJsonData
  734. FROM #tempDataTable
  735. RETURN
  736. END
  737. SELECT DISTINCT A.val ofacKeyId
  738. INTO #tempMaster
  739. FROM (
  740. SELECT *
  741. FROM dbo.SplitXML(',', @ofacKeyIds)
  742. ) A
  743. INNER JOIN (
  744. SELECT ofacKey
  745. FROM blacklistHistory WITH (NOLOCK)
  746. ) B ON A.val = B.ofacKey
  747. ALTER TABLE #tempMaster ADD ROWID INT IDENTITY (
  748. 1
  749. ,1
  750. )
  751. SELECT @MAX_ROW_ID = MAX(ROWID)
  752. FROM #tempMaster
  753. WHILE @MAX_ROW_ID >= @ROW_ID
  754. BEGIN
  755. SELECT @SDN = ''
  756. ,@ADDRESS = ''
  757. ,@ADDRESS = ''
  758. ,@ALT = ''
  759. ,@REMARKS = ''
  760. SELECT @ofacKeyId = ofacKeyId
  761. FROM #tempMaster
  762. WHERE ROWID = @ROW_ID
  763. SELECT @SDN = '<b>' + ISNULL(entNum, '') + '</b>, <b>Name:</b> ' + ISNULL(name, '')
  764. ,@DATA_SOURCE = '<b>Data Source:</b> ' + ISNULL(dataSource, '')
  765. FROM blacklistHistory WITH (NOLOCK)
  766. WHERE ofacKey = @ofacKeyId
  767. AND vesselType = 'sdn'
  768. SELECT @ADDRESS = ISNULL(address, '') + ', ' + ISNULL(city, '') + ', ' + ISNULL(STATE, '') + ', ' + ISNULL(zip, '') + ', ' + ISNULL(country, '')
  769. FROM blacklistHistory WITH (NOLOCK)
  770. WHERE ofacKey = @ofacKeyId
  771. AND vesselType = 'add'
  772. SELECT @ALT = COALESCE(@ALT + ', ', '') + CAST(ISNULL(NAME, '') AS VARCHAR(MAX))
  773. FROM blacklistHistory WITH (NOLOCK)
  774. WHERE ofacKey = @ofacKeyId
  775. AND vesselType IN (
  776. 'alt'
  777. ,'aka'
  778. )
  779. SELECT @REMARKS = ISNULL(remarks, '') + isnull('<br/> ID Type:' + idType, '') + isnull(':' + idNumber, '') + isnull('|DOB:' + dob, '') + isnull(' |Father Name: ' + FatherName, '')
  780. FROM blacklistHistory WITH (NOLOCK)
  781. WHERE ofacKey = @ofacKeyId
  782. AND vesselType = 'sdn'
  783. SET @SDN = RTRIM(LTRIM(@SDN))
  784. SET @ADDRESS = RTRIM(LTRIM(@ADDRESS))
  785. SET @ALT = RTRIM(LTRIM(@ALT))
  786. SET @REMARKS = RTRIM(LTRIM(@REMARKS))
  787. SET @SDN = REPLACE(@SDN, ', ,', '')
  788. SET @ADDRESS = REPLACE(@ADDRESS, ', ,', '')
  789. SET @ALT = REPLACE(@ALT, ', ,', '')
  790. SET @REMARKS = REPLACE(@REMARKS, ', ,', '')
  791. SET @SDN = REPLACE(@SDN, '-0-', '')
  792. SET @ADDRESS = REPLACE(@ADDRESS, '-0-', '')
  793. SET @ALT = REPLACE(@ALT, '-0-', '')
  794. SET @REMARKS = REPLACE(@REMARKS, '-0-', '')
  795. SET @SDN = REPLACE(@SDN, ',,', '')
  796. SET @ADDRESS = REPLACE(@ADDRESS, ',,', '')
  797. SET @ALT = REPLACE(@ALT, ',,', '')
  798. SET @REMARKS = REPLACE(@REMARKS, ',,', '')
  799. IF @DATA_SOURCE IS NOT NULL
  800. AND @DATA_SOURCE <> ''
  801. SET @DATA = @DATA_SOURCE
  802. IF @SDN IS NOT NULL
  803. AND @SDN <> ''
  804. SET @DATA = @DATA + '<BR>' + @SDN
  805. IF @ADDRESS IS NOT NULL
  806. AND @ADDRESS <> ''
  807. SET @DATA = @DATA + '<BR><b>Address: </b>' + @ADDRESS
  808. IF @ALT IS NOT NULL
  809. AND @ALT <> ''
  810. AND @ALT <> ' '
  811. SET @DATA = @DATA + '<BR>' + '<b>a.k.a :</b>' + @ALT + ''
  812. IF @REMARKS IS NOT NULL
  813. AND @REMARKS <> ''
  814. SET @DATA = @DATA + '<BR><b>Other Info :</b>' + @REMARKS
  815. IF @DATA IS NOT NULL
  816. OR @DATA <> ''
  817. BEGIN
  818. INSERT INTO #tempDataTable
  819. SELECT REPLACE(@DATA, '<BR><BR>', '')
  820. END
  821. SET @ROW_ID = @ROW_ID + 1
  822. END
  823. ALTER TABLE #tempDataTable ADD ROWID INT IDENTITY (
  824. 1
  825. ,1
  826. )
  827. SELECT ROWID [S.N.]
  828. ,DATA [Remarks]
  829. ,'N' isJsonData
  830. FROM #tempDataTable
  831. END
  832. ELSE IF @flag = 'Compliance'
  833. BEGIN
  834. SELECT @holdTranId = holdTranId
  835. ,@tranId = id
  836. FROM vwRemitTran WITH (NOLOCK)
  837. WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  838. SELECT rowId
  839. ,csDetailRecId
  840. ,[S.N.] = ROW_NUMBER() OVER (
  841. ORDER BY ROWID
  842. )
  843. ,[Remarks]
  844. ,[Matched ControlNo]
  845. ,[Doc. Required]
  846. ,[Approved Remarks]
  847. FROM (
  848. SELECT rowId
  849. ,csDetailRecId = CL.id
  850. ,[Remarks] = CASE
  851. WHEN RTC.CSDETAILTRANID = 0
  852. THEN RTC.REASON
  853. WHEN RTC.CSDETAILTRANID <> 0
  854. THEN CL.COMPLAINCEDETAILMESSAGE
  855. END
  856. --,[Matched TRAN ID] = ISNULL(rtc.matchTranId, '-')
  857. ,[Matched ControlNo] = ISNULL(CASE
  858. WHEN dbo.fnadecryptstring(rtt.controlno) = ''
  859. AND dbo.fnadecryptstring(rth.controlno) = ''
  860. THEN dbo.fnadecryptstring(rt.controlno)
  861. WHEN dbo.fnadecryptstring(rtt.controlno) = ''
  862. AND dbo.fnadecryptstring(rt.controlno) = ''
  863. THEN dbo.fnadecryptstring(rth.controlno)
  864. ELSE dbo.fnadecryptstring(rtt.controlno)
  865. END, '-')
  866. ,[Doc. Required] = CASE
  867. WHEN isDocumentRequired = 1
  868. THEN 'Yes'
  869. ELSE 'No'
  870. END
  871. ,[Approved Remarks] = rtc.approvedby + ': ' + rtc.approvedremarks
  872. FROM ComplianceLog CL
  873. LEFT JOIN remitTranCompliance rtc WITH (NOLOCK) ON CL.TRANID = RTC.TRANID --AND RTC.CSDETAILTRANID = CL.complianceId
  874. LEFT JOIN CSDETAIL CD(NOLOCK) ON CD.csDetailId = CL.complianceId
  875. LEFT JOIN vwremittran rtt(NOLOCK) ON rtt.holdtranid = rtc.matchTranId
  876. LEFT JOIN vwremittran rth(NOLOCK) ON rth.id = rtc.matchTranId
  877. LEFT JOIN cancelTranHistory rt(NOLOCK) ON rt.tranid = rtc.matchTranId
  878. WHERE rtc.TranId = ISNULL(@holdTranId, @tranId)
  879. AND ISNULL(rtc.reason, '') <> 'Suspected duplicate transaction'
  880. --AND CD.nextAction = 'H'
  881. UNION ALL
  882. SELECT rowId
  883. ,csDetailRecId = CASE
  884. WHEN CSDETAILTRANID <> 0
  885. THEN CL.id
  886. ELSE 0
  887. END
  888. ,[Remarks] = CASE
  889. WHEN RTC.CSDETAILTRANID = 0
  890. THEN RTC.REASON
  891. WHEN RTC.CSDETAILTRANID <> 0
  892. THEN CL.COMPLAINCEDETAILMESSAGE
  893. END
  894. --,[Matched TRAN ID] = ISNULL(rtc.matchTranId, '-')
  895. ,[Matched ControlNo] = ISNULL(CASE
  896. WHEN dbo.fnadecryptstring(rtt.controlno) = ''
  897. AND dbo.fnadecryptstring(rth.controlno) = ''
  898. THEN dbo.fnadecryptstring(rt.controlno)
  899. WHEN dbo.fnadecryptstring(rtt.controlno) = ''
  900. AND dbo.fnadecryptstring(rt.controlno) = ''
  901. THEN dbo.fnadecryptstring(rth.controlno)
  902. ELSE dbo.fnadecryptstring(rtt.controlno)
  903. END, '-')
  904. ,[Doc. Required] = CASE
  905. WHEN isDocumentRequired = 1
  906. THEN 'Yes'
  907. ELSE 'No'
  908. END
  909. ,[Approved Remarks] = rtc.approvedby + ': ' + rtc.approvedremarks
  910. FROM remitTranCompliance rtc
  911. LEFT JOIN ComplianceLog CL WITH (NOLOCK) ON CL.TRANID = RTC.TRANID --AND RTC.CSDETAILTRANID = CL.complianceId
  912. LEFT JOIN CSDETAIL CD(NOLOCK) ON CD.csDetailId = CL.complianceId
  913. LEFT JOIN vwremittran rtt(NOLOCK) ON rtt.holdtranid = rtc.matchTranId
  914. LEFT JOIN vwremittran rth(NOLOCK) ON rth.id = rtc.matchTranId
  915. LEFT JOIN cancelTranHistory rt(NOLOCK) ON rt.tranid = rtc.matchTranId
  916. WHERE rtc.TranId = ISNULL(@holdTranId, @tranId)
  917. AND rtc.reason = 'Suspected duplicate transaction'
  918. ) X
  919. END
  920. ELSE IF @flag = 'CashLimitHold'
  921. BEGIN
  922. SELECT @holdTranId = holdTranId
  923. ,@tranId = id
  924. FROM vwRemitTran WITH (NOLOCK)
  925. WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  926. SELECT rowId
  927. ,[S.N.] = ROW_NUMBER() OVER (
  928. ORDER BY ROWID
  929. )
  930. ,[TRAN ID] = rtclh.tranId
  931. ,[Remarks] = ' Transaction is in Cash Limit Hold beacase send amount is greater than available cash hold limit'
  932. FROM remitTranCashLimitHold rtclh WITH (NOLOCK)
  933. WHERE rtclh.TranId = ISNULL(@holdTranId, @tranId)
  934. END
  935. --EXEC proc_transactionView @FLAG='COMPL_DETAIL',@controlNo='1',@tranId='1'
  936. IF @flag = 'COMPL_DETAIL'
  937. BEGIN
  938. /*
  939. 5000 By Sender ID
  940. 5001 By Sender Name
  941. 5002 By Sender Mobile
  942. 5003 By Beneficiary ID
  943. 5004 By Beneficiary ID(System)
  944. 5005 By Beneficiary Name
  945. 5006 By Beneficiary Mobile
  946. 5007 By Beneficiary A/C Number
  947. */
  948. DECLARE @tranIds AS VARCHAR(MAX)
  949. ,@criteria AS INT
  950. ,@totalTran AS INT
  951. ,@criteriaValue AS VARCHAR(500)
  952. ,@id AS INT
  953. ,@reason VARCHAR(500)
  954. SELECT @tranIds = matchTranId
  955. ,@id = TranId
  956. FROM remitTranCompliance WITH (NOLOCK)
  957. WHERE rowId = @controlNo --(ROWID) --id of remitTranCompliance
  958. SELECT @criteria = criteria
  959. FROM csDetailRec WITH (NOLOCK)
  960. WHERE csDetailRecId = @tranId --id of csDetailRec
  961. SELECT @totalTran = COUNT(*)
  962. FROM dbo.Split(',', @tranIds)
  963. IF @criteria = '5000'
  964. SELECT @criteriaValue = B.membershipId
  965. FROM tranSenders B WITH (NOLOCK)
  966. WHERE B.tranId = @id
  967. IF @criteria = '5001'
  968. SELECT @criteriaValue = senderName
  969. FROM remitTran WITH (NOLOCK)
  970. WHERE Id = @id
  971. --SELECT @criteriaValue = SNULL(B.firstName, '') + ISNULL(' ' + B.middleName, '') + ISNULL(' ' + B.lastName1, '') + ISNULL(' ' + B.lastName2, '') FROM tranSenders B with(nolock) WHERE B.tranId = @id
  972. IF @criteria = '5002'
  973. SELECT @criteriaValue = B.mobile
  974. FROM tranSenders B WITH (NOLOCK)
  975. WHERE B.tranId = @id
  976. IF @criteria = '5003'
  977. SELECT @criteriaValue = B.membershipId
  978. FROM tranReceivers B WITH (NOLOCK)
  979. WHERE B.tranId = @id
  980. IF @criteria = '5004'
  981. SELECT @criteriaValue = B.membershipId
  982. FROM tranReceivers B WITH (NOLOCK)
  983. WHERE B.tranId = @id
  984. IF @criteria = '5005'
  985. SELECT @criteriaValue = receiverName
  986. FROM remitTran WITH (NOLOCK)
  987. WHERE Id = @id
  988. --SELECT @criteriaValue = ISNULL(B.firstName, '') + ISNULL(' ' + B.middleName, '') + ISNULL(' ' + B.lastName1, '') + ISNULL(' ' + B.lastName2, '') FROM tranReceivers B with(nolock) WHERE B.tranId = @id
  989. IF @criteria = '5006'
  990. SELECT @criteriaValue = B.mobile
  991. FROM tranReceivers B WITH (NOLOCK)
  992. WHERE B.tranId = @id
  993. IF @criteria = '5007'
  994. SELECT @criteriaValue = A.accountNo
  995. FROM remitTran A WITH (NOLOCK)
  996. WHERE A.id = @id
  997. -- @tranId=0 LOGIC IS ONLY FOR Suspected duplicate transaction WHERE THERE IS csDetailRecId ALWAYS 0
  998. SELECT REMARKS = CASE
  999. WHEN @tranId = 0
  1000. THEN @reason
  1001. ELSE RTRIM(LTRIM(dbo.FNAGetDataValue(condition))) + ' ' + CASE
  1002. WHEN checkType = 'Sum'
  1003. THEN 'Transaction Amount'
  1004. WHEN checkType = 'Count'
  1005. THEN 'Transaction Count'
  1006. END + ' exceeds ' + CAST(parameter AS VARCHAR) + ' limit within ' + CAST(period AS VARCHAR) + ' days ' + dbo.FNAGetDataValue(criteria) + ': <font size=''2px''>' + ISNULL(@criteriaValue, '') + '</font>'
  1007. END
  1008. ,totTran = 'Total Count: <b>' + CASE
  1009. WHEN @tranId = 0
  1010. THEN '1'
  1011. ELSE CAST(@totalTran AS VARCHAR)
  1012. END + '</b>'
  1013. FROM csDetailRec WITH (NOLOCK)
  1014. WHERE csDetailRecId = CASE
  1015. WHEN @tranId = 0
  1016. THEN 1
  1017. ELSE @tranId
  1018. END
  1019. SELECT [S.N.] = ROW_NUMBER() OVER (
  1020. ORDER BY @controlNo
  1021. )
  1022. ,[CONTROL NO.] = dbo.FNADecryptString(trn.controlNo)
  1023. ,[TRAN AMOUNT] = dbo.ShowDecimal(trn.cAmt)
  1024. ,[CURRENCY] = trn.collCurr
  1025. ,[TRAN DATE] = CONVERT(VARCHAR, trn.createdDate, 101)
  1026. FROM VWremitTran trn WITH (NOLOCK)
  1027. INNER JOIN (
  1028. SELECT *
  1029. FROM dbo.Split(',', @tranIds)
  1030. ) B ON trn.holdTranId = B.value
  1031. UNION ALL
  1032. ---- RECORD DISPLAY FROM CANCEL TRANSACTION TABLE
  1033. SELECT [S.N.] = ROW_NUMBER() OVER (
  1034. ORDER BY @controlNo
  1035. )
  1036. ,[CONTROL NO.] = dbo.FNADecryptString(trn.controlNo)
  1037. ,[TRAN AMOUNT] = dbo.ShowDecimal(trn.cAmt)
  1038. ,[CURRENCY] = trn.collCurr
  1039. ,[TRAN DATE] = CONVERT(VARCHAR, trn.createdDate, 101)
  1040. FROM cancelTranHistory trn WITH (NOLOCK)
  1041. INNER JOIN (
  1042. SELECT *
  1043. FROM dbo.Split(',', @tranIds)
  1044. ) B ON trn.tranId = B.value
  1045. END
  1046. ELSE IF @flag = 'saveComplainceRmks' --Add Approve Remarks
  1047. BEGIN TRY
  1048. IF EXISTS (
  1049. SELECT 'X'
  1050. FROM remitTranOfac WITH (NOLOCK)
  1051. WHERE TranId = @holdTranId
  1052. )
  1053. BEGIN
  1054. IF EXISTS (
  1055. SELECT 'X'
  1056. FROM remitTranCompliance WITH (NOLOCK)
  1057. WHERE TranId = @holdTranId
  1058. )
  1059. BEGIN
  1060. IF @messageOFAC IS NULL
  1061. BEGIN
  1062. EXEC proc_errorHandler 1
  1063. ,'OFAC remarks can not be blank.'
  1064. ,@holdTranId
  1065. RETURN;
  1066. END
  1067. IF @messageComplaince IS NULL
  1068. BEGIN
  1069. EXEC proc_errorHandler 1
  1070. ,'Complaince remarks can not be blank.'
  1071. ,@holdTranId
  1072. RETURN;
  1073. END
  1074. END
  1075. ELSE
  1076. BEGIN
  1077. IF @messageOFAC IS NULL
  1078. BEGIN
  1079. EXEC proc_errorHandler 1
  1080. ,'OFAC remarks can not be blank.'
  1081. ,@holdTranId
  1082. RETURN;
  1083. END
  1084. END
  1085. END
  1086. IF EXISTS (
  1087. SELECT 'X'
  1088. FROM remitTranCompliance WITH (NOLOCK)
  1089. WHERE TranId = @holdTranId
  1090. )
  1091. BEGIN
  1092. IF @messageComplaince IS NULL
  1093. BEGIN
  1094. EXEC proc_errorHandler 1
  1095. ,'Complaince remarks can not be blank.'
  1096. ,@holdTranId
  1097. RETURN;
  1098. END
  1099. END
  1100. BEGIN TRANSACTION
  1101. UPDATE remitTranOfac
  1102. SET approvedRemarks = @messageOFAC
  1103. ,approvedBy = @user
  1104. ,approvedDate = @nepDate
  1105. WHERE TranId = ISNULL(@holdTranId, @tranId)
  1106. AND approvedBy IS NULL
  1107. UPDATE remitTranCompliance
  1108. SET approvedRemarks = @messageComplaince
  1109. ,approvedBy = @user
  1110. ,approvedDate = @nepDate
  1111. WHERE TranId = ISNULL(@holdTranId, @tranId)
  1112. AND approvedBy IS NULL
  1113. UPDATE remitTranTemp
  1114. SET tranStatus = CASE tranStatus
  1115. WHEN 'Cash Limit/Compliance Hold'
  1116. THEN 'Cash Limit'
  1117. WHEN 'Cash Limit/OFAC Hold'
  1118. THEN 'Cash Limit'
  1119. WHEN 'Cash Limit/OFAC/Compliance Hold'
  1120. THEN 'Cash Limit'
  1121. ELSE 'Hold'
  1122. END
  1123. WHERE id = @tranId
  1124. COMMIT TRANSACTION
  1125. EXEC proc_errorHandler 0
  1126. ,'Release remarks has been saved successfully.'
  1127. ,@tranId
  1128. END TRY
  1129. BEGIN CATCH
  1130. SELECT 1 error_code
  1131. ,ERROR_MESSAGE() mes
  1132. ,NULL id
  1133. END CATCH ELSE
  1134. IF @flag = 'saveCashHoldRmks' --Add Approve Remarks
  1135. BEGIN TRY
  1136. IF EXISTS (
  1137. SELECT 'X'
  1138. FROM dbo.remitTranCashLimitHold WITH (NOLOCK)
  1139. WHERE TranId = @holdTranId
  1140. )
  1141. BEGIN
  1142. IF @messageCashLimitHold IS NULL
  1143. BEGIN
  1144. EXEC proc_errorHandler 1
  1145. ,'Cash Limit Hold remarks can not be blank.'
  1146. ,@holdTranId
  1147. RETURN;
  1148. END
  1149. END
  1150. BEGIN TRANSACTION
  1151. --select * from remitTranCashLimitHold
  1152. --EXEC proc_transactionView @flag = 'saveCashHoldRmks', @user = 'admin', @controlNo = '212048659', @tranId = '100353262', @messageComplaince = null, @messageOFAC = null, @messageCashLimitHold = 'approve cash hold limit'
  1153. UPDATE H
  1154. SET H.approvedRemarks = @messageCashLimitHold
  1155. ,H.approvedBy = @user
  1156. ,H.approvedDate = GETDATE()
  1157. FROM REMITTRAN R(NOLOCK)
  1158. INNER JOIN remitTranCashLimitHold H(NOLOCK) ON R.HOLDTRANID = H.TRANID
  1159. AND R.id = @tranId
  1160. AND H.approvedBy IS NULL
  1161. UPDATE remitTran
  1162. SET tranStatus = CASE tranStatus
  1163. WHEN 'Cash Limit Hold'
  1164. THEN 'Payment'
  1165. WHEN 'Cash Limit/Compliance Hold'
  1166. THEN 'Compliance Hold'
  1167. WHEN 'Cash Limit/OFAC Hold'
  1168. THEN 'OFAC Hold'
  1169. WHEN 'Cash Limit/OFAC/Compliance Hold'
  1170. THEN 'OFAC/Compliance Hold'
  1171. ELSE 'Payment'
  1172. END
  1173. WHERE id = @tranId
  1174. COMMIT TRANSACTION
  1175. EXEC proc_errorHandler 0
  1176. ,'Release remarks has been saved successfully.'
  1177. ,@tranId
  1178. END TRY
  1179. BEGIN CATCH
  1180. SELECT 1 error_code
  1181. ,ERROR_MESSAGE() mes
  1182. ,NULL id
  1183. END CATCH
  1184. --EXEC proc_transactionView @FLAG='chkFlag',@tranId='26'
  1185. ELSE
  1186. IF @flag = 'chkFlagOFAC'
  1187. BEGIN
  1188. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  1189. IF @controlNoEncrypted IS NOT NULL
  1190. SELECT @holdTranId = holdTranId
  1191. ,@tranId = id
  1192. FROM vwRemitTran WITH (NOLOCK)
  1193. WHERE controlNo = @controlNoEncrypted
  1194. SELECT CASE
  1195. WHEN approvedDate IS NULL
  1196. THEN 'N'
  1197. ELSE 'Y'
  1198. END AS Compliance_FLAG
  1199. FROM remitTranOfac O(NOLOCK)
  1200. WHERE TranId = @holdTranId
  1201. END
  1202. ELSE IF @flag = 'chkFlagCOMPLAINCE'
  1203. BEGIN
  1204. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  1205. IF @controlNoEncrypted IS NOT NULL
  1206. SELECT @holdTranId = holdTranId
  1207. ,@tranId = id
  1208. FROM vwRemitTran WITH (NOLOCK)
  1209. WHERE controlNo = @controlNoEncrypted
  1210. SELECT CASE
  1211. WHEN approvedDate IS NULL
  1212. THEN 'N'
  1213. ELSE 'Y'
  1214. END AS Compliance_FLAG
  1215. FROM remitTranCompliance(NOLOCK)
  1216. WHERE TranId = @holdTranId
  1217. END
  1218. ELSE IF @flag = 'chkFlagCashLimitHold'
  1219. BEGIN
  1220. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  1221. IF @controlNoEncrypted IS NOT NULL
  1222. SELECT @holdTranId = holdTranId
  1223. ,@tranId = id
  1224. FROM vwRemitTran WITH (NOLOCK)
  1225. WHERE controlNo = @controlNoEncrypted
  1226. SELECT CASE
  1227. WHEN H.approvedDate IS NULL
  1228. THEN 'N'
  1229. ELSE 'Y'
  1230. END AS Compliance_FLAG
  1231. FROM remitTranCashLimitHold H(NOLOCK)
  1232. WHERE TRANID = @holdTranId
  1233. END
  1234. ELSE IF @flag = 'va' --Verify Agent For Tran Modification
  1235. BEGIN
  1236. --Necessary paremeter: @user, @branch, @controlNo
  1237. IF NOT EXISTS (
  1238. SELECT 'X'
  1239. FROM remitTran WITH (NOLOCK)
  1240. WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  1241. AND sBranch = @branch
  1242. )
  1243. BEGIN
  1244. EXEC proc_errorHandler 1
  1245. ,'Transaction not found'
  1246. ,NULL
  1247. RETURN
  1248. END
  1249. EXEC proc_errorHandler 0
  1250. ,'Success'
  1251. ,NULL
  1252. END
  1253. IF @flag = 'show-QA'
  1254. BEGIN
  1255. SELECT ROW_NUMBER() OVER (
  1256. ORDER BY ORDER_BY
  1257. ) SN
  1258. ,*
  1259. FROM (
  1260. SELECT ORDER_BY
  1261. ,QSN
  1262. ,ANSWER_TEXT
  1263. ,A.ROW_ID
  1264. ,editQuestionnaire = '<button id="btnUpdate" class="btn btn-primary" value="Edit" onClick="UpdateQuestionnaire();"/>'
  1265. FROM dbo.TBL_TXN_COMPLIANCE_CDDI A
  1266. INNER JOIN dbo.VIEW_COMPLIANCE_QUESTION_SET B ON CAST(B.ID AS VARCHAR) = A.QUES_ID
  1267. WHERE CAST(A.TRAN_ID AS VARCHAR) = CAST(ISNULL(@holdTranId, 0) AS VARCHAR)
  1268. ) x
  1269. END
  1270. IF @flag = 'update-QA'
  1271. BEGIN
  1272. -- select * from TBL_TXN_COMPLIANCE_CDDI where tran_id = 10400665
  1273. DECLARE @oldAnswer VARCHAR(25)
  1274. SELECT @oldAnswer = ANSWER_TEXT
  1275. FROM TBL_TXN_COMPLIANCE_CDDI
  1276. WHERE ROW_ID = @rowId
  1277. UPDATE TBL_TXN_COMPLIANCE_CDDI
  1278. SET ANSWER_TEXT = @newAnswer
  1279. WHERE ROW_ID = @rowId
  1280. EXEC proc_applicationLogs @FLAG = 'i'
  1281. ,@logType = 'Update'
  1282. ,@tableName = 'TBL_TXN_COMPLIANCE_CDDI'
  1283. ,@dataId = @rowId
  1284. ,@oldData = @oldAnswer
  1285. ,@newData = @newAnswer
  1286. ,@module = NULL
  1287. ,@user = @user
  1288. SELECT 0 'ErrorCode'
  1289. ,'Success' Msg
  1290. ,NULL Id
  1291. END
  1292. IF @flag = 's-QuestionaireAnswer'
  1293. BEGIN
  1294. SET @sortBy = 'ORDER_BY'
  1295. SET @table = '
  1296. (
  1297. SELECT ORDER_BY, QUES_ID,QSN,ANSWER_TEXT
  1298. ,[updateQ] = ''<button id="btnUpdate" onClick="UpdateQuestionnaire();"/> ''
  1299. FROM dbo.TBL_TXN_COMPLIANCE_CDDI A
  1300. INNER JOIN dbo.VIEW_COMPLIANCE_QUESTION_SET B ON CAST(B.ID AS VARCHAR) = A.QUES_ID WHERE CAST(A.TRAN_ID AS VARCHAR) = ''' + CAST(ISNULL(@holdTranId, 0) AS VARCHAR) + '''';
  1301. SET @table = @table + ' )x';
  1302. SET @pageSize = 50
  1303. SET @select_field_list = 'QUES_ID,QSN,ANSWER_TEXT,updateQ';
  1304. EXEC dbo.proc_paging @table
  1305. ,@sql_filter
  1306. ,@select_field_list
  1307. ,@extra_field_list
  1308. ,@sortBy
  1309. ,@sortOrder
  1310. ,@pageSize
  1311. ,@pageNumber;
  1312. END
  1313. IF @flag = 'questionaire-available'
  1314. BEGIN
  1315. SELECT *
  1316. FROM TBL_TXN_COMPLIANCE_CDDI
  1317. WHERE TRAN_ID = @holdTranId
  1318. END
  1319. IF @flag = 'checkTran'
  1320. BEGIN
  1321. SELECT @holdTranId = holdtranid
  1322. FROM remittran
  1323. WHERE id = @TranId
  1324. --contain n ofac and cash hold
  1325. IF EXISTS (
  1326. SELECT 'x'
  1327. FROM remittranofac rto(NOLOCK)
  1328. INNER JOIN remitTranCashLimitHold rtch(NOLOCK) ON rto.tranid = rtch.tranid
  1329. WHERE rto.tranid = @holdTranId
  1330. )
  1331. BEGIN
  1332. SELECT 1 'ErrorCode'
  1333. ,'Contains in both Ofac and Cash limit' Msg
  1334. ,NULL Id
  1335. RETURN
  1336. END
  1337. IF EXISTS (
  1338. SELECT 'x'
  1339. FROM remittrancompliance rto(NOLOCK)
  1340. INNER JOIN remitTranCashLimitHold rtch(NOLOCK) ON rto.tranid = rtch.tranid
  1341. WHERE rto.tranid = @holdTranId
  1342. )
  1343. BEGIN
  1344. SELECT 1 'ErrorCode'
  1345. ,'Contains in both Compliance and Cash limit' Msg
  1346. ,NULL Id
  1347. RETURN
  1348. END
  1349. SELECT 0 'ErrorCode'
  1350. ,'Not Found in both' Msg
  1351. ,NULL Id
  1352. END
  1353. IF @flag = 'deleteTroubleTicket'
  1354. BEGIN
  1355. UPDATE tranModifyLog
  1356. SET STATUS = 'Deleted'
  1357. ,resolvedby = @user
  1358. ,resolvedDate = getdate()
  1359. WHERE rowId = @rowId
  1360. EXEC proc_errorHandler 0
  1361. ,'Trouble ticket deleted sucessfully.'
  1362. ,NULL
  1363. END