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.

1525 lines
84 KiB

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