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.

468 lines
20 KiB

  1. using System;
  2. using System.Data;
  3. using Swift.DAL.SwiftDAL;
  4. namespace Swift.DAL.BL.SwiftSystem
  5. {
  6. public class AgentDao : RemittanceDao
  7. {
  8. #region Agent
  9. public DbResult Update(string user
  10. , string agentId
  11. , string parentId
  12. , string agentName
  13. , string agentAddress
  14. , string agentCity
  15. , string agentCountryId
  16. , string agentCountry
  17. , string agentState
  18. , string agentDistrict
  19. //, string agentZip
  20. , string agentLocation
  21. , string agentPhone1
  22. , string agentPhone2
  23. , string agentFax1
  24. , string agentFax2
  25. , string agentMobile1
  26. , string agentMobile2
  27. , string agentEmail1
  28. , string agentEmail2
  29. , string bankBranch
  30. , string bankCode
  31. , string accNumber
  32. , string accHolderName
  33. , string businessOrgType
  34. , string businessType
  35. //, string agentRole
  36. , string agentType
  37. //, string allowAccountDeposit
  38. , string actAsBranch
  39. , string contractExpiryDate
  40. , string renewalFollowupDate
  41. , string isSettlingAgent
  42. , string agentGroup
  43. , string businessLicense
  44. , string agentBlock
  45. //, string agentCompanyName
  46. //, string companyAddress
  47. //, string companyCity
  48. //, string companyCountry
  49. //, string companyState
  50. //, string companyDistrict
  51. //, string companyZip
  52. //, string companyPhone1
  53. //, string companyPhone2
  54. //, string companyFax1
  55. //, string companyFax2
  56. //, string companyEmail1
  57. //, string companyEmail2
  58. //, string localTime
  59. , string agentDetails
  60. , string isActive
  61. , string headMessage
  62. //, string mapCodeInt
  63. , string mapCodeDom
  64. //, string commCodeInt
  65. , string partnerBankcode
  66. //, string mapCodeIntAc
  67. //, string mapCodeDomAc
  68. //, string payOption
  69. , string agentSettCurr
  70. , string contactPerson1
  71. , string contactPerson2
  72. , string isIntl
  73. , string isAPIPartner
  74. , string isHeadOffice,
  75. string barnchCode
  76. )
  77. {
  78. string sql = "EXEC proc_agentMaster";
  79. sql += " @flag = " + (agentId == "0" || agentId == "" ? "'i'" : "'u'");
  80. sql += ", @user = " + FilterString(user);
  81. sql += ", @agentId = " + FilterString(agentId);
  82. sql += ", @parentId = " + FilterString(parentId);
  83. sql += ", @agentName = N" + FilterString(agentName);
  84. sql += ", @agentAddress = " + FilterString(agentAddress);
  85. sql += ", @agentCity = " + FilterString(agentCity);
  86. sql += ", @agentCountryId = " + FilterString(agentCountryId);
  87. sql += ", @agentCountry = " + FilterString(agentCountry);
  88. sql += ", @agentState = " + FilterString(agentState);
  89. sql += ", @agentDistrict = " + FilterString(agentDistrict);
  90. //sql += ", @agentZip = " + FilterString(agentZip);
  91. sql += ", @agentLocation = " + FilterString(agentLocation);
  92. sql += ", @agentPhone1 = " + FilterString(agentPhone1);
  93. sql += ", @agentPhone2 = " + FilterString(agentPhone2);
  94. sql += ", @agentFax1 = " + FilterString(agentFax1);
  95. sql += ", @agentFax2 = " + FilterString(agentFax2);
  96. sql += ", @agentMobile1 = " + FilterString(agentMobile1);
  97. sql += ", @agentMobile2 = " + FilterString(agentMobile2);
  98. sql += ", @agentEmail1 = " + FilterString(agentEmail1);
  99. sql += ", @agentEmail2 = " + FilterString(agentEmail2);
  100. sql += ", @bankBranch = " + FilterString(bankBranch);
  101. sql += ", @bankCode = " + FilterString(bankCode);
  102. sql += ", @bankAccountNumber = " + FilterString(accNumber);
  103. sql += ", @accHolderName = " + FilterString(accHolderName);
  104. sql += ", @businessOrgType = " + FilterString(businessOrgType);
  105. sql += ", @businessType = " + FilterString(businessType);
  106. //sql += ", @agentRole = " + FilterString(agentRole);
  107. sql += ", @agentType = " + FilterString(agentType);
  108. //sql += ", @allowAccountDeposit = " + FilterString(allowAccountDeposit);
  109. sql += ", @actAsBranch = " + FilterString(actAsBranch);
  110. sql += ", @contractExpiryDate = " + FilterString(contractExpiryDate);
  111. sql += ", @renewalFollowupDate = " + FilterString(renewalFollowupDate);
  112. sql += ", @isSettlingAgent = " + FilterString(isSettlingAgent);
  113. sql += ", @agentGroup = " + FilterString(agentGroup);
  114. sql += ", @businessLicense = " + FilterString(businessLicense);
  115. sql += ", @agentBlock = " + FilterString(agentBlock);
  116. //sql += ", @agentCompanyName = " + FilterString(agentCompanyName);
  117. //sql += ", @companyAddress = " + FilterString(companyAddress);
  118. //sql += ", @companyCity = " + FilterString(companyCity);
  119. //sql += ", @companyCountry = " + FilterString(companyCountry);
  120. //sql += ", @companyState = " + FilterString(companyState);
  121. //sql += ", @companyDistrict = " + FilterString(companyDistrict);
  122. //sql += ", @companyZip = " + FilterString(companyZip);
  123. //sql += ", @companyPhone1 = " + FilterString(companyPhone1);
  124. //sql += ", @companyPhone2 = " + FilterString(companyPhone2);
  125. //sql += ", @companyFax1 = " + FilterString(companyFax1);
  126. //sql += ", @companyFax2 = " + FilterString(companyFax2);
  127. //sql += ", @companyEmail1 = " + FilterString(companyEmail1);
  128. //sql += ", @companyEmail2 = " + FilterString(companyEmail2);
  129. //sql += ", @localTime = " + FilterString(localTime);
  130. sql += ", @agentDetails = " + FilterString(agentDetails);
  131. sql += ", @isActive = " + FilterString(isActive);
  132. sql += ", @headMessage = " + FilterString(headMessage);
  133. //sql += ", @mapCodeInt = " + FilterString(mapCodeInt);
  134. sql += ", @mapCodeDom = " + FilterString(mapCodeDom);
  135. //sql += ", @commCodeInt = " + FilterString(commCodeInt);
  136. sql += ", @partnerBankcode = " + FilterString(partnerBankcode);
  137. //sql += ", @mapCodeIntAc = " + FilterString(mapCodeIntAc);
  138. //sql += ", @mapCodeDomAc = " + FilterString(mapCodeDomAc);
  139. //sql += ", @payOption = " + FilterString(payOption);
  140. sql += ", @agentSettCurr=" + FilterString(agentSettCurr);
  141. sql += ", @contactPerson1=" + FilterString(contactPerson1);
  142. sql += ", @contactPerson2=" + FilterString(contactPerson2);
  143. sql += ", @isHeadOffice=" + FilterString(isHeadOffice);
  144. sql += ", @isIntl=" + FilterString(isIntl);
  145. sql += ", @isApiPartner=" + FilterString(isAPIPartner);
  146. sql += ", @branchCode=" + FilterString(barnchCode);
  147. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  148. }
  149. public DbResult Delete(string user, string agentId)
  150. {
  151. string sql = "EXEC proc_agentMaster";
  152. sql += " @flag = 'd'";
  153. sql += ", @user = " + FilterString(user);
  154. sql += ", @agentId = " + FilterString(agentId);
  155. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  156. }
  157. public DataRow SelectById(string user, string agentId)
  158. {
  159. string sql = "EXEC proc_agentMaster";
  160. sql += " @flag = 'a'";
  161. sql += ", @user = " + FilterString(user);
  162. sql += ", @agentId = " + FilterString(agentId);
  163. DataSet ds = ExecuteDataset(sql);
  164. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  165. return null;
  166. return ds.Tables[0].Rows[0];
  167. }
  168. public DataRow SelectByUser(string user)
  169. {
  170. string sql = "EXEC proc_agentMaster";
  171. sql += " @flag = 'au'";
  172. sql += ", @user = " + FilterString(user);
  173. DataSet ds = ExecuteDataset(sql);
  174. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  175. return null;
  176. return ds.Tables[0].Rows[0];
  177. }
  178. public DbResult Approve(string user, string agentId)
  179. {
  180. string sql = "EXEC proc_agentMaster";
  181. sql += " @flag = 'approve'";
  182. sql += ", @user = " + FilterString(user);
  183. sql += ", @agentId = " + FilterString(agentId);
  184. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  185. }
  186. public DbResult Reject(string user, string agentId)
  187. {
  188. string sql = "EXEC proc_agentMaster";
  189. sql += " @flag = 'reject'";
  190. sql += ", @user = " + FilterString(user);
  191. sql += ", @agentId = " + FilterString(agentId);
  192. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  193. }
  194. #endregion
  195. #region Agent Limit
  196. public DbResult UpdateLimit(string user, string agentId, string AC_ID, string DR_LIMIT, string LIMIT_EXPIRY)
  197. {
  198. string sql = "EXEC proc_agentLimit";
  199. sql += " @flag = " + (agentId == "0" || agentId == "" ? "" : "'u'");
  200. sql += ", @user = " + FilterString(user);
  201. sql += ", @agentId = " + FilterString(agentId);
  202. sql += ", @AC_ID = " + FilterString(AC_ID);
  203. sql += ", @DR_LIMIT = " + FilterString(DR_LIMIT);
  204. sql += ", @LIMIT_EXPIRY = " + FilterString(LIMIT_EXPIRY);
  205. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  206. }
  207. //public DbResult DeleteLimit(string user, string ROWID)
  208. //{
  209. // var sql = "EXEC proc_agentLimit";
  210. // sql += " @flag = 'd'";
  211. // sql += ", @user = " + FilterString(user);
  212. // sql += ", @ROWID = " + FilterString(ROWID);
  213. // return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  214. //}
  215. public DataRow SelectByIdLimit(string user, string agentId)
  216. {
  217. string sql = "EXEC proc_agentLimit";
  218. sql += " @flag = 'a'";
  219. sql += ", @user = " + FilterString(user);
  220. sql += ", @agentId = " + FilterString(agentId);
  221. DataSet ds = ExecuteDataset(sql);
  222. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  223. return null;
  224. return ds.Tables[0].Rows[0];
  225. }
  226. #endregion
  227. #region Agent Functions
  228. public DbResult UpdateAgentFunction(string user, string FUN_ID, string agentId, string SERVICE_TYPE,
  229. string TRANSACTION_FEES, string DEFAULT_DEPOSIT_MODE,
  230. string INVOICE_PRINT_MODE, string CURRENCY, string COMM_SCHEME_CODE,
  231. string RECEIVING_AGENTS, string RECEIVINGCountry, string GLOBAL_TRN,
  232. string TRANSACTION_MODE, string SEND_TO_RECEIVER, string SEND_TO_SENDER,
  233. string TRN_QUESTION, string MOBILE_FORMAT, string TIME_ZONE,
  234. string ENABLE_WISHES)
  235. {
  236. string sql = "EXEC proc_AGENT_FUNCTION";
  237. sql += " @flag = " + (FUN_ID == "0" || FUN_ID == "" ? "'i'" : "'u'");
  238. sql += ", @user = " + FilterString(user);
  239. sql += ", @FUN_ID = " + FilterString(FUN_ID);
  240. sql += ", @agentId = " + FilterString(agentId);
  241. sql += ", @SERVICE_TYPE = " + FilterString(SERVICE_TYPE);
  242. sql += ", @TRANSACTION_FEES = " + FilterString(TRANSACTION_FEES);
  243. sql += ", @DEFAULT_DEPOSIT_MODE = " + FilterString(DEFAULT_DEPOSIT_MODE);
  244. sql += ", @INVOICE_PRINT_MODE = " + FilterString(INVOICE_PRINT_MODE);
  245. sql += ", @CURRENCY = " + FilterString(CURRENCY);
  246. sql += ", @COMM_SCHEME_CODE = " + FilterString(COMM_SCHEME_CODE);
  247. sql += ", @RECEIVING_AGENTS = " + FilterString(RECEIVING_AGENTS);
  248. sql += ", @RECEIVINGCountry = " + FilterString(RECEIVINGCountry);
  249. sql += ", @GLOBAL_TRN = " + FilterString(GLOBAL_TRN);
  250. sql += ", @TRANSACTION_MODE = " + FilterString(TRANSACTION_MODE);
  251. sql += ", @SEND_TO_RECEIVER = " + FilterString(SEND_TO_RECEIVER);
  252. sql += ", @SEND_TO_SENDER = " + FilterString(SEND_TO_SENDER);
  253. sql += ", @TRN_QUESTION = " + FilterString(TRN_QUESTION);
  254. sql += ", @MOBILE_FORMAT = " + FilterString(MOBILE_FORMAT);
  255. sql += ", @TIME_ZONE = " + FilterString(TIME_ZONE);
  256. sql += ", @ENABLE_WISHES = " + FilterString(ENABLE_WISHES);
  257. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  258. }
  259. public DbResult DeleteAgentFunction(string user, string FUN_ID)
  260. {
  261. string sql = "EXEC proc_AGENT_FUNCTION";
  262. sql += " @flag = 'd'";
  263. sql += ", @user = " + FilterString(user);
  264. sql += ", @FUN_ID = " + FilterString(FUN_ID);
  265. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  266. }
  267. public DataRow SelectByIdAgentFunction(string user, string FUN_ID)
  268. {
  269. string sql = "EXEC proc_AGENT_FUNCTION";
  270. sql += " @flag = 'a'";
  271. sql += ", @user = " + FilterString(user);
  272. sql += ", @FUN_ID = " + FilterString(FUN_ID);
  273. DataSet ds = ExecuteDataset(sql);
  274. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  275. return null;
  276. return ds.Tables[0].Rows[0];
  277. }
  278. #endregion
  279. public string SelectAgentById(string id)
  280. {
  281. string sql =
  282. "SELECT agentName = am.agentName + '|' + CAST(am.agentId AS VARCHAR) FROM agentMaster am WITH(NOLOCK) WHERE am.agentId=" +
  283. FilterString(id);
  284. var ds = ExecuteDataset(sql);
  285. if (ds == null || ds.Tables[0] == null)
  286. return "";
  287. return ds.Tables[0].Rows[0][0].ToString();
  288. }
  289. public DataRow PullDefaultValueById(string user, string parentAgentId)
  290. {
  291. string sql = "EXEC proc_agentMaster";
  292. sql += " @flag = 'pullDefault'";
  293. sql += ", @user = " + FilterString(user);
  294. sql += ", @agentId = " + FilterString(parentAgentId);
  295. DataSet ds = ExecuteDataset(sql);
  296. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  297. return null;
  298. return ds.Tables[0].Rows[0];
  299. }
  300. public string SelectAgent(string id)
  301. {
  302. string sql =
  303. "SELECT agentName = am.agentName + '|' + CAST(am.agentId AS VARCHAR) + '|' + CAST(am.agentType AS VARCHAR) FROM agentMaster am WITH(NOLOCK) WHERE am.agentId=" +
  304. FilterString(id);
  305. var ds = ExecuteDataset(sql);
  306. if (ds == null || ds.Tables[0] == null || ds.Tables[0].Rows.Count == 0)
  307. return "";
  308. return ds.Tables[0].Rows[0][0].ToString();
  309. }
  310. public DataTable PopulateNode(string user, string parentId)
  311. {
  312. string sql = "EXEC proc_agentMaster";
  313. sql += " @flag = 't'";
  314. sql += ", @user = " + FilterString(user);
  315. sql += ", @parentId = " + FilterString(parentId);
  316. return ExecuteDataset(sql).Tables[0];
  317. }
  318. public string CheckAgentType(string pid)
  319. {
  320. string sql = "SELECT agentType FROM agentMaster a WITH(NOLOCK) WHERE agentId=" + FilterString(pid);
  321. return GetSingleResult(sql);
  322. }
  323. public string GetParentAgentSettlementStatus(string agentId)
  324. {
  325. string sql = "SELECT isSettlingAgent FROM agentMaster WITH(NOLOCK) WHERE agentId = " + FilterString(agentId);
  326. return GetSingleResult(sql);
  327. }
  328. public int GetTotalNoOfAgents()
  329. {
  330. var sql = "EXEC proc_agentMaster @flag = 'n'";
  331. return Convert.ToInt32(GetSingleResult(sql));
  332. }
  333. #region AgentBusinessHistory
  334. public DataTable PopulateGridData(string qry)
  335. {
  336. string sql = qry;
  337. DataSet ds = ExecuteDataset(sql);
  338. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  339. return null;
  340. return ds.Tables[0];
  341. }
  342. public DbResult UpdateABH(string user, string agentId, string remitCompany, string fromDate, string toDate)
  343. {
  344. string sql = "EXEC proc_agentBusinessHistory";
  345. //sql += " @flag = " + (CURR_ID == "0" || CURR_ID == "" ? "'i'" : "'u'");
  346. sql += " @flag = 'i'";
  347. sql += ", @user = " + FilterString(user);
  348. sql += ", @agentId = " + FilterString(agentId);
  349. sql += ", @remitCompany = " + FilterString(remitCompany);
  350. sql += ", @fromDate = " + FilterString(fromDate);
  351. sql += ", @toDate = " + FilterString(toDate);
  352. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  353. }
  354. public DbResult DeleteABH(string user, string abhId)
  355. {
  356. string sql = "EXEC proc_agentBusinessHistory";
  357. sql += " @flag = 'd'";
  358. sql += ", @user = " + FilterString(user);
  359. sql += ", @abhID = " + FilterString(abhId);
  360. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  361. }
  362. #endregion
  363. #region AgentFinancialService
  364. public DbResult UpdateAFSList(string user, string agentId, string serviceList)
  365. {
  366. string sql = "EXEC proc_agentFinancialService";
  367. sql += " @flag = 'i'";
  368. sql += ",@user = " + FilterString(user);
  369. sql += ",@agentId = " + FilterString(agentId);
  370. sql += ",@serviceList = " + FilterString(serviceList);
  371. DataSet ds = ExecuteDataset(sql);
  372. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  373. return null;
  374. return ParseDbResult(ds.Tables[0]);
  375. }
  376. public DbResult DeleteAFS(string user, string afsId)
  377. {
  378. string sql = "EXEC proc_agentFinancialService";
  379. sql += " @flag = 'd'";
  380. sql += ",@user = " + FilterString(user);
  381. sql += ",@afsId = " + FilterString(afsId);
  382. DataSet ds = ExecuteDataset(sql);
  383. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  384. return null;
  385. return ParseDbResult(ds.Tables[0]);
  386. }
  387. #endregion
  388. public DataSet DisplayMatchAgent(string user, string district)
  389. {
  390. var sql = "EXEC proc_agentMaster @flag = 'findAgent'";
  391. sql += ", @user = " + FilterString(user);
  392. sql += ", @agentDistrict = " + FilterString(district);
  393. var ds = ExecuteDataset(sql);
  394. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  395. return null;
  396. return ds;
  397. }
  398. public DataSet DisplayMatchAgentWithDisLoc(string user, string district, string locationCode)
  399. {
  400. var sql = "EXEC proc_agentMaster @flag = 'agentDisLoc'";
  401. sql += ", @user = " + FilterString(user);
  402. sql += ", @agentDistrict = " + FilterString(district);
  403. sql += ", @locationCode = " + FilterString(locationCode);
  404. var ds = ExecuteDataset(sql);
  405. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  406. return null;
  407. return ds;
  408. }
  409. }
  410. }