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.

1518 lines
84 KiB

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