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.

1526 lines
84 KiB

1 year ago
1 year ago
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: 9/25/2023 5:35:27 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. -----------------------------------
  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. WHEN trn.tranType = 'I'
  297. THEN 'Counter'
  298. WHEN trn.TranType = 'M'
  299. THEN 'Mobile'
  300. WHEN trn.TranType = 'T'
  301. THEN 'Tablet'
  302. WHEN trn.tranType = 'W'
  303. THEN 'Web'
  304. END
  305. ,payoutMsg = ISNULL(trn.pMessage, '-')
  306. ,trn.createdBy
  307. ,trn.createdDate
  308. ,trn.approvedBy
  309. ,trn.approvedDate
  310. ,trn.paidBy
  311. ,trn.paidDate
  312. ,trn.cancelRequestBy
  313. ,trn.cancelRequestDate
  314. ,trn.cancelApprovedBy
  315. ,trn.cancelApprovedDate
  316. ,trn.lockedBy
  317. ,trn.lockedDate
  318. ,trn.payTokenId
  319. ,trn.tranStatus
  320. ,trn.tranType
  321. ,trn.holdTranId
  322. ,sTelNo = ISNULL(sen.homephone, sen.workphone)
  323. ,rTelNo = ISNULL(rec.homephone, rec.workphone)
  324. ,CashOrBank = ''
  325. ,PurposeofRemit = CASE
  326. WHEN trn.PurposeofRemit = 'Payment of import good'
  327. THEN CONCAT (
  328. '<b>'
  329. ,trn.purposeOfRemit
  330. ,'</b>'
  331. ,'<br/>'
  332. ,'<b>Goods Type:</b> ' + ISNULL(rec.goodsType, '')
  333. ,'<br/>'
  334. ,'<b>Goods Origin:</b> ' + ISNULL(goodsorigin, '')
  335. ,'<br/>'
  336. ,'<b>Port Of Shipment:</b> ' + ISNULL(rec.portOfShipment, '')
  337. )
  338. ELSE ISNULL(trn.purposeOfRemit, '-')
  339. END
  340. ,custRate = isnull(trn.customerRate, 0) + isnull(trn.schemePremium, 0)
  341. ,settRate = trn.agentCrossSettRate
  342. ,nativeCountry = sen.nativeCountry
  343. ,@isRealTime AS isRealTime
  344. ,CASE
  345. WHEN ISNULL(@referralName, '') = ''
  346. THEN '-'
  347. ELSE @referralName
  348. END referralName
  349. ,introducer = CASE
  350. WHEN trn.referralId IS NULL
  351. THEN '-'
  352. ELSE intro.fullName + ' ' + ' - ' + intro.membershipId
  353. END
  354. ,receiverNameAlt = ISNULL(trn.receiverNameAlt, '')
  355. ,IsQuestionnaire = @IsQuestionnaire
  356. ,pSuperAgent = trn.pSuperAgent
  357. ,cm.createdDate registerDate
  358. ,rewardPoints = trn.rewardPoints
  359. ,customerPremium = trn.customerPremium
  360. ,depositType = tr.depositType
  361. ,trustPaymentId = tpd.transactionReference
  362. FROM vwRemitTran trn WITH (NOLOCK)
  363. LEFT JOIN remitTranTemp rt WITH (NOLOCK) ON trn.id = rt.id
  364. LEFT JOIN vwTranSenders sen WITH (NOLOCK) ON trn.id = sen.tranId
  365. LEFT JOIN vwTranReceivers rec WITH (NOLOCK) ON trn.id = rec.tranId
  366. LEFT JOIN agentMaster sa WITH (NOLOCK) ON trn.sBranch = sa.agentId
  367. LEFT JOIN agentMaster pa WITH (NOLOCK) ON trn.pBranch = pa.agentId
  368. LEFT JOIN api_districtList pLoc WITH (NOLOCK) ON trn.pLocation = pLoc.districtCode
  369. LEFT JOIN apiLocationMapping ALM WITH (NOLOCK) ON pLoc.districtCode = ALM.apiDistrictCode
  370. LEFT JOIN zoneDistrictMap ZDM WITH (NOLOCK) ON ZDM.districtId = ALM.districtId
  371. LEFT JOIN api_districtList sLoc WITH (NOLOCK) ON sa.agentLocation = sLoc.districtCode
  372. LEFT JOIN staticDataValue sdv WITH (NOLOCK) ON sen.idType = CAST(sdv.valueId AS VARCHAR)
  373. LEFT JOIN staticDataValue sdv1 WITH (NOLOCK) ON rec.idType = CAST(sdv1.valueId AS VARCHAR)
  374. LEFT JOIN staticDataValue sdv2 WITH (NOLOCK) ON rec.relationType = CAST(sdv2.valueId AS VARCHAR)
  375. LEFT JOIN customerMaster cm WITH (NOLOCK) ON cm.customerId = sen.customerId
  376. LEFT JOIN customerMaster intro WITH (NOLOCK) ON intro.customerId = trn.referralId
  377. LEFT JOIN staticDataValue VISA WITH (NOLOCK) ON CM.VISASTATUS = CAST(VISA.VALUEID AS VARCHAR)
  378. LEFT JOIN tbl_japan_address_detail detail WITH (NOLOCK) ON detail.zip_code = sen.zipcode
  379. LEFT JOIN dbo.countryStateMaster SS(NOLOCK) ON cast(SS.stateId AS INT) = detail.state_Id
  380. LEFT JOIN STATICDATAVALUE occ ON occ.VALUEID = CM.occupation
  381. LEFT JOIN PAYER_BANK_DETAILS pbd WITH (NOLOCK) ON pbd.payer_id = trn.payerId
  382. LEFT JOIN TRU_TranDetail tpd WITH (NOLOCK) ON tpd.Tranid = trn.id
  383. LEFT JOIN remitTran tr WITH (NOLOCK) ON tr.id = trn.id
  384. WHERE trn.controlNo = @controlNoEncrypted
  385. OR isnull(trn.id, trn.holdTranId) = LTRIM(RTRIM(@tranId))
  386. --End of Transaction Details------------------------------------------------------------
  387. --Lock Transaction----------------------------------------------------------------------
  388. IF (@lockMode = 'Y')
  389. BEGIN
  390. UPDATE remitTran
  391. SET tranStatus = 'Lock'
  392. ,lockedBy = @user
  393. ,lockedDate = GETDATE()
  394. ,lockedDateLocal = @nepDate
  395. WHERE (
  396. tranStatus = 'Payment'
  397. AND tranStatus <> 'CancelRequest'
  398. )
  399. AND payStatus = 'Unpaid'
  400. AND (
  401. controlNo = @controlNoEncrypted
  402. OR id = @tranId
  403. )
  404. END
  405. --End of Lock Transaction---------------------------------------------------------------
  406. --Log Details---------------------------------------------------------------------------
  407. PRINT @holdTranId
  408. SELECT *
  409. FROM (
  410. SELECT rowId = 0
  411. ,message = 'OFAC Release Msg:' + approvedRemarks
  412. ,createdBy = approvedBy
  413. ,createdDate = approvedDate
  414. ,fileType = NULL
  415. ,deleteComment = 'N'
  416. ,fieldName = NULL
  417. FROM remittranofac
  418. WHERE tranid = @holdTranId
  419. AND approvedBy IS NOT NULL
  420. UNION ALL
  421. SELECT rowId
  422. ,message = CASE
  423. WHEN message IS NULL
  424. THEN fieldName + ' ' + OLDVALUE + ' Changed By ' + REPLACE(REPLACE(FIELDVALUE, '<root><row ', ''), ' secondLastName = ""/></root>', '')
  425. ELSE [MESSAGE]
  426. END
  427. ,trn.createdBy
  428. ,trn.createdDate
  429. ,isnull(trn.fileType, '') fileType
  430. ,deleteComment = 'Y'
  431. ,fieldName
  432. FROM tranModifyLog trn WITH (NOLOCK)
  433. LEFT JOIN applicationUsers au WITH (NOLOCK) ON trn.createdBy = au.userName
  434. WHERE (
  435. trn.tranId = @tranId
  436. OR trn.controlNo = @controlNoEncrypted
  437. )
  438. AND ISNULL(trn.STATUS, '') <> 'Deleted'
  439. AND ISNULL(trn.OLDVALUE, '') NOT IN (
  440. '7000'
  441. ,'100'
  442. ,'415'
  443. ,'416'
  444. )
  445. ) x
  446. ORDER BY X.rowId DESC
  447. SELECT bankName = 'Cash'
  448. ,collMode = 'Cash'
  449. ,amt = ''
  450. ,collDate = ''
  451. ,voucherNo = ''
  452. ,narration = 'Cash Collection'
  453. SELECT C.PARTICULARS
  454. ,C.TRANDATE
  455. ,C.DEPOSITAMOUNT
  456. FROM TBL_BANK_DEPOSIT_TXN_MAPPING B(NOLOCK)
  457. INNER JOIN CUSTOMER_DEPOSIT_LOGS C(NOLOCK) ON C.TRANID = B.DEPOSIT_LOG_ID
  458. WHERE HOLD_TRAN_ID = @holdTranId
  459. -- Document Details
  460. SELECT ROW_NUMBER() OVER (
  461. ORDER BY uploadedDate ASC
  462. ) SN
  463. ,*
  464. FROM (
  465. SELECT documentType = CASE
  466. WHEN cd.documentType = '0'
  467. AND filetype = 'application/pdf'
  468. THEN cd.filedescription
  469. ELSE ISNULL(sdv.detailTitle, 'signature')
  470. END
  471. ,fileType = CASE
  472. WHEN ISNULL(cd.fileType, 'image/jpeg') IN ('receiver')
  473. THEN 'application/pdf'
  474. ELSE ISNULL(cd.fileType, 'image/jpeg')
  475. END
  476. ,uploadedDate = CONVERT(VARCHAR(10), cd.createddate, 111)
  477. ,fileName = '<a style=''cursor:pointer;'' onclick="showDocument(' + Cast(cd.cdId AS VARCHAR) + ',''' + CASE
  478. WHEN ISNULL(cd.fileType, 'image/jpeg') IN ('receiver')
  479. THEN 'application/pdf'
  480. ELSE ISNULL(cd.fileType, 'image/jpeg')
  481. END + ''');">' + cd.fileName + '</a>'
  482. FROM dbo.customerDocument cd
  483. LEFT JOIN dbo.staticDataValue sdv ON sdv.valueId = cd.documentType
  484. WHERE cd.customerId = @customerId
  485. AND ISNULL(isDeleted, 'N') = 'N'
  486. --ORDER BY cd.createdDate
  487. ) X
  488. ---- Questionaire details
  489. --SELECT ROW_NUMBER() OVER (
  490. -- ORDER BY ORDER_BY
  491. -- ) SN
  492. -- ,*
  493. --FROM (
  494. -- SELECT ORDER_BY
  495. -- ,QSN
  496. -- ,ANSWER_TEXT
  497. -- ,editQuestionnaire = '<button id="btnUpdate" class="btn btn-primary" value="Edit" onClick="UpdateQuestionnaire();"/>'
  498. -- FROM dbo.TBL_TXN_COMPLIANCE_CDDI A
  499. -- INNER JOIN dbo.VIEW_COMPLIANCE_QUESTION_SET B ON CAST(B.ID AS VARCHAR) = A.QUES_ID
  500. -- WHERE CAST(A.TRAN_ID AS VARCHAR) = CAST(ISNULL(@holdTranId, 0) AS VARCHAR)
  501. -- ) x
  502. END
  503. ELSE IF @flag = 'voucher'
  504. BEGIN
  505. IF EXISTS (
  506. SELECT *
  507. FROM dbo.bankCollectionVoucherDetail(NOLOCK)
  508. WHERE tempTranId = @tranId
  509. )
  510. BEGIN
  511. SELECT b.voucherAmt
  512. ,b.voucherDate
  513. ,b.voucherNo
  514. ,v.bankName
  515. FROM dbo.bankCollectionVoucherDetail b(NOLOCK)
  516. INNER JOIN vwBankLists v(NOLOCK) ON b.bankId = v.rowId
  517. WHERE b.tempTranId = @tranId
  518. END
  519. ELSE
  520. BEGIN
  521. SELECT b.voucherAmt
  522. ,b.voucherDate
  523. ,b.voucherNo
  524. ,v.bankName
  525. FROM dbo.bankCollectionVoucherDetail b(NOLOCK)
  526. INNER JOIN vwBankLists v(NOLOCK) ON b.bankId = v.rowId
  527. WHERE b.mainTranId = @tranId
  528. END
  529. END
  530. ELSE IF @flag = 'ac' --Add Comment
  531. BEGIN
  532. BEGIN TRY
  533. IF @message IS NULL
  534. BEGIN
  535. EXEC proc_errorHandler 1
  536. ,'Message can not be blank.'
  537. ,@tranId
  538. RETURN
  539. END
  540. IF @user IS NULL
  541. BEGIN
  542. EXEC proc_errorHandler 1
  543. ,'Your session has expired. Cannot add complain.'
  544. ,NULL
  545. RETURN
  546. END
  547. IF @tranId IS NULL
  548. BEGIN
  549. EXEC proc_errorHandler 1
  550. ,'Transaction No can not be blank.'
  551. ,@tranId
  552. RETURN
  553. END
  554. DECLARE @ttId VARCHAR(10) = NULL
  555. ,@OrderNo VARCHAR(50) = NULL
  556. SELECT @OrderNo = NULLIF(LTRIM(RTRIM(voucherNo)), '')
  557. FROM remitTran(NOLOCK)
  558. WHERE id = @tranId
  559. AND sRouteId = 'RIA'
  560. BEGIN TRAN
  561. INSERT INTO tranModifyLog (
  562. tranId
  563. ,controlNo
  564. ,message
  565. ,createdBy
  566. ,createdDate
  567. ,MsgType
  568. ,STATUS
  569. ,needToSync
  570. )
  571. SELECT @tranId
  572. ,@controlNoEncrypted
  573. ,@message
  574. ,@user
  575. ,@nepDate
  576. ,'C'
  577. ,'Not Resolved'
  578. ,CASE
  579. WHEN @OrderNo IS NOT NULL
  580. THEN 1
  581. ELSE 0
  582. END
  583. --SET @ttId=@@IDENTITY
  584. --IF @OrderNo IS NOT NULL
  585. --BEGIN
  586. -- UPDATE tranModifyLog SET needToSync=1 WHERE rowId=@ttId
  587. --END
  588. IF ISNUMERIC(@controlNo) = 1
  589. AND right(@controlNo, 1) <> 'D'
  590. BEGIN
  591. INSERT INTO dbo.rs_remitTranTroubleTicket (
  592. RefNo
  593. ,Comments
  594. ,DatePosted
  595. ,PostedBy
  596. ,uploadBy
  597. ,STATUS
  598. ,noteType
  599. ,tranno
  600. ,category
  601. )
  602. SELECT @controlNoEncrypted
  603. ,@message
  604. ,GETDATE()
  605. ,@user
  606. ,@user
  607. ,NULL
  608. ,2
  609. ,NULL
  610. ,'push'
  611. END
  612. COMMIT TRAN
  613. ---EXEC proc_errorHandler 0, 'Comments has been added successfully.', @tranId
  614. SELECT '0' AS errorCode
  615. ,'Comments has been added successfully.' AS Msg
  616. ,@ttId AS Id
  617. ,'RIA' AS Extra
  618. ,@OrderNo AS Extra2
  619. END TRY
  620. BEGIN CATCH
  621. SELECT 1 error_code
  622. ,ERROR_MESSAGE() mes
  623. ,NULL id
  624. END CATCH
  625. END
  626. IF @flag = 'showLog' --Add Comment
  627. BEGIN
  628. --Log Details---------------------------------------------------------------------------
  629. --SELECT
  630. -- rowId
  631. -- ,message
  632. -- ,trn.createdBy
  633. -- ,trn.createdDate
  634. -- ,isnull(trn.fileType,'') fileType
  635. --FROM tranModifyLog trn WITH(NOLOCK)
  636. --LEFT JOIN applicationUsers au WITH(NOLOCK) ON trn.createdBy = au.userName
  637. --WHERE trn.tranId = @tranId
  638. --ORDER BY trn.createdDate DESC
  639. SELECT *
  640. FROM (
  641. SELECT rowId = 0
  642. ,message = 'OFAC Release Msg:' + approvedRemarks
  643. ,createdBy = approvedBy
  644. ,createdDate = approvedDate
  645. ,fileType = NULL
  646. ,deleteComment = 'N'
  647. ,fieldName = null
  648. FROM remittranofac
  649. WHERE tranid = @holdTranId
  650. UNION ALL
  651. SELECT rowId
  652. ,message = CASE
  653. WHEN message IS NULL
  654. THEN fieldName + ' ' + OLDVALUE + ' Changed By ' + REPLACE(REPLACE(FIELDVALUE, '<root><row ', ''), ' secondLastName = ""/></root>', '')
  655. ELSE [MESSAGE]
  656. END
  657. ,trn.createdBy
  658. ,trn.createdDate
  659. ,isnull(trn.fileType, '') fileType
  660. ,deleteComment = 'Y'
  661. ,fieldName
  662. FROM tranModifyLog trn WITH (NOLOCK)
  663. LEFT JOIN applicationUsers au WITH (NOLOCK) ON trn.createdBy = au.userName
  664. WHERE (
  665. trn.tranId = @tranId
  666. OR trn.controlNo = @controlNoEncrypted
  667. )
  668. AND trn.[status] <> 'Deleted'
  669. ) x
  670. ORDER BY X.rowId DESC
  671. END
  672. ELSE IF @flag = 'OFAC'
  673. BEGIN
  674. DECLARE @TRACK_BY VARCHAR(20)
  675. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  676. IF @controlNoEncrypted IS NOT NULL
  677. SELECT @holdTranId = holdTranId
  678. ,@tranId = id
  679. FROM vwRemitTran WITH (NOLOCK)
  680. WHERE controlNo = @controlNoEncrypted
  681. IF OBJECT_ID('tempdb..#tempMaster') IS NOT NULL
  682. DROP TABLE #tempMaster
  683. IF OBJECT_ID('tempdb..#tempDataTable') IS NOT NULL
  684. DROP TABLE #tempDataTable
  685. CREATE TABLE #tempDataTable (DATA NVARCHAR(MAX) NULL)
  686. DECLARE @ofacKeyIds VARCHAR(MAX)
  687. ,@ofacRemarks NVARCHAR(MAX)
  688. SELECT @ofacKeyIds = blackListId
  689. ,@TRACK_BY = ISNULL(TRACK_BY, 'OFAC')
  690. ,@ofacRemarks = ofacDetail
  691. FROM dbo.remitTranOfac
  692. WHERE TranId = ISNULL(@holdTranId, @tranId)
  693. IF @ofacRemarks IS NOT NULL
  694. BEGIN
  695. SELECT ofacRemarks = @ofacRemarks
  696. ,'Y' isJsonData
  697. RETURN
  698. END
  699. DECLARE @TNA_ID AS INT
  700. ,@MAX_ROW_ID AS INT
  701. ,@ROW_ID AS INT = 1
  702. ,@ofacKeyId VARCHAR(100)
  703. ,@SDN VARCHAR(MAX) = ''
  704. ,@ADDRESS VARCHAR(MAX) = ''
  705. ,@REMARKS AS VARCHAR(MAX) = ''
  706. ,@ALT AS VARCHAR(MAX) = ''
  707. ,@DATA AS NVARCHAR(MAX) = ''
  708. ,@DATA_SOURCE AS VARCHAR(200) = ''
  709. IF @TRACK_BY = 'DJ'
  710. BEGIN
  711. IF OBJECT_ID('tempdb..#tempDJresult') IS NOT NULL
  712. DROP TABLE #tempDJ
  713. SELECT DISTINCT X.val ofacKeyId
  714. INTO #tempDJ
  715. FROM (
  716. SELECT *
  717. FROM dbo.SplitXML(',', @ofacKeyIds)
  718. ) X
  719. ALTER TABLE #tempDJ ADD ROWID INT IDENTITY (
  720. 1
  721. ,1
  722. )
  723. SELECT @MAX_ROW_ID = MAX(ROWID)
  724. FROM #tempDJ
  725. WHILE @MAX_ROW_ID >= @ROW_ID
  726. BEGIN
  727. SELECT @ofacKeyId = ofacKeyId
  728. FROM #tempDJ
  729. WHERE ROWID = @ROW_ID
  730. SELECT @DATA = RESULT
  731. FROM Dowjones.DBO.DJ_FNAGET_PERSON_DETAIL(@ofacKeyId)
  732. IF ISNULL(@DATA, '') <> ''
  733. BEGIN
  734. INSERT INTO #tempDataTable
  735. SELECT @DATA
  736. END
  737. SET @ROW_ID = @ROW_ID + 1
  738. END
  739. ALTER TABLE #tempDataTable ADD ROWID INT IDENTITY (
  740. 1
  741. ,1
  742. )
  743. SELECT ROWID [S.N.]
  744. ,DATA [Remarks]
  745. ,'N' isJsonData
  746. FROM #tempDataTable
  747. RETURN
  748. END
  749. SELECT DISTINCT A.val ofacKeyId
  750. INTO #tempMaster
  751. FROM (
  752. SELECT *
  753. FROM dbo.SplitXML(',', @ofacKeyIds)
  754. ) A
  755. INNER JOIN (
  756. SELECT ofacKey
  757. FROM blacklistHistory WITH (NOLOCK)
  758. ) B ON A.val = B.ofacKey
  759. ALTER TABLE #tempMaster ADD ROWID INT IDENTITY (
  760. 1
  761. ,1
  762. )
  763. SELECT @MAX_ROW_ID = MAX(ROWID)
  764. FROM #tempMaster
  765. WHILE @MAX_ROW_ID >= @ROW_ID
  766. BEGIN
  767. SELECT @SDN = ''
  768. ,@ADDRESS = ''
  769. ,@ADDRESS = ''
  770. ,@ALT = ''
  771. ,@REMARKS = ''
  772. SELECT @ofacKeyId = ofacKeyId
  773. FROM #tempMaster
  774. WHERE ROWID = @ROW_ID
  775. SELECT @SDN = '<b>' + ISNULL(entNum, '') + '</b>, <b>Name:</b> ' + ISNULL(name, '')
  776. ,@DATA_SOURCE = '<b>Data Source:</b> ' + ISNULL(dataSource, '')
  777. FROM blacklistHistory WITH (NOLOCK)
  778. WHERE ofacKey = @ofacKeyId
  779. AND vesselType = 'sdn'
  780. SELECT @ADDRESS = ISNULL(address, '') + ', ' + ISNULL(city, '') + ', ' + ISNULL(STATE, '') + ', ' + ISNULL(zip, '') + ', ' + ISNULL(country, '')
  781. FROM blacklistHistory WITH (NOLOCK)
  782. WHERE ofacKey = @ofacKeyId
  783. AND vesselType = 'add'
  784. SELECT @ALT = COALESCE(@ALT + ', ', '') + CAST(ISNULL(NAME, '') AS VARCHAR(MAX))
  785. FROM blacklistHistory WITH (NOLOCK)
  786. WHERE ofacKey = @ofacKeyId
  787. AND vesselType IN (
  788. 'alt'
  789. ,'aka'
  790. )
  791. SELECT @REMARKS = ISNULL(remarks, '') + isnull('<br/> ID Type:' + idType, '') + isnull(':' + idNumber, '') + isnull('|DOB:' + dob, '') + isnull(' |Father Name: ' + FatherName, '')
  792. FROM blacklistHistory WITH (NOLOCK)
  793. WHERE ofacKey = @ofacKeyId
  794. AND vesselType = 'sdn'
  795. SET @SDN = RTRIM(LTRIM(@SDN))
  796. SET @ADDRESS = RTRIM(LTRIM(@ADDRESS))
  797. SET @ALT = RTRIM(LTRIM(@ALT))
  798. SET @REMARKS = RTRIM(LTRIM(@REMARKS))
  799. SET @SDN = REPLACE(@SDN, ', ,', '')
  800. SET @ADDRESS = REPLACE(@ADDRESS, ', ,', '')
  801. SET @ALT = REPLACE(@ALT, ', ,', '')
  802. SET @REMARKS = REPLACE(@REMARKS, ', ,', '')
  803. SET @SDN = REPLACE(@SDN, '-0-', '')
  804. SET @ADDRESS = REPLACE(@ADDRESS, '-0-', '')
  805. SET @ALT = REPLACE(@ALT, '-0-', '')
  806. SET @REMARKS = REPLACE(@REMARKS, '-0-', '')
  807. SET @SDN = REPLACE(@SDN, ',,', '')
  808. SET @ADDRESS = REPLACE(@ADDRESS, ',,', '')
  809. SET @ALT = REPLACE(@ALT, ',,', '')
  810. SET @REMARKS = REPLACE(@REMARKS, ',,', '')
  811. IF @DATA_SOURCE IS NOT NULL
  812. AND @DATA_SOURCE <> ''
  813. SET @DATA = @DATA_SOURCE
  814. IF @SDN IS NOT NULL
  815. AND @SDN <> ''
  816. SET @DATA = @DATA + '<BR>' + @SDN
  817. IF @ADDRESS IS NOT NULL
  818. AND @ADDRESS <> ''
  819. SET @DATA = @DATA + '<BR><b>Address: </b>' + @ADDRESS
  820. IF @ALT IS NOT NULL
  821. AND @ALT <> ''
  822. AND @ALT <> ' '
  823. SET @DATA = @DATA + '<BR>' + '<b>a.k.a :</b>' + @ALT + ''
  824. IF @REMARKS IS NOT NULL
  825. AND @REMARKS <> ''
  826. SET @DATA = @DATA + '<BR><b>Other Info :</b>' + @REMARKS
  827. IF @DATA IS NOT NULL
  828. OR @DATA <> ''
  829. BEGIN
  830. INSERT INTO #tempDataTable
  831. SELECT REPLACE(@DATA, '<BR><BR>', '')
  832. END
  833. SET @ROW_ID = @ROW_ID + 1
  834. END
  835. ALTER TABLE #tempDataTable ADD ROWID INT IDENTITY (
  836. 1
  837. ,1
  838. )
  839. SELECT ROWID [S.N.]
  840. ,DATA [Remarks]
  841. ,'N' isJsonData
  842. FROM #tempDataTable
  843. END
  844. ELSE IF @flag = 'Compliance'
  845. BEGIN
  846. SELECT @holdTranId = holdTranId
  847. ,@tranId = id
  848. FROM vwRemitTran WITH (NOLOCK)
  849. WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  850. SELECT rowId
  851. ,csDetailRecId
  852. ,[S.N.] = ROW_NUMBER() OVER (
  853. ORDER BY ROWID
  854. )
  855. ,[Remarks]
  856. ,[Matched ControlNo]
  857. ,[Doc. Required]
  858. ,[Approved Remarks]
  859. FROM (
  860. SELECT rowId
  861. ,csDetailRecId = CL.id
  862. ,[Remarks] = CASE
  863. WHEN RTC.CSDETAILTRANID = 0
  864. THEN RTC.REASON
  865. WHEN RTC.CSDETAILTRANID <> 0
  866. THEN CL.COMPLAINCEDETAILMESSAGE
  867. END
  868. --,[Matched TRAN ID] = ISNULL(rtc.matchTranId, '-')
  869. ,[Matched ControlNo] = ISNULL(CASE
  870. WHEN dbo.fnadecryptstring(rtt.controlno) = ''
  871. AND dbo.fnadecryptstring(rth.controlno) = ''
  872. THEN dbo.fnadecryptstring(rt.controlno)
  873. WHEN dbo.fnadecryptstring(rtt.controlno) = ''
  874. AND dbo.fnadecryptstring(rt.controlno) = ''
  875. THEN dbo.fnadecryptstring(rth.controlno)
  876. ELSE dbo.fnadecryptstring(rtt.controlno)
  877. END, '-')
  878. ,[Doc. Required] = CASE
  879. WHEN isDocumentRequired = 1
  880. THEN 'Yes'
  881. ELSE 'No'
  882. END
  883. ,[Approved Remarks] = rtc.approvedby + ': ' + rtc.approvedremarks
  884. FROM ComplianceLog CL
  885. LEFT JOIN remitTranCompliance rtc WITH (NOLOCK) ON CL.TRANID = RTC.TRANID --AND RTC.CSDETAILTRANID = CL.complianceId
  886. LEFT JOIN CSDETAIL CD(NOLOCK) ON CD.csDetailId = CL.complianceId
  887. LEFT JOIN vwremittran rtt(NOLOCK) ON rtt.holdtranid = rtc.matchTranId
  888. LEFT JOIN vwremittran rth(NOLOCK) ON rth.id = rtc.matchTranId
  889. LEFT JOIN cancelTranHistory rt(NOLOCK) ON rt.tranid = rtc.matchTranId
  890. WHERE rtc.TranId = ISNULL(@holdTranId, @tranId)
  891. AND ISNULL(rtc.reason, '') <> 'Suspected duplicate transaction'
  892. --AND CD.nextAction = 'H'
  893. UNION ALL
  894. SELECT rowId
  895. ,csDetailRecId = CASE
  896. WHEN CSDETAILTRANID <> 0
  897. THEN CL.id
  898. ELSE 0
  899. END
  900. ,[Remarks] = CASE
  901. WHEN RTC.CSDETAILTRANID = 0
  902. THEN RTC.REASON
  903. WHEN RTC.CSDETAILTRANID <> 0
  904. THEN CL.COMPLAINCEDETAILMESSAGE
  905. END
  906. --,[Matched TRAN ID] = ISNULL(rtc.matchTranId, '-')
  907. ,[Matched ControlNo] = ISNULL(CASE
  908. WHEN dbo.fnadecryptstring(rtt.controlno) = ''
  909. AND dbo.fnadecryptstring(rth.controlno) = ''
  910. THEN dbo.fnadecryptstring(rt.controlno)
  911. WHEN dbo.fnadecryptstring(rtt.controlno) = ''
  912. AND dbo.fnadecryptstring(rt.controlno) = ''
  913. THEN dbo.fnadecryptstring(rth.controlno)
  914. ELSE dbo.fnadecryptstring(rtt.controlno)
  915. END, '-')
  916. ,[Doc. Required] = CASE
  917. WHEN isDocumentRequired = 1
  918. THEN 'Yes'
  919. ELSE 'No'
  920. END
  921. ,[Approved Remarks] = rtc.approvedby + ': ' + rtc.approvedremarks
  922. FROM remitTranCompliance rtc
  923. LEFT JOIN ComplianceLog CL WITH (NOLOCK) ON CL.TRANID = RTC.TRANID --AND RTC.CSDETAILTRANID = CL.complianceId
  924. LEFT JOIN CSDETAIL CD(NOLOCK) ON CD.csDetailId = CL.complianceId
  925. LEFT JOIN vwremittran rtt(NOLOCK) ON rtt.holdtranid = rtc.matchTranId
  926. LEFT JOIN vwremittran rth(NOLOCK) ON rth.id = rtc.matchTranId
  927. LEFT JOIN cancelTranHistory rt(NOLOCK) ON rt.tranid = rtc.matchTranId
  928. WHERE rtc.TranId = ISNULL(@holdTranId, @tranId)
  929. AND rtc.reason = 'Suspected duplicate transaction'
  930. ) X
  931. END
  932. ELSE IF @flag = 'CashLimitHold'
  933. BEGIN
  934. SELECT @holdTranId = holdTranId
  935. ,@tranId = id
  936. FROM vwRemitTran WITH (NOLOCK)
  937. WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  938. SELECT rowId
  939. ,[S.N.] = ROW_NUMBER() OVER (
  940. ORDER BY ROWID
  941. )
  942. ,[TRAN ID] = rtclh.tranId
  943. ,[Remarks] = ' Transaction is in Cash Limit Hold beacase send amount is greater than available cash hold limit'
  944. FROM remitTranCashLimitHold rtclh WITH (NOLOCK)
  945. WHERE rtclh.TranId = ISNULL(@holdTranId, @tranId)
  946. END
  947. --EXEC proc_transactionView @FLAG='COMPL_DETAIL',@controlNo='1',@tranId='1'
  948. IF @flag = 'COMPL_DETAIL'
  949. BEGIN
  950. /*
  951. 5000 By Sender ID
  952. 5001 By Sender Name
  953. 5002 By Sender Mobile
  954. 5003 By Beneficiary ID
  955. 5004 By Beneficiary ID(System)
  956. 5005 By Beneficiary Name
  957. 5006 By Beneficiary Mobile
  958. 5007 By Beneficiary A/C Number
  959. */
  960. DECLARE @tranIds AS VARCHAR(MAX)
  961. ,@criteria AS INT
  962. ,@totalTran AS INT
  963. ,@criteriaValue AS VARCHAR(500)
  964. ,@id AS INT
  965. ,@reason VARCHAR(500)
  966. SELECT @tranIds = matchTranId
  967. ,@id = TranId
  968. FROM remitTranCompliance WITH (NOLOCK)
  969. WHERE rowId = @controlNo --(ROWID) --id of remitTranCompliance
  970. SELECT @criteria = criteria
  971. FROM csDetailRec WITH (NOLOCK)
  972. WHERE csDetailRecId = @tranId --id of csDetailRec
  973. SELECT @totalTran = COUNT(*)
  974. FROM dbo.Split(',', @tranIds)
  975. IF @criteria = '5000'
  976. SELECT @criteriaValue = B.membershipId
  977. FROM tranSenders B WITH (NOLOCK)
  978. WHERE B.tranId = @id
  979. IF @criteria = '5001'
  980. SELECT @criteriaValue = senderName
  981. FROM remitTran WITH (NOLOCK)
  982. WHERE Id = @id
  983. --SELECT @criteriaValue = SNULL(B.firstName, '') + ISNULL(' ' + B.middleName, '') + ISNULL(' ' + B.lastName1, '') + ISNULL(' ' + B.lastName2, '') FROM tranSenders B with(nolock) WHERE B.tranId = @id
  984. IF @criteria = '5002'
  985. SELECT @criteriaValue = B.mobile
  986. FROM tranSenders B WITH (NOLOCK)
  987. WHERE B.tranId = @id
  988. IF @criteria = '5003'
  989. SELECT @criteriaValue = B.membershipId
  990. FROM tranReceivers B WITH (NOLOCK)
  991. WHERE B.tranId = @id
  992. IF @criteria = '5004'
  993. SELECT @criteriaValue = B.membershipId
  994. FROM tranReceivers B WITH (NOLOCK)
  995. WHERE B.tranId = @id
  996. IF @criteria = '5005'
  997. SELECT @criteriaValue = receiverName
  998. FROM remitTran WITH (NOLOCK)
  999. WHERE Id = @id
  1000. --SELECT @criteriaValue = ISNULL(B.firstName, '') + ISNULL(' ' + B.middleName, '') + ISNULL(' ' + B.lastName1, '') + ISNULL(' ' + B.lastName2, '') FROM tranReceivers B with(nolock) WHERE B.tranId = @id
  1001. IF @criteria = '5006'
  1002. SELECT @criteriaValue = B.mobile
  1003. FROM tranReceivers B WITH (NOLOCK)
  1004. WHERE B.tranId = @id
  1005. IF @criteria = '5007'
  1006. SELECT @criteriaValue = A.accountNo
  1007. FROM remitTran A WITH (NOLOCK)
  1008. WHERE A.id = @id
  1009. -- @tranId=0 LOGIC IS ONLY FOR Suspected duplicate transaction WHERE THERE IS csDetailRecId ALWAYS 0
  1010. SELECT REMARKS = CASE
  1011. WHEN @tranId = 0
  1012. THEN @reason
  1013. ELSE RTRIM(LTRIM(dbo.FNAGetDataValue(condition))) + ' ' + CASE
  1014. WHEN checkType = 'Sum'
  1015. THEN 'Transaction Amount'
  1016. WHEN checkType = 'Count'
  1017. THEN 'Transaction Count'
  1018. END + ' exceeds ' + CAST(parameter AS VARCHAR) + ' limit within ' + CAST(period AS VARCHAR) + ' days ' + dbo.FNAGetDataValue(criteria) + ': <font size=''2px''>' + ISNULL(@criteriaValue, '') + '</font>'
  1019. END
  1020. ,totTran = 'Total Count: <b>' + CASE
  1021. WHEN @tranId = 0
  1022. THEN '1'
  1023. ELSE CAST(@totalTran AS VARCHAR)
  1024. END + '</b>'
  1025. FROM csDetailRec WITH (NOLOCK)
  1026. WHERE csDetailRecId = CASE
  1027. WHEN @tranId = 0
  1028. THEN 1
  1029. ELSE @tranId
  1030. END
  1031. SELECT [S.N.] = ROW_NUMBER() OVER (
  1032. ORDER BY @controlNo
  1033. )
  1034. ,[CONTROL NO.] = dbo.FNADecryptString(trn.controlNo)
  1035. ,[TRAN AMOUNT] = dbo.ShowDecimal(trn.cAmt)
  1036. ,[CURRENCY] = trn.collCurr
  1037. ,[TRAN DATE] = CONVERT(VARCHAR, trn.createdDate, 101)
  1038. FROM VWremitTran trn WITH (NOLOCK)
  1039. INNER JOIN (
  1040. SELECT *
  1041. FROM dbo.Split(',', @tranIds)
  1042. ) B ON trn.holdTranId = B.value
  1043. UNION ALL
  1044. ---- RECORD DISPLAY FROM CANCEL TRANSACTION TABLE
  1045. SELECT [S.N.] = ROW_NUMBER() OVER (
  1046. ORDER BY @controlNo
  1047. )
  1048. ,[CONTROL NO.] = dbo.FNADecryptString(trn.controlNo)
  1049. ,[TRAN AMOUNT] = dbo.ShowDecimal(trn.cAmt)
  1050. ,[CURRENCY] = trn.collCurr
  1051. ,[TRAN DATE] = CONVERT(VARCHAR, trn.createdDate, 101)
  1052. FROM cancelTranHistory trn WITH (NOLOCK)
  1053. INNER JOIN (
  1054. SELECT *
  1055. FROM dbo.Split(',', @tranIds)
  1056. ) B ON trn.tranId = B.value
  1057. END
  1058. ELSE IF @flag = 'saveComplainceRmks' --Add Approve Remarks
  1059. BEGIN TRY
  1060. IF EXISTS (
  1061. SELECT 'X'
  1062. FROM remitTranOfac WITH (NOLOCK)
  1063. WHERE TranId = @holdTranId
  1064. )
  1065. BEGIN
  1066. IF EXISTS (
  1067. SELECT 'X'
  1068. FROM remitTranCompliance WITH (NOLOCK)
  1069. WHERE TranId = @holdTranId
  1070. )
  1071. BEGIN
  1072. IF @messageOFAC IS NULL
  1073. BEGIN
  1074. EXEC proc_errorHandler 1
  1075. ,'OFAC remarks can not be blank.'
  1076. ,@holdTranId
  1077. RETURN;
  1078. END
  1079. IF @messageComplaince IS NULL
  1080. BEGIN
  1081. EXEC proc_errorHandler 1
  1082. ,'Complaince remarks can not be blank.'
  1083. ,@holdTranId
  1084. RETURN;
  1085. END
  1086. END
  1087. ELSE
  1088. BEGIN
  1089. IF @messageOFAC IS NULL
  1090. BEGIN
  1091. EXEC proc_errorHandler 1
  1092. ,'OFAC remarks can not be blank.'
  1093. ,@holdTranId
  1094. RETURN;
  1095. END
  1096. END
  1097. END
  1098. IF EXISTS (
  1099. SELECT 'X'
  1100. FROM remitTranCompliance WITH (NOLOCK)
  1101. WHERE TranId = @holdTranId
  1102. )
  1103. BEGIN
  1104. IF @messageComplaince IS NULL
  1105. BEGIN
  1106. EXEC proc_errorHandler 1
  1107. ,'Complaince remarks can not be blank.'
  1108. ,@holdTranId
  1109. RETURN;
  1110. END
  1111. END
  1112. BEGIN TRANSACTION
  1113. UPDATE remitTranOfac
  1114. SET approvedRemarks = @messageOFAC
  1115. ,approvedBy = @user
  1116. ,approvedDate = @nepDate
  1117. WHERE TranId = ISNULL(@holdTranId, @tranId)
  1118. AND approvedBy IS NULL
  1119. UPDATE remitTranCompliance
  1120. SET approvedRemarks = @messageComplaince
  1121. ,approvedBy = @user
  1122. ,approvedDate = @nepDate
  1123. WHERE TranId = ISNULL(@holdTranId, @tranId)
  1124. AND approvedBy IS NULL
  1125. UPDATE remitTranTemp
  1126. SET tranStatus = CASE tranStatus
  1127. WHEN 'Cash Limit/Compliance Hold'
  1128. THEN 'Cash Limit'
  1129. WHEN 'Cash Limit/OFAC Hold'
  1130. THEN 'Cash Limit'
  1131. WHEN 'Cash Limit/OFAC/Compliance Hold'
  1132. THEN 'Cash Limit'
  1133. ELSE 'Hold'
  1134. END
  1135. WHERE id = @tranId
  1136. COMMIT TRANSACTION
  1137. EXEC proc_errorHandler 0
  1138. ,'Release remarks has been saved successfully.'
  1139. ,@tranId
  1140. END TRY
  1141. BEGIN CATCH
  1142. SELECT 1 error_code
  1143. ,ERROR_MESSAGE() mes
  1144. ,NULL id
  1145. END CATCH ELSE
  1146. IF @flag = 'saveCashHoldRmks' --Add Approve Remarks
  1147. BEGIN TRY
  1148. IF EXISTS (
  1149. SELECT 'X'
  1150. FROM dbo.remitTranCashLimitHold WITH (NOLOCK)
  1151. WHERE TranId = @holdTranId
  1152. )
  1153. BEGIN
  1154. IF @messageCashLimitHold IS NULL
  1155. BEGIN
  1156. EXEC proc_errorHandler 1
  1157. ,'Cash Limit Hold remarks can not be blank.'
  1158. ,@holdTranId
  1159. RETURN;
  1160. END
  1161. END
  1162. BEGIN TRANSACTION
  1163. --select * from remitTranCashLimitHold
  1164. --EXEC proc_transactionView @flag = 'saveCashHoldRmks', @user = 'admin', @controlNo = '212048659', @tranId = '100353262', @messageComplaince = null, @messageOFAC = null, @messageCashLimitHold = 'approve cash hold limit'
  1165. UPDATE H
  1166. SET H.approvedRemarks = @messageCashLimitHold
  1167. ,H.approvedBy = @user
  1168. ,H.approvedDate = GETDATE()
  1169. FROM REMITTRAN R(NOLOCK)
  1170. INNER JOIN remitTranCashLimitHold H(NOLOCK) ON R.HOLDTRANID = H.TRANID
  1171. AND R.id = @tranId
  1172. AND H.approvedBy IS NULL
  1173. UPDATE remitTran
  1174. SET tranStatus = CASE tranStatus
  1175. WHEN 'Cash Limit Hold'
  1176. THEN 'Payment'
  1177. WHEN 'Cash Limit/Compliance Hold'
  1178. THEN 'Compliance Hold'
  1179. WHEN 'Cash Limit/OFAC Hold'
  1180. THEN 'OFAC Hold'
  1181. WHEN 'Cash Limit/OFAC/Compliance Hold'
  1182. THEN 'OFAC/Compliance Hold'
  1183. ELSE 'Payment'
  1184. END
  1185. WHERE id = @tranId
  1186. COMMIT TRANSACTION
  1187. EXEC proc_errorHandler 0
  1188. ,'Release remarks has been saved successfully.'
  1189. ,@tranId
  1190. END TRY
  1191. BEGIN CATCH
  1192. SELECT 1 error_code
  1193. ,ERROR_MESSAGE() mes
  1194. ,NULL id
  1195. END CATCH
  1196. --EXEC proc_transactionView @FLAG='chkFlag',@tranId='26'
  1197. ELSE
  1198. IF @flag = 'chkFlagOFAC'
  1199. BEGIN
  1200. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  1201. IF @controlNoEncrypted IS NOT NULL
  1202. SELECT @holdTranId = holdTranId
  1203. ,@tranId = id
  1204. FROM vwRemitTran WITH (NOLOCK)
  1205. WHERE controlNo = @controlNoEncrypted
  1206. SELECT CASE
  1207. WHEN approvedDate IS NULL
  1208. THEN 'N'
  1209. ELSE 'Y'
  1210. END AS Compliance_FLAG
  1211. FROM remitTranOfac O(NOLOCK)
  1212. WHERE TranId = @holdTranId
  1213. END
  1214. ELSE IF @flag = 'chkFlagCOMPLAINCE'
  1215. BEGIN
  1216. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  1217. IF @controlNoEncrypted IS NOT NULL
  1218. SELECT @holdTranId = holdTranId
  1219. ,@tranId = id
  1220. FROM vwRemitTran WITH (NOLOCK)
  1221. WHERE controlNo = @controlNoEncrypted
  1222. SELECT CASE
  1223. WHEN approvedDate IS NULL
  1224. THEN 'N'
  1225. ELSE 'Y'
  1226. END AS Compliance_FLAG
  1227. FROM remitTranCompliance(NOLOCK)
  1228. WHERE TranId = @holdTranId
  1229. END
  1230. ELSE IF @flag = 'chkFlagCashLimitHold'
  1231. BEGIN
  1232. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  1233. IF @controlNoEncrypted IS NOT NULL
  1234. SELECT @holdTranId = holdTranId
  1235. ,@tranId = id
  1236. FROM vwRemitTran WITH (NOLOCK)
  1237. WHERE controlNo = @controlNoEncrypted
  1238. SELECT CASE
  1239. WHEN H.approvedDate IS NULL
  1240. THEN 'N'
  1241. ELSE 'Y'
  1242. END AS Compliance_FLAG
  1243. FROM remitTranCashLimitHold H(NOLOCK)
  1244. WHERE TRANID = @holdTranId
  1245. END
  1246. ELSE IF @flag = 'va' --Verify Agent For Tran Modification
  1247. BEGIN
  1248. --Necessary paremeter: @user, @branch, @controlNo
  1249. IF NOT EXISTS (
  1250. SELECT 'X'
  1251. FROM remitTran WITH (NOLOCK)
  1252. WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  1253. AND sBranch = @branch
  1254. )
  1255. BEGIN
  1256. EXEC proc_errorHandler 1
  1257. ,'Transaction not found'
  1258. ,NULL
  1259. RETURN
  1260. END
  1261. EXEC proc_errorHandler 0
  1262. ,'Success'
  1263. ,NULL
  1264. END
  1265. IF @flag = 'show-QA'
  1266. BEGIN
  1267. SELECT ROW_NUMBER() OVER (
  1268. ORDER BY ORDER_BY
  1269. ) SN
  1270. ,*
  1271. FROM (
  1272. SELECT ORDER_BY
  1273. ,QSN
  1274. ,ANSWER_TEXT
  1275. ,A.ROW_ID
  1276. ,editQuestionnaire = '<button id="btnUpdate" class="btn btn-primary" value="Edit" onClick="UpdateQuestionnaire();"/>'
  1277. FROM dbo.TBL_TXN_COMPLIANCE_CDDI A
  1278. INNER JOIN dbo.VIEW_COMPLIANCE_QUESTION_SET B ON CAST(B.ID AS VARCHAR) = A.QUES_ID
  1279. WHERE CAST(A.TRAN_ID AS VARCHAR) = CAST(ISNULL(@holdTranId, 0) AS VARCHAR)
  1280. ) x
  1281. END
  1282. IF @flag = 'update-QA'
  1283. BEGIN
  1284. -- select * from TBL_TXN_COMPLIANCE_CDDI where tran_id = 10400665
  1285. DECLARE @oldAnswer VARCHAR(25)
  1286. SELECT @oldAnswer = ANSWER_TEXT
  1287. FROM TBL_TXN_COMPLIANCE_CDDI
  1288. WHERE ROW_ID = @rowId
  1289. UPDATE TBL_TXN_COMPLIANCE_CDDI
  1290. SET ANSWER_TEXT = @newAnswer
  1291. WHERE ROW_ID = @rowId
  1292. EXEC proc_applicationLogs @FLAG = 'i'
  1293. ,@logType = 'Update'
  1294. ,@tableName = 'TBL_TXN_COMPLIANCE_CDDI'
  1295. ,@dataId = @rowId
  1296. ,@oldData = @oldAnswer
  1297. ,@newData = @newAnswer
  1298. ,@module = NULL
  1299. ,@user = @user
  1300. SELECT 0 'ErrorCode'
  1301. ,'Success' Msg
  1302. ,NULL Id
  1303. END
  1304. IF @flag = 's-QuestionaireAnswer'
  1305. BEGIN
  1306. SET @sortBy = 'ORDER_BY'
  1307. SET @table = '
  1308. (
  1309. SELECT ORDER_BY, QUES_ID,QSN,ANSWER_TEXT
  1310. ,[updateQ] = ''<button id="btnUpdate" onClick="UpdateQuestionnaire();"/> ''
  1311. FROM dbo.TBL_TXN_COMPLIANCE_CDDI A
  1312. 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) + '''';
  1313. SET @table = @table + ' )x';
  1314. SET @pageSize = 50
  1315. SET @select_field_list = 'QUES_ID,QSN,ANSWER_TEXT,updateQ';
  1316. EXEC dbo.proc_paging @table
  1317. ,@sql_filter
  1318. ,@select_field_list
  1319. ,@extra_field_list
  1320. ,@sortBy
  1321. ,@sortOrder
  1322. ,@pageSize
  1323. ,@pageNumber;
  1324. END
  1325. IF @flag = 'questionaire-available'
  1326. BEGIN
  1327. SELECT *
  1328. FROM TBL_TXN_COMPLIANCE_CDDI
  1329. WHERE TRAN_ID = @holdTranId
  1330. END
  1331. IF @flag = 'checkTran'
  1332. BEGIN
  1333. SELECT @holdTranId = holdtranid
  1334. FROM remittran
  1335. WHERE id = @TranId
  1336. --contain n ofac and cash hold
  1337. IF EXISTS (
  1338. SELECT 'x'
  1339. FROM remittranofac 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 Ofac and Cash limit' Msg
  1346. ,NULL Id
  1347. RETURN
  1348. END
  1349. IF EXISTS (
  1350. SELECT 'x'
  1351. FROM remittrancompliance rto(NOLOCK)
  1352. INNER JOIN remitTranCashLimitHold rtch(NOLOCK) ON rto.tranid = rtch.tranid
  1353. WHERE rto.tranid = @holdTranId
  1354. )
  1355. BEGIN
  1356. SELECT 1 'ErrorCode'
  1357. ,'Contains in both Compliance and Cash limit' Msg
  1358. ,NULL Id
  1359. RETURN
  1360. END
  1361. SELECT 0 'ErrorCode'
  1362. ,'Not Found in both' Msg
  1363. ,NULL Id
  1364. END
  1365. IF @flag = 'deleteTroubleTicket'
  1366. BEGIN
  1367. UPDATE tranModifyLog
  1368. SET STATUS = 'Deleted'
  1369. ,resolvedby = @user
  1370. ,resolvedDate = getdate()
  1371. WHERE rowId = @rowId
  1372. EXEC proc_errorHandler 0
  1373. ,'Trouble ticket deleted sucessfully.'
  1374. ,NULL
  1375. END