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.
 
 

627 lines
28 KiB

USE [FastMoneyPro_Remit]
GO
/****** Object: StoredProcedure [dbo].[Proc_UpdateBranchCode] Script Date: 8/23/2024 8:48:03 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROC [dbo].[Proc_UpdateBranchCode] @flag VARCHAR(200)
,@pCountryId INT = NULL
,@pCountryName VARCHAR(50) = NULL
,@countryId VARCHAR(50) = NULL
,@bankId INT = NULL
,@branchCode VARCHAR(50) = NULL
,@branchId BIGINT = NULL
,@branchName VARCHAR(50) = NULL
,@editedBranchName VARCHAR(50) = NULL
,@user VARCHAR(20) = NULL
,@partnerId VARCHAR(50) = NULL
,@param VARCHAR(25) = NULL
,@bankName VARCHAR(50) = NULL
,@bankCountry VARCHAR(50) = NULL
,@bankState VARCHAR(50) = NULL
,@bankDistrict VARCHAR(50) = NULL
,@bankAddress VARCHAR(50) = NULL
,@bankPhone VARCHAR(50) = NULL
,@bankEmail VARCHAR(50) = NULL
,@sCurrency VARCHAR(50) = NULL
,@MASTER_BANK_ID INT = NULL
,@is_Active BIT = NULL
,@pMode INT = NULL
,@bankCode1 VARCHAR(50) = NULL
,@bankCode2 VARCHAR(50) = NULL
,@payerName varchar(50) = Null
,@payerCode varchar(50) = Null
,@branchAddress varchar(50) = Null
AS
-- #13526 - UPDATE BRANCH CODE - ADD PARTNER FILTER
BEGIN
IF @FLAG = 'getPartnerByCountry'
BEGIN
SELECT bankId = 0
,0 NS
,FLAG = 'E'
,AGENTNAME = 'Select Partner'
UNION
SELECT bankId = TPC.AgentId
,0 NS
,FLAG = 'E'
,AGENTNAME = AM.AGENTNAME
FROM TblPartnerwiseCountry TPC(NOLOCK)
INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYId = TPC.CountryId
INNER JOIN AGENTMASTER(NOLOCK) AM ON AM.agentId = TPC.AGENTID
WHERE CM.COUNTRYID = @pCountryId
AND (
TPC.PaymentMethod = 2
OR TPC.PaymentMethod IS NULL
)
--ORDER BY agentName
END
ELSE IF @Flag = 'GetPartnetName'
BEGIN
SELECT AGENTNAME
FROM AGENTMASTER
WHERE agentId = @Partnerid
END
ELSE IF @Flag = 'GetbankMasterId'
BEGIN
SELECT MASTER_BANK_ID
FROM API_BANK_LIST_MASTER
WHERE BANK_NAME = @Partnerid
END
ELSE IF @Flag = 'receiverListPMode'
BEGIN
SELECT bankId = 0
,0 NS
,FLAG = 'E'
,AGENTNAME = 'Select PMode'
FROM receiverInformation RI(NOLOCK)
INNER JOIN countryMaster CM(NOLOCK) ON CM.countryname = RI.country
WHERE CM.COUNTRYID = @pCountryId
AND (
paymentMode = 2
OR paymentMode IS NULL
)
END
IF @FLAG = 'getBankByPartner'
BEGIN
SELECT bankId = 0
,0 NS
,FLAG = 'E'
,AGENTNAME = 'Select Bank'
,bank_name = ''
UNION
SELECT bankId = AL.BANK_ID
,0 NS
,FLAG = 'E'
,AGENTNAME = AL.BANK_NAME
,--+ ' || ' + AL.BANK_CODE1 ,
al.bank_name
FROM API_BANK_LIST AL(NOLOCK)
INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = AL.BANK_COUNTRY
WHERE CM.COUNTRYID = @pCountryId
AND AL.IS_ACTIVE = 1
AND AL.PAYMENT_TYPE_ID = 2
AND AL.API_PARTNER_ID = @partnerId
ORDER BY BANK_NAME
END
ELSE IF @FLAG = 'getBranchByBankAndCountry'
BEGIN
SELECT bankId = 0
,0 NS
,FLAG = 'E'
,AGENTNAME = 'Select Branch'
,BRANCH_NAME = ''
UNION
SELECT bankId = AL.BRANCH_ID
,0 NS
,FLAG = 'E'
,AGENTNAME = AL.BRANCH_NAME + ' || ' + AL.BRANCH_CODE1
,branch_name
FROM API_BANK_BRANCH_LIST AL(NOLOCK)
INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.COUNTRYNAME = AL.BRANCH_COUNTRY
WHERE CM.COUNTRYID = @pCountryId
AND AL.BANK_ID = @bankId
AND AL.IS_ACTIVE = 1
AND AL.PAYMENT_TYPE_ID = 2
ORDER BY BRANCH_NAME
END
IF @FLAG = 'getBankMasterByCountry'
BEGIN
-- Select default row with 'Select Partner' when bankId is 0
SELECT bankId = 0
,0 NS
,FLAG = 'E'
,AGENTNAME = 'Select All Banks'
UNION
SELECT bankId = TPC.Master_Bank_Id
,0 NS
,FLAG = 'E'
,AGENTNAME = TPC.Bank_Name
FROM API_BANK_LIST_MASTER TPC(NOLOCK)
INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.countryName = TPC.Bank_Country
WHERE CM.countryid = @pCountryId
END
IF @FLAG = 'getBankListByCountry'
BEGIN
-- Select default row with 'Select Partner' when bankId is 0
SELECT bankId = 0
,0 NS
,FLAG = 'E'
,AGENTNAME = 'Select All Banks'
UNION
SELECT bankId = TPC.Master_Bank_Id
,0 NS
,FLAG = 'E'
,AGENTNAME = TPC.Bank_Name
FROM API_BANK_LIST_MASTER TPC(NOLOCK)
INNER JOIN COUNTRYMASTER CM(NOLOCK) ON CM.countryName = TPC.Bank_Country
WHERE CM.countryid = @pCountryId
END
ELSE IF @FLAG = 'updateBranchCode'
BEGIN
IF EXISTS (
SELECT 1
FROM API_BANK_BRANCH_LIST
WHERE BANK_ID = @bankId
AND BRANCH_ID = @branchId
)
BEGIN
INSERT INTO API_BANK_BRANCH_LIST_LOG
SELECT BANK_ID
,BRANCH_ID
,BRANCH_CODE1
,@branchCode
,@user
,GETDATE()
FROM API_BANK_BRANCH_LIST
WHERE BANK_ID = @bankId
AND BRANCH_ID = @branchId
UPDATE API_BANK_BRANCH_LIST
SET BRANCH_CODE1 = @branchCode
,BRANCH_NAME = @editedBranchName
,IS_ACTIVE = @IS_ACTIVE
WHERE BANK_ID = @bankId
AND BRANCH_ID = @branchId
SELECT 0 ERRORCODE
,'BranchCode updated successfully' Msg
,NULL
END
END
ELSE IF @flag = 'insertBranch'
BEGIN
SELECT @pCountryName = COUNTRYNAME
FROM countryMaster
WHERE COUNTRYID = @pcountryId
IF NOT EXISTS (
SELECT 'A'
,*
FROM API_BANK_LIST
WHERE BANK_ID = @bankId
AND BANK_COUNTRY = @pCountryName
)
BEGIN
SELECT '1' ErrorCode
,'Bank Does not exists' Msg
,@bankId id
RETURN
END
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
)
BEGIN
SELECT '1' ErrorCode
,'Branch with same name and code already exists' Msg
,@bankId id
RETURN
END
IF EXISTS (
SELECT 'A'
,*
FROM API_BANK_BRANCH_LIST
WHERE BANK_ID = @bankId
AND BRANCH_COUNTRY = @pCountryName
AND BRANCH_CODE1 = @branchCode
)
BEGIN
SELECT '1' ErrorCode
,'Branch with same country and code already exists' Msg
,@bankId id
RETURN
END
INSERT INTO API_BANK_BRANCH_LIST (
BANK_ID
,BRANCH_NAME
,BRANCH_CODE1
,BRANCH_COUNTRY
,IS_ACTIVE
,PAYMENT_TYPE_ID
)
VALUES (
@bankId
,@branchName
,@branchCode
,@pCountryName
,@IS_ACTIVE
,2
)
SELECT '0' ErrorCode
,'Branch Inserted Successfully' Msg
,@bankId id
END
ELSE IF @flag = 'insertBank'
BEGIN
SELECT @pCountryName = COUNTRYNAME
FROM countryMaster
WHERE COUNTRYID = @pcountryId
--IF NOT EXISTS(SELECT 'A',* FROM API_BANK_LIST_MASTER WHERE MASTER_BANK_ID = @bankId AND BANK_COUNTRY = @pCountryName)
--BEGIN
-- SELECT '1' ErrorCode,'Bank Does not exists' Msg,@bankId id
-- RETURN
--END
IF EXISTS (
SELECT 'A'
,*
FROM API_BANK_LIST_MASTER
WHERE MASTER_BANK_ID = @bankId
AND BANK_COUNTRY = @pCountryName
AND BANK_NAME = @bankName
)
BEGIN
SELECT '1' ErrorCode
,'Bank with same name already exists' Msg
,@bankId id
RETURN
END
IF EXISTS (
SELECT 'A'
,*
FROM API_BANK_LIST_MASTER
WHERE MASTER_BANK_ID = @bankId
AND BANK_COUNTRY = @pCountryName
AND PAYMENT_TYPE_ID = @pMode
)
BEGIN
SELECT '1' ErrorCode
,'Bank with same country already exists' Msg
,@bankId id
RETURN
END
INSERT INTO API_BANK_LIST_MASTER (
BANK_NAME
,BANK_COUNTRY
,SUPPORT_CURRENCY
,JME_BANK_CODE
,BANK_STATE
,BANK_ADDRESS
,BANK_DISTRICT
,BANK_PHONE
,BANK_EMAIL
,IS_ACTIVE
,PAYMENT_TYPE_ID
)
VALUES (
@bankName
,(
SELECT cm.CountryName
FROM countryMaster cm
WHERE cm.CountryID = @pCountryName
)
,@sCurrency
,'IME000' + CAST(IDENT_CURRENT('API_BANK_LIST_MASTER') AS VARCHAR)
,@bankState
,@bankAddress
,@bankDistrict
,@bankPhone
,@bankEmail
,@is_Active
,@pMode
);
SELECT '0' ErrorCode
,'Bank Inserted Successfully' Msg
,@bankId id
END
ELSE IF @FLAG = 'updateBank'
BEGIN
UPDATE API_BANK_LIST_MASTER
SET BANK_NAME = @bankName
,BANK_COUNTRY = (
SELECT cm.CountryName
FROM countryMaster cm
WHERE cm.CountryID = @pCountryName
)
,SUPPORT_CURRENCY = @sCurrency
,BANK_STATE = @bankState
,BANK_ADDRESS = @bankAddress
,BANK_DISTRICT = @bankDistrict
,BANK_PHONE = @bankPhone
,BANK_EMAIL = @bankEmail
,IS_ACTIVE = @is_Active
,PAYMENT_TYPE_ID = @pMode
WHERE MASTER_BANK_ID = @bankId;
SELECT '0' AS ErrorCode
,'Bank Updated Successfully' AS Msg
END
ELSE IF @flag = 'insertBankMapping'
BEGIN
SELECT @pCountryName = COUNTRYNAME
FROM countryMaster
WHERE COUNTRYID = @pcountryId
--IF NOT EXISTS(SELECT 'A',* FROM API_BANK_LIST_MASTER WHERE MASTER_BANK_ID = @bankId AND BANK_COUNTRY = @pCountryName)
--BEGIN
-- SELECT '1' ErrorCode,'Bank Does not exists' Msg,@bankId id
-- RETURN
--END
IF EXISTS (
SELECT 'A'
,*
FROM API_BANK_LIST
WHERE BANK_ID = @bankId
AND BANK_COUNTRY = @pCountryName
AND BANK_CODE1 = @bankCode1
AND BANK_NAME = @bankName
)
BEGIN
SELECT '1' ErrorCode
,'Bank with same name and code already exists' Msg
,@bankId id
RETURN
END
IF EXISTS (
SELECT 'A'
,*
FROM API_BANK_LIST
WHERE BANK_ID = @bankId
AND BANK_COUNTRY = @pCountryName
AND BANK_CODE1 = @branchCode
)
BEGIN
SELECT '1' ErrorCode
,'Bank with same country and code already exists' Msg
,@bankId id
RETURN
END
INSERT INTO API_BANK_LIST (
BANK_NAME
,API_PARTNER_ID
,BANK_COUNTRY
,SUPPORT_CURRENCY
,JME_BANK_CODE
,BANK_CODE1
,BANK_CODE2
,BANK_ADDRESS
,IS_ACTIVE
,PAYMENT_TYPE_ID
)
VALUES (
(
SELECT ablm.BANK_NAME
FROM API_BANK_LIST_MASTER ablm
WHERE ablm.Master_Bank_Id = @bankName
)
,@partnerId
,(
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
)
,@sCurrency
,(
SELECT ablm.JME_BANK_CODE
FROM API_BANK_LIST_MASTER ablm
WHERE ablm.Master_Bank_Id = @bankName
)
,@bankCode1
,@bankCode2
,@bankAddress
,@is_Active
,@pMode
);
SELECT '0' ErrorCode
,'Bank Inserted Successfully' Msg
,@bankId id
END
ELSE IF @FLAG = 'updateBankMapping'
BEGIN
UPDATE API_BANK_LIST
SET BANK_NAME = (
SELECT ablm.BANK_NAME
FROM API_BANK_LIST_MASTER ablm
WHERE ablm.Master_Bank_Id = @bankName
)
,BANK_COUNTRY = (
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
)
,API_PARTNER_ID = @partnerId
,SUPPORT_CURRENCY = @sCurrency
,BANK_CODE1 = @bankCode1
,BANK_CODE2 = @bankCode2
,BANK_ADDRESS = @bankAddress
,IS_ACTIVE = @is_Active
,PAYMENT_TYPE_ID = @pMode
WHERE BANK_ID = @bankId;
SELECT '0' AS ErrorCode
,'Bank Updated Successfully' AS Msg
END
ELSE IF @flag = 'editBankMapping'
BEGIN
SELECT *
FROM Api_Bank_lIST WITH (NOLOCK)
WHERE Bank_Id = @bankId
END
ELSE IF @flag = 'editPayerMapping'
BEGIN
SELECT *
FROM PAYER_BANK_DETAILS WITH (NOLOCK)
WHERE PAYER_ID = @bankId
END
ELSE IF @flag = 'editBank'
BEGIN
SELECT *
FROM API_BANK_LIST_MASTER WITH (NOLOCK)
WHERE MASTER_BANK_ID = @bankId
END
ELSE IF @flag = 'editBranch'
BEGIN
SELECT *
FROM API_BANK_BRANCH_LIST WITH (NOLOCK)
WHERE BRANCH_ID = @bankId
END
ELSE IF @FLAG = 'deleteBankMapping'
BEGIN
DELETE
FROM Api_Bank_lIST
WHERE BANK_ID = @bankId
SELECT '0' ErrorCode
,'Bank has been deleted successfully.' Msg
,NULL id;
END
ELSE IF @FLAG = 'deleteBank'
BEGIN
DELETE
FROM API_BANK_LIST_MASTER
WHERE MASTER_BANK_ID = @bankId
SELECT '0' ErrorCode
,'Bank has been deleted successfully.' Msg
,NULL id;
END
ELSE IF @FLAG = 'deleteBranch'
BEGIN
DELETE
FROM API_BANK_BRANCH_LIST
WHERE BRANCH_ID = @bankId
SELECT '0' ErrorCode
,'Branch has been deleted successfully.' Msg
,NULL id;
END
ELSE IF @flag = 'insertBankPayer'
BEGIN
SELECT @pCountryName = COUNTRYNAME
FROM countryMaster
WHERE COUNTRYID = @pcountryId
INSERT INTO PAYER_BANK_DETAILS(
PAYER_NAME
,BANK_ID
,BANK_COUNTRY
,PAYER_CODE
,PAYER_BRANCH_NAME
,PAYER_BRANCH_CODE
,BRANCH_ADDRESS
,PAYMENT_MODE
,PARTNER_ID
,creaeteddate
,IS_ACTIVE
)
VALUES (
@payerName
,@bankName
,(
SELECT cm.CountryName
FROM countryMaster cm
WHERE cm.CountryID = @pCountryName
)
,@payerCode
,@branchName
,@branchCode
,@branchAddress
,@pMode
,@partnerId
,GetDate()
,@is_Active
);
SELECT '0' ErrorCode
,'Payer Inserted Successfully' Msg
,@bankId id
END
ELSE IF @FLAG = 'updatePayerMapping'
BEGIN
UPDATE PAYER_BANK_DETAILS
SET
PAYER_NAME = @payerName
,BANK_ID = @bankName
,BANK_COUNTRY = @pCountryName
,PAYER_CODE= @payerCode
,PAYER_BRANCH_NAME = @branchName
,PAYER_BRANCH_CODE = @branchCode
,BRANCH_ADDRESS = @branchAddress
,PAYMENT_MODE = @pMode
,PARTNER_ID = @partnerId
,MODIFIED_DATE = GETDATE()
,IS_ACTIVE = @is_Active
WHERE PAYER_ID = @bankId;
SELECT '0' AS ErrorCode
,'Payer Updated Successfully' AS Msg
END
ELSE IF @FLAG = 'deletePayerMapping'
BEGIN
DELETE
FROM PAYER_BANK_DETAILS
WHERE PAYER_ID = @bankId
SELECT '0' ErrorCode
,'Payer has been deleted successfully.' Msg
,NULL id;
END
END