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.

422 lines
14 KiB

  1. using Swift.DAL.SwiftDAL;
  2. using Swift.web.Library;
  3. using System.Collections.Generic;
  4. using System.Data;
  5. using System.Web.Services;
  6. namespace Swift.web
  7. {
  8. [WebService(Namespace = "http://tempuri.org/")]
  9. [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
  10. [System.Web.Script.Services.ScriptService]
  11. public class Autocomplete : System.Web.Services.WebService
  12. {
  13. private RemittanceDao swift = null;
  14. private SwiftDao _acntDao = null;
  15. public Autocomplete()
  16. {
  17. swift = new RemittanceDao();
  18. _acntDao = new SwiftDao();
  19. }
  20. [WebMethod]
  21. public string[] GetAccountList(string prefixText, int count)
  22. {
  23. var sql = "Select acct_name +'|'+ acct_num as acct_name,acct_num from ac_master with(nolock) where acct_name like'" + prefixText + "'+'%' order by acct_id";
  24. var dt = swift.ExecuteDataset(sql).Tables[0];
  25. string[] items = new string[dt.Rows.Count];
  26. var i = 0;
  27. foreach (DataRow dr in dt.Rows)
  28. {
  29. items.SetValue(dr["acct_name"].ToString(), i);
  30. i++;
  31. }
  32. return items;
  33. }
  34. [WebMethod]
  35. public List<AutoCompleteItem> GetAgentListForRiskProfiling(string keywordStartsWith)
  36. {
  37. var output = new List<AutoCompleteItem>();
  38. var sql = "EXEC proc_agentRiskProfiling @flag='l1', @agentName='" + keywordStartsWith + "%'";
  39. var dt = swift.ExecuteDataset(sql).Tables[0];
  40. foreach (DataRow dr in dt.Rows)
  41. {
  42. output.Add(new AutoCompleteItem(dr["agentId"].ToString(), dr["agentName"].ToString()));
  43. }
  44. return output;
  45. }
  46. [WebMethod]
  47. public string[] GetAgentList(string prefixText, int count)
  48. {
  49. var sql = "Select agentName +'|'+ CAST(agentId AS VARCHAR) AS agentName, agentId from agentMaster with(nolock) WHERE isSettlingAgent = 'Y' AND agentName LIKE'" + prefixText + "'+'%' order by agentName";
  50. var dt = swift.ExecuteDataset(sql).Tables[0];
  51. string[] items = new string[dt.Rows.Count];
  52. var i = 0;
  53. foreach (DataRow dr in dt.Rows)
  54. {
  55. items.SetValue(dr["agentName"].ToString(), i);
  56. i++;
  57. }
  58. return items;
  59. }
  60. [WebMethod]
  61. public string[] GetSendingList(string prefixText, int count)
  62. {
  63. var sql =
  64. "SELECT agentName + '|' + CAST(agentId AS VARCHAR) AS agentName,agentId FROM agentMaster WITH(NOLOCK) WHERE agentName LIKE '" +
  65. prefixText + "' + '%' ORDER BY agentId";
  66. var dt = swift.ExecuteDataset(sql).Tables[0];
  67. string[] items = new string[dt.Rows.Count];
  68. var i = 0;
  69. foreach (DataRow dr in dt.Rows)
  70. {
  71. items.SetValue(dr["agentName"].ToString(), i);
  72. i++;
  73. }
  74. return items;
  75. }
  76. [WebMethod]
  77. public string[] GetGLCode(string keywordStartsWith)
  78. {
  79. var sql =
  80. "SELECT gl_name+'|'+CAST(gl_code AS VARCHAR) as gl_name, gl_code FROM dbo.GL_GROUP WITH(NOLOCK) WHERE gl_name LIKE '" +
  81. keywordStartsWith + "' + '%' ORDER BY gl_code";
  82. var dt = _acntDao.ExecuteDataset(sql).Tables[0];
  83. string[] items = new string[dt.Rows.Count];
  84. var i = 0;
  85. foreach (DataRow dr in dt.Rows)
  86. {
  87. items.SetValue(dr["gl_name"].ToString(), i);
  88. i++;
  89. }
  90. return items;
  91. }
  92. #region all domstic agent part
  93. [WebMethod]
  94. public IList<string> GetDomesticAgent(string keywordStartsWith)
  95. {
  96. IList<string> output = new List<string>();
  97. var sql = "exec proc_agentPicker @flag='dAgent',@agentName='" + keywordStartsWith + "%'";
  98. var dt = swift.ExecuteDataset(sql).Tables[0];
  99. string[] items = new string[dt.Rows.Count];
  100. var i = 0;
  101. foreach (DataRow dr in dt.Rows)
  102. {
  103. output.Add(dr["agentName"].ToString());
  104. //+ "-" + dr["agentId"].ToString());
  105. i++;
  106. }
  107. return output;
  108. }
  109. [WebMethod]
  110. public IList<string> GetDomesticAgentNameOnly(string keywordStartsWith)
  111. {
  112. IList<string> output = new List<string>();
  113. var sql = "exec proc_autocomplete @category='d-agentname-only',@searchText='" + keywordStartsWith + "%'";
  114. var dt = swift.ExecuteDataset(sql).Tables[0];
  115. string[] items = new string[dt.Rows.Count];
  116. var i = 0;
  117. foreach (DataRow dr in dt.Rows)
  118. {
  119. output.Add(dr["agentName"].ToString());
  120. i++;
  121. }
  122. return output;
  123. }
  124. [WebMethod]
  125. public IList<string> GetPrivateAgent(string keywordStartsWith)
  126. {
  127. IList<string> output = new List<string>();
  128. var sql = "exec proc_agentPicker @flag='privateAgent',@agentName='" + keywordStartsWith + "%'";
  129. var dt = swift.ExecuteDataset(sql).Tables[0];
  130. string[] items = new string[dt.Rows.Count];
  131. var i = 0;
  132. foreach (DataRow dr in dt.Rows)
  133. {
  134. output.Add(dr["agentName"].ToString());
  135. //+ "-" + dr["agentId"].ToString());
  136. i++;
  137. }
  138. return output;
  139. }
  140. [WebMethod]
  141. public IList<string> GetBankList(string keywordStartsWith)
  142. {
  143. IList<string> output = new List<string>();
  144. var sql = "exec proc_agentPicker @flag='dBank',@agentName='" + keywordStartsWith + "%'";
  145. var dt = swift.ExecuteDataset(sql).Tables[0];
  146. string[] items = new string[dt.Rows.Count];
  147. var i = 0;
  148. foreach (DataRow dr in dt.Rows)
  149. {
  150. output.Add(dr["agentName"].ToString());
  151. //+ "-" + dr["agentId"].ToString());
  152. i++;
  153. }
  154. return output;
  155. }
  156. [WebMethod]
  157. public IList<string> GetCashPayAllowedAgent(string keywordStartsWith, string controlNo)
  158. {
  159. IList<string> output = new List<string>();
  160. var sql = "exec proc_agentPicker @flag='privateAgent',@controlNo='" + controlNo + "',@agentName='" + keywordStartsWith + "%'";
  161. var dt = swift.ExecuteDataset(sql).Tables[0];
  162. string[] items = new string[dt.Rows.Count];
  163. var i = 0;
  164. foreach (DataRow dr in dt.Rows)
  165. {
  166. output.Add(dr["agentName"].ToString());
  167. //+ "-" + dr["agentId"].ToString());
  168. i++;
  169. }
  170. return output;
  171. }
  172. [WebMethod]
  173. public IList<string> GetAccountDepositAllowedBank(string keywordStartsWith, string controlNo)
  174. {
  175. IList<string> output = new List<string>();
  176. var sql = "exec proc_agentPicker @flag='acdepositbank',@controlNo='" + controlNo + "',@agentName='" + keywordStartsWith + "%'";
  177. var dt = swift.ExecuteDataset(sql).Tables[0];
  178. string[] items = new string[dt.Rows.Count];
  179. var i = 0;
  180. foreach (DataRow dr in dt.Rows)
  181. {
  182. output.Add(dr["agentName"].ToString());
  183. //+ "-" + dr["agentId"].ToString());
  184. i++;
  185. }
  186. return output;
  187. }
  188. [WebMethod]
  189. public IList<string> GetDomesticAgentWithMapCode(string keywordStartsWith)
  190. {
  191. IList<string> output = new List<string>();
  192. var sql = "exec proc_agentPicker @flag='dAgent2',@agentName='" + keywordStartsWith + "%'";
  193. var dt = swift.ExecuteDataset(sql).Tables[0];
  194. string[] items = new string[dt.Rows.Count];
  195. var i = 0;
  196. foreach (DataRow dr in dt.Rows)
  197. {
  198. output.Add(dr["agentName"].ToString());
  199. //+ "-" + dr["agentId"].ToString());
  200. i++;
  201. }
  202. return output;
  203. }
  204. [WebMethod]
  205. public IList<string> GetAllDomPayAgent(string keywordStartsWith)
  206. {
  207. // dummy implementation
  208. IList<string> output = new List<string>();
  209. var sql = "select agentName, agentId from agentMaster WHERE agentCountry='Nepal' and agentName like '" + keywordStartsWith + "%' order by agentName";
  210. var dt = swift.ExecuteDataset(sql).Tables[0];
  211. string[] items = new string[dt.Rows.Count];
  212. var i = 0;
  213. foreach (DataRow dr in dt.Rows)
  214. {
  215. output.Add(dr["agentName"].ToString() + "-" + dr["agentId"].ToString());
  216. i++;
  217. }
  218. return output;
  219. }
  220. #endregion all domstic agent part
  221. [WebMethod]
  222. public string[] GetBillByBillAcc(string prefixText, int count, string contextKey)
  223. {
  224. string[] a = contextKey.Split('|');
  225. string accontNo = a[0];
  226. string sessionId = a[1];
  227. var sql = "Exec [procBillByBillRunningBalanceList] @BILL_REF = " + swift.FilterString(prefixText.Trim()) + ",@sessionID=" + swift.FilterString(sessionId) + " ,@acct_num=" + swift.FilterString(accontNo);
  228. var dt = swift.ExecuteDataset(sql).Tables[0];
  229. string[] items = new string[dt.Rows.Count];
  230. var i = 0;
  231. foreach (DataRow dr in dt.Rows)
  232. {
  233. string concateValue = dr["BILL_REF"].ToString() + '-' + GetStatic.ShowDecimal(dr["REMAIN_AMT"].ToString()) + '-' + dr["PART_TRN_TYPE"].ToString() + '-' + '(' + dr["TRN_DATE"].ToString() + ')';
  234. items.SetValue(concateValue, i);
  235. i++;
  236. }
  237. return items;
  238. }
  239. [WebMethod]
  240. public string[] GetBillRefAcc(string prefixText, int count)
  241. {
  242. var sql = "Select b.bill_ref +' | '+ acct_name as acc_name from ac_master a with(nolock) inner join BILL_BY_BILL b on b.ACC_NUM = a.acct_num where acct_name like '" + prefixText + "%' and b.BILL_REF<>'null' order by acct_id";
  243. var dt = swift.ExecuteDataset(sql).Tables[0];
  244. string[] items = new string[dt.Rows.Count];
  245. var i = 0;
  246. foreach (DataRow dr in dt.Rows)
  247. {
  248. items.SetValue(dr["acc_name"].ToString(), i);
  249. i++;
  250. }
  251. return items;
  252. }
  253. [WebMethod]
  254. public IList<string> GetAllAgent(string keywordStartsWith)
  255. {
  256. IList<string> output = new List<string>();
  257. var sql = "EXEC proc_agentSearchAutocomplete @FLAG='A',@searchField=" + swift.FilterString(keywordStartsWith) + "";
  258. var dt = swift.ExecuteDataset(sql).Tables[0];
  259. var i = 0;
  260. foreach (DataRow dr in dt.Rows)
  261. {
  262. output.Add(dr["agentName"] + "-" + dr["agentId"]);
  263. i++;
  264. }
  265. return output;
  266. }
  267. [WebMethod]
  268. public IList<string> GetBranchAgent(string keywordStartsWith)
  269. {
  270. IList<string> output = new List<string>();
  271. var sql = "EXEC proc_agentSearchAutocomplete @FLAG='b',@searchField=" + swift.FilterString(keywordStartsWith) + "";
  272. var dt = swift.ExecuteDataset(sql).Tables[0];
  273. var i = 0;
  274. foreach (DataRow dr in dt.Rows)
  275. {
  276. output.Add(dr["agentName"].ToString());
  277. i++;
  278. }
  279. return output;
  280. }
  281. [WebMethod]
  282. public IList<string> GetIMEPrivateAgent(string keywordStartsWith)
  283. {
  284. IList<string> output = new List<string>();
  285. var sql = "EXEC proc_agentSearchAutocomplete @FLAG='c',@searchField=" + swift.FilterString(keywordStartsWith) + "";
  286. var dt = swift.ExecuteDataset(sql).Tables[0];
  287. var i = 0;
  288. foreach (DataRow dr in dt.Rows)
  289. {
  290. output.Add(dr["agentName"].ToString());
  291. i++;
  292. }
  293. return output;
  294. }
  295. [WebMethod]
  296. public IList<string> GetPrivateAgentV2(string keywordStartsWith)
  297. {
  298. IList<string> output = new List<string>();
  299. var sql = "EXEC proc_agentSearchAutocomplete @FLAG='cv2',@searchField=" + swift.FilterString(keywordStartsWith) + "";
  300. var dt = swift.ExecuteDataset(sql).Tables[0];
  301. var i = 0;
  302. foreach (DataRow dr in dt.Rows)
  303. {
  304. output.Add(dr["agentName"].ToString());
  305. i++;
  306. }
  307. return output;
  308. }
  309. [WebMethod]
  310. public IList<string> GetAgentNameList(string keywordStartsWith)
  311. {
  312. IList<string> output = new List<string>();
  313. var sql = "EXEC proc_dropDownLists @flag = 'agentList', @param =" + swift.FilterString(keywordStartsWith);
  314. var dt = swift.ExecuteDataset(sql).Tables[0];
  315. foreach (DataRow dr in dt.Rows)
  316. {
  317. output.Add(dr["agentName"].ToString());
  318. }
  319. return output;
  320. }
  321. [WebMethod]
  322. public IList<string> GetSchoolCollegeAgent(string keywordStartsWith)
  323. {
  324. IList<string> output = new List<string>();
  325. var sql = "exec proc_agentPicker @flag='dAgent3',@agentName='" + keywordStartsWith + "%'";
  326. var dt = swift.ExecuteDataset(sql).Tables[0];
  327. string[] items = new string[dt.Rows.Count];
  328. var i = 0;
  329. foreach (DataRow dr in dt.Rows)
  330. {
  331. output.Add(dr["agentName"].ToString());
  332. i++;
  333. }
  334. return output;
  335. }
  336. [WebMethod]
  337. public IList<string> GetAgentNameListFilter(string keywordStartsWith)
  338. {
  339. IList<string> output = new List<string>();
  340. var sql = "EXEC proc_dropDownLists @flag = 'agentListAll', @param =" + swift.FilterString(keywordStartsWith);
  341. var dt = swift.ExecuteDataset(sql).Tables[0];
  342. foreach (DataRow dr in dt.Rows)
  343. {
  344. output.Add(dr["agentName"].ToString());
  345. }
  346. return output;
  347. }
  348. }
  349. }