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.

724 lines
34 KiB

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Text;
  5. using Swift.DAL.SwiftDAL;
  6. using Swift.web.Component.Grid;
  7. using Swift.web.Component.Grid.gridHelper;
  8. using Swift.web.Library;
  9. using Swift.DAL.BL.Remit.DomesticOperation.CommissionSetup;
  10. using Swift.DAL.BL.System.Notification;
  11. namespace Swift.web
  12. {
  13. public partial class ViewChanges : System.Web.UI.Page
  14. {
  15. RemittanceLibrary swiftLibrary = new RemittanceLibrary();
  16. private ChangeApprovalDao obj = new ChangeApprovalDao();
  17. protected void Page_Load(object sender, EventArgs e)
  18. {
  19. Authenticate();
  20. ShowChanges();
  21. }
  22. public static string GetFunctionId()
  23. {
  24. return GetStatic.ReadQueryString("functionId", "");
  25. }
  26. public static string GetFunctionId2()
  27. {
  28. return GetStatic.ReadQueryString("functionId2", "");
  29. }
  30. public static string GetId()
  31. {
  32. return GetStatic.ReadQueryString("id", "");
  33. }
  34. public static string GetModBy()
  35. {
  36. return GetStatic.ReadQueryString("modBy", "");
  37. }
  38. private void Authenticate()
  39. {
  40. swiftLibrary.CheckAuthentication(GetFunctionId2());
  41. }
  42. private void ShowChanges()
  43. {
  44. if (GetFunctionId() == "20832030")
  45. {
  46. string url = GetStatic.GetUrlRoot() + "/Remit/Administration/CustomerSetup/KYC/Manage.aspx?rowId=" +
  47. GetId() + "&isApprove=true";
  48. Response.Redirect(url);
  49. }
  50. PrintChanges(GetFunctionId(), GetId());
  51. if (GetModBy() == GetStatic.GetUser())
  52. {
  53. btnApprove.Visible = false;
  54. btnReject.Visible = false;
  55. btnApproveUR.Visible = false;
  56. btnRejectUR.Visible = false;
  57. btnApproveUF.Visible = false;
  58. btnRejectUF.Visible = false;
  59. }
  60. }
  61. private void Approve()
  62. {
  63. var dbResult = obj.Approve(GetStatic.GetUser(), GetFunctionId(), GetId());
  64. ManageMessage(dbResult);
  65. }
  66. private void Reject()
  67. {
  68. var dbResult = obj.Reject(GetStatic.GetUser(), GetFunctionId(), GetId());
  69. ManageMessage(dbResult);
  70. }
  71. private void RejectUR()
  72. {
  73. var dbResult = obj.RejectUR(GetStatic.GetUser(), GetFunctionId(), GetId());
  74. ManageMessage(dbResult);
  75. }
  76. private void RejectUF()
  77. {
  78. var dbResult = obj.RejectUF(GetStatic.GetUser(), GetFunctionId(), GetId());
  79. ManageMessage(dbResult);
  80. }
  81. protected void btnApprove_Click(object sender, EventArgs e)
  82. {
  83. Approve();
  84. }
  85. protected void btnApproveUR_Click(object sender, EventArgs e)
  86. {
  87. Approve();
  88. }
  89. protected void btnApproveUF_Click(object sender, EventArgs e)
  90. {
  91. Approve();
  92. }
  93. protected void btnReject_Click(object sender, EventArgs e)
  94. {
  95. Reject();
  96. }
  97. protected void btnRejectUR_Click(object sender, EventArgs e)
  98. {
  99. RejectUR();
  100. }
  101. protected void btnRejectUF_Click(object sender, EventArgs e)
  102. {
  103. RejectUF();
  104. }
  105. private void ManageMessage(DbResult dbResult)
  106. {
  107. var mes = GetStatic.ParseResultJsPrint(dbResult);
  108. mes = mes.Replace("<center>", "");
  109. mes = mes.Replace("</center>", "");
  110. var scriptName = "CallBack";
  111. var functionName = "CallBack('" + mes + "')";
  112. GetStatic.CallBackJs1(Page, scriptName, functionName);
  113. // Page.ClientScript.RegisterStartupScript(this.GetType(), "Done", "<script language = \"javascript\">return CallBack('" + mes + "')</script>");
  114. }
  115. private void PrintChanges(string functionId, string id)
  116. {
  117. var dataList = obj.GetChangeList(functionId, id); //Default
  118. var oldData = dataList[0];
  119. var newData = dataList[1];
  120. var pageName = dataList[2];
  121. var changeType = dataList[3];
  122. //User Role
  123. var oldDataUR = "";
  124. var newDataUR = "";
  125. var pageNameUR = "";
  126. var changeTypeUR = "";
  127. //User Function
  128. var oldDataUF = "";
  129. var newDataUF = "";
  130. var pageNameUF = "";
  131. var changeTypeUF = "";
  132. //Rule Criteria
  133. var oldData1 = "";
  134. var newData1 = "";
  135. var pageName1 = "";
  136. var changeType1 = "";
  137. if(functionId == "10101130" || functionId == "10101330") //Application User Function Id
  138. {
  139. var dataListUR = obj.GetChangeListUR(functionId, id);
  140. oldDataUR = dataListUR[0];
  141. newDataUR = dataListUR[1];
  142. pageNameUR = dataListUR[2];
  143. changeTypeUR = dataListUR[3];
  144. var dataListUF = obj.GetChangeListUF(functionId, id);
  145. oldDataUF = dataListUF[0];
  146. newDataUF = dataListUF[1];
  147. pageNameUF = dataListUF[2];
  148. changeTypeUF = dataListUF[3];
  149. }
  150. if(functionId == "20601035" || functionId == "20601135")
  151. {
  152. var dataList1 = obj.GetChangeListRC(functionId, id);
  153. oldData1 = dataList1[0];
  154. newData1 = dataList1[1];
  155. pageName1 = dataList1[2];
  156. changeType1 = dataList1[3];
  157. }
  158. DataRow drHead = obj.SelectLogHeadById(functionId, id); //Default
  159. tableName.Text = pageName;
  160. logType.Text = changeType;
  161. dataId.Text = id;
  162. if (drHead == null)
  163. {
  164. logType.Text = "Insert";
  165. }
  166. else
  167. {
  168. createdDate.Text = drHead["createdDate"].ToString();
  169. createdBy.Text = drHead["createdBy"].ToString();
  170. }
  171. if (functionId == "10101130" || functionId == "10101330") //Application User Function Id
  172. {
  173. DataRow drHeadUR = obj.SelectLogHeadByIdUR(functionId, id);
  174. tableNameUR.Text = "User Roles";
  175. dataIdUR.Text = id;
  176. if (drHeadUR != null)
  177. {
  178. createdDateUR.Text = drHeadUR["createdDate"].ToString();
  179. createdByUR.Text = drHeadUR["createdBy"].ToString();
  180. logTypeUR.Text = "Update";
  181. }
  182. DataRow drHeadUF = obj.SelectLogHeadByIdUF(functionId, id);
  183. tableNameUF.Text = "User Functions";
  184. dataIdUF.Text = id;
  185. if (drHeadUF != null)
  186. {
  187. createdDateUF.Text = drHeadUF["createdDate"].ToString();
  188. createdByUF.Text = drHeadUF["createdBy"].ToString();
  189. logTypeUF.Text = "Update";
  190. }
  191. }
  192. var dt = new DataTable();
  193. var dtUR = new DataTable();
  194. var dtUF = new DataTable();
  195. var dtRC = new DataTable();
  196. if (functionId == "10101030") //Application Role Function Function Id
  197. {
  198. dt = GetStatic.GetHistoryChangedListForFunction(oldData, newData);
  199. }
  200. else if (functionId == "10101130" || functionId == "10101330") //Application User Function Id
  201. {
  202. dt = GetStatic.GetHistoryChangedList(changeType, oldData, newData);
  203. dtUR = GetStatic.GetHistoryChangedListForRole(oldDataUR, newDataUR);
  204. dtUF = GetStatic.GetHistoryChangedListForFunction(oldDataUF, newDataUF);
  205. }
  206. else if(functionId == "20101330") //Agent Group Function Id
  207. {
  208. dt = GetStatic.GetHistoryChangedListForAgent(oldData, newData);
  209. }
  210. else if(functionId == "20601035") //Compliance Rule Id
  211. {
  212. dt = GetStatic.GetHistoryChangedList(changeType, oldData, newData);
  213. dtRC = GetStatic.GetHistoryChangedListForRuleCriteria(oldData1, newData1);
  214. }
  215. else if(functionId == "20601135") //Compliance ID Id
  216. {
  217. dt = GetStatic.GetHistoryChangedList(changeType, oldData, newData);
  218. dtRC = GetStatic.GetHistoryChangedListForIdCriteria(oldData1, newData1, id);
  219. }
  220. else if(functionId == "20131430")
  221. {
  222. dt = GetStatic.GetHistoryChangedListForCommissionPackage(oldData, newData);
  223. }
  224. else
  225. {
  226. dt = GetStatic.GetHistoryChangedList(changeType, oldData, newData);
  227. }
  228. if (dt.Rows.Count == 0 || (oldData == "" && newData == ""))
  229. {
  230. rpt_grid.InnerHtml = "<center><b> No changes made.</b><center>";
  231. tableUD.Visible = false;
  232. btnApprove.Visible = false;
  233. btnReject.Visible = false;
  234. }
  235. else
  236. {
  237. btnApprove.Visible = true;
  238. var str = new StringBuilder("<div class='table-responsive'><table width=\"100%\" border=\"0\" class=\"table table-striped table-bordered\" cellpadding=\"0\" cellspacing=\"0\" align=\"left\">");
  239. str.Append("<tr>");
  240. str.Append("<th width = \"200px\" align=\"left\">" + dt.Columns[0].ColumnName + "</th>");
  241. str.Append("<th align=\"left\">" + dt.Columns[1].ColumnName + "</th>");
  242. str.Append("<th width = \"200px\" align=\"left\">" + dt.Columns[2].ColumnName + "</th>");
  243. str.Append("</tr>");
  244. foreach (DataRow dr in dt.Rows)
  245. {
  246. string clash = "";
  247. if(dr[3].ToString() == "Y")
  248. {
  249. clash = "class='show-yellow'";
  250. }
  251. str.Append("<tr>");
  252. str.Append("<td " + clash + " align=\"left\">" + dr[0] + "</td>");
  253. if (dr[3].ToString() == "Y")
  254. {
  255. if (changeType.ToLower() == "insert")
  256. {
  257. str.Append("<td " + clash + "align=\"left\">" + dr[1] + "</td>");
  258. }
  259. else
  260. {
  261. str.Append("<td " + clash + " align=\"left\"><div class=\"oldValue\">" + dr[1] + "</div></td>");
  262. }
  263. if (changeType.ToLower() == "delete")
  264. {
  265. str.Append("<td " + clash + "align=\"left\">" + dr[2] + "</td>");
  266. }
  267. else
  268. {
  269. str.Append("<td " + clash + " align=\"left\"><div class=\"newValue\">" + dr[2] + "</div></td>");
  270. }
  271. }
  272. else
  273. {
  274. str.Append("<td align=\"left\">" + dr[1] + "</td>");
  275. str.Append("<td align=\"left\">" + dr[2] + "</td>");
  276. }
  277. str.Append("</tr>");
  278. }
  279. str.Append("</table>");
  280. rpt_grid.InnerHtml = str.ToString();
  281. }
  282. #region Check Application User and Load View Changes for User Roles and User Functions Changes
  283. if (functionId == "10101130" || functionId == "10101330") //Application User Function Id
  284. {
  285. tabPanel1.Visible = true;
  286. if (dtUR.Rows.Count == 0)
  287. {
  288. rpt_gridUR.InnerHtml = "<center><b> No changes made.</b><center>";
  289. tableUR.Visible = false;
  290. btnApproveUR.Visible = false;
  291. btnRejectUR.Visible = false;
  292. }
  293. else
  294. {
  295. btnApprove.Text = "Approve All";
  296. btnApproveUR.Visible = true;
  297. var str =
  298. new StringBuilder(
  299. "<table width=\"100%\" border=\"0\" class=\"table table-striped table-bordered\" cellpadding=\"0\" cellspacing=\"0\" align=\"left\">");
  300. str.Append("<tr>");
  301. str.Append("<th width = \"200px\" align=\"left\">" + dtUR.Columns[0].ColumnName + "</th>");
  302. str.Append("<th align=\"left\">" + dtUR.Columns[1].ColumnName + "</th>");
  303. str.Append("<th width = \"200px\" align=\"left\">" + dtUR.Columns[2].ColumnName + "</th>");
  304. str.Append("</tr>");
  305. foreach (DataRow dr in dtUR.Rows)
  306. {
  307. str.Append("<tr>");
  308. str.Append("<td align=\"left\">" + dr[0] + "</td>");
  309. if (dr[3].ToString() == "Y")
  310. {
  311. if (changeType.ToLower() == "insert")
  312. {
  313. str.Append("<td align=\"left\">" + dr[1] + "</td>");
  314. }
  315. else
  316. {
  317. str.Append("<td align=\"left\"><div class=\"oldValue\">" + dr[1] + "</div></td>");
  318. }
  319. if (changeType.ToLower() == "delete")
  320. {
  321. str.Append("<td align=\"left\">" + dr[2] + "</td>");
  322. }
  323. else
  324. {
  325. str.Append("<td align=\"left\"><div class=\"newValue\">" + dr[2] + "</div></td>");
  326. }
  327. }
  328. else
  329. {
  330. str.Append("<td align=\"left\">" + dr[1] + "</td>");
  331. str.Append("<td align=\"left\">" + dr[2] + "</td>");
  332. }
  333. str.Append("</tr>");
  334. }
  335. str.Append("</table>");
  336. rpt_gridUR.InnerHtml = str.ToString();
  337. }
  338. if (dtUF.Rows.Count == 0)
  339. {
  340. rpt_gridUF.InnerHtml = "<center><b> No changes made.</b><center>";
  341. tableUF.Visible = false;
  342. btnApproveUF.Visible = false;
  343. btnRejectUF.Visible = false;
  344. return;
  345. }
  346. btnApprove.Text = "Approve All";
  347. btnApproveUF.Visible = true;
  348. var str1 =
  349. new StringBuilder(
  350. "<table width=\"100%\" border=\"0\" class=\"table table-striped table-bordered\" cellpadding=\"0\" cellspacing=\"0\" align=\"left\">");
  351. str1.Append("<tr>");
  352. str1.Append("<th width = \"200px\" align=\"left\">" + dtUF.Columns[0].ColumnName + "</th>");
  353. str1.Append("<th align=\"left\">" + dtUR.Columns[1].ColumnName + "</th>");
  354. str1.Append("<th width = \"200px\" align=\"left\">" + dtUF.Columns[2].ColumnName + "</th>");
  355. str1.Append("</tr>");
  356. foreach (DataRow dr in dtUF.Rows)
  357. {
  358. str1.Append("<tr>");
  359. str1.Append("<td align=\"left\">" + dr[0] + "</td>");
  360. if (dr[3].ToString() == "Y")
  361. {
  362. if (changeType.ToLower() == "insert")
  363. {
  364. str1.Append("<td align=\"left\">" + dr[1] + "</td>");
  365. }
  366. else
  367. {
  368. str1.Append("<td align=\"left\"><div class=\"oldValue\">" + dr[1] + "</div></td>");
  369. }
  370. if (changeType.ToLower() == "delete")
  371. {
  372. str1.Append("<td align=\"left\">" + dr[2] + "</td>");
  373. }
  374. else
  375. {
  376. str1.Append("<td align=\"left\"><div class=\"newValue\">" + dr[2] + "</div></td>");
  377. }
  378. }
  379. else
  380. {
  381. str1.Append("<td align=\"left\">" + dr[1] + "</td>");
  382. str1.Append("<td align=\"left\">" + dr[2] + "</td>");
  383. }
  384. str1.Append("</tr>");
  385. }
  386. str1.Append("</table></div>");
  387. rpt_gridUF.InnerHtml = str1.ToString();
  388. }
  389. #endregion
  390. #region Load Master/Detail View Changes
  391. if (
  392. functionId == "20131030" ||
  393. functionId == "20131130" ||
  394. functionId == "20131230" ||
  395. functionId == "20131330" ||
  396. functionId == "20601030" ||
  397. functionId == "20601130")
  398. {
  399. dscPanel.Visible = true;
  400. btnApprove.Text = "Approve All";
  401. btnReject.Text = "Reject All";
  402. SwiftGrid grid = new SwiftGrid();
  403. var sql = "";
  404. var GridName = "";
  405. var ApproveFunctionId = "";
  406. #region Service Charge Detail Changes
  407. if (functionId == "20131030")
  408. {
  409. GridName = "grd_sscDetail";
  410. ApproveFunctionId = "20131035"; // approve Function Id of Ssc Detail (child of Ssc Master)
  411. grid.RowIdField = "sscDetailId";
  412. sql = "EXEC proc_sscDetail @flag = 's', @sscMasterId = " + GetId();
  413. grid.ColumnList = new List<GridColumn>
  414. {
  415. new GridColumn("fromAmt", "Amount From", "", "T"),
  416. new GridColumn("toAmt", "Amount To", "", "T"),
  417. new GridColumn("pcnt", "Percent", "", "T"),
  418. new GridColumn("minAmt", "Min Amount", "", "T"),
  419. new GridColumn("maxAmt", "Max Amount", "", "T")
  420. };
  421. }
  422. #endregion
  423. #region International Send Commission Detail Changes
  424. if(functionId == "20131130")
  425. {
  426. GridName = "grd_scSendDetail";
  427. ApproveFunctionId = "20131135";
  428. grid.RowIdField = "scSendDetailId";
  429. sql = "EXEC proc_scSendDetail @flag = 's', @scSendMasterId = " + GetId();
  430. grid.ColumnList = new List<GridColumn>
  431. {
  432. new GridColumn("fromAmt", "Amount From", "", "T"),
  433. new GridColumn("toAmt", "Amount To", "", "T"),
  434. new GridColumn("pcnt", "Percent", "", "T"),
  435. new GridColumn("minAmt", "Min Amount", "", "T"),
  436. new GridColumn("maxAmt", "Max Amount", "", "T")
  437. };
  438. }
  439. #endregion
  440. #region International Pay Commission Detail Changes
  441. if(functionId == "20131230")
  442. {
  443. GridName = "grd_scPayDetail";
  444. ApproveFunctionId = "20131235";
  445. grid.RowIdField = "scPayDetailId";
  446. sql = "EXEC proc_scPayDetail @flag = 's', @scPayMasterId = " + GetId();
  447. grid.ColumnList = new List<GridColumn>
  448. {
  449. new GridColumn("fromAmt", "Amount From", "", "T"),
  450. new GridColumn("toAmt", "Amount To", "", "T"),
  451. new GridColumn("pcnt", "Percent", "", "T"),
  452. new GridColumn("minAmt", "Min Amount", "", "T"),
  453. new GridColumn("maxAmt", "Max Amount", "", "T")
  454. };
  455. }
  456. #endregion
  457. #region Compliance Rule Detail Changes
  458. if (functionId == "20601030")
  459. {
  460. GridName = "grd_csDetail";
  461. ApproveFunctionId = "20601035";
  462. grid.RowIdField = "csDetailId";
  463. sql = "EXEC proc_csDetail @flag = 's', @csMasterId = " + GetId();
  464. grid.ColumnList = new List<GridColumn>
  465. {
  466. new GridColumn("condition1", "Condition", "", "T"),
  467. new GridColumn("collMode1", "Collection Mode", "", "T"),
  468. new GridColumn("paymentMode1", "Payment Mode", "", "T"),
  469. new GridColumn("tranCount", "#Txn", "", "T"),
  470. new GridColumn("Amount", "Amount", "", "M"),
  471. new GridColumn("nextAction1", "Action", "", "T")
  472. };
  473. }
  474. #endregion
  475. #region Compliance ID Detail Changes
  476. if (functionId == "20601130")
  477. {
  478. GridName = "grd_cisDetail";
  479. ApproveFunctionId = "20601135";
  480. grid.RowIdField = "cisDetailId";
  481. sql = "EXEC proc_cisDetail @flag = 's', @cisMasterId = " + GetId();
  482. grid.ColumnList = new List<GridColumn>
  483. {
  484. new GridColumn("condition1", "Condition", "", "T"),
  485. new GridColumn("collMode1", "Collection Mode", "", "T"),
  486. new GridColumn("paymentMode1", "Payment Mode", "", "T"),
  487. new GridColumn("tranCount", "#Txn", "", "T"),
  488. new GridColumn("Amount", "Amount", "", "M"),
  489. new GridColumn("isEnable", "isEnable", "", "T")
  490. };
  491. }
  492. #endregion
  493. #region Domestic Commission Detail Changes
  494. if (functionId == "20131330")
  495. {
  496. GridName = "grd_scDetail";
  497. ApproveFunctionId = "20131335";
  498. var allowApprove = swiftLibrary.HasRight(ApproveFunctionId);
  499. var popUpParam = "dialogHeight:400px;dialogWidth:500px;dialogLeft:300;dialogTop:100;center:yes";
  500. ScDetailDao sc = new ScDetailDao();
  501. var ds = sc.PopulateCommissionDetail(GetStatic.GetUser(), GetId());
  502. var dt1 = ds.Tables[1];
  503. var html = new StringBuilder();
  504. html.Append("<table class=\"table table-striped table-bordered\" width=\"1000px\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">");
  505. html.Append("<tr class=\"hdtitle\">");
  506. html.Append("<th colspan=\"2\" class=\"hdtitle\">Amount</th>");
  507. html.Append("<th colspan=\"3\" class=\"hdtitle\">Service Charge</th>");
  508. html.Append("<th colspan=\"3\" class=\"hdtitle\">Sending Agent Comm.</th>");
  509. html.Append("<th colspan=\"3\" class=\"hdtitle\">Sending Sup Agent Comm.</th>");
  510. html.Append("<th colspan=\"3\" class=\"hdtitle\">Paying Agent Comm.</th>");
  511. html.Append("<th colspan=\"3\" class=\"hdtitle\">Paying Sup Agent Comm.</th>");
  512. html.Append("<th colspan=\"3\" class=\"hdtitle\">Bank Comm.</th>");
  513. html.Append("<th rowspan=\"2\" class=\"hdtitle\"></th>");
  514. html.Append("</tr><tr class=\"hdtitle\">");
  515. html.Append("<th class=\"hdtitle\">From</th>");
  516. html.Append("<th class=\"hdtitle\">To</th>");
  517. html.Append("<th class=\"hdtitle\">Percent</th>");
  518. html.Append("<th class=\"hdtitle\">Min Amt</th>");
  519. html.Append("<th class=\"hdtitle\">Max Amt</th>");
  520. html.Append("<th class=\"hdtitle\">Percent</th>");
  521. html.Append("<th class=\"hdtitle\">Min Amt</th>");
  522. html.Append("<th class=\"hdtitle\">Max Amt</th>");
  523. html.Append("<th class=\"hdtitle\">Percent</th>");
  524. html.Append("<th class=\"hdtitle\">Min Amt</th>");
  525. html.Append("<th class=\"hdtitle\">Max Amt</th>");
  526. html.Append("<th class=\"hdtitle\">Percent</th>");
  527. html.Append("<th class=\"hdtitle\">Min Amt</th>");
  528. html.Append("<th class=\"hdtitle\">Max Amt</th>");
  529. html.Append("<th class=\"hdtitle\">Percent</th>");
  530. html.Append("<th class=\"hdtitle\">Min Amt</th>");
  531. html.Append("<th class=\"hdtitle\">Max Amt</th>");
  532. html.Append("<th class=\"hdtitle\">Percent</th>");
  533. html.Append("<th class=\"hdtitle\">Min Amt</th>");
  534. html.Append("<th class=\"hdtitle\">Max Amt</th>");
  535. html.Append("</tr>");
  536. var i = 0;
  537. foreach (DataRow dr in dt1.Rows)
  538. {
  539. html.Append(++i % 2 == 1 ? "<tr class=\"oddbg\" onMouseOver=\"this.className='GridOddRowOver'\" onMouseOut=\"this.className='oddbg'\">" : "<tr class=\"evenbg\" onMouseOver=\"this.className='GridEvenRowOver'\" onMouseOut=\"this.className='evenbg'\" >");
  540. html.Append("<td>" + GetStatic.FormatData(dr["fromAmt"].ToString(), "M") + "</td>");
  541. html.Append("<td>" + GetStatic.FormatData(dr["toAmt"].ToString(), "M") + "</td>");
  542. html.Append("<td>" + GetStatic.FormatData(dr["serviceChargePcnt"].ToString(), "M") + "</td>");
  543. html.Append("<td>" + GetStatic.FormatData(dr["serviceChargeMinAmt"].ToString(), "M") + "</td>");
  544. html.Append("<td>" + GetStatic.FormatData(dr["serviceChargeMaxAmt"].ToString(), "M") + "</td>");
  545. html.Append("<td>" + GetStatic.FormatData(dr["sAgentCommPcnt"].ToString(), "M") + "</td>");
  546. html.Append("<td>" + GetStatic.FormatData(dr["sAgentCommMinAmt"].ToString(), "M") + "</td>");
  547. html.Append("<td>" + GetStatic.FormatData(dr["sAgentCommMaxAmt"].ToString(), "M") + "</td>");
  548. html.Append("<td>" + GetStatic.FormatData(dr["ssAgentCommPcnt"].ToString(), "M") + "</td>");
  549. html.Append("<td>" + GetStatic.FormatData(dr["ssAgentCommMinAmt"].ToString(), "M") + "</td>");
  550. html.Append("<td>" + GetStatic.FormatData(dr["ssAgentCommMaxAmt"].ToString(), "M") + "</td>");
  551. html.Append("<td>" + GetStatic.FormatData(dr["pAgentCommPcnt"].ToString(), "M") + "</td>");
  552. html.Append("<td>" + GetStatic.FormatData(dr["pAgentCommMinAmt"].ToString(), "M") + "</td>");
  553. html.Append("<td>" + GetStatic.FormatData(dr["pAgentCommMaxAmt"].ToString(), "M") + "</td>");
  554. html.Append("<td>" + GetStatic.FormatData(dr["psAgentCommPcnt"].ToString(), "M") + "</td>");
  555. html.Append("<td>" + GetStatic.FormatData(dr["psAgentCommMinAmt"].ToString(), "M") + "</td>");
  556. html.Append("<td>" + GetStatic.FormatData(dr["psAgentCommMaxAmt"].ToString(), "M") + "</td>");
  557. html.Append("<td>" + GetStatic.FormatData(dr["bankCommPcnt"].ToString(), "M") + "</td>");
  558. html.Append("<td>" + GetStatic.FormatData(dr["bankCommMinAmt"].ToString(), "M") + "</td>");
  559. html.Append("<td>" + GetStatic.FormatData(dr["bankCommMaxAmt"].ToString(), "M") + "</td>");
  560. html.Append("<td nowrap=\"nowrap\">");
  561. if (allowApprove)
  562. {
  563. if (dr["haschanged"].ToString().ToUpper().Equals("Y"))
  564. {
  565. if (dr["modifiedby"].ToString() == GetStatic.GetUser())
  566. {
  567. var approveLink = "id=" + dr["scDetailId"] + "&functionId=" + (ApproveFunctionId) +
  568. "&functionId2=" + ApproveFunctionId + "&modBy=" + dr["modifiedby"];
  569. var approvePage = GetStatic.GetUrlRoot() + "/ViewChanges.aspx?" + approveLink;
  570. var jsText = "onclick = \"PopUp('" + GridName + "','" + approvePage + "','" + popUpParam + "');\"";
  571. html.AppendLine("&nbsp;<a title = \"View Changes\" href=\"javascript:void(0)\" " + jsText + "\"><img alt = \"Waiting for Approval\" border = \"0\" title = \"Waiting for Approval\" src=\"" + GetStatic.GetUrlRoot() + "/images/wait-icon.png\" /></a>");
  572. }
  573. else
  574. {
  575. var approveLink = "id=" + dr["scDetailId"] + "&functionId=" + (ApproveFunctionId) +
  576. "&functionId2=" + ApproveFunctionId;
  577. var approvePage = GetStatic.GetUrlRoot() + "/ViewChanges.aspx?" + approveLink;
  578. var jsText = "onclick = \"PopUp('" + GridName + "','" + approvePage + "','" + popUpParam + "');";
  579. html.AppendLine("&nbsp;<a title = \"View Changes\" href=\"javascript:void(0)\" " + jsText + "\"><img alt = \"View Changes\" border = \"0\" title = \"View Changes\" src=\"" + GetStatic.GetUrlRoot() + "/images/view-changes.jpg\" /></a>");
  580. }
  581. }
  582. }
  583. html.Append("</td>");
  584. html.Append("</tr>");
  585. }
  586. html.Append("</table>");
  587. rpt_gridDetail.InnerHtml = html.ToString();
  588. return;
  589. }
  590. #endregion
  591. grid.GridName = GridName;
  592. grid.GridType = 1;
  593. grid.GridDataSource = SwiftGrid.GridDS.RemittanceDB;
  594. grid.ShowAddButton = false;
  595. grid.ShowFilterForm = false;
  596. grid.ShowPagingBar = false;
  597. grid.ShowPopUpWindowOnAddButtonClick = true;
  598. grid.AlwaysShowFilterForm = false;
  599. grid.AllowEdit = false;
  600. grid.ApproveFunctionId = functionId;
  601. grid.ApproveFunctionId2 = ApproveFunctionId;
  602. grid.AllowApprove = swiftLibrary.HasRight(functionId);
  603. grid.SetComma();
  604. rpt_gridDetail.InnerHtml = grid.CreateGrid(sql);
  605. }
  606. #endregion
  607. #region Load Criteria Changes
  608. if(functionId == "20601035" || functionId == "20601135")
  609. {
  610. if (dtRC.Rows.Count == 0)
  611. {
  612. rpt_gridDetail.InnerHtml = "<center><b> No changes made.</b><center>";
  613. }
  614. else
  615. {
  616. dscPanel.Visible = true;
  617. btnApprove.Text = "Approve All";
  618. btnReject.Text = "Reject All";
  619. var str =
  620. new StringBuilder(
  621. "<table width=\"100%\" border=\"0\" class=\"table table-striped table-bordered\" cellpadding=\"0\" cellspacing=\"0\" align=\"left\">");
  622. str.Append("<tr>");
  623. str.Append("<th width = \"200px\" align=\"left\">" + dtRC.Columns[0].ColumnName + "</th>");
  624. str.Append("<th align=\"left\">" + dtRC.Columns[1].ColumnName + "</th>");
  625. str.Append("<th width = \"200px\" align=\"left\">" + dtRC.Columns[2].ColumnName + "</th>");
  626. str.Append("</tr>");
  627. foreach (DataRow dr in dtRC.Rows)
  628. {
  629. str.Append("<tr>");
  630. str.Append("<td align=\"left\">" + dr[0] + "</td>");
  631. if (dr[3].ToString() == "Y")
  632. {
  633. if (changeType.ToLower() == "insert")
  634. {
  635. str.Append("<td align=\"left\">" + dr[1] + "</td>");
  636. }
  637. else
  638. {
  639. str.Append("<td align=\"left\"><div class=\"oldValue\">" + dr[1] + "</div></td>");
  640. }
  641. if (changeType.ToLower() == "delete")
  642. {
  643. str.Append("<td align=\"left\">" + dr[2] + "</td>");
  644. }
  645. else
  646. {
  647. str.Append("<td align=\"left\"><div class=\"newValue\">" + dr[2] + "</div></td>");
  648. }
  649. }
  650. else
  651. {
  652. str.Append("<td align=\"left\">" + dr[1] + "</td>");
  653. str.Append("<td align=\"left\">" + dr[2] + "</td>");
  654. }
  655. str.Append("</tr>");
  656. }
  657. str.Append("</table>");
  658. rpt_gridDetail.InnerHtml = str.ToString();
  659. }
  660. }
  661. #endregion
  662. }
  663. }
  664. }