提交人:csx

提交时间:2025年01月15日
提交内容:带息负债报表
This commit is contained in:
1981897232@qq.com 2026-01-15 10:08:18 +08:00
parent 703422f08e
commit a1e85f59c4
2 changed files with 26 additions and 3 deletions

View File

@ -25,6 +25,7 @@ import kd.bos.form.events.HyperLinkClickListener;
import kd.bos.form.field.BasedataEdit;
import kd.bos.form.field.events.BeforeF7SelectEvent;
import kd.bos.form.field.events.BeforeF7SelectListener;
import kd.bos.list.ListShowParameter;
import kd.bos.orm.ORM;
import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter;
@ -42,6 +43,7 @@ import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.EventObject;
import java.util.List;
@ -281,7 +283,18 @@ public class InterestBearingFromListPlugin extends AbstractReportFormPlugin impl
public void beforeF7Select(BeforeF7SelectEvent e) {
String key = e.getProperty().getName();
if ("shkd_finproduct".equals(key)){
Object shkd_rzpz = this.getView().getModel().getValue("shkd_rzpz");
DynamicObjectCollection shkd_rzpz = (DynamicObjectCollection) this.getView().getModel().getValue("shkd_rzpz");
if (shkd_rzpz.size()>0){
ListShowParameter showParameter = (ListShowParameter) e.getFormShowParameter();
List<Long> longList = new ArrayList<>();
for (DynamicObject dynamicObject : shkd_rzpz) {
DynamicObject fbasedataid = dynamicObject.getDynamicObject("fbasedataid");
longList.add(fbasedataid.getLong("id"));
}
QFilter qFilter1 = new QFilter("parent.id", "in", longList);
showParameter.getListFilterParameter().setFilter(qFilter1);
}
}
}
}

View File

@ -380,13 +380,23 @@ public class InterestBearingRptListPlugin extends AbstractReportListDataPlugin {
String whereEjCom,String whereRzzt,String whereZqrzh,String whereRzpz,String whereFinproduct,String whereRzqd,String whereBlxm,String whereDybbkmmc,String whereGuaranteeway,
String year) {
//年初未还金额
String selYearNcAmt = "(SELECT sum(sum(isnull(s1.fnotrepayamount,0))) yearwhamt\n" +
// String selYearNcAmt1 = "(SELECT sum(sum(isnull(s1.fnotrepayamount,0))) yearwhamt\n" +
// "FROM t_cfm_loanbill s1 \n" +
// "INNER JOIN t_cfm_loanbill_e s2 ON s1.fid = s2.FID \n" +
// "WHERE (s2.floantype = 'loan' OR s2.floantype = 'sl' OR s2.floantype = 'bond') \n" +
// "AND (s1.fdrawtype = 'drawed' OR s1.fdrawtype = 'partpayment') \n" +
// "AND t1.FBILLNO = s1.FBILLNO \n" +
// "GROUP BY to_char(s2.fstartintdate,'yyyy') having to_char(s2.fstartintdate,'yyyy') < '"+year+"')";
String selYearNcAmt = "(SELECT s1.fdrawamount-sum(isnull(s3.fexdrawamount,0))\n" +
"FROM t_cfm_loanbill s1 \n" +
"INNER JOIN t_cfm_loanbill_e s2 ON s1.fid = s2.FID \n" +
"INNER JOIN t_cfm_loanbill_rp_entry s3 ON s1.fid = s3.FID \n" +
"WHERE (s2.floantype = 'loan' OR s2.floantype = 'sl' OR s2.floantype = 'bond') \n" +
"AND (s1.fdrawtype = 'drawed' OR s1.fdrawtype = 'partpayment') \n" +
"AND t1.FBILLNO = s1.FBILLNO \n" +
"GROUP BY to_char(s2.fstartintdate,'yyyy') having to_char(s2.fstartintdate,'yyyy') < '"+year+"')";
"and to_char(s3.fexrepaymentdate,'yyyy') < '"+year+"' and to_char(s2.fstartintdate,'yyyy') < '"+year+"'\n" +
"GROUP BY s1.fdrawamount)";
//年度新增金额
String selYearAddAmt = "(SELECT sum(isnull(s1.fdrawamount,0))\n" +
"FROM t_cfm_loanbill s1 \n" +