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.

360 lines
16 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. --EXEC proc_jme_agent_system_customer @Flag ='register-customer-and-receiver' ,@customerId =null,@user = 'shikshya',@customerType = null,@firstName='cfirst',@middleName='cmiddle',@lastName1='clast',@custEmail='cemail@gmail.com',@custDOB='1995-05-02',@custAdd1=null,@occupation='11267',@custCity='SHINJUKU KU - 新宿区',@cityUnicode=null,@streetUnicode=null,@custPostal=null,@street='794908',@state='10346',@visaStatus='11021',@employeeBusinessType='11008',@nameofEmployeer='cnameofemp',@SSNNO='cssnno',@zipCode='1690074',@sourceOfFound='8075',@remittanceAllowed=True,@onlineUser=True,@remarks='cremarks',@country='113',@custNativecountry='104',@customerIdType='10997',@customerIdNo='hhhhhhh2222',@custIdissueDate='2020-01-02',@custIdValidDate='2021-05-02',@custMobile='+811111111111',@custTelNo='1111111111',@ipAddress=null,@createdBy='shikshya',@custGender='98',@bankId=null,@accountNumber=null,@nameOfAuthorizedPerson=null,@registerationNo=null,@organizationType=null,@dateOfIncorporation=null,@natureOfCompany=null,@position=null,@membershipId=null,@companyName=null,@monthlyIncome='JPY170,000 - JPY340,000',@isCounterVisited='Y',@newPassword=null,@additionalAddress='cadditionaladdress',@loginBranchId='0',@docType='11054',@recCountry ='104',@recNativeCountry ='174',@recReceiverType ='4700',@recEmail ='remail@gmail.com',@recFirstName ='RFIRST',@recMiddleName ='RMIDDLE',@recLastName1 ='RLAST',@recLastName2 =null,@recAddress ='raddress',@recCity ='rcity',@recHomePhone ='222222222',@recMobile ='+912222222222',@recRelationship ='11304',@recPlaceOfIssue ='ckathmandu',@recIdType ='10997',@recIdNumber ='2222222222',@recPurposeOfRemit ='8060',@recPaymentMode ='2',@recPayOutPartner ='1499',@recBankLocation ='441335',@recBankName =null,@recReceiverAccountNo ='2222222222222',@recRemarks ='rremarks',@recOtherRelationDesc ='11304'
  2. alter PROC [dbo].[proc_jme_agent_system_customer]
  3. @flag VARCHAR(50) = NULL,
  4. @user VARCHAR(30) = NULL,
  5. @customerId VARCHAR(30) = NULL,
  6. @fullName NVARCHAR(200) = NULL,
  7. @passportNo VARCHAR(30) = NULL,
  8. @mobile VARCHAR(15) = NULL,
  9. @firstName VARCHAR(100) = NULL,
  10. @middleName VARCHAR(100) = NULL,
  11. @lastName1 VARCHAR(100) = NULL,
  12. @lastName2 VARCHAR(100) = NULL,
  13. @customerIdType VARCHAR(30) = NULL,
  14. @customerIdNo VARCHAR(50) = NULL,
  15. @custIdissueDate VARCHAR(30) = NULL,
  16. @custIdValidDate VARCHAR(30) = NULL,
  17. @custDOB VARCHAR(30) = NULL,
  18. @custTelNo VARCHAR(30) = NULL,
  19. @custMobile VARCHAR(30) = NULL,
  20. @custCity VARCHAR(100) = NULL,
  21. @custPostal VARCHAR(30) = NULL,
  22. @companyName VARCHAR(100) = NULL,
  23. @custAdd1 VARCHAR(100) = NULL,
  24. @custAdd2 VARCHAR(100) = NULL,
  25. @country VARCHAR(30) = NULL,
  26. @custNativecountry VARCHAR(30) = NULL,
  27. @custEmail VARCHAR(50) = NULL,
  28. @custGender VARCHAR(30) = NULL,
  29. @custSalary VARCHAR(30) = NULL,
  30. @memberId VARCHAR(30) = NULL,
  31. @occupation VARCHAR(30) = NULL,
  32. @state VARCHAR(30) = NULL,
  33. @zipCode VARCHAR(30) = NULL,
  34. @district VARCHAR(30) = NULL,
  35. @homePhone VARCHAR(30) = NULL,
  36. @workPhone VARCHAR(30) = NULL,
  37. @placeOfIssue VARCHAR(30) = NULL,
  38. @customerType VARCHAR(30) = NULL,
  39. @isBlackListed VARCHAR(30) = NULL,
  40. @relativeName VARCHAR(30) = NULL,
  41. @relationId VARCHAR(30) = NULL,
  42. @lastTranId VARCHAR(30) = NULL,
  43. @receiverName VARCHAR(100) = NULL,
  44. @tranId VARCHAR(20) = NULL,
  45. @ICN VARCHAR(50) = NULL,
  46. @bank VARCHAR(100) = NULL,
  47. @bankId VARCHAR(100) = NULL,
  48. @accountNumber VARCHAR(100) = NULL,
  49. @mapCodeInt VARCHAR(10) = NULL,
  50. @sortBy VARCHAR(50) = NULL,
  51. @sortOrder VARCHAR(5) = NULL,
  52. @pageSize INT = NULL,
  53. @pageNumber INT = NULL,
  54. @HasDeclare INT = NULL,
  55. @agent VARCHAR(50) = NULL,
  56. @branch VARCHAR(50) = NULL,
  57. @branchId VARCHAR(50) = NULL,
  58. @onlineUser VARCHAR(50) = NULL,
  59. @ipAddress VARCHAR(30) = NULL,
  60. @howDidYouHear VARCHAR(200) = NULL,
  61. @ansText VARCHAR(200) = NULL,
  62. @isActive CHAR(1) = NULL,
  63. @email VARCHAR(150) = NULL,
  64. @searchCriteria VARCHAR(30) = NULL,
  65. @searchValue VARCHAR(50) = NULL,
  66. @newPassword VARCHAR(20) = NULL,
  67. @createdDate DATETIME = NULL,
  68. @createdBy VARCHAR(50) = NULL,
  69. @verifyDoc1 VARCHAR(255) = NULL,
  70. @verifyDoc2 VARCHAR(255) = NULL,
  71. @verifyDoc3 VARCHAR(255) = NULL,
  72. @verifyDoc4 VARCHAR(255) = NULL,
  73. @membershipId VARCHAR(50) = NULL,
  74. @sourceOfFound VARCHAR(100) = NULL,
  75. @street VARCHAR(80) = NULL,
  76. @streetUnicode NVARCHAR(100) = NULL,
  77. @cityUnicode NVARCHAR(100) = NULL,
  78. @visaStatus INT = NULL,
  79. @employeeBusinessType INT = NULL,
  80. @nameOfEmployeer VARCHAR(80) = NULL,
  81. @SSNNO VARCHAR(20) = NULL,
  82. @remittanceAllowed BIT = NULL,
  83. @remarks VARCHAR(1000) = NULL,
  84. @registerationNo VARCHAR(30) = NULL,
  85. @organizationType INT = NULL,
  86. @dateofIncorporation DATETIME = NULL,
  87. @natureOfCompany INT = NULL,
  88. @position INT = NULL,
  89. @nameOfAuthorizedPerson VARCHAR(80) = NULL,
  90. @fromDate NVARCHAR(20) = NULL,
  91. @toDate NVARCHAR(20) = NULL,
  92. @monthlyIncome VARCHAR(50) = NULL,
  93. @isCounterVisited CHAR(1) = NULL,
  94. @additionalAddress VARCHAR(50) = NULL,
  95. @loginBranchId BIGINT = NULL,
  96. @rowid BIGINT = NULL,
  97. @docType INT = NULL,
  98. @otherOccupationText VARCHAR(50) = NULL,
  99. --for receiverData
  100. @recFirstName VARCHAR(100) = NULL,
  101. @recMiddleName VARCHAR(100) = NULL,
  102. @recLastName1 VARCHAR(100) = NULL,
  103. @recLastName2 VARCHAR(100) = NULL,
  104. @recCountry VARCHAR(200) = NULL,
  105. @recNativeCountry VARCHAR(200) = NULL,
  106. @recAddress VARCHAR(500) = NULL,
  107. @recState VARCHAR(200) = NULL,
  108. @recZipCode VARCHAR(50) = NULL,
  109. @recCity VARCHAR(100) = NULL,
  110. @recEmail VARCHAR(150) = NULL,
  111. @recHomePhone VARCHAR(100) = NULL,
  112. @recWorkPhone VARCHAR(100) = NULL,
  113. @recMobile VARCHAR(100) = NULL,
  114. @recRelationship VARCHAR(100) = NULL,
  115. @recSortBy VARCHAR(50) = NULL,
  116. @recSortOrder VARCHAR(5) = NULL,
  117. @recReceiverType INT = NULL,
  118. @recIdType INT = NULL,
  119. @recIdNumber VARCHAR(25) = NULL,
  120. @recPlaceOfIssue VARCHAR(80) = NULL,
  121. @recPaymentMode INT = NULL,
  122. @recBankLocation VARCHAR(100) = NULL,
  123. @recPayOutPartner INT = NULL,
  124. @recBankName VARCHAR(150) = NULL,
  125. @recReceiverAccountNo VARCHAR(40) = NULL,
  126. @recRemarks NVARCHAR(800) = NULL,
  127. @recPurposeOfRemit VARCHAR(100) = NULL,
  128. @purposeOfRemitanceOther VARCHAR(100) = NULL,
  129. @recFromDate NVARCHAR(20) = NULL,
  130. @recToDate NVARCHAR(20) = NULL,
  131. @recOtherRelationDesc VARCHAR(20) = NULL,
  132. @receiverId VARCHAR(50) = NULL
  133. AS
  134. SET NOCOUNT ON;
  135. SET XACT_ABORT ON;
  136. BEGIN TRY
  137. --BEGIN NECESSARY STEPS FOR CUSTOMER REGISTER
  138. IF @sortBy = 'SN'
  139. SET @sortBy = NULL;
  140. SELECT @homePhone = @customerIdNo ,
  141. @accountNumber = REPLACE(@accountNumber, '-', '');
  142. IF ISNUMERIC(@country) <> '1'
  143. SET @country = ( SELECT TOP 1
  144. countryId
  145. FROM countryMaster WITH ( NOLOCK )
  146. WHERE countryName = @country
  147. );
  148. CREATE TABLE #msg
  149. (
  150. errorCode INT ,
  151. msg VARCHAR(100) ,
  152. id INT
  153. );
  154. DECLARE @sql VARCHAR(MAX) ,
  155. @oldValue VARCHAR(MAX) ,
  156. @newValue VARCHAR(MAX) ,
  157. @module VARCHAR(10) ,
  158. @tableAlias VARCHAR(100) ,
  159. @logIdentifier VARCHAR(50) ,
  160. @logParamMod VARCHAR(100) ,
  161. @logParamMain VARCHAR(100) ,
  162. @table VARCHAR(MAX) ,
  163. @select_field_list VARCHAR(MAX) ,
  164. @extra_field_list VARCHAR(MAX) ,
  165. @sql_filter VARCHAR(MAX) ,
  166. @modType VARCHAR(6) ,
  167. @errorMsg VARCHAR(MAX) ,
  168. @bankName VARCHAR(100);
  169. SELECT @logIdentifier = 'customerId' ,
  170. @logParamMain = 'customerMaster' ,
  171. @module = '20' ,
  172. @tableAlias = 'CustomerMaster';
  173. SET @fullName = UPPER(@fullName)
  174. SET @passportNo = UPPER(@passportNo)
  175. SET @firstName = UPPER(@firstName)
  176. SET @middleName = UPPER(@middleName)
  177. SET @lastName1 = UPPER(@lastName1)
  178. SET @lastName2 = UPPER(@lastName2)
  179. --BEGIN NECESSARY STEPS FOR CUSTOMER REGIST
  180. --BEGIN NECESSARY STEPS FOR RECEIVER DATA
  181. --,@customerId1 VARCHAR(50)
  182. DECLARE @PURPOSEID INT = NULL, @RELATION INT = NULL
  183. SELECT @PURPOSEID = valueId
  184. FROM STATICDATAVALUE (NOLOCK)
  185. WHERE detailTitle = @recPurposeOfRemit
  186. AND typeID = '3800'
  187. IF @PURPOSEID IS NULL
  188. SET @PURPOSEID = @recPurposeOfRemit
  189. SELECT @RELATION = valueId
  190. FROM STATICDATAVALUE (NOLOCK)
  191. WHERE detailTitle = @recRelationship
  192. AND typeID = '2100'
  193. IF @RELATION IS NULL
  194. SET @RELATION = @recRelationship
  195. --BEGIN NECESSARY STEPS FOR RECEIVER DATA
  196. IF @flag = 'register-customer-and-receiver'
  197. BEGIN
  198. SET @onlineUser = CASE WHEN @onlineUser='true'THEN 'Y' ELSE 'N' END
  199. DECLARE @OBP_ID INT = null
  200. --BEGIN CUSTOMER VALIDATION
  201. IF EXISTS (SELECT 'X' FROM customerMaster WITH (NOLOCK)WHERE email = @custEmail)
  202. BEGIN
  203. SELECT @errorMsg = 'Customer with email '+ @custEmail + ' already exist.';
  204. EXEC proc_errorHandler 1, @errorMsg, @customerId;
  205. RETURN;
  206. END;
  207. IF EXISTS ( SELECT 'X' FROM customerMaster WITH (NOLOCK)
  208. WHERE email = @custEmail
  209. AND ISNULL(onlineUser, 'N') = 'Y'
  210. AND ISNULL(isDeleted, 'N') = 'N' )
  211. BEGIN
  212. SELECT @errorMsg = 'Customer with email '+ @custEmail + ' already exist.';
  213. EXEC proc_errorHandler 1, @errorMsg, @customerId;
  214. RETURN;
  215. END;
  216. IF EXISTS ( SELECT 'x' FROM customerMaster (NOLOCK)
  217. WHERE REPLACE(idNumber, '-', '') = REPLACE(@customerIdNo,'-', '') )
  218. BEGIN
  219. SELECT @errorMsg = 'Customer with idnumber '+ @customerIdNo + ' already exist.';
  220. EXEC proc_errorHandler 1, @errorMsg, @customerId;
  221. RETURN;
  222. END;
  223. --END OF CUSTOMER VALIDATION
  224. --BEGIN OF CUSTOMER DATA PREPARATION
  225. DECLARE @newMobileNumber VARCHAR(20) = REPLACE(@custMobile, '+', '')
  226. SET @newMobileNumber = CASE WHEN @newMobileNumber LIKE '81%' THEN STUFF(@newMobileNumber, 1, 2, '') ELSE @newMobileNumber END
  227. SELECT @firstName = LTRIM(RTRIM(@firstName))
  228. ,@middleName = LTRIM(RTRIM(@middleName))
  229. ,@lastName1 = LTRIM(RTRIM(@lastName1))
  230. ,@fullName = ISNULL(@firstName, '')
  231. + ISNULL(' ' + @middleName, '')
  232. + ISNULL(' ' + @lastName1, '')
  233. + ISNULL(' ' + @lastName2, '')
  234. IF @newPassword IS NULL
  235. BEGIN
  236. SET @newPassword = RIGHT('0000000'
  237. + CAST(CHECKSUM(NEWID()) AS VARCHAR),
  238. 7);
  239. END
  240. IF @streetUnicode = 'Nnull'
  241. BEGIN
  242. SET @streetUnicode = NULL;
  243. END;
  244. IF @cityUnicode = 'Nnull'
  245. BEGIN
  246. SET @cityUnicode = NULL;
  247. END;
  248. IF @customerType = '4701'
  249. BEGIN
  250. SET @employeeBusinessType = NULL;
  251. END
  252. IF @customerType IS NULL
  253. BEGIN
  254. SET @customerType = '4700'
  255. END
  256. IF ISNULL(@street, '') IS NOT NULL
  257. BEGIN
  258. SET @district = @street
  259. SELECT @custCity = CITY_NAME, @street = STREET_NAME
  260. FROM TBL_JAPAN_ADDRESS_DETAIL(NOLOCK)
  261. WHERE ROW_ID = @district
  262. END
  263. --END OF CUSTOMER DATA PREPARATION
  264. BEGIN TRANSACTION;
  265. INSERT INTO customerMaster(
  266. firstName,middleName,lastName1,lastName2,country,[address],zipCode,district,city,email,homePhone,workPhone,mobile,
  267. nativeCountry,dob,placeOfIssue,occupation,isBlackListed,lastTranId,relationId,relativeName,gender,salaryRange,address2,
  268. fullName,
  269. createdBy,createdDate,postalCode,idIssueDate,idExpiryDate,idType,idNumber,telNo,agentId,branchId,onlineUser,
  270. ipAddress,customerPassword,customerType,isActive,verifiedBy,verifiedDate,isForcedPwdChange,bankName,bankAccountNo,HasDeclare,
  271. membershipId,[state],sourceOfFund,street,streetUnicode,cityUnicode,visaStatus,employeeBusinessType,nameOfEmployeer,SSNNO,
  272. remittanceAllowed,remarks,registerationNo,organizationType,dateofIncorporation,natureOfCompany,position
  273. ,nameOfAuthorizedPerson,monthlyIncome,OBPID,ADDITIONALADDRESS,documentType,occupationOther
  274. )
  275. VALUES (
  276. @firstName,@middleName,@lastName1,@lastName2,@country,@custAdd1,ISNULL(@zipCode, @custPostal),@district,@custCity,@custEmail,null,@workPhone,@custMobile,
  277. @custNativecountry,@custDOB,@placeOfIssue,@occupation,@isBlackListed,@lastTranId,@relationId,@relativeName,@custGender,@custSalary,@custAdd2,
  278. @fullName,
  279. @user,DATEADD(HH, 0, GETUTCDATE()),@custPostal,@custIdissueDate,@custIdValidDate,@customerIdType,@customerIdNo,@custTelNo,@loginBranchId,@branch,@onlineUser,
  280. @ipAddress,dbo.FNAEncryptString(@newPassword),@customerType,'Y',@user,NULL,'1',@bankId,@accountNumber,@HasDeclare,---- New Added Values
  281. @membershipId,@state,@sourceOfFound,@street,@streetUnicode,@cityUnicode,@visaStatus,@employeeBusinessType,@nameOfEmployeer,@SSNNO,
  282. @remittanceAllowed,@remarks,@registerationNo,@organizationType,@dateofIncorporation,@natureOfCompany,@position
  283. ,@nameOfAuthorizedPerson,@monthlyIncome,null,@additionalAddress,@docType,@otherOccupationText
  284. )
  285. SET @customerId = SCOPE_IDENTITY();
  286. EXEC PROC_GENERATE_MEMBERSHIP_ID @USER = @user,
  287. @CUSTOMERID = @customerId,@loginBranchId = @loginBranchId, @MEMBESHIP_ID = @membershipId OUT;
  288. UPDATE dbo.customerMaster
  289. SET membershipId = @membershipId
  290. WHERE customerId = @customerId;
  291. IF @isCounterVisited ='Y'
  292. BEGIN
  293. INSERT INTO dbo.TBL_CUSTOMER_KYC
  294. ( customerId,kycMethod,kycStatus,createdBy,createdDate,isDeleted
  295. )
  296. VALUES (
  297. @customerId,11048,11044,@user,GETDATE(),0
  298. )
  299. END
  300. INSERT INTO receiverInformation
  301. (fullname
  302. ,membershipId ,customerId ,firstName ,middleName ,lastName1 ,lastName2 ,country ,NativeCountry,[address] ,[state] ,zipCode ,city ,email ,
  303. homePhone ,workPhone ,mobile ,relationship ,receiverType ,idType ,idNumber ,placeOfIssue ,paymentMode ,bankLocation ,payOutPartner ,
  304. bankName ,receiverAccountNo ,remarks ,purposeOfRemit ,createdBy ,createdDate,otherRelationDesc,agentId,purposeOther
  305. )
  306. SELECT ISNULL(@firstName,'') + ISNULL(' ' + @middleName,'') +ISNULL(' ' + @lastName1,''),
  307. @membershipId ,@customerId ,@recFirstName ,@recMiddleName ,@recLastName1 ,@recLastName2 ,@recCountry ,@recNativeCountry,@recAddress ,@recState ,@recZipCode ,@recCity ,@recEmail ,
  308. @recHomePhone ,@recWorkPhone ,@recmobile ,@RELATION ,@recReceiverType ,@recIdType ,@recIdNumber ,@recPlaceOfIssue ,@recPaymentMode ,@recBankLocation ,@recPayOutPartner ,
  309. @recBankName ,@recReceiverAccountNo ,@recRemarks ,@PURPOSEID ,@user ,GETDATE(),@recOtherRelationDesc,@loginBranchId ,@purposeOfRemitanceOther
  310. SET @receiverId=SCOPE_IDENTITY();
  311. IF @@TRANCOUNT > 0
  312. COMMIT TRANSACTION;
  313. SELECT '0' ErrorCode ,
  314. 'Customer and receiver has been registered successfully with customer membershipId: '+CAST(@membershipId AS VARCHAR) + ' and with receiverId: ' + CAST(@receiverId AS VARCHAR) Msg ,
  315. cast(@customerId as varchar) +'|' + cast(@membershipId as varchar) + '|' + cast(cast(GETDATE() as date) as varchar) + '|' + cast(@receiverId as varchar) id;
  316. END
  317. END TRY
  318. BEGIN CATCH
  319. IF @@TRANCOUNT > 0
  320. ROLLBACK TRANSACTION;
  321. DECLARE @errorMessage VARCHAR(MAX);
  322. SET @errorMessage = ERROR_MESSAGE();
  323. EXEC proc_errorHandler 1, @errorMessage, @customerId;
  324. END CATCH;