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.

578 lines
36 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_UcTranView] Script Date: 9/27/2019 1:30:14 PM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. /*
  9. proc_sendTransactionLoadData 'b', 'admin'
  10. EXEC proc_sendTransactionLoadData @flag = 'sc', @agentId = '48', @deliveryMethod = '1', @amount = '1111111', @mode = 'ta', @user = 'admin'
  11. */
  12. CREATE proc [dbo].[proc_UcTranView] (
  13. @flag VARCHAR(50)
  14. ,@user VARCHAR(30) = NULL
  15. ,@controlNo VARCHAR(30) = NULL
  16. ,@tranId BIGINT = NULL
  17. ,@message VARCHAR(500) = NULL
  18. ,@messageComplaince VARCHAR(500) = NULL
  19. ,@messageOFAC VARCHAR(500) = NULL
  20. ,@lockMode CHAR(1) = NULL
  21. ,@viewType VARCHAR(50) = NULL
  22. ,@viewMsg VARCHAR(MAX) = NULL
  23. ,@sortBy VARCHAR(50) = NULL
  24. ,@sortOrder VARCHAR(5) = NULL
  25. ,@pageSize INT = NULL
  26. ,@pageNumber INT = NULL
  27. )
  28. AS
  29. IF @tranId IS NULL
  30. SELECT @tranId=id FROM remitTran WHERE controlNo=dbo.FNAEncryptString(@controlNo)
  31. DECLARE
  32. @select_field_list VARCHAR(MAX)
  33. ,@extra_field_list VARCHAR(MAX)
  34. ,@table VARCHAR(MAX)
  35. ,@sql_filter VARCHAR(MAX)
  36. DECLARE @controlNoEncrypted VARCHAR(100)
  37. ,@code VARCHAR(50)
  38. ,@userName VARCHAR(50)
  39. ,@password VARCHAR(50)
  40. SET NOCOUNT ON
  41. SET XACT_ABORT ON
  42. IF @flag = 's'
  43. BEGIN
  44. DECLARE @tranStatus VARCHAR(20)
  45. SELECT @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  46. --Transaction View History--------------------------------------------------------------------------------------
  47. EXEC proc_tranViewHistory 'i', @user, @tranId, @controlNo, NULL,@viewType,@viewMsg
  48. --End-----------------------------------------------------------------------------------------------------------
  49. --Transaction Details------------------------------------------------------------
  50. SELECT
  51. tranId = trn.id
  52. ,controlNo = dbo.FNADecryptString(trn.controlNo)
  53. --Sender Information
  54. ,sMemId = sen.membershipId
  55. ,sCustomerId = sen.customerId
  56. ,senderName = sen.firstName + ISNULL( ' ' + sen.middleName, '') + ISNULL( ' ' + sen.lastName1, '') + ISNULL( ' ' + sen.lastName2, '')
  57. ,sCountryName = sen.country
  58. ,sStateName = sen.state
  59. ,sDistrict = sen.district
  60. ,sCity = sen.city
  61. ,sAddress = sen.address
  62. ,sContactNo = COALESCE(sen.mobile, sen.homephone, sen.workphone)
  63. ,sIdType = sen.idType
  64. ,sIdNo = sen.idNumber
  65. ,sValidDate = sen.validDate
  66. ,sEmail = sen.email
  67. --Receiver Information
  68. ,rMemId = rec.membershipId
  69. ,rCustomerId = rec.customerId
  70. ,receiverName = rec.firstName + ISNULL( ' ' + rec.middleName, '') + ISNULL( ' ' + rec.lastName1, '') + ISNULL( ' ' + rec.lastName2, '')
  71. ,rCountryName = rec.country
  72. ,rStateName = rec.state
  73. ,rDistrict = rec.district
  74. ,rCity = rec.city
  75. ,rAddress = rec.address
  76. ,rContactNo = COALESCE(rec.mobile, rec.homephone, rec.workphone)
  77. ,rIdType = rec.idType
  78. ,rIdNo = rec.idNumber
  79. --Sending Agent Information
  80. ,sAgentName = CASE WHEN trn.sAgentName = trn.sBranchName THEN trn.sSuperAgentName ELSE trn.sAgentName END
  81. ,sBranchName = trn.sBranchName
  82. ,sAgentCountry = sa.agentCountry
  83. ,sAgentState = sa.agentState
  84. ,sAgentDistrict = sa.agentDistrict
  85. ,sAgentLocation = sLoc.districtName
  86. ,sAgentCity = sa.agentCity
  87. ,sAgentAddress = sa.agentAddress
  88. --Payout Agent Information
  89. ,pAgentName = CASE WHEN trn.pAgentName = trn.pBranchName THEN trn.pSuperAgentName ELSE trn.pAgentName END
  90. ,pBranchName = trn.pBranchName
  91. ,pAgentCountry = trn.pCountry
  92. ,pAgentState = trn.pState
  93. ,pAgentDistrict = trn.pDistrict
  94. ,pAgentLocation = pLoc.districtName + ISNULL(' (' + ZDM.districtName + ')','')
  95. ,pAgentCity = pa.agentCity
  96. ,pAgentAddress = pa.agentAddress
  97. ,trn.tAmt
  98. ,trn.serviceCharge
  99. ,handlingFee = ISNULL(trn.handlingFee, 0)
  100. ,exRate = (ISNULL(trn.pCurrCostRate,0) - ISNULL(trn.pCurrHoMargin,0) - ISNULL(trn.pCurrSuperAgentMargin,0) - ISNULL(trn.pCurrAgentMargin,0))/
  101. CASE WHEN (ISNULL(trn.sCurrCostRate,0) + ISNULL(trn.sCurrHoMargin,0) + ISNULL(trn.sCurrSuperAgentMargin,0) + ISNULL(trn.sCurrAgentMargin,0)) = 0 THEN 1
  102. ELSE (ISNULL(trn.sCurrCostRate,0) + ISNULL(trn.sCurrHoMargin,0) + ISNULL(trn.sCurrSuperAgentMargin,0) + ISNULL(trn.sCurrAgentMargin,0)) END
  103. ,trn.cAmt
  104. ,trn.pAmt
  105. ,relationship = ISNULL(trn.relWithSender, '-')
  106. ,purpose = ISNULL(trn.purposeOfRemit, '-')
  107. ,sourceOfFund = ISNULL(trn.sourceOfFund, '-')
  108. ,collMode = trn.collMode
  109. ,trn.collCurr
  110. ,paymentMethod = trn.paymentMethod
  111. ,trn.payoutCurr
  112. ,BranchName = trn.pBankBranchName
  113. ,trn.accountNo
  114. ,BankName = trn.pBankName
  115. ,trn.tranStatus
  116. ,trn.payStatus
  117. ,payoutMsg = ISNULL(trn.pMessage, '-')
  118. ,trn.createdBy
  119. ,trn.createdDate
  120. ,trn.approvedBy
  121. ,trn.approvedDate
  122. ,trn.paidBy
  123. ,trn.paidDate
  124. ,trn.cancelRequestBy
  125. ,trn.cancelRequestDate
  126. ,trn.cancelApprovedBy
  127. ,trn.cancelApprovedDate
  128. ,trn.payTokenId
  129. ,trn.tranStatus
  130. ,trn.tranType
  131. FROM remitTran trn WITH(NOLOCK)
  132. LEFT JOIN tranSenders sen WITH(NOLOCK) ON trn.id = sen.tranId
  133. LEFT JOIN tranReceivers rec WITH(NOLOCK) ON trn.id = rec.tranId
  134. LEFT JOIN agentMaster sa WITH(NOLOCK) ON trn.sBranch = sa.agentId
  135. LEFT JOIN agentMaster pa WITH(NOLOCK) ON trn.pBranch = pa.agentId
  136. LEFT JOIN api_districtList pLoc WITH(NOLOCK) ON trn.pLocation = pLoc.districtCode
  137. LEFT JOIN apiLocationMapping ALM WITH(NOLOCK) ON pLoc.districtCode=ALM.apiDistrictCode
  138. LEFT JOIN zoneDistrictMap ZDM WITH(NOLOCK) ON ZDM.districtId=ALM.districtId
  139. LEFT JOIN api_districtList sLoc WITH(NOLOCK) ON sa.agentLocation = sLoc.districtCode
  140. WHERE trn.controlNo = @controlNoEncrypted OR trn.id = @tranId
  141. --End of Transaction Details------------------------------------------------------------
  142. --Lock Transaction----------------------------------------------------------------------
  143. IF (@lockMode = 'Y')
  144. BEGIN
  145. UPDATE remitTran SET
  146. tranStatus = 'Lock'
  147. ,lockedBy = @user
  148. ,lockedDate = GETDATE()
  149. ,lockedDateLocal = dbo.FNADateFormatTZ(GETDATE(), @user)
  150. WHERE (tranStatus = 'Payment' OR tranStatus = 'CancelRequest')
  151. AND payStatus = 'Unpaid' AND (controlNo = @controlNoEncrypted OR id = @tranId)
  152. END
  153. --End of Lock Transaction---------------------------------------------------------------
  154. --Log Details---------------------------------------------------------------------------
  155. SELECT
  156. rowId
  157. ,message
  158. ,trn.createdBy
  159. ,trn.createdDate
  160. ,isnull(trn.fileType,'')fileType
  161. FROM tranModifyLog trn WITH(NOLOCK)
  162. LEFT JOIN applicationUsers au WITH(NOLOCK) ON trn.createdBy = au.userName
  163. WHERE trn.tranId = @tranId --OR trn.controlNo = @controlNoEncrypted
  164. ORDER BY trn.createdDate DESC
  165. END
  166. ELSE IF @flag = 'ac' --Add Comment
  167. BEGIN TRY
  168. IF @message IS NULL
  169. BEGIN
  170. EXEC proc_errorHandler 1, 'Message can not be blank.', @tranId
  171. RETURN
  172. END
  173. IF @tranId IS NULL
  174. BEGIN
  175. EXEC proc_errorHandler 1, 'Transaction No can not be blank.', @tranId
  176. RETURN
  177. END
  178. INSERT INTO tranModifyLog(
  179. tranId
  180. ,message
  181. ,createdBy
  182. ,createdDate
  183. ,MsgType
  184. )
  185. SELECT
  186. @tranId
  187. ,@message
  188. ,@user
  189. ,GETDATE()
  190. ,'C'
  191. EXEC proc_errorHandler 0, 'Comments has been added successfully.', @tranId
  192. END TRY
  193. BEGIN CATCH
  194. SELECT 1 error_code, ERROR_MESSAGE() mes, null id
  195. END CATCH
  196. IF @flag = 'showLog' --Add Comment
  197. BEGIN
  198. --Log Details---------------------------------------------------------------------------
  199. SELECT
  200. rowId
  201. ,message
  202. ,trn.createdBy
  203. ,trn.createdDate
  204. ,isnull(trn.fileType,'') fileType
  205. FROM tranModifyLog trn WITH(NOLOCK)
  206. LEFT JOIN applicationUsers au WITH(NOLOCK) ON trn.createdBy = au.userName
  207. WHERE trn.tranId = @tranId
  208. ORDER BY trn.createdDate DESC
  209. END
  210. ELSE IF @flag='OFAC'
  211. BEGIN
  212. /*
  213. EXEC proc_transactionView @flag = 'OFAC', @tranId = '79'
  214. select * from dbo.remitTranOfac
  215. select * from remitTranCompliance
  216. select * from blackList where entNum=10009
  217. select * from blackList where rowId=12822
  218. */
  219. IF OBJECT_ID('tempdb..#tempMaster') IS NOT NULL
  220. DROP TABLE #tempMaster
  221. IF OBJECT_ID('tempdb..#tempDataTable') IS NOT NULL
  222. DROP TABLE #tempDataTable
  223. CREATE TABLE #tempDataTable
  224. (
  225. DATA VARCHAR(MAX) NULL
  226. )
  227. DECLARE @BLACK_LIST_ID VARCHAR(MAX)
  228. SELECT @BLACK_LIST_ID=blackListId FROM dbo.remitTranOfac
  229. WHERE TranId=@tranId
  230. SELECT A.value BLACK_LIST_ID,B.entNum ENT_NUM
  231. INTO #tempMaster
  232. FROM
  233. (
  234. SELECT * FROM dbo.Split(',',@BLACK_LIST_ID)
  235. )A
  236. INNER JOIN
  237. (
  238. SELECT * FROM blacklist
  239. )B ON A.value=B.rowId
  240. ALTER TABLE #tempMaster ADD ROWID INT IDENTITY(1,1)
  241. --SELECT * FROM #tempMaster
  242. --SELECT @BLACK_LIST_ID
  243. --RETURN;
  244. DECLARE @TNA_ID AS INT,@MAX_ROW_ID AS INT,@ROW_ID AS INT=1,@ENT_NUM VARCHAR(200),
  245. @SDN VARCHAR(MAX)='',@ADDRESS VARCHAR(MAX)='',@REMARKS AS VARCHAR(MAX)='',
  246. @ALT AS VARCHAR(MAX)='',@DATA AS VARCHAR(MAX)='',@DATA_SOURCE AS VARCHAR(200)=''
  247. SELECT @MAX_ROW_ID=MAX(ROWID) FROM #tempMaster
  248. WHILE @MAX_ROW_ID >= @ROW_ID
  249. BEGIN
  250. SELECT @ENT_NUM=ENT_NUM FROM #tempMaster WHERE ROWID=@ROW_ID
  251. SELECT @SDN='<b>'+entNum+'</b>, <b>Name:</b> '+name,@DATA_SOURCE='<b>Data Source:</b> '+dataSource
  252. FROM blacklist WHERE entNum=@ENT_NUM AND vesselType='sdn'
  253. SELECT @ADDRESS=ISNULL(address,'')+', '+isnull(city,'')+', '+ISNULL(state,'')+', '+ISNULL(zip,'')+', '+ISNULL(country,'')
  254. FROM blacklist WHERE entNum=@ENT_NUM AND vesselType='add'
  255. SELECT @ALT = COALESCE(@ALT + ', ', '') +
  256. CAST(ISNULL(NAME,'') AS VARCHAR(MAX))
  257. FROM blacklist WHERE entNum=@ENT_NUM AND vesselType='alt'
  258. SELECT @REMARKS=ISNULL(remarks,'')
  259. FROM blacklist WHERE entNum=@ENT_NUM AND vesselType='sdn'
  260. SET @SDN=rtrim(ltrim(@SDN))
  261. SET @ADDRESS=rtrim(ltrim(@ADDRESS))
  262. SET @ALT=rtrim(ltrim(@ALT))
  263. SET @REMARKS=rtrim(ltrim(@REMARKS))
  264. SET @SDN=REPLACE(@SDN,', ,','')
  265. SET @ADDRESS=REPLACE(@ADDRESS,', ,','')
  266. SET @ALT=REPLACE(@ALT,', ,','')
  267. SET @REMARKS=REPLACE(@REMARKS,', ,','')
  268. --SET @SDN=REPLACE(@SDN,' ','')
  269. --SET @ADDRESS=REPLACE(@ADDRESS,' ','')
  270. --SET @ALT=REPLACE(@ALT,' ','')
  271. --SET @REMARKS=REPLACE(@REMARKS,' ','')
  272. SET @SDN=REPLACE(@SDN,'-0-','')
  273. SET @ADDRESS=REPLACE(@ADDRESS,'-0-','')
  274. SET @ALT=REPLACE(@ALT,'-0-','')
  275. SET @REMARKS=REPLACE(@REMARKS,'-0-','')
  276. SET @SDN=REPLACE(@SDN,',,','')
  277. SET @ADDRESS=REPLACE(@ADDRESS,',,','')
  278. SET @ALT=REPLACE(@ALT,',,','')
  279. SET @REMARKS=REPLACE(@REMARKS,',,','')
  280. --SELECT @ADDRESS
  281. --EXEC proc_transactionView @flag = 'OFAC', @tranId = '79'
  282. IF @DATA_SOURCE IS NOT NULL AND @DATA_SOURCE<>''
  283. SET @DATA=@DATA_SOURCE
  284. IF @SDN IS NOT NULL AND @SDN<>''
  285. SET @DATA=@DATA+'<BR>'+@SDN
  286. IF @ADDRESS IS NOT NULL AND @ADDRESS<>''
  287. SET @DATA=@DATA+'<BR><b>Address: </b>'+@ADDRESS
  288. IF @ALT IS NOT NULL AND @ALT<>'' AND @ALT<>' '
  289. SET @DATA=@DATA+'<BR>'+'<b>a.k.a :</b>'+@ALT+''
  290. IF @REMARKS IS NOT NULL AND @REMARKS<>''
  291. SET @DATA=@DATA+'<BR><b>Other Info :</b>'+@REMARKS
  292. INSERT INTO #tempDataTable
  293. SELECT REPLACE(@DATA,'<BR><BR>','')
  294. SET @ROW_ID=@ROW_ID+1
  295. END
  296. ALTER TABLE #tempDataTable ADD ROWID INT IDENTITY(1,1)
  297. SELECT ROWID [S.N.],DATA [Remarks] FROM #tempDataTable
  298. END
  299. ELSE IF @flag='Compliance'
  300. BEGIN
  301. --EXEC proc_transactionView @flag = 'Compliance', @tranId = '26'
  302. /*
  303. select * from remitTranCompliance
  304. SELECT * FROM csDetailRec
  305. select * from csDetail
  306. select * from csMaster
  307. */
  308. /*
  309. DECLARE @COMP_IDS VARCHAR(MAX),@tranIds as varchar(max)
  310. SELECT @COMP_IDS=csDetailTranId,@tranIds=matchTranId
  311. FROM dbo.remitTranCompliance WHERE TranId=@tranId
  312. SELECT
  313. B.tranId [TranId]
  314. ,D.controlNo [Control No.]
  315. ,rtrim(ltrim(dbo.FNAGetDataValue(condition)))+' '+checkType+' exceeds '+ cast(parameter as varchar)+' limit within '+cast(period as varchar)+' '+dbo.FNAGetDataValue(criteria) [Remarks]
  316. --[Condition][CheckType] exceeds [Parameter] limit within [Period] [Criteria]
  317. FROM
  318. (
  319. SELECT id,value as compId FROM dbo.Split(',',@COMP_IDS)
  320. )A
  321. INNER JOIN
  322. (
  323. SELECT id,value,right(value,len(value)-(CHARINDEX('|',value,1))) tranId ,
  324. left(value,len(value)-(len(value)-(CHARINDEX('|',value,1)-1))) compId
  325. FROM dbo.Split(',',@tranIds)
  326. )B ON A.compId=B.compId
  327. INNER JOIN
  328. (
  329. SELECT * FROM csDetailRec
  330. )C ON A.compId=C.csDetailRecId
  331. INNER JOIN
  332. (
  333. SELECT id,dbo.FNADecryptString(controlNo) controlNo FROM remitTran
  334. )D ON D.ID=B.tranId
  335. */
  336. SELECT
  337. rowId
  338. ,csDetailRecId
  339. ,[S.N.] = ROW_NUMBER()OVER(ORDER BY ROWID)
  340. ,[Remarks] = RTRIM(LTRIM(dbo.FNAGetDataValue(condition))) + ' ' +
  341. CASE WHEN checkType = 'Sum' THEN 'Transaction Amount'
  342. WHEN checkType = 'Count' THEN 'Transaction Count' END
  343. + ' exceeds ' + CAST(parameter AS VARCHAR) + ' limit within ' + CAST(period AS VARCHAR)+ ' days ' + dbo.FNAGetDataValue(criteria)
  344. ,[Matched Tran ID] = rtc.matchTranId
  345. FROM remitTranCompliance rtc
  346. INNER JOIN csDetailRec cdr ON rtc.csDetailTranId = cdr.csDetailRecId
  347. WHERE rtc.TranId = @tranId
  348. END
  349. --EXEC proc_transactionView @FLAG='COMPL_DETAIL',@controlNo='1',@tranId='1'
  350. IF @flag='COMPL_DETAIL'
  351. BEGIN
  352. /*
  353. 5000 By Sender ID
  354. 5001 By Sender Name
  355. 5002 By Sender Mobile
  356. 5003 By Beneficiary ID
  357. 5004 By Beneficiary ID(System)
  358. 5005 By Beneficiary Name
  359. 5006 By Beneficiary Mobile
  360. 5007 By Beneficiary A/C Number
  361. */
  362. DECLARE @tranIds AS VARCHAR(MAX), @criteria AS INT, @totalTran AS INT, @criteriaValue AS VARCHAR(500), @id AS INT
  363. SELECT @tranIds = matchTranId, @id = TranId FROM remitTranCompliance WHERE rowId = @controlNo--(ROWID) --id of remitTranCompliance
  364. SELECT @criteria = criteria FROM csDetailRec WHERE csDetailRecId = @tranId--id of csDetailRec
  365. SELECT @totalTran = COUNT(*) FROM dbo.Split(',', @tranIds)
  366. IF @criteria='5000'
  367. SELECT @criteriaValue = B.membershipId
  368. FROM tranSenders B WHERE B.tranId = @id
  369. IF @criteria='5001'
  370. SELECT @criteriaValue = ISNULL(B.firstName, '') + ISNULL(' ' + B.middleName, '') + ISNULL(' ' + B.lastName1, '') + ISNULL(' ' + B.lastName2, '')
  371. FROM tranSenders B WHERE B.tranId = @id
  372. IF @criteria='5002'
  373. SELECT @criteriaValue = B.mobile
  374. FROM tranSenders B WHERE B.tranId = @id
  375. IF @criteria='5003'
  376. SELECT @criteriaValue = B.membershipId
  377. FROM tranReceivers B WHERE B.tranId = @id
  378. IF @criteria='5004'
  379. SELECT @criteriaValue = B.membershipId
  380. FROM tranReceivers B WHERE B.tranId = @id
  381. IF @criteria='5005'
  382. SELECT @criteriaValue = ISNULL(B.firstName, '') + ISNULL(' ' + B.middleName, '') + ISNULL(' ' + B.lastName1, '') + ISNULL(' ' + B.lastName2, '')
  383. FROM tranReceivers B WHERE B.tranId = @id
  384. IF @criteria='5006'
  385. SELECT @criteriaValue = B.mobile
  386. FROM tranReceivers B WHERE B.tranId = @id
  387. IF @criteria='5007'
  388. SELECT @criteriaValue = A.accountNo
  389. FROM remitTran A WHERE A.id = @id
  390. SELECT
  391. REMARKS = RTRIM(LTRIM(dbo.FNAGetDataValue(condition))) + ' ' +
  392. CASE WHEN checkType = 'Sum' THEN 'Transaction Amount'
  393. WHEN checkType = 'Count' THEN 'Transaction Count' END
  394. + ' exceeds ' + CAST(parameter AS VARCHAR) + ' limit within ' + CAST(period AS VARCHAR)+ ' days ' + dbo.FNAGetDataValue(criteria)+': <font size=''2px''>'+@criteriaValue+'</font>'
  395. ,totTran = 'Total Count: <b>'+CAST(@totalTran AS VARCHAR)+'</b>'
  396. FROM csDetailRec
  397. WHERE csDetailRecId=@tranId
  398. SELECT
  399. [S.N.] = ROW_NUMBER() OVER(ORDER BY @controlNo)
  400. ,[CONTROL NO.] = dbo.FNADecryptString(trn.controlNo)
  401. ,[TRAN AMOUNT] = dbo.ShowDecimal(trn.cAmt)
  402. ,[CURRENCY] = trn.collCurr
  403. ,[TRAN DATE] = CONVERT(VARCHAR,trn.createdDate,101)
  404. FROM remitTran trn INNER JOIN
  405. (
  406. SELECT * FROM dbo.Split(',', @tranIds)
  407. )B ON trn.id = B.value
  408. --SELECT * FROM remitTranCompliance
  409. --SELECT * FROM csDetailRec WHERE csDetailRecId IN (
  410. --SELECT csDetailTranId FROM remitTranCompliance WHERE TranId='297454')
  411. END
  412. ELSE IF @flag = 'saveComplainceRmks' --Add Approve Remarks
  413. BEGIN TRY
  414. --EXEC proc_transactionView @flag = 'approveRemarks', @user = 'admin', @controlNo = '91841743453', @tranId = '26', @message = 'This is tested'
  415. IF EXISTS(SELECT 'X' FROM remitTranOfac WHERE TranId=@tranId)
  416. BEGIN
  417. IF EXISTS(SELECT 'X' FROM remitTranCompliance WHERE TranId=@tranId)
  418. BEGIN
  419. IF @messageOFAC IS NULL
  420. BEGIN
  421. EXEC proc_errorHandler 1, 'OFAC remarks can not be blank.', @tranId
  422. RETURN;
  423. END
  424. IF @messageComplaince IS NULL
  425. BEGIN
  426. EXEC proc_errorHandler 1, 'Complaince remarks can not be blank.', @tranId
  427. RETURN;
  428. END
  429. END
  430. ELSE
  431. BEGIN
  432. IF @messageOFAC IS NULL
  433. BEGIN
  434. EXEC proc_errorHandler 1, 'OFAC remarks can not be blank.', @tranId
  435. RETURN;
  436. END
  437. END
  438. END
  439. IF EXISTS(SELECT 'X' FROM remitTranCompliance WHERE TranId=@tranId)
  440. BEGIN
  441. IF @messageComplaince IS NULL
  442. BEGIN
  443. EXEC proc_errorHandler 1, 'Complaince remarks can not be blank.', @tranId
  444. RETURN;
  445. END
  446. END
  447. UPDATE remitTranOfac SET
  448. approvedRemarks = @messageOFAC
  449. ,approvedBy = @user
  450. ,approvedDate = GETDATE()
  451. WHERE TranId = @tranId AND approvedBy IS NULL
  452. UPDATE remitTranCompliance SET
  453. approvedRemarks = @messageComplaince
  454. ,approvedBy = @user
  455. ,approvedDate = GETDATE()
  456. WHERE TranId = @tranId AND approvedBy IS NULL
  457. UPDATE remitTran SET
  458. tranStatus = 'Payment'
  459. ,approvedBy = @user
  460. ,approvedDate = GETDATE()
  461. ,approvedDateLocal = dbo.FNADateFormatTZ(GETDATE(),@user)
  462. WHERE id=@tranId
  463. EXEC proc_errorHandler 0, 'Release remarks has been saved successfully.', @tranId
  464. END TRY
  465. BEGIN CATCH
  466. SELECT 1 error_code, ERROR_MESSAGE() mes, null id
  467. END CATCH
  468. --EXEC proc_transactionView @FLAG='chkFlag',@tranId='26'
  469. ELSE IF @flag = 'chkFlagOFAC'
  470. BEGIN
  471. SELECT CASE WHEN approvedDate is null then 'N' else 'Y' end AS Compliance_FLAG
  472. FROM remitTranOfac WHERE TranId=@tranId
  473. END
  474. ELSE IF @flag = 'chkFlagCOMPLAINCE'
  475. BEGIN
  476. SELECT CASE WHEN approvedDate is null then 'N' else 'Y' end AS Compliance_FLAG
  477. FROM remitTranCompliance WHERE TranId=@tranId
  478. END
  479. GO