|
|
USE [FastMoneyPro_Remit] GO /****** Object: StoredProcedure [dbo].[EXCHANGE_PROC_CUSTMOMERS] Script Date: 7/4/2019 11:35:48 AM ******/ DROP PROCEDURE [dbo].[EXCHANGE_PROC_CUSTMOMERS] GO /****** Object: StoredProcedure [dbo].[EXCHANGE_PROC_CUSTMOMERS] Script Date: 7/4/2019 11:35:48 AM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE [dbo].[EXCHANGE_PROC_CUSTMOMERS] @FLAG VARCHAR(20), @USER VARCHAR(50), @CID INT = NULL, @CNAME VARCHAR(100) = NULL, @CADDRESS VARCHAR(100) = NULL, @GENDER VARCHAR(10) = NULL, @COUNTRY VARCHAR(200) = NULL, @IDTYPE INT = NULL, @IDNUMBER VARCHAR(50) = NULL, @DOB DATE = NULL, @POSTALCODE VARCHAR(50) = NULL, @CONTACT VARCHAR(50) = NULL, @EMAIL VARCHAR(100) = NULL, @CTYPE INT = NULL, @BRANCHID VARCHAR(30) = null, @OCCUPATION INT = NULL, @HASCHANGED VARCHAR(5) = NULL, @docFor VARCHAR(5) = NULL, @sessionId VARCHAR(60) = NULL, @sortBy VARCHAR(50) = NULL, @sortOrder VARCHAR(50) = NULL, @pageSize INT = NULL, @pageNumber INT = NULL AS SET NOCOUNT ON; SET XACT_ABORT ON; declare @nativCountry VARCHAR(50) --SELECT @nativCountry = ref_code FROM StaticDataDetail where id = @COUNTRY IF @FLAG = 'I' BEGIN IF EXISTS(SELECT TOP 1 'A' FROM EXCHANGE_CUSTOMERSETUP WHERE idNumber = @IDNUMBER AND idType = @IDTYPE) begin EXEC proc_errorHandler '1','ID Number is already added.',null RETURN; END INSERT INTO EXCHANGE_CUSTOMERSETUP (cName,cAddress,gender,nativCountry,idType,idNumber,dob,postalCode,contact,email,cType,occupation,branchId,createdBy ,createdDate,approvedBy,approvedDate) SELECT @CNAME,@CADDRESS,@GENDER,@nativCountry,@IDTYPE, @IDNUMBER,@DOB,@POSTALCODE,@CONTACT,@EMAIL,@CTYPE,@OCCUPATION,@BRANCHID,@USER ,GETDATE(),CASE WHEN @CTYPE = '276' THEN @USER ELSE NULL END,CASE WHEN @CTYPE = '276' THEN GETDATE() ELSE NULL END EXEC proc_errorHandler '0','Record added successfully!',null RETURN; END ELSE IF @FLAG = 'U' BEGIN IF EXISTS(SELECT TOP 1 'A' FROM EXCHANGE_CUSTOMERSETUP WHERE cid = @CID AND approvedDate IS NULL) BEGIN EXEC proc_errorHandler '1','Sorry,Record is waiting for Approval',null RETURN; END IF EXISTS(SELECT TOP 1 'A' FROM EXCHANGE_CUSTOMERSETUP WHERE idNumber = @IDNUMBER AND idType = @IDTYPE AND cid <> @CID) begin EXEC proc_errorHandler '1','ID Number is already added.',null RETURN; END UPDATE A SET acct_name = @CNAME from EXCHANGE_CUSTOMERSETUP C INNER join FastMoneyPro_Account.dbo.ac_master a on c.cid = a.acct_type_code and a.acct_rpt_code ='C' where cid = @CID AND branch_id = @BRANCHID UPDATE EXCHANGE_CUSTOMERSETUP SET
--CNAME = @CNAME, CADDRESS = @CADDRESS, GENDER = @GENDER, nativCountry= @nativCountry, --IDTYPE = @IDTYPE, --IDNUMBER = @IDNUMBER, --DOB = @DOB, POSTALCODE = @POSTALCODE, CONTACT = @CONTACT, EMAIL = @EMAIL, --CTYPE = @CTYPE, occupation = @OCCUPATION, modifyBy = @USER, modifyDate = GETDATE() --approvedDate= CASE WHEN @CTYPE = '726' THEN @USER ELSE NULL END, --approvedBy = CASE WHEN @CTYPE = '726' THEN GETDATE() ELSE NULL END WHERE CID = @CID EXEC proc_errorHandler '0','Record updated successfully!',@CID RETURN; END ELSE IF @FLAG = 'TXNC'-- UPDATE TXN CUSTOMERS
BEGIN UPDATE EXCHANGE_TRANSACTION_INFO SET customer_name = @CNAME, id_type = @IDTYPE, id_number = @IDNUMBER, Nationality = @nativCountry, contact = @CONTACT, party = @CTYPE WHERE tran_id = @CID UPDATE EXCHANGE_CUSTOMER SET ct_name = @CNAME, ct_address = @CADDRESS, ct_card_type = @IDTYPE, ct_card_no = @IDNUMBER, Nationality = @nativCountry, contact = @CONTACT, ct_dob = @DOB, modifyBy = @USER, modifyDate = GETDATE() WHERE tran_id = @CID SELECT '0' code, 'Record updated successfully!' msg RETURN; --ALTER TABLE Customer ADD midifyBy VARCHAR(50), modifyDate DATETIME
END ELSE IF @FLAG = 's'-->> CUSTOMER LIST FOR AGENT/BRANCH BEGIN DECLARE @table VARCHAR(MAX),@sql_filter VARCHAR(100),@select_field_list VARCHAR(MAX),@extra_field_list VARCHAR(10) IF @sortBy IS NULL SET @sortBy = 'cName' IF @sortOrder IS NULL SET @sortOrder = 'ASC' SET @table = '(SELECT b.branch_id,b.branch_name,c.cid,c.cName,c.caddress,c.nativCountry ncountry,i.ref_code idName,c.idNumber,c.dob,c.contact,C.CTYPE
,status = case when c.approvedDate is null THEN ''No'' ELSE ''Yes'' END,c.createdBy,c.createdDate FROM EXCHANGE_CUSTOMERSETUP C WITH(NOLOCK) LEFT JOIN branches B WITH(NOLOCK) ON c.branchId = B.branch_id LEFT JOIN StaticDataDetail cm ON c.country = cm.id AND cm.type_id = 1 LEFT JOIN StaticDataDetail i ON C.idtype = i.id LEFT JOIN AC_MASTER A ON c.cid = a.acct_type_code and a.acct_rpt_code =''C'' where 1=1 ) x'
SET @sql_filter = '' --IF @BRANCHID IS NOT NULL -- SET @sql_filter = @sql_filter +' AND branch_id = '''+@BRANCHID+''''
IF @CNAME IS NOT NULL SET @sql_filter = @sql_filter + ' AND cName like '''+@CNAME+'%''' IF @CTYPE IS NOT NULL SET @sql_filter = @sql_filter +' AND CTYPE = '''+CAST(@CTYPE AS VARCHAR)+'''' IF @HASCHANGED IS NOT NULL SET @sql_filter = @sql_filter + ' AND status = '''+@HASCHANGED+'''' IF @BRANCHID IS NOT NULL SET @sql_filter = @sql_filter + ' AND branch_id = '''+@BRANCHID+'''' SET @select_field_list ='
cid ,branch_name ,cName ,caddress ,ncountry ,idName ,idNumber ,dob ,contact ,status ,CTYPE ,createdBy ,createdDate'
EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber END ELSE IF @FLAG = 'ApproveList'-->> UNAPPROVE CUSTOMER LIST BEGIN IF @sortBy IS NULL SET @sortBy = 'cName' IF @sortOrder IS NULL SET @sortOrder = 'ASC' SET @table = '(SELECT b.agentId,c.cid,c.cName,c.caddress,sd.type_id ncountry,sd.ref_desc idName,c.idNumber,c.dob,c.contact,C.CTYPE
,c.createdBy,c.createdDate,b.agentName as branch_name FROM EXCHANGE_CUSTOMERSETUP C WITH(NOLOCK) inner JOIN agentmaster B WITH(NOLOCK) ON B.agentId = c.branchId LEFT JOIN FastMoneyPro_Account.dbo.staticdatadetail (NOLOCK) sd ON sd.id=c.idType --LEFT JOIN StaticDataDetail cm ON c.country = cm.id AND cm.type_id = 1 --LEFT JOIN StaticDataDetail i ON C.idtype = i.id --LEFT JOIN AC_MASTER A ON c.cid = a.acct_type_code and a.acct_rpt_code =''C'' where 1=1 AND c.approvedDate IS NULL ) x'
SET @sql_filter = '' IF @CNAME IS NOT NULL SET @sql_filter = @sql_filter + ' AND cName = '''+@CNAME+'''' IF @CTYPE IS NOT NULL SET @sql_filter = @sql_filter +' AND CTYPE = '''+CAST(@CTYPE AS VARCHAR)+'''' IF @DOB IS NOT NULL SET @sql_filter= @sql_filter +' AND CAST(createdDate AS DATE)='''+CAST(@DOB AS VARCHAR)+'''' IF @BRANCHID IS NOT NULL SET @sql_filter = @sql_filter + ' AND agentId = '''+@BRANCHID+'''' SET @select_field_list ='
cid ,cName ,caddress ,ncountry ,idName ,idNumber ,dob ,contact ,CTYPE ,createdBy ,createdDate ,branch_name'
EXEC dbo.proc_paging @table ,@sql_filter ,@select_field_list ,@extra_field_list ,@sortBy ,@sortOrder ,@pageSize ,@pageNumber END ELSE IF @FLAG = 'approve' BEGIN UPDATE EXCHANGE_CUSTOMERSETUP SET approvedBy = @USER, approvedDate = GETDATE() WHERE cid = @CID UPDATE EXCHANGE_CUSTOMERDOCUMENT SET approvedBy = @USER, approvedDate = GETDATE() WHERE cId = @CID EXEC proc_errorHandler '0','Record Approved successfully!',null RETURN END ELSE IF @FLAG = 'D' BEGIN DELETE FROM dbo.EXCHANGE_CUSTOMERSETUP WHERE branchId = @BRANCHID AND CID = @CID EXEC proc_errorHandler '0','Record deleted successfully!',null END ELSE IF @FLAG = 'sById' -->> SELECT BY ID BEGIN SELECT cName,cAddress,gender,idNumber,cType,idType,nativCountry,contact,dob,occupation,email,postalCode ,approvedBy = CASE WHEN @BRANCHID = branchId THEN approvedBy ELSE 'system' END FROM EXCHANGE_CUSTOMERSETUP WHERE cid = @CID END ----## DOCUMENT UPLOAD
ELSE IF @FLAG = 'docUpl' -- DOCUMENT UPLOAD
BEGIN SELECT @CTYPE = cType FROM EXCHANGE_CUSTOMERSETUP WHERE cid = @CID SELECT @CNAME = CAST(ISNULL(MAX(cdId),0) AS VARCHAR)+'_'+ @CNAME FROM CustomerDocument IF @CNAME IS NOT NULL BEGIN INSERT INTO EXCHANGE_CUSTOMERDOCUMENT(cid,fileName,fileDescription,fileType,createdBy,createdDate,branchId,approvedBy,approvedDate) SELECT @CID,@CNAME,@CADDRESS,RIGHT(@CNAME,LEN(@CNAME)-CHARINDEX('.',@CNAME)),@USER,GETDATE(),@BRANCHID ,CASE WHEN @CTYPE ='276' THEN @USER ELSE NULL END,CASE WHEN @CTYPE ='276' THEN GETDATE() ELSE NULL END EXEC proc_errorHandler '0','Document uploaded successfully!',@CNAME END ELSE EXEC proc_errorHandler '1','Filename is missing',@CNAME END ELSE IF @FLAG = 'AdocUpl' --## SELECT DOCUMENT
BEGIN SELECT * FROM EXCHANGE_CUSTOMERDOCUMENT WITH(NOLOCK) WHERE cid = @CID AND ISNULL(isDeleted,'N') ='N' END ELSE IF @FLAG = 'DdocUpl' BEGIN SELECT @CNAME = fileName FROM EXCHANGE_CUSTOMERDOCUMENT where cdId = @CID UPDATE customerDocument SET isDeleted ='Y' where cdId = @CID EXEC proc_errorHandler '0','Document uploaded successfully!',@CNAME END ELSE IF @FLAG = 'txnDoc' --## SELECT TRANSACTION DOCUMENT
BEGIN SELECT fileName,fileDescription,fileType, 'system' approvedBy FROM EXCHANGE_TRANSACTIONDOCUMENT WITH(NOLOCK) WHERE tranId = @CID RETURN END --## TEMP DOCUMENT UPLOAD
ELSE IF @FLAG = 'TempdocUpl' -- DOCUMENT UPLOAD
BEGIN SELECT @CNAME = CAST(ISNULL(MAX(cdId),0) AS VARCHAR)+'_'+ @CNAME FROM CustomerDocument IF @CNAME IS NOT NULL BEGIN INSERT INTO EXCHANGE_TEMPCUSTOMERDOCUMENT(docName,docDesc,docType,createdBy,createdDate,branchId,sessionId,docFor) SELECT @CNAME,@CADDRESS,RIGHT(@CNAME,3),@USER,GETDATE(),@BRANCHID,@sessionId,@docFor EXEC proc_errorHandler '0','Document uploaded successfully!',@CNAME END ELSE EXEC proc_errorHandler '1','Filename is missing',@CNAME END ELSE IF @FLAG = 'TempAdocUpl' --## SELECT DOCUMENT
BEGIN SELECT * FROM EXCHANGE_TEMPCUSTOMERDOCUMENT WITH(NOLOCK) WHERE sessionId = @sessionId AND branchId = @BRANCHID AND ISNULL(docFor,'C') = @docFor END ELSE IF @FLAG = 'TempDdocUpl' --Delete temp doc BEGIN SELECT @CNAME = docName FROM EXCHANGE_TEMPCUSTOMERDOCUMENT where cId = @CID DELETE FROM EXCHANGE_TEMPCUSTOMERDOCUMENT where cId = @CID EXEC proc_errorHandler '0','Document uploaded successfully!',@CNAME END
GO
|