using System;
using CoreSavingLibrary;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using CoreSavingLibrary.WcfNCommon;
using CoreSavingLibrary.WcfShrlon;
using CoreSavingLibrary.WcfBusscom;
using Sybase.DataWindow;
using System.Web.Services.Protocols;
using DataLibrary;
using System.Data;
namespace Saving.Applications.shrlon
{
public partial class w_sheet_sl_loan_requestment_rayong : PageWebSheet, WebSheet
{
public String lc_loangroup = "02";
public String lc_loantype = null;
private DwThDate tDwMain;
//*******ประกาศตัวเกี่ยวกับ Javascript********//
protected String jsExpenseBank;
protected String jsExpenseCode;
protected String jsGetMemberInfo;
protected String jsGetMemberCollno;
protected String jsReNewPage;
protected String jsOpenOldDocNo;
protected String jsPostSetZero;
protected String jsSetpriod;
protected String jsCancelRequest;
protected String jsRefresh;
protected String jsCollInitP;
protected String jsCollCondition;
protected String jsSetDataList;
protected String jsPostColl;
protected String jsSumOthClr;
protected String jsContPeriod;
protected String jsChangeStartkeep;
protected String jsResumLoanClear;
protected String jsPermissSalary;
protected String jsRevert;
protected String jsPaycoopid;
protected String jsObjective;
protected String jsSetloantype;
protected String jsPostreturn;
protected String jsmaxcreditperiod;
protected String jsLoanpaymenttype;
protected string jssetcollrefcontno;
protected string jsSetloantypechg;
protected string JsReOtherclr;
protected string jsSetFixdate;
//*******ประกาศตัวเกี่ยวกับ Reprot********//
string reqdoc_no = "";
String member_no = "";
string fromset = "";
int x = 1;
protected String app;
protected String gid;
protected String rid;
protected String pdf;
protected String runProcess;
protected String popupReport;
protected String jsrunProcessLoan;
protected String jsRunProcessInvoice;
protected String jsrunProcessAgreeLoan;
protected String jsrunProcessAgreeColl;
protected String jsrunProcessCollReport;
protected String jsrunProcessDeptReport;
protected String jspopupAgreeLoanReport;
protected String jspopupAgreeCollReport;
protected String jspopupCollReport;
protected String jspopupReportInvoice;
protected String jspopupLoanReport;
protected String jspopupDeptReport;
protected string jsrecalloanpermiss;
//*******end Reprot********//
private ShrlonClient shrlonService;
private BusscomClient BusscomService;
private CommonClient commonService;
String ls_membtype = "";
String loantype = "";
int li_cramationstatus = 0;//สถานะฌาปนกิจ
String pbl = "sl_loan_requestment_cen.pbl";
///
/// Check Init Javascript
///
public void InitJsPostBack()
{
jsExpenseCode = WebUtil.JsPostBack(this, "jsExpenseCode");
jsExpenseBank = WebUtil.JsPostBack(this, "jsExpenseBank");
jsGetMemberInfo = WebUtil.JsPostBack(this, "jsGetMemberInfo");
jsGetMemberCollno = WebUtil.JsPostBack(this, "jsGetMemberCollno");
jsReNewPage = WebUtil.JsPostBack(this, "jsReNewPage");
jsOpenOldDocNo = WebUtil.JsPostBack(this, "jsOpenOldDocNo");
jsPostSetZero = WebUtil.JsPostBack(this, "jsPostSetZero");
jsSetpriod = WebUtil.JsPostBack(this, "jsSetpriod");
jsCancelRequest = WebUtil.JsPostBack(this, "jsCancelRequest");
jsRefresh = WebUtil.JsPostBack(this, "jsRefresh");
jsCollInitP = WebUtil.JsPostBack(this, "jsCollInitP");
jsCollCondition = WebUtil.JsPostBack(this, "jsCollCondition");
jsSetDataList = WebUtil.JsPostBack(this, "jsSetDataList");
jsPostColl = WebUtil.JsPostBack(this, "jsPostColl");
jsSumOthClr = WebUtil.JsPostBack(this, "jsSumOthClr");
jsChangeStartkeep = WebUtil.JsPostBack(this, "jsChangeStartkeep");
jsContPeriod = WebUtil.JsPostBack(this, "jsContPeriod");
jsResumLoanClear = WebUtil.JsPostBack(this, "jsResumLoanClear");
jsPermissSalary = WebUtil.JsPostBack(this, "jsPermissSalary");
jsRevert = WebUtil.JsPostBack(this, "jsRevert");
jsPaycoopid = WebUtil.JsPostBack(this, "jsPaycoopid");
jsObjective = WebUtil.JsPostBack(this, "jsObjective");
jsSetloantype = WebUtil.JsPostBack(this, "jsSetloantype");
jsPostreturn = WebUtil.JsPostBack(this, "jsPostreturn");
jsmaxcreditperiod = WebUtil.JsPostBack(this, "jsmaxcreditperiod");
jsmaxcreditperiod = WebUtil.JsPostBack(this, "jsSetFixdate");
jsrunProcessLoan = WebUtil.JsPostBack(this, "jsrunProcessLoan");
jsRunProcessInvoice = WebUtil.JsPostBack(this, "jsRunProcessInvoice");
jsrunProcessAgreeColl = WebUtil.JsPostBack(this, "jsrunProcessAgreeColl");
jsrunProcessCollReport = WebUtil.JsPostBack(this, "jsrunProcessCollReport");
jsrunProcessAgreeLoan = WebUtil.JsPostBack(this, "jsrunProcessAgreeLoan");
jsrunProcessDeptReport = WebUtil.JsPostBack(this, "jsrunProcessDeptReport");
jspopupAgreeLoanReport = WebUtil.JsPostBack(this, "jspopupAgreeLoanReport");
jspopupAgreeCollReport = WebUtil.JsPostBack(this, "jspopupAgreeCollReport");
jspopupCollReport = WebUtil.JsPostBack(this, "jspopupCollReport");
jspopupReportInvoice = WebUtil.JsPostBack(this, "jspopupReportInvoice");
jspopupLoanReport = WebUtil.JsPostBack(this, "jspopupLoanReport");
jspopupDeptReport = WebUtil.JsPostBack(this, "jspopupDeptReport");
jsrecalloanpermiss = WebUtil.JsPostBack(this, "jsrecalloanpermiss");
JsReOtherclr = WebUtil.JsPostBack(this, "JsReOtherclr");
runProcess = WebUtil.JsPostBack(this, "runProcess");
jssetcollrefcontno = WebUtil.JsPostBack(this, "jssetcollrefcontno");
jsSetloantypechg = WebUtil.JsPostBack(this, "jsSetloantypechg");
tDwMain = new DwThDate(dw_main, this);
tDwMain.Add("loanrequest_date", "loanrequest_tdate");
tDwMain.Add("loanrcvfix_date", "loanrcvfix_tdate");
tDwMain.Add("startkeep_date", "startkeep_tdate");
}
public void WebSheetLoadBegin()
{
try
{
shrlonService = wcf.Shrlon;
commonService = wcf.Common;
BusscomService = wcf.Busscom;
}
catch
{
LtServerMessage.Text = WebUtil.ErrorMessage("ติดต่อ Web Service ไม่ได้");
return;
}
if (IsPostBack)
{
this.RestoreContextDw(dw_main);
this.RestoreContextDw(dw_coll);
this.RestoreContextDw(dw_clear);
this.RestoreContextDw(dw_otherclr);
String setting = dw_coll.Describe("coop_id.Protect");
bool isChecked = CbCheckcoop.Checked;
if (isChecked)
{
dw_coll.Modify("coop_id.Protect=0");
RetreiveDDDW();
JsExpenseCode();
}
else
{
dw_coll.SetItemString(1, "coop_id", state.SsCoopControl);
dw_coll.Modify("coop_id.Protect=1");
}
}
else
{
HdShowRemark.Value = "false";
}
if (dw_main.RowCount < 1)
{
dw_main.DisplayOnly = false;
dw_clear.DisplayOnly = false;
dw_coll.DisplayOnly = false;
dw_otherclr.DisplayOnly = false;
Session["strItemchange"] = "";
dw_main.InsertRow(0);
dw_main.SetItemString(1, "memcoop_id", state.SsCoopControl);
RetreiveDDDW();
JsChangeStartkeep();
tDwMain.Eng2ThaiAllRow();
CbCheckcoop.Checked = false;
HdIsPostBack.Value = "false";
HdCheckRemark.Value = "false";
}
if (dw_main.RowCount > 1)
{
dw_main.DeleteRow(dw_main.RowCount);
}
//Session["strItemchange"] = "";
dw_message.Reset();
dw_message.InsertRow(0);
dw_message.DisplayOnly = false;
dw_message.Visible = false;
HdCheckRemark.Value = "false";
}
///
/// Check PostBack Javascript
///
///
public void CheckJsPostBack(string eventArg)
{
if (eventArg == "jsGetMemberInfo")
{
JsGetMemberInfo();
}
else if (eventArg == "jsExpenseBank")
{
JsExpenseBank();
}
else if (eventArg == "jsExpenseCode")
{
JsExpenseCode();
}
else if (eventArg == "jsGetMemberCollno")
{
JsGetMemberCollno();
}
else if (eventArg == "jsReNewPage")
{
JsReNewPage();
}
else if (eventArg == "jsOpenOldDocNo")
{
JsOpenOldDocNo();
}
else if (eventArg == "jsPostSetZero")
{
// LtServerMessage.Text = "ยอดเงินขอกู้มากกว่ายอดเงินสิทธิ์ให้กู้ ";
//hardcode
//dw_main.SetItemDecimal(1, "loanrequest_amt", 0);
}
else if (eventArg == "jsSetpriod")
{
JsSetpriod();
}
else if (eventArg == "jsCancelRequest")
{
JsCancelRequest();
}
else if (eventArg == "jsRefresh")
{
}
else if (eventArg == "jsCollInitP")
{
JsCollInitP();
}
else if (eventArg == "jsCollCondition")
{
JsCollCondition();
}
else if (eventArg == "jsSetDataList")
{
JsSetDataList();
}
else if (eventArg == "jsPostColl")
{
JsPostColl();
}
else if (eventArg == "jsChangeStartkeep")
{
JsChangeStartkeep();
}
else if (eventArg == "jsSumOthClr")
{
JsSumOthClr();
}
else if (eventArg == "jsContPeriod")
{
JsContPeriod();
}
else if (eventArg == "jsResumLoanClear")
{
JsResumLoanClear();
}
else if (eventArg == "jsPermissSalary")
{
JsPermissSalary();
}
else if (eventArg == "jsRevert")
{
JsRevert();
}
else if (eventArg == "jsObjective")
{
JsObjective();
}
else if (eventArg == "jsPaycoopid")
{
JsPaycoopid();
}
else if (eventArg == "jsrunProcessLoan") { JsrunProcessLoan(); }
else if (eventArg == "jsRunProcessInvoice") { JsRunProcessInvoice(); }
else if (eventArg == "jsrunProcessAgreeColl") { JsrunProcessAgreeColl(); }
else if (eventArg == "jsrunProcessCollReport") { JsrunProcessCollReport(); }
else if (eventArg == "jsrunProcessAgreeLoan") { JsrunProcessAgreeLoan(); }
else if (eventArg == "jspopupAgreeLoanReport") { JspopupAgreeLoanReport(); }
else if (eventArg == "jspopupAgreeCollReport") { JspopupAgreeCollReport(); }
else if (eventArg == "jspopupCollReport") { JspopupCollReport(); }
else if (eventArg == "jspopupReportInvoice") { JspopupReportInvoice(); }
else if (eventArg == "jspopupLoanReport") { JspopupLoanReport(); }
else if (eventArg == "jspopupDeptReport") { JspopupDeptReport(); }
else if (eventArg == "jsSetloantype")
{
JsSetloantype();
}
else if (eventArg == "jsPostreturn")
{
JsPostreturn();
}
else if (eventArg == "jsmaxcreditperiod")
{
Jsmaxcreditperiod();
}
else if (eventArg == "jssetcollrefcontno")
{
JsSetCollContno();
}
else if (eventArg == "jsSetloantypechg")
{
JsSetloantypechg();
}
else if (eventArg == "jsrecalloanpermiss")
{
Jsrecalloanpermiss();
}
else if (eventArg == "jsLoanpaymenttype") { JsLoanpaymenttype(); }
else if (eventArg == "JsReOtherclr")
{
ReOtherMain();
}
else if (eventArg == "jsSetFixdate")
{
JsSetFixdate();
}
}
private void Jsrecalloanpermiss()
{
Ltjspopupclr.Text = "";
JsSetMonthpayCoop();
//สิทธิกู้ตามเงินเดือนคงเลหือ
JsCalMaxLoanpermiss();
JsContPeriod();
dw_otherclr.Reset();
JsGenBuyshare();
JsCalinsurancepay();
JsSetmutualcoll();
JsSetmutualStability();
Jsfirstperiod();
JsSumOthClr();
}
private void JspopupLoanReport()
{
//เด้ง Popup ออกรายงานเป็น PDF.
//String pop = "Gcoop.OpenPopup('http://localhost/GCOOP/WebService/Report/PDF/20110223093839_shrlonchk_SHRLONCHK001.pdf')";
//String pop = "Gcoop.OpenPopup('" + Session["Loan"].ToString() + "')";
//Ltjspopup.Text = "";
//ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
reqdoc_no = txt_reqNo.Text;
member_no = txt_member_no.Text;
string as_xml = "";
try
{
try
{
fromset = state.SsPrinterSet;
}
catch (Exception ex)
{
fromset = "216";
}
string re = wcf.Shrlon.of_printloan(state.SsWsPass, reqdoc_no, fromset, state.SsCoopControl, member_no, ref as_xml);
}
catch (Exception ex) { LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์" + ex); }
}
private void JspopupLoanReport(bool isJsPrint, int printMode)
{
reqdoc_no = txt_reqNo.Text;
try
{
Printing.ShrlonPrintLoanReport(this, state.SsCoopId, reqdoc_no, printMode);
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์: " + ex.Message);
}
}
private void JspopupLoanCollReport(bool isJsPrint, int printMode)
{
reqdoc_no = txt_reqNo.Text;
try
{
Printing.ShrlonPrintCollReport(this, state.SsCoopId, reqdoc_no, printMode);
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์: " + ex.Message);
}
}
private void JspopupLoanReqReport(bool isJsPrint, int printMode)
{
reqdoc_no = txt_reqNo.Text;
try
{
Printing.ShrlonPrintReqReport(this, state.SsCoopId, reqdoc_no, printMode);
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์: " + ex.Message);
}
}
private void JspopupLoanExpandReport(bool isJsPrint, int printMode)
{
reqdoc_no = txt_reqNo.Text;
try
{
Printing.ShrlonPrintExpandReport(this, state.SsCoopId, reqdoc_no, printMode);
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์: " + ex.Message);
}
}
private void JspopupReportInvoice()
{
//เด้ง Popup ออกรายงานเป็น PDF.
//String pop = "Gcoop.OpenPopup('http://localhost/GCOOP/WebService/Report/PDF/20110223093839_shrlonchk_SHRLONCHK001.pdf')";
//String pop = "Gcoop.OpenPopup('" + Session["pdfinvoice"].ToString() + "')";
//ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
}
private void JsRunProcessInvoice()
{
// --- Page Arguments
try
{
app = Request["app"].ToString();
}
catch { }
if (app == null || app == "")
{
app = state.SsApplication;
}
try
{
//gid = Request["gid"].ToString();
gid = "LNNORM_DAILY";
}
catch { }
try
{
//rid = Request["rid"].ToString();
rid = "LNNORM_DAILY13";
}
catch { }
String doc_no = "";// DwMain.GetItemString(1, "loanrequest_docno");
String coop_id;
try { coop_id = dw_main.GetItemString(1, "coop_id"); }
catch { coop_id = state.SsCoopId; }
if (x == 2)
{
doc_no = reqdoc_no;
}
if (doc_no == null || doc_no == "")
{
return;
}
//แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
ReportHelper lnv_helper = new ReportHelper();
lnv_helper.AddArgument(coop_id, ArgumentType.String);
lnv_helper.AddArgument(doc_no, ArgumentType.String);
//ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
pdfFileName += "_" + gid + "_" + rid + ".pdf";
pdfFileName = pdfFileName.Trim();
//ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
try
{
CoreSavingLibrary.WcfReport.ReportClient lws_report = wcf.Report;
String criteriaXML = lnv_helper.PopArgumentsXML();
this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
if (li_return == "true")
{
HdOpenIFrame.Value = "True";
HdcheckPdf.Value = "True";
}
else if (li_return != "true")
{
HdcheckPdf.Value = "False";
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
return;
}
Session["pdfinvoice"] = pdf;
//PopupReport();
}
private void JspopupCollReport()
{
//เด้ง Popup ออกรายงานเป็น PDF.
//String pop = "Gcoop.OpenPopup('http://localhost/GCOOP/WebService/Report/PDF/20110223093839_shrlonchk_SHRLONCHK001.pdf')";
//String pop = "Gcoop.OpenPopup('" + Session["Coll"].ToString() + "')";
//Ltjspopup.Text = "";
////ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
reqdoc_no = txt_reqNo.Text;
member_no = txt_member_no.Text;
string as_xml = "";
try
{
try
{
fromset = state.SsPrinterSet;
}
catch (Exception ex)
{
fromset = "216";
}
string re = wcf.Shrlon.of_printloancoll(state.SsWsPass, reqdoc_no, fromset, state.SsCoopId, member_no, ref as_xml);
}
catch (Exception ex) { LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์" + ex); }
}
private void JspopupAgreeCollReport()
{
//เด้ง Popup ออกรายงานเป็น PDF.
//String pop = "Gcoop.OpenPopup('http://localhost/GCOOP/WebService/Report/PDF/20110223093839_shrlonchk_SHRLONCHK001.pdf')";
//String pop = "Gcoop.OpenPopup('" + Session["AgreeColl"].ToString() + "')";
//// ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
//Ltjspopup.Text = "";
reqdoc_no = txt_reqNo.Text;
member_no = txt_member_no.Text;
string as_xml = "";
try
{
try
{
fromset = state.SsPrinterSet;
}
catch (Exception ex)
{
fromset = "216";
}
string re = wcf.Shrlon.of_printloancollagree(state.SsWsPass, reqdoc_no, fromset, state.SsCoopId, member_no, ref as_xml);
}
catch (Exception ex) { LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์" + ex); }
}
private void JspopupAgreeLoanReport()
{
//เด้ง Popup ออกรายงานเป็น PDF.
//String pop = "Gcoop.OpenPopup('http://localhost/GCOOP/WebService/Report/PDF/20110223093839_shrlonchk_SHRLONCHK001.pdf')";
String pop = "Gcoop.OpenPopup('" + Session["AgreeLoan"].ToString() + "')";
Ltjspopup.Text = "";
//ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
//reqdoc_no = DwMain.GetItemString(1, "loanrequest_docno");
//member_no = DwMain.GetItemString(1, "member_no");
//try
//{
// try
// {
// fromset = state.SsPrinterSet;
// }
// catch (Exception ex)
// {
// fromset = "216";
// }
// string re = wcf.Shrlon.of_printloanagree(state.SsWsPass, reqdoc_no, fromset, state.SsCoopId, member_no);
//}
//catch (Exception ex) { LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์" + ex); }
}
private void JsrunProcessAgreeLoan()
{
// --- Page Arguments
try
{
app = Request["app"].ToString();
}
catch { }
if (app == null || app == "")
{
app = state.SsApplication;
}
try
{
//gid = Request["gid"].ToString();
gid = "LNNORM_DAILY";
}
catch { }
try
{
//rid = Request["rid"].ToString();
rid = "LNNORM_DAILY18";
}
catch { }
String doc_no = "";
//= dw_main.GetItemString(1, "loanrequest_docno");
String coop_id;
try { coop_id = dw_main.GetItemString(1, "coop_id"); }
catch { coop_id = state.SsCoopId; }
if (x == 2)
{
doc_no = reqdoc_no;
}
if (doc_no == null || doc_no == "")
{
return;
}
//String ls_xmlmain = dw_main.Describe("DataWindow.Data.XML");
//String ls_format = "CAT";
//short li_membtime = 0; Decimal ldc_right25 = 0; Decimal ldc_right33 = 0; Decimal ldc_right35 = 0; Decimal ldc_right26 = 0; Decimal ldc_right40 = 0;
//int re = shrlonService.of_print_callpermiss(state.SsWsPass, ls_xmlmain, ls_format, ref li_membtime, ref ldc_right25, ref ldc_right33, ref ldc_right35, ref ldc_right26, ref ldc_right40);
//Decimal li_membtime_ = li_membtime;
//Decimal ldc_right25_ = ldc_right25;
//Decimal ldc_right33_ = ldc_right33;
//Decimal ldc_right35_ = ldc_right35;
//Decimal ldc_right26_ = ldc_right26;
//Decimal ldc_right40_ = ldc_right40;
//string loan26 = dw_main.GetItemString(1, "loantype_code");
//if (loan26 == "26")
//{
// decimal right26 = dw_main.GetItemDecimal(1, "loancredit_amt");
// ldc_right26_ = right26;
// ldc_right33_ = 0;
// ldc_right35_ = 0;
// ldc_right25_ = 0;
//}
//แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
ReportHelper lnv_helper = new ReportHelper();
lnv_helper.AddArgument(coop_id, ArgumentType.String);
lnv_helper.AddArgument(doc_no, ArgumentType.String);
//lnv_helper.AddArgument(li_membtime_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right25_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right33_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right35_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right26_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right40_.ToString(), ArgumentType.Number);
//ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
pdfFileName += "_" + gid + "_" + rid + ".pdf";
pdfFileName = pdfFileName.Trim();
//ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
try
{
CoreSavingLibrary.WcfReport.ReportClient lws_report = wcf.Report;
String criteriaXML = lnv_helper.PopArgumentsXML();
this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
if (li_return == "true")
{
HdOpenIFrame.Value = "True";
HdcheckPdf.Value = "True";
}
else if (li_return != "true")
{
HdcheckPdf.Value = "False";
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
return;
}
//Session["AgreeLoan"] = pdf;
// PopupReport();
Ltjspopup.Text += "ยินยอมผู้กู้
";
}
private void JsrunProcessCollReport()
{
// --- Page Arguments
try
{
app = Request["app"].ToString();
}
catch { }
if (app == null || app == "")
{
app = state.SsApplication;
}
try
{
//gid = Request["gid"].ToString();
gid = "LNNORM_DAILY";
}
catch { }
try
{
//rid = Request["rid"].ToString();
rid = "LNNORM_DAILY17";
}
catch { }
String doc_no = "";// DwMain.GetItemString(1, "loanrequest_docno");
String coop_id;
try { coop_id = dw_main.GetItemString(1, "coop_id"); }
catch { coop_id = state.SsCoopId; }
if (x == 2)
{
doc_no = reqdoc_no;
}
if (doc_no == null || doc_no == "")
{
return;
}
//String ls_xmlmain = dw_main.Describe("DataWindow.Data.XML");
//String ls_format = "CAT";
//short li_membtime = 0; Decimal ldc_right25 = 0; Decimal ldc_right33 = 0; Decimal ldc_right35 = 0; Decimal ldc_right26 = 0; Decimal ldc_right40 = 0;
//int re = shrlonService.of_print_callpermiss(state.SsWsPass, ls_xmlmain, ls_format, ref li_membtime, ref ldc_right25, ref ldc_right33, ref ldc_right35, ref ldc_right26, ref ldc_right40);
//Decimal li_membtime_ = li_membtime;
//Decimal ldc_right25_ = ldc_right25;
//Decimal ldc_right33_ = ldc_right33;
//Decimal ldc_right35_ = ldc_right35;
//Decimal ldc_right26_ = ldc_right26;
//Decimal ldc_right40_ = ldc_right40;
//string loan26 = dw_main.GetItemString(1, "loantype_code");
//if (loan26 == "26")
//{
// decimal right26 = dw_main.GetItemDecimal(1, "loancredit_amt");
// ldc_right26_ = right26;
// ldc_right33_ = 0;
// ldc_right35_ = 0;
// ldc_right25_ = 0;
//}
//แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
ReportHelper lnv_helper = new ReportHelper();
lnv_helper.AddArgument(coop_id, ArgumentType.String);
lnv_helper.AddArgument(doc_no, ArgumentType.String);
//lnv_helper.AddArgument(li_membtime_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right25_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right33_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right35_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right26_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right40_.ToString(), ArgumentType.Number);
//ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
pdfFileName += "_" + gid + "_" + rid + ".pdf";
pdfFileName = pdfFileName.Trim();
//ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
try
{
CoreSavingLibrary.WcfReport.ReportClient lws_report = wcf.Report;
String criteriaXML = lnv_helper.PopArgumentsXML();
this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
if (li_return == "true")
{
HdOpenIFrame.Value = "True";
HdcheckPdf.Value = "True";
}
else if (li_return != "true")
{
HdcheckPdf.Value = "False";
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
return;
}
// Session["Coll"] = pdf;
Ltjspopup.Text += "สัญญาผู้ค้ำ
";
// PopupReport();
}
private void JsrunProcessAgreeColl()
{
// --- Page Arguments
try
{
app = Request["app"].ToString();
}
catch { }
if (app == null || app == "")
{
app = state.SsApplication;
}
try
{
//gid = Request["gid"].ToString();
gid = "LNNORM_DAILY";
}
catch { }
try
{
//rid = Request["rid"].ToString();
rid = "LNNORM_DAILY16";
}
catch { }
String doc_no = "";// DwMain.GetItemString(1, "loanrequest_docno");
String coop_id;
try { coop_id = dw_main.GetItemString(1, "coop_id"); }
catch { coop_id = state.SsCoopId; }
if (x == 2)
{
doc_no = reqdoc_no;
}
if (doc_no == null || doc_no == "")
{
return;
}
//String ls_xmlmain = dw_main.Describe("DataWindow.Data.XML");
//String ls_format = "CAT";
//short li_membtime = 0; Decimal ldc_right25 = 0; Decimal ldc_right33 = 0; Decimal ldc_right35 = 0; Decimal ldc_right26 = 0; Decimal ldc_right40 = 0;
//int re = shrlonService.of_print_callpermiss(state.SsWsPass, ls_xmlmain, ls_format, ref li_membtime, ref ldc_right25, ref ldc_right33, ref ldc_right35, ref ldc_right26, ref ldc_right40);
//Decimal li_membtime_ = li_membtime;
//Decimal ldc_right25_ = ldc_right25;
//Decimal ldc_right33_ = ldc_right33;
//Decimal ldc_right35_ = ldc_right35;
//Decimal ldc_right26_ = ldc_right26;
//Decimal ldc_right40_ = ldc_right40;
//string loan26 = dw_main.GetItemString(1, "loantype_code");
//if (loan26 == "26")
//{
// decimal right26 = dw_main.GetItemDecimal(1, "loancredit_amt");
// ldc_right26_ = right26;
// ldc_right33_ = 0;
// ldc_right35_ = 0;
// ldc_right25_ = 0;
//}
//แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
ReportHelper lnv_helper = new ReportHelper();
lnv_helper.AddArgument(coop_id, ArgumentType.String);
lnv_helper.AddArgument(doc_no, ArgumentType.String);
//lnv_helper.AddArgument(li_membtime_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right25_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right33_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right35_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right26_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right40_.ToString(), ArgumentType.Number);
//ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
pdfFileName += "_" + gid + "_" + rid + ".pdf";
pdfFileName = pdfFileName.Trim();
//ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
try
{
CoreSavingLibrary.WcfReport.ReportClient lws_report = wcf.Report;
String criteriaXML = lnv_helper.PopArgumentsXML();
this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
if (li_return == "true")
{
HdOpenIFrame.Value = "True";
HdcheckPdf.Value = "True";
}
else if (li_return != "true")
{
HdcheckPdf.Value = "False";
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
return;
}
// Session["AgreeColl"] = pdf;
Ltjspopup.Text += "ยินยอมผู้ค้ำ
";
// PopupReport();
}
private void JsrunProcessLoan()
{
// --- Page Arguments
try
{
app = Request["app"].ToString();
}
catch { }
if (app == null || app == "")
{
app = state.SsApplication;
}
try
{
//gid = Request["gid"].ToString();
gid = "LNNORM_DAILY";
}
catch { }
try
{
//rid = Request["rid"].ToString();
rid = "LNNORM_DAILY15";
}
catch { }
String doc_no = "";// DwMain.GetItemString(1, "loanrequest_docno");
String coop_id;
try { coop_id = dw_main.GetItemString(1, "coop_id"); }
catch { coop_id = state.SsCoopId; }
if (x == 2)
{
doc_no = reqdoc_no;
}
if (doc_no == null || doc_no == "")
{
return;
}
//String ls_xmlmain = dw_main.Describe("DataWindow.Data.XML");
//String ls_format = "CAT";
//short li_membtime = 0; Decimal ldc_right25 = 0; Decimal ldc_right33 = 0; Decimal ldc_right35 = 0; Decimal ldc_right26 = 0; Decimal ldc_right40 = 0;
//int re = shrlonService.of_print_callpermiss(state.SsWsPass, ls_xmlmain, ls_format, ref li_membtime, ref ldc_right25, ref ldc_right33, ref ldc_right35, ref ldc_right26, ref ldc_right40);
//Decimal li_membtime_ = li_membtime;
//Decimal ldc_right25_ = ldc_right25;
//Decimal ldc_right33_ = ldc_right33;
//Decimal ldc_right35_ = ldc_right35;
//Decimal ldc_right26_ = ldc_right26;
//Decimal ldc_right40_ = ldc_right40;
//string loan26 = dw_main.GetItemString(1, "loantype_code");
//if (loan26 == "26")
//{
// decimal right26 = dw_main.GetItemDecimal(1, "loancredit_amt");
// ldc_right26_ = right26;
// ldc_right33_ = 0;
// ldc_right35_ = 0;
// ldc_right25_ = 0;
//}
//แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
ReportHelper lnv_helper = new ReportHelper();
lnv_helper.AddArgument(coop_id, ArgumentType.String);
lnv_helper.AddArgument(doc_no, ArgumentType.String);
//lnv_helper.AddArgument(li_membtime_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right25_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right33_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right35_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right26_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right40_.ToString(), ArgumentType.Number);
//ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
pdfFileName += "_" + gid + "_" + rid + ".pdf";
pdfFileName = pdfFileName.Trim();
//ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
try
{
CoreSavingLibrary.WcfReport.ReportClient lws_report = wcf.Report;
String criteriaXML = lnv_helper.PopArgumentsXML();
this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
if (li_return == "true")
{
HdOpenIFrame.Value = "True";
HdcheckPdf.Value = "True";
}
else if (li_return != "true")
{
HdcheckPdf.Value = "False";
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
return;
}
// Session["Loan"] = pdf;
Ltjspopup.Text += "สัญญาผู้กู้
";
// PopupReport();
}
private void JspopupDeptReport()
{
//เด้ง Popup ออกรายงานเป็น PDF.
//String pop = "Gcoop.OpenPopup('http://localhost/GCOOP/WebService/Report/PDF/20110223093839_shrlonchk_SHRLONCHK001.pdf')";
//String pop = "Gcoop.OpenPopup('" + Session["dept"].ToString() + "')";
//ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
reqdoc_no = txt_reqNo.Text;
member_no = txt_member_no.Text;
string as_xml = "";
try
{
try
{
fromset = state.SsPrinterSet;
}
catch (Exception ex)
{
fromset = "216";
}
string re = wcf.Shrlon.of_printloandept(state.SsWsPass, reqdoc_no, fromset, state.SsCoopId, member_no, ref as_xml);
}
catch (Exception ex) { LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์" + ex); }
}
private void JspopupDeptReport(bool isJsPrint, int printMode)
{
try
{
reqdoc_no = txt_reqNo.Text;
Printing.ShrlonPrintDeptReport(this, state.SsCoopId, reqdoc_no, printMode);
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage("ตรวจสอบเครื่องพิมพ์: " + ex.Message);
}
}
private void jJsrunProcessDeptReport()
{
// --- Page Arguments
try
{
app = Request["app"].ToString();
}
catch { }
if (app == null || app == "")
{
app = state.SsApplication;
}
try
{
//gid = Request["gid"].ToString();
gid = "LNNORM_DAILY";
}
catch { }
try
{
//rid = Request["rid"].ToString();
rid = "LNNORM_DAILY19";
}
catch { }
String doc_no = "";// DwMain.GetItemString(1, "loanrequest_docno");
String coop_id;
try { coop_id = dw_main.GetItemString(1, "coop_id"); }
catch { coop_id = state.SsCoopId; }
if (x == 2)
{
doc_no = reqdoc_no;
}
if (doc_no == null || doc_no == "")
{
return;
}
//String ls_xmlmain = dw_main.Describe("DataWindow.Data.XML");
//String ls_format = "CAT";
//short li_membtime = 0; Decimal ldc_right25 = 0; Decimal ldc_right33 = 0; Decimal ldc_right35 = 0; Decimal ldc_right26 = 0; Decimal ldc_right40 = 0;
//int re = shrlonService.of_print_callpermiss(state.SsWsPass, ls_xmlmain, ls_format, ref li_membtime, ref ldc_right25, ref ldc_right33, ref ldc_right35, ref ldc_right26, ref ldc_right40);
//Decimal li_membtime_ = li_membtime;
//Decimal ldc_right25_ = ldc_right25;
//Decimal ldc_right33_ = ldc_right33;
//Decimal ldc_right35_ = ldc_right35;
//Decimal ldc_right26_ = ldc_right26;
//Decimal ldc_right40_ = ldc_right40;
//string loan26 = dw_main.GetItemString(1, "loantype_code");
//if (loan26 == "26")
//{
// decimal right26 = dw_main.GetItemDecimal(1, "loancredit_amt");
// ldc_right26_ = right26;
// ldc_right33_ = 0;
// ldc_right35_ = 0;
// ldc_right25_ = 0;
//}
//แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
ReportHelper lnv_helper = new ReportHelper();
lnv_helper.AddArgument(coop_id, ArgumentType.String);
lnv_helper.AddArgument(doc_no, ArgumentType.String);
//lnv_helper.AddArgument(li_membtime_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right25_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right33_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right35_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right26_.ToString(), ArgumentType.Number);
//lnv_helper.AddArgument(ldc_right40_.ToString(), ArgumentType.Number);
//ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
pdfFileName += "_" + gid + "_" + rid + ".pdf";
pdfFileName = pdfFileName.Trim();
//ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
try
{
CoreSavingLibrary.WcfReport.ReportClient lws_report = wcf.Report;
String criteriaXML = lnv_helper.PopArgumentsXML();
this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
if (li_return == "true")
{
HdOpenIFrame.Value = "True";
HdcheckPdf.Value = "True";
}
else if (li_return != "true")
{
HdcheckPdf.Value = "False";
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
return;
}
Session["dept"] = pdf;
// PopupReport();
}
private void JspopupReportslipfin()
{
//เด้ง Popup ออกรายงานเป็น PDF.
//String pop = "Gcoop.OpenPopup('http://localhost/GCOOP/WebService/Report/PDF/20110223093839_shrlonchk_SHRLONCHK001.pdf')";
String pop = "Gcoop.OpenPopup('" + Session["pdfslipfin"].ToString() + "')";
ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
}
private void JsRunProcessslipfin()
{
// --- Page Arguments
try
{
app = Request["app"].ToString();
}
catch { }
if (app == null || app == "")
{
app = state.SsApplication;
}
try
{
//gid = Request["gid"].ToString();
gid = "LNNORM_DAILY";
}
catch { }
try
{
//rid = Request["rid"].ToString();
rid = "LNNORM_DAILY20";
}
catch { }
String doc_no = "";// DwMain.GetItemString(1, "loanrequest_docno");
String coop_id;
try { coop_id = dw_main.GetItemString(1, "coop_id"); }
catch { coop_id = state.SsCoopId; }
if (x == 2)
{
doc_no = reqdoc_no;
}
if (doc_no == null || doc_no == "")
{
return;
}
//แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
ReportHelper lnv_helper = new ReportHelper();
lnv_helper.AddArgument(coop_id, ArgumentType.String);
lnv_helper.AddArgument(doc_no, ArgumentType.String);
//ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
pdfFileName += "_" + gid + "_" + rid + ".pdf";
pdfFileName = pdfFileName.Trim();
//ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
try
{
CoreSavingLibrary.WcfReport.ReportClient lws_report = wcf.Report;
String criteriaXML = lnv_helper.PopArgumentsXML();
this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
if (li_return == "true")
{
HdOpenIFrame.Value = "True";
HdcheckPdf.Value = "True";
}
else if (li_return != "true")
{
HdcheckPdf.Value = "False";
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
return;
}
Session["pdfslipfin"] = pdf;
//PopupReport();
}
///
///บันทึกใบคำขอ
///
public void SaveWebSheet()
{
try
{
int li_return = JsCheckDataBeforesave();
if (li_return == 1)
{
dw_main.SetItemString(1, "coop_id", state.SsCoopId);
String memcoop_id = dw_main.GetItemString(1, "memcoop_id");
member_no = dw_main.GetItemString(1, "member_no");
String dwMain_XML = dw_main.Describe("DataWindow.Data.XML");
String dwColl_XML = "";
String dwClear_XML = "";
String dwOtherClr_XML = "";
DateTime ldtm_loanrequest = dw_main.GetItemDateTime(1, "loanrequest_date");
string ls_message = "";
Decimal use_amt = 0;
String as_deptaccount = "";
//wa กรณีกู้เพิ่ม
decimal loanrequest_type = dw_main.GetItemDecimal(1, "loanrequest_type");
decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
try
{
for (int i = 1; i <= dw_coll.RowCount; i++)
{
string ref_collno = "";
ref_collno = dw_coll.GetItemString(i, "ref_collno");
if (ref_collno != null || ref_collno != "")
{
dw_coll.SetItemString(i, "coop_id", state.SsCoopId);
dw_coll.SetItemString(i, "refcoop_id", state.SsCoopControl);
}
}
//mai กรณี ไม่มีการค้ำประกันให้สามารถบันทึกได้
if (dw_coll.RowCount > 0)
{
//dw_coll.SetFilter("ref_collno <>'' ");
//dw_coll.Filter();
dwColl_XML = dw_coll.Describe("DataWindow.Data.XML");
}
}
catch { dwColl_XML = ""; }
try
{
for (int i = 1; i <= dw_clear.RowCount; i++)
{
dw_clear.SetItemString(i, "coop_id", state.SsCoopId);
dw_clear.SetItemString(i, "concoop_id", state.SsCoopControl);
}
if (dw_clear.RowCount > 0)
{
dwClear_XML = dw_clear.Describe("DataWindow.Data.XML");
}
}
catch { dwClear_XML = ""; }
try
{
for (int i = 1; i <= dw_otherclr.RowCount; i++)
{
dw_otherclr.SetItemString(i, "coop_id", state.SsCoopId);
}
if (dw_otherclr.RowCount > 0)
{
dwOtherClr_XML = dw_otherclr.Describe("DataWindow.Data.XML");
}
}
catch { dwOtherClr_XML = ""; }
str_itemchange strList = new str_itemchange();
str_savereqloan strSave = new str_savereqloan();
strList = WebUtil.str_itemchange_session(this);
strSave.xml_main = dwMain_XML;
strSave.xml_clear = dwClear_XML;
strSave.xml_guarantee = dwColl_XML;
strSave.xml_otherclr = dwOtherClr_XML;
strSave.contcoopid = state.SsCoopControl;
strSave.format_type = "CAT";
strSave.entry_id = state.SsUsername;
strSave.coop_id = state.SsCoopId;
String period_payamt = dw_main.GetItemDecimal(1, "period_payamt").ToString("0.00");
bool is_point1 = period_payamt.IndexOf(".00") < 0;
String period_payment = dw_main.GetItemDecimal(1, "period_payment").ToString("0.00");
bool is_point2 = period_payment.IndexOf(".00") < 0;
if (is_point1 == true || is_point2 == true)
{
if (is_point1 == true) { LtServerMessage.Text = WebUtil.ErrorMessage("จำนวนงวดเป็นทศนิยม =" + period_payamt); }
else if (is_point2 == true) { LtServerMessage.Text = WebUtil.ErrorMessage("ต้นชำระเป็นทศนิยม =" + period_payment); }
else { LtServerMessage.Text = WebUtil.ErrorMessage("ยอดค้ำน้อยกว่ายอดขอกู้ กรุณาตรวจสอบ หรือกด คำนวณ % ใหม่อีกครั้ง "); }
}
else
{
String runningNo = shrlonService.LoanRightSaveReqloan(state.SsWsPass, ref strSave);
reqdoc_no = strSave.request_no;
txt_reqNo.Text = reqdoc_no;
txt_member_no.Text = member_no;
x = 2;
//เช็คอายัดเงินฝากค้ำประกัน
for (int i = 1; i <= dw_coll.RowCount; i++)
{
string loancolltype_code = dw_coll.GetItemString(i, "loancolltype_code");
if (loancolltype_code == "03")
{
use_amt = dw_coll.GetItemDecimal(i, "use_amt");
as_deptaccount = dw_coll.GetItemString(i, "ref_collno");
int reslut = shrlonService.of_autosequest(state.SsWsPass, as_deptaccount, state.SsCoopControl, use_amt, ldtm_loanrequest, state.SsClientIp, ref ls_message);
}
}
dw_main.SetItemString(1, "loanrequest_docno", reqdoc_no);
LtServerMessage.Text = WebUtil.CompleteMessage("บันทึกข้อมูลเรียบร้อยแล้ว");
Ltdividen.Text = " ";
Ltjspopup.Text = " ";
String ls_loantype = dw_main.GetItemString(1, "loantype_code");
Session["loantypeCode"] = ls_loantype;
//JsReNewPage();
LinkButton1.Visible = true;
LinkButton2.Visible = true;
LinkButton3.Visible = true;
LinkButton4.Visible = true;
}
}
}
catch (Exception ex)
{ LtServerMessage.Text = WebUtil.ErrorMessage(ex); }
}
private void Jscheckloancontarrer()
{
string membno = dw_main.GetItemString(1, "member_no");
string ls_sql = "select sum( principal_arrear) as prn_arrear, sum(interest_arrear) as int_arrear from lncontmaster where member_no = '" + membno + "'";
Sdt dtcont = WebUtil.QuerySdt(ls_sql);
if (dtcont.Next())
{
decimal prnc_arrear = dtcont.GetDecimal("prn_arrear");
decimal int_arrear = dtcont.GetDecimal("int_arrear");
if (prnc_arrear > 0 || int_arrear > 0)
{
LtServerMessage.Text = WebUtil.WarningMessage(" สมาชิกท่านนี้มียอดค้างชำระกับสหกรณ์ เป็นต้น " + prnc_arrear.ToString() + " และมียอดค้างชำระ ดบ. " + int_arrear.ToString());
}
}
}
public void WebSheetLoadEnd()
{
JsExpenseCode();
try
{
//DataWindowChild dwloantype_code = dw_main.GetChild("loantype_code_1");
//dwloantype_code.SetFilter("LNLOANTYPE.LOANGROUP_CODE ='" + lc_loangroup + "'");
//dwloantype_code.Filter();
JsSumOthClr();
//DateTime ReqDate = dw_main.GetItemDateTime(1, "loanrequest_date");
//dw_main.SetItemTime(1, "loanrcvfix_date", ReqDate);
//tDwMain.Eng2ThaiAllRow();
//string ReqDate = dw_main.GetItemString(1, "loanrequest_date");
//dw_main.SetItemString(1, "loanrcvfix_tdate", ReqDate);
str_itemchange strList = new str_itemchange();
strList.xml_main = dw_main.Describe("DataWindow.Data.XML");
if (dw_clear.RowCount == 0)
{ strList.xml_clear = null; }
else { strList.xml_clear = dw_clear.Describe("DataWindow.Data.XML"); }
if (dw_coll.RowCount == 0) { strList.xml_guarantee = null; }
else { strList.xml_guarantee = dw_coll.Describe("DataWindow.Data.XML"); }
Session["strItemchange"] = strList;
//หาจำนวนงวดที่ชำระ
string member_no = dw_main.GetItemString(1, "member_no");
if (member_no != null || member_no != "")
{
DateTime startkeep_date = dw_main.GetItemDate(1, "startkeep_date");
DateTime retry_date = dw_main.GetItemDateTime(1, "retry_date");
Int32 month_ = 12 - (startkeep_date.Month - 1);
Int32 retryage = (retry_date.Year - startkeep_date.Year - 1) * 12 + 9 + month_;
dw_main.SetItemDecimal(1, "retry_age", retryage);
}
}
catch { }
DwUtil.RetrieveDDDW(dw_coll, "loancolltype_code", pbl, null);
dw_main.SaveDataCache();//main
dw_coll.SaveDataCache();//หลักประกัน
dw_clear.SaveDataCache();//หักกลบ
dw_otherclr.SaveDataCache();//หักอื่น
}
///
/// reset หน้าใหม่
///
private void JsReNewPage()
{
string loantype_code = dw_main.GetItemString(1, "loantype_code");
dw_main.Reset();
dw_main.InsertRow(0);
dw_coll.Reset();
dw_clear.Reset();
dw_otherclr.Reset();
dw_main.SetItemString(1, "memcoop_id", state.SsCoopControl);
dw_main.SetItemString(1, "loantype_code", loantype_code);
dw_main.SetItemString(1, "loantype_code_1", loantype_code);
Session["loantypeCode"] = loantype_code;
RetreiveDDDW();
//JsChangeStartkeep();
dw_main.SetItemDateTime(1, "loanrequest_date", state.SsWorkDate);
dw_main.SetItemDate(1, "loanrcvfix_date", state.SsWorkDate); // edit by bank
tDwMain.Eng2ThaiAllRow();
JsSetloantype();
HdIsPostBack.Value = "false";
HdCheckRemark.Value = "false";
HdShowRemark.Value = "false";
Ltjspopup.Text = " ";
Ltjspopupclr.Text = "";
//DataWindowChild dwloantype_code = dw_main.GetChild("loantype_code_1");
//dwloantype_code.SetFilter("LNLOANTYPE.LOANTYPE_CODE in ('20','21','22') ");
//dwloantype_code.Filter();
}
///
/// retreive datawindows dropdown
///
public void RetreiveDDDW()
{
try
{
loantype = Session["loantypeCode"].ToString();
Session.Remove("loantype");
}
catch
{
String sql = "";
//if (state.SsCoopControl == "001001")
//{
// sql = "select min(loantype_code) from lnloantype where loangroup_code='" + lc_loangroup + "' and coop_id = '" + state.SsCoopControl + "'";
//}
//else
//{
sql = "select min(loantype_code) from lnloantype where coop_id = '" + state.SsCoopControl + "'";
//}
DataTable dt = WebUtil.Query(sql);
if (dt.Rows.Count > 0)
{
lc_loantype = dt.Rows[0][0].ToString().Trim();
loantype = lc_loantype;
Session.Remove("loantype");
}
else
{
throw new Exception("ไม่พบประเภทเงินกู้");
}
}
try
{
DwUtil.RetrieveDDDW(dw_main, "loantype_code_1", pbl, null);
if (loantype == "")
{
///<กำหนดค่าเริ่มต้น เป็นสามัญ>
dw_main.SetItemString(1, "loantype_code", lc_loantype);
}
else
{
//mai แก้ไข retrieve Dropdown
DataWindowChild dwloantype_code = dw_main.GetChild("loantype_code_1");
//dwloantype_code.SetFilter("LNLOANTYPE.LOANGROUP_CODE ='" + lc_loangroup + "'");
//dwloantype_code.Filter();
dw_main.SetItemString(1, "loantype_code", loantype);
}
DwUtil.RetrieveDDDW(dw_main, "expense_code", pbl, null);
DwUtil.RetrieveDDDW(dw_main, "loanobjective_code_1", pbl, loantype);
DwUtil.RetrieveDDDW(dw_main, "membtype_code", pbl, null);
DwUtil.RetrieveDDDW(dw_main, "coop_id_1", pbl, null);
DwUtil.RetrieveDDDW(dw_main, "memcoop_id", pbl, null);
DwUtil.RetrieveDDDW(dw_main, "paytoorder_desc_1", pbl, null);
//wa DwUtil.RetrieveDDDW(dw_main, "expense_branch_1", pbl, null);
//mai แก้ไขเพิ่ม coop_id
DataWindowChild paytoorder = dw_main.GetChild("paytoorder_desc_1");
//if (state.SsUsername == "Loan01")
//{
// dw_main.SetItemString(1, "paytoorder_desc", "001001");
//}
//else if (state.SsUsername == "Loan02")
//{
// dw_main.SetItemString(1, "paytoorder_desc", "001002");
//}
//else if (state.SsUsername == "Loan03")
//{
// dw_main.SetItemString(1, "paytoorder_desc", "001003");
//}
//else if (state.SsUsername == "Loan04")
//{
// dw_main.SetItemString(1, "paytoorder_desc", "001004");
//}
// else {
dw_main.SetItemString(1, "paytoorder_desc", state.SsCoopId);
//}
//mai เพิ่ม coop_id
dw_main.SetItemString(1, "coop_id", state.SsCoopId);
DwUtil.RetrieveDDDW(dw_coll, "loancolltype_code", pbl, null);
DwUtil.RetrieveDDDW(dw_coll, "coop_id", pbl, null);
DwUtil.RetrieveDDDW(dw_otherclr, "clrothertype_code", pbl, null);
}
catch (Exception ex) { LtServerMessage.Text = WebUtil.ErrorMessage(ex); }
}
///
/// กำหนดวันที่จ่ายเงินกู้และวันที่เรียกเก็บ
///
private void JsChangeStartkeep()
{
try
{
JsSetFixdate();
DateTime postingdate = new DateTime();
DateTime processdate = new DateTime();
DateTime ldtm_loanreceive = new DateTime();
//dw_main.SetItemDateTime(1, "loanrequest_date", state.SsWorkDate);
DateTime ldtm_loanrequest = dw_main.GetItemDateTime(1, "loanrequest_date");// state.SsWorkDate;
// DateTime ldtm_loanrequest = dw_main.GetItemDateTime(1, "loanrequest_date");
String loantype = dw_main.GetItemString(1, "loantype_code");
ldtm_loanreceive = ldtm_loanrequest;
int year = Convert.ToInt16(ldtm_loanreceive.Year + 543);
short month = Convert.ToInt16(ldtm_loanreceive.Month);
//a hardcode
string ls_memno = "0000000";
try
{
ls_memno = dw_main.GetItemString(1, "member_no");
}
catch { ls_memno = "0000000"; }
String sqlpro = " SELECT MAX(receipt_date)as LASTPROCESS_DATE FROM kptempreceive where member_no = '" + ls_memno + "'";
Sdt dtpro = WebUtil.QuerySdt(sqlpro);
if (dtpro.Next())
{
try
{
processdate = dtpro.GetDate("LASTPROCESS_DATE");
// if (processdate < ldtm_loanrequest) { processdate = ldtm_loanrequest; }
}
catch { processdate = ldtm_loanrequest; }
//กรณี วันที่จ่ายเงิน=วันที่ขอกู้
}
else { processdate = ldtm_loanrequest; }// wcf.Busscom.of_getpostingdate(state.SsWsPass, ldtm_loanreceive);
if (dtpro.GetRowCount() <= 0)
{
decimal day = ldtm_loanrequest.Day;
if (day >= 15)
{
month = Convert.ToInt16(ldtm_loanreceive.Month + 1);
if (month > 12)
{
month = 1;
year = year + 1;
}
}
}
//จ่ายเงินกู้หลังเรียกเก็บหรือไม่
if (ldtm_loanreceive < processdate)
{
month = Convert.ToInt16(ldtm_loanreceive.Month + 1);
if (month > 12)
{
month = 1;
year = year + 1;
postingdate = JsGetPostingdate(year, month, ldtm_loanreceive);
}
short month_old = Convert.ToInt16(ldtm_loanreceive.Month);
DateTime postingdate_old = JsGetPostingdate(year, month, ldtm_loanreceive);// wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(year), month_old);
int day = ldtm_loanreceive.DayOfYear - postingdate_old.DayOfYear;
if (day == 1)
{
month = Convert.ToInt16(ldtm_loanreceive.Month + 1);
postingdate = JsGetPostingdate(year, month, postingdate_old); //wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(year), month);
}
else
{
month = Convert.ToInt16(processdate.Month + 1);
postingdate = JsGetPostingdate(year, month, postingdate_old); // wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(year), month);
}
}
else if (ldtm_loanreceive > processdate)
{
// ldtm_loanreceive = ldtm_loanrequest;// wcf.Busscom.of_relativeworkdate(state.SsWsPass, ldtm_loanreceive, ai_increase);
month = Convert.ToInt16(ldtm_loanreceive.Month);
postingdate = JsGetPostingdate(year, month, ldtm_loanrequest); //wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(year), month);
}
else
{
month = Convert.ToInt16(ldtm_loanreceive.Month + 1);
postingdate = JsGetPostingdate(year, month, ldtm_loanrequest); //wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(year), month);
}
//dw_main.SetItemDate(1, "loanrcvfix_date", ldtm_loanrequest);
//postingdate = wcf.InterPreter.GetStartkeep(state.SsConnectionIndex, state.SsCoopControl, ldtm_loanrequest);
dw_main.SetItemDate(1, "startkeep_date", postingdate);
tDwMain.Eng2ThaiAllRow();
}
catch (Exception ex)
{
//LtServerMessage.Text = WebUtil.ErrorMessage("JsChangeStartkeep===>" + ex);
}
}
private DateTime JsGetPostingdate(int year, int month, DateTime request_date)
{
string ls_sql = "select postingdate from amworkcalendar where year = " + year.ToString() + " and month = " + month.ToString();
DateTime postingdate = request_date;
Sdt dtpro = WebUtil.QuerySdt(ls_sql);
if (dtpro.Next())
{
try
{
int daypost = dtpro.GetInt32("postingdate");
year = year - 543;
string postdate = daypost.ToString() + "/" + month.ToString() + "/" + year.ToString();
postingdate = Convert.ToDateTime(postdate);
// if (postingdate < request_date) { postingdate = request_date; }
}
catch
{ postingdate = request_date; }
//กรณี วันที่จ่ายเงิน=วันที่ขอกู้
}
else
{
postingdate = request_date;
}
return postingdate;
}
private void JsSetCollContno()
{
string ls_memno = dw_main.GetItemString(1, "member_no");
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
string contno_pri = "";
string ls_sqlcontnopri = @"select max( loancontract_no ) as cont_no, loancredit_amt from lncontmaster where principal_balance > 0 and contract_status <> -9 and member_no = '" + ls_memno + "' and loantype_code = '" + ls_loantype + "' group by loancredit_amt ";
Sdt dt9 = WebUtil.QuerySdt(ls_sqlcontnopri);
if (dt9.Next())
{
contno_pri = dt9.GetString("cont_no");
}
if (dt9.GetRowCount() < 1)
{
LtServerMessage.Text = WebUtil.WarningMessage(" ไม่พบเลขสัญญาเดิมของสมาชิกท่านนี้ ไม่สามารถกู้เพิ่มได้");
}
dw_main.SetItemDecimal(1, "loanrequest_status", 1);
dw_main.SetItemString(1, "loancontract_no", contno_pri);
string sql_memcoll = @" SELECT LNCONTMASTER.MEMBER_NO as member_no,
LNCONTMASTER.LOANCONTRACT_NO as loancontract_no,
LNCONTCOLL.REF_COLLNO as ref_collno,
LNCONTCOLL.DESCRIPTION as DESCRIPTION ,
LNCONTCOLL.COLL_AMT as COLL_AMT ,
LNCONTCOLL.COLL_PERCENT as COLL_PERCENT ,
LNCONTCOLL.BASE_PERCENT as BASE_PERCENT ,'Contno',
LNCONTMASTER.COOP_ID as coop_id,
LNCONTMASTER.loancredit_amt ,
LNCONTMASTER.last_periodrcv
FROM LNCONTCOLL,
LNCONTMASTER
WHERE ( LNCONTCOLL.COOP_ID = LNCONTMASTER.COOP_ID ) and
( LNCONTCOLL.LOANCONTRACT_NO = LNCONTMASTER.LOANCONTRACT_NO ) and
( ( LNCONTCOLL.LOANCOLLTYPE_CODE in ('01') ) AND
( LNCONTMASTER.PRINCIPAL_BALANCE > 0 ) AND LNCONTMASTER.LOANCONTRACT_NO = '" + contno_pri + "')";
Sdt dtcoll = WebUtil.QuerySdt(sql_memcoll);
string collref_no = "", colldesc = "", coop_id = "";
int coll_row = 0;
decimal loancredit_amt = 0;
decimal last_periodrcv = 0;
dw_coll.Reset();
if (dtcoll.GetRowCount() < 1)
{
LtServerMessage.Text = WebUtil.WarningMessage("ไม่พบรายการสมาชิกค้ำประกันสัญญา " + contno_pri);
}
while (dtcoll.Next())
{
collref_no = dtcoll.GetString("ref_collno");
colldesc = dtcoll.GetString("DESCRIPTION");
coop_id = dtcoll.GetString("coop_id");
loancredit_amt = dtcoll.GetDecimal("loanapprove_amt");
last_periodrcv = dtcoll.GetDecimal("last_periodrcv");
coll_row = dw_coll.InsertRow(0);
dw_coll.SetItemString(coll_row, "coop_id", coop_id);
dw_coll.SetItemString(coll_row, "ref_collno", collref_no);
dw_coll.SetItemString(coll_row, "DESCRIPTION", colldesc);
dw_coll.SetItemDecimal(coll_row, "coll_balance", 0);
dw_coll.SetItemDecimal(coll_row, "base_percent", 1);
}
if (loancredit_amt > 0)
{
dw_main.SetItemDecimal(1, "loancredit_amt", loancredit_amt);
}
if (last_periodrcv > 1)
{
dw_main.SetItemDecimal(1, "onlinefee_amt", last_periodrcv);
}
}
private void JsGenrowColllnreq(decimal loancredit_amt)
{
//ตรวจค้ำประกัน
int coll_num = 0;
string loantype_code = dw_main.GetItemString(1, "loantype_code");
//decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
int collrow = dw_coll.RowCount;
String sqlpro = @" select useman_amt, useshare_flag from lnloantypereqgrt
where loantype_code = '" + loantype_code + "' and money_from <= " + loancredit_amt.ToString() + @"
and money_to >= " + loancredit_amt.ToString();
Sdt dtgrt = WebUtil.QuerySdt(sqlpro);
if (dtgrt.Next())
{
coll_num = Convert.ToInt32(dtgrt.GetDecimal("useman_amt"));
int coll_share = Convert.ToInt32(dtgrt.GetDecimal("useshare_flag"));
}
else { coll_num = 0; }
for (int i = 1; i <= coll_num; i++)
{
dw_coll.InsertRow(0);
dw_coll.SetItemString(i + 1, "loancolltype_code", "01");
}
}
private void JsSetloantypechg()
{
string membno = " ";
try
{
membno = dw_main.GetItemString(1, "member_no");
}
catch
{
membno = " ";
}
dw_main.SetItemDecimal(1, "otherclr_flag", 0);
dw_main.SetItemDecimal(1, "otherclr_amt", 0);
dw_coll.Reset();
dw_clear.Reset();
dw_otherclr.Reset();
JsSetloantype();
string ls_messagewarning = "";
if (JsCheckLoanrequestwait(ref ls_messagewarning) == 1)
{
if (membno.Length > 5)
{
Jsmaxcreditperiod();
}
}
//JsCalMaxLoanpermiss();
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
Session["loantypeCode"] = ls_loantype;
}
private void JsSetloantype()
{
string membtypecode = Hdmembtype_code.Value;
try
{
loantype = dw_main.GetItemString(1, "loantype_code");
}
catch
{
dw_main.SetItemString(1, "loantype_code", "");
DwUtil.RetrieveDDDW(dw_main, "loantype_code_1", pbl, null);
dw_main.SetItemString(1, "membtype_code", membtypecode);
DataWindowChild dwloantype_code = dw_main.GetChild("loantype_code_1");
dwloantype_code.SetFilter("LNLOANTYPE.LOANGROUP_CODE ='02' and LNLOANMBTYPE.MEMBTYPE_CODE ='" + membtypecode + "' ");
dwloantype_code.Filter();
dw_main.SetItemString(1, "loantype_code", loantype);
}
//wa เพิ่มเติม
DwUtil.RetrieveDDDW(dw_main, "loanobjective_code_1", pbl, loantype);
DataWindowChild dwloantypeobj_code = dw_main.GetChild("loanobjective_code_1");
dwloantypeobj_code.SetFilter("loantype_code = '" + loantype + "' ");
dwloantypeobj_code.Filter();
string sqllntype = @"select maxloan_amt,loanpermgrp_code, contint_type, contractint_rate, inttabrate_code,salperct_balance,salamt_balance,loanpayment_type,loanpayment_status
from lnloantype where loantype_code ='" + loantype + @"' ";
Sdt dtlntype = WebUtil.QuerySdt(sqllntype);
string intcontinttabcode = "INT01";
double intcontintrate = 0.065;
decimal intcontinttype = 2;
decimal payment_stauts = 1;
decimal ldc_minpercsal = 0;
decimal ldc_maxloan = 0;
string loanpermissgroup = "01";
decimal ldc_minsalaamt = 0, ldc_paymenttype = 1;
if (dtlntype.Next())
{
intcontinttabcode = dtlntype.GetString("inttabrate_code");
intcontinttype = dtlntype.GetDecimal("contint_type");
ldc_minpercsal = dtlntype.GetDecimal("salperct_balance");
ldc_minsalaamt = dtlntype.GetDecimal("salamt_balance");
ldc_paymenttype = dtlntype.GetDecimal("loanpayment_type");
ldc_maxloan = dtlntype.GetDecimal("maxloan_amt");
loanpermissgroup = dtlntype.GetString("loanpermgrp_code");
payment_stauts = dtlntype.GetDecimal("loanpayment_status");
}
string sqlint = @"select interest_rate from lncfloanintratedet where loanintrate_code =(select inttabrate_code from lnloantype where loantype_code = '" + loantype + @"') ";
Sdt dtint = WebUtil.QuerySdt(sqlint);
if (dtint.Next())
{
intcontintrate = dtint.GetDouble("interest_rate");
}
dw_main.SetItemDecimal(1, "int_continttype", intcontinttype);
dw_main.SetItemDouble(1, "int_contintrate", intcontintrate);
dw_main.SetItemString(1, "int_continttabcode", intcontinttabcode);
dw_main.SetItemDecimal(1, "minsalary_perc", ldc_minpercsal);
dw_main.SetItemDecimal(1, "minsalary_amt", ldc_minsalaamt);
dw_main.SetItemDecimal(1, "loanpayment_type", ldc_paymenttype);
dw_main.SetItemString(1, "instype_code", loanpermissgroup);
dw_main.SetItemDecimal(1, "loanpayment_status", payment_stauts);
dw_main.SetItemDecimal(1, "loanmaxreq_amt", ldc_maxloan);
}
///
/// fillter ประเภทการจ่ายเงิน
///
private void JsExpenseCode()
{
str_itemchange strList = new str_itemchange();
strList = WebUtil.str_itemchange_session(this);
string expendCode = "";
try
{
expendCode = dw_main.GetItemString(1, "expense_code");
}
catch { }
if (expendCode == null || expendCode == "") return;
if ((expendCode == "CHQ") || (expendCode == "TRN") || (expendCode == "CBT") || (expendCode == "DRF") || (expendCode == "TBK"))
{
//ฝั่งธนาคาร
dw_main.Modify("t_20.visible =1");
dw_main.Modify("expense_bank.visible =1");
dw_main.Modify("t_30.visible =1");
dw_main.Modify("expense_bank_1.visible =1");
dw_main.Modify("t_39.visible =1");
dw_main.Modify("expense_branch.visible =1");
dw_main.Modify("t_27.visible =1");
dw_main.Modify("expense_branch_1.visible =1");
try
{
DwUtil.RetrieveDDDW(dw_main, "expense_bank_1", "sl_loan_requestment.pbl", null);
//DwUtil.RetrieveDDDW(dw_main, "expense_branch_1", "sl_loan_requestment_cen.pbl", "006");
//DataWindowChild dwExpenseBranch = dw_main.GetChild("expense_branch_1");
//DataWindowChild dwExpenseBank = dw_main.GetChild("expense_bank_1");
// DwUtil.RetrieveDDDW(dw_main, "loantype_code_1", pbl, null);
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
}
}
else if ((expendCode == "CSH") || (expendCode == "BEX") || (expendCode == "MON") || (expendCode == "MOS") || (expendCode == "MOO"))
{
//ฝั่งธนาคาร
dw_main.Modify("t_20.visible =0");
dw_main.Modify("expense_bank.visible =0");
dw_main.Modify("t_30.visible =0");
dw_main.Modify("expense_bank_1.visible =0");
dw_main.Modify("t_39.visible =0");
dw_main.Modify("expense_branch.visible =0");
dw_main.Modify("t_27.visible =0");
dw_main.Modify("expense_branch_1.visible =0");
}
if ((expendCode == "MON") || (expendCode == "MOS") || (expendCode == "MOO"))
{
if ((strList.xml_main == null) || (strList.xml_main == ""))
{
strList.xml_main = dw_main.Describe("DataWindow.Data.XML");
strList.xml_main = shrlonService.ReCalFee(state.SsWsPass, strList.xml_main);
//นำเข้าข้อมูลหลัก
dw_main.Reset();
dw_main.ImportString(strList.xml_main, FileSaveAsType.Xml);
//DwUtil.ImportData(strList.xml_main, dw_main, tDwMain, FileSaveAsType.Xml);
if (dw_main.RowCount > 1) dw_main.DeleteRow(dw_main.RowCount);
}
}
}
///
/// fillter สาขาธนาคาร
///
private void JsExpenseBank()
{
try
{
//wa
String bankCode;
try { bankCode = dw_main.GetItemString(1, "expense_bank").Trim(); }
catch { bankCode = "006"; }
// DwUtil.RetrieveDDDW(dw_main, "expense_branch_1", "sl_loan_requestment_cen.pbl", bankCode);
DataWindowChild dwExpenseBranch = dw_main.GetChild("expense_branch_1");
DwUtil.RetrieveDDDW(dw_main, "expense_branch_1", "sl_loan_requestment_cen.pbl", bankCode);
dwExpenseBranch.SetFilter("CMUCFBANKBRANCH.bank_code ='" + bankCode + "'");
dwExpenseBranch.Filter();
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
}
}
private void JsPaycoopid()
{
if (Hdcoopid.Value.Length > 1)
{
dw_main.SetItemString(1, "paytoorder_desc", Hdcoopid.Value);
dw_main.SetItemString(1, "paytoorder_desc_1", Hdcoopid.Value);
}
else
{
int paycoop_id = Convert.ToInt16(Hdcoopid.Value);
dw_main.SetItemString(1, "paytoorder_desc", "001" + paycoop_id.ToString("000"));
dw_main.SetItemString(1, "paytoorder_desc_1", "001" + paycoop_id.ToString("000"));
}
}
private void JsObjective()
{
Ltjspopup.Text = " ";
int li_rowcount = dw_otherclr.RowCount;
int li_find = dw_otherclr.FindRow("clrothertype_code = 'SHR'", 1, li_rowcount);
if (li_find < 1)
{
li_find = dw_otherclr.InsertRow(0);
}
dw_otherclr.SetItemString(li_find, "clrothertype_code", "SHR");
dw_otherclr.SetItemString(li_find, "clrother_desc", "ซื้อหุ้นเพิ่ม");
dw_otherclr.SetItemDecimal(li_find, "clear_status", 0);
dw_otherclr.SetItemDecimal(li_find, "clrother_amt", 0);
JsSumOthClr();
//int objective_code = Convert.ToInt16(Hdobjective.Value);
//dw_main.SetItemString(1, "loanobjective_code", objective_code.ToString("000"));
//dw_main.SetItemString(1, "loanobjective_code_1", objective_code.ToString("000"));
}
///
/// init ข้อมูลสมาชิก
///
///
protected int JsCheckLoanrequestwait(ref string as_message)
{
String member_no = WebUtil.MemberNoFormat(HdMemberNo.Value);
dw_main.SetItemString(1, "member_no", member_no);
string ls_CoopControl = state.SsCoopControl; //สาขาที่ทำรายการ
string as_xmlmessage = "";
String ls_loantype = "";
try
{
ls_loantype = dw_main.GetItemString(1, "loantype_code");
string lnrequest_date = dw_main.GetItemString(1, "loanrequest_tdate");
String entry_year = WebUtil.Right(lnrequest_date, 4);
int yyyy = Convert.ToInt32(entry_year) - 543;
String entry_day = WebUtil.Left(lnrequest_date, 4);
String dd = WebUtil.Left(entry_day, 2);
String mm = WebUtil.Right(entry_day, 2);
String entry_tt = dd + "/" + mm + "/" + yyyy.ToString();
// เช็คว่ามีใบคำขอกู้รออนุมัติอยู่หรือไม่
string Message = wcf.InterPreter.Getloanrequest(state.SsConnectionIndex, ls_CoopControl, member_no, entry_tt, ls_loantype);
if (Message != "")
{
if (Message == "1")
{
LtServerMessage.Text = WebUtil.WarningMessage("มีใบคำขอกู้ของ ท." + member_no + " ได้ผ่านการอนุมัติแล้ว");
}
else
{
str_itemchange strList = new str_itemchange();
str_requestopen strRequestOpen = new str_requestopen();
strList = WebUtil.str_itemchange_session(this);
strRequestOpen.memcoop_id = state.SsCoopControl;
strRequestOpen.request_no = Message;
strRequestOpen.coop_id = state.SsCoopId;
strRequestOpen.format_type = "CAT";
strRequestOpen.xml_main = dw_main.Describe("DataWindow.Data.XML");
strRequestOpen.xml_clear = "";
strRequestOpen.xml_guarantee = "";
strRequestOpen.xml_insurance = "";
strRequestOpen.xml_intspc = "";
strRequestOpen.xml_otherclr = "";
try
{
strRequestOpen = shrlonService.of_loanrequestopen(state.SsWsPass, strRequestOpen);
//นำข้อมูลเก็บไว้ใน DataWindow
dw_main.Reset();
dw_main.ImportString(strRequestOpen.xml_main, FileSaveAsType.Xml);
if (dw_main.RowCount > 1) dw_main.DeleteRow(dw_main.RowCount);
string expendBank = "";
try
{ expendBank = dw_main.GetItemString(1, "expense_bank"); }
catch { expendBank = ""; }
//ตรวจสอบ ธนาคารว่ามีหรือไม่
if (expendBank != "")
{
// เรียก Method ShowBranch() สำหรับแสดงสาขาธนาคาร
JsExpenseBank();
}
tDwMain.Eng2ThaiAllRow();
try
{
dw_coll.Reset();
dw_coll.ImportString(strRequestOpen.xml_guarantee, FileSaveAsType.Xml);
}
catch
{
dw_coll.Reset();
DwUtil.ImportData(strRequestOpen.xml_guarantee, dw_coll, null, FileSaveAsType.Xml);
}
try
{
dw_clear.Reset();
dw_clear.ImportString(strRequestOpen.xml_clear, FileSaveAsType.Xml);
}
catch
{
dw_clear.Reset();
}
try
{
//LtXmlOtherlr.Text
dw_otherclr.Reset();
dw_otherclr.ImportString(strRequestOpen.xml_otherclr, FileSaveAsType.Xml);
}
catch
{
dw_otherclr.Reset();
}
strList.xml_main = strRequestOpen.xml_main;
strList.xml_guarantee = strRequestOpen.xml_guarantee;
strList.xml_clear = strRequestOpen.xml_clear;
strList.xml_otherclr = strRequestOpen.xml_otherclr;
Session["strItemchange"] = strList;
LtXmlOtherlr.Text = strRequestOpen.xml_otherclr;
as_message = "มีใบคำขอกู้สำหรับวันที่" + entry_tt + "แล้ว ระบบจะดึงข้อมูลใบคำขอให้อัตโนมัติ";
LtServerMessage.Text = WebUtil.WarningMessage("มีใบคำขอกู้สำหรับวันที่" + entry_tt + "แล้ว ระบบจะดึงข้อมูลใบคำขอให้อัตโนมัติ");
Decimal loanrequestStatus = dw_main.GetItemDecimal(1, "loanrequest_status");
return -1;
}
catch
{
return 1;
}
}
}
}
catch
{
return 1;
}
return 1;
}
private void JsGetMemberInfo()
{
try
{
JsReNewPage();
LinkButton1.Visible = false;
LinkButton2.Visible = false;
LinkButton3.Visible = false;
LinkButton4.Visible = false;
CbCheckcoop.Checked = false;
//CheckRemark(WebUtil.MemberNoFormat(HdMemberNo.Value));
// Checkcollloop.Checked = false;
Decimal ldc_sharestk, ldc_periodshramt, ldc_periodshrvalue, ldc_shrvalue, ldc_loanrequeststatus = 0;
Decimal ldc_salary = 0, ldc_incomemth = 0, ldc_paymonth;
Decimal ldc_shrstkvalue = 0;
int li_shrpaystatus, li_lastperiod = 0, li_membertype, sequest_status = 0;
DateTime ldtm_birth = new DateTime(), ldtm_member = new DateTime(), ldtm_work = new DateTime(), ldtm_retry = new DateTime();
string ls_position, ls_remark, ls_membname, ls_membgroup, ls_groupname;
string ls_membtypedesc = "", ls_controlname = "", ls_membcontrol = "", ls_appltype, ls_memno, ls_CoopControl;
Decimal lndroploanall_flag = 0, li_memberstatus = 1, li_resignstatus = 0;
string ls_messagewarning = " ";
String member_no = WebUtil.MemberNoFormat(HdMemberNo.Value);
dw_main.SetItemString(1, "member_no", member_no);
if (JsCheckLoanrequestwait(ref ls_messagewarning) == 1)
{
ls_CoopControl = state.SsCoopControl; //สาขาที่ทำรายการ
string as_xmlmessage = "";
//wa
//JsSetDeptnodefault(1);
String ls_loantype = "";
try
{
//เช็คสิทธิ์ ก่อนขอกู้ว่ามีสัญญาเก่าค้างหรือไม่
int checkoldloanpayment = wcf.Shrlon.of_checkoldloanpayment(state.SsWsPass, state.SsCoopControl, member_no, ls_loantype, ref as_xmlmessage);
if (checkoldloanpayment != 1) //มีสัญญาเก่าค้าง
{
if ((as_xmlmessage != "") && (as_xmlmessage != null))
{
LtServerMessage.Text = WebUtil.WarningMessage(as_xmlmessage);
}
}
else //ไม่มีสัญญาเก่าค้าง
{
String ls_memcoopid;
if (HdMemcoopId.Value == "")
{
ls_memcoopid = state.SsCoopControl;
}
else
{
ls_memcoopid = HdMemcoopId.Value;
}
String sqlstr = @" SELECT a.membgroup_control,
b.membgroup_desc as control_desc,
a.membgroup_code,
a.membgroup_desc ,
MBMEMBMASTER.BIRTH_DATE,
MBMEMBMASTER.MEMBER_DATE,
MBMEMBMASTER.WORK_DATE,
MBMEMBMASTER.RETRY_DATE,
MBMEMBMASTER.SALARY_AMOUNT,
MBMEMBMASTER.INCOMEETC_AMT,
MBMEMBMASTER.MEMBTYPE_CODE,
MBUCFMEMBTYPE.MEMBTYPE_DESC,
SHSHAREMASTER.LAST_PERIOD,
SHSHAREMASTER.PERIODSHARE_AMT,
mbucfprename.prename_desc||mbmembmaster.memb_name||' '||mbmembmaster.memb_surname as member_name,
SHSHAREMASTER.PAYMENT_STATUS,
MBMEMBMASTER.POSITION_DESC,
MBMEMBMASTER.POSITION_CODE,
MBMEMBMASTER.REMARK,
MBMEMBMASTER.MEMBER_STATUS,
MBMEMBMASTER.RESIGN_STATUS,
SHSHAREMASTER.SHARESTK_AMT,
SHSHARETYPE.UNITSHARE_VALUE,
MBMEMBMASTER.MEMBER_TYPE,
MBMEMBMASTER.APPLTYPE_CODE, MBMEMBMASTER.LNDROPGRANTEE_FLAG,
MBMEMBMASTER.RETRY_STATUS, MBMEMBMASTER.LNDROPLOANALL_FLAG,
MBMEMBMASTER.MEMBER_NO,
MBMEMBMASTER.PAUSEKEEP_FLAG,
MBMEMBMASTER.PAUSEKEEP_DATE, SHSHAREMASTER.sequest_status,
MBMEMBMASTER.COOP_ID ,MBMEMBMASTER.CREMATION_STATUS
FROM MBMEMBMASTER,
MBUCFMEMBGROUP a , MBUCFMEMBGROUP b,
MBUCFPRENAME,
MBUCFMEMBTYPE,
SHSHAREMASTER,
SHSHARETYPE
WHERE ( a.MEMBGROUP_CODE = MBMEMBMASTER.MEMBGROUP_CODE ) and a.membgroup_control = b.membgroup_code(+) and
a.coop_id = b.coop_id(+) and
( SHSHAREMASTER.MEMBER_NO = MBMEMBMASTER.MEMBER_NO ) and
( MBMEMBMASTER.PRENAME_CODE = MBUCFPRENAME.PRENAME_CODE ) and
( MBMEMBMASTER.MEMBTYPE_CODE = MBUCFMEMBTYPE.MEMBTYPE_CODE ) and
( SHSHAREMASTER.SHARETYPE_CODE = SHSHARETYPE.SHARETYPE_CODE ) and
( MBMEMBMASTER.COOP_ID = a.COOP_ID ) and ( MBMEMBMASTER.MEMBER_STATUS=1) AND
( MBMEMBMASTER.COOP_ID = SHSHAREMASTER.COOP_ID ) and
( SHSHAREMASTER.COOP_ID = SHSHARETYPE.COOP_ID ) and
( ( mbmembmaster.member_no = '" + member_no + @"' ) AND
( shsharemaster.sharetype_code = '01' ) ) and
MBMEMBMASTER.COOP_ID ='" + ls_memcoopid + @"' ";
Sdt dt = WebUtil.QuerySdt(sqlstr);//เป็น service
if (dt.GetRowCount() < 1)
{
LtServerMessage.Text = WebUtil.ErrorMessage("ไม่พบข้อมูลสมาชก หรอ สมาชิกท่านได้ปิดบัญชีสมาชิกแล้ว");
}
while (dt.Next())
{
try
{
li_cramationstatus = dt.GetInt32("cremation_status");
}
catch { li_cramationstatus = 0; }
try
{
lndroploanall_flag = dt.GetDecimal("LNDROPLOANALL_FLAG");
}
catch { lndroploanall_flag = 0; }
try { sequest_status = dt.GetInt32("sequest_status"); }
catch { sequest_status = 0; }
ls_membname = dt.GetString("member_name");
ls_membcontrol = dt.GetString("membgroup_control");
ls_controlname = dt.GetString("control_desc");
ls_membgroup = dt.GetString("membgroup_code");
ls_groupname = dt.GetString("membgroup_desc");
ldc_salary = dt.GetDecimal("salary_amount");
li_lastperiod = dt.GetInt32("last_period");
li_memberstatus = dt.GetInt32("member_status");
li_resignstatus = dt.GetInt32("resign_status");
try
{
ldtm_birth = dt.GetDate("birth_date");
}
catch { }
try
{
///<หาวันที่เกษียณ>
ldtm_retry = wcf.InterPreter.CalReTryDate(state.SsConnectionIndex, state.SsCoopControl, ldtm_birth);
}
catch { }
try
{
ldtm_member = dt.GetDate("member_date");
}
catch { }
try
{
ldtm_work = dt.GetDate("work_date");
}
catch { }
try
{
ldc_incomemth = dt.GetDecimal("incomeetc_amt");
}
catch
{
ldc_incomemth = 0;
}
ldc_paymonth = 0;
ls_position = dt.GetString("position_desc");
ls_remark = dt.GetString("remark");
ldc_shrvalue = dt.GetDecimal("unitshare_value");
ldc_sharestk = dt.GetDecimal("sharestk_amt");
ldc_periodshramt = dt.GetDecimal("periodshare_amt");
li_shrpaystatus = dt.GetInt32("payment_status");
li_membertype = dt.GetInt32("member_type");
ls_appltype = dt.GetString("appltype_code");
ls_memno = dt.GetString("member_no");
ls_memcoopid = dt.GetString("coop_id");
// ls_membtype = dt.GetString("membtype_code");
ls_membtypedesc = dt.GetString("membtype_desc");
ldc_shrstkvalue = Convert.ToDecimal((Convert.ToInt32(ldc_shrvalue) * Convert.ToInt32(ldc_sharestk)));
ldc_periodshrvalue = Convert.ToDecimal((Convert.ToInt32(ldc_periodshramt) * Convert.ToInt32(ldc_shrvalue)));
if (li_resignstatus == 1)
{
LtServerMessage.Text = WebUtil.WarningMessage("สมาชิกท่านได้ลาออกจากสหกรณ์แล้ว กรุณาตรวจสอบ");
}
dw_main.SetItemString(1, "memcoop_id", ls_memcoopid);
dw_main.SetItemString(1, "coop_id", state.SsCoopId);
dw_main.SetItemString(1, "member_name", ls_membname);
dw_main.SetItemString(1, "mbucfmembgroup_membgroup_code", ls_membgroup);
dw_main.SetItemString(1, "mbucfmembgroup_membgroup_desc", ls_groupname);
dw_main.SetItemString(1, "membgroup_desc", ls_controlname);
dw_main.SetItemDecimal(1, "salary_amt", ldc_salary);
dw_main.SetItemDecimal(1, "share_lastperiod", li_lastperiod);
dw_main.SetItemDateTime(1, "birth_date", ldtm_birth);
dw_main.SetItemDateTime(1, "member_date", ldtm_member);
//dw_main.SetItemString(1, "membtype_code", ls_membtype);
//dw_main.SetItemString(1, "membtype_desc", ls_membtypedesc);
try
{
dw_main.SetItemDateTime(1, "retry_date", ldtm_retry);
}
catch { dw_main.SetItemDateTime(1, "retry_date", DateTime.Now); }
dw_main.SetItemDecimal(1, "incomemonth_other", ldc_incomemth);
dw_main.SetItemDecimal(1, "incomemonth_fixed", ldc_incomemth);
dw_main.SetItemDecimal(1, "paymonth_other", ldc_paymonth);
dw_main.SetItemString(1, "position_desc", ls_position);
dw_main.SetItemString(1, "remark", "");
dw_main.SetItemString(1, "member_remark", ls_remark);
dw_main.SetItemDecimal(1, "sharestk_value", ldc_shrstkvalue);
dw_main.SetItemDecimal(1, "periodshare_value", ldc_periodshrvalue);
dw_main.SetItemDecimal(1, "sharepay_status", li_shrpaystatus);
dw_main.SetItemDecimal(1, "intestimate_amt", 0);
dw_main.SetItemDecimal(1, "member_type", li_membertype);
dw_main.SetItemString(1, "appltype_code", ls_appltype);
try
{
///<หาอายุสมาชิก>
Decimal birth_age = BusscomService.of_cal_yearmonth(state.SsWsPass, ldtm_birth, DateTime.Now);
dw_main.SetItemDecimal(1, "birth_age", birth_age);
}
catch
{
Decimal birth_age = BusscomService.of_cal_yearmonth(state.SsWsPass, DateTime.Now, DateTime.Now);
dw_main.SetItemDecimal(1, "birth_age", birth_age);
}
try
{
///<หาเกษียณอายุ>
Decimal retry_age = BusscomService.of_cal_yearmonth(state.SsWsPass, DateTime.Now, ldtm_retry);
String retry_agel = WebUtil.Left(retry_age.ToString("000.00"), 3);
String retry_ager = WebUtil.Right(retry_age.ToString(""), 2);
int retryagel = Convert.ToInt32(retry_agel) * 12;
Decimal retryager = (Math.Round(Convert.ToDecimal(retry_ager)) / 10) * 10;
dw_main.SetItemDecimal(1, "retry_age", retryagel + retryager);
}
catch
{
Decimal retry_age = BusscomService.of_cal_yearmonth(state.SsWsPass, DateTime.Now, DateTime.Now);
String retry_agel = WebUtil.Left(retry_age.ToString("000.00"), 3);
String retry_ager = WebUtil.Right(retry_age.ToString(""), 2);
int retryagel = Convert.ToInt32(retry_agel) * 12;
Decimal retryager = (Math.Round(Convert.ToDecimal(retry_ager)) / 10) * 10;
dw_main.SetItemDecimal(1, "retry_age", retryagel + retryager);
}
try
{
///<หาอายุการเป็นสมาชิก>
Decimal member_age = BusscomService.of_cal_yearmonth(state.SsWsPass, ldtm_member, DateTime.Now);
dw_main.SetItemDecimal(1, "member_age", member_age);
}
catch
{
Decimal member_age = BusscomService.of_cal_yearmonth(state.SsWsPass, DateTime.Now, DateTime.Now);
dw_main.SetItemDecimal(1, "member_age", member_age);
}
}
//SetAcci_dept();//เซ็ค เลขที่บัญชี
Jscheckloancontarrer();
if (sequest_status == 1 && loantype == "23")
{
LtServerMessage.Text = WebUtil.ErrorMessage("สมาชิกท่านนี้ ศาลอายัดหุ้นไว้ ไม่สามารถกู้ได้");
}
if (lndroploanall_flag != 0)
{
LtServerMessage.Text = WebUtil.ErrorMessage("สมาชิกท่านนี้ งดกู้");
}
else
{
///<สิทธิ์กู้สูดสุง>
///
string re_lastperiod = wcf.InterPreter.GetlastperiodShare(li_lastperiod);
//if (re_lastperiod == "1")
//{
Jsmaxcreditperiod();
//}
//else { LtServerMessage.Text = WebUtil.ErrorMessage("งวดการส่งค่าหุ้นหรือ อายุการเป็นสมาชิก ของสมาชิกท่านนี้ยังไม่ถึงเกณฑ์ที่กำหนด"); }
///<ตรวจหาสัญญาที่จะหักกลบ ถ้ามีก็เอามาแสดง ใน dw_clear>
}
} //end เช็คสิทธิ์ ก่อนขอกู้ว่ามีสัญญาเก่าค้างหรือไม่
HdPaymonth.Value = dw_main.GetItemDecimal(1, "paymonth_coop_2").ToString();//edit by waw
HdBalance.Value = dw_clear.GetItemDecimal(1, "principal_balance").ToString();
}
catch
{
LtServerMessage.Text = WebUtil.ErrorMessage("ไม่สามารถทำรายการ");
}
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage("กรุณาเลือกประเภทเงินกู้ที่จะทำรายการ" + ex);
}
CheckRemark(WebUtil.MemberNoFormat(HdMemberNo.Value));
HdShowRemark.Value = "true";
}
///
/// ดึงข้อมูลสัญญาหักกลบ
///
///
private void of_setloanclearstatus()
{
//wa
Ltjspopupclr.Text = "";
for (int k = 1; k <= dw_clear.RowCount; k++)
{
dw_clear.SetItemDecimal(k, "clear_status", 0);
}
//ตั้งค่าการหักชำระหนี้เก่า
string loantypeclr, loantype, contclr_no;
string ls_memcoopid = dw_main.GetItemString(1, "memcoop_id");
String member_no = dw_main.GetItemString(1, "member_no");
decimal ldc_minpay, li_minperiod, li_checkcontclr, last_payperid, li_calintflag = 0;
string loantypereq_code = dw_main.GetItemString(1, "loantype_code");
String sqlStr1 = @"SELECT LNLOANTYPECLR.LOANTYPE_CODE,
LNLOANTYPECLR.LOANTYPE_CLEAR,
LNLOANTYPECLR.MINPERIOD_PAY,
LNLOANTYPECLR.MINPERCENT_PAY,
LNLOANTYPECLR.CHKCONTCREDIT_FLAG,
LNLOANTYPE.LOANRIGHT_TYPE,
LNLOANTYPECLR.CONTRACT_STATUS ,calint_flag
FROM LNLOANTYPECLR,
LNLOANTYPE
WHERE ( LNLOANTYPECLR.LOANTYPE_CLEAR = LNLOANTYPE.LOANTYPE_CODE ) and
( LNLOANTYPECLR.COOP_ID = LNLOANTYPE.COOP_ID ) and
( ( LNLOANTYPECLR.LOANTYPE_CODE = '" + loantypereq_code + "' ) ) ";
Sdt dt1 = WebUtil.QuerySdt(sqlStr1);
if (dt1.Next())
{
for (int i = 0; i < dt1.GetRowCount(); i++)
{
loantypeclr = Convert.ToString(dt1.Rows[i]["LOANTYPE_CLEAR"]);
li_minperiod = Convert.ToDecimal(dt1.Rows[i]["minperiod_pay"]);
ldc_minpay = Convert.ToDecimal(dt1.Rows[i]["minpercent_pay"]);
li_checkcontclr = Convert.ToDecimal(dt1.Rows[i]["contract_status"]);
li_calintflag = Convert.ToDecimal(dt1.Rows[i]["calint_flag"]);
for (int k = 1; k <= dw_clear.RowCount; k++)
{
contclr_no = dw_clear.GetItemString(k, "loancontract_no");
loantype = dw_clear.GetItemString(k, "loantype_code");
last_payperid = dw_clear.GetItemDecimal(k, "last_periodpay");
if (loantype == loantypeclr) //&& li_minperiod <= last_payperid
{
dw_clear.SetItemDecimal(k, "clear_status", 1);
if (li_minperiod > last_payperid)
{
Ltjspopupclr.Text += WebUtil.WarningMessage(contclr_no + " สัญญาชำระไม่ถึงตามเกณฑ์ที่กำหนด ต้องส่งมาแล้วขั้นต่ำ " + li_minperiod.ToString());
}
}
if (li_calintflag == 0)
{
dw_clear.SetItemDecimal(k, "intestimate_amt", 0);
dw_clear.SetItemDecimal(k, "intclear_amt", 0);
}
}
}
}
}
private double of_getinterestrate(string loantype_code)
{
double intrate = 0;
string ls_intratetab = wcf.Busscom.of_getattribloantype(state.SsWsPass, loantype_code, "inttabrate_code").ToString();
String sqlint = @" SELECT
INTEREST_RATE
FROM LNCFLOANINTRATEDET
WHERE ( COOP_ID ='" + state.SsCoopControl + @"' ) AND
( LOANINTRATE_CODE ='" + ls_intratetab + "' ) ";
Sdt dtint = WebUtil.QuerySdt(sqlint);
if (dtint.Next())
{
intrate = dtint.GetDouble("INTEREST_RATE");
}
return intrate;
}
private void JsrecallInt()
{
//tDwMain.Eng2ThaiAllRow();
DateTime loanrcvfix_date = dw_main.GetItemDate(1, "loanrcvfix_date");
Decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
DateTime startkeep_date = dw_main.GetItemDate(1, "startkeep_date");
Decimal intrate = 0;
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
Genbaseloanclear();
string ls_intratetab = wcf.Busscom.of_getattribloantype(state.SsWsPass, ls_loantype, "inttabrate_code").ToString();
String sqlint = @" SELECT
INTEREST_RATE
FROM LNCFLOANINTRATEDET
WHERE ( COOP_ID ='" + state.SsCoopControl + @"' ) AND
( LOANINTRATE_CODE ='" + ls_intratetab + "' ) ";
Sdt dtint = WebUtil.QuerySdt(sqlint);
if (dtint.Next())
{
intrate = dtint.GetDecimal("INTEREST_RATE");
}
Decimal day_int = startkeep_date.DayOfYear - loanrcvfix_date.DayOfYear;
Decimal intestimate_amt = Math.Round(loanrequest_amt * intrate * day_int / 365);
dw_main.SetItemDecimal(1, "intestimate_amt", intestimate_amt);
}
private void Genbaseloanclear()
{
Ltjspopupclr.Text = "";
String member_no = dw_main.GetItemString(1, "member_no");
DateTime loanrcvfix_date = dw_main.GetItemDate(1, "loanrcvfix_date");
String ls_memcoopid;
try { ls_memcoopid = dw_main.GetItemString(1, "memcoop_id"); }
catch { ls_memcoopid = state.SsCoopControl; }
string ls_contno, ls_conttype, ls_prefix, ls_permgrp, ls_loantype = "", ls_intcontintcode, ls_coopid = "";
Decimal li_count, li_index, li_row, li_countold, li_minperiod = 0, li_period, li_continttype, li_transfersts = 0, ldc_intestim30 = 0;
Decimal li_paytype, li_status = 1, li_clearflag, li_contstatus, li_intcontinttype, li_intsteptype;
Decimal li_checkcontclr = 0, li_periodamt, li_contlaw, li_paystatus, li_clearinsure, li_countpayflag = 0, li_od_flag = 0;
Decimal ldc_appvamt, ldc_balance = 0, ldc_withdrawable, ldc_rkeepprin, ldc_rkeepint, ldc_transbal;
Decimal ldc_intarrear, ldc_payment, ldc_intestim;
Decimal ldc_minpay = 0, ldc_intrate, ldc_intcontintrate, ldc_intincrease;
DateTime ldtm_lastcalint, ldtm_lastproc, ldtm_today, ldtm_approve, ldtm_startcont, ldtm_calintfrom;
int li_interestmethod = 0;
ls_loantype = dw_main.GetItemString(1, "loantype_code");
String sqlStr = @" SELECT LNCONTMASTER.LOANCONTRACT_NO,
LNCONTMASTER.MEMBER_NO,
LNCONTMASTER.LOANTYPE_CODE,
LNCONTMASTER.LOANAPPROVE_AMT,
LNCONTMASTER.WITHDRAWABLE_AMT,
LNCONTMASTER.PRINCIPAL_BALANCE,
LNCONTMASTER.LAST_PERIODPAY,
LNCONTMASTER.LASTCALINT_DATE,
LNCONTMASTER.LASTPROCESS_DATE,
LNCONTMASTER.INTEREST_ARREAR,
LNCONTMASTER.RKEEP_PRINCIPAL,
LNCONTMASTER.RKEEP_INTEREST,
LNLOANTYPE.PREFIX,
LNCONTMASTER.LOANPAYMENT_TYPE,
LNCONTMASTER.PERIOD_PAYMENT,
LNLOANTYPE.LOANPERMGRP_CODE,
LNCONTMASTER.CONTRACT_STATUS,
LNCONTMASTER.CONTRACTINT_TYPE,
LNCONTMASTER.CONTRACT_INTEREST,
LNCONTMASTER.LOANAPPROVE_DATE,
LNCONTMASTER.STARTCONT_DATE,
LNCONTMASTER.INT_CONTINTTYPE,
LNCONTMASTER.INT_CONTINTRATE,
LNCONTMASTER.INT_CONTINTTABCODE,
LNCONTMASTER.INT_CONTINTINCREASE,
LNCONTMASTER.INT_INTSTEPTYPE,
LNCONTMASTER.PERIOD_PAYAMT,
LNCONTMASTER.CONTLAW_STATUS,
LNCONTMASTER.PRINCIPAL_TRANSBAL,
LNCONTMASTER.PAYMENT_STATUS,
LNLOANTYPE.CLEARINSURE_FLAG,
LNCONTMASTER.INSURECOLL_FLAG ,
LNLOANTYPE.interest_method,
LNLOANTYPE.od_flag
FROM LNCONTMASTER,
LNLOANTYPE
WHERE ( LNCONTMASTER.LOANTYPE_CODE = LNLOANTYPE.LOANTYPE_CODE ) and
( LNCONTMASTER.COOP_ID = LNLOANTYPE.COOP_ID ) and
( ( lncontmaster.member_no = '" + member_no + @"' ) AND
( lncontmaster.principal_balance + lncontmaster.withdrawable_amt > 0 ) AND
( lncontmaster.contract_status > 0 ) AND
( LNCONTMASTER.MEMCOOP_ID = '" + ls_memcoopid + @"' ) )
ORDER BY LNCONTMASTER.LOANCONTRACT_NO ASC ";
Sdt dt = WebUtil.QuerySdt(sqlStr);
if (dt.Next())
{
dw_clear.Reset();
int rowCount = dt.GetRowCount();
for (int i = 0; i < rowCount; i++)
{
try { ls_contno = dt.Rows[i]["loancontract_no"].ToString(); }
catch { ls_contno = ""; }
try
{
ls_conttype = dt.Rows[i]["loantype_code"].ToString();
}
catch { ls_conttype = ""; }
try
{
ls_prefix = dt.Rows[i]["prefix"].ToString();
}
catch { ls_prefix = ""; }
try
{// คำนำหน้าประเภทสัญญา
ls_permgrp = dt.Rows[i]["loanpermgrp_code"].ToString();
}
catch { ls_permgrp = ""; }
try
{// กลุ่มวงเงินกู้
li_paytype = Convert.ToDecimal(dt.Rows[i]["loanpayment_type"]);
}
catch { li_paytype = 0; }
try
{
li_period = Convert.ToDecimal(dt.Rows[i]["last_periodpay"]);
}
catch { li_period = 0; }
try
{
li_contstatus = Convert.ToDecimal(dt.Rows[i]["contract_status"]);
}
catch { li_contstatus = 0; }
try
{
li_continttype = Convert.ToDecimal(dt.Rows[i]["contractint_type"]);
}
catch { li_continttype = 0; }
try
{
ldc_intrate = Convert.ToDecimal(dt.Rows[i]["contract_interest"]);
}
catch { ldc_intrate = 0; }
try
{
ldc_payment = Convert.ToDecimal(dt.Rows[i]["period_payment"]);
}
catch { ldc_payment = 0; }
try
{
ldc_appvamt = Convert.ToDecimal(dt.Rows[i]["loanapprove_amt"]);
}
catch { ldc_appvamt = 0; }
try
{
ldc_withdrawable = Convert.ToDecimal(dt.Rows[i]["withdrawable_amt"]);
}
catch { ldc_withdrawable = 0; }
try
{
ldc_balance = Convert.ToDecimal(dt.Rows[i]["principal_balance"]);
}
catch { ldc_balance = 0; }
try
{
ldc_intarrear = Convert.ToDecimal(dt.Rows[i]["interest_arrear"]);
}
catch { ldc_intarrear = 0; }
try
{
ldc_rkeepprin = Convert.ToDecimal(dt.Rows[i]["rkeep_principal"]);
}
catch { ldc_rkeepprin = 0; }
try
{
ldc_rkeepint = Convert.ToDecimal(dt.Rows[i]["rkeep_interest"]);
}
catch { ldc_rkeepint = 0; }
try
{
ldtm_lastcalint = Convert.ToDateTime(dt.Rows[i]["lastcalint_date"]);
}
catch { ldtm_lastcalint = DateTime.Now; }
try
{
ldtm_lastproc = Convert.ToDateTime(dt.Rows[i]["lastprocess_date"]);
}
catch { ldtm_lastproc = DateTime.Now; }
try
{
ldtm_approve = Convert.ToDateTime(dt.Rows[i]["loanapprove_date"]);
}
catch { ldtm_approve = DateTime.Now; }
try
{
ldtm_startcont = Convert.ToDateTime(dt.Rows[i]["startcont_date"]);
}
catch { ldtm_startcont = DateTime.Now; }
try
{
li_intcontinttype = Convert.ToDecimal(dt.Rows[i]["int_continttype"]);
}
catch { li_intcontinttype = 0; }
try
{
ldc_intcontintrate = Convert.ToDecimal(dt.Rows[i]["int_contintrate"]);
}
catch { ldc_intcontintrate = 0; }
try
{
ls_intcontintcode = dt.Rows[i]["int_continttabcode"].ToString();
}
catch { ls_intcontintcode = ""; }
try
{
ldc_intincrease = Convert.ToDecimal(dt.Rows[i]["int_contintincrease"]);
}
catch { ldc_intincrease = 0; }
try
{
li_intsteptype = Convert.ToDecimal(dt.Rows[i]["int_intsteptype"]);
}
catch { li_intsteptype = 0; }
try
{
li_periodamt = Convert.ToDecimal(dt.Rows[i]["period_payamt"]);
}
catch { li_periodamt = 0; }
try
{
li_transfersts = Convert.ToDecimal(dt.Rows[i]["transfer_status"]);
}
catch { li_transfersts = 0; }
try
{
ls_coopid = dt.Rows[i]["coop_id"].ToString();
}
catch { ls_coopid = ls_memcoopid; }
try
{
li_contlaw = Convert.ToDecimal(dt.Rows[i]["contlaw_status"]);
}
catch { li_contlaw = 0; }
try
{
ldc_transbal = Convert.ToDecimal(dt.Rows[i]["principal_transbal"]);
}
catch { ldc_transbal = 0; }
try
{
li_paystatus = Convert.ToDecimal(dt.Rows[i]["payment_status"]);
}
catch { li_paystatus = 0; }
try
{
li_clearinsure = Convert.ToDecimal(dt.Rows[i]["insurecoll_flag"]);
}
catch { li_clearinsure = 0; }
try
{
li_interestmethod = Convert.ToInt16(dt.Rows[i]["interest_method"]);
}
catch { li_interestmethod = 1; }
try
{
li_od_flag = Convert.ToInt16(dt.Rows[i]["od_flag"]);
}
catch { li_od_flag = 0; }
ldc_intcontintrate = dw_main.GetItemDecimal(1, "int_contintrate");
loanrcvfix_date = dw_main.GetItemDateTime(1, "loanrcvfix_date");
decimal ldc_day = loanrcvfix_date.Day;
decimal ldc_month = loanrcvfix_date.Month;
decimal ldc_year = loanrcvfix_date.Year;
decimal ldc_dayfix = 15;
if (li_interestmethod == 1)
{
//คิด ดบ. รายวัน
Decimal day_int = Convert.ToDecimal((loanrcvfix_date - ldtm_lastcalint).TotalDays);
if (day_int < 0) { day_int = 0; }
if (ldc_intcontintrate == 0)
{
ldc_intcontintrate = Convert.ToDecimal(of_getinterestrate(ls_loantype));
}
ldc_intestim = ldc_balance * (ldc_intcontintrate) * day_int / 365;
ldc_intestim = wcf.Shrlon.of_roundmoney(state.SsWsPass, ldc_intestim);
ldc_intestim30 = ldc_balance * (ldc_intcontintrate) * 30 / 365;
ldc_intestim30 = wcf.Shrlon.of_roundmoney(state.SsWsPass, ldc_intestim30);
}
else
{
//surin ประเภทเดียวกัน ก่อน วันที่ 12 ไม่คิด 13-15 คิด คึ่งเดือน 16-31 คิดครึ่งเดือน
//ต่างประเภทกัน ก่อน 15 คิด ครึ่งเดือน หลัง 15 คิด 1 เดือน
if (ldc_day <= 15)
{
if (ls_conttype != ls_loantype)
{
if ((ls_loantype == "41" && ls_conttype == "44") || (ls_loantype == "44" && ls_conttype == "41"))
{
ldc_intestim = 0;
}
else
{
ldc_intestim = wcf.Shrlon.of_roundmoney(state.SsWsPass, ldc_balance * (ldc_intcontintrate) * (Convert.ToDecimal(0.5)) / 12);
}
}
else
{
ldc_intestim = 0;
}
}
else
{
if (ls_conttype != ls_loantype)
{
if ((ls_loantype == "41" && ls_conttype == "44") || (ls_loantype == "44" && ls_conttype == "41"))
{
ldc_intestim = wcf.Shrlon.of_roundmoney(state.SsWsPass, (ldc_balance * (ldc_intcontintrate) / 12) / 2);
}
else
{
ldc_intestim = wcf.Shrlon.of_roundmoney(state.SsWsPass, ldc_balance * (ldc_intcontintrate) / 12);
}
}
else
{
ldc_intestim = wcf.Shrlon.of_roundmoney(state.SsWsPass, (ldc_balance * (ldc_intcontintrate) / 12) / 2);
}
}
}
dw_clear.InsertRow(i + 1);
dw_clear.SetItemString(i + 1, "loancontract_no", ls_contno);
dw_clear.SetItemString(i + 1, "coop_id", state.SsCoopId);
dw_clear.SetItemString(i + 1, "concoop_id", state.SsCoopControl);
dw_clear.SetItemString(i + 1, "loantype_code", ls_conttype);
dw_clear.SetItemString(i + 1, "prefix", ls_prefix);
dw_clear.SetItemDecimal(i + 1, "loanpayment_type", li_paytype);
dw_clear.SetItemDecimal(i + 1, "period_payment", ldc_payment);
dw_clear.SetItemDecimal(i + 1, "loanapprove_amt", ldc_appvamt);
dw_clear.SetItemDecimal(i + 1, "withdrawable_amt", ldc_withdrawable);
dw_clear.SetItemDecimal(i + 1, "principal_balance", ldc_balance);
dw_clear.SetItemDecimal(i + 1, "last_periodpay", li_period);
dw_clear.SetItemDecimal(i + 1, "minperiod_pay", li_minperiod);
dw_clear.SetItemDecimal(i + 1, "minpercent_pay", ldc_minpay);
dw_clear.SetItemDateTime(i + 1, "lastcalint_date", ldtm_lastcalint);
dw_clear.SetItemDecimal(i + 1, "contract_status", li_contstatus);
dw_clear.SetItemString(i + 1, "permissgroup_code", ls_permgrp);
// dw_clear.SetItemDecimal(i + 1, "clear_status", li_status);
dw_clear.SetItemDateTime(i + 1, "lastprocess_date", ldtm_lastproc);
dw_clear.SetItemDecimal(i + 1, "contractint_type", li_continttype);
dw_clear.SetItemDecimal(i + 1, "contract_interest", ldc_intrate);
dw_clear.SetItemDecimal(i + 1, "rkeep_principal", ldc_rkeepprin);
dw_clear.SetItemDecimal(i + 1, "rkeep_interest", ldc_rkeepint);
dw_clear.SetItemDecimal(i + 1, "interest_arrear", ldc_intarrear);//ldc_intarrear
dw_clear.SetItemDateTime(i + 1, "loanapprove_date", ldtm_approve);
dw_clear.SetItemDateTime(i + 1, "startcont_date", ldtm_startcont);
dw_clear.SetItemDecimal(i + 1, "int_continttype", li_intcontinttype);
dw_clear.SetItemDecimal(i + 1, "int_contintrate", ldc_intcontintrate);
dw_clear.SetItemString(i + 1, "int_continttabcode", ls_intcontintcode);
dw_clear.SetItemDecimal(i + 1, "int_contintincrease", ldc_intincrease);
dw_clear.SetItemDecimal(i + 1, "int_intsteptype", li_intsteptype);
dw_clear.SetItemDecimal(i + 1, "period_payamt", li_periodamt);
dw_clear.SetItemDecimal(i + 1, "contlaw_status", li_contlaw);
dw_clear.SetItemDecimal(i + 1, "payment_status", li_paystatus);
dw_clear.SetItemDecimal(i + 1, "principal_transbal", ldc_transbal);
dw_clear.SetItemDecimal(i + 1, "insurecoll_flag", li_clearinsure);
dw_clear.SetItemDecimal(i + 1, "countpay_flag", li_od_flag);
dw_clear.SetItemDecimal(i + 1, "intestimate_amt", Convert.ToDecimal(ldc_intestim30));
dw_clear.SetItemDecimal(i + 1, "intclear_amt", Convert.ToDecimal(ldc_intestim));
}
}
}
private void JsGetloangrouppermissuesed()
{
string permissgroup_code;
int clear_status = 0;
decimal principal_balance = 0, ldc_sumloangroup = 0, ldc_rkeepprin = 0;
string loanpermissgroup = dw_main.GetItemString(1, "instype_code");
for (int i = 1; i <= dw_clear.RowCount; i++)
{
permissgroup_code = dw_clear.GetItemString(i, "permissgroup_code");
principal_balance = dw_clear.GetItemDecimal(i, "principal_balance");
try
{
ldc_rkeepprin = dw_clear.GetItemDecimal(i, "rkeep_principal");
}
catch
{
ldc_rkeepprin = 0;
}
clear_status = Convert.ToInt16(dw_clear.GetItemDecimal(i, "clear_status"));
if (loanpermissgroup == permissgroup_code && clear_status == 0)
{
ldc_sumloangroup = ldc_sumloangroup + principal_balance - ldc_rkeepprin;
}
}
dw_main.SetItemDecimal(1, "loangrpuse_amt", ldc_sumloangroup);
}
private void JsCalMaxLoanpermiss()
{
//คำนวณสิทธิกู้จากยอดเงินเดือนคงเหลือขั้นต่ำ
string loantype_code = dw_main.GetItemString(1, "loantype_code");
decimal ldc_salary = dw_main.GetItemDecimal(1, "salary_amt");
decimal ldc_mthcoop = dw_main.GetItemDecimal(1, "paymonth_coop");
decimal ldc_minpercsal = dw_main.GetItemDecimal(1, "minsalary_perc");
decimal ldc_minsalaamt = dw_main.GetItemDecimal(1, "minsalary_amt");
decimal ldc_maxloan = dw_main.GetItemDecimal(1, "loancredit_amt");
decimal ldc_periodsend = dw_main.GetItemDecimal(1, "period_payamt");
decimal ldc_paymenttype = dw_main.GetItemDecimal(1, "loanpayment_type");
decimal ldc_intrate = dw_main.GetItemDecimal(1, "int_contintrate");
decimal ldc_incomeetc = dw_main.GetItemDecimal(1, "incomemonth_fixed");
decimal ldc_paymtmetc = dw_main.GetItemDecimal(1, "paymonth_other");
//คำนวณเงินเดือนคงเหลือขั้นต่ำ
if (ldc_minsalaamt < (ldc_salary * ldc_minpercsal))
{
ldc_minsalaamt = Math.Round(ldc_salary * ldc_minpercsal);
}
decimal salary_balance = ldc_salary - ldc_minsalaamt - ldc_mthcoop + ldc_incomeetc - ldc_paymtmetc; //
if (ldc_minsalaamt <= 0) { salary_balance = ldc_salary; }
decimal ldc_permamt;
double li_maxperiod = Convert.ToDouble(ldc_periodsend);
if (ldc_paymenttype == 1)
{
//คงต้น
double ldc_dayyear = Convert.ToDouble(30) / Convert.ToDouble(366);
double ldc_ddd = 1.00;
double ldc_temp = Convert.ToDouble(ldc_periodsend) * (Convert.ToDouble(ldc_intrate) * ldc_dayyear) + ldc_ddd;
ldc_permamt = Convert.ToDecimal((Convert.ToDouble(salary_balance) * Convert.ToDouble(ldc_periodsend)) / ldc_temp);
}
else
{ //คงยอด
int li_fixcaltype = 1;//fixpaycal_type
double ldc_permamttmp = 1.00, ldc_fr = 1.00, ldc_temp = 1.00;
if (li_fixcaltype == 1)
{
// ด/บ ทั้งปี / 12
// ldc_permamt = salary_balance * ((((1 + (ldc_intrate / 12)) ^ li_maxperiod) - 1) / ((ldc_intrate / 12) * ((1 + (ldc_intrate / 12)) ^ li_maxperiod)));
ldc_temp = Math.Log(1 + (Convert.ToDouble(Convert.ToDouble(ldc_intrate) / 12.00)));
ldc_fr = Math.Exp(-li_maxperiod * ldc_temp);
ldc_permamttmp = (Convert.ToDouble(salary_balance) * (1.00 - ldc_fr)) / ((Convert.ToDouble(ldc_intrate) / 12));
}
else
{
// ด/บ 30 วัน/เดือน
ldc_temp = Math.Log(1 + (Convert.ToDouble(Convert.ToDouble(ldc_intrate) / (30.00 / 365.00))));
ldc_fr = Math.Exp(-li_maxperiod * ldc_temp);
ldc_permamttmp = (Convert.ToDouble(salary_balance) * (1.00 - ldc_fr)) / ((Convert.ToDouble(ldc_intrate) / (30.00 / 365.00)));
}
ldc_permamt = Convert.ToDecimal(ldc_permamttmp);
decimal loan_credit = dw_main.GetItemDecimal(1, "loancredit_amt");
if (ldc_permamt > loan_credit)
{
ldc_permamt = loan_credit;
}
}
//lngrpcutright_flag หักยอดกู้กลุ่ม
String lngrpcutrightflag = wcf.Busscom.of_getattribloantype(state.SsWsPass, loantype_code, "lngrpcutright_flag");
int lngrpcutright_flag = Convert.ToInt16(lngrpcutrightflag);
//ตรวจสอบยอดขอกู้กลุ๋ม
decimal loan_groupuse = 0;
if (lngrpcutright_flag == 1)
{
JsGetloangrouppermissuesed();
loan_groupuse = dw_main.GetItemDecimal(1, "loangrpuse_amt");
}
// ldc_permamt = ldc_permamt;//- loan_groupuse;
if (ldc_permamt > ldc_maxloan)
{
ldc_permamt = ldc_maxloan;
}
if (ldc_permamt < 0) { ldc_permamt = 0; }
// ปัดยอดขอกู้
String ll_roundloan = wcf.Busscom.of_getattribloantype(state.SsWsPass, loantype_code, "reqround_factor");
int roundloan = Convert.ToInt16(ll_roundloan);
if (roundloan > 0)
{
if (ldc_permamt > 0)
{
// by mong loanrequest_amt = Math.Round((loanrequest_amt) / roundloan) * roundloan;
if (ldc_permamt % roundloan > 0)
{
ldc_permamt = ldc_permamt - (ldc_permamt % roundloan);
}
}
}
// ldc_permamt = Math.Round(ldc_permamt / 1000) * 1000;
dw_main.SetItemDecimal(1, "loanpermiss_amt", ldc_permamt);
dw_main.SetItemDecimal(1, "loanrequest_amt", ldc_permamt);
decimal intest_amt = of_calintestimatemain();
//mong 56-01-31
//JsGenrowColllnreq(ldc_permamt);
}
///
/// init ข้อมูลคนค้ำ
///
private void JsGetMemberCollno()
{
try
{
int row = Convert.ToInt16(HdRefcollrow.Value);
String ls_memcoopid;
String ref_collno = WebUtil.MemberNoFormat(HdRefcoll.Value);
Decimal period_payamt = dw_main.GetItemDecimal(1, "period_payamt");
String description = "";
String membtype_code = "";
Decimal ldc_salary = 0, retry_age = 0;
DateTime ldtm_member = DateTime.Now;
DateTime ldtm_birth = DateTime.Now;
DateTime ldtm_retry = DateTime.Now;
Decimal lndropgrantee_flag = 0;
String remark = "";
String loancolltype_code = dw_coll.GetItemString(row, "loancolltype_code");
//String member_no = WebUtil.MemberNoFormat(HdMemberNo.Value);
////string reqmem_no=dw_main.GetItemString(1, "member_no");
//if (ref_collno == member_no)
//{
// LtServerMessage.Text = WebUtil.ErrorMessage("ไม่สามารถ ค้ำประกัน ผู้กู้ได้");
//}
// JsSetDeptnodefault(1);
if (loancolltype_code == "01")
{
dw_coll.SetItemString(row, "ref_collno", ref_collno);
if (HdMemcoopId.Value == "")
{
ls_memcoopid = dw_main.GetItemString(1, "memcoop_id");
}
else
{
ls_memcoopid = HdMemcoopId.Value;
}
dw_coll.SetItemString(row, "coop_id", state.SsCoopControl);
//mong ตรวจสอบการค้ำประกัน จำนวนที่ค้ำประกันได้
if (JsCheckMangrtColl(row, ref_collno) == 1)
{
String sqlstr = @" SELECT MBMEMBMASTER.BIRTH_DATE,
MBMEMBMASTER.LNDROPGRANTEE_FLAG,
MBMEMBMASTER.REMARK,
MBMEMBMASTER.MEMBER_DATE,
MBMEMBMASTER.WORK_DATE,
MBMEMBMASTER.RETRY_DATE,
MBMEMBMASTER.SALARY_AMOUNT,
MBMEMBMASTER.MEMBTYPE_CODE,
MBUCFMEMBTYPE.MEMBTYPE_DESC,
mbucfprename.prename_desc||mbmembmaster.memb_name||' '||mbmembmaster.memb_surname as member_name
FROM MBMEMBMASTER,
MBUCFMEMBGROUP,
MBUCFPRENAME,
MBUCFMEMBTYPE
WHERE ( MBUCFMEMBGROUP.MEMBGROUP_CODE = MBMEMBMASTER.MEMBGROUP_CODE ) and
( MBMEMBMASTER.PRENAME_CODE = MBUCFPRENAME.PRENAME_CODE ) and
( MBMEMBMASTER.MEMBTYPE_CODE = MBUCFMEMBTYPE.MEMBTYPE_CODE ) and
( MBMEMBMASTER.COOP_ID = MBUCFMEMBGROUP.COOP_ID ) and
( mbmembmaster.member_no = '" + ref_collno + @"' ) AND
MBMEMBMASTER.COOP_ID ='" + state.SsCoopControl + @"' ";
Sdt dt = WebUtil.QuerySdt(sqlstr);
while (dt.Next())
{
lndropgrantee_flag = dt.GetDecimal("lndropgrantee_flag");
description = dt.GetString("member_name");
try
{
remark = dt.GetString("remark");
}
catch { remark = ""; }
membtype_code = dt.GetString("membtype_code");
ldc_salary = dt.GetDecimal("salary_amount");
try
{
ldtm_birth = dt.GetDate("BIRTH_DATE");
}
catch { }
try
{
///<หาวันที่เกษียณ>
ldtm_retry = wcf.InterPreter.CalReTryDate(state.SsConnectionIndex, state.SsCoopControl, ldtm_birth);
}
catch { }
}
String[] mem_coll = shrlonService.GetMembercoll(state.SsWsPass, ls_memcoopid, ref_collno, state.SsWorkDate);
retry_age = Math.Round(wcf.Busscom.of_cal_yearmonth(state.SsWsPass, state.SsWorkDate, ldtm_retry) * 12);
if (retry_age < period_payamt)
{
//wa LtServerMessage.Text = WebUtil.WarningMessage("งวดเกษียณของผู้ค้ำ ท. " + ref_collno + " น้อยกว่างวดการส่งชำระ " + retry_age + " < " + period_payamt);
dw_coll.SetItemString(row, "ref_collno", ref_collno);
dw_coll.SetItemString(row, "description", description);
dw_coll.SetItemDecimal(row, "coll_balance", Convert.ToDecimal(mem_coll[2]));
}
else
{
if (mem_coll[0] != "")
{
dw_coll.SetItemString(row, "ref_collno", ref_collno);
dw_coll.SetItemString(row, "description", description);
dw_coll.SetItemDecimal(row, "coll_balance", Convert.ToDecimal(mem_coll[2]));
HUseamt.Value = mem_coll[2];
// JsPostreturn();
}
else
{
dw_coll.SetItemString(row, "ref_collno", ref_collno);
dw_coll.SetItemString(row, "description", description);
dw_coll.SetItemDecimal(row, "coll_balance", Convert.ToDecimal(mem_coll[2]));
HUseamt.Value = mem_coll[2];
}
}
}
}
else if (loancolltype_code == "02")
{
dw_coll.SetItemString(row, "ref_collno", dw_main.GetItemString(1, "member_no"));
dw_coll.SetItemString(row, "description", dw_main.GetItemString(1, "member_name"));
dw_coll.SetItemDecimal(row, "coll_balance", dw_main.GetItemDecimal(1, "sharestk_value"));
dw_coll.SetItemDecimal(row, "use_amt", dw_main.GetItemDecimal(1, "sharestk_value"));
HUseamt.Value = dw_main.GetItemDecimal(1, "sharestk_value").ToString();
// JsPostreturn();
}
}
catch (Exception ex)
{
//LtServerMessage.Text = WebUtil.ErrorMessage("JsGetMemberCollno===>" + ex);
}
}
///
/// เปิดใบคำขอเก่าขึ้นมาแก้ไข
///
private void JsOpenOldDocNo()
{
str_itemchange strList = new str_itemchange();
str_requestopen strRequestOpen = new str_requestopen();
strList = WebUtil.str_itemchange_session(this);
string docno = dw_main.GetItemString(1, "loanrequest_docno");
string coop_id = dw_main.GetItemString(1, "coop_id");
strRequestOpen.memcoop_id = state.SsCoopControl;
strRequestOpen.request_no = docno;
strRequestOpen.coop_id = coop_id;
strRequestOpen.format_type = "CAT";
strRequestOpen.xml_main = dw_main.Describe("DataWindow.Data.XML");
strRequestOpen.xml_clear = "";
strRequestOpen.xml_guarantee = "";
strRequestOpen.xml_insurance = "";
strRequestOpen.xml_intspc = "";
strRequestOpen.xml_otherclr = "";
txt_reqNo.Text = docno;
txt_member_no.Text = member_no;
try
{
strRequestOpen = shrlonService.of_loanrequestopen(state.SsWsPass, strRequestOpen);
DateTime ldtm_birth = new DateTime();
DateTime ldtm_retry = new DateTime();
//นำข้อมูลเก็บไว้ใน DataWindow
dw_main.Reset();
dw_main.ImportString(strRequestOpen.xml_main, FileSaveAsType.Xml);
DwUtil.RetrieveDDDW(dw_main, "loantype_code_1", pbl, null);
if (dw_main.RowCount > 1) dw_main.DeleteRow(dw_main.RowCount);
try
{
ldtm_birth = dw_main.GetItemDate(1, "birth_date");
}
catch { }
try
{
///<หาวันที่เกษียณ>
ldtm_retry = wcf.InterPreter.CalReTryDate(state.SsConnectionIndex, state.SsCoopControl, ldtm_birth);
}
catch { }
try
{
dw_main.SetItemDateTime(1, "retry_date", ldtm_retry);
}
catch { dw_main.SetItemDateTime(1, "retry_date", DateTime.Now); }
try
{
///<หาเกษียณอายุ>
Decimal retry_age = BusscomService.of_cal_yearmonth(state.SsWsPass, DateTime.Now, ldtm_retry);
String retry_agel = WebUtil.Left(retry_age.ToString("00.00"), 2);
String retry_ager = WebUtil.Right(retry_age.ToString(""), 2);
int retryagel = Convert.ToInt32(retry_agel) * 12;
Decimal retryager = (Math.Round(Convert.ToDecimal(retry_ager)) / 10) * 10;
dw_main.SetItemDecimal(1, "retry_age", retryagel + retryager);
}
catch
{
Decimal retry_age = BusscomService.of_cal_yearmonth(state.SsWsPass, DateTime.Now, DateTime.Now);
String retry_agel = WebUtil.Left(retry_age.ToString("00.00"), 2);
String retry_ager = WebUtil.Right(retry_age.ToString(""), 2);
int retryagel = Convert.ToInt32(retry_agel) * 12;
Decimal retryager = (Math.Round(Convert.ToDecimal(retry_ager)) / 10) * 10;
dw_main.SetItemDecimal(1, "retry_age", retryagel + retryager);
}
string expendBank = "";
try
{ expendBank = dw_main.GetItemString(1, "expense_bank"); }
catch { expendBank = ""; }
//ตรวจสอบ ธนาคารว่ามีหรือไม่
if (expendBank != "")
{
// เรียก Method ShowBranch() สำหรับแสดงสาขาธนาคาร
JsExpenseBank();
}
tDwMain.Eng2ThaiAllRow();
try
{
dw_coll.Reset();
dw_coll.ImportString(strRequestOpen.xml_guarantee, FileSaveAsType.Xml);
}
catch
{
dw_coll.Reset();
DwUtil.ImportData(strRequestOpen.xml_guarantee, dw_coll, null, FileSaveAsType.Xml);
}
try
{
dw_clear.Reset();
dw_clear.ImportString(strRequestOpen.xml_clear, FileSaveAsType.Xml);
}
catch
{
dw_clear.Reset();
}
try
{
//LtXmlOtherlr.Text
dw_otherclr.Reset();
dw_otherclr.ImportString(strRequestOpen.xml_otherclr, FileSaveAsType.Xml);
}
catch
{
dw_otherclr.Reset();
}
strList.xml_main = strRequestOpen.xml_main;
strList.xml_guarantee = strRequestOpen.xml_guarantee;
strList.xml_clear = strRequestOpen.xml_clear;
strList.xml_otherclr = strRequestOpen.xml_otherclr;
Session["strItemchange"] = strList;
LtXmlOtherlr.Text = strRequestOpen.xml_otherclr;
Decimal loanrequestStatus = dw_main.GetItemDecimal(1, "loanrequest_status");
//เปิดให้แก้ไขได้หลังจาก open
if ((loanrequestStatus != 8) && (loanrequestStatus != 81) && (loanrequestStatus != 11))
{
dw_main.DisplayOnly = true;
dw_clear.DisplayOnly = true;
dw_coll.DisplayOnly = true;
dw_otherclr.DisplayOnly = true;
}
else
{
dw_main.DisplayOnly = false;
dw_clear.DisplayOnly = false;
dw_coll.DisplayOnly = false;
dw_otherclr.DisplayOnly = false;
}
LinkButton1.Visible = true;
LinkButton2.Visible = true;
LinkButton3.Visible = true;
LinkButton4.Visible = true;
}
catch (Exception ex)
{
//LtServerMessage.Text = WebUtil.ErrorMessage("JsOpenOldDocNo====>" + ex);
}
}
///
/// ยกเลิก ใบคำขอกู้
///
private void JsCancelRequest()
{
String dwXmlMain = dw_main.Describe("DataWindow.Data.XML");
String dwXmlMessage = "";
String cancelID = state.SsUsername;
String coop_id = state.SsCoopId;
try
{
int result = shrlonService.CancelRequest(state.SsWsPass, ref dwXmlMain, ref dwXmlMessage, cancelID, coop_id);
if (result == 1)
{
//นำเข้าข้อมูลหลัก
dw_main.Reset();
dw_main.ImportString(dwXmlMain, FileSaveAsType.Xml);
if (dw_main.RowCount > 1) dw_main.DeleteRow(dw_main.RowCount);
SaveWebSheet();
LtServerMessage.Text = WebUtil.WarningMessage("ได้ทำการยกเลิกใบคำขอกู้เงินเรียบร้อยแล้ว");
}
else
{
if ((dwXmlMessage != "") && (dwXmlMessage != null))
{
dw_message.Reset();
dw_message.ImportString(dwXmlMessage, FileSaveAsType.Xml);
string msgtext = dw_message.GetItemString(1, "msgtext");
LtServerMessage.Text = WebUtil.WarningMessage(msgtext);
}
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage("JsCancelRequest===>" + ex);
}
}
///
/// set วันที่เริ่มเรียกเก็บ
///
///
///ยอดขอกู้==> หายอดชำระ
///
private void JsSetpriod()
{
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
Decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
Decimal period_payamt = dw_main.GetItemDecimal(1, "maxsend_payamt"); // wa period_payamt
Decimal period_payment = 0;
decimal loanpayment_type = dw_main.GetItemDecimal(1, "loanpayment_type");
// ปัดยอดชำระ
String ll_roundpay = wcf.Busscom.of_getattribloantype(state.SsWsPass, ls_loantype, "payround_factor");
Decimal intestimate_amt = of_calintestimatemain();
dw_main.SetItemDecimal(1, "intestimate_amt", intestimate_amt);
Ltjspopupclr.Text = "";
JsLoanpaymenttype();
JsGenBuyshare();
JsCalinsurancepay();
JsSetmutualcoll();
JsSetmutualStability();
Jsfirstperiod();
JsInsertRowcoll();
HdIsPostBack.Value = "false";
}
///
/// ยอดชำระ==> หาจน.งวด
///
private void JsRevert()
{
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
Decimal period_payamt = new Decimal(0.00);
period_payamt = dw_main.GetItemDecimal(1, "period_payamt");
Decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
Decimal period_payment = dw_main.GetItemDecimal(1, "period_payment");
Decimal maxsend_payamt = dw_main.GetItemDecimal(1, "maxsend_payamt");
// ปัดยอดชำระ
String ll_roundpay = wcf.Busscom.of_getattribloantype(state.SsWsPass, ls_loantype, "payround_factor");
int roundpay = Convert.ToInt16(ll_roundpay);
if (loanrequest_amt == 0 && period_payamt > 0)
{
loanrequest_amt = period_payamt * period_payment;
// ปัดยอดขอกู้
String ll_roundloan = wcf.Busscom.of_getattribloantype(state.SsWsPass, ls_loantype, "reqround_factor");
int roundloan = Convert.ToInt16(ll_roundloan);
if (roundloan > 0)
{
if (loanrequest_amt > 0)
{
loanrequest_amt = Math.Round((loanrequest_amt) / roundloan) * roundloan;
}
else
{
loanrequest_amt = 0;
}
}
dw_main.SetItemDecimal(1, "loanrequest_amt", loanrequest_amt);
}
else
{
period_payamt = loanrequest_amt / period_payment;
period_payamt = Math.Ceiling(Convert.ToDecimal(period_payamt));
if ((period_payamt * 100) % 100 > 0)
{
period_payamt = Math.Truncate(period_payamt) + 1;
//เอ period_payamt++;
}
if (period_payamt > maxsend_payamt)
{
period_payamt = maxsend_payamt;
period_payment = loanrequest_amt / period_payamt;
//period_payment = Math.Round(period_payment / roundpay) * roundpay;
}
// mong period_payment = Math.Round(period_payment / roundpay) * roundpay;
//period_payment = Math.Round(period_payment, roundpay, MidpointRounding.AwayFromZero);
if (period_payment % roundpay > 0)
{
period_payment = period_payment + roundpay - (period_payment % roundpay);
}
dw_main.SetItemDecimal(1, "period_payment", period_payment);
dw_main.SetItemDecimal(1, "period_payamt", period_payamt);
}
HdIsPostBack.Value = "false";
}
///
/// จน.งวด==> หายอดชำระ
///
private void JsContPeriod()
{
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
Decimal maxsend_payamt = dw_main.GetItemDecimal(1, "maxsend_payamt"); //
Decimal period_payamt = dw_main.GetItemDecimal(1, "period_payamt");
Decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
decimal loanpayment_type = dw_main.GetItemDecimal(1, "loanpayment_type");
decimal ldc_intrate = dw_main.GetItemDecimal(1, "int_contintrate");
Decimal period_payment = 0;
if (period_payamt == 0) { period_payamt = maxsend_payamt; }
// ปัดยอดชำระ
String ll_roundpay = wcf.Busscom.of_getattribloantype(state.SsWsPass, ls_loantype, "payround_factor");
int roundpay = Convert.ToInt16(ll_roundpay);
double ldc_fr = 1, ldc_temp = 1, loapayment_amt = 0;
if (loanpayment_type == 1)
{
//คงต้น
period_payment = loanrequest_amt / period_payamt;
}
else
{
int li_fixcaltype = 1;// Convert.ToInt16(wcf.Busscom.of_getattribconstant(state.SsWsPass, "fixpaycal_type"));
//คงยอด
if (li_fixcaltype == 1)
{
// ด/บ ทั้งปี / 12
//ldc_fr = exp( - ai_period * log( ( 1 + adc_intrate / 12 ) ) )
//ldc_payamt = adc_principal * ( adc_intrate / 12 ) / ( 1 - ldc_fr )
ldc_temp = Math.Log(1 + (Convert.ToDouble(ldc_intrate / 12)));
ldc_fr = Math.Exp(-Convert.ToDouble(period_payamt) * ldc_temp);
loapayment_amt = (Convert.ToDouble(loanrequest_amt) * (Convert.ToDouble(ldc_intrate) / 12)) / ((1 - ldc_fr));
}
else
{
//แบบสุโขทัย
//ldc_fr = ( adc_intrate * ( 1+ adc_intrate) ^ ai_period )/ (((1 + adc_intrate ) ^ ai_period ) - 1 )
//ldc_payamt = adc_principal / ldc_fr
}
period_payment = Math.Ceiling(Convert.ToDecimal(loapayment_amt));
}
if (roundpay > 0)
{
//by mong
//period_payamt = Math.Round(period_payamt / 10) * 10;
//period_payment = Math.Ceiling(Convert.ToDecimal(loapayment_amt));
//period_payment = Math.Round(period_payment, roundpay, MidpointRounding.AwayFromZero);// *roundpay;
if (period_payment % roundpay > 0)
{
period_payment = period_payment + roundpay - (period_payment % roundpay);
}
//สำหรับครูสุรินทร์
//มง ระยอง เอาออก ไม่ต้องคำนวณจำนวนงวดกลับ 56-05-01
//if (loanpayment_type == 1 && period_payamt > 1)
//{
// //คงต้น
// period_payamt = loanrequest_amt / period_payment;
// if ((period_payamt * 100) % 100 > 0)
// {
// period_payamt = Math.Truncate(period_payamt);
// period_payamt++;
// }
//}
}
dw_main.SetItemDecimal(1, "period_payment", period_payment);
dw_main.SetItemDecimal(1, "period_payamt", period_payamt);
HdIsPostBack.Value = "false";
}
private void JsLoanpaymenttype()
{
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
Decimal period_payamt = dw_main.GetItemDecimal(1, "maxsend_payamt");
Decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
decimal loanpayment_type = dw_main.GetItemDecimal(1, "loanpayment_type");
decimal ldc_intrate = dw_main.GetItemDecimal(1, "int_contintrate");
Decimal period_payment = 0;
// ปัดยอดชำระ
String ll_roundpay = wcf.Busscom.of_getattribloantype(state.SsWsPass, ls_loantype, "payround_factor");
int roundpay = Convert.ToInt16(ll_roundpay);
// if (roundpay <= 0) { roundpay = 100; }
double ldc_fr = 1, ldc_temp = 1, loapayment_amt = 0;
if (loanpayment_type == 1)
{
//คงต้น
period_payment = loanrequest_amt / period_payamt;
loapayment_amt = (Convert.ToDouble(period_payment));
}
else
{
int li_fixcaltype = 2;
//คงยอด
if (li_fixcaltype == 1)
{
// ด/บ ทั้งปี / 12
//ldc_fr = exp( - ai_period * log( ( 1 + adc_intrate / 12 ) ) )
//ldc_payamt = adc_principal * ( adc_intrate / 12 ) / ( 1 - ldc_fr )
ldc_temp = Math.Log(1 + (Convert.ToDouble(ldc_intrate / 12)));
ldc_fr = Math.Exp(-Convert.ToDouble(period_payamt) * ldc_temp);
loapayment_amt = (Convert.ToDouble(loanrequest_amt) * (Convert.ToDouble(ldc_intrate) / 12)) / ((1 - ldc_fr));
}
else
{
// ด/บ 30 วัน/เดือน
//ldc_fr = exp( - ai_period * log( ( 1 + adc_intrate * ( 30/365 ) ) ) )
//ldc_payamt = adc_principal * ( adc_intrate * 30/365 ) / ( 1 - ldc_fr )
ldc_temp = Math.Log(1 + (Convert.ToDouble(ldc_intrate * (30 / 365))));
ldc_fr = Math.Exp(-Convert.ToDouble(period_payamt) * ldc_temp);
loapayment_amt = (Convert.ToDouble(loanrequest_amt) * (Convert.ToDouble(ldc_intrate) * (30 / 365))) / ((1 - ldc_fr));
//แบบสุโขทัย
//ldc_fr = ( adc_intrate * ( 1+ adc_intrate) ^ ai_period )/ (((1 + adc_intrate ) ^ ai_period ) - 1 )
//ldc_payamt = adc_principal / ldc_fr
}
period_payment = Math.Ceiling(Convert.ToDecimal(loapayment_amt));
}
if (roundpay > 0)
{
//wa
// period_payment = Math.Ceiling(Convert.ToDecimal(loapayment_amt));
//period_payamt = Math.Round(period_payamt / 10) * 10;
// period_payment = Math.Round(period_payment / roundpay) * roundpay;
//period_payment = Math.Round(period_payment, roundpay, MidpointRounding.AwayFromZero);
if (period_payment % roundpay > 0)
{
period_payment = period_payment + roundpay - (period_payment % roundpay);
}
}
//สำหรับครูสุรินทร์
//มง เอาออก ระยองไม่ใช่
//if (loanpayment_type == 1)
//{
// //คงต้น
// period_payamt = loanrequest_amt / period_payment;
// if ((period_payamt * 100) % 100 > 0)
// {
// period_payamt = Math.Truncate(period_payamt);
// period_payamt++;
// }
//}
dw_main.SetItemDecimal(1, "period_payment", period_payment);
dw_main.SetItemDecimal(1, "period_payamt", period_payamt);
HdIsPostBack.Value = "false";
}
private void JsLoanCreditDividend()
{
string loantype = dw_main.GetItemString(1, "loantype_code");
string member_no = dw_main.GetItemString(1, "member_no");
string coop_id = dw_main.GetItemString(1, "coop_id");
//คิดจากยอดหุ้น ยกมา
double ldc_shrstkbegin = 0, ldc_divrate = 0, ldc_shrbuy = 0;
string strat_date = " ", end_date = " ";
String sqlstr = @" SELECT SHSHAREMASTER.SHARESTK_AMT, (SHSHAREMASTER.SHAREBEGIN_AMT * SHSHARETYPE.UNITSHARE_VALUE ) as SHAREBEGIN_AMT,
SHSHARETYPE.UNITSHARE_VALUE, SHSHARETYPE.dividend_rate,SHSHARETYPE.loandivstart_date,SHSHARETYPE.loandivend_date
FROM SHSHAREMASTER,
SHSHARETYPE
WHERE ( SHSHAREMASTER.SHARETYPE_CODE = SHSHARETYPE.SHARETYPE_CODE ) and
( SHSHAREMASTER.COOP_ID = SHSHARETYPE.COOP_ID ) and
( ( SHSHAREMASTER.member_no = '" + member_no + @"' ) AND
( shsharemaster.sharetype_code = '01' ) ) and
SHSHAREMASTER.COOP_ID ='" + coop_id + @"' ";
Sdt dtshare = WebUtil.QuerySdt(sqlstr);
if (dtshare.Next())
{
ldc_shrstkbegin = dtshare.GetDouble("SHAREBEGIN_AMT");
ldc_divrate = dtshare.GetDouble("dividend_rate");
}
// string sqlstm = @" SELECT SUM (A.SHARE_AMOUNT * B.SIGN_FLAG * C.UNITSHARE_VALUE) as sharebuy_amt
// FROM SHSHARESTATEMENT A, SHUCFSHRITEMTYPE B , SHSHARETYPE C
// WHERE A.SHARETYPE_CODE = C.SHARETYPE_CODE AND A.SHRITEMTYPE_CODE = B.SHRITEMTYPE_CODE AND A.MEMBER_NO = '" + member_no + @"' AND
// A.SHRITEMTYPE_CODE <> 'B/F' and A.OPERATE_DATE > C.loandivstart_date and A.OPERATE_DATE <= C.loandivend_date " + @" ";
// Sdt dtsharestm = WebUtil.QuerySdt(sqlstm);
// if (dtshare.Next())
// {
// try
// {
// ldc_shrbuy = dtshare.GetDouble("sharebuy_amt");
// }
// catch
// {
// ldc_shrbuy = 0;
// }
// }
//ldc_shrstkbegin += ldc_shrbuy;
double loancredit_amt = ldc_shrstkbegin * ldc_divrate;
decimal ldc_maxcredit = Convert.ToDecimal(loancredit_amt);
//mong
String ll_roundloan = wcf.Busscom.of_getattribloantype(state.SsWsPass, loantype, "reqround_factor");
int roundloan = Convert.ToInt16(ll_roundloan);
if (ldc_maxcredit % roundloan > 0)
{
ldc_maxcredit = ldc_maxcredit - (ldc_maxcredit % roundloan);
}
dw_main.SetItemDecimal(1, "loancredit_amt", ldc_maxcredit);
dw_main.SetItemDecimal(1, "loanrequest_amt", ldc_maxcredit);
dw_main.SetItemDecimal(1, "loanpermiss_amt", ldc_maxcredit);
dw_main.SetItemDecimal(1, "maxsend_payamt", 12);
dw_main.SetItemDecimal(1, "period_payamt", 12);
//คงต้น
// ปัดยอดชำระ
decimal period_payamt = 0, period_payment = 0;
//String ll_roundpay = wcf.Busscom.of_getattribloantype(state.SsWsPass, loantype, "payround_factor");
//int roundpay = Convert.ToInt16(ll_roundpay);
//period_payment = ldc_maxcredit / 12;
//if (roundpay > 0)
//{
// //by mong
// //period_payamt = Math.Round(period_payamt / 10) * 10;
// //period_payment = Math.Ceiling(Convert.ToDecimal(loapayment_amt));
// //period_payment = Math.Round(period_payment, roundpay, MidpointRounding.AwayFromZero);// *roundpay;
// if (period_payment % roundpay > 0)
// {
// period_payment = period_payment + roundpay - (period_payment % roundpay);
// }
// //คงต้น
// period_payamt = ldc_maxcredit / period_payment;
// period_payamt = Math.Ceiling(Convert.ToDecimal(period_payamt));
// if ((period_payamt * 100) % 100 > 0)
// {
// period_payamt = Math.Truncate(period_payamt) + 1;
// //เอ period_payamt++;
// }
//}
period_payment = 0;
dw_main.SetItemDecimal(1, "period_payment", period_payment);
ldc_divrate = ldc_divrate * 100;
Ltdividen.Text = WebUtil.CompleteMessage("ยอดหุ้นยกมาต้นปี = " + ldc_shrstkbegin.ToString("###,###,###,###.00") + " || อัตราปันผลปีที่แล้ว = " + ldc_divrate.ToString("##.00") + " % ");
}
///
/// ค้ำประกัน
///
///
private int JsCheckMangrtColl(int row, string ref_collno)
{
string loantype = dw_main.GetItemString(1, "loantype_code");
string membno = dw_main.GetItemString(1, "member_no");
string sql_lnconst = "select grtright_contflag, grtright_memflag, grtright_contract, grtright_member from lnloanconstant ";
Sdt dt = WebUtil.QuerySdt(sql_lnconst);
decimal grtchkcont_flag = 0, grtchkmem_flag = 0, grtcountcont = 0, grtcountmem = 0;
if (dt.Next())
{
grtchkcont_flag = dt.GetDecimal("grtright_contflag");
grtchkmem_flag = dt.GetDecimal("grtright_memflag");
grtcountcont = dt.GetDecimal("grtright_contract");
grtcountmem = dt.GetDecimal("grtright_member");
}
string contno_clr = "", contclr_all = "";
decimal clear_flag = 0;
int k = 0;
for (int i = 1; i <= dw_clear.RowCount; i++)
{
contno_clr = dw_clear.GetItemString(i, "loancontract_no");
clear_flag = dw_clear.GetItemDecimal(i, "clear_status");
if (clear_flag == 1)
{
k++;
if (k > 1) { contclr_all += ","; }
contclr_all += "'" + contno_clr + "'";
}
}
dt.Dispose();
// string sql_memcoll = @" select b.member_no , a.ref_collno , a.coll_status, a.loancontract_no ,
// b.principal_balance from lncontcoll a, lncontmaster b
// where a.loancontract_no = b.loancontract_no and b.principal_balance > 0
// and a.coll_status = 1 and a.ref_collno = '" + ref_collno + @"' and
// a.loancontract_no not in ( " + contclr_all + @") order by b.member_no ";
if ((contclr_all.Length <= 7) || (contclr_all.Trim() == "")) { contclr_all = "'00000'"; }
string sql_memcoll = @" SELECT LNCONTMASTER.MEMBER_NO as member_no,
LNCONTMASTER.LOANCONTRACT_NO as loancontract_no,
LNCONTCOLL.REF_COLLNO as ref_collno,
LNCONTCOLL.DESCRIPTION as DESCRIPTION ,
LNCONTCOLL.COLL_AMT as COLL_AMT ,
LNCONTCOLL.COLL_PERCENT as COLL_PERCENT ,
MBMEMBMASTER.MEMB_NAME,
MBMEMBMASTER.MEMB_SURNAME,
LNCONTCOLL.BASE_PERCENT as BASE_PERCENT ,'Contno'
FROM LNCONTCOLL,
LNCONTMASTER ,MBMEMBMASTER
WHERE ( LNCONTCOLL.COOP_ID = LNCONTMASTER.COOP_ID ) and
( MBMEMBMASTER.MEMBER_NO = LNCONTMASTER.MEMBER_NO) AND
( LNCONTCOLL.LOANCONTRACT_NO = LNCONTMASTER.LOANCONTRACT_NO ) and
( ( LNCONTCOLL.LOANCOLLTYPE_CODE in ( '01') ) AND
( LNCONTMASTER.PRINCIPAL_BALANCE > 0 ) AND LNCONTMASTER.LOANCONTRACT_NO not in (" + contclr_all + @") and
( LNCONTCOLL.REF_COLLNO = '" + ref_collno + @"' ) )
Union
SELECT LNREQLOAN.MEMBER_NO as member_no ,
LNREQLOAN.LOANREQUEST_DOCNO as loancontract_no ,
LNREQLOANCOLL.REF_COLLNO as ref_collno ,
LNREQLOANCOLL.DESCRIPTION as DESCRIPTION ,
LNREQLOANCOLL.COLL_AMT as COLL_AMT ,
LNREQLOANCOLL.COLL_PERCENT as COLL_PERCENT,
MBMEMBMASTER.MEMB_NAME,
MBMEMBMASTER.MEMB_SURNAME,
LNREQLOANCOLL.BASE_PERCENT as BASE_PERCENT , 'Lnreqloan'
FROM LNREQLOAN,
LNREQLOANCOLL ,MBMEMBMASTER
WHERE ( LNREQLOAN.COOP_ID = LNREQLOANCOLL.COOP_ID ) and
( MBMEMBMASTER.MEMBER_NO = LNREQLOAN.MEMBER_NO) AND
( LNREQLOAN.LOANREQUEST_DOCNO = LNREQLOANCOLL.LOANREQUEST_DOCNO ) and
( ( LNREQLOANCOLL.LOANCOLLTYPE_CODE = '01' ) AND
( LNREQLOAN.LOANREQUEST_STATUS = 8 ) AND
( LNREQLOANCOLL.REF_COLLNO = '" + ref_collno + @"' ) ) order by member_no ";
Sdt dt_coll = WebUtil.QuerySdt(sql_memcoll);
if (grtchkcont_flag == 1 && dt_coll.GetRowCount() >= grtcountcont)
{
//ตรวจสอบการค้ำประกันเกินสัญญาที่ระบุ
LtServerMessage.Text = WebUtil.WarningMessage("ผู้ค้ำสมาชิกเลขที่ # " + ref_collno + " ได้ค้ำประกันเกินกว่าที่กำหนดไว้ค้ำประกันได้สูงสุด " + grtcountcont.ToString() + " สัญญา ค้ำประกันไปแล้ัว " + dt_coll.GetRowCount().ToString());
dw_coll.SetItemString(row, "ref_collno", "");
dw_coll.SetItemString(row, "description", "");
dw_coll.SetItemDecimal(row, "coll_balance", 0);
return 8;
}
string member_nochk, prememno = "";
int collmem = 0;
string ls_msg = "", memb_name = "", memb_surname = "";
while (dt_coll.Next())
{
member_nochk = dt_coll.GetString("member_no");
memb_name = dt_coll.GetString("member_no");
memb_surname = dt_coll.GetString("member_no");
if (prememno != member_nochk)
{
collmem++;
ls_msg += " , ค้ำประกันสมาชิกเลขที่ " + member_nochk + " " + memb_name.Trim() + " " + memb_surname.Trim() + "/n";
}
if (membno == member_nochk) { collmem--; }
prememno = member_nochk;
}
if (grtchkmem_flag == 1 && collmem >= grtcountmem)
{
//ตรวจสอบการค้ำประกันเกินจำนวนคนที่ระบุ
LtServerMessage.Text = WebUtil.ErrorMessage("ผู้ค้ำสมาชิกเลขที่ # " + ref_collno + " ได้ค้ำประกันสมาชิกเกินกว่าที่กำหนดไว้ค้ำประกันได้สูงสุด " + "\n" + grtcountmem.ToString() + " ค้ำประกันได้ไม่ไม่เกิน " + collmem.ToString() + "\n " + ls_msg);
// Ltdividen.Text = WebUtil.ErrorMessage(ls_msg);
dw_coll.SetItemString(row, "ref_collno", "");
dw_coll.SetItemString(row, "description", "");
dw_coll.SetItemDecimal(row, "coll_balance", 0);
return 8; //-1
}
dt_coll.Dispose();
return 1;
}
private void JsCollCondition()
{
String dwXmlMain = dw_main.Describe("DataWindow.Data.XML");
String dwXmlColl = dw_coll.Describe("DataWindow.Data.XML");
String dwXmlMessage = "";
try
{
dwXmlColl = shrlonService.CollPercCondition(state.SsWsPass, dwXmlMain, dwXmlColl, ref dwXmlMessage);
try
{
if ((dwXmlColl != "") && (dwXmlColl != null))
{
dw_coll.Reset();
dw_coll.ImportString(dwXmlColl, FileSaveAsType.Xml);
}
}
catch
{
dw_coll.Reset();
}
if ((dwXmlMessage != "") && (dwXmlMessage != null))
{
dw_message.Reset();
dw_message.ImportString(dwXmlMessage, FileSaveAsType.Xml);
string msgtext = dw_message.GetItemString(1, "msgtext");
LtServerMessage.Text = WebUtil.WarningMessage(msgtext);
}
}
catch (Exception ex)
{
//LtServerMessage.Text = WebUtil.ErrorMessage("JsCollCondition===>" + ex);
}
}
private void JsCollInitP()
{
String dwXmlMain = dw_main.Describe("DataWindow.Data.XML");
String dwXmlColl = dw_coll.Describe("DataWindow.Data.XML");
dwXmlColl = shrlonService.CollInitPrecent(state.SsWsPass, dwXmlMain, dwXmlColl);
try
{
if ((dwXmlColl != "") && (dwXmlColl != null))
{
dw_coll.Reset();
dw_coll.ImportString(dwXmlColl, FileSaveAsType.Xml);
}
}
catch
{
dw_coll.Reset();
//dw_coll.InsertRow(0);
}
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
if (ls_loantype != "23")
{
Decimal coll_balance = 0;
string loancolltype_code = "";
Decimal total = 0;
Decimal balance = 0;
Decimal per90 = new Decimal(0.9);
Decimal sharestk_value = dw_main.GetItemDecimal(1, "sharestk_value");
if (ls_loantype == "21") { sharestk_value = sharestk_value * per90; }
Decimal loanrequest_amt, loanrequest;
loanrequest = dw_main.GetItemDecimal(1, "loanrequest_amt");
loanrequest_amt = loanrequest - sharestk_value;
int row = dw_coll.RowCount;
int i = 0;
Decimal sum_balance = 0, coll_percen = 0, total_balance = 0;
for (i = 0; i < row; i++)
{
loancolltype_code = dw_coll.GetItemString(i + 1, "loancolltype_code");
if (loancolltype_code == "03")
{
coll_balance = dw_coll.GetItemDecimal(i + 1, "coll_balance");
}
total = total + coll_balance;
}
while (row > 0)
{
if (row > 1)
{
String ref_collno = dw_coll.GetItemString(row, "ref_collno");
string sql = @" SELECT LNCONTCOLL.LOANCONTRACT_NO,
LNCONTMASTER.MEMBER_NO,
MBMEMBMASTER.MEMB_NAME,
MBMEMBMASTER.MEMB_SURNAME,
lncontmaster.principal_balance + lncontmaster.withdrawable_amt as sum_balance,
LNCONTCOLL.COLL_PERCENT,
'CONT' as itemtype_code
FROM LNCONTCOLL,
LNCONTMASTER,
LNLOANTYPE,
MBMEMBMASTER
WHERE ( LNCONTCOLL.LOANCONTRACT_NO = LNCONTMASTER.LOANCONTRACT_NO ) and
( LNCONTMASTER.LOANTYPE_CODE = LNLOANTYPE.LOANTYPE_CODE ) and
( LNCONTMASTER.MEMBER_NO = MBMEMBMASTER.MEMBER_NO ) and
( LNCONTCOLL.COOP_ID = LNCONTMASTER.COOP_ID ) and
( LNCONTMASTER.COOP_ID = LNLOANTYPE.COOP_ID ) and
( LNCONTMASTER.MEMCOOP_ID = MBMEMBMASTER.COOP_ID ) and
( lncontcoll.ref_collno = '" + ref_collno + @"' ) AND
( lncontcoll.loancolltype_code = '01' ) AND
( lncontcoll.coll_status = 1 ) AND
( lncontmaster.contract_status > 0 ) AND
LNCONTCOLL.COOP_ID = '" + state.SsCoopId + @"' ";
Sdt dt = WebUtil.QuerySdt(sql);
if (dt.Next())
{
int rowCount = dt.GetRowCount();
for (int x = 0; x < rowCount; x++)
{
sum_balance = Convert.ToDecimal(dt.Rows[x]["sum_balance"]);
coll_percen = Convert.ToDecimal(dt.Rows[x]["COLL_PERCENT"]);
}
total_balance = sum_balance * coll_percen;
}
Decimal collbalance = dw_coll.GetItemDecimal(row, "coll_balance");
balance = loanrequest_amt * ((collbalance - total_balance) / total);
//check มีรายการอายัดอยู่หรือไม่
if (loancolltype_code == "03")
{
String as_deptaccount = ref_collno;
Decimal adc_chack_amt = balance;
short ai_pass = 0;
string ls_message = "";
int result = wcf.Shrlon.of_chack_prncbal(state.SsWsPass, as_deptaccount, adc_chack_amt, ref ai_pass, ref ls_message);
if (ai_pass == 0) { LtServerMessage.Text = WebUtil.ErrorMessage("บัญชี " + as_deptaccount + " " + ls_message); }
}
// balance = loanrequest_amt * (collbalance / total);
dw_coll.SetItemDecimal(row, "use_amt", balance);
dw_coll.SetItemDecimal(row, "coll_percent", (balance / loanrequest));
}
else
{
dw_coll.SetItemDecimal(row, "use_amt", sharestk_value);
dw_coll.SetItemDecimal(row, "coll_percent", (sharestk_value / loanrequest));
}
row--;
}
Decimal bal = balance + balance;
//if (loanrequest != bal) { LtServerMessage.Text = WebUtil.WarningMessage("ยอดค้ำประกันไม่เท่ากับยอดขอกู้"); }
}
}
private void JsSetDataList()
{
str_itemchange strList = new str_itemchange();
strList = WebUtil.str_itemchange_session(this);
if (dw_clear.RowCount == 0)
{ strList.xml_clear = null; }
else { strList.xml_clear = dw_clear.Describe("DataWindow.Data.XML"); }
if (dw_coll.RowCount == 0) { strList.xml_guarantee = null; }
else { strList.xml_guarantee = dw_coll.Describe("DataWindow.Data.XML"); }
Session["strItemchange"] = strList;
}
private void JsPostColl()
{
try
{
String columnName = "ref_collno";
if (HdColumnName.Value == "" || HdColumnName.Value == "setcolldetail") { columnName = "setcolldetail"; }
String dwMainXML = dw_main.Describe("DataWindow.Data.XML");
String dwCollXML = dw_coll.Describe("DataWindow.Data.XML");
String dwClearXML = dw_clear.Describe("DataWindow.Data.XML");
String t = dw_main.GetItemString(1, "loantype_code");
str_itemchange strList = new str_itemchange();
// ตรวจสอบว่า HdRowNumber มีค่าหรือไม่ ถ้าไม่มี ไม่ต้องทำอะไร
if (HdRowNumber.Value.ToString() != "")
{
int rowNumber = Convert.ToInt32(HdRowNumber.Value.ToString());
HdColumnName.Value = "";
if ((columnName == "checkmancollperiod") || (columnName == "setcolldetail"))
{
dw_coll.SetItemString(rowNumber, "ref_collno", HdRefcollNO.Value);
dwCollXML = dw_coll.Describe("DataWindow.Data.XML");
}
String refCollNo = "";
try
{
refCollNo = dw_coll.GetItemString(rowNumber, "ref_collno");
HdRefcollNO.Value = refCollNo;
}
catch
{
refCollNo = "";
}
strList.column_name = columnName;
strList.xml_main = dwMainXML;
strList.xml_guarantee = dwCollXML;
strList.xml_clear = dwClearXML;
strList.import_flag = true;
strList.format_type = "CAT";
strList.column_data = dw_coll.GetItemString(rowNumber, "loancolltype_code") + refCollNo;
// เรียก service สำหรับการเปลี่ยนแปลงค่า ของ DW_coll
int result = shrlonService.LoanRightItemChangeColl(state.SsWsPass, ref strList);
Session["strItemchange"] = strList;
//if ((strList.xml_message != null) && (strList.xml_message != ""))
//{
// //dw_message.Reset();MO
// //dw_message.ImportString(strList.xml_message, FileSaveAsType.Xml);
// DwUtil.ImportData(strList.xml_message, dw_message, null, FileSaveAsType.Xml);
// HdMsg.Value = dw_message.GetItemString(1, "msgtext");
// HdMsgWarning.Value = dw_message.GetItemString(1, "msgicon");
//}
if (result == 8)
{
HdReturn.Value = result.ToString();
HdColumnName.Value = strList.column_name;
}
//try
//{
// dw_otherclr.Reset();
// dw_otherclr.ImportString(LtXmlOtherlr.Text, FileSaveAsType.Xml);
//}
//catch { dw_otherclr.Reset(); }
try
{
dw_coll.Reset();
dw_coll.ImportString(strList.xml_guarantee, FileSaveAsType.Xml);
}
catch { dw_coll.Reset(); }
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
}
}
///
/// sum ชำระหนี้อืนทั้งหมด
///
private void JsSumOthClr()
{
DateTime loanrcvfix_date = dw_main.GetItemDate(1, "loanrcvfix_date");
String ls_memcoopid;
Decimal ldc_contintrate = dw_main.GetItemDecimal(1, "int_contintrate");
short year = Convert.ToInt16(loanrcvfix_date.Year + 543);
short month = Convert.ToInt16(loanrcvfix_date.Month);
int day_amount = 31;
// DateTime postingdate_bf = wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(loanrcvfix_date.Year + 543), Convert.ToInt16(loanrcvfix_date.Month));
// DateTime postingdate = wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(postingdate_bf.Year + 543), Convert.ToInt16(postingdate_bf.Month + 1));
//DateTime postingdate_af = wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(postingdate.Year + 543), Convert.ToInt16(postingdate.Month + 1));
DateTime postingdate_bf = wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(loanrcvfix_date.Year + 543), Convert.ToInt16(loanrcvfix_date.Month - 1));
DateTime postingdate = wcf.Busscom.of_getpostingdate(state.SsWsPass, loanrcvfix_date);
DateTime postingdate_af = wcf.Busscom.of_getpostingdate(state.SsWsPass, postingdate.AddMonths(1));
//จ่ายเงินกู้หลังเรียกเก็บหรือไม่
if (loanrcvfix_date > postingdate && loanrcvfix_date < postingdate_bf)
{
day_amount = loanrcvfix_date.DayOfYear - postingdate_bf.DayOfYear;
}
else if (loanrcvfix_date > postingdate_bf && loanrcvfix_date < postingdate)
{
// postingdate = wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(postingdate_af.Year + 543), Convert.ToInt16(postingdate_af.Month));
day_amount = loanrcvfix_date.DayOfYear - postingdate_bf.DayOfYear;
}
else
{
postingdate = wcf.Busscom.of_getpostingdate2(state.SsWsPass, Convert.ToInt16(loanrcvfix_date.Year + 543), Convert.ToInt16(loanrcvfix_date.Month - 1));
day_amount = loanrcvfix_date.DayOfYear - postingdate.DayOfYear;
}
try { ls_memcoopid = dw_main.GetItemString(1, "memcoop_id"); }
catch { ls_memcoopid = state.SsCoopControl; }
Decimal clrother_amt = 0;
Decimal principal_balance = 0, intestimate_amt = 0;
Decimal sum_clear1 = 0;
Decimal otherclr_amt = 0;
Decimal clear_status;
int i, j;
int row_clr = dw_otherclr.RowCount;
int row_clear = dw_clear.RowCount;
if (row_clr > 0)
{
for (i = 0; i < row_clr; i++)
{
try
{
clrother_amt = dw_otherclr.GetItemDecimal(i + 1, "clrother_amt");
}
catch { clrother_amt = 0; }
otherclr_amt = otherclr_amt + clrother_amt;
if (otherclr_amt > 0)
{
dw_main.SetItemDecimal(1, "otherclr_flag", 1);
dw_main.SetItemDecimal(1, "otherclr_amt", otherclr_amt);
}
else if (clrother_amt == 0)
{
dw_main.SetItemDecimal(1, "otherclr_flag", 0);
dw_main.SetItemDecimal(1, "otherclr_amt", 0);
}
}
}
else
{
dw_main.SetItemDecimal(1, "otherclr_flag", 0);
dw_main.SetItemDecimal(1, "otherclr_amt", 0);
}
if (row_clear > 0)
{
for (j = 0; j < row_clear; j++)
{
Decimal loanpayment_type = dw_clear.GetItemDecimal(j + 1, "loanpayment_type");
string ls_contno = dw_clear.GetItemString(j + 1, "loancontract_no");
try
{
clear_status = dw_clear.GetItemDecimal(j + 1, "clear_status");
}
catch { clear_status = 0; }
if (clear_status == 1)
{
if (Hdprincipal.Value == null || Hdprincipal.Value == "")
{
try
{
principal_balance = dw_clear.GetItemDecimal(j + 1, "principal_balance");
}
catch { principal_balance = 0; }
try
{
if (loanpayment_type == 1)
{
intestimate_amt = dw_clear.GetItemDecimal(j + 1, "intestimate_amt");
}
else { intestimate_amt = 0; }
dw_clear.SetItemDecimal(j + 1, "intestimate_amt", intestimate_amt);
}
catch { intestimate_amt = 0; }
}
else
{
try
{
principal_balance = dw_clear.GetItemDecimal(j + 1, "principal_balance");
}
catch { principal_balance = 0; }
intestimate_amt = dw_clear.GetItemDecimal(j + 1, "intestimate_amt");
//try
//{
// if (loanpayment_type == 1)
// {
// intestimate_amt = wcf.Shrlon.of_roundmoney(state.SsWsPass, (wcf.Shrlon.of_computeinterest(state.SsWsPass, ls_memcoopid, ls_contno, loanrcvfix_date)));
// }
// else { intestimate_amt = 0; }
// dw_clear.SetItemDecimal(j + 1, "intestimate_amt", intestimate_amt);
//}
//catch { intestimate_amt = 0; }
}
sum_clear1 = sum_clear1 + principal_balance + intestimate_amt;
}
else if (clear_status == 0)
{
//day_amount = postingdate.DayOfYear - postingdate_bf.DayOfYear;
//principal_balance = dw_clear.GetItemDecimal(j + 1, "principal_balance");
//intestimate_amt = principal_balance * (ldc_contintrate) * day_amount / 365;
//intestimate_amt = wcf.Shrlon.of_roundmoney(state.SsWsPass, intestimate_amt);
//// intestimate_amt = wcf.Shrlon.of_roundmoney(state.SsWsPass, (wcf.Shrlon.of_computeinterest(state.SsWsPass, ls_memcoopid, ls_contno, loanrcvfix_date)));
//dw_clear.SetItemDecimal(j + 1, "intestimate_amt", intestimate_amt);
}
}
}
of_calintestimatemain();
Decimal total = sum_clear1;
dw_main.SetItemDecimal(1, "sum_clear", total);
if (total > 0)
{
dw_main.SetItemDecimal(1, "clearloan_flag", 1);
}
else { dw_main.SetItemDecimal(1, "clearloan_flag", 0); }
// of_recalloanpermiss();
}
///
/// sum ชำระหนี้เก่าทั้งหมด
///
private void JsResumLoanClear()
{
//Session["xmlloandetail"];
String xmlMain = "";
String xmlColl = "";
String xmlClear = "";
String xmlLoanDetail = "";
String xmlMessage = "";
try
{
xmlMain = dw_main.Describe("DataWindow.Data.XML");
xmlLoanDetail = Session["xmlloandetail"].ToString();
if (dw_coll.RowCount == 0)
{ xmlColl = null; }
else { xmlColl = dw_coll.Describe("DataWindow.Data.XML"); }
if (dw_clear.RowCount == 0)
{ xmlClear = null; }
else { xmlClear = dw_clear.Describe("DataWindow.Data.XML"); }
int result = shrlonService.ResumLoanClear(state.SsWsPass, ref xmlMain, ref xmlClear, ref xmlColl, xmlLoanDetail, ref xmlMessage);
if (result == 1)
{
try
{
//นำเข้าข้อมูลหลัก
dw_main.Reset();
dw_main.ImportString(xmlMain, FileSaveAsType.Xml);
//DwUtil.ImportData(xmlMain, dw_main, tDwMain, FileSaveAsType.Xml);
if (dw_main.RowCount > 1) dw_main.DeleteRow(dw_main.RowCount);
}
catch { dw_main.Reset(); dw_main.InsertRow(0); }
try
{
dw_clear.Reset();
dw_clear.ImportString(xmlClear, FileSaveAsType.Xml);
}
catch { dw_clear.Reset(); }
try
{
dw_coll.Reset();
dw_coll.ImportString(xmlColl, FileSaveAsType.Xml);
}
catch { dw_coll.Reset(); }
LtXmlLoanDetail.Text = xmlLoanDetail;
}
if ((xmlMessage != null) && (xmlMessage != ""))
{
dw_message.Reset();
dw_message.ImportString(xmlMessage, FileSaveAsType.Xml);
LtServerMessage.Text = WebUtil.ErrorMessage(dw_message.GetItemString(1, "msgtext"));
}
}
catch (Exception ex)
{
//LtServerMessage.Text = WebUtil.ErrorMessage("JsResumLoanClear===>" + ex);
}
}
///
/// หาสิทธิ์กู้สูงสุดจากอายุสมาชิก
///
private void Jsmaxcreditperiod()
{
try
{
String ls_loantype = dw_main.GetItemString(1, "loantype_code");
DateTime ldtm_member;
try
{
ldtm_member = dw_main.GetItemDateTime(1, "member_date");
}
catch { ldtm_member = state.SsWorkDate; }
int ldc_share_lastperiod = Convert.ToInt16(dw_main.GetItemDecimal(1, "share_lastperiod"));
int li_loanrequest_type = Convert.ToInt16(dw_main.GetItemDecimal(1, "loanrequest_type"));
Decimal ldc_shrstkvalue = dw_main.GetItemDecimal(1, "sharestk_value");
Decimal ldc_salary = dw_main.GetItemDecimal(1, "salary_amt");
String ls_memcoopid = dw_main.GetItemString(1, "memcoop_id");
// String ls_membtypedesc = dw_main.GetItemString(1, "membtype_desc");
String member_no = dw_main.GetItemString(1, "member_no");
///<หาอายุงานของาสมาชิก>
///<กำหนดวันที่จ่ายและเรียกเก็บแต่ปละเภทสัญญาวันจ่ายไม่เหมือนกัน>
JsChangeStartkeep();
Decimal[] max_creditperiod = new Decimal[4];
string loanrighttype_code = "01";
Decimal loancredit_amt = 0, loanright_type = 1;
ls_loantype = dw_main.GetItemString(1, "loantype_code");
decimal li_timeage = dw_main.GetItemDecimal(1, "birth_age");
//decimal ldc_timembyear = Convert.ToInt16(dw_main.GetItemDecimal(1, "member_age"));
decimal ldc_timembyear = dw_main.GetItemDecimal(1, "member_age");
string ls_timembyear = ldc_timembyear.ToString("##00.00");
int li_timemb = Convert.ToInt16(ls_timembyear.Substring(0, 2)) * 12 + Convert.ToInt16(ls_timembyear.Substring(3, 2)); //ert.ToInt16(Math.Truncate(ldc_timembyear) * 12 + ((ldc_timembyear * 100) % 100));
decimal customtime_type = 0;
string sqllntype = @"select loanrighttype_code,customtime_type, loanright_type
from lnloantype where loantype_code ='" + ls_loantype + @"' ";
Sdt dtrigtht = WebUtil.QuerySdt(sqllntype);
if (dtrigtht.Next())
{
loanrighttype_code = dtrigtht.GetString("loanrighttype_code");
customtime_type = dtrigtht.GetDecimal("customtime_type");
loanright_type = dtrigtht.GetDecimal("loanright_type");
}
//งวดหุ้น
if (customtime_type == 4)
{
li_timemb = ldc_share_lastperiod;
}
else if (customtime_type == 3)
{
//เงินวิทยะฐานะ
li_timemb = Convert.ToInt32(dw_main.GetItemDecimal(1, "incomemonth_other"));
ldc_salary = dw_main.GetItemDecimal(1, "incomemonth_other");
}
if (loanright_type == 5)
{
//กู้ปันผล
JsLoanCreditDividend();
}
else
{
if (customtime_type == 1 && li_timemb < ldc_share_lastperiod) { li_timemb = ldc_share_lastperiod; }
///< หาสิทธิ์กู้สูงสุด,งวดสูงสุด>
max_creditperiod = shrlonService.Calloanpermisssurin(state.SsWsPass, ls_memcoopid, ls_loantype, ldc_salary, ldc_shrstkvalue, li_timemb, member_no, li_timeage);
//max_creditperiod = shrlonService.Calloanpermiss(state.SsWsPass, ls_memcoopid, ls_loantype, ldc_salary, ldc_shrstkvalue, li_timemb, member_no, li_timeage);
Decimal ldc_percenshare = max_creditperiod[2];
Decimal ldc_percensaraly = max_creditperiod[3];
if (ldc_percenshare > 0)
{
loancredit_amt = ldc_shrstkvalue * ldc_percenshare;
}
else { loancredit_amt = max_creditperiod[0]; }
//mong
String ll_roundloan = wcf.Busscom.of_getattribloantype(state.SsWsPass, ls_loantype, "reqround_factor");
int roundloan = Convert.ToInt16(ll_roundloan);
if (loancredit_amt % roundloan > 0)
{
loancredit_amt = loancredit_amt - (loancredit_amt % roundloan);
}
if (li_loanrequest_type == 2)
{
//กรณี กู้เพิ่ม
}
dw_main.SetItemDecimal(1, "loancredit_amt", loancredit_amt);
dw_main.SetItemDecimal(1, "maxsend_payamt", max_creditperiod[1]);
}
JsCalperiodSend();//เช็คงวดเกษียณอายุ
Genbaseloanclear();
of_setloanclearstatus();
JsSetMonthpayCoop();
//สิทธิกู้ตามเงินเดือนคงเลหือ
JsCalMaxLoanpermiss();
JsLoanpaymenttype();
JsGenBuyshare();
JsCalinsurancepay();
JsSetmutualcoll();
JsSetmutualStability();
if (loanright_type != 5)
{
JsContPeriod();
}
JsSumOthClr();
JsInsertRowcoll();
Jsfirstperiod();
}
catch (Exception ex)
{
// LtServerMessage.Text = WebUtil.ErrorMessage("Jsmaxcreditperiod===>" + ex);
}
}
private void JsSetMonthpayCoop()
{
string ls_loantype;
int li_index, li_count;
int li_clrstatus, li_paytype, li_shrpaystatus, li_chkbalacestatus;
Decimal ldc_shrperiod, ldc_payment, ldc_intestm;
Decimal ldc_sumpay = 0;
// ดึงรายการหุ้น
ldc_shrperiod = dw_main.GetItemDecimal(1, "periodshare_value");
li_shrpaystatus = Convert.ToInt32(dw_main.GetItemDecimal(1, "sharepay_status"));
// ถ้างดเก็บค่าุหุ้นให้หุ้นต่อเดือนเป็นศูนย์
if (li_shrpaystatus == -1) { ldc_shrperiod = 0; }
// ดึงรายการหนี้
li_count = dw_clear.RowCount;
for (li_index = 1; li_index <= li_count; li_index++)
{
li_clrstatus = Convert.ToInt32(dw_clear.GetItemDecimal(li_index, "clear_status"));
ls_loantype = dw_clear.GetItemString(li_index, "loantype_code");
//li_chkbalacestatus = Convert.ToInt32(dw_clear.GetItemDecimal(li_index, "clear_status"));
if (li_clrstatus == 0)
{
li_paytype = Convert.ToInt32(dw_clear.GetItemDecimal(li_index, "loanpayment_type"));
ldc_payment = dw_clear.GetItemDecimal(li_index, "period_payment");
ldc_intestm = dw_clear.GetItemDecimal(li_index, "intestimate_amt");
if (ls_loantype != "21")
{
if (li_paytype == 1)
{
ldc_sumpay += ldc_payment + ldc_intestm;
}
else
{
ldc_sumpay += ldc_payment;
}
}
}
}
ldc_sumpay = ldc_sumpay + ldc_shrperiod;
dw_main.SetItemDecimal(1, "paymonth_coop", ldc_sumpay);
}
private void of_recalloanpermiss()
{
JsSetMonthpayCoop();
//สิทธิกู้ตามเงินเดือนคงเลหือ
JsCalMaxLoanpermiss();
JsContPeriod();
JsGenBuyshare();
JsSumOthClr();
}
///
/// ตรวจสอบสิทธิ์ตามเงินเดือนคงเหลือ
///
protected void JsPermissSalary()
{
//คำนวณสิทธิกู้จากยอดเงินเดือนคงเหลือขั้นต่ำ
JsSetMonthpayCoop();
Decimal ldc_shrstkvalue = dw_main.GetItemDecimal(1, "sharestk_value");
String loantype_code = dw_main.GetItemString(1, "loantype_code");
decimal ldc_salary = dw_main.GetItemDecimal(1, "salary_amt");
decimal ldc_mthcoop = dw_main.GetItemDecimal(1, "paymonth_coop");
decimal ldc_minpercsal = dw_main.GetItemDecimal(1, "minsalary_perc");
decimal ldc_minsalaamt = dw_main.GetItemDecimal(1, "minsalary_amt");
decimal ldc_maxloan = dw_main.GetItemDecimal(1, "loancredit_amt");
decimal ldc_periodsend = dw_main.GetItemDecimal(1, "period_payamt");
decimal ldc_paymenttype = dw_main.GetItemDecimal(1, "loanpayment_type");
decimal ldc_intrate = dw_main.GetItemDecimal(1, "int_contintrate");
decimal retry_age = dw_main.GetItemDecimal(1, "retry_age");
decimal ldc_incomeetc = dw_main.GetItemDecimal(1, "incomemonth_fixed");
decimal ldc_paymtmetc = dw_main.GetItemDecimal(1, "paymonth_other");
String ll_roundloan = wcf.Busscom.of_getattribloantype(state.SsWsPass, loantype_code, "reqround_factor");
int roundloan = Convert.ToInt16(ll_roundloan);
String ll_roundpay = wcf.Busscom.of_getattribloantype(state.SsWsPass, loantype_code, "payround_factor");
int roundpay = Convert.ToInt16(ll_roundpay);
if (ldc_periodsend > retry_age)
{
ldc_periodsend = retry_age;
}
//คำนวณเงินเดือนคงเหลือขั้นต่ำ
if (ldc_minsalaamt < (ldc_salary * ldc_minpercsal))
{
ldc_minsalaamt = Math.Round(ldc_salary * ldc_minpercsal);
}
decimal salary_balance = ldc_salary - ldc_minsalaamt - ldc_mthcoop + ldc_incomeetc - ldc_paymtmetc;
decimal ldc_permamt;
double li_maxperiod = Convert.ToDouble(ldc_periodsend);
if (ldc_paymenttype == 1)
{
//คงต้น
decimal ldc_temp = (ldc_periodsend * (ldc_intrate * (30 / 365)) + 1);
ldc_permamt = (salary_balance * ldc_periodsend) / ldc_temp;
}
else
{ //คงยอด
int li_fixcaltype = 1;//fixpaycal_type
double ldc_permamttmp = 1, ldc_fr = 1, ldc_temp = 1;
if (li_fixcaltype == 1)
{
// ด/บ ทั้งปี / 12
// ldc_permamt = salary_balance * ((((1 + (ldc_intrate / 12)) ^ li_maxperiod) - 1) / ((ldc_intrate / 12) * ((1 + (ldc_intrate / 12)) ^ li_maxperiod)));
ldc_temp = Math.Log(1 + (Convert.ToDouble(ldc_intrate / 12)));
ldc_fr = Math.Exp(-li_maxperiod * ldc_temp);
ldc_permamttmp = (Convert.ToDouble(salary_balance) * (1 - ldc_fr)) / ((Convert.ToDouble(ldc_intrate) / 12));
}
else
{
// ด/บ 30 วัน/เดือน
ldc_temp = Math.Log(1 + (Convert.ToDouble(ldc_intrate / (30 / 365))));
ldc_fr = Math.Exp(-li_maxperiod * ldc_temp);
ldc_permamttmp = (Convert.ToDouble(salary_balance) * (1 - ldc_fr)) / ((Convert.ToDouble(ldc_intrate) / (30 / 365)));
}
ldc_permamt = Convert.ToDecimal(ldc_permamttmp);
decimal loan_credit = dw_main.GetItemDecimal(1, "loancredit_amt");
if (ldc_permamt > loan_credit)
{
ldc_permamt = loan_credit;
}
}
//ตรวจสอบยอดขอกู้กลุ๋ม
// JsGetloangrouppermissuesed();
decimal loan_groupuse = 0;// dw_main.GetItemDecimal(1, "loangrpuse_amt");
ldc_permamt = ldc_permamt - loan_groupuse;
while (ldc_permamt > ldc_maxloan)
{
ldc_permamt = ldc_maxloan - 10;
}
if (ldc_permamt < 0) { ldc_permamt = 0; }
// wa ldc_permamt = Math.Round(ldc_permamt / roundloan) * roundloan;
if (ldc_permamt % roundloan > 0)
{
ldc_permamt = ldc_permamt - (ldc_permamt % roundloan);
}
if (ldc_permamt > ldc_maxloan) { ldc_permamt = ldc_permamt - roundloan; }
decimal period_payment = Math.Round((ldc_permamt / ldc_periodsend) / roundpay) * roundpay;
dw_main.SetItemDecimal(1, "loanpermiss_amt", ldc_permamt);
dw_main.SetItemDecimal(1, "loanrequest_amt", ldc_permamt);
dw_main.SetItemDecimal(1, "period_payment", period_payment);
dw_main.SetItemDecimal(1, "period_payamt", ldc_periodsend);
Decimal intestimate_amt = of_calintestimatemain();
dw_main.SetItemDecimal(1, "intestimate_amt", intestimate_amt);
JsGenBuyshare();
JsInsertRowcoll();
}
private int JsCheckDataBeforesave()
{
//ตรวจค้ำประกัน wa
int coll_num = 0;
string loantype_code = dw_main.GetItemString(1, "loantype_code");
decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
int collrow = dw_coll.RowCount;
String sqlpro = @" select useman_amt, useshare_flag from lnloantypereqgrt
where loantype_code = '" + loantype_code + "' and money_from <= " + loanrequest_amt.ToString() + @"
and money_to >= " + loanrequest_amt.ToString();
Sdt dtgrt = WebUtil.QuerySdt(sqlpro);
if (dtgrt.Next())
{
coll_num = Convert.ToInt32(dtgrt.GetDecimal("useman_amt"));
int coll_share = Convert.ToInt32(dtgrt.GetDecimal("useshare_flag"));
}
else { coll_num = 0; }
if (coll_num > collrow)
{
//แสดงข้อความ
LtServerMessage.Text = WebUtil.ErrorMessage("ท่านป้อนสมาชิกค้ำประกันไม่ครบ กรุณาป้อนให้ครบด้วย ต้องระบุคนค้ำประกัน จำนวน " + coll_num.ToString());
return -1;
}
return 1;
}
private void JsInsertRowcoll()
{
String loantype_code = dw_main.GetItemString(1, "loantype_code");
Decimal ldc_shrstkvalue = dw_main.GetItemDecimal(1, "sharestk_value");
Decimal ldc_permamt = dw_main.GetItemDecimal(1, "loanrequest_amt");
Decimal ldc_useshare_flag = 0, ldc_useman_type = 0, ldc_useman_amt = 0;
String sqlreqgrt = @" SELECT COOP_ID,
LOANTYPE_CODE,
SEQ_NO,
MONEY_FROM,
MONEY_TO,
USESHARE_FLAG,
USEMAN_AMT,
USEMAN_TYPE,
USEMEMMAIN_AMT,
USEMEMCO_AMT,
USEMEM_OPERATION
FROM LNLOANTYPEREQGRT
WHERE COOP_ID ='" + state.SsCoopControl + @"'
and LOANTYPE_CODE='" + loantype_code + @"'
and MONEY_FROM <=" + ldc_permamt + " and MONEY_TO >" + ldc_permamt + " ";
Sdt dtreqgrt = WebUtil.QuerySdt(sqlreqgrt);
if (dtreqgrt.Next())
{
ldc_useshare_flag = dtreqgrt.GetDecimal("USESHARE_FLAG");
ldc_useman_type = dtreqgrt.GetDecimal("USEMAN_TYPE");
ldc_useman_amt = dtreqgrt.GetDecimal("USEMAN_AMT");
}
if (dtreqgrt.GetRowCount() <= 0)
{
ldc_useshare_flag = 0;
ldc_useman_type = 0;
}
string membno = dw_main.GetItemString(1, "member_no");
string memb_name = dw_main.GetItemString(1, "member_name");
dw_coll.Reset();
if (ldc_useshare_flag == 1) // หุ้น
{
dw_coll.Reset();
int row = dw_coll.InsertRow(1);
dw_coll.SetItemString(row, "loancolltype_code", "02");
dw_coll.SetItemString(row, "ref_collno", membno);
dw_coll.SetItemString(row, "description", memb_name);
dw_coll.SetItemDecimal(row, "coll_balance", ldc_permamt);
dw_coll.SetItemDecimal(row, "use_amt", ldc_permamt);
dw_coll.SetItemString(row, "coop_id", state.SsCoopControl);
}
if (ldc_useman_type >= 1)
{
dw_coll.Reset();
int row = dw_coll.RowCount;
for (int i = 1; i <= ldc_useman_amt; i++)
{
if (row < ldc_useman_amt)
{
dw_coll.InsertRow(0);
}
else { break; }
}
}
//if (dw_coll.RowCount > ldc_useman_type)
//{
// for (int i = 1; i < dw_coll.RowCount; i++)
// {
// DwUtil.DeleteLastRow(dw_coll);
// }
//}
DwUtil.RetrieveDDDW(dw_coll, "coop_id", pbl, null);
}
///
/// ชื้อหุ้นเพิ่ม
///
private void JsGenBuyshare()
{
Ltjspopup.Text = " ";
decimal buyshare_amt = 0;
string loantypereq_code = dw_main.GetItemString(1, "loantype_code");
decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
decimal sharestk_val = dw_main.GetItemDecimal(1, "sharestk_value");
decimal shrstk_buytype = 0, shrbuyext_amt = 0, buyshrlnreq_percen = 0, buyshrrecnet_percen = 0;
decimal sharestk_percent = 0, ldc_prnbalance = 0;
string sqllntype = @"select shrstk_buytype
from lnloantype where loantype_code ='" + loantypereq_code + @"' ";
Sdt dtstk = WebUtil.QuerySdt(sqllntype);
if (dtstk.Next())
{
shrstk_buytype = dtstk.GetDecimal("shrstk_buytype");
}
string sql = "select sharestk_percent, buyshrext_amt,buyshrlnreq_percen, buyshrrecnet_percen from lnloantypebuyshare where loantype_code ='" + loantypereq_code + "' and startloan_amt <= " + loanrequest_amt + " and endloan_amt >= " + loanrequest_amt;
Sdt dttype = WebUtil.QuerySdt(sql);
if (dttype.Next())
{
sharestk_percent = dttype.GetDecimal("sharestk_percent");
shrbuyext_amt = dttype.GetDecimal("buyshrext_amt");
buyshrlnreq_percen = dttype.GetDecimal("buyshrlnreq_percen");
buyshrrecnet_percen = dttype.GetDecimal("buyshrrecnet_percen");
}
int li_count = dw_clear.RowCount;
int li_index, li_clrstatus, li_paytype;
Decimal ldc_principal_balance = 0, ldc_intestm, ldc_sumpay = 0;
string ls_loantype = "";
if (shrstk_buytype == 1)
{
ldc_principal_balance += loanrequest_amt;
decimal shareperc_val = (sharestk_val / ldc_principal_balance) * 100;
if (shareperc_val <= sharestk_percent)
{
shareperc_val = sharestk_percent - shareperc_val;
buyshare_amt = (ldc_principal_balance * shareperc_val) / 100;
decimal ldc_mod = buyshare_amt % 10;
if (ldc_mod >= 1)
{
buyshare_amt = buyshare_amt + (10 - ldc_mod) - 10;
}
dw_otherclr.InsertRow(0);
dw_otherclr.SetItemString(1, "clrothertype_code", "SHR");
dw_otherclr.SetItemString(1, "clrother_desc", "ซื้อหุ้นเพิ่ม");
dw_otherclr.SetItemDecimal(1, "clear_status", 1);
dw_otherclr.SetItemDecimal(1, "clrother_amt", buyshare_amt);
}
}
else if (shrstk_buytype == 2)
{
//ยอดหนี้ทั้งหมด
decimal total_balance = 0, ldc_mod = 0;
for (li_index = 1; li_index <= li_count; li_index++)
{
li_clrstatus = Convert.ToInt32(dw_clear.GetItemDecimal(li_index, "clear_status"));
ls_loantype = dw_clear.GetItemString(li_index, "loantype_code");
if (li_clrstatus == 0)
{
li_paytype = Convert.ToInt32(dw_clear.GetItemDecimal(li_index, "loanpayment_type"));
ldc_principal_balance = dw_clear.GetItemDecimal(li_index, "principal_balance");
total_balance += ldc_principal_balance;
}
}
total_balance += loanrequest_amt;
decimal shareperc_val = (sharestk_val / total_balance) * 100;
if (shareperc_val <= sharestk_percent)
{
shareperc_val = sharestk_percent - shareperc_val;
buyshare_amt = (total_balance * shareperc_val) / 100;
ldc_mod = buyshare_amt % 10;
if (ldc_mod >= 1)
{
buyshare_amt = buyshare_amt + (10 - ldc_mod);
Ltjspopup.Text = WebUtil.WarningMessage(" สมาชิกท่านนี้ต้องซื้อหุ้นเพิ่ม " + buyshare_amt.ToString("#,##0"));
}
}
else
{
if (dw_otherclr.RowCount >= 1) { dw_otherclr.DeleteRow(dw_otherclr.RowCount); }
}
//ยอดรับสุทธิ
ldc_principal_balance = 0;
ldc_prnbalance = 0;
for (li_index = 1; li_index <= li_count; li_index++)
{
li_clrstatus = Convert.ToInt32(dw_clear.GetItemDecimal(li_index, "clear_status"));
ls_loantype = dw_clear.GetItemString(li_index, "loantype_code");
if (li_clrstatus == 1 && loantypereq_code == ls_loantype)
{
li_paytype = Convert.ToInt32(dw_clear.GetItemDecimal(li_index, "loanpayment_type"));
ldc_prnbalance = dw_clear.GetItemDecimal(li_index, "principal_balance");
ldc_principal_balance += ldc_prnbalance;
}
}
//wa
if (buyshrlnreq_percen > 0 && ldc_principal_balance == 0)
{
decimal shrbuyinc_amt = Convert.ToDecimal(loanrequest_amt * (buyshrlnreq_percen / 100));
ldc_mod = shrbuyinc_amt % 10;
if (ldc_mod >= 1)
{
shrbuyinc_amt = shrbuyinc_amt + (10 - ldc_mod);
}
Ltjspopup.Text += " ต้องซื้อเพิ่มจากยอดขอกู้ " + shrbuyinc_amt.ToString("#,##0");
buyshare_amt += shrbuyinc_amt;
}
//wa
if (buyshrrecnet_percen > 0 && ldc_principal_balance > 0)
{
decimal loannetreceive_amt = loanrequest_amt - ldc_principal_balance;
decimal shrbuyincnet_amt = Convert.ToDecimal(loannetreceive_amt * (buyshrrecnet_percen / 100));
if (shrbuyincnet_amt > 10000 && loantypereq_code == "13") { shrbuyincnet_amt = 10000; }
ldc_mod = shrbuyincnet_amt % 10;
if (ldc_mod >= 1)
{
shrbuyincnet_amt = shrbuyincnet_amt + (10 - ldc_mod);
}
Ltjspopup.Text += " ต้องซื้อเพิ่มจากยอดกู้เพิ่ม " + shrbuyincnet_amt.ToString("#,##0");
buyshare_amt += shrbuyincnet_amt;
}
//wa
//if (shrbuyext_amt > 0 && sharestk_percent > 0)
//{
buyshare_amt += shrbuyext_amt;
//}
if (buyshare_amt >= 1)
{
int li_rowcount = dw_otherclr.RowCount;
if (li_rowcount < 1)
{
dw_otherclr.InsertRow(0);
}
dw_otherclr.SetItemString(1, "clrothertype_code", "SHR");
dw_otherclr.SetItemString(1, "clrother_desc", "ซื้อหุ้นเพิ่ม");
dw_otherclr.SetItemDecimal(1, "clear_status", 1);
dw_otherclr.SetItemDecimal(1, "clrother_amt", buyshare_amt);
}
}
else if (shrstk_buytype == 3)
{
//ยอดกลุ่มเงินกู้
}
else if (shrstk_buytype == 4)
{
//ยอดรับสุทธิ
for (li_index = 1; li_index <= li_count; li_index++)
{
li_clrstatus = Convert.ToInt32(dw_clear.GetItemDecimal(li_index, "clear_status"));
ls_loantype = dw_clear.GetItemString(li_index, "loantype_code");
if (li_clrstatus == 1)
{
li_paytype = Convert.ToInt32(dw_clear.GetItemDecimal(li_index, "loanpayment_type"));
ldc_principal_balance = dw_clear.GetItemDecimal(li_index, "principal_balance");
ldc_principal_balance += ldc_principal_balance;
}
}
decimal loannetreceive_amt = loanrequest_amt - ldc_principal_balance;
if (loannetreceive_amt > 0)
{
buyshare_amt = (loannetreceive_amt * sharestk_percent) / 100;
decimal ldc_mod = buyshare_amt % 10;
if (ldc_mod >= 1)
{
buyshare_amt = buyshare_amt + (10 - ldc_mod) - 10;
}
}
else
{
buyshare_amt = 0;
}
if (buyshare_amt > 0)
{
int li_row0 = dw_otherclr.RowCount;
if (li_row0 < 1)
{
dw_otherclr.InsertRow(0);
}
dw_otherclr.SetItemString(1, "clrothertype_code", "SHR");
dw_otherclr.SetItemString(1, "clrother_desc", "ซื้อหุ้นเพิ่ม");
dw_otherclr.SetItemDecimal(1, "clear_status", 1);
dw_otherclr.SetItemDecimal(1, "clrother_amt", buyshare_amt);
}
}
else
{
if (dw_otherclr.RowCount >= 1) { dw_otherclr.DeleteRow(dw_otherclr.RowCount); }
}
}
//หักงวดแรก
private void Jsfirstperiod()
{
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
string ls_memno = dw_main.GetItemString(1, "member_no");
decimal ldc_calintflag = 0;
String sqlStrcalintfuture = @" SELECT calintfuture_flag
FROM LNLOANTYPE
WHERE LOANTYPE_CODE='" + ls_loantype + "'";
Sdt dt1 = WebUtil.QuerySdt(sqlStrcalintfuture);
if (dt1.GetRowCount() < 1) { ldc_calintflag = 0; }
if (dt1.Next())
{
try
{
ldc_calintflag = dt1.GetDecimal("calintfuture_flag");
}
catch
{
ldc_calintflag = 0;
}
}
Decimal intestimate_amt = 0;
if (ldc_calintflag == 1)
{
intestimate_amt = of_calintestimatemain();
try
{
dw_otherclr.InsertRow(0);
int row = dw_otherclr.RowCount;
dw_otherclr.SetItemString(row, "clrothertype_code", "SFP");
dw_otherclr.SetItemString(row, "clrother_desc", "หักฝากชำระงวดแรก");
dw_otherclr.SetItemDecimal(row, "clear_status", 1);
dw_otherclr.SetItemDecimal(row, "clrother_amt", dw_main.GetItemDecimal(1, "period_payment") + intestimate_amt);
JsSumOthClr();
}
catch (Exception ex) { LtServerMessage.Text = WebUtil.ErrorMessage(ex.ToString()); }
}
else
{
if (ldc_calintflag == 2)
{
intestimate_amt = of_calintestimatemain();
}
string sqldeptno = @" SELECT deptaccount_no
FROM mbmembmaster
WHERE member_no='" + ls_memno + "'";
Sdt dt2 = WebUtil.QuerySdt(sqldeptno);
if (dt2.Next())
{
try
{
string ls_deptno = dt2.GetString("deptaccount_no");
if (ls_deptno.Length > 5)
{
dw_otherclr.InsertRow(0);
int row = dw_otherclr.RowCount;
dw_otherclr.SetItemString(row, "clrothertype_code", "DEP");
dw_otherclr.SetItemString(row, "clrother_desc", ls_deptno);
dw_otherclr.SetItemDecimal(row, "clear_status", 1);
dw_otherclr.SetItemDecimal(row, "clrother_amt", intestimate_amt);
}
}
catch
{
}
}
}
}
private void JsCalperiodSend()
{
DateTime ldtm_retry = dw_main.GetItemDateTime(1, "retry_date");
DateTime ldtm_lnreq = dw_main.GetItemDateTime(1, "loanrequest_date");
DateTime ldtm_birthday = dw_main.GetItemDateTime(1, "birth_date");
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
decimal ldc_maxperiod = dw_main.GetItemDecimal(1, "maxsend_payamt");
decimal ldc_retryperiod = 0, li_retrychkflag = 0, retry_age = 500;
String sqlStrperiod = @" SELECT retryloansend_time,retryloanchk_type
FROM LNLOANTYPE
WHERE LOANTYPE_CODE='" + ls_loantype + "'";
Sdt dt1 = WebUtil.QuerySdt(sqlStrperiod);
if (dt1.Next())
{
try
{
ldc_retryperiod = dt1.GetDecimal("retryloansend_time");
li_retrychkflag = dt1.GetDecimal("retryloanchk_type");
}
catch
{
ldc_retryperiod = 0;
}
}
if (li_retrychkflag == 1)
{
//ตรวจงวดเกษียณปกติ
retry_age = dw_main.GetItemDecimal(1, "retry_age");
if (retry_age < 0) { retry_age = 0; }
// retry_age = BusscomService.of_cal_yearmonth(state.SsWsPass, ldtm_lnreq, ldtm_retry) * 12;
if (retry_age < ldc_maxperiod)
{
ldc_maxperiod = retry_age;
}
}
if (li_retrychkflag == 2)
{
//ตรวจงวดการส่งถึงแค่อายุ 60
ldtm_retry = ldtm_birthday.AddYears(60);
retry_age = BusscomService.of_cal_yearmonth(state.SsWsPass, ldtm_lnreq, ldtm_retry);
// Decimal retry_age = BusscomService.of_cal_yearmonth(state.SsWsPass, DateTime.Now, ldtm_retry);
String retry_agel = WebUtil.Left(retry_age.ToString("000.00"), 3);
String retry_ager = WebUtil.Right(retry_age.ToString(""), 2);
int retryagel = Convert.ToInt32(retry_agel) * 12;
Decimal retryager = (Math.Round(Convert.ToDecimal(retry_ager)) / 10) * 10;
retry_age = retryagel + retryager;
//dw_main.SetItemDecimal(1, "retry_age", retryagel + retryager);
if (retry_age < ldc_maxperiod)
{
ldc_maxperiod = retry_age;
}
}
if (ldc_retryperiod > 0)
{
if (retry_age < ldc_maxperiod)
{
retry_age = retry_age + ldc_retryperiod;
}
if (retry_age < ldc_maxperiod)
{
ldc_maxperiod = retry_age;
}
}
dw_main.SetItemDecimal(1, "maxsend_payamt", ldc_maxperiod);
dw_main.SetItemDecimal(1, "period_payamt", ldc_maxperiod);
}
///
/// เช็คแลกกันค้ำ โดยใช้สิทธิ์กู้สูงสุดอกตาราง
///
///
///
protected void GenpermissCollLoop(object sender, EventArgs e)
{
//try
//{
// string as_coopid = state.SsCoopId;
// String ls_memcoopid = dw_main.GetItemString(1, "memcoop_id");
// String ls_membtypedesc = dw_main.GetItemString(1, "membtype_desc");
// String member_no = dw_main.GetItemString(1, "member_no");
// DateTime ldtm_member;
// bool isChecked = Checkcollloop.Checked;
// if (isChecked)
// {
// try
// {
// ldtm_member = dw_main.GetItemDateTime(1, "member_date");
// }
// catch { ldtm_member = state.SsWorkDate; }
// ///<หาอายุงานของาสมาชิก>
// int memtime = 0;
// Decimal member_age = dw_main.GetItemDecimal(1, "member_age");
// if (member_age > 1)
// {
// memtime = Convert.ToInt32(BusscomService.of_cal_yearmonth(state.SsWsPass, ldtm_member, state.SsWorkDate) * 12);
// }
// else
// {
// memtime = Convert.ToInt32(member_age * 100);
// }
// String[] max_creditperiod = new String[5];
// Decimal per70 = new Decimal(0.7);
// Decimal per90 = new Decimal(0.9);
// Decimal loancredit_amt = 0;
// Decimal ldc_maxperiod = 0;
// string ls_loantype = dw_main.GetItemString(1, "loantype_code");
// ///< หาสิทธิ์กู้สูงสุด,งวดสูงสุด>
// max_creditperiod = shrlonService.CalloanpermissCollLoop(state.SsWsPass, ls_memcoopid, as_coopid, ls_loantype, member_no, memtime);
// loancredit_amt = Convert.ToDecimal(max_creditperiod[0]);
// ldc_maxperiod = Convert.ToDecimal(max_creditperiod[1]);
// dw_main.SetItemDecimal(1, "loancredit_amt", loancredit_amt);
// dw_main.SetItemDecimal(1, "maxsend_payamt", ldc_maxperiod);
// dw_main.SetItemDecimal(1, "period_payamt", ldc_maxperiod);
// }
// else { Jsmaxcreditperiod(); }
//}
//catch (Exception ex) { LtServerMessage.Text = WebUtil.ErrorMessage("GenpermissCollLoop==>" + ex); }
}
///
/// สำหรับคำนวณดอกเบี้ยประมาณการสำหรับสัญญาใหม่
///
///
public Decimal of_calintestimatemain()
{
string ls_continttabcode, ls_coopid;
string ls_loantype;
int li_continttype, li_intsteptype, li_interestmethod = 1;
Decimal ldc_apvamt, ldc_inttotal = 0, ldc_prncalint;
Decimal ldc_contintrate, ldc_intincrease;
DateTime ldtm_calintfrom, ldtm_calintto, ldtm_rcvfix, ldtm_estimate, adc_fixrate;
try
{
// ข้อกำหนดเรื่องดอกเบี้ย
li_continttype = Convert.ToInt32(dw_main.GetItemDecimal(1, "int_continttype"));
ls_continttabcode = dw_main.GetItemString(1, "int_continttabcode");
ldc_contintrate = dw_main.GetItemDecimal(1, "int_contintrate");
ldc_intincrease = dw_main.GetItemDecimal(1, "int_contintincrease");
li_intsteptype = Convert.ToInt32(dw_main.GetItemDecimal(1, "int_intsteptype"));
ls_coopid = dw_main.GetItemString(1, "coop_id");
ls_loantype = dw_main.GetItemString(1, "loantype_code");
ldc_apvamt = dw_main.GetItemDecimal(1, "loanrequest_amt");
ldc_prncalint = dw_main.GetItemDecimal(1, "loanrequest_amt");
ldtm_rcvfix = dw_main.GetItemDateTime(1, "loanrcvfix_date");
ldtm_estimate = ldtm_rcvfix.AddDays(30);
// ถ้าไม่มียอดต้นที่จะคิด ด/บ เป็น 0
if (ldc_prncalint <= 0) { return 0; }
// ถ้าสถานะนี้เป็นไม่คิด ด/บ
if (li_continttype == 0) { return 0; }
// ถ้าวันที่คิดดอกเบี้ยถึงน้อยกว่าวันที่คิดดอกเบี้ยล่าสุด ด/บ 0
if (ldtm_estimate <= ldtm_rcvfix) { return 0; }
// ถ้าไม่ได้ set รูปแบบขั้นดอกเบี้ยไว้ set ให้เป็นจากยอดอนุมัติ
if (li_intsteptype == null) { li_intsteptype = 1; }
ldtm_calintfrom = ldtm_rcvfix;
ldtm_calintto = ldtm_estimate;
li_interestmethod = Convert.ToInt16(wcf.Busscom.of_getattribloantype(state.SsWsPass, ls_loantype, "interest_method"));
if (li_interestmethod == 1)
{
ldc_inttotal = ldc_prncalint * (ldc_contintrate) * 30 / 365;
ldc_inttotal = wcf.Shrlon.of_roundmoney(state.SsWsPass, ldc_inttotal);
}
else
{
ldc_inttotal = ldc_prncalint * (ldc_contintrate) * 1 / 12;
ldc_inttotal = wcf.Shrlon.of_roundmoney(state.SsWsPass, ldc_inttotal);
}
dw_main.SetItemDecimal(1, "intestimate_amt", ldc_inttotal);
}
catch (Exception ex)
{
//LtServerMessage.Text = WebUtil.ErrorMessage("of_calintestimatemain==+>" + ex);
}
return ldc_inttotal;
}
//private void JsRunProcess()
//{
// // --- Page Arguments
// try
// {
// app = Request["app"].ToString();
// }
// catch { }
// if (app == null || app == "")
// {
// app = state.SsApplication;
// }
// try
// {
// //gid = Request["gid"].ToString();
// gid = "LNNORM_DAILY";
// }
// catch { }
// try
// {
// //rid = Request["rid"].ToString();
// rid = "LNNORM_DAILY15";
// }
// catch { }
// String doc_no = dw_main.GetItemString(1, "loanrequest_docno");
// if (x == 2)
// {
// doc_no = reqdoc_no;
// }
// if (doc_no == null || doc_no == "")
// {
// return;
// }
// //String ls_xmlmain = dw_main.Describe("DataWindow.Data.XML");
// //String ls_format = "CAT";
// //short li_membtime = 0; Decimal ldc_right25 = 0; Decimal ldc_right33 = 0; Decimal ldc_right35 = 0; Decimal ldc_right26 = 0; Decimal ldc_right40 = 0;
// //int re = shrlonService.of_print_callpermiss(state.SsWsPass, ls_xmlmain, ls_format, ref li_membtime, ref ldc_right25, ref ldc_right33, ref ldc_right35, ref ldc_right26, ref ldc_right40);
// //Decimal li_membtime_ = li_membtime;
// //Decimal ldc_right25_ = ldc_right25;
// //Decimal ldc_right33_ = ldc_right33;
// //Decimal ldc_right35_ = ldc_right35;
// //Decimal ldc_right26_ = ldc_right26;
// //Decimal ldc_right40_ = ldc_right40;
// //string loan26 = dw_main.GetItemString(1, "loantype_code");
// //if (loan26 == "26")
// //{
// // decimal right26 = dw_main.GetItemDecimal(1, "loancredit_amt");
// // ldc_right26_ = right26;
// // ldc_right33_ = 0;
// // ldc_right35_ = 0;
// // ldc_right25_ = 0;
// //}
// //แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
// ReportHelper lnv_helper = new ReportHelper();
// lnv_helper.AddArgument(doc_no, ArgumentType.String);
// //lnv_helper.AddArgument(li_membtime_.ToString(), ArgumentType.Number);
// //lnv_helper.AddArgument(ldc_right25_.ToString(), ArgumentType.Number);
// //lnv_helper.AddArgument(ldc_right33_.ToString(), ArgumentType.Number);
// //lnv_helper.AddArgument(ldc_right35_.ToString(), ArgumentType.Number);
// //lnv_helper.AddArgument(ldc_right26_.ToString(), ArgumentType.Number);
// //lnv_helper.AddArgument(ldc_right40_.ToString(), ArgumentType.Number);
// //ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
// String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
// pdfFileName += "_" + gid + "_" + rid + ".pdf";
// pdfFileName = pdfFileName.Trim();
// //ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
// try
// {
// Saving.WsReport.Report lws_report = wcf.Report;
// String criteriaXML = lnv_helper.PopArgumentsXML();
// this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
// String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
// if (li_return == "true")
// {
// HdOpenIFrame.Value = "True";
// HdcheckPdf.Value = "True";
// }
// else if (li_return != "true")
// {
// HdcheckPdf.Value = "False";
// }
// }
// catch (Exception ex)
// {
// LtServerMessage.Text = WebUtil.ErrorMessage(ex);
// return;
// }
// Session["pdf"] = pdf;
// //PopupReport();
//}
//private void JsRunProcessInvoice()
//{
// // --- Page Arguments
// try
// {
// app = Request["app"].ToString();
// }
// catch { }
// if (app == null || app == "")
// {
// app = state.SsApplication;
// }
// try
// {
// //gid = Request["gid"].ToString();
// gid = "LNNORM_DAILY";
// }
// catch { }
// try
// {
// //rid = Request["rid"].ToString();
// rid = "LNNORM_DAILY13";
// }
// catch { }
// String doc_no = dw_main.GetItemString(1, "loanrequest_docno");
// if (x == 2)
// {
// doc_no = reqdoc_no;
// }
// if (doc_no == null || doc_no == "")
// {
// return;
// }
// //แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
// ReportHelper lnv_helper = new ReportHelper();
// lnv_helper.AddArgument(doc_no, ArgumentType.String);
// //ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
// String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
// pdfFileName += "_" + gid + "_" + rid + ".pdf";
// pdfFileName = pdfFileName.Trim();
// //ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
// try
// {
// Saving.WsReport.Report lws_report = wcf.Report;
// String criteriaXML = lnv_helper.PopArgumentsXML();
// this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
// String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
// if (li_return == "true")
// {
// HdOpenIFrame.Value = "True";
// HdcheckPdf.Value = "True";
// }
// else if (li_return != "true")
// {
// HdcheckPdf.Value = "False";
// }
// }
// catch (Exception ex)
// {
// LtServerMessage.Text = WebUtil.ErrorMessage(ex);
// return;
// }
// Session["pdfinvoice"] = pdf;
// //PopupReport();
//}
//public void JspPopupReport()
//{
// //เด้ง Popup ออกรายงานเป็น PDF.
// //String pop = "Gcoop.OpenPopup('http://localhost/GCOOP/WebService/Report/PDF/20110223093839_shrlonchk_SHRLONCHK001.pdf')";
// String pop = "Gcoop.OpenPopup('" + Session["pdf"].ToString() + "')";
// ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
//}
//public void JspPopupReportInvoice()
//{
// //เด้ง Popup ออกรายงานเป็น PDF.
// //String pop = "Gcoop.OpenPopup('http://localhost/GCOOP/WebService/Report/PDF/20110223093839_shrlonchk_SHRLONCHK001.pdf')";
// String pop = "Gcoop.OpenPopup('" + Session["pdfinvoice"].ToString() + "')";
// ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
//}
private void JsPostreturn()
{
String ls_loantype = dw_main.GetItemString(1, "loantype_code");
Decimal useamt = Convert.ToDecimal(HUseamt.Value);
Decimal loancredit_amt = dw_main.GetItemDecimal(1, "loancredit_amt");
Decimal Maxloancredit_amt = 0;
Decimal ldc_maxcredit = loancredit_amt + useamt;
int row = Convert.ToInt16(HdRowNumber.Value);
Decimal ldc_maxperiod = 0;
Decimal ldc_max = 0;
string loancolltype_code = dw_coll.GetItemString(row, "loancolltype_code");
// Decimal ldc_maxcredit = loancredit_amt;
String sqlStrperiod = @" SELECT COOP_ID,
LOANTYPE_CODE,
SEQ_NO,
MONEY_FROM,
MONEY_TO,
MAX_PERIOD
FROM LNLOANTY PEPERIOD
WHERE COOP_ID ='" + state.SsCoopControl + @"'
and LOANTYPE_CODE='" + ls_loantype + @"'
and MONEY_FROM <=" + ldc_maxcredit + " and MONEY_TO >" + ldc_maxcredit + " ";
Sdt dtperiod = WebUtil.QuerySdt(sqlStrperiod);
if (dtperiod.Next())
{
ldc_maxperiod = dtperiod.GetDecimal("MAX_PERIOD");
ldc_max = dtperiod.GetDecimal("MONEY_TO");
}
if (loancolltype_code != "03")
{
if (ldc_maxcredit > ldc_max)
{
Maxloancredit_amt = ldc_max;
dw_main.SetItemDecimal(1, "loancredit_amt", Maxloancredit_amt);
}
else
{
dw_main.SetItemDecimal(1, "loancredit_amt", ldc_maxcredit);
}
}
else { dw_main.SetItemDecimal(1, "loancredit_amt", ldc_maxcredit); }
dw_main.SetItemDecimal(1, "maxsend_payamt", ldc_maxperiod);
dw_main.SetItemDecimal(1, "period_payamt", ldc_maxperiod);
JsLoanpaymenttype();
}
private void JsSetDeptnodefault(Int16 row)
{
string dept_acc = "";
try
{
string memberNo = dw_main.GetItemString(1, "member_no");
String strSQL = "";
strSQL = @"SELECT DPDEPTMASTER.DEPTACCOUNT_NO,
DPDEPTMASTER.DEPTCLOSE_STATUS,
DPDEPTMASTER.PRNCBAL
FROM DPDEPTMASTER,
MBMEMBMASTER,
DPDEPTTYPE
WHERE ( DPDEPTMASTER.MEMBER_NO = MBMEMBMASTER.MEMBER_NO ) and DPDEPTMASTER.DEPTACCOUNT_NO = MBMEMBMASTER.DEPTACCOUNT_NO and
( DPDEPTMASTER.DEPTTYPE_CODE = DPDEPTTYPE.DEPTTYPE_CODE ) and
( DPDEPTMASTER.MEMCOOP_ID = DPDEPTTYPE.COOP_ID ) and DPDEPTMASTER.DEPTCLOSE_STATUS=0 and
( DPDEPTMASTER.MEMBER_NO = '" + memberNo + "') ";
Sdt dtdept = WebUtil.QuerySdt(strSQL);
if (dtdept.GetRowCount() <= 0)
{
LtServerMessage.Text = WebUtil.WarningMessage("ไม่พบเลขที่บัญชีเงินฝากสมาชิก " + member_no);
}
if (dtdept.Next())
{
dept_acc = dtdept.GetString("DEPTACCOUNT_NO");
}
if (dw_otherclr.RowCount > 0)
{
dw_otherclr.SetItemString(row, "clrother_desc", dept_acc);
}
}
catch
{
}
}
protected void SetAcci_dept()
{
string dept_acc = "";
try
{
string memberNo = dw_main.GetItemString(1, "member_no");
String strSQL = "";
strSQL = @"SELECT DPDEPTMASTER.DEPTACCOUNT_NO,
DPDEPTMASTER.MEMBER_NO,
DPDEPTMASTER.DEPTACCOUNT_NAME,
DPDEPTMASTER.DEPTTYPE_CODE,
MBMEMBMASTER.MEMB_NAME,
MBMEMBMASTER.MEMB_SURNAME,
MBMEMBMASTER.MEMBGROUP_CODE,
DPDEPTMASTER.DEPT_OBJECTIVE,
DPDEPTMASTER.DEPTCLOSE_STATUS,
DPDEPTTYPE.DEPTTYPE_GROUP,
DPDEPTMASTER.PRNCBAL
FROM DPDEPTMASTER,
MBMEMBMASTER,
DPDEPTTYPE
WHERE ( DPDEPTMASTER.MEMBER_NO = MBMEMBMASTER.MEMBER_NO ) and
( DPDEPTMASTER.DEPTTYPE_CODE = DPDEPTTYPE.DEPTTYPE_CODE ) and
( DPDEPTMASTER.MEMCOOP_ID = DPDEPTTYPE.COOP_ID ) and DPDEPTMASTER.DEPTCLOSE_STATUS=0 and
( DPDEPTMASTER.MEMBER_NO = '" + memberNo + "') ORDER BY DPDEPTMASTER.DEPTACCOUNT_NO ASC ";
Sdt dtdept = WebUtil.QuerySdt(strSQL);
if (dtdept.Next())
{
int rowCount = dtdept.GetRowCount();
for (int x = 0; x < rowCount; x++)
{
dept_acc = dtdept.Rows[x]["DEPTACCOUNT_NO"].ToString();
if (x == 0)
{
// dw_main.SetItemString(1, "expense_accid", dept_acc);
}
}
}
}
catch { dept_acc = ""; }
}
#region Report Process
private void RunProcess()
{
try
{
app = state.SsApplication;//Request["app"].ToString();
}
catch { }
if (app == null || app == "")
{
app = state.SsApplication;
}
try
{
gid = "LOAN_DAILY";//Request["gid"].ToString();
}
catch { }
if (HdSelectReport.Value == "1")
{
try
{
rid = "LOAN_DAILY_S1";//Request["rid"].ToString();
}
catch { }
}
else if (HdSelectReport.Value == "2")
{
try
{
rid = "LOAN_DAILY_S2";//Request["rid"].ToString();
}
catch { }
}
String loanrequest_docno = dw_main.GetItemString(1, "loanrequest_docno");
String member_no = dw_main.GetItemString(1, "member_no");
//แปลง Criteria ให้อยู่ในรูปแบบมาตรฐาน.
ReportHelper lnv_helper = new ReportHelper();
lnv_helper.AddArgument(loanrequest_docno, ArgumentType.String);
lnv_helper.AddArgument(member_no, ArgumentType.String);
//ชื่อไฟล์ PDF = YYYYMMDDHHMMSS__.PDF
String pdfFileName = DateTime.Now.ToString("yyyyMMddHHmmss", WebUtil.EN);
pdfFileName += "_" + gid + "_" + rid + ".pdf";
pdfFileName = pdfFileName.Trim();
//ส่งให้ ReportService สร้าง PDF ให้ {โดยปกติจะอยู่ใน C:\GCOOP\Saving\PDF\}.
try
{
CoreSavingLibrary.WcfReport.ReportClient lws_report = new CoreSavingLibrary.WcfReport.ReportClient();
String criteriaXML = lnv_helper.PopArgumentsXML();
this.pdf = lws_report.GetPDFURL(state.SsWsPass) + pdfFileName;
String li_return = lws_report.Run(state.SsWsPass, app, gid, rid, criteriaXML, pdfFileName);
if (li_return == "true")
{
HdOpenIFrame.Value = "True";
}
}
catch (Exception ex)
{
LtServerMessage.Text = WebUtil.ErrorMessage(ex);
return;
}
}
public void PopupReport()
{
//เด้ง Popup ออกรายงานเป็น PDF.
String pop = "Gcoop.OpenPopup('" + pdf + "')";
ClientScript.RegisterClientScriptBlock(this.GetType(), "DsReport", pop, true);
}
#endregion
protected void LinkButton1_Click1(object sender, EventArgs e)
{
if (xmlconfig.ShrlonPrintMode == 0)
{
//JspopupLoanReport();
}
else
{
// LtServerMessage.Text = WebUtil.ErrorMessage("อยู่ระหว่างรอ เพิ่มเติม Process");
JspopupLoanCollReport(true, xmlconfig.ShrlonPrintMode);
}
}
protected void LinkButton4_Click(object sender, EventArgs e)
{
if (xmlconfig.ShrlonPrintMode == 0)
{
//JspopupLoanReport();
}
else
{
JspopupLoanExpandReport(true, xmlconfig.ShrlonPrintMode);
LtServerMessage.Text = WebUtil.ErrorMessage("อยู่ระหว่างรอ เพิ่มเติม Process");
}
}
protected void LinkButton3_Click(object sender, EventArgs e)
{
if (xmlconfig.ShrlonPrintMode == 0)
{
//JspopupLoanReport();
}
else
{
//LtServerMessage.Text = WebUtil.ErrorMessage("อยู่ระหว่างรอ เพิ่มเติม Process");
JspopupLoanReport(true, xmlconfig.ShrlonPrintMode);
}
}
protected void LinkButton2_Click(object sender, EventArgs e)
{
if (xmlconfig.ShrlonPrintMode == 0)
{
//JspopupLoanReport();
}
else
{
//LtServerMessage.Text = WebUtil.ErrorMessage("อยู่ระหว่างรอ เพิ่มเติม Process");
JspopupLoanReqReport(true, xmlconfig.ShrlonPrintMode);
}
}
protected void ReOtherMain()
{
dw_main.SetItemDecimal(1, "otherclr_flag", 0);
dw_main.SetItemDecimal(1, "otherclr_amt", 0);
}
protected void JsSetFixdate()
{
//string loanrcvfix_flag = dw_main.GetItemString(1, "loanrcvfix_flag").Trim();
//if (loanrcvfix_flag == "1")
//{
// string rcvfixdate = dw_main.GetItemString(1,"loanrcvfix_tdate");
// rcvfixdate = WebUtil.ConvertDateThaiToEng(dw_main,"loanrcvfix_tdate",rcvfixdate);
// dw_main.SetItemDateTime(1, "loanrcvfix_date", Convert.ToDateTime(rcvfixdate));
//}
//else
//{
// dw_main.SetItemDateTime(1, "loanrcvfix_date", state.SsWorkDate);
//}
}
protected void CheckRemark(String MemberNo)
{
if (HdShowRemark.Value == "false")
{
String strSQL = "SELECT MBMEMBREMARKSTAT.MEMBER_NO FROM MBMEMBREMARKSTAT WHERE MBMEMBREMARKSTAT.MEMBER_NO = '" + MemberNo + "'";
Sdt dtdept = WebUtil.QuerySdt(strSQL);
if (dtdept.Next())
{
//Response.Redirect("\\CEN\\GCOOP\\Saving\\Applications\\shrlon\\dlg\\w_dlg_ln_remarkstatus.aspx?MemberNo =" + MemberNo + "");
//Response.Write("");
HdCheckRemark.Value = "true";
}
else
{
HdCheckRemark.Value = "false";
}
}
}
private void JsCalinsurancepay() //pom-1
{
try
{
string ls_memno = dw_main.GetItemString(1, "member_no");
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
string request_date = dw_main.GetItemString(1, "loanrequest_tdate");
decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
decimal inscost_amt = 0, suminscontbf_amt = 0, insratepay_amt = 0, loancutbf_amt = 1000000;
string sql_chkloantype = " select instype_code, inscost_amt from insucfloanforcetype where loantype_code = '" + ls_loantype + "' and start_loan <= " + Convert.ToString(loanrequest_amt) + " and end_loan >= " + Convert.ToString(loanrequest_amt);
Sdt dtinschkloan = WebUtil.QuerySdt(sql_chkloantype);
if (dtinschkloan.Next())
{
string instype_code = dtinschkloan.GetString("instype_code");
decimal maxinscost_amt = dtinschkloan.GetDecimal("inscost_amt");
string sql_chkins = "select sum( inscost_blance ) as sumcost_amt from insgroupmaster where insmemb_status = 1 and member_no = " + ls_memno;
Sdt dtins = WebUtil.QuerySdt(sql_chkins);
if (dtins.Next())
{
suminscontbf_amt = dtins.GetDecimal("sumcost_amt");
}
inscost_amt = loanrequest_amt - loancutbf_amt - suminscontbf_amt;
if (inscost_amt <= 0)
{
inscost_amt = 0;
insratepay_amt = 0;
}
if (inscost_amt >= 1 && inscost_amt <= 500000) { inscost_amt = 500000; }
if (inscost_amt >= 500001 && inscost_amt <= 1000000) { inscost_amt = 1000000; }
if (inscost_amt >= 1000001 && inscost_amt < 9900000) { inscost_amt = 1500000; }
string request_mmdd = request_date.Substring(4, 4) + request_date.Substring(2, 2) + request_date.Substring(0, 2);
// request_mmdd = //request_date.Substring(5, 4) +request_mmdd;
string sql_insrate = "select inspayment_amt from insurancerate where instype_code = '" + instype_code + "' and start_ddmm <= '" + request_mmdd + "' and end_ddmm >= '" + request_mmdd + "' and inscost_amt = " + inscost_amt.ToString();
Sdt dtrate = WebUtil.QuerySdt(sql_insrate);
if (dtrate.Next())
{
insratepay_amt = dtrate.GetDecimal("inspayment_amt");
}
else
{
insratepay_amt = 0;
}
decimal rowcount = dw_otherclr.RowCount;
string ls_itemtype = "";
int krow = 0;
for (int i = 1; i <= rowcount; i++)
{
ls_itemtype = dw_otherclr.GetItemString(i, "clrothertype_code");
if (ls_itemtype.Trim() == "ปก" || ls_itemtype.Trim() == "ปช" || ls_itemtype.Trim() == "ปภ")
{
krow = i;
}
}
if (krow > 0)
{
dw_otherclr.SetItemDecimal(krow, "clrother_amt", insratepay_amt);
}
else
{
krow = dw_otherclr.InsertRow(0);
dw_otherclr.SetItemDecimal(krow, "clrother_amt", insratepay_amt);
}
dw_otherclr.SetItemString(krow, "clrothertype_code", instype_code);
dw_otherclr.SetItemDecimal(krow, "clrother_amt", insratepay_amt);
dw_otherclr.SetItemString(krow, "clrother_desc", "ประกันชีวิต");
}
}
catch
{
}
}
private void JsSetmutualcoll()
{
//init กองทุนผู้สค้ำ mumembtype_code = '01'
try
{
string ls_memno = dw_main.GetItemString(1, "member_no");
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
string request_date = dw_main.GetItemString(1, "loanrequest_tdate");
if (ls_loantype == "23")
{
double loanrequest_amt = Convert.ToDouble(dw_main.GetItemDecimal(1, "loanrequest_amt"));
decimal muttotalpay_amt = 0;
string sql_mut = " select totalpay_amt from mumembmaster where member_no = '" + ls_memno + "' and mumembtype_code = '01' ";
Sdt dt_mut = WebUtil.QuerySdt(sql_mut);
if (dt_mut.Next())
{
try
{
muttotalpay_amt = dt_mut.GetDecimal("totalpay_amt");
}
catch { muttotalpay_amt = 0; }
}
if (muttotalpay_amt > 0)
{
dw_main.SetItemDecimal(1, "tax_amt", muttotalpay_amt);
}
else
{
dw_main.SetItemDecimal(1, "tax_amt", 0);
}
decimal rowcount = dw_otherclr.RowCount;
double mutpayment_amt = loanrequest_amt * 0.005;
muttotalpay_amt = Convert.ToDecimal(mutpayment_amt); //- muttotalpay_amt
if (muttotalpay_amt < 0)
{
muttotalpay_amt = 0;
}
//เปลี่ยนวิธีหใหม่
//for (int i = 1; i <= rowcount; i++)
//{
// ls_itemtype = dw_otherclr.GetItemString(i, "clrothertype_code");
// if (ls_itemtype == "MUC")
// {
// krow = i;
// }
//}
int li_rowcount = Convert.ToInt16(rowcount);
int li_find = dw_otherclr.FindRow("clrothertype_code = 'MUC'", 1, li_rowcount);
if (li_find < 1)
{
li_find = dw_otherclr.InsertRow(0);
}
decimal mutpayment_amtd = Convert.ToDecimal(mutpayment_amt);
dw_otherclr.SetItemString(li_find, "clrothertype_code", "MUC");
dw_otherclr.SetItemDecimal(li_find, "clrother_amt", mutpayment_amtd);
dw_otherclr.SetItemString(li_find, "clrother_desc", "กองทุนช่วยเหลือผู้ค้ำ");
}
}
catch
{
}
}
private void JsSetmutualStability()
{
//init กองทุนเพื่อความมั่นคง mumembtype_code = '02'
try
{
string ls_memno = dw_main.GetItemString(1, "member_no");
string ls_loantype = dw_main.GetItemString(1, "loantype_code");
string request_date = dw_main.GetItemString(1, "loanrequest_tdate");
Decimal mutpayment_amt = 0;
if (ls_loantype == "21")
{
Decimal loanrequest_amt = dw_main.GetItemDecimal(1, "loanrequest_amt");
String ls_coop_id = dw_main.GetItemString(1, "coop_id");
string sql_mut = " select totalpay_amt from mumembmaster where member_no = '" + ls_memno + "' and mumembtype_code = '02' ";
Sdt dt_mut = WebUtil.QuerySdt(sql_mut);
if (dt_mut.GetRowCount() <= 0)
{ //ยังไม่เคยมีการทำกองทุนเพื่อความมั่นคง เก็บ 10000
try
{
string sql_mutrate = " select mupercen ,min_payamt ,max_payamt from muucfpayrate where coop_id = '" + ls_coop_id + "' and min_loanrequestamt <= " + loanrequest_amt + " and " + loanrequest_amt + " < max_loanrequestamt";
Sdt dt_mutrate = WebUtil.QuerySdt(sql_mutrate);
Decimal mu_percen = 0;
Decimal mu_min = 0;
Decimal mu_max = 0;
if (dt_mutrate.GetRowCount() > 0)
{
mu_percen = Convert.ToDecimal(dt_mutrate.Rows[0][0].ToString().Trim()); //dt_mutrate.GetDecimal("mupercen");
mu_min = Convert.ToDecimal(dt_mutrate.Rows[0][1].ToString().Trim());
mu_max = Convert.ToDecimal(dt_mutrate.Rows[0][2].ToString().Trim());
}
mutpayment_amt = (loanrequest_amt * mu_percen) / 100;
if (mutpayment_amt < mu_min)
{
mutpayment_amt = mu_min;
}
if (mutpayment_amt > mu_max)
{
mutpayment_amt = mu_max;
}
}
catch { mutpayment_amt = 0; }
}
decimal rowcount = dw_otherclr.RowCount;
string ls_itemtype = "";
int krow = 0;
for (int i = 1; i <= rowcount; i++)
{
ls_itemtype = dw_otherclr.GetItemString(i, "clrothertype_code");
if (ls_itemtype == "MUT")
{
krow = i;
}
}
decimal mutpayment_amtd = Convert.ToDecimal(mutpayment_amt);
if (krow <= 0)
{
krow = dw_otherclr.InsertRow(0);
}
dw_otherclr.SetItemString(krow, "clrothertype_code", "MUT");
dw_otherclr.SetItemDecimal(krow, "clrother_amt", mutpayment_amtd);
dw_otherclr.SetItemString(krow, "clrother_desc", "กองทุนเพื่อความมั่นคง");
}
}
catch {
}
}
}
}
///
/// ประเภทเงินกู้ lnloantype
/// ประเภทสมาชิก lnloanmbtype
/// กู้ฉุกเฉิน 10 salary X 3 max_period = 12 ใช้หุ้นค้ำ
/// กู้สามัญหุ้น/เงินฝากค้ำ 20 กู้หุ้นได้ 100% ,เงินฝาก 100% max_period = 96 <800,000 || max_period = 120 > 800,000 <2,000,000
/// กู้สามัญบุคคลค้ำ 21 ตามตาราง สิทธิ์กู้ lnloantypecustum ตามตาราง สิทธิํค้ำ lngrpmanprtpermtdet
/// max_period = 96 <800,000 || max_period = 120 > 800,000 <2,000,000
///
///
///
///