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.

307 lines
19 KiB

  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[Proc_UpdateBranchCode] Script Date: 3/5/2024 12:32:04 AM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. ALTER PROC [dbo].[Proc_UpdateBranchCode]
  9. @flag VARCHAR(200)
  10. ,@pCountryId INT = NULL
  11. ,@pCountryName VARCHAR(50) = NULL
  12. ,@countryId VARCHAR(50) = NULL
  13. ,@bankId INT = NULL
  14. ,@branchCode VARCHAR(50) = NULL
  15. ,@branchId BIGINT = NULL
  16. ,@branchName VARCHAR(50) = NULL
  17. ,@editedBranchName VARCHAR(50) = NULL
  18. ,@user varchar(20) = NULL
  19. ,@partnerId VARCHAR(50) = NULL
  20. ,@param varchar(25) = NULL
  21. ,@bankName VARCHAR(50) = NULL
  22. ,@bankCountry Varchar(50) = NULL
  23. ,@bankState VARCHAR(50) = NULL
  24. ,@bankDistrict Varchar(50) = NULL
  25. ,@bankAddress VARCHAR(50) = NULL
  26. ,@bankPhone Varchar(50) = NULL
  27. ,@bankEmail VARCHAR(50) = NULL
  28. ,@sCurrency Varchar(50) = NULL
  29. ,@MASTER_BANK_ID INT = NULL
  30. ,@IS_ACTIVE BIT = NULL
  31. ,@pMode INT = NULL
  32. , @bankCode1 VARCHAR(50) = NULL
  33. ,@bankCode2 VARCHAR(50) = NULL
  34. AS
  35. -- #13526 - UPDATE BRANCH CODE - ADD PARTNER FILTER
  36. BEGIN
  37. IF @FLAG = 'getPartnerByCountry'
  38. BEGIN
  39. select bankId = 0
  40. , 0 NS
  41. , FLAG = 'E'
  42. , AGENTNAME = 'Select Partner'
  43. UNION
  44. SELECT bankId= TPC.AgentId,
  45. 0 NS,
  46. FLAG = 'E',
  47. AGENTNAME = AM.AGENTNAME
  48. FROM TblPartnerwiseCountry TPC(NOLOCK)
  49. INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYId = TPC.CountryId
  50. INNER JOIN AGENTMASTER(NOLOCK) AM ON AM.agentId = TPC.AGENTID
  51. WHERE CM.COUNTRYID = @pCountryId
  52. AND (TPC.PaymentMethod = 2 or TPC.PaymentMethod is null)
  53. --ORDER BY agentName
  54. END
  55. ELSE IF @Flag = 'receiverListPMode'
  56. BEGIN
  57. select bankId = 0
  58. , 0 NS
  59. , FLAG = 'E'
  60. , AGENTNAME = 'Select PMode'
  61. FROM receiverInformation RI(NOLOCK)
  62. INNER JOIN countryMaster CM(NOLOCK) ON CM.countryname = RI.country
  63. WHERE CM.COUNTRYID = @pCountryId
  64. AND (paymentMode = 2 or paymentMode is null)
  65. END
  66. IF @FLAG = 'getBankByPartner'
  67. BEGIN
  68. select bankId = 0
  69. , 0 NS
  70. , FLAG = 'E'
  71. , AGENTNAME = 'Select Bank'
  72. , bank_name = ''
  73. UNION
  74. SELECT bankId=AL.BANK_ID,
  75. 0 NS,
  76. FLAG = 'E',
  77. AGENTNAME = AL.BANK_NAME + ' || ' + AL.BANK_CODE1 ,
  78. al.bank_name
  79. FROM API_BANK_LIST AL(NOLOCK)
  80. INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = AL.BANK_COUNTRY
  81. WHERE CM.COUNTRYID = @pCountryId
  82. AND AL.IS_ACTIVE = 1
  83. AND AL.PAYMENT_TYPE_ID = 2
  84. and AL.API_PARTNER_ID = @partnerId
  85. ORDER BY BANK_NAME
  86. END
  87. ELSE IF @FLAG = 'getBranchByBankAndCountry'
  88. BEGIN
  89. select bankId = 0
  90. , 0 NS
  91. , FLAG = 'E'
  92. , AGENTNAME = 'Select Branch'
  93. , BRANCH_NAME = ''
  94. union
  95. SELECT bankId=AL.BRANCH_ID,
  96. 0 NS,
  97. FLAG = 'E',
  98. AGENTNAME = AL.BRANCH_NAME + ' || ' + AL.BRANCH_CODE1,
  99. branch_name
  100. FROM API_BANK_BRANCH_LIST AL(NOLOCK)
  101. INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = AL.BRANCH_COUNTRY
  102. WHERE CM.COUNTRYID = @pCountryId
  103. AND AL.BANK_ID = @bankId
  104. AND AL.IS_ACTIVE = 1
  105. AND AL.PAYMENT_TYPE_ID = 2
  106. ORDER BY BRANCH_NAME
  107. END
  108. IF @FLAG = 'getBankMasterByCountry'
  109. BEGIN
  110. -- Select default row with 'Select Partner' when bankId is 0
  111. SELECT
  112. bankId = 0
  113. , 0 NS
  114. , FLAG = 'E'
  115. , AGENTNAME= 'Select Bank'
  116. UNION
  117. SELECT
  118. bankId= TPC.Master_Bank_Id,
  119. 0 NS,
  120. FLAG = 'E',
  121. AGENTNAME= TPC.Bank_Name
  122. FROM
  123. API_BANK_LIST_MASTER TPC(NOLOCK)
  124. INNER JOIN
  125. COUNTRYMASTER CM(NOLOCK) ON CM.countryName = TPC.Bank_Country
  126. where CM.countryid = @pCountryId
  127. END
  128. ELSE IF @FLAG = 'updateBranchCode'
  129. BEGIN
  130. IF EXISTS(select 1 from API_BANK_BRANCH_LIST WHERE BANK_ID = @bankId and BRANCH_ID = @branchId)
  131. BEGIN
  132. INSERT INTO API_BANK_BRANCH_LIST_LOG
  133. SELECT BANK_ID,BRANCH_ID,BRANCH_CODE1,@branchCode,@user,GETDATE() FROM API_BANK_BRANCH_LIST
  134. WHERE BANK_ID = @bankId and BRANCH_ID = @branchId
  135. UPDATE API_BANK_BRANCH_LIST SET BRANCH_CODE1 = @branchCode,BRANCH_NAME = @editedBranchName , IS_ACTIVE = @IS_ACTIVE where BANK_ID = @bankId and BRANCH_ID = @branchId
  136. SELECT 0 ERRORCODE,'BranchCode updated successfully' Msg,null
  137. END
  138. END
  139. ELSE IF @flag = 'insertBranch'
  140. BEGIN
  141. SELECT @pCountryName = COUNTRYNAME FROM countryMaster WHERE COUNTRYID = @pcountryId
  142. IF NOT EXISTS(SELECT 'A',* FROM API_BANK_LIST WHERE BANK_ID = @bankId AND BANK_COUNTRY = @pCountryName)
  143. BEGIN
  144. SELECT '1' ErrorCode,'Bank Does not exists' Msg,@bankId id
  145. RETURN
  146. END
  147. IF EXISTS (SELECT 'A',* FROM API_BANK_BRANCH_LIST WHERE BANK_ID = @bankId AND BRANCH_COUNTRY = @pCountryName AND BRANCH_CODE1 = @branchCode AND BRANCH_NAME = @branchName)
  148. BEGIN
  149. SELECT '1' ErrorCode,'Branch with same name and code already exists' Msg,@bankId id
  150. RETURN
  151. END
  152. IF EXISTS (SELECT 'A',* FROM API_BANK_BRANCH_LIST WHERE BANK_ID = @bankId AND BRANCH_COUNTRY = @pCountryName AND BRANCH_CODE1 = @branchCode)
  153. BEGIN
  154. SELECT '1' ErrorCode,'Branch with same country and code already exists' Msg,@bankId id
  155. RETURN
  156. END
  157. INSERT INTO API_BANK_BRANCH_LIST (BANK_ID,BRANCH_NAME,BRANCH_CODE1,BRANCH_COUNTRY,IS_ACTIVE,PAYMENT_TYPE_ID)
  158. VALUES (@bankId,@branchName,@branchCode,@pCountryName,@IS_ACTIVE ,2)
  159. SELECT '0' ErrorCode,'Branch Inserted Successfully' Msg,@bankId id
  160. END
  161. ELSE IF @flag = 'insertBank'
  162. BEGIN
  163. SELECT @pCountryName = COUNTRYNAME FROM countryMaster WHERE COUNTRYID = @pcountryId
  164. --IF NOT EXISTS(SELECT 'A',* FROM API_BANK_LIST_MASTER WHERE MASTER_BANK_ID = @bankId AND BANK_COUNTRY = @pCountryName)
  165. --BEGIN
  166. -- SELECT '1' ErrorCode,'Bank Does not exists' Msg,@bankId id
  167. -- RETURN
  168. --END
  169. IF EXISTS (SELECT 'A',* FROM API_BANK_LIST_MASTER WHERE MASTER_BANK_ID = @bankId AND BANK_COUNTRY = @pCountryName AND BANK_NAME = @bankName)
  170. BEGIN
  171. SELECT '1' ErrorCode,'Bank with same name already exists' Msg,@bankId id
  172. RETURN
  173. END
  174. IF EXISTS (SELECT 'A',* FROM API_BANK_LIST_MASTER WHERE MASTER_BANK_ID = @bankId AND BANK_COUNTRY = @pCountryName AND PAYMENT_TYPE_ID = @pMode)
  175. BEGIN
  176. SELECT '1' ErrorCode,'Bank with same country already exists' Msg,@bankId id
  177. RETURN
  178. END
  179. INSERT INTO API_BANK_LIST_MASTER(
  180. BANK_NAME,
  181. BANK_COUNTRY,
  182. SUPPORT_CURRENCY,
  183. JME_BANK_CODE,
  184. BANK_STATE,
  185. BANK_ADDRESS,
  186. BANK_DISTRICT,
  187. BANK_PHONE,
  188. BANK_EMAIL,
  189. IS_ACTIVE,
  190. PAYMENT_TYPE_ID
  191. )
  192. VALUES (
  193. @bankName,
  194. (SELECT cm.CountryName FROM countryMaster cm WHERE cm.CountryID = @pCountryName),
  195. @sCurrency,
  196. 'JME000' + CAST(IDENT_CURRENT('API_BANK_LIST_MASTER') AS VARCHAR),
  197. @bankState,
  198. @bankAddress,
  199. @bankDistrict,
  200. @bankPhone,
  201. @bankEmail,
  202. @IS_ACTIVE,
  203. @pMode
  204. );
  205. SELECT '0' ErrorCode,'Bank Inserted Successfully' Msg,@bankId id
  206. END
  207. ELSE IF @flag = 'insertBankMapping'
  208. BEGIN
  209. SELECT @pCountryName = COUNTRYNAME FROM countryMaster WHERE COUNTRYID = @pcountryId
  210. --IF NOT EXISTS(SELECT 'A',* FROM API_BANK_LIST_MASTER WHERE MASTER_BANK_ID = @bankId AND BANK_COUNTRY = @pCountryName)
  211. --BEGIN
  212. -- SELECT '1' ErrorCode,'Bank Does not exists' Msg,@bankId id
  213. -- RETURN
  214. --END
  215. IF EXISTS (SELECT 'A',* FROM API_BANK_LIST WHERE BANK_ID = @bankId AND BANK_COUNTRY = @pCountryName AND BANK_CODE1 = @bankCode1 AND BANK_NAME = @bankName)
  216. BEGIN
  217. SELECT '1' ErrorCode,'Bank with same name and code already exists' Msg,@bankId id
  218. RETURN
  219. END
  220. IF EXISTS (SELECT 'A',* FROM API_BANK_LIST WHERE BANK_ID = @bankId AND BANK_COUNTRY = @pCountryName AND BANK_CODE1 = @branchCode)
  221. BEGIN
  222. SELECT '1' ErrorCode,'Bank with same country and code already exists' Msg,@bankId id
  223. RETURN
  224. END
  225. INSERT INTO API_BANK_LIST(
  226. BANK_NAME,
  227. API_PARTNER_ID,
  228. BANK_COUNTRY,
  229. SUPPORT_CURRENCY,
  230. JME_BANK_CODE,
  231. BANK_CODE1,
  232. BANK_CODE2,
  233. BANK_ADDRESS,
  234. IS_ACTIVE,
  235. PAYMENT_TYPE_ID
  236. )
  237. VALUES (
  238. (SELECT ablm.BANK_NAME FROM API_BANK_LIST_MASTER ablm WHERE ablm.Master_Bank_Id = @bankName),
  239. @partnerId,
  240. (SELECT cm.CountryName FROM CountryMaster cm INNER JOIN API_BANK_LIST_MASTER ablm ON ablm.Bank_Country = cm.countryName WHERE ablm.Master_Bank_Id = @bankName OR ablm.Bank_Country = @pCountryName),
  241. @sCurrency,
  242. 'JME000' + CAST((SELECT ablm.Master_Bank_Id FROM API_BANK_LIST_MASTER ablm WHERE ablm.Master_Bank_Id = @bankName) AS VARCHAR),
  243. @bankCode1,
  244. @bankCode2,
  245. @bankAddress,
  246. @IS_ACTIVE,
  247. @pMode
  248. );
  249. SELECT '0' ErrorCode,'Bank Inserted Successfully' Msg,@bankId id
  250. END
  251. ELSE IF @flag = 'Edit'
  252. BEGIN
  253. SELECT * FROM Api_Bank_lIST WITH(NOLOCK) WHERE Bank_Id = @bankId
  254. END
  255. ELSE IF @FLAG = 'updateBankMapping'
  256. BEGIN
  257. IF EXISTS(select 1 from API_BanK_List WHERE BANK_ID = @bankId)
  258. BEGIN
  259. --INSERT INTO API_BANK_BRANCH_LIST_LOG
  260. --SELECT BANK_ID,BRANCH_ID,BRANCH_CODE1,@branchCode,@user,GETDATE() FROM API_BANK_BRANCH_LIST
  261. --WHERE BANK_ID = @bankId and BRANCH_ID = @branchId
  262. UPDATE API_BANK_LIST SET
  263. BANK_NAME = @bankName,
  264. API_PARTNER_ID = @partnerId,
  265. BANK_COUNTRY = @pCountryName,
  266. SUPPORT_CURRENCY= @sCurrency,
  267. BANK_CODE1 = @bankCode1,
  268. BANK_CODE2 =@bankCode1,
  269. BANK_ADDRESS= @bankAddress,
  270. IS_ACTIVE = @IS_ACTIVE,
  271. PAYMENT_TYPE_ID = @pMode
  272. where BANK_ID = @bankId
  273. SELECT 0 ERRORCODE,'Bank updated successfully' Msg,null
  274. END
  275. END
  276. end