diff --git a/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistoryInformation.jsp b/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistoryInformation.jsp
new file mode 100644
index 000000000..50d0e6b21
--- /dev/null
+++ b/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistoryInformation.jsp
@@ -0,0 +1,40 @@
+<%@ page contentType="text/html; charset=GBK"%>
+<%@ include file="/IncludeBegin.jsp"%>
+<%
+ String flowunid = CurPage.getParameter("ObjectNo");
+ String plannumber=CurPage.getParameter("plannumber");
+ String planCName=CurPage.getParameter("planCName");
+ String calType=CurPage.getParameter("calType");
+ String IsHistory=CurPage.getParameter("IsHistory");
+ String RightType=CurPage.getParameter("RightType");
+ String productId=CurPage.getParameter("ProductId");
+ String projectId=CurPage.getParameter("ProjectId");
+ String khcertid = Sqlca.getString("select ci.certid from lb_union_lessee_temp lul left join customer_info ci on ci.customerid = lul.CUSTOMER_ID where lul.IS_MAIN = 'Y' and lul.flowunid='"+flowunid+"'");
+ String gtcertid = Sqlca.getString("select ci.certid from lb_union_lessee_temp lul left join customer_info ci on ci.customerid = lul.CUSTOMER_ID where lul.IS_MAIN = 'N' and lul.flowunid='"+flowunid+"'");
+ String dbcertid = Sqlca.getString("select CERTID from lb_guarantee_unit_temp where flowunid='"+flowunid+"' order by CERTID asc limit 1");
+ String dbcertid2 = Sqlca.getString("select CERTID from lb_guarantee_unit_temp where flowunid='"+flowunid+"' order by CERTID desc limit 1");
+ //客户传参
+ String params="flowunid="+flowunid+"&plannumber="+plannumber+"&planCName="+planCName+"&calType="+calType+"&IsHistory="+IsHistory+"&RightType="+RightType+"&ProductId="+productId+"&projectId="+projectId+"&certId="+khcertid+"&type=client";
+ //共同承租人传参
+ String params2="flowunid="+flowunid+"&plannumber="+plannumber+"&planCName="+planCName+"&calType="+calType+"&IsHistory="+IsHistory+"&RightType="+RightType+"&ProductId="+productId+"&projectId="+projectId+"&certId="+gtcertid+"&type=jointly";
+ //担保人1传参
+ String params3="flowunid="+flowunid+"&plannumber="+plannumber+"&planCName="+planCName+"&calType="+calType+"&IsHistory="+IsHistory+"&RightType="+RightType+"&ProductId="+productId+"&projectId="+projectId+"&certId="+dbcertid+"&type=guarantee";
+ //担保人2参数
+ String params4="flowunid="+flowunid+"&plannumber="+plannumber+"&planCName="+planCName+"&calType="+calType+"&IsHistory="+IsHistory+"&RightType="+RightType+"&ProductId="+productId+"&projectId="+projectId+"&certId="+dbcertid2+"&type=guarantee";
+ //参数:0.是否显示, 1.标题,2.URL,3,参数串, 4. Strip高度(默认600px),5. 是否有关闭按钮(默认无) 6. 是否缓存(默认是)
+// String userid = CurUser.getUserID();
+ String orgid = CurUser.getOrgID();
+ String sTabStrip[][] = {
+ {"true", "客户", "/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistory_Info_temp.jsp",params, "", "", "false"},
+ {"true", "共同承租人", "/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistory_Info_temp.jsp",params2, "", "", "false"},
+ {"true", "担保人", "/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistory_Info_temp.jsp",params3, "", "", "false"},
+ {"true", "担保人2", "/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistory_Info_temp.jsp",params4, "", "", "false"},
+ };
+%>
+<%@ include file="/Resources/CodeParts/Tab01.jsp"%>
+
+<%@ include file="/IncludeEnd.jsp"%>
\ No newline at end of file
diff --git a/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistory_Info_temp.jsp b/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistory_Info_temp.jsp
new file mode 100644
index 000000000..57251de50
--- /dev/null
+++ b/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/CustomerHistory_Info_temp.jsp
@@ -0,0 +1,37 @@
+<%@page import="com.itextpdf.text.log.SysoCounter"%>
+<%@ page contentType="text/html; charset=GBK"%>
+<%@include file="/Frame/resources/include/include_begin_info.jspf"%><%
+ /*
+ Author: undefined 2023-09-04
+ Content: 示例详情页面
+ History Log:
+ */
+
+ String flowunId=CurPage.getParameter("flowunid");//客户编号
+ String certId=CurPage.getParameter("certId");//客户证件号
+
+// String sPrevUrl = CurPage.getParameter("PrevUrl");
+// if(sPrevUrl == null) sPrevUrl = "";
+
+ String sTempletNo = "CustomerHistoryInfoTemp";//--模板号--
+ ASObjectModel doTemp = new ASObjectModel(sTempletNo);
+ ASObjectWindow dwTemp = new ASObjectWindow(CurPage, doTemp,request);
+ dwTemp.setPageSize(10);
+ dwTemp.Style = "2";
+ dwTemp.ReadOnly = "1";
+ dwTemp.genHTMLObjectWindow(flowunId+","+certId);
+
+ String compClientID = request.getParameter("CompClientID");
+
+ dwTemp.replaceColumn("loaned", "", CurPage.getObjectWindowOutput());
+ dwTemp.replaceColumn("outstand", "", CurPage.getObjectWindowOutput());
+
+ String sButtons[][] = {
+
+ };
+
+%><%@ include file="/Frame/resources/include/ui/include_info.jspf"%>
+
+<%@ include file="/Frame/resources/include/include_end.jspf"%>
diff --git a/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/LoanedInfo.jsp b/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/LoanedInfo.jsp
new file mode 100644
index 000000000..dcd545c5f
--- /dev/null
+++ b/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/LoanedInfo.jsp
@@ -0,0 +1,35 @@
+<%@page import="com.tenwa.comm.dataRightmanager.DataRightManager"%>
+<%@ page contentType="text/html; charset=GBK"%>
+<%@ include file="/Frame/resources/include/include_begin_list.jspf"%>
+<%@include file="/Tenwa/Core/FlowManager/BaseFunction/BaseFlowListFunction.jspf" %>
+<%
+
+ String certId = CurPage.getParameter("certId");
+
+ ASObjectModel doTemp = new ASObjectModel("LoanedList");
+ doTemp.appendJboWhere(" and O.CONTRACT_STATUS >= 31 and O.CONTRACT_STATUS <> '104' ");
+ ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request);
+ dwTemp.Style="1";//--设置为Grid风格--
+ dwTemp.ReadOnly = "1";//只读模式
+ dwTemp.setPageSize(10);
+ dwTemp.genHTMLObjectWindow(certId);
+ String sButtons[][] = {
+
+ };
+%><%@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/Customer/Lessee/Comm/CustomerHistory/OutstandInfo.jsp b/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/OutstandInfo.jsp
new file mode 100644
index 000000000..bc184bf9c
--- /dev/null
+++ b/WebContent/Tenwa/Customer/Lessee/Comm/CustomerHistory/OutstandInfo.jsp
@@ -0,0 +1,35 @@
+<%@page import="com.tenwa.comm.dataRightmanager.DataRightManager"%>
+<%@ page contentType="text/html; charset=GBK"%>
+<%@ include file="/Frame/resources/include/include_begin_list.jspf"%>
+<%@include file="/Tenwa/Core/FlowManager/BaseFunction/BaseFlowListFunction.jspf" %>
+<%
+
+ String certId = CurPage.getParameter("certId");
+
+ ASObjectModel doTemp = new ASObjectModel("LoanedList");
+ doTemp.appendJboWhere(" and O.CONTRACT_STATUS < 31 ");
+ ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request);
+ dwTemp.Style="1";//--设置为Grid风格--
+ dwTemp.ReadOnly = "1";//只读模式
+ dwTemp.setPageSize(10);
+ dwTemp.genHTMLObjectWindow(certId);
+ String sButtons[][] = {
+
+ };
+%><%@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/WEB-INF/etc/jbo/jbo_comm.xml b/WebContent/WEB-INF/etc/jbo/jbo_comm.xml
index aaf3a016f..8e631b760 100644
--- a/WebContent/WEB-INF/etc/jbo/jbo_comm.xml
+++ b/WebContent/WEB-INF/etc/jbo/jbo_comm.xml
@@ -927,6 +927,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/InsertCustomerHistoryInfo.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/InsertCustomerHistoryInfo.java
new file mode 100644
index 000000000..31a282fd9
--- /dev/null
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/InsertCustomerHistoryInfo.java
@@ -0,0 +1,366 @@
+package com.tenwa.voucher.CreateVoucherProcess;
+
+import com.amarsoft.are.jbo.JBOFactory;
+import com.amarsoft.are.jbo.JBOTransaction;
+import com.amarsoft.awe.util.SqlObject;
+import com.amarsoft.awe.util.Transaction;
+import com.amarsoft.context.ASUser;
+import com.tenwa.comm.util.date.DateAssistant;
+import com.tenwa.reckon.util.Conn;
+
+import java.math.BigDecimal;
+import java.math.BigInteger;
+import java.util.List;
+import java.util.Map;
+
+public class InsertCustomerHistoryInfo {
+
+ private String flowunid;
+
+ public String getFlowunid() {
+ return flowunid;
+ }
+
+
+ public void setFlowunid(String flowunid) {
+ this.flowunid = flowunid;
+ }
+
+ //获取客户历史信息
+ public void InsertCustomerHistoryInfoTemp(JBOTransaction tx) throws Exception{
+ try {
+ tx= JBOFactory.createJBOTransaction();
+ Conn conn = new Conn(tx);
+ String flowunid = this.flowunid;
+ //获取客户基本信息
+ String sql = "select ci.customerid,ci.customername,ci.certtype,ci.certid,(case when lul.IS_MAIN = 'Y' then '主承租人' else '共同承租人' end) as customertype,ci.customer_num,lul.FLOWUNID,lul.project_id from customer_info ci left join lb_union_lessee_temp lul on lul.customer_id = ci.customerid where lul.FLOWUNID = '" + flowunid + "' \n" +
+ "union \n" +
+ "select lgu.ASSUROR as customerid,lgu.FULLNAME as customername,lgu.CERTTYPE,lgu.certid,'担保人' as customertype,'' as customer_num,lgu.FLOWUNID,lgu.project_id from lb_guarantee_unit_temp lgu where lgu.FLOWUNID = '" + flowunid + "'";
+ List