diff --git a/obm/component.xml b/obm/component.xml
new file mode 100644
index 0000000..ecf7745
--- /dev/null
+++ b/obm/component.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/obm/src/private/nc/impl/obm/ebank/ObmEbankNccServiceImpl.java b/obm/src/private/nc/impl/obm/ebank/ObmEbankNccServiceImpl.java
new file mode 100644
index 0000000..81caaf1
--- /dev/null
+++ b/obm/src/private/nc/impl/obm/ebank/ObmEbankNccServiceImpl.java
@@ -0,0 +1,654 @@
+//
+// Source code recreated from a .class file by IntelliJ IDEA
+// (powered by FernFlower decompiler)
+//
+
+package nc.impl.obm.ebank;
+
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Date;
+import java.util.List;
+import nc.bs.dao.BaseDAO;
+import nc.bs.framework.common.NCLocator;
+import nc.bs.sec.esapi.NCESAPI;
+import nc.bs.trade.business.HYPubBO;
+import nc.itf.obm.IEbankbillinfoqueryMaintain;
+import nc.itf.obm.IEbankdatadownloadMaintain;
+import nc.itf.obm.IObmEvent;
+import nc.itf.obm.PayStateVO;
+import nc.itf.obm.ebank.IObmEbankNccService;
+import nc.itf.obm.ebankecd.IEbankEcdService;
+import nc.itf.uap.IUAPQueryBS;
+import nc.jdbc.framework.SQLParameter;
+import nc.jdbc.framework.processor.ArrayListProcessor;
+import nc.md.persist.framework.IMDPersistenceQueryService;
+import nc.md.persist.framework.MDPersistenceService;
+import nc.vo.bd.currtype.CurrtypeVO;
+import nc.vo.obm.ebankbillinfo.BillInfoQueryVO;
+import nc.vo.obm.ebankbillinfoquery.AggEbankBillInfoQueryVO;
+import nc.vo.obm.ebankbillinfoquery.EbankBillInfoQueryVO;
+import nc.vo.obm.ebankdzd.DzdQueryInfoVO;
+import nc.vo.obm.ebankdzd.EbankDzdVO;
+import nc.vo.obm.ebankecd.EbankEcdVO;
+import nc.vo.obm.log.ObmLog;
+import nc.vo.obm.payroll.DfgzBVO;
+import nc.vo.obm.payroll.DfgzBillVO;
+import nc.vo.obm.payroll.DfgzHVO;
+import nc.vo.obm.payroll.DfgzQueryCardInfoVO;
+import nc.vo.obm.payroll.DfgzQueryInfoVO;
+import nc.vo.obm.sql.StrWhereSqlUtils;
+import nc.vo.org.OrgVO;
+import nc.vo.pub.AggregatedValueObject;
+import nc.vo.pub.BusinessException;
+import nc.vo.pub.lang.UFBoolean;
+import nc.vo.pub.lang.UFDate;
+import nc.vo.pub.lang.UFDateTime;
+import nc.vo.pub.lang.UFDouble;
+import nc.vo.tmpub.security.DefCommonClientSignForNCC;
+import nc.vo.tmpub.security.SignAttributeNameVO;
+import nc.vo.tmpub.util.SqlUtil;
+import nccloud.commons.collections.CollectionUtils;
+import nccloud.dto.obm.ebankbillinfo.vo.BillInfoDownloadVO;
+import org.apache.commons.lang3.ArrayUtils;
+
+public class ObmEbankNccServiceImpl implements IObmEbankNccService {
+ private BaseDAO dao = null;
+
+ public ObmEbankNccServiceImpl() {
+ }
+
+ public boolean executeSql(String strSql) throws BusinessException {
+ if (this.dao == null) {
+ this.dao = new BaseDAO();
+ }
+
+ this.dao.executeUpdate(strSql);
+ return true;
+ }
+
+ public boolean executeSql(String strSql, String[] values) throws BusinessException {
+ if (this.dao == null) {
+ this.dao = new BaseDAO();
+ }
+
+ SQLParameter params = new SQLParameter();
+
+ for(int i = 0; i < values.length; ++i) {
+ params.addParam(values[i]);
+ }
+
+ this.dao.executeUpdate(strSql, params);
+ return true;
+ }
+
+ public String[][] getData(String sqlStr) {
+ String[][] dataAray = null;
+
+ try {
+ IUAPQueryBS query = (IUAPQueryBS)NCLocator.getInstance().lookup(IUAPQueryBS.class);
+ new ArrayList();
+ ArrayListProcessor processor = new ArrayListProcessor();
+ List