diff --git a/WebContent/Tenwa/Lease/Flow/Fund/ActualPayment/BCpayInfoLog.jsp b/WebContent/Tenwa/Lease/Flow/Fund/ActualPayment/BCpayInfoLog.jsp new file mode 100644 index 000000000..573e3e21f --- /dev/null +++ b/WebContent/Tenwa/Lease/Flow/Fund/ActualPayment/BCpayInfoLog.jsp @@ -0,0 +1,58 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_list.jspf"%><% + /* + Author: undefined 2019-01-11 + Content: + History Log: + */ + ASObjectModel doTemp = new ASObjectModel("BC_PAY_INFO_LOG"); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request); + dwTemp.Style="1"; //--设置为Grid风格-- + dwTemp.MultiSelect = true; //多选 + dwTemp.ReadOnly = "1"; //只读模式 + dwTemp.setPageSize(10); + dwTemp.genHTMLObjectWindow(""); + + //0、是否展示 1、 权限控制 2、 展示类型 3、按钮显示名称 4、按钮解释文字 5、按钮触发事件代码 6、 7、 8、 9、图标,CSS层叠样式 10、风格 + String sButtons[][] = { + {"true","","Button","发起更新","向北财发起更新付款信息","updateBC()","","","","btn_icon_detail",""}, + {"true","All","Button","新增","新增","newRecord()","","","","btn_icon_add",""}, + //{"true","","Button","详情","详情","viewAndEdit()","","","","btn_icon_detail",""}, + //{"true","","Button","删除","删除","if(confirm('确实要删除吗?'))as_delete(0,'alert(getRowCount(0))')","","","","btn_icon_delete",""}, + }; +%><%@include file="/Frame/resources/include/ui/include_list.jspf"%> + +<%@ include file="/Frame/resources/include/include_end.jspf"%> \ No newline at end of file diff --git a/WebContent/Tenwa/Lease/Flow/Fund/ActualPayment/BCpayInfoLogInfo.jsp b/WebContent/Tenwa/Lease/Flow/Fund/ActualPayment/BCpayInfoLogInfo.jsp new file mode 100644 index 000000000..c8a9a2473 --- /dev/null +++ b/WebContent/Tenwa/Lease/Flow/Fund/ActualPayment/BCpayInfoLogInfo.jsp @@ -0,0 +1,31 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_info.jspf"%><% + /* + Author: undefined 2019-01-16 + Content: 示例详情页面 + History Log: + */ + String sPrevUrl = CurPage.getParameter("PrevUrl"); + if(sPrevUrl == null) sPrevUrl = ""; + + String sTempletNo = "BC_PAY_INFO_LOG_INFO";//--模板号-- + ASObjectModel doTemp = new ASObjectModel(sTempletNo); + //doTemp.setColTips("", "测试"); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage, doTemp,request); + dwTemp.Style = "2";//freeform + //dwTemp.ReadOnly = "-2";//只读模式 + dwTemp.genHTMLObjectWindow(CurPage.getParameter("SerialNo")); + + String sButtons[][] = { + {"true","All","Button","保存","保存所有修改","as_save(0,'returnList()')","","","",""}, + // {"true","All","Button","返回","返回列表","returnList()","","","",""} + // {String.valueOf(!com.amarsoft.are.lang.StringX.isSpace(sPrevUrl)),"All","Button","返回","返回列表","returnList()","","","",""} + }; + sButtonPosition = "south"; +%><%@ include file="/Frame/resources/include/ui/include_info.jspf"%> + +<%@ include file="/Frame/resources/include/include_end.jspf"%> \ No newline at end of file diff --git a/WebContent/WEB-INF/etc/jbo/jbo_lease.xml b/WebContent/WEB-INF/etc/jbo/jbo_lease.xml index 8f0dea2a1..300dd76bb 100644 --- a/WebContent/WEB-INF/etc/jbo/jbo_lease.xml +++ b/WebContent/WEB-INF/etc/jbo/jbo_lease.xml @@ -4929,7 +4929,8 @@ - + + diff --git a/src/com/amarsoft/dict/als/manage/NameManager.java b/src/com/amarsoft/dict/als/manage/NameManager.java index efef11d74..98b4a5e98 100644 --- a/src/com/amarsoft/dict/als/manage/NameManager.java +++ b/src/com/amarsoft/dict/als/manage/NameManager.java @@ -1,5 +1,6 @@ package com.amarsoft.dict.als.manage; +import jbo.com.tenwa.lease.comm.BC_PAY_INFO_LOG; import jbo.com.tenwa.lease.comm.LB_INSURANCE_INFO; import jbo.com.tenwa.lease.comm.LB_PROJECT_INFO; @@ -9,6 +10,7 @@ import java.util.Map; import com.amarsoft.are.jbo.BizObject; import com.amarsoft.are.jbo.JBOException; import com.amarsoft.are.jbo.JBOFactory; +import com.amarsoft.are.jbo.JBOTransaction; import com.amarsoft.awe.res.AppManager; import com.amarsoft.awe.res.MenuManager; import com.amarsoft.awe.util.ASResultSet; @@ -254,4 +256,30 @@ public class NameManager // BizObject bo=JBOFactory.createBizObjectQuery(LB_INSURANCE_INFO.CLASS_NAME, "select * from (SELECT @rownum := @rownum + 1 AS rownum,insurer_end_date FROM O,(SELECT @rownum := 0) t WHERE contract_id ='"+ContractId+"' ORDER BY insurer_start_date ) t WHERE t.rownum= '"+i+"'").getSingleResult(false); // return bo.getAttribute(LB_INSURANCE_INFO.INSURER_END_DATE).getString(); } + //得到北汽表上一次更新时间 + public static String getLastTime(String project_no){ + String lastTime=""; + String sql="select max(O.inputtime) as lastTime from bc_pay_info_log O where O.project_no='"+project_no+"' group by O.project_no "; + Transaction Sqlca = null; + JBOTransaction tx; + try { + tx = JBOFactory.createJBOTransaction(); + Sqlca = Transaction.createTransaction(tx); + lastTime = Sqlca.getString(sql); + } catch (JBOException e1) { + // TODO Auto-generated catch block + e1.printStackTrace(); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + /* try { + BizObject bo = JBOFactory.createBizObjectQuery(BC_PAY_INFO_LOG.CLASS_NAME, sql).getSingleResult(false); + lastTime = bo.getAttribute("lastTime").toString(); + } catch (JBOException e) { + e.printStackTrace(); + }*/ + return lastTime; + } } \ No newline at end of file diff --git a/src_cmb/org/datacontract/schemas/_2004/_07/Cap_Infrastructure_Entities_UpdateStatus/Application.java b/src_cmb/org/datacontract/schemas/_2004/_07/Cap_Infrastructure_Entities_UpdateStatus/Application.java new file mode 100644 index 000000000..88c1f0375 --- /dev/null +++ b/src_cmb/org/datacontract/schemas/_2004/_07/Cap_Infrastructure_Entities_UpdateStatus/Application.java @@ -0,0 +1,231 @@ +/** + * Application.java + * + * This file was auto-generated from WSDL + * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. + */ + +package org.datacontract.schemas._2004._07.Cap_Infrastructure_Entities_UpdateStatus; + +public class Application implements java.io.Serializable { + private java.math.BigDecimal amount_Disbursed; + + private java.lang.String application_Number; + + private java.lang.String borrower_Name; + + private java.lang.String ID_Card_No; + + public Application() { + } + + public Application( + java.math.BigDecimal amount_Disbursed, + java.lang.String application_Number, + java.lang.String borrower_Name, + java.lang.String ID_Card_No) { + this.amount_Disbursed = amount_Disbursed; + this.application_Number = application_Number; + this.borrower_Name = borrower_Name; + this.ID_Card_No = ID_Card_No; + } + + + /** + * Gets the amount_Disbursed value for this Application. + * + * @return amount_Disbursed + */ + public java.math.BigDecimal getAmount_Disbursed() { + return amount_Disbursed; + } + + + /** + * Sets the amount_Disbursed value for this Application. + * + * @param amount_Disbursed + */ + public void setAmount_Disbursed(java.math.BigDecimal amount_Disbursed) { + this.amount_Disbursed = amount_Disbursed; + } + + + /** + * Gets the application_Number value for this Application. + * + * @return application_Number + */ + public java.lang.String getApplication_Number() { + return application_Number; + } + + + /** + * Sets the application_Number value for this Application. + * + * @param application_Number + */ + public void setApplication_Number(java.lang.String application_Number) { + this.application_Number = application_Number; + } + + + /** + * Gets the borrower_Name value for this Application. + * + * @return borrower_Name + */ + public java.lang.String getBorrower_Name() { + return borrower_Name; + } + + + /** + * Sets the borrower_Name value for this Application. + * + * @param borrower_Name + */ + public void setBorrower_Name(java.lang.String borrower_Name) { + this.borrower_Name = borrower_Name; + } + + + /** + * Gets the ID_Card_No value for this Application. + * + * @return ID_Card_No + */ + public java.lang.String getID_Card_No() { + return ID_Card_No; + } + + + /** + * Sets the ID_Card_No value for this Application. + * + * @param ID_Card_No + */ + public void setID_Card_No(java.lang.String ID_Card_No) { + this.ID_Card_No = ID_Card_No; + } + + private java.lang.Object __equalsCalc = null; + public synchronized boolean equals(java.lang.Object obj) { + if (!(obj instanceof Application)) return false; + Application other = (Application) obj; + if (obj == null) return false; + if (this == obj) return true; + if (__equalsCalc != null) { + return (__equalsCalc == obj); + } + __equalsCalc = obj; + boolean _equals; + _equals = true && + ((this.amount_Disbursed==null && other.getAmount_Disbursed()==null) || + (this.amount_Disbursed!=null && + this.amount_Disbursed.equals(other.getAmount_Disbursed()))) && + ((this.application_Number==null && other.getApplication_Number()==null) || + (this.application_Number!=null && + this.application_Number.equals(other.getApplication_Number()))) && + ((this.borrower_Name==null && other.getBorrower_Name()==null) || + (this.borrower_Name!=null && + this.borrower_Name.equals(other.getBorrower_Name()))) && + ((this.ID_Card_No==null && other.getID_Card_No()==null) || + (this.ID_Card_No!=null && + this.ID_Card_No.equals(other.getID_Card_No()))); + __equalsCalc = null; + return _equals; + } + + private boolean __hashCodeCalc = false; + public synchronized int hashCode() { + if (__hashCodeCalc) { + return 0; + } + __hashCodeCalc = true; + int _hashCode = 1; + if (getAmount_Disbursed() != null) { + _hashCode += getAmount_Disbursed().hashCode(); + } + if (getApplication_Number() != null) { + _hashCode += getApplication_Number().hashCode(); + } + if (getBorrower_Name() != null) { + _hashCode += getBorrower_Name().hashCode(); + } + if (getID_Card_No() != null) { + _hashCode += getID_Card_No().hashCode(); + } + __hashCodeCalc = false; + return _hashCode; + } + + // Type metadata + private static org.apache.axis.description.TypeDesc typeDesc = + new org.apache.axis.description.TypeDesc(Application.class, true); + + static { + typeDesc.setXmlType(new javax.xml.namespace.QName("http://schemas.datacontract.org/2004/07/Cap.Infrastructure.Entities.UpdateStatus", "Application")); + org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); + elemField.setFieldName("amount_Disbursed"); + elemField.setXmlName(new javax.xml.namespace.QName("http://schemas.datacontract.org/2004/07/Cap.Infrastructure.Entities.UpdateStatus", "Amount_Disbursed")); + elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "decimal")); + elemField.setMinOccurs(0); + elemField.setNillable(false); + typeDesc.addFieldDesc(elemField); + elemField = new org.apache.axis.description.ElementDesc(); + elemField.setFieldName("application_Number"); + elemField.setXmlName(new javax.xml.namespace.QName("http://schemas.datacontract.org/2004/07/Cap.Infrastructure.Entities.UpdateStatus", "Application_Number")); + elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); + elemField.setMinOccurs(0); + elemField.setNillable(true); + typeDesc.addFieldDesc(elemField); + elemField = new org.apache.axis.description.ElementDesc(); + elemField.setFieldName("borrower_Name"); + elemField.setXmlName(new javax.xml.namespace.QName("http://schemas.datacontract.org/2004/07/Cap.Infrastructure.Entities.UpdateStatus", "Borrower_Name")); + elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); + elemField.setMinOccurs(0); + elemField.setNillable(true); + typeDesc.addFieldDesc(elemField); + elemField = new org.apache.axis.description.ElementDesc(); + elemField.setFieldName("ID_Card_No"); + elemField.setXmlName(new javax.xml.namespace.QName("http://schemas.datacontract.org/2004/07/Cap.Infrastructure.Entities.UpdateStatus", "ID_Card_No")); + elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); + elemField.setMinOccurs(0); + elemField.setNillable(true); + typeDesc.addFieldDesc(elemField); + } + + /** + * Return type metadata object + */ + public static org.apache.axis.description.TypeDesc getTypeDesc() { + return typeDesc; + } + + /** + * Get Custom Serializer + */ + public static org.apache.axis.encoding.Serializer getSerializer( + java.lang.String mechType, + java.lang.Class _javaType, + javax.xml.namespace.QName _xmlType) { + return + new org.apache.axis.encoding.ser.BeanSerializer( + _javaType, _xmlType, typeDesc); + } + + /** + * Get Custom Deserializer + */ + public static org.apache.axis.encoding.Deserializer getDeserializer( + java.lang.String mechType, + java.lang.Class _javaType, + javax.xml.namespace.QName _xmlType) { + return + new org.apache.axis.encoding.ser.BeanDeserializer( + _javaType, _xmlType, typeDesc); + } + +} diff --git a/src_cmb/org/datacontract/schemas/_2004/_07/Cap_Infrastructure_Entities_UpdateStatus/Request.java b/src_cmb/org/datacontract/schemas/_2004/_07/Cap_Infrastructure_Entities_UpdateStatus/Request.java new file mode 100644 index 000000000..f26371e83 --- /dev/null +++ b/src_cmb/org/datacontract/schemas/_2004/_07/Cap_Infrastructure_Entities_UpdateStatus/Request.java @@ -0,0 +1,129 @@ +/** + * Request.java + * + * This file was auto-generated from WSDL + * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. + */ + +package org.datacontract.schemas._2004._07.Cap_Infrastructure_Entities_UpdateStatus; + +public class Request implements java.io.Serializable { + private org.datacontract.schemas._2004._07.Cap_Infrastructure_Entities_UpdateStatus.Application[] applications; + + public Request() { + } + + public Request( + org.datacontract.schemas._2004._07.Cap_Infrastructure_Entities_UpdateStatus.Application[] applications) { + this.applications = applications; + } + + + /** + * Gets the applications value for this Request. + * + * @return applications + */ + public org.datacontract.schemas._2004._07.Cap_Infrastructure_Entities_UpdateStatus.Application[] getApplications() { + return applications; + } + + + /** + * Sets the applications value for this Request. + * + * @param applications + */ + public void setApplications(org.datacontract.schemas._2004._07.Cap_Infrastructure_Entities_UpdateStatus.Application[] applications) { + this.applications = applications; + } + + private java.lang.Object __equalsCalc = null; + public synchronized boolean equals(java.lang.Object obj) { + if (!(obj instanceof Request)) return false; + Request other = (Request) obj; + if (obj == null) return false; + if (this == obj) return true; + if (__equalsCalc != null) { + return (__equalsCalc == obj); + } + __equalsCalc = obj; + boolean _equals; + _equals = true && + ((this.applications==null && other.getApplications()==null) || + (this.applications!=null && + java.util.Arrays.equals(this.applications, other.getApplications()))); + __equalsCalc = null; + return _equals; + } + + private boolean __hashCodeCalc = false; + public synchronized int hashCode() { + if (__hashCodeCalc) { + return 0; + } + __hashCodeCalc = true; + int _hashCode = 1; + if (getApplications() != null) { + for (int i=0; + i> requests) { + String resulst="FAIL"; + JBOTransaction bcLogs = null; + String url= "http://219.141.202.98:8000/UpdateStatusService/NFS.Business.UpdateStatusService.ServicesImpl.UpdateStatus.svc"; + IUpdateStatusProxy Iudsp = new IUpdateStatusProxy(url); + Request request = new Request(); + List requestList = new ArrayList(); + for(int i=0;i requestInfo = requests.get(i); + Application alct = new Application(); + String fact_money = requestInfo.get("fact_money"); + String project_no = requestInfo.get("project_no"); + String customername = requestInfo.get("customername"); + String certid = requestInfo.get("certid"); + alct.setAmount_Disbursed(new BigDecimal(fact_money)); + alct.setApplication_Number(project_no); + alct.setBorrower_Name(customername); + alct.setID_Card_No(certid); + requestList.add(alct); + } + //将遍历的信息放进Application[]中 + Application[] alcts = requestList.toArray(new Application[requestList.size()]); + request.setApplications(alcts); + //发送信息并解析回复结果 + Response results = null; + String message_Code = null; + String message_Description = null; + try { + results = Iudsp.updateApplicationStatus(request); + } catch (RemoteException e1) { + System.out.println("调用通信异常!!!"); + e1.printStackTrace(); + } + if(results != null){ + message_Code = results.getMessage_Code(); + message_Description = results.getMessage_Description(); + } + try { + bcLogs =JBOFactory.createJBOTransaction(); + BizObjectManager BJM_bcPay = JBOFactory.getBizObjectManager(BC_PAY_INFO_LOG.CLASS_NAME,bcLogs); + + for(int i=0;i requestInfo = requests.get(i); + String fact_money = requestInfo.get("fact_money"); + String project_no = requestInfo.get("project_no"); + String customername = requestInfo.get("customername"); + String certid = requestInfo.get("certid"); + BizObject BJ_Info = BJM_bcPay.newObject(); + BJ_Info.setAttributeValue("project_no",project_no); + BJ_Info.setAttributeValue("customername",customername); + BJ_Info.setAttributeValue("certid",certid); + BJ_Info.setAttributeValue("fact_money",fact_money); + BJ_Info.setAttributeValue("INPUTTIME",StringFunction.getTodayNow()); + BJ_Info.setAttributeValue("result","成功"); + BJ_Info.setAttributeValue("resultInfo","付款信息更新成功"); + BJ_Info.setAttributeValue("final_result","Y"); + if(results==null||message_Code==null||"".equals(message_Code)){ + BJ_Info.setAttributeValue("result","失败"); + BJ_Info.setAttributeValue("resultInfo","通信异常"); + BJ_Info.setAttributeValue("final_result","N"); + } + if(project_no==null||"".equals(project_no) + ||customername==null||"".equals(customername) + ||certid==null||"".equals(certid) + ||fact_money==null||"".equals(fact_money)){ + BJ_Info.setAttributeValue("final_result","失败"); + BJ_Info.setAttributeValue("resultInfo","发送信息有空值"); + BJ_Info.setAttributeValue("final_result","N"); + } + if("Fail".equalsIgnoreCase(message_Code)&&(message_Description.indexOf(project_no))!=-1){ + BJ_Info.setAttributeValue("result","失败"); + BJ_Info.setAttributeValue("resultInfo","付款信息更新失败"); + BJ_Info.setAttributeValue("responseInfo",message_Description); + BJ_Info.setAttributeValue("final_result","N"); + } + BJM_bcPay.saveObject(BJ_Info); + String sql = "update BC_PAY_INFO_LOG set final_result='Y' where project_no='"+project_no+"'"; + if("Y".equals(BJ_Info.getAttribute("final_result").toString())){ + BJM_bcPay.createQuery(sql).executeUpdate(); + } + } + bcLogs.commit(); + + System.out.println("北汽财务数据更新状态:"+message_Code); + System.out.println("描述信息:"+message_Description); + resulst="SUCCESS"; + } catch (JBOException e) { + e.printStackTrace(); + } + return resulst; + } + public String requestAndAction (JBOTransaction tx) throws SQLException{ + Conn conn = new Conn(tx); + String sql = "select project_no,customername,certid,fact_money from BC_PAY_INFO_LOG where ID in(?)"; + List> requests = conn.executeQuery(sql, Ids); + if(!(requests.size()>0)){ + return "FAIL"; + } + return this.action(requests); + } + public String getIds() { + return Ids; + } + public void setIds(String ids) { + Ids = ids; + } +} diff --git a/src_cmb/paymentInfoUpdate/UpdateStatus.wsdl b/src_cmb/paymentInfoUpdate/UpdateStatus.wsdl new file mode 100644 index 000000000..1b3c3459c --- /dev/null +++ b/src_cmb/paymentInfoUpdate/UpdateStatus.wsdl @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src_tenwa/com/tenwa/flow/fund/actualpayment/SendPaymentInfoToBEICAI.java b/src_tenwa/com/tenwa/flow/fund/actualpayment/SendPaymentInfoToBEICAI.java new file mode 100644 index 000000000..b99f1b45c --- /dev/null +++ b/src_tenwa/com/tenwa/flow/fund/actualpayment/SendPaymentInfoToBEICAI.java @@ -0,0 +1,38 @@ +package com.tenwa.flow.fund.actualpayment; +import java.util.List; +import java.util.Map; +import paymentInfoUpdate.UpdatePaymentInfo; +import com.amarsoft.awe.util.Transaction; +import com.tenwa.flow.baseBussion.BaseBussiness; +import com.tenwa.reckon.util.Conn; +/** + * 发送付款信息到北汽财务(实际付款通过) + * @author + * + */ + +public class SendPaymentInfoToBEICAI extends BaseBussiness{ + public Object run(Transaction Sqlca) throws Exception{ + this.initBussinessParam(Sqlca.getTransaction()); + Conn conn = new Conn(Sqlca); + String sMessage=""; + String sFlowUnid = (String)this.getAttribute("ObjectNo"); + //查询出申请号,姓名,证件号,付款金额 + String sql = "SELECT lpi.project_no,ci.customername,ci.certid,lfi.fact_money FROM lc_fund_income lfi "+ + "LEFT JOIN LC_FUND_INCOME_TEMP lfit ON lfit.contract_id=lfi.contract_id "+ + "LEFT JOIN lb_union_lessee lul ON lul.contract_id=lfi.contract_id "+ + "LEFT JOIN customer_info ci ON ci.customerid=lul.customer_id "+ + "LEFT JOIN lb_project_info lpi ON lpi.id=lul.project_id "+ + "LEFT JOIN PRD_SPECIFIC_LIBRARY psl ON psl.productid=lpi.product_id "+ + "WHERE lfi.pay_status='have_paid' AND lfi.ebank_status='05' AND psl.operationType='BAIC_MOTOR' AND lfit.flowunid=?"; + //将查询结果封装成List + List> requests = conn.executeQuery(sql, sFlowUnid); + if(requests.size()>0){ + //执行发送并解析结果 + UpdatePaymentInfo upi = new UpdatePaymentInfo(); + upi.action(requests); + } + sMessage="true"; + return sMessage; + } +}