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.

411 lines
24 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_schoolMaster] Script Date: 9/27/2019 1:30:14 PM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. CREATE proc [dbo].[proc_schoolMaster]
  9. @flag VARCHAR(50) = NULL
  10. ,@user VARCHAR(30) = NULL
  11. ,@rowId INT = NULL
  12. ,@schoolId INT = NULL
  13. ,@name VARCHAR(200) = NULL
  14. ,@levelId INT = NULL
  15. ,@levelName VARCHAR(200) = NULL
  16. ,@address VARCHAR(max) = NULL
  17. ,@contactNo VARCHAR(10) = NULL
  18. ,@faxNo VARCHAR(100) = NULL
  19. ,@contactPerson VARCHAR(200) = NULL
  20. ,@country VARCHAR(100) = NULL
  21. ,@zone VARCHAR(100) = NULL
  22. ,@district VARCHAR(100) = NULL
  23. ,@agentId INT = NULL
  24. ,@bankId INT = NULL
  25. ,@bankBranchId INT = NULL
  26. ,@accountNo VARCHAR(50) = NULL
  27. ,@agentName VARCHAR(200) = NULL
  28. ,@feeTypeId INT = NULL
  29. ,@isMaintainYrSem VARCHAR(1) = NULL
  30. ,@accountName VARCHAR(200) = NULL
  31. ,@tranId VARCHAR(50) = NULL
  32. ,@sortBy VARCHAR(50) = NULL
  33. ,@sortOrder VARCHAR(5) = NULL
  34. ,@pageSize INT = NULL
  35. ,@pageNumber INT = NULL
  36. AS
  37. SET NOCOUNT ON
  38. SET XACT_ABORT ON
  39. BEGIN TRY
  40. CREATE TABLE #msg(errorCode INT, msg VARCHAR(100), id INT)
  41. DECLARE
  42. @sql VARCHAR(MAX)
  43. ,@oldValue VARCHAR(MAX)
  44. ,@newValue VARCHAR(MAX)
  45. ,@module VARCHAR(10)
  46. ,@tableAlias VARCHAR(100)
  47. ,@logIdentifier VARCHAR(50)
  48. ,@logParamMod VARCHAR(100)
  49. ,@logParamMain VARCHAR(100)
  50. ,@table VARCHAR(MAX)
  51. ,@select_field_list VARCHAR(MAX)
  52. ,@extra_field_list VARCHAR(MAX)
  53. ,@sql_filter VARCHAR(MAX)
  54. ,@modType VARCHAR(6)
  55. SELECT
  56. @logIdentifier = 'rowId'
  57. ,@logParamMain = 'schoolMaster'
  58. ,@logParamMod = 'schoolMaster'
  59. ,@module = '40'
  60. ,@tableAlias = 'School Master'
  61. IF @flag='ss'-->> Select School
  62. BEGIN
  63. SELECT rowId,name+' -'+address name FROM schoolMaster sm WITH(NOLOCK) inner join agentMaster am with(nolock) on sm.agentId = am.agentId
  64. WHERE isnull(sm.isDeleted,'N') = 'N' and isnull(sm.isActive,'Y') = 'Y'
  65. and isnull(am.isActive,'Y') = 'Y'
  66. Order by name
  67. END
  68. IF @flag='sl'-->> Select Level/Program accroding to schoolId
  69. BEGIN
  70. SELECT rowid,name FROM schoolLevel WITH(NOLOCK)
  71. WHERE schoolId=@schoolId AND isDeleted IS NULL
  72. END
  73. IF @flag='s2'-->> Select Level/Program accroding to agentId of School
  74. BEGIN
  75. select @schoolId=rowId from schoolMaster with(nolock) where agentId=@agentId
  76. SELECT rowid,name FROM schoolLevel WITH(NOLOCK)
  77. WHERE schoolId=@schoolId AND isDeleted IS NULL
  78. END
  79. IF @flag='s3'-->> Select school/college agent
  80. BEGIN
  81. select agentId, agentName
  82. from agentMaster with(nolock)
  83. where parentId = '5576'
  84. AND ISNULL(isDeleted, 'N') = 'N'
  85. AND ISNULL(isActive, 'N') = 'Y'
  86. Order by agentName
  87. END
  88. IF @flag='sf'-->> Select fee type accroding to schoolId & Level/Program
  89. BEGIN
  90. SELECT rowid,feeType name FROM schoolFee WITH(NOLOCK)
  91. WHERE schoolId=@schoolId AND levelId=@levelId AND isDeleted IS NULL
  92. END
  93. IF @flag='sta'-->> Select transfer amount (fee amount)
  94. BEGIN
  95. SELECT dbo.ShowDecimalExceptComma(ISNULL(amount,0)) amount FROM schoolFee WITH(NOLOCK)
  96. WHERE schoolId=@schoolId AND levelId=@levelId
  97. AND isDeleted IS NULL and rowid=@feeTypeId
  98. END
  99. IF @flag = 'i'
  100. BEGIN
  101. BEGIN TRANSACTION
  102. --select * from schoolMaster
  103. --ALTER TABLE schoolMaster ADD isMaintainYrSem VARCHAR(1)
  104. INSERT INTO schoolMaster (
  105. name
  106. ,address
  107. ,contactNo
  108. ,faxNo
  109. ,contactPerson
  110. ,country
  111. ,zone
  112. ,district
  113. ,agentId
  114. ,bankId
  115. ,bankBranchId
  116. ,accountNo
  117. ,createdDate
  118. ,createdBy
  119. ,isMaintainYrSem
  120. ,accountName
  121. )
  122. SELECT
  123. @name
  124. ,@address
  125. ,@contactNo
  126. ,@faxNo
  127. ,@contactPerson
  128. ,@country
  129. ,@zone
  130. ,@district
  131. ,@agentId
  132. ,@bankId
  133. ,@bankBranchId
  134. ,@accountNo
  135. ,GETDATE()
  136. ,@user
  137. ,@isMaintainYrSem
  138. ,@accountName
  139. SET @modType = 'Insert'
  140. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @rowId , @newValue OUTPUT
  141. INSERT INTO #msg(errorCode, msg, id)
  142. EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @rowId, @user, @oldValue, @newValue
  143. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  144. BEGIN
  145. IF @@TRANCOUNT > 0
  146. ROLLBACK TRANSACTION
  147. EXEC proc_errorHandler 1, 'Failed to add new record.', @rowId
  148. RETURN
  149. END
  150. IF @@TRANCOUNT > 0
  151. COMMIT TRANSACTION
  152. EXEC proc_errorHandler 0, 'Record has been added successfully.', @rowId
  153. END
  154. ELSE IF @flag = 'a'
  155. BEGIN
  156. SELECT a.*,b.agentName agentName
  157. from schoolMaster a with(nolock) inner join agentMaster b with(nolock)
  158. on a.agentId=b.agentId
  159. where rowId=@rowId
  160. END
  161. ELSE IF @flag = 'u'
  162. BEGIN
  163. BEGIN TRANSACTION
  164. UPDATE schoolMaster SET
  165. name = @name
  166. ,address = @address
  167. ,contactNo = @contactNo
  168. ,faxNo = @faxNo
  169. ,contactPerson = @contactPerson
  170. ,country = @country
  171. ,zone = @zone
  172. ,district = @district
  173. ,agentId = @agentId
  174. ,bankId = @bankId
  175. ,bankBranchId = @bankBranchId
  176. ,accountNo = @accountNo
  177. ,modifiedBy = @user
  178. ,modifiedDate = GETDATE()
  179. ,isMaintainYrSem= @isMaintainYrSem
  180. ,accountName = @accountName
  181. WHERE rowId = @rowId
  182. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @rowId, @newValue OUTPUT
  183. INSERT INTO #msg(errorCode, msg, id)
  184. EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @rowId, @user, @oldValue, @newValue
  185. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  186. BEGIN
  187. IF @@TRANCOUNT > 0
  188. ROLLBACK TRANSACTION
  189. EXEC proc_errorHandler 1, 'Failed to update record.', @rowId
  190. RETURN
  191. END
  192. IF @@TRANCOUNT > 0
  193. COMMIT TRANSACTION
  194. EXEC proc_errorHandler 0, 'Record updated successfully.', @rowId
  195. END
  196. ELSE IF @flag = 'd'
  197. BEGIN
  198. BEGIN TRANSACTION
  199. UPDATE schoolMaster SET
  200. isDeleted = 'Y'
  201. ,modifiedDate = GETDATE()
  202. ,modifiedBy = @user
  203. WHERE rowId = @rowId
  204. SET @modType = 'Delete'
  205. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @rowId, @oldValue OUTPUT
  206. INSERT INTO #msg(errorCode, msg, id)
  207. EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @rowId, @user, @oldValue, @newValue
  208. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  209. BEGIN
  210. IF @@TRANCOUNT > 0
  211. ROLLBACK TRANSACTION
  212. EXEC proc_errorHandler 1, 'Failed to delete record.', @rowId
  213. RETURN
  214. END
  215. IF @@TRANCOUNT > 0
  216. COMMIT TRANSACTION
  217. EXEC proc_errorHandler 0, 'Record deleted successfully.', @rowId
  218. END
  219. ELSE IF @flag = 's'
  220. BEGIN
  221. IF @sortBy IS NULL
  222. SET @sortBy = 'rowId'
  223. IF @sortOrder IS NULL
  224. SET @sortOrder = 'ASC'
  225. SET @table = '(
  226. SELECT
  227. main.rowId
  228. ,agMas.agentName
  229. ,main.name
  230. ,main.address
  231. ,main.contactNo
  232. ,main.faxNo
  233. ,main.contactPerson
  234. ,main.country
  235. ,main.zone
  236. ,main.district
  237. ,main.createdDate
  238. ,main.createdBy
  239. FROM schoolMaster main WITH(NOLOCK) inner join agentMaster agMas with(nolock) on main.agentId=agMas.agentId
  240. WHERE ISNULL(main.isDeleted, '''')<>''Y''
  241. ) x'
  242. SET @sql_filter = ''
  243. IF @name IS NOT NULL
  244. SET @sql_filter = @sql_filter + ' AND name like ''%' + @name + '%'''
  245. IF @agentName IS NOT NULL
  246. SET @sql_filter = @sql_filter + ' AND agentName like ''%' + @agentName + '%'''
  247. SET @select_field_list ='
  248. rowId
  249. ,agentName
  250. ,name
  251. ,address
  252. ,contactNo
  253. ,faxNo
  254. ,contactPerson
  255. ,country
  256. ,zone
  257. ,district
  258. ,createdDate
  259. ,createdBy
  260. '
  261. EXEC dbo.proc_paging
  262. @table
  263. ,@sql_filter
  264. ,@select_field_list
  265. ,@extra_field_list
  266. ,@sortBy
  267. ,@sortOrder
  268. ,@pageSize
  269. ,@pageNumber
  270. END
  271. IF @FLAG='Li'
  272. BEGIN
  273. --SELECT * FROM schoolLevel
  274. IF EXISTS(SELECT 'A' FROM schoolLevel
  275. WHERE schoolId=@schoolId and name = @levelName and levelId=@levelId
  276. AND isnull(isDeleted,'N')='N')
  277. BEGIN
  278. EXEC proc_errorHandler 1, 'ALREADY ADDED!', @rowId
  279. RETURN;
  280. END
  281. BEGIN TRANSACTION
  282. INSERT INTO schoolLevel (
  283. name
  284. ,levelId
  285. ,schoolId
  286. ,createdDate
  287. ,createdBy
  288. )
  289. SELECT
  290. @levelName
  291. ,@levelId
  292. ,@schoolId
  293. ,GETDATE()
  294. ,@user
  295. SET @modType = 'Insert'
  296. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @rowId , @newValue OUTPUT
  297. INSERT INTO #msg(errorCode, msg, id)
  298. EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @rowId, @user, @oldValue, @newValue
  299. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  300. BEGIN
  301. IF @@TRANCOUNT > 0
  302. ROLLBACK TRANSACTION
  303. EXEC proc_errorHandler 1, 'Failed to add new record.', @rowId
  304. RETURN
  305. END
  306. IF @@TRANCOUNT > 0
  307. COMMIT TRANSACTION
  308. EXEC proc_errorHandler 0, 'Record has been added successfully.', @rowId
  309. END
  310. IF @FLAG='Ls'
  311. BEGIN
  312. SELECT * FROM schoolLevel with(nolock) WHERE schoolId=@schoolId AND isDeleted is null
  313. END
  314. IF @FLAG='Ld'
  315. BEGIN
  316. BEGIN TRANSACTION
  317. UPDATE schoolLevel SET
  318. isDeleted = 'Y'
  319. ,modifiedDate = GETDATE()
  320. ,modifiedBy = @user
  321. WHERE rowId = @rowId
  322. SET @modType = 'Delete'
  323. EXEC [dbo].proc_GetColumnToRow @logParamMain, @logIdentifier, @rowId, @oldValue OUTPUT
  324. INSERT INTO #msg(errorCode, msg, id)
  325. EXEC proc_applicationLogs 'i', NULL, @modType, @tableAlias, @rowId, @user, @oldValue, @newValue
  326. IF EXISTS (SELECT 'x' FROM #msg WHERE errorCode <> '0')
  327. BEGIN
  328. IF @@TRANCOUNT > 0
  329. ROLLBACK TRANSACTION
  330. EXEC proc_errorHandler 1, 'Failed to delete record.', @rowId
  331. RETURN
  332. END
  333. IF @@TRANCOUNT > 0
  334. COMMIT TRANSACTION
  335. EXEC proc_errorHandler 0, 'Record deleted successfully.', @rowId
  336. END
  337. IF @FLAG = 'yrSem'
  338. BEGIN
  339. SELECT ISNULL(isMaintainYrSem,'N') FROM SCHOOLMASTER WITH(NOLOCK) WHERE ROWID=@schoolId
  340. END
  341. IF @flag='msl'
  342. BEGIN
  343. select @schoolId = stdCollegeId from tranReceivers with(nolock) where tranId = @tranId
  344. SELECT rowid,name FROM schoolLevel WITH(NOLOCK)
  345. WHERE schoolId=@schoolId AND isDeleted IS NULL
  346. END
  347. IF @flag='msl'
  348. BEGIN
  349. select @schoolId = stdCollegeId from tranReceivers with(nolock) where tranId = @tranId
  350. SELECT rowid,name FROM schoolLevel WITH(NOLOCK)
  351. WHERE schoolId=@schoolId AND isDeleted IS NULL
  352. END
  353. IF @flag='msf'-->> Select fee type accroding to schoolId & Level/Program
  354. BEGIN
  355. select @schoolId = stdCollegeId,@levelId = stdLevel from tranReceivers with(nolock) where tranId = @tranId
  356. SELECT rowid,feeType name FROM schoolFee WITH(NOLOCK)
  357. WHERE schoolId=@schoolId AND levelId=@levelId AND isDeleted IS NULL
  358. END
  359. IF @FLAG = 'mYrSem'
  360. BEGIN
  361. select @schoolId = stdCollegeId from tranReceivers with(nolock) where tranId = @tranId
  362. if (SELECT ISNULL(isMaintainYrSem,'N') FROM SCHOOLMASTER WITH(NOLOCK) WHERE ROWID=@schoolId) = 'Y'
  363. select valueId rowid,detailTitle name from staticDataValue with(nolock) where typeId=7600 and isnull(isActive,'Y')='Y' and isnull(is_delete,'N')='N'
  364. else
  365. select valueId rowid, detailTitle name from staticDataValue with(nolock) where 1=2
  366. END
  367. END TRY
  368. BEGIN CATCH
  369. IF @@TRANCOUNT > 0
  370. ROLLBACK TRANSACTION
  371. DECLARE @errorMessage VARCHAR(MAX)
  372. SET @errorMessage = ERROR_MESSAGE()
  373. EXEC proc_errorHandler 1, @errorMessage, @rowId
  374. END CATCH
  375. GO