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.
114 lines
9.6 KiB
114 lines
9.6 KiB
USE [FastMoneyPro_Remit]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[proc_intlAgentMigration] Script Date: 9/27/2019 1:30:14 PM ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
/*
|
|
SELECT * FROM intlAgents
|
|
EXEC proc_intlAgentMigration @flag = 'i'
|
|
EXEC proc_intlAgentMigration @flag = 'approve'
|
|
*/
|
|
CREATE PROCEDURE [dbo].[proc_intlAgentMigration]
|
|
@flag VARCHAR(20) = NULL
|
|
|
|
AS
|
|
|
|
DECLARE @result TABLE(errorCode INT, msg VARCHAR(200), id INT)
|
|
DECLARE @tempIntlBranchList TABLE(rowId INT IDENTITY(1,1), companyName VARCHAR(255), agentCode VARCHAR(10), agent_branch_code VARCHAR(10), branch VARCHAR(200), country VARCHAR(200),
|
|
[address] VARCHAR(255), city VARCHAR(200), telephone VARCHAR(200), fax VARCHAR(200), isHeadOffice VARCHAR(100), contactPerson VARCHAR(200))
|
|
|
|
IF @flag = 'i'
|
|
BEGIN
|
|
DECLARE @parentId INT, @agentCountryId INT, @agentType INT, @agentRole CHAR(1), @isSettlingAgent CHAR(1)
|
|
DECLARE @rowId INT, @agentName VARCHAR(255), @agentCode VARCHAR(10), @agent_branch_code VARCHAR(10), @branch VARCHAR(200), @country VARCHAR(200),
|
|
@agentAddress VARCHAR(255), @agentCity VARCHAR(200), @telephone VARCHAR(200), @fax VARCHAR(200), @isHeadOffice VARCHAR(100), @contactPerson VARCHAR(200)
|
|
INSERT INTO @tempIntlBranchList
|
|
SELECT * FROM intlAgents
|
|
|
|
SELECT @agentRole = 'B'
|
|
|
|
WHILE EXISTS(SELECT 'X' FROM @tempIntlBranchList)
|
|
BEGIN
|
|
SELECT TOP 1
|
|
@rowId = rowId, @agentName = companyName, @agentCode = agentCode, @agent_branch_code = agent_branch_code, @branch = branch, @country = country
|
|
,@agentAddress = [address], @agentCity = city, @telephone = telephone, @fax = fax, @isHeadOffice = isHeadOffice, @contactPerson = contactPerson
|
|
FROM @tempIntlBranchList
|
|
|
|
SELECT @agentCountryId = countryId FROM countryMaster WITH(NOLOCK) WHERE countryName = @country
|
|
|
|
IF NOT EXISTS(SELECT 'X' FROM agentMaster WITH(NOLOCK) WHERE mapCodeInt = @agentCode)
|
|
BEGIN
|
|
SELECT @parentId = 4641, @agentType = 2903, @isSettlingAgent = 'Y'
|
|
|
|
EXEC proc_agentMasterMigration @flag = 'i', @user = 'admin', @agentId = null, @parentId = @parentId, @agentName = @agentName, @agentAddress = @agentAddress
|
|
, @agentCity = @agentCity, @agentCountryId = @agentCountryId, @agentCountry = @country, @agentPhone1 = @telephone
|
|
, @agentFax1 = @fax
|
|
, @agentRole = @agentRole, @agentType = @agentType
|
|
, @isSettlingAgent = @isSettlingAgent
|
|
, @mapCodeInt = @agentCode
|
|
END
|
|
SET @agentType = 2904
|
|
SET @isSettlingAgent = 'N'
|
|
SELECT @parentId = agentId FROM agentMaster WITH(NOLOCK) WHERE mapCodeInt = @agentCode
|
|
SELECT @agentName = companyName + ISNULL(' - ' + branch, '') FROM @tempIntlBranchList WHERE rowId = @rowId
|
|
|
|
EXEC proc_agentMasterMigration @flag = 'i', @user = 'admin', @agentId = null, @parentId = @parentId, @agentName = @agentName, @agentAddress = @agentAddress
|
|
, @agentCity = @agentCity, @agentCountryId = @agentCountryId, @agentCountry = @country, @agentPhone1 = @telephone
|
|
, @agentFax1 = @fax
|
|
, @agentRole = @agentRole, @agentType = @agentType
|
|
, @isSettlingAgent = @isSettlingAgent
|
|
, @mapCodeInt = @agent_branch_code
|
|
|
|
DELETE FROM @tempIntlBranchList WHERE rowId = @rowId
|
|
|
|
SELECT
|
|
@agentName = NULL, @agentCode = NULL, @agent_branch_code = NULL, @branch = NULL, @country = NULL
|
|
,@agentAddress = NULL, @agentCity = NULL, @telephone = NULL, @fax = NULL, @isHeadOffice = NULL, @contactPerson = NULL
|
|
END
|
|
END
|
|
|
|
ELSE IF @flag = 'approve'
|
|
BEGIN
|
|
DECLARE @agentIds TABLE(rowId INT IDENTITY(1,1), agentId INT, mapCodeInt VARCHAR(8))
|
|
DECLARE @totalRows INT, @count INT, @agentId INT, @mapCodeInt VARCHAR(10)
|
|
INSERT @agentIds
|
|
SELECT agentId, mapCodeInt FROM agentMaster WHERE approvedBy IS NULL
|
|
|
|
SELECT @totalRows = COUNT(*) FROM @agentIds
|
|
SET @count = 1
|
|
WHILE (@count <= @totalRows)
|
|
BEGIN
|
|
SELECT @agentId = agentId, @mapCodeInt = mapCodeInt FROM @agentIds WHERE rowId = @count
|
|
EXEC proc_agentMaster @flag = 'approve', @user = 'imeadmin', @agentId = @agentId
|
|
SET @count = @count + 1
|
|
END
|
|
END
|
|
ELSE IF @flag = 'otherInfo'
|
|
BEGIN
|
|
SELECT * FROM intlAgentsInfo
|
|
SELECT * FROM agentContactPerson
|
|
|
|
UPDATE am SET
|
|
am.agentAddress = iai.[address]
|
|
,am.agentPhone1 = iai.phone1
|
|
,am.agentPhone2 = iai.phone2
|
|
,am.agentFax1 = iai.fax
|
|
,am.agentEmail1 = iai.email
|
|
,am.joinedDate = iai.dateofjoin
|
|
FROM agentMaster am
|
|
INNER JOIN intlAgentsInfo iai ON am.mapCodeInt = iai.agentCode
|
|
|
|
/*
|
|
INSERT INTO agentContactPerson(agentId, name, country, address, phone, mobile1, fax, email, post, isPrimary, createdBy, createdDate)
|
|
SELECT am.agentId, iai.contactname1, cm.countryId, am.agentAddress, iai.phone1, iai.phone2, iai.fax, iai.email, iai.post1, 'Y', 'admin', GETDATE()
|
|
FROM agentMaster am
|
|
INNER JOIN intlAgentsInfo iai ON am.mapCodeInt = iai.agentCode
|
|
LEFT JOIN countryMaster cm ON cm.countryName = iai.country
|
|
*/
|
|
END
|
|
|
|
|
|
|
|
GO
|