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.

455 lines
20 KiB

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