From 858d5b84cb2f9311d6e00d90c6f9527e2e6f57b4 Mon Sep 17 00:00:00 2001
From: lifan <2308045698@qq.com>
Date: 星期四, 04 九月 2025 17:50:13 +0800
Subject: [PATCH] update
---
jrj/project/business/GDN3.maint.cpp | 73 ++++++++++++++++++++++++++++++------
1 files changed, 60 insertions(+), 13 deletions(-)
diff --git a/jrj/project/business/GDN3.maint.cpp b/jrj/project/business/GDN3.maint.cpp
index ddb7942..ec33e89 100644
--- a/jrj/project/business/GDN3.maint.cpp
+++ b/jrj/project/business/GDN3.maint.cpp
@@ -386,7 +386,7 @@
dw_base.SetItemString(1, L"Packages", xstring(Packages_s));
dw_base.SetItemDouble(1, L"Volume", xdouble(Vol_s).round(2));
dw_base.ItemChangeTo(1, L"Amount", xstring(Amount_s));
-
+ dw_base.ItemChangeTo(1, L"InsuredAmount", xstring(Amount_s));
dw_base.SetItemDouble(1, L"PrivateCommissionAmount", ResearchCommissionRate_s + MiddlemanAmountRate_s);
//dw_base.SetItemDouble(1,L"Cost",Cost_s);
@@ -1415,6 +1415,7 @@
}
CalcDraftAmount();
CalcProfit();
+ GetInsuranceAmountEx();
dw_base.Redraw();
}
@@ -1528,7 +1529,10 @@
else if (col == L"ETD")
{
xstring ETD = dw_base.GetItemString(1, L"ETD");
+ xstring CustomerID = dw_base.GetItemString(1, L"CustomerID");
+
xstring exchangeRate = L"";
+ xstring PremiumRate = L"";
if (ETD != L"")
{
trace(ETD);
@@ -1541,7 +1545,7 @@
}
else
{
- xml xp = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/param", L"item", L"cryrate");
+ xml xp = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/paramS", L"item", L"cryrate");
if (xp.selectSingleNode(L"root/item/@value"))
exchangeRate = xp.selectSingleNode(L"root/item/@value").text();
dw_profit.SetItemString(1, L"ExchangeRate", exchangeRate);
@@ -1549,10 +1553,44 @@
}
evalManagementFee();
evalRiskFundAmount();
- }
+ xml x1 = ViewObject::RetrieveData(L"/sale/data/GDN3/GetInsuranceRateEx", L"ETD", ETD, L"CustomerID", CustomerID);
+ if (x1.selectSingleNode(L"root/item/@value"))
+ PremiumRate = x1.selectSingleNode(L"root/item/@value").text();
+
+ if (PremiumRate != L"")
+ {
+ dw_base.SetItemString(1, L"InsuranceRateEx", PremiumRate);
+ GetInsuranceAmountEx();
+ }
+
+ }
dw_profit.Redraw();
+ dw_base.Redraw();
}
+ else if (col == L"InsuredAmount" || col == L"InsuranceRateEx")
+ {
+ GetInsuranceAmountEx();
+ }
+ return 1;
+ }
+
+ int GetInsuranceAmountEx()
+ {
+ double InsuranceRateEx = dw_base.GetItemDouble(1, L"InsuranceRateEx");
+ double InsuredAmount = dw_base.GetItemDouble(1, L"InsuredAmount");
+
+ double ExchangeAmountEx = dw_profit.GetItemDouble(1, L"ExchangeAmountEx");
+
+ dw_base.SetItemDouble(1, L"InsuranceAmountEx", InsuranceRateEx * InsuredAmount / 100);
+ dw_profit.SetItemDouble(1, L"SinosurAmount", InsuranceRateEx * InsuredAmount / 100);
+
+ dw_profit.SetItemDouble(1, L"ExchangeAmountEx", ExchangeAmountEx + (InsuranceRateEx * InsuredAmount / 100));
+ evalProfitAmount();
+ //dw_profit.ItemChangeTo(1,"SinosurAmount",(InsuranceRateEx * InsuredAmount/100).toString());
+ dw_base.Redraw();
+ dw_profit.Redraw();
+
return 1;
}
@@ -2652,6 +2690,11 @@
if (t.selectSingleNode(L"CustomerID"))dw_base.SetItemString(1, L"CustomerID", t.selectSingleNode(L"CustomerID").text());
if (t.selectSingleNode(L"CustomerID/@_displaystring"))dw_base.SetItemDisplayString(1, L"CustomerID", t.selectSingleNode(L"CustomerID/@_displaystring").text());
+ if (t.selectSingleNode(L"UOCCode"))dw_base.SetItemString(1, L"UOCCode", t.selectSingleNode(L"UOCCode").text());
+ if (t.selectSingleNode(L"ApprovalIimit"))dw_base.SetItemString(1, L"ApprovalIimit", t.selectSingleNode(L"ApprovalIimit").text());
+ if (t.selectSingleNode(L"InsuranceRateEx"))dw_base.SetItemString(1, L"InsuranceRateEx", t.selectSingleNode(L"InsuranceRateEx").text());
+ if (t.selectSingleNode(L"AvailableIimits"))dw_base.SetItemString(1, L"AvailableIimits", t.selectSingleNode(L"AvailableIimits").text());
+
//trace(L"*****************");
if (t.selectSingleNode(L"LCNo"))dw_base.SetItemString(1, L"LCNo", t.selectSingleNode(L"LCNo").text());
if (t.selectSingleNode(L"LCSignDate"))dw_base.SetItemString(1, L"LCSignDate", t.selectSingleNode(L"LCSignDate").text());
@@ -3290,12 +3333,12 @@
xstring exchRate = L"";
xstring exchRate2 = L"";
- xml x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/param", L"item", L"prepareFeeRate");
+ xml x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/paramS", L"item", L"prepareFeeRate");
if (x.selectSingleNode(L"root/item/@value"))
exchRate = x.selectSingleNode(L"root/item/@value").text();
double rate = exchRate.toDouble();
- xml x1 = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/param", L"item", L"cryrate");
+ xml x1 = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/paramS", L"item", L"cryrate");
if (x.selectSingleNode(L"root/item/@value"))
exchRate2 = x1.selectSingleNode(L"root/item/@value").text();
double cryrate = exchRate2.toDouble();
@@ -3397,11 +3440,11 @@
xstring expRate = L"";
xstring exchRate = L"";
- xml x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/param", L"item", L"cryrate");
+ xml x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/paramS", L"item", L"cryrate");
if (x.selectSingleNode(L"root/item/@value"))
exchRate = x.selectSingleNode(L"root/item/@value").text();
- x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/param", L"item", L"mgtFeeRate");
+ x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/paramS", L"item", L"mgtFeeRate");
if (x.selectSingleNode(L"root/item/@value"))
expRate = x.selectSingleNode(L"root/item/@value").text();
//double sale = dw_profit.GetItemDouble(1,L"ExchangeAmountEx");
@@ -3441,13 +3484,14 @@
xstring expRate = L"";
xstring exchRate = L"";
- xml x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/param", L"item", L"cryrate");
+ xml x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/paramS", L"item", L"cryrate");
if (x.selectSingleNode(L"root/item/@value"))
exchRate = x.selectSingleNode(L"root/item/@value").text();
- x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/param", L"item", L"RiskFundAmount");
+ x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/paramS", L"item", L"RiskFundAmount");
if (x.selectSingleNode(L"root/item/@value"))
expRate = x.selectSingleNode(L"root/item/@value").text();
+ //alert(expRate);
//double sale = dw_profit.GetItemDouble(1,L"ExchangeAmountEx");
xstring ETDEx = dw_base.GetItemString(1, L"ETD");
@@ -3515,6 +3559,7 @@
dw_profit.SetItemString(1, L"Amount", dw_base.GetItemString(1, L"Amount"));
dw_profit.SetItemString(1, L"Freight", dw_base.GetItemString(1, L"Freight"));
dw_profit.SetItemString(1, L"InsuranceAmount", dw_base.GetItemString(1, L"InsuranceAmount"));
+ dw_profit.SetItemString(1, L"SinosurAmount", dw_base.GetItemString(1, L"InsuranceAmountEx"));
//dw_profit.SetItemString(1,L"CommissionAmount",dw_base.GetItemString(1,L"CommissionAmount"));
double comm1 = dw_base.GetItemDouble(1, L"CommissionAmount");
@@ -3542,6 +3587,7 @@
ttl -= dw_base.GetItemDouble(1, L"CommissionAmount");
ttl -= dw_base.GetItemDouble(1, L"PrivateCommissionAmount");
ttl -= dw_base.GetItemDouble(1, L"DiscountAmount");
+ ttl -= dw_base.GetItemDouble(1, L"InsuranceAmountEx");
ttl += dw_profit.GetItemDouble(1, L"SaleExternCost");
@@ -3549,7 +3595,7 @@
xstring exchangeRate = L"";
exchangeRate = dw_profit.GetItemString(1, L"ExchangeRate");
if (exchangeRate == L"") {
- xml x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/param", L"item", L"cryrate");
+ xml x = ViewObject::RetrieveData(L"/sale/data/GDN3/profit/paramS", L"item", L"cryrate");
if (x.selectSingleNode(L"root/item/@value"))
exchangeRate = x.selectSingleNode(L"root/item/@value").text();
dw_profit.SetItemString(1, L"ExchangeRate", exchangeRate);
@@ -3635,6 +3681,7 @@
int CalcProfit()
{
+ GetInsuranceAmountEx();
evalSale();
evalManagementFee();
evalRiskFundAmount();
@@ -4019,7 +4066,7 @@
int onload()
{
-
+ SetArg();
xstring userid = publiccode::GetUser().id;
//trace(userid);
haveUpdate = true;
@@ -4093,7 +4140,7 @@
dw_custom.SetColumnState(L"ClassifyID", false);
dw_custom.SetColumnState(L"AmountEx", false);
//dw_custom.SetReadOnlyColumn(L"CustName",true);
- dw_custom.SetColumnState(L"LineNo", false);
+ //dw_custom.SetColumnState(L"LineNo", false);
dw_customex = GetControl(L"dw_customex");
@@ -4130,7 +4177,7 @@
if (GetWinParam())
{
xaserverarg arg_param=GetArg();
-
+ xstring xs = arg_param.GetString();
InvoiceNo = arg_param.GetArgString(L"InvoiceNo");
if (InvoiceNo == L"") InvoiceNo = arg_param.GetArgString(L"EntityNo");
if (InvoiceNo == L"")
--
Gitblit v1.9.3