From 3cde854740346d4caefc86875289a70a26f0f91d Mon Sep 17 00:00:00 2001 From: tenwaPC Date: Mon, 15 Jul 2019 17:40:46 +0800 Subject: [PATCH 01/20] =?UTF-8?q?=E9=82=AE=E5=AF=84=E8=B5=84=E6=96=99?= =?UTF-8?q?=E5=BD=92=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Tenwa/Apzl/FileUpload/ApproveDetail.jsp | 36 +++ .../FileUpload/CheckApplyPassContract.jsp | 12 + .../Tenwa/Apzl/FileUpload/DocMailListMain.jsp | 50 ++++ .../Apzl/FileUpload/GetDocMailNumber.jsp | 6 + .../Apzl/FileUpload/LBPlaceFileTempInfo.jsp | 61 ++++ .../LBnotAllMailHndHandoverList.jsp | 56 ++++ .../LBnotAllMailHndHandoverTempList.jsp | 135 +++++++++ .../LmApprovaloppinionDocTempInfo.jsp | 36 +++ .../LmApprovaloppinionDocTempList.jsp | 44 +++ .../FileUpload/MortgageFileMailApplyList.jsp | 34 +++ .../Tenwa/Apzl/FileUpload/PayDocMailList.jsp | 281 ++++++++++++++++++ WebContent/WEB-INF/etc/jbo/jbo_doc.xml | 158 ++++++++++ .../tenwa/doc/action/DocListInitAction.java | 158 ++++++++++ .../com/tenwa/doc/cache/DocListCache.java | 20 +- src_core/com/tenwa/util/SerialNumberUtil.java | 3 + .../project/businessapply/DocMailAction.java | 204 +++++++++++++ .../commbusiness/LBFileMailTempToFormal.java | 58 ++++ 17 files changed, 1351 insertions(+), 1 deletion(-) create mode 100644 WebContent/Tenwa/Apzl/FileUpload/ApproveDetail.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/CheckApplyPassContract.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/DocMailListMain.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/GetDocMailNumber.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/LBPlaceFileTempInfo.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverList.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverTempList.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/LmApprovaloppinionDocTempInfo.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/LmApprovaloppinionDocTempList.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/MortgageFileMailApplyList.jsp create mode 100644 WebContent/Tenwa/Apzl/FileUpload/PayDocMailList.jsp create mode 100644 src_tenwa/com/tenwa/lease/flow/project/businessapply/DocMailAction.java create mode 100644 src_tenwa/com/tenwa/lease/flow/project/commbusiness/LBFileMailTempToFormal.java diff --git a/WebContent/Tenwa/Apzl/FileUpload/ApproveDetail.jsp b/WebContent/Tenwa/Apzl/FileUpload/ApproveDetail.jsp new file mode 100644 index 000000000..54ff90ed2 --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/ApproveDetail.jsp @@ -0,0 +1,36 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_info.jspf"%><% + /* + Author: undefined 2018-06-27 + Content: 示例详情页面 + History Log: + */ + String sPrevUrl = CurPage.getParameter("PrevUrl"); + if(sPrevUrl == null) sPrevUrl = ""; + + String sTempletNo = "ERPEditInfo";//--模板号-- + ASObjectModel doTemp = new ASObjectModel(sTempletNo); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage, doTemp,request); + dwTemp.Style = "2";//freeform + //dwTemp.ReadOnly = "-2";//只读模式 + dwTemp.genHTMLObjectWindow(CurPage.getParameter("SerialNo")); + + String sButtons[][] = { + {"true","All","Button","保存","保存所有修改","recordsave()","","","",""}, + {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/Tenwa/Apzl/FileUpload/CheckApplyPassContract.jsp b/WebContent/Tenwa/Apzl/FileUpload/CheckApplyPassContract.jsp new file mode 100644 index 000000000..192c01975 --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/CheckApplyPassContract.jsp @@ -0,0 +1,12 @@ +<%@page import="jbo.app.tenwa.calc.LC_FUND_INCOME"%> +<%@page import="jbo.app.tenwa.calc.LC_FUND_INCOME_TEMP"%> +<%@page import="jbo.com.tenwa.entity.comm.flow.FLOW_BUSSINESS_OBJECT"%> +<%@page import="com.amarsoft.are.jbo.BizObject"%> +<%@page import="com.amarsoft.are.jbo.JBOFactory"%> +<%@page import="com.amarsoft.are.jbo.JBOTransaction"%> +<%@page import="java.math.BigDecimal"%> +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/IncludeBeginMDAJAX.jsp"%><% + String result = Sqlca.getString(new SqlObject("select case when count(1)>0 then 'true' else 'false' end res from lb_contract_info lci left join lb_file_mailarchiving_info lfmi on lfmi.CONTRACT_ID = lci.ID where lfmi.ALLHANDOVERSTATUS is null or lfmi.ALLHANDOVERSTATUS = 'part'")); + out.println(result); +%><%@ include file="/IncludeEndAJAX.jsp"%> \ No newline at end of file diff --git a/WebContent/Tenwa/Apzl/FileUpload/DocMailListMain.jsp b/WebContent/Tenwa/Apzl/FileUpload/DocMailListMain.jsp new file mode 100644 index 000000000..64d6d35ba --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/DocMailListMain.jsp @@ -0,0 +1,50 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin.jspf"%> +<%@ page import="com.amarsoft.app.lc.workflow.action.GetFlowAction" %> +<%@ page import="java.util.List" %> +<%@ page import="java.util.Map" %> +<%@ page import="com.amarsoft.app.util.ProductParamUtil" %> +<% + /* + 页面说明:隐藏左侧区域的Main页面 + */ + String PG_TITLE = ""; // 浏览器窗口标题 PG_TITLE + String PG_CONTENT_TITLE = ""; //默认的内容区标题 + String PG_CONTNET_TEXT = "";//默认的内容区文字 + String PG_LEFT_WIDTH = "0";//默认的treeview宽度 + + + String RightType= CurPage.getParameter("RightType"); + String sFlowunid = CurPage.getParameter("FlowUnid"); + String sFlowNo= CurPage.getParameter("FlowNo"); + String PhaseNo= CurPage.getParameter("PhaseNo"); + sFlowNo = "MortgageFileMailFlow"; + BizObject flow=GetFlowAction.getFlowBussinessObject(sFlowunid); + String product=CurPage.getParameter("productId"); + List list=ProductParamUtil.getProductDocInfo(product,"PRD0412"); + String type=""; + String docList=""; + for(int i=0;i map=(Map)list.get(i); + if(sFlowNo.equals(map.get("FLOW_INFO").toString())){ + type=map.get("TYPE").toString(); + if("SingleRow".equals(type)){ + docList=map.get("DOCLIST").toString(); + }else{ + List l=(List)map.get("DOCCONFIG"); + docList=l.toString(); + } + } + } +%> +<%@ include file="/Frame/resources/include/include_main.jspf"%> + +<%@ include file="/Frame/resources/include/include_end.jspf"%> \ No newline at end of file diff --git a/WebContent/Tenwa/Apzl/FileUpload/GetDocMailNumber.jsp b/WebContent/Tenwa/Apzl/FileUpload/GetDocMailNumber.jsp new file mode 100644 index 000000000..4c88bac5a --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/GetDocMailNumber.jsp @@ -0,0 +1,6 @@ +<%@page import="com.tenwa.util.SerialNumberUtil"%> +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/IncludeBeginMDAJAX.jsp"%><% + String serialNumber = SerialNumberUtil.getDocMailNumber(Sqlca); + out.println(serialNumber); +%><%@ include file="/IncludeEndAJAX.jsp"%> \ No newline at end of file diff --git a/WebContent/Tenwa/Apzl/FileUpload/LBPlaceFileTempInfo.jsp b/WebContent/Tenwa/Apzl/FileUpload/LBPlaceFileTempInfo.jsp new file mode 100644 index 000000000..4a7737999 --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/LBPlaceFileTempInfo.jsp @@ -0,0 +1,61 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ page import="com.amarsoft.app.lc.workflow.action.GetFlowAction" %> +<%@ page import="java.util.List" %> +<%@ page import="java.util.Map" %> +<%@ page import="com.amarsoft.app.util.ProductParamUtil" %> +<%@ include file="/Frame/resources/include/include_begin_info.jspf"%><% + /* + Author: undefined 2019-07-15 + Content: 示例详情页面 + History Log: + */ + String RightType= CurPage.getParameter("RightType"); + String sFlowunid = CurPage.getParameter("FlowUnid"); + String sFlowNo= CurPage.getParameter("FlowNo"); + String PhaseNo= CurPage.getParameter("PhaseNo"); + sFlowNo = "MortgageFileMailFlow"; + BizObject flow=GetFlowAction.getFlowBussinessObject(sFlowunid); + String product=CurPage.getParameter("productId"); + List list=ProductParamUtil.getProductDocInfo(product,"PRD0412"); + String type=""; + String docList=""; + for(int i=0;i map=(Map)list.get(i); + if(sFlowNo.equals(map.get("FLOW_INFO").toString())){ + type=map.get("TYPE").toString(); + if("SingleRow".equals(type)){ + docList=map.get("DOCLIST").toString(); + }else{ + List l=(List)map.get("DOCCONFIG"); + docList=l.toString(); + } + } + } + String ObjectNo = CurPage.getParameter("ObjectNo"); + String contract_id = CurPage.getParameter("contract_id"); + String compClientID = CurPage.getParameter("CompClientID"); + String id = CurPage.getParameter("id"); + System.out.println(id); + String sTempletNo = "LBPlaceFileTempInfo";//--模板号-- + ASObjectModel doTemp = new ASObjectModel(sTempletNo); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage, doTemp,request); + dwTemp.Style = "2";//freeform + //dwTemp.ReadOnly = "-2";//只读模式 + dwTemp.genHTMLObjectWindow(CurPage.getParameter("id")); + dwTemp.replaceColumn("placefile", "", CurPage.getObjectWindowOutput()); + dwTemp.replaceColumn("opinion", "", CurPage.getObjectWindowOutput()); + + String sButtons[][] = { + {"true","All","Button","保存","保存所有修改","as_save(0,'frame_list.window.saveRecordForApprove()')","","","",""}, + {"false","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/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverList.jsp b/WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverList.jsp new file mode 100644 index 000000000..325c75922 --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverList.jsp @@ -0,0 +1,56 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_list.jspf"%><% + /* + Author: undefined 2019-07-11 + Content: + History Log: + */ + ASUser ASuser = CurPage.getUser(); + String orgid = ASuser.getOrgID(); + ASObjectModel doTemp = new ASObjectModel("LBnotAllMailHndHandoverList"); + String PhaseNo = CurPage.getParameter("PhaseNo"); + if("0010".equals(PhaseNo)){ + doTemp.setVisible("ALLSTATUS", false); + doTemp.setVisible("ALLHANDOVERSTATUS", false); + } + ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request); + dwTemp.Style="1"; //--设置为Grid风格-- + dwTemp.MultiSelect = true; //多选 + dwTemp.ReadOnly = "1"; //只读模式 + dwTemp.setPageSize(10); + dwTemp.genHTMLObjectWindow(orgid); + + //0、是否展示 1、 权限控制 2、 展示类型 3、按钮显示名称 4、按钮解释文字 5、按钮触发事件代码 6、 7、 8、 9、图标,CSS层叠样式 10、风格 + String sButtons[][] = { + {"true","All","Button","添加到本次邮寄列表","添加到本次邮寄列表","newRecord()","","","","btn_icon_add",""}, + {"false","","Button","邮寄详情","邮寄详情","viewAndEdit()","","","","btn_icon_detail",""}, + {"false","","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/Apzl/FileUpload/LBnotAllMailHndHandoverTempList.jsp b/WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverTempList.jsp new file mode 100644 index 000000000..41754bdf6 --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverTempList.jsp @@ -0,0 +1,135 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_list.jspf"%><% + /* + Author: undefined 2019-07-11 + Content: + History Log: + */ + String flowunid = CurPage.getParameter("ObjectNo"); + String PhaseNo = CurPage.getParameter("PhaseNo"); + ASObjectModel doTemp = new ASObjectModel("LBnotAllMailHndHandoverTempList"); + if("0010".equals(PhaseNo)){ + doTemp.setVisible("ALLHANDOVERSTATUS", false); + doTemp.setVisible("ARCHIVING_CABINET_NO", false); + doTemp.setVisible("ARCHIVING_TIME", false); + doTemp.setVisible("ARCHIVING_PERSON", false); + } + ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request); + dwTemp.Style="1"; + //--设置为Grid风格-- + if("0010".equals(PhaseNo)){ + dwTemp.MultiSelect = true; //多选 + } + dwTemp.ReadOnly = "1"; //只读模式 + dwTemp.setPageSize(10); + dwTemp.genHTMLObjectWindow(flowunid); + + //0、是否展示 1、 权限控制 2、 展示类型 3、按钮显示名称 4、按钮解释文字 5、按钮触发事件代码 6、 7、 8、 9、图标,CSS层叠样式 10、风格 + String sButtons[][] = { + {"false","All","Button","新增","新增","newRecord()","","","","btn_icon_add",""}, + {"0010".equals(PhaseNo)?"true":"false","","Button","配置快递信息","配置快递信息","selectApproveDetail()","","","","btn_icon_up",""}, + {"0010".equals(PhaseNo)?"true":"false","","Button","删除","删除","deleteRecord()","","","","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/Apzl/FileUpload/LmApprovaloppinionDocTempInfo.jsp b/WebContent/Tenwa/Apzl/FileUpload/LmApprovaloppinionDocTempInfo.jsp new file mode 100644 index 000000000..1630ed025 --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/LmApprovaloppinionDocTempInfo.jsp @@ -0,0 +1,36 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_info.jspf"%><% + /* + Author: undefined 2019-07-15 + Content: 示例详情页面 + History Log: + */ + String sPrevUrl = CurPage.getParameter("PrevUrl"); + if(sPrevUrl == null) sPrevUrl = ""; + String contract_id = CurPage.getParameter("contract_id"); + String flowunid = CurPage.getParameter("ObjectNo"); + String sTempletNo = "LmApprovaloppinionDocTempInfo";//--模板号-- + ASObjectModel doTemp = new ASObjectModel(sTempletNo); + doTemp.setDefaultValue("contract_id", contract_id); + doTemp.setDefaultValue("flowunid", flowunid); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage, doTemp,request); + dwTemp.Style = "2";//freeform + //dwTemp.ReadOnly = "-2";//只读模式 + dwTemp.genHTMLObjectWindow(CurPage.getParameter("SerialNo")); + + String sButtons[][] = { + {CurPage.getParameter("SerialNo") == null?"true":"false","All","Button","保存","保存所有修改","as_save(0,'doReturn()')","","","",""}, + {CurPage.getParameter("SerialNo") == null?"false":"false","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/Tenwa/Apzl/FileUpload/LmApprovaloppinionDocTempList.jsp b/WebContent/Tenwa/Apzl/FileUpload/LmApprovaloppinionDocTempList.jsp new file mode 100644 index 000000000..60f0911f7 --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/LmApprovaloppinionDocTempList.jsp @@ -0,0 +1,44 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_list.jspf"%><% + /* + Author: undefined 2019-07-15 + Content: + History Log: + */ + String contract_id = CurPage.getParameter("contract_id"); + String flowunid = CurPage.getParameter("ObjectNo"); + String PhaseNo = CurPage.getParameter("PhaseNo"); + ASObjectModel doTemp = new ASObjectModel("LmApprovaloppinionDocTempList"); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request); + dwTemp.Style="1"; //--设置为Grid风格-- + dwTemp.ReadOnly = "1"; //只读模式 + dwTemp.setPageSize(10); + dwTemp.genHTMLObjectWindow(contract_id+","+flowunid); + + //0、是否展示 1、 权限控制 2、 展示类型 3、按钮显示名称 4、按钮解释文字 5、按钮触发事件代码 6、 7、 8、 9、图标,CSS层叠样式 10、风格 + String sButtons[][] = { + {"0010".equals(PhaseNo)?"false":"true","All","Button","新增","新增","newRecord()","","","","btn_icon_add",""}, + {"true","","Button","详情","详情","viewAndEdit()","","","","btn_icon_detail",""}, + {"0010".equals(PhaseNo)?"false":"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/Apzl/FileUpload/MortgageFileMailApplyList.jsp b/WebContent/Tenwa/Apzl/FileUpload/MortgageFileMailApplyList.jsp new file mode 100644 index 000000000..450119268 --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/MortgageFileMailApplyList.jsp @@ -0,0 +1,34 @@ +<%@page import="com.tenwa.util.SerialNumberUtil"%> +<%@ page contentType="text/html; charset=GBK"%> + <%@ include file="/Tenwa/Core/FlowManager/BaseFlowList/BaseFlowApplyListStart.jspf"%> +<%/*~BEGIN~可编辑区~[Editable=false;CodeAreaID=List06;Describe=自定义函数;]~*/%> + + <%@ include file="/Tenwa/Core/FlowManager/BaseFlowList/BaseFlowApplyListEnd.jspf"%> diff --git a/WebContent/Tenwa/Apzl/FileUpload/PayDocMailList.jsp b/WebContent/Tenwa/Apzl/FileUpload/PayDocMailList.jsp new file mode 100644 index 000000000..5a9f284d7 --- /dev/null +++ b/WebContent/Tenwa/Apzl/FileUpload/PayDocMailList.jsp @@ -0,0 +1,281 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_simplelist.jspf"%> +<%@ page import="com.tenwa.doc.action.DocListInitAction" %> +<%@ page import="com.amarsoft.app.lc.workflow.action.GetFlowAction" %> +<% + /* + Author: undefined 2016-09-01 + Content: + History Log: + */ + + String flowunid=CurPage.getParameter("FlowUnid"); + String CustomerType=CurPage.getParameter("CustomerType"); + String contract_id=CurPage.getParameter("contract_id"); + String carAttributes=CurPage.getParameter("carAttributes");//获取车类型 + if(flowunid==""||flowunid==null){ + flowunid="flowunid"; + } + + BizObject flow=GetFlowAction.getFlowBussinessObject(flowunid);//流程对象 + + String sObjectType = CurPage.getParameter("FlowNo");//流程类型 + + + String ishistory=CurPage.getParameter("IsHistory"); + String nodeNo=CurPage.getParameter("NodeNo"); + String RightType= CurPage.getParameter("RightType"); + String username=CurUser.getUserName(); + String sTempletNo=CurPage.getParameter("TempletNo"); + String phaseNo = CurPage.getParameter("PhaseNo"); + String apply = CurPage.getParameter("ApplyType"); + + String docClassItemno=CurPage.getParameter("docList"); + + String[] itemnos=docClassItemno.split(","); + String s=""; + for(int i=0;i0){ + s=s.substring(0, s.length()-1); + } + String compClientID = request.getParameter("CompClientID"); + Map docParam=new HashMap(); + Map other=new HashMap(); + other.put("carAttributes", carAttributes); + other.put("CustomerType", CustomerType); + docParam.put("ObjectType",sObjectType); + docParam.put("proj_id", flow.getAttribute("proj_id").getString()); + docParam.put("contract_id", contract_id); + docParam.put("flow_unid", flowunid); + docParam.put("inputtime", StringFunction.getTodayNow()); + docParam.put("inputuserid", CurPage.getUserId()); + docParam.put("inputorgid", CurPage.getUser().getOrgID()); + + //判断是否存在,不存在就从配置表倒到临时表 + DocListInitAction.initDocListForMail(docParam,other,docClassItemno,CurConfig,Sqlca); + ASObjectModel doTemp = new ASObjectModel("FlowPayMailDocList"); + if("0010".equals(CurPage.getParameter("PhaseNo"))){ + doTemp.setVisible("HANDOVERSTATUS", false); + } + if("0020".equals(CurPage.getParameter("PhaseNo"))){ + doTemp.setVisible("operation", false); + } + doTemp.appendJboWhere("and rela.contract_id=:contractid and rela.OBJECTTYPE ='MortgageFileMailFlow'"); + doTemp.appendJboWhere(" and O.doc_Class_Itemno in ("+s+") and lmdt.flowunid ='"+flowunid+"'"); + doTemp.setLockCount(2); + if((null!=RightType&&RightType.equals("ReadOnly"))||(null!=ishistory&&ishistory.equals("true"))){ + doTemp.setVisible("operation", false); + } + ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request); + dwTemp.Style="1"; //--设置为Grid风格-- + dwTemp.ReadOnly = "0"; + dwTemp.setPageSize(500); + if((null!=RightType&&RightType.equals("ReadOnly"))||(null!=ishistory&&ishistory.equals("true"))){ + dwTemp.ReadOnly = "1";//只读模式 + RightType="ReadOnly"; + isShowButton=false; + }else{ + isShowButton=true; + } + dwTemp.genHTMLObjectWindow(contract_id); + + //0、是否展示 1、 权限控制 2、 展示类型 3、按钮显示名称 4、按钮解释文字 5、按钮触发事件代码 6、 7、 8、 9、图标,CSS层叠样式 10、风格 + String sButtons[][] =null; + + sButtons=new String[][]{ + {"0010".equals(CurPage.getParameter("PhaseNo"))?"true":"false","","Button","保存","保存所有修改","0010".equals(CurPage.getParameter("PhaseNo"))?"saveRecord()":"saveRecordForApprove()","","","",""}, + }; + +%> + +<%@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_doc.xml b/WebContent/WEB-INF/etc/jbo/jbo_doc.xml index ba663f8af..b5c35eb7f 100644 --- a/WebContent/WEB-INF/etc/jbo/jbo_doc.xml +++ b/WebContent/WEB-INF/etc/jbo/jbo_doc.xml @@ -213,5 +213,163 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src_core/com/tenwa/doc/action/DocListInitAction.java b/src_core/com/tenwa/doc/action/DocListInitAction.java index 0b17d7ed0..afcd0a2f8 100644 --- a/src_core/com/tenwa/doc/action/DocListInitAction.java +++ b/src_core/com/tenwa/doc/action/DocListInitAction.java @@ -7,17 +7,25 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Properties; import java.util.UUID; import com.amarsoft.awe.Configure; +import com.amarsoft.awe.util.Transaction; +import jbo.app.tenwa.customer.LB_CAR_CREDIT_PERSONAL_INFO; +import jbo.app.tenwa.customer.LB_CAR_CREDIT_PERSONAL_INFO_TEMP; +import jbo.app.tenwa.customer.LB_CAR_CREDIT_RISKITEM; +import jbo.app.tenwa.customer.LB_CAR_CREDIT_RISKITEM_TEMP; import jbo.app.tenwa.doc.LB_DOCATTRIBUTE; import jbo.app.tenwa.doc.LB_DOCCONFIG; import jbo.app.tenwa.doc.LB_DOCLIBRARY; import jbo.app.tenwa.doc.LB_DOCRELATIVE; +import jbo.app.tenwa.doc.LM_MAILONLINE_DOC; +import jbo.app.tenwa.doc.LM_MAILONLINE_DOC_TEMP; import jbo.com.tenwa.entity.comm.flow.FLOW_BUSSINESS_OBJECT; import com.amarsoft.are.ARE; @@ -25,6 +33,10 @@ import com.amarsoft.are.jbo.BizObject; import com.amarsoft.are.jbo.BizObjectManager; import com.amarsoft.are.jbo.JBOException; import com.amarsoft.are.jbo.JBOFactory; +import com.amarsoft.are.jbo.JBOTransaction; +import com.amarsoft.are.util.StringFunction; +import com.amarsoft.dict.als.cache.CacheLoaderFactory; +import com.base.util.StringUtil; import com.tenwa.comm.util.jboutil.DataOperatorUtil; import com.tenwa.officetempalte.util.FileOperatorUtil; @@ -149,7 +161,153 @@ public class DocListInitAction { } } + @SuppressWarnings("unchecked") + public static void initDocListForMail(Map param, + Map other, String docno, Configure curConfig,JBOTransaction Sqlca) + throws Exception { + String CustomerType = other.get("CustomerType"); + String[] itemnos = docno.split(","); + String s = ""; + for (int i = 0; i < itemnos.length; i++) { + if ("03".equals(CustomerType)){ + if (itemnos[i].startsWith("006")) + continue; + else + ARE.getLog().debug(itemnos[i]); + }else if ("01".equals(CustomerType)){ + if (itemnos[i].startsWith("003")) + continue; + else + ARE.getLog().debug(itemnos[i]); + } + s += "'" + itemnos[i] + "',"; + } + ARE.getLog().info("s:"+s); + if (s.length() > 0) { + s = s.substring(0, s.length() - 1); + } + docno = s; + BizObjectManager relaBm = JBOFactory + .getBizObjectManager(LB_DOCRELATIVE.CLASS_NAME); + BizObjectManager libBm = JBOFactory + .getBizObjectManager(LB_DOCLIBRARY.CLASS_NAME); + BizObjectManager configBm = JBOFactory + .getBizObjectManager(LB_DOCCONFIG.CLASS_NAME); + if ("".equals(docno)) { + return; + } + String sql = getDocSQLForMail(param, docno); + BizObject rela = relaBm.createQuery(sql).getSingleResult(true); + String relativeid = ""; + String libid = ""; + if (rela == null) { + rela = relaBm.newObject(); + rela.setAttributesValue(param); + relaBm.saveObject(rela); + } + relativeid = rela.getAttribute("id").getString(); + for (int i = 0; i < 10; i++) + ARE.getLog().info("relativeid:"+relativeid); + List configList = configBm.createQuery( + "doc_Class_Itemno in (" + docno + ")").getResultList(false); + ARE.getLog().info("size:"+configList.size()); + + + for (BizObject config : configList) { + BizObject lib = libBm + .createQuery("Relative_Id=:relaid and config_id=:configid") + .setParameter("relaid", relativeid) + .setParameter("configid", + config.getAttribute("id").getString()) + .getSingleResult(true); + if (lib == null) { + lib = libBm.newObject(); + DataOperatorUtil.coptyJBOPropertyNoKey(config, lib); + lib.setAttributeValue("relative_id", relativeid); + lib.setAttributeValue("BUSINESS_CHECK", "DocCheck_2"); + lib.setAttributeValue("REVIEW_CHECK", "DocCheck_2"); + lib.setAttributeValue("config_id", config.getAttribute("id") + .getString()); + lib.setAttributeValue("IS_INIT", "1"); + if ("used_car".equals(other.get("carAttributes")) + && "车辆照片".equals(lib.getAttribute("DOC_NAME") + .getString())) { + lib.setAttributeValue("DOC_NATURE", "01"); + } + libBm.saveObject(lib); + } else { + lib.setAttributeValue("IS_INIT", "1"); + libBm.saveObject(lib); + } + libid = lib.getAttribute("id").getString(); + //初始化邮寄信息详情表 + Transaction tx=null; + tx= Transaction.createTransaction(CacheLoaderFactory.getDataSource()); + BizObjectManager lmdtBm = JBOFactory.getBizObjectManager(LM_MAILONLINE_DOC_TEMP.CLASS_NAME); + BizObjectManager lmdBm = JBOFactory.getBizObjectManager(LM_MAILONLINE_DOC.CLASS_NAME); + BizObject lmdBo = lmdBm.createQuery("LIBRARYID='"+libid+"'").getSingleResult(false); + BizObject lmdtBo = lmdtBm.createQuery("LIBRARYID='"+libid+"' and flowunid = '"+param.get("flow_unid")+"'").getSingleResult(false); + if(lmdtBo==null){ + if(lmdBo!=null){ + Map fromCondtion = new HashMap(); + MapotherProperty=new HashMap(); + fromCondtion.put("LIBRARYID", libid); + otherProperty.put("flowunid",param.get("flow_unid")); + DataOperatorUtil.copySingleJBO(LM_MAILONLINE_DOC.CLASS_NAME, fromCondtion, LM_MAILONLINE_DOC_TEMP.CLASS_NAME, null, otherProperty, tx); + }else{ + BizObject newbo = lmdtBm.newObject(); + newbo.setAttributeValue("CONTRACT_ID", param.get("contract_id")); + newbo.setAttributeValue("LIBRARYID", libid); + newbo.setAttributeValue("MAILSTATUS","none"); + newbo.setAttributeValue("HANDOVERSTATUS","none"); + newbo.setAttributeValue("FLOWUNID",param.get("flow_unid")); + newbo.setAttributeValue("INPUTUSERID",param.get("inputuserid")); + newbo.setAttributeValue("INPUTORGID",param.get("inputorgid")); + newbo.setAttributeValue("INPUTTIME",StringFunction.getTodayNow()); + lmdtBm.saveObject(newbo); + } + } + + if(tx != null){ + tx.commit(); + tx.disConnect(); + } + + sql = getRelaSQL(param); + if (sql.length() == 0) { + continue; + } else { + // 关联其它文件清单 + String[] docRelas = config.getAttribute("DOC_RELATION_ID") + .getString().split(","); + Boolean flag = false; + for (int i = 0; i < docRelas.length; i++) { + List libList = libBm.createQuery(sql) + .setParameter("configid", docRelas[i]) + .getResultList(false); + for (BizObject li : libList) { + Boolean flag2 = copyDocAttr(li, libid, + curConfig.getConfigure("FileSaveMode")); + if (flag2) { + flag = true; + } + } + } + if (flag) { + lib.setAttributeValue("BUSINESS_CHECK", "DocCheck_0"); + libBm.saveObject(lib); + } + } + } + + } + public static String getDocSQLForMail(Map param, String docno) + throws Exception { + String sql = "select id from O left join jbo.app.tenwa.doc.LB_DOCLIBRARY lib on O.id=lib.Relative_Id where lib.doc_Class_Itemno in (" + + docno + ") and contract_id='"+param.get("contract_id")+"' and OBJECTTYPE = 'MortgageFileMailFlow'"; + return sql; + } /** * 获取关联的sql * diff --git a/src_core/com/tenwa/doc/cache/DocListCache.java b/src_core/com/tenwa/doc/cache/DocListCache.java index 3d39d5a8e..aab3ec5fd 100644 --- a/src_core/com/tenwa/doc/cache/DocListCache.java +++ b/src_core/com/tenwa/doc/cache/DocListCache.java @@ -1,10 +1,14 @@ package com.tenwa.doc.cache; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; import java.util.List; import com.amarsoft.are.jbo.BizObject; import com.amarsoft.are.jbo.JBOException; import com.amarsoft.are.jbo.JBOFactory; +import com.amarsoft.are.util.StringFunction; import com.amarsoft.dict.als.manage.NameManager; public class DocListCache { @@ -186,5 +190,19 @@ public static String getSignFile(String id) throws Exception{ return sb.toString(); } - + public static String getfundday(String startdate){ + SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy/MM/dd"); + Date startDate = null; + Date endDate = null; + try { + startDate = format.parse(StringFunction.getTodayNow()); + endDate = format.parse(startdate); + } catch (ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + return "null"; + } + long day=(startDate.getTime()-endDate.getTime())/(24*60*60*1000); + return day+""; + } } diff --git a/src_core/com/tenwa/util/SerialNumberUtil.java b/src_core/com/tenwa/util/SerialNumberUtil.java index 468ebedce..3f0c52fb6 100644 --- a/src_core/com/tenwa/util/SerialNumberUtil.java +++ b/src_core/com/tenwa/util/SerialNumberUtil.java @@ -39,6 +39,9 @@ public class SerialNumberUtil { public static synchronized String getActualPayNumber(JBOTransaction tx) throws Exception{ return SerialNumberUtil.getSerialNumber("PAY{year}{month}{day}{maxOrderNumber}",4,null, "实际放款号", null, tx); } + public static synchronized String getDocMailNumber(JBOTransaction tx) throws Exception{ + return SerialNumberUtil.getSerialNumber("DocMail{year}{month}{day}{maxOrderNumber}",4,null, "归档邮寄编号", null, tx); + } public static synchronized String getEbankSerialNumber(String orgId,JBOTransaction tx) throws Exception{ return SerialNumberUtil.getSerialNumber("E-{year}{month}{maxOrderNumber}",3,null, "网银编号"+orgId, null, tx); } diff --git a/src_tenwa/com/tenwa/lease/flow/project/businessapply/DocMailAction.java b/src_tenwa/com/tenwa/lease/flow/project/businessapply/DocMailAction.java new file mode 100644 index 000000000..ce5561e94 --- /dev/null +++ b/src_tenwa/com/tenwa/lease/flow/project/businessapply/DocMailAction.java @@ -0,0 +1,204 @@ +package com.tenwa.lease.flow.project.businessapply; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.UUID; + +import javax.mail.internet.InternetAddress; + +import jbo.app.tenwa.calc.LC_CALC_CONDITION_TEMP; +import jbo.app.tenwa.customer.CUSTOMER_ADDRESS; +import jbo.app.tenwa.customer.CUSTOMER_ADDRESS_TEMP; +import jbo.app.tenwa.customer.CUSTOMER_CERT; +import jbo.app.tenwa.customer.CUSTOMER_CERT_TEMP; +import jbo.app.tenwa.customer.CUSTOMER_FAMILY; +import jbo.app.tenwa.customer.CUSTOMER_FAMILY_TEMP; +import jbo.app.tenwa.customer.CUSTOMER_INFO; +import jbo.app.tenwa.customer.CUSTOMER_PERSON; +import jbo.app.tenwa.customer.CUSTOMER_PERSON_TEMP; +import jbo.app.tenwa.doc.LB_DOCATTRIBUTE; +import jbo.app.tenwa.doc.LB_DOCLIBRARY; +import jbo.app.tenwa.doc.LB_DOCRELATIVE; +import jbo.app.tenwa.doc.LB_FILE_MAILARCHIVING_INFO; +import jbo.app.tenwa.doc.LB_FILE_MAILARCHIVING_INFO_TEMP; +import jbo.app.tenwa.doc.LM_MAILONLINE_DOC_TEMP; +import jbo.com.tenwa.entity.comm.flow.FLOW_BUSSINESS_OBJECT; +import jbo.com.tenwa.lease.comm.LB_EQUIPMENT_CAR_TEMP; +import jbo.com.tenwa.lease.comm.LB_GUARANTEE_UNIT_TEMP; +import jbo.com.tenwa.lease.comm.LB_PROJECT_INFO_TEMP; +import jbo.com.tenwa.lease.comm.LB_UNION_LESSEE_TEMP; +import jbo.com.tenwa.lease.comm.VI_LIMIT_USAGE_DETAIL; +import jbo.sys.CODE_LIBRARY; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.amarsoft.are.jbo.BizObject; +import com.amarsoft.are.jbo.BizObjectManager; +import com.amarsoft.are.jbo.JBOException; +import com.amarsoft.are.jbo.JBOFactory; +import com.amarsoft.are.jbo.JBOTransaction; +import com.amarsoft.are.util.StringFunction; +import com.amarsoft.awe.util.ASResultSet; +import com.amarsoft.awe.util.SqlObject; +import com.amarsoft.awe.util.Transaction; +import com.amarsoft.dict.als.cache.CacheLoaderFactory; +import com.tenwa.comm.exception.RecordNotFoundException; +import com.tenwa.comm.util.jboutil.DataOperatorUtil; +import com.zhongan.scorpoin.biz.common.CommonRequest; +import com.zhongan.scorpoin.biz.common.CommonResponse; +import com.zhongan.scorpoin.common.ZhongAnApiClient; +import com.zhongan.scorpoin.common.ZhongAnOpenException; + +public class DocMailAction { + private String userid; + private String contractid; + private String flowunid; + private String orgid; + private String MailStatus; + private String AllStatus; + private String libraryid; + private String EXPNUMBER; + private String EXPCOMPANY; + + public String addMailList(JBOTransaction tx) throws JBOException{ + BizObjectManager lfmitBom = JBOFactory.getBizObjectManager(LB_FILE_MAILARCHIVING_INFO_TEMP.CLASS_NAME, tx); + BizObjectManager lfmiBom = JBOFactory.getBizObjectManager(LB_FILE_MAILARCHIVING_INFO.CLASS_NAME, tx); + String [] contractlist = contractid.split("@"); + for(String contractId:contractlist){ + //邮寄状态 + String ALLSTATUS = "none"; + //总接收状态 + String ALLHANDOVERSTATUS = "none"; + String ARCHIVING_CABINET_NO = ""; + String ARCHIVING_PERSON = ""; + String ARCHIVING_TIME = ""; + BizObject bo1 = lfmiBom.createQuery("contract_id=:contract_id").setParameter("contract_id", contractId).getSingleResult(false); + if(bo1!=null){ + ALLHANDOVERSTATUS = bo1.getAttribute("ALLHANDOVERSTATUS").getString(); + ALLSTATUS = bo1.getAttribute("ALLSTATUS").getString(); + ARCHIVING_CABINET_NO = bo1.getAttribute("ARCHIVING_CABINET_NO").getString(); + ARCHIVING_PERSON = bo1.getAttribute("ARCHIVING_PERSON").getString(); + ARCHIVING_TIME = bo1.getAttribute("ARCHIVING_TIME").getString(); + } + + BizObject bo = lfmitBom.newObject(); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.CONTRACT_ID, contractId); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.FLOWUNID, flowunid); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.ALLHANDOVERSTATUS, ALLHANDOVERSTATUS); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.ALLSTATUS, ALLSTATUS); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.IS_FLOWING, "0"); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.INPUTTIME, StringFunction.getTodayNow()); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.INPUTUSERID, userid); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.INPUTORGID, orgid); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.ARCHIVING_CABINET_NO, ARCHIVING_CABINET_NO); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.ARCHIVING_PERSON, ARCHIVING_PERSON); + bo.setAttributeValue(LB_FILE_MAILARCHIVING_INFO_TEMP.ARCHIVING_TIME, ARCHIVING_TIME); + lfmitBom.saveObject(bo); + } + return "success"; + } + public String deleteReadyMailList(JBOTransaction tx) throws JBOException{ + BizObjectManager lfmitBom = JBOFactory.getBizObjectManager(LB_FILE_MAILARCHIVING_INFO_TEMP.CLASS_NAME, tx); + BizObjectManager lmdtBom = JBOFactory.getBizObjectManager(LM_MAILONLINE_DOC_TEMP.CLASS_NAME, tx); + String [] contractlist = contractid.split("@"); + for(String contractId:contractlist){ + lfmitBom.createQuery("delete from O where contract_id = '"+contractId+"' and flowunid='"+flowunid+"'").executeUpdate(); + lmdtBom.createQuery("delete from O where contract_id = '"+contractId+"' and flowunid='"+flowunid+"'").executeUpdate(); + } + return "success"; + } + public String asSaveMailStatus(JBOTransaction tx) throws JBOException{ + BizObjectManager lfmitBom = JBOFactory.getBizObjectManager(LM_MAILONLINE_DOC_TEMP.CLASS_NAME, tx); + BizObjectManager lfmiBom = JBOFactory.getBizObjectManager(LB_FILE_MAILARCHIVING_INFO_TEMP.CLASS_NAME, tx); + + lfmitBom.createQuery("update O set MAILSTATUS = '"+MailStatus+"' where flowunid='"+flowunid+"' and libraryid='"+libraryid+"'").executeUpdate(); + lfmiBom.createQuery("update O set allstatus = '"+AllStatus+"' where flowunid='"+flowunid+"' and contract_id='"+contractid+"'").executeUpdate(); + + return "success"; + } + public String asSaveHandOverStatus(JBOTransaction tx) throws JBOException{ + BizObjectManager lfmitBom = JBOFactory.getBizObjectManager(LM_MAILONLINE_DOC_TEMP.CLASS_NAME, tx); + BizObjectManager lfmiBom = JBOFactory.getBizObjectManager(LB_FILE_MAILARCHIVING_INFO_TEMP.CLASS_NAME, tx); + if("all".equals(MailStatus)){ + lfmitBom.createQuery("update O set HANDOVERSTATUS = '"+MailStatus+"',attribute1 = '1' where flowunid='"+flowunid+"' and libraryid='"+libraryid+"'").executeUpdate(); + }else{ + lfmitBom.createQuery("update O set HANDOVERSTATUS = '"+MailStatus+"',attribute1 = '' where flowunid='"+flowunid+"' and libraryid='"+libraryid+"'").executeUpdate(); + } + lfmiBom.createQuery("update O set ALLHANDOVERSTATUS = '"+AllStatus+"' where flowunid='"+flowunid+"' and contract_id='"+contractid+"'").executeUpdate(); + + return "success"; + } + public String saveERPInfo(JBOTransaction tx) throws JBOException{ + BizObjectManager lfmiBom = JBOFactory.getBizObjectManager(LB_FILE_MAILARCHIVING_INFO_TEMP.CLASS_NAME, tx); + String[] contractidlist = contractid.split("@"); + for(int i=0;ifromCondtion=new HashMap(); + MaptoCondtion=new HashMap(); + MapotherProperty=new HashMap(); + //获取所有邮寄的合同 + BizObjectManager lfmiBom = JBOFactory.getBizObjectManager(LB_FILE_MAILARCHIVING_INFO_TEMP.CLASS_NAME, Sqlca); + BizObjectManager lmdtBom = JBOFactory.getBizObjectManager(LM_MAILONLINE_DOC_TEMP.CLASS_NAME, Sqlca); + List lfmitlist = lfmiBom.createQuery("flowunid =:flowunid").setParameter("flowunid", flowUnid).getResultList(true); + for(BizObject bo:lfmitlist){ + fromCondtion.put("flowunid", flowUnid); + fromCondtion.put("contract_id", bo.getAttribute("contract_id").getString()); + toCondtion.put("contract_id", bo.getAttribute("contract_id").getString()); + bo.setAttributeValue("is_flowing", "1"); + lfmiBom.saveObject(bo); + DataOperatorUtil.copySingleJBO(LB_FILE_MAILARCHIVING_INFO_TEMP.CLASS_NAME, fromCondtion, LB_FILE_MAILARCHIVING_INFO.CLASS_NAME,toCondtion, null, Sqlca); + List lmdtlist = lmdtBom.createQuery("flowunid=:flowunid and contract_id =:contract_id").setParameter("flowunid", flowUnid).setParameter("contract_id", bo.getAttribute("contract_id").getString()).getResultList(false); + for(BizObject bo1:lmdtlist){ + fromCondtion.put("libraryid", bo1.getAttribute("libraryid").getString()); + toCondtion.put("libraryid", bo1.getAttribute("libraryid").getString()); + DataOperatorUtil.copySingleJBO(LM_MAILONLINE_DOC_TEMP.CLASS_NAME, fromCondtion, LM_MAILONLINE_DOC.CLASS_NAME,toCondtion, null,Sqlca); + } + fromCondtion.clear(); + toCondtion.clear(); + otherProperty.clear(); + } + String sMessage="true"; + return sMessage; + } +} \ No newline at end of file From d3080ebd98e7a7c41b030746dddf351a811c9b5b Mon Sep 17 00:00:00 2001 From: tangfutang Date: Mon, 15 Jul 2019 20:10:13 +0800 Subject: [PATCH 02/20] =?UTF-8?q?=E9=B9=8F=E8=BF=9C=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E9=A1=B5=E9=9D=A2=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../query_report/pengyuanEbank.jsp | 2 +- .../controller/BigDataController.java | 203 +++++++++++++----- 2 files changed, 147 insertions(+), 58 deletions(-) diff --git a/WebContent/Tenwa/Lease/Flow/Comm/BigdataPengyuan/query_report/pengyuanEbank.jsp b/WebContent/Tenwa/Lease/Flow/Comm/BigdataPengyuan/query_report/pengyuanEbank.jsp index 1da4b22cd..d97d24a0d 100644 --- a/WebContent/Tenwa/Lease/Flow/Comm/BigdataPengyuan/query_report/pengyuanEbank.jsp +++ b/WebContent/Tenwa/Lease/Flow/Comm/BigdataPengyuan/query_report/pengyuanEbank.jsp @@ -134,7 +134,7 @@ //查询获取数据次数 if("SAVE".equals(type)) { - String result = bdc.getDataApplyId(CurPage, "pengyuan_af", Sqlca); + String result = bdc.getDataApplyId(CurPage, "ebank_af", Sqlca); if("false".equals(result)) { count = "0"; } else { diff --git a/src_tenwa/com/tenwa/httpclient/controller/BigDataController.java b/src_tenwa/com/tenwa/httpclient/controller/BigDataController.java index 343233685..4bc765197 100644 --- a/src_tenwa/com/tenwa/httpclient/controller/BigDataController.java +++ b/src_tenwa/com/tenwa/httpclient/controller/BigDataController.java @@ -184,8 +184,8 @@ public class BigDataController { String xmlResult = this.getQueryReport(params, type); System.out.println("==================" + table + "@" + type + "获取数据===================="); - //String xmlPath = HttpClientUtil.queryReport(xmlResult, type, fileSavePath + "xml" + File.separator + applyId + File.separator); - //savePengyuanData(applyId, xmlPath, table, conn); + String xmlPath = HttpClientUtil.queryReport(xmlResult, type, fileSavePath + "xml" + File.separator + applyId + File.separator); + savePengyuanData(applyId, xmlPath, table, conn); StringBuffer keyword = new StringBuffer(); StringBuffer keywordValue = new StringBuffer(); @@ -294,13 +294,80 @@ public class BigDataController { fieldList.add("riskType"); object.put("field", fieldList); savePengyuanResultData(object, cisReport, "personRiskAssess", stat, otherFields, dateFields, stringFields); + }else if("ebank_af".equals(type)){//卡交易查询 + + //存储queryConditions + Element personBankCheckInfo = cisReport.element("personBankCheckInfo"); + Element ebankitem = personBankCheckInfo.element("item"); + if(ebankitem != null) { + Element ebankcondition = ebankitem.element("condition"); + if(ebankcondition != null){ + obj = new JSONObject(); + List subItem = ebankcondition.elements(); + for(Element si : subItem) { + obj.put(si.getName(), si.getTextTrim()); + } + obj.put(ebankitem.element("status").getName(), ebankitem.element("status").getTextTrim()); + stat.execute(getInsertSql(obj, "bigdata_py_ebank_condition", null, otherFields, true, dateFields, stringFields)); + otherFields.remove("ID"); + } + } + + //卡交易记录 + Element ebankCondition = cisReport.element("personCardTransRecordInfo"); + List ebankitems = ebankCondition.elements("item"); + for(Element item : ebankitems) { + obj = new JSONObject(); + List subItem = item.elements(); + for(Element si : subItem) { + obj.put(si.getName(), si.getTextTrim()); + } + stat.execute(getInsertSql(obj, "bigdata_py_ebank_record", null, otherFields, true, dateFields, stringFields)); + otherFields.remove("ID"); + } + } else if("pengyuan_af".equals(type)){//个人反欺诈 - //个人反欺诈风险综述信息 + //身份认证信息 JSONArray array = new JSONArray(); JSONObject object = new JSONObject(); + object.put("type", "tables"); + object.put("subTable", array); + List fieldList = new ArrayList(); + JSONObject subTable1 = new JSONObject(); + subTable1 = new JSONObject(); + subTable1.put("name", "item"); + subTable1.put("type", "table"); + subTable1.put("tableName", "bigdata_py_certid_info"); + fieldList.add("name"); + fieldList.add("documentNo"); + fieldList.add("result"); + subTable1.put("field", fieldList); + array.add(subTable1); + savePengyuanResultData(object, cisReport, "policeCheckInfo", stat, otherFields, dateFields, stringFields); + //手机号码核查结果 + object.clear(); + array.clear(); + object.put("type", "tables"); + object.put("subTable", array); + fieldList.clear(); + subTable1 = new JSONObject(); + subTable1.put("name", "item"); + subTable1.put("type", "table"); + subTable1.put("tableName", "bigdata_py_phone_info"); + fieldList.add("areaInfo"); + fieldList.add("documentNoCheckResult"); + fieldList.add("nameCheckResult"); + fieldList.add("operator"); + fieldList.add("phoneCheckResult"); + subTable1.put("field", fieldList); + array.add(subTable1); + savePengyuanResultData(object, cisReport, "mobileCheckInfo", stat, otherFields, dateFields, stringFields); + + //个人反欺诈风险综述信息 + object.clear(); object.put("type", "table"); object.put("tableName", "bigdata_py_pe_an_sp_de_info"); - List fieldList = new ArrayList(); + fieldList.clear(); fieldList.add("personAntiSpoofingDesc"); object.put("field", fieldList); savePengyuanResultData(object, cisReport, "personAntiSpoofingDescInfo", stat, otherFields, dateFields, stringFields); @@ -317,6 +384,35 @@ public class BigDataController { object.put("field", fieldList); savePengyuanResultData(object, cisReport, "personAntiSpoofingInfo", stat, otherFields, dateFields, stringFields); + //手机号码信息 + object.clear(); + array.clear(); + object.put("type", "tables"); + object.put("subTable", array); + fieldList.clear(); + subTable1 = new JSONObject(); + subTable1.put("name", "item"); + subTable1.put("type", "table"); + subTable1.put("tableName", "bigdata_py_phonestatus_info"); + fieldList.add("areaInfo"); + fieldList.add("cancelTime"); + fieldList.add("operator"); + fieldList.add("phoneStatus"); + fieldList.add("timeLength"); + subTable1.put("field", fieldList); + array.add(subTable1); + savePengyuanResultData(object, cisReport, "mobileStatusInfo", stat, otherFields, dateFields, stringFields); + + //是否命中高风险名单 + object.clear(); + object.put("type", "table"); + object.put("tableName", "bigdata_py_person_risk_assess"); + fieldList.clear(); + fieldList.add("checkResult"); + fieldList.add("riskType"); + object.put("field", fieldList); + savePengyuanResultData(object, cisReport, "personRiskAssess", stat, otherFields, dateFields, stringFields); + //是否命中羊毛党名单 object.clear(); object.put("type", "table"); @@ -335,50 +431,12 @@ public class BigDataController { object.put("field", fieldList); savePengyuanResultData(object, cisReport, "fraudRiskInfo", stat, otherFields, dateFields, stringFields); - //信贷行为信息 - object.clear(); - object.put("type", "table"); - object.put("tableName", "bigdata_py_credit_behavior_inf"); - fieldList.clear(); - fieldList.add("state"); - object.put("field", fieldList); - savePengyuanResultData(object, cisReport, "creditBehaviorInfo", stat, otherFields, dateFields, stringFields); - - //信贷逾期名单 - array.clear(); - object.clear(); - object.put("type", "tables"); - object.put("subTable", array); - fieldList.clear(); - - JSONObject subTable1 = new JSONObject(); - subTable1.put("name", "overdueStat"); - subTable1.put("type", "table"); - subTable1.put("tableName", "bigdata_py_overdue_state"); - fieldList.add("overdueAmount"); - fieldList.add("overdueTotal"); - fieldList.add("overdueNoClosedCnt"); - subTable1.put("field", fieldList); - JSONObject subTable2 = new JSONObject(); - subTable2.put("name", "overdueDetails"); - subTable2.put("type", "arrayTable"); - subTable2.put("tableName", "bigdata_py_overdue_detail"); - fieldList = new ArrayList(); - fieldList.add("overdueDays"); - fieldList.add("overdueAmount"); - fieldList.add("settlement"); - subTable2.put("field", fieldList); - array.add(subTable1); - array.add(subTable2); - savePengyuanResultData(object, cisReport, "overdueLoanInfo", stat, otherFields, dateFields, stringFields); - //个人被机构查询概要信息 array.clear(); object.clear(); object.put("type", "tables"); object.put("subTable", array); fieldList.clear(); - subTable1 = new JSONObject(); subTable1.put("name", "items"); subTable1.put("type", "arrayTable"); @@ -392,6 +450,7 @@ public class BigDataController { fieldList.add("last24Month"); subTable1.put("field", fieldList); + JSONObject subTable2 = new JSONObject(); subTable2 = new JSONObject(); subTable2.put("name", "count"); subTable2.put("type", "table"); @@ -406,27 +465,56 @@ public class BigDataController { subTable2.put("field", fieldList); JSONObject subTable3 = new JSONObject(); - subTable3.put("name", "suspectedBulllending"); + /*subTable3.put("name", "suspectedBulllending"); subTable3.put("type", "table"); subTable3.put("tableName", "bigdata_py_his_que_info_sb"); fieldList = new ArrayList(); fieldList.add("appplyCnt"); fieldList.add("applyNetLoanCnt"); fieldList.add("applyFinclCnt"); - subTable3.put("field", fieldList); + subTable3.put("field", fieldList);*/ array.add(subTable1); array.add(subTable2); - array.add(subTable3); +// array.add(subTable3); savePengyuanResultData(object, cisReport, "historySimpleQueryInfo", stat, otherFields, dateFields, stringFields); - //风险信息 + + //近三年信贷逾期信息 array.clear(); object.clear(); object.put("type", "tables"); object.put("subTable", array); fieldList.clear(); + subTable1 = new JSONObject(); + subTable1.put("name", "stat"); + subTable1.put("type", "table"); + subTable1.put("tableName", "bigdata_py_overdue_summary"); + fieldList.add("overdueAmount"); + fieldList.add("overdueDays"); + fieldList.add("overdueCount"); + subTable1.put("field", fieldList); + subTable2 = new JSONObject(); + subTable2.put("name", "items"); + subTable2.put("type", "arrayTable"); + subTable2.put("tableName", "bigdata_py_overdue_info"); + fieldList = new ArrayList(); + fieldList.add("overdueAmount"); + fieldList.add("overdueDays"); + fieldList.add("overdueCount"); + subTable2.put("field", fieldList); + + array.add(subTable1); + array.add(subTable2); + savePengyuanResultData(object, cisReport, "microNearlyThreeYearsOverdueInfo", stat, otherFields, dateFields, stringFields); + + //险信息风 + array.clear(); + object.clear(); + object.put("type", "tables"); + object.put("subTable", array); + fieldList.clear(); subTable1 = new JSONObject(); subTable1.put("name", "stat"); subTable1.put("type", "table"); @@ -448,7 +536,7 @@ public class BigDataController { subTable3 = new JSONObject(); subTable3.put("name", "als"); - subTable3.put("type", "array"); + subTable3.put("type", "arrayTable"); subTable3.put("tableName", "bigdata_py_pr_als"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -461,7 +549,7 @@ public class BigDataController { JSONObject subTable4 = new JSONObject(); subTable4.put("name", "zxs"); - subTable4.put("type", "array"); + subTable4.put("type", "arrayTable"); subTable4.put("tableName", "bigdata_py_pr_zxs"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -473,7 +561,7 @@ public class BigDataController { JSONObject subTable5 = new JSONObject(); subTable5.put("name", "sxs"); - subTable5.put("type", "array"); + subTable5.put("type", "arrayTable"); subTable5.put("tableName", "bigdata_py_pr_sxs"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -485,7 +573,7 @@ public class BigDataController { JSONObject subTable6 = new JSONObject(); subTable6.put("name", "sws"); - subTable6.put("type", "array"); + subTable6.put("type", "arrayTable"); subTable6.put("tableName", "bigdata_py_pr_sws"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -496,7 +584,7 @@ public class BigDataController { JSONObject subTable7 = new JSONObject(); subTable7.put("name", "cqs"); - subTable7.put("type", "array"); + subTable7.put("type", "arrayTable"); subTable7.put("tableName", "bigdata_py_pr_cqs"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -507,7 +595,7 @@ public class BigDataController { JSONObject subTable8 = new JSONObject(); subTable8.put("name", "wdyqs"); - subTable8.put("type", "array"); + subTable8.put("type", "arrayTable"); subTable8.put("tableName", "bigdata_py_pr_wdyqs"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -573,10 +661,10 @@ public class BigDataController { if(fieldElement != null) { obj.put(fieldElement.getName(), fieldElement.getStringValue().trim()); } - if(!obj.isEmpty()) { - stat.execute(getInsertSql(obj, dataType.getString("tableName"), null, otherFields, true, dateFields, stringFields)); - otherFields.remove("ID"); - } + } + if(!obj.isEmpty()) { + stat.execute(getInsertSql(obj, dataType.getString("tableName"), null, otherFields, true, dateFields, stringFields)); + otherFields.remove("ID"); } } } @@ -718,7 +806,8 @@ public class BigDataController { if(dateFields != null) { for(Entry dateField : dateFields.entrySet()) { if(dateField.getKey().equals(key)) { - return "TO_DATE('" + value + "', '" + dateField.getValue() + "')"; +// return "DATE_FORMAT('" + value + "', '" + dateField.getValue() + "')"; + return "'" + value + "'"; } } return "'" + value + "'"; From 3629ba398502f44ee2c9c4450a3edc80f2d8331d Mon Sep 17 00:00:00 2001 From: tenwaPC Date: Tue, 16 Jul 2019 11:01:39 +0800 Subject: [PATCH 03/20] =?UTF-8?q?=E9=82=AE=E5=AF=84=E6=B5=81=E7=A8=8B=20?= =?UTF-8?q?=E5=9B=BE=E7=89=87=E5=B1=95=E7=A4=BA=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FileUpload/CheckApplyPassContract.jsp | 3 +- .../LBnotAllMailHndHandoverTempList.jsp | 1 + .../FileUpload/MortgageFileMailApplyList.jsp | 8 +- .../Tenwa/Apzl/FileUpload/PayDocMailList.jsp | 13 +-- .../Tenwa/Apzl/FileUpload/showImage.jsp | 109 ++++++++++++++++++ .../Comm/Document/LBDocumentListInfo.jsp | 6 +- .../tenwa/doc/action/DocListInitAction.java | 9 ++ .../commbusiness/LBFileMailTempToFormal.java | 4 + 8 files changed, 139 insertions(+), 14 deletions(-) create mode 100644 WebContent/Tenwa/Apzl/FileUpload/showImage.jsp diff --git a/WebContent/Tenwa/Apzl/FileUpload/CheckApplyPassContract.jsp b/WebContent/Tenwa/Apzl/FileUpload/CheckApplyPassContract.jsp index 192c01975..9d0c8722c 100644 --- a/WebContent/Tenwa/Apzl/FileUpload/CheckApplyPassContract.jsp +++ b/WebContent/Tenwa/Apzl/FileUpload/CheckApplyPassContract.jsp @@ -7,6 +7,7 @@ <%@page import="java.math.BigDecimal"%> <%@ page contentType="text/html; charset=GBK"%> <%@ include file="/IncludeBeginMDAJAX.jsp"%><% - String result = Sqlca.getString(new SqlObject("select case when count(1)>0 then 'true' else 'false' end res from lb_contract_info lci left join lb_file_mailarchiving_info lfmi on lfmi.CONTRACT_ID = lci.ID where lfmi.ALLHANDOVERSTATUS is null or lfmi.ALLHANDOVERSTATUS = 'part'")); + String companyId = CurPage.getParameter("belongCompanyid"); + String result = Sqlca.getString(new SqlObject("select case when count(1)>0 then 'true' else 'false' end res from lb_contract_info lci left join lb_file_mailarchiving_info lfmi on lfmi.CONTRACT_ID = lci.ID where (lfmi.ALLHANDOVERSTATUS is null or lfmi.ALLHANDOVERSTATUS = 'part') and not exists (select 1 from LB_FILE_MAILARCHIVING_INFO_TEMP lfmit where lfmit.contract_id = lci.id and lfmit.is_flowing = '0') and lci.PROJECT_DEPT = '"+companyId+"'")); out.println(result); %><%@ include file="/IncludeEndAJAX.jsp"%> \ No newline at end of file diff --git a/WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverTempList.jsp b/WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverTempList.jsp index 41754bdf6..fad7e17a2 100644 --- a/WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverTempList.jsp +++ b/WebContent/Tenwa/Apzl/FileUpload/LBnotAllMailHndHandoverTempList.jsp @@ -14,6 +14,7 @@ doTemp.setVisible("ARCHIVING_TIME", false); doTemp.setVisible("ARCHIVING_PERSON", false); } + doTemp.setLockCount(2); ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request); dwTemp.Style="1"; //--设置为Grid风格-- diff --git a/WebContent/Tenwa/Apzl/FileUpload/MortgageFileMailApplyList.jsp b/WebContent/Tenwa/Apzl/FileUpload/MortgageFileMailApplyList.jsp index 450119268..cee14a002 100644 --- a/WebContent/Tenwa/Apzl/FileUpload/MortgageFileMailApplyList.jsp +++ b/WebContent/Tenwa/Apzl/FileUpload/MortgageFileMailApplyList.jsp @@ -1,12 +1,14 @@ <%@page import="com.tenwa.util.SerialNumberUtil"%> <%@ page contentType="text/html; charset=GBK"%> <%@ include file="/Tenwa/Core/FlowManager/BaseFlowList/BaseFlowApplyListStart.jspf"%> -<%/*~BEGIN~可编辑区~[Editable=false;CodeAreaID=List06;Describe=自定义函数;]~*/%> +<%/*~BEGIN~可编辑区~[Editable=false;CodeAreaID=List06;Describe=自定义函数;]~*/ +ASUser user = CurPage.getUser(); +String orgid = user.getOrgID(); +%> + + + + + + + + + + + + + + + + + +<% + String compClientID = request.getParameter("CompClientID"); + String attrid = CurPage.getParameter("attrid"); + String contract_id = CurPage.getParameter("contract_id"); + String projectid = CurPage.getParameter("projectid"); + String docClassItemno = CurPage.getParameter("docClassItemno"); + String objecttype = CurPage.getParameter("objecttype"); + List Imagelist = new ArrayList(); + if(contract_id!=null&&Imagelist.size()==0){ + Imagelist=DocListInitAction.nextImageForMailDoc(contract_id); + } + int imageattridv = 0; + int index = 0; +%> + + + +
+
    + <% + if(Imagelist.size()>0){ + for(String imageattrid:Imagelist){ + imageattridv++; + if(imageattrid.equals(attrid)){ + index=imageattridv; + } + %> +
  • + <% + } + }else{ + index=1; + %> +
  • + <% + } + %> +
+
+ + + + + + +<%@ include file="/IncludeEnd.jsp"%> \ No newline at end of file diff --git a/WebContent/Tenwa/Comm/Document/LBDocumentListInfo.jsp b/WebContent/Tenwa/Comm/Document/LBDocumentListInfo.jsp index f165eb87e..c822cf633 100644 --- a/WebContent/Tenwa/Comm/Document/LBDocumentListInfo.jsp +++ b/WebContent/Tenwa/Comm/Document/LBDocumentListInfo.jsp @@ -23,7 +23,9 @@ } String type=CurPage.getParameter("type"); if(type==null)type=""; - + if("MortgageFileMailFlow".equals(sObjectType)){ + type = "MortgageFileMailFlow"; + } String otherWhere=""; String sTempletNo = "LBDocumentList";//--模板号-- //如果是从合同查询过来的,变更模板号和O.OBJECTTYPE查询条件 @@ -39,6 +41,8 @@ otherWhere= otherWhere+" and O.proj_id='"+proj_id+"' order by O.INPUTTIME DESC"; }else if("contract".equals(type)){ otherWhere= otherWhere+" and (O.contract_id='"+contract_id+"' OR O.proj_id='"+proj_id+"') "; + }else if("MortgageFileMailFlow".equals(type)){ + otherWhere = "AND v.EXISTS (select 1 from jbo.app.tenwa.doc.LB_FILE_MAILARCHIVING_INFO_TEMP lfmit where lfmit.contract_id = O.CONTRACT_ID and lfmit.flowunid = '"+flowunid+"' ) "; } diff --git a/src_core/com/tenwa/doc/action/DocListInitAction.java b/src_core/com/tenwa/doc/action/DocListInitAction.java index afcd0a2f8..4bdc33abc 100644 --- a/src_core/com/tenwa/doc/action/DocListInitAction.java +++ b/src_core/com/tenwa/doc/action/DocListInitAction.java @@ -594,4 +594,13 @@ public class DocListInitAction { } return list; } + public static List nextImageForMailDoc(String contract_id) throws Exception{ + List list = new ArrayList(); + String sql = "select lda.id attrid from lb_docrelative ldr left join lb_doclibrary ldl on ldl.RELATIVE_ID = ldr.id left join lb_docattribute lda on lda.LIBRARY_ID = ldl.ID where ldr.OBJECTTYPE = 'MortgageFileMailFlow' and contract_id = '"+contract_id+"' and lda.id is not null"; + List> ds = DataOperatorUtil.getDataBySql(JBOFactory.createJBOTransaction(), sql, null); + for(Map map:ds){ + list.add(map.get("attrid")); + } + return list; + } } diff --git a/src_tenwa/com/tenwa/lease/flow/project/commbusiness/LBFileMailTempToFormal.java b/src_tenwa/com/tenwa/lease/flow/project/commbusiness/LBFileMailTempToFormal.java index 1b1fc1620..4ab69e56d 100644 --- a/src_tenwa/com/tenwa/lease/flow/project/commbusiness/LBFileMailTempToFormal.java +++ b/src_tenwa/com/tenwa/lease/flow/project/commbusiness/LBFileMailTempToFormal.java @@ -8,6 +8,8 @@ import jbo.app.tenwa.calc.LC_RENT_PLAN; import jbo.app.tenwa.calc.LC_RENT_PLAN_HIS; import jbo.app.tenwa.doc.LB_FILE_MAILARCHIVING_INFO; import jbo.app.tenwa.doc.LB_FILE_MAILARCHIVING_INFO_TEMP; +import jbo.app.tenwa.doc.LM_APPROVALOPINION_DOC; +import jbo.app.tenwa.doc.LM_APPROVALOPINION_DOC_TEMP; import jbo.app.tenwa.doc.LM_MAILONLINE_DOC; import jbo.app.tenwa.doc.LM_MAILONLINE_DOC_TEMP; @@ -35,6 +37,8 @@ public class LBFileMailTempToFormal extends BaseBussiness { BizObjectManager lfmiBom = JBOFactory.getBizObjectManager(LB_FILE_MAILARCHIVING_INFO_TEMP.CLASS_NAME, Sqlca); BizObjectManager lmdtBom = JBOFactory.getBizObjectManager(LM_MAILONLINE_DOC_TEMP.CLASS_NAME, Sqlca); List lfmitlist = lfmiBom.createQuery("flowunid =:flowunid").setParameter("flowunid", flowUnid).getResultList(true); + fromCondtion.put("flowunid", flowUnid); + DataOperatorUtil.copyJBOSet(LM_APPROVALOPINION_DOC_TEMP.CLASS_NAME, fromCondtion, LM_APPROVALOPINION_DOC.CLASS_NAME, null, null, null, Sqlca); for(BizObject bo:lfmitlist){ fromCondtion.put("flowunid", flowUnid); fromCondtion.put("contract_id", bo.getAttribute("contract_id").getString()); From 9564cabe2911fb9d4444304d47fcdb8d488b7524 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:12:28 +0800 Subject: [PATCH 04/20] =?UTF-8?q?GPS=E6=8B=B7=E8=A1=A8=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../GPSDetailsFormalToTemporary.java | 30 +++++++++++++++++++ .../GPSDetailsTemporaryToFormal.java | 27 +++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 src_tenwa/com/tenwa/lease/flow/contract/onhirechange/GPSDetailsFormalToTemporary.java create mode 100644 src_tenwa/com/tenwa/lease/flow/contract/onhirechange/GPSDetailsTemporaryToFormal.java diff --git a/src_tenwa/com/tenwa/lease/flow/contract/onhirechange/GPSDetailsFormalToTemporary.java b/src_tenwa/com/tenwa/lease/flow/contract/onhirechange/GPSDetailsFormalToTemporary.java new file mode 100644 index 000000000..ed2d4cf5b --- /dev/null +++ b/src_tenwa/com/tenwa/lease/flow/contract/onhirechange/GPSDetailsFormalToTemporary.java @@ -0,0 +1,30 @@ +package com.tenwa.lease.flow.contract.onhirechange; + +import java.util.HashMap; +import java.util.Map; + +import jbo.sys.LM_GPS_ORDER; +import jbo.sys.LM_GPS_ORDER_TEMP; +import com.amarsoft.awe.util.Transaction; +import com.tenwa.comm.util.jboutil.DataOperatorUtil; +import com.tenwa.flow.baseBussion.BaseBussiness; +/** + * GPS详情正式表到临时表 + * @author Administrator + * + */ +public class GPSDetailsFormalToTemporary extends BaseBussiness{ + @Override + public Object run(Transaction Sqlca) throws Exception { + this.initBussinessParam(Sqlca); + String projectId=this.getAttribute("ProjectId").toString(); + String flowUnid=this.getAttribute("FlowUnid").toString(); + Sqlca.executeSQL("delete from lm_gps_order_temp where PROJECT_ID='"+projectId+"'"); + Map fromCondtion=new HashMap(); + fromCondtion.put("PROJECT_ID", projectId); + Map otherProperty=new HashMap(); + otherProperty.put("FLOWUNID", flowUnid); + DataOperatorUtil.copyJBOSet(LM_GPS_ORDER.CLASS_NAME, fromCondtion, LM_GPS_ORDER_TEMP.CLASS_NAME,otherProperty, null, null, Sqlca); + return "true"; + } +} diff --git a/src_tenwa/com/tenwa/lease/flow/contract/onhirechange/GPSDetailsTemporaryToFormal.java b/src_tenwa/com/tenwa/lease/flow/contract/onhirechange/GPSDetailsTemporaryToFormal.java new file mode 100644 index 000000000..5eebbf20e --- /dev/null +++ b/src_tenwa/com/tenwa/lease/flow/contract/onhirechange/GPSDetailsTemporaryToFormal.java @@ -0,0 +1,27 @@ +package com.tenwa.lease.flow.contract.onhirechange; + +import java.util.HashMap; +import java.util.Map; +import jbo.sys.LM_GPS_ORDER; +import jbo.sys.LM_GPS_ORDER_TEMP; +import com.amarsoft.awe.util.Transaction; +import com.tenwa.comm.util.jboutil.DataOperatorUtil; +import com.tenwa.flow.baseBussion.BaseBussiness; +/** + * GPS详情临时表到正式表 + * @author Administrator + * + */ +public class GPSDetailsTemporaryToFormal extends BaseBussiness{ + @Override + public Object run(Transaction Sqlca) throws Exception { + this.initBussinessParam(Sqlca); + String projectId=this.getAttribute("ProjectId").toString(); + Map fromCondtion=new HashMap(); + fromCondtion.put("PROJECT_ID", projectId); + Map otherProperty=new HashMap(); + otherProperty.put("PROJECT_ID", projectId); + DataOperatorUtil.copyJBOSet(LM_GPS_ORDER_TEMP.CLASS_NAME, fromCondtion, LM_GPS_ORDER.CLASS_NAME,null, otherProperty, null, Sqlca); + return "true"; + } +} From 7ef5363436cc2ea75835aadcdbadab4e05a62672 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:19:34 +0800 Subject: [PATCH 05/20] =?UTF-8?q?=E4=BB=98=E6=AC=BE=E7=94=B3=E8=AF=B7?= =?UTF-8?q?=E6=A0=A1=E9=AA=8CGPS=E6=98=AF=E5=90=A6=E5=90=AF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/commcheck/GpsStatusCheck.java | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src_tenwa/com/tenwa/lease/flow/project/commcheck/GpsStatusCheck.java diff --git a/src_tenwa/com/tenwa/lease/flow/project/commcheck/GpsStatusCheck.java b/src_tenwa/com/tenwa/lease/flow/project/commcheck/GpsStatusCheck.java new file mode 100644 index 000000000..123509bb0 --- /dev/null +++ b/src_tenwa/com/tenwa/lease/flow/project/commcheck/GpsStatusCheck.java @@ -0,0 +1,29 @@ +package com.tenwa.lease.flow.project.commcheck; +import com.amarsoft.awe.util.ASResultSet; +import com.amarsoft.awe.util.SqlObject; +import com.amarsoft.awe.util.Transaction; +import com.tenwa.gps.GpsController; +import com.tenwa.template.check.DefaultBussinessCheck; + +/** + * 放款申请校验GPS状态 + * + */ +public class GpsStatusCheck extends DefaultBussinessCheck { + @Override + public Object run(Transaction Sqlca) throws Exception { + String flowunid=this.getAttribute("ObjectNo").toString(); + String sql = "SELECT lec.FRAME_NUMBER,lec.PROJECT_ID FROM LB_CONTRACT_INFO_TEMP lcit LEFT JOIN LB_CONTRACT_INFO lci ON lcit.CONTRACT_NO=lci.CONTRACT_NO LEFT JOIN LB_EQUIPMENT_CAR lec ON lec.CONTRACT_ID=lci.ID WHERE lcit.FLOWUNID='"+flowunid+"'"; + ASResultSet res = Sqlca.getASResultSet(new SqlObject(sql)); + GpsController gpsController = new GpsController(); + while(res.next()){ + gpsController.setVin(res.getString("FRAME_NUMBER")); + gpsController.setProjectId(res.getString("PROJECT_ID")); + } + res.close(); + gpsController.setFlowUnid(flowunid); + gpsController.setUserId("风险预计调用"); + setPass(gpsController.queryOrderToVin()); + return null; + } +} \ No newline at end of file From f7e9da9197148ec4c9584ad4a98a46a91bff24a7 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:20:20 +0800 Subject: [PATCH 06/20] =?UTF-8?q?=E5=88=A0=E9=99=A4=E9=87=8D=E5=A4=8D?= =?UTF-8?q?=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../httpclient/controller/GPSController.java | 34 ------------------- 1 file changed, 34 deletions(-) delete mode 100644 src_tenwa/com/tenwa/httpclient/controller/GPSController.java diff --git a/src_tenwa/com/tenwa/httpclient/controller/GPSController.java b/src_tenwa/com/tenwa/httpclient/controller/GPSController.java deleted file mode 100644 index 7bb178399..000000000 --- a/src_tenwa/com/tenwa/httpclient/controller/GPSController.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.tenwa.httpclient.controller; - -import com.alibaba.fastjson.JSON; -import com.amarsoft.are.jbo.JBOException; -import com.amarsoft.are.jbo.JBOTransaction; -import com.tenwa.httpclient.ResultMessage; -import com.tenwa.httpclient.service.GPSService; -import com.tenwa.httpclient.serviceimpl.GPSServiceImpl; - -public class GPSController { - private String imei; - - public String getImei() { - return imei; - } - - public void setImei(String imei) { - this.imei = imei; - } - - public String GetCarStateInfo(JBOTransaction tx) throws JBOException { - GPSService gpsService = new GPSServiceImpl(); - String result = ""; - try { - result = gpsService.GetCarStateInfo(imei); - Object obj = JSON.parse(result); - } catch (Exception e) { - e.printStackTrace(); - tx.rollback(); - return ResultMessage.get("410"); - } - return result; - } -} From bd1e49fb97d3877dcb0364c4ad21b7fc78e7f9a5 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:26:05 +0800 Subject: [PATCH 07/20] GPS --- WebContent/Tenwa/Gps/AreaCodeSelect.jsp | 107 ++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 WebContent/Tenwa/Gps/AreaCodeSelect.jsp diff --git a/WebContent/Tenwa/Gps/AreaCodeSelect.jsp b/WebContent/Tenwa/Gps/AreaCodeSelect.jsp new file mode 100644 index 000000000..c5409a4d0 --- /dev/null +++ b/WebContent/Tenwa/Gps/AreaCodeSelect.jsp @@ -0,0 +1,107 @@ +<%@ page contentType="text/html; charset=GBK"%><%@ + include file="/IncludeBeginMD.jsp"%><% + /* + 页面说明: 选择行政区划 + */ + String sAreaCodeValue = CurPage.getParameter("AreaCodeValue");//在该页面打开后打开二级分类时传值。 + String sAreaCode = CurPage.getParameter("AreaCode");//已有值时,做初始化传入。 + String sOpen = ""; + String sDefaultItem = ""; + String sDefaultItem2 = ""; + + if(sAreaCode.length()>3) sDefaultItem = sAreaCode.substring(0,4); + if(sAreaCode!=null&&sAreaCode.length()>4){ + sOpen = "YES";//暂不作控制。 + sDefaultItem2 =sAreaCode; + } +%> + + +请选择行政区划 + + + + +
+
+ + + + + + + <% + if(sAreaCodeValue == null){ + %> + + <%}%> + +
+ + + + + + +
<%=new Button("确定","确定","newBusiness()","","").getHtmlText()%><%=new Button("取消","取消","goBack()","","").getHtmlText()%><%=new Button("清空","清空","clearAll()","","").getHtmlText()%>
+
+
+
+ + + +<%@ include file="/IncludeEnd.jsp"%> \ No newline at end of file From 9ac229e5aa50123aa2ded395d58131849ccd1419 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:26:29 +0800 Subject: [PATCH 08/20] gps --- WebContent/Tenwa/Gps/LmGpsLocationList.jsp | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 WebContent/Tenwa/Gps/LmGpsLocationList.jsp diff --git a/WebContent/Tenwa/Gps/LmGpsLocationList.jsp b/WebContent/Tenwa/Gps/LmGpsLocationList.jsp new file mode 100644 index 000000000..a391507ae --- /dev/null +++ b/WebContent/Tenwa/Gps/LmGpsLocationList.jsp @@ -0,0 +1,35 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_list.jspf"%><% + /* + Author: undefined 2019-07-11 + Content: + History Log: + */ + String ProjectNo = CurPage.getParameter("ProjectNo"); + ASObjectModel doTemp = new ASObjectModel("LmGpsLocationList"); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request); + dwTemp.Style="1"; //--设置为Grid风格-- + dwTemp.ReadOnly = "1"; //只读模式 + dwTemp.setPageSize(10); + dwTemp.genHTMLObjectWindow(ProjectNo); + + //0、是否展示 1、 权限控制 2、 展示类型 3、按钮显示名称 4、按钮解释文字 5、按钮触发事件代码 6、 7、 8、 9、图标,CSS层叠样式 10、风格 + 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 From 70859055284a0ae2702f9d6b559c4f90a4009751 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:26:54 +0800 Subject: [PATCH 09/20] gps --- WebContent/Tenwa/Gps/LmGpsOrderInfo.jsp | 182 ++++++++++++++++++++++++ 1 file changed, 182 insertions(+) create mode 100644 WebContent/Tenwa/Gps/LmGpsOrderInfo.jsp diff --git a/WebContent/Tenwa/Gps/LmGpsOrderInfo.jsp b/WebContent/Tenwa/Gps/LmGpsOrderInfo.jsp new file mode 100644 index 000000000..be41f14ce --- /dev/null +++ b/WebContent/Tenwa/Gps/LmGpsOrderInfo.jsp @@ -0,0 +1,182 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ page import="java.math.BigDecimal"%> +<%@ include file="/Frame/resources/include/include_begin_info.jspf"%><% + /* + Author: undefined 2019-07-11 + Content: 示例详情页面 + History Log: + */ + String userId = CurUser.getUserID(); + String ProjectNo = CurPage.getParameter("ProjectNo"); + String ProjectId = CurPage.getParameter("ProjectId"); + String PhaseNo = CurPage.getParameter("PhaseNo"); + String flowunid = CurPage.getParameter("ObjectNo"); + String compClientID = request.getParameter("CompClientID"); + String frameNumber = Sqlca.getString("select FRAME_NUMBER from LB_EQUIPMENT_CAR_TEMP where FLOWUNID='"+flowunid+"'"); + String id = Sqlca.getString("select id from LM_GPS_ORDER_TEMP where APPLY_NO='"+ProjectNo+"'"); + BigDecimal incomNuber = new BigDecimal(Sqlca.getString("select INCOME_NUMBER from LC_CALC_CONDITION_TEMP where FLOWUNID='"+flowunid+"'")); + List images = new ArrayList(); + String sql = "select lgp.URL from lm_gps_photo lgp where APPLY_NO='"+ProjectNo+"'"; + ASResultSet res = Sqlca.getASResultSet(new SqlObject(sql)); + while(res.next()){ + images.add(res.getString("URL")); + } + + String period = incomNuber.divide(new BigDecimal("12"),0,BigDecimal.ROUND_UP).toString(); + String sTempletNo = "LmGpsOrderInfo";//--模板号-- + ASObjectModel doTemp = new ASObjectModel(sTempletNo); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage, doTemp,request); + dwTemp.Style = "2";//freeform + //dwTemp.ReadOnly = "-2";//只读模式 + dwTemp.genHTMLObjectWindow(ProjectNo); + dwTemp.replaceColumn("LOCATION", "", CurPage.getObjectWindowOutput()); + String [][] sButtons; + if("0010".equals(PhaseNo)){ + sButtons = new String[][]{ + {"true","All","Button","提交工单","提交工单","if(getItemValue(0,getRow(),'STATUS')!='7'){alert('不可重复提交!');return;}as_save(0,'submitOrder()')","","","",""}, + {"true","All","Button","查询工单","查询工单","queryOrder()","","","",""}, + {"true","All","Button","修改工单","修改工单","alterOrder()","","","",""}, + {"true","All","Button","取消工单","取消工单","cancelOrder()","","","",""}, + {"true","All","Button","查看安装图","查看安装图","showGPSImage()","","","",""}, + }; + }else{ + sButtons =new String[][]{{"fasle","All","Button","提交工单","提交工单","if(getItemValue(0,getRow(),'STATUS')!='7'){alert('不可重复提交!');return;}as_save(0,'submitOrder()')","","","",""},}; + } +%><%@ include file="/Frame/resources/include/ui/include_info.jspf"%> + +<%@ include file="/Frame/resources/include/include_end.jspf"%> \ No newline at end of file From 4b83ac8ff06a3385440b7902eb260378c272933c Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:27:18 +0800 Subject: [PATCH 10/20] gps --- WebContent/Tenwa/Gps/LmGpsOrderList.jsp | 62 +++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 WebContent/Tenwa/Gps/LmGpsOrderList.jsp diff --git a/WebContent/Tenwa/Gps/LmGpsOrderList.jsp b/WebContent/Tenwa/Gps/LmGpsOrderList.jsp new file mode 100644 index 000000000..45316ee13 --- /dev/null +++ b/WebContent/Tenwa/Gps/LmGpsOrderList.jsp @@ -0,0 +1,62 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_list.jspf"%><% + /* + Author: undefined 2019-07-16 + Content: + History Log: + */ + String userId = CurUser.getUserID(); + ASObjectModel doTemp = new ASObjectModel("LmGpsOrderList"); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request); + dwTemp.Style="1"; //--设置为Grid风格-- + dwTemp.ReadOnly = "1"; //只读模式 + dwTemp.setPageSize(10); + dwTemp.genHTMLObjectWindow(""); + + //0、是否展示 1、 权限控制 2、 展示类型 3、按钮显示名称 4、按钮解释文字 5、按钮触发事件代码 6、 7、 8、 9、图标,CSS层叠样式 10、风格 + String sButtons[][] = { + {"true","All","Button","查看定位信息","查看定位信息","queryOrder()","","","","",""}, + {"true","","Button","查看安装图","查看安装图","showImage()","","","","",""}, + }; +%><%@include file="/Frame/resources/include/ui/include_list.jspf"%> + + + +<%@ include file="/Frame/resources/include/include_end.jspf"%> \ No newline at end of file From 1d7dd7ac4689c07fbc3a02bf3adfcb4ae03f6b11 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:30:11 +0800 Subject: [PATCH 11/20] Gps --- src_tenwa/com/tenwa/gps/GpsCommon.java | 194 +++++++++++++++++++++++++ 1 file changed, 194 insertions(+) create mode 100644 src_tenwa/com/tenwa/gps/GpsCommon.java diff --git a/src_tenwa/com/tenwa/gps/GpsCommon.java b/src_tenwa/com/tenwa/gps/GpsCommon.java new file mode 100644 index 000000000..5ccbcd5da --- /dev/null +++ b/src_tenwa/com/tenwa/gps/GpsCommon.java @@ -0,0 +1,194 @@ +package com.tenwa.gps; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOException; +import com.amarsoft.awe.util.ASResultSet; +import com.amarsoft.awe.util.SqlObject; +import com.amarsoft.awe.util.Transaction; +import com.tenwa.httpclient.resources.GPSConfigure; + +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; + +public class GpsCommon { + + private static String TYuserAccount = GPSConfigure.get("TYuserAccount"); + private static String TYtoken = GPSConfigure.get("TYtoken"); + private static String TYsign = GPSConfigure.get("TYsign"); + /** + * + * 天易--编辑新增工单请求参数 + * @param flowUnid + * @param applyNo + * @param tx + * @return + * @throws Exception + */ + public static String tyEditCreateParameter(String applyNo,Transaction Sqlca) throws Exception{ + ASResultSet res = Sqlca.getASResultSet(new SqlObject("select CONTACT_NAME,CONTACT_PHONE,PICCONTACT_NAME,PICCONTACT_PHONE,INSTALL_TIME,ADDRESS_CODE,ADDRESS_DETAIL,CAR_VIN,WIRED_NUM,WIRED_PERIOD,WIRELESS_NUM,WIRELESS_PERIOD,CAR_ACCOUNT from LM_GPS_ORDER_TEMP where APPLY_NO='"+applyNo+"'")); + JSONObject params = new JSONObject(); + while(res.next()){ + params.put("userAccount",TYuserAccount); + params.put("token",TYtoken); + params.put("sign",TYsign); + params.put("applyNo",applyNo); + params.put("contactName",res.getString("CONTACT_NAME")); + params.put("contactPhone",res.getString("CONTACT_PHONE")); + params.put("piccontactName",res.getString("PICCONTACT_NAME")); + params.put("piccontactPhone",res.getString("PICCONTACT_PHONE")); + params.put("installtime",res.getString("INSTALL_TIME")); + params.put("addressCode",res.getString("ADDRESS_CODE")); + params.put("addressDetail",res.getString("ADDRESS_DETAIL")); + params.put("carVin",res.getString("CAR_VIN")); + params.put("wiredNum",res.getString("WIRED_NUM")); + params.put("wiredPeriod",res.getString("WIRED_PERIOD")); + params.put("wirelessNum",res.getString("WIRELESS_NUM")); + params.put("wirelessPeriod",res.getString("WIRELESS_PERIOD")); + params.put("carAccount",res.getString("CAR_ACCOUNT")); + } + res.close(); + return params.toString(); + } + + /** + * 天易--编辑修改工单请求参数 + * @param applyNo + * @param params + * @param sqlca + * @return + */ + public static String tyEditAlterParameter(String applyNo, String params,Transaction sqlca) { + String [] paramArr = params.split("@"); + int i=0; + JSONObject json = new JSONObject(); + json.put("userAccount",TYuserAccount); + json.put("token",TYtoken); + json.put("sign",TYsign); + json.put("applyNo",applyNo); + json.put("contactName",paramArr[i++]); + json.put("contactPhone",paramArr[i++]); + json.put("piccontactName",paramArr[i++]); + json.put("piccontactPhone",paramArr[i++]); + json.put("installtime",paramArr[i++]); + json.put("addressCode",paramArr[i++]); + json.put("addressDetail",paramArr[i++]); + json.put("carVin",paramArr[i++]); + json.put("wiredNum",paramArr[i++]); + json.put("wiredPeriod",paramArr[i++]); + json.put("wirelessNum",paramArr[i++]); + json.put("wirelessPeriod",paramArr[i++]); + json.put("carAccount",paramArr[i++]); + return json.toString(); + } + + + + + /** + * + * 天易--编辑查询/取消工单请求参数 + * @param applyNo + * @return + */ + public static Map tyEditQueryParameter(String applyNo){ + Map params = new HashMap(); + params.put("userAccount",TYuserAccount); + params.put("token",TYtoken); + params.put("sign",TYsign); + params.put("applyNo",applyNo); + return params; + } + + /** + * + * 天易--编辑车架号查询工单请求参数 + * @param applyNo + * @return + */ + public static Map tyEditQueryToVinParameter(String vin){ + Map params = new HashMap(); + params.put("userAccount",TYuserAccount); + params.put("token",TYtoken); + params.put("sign",TYsign); + params.put("carVin",vin); + return params; + } + + /** + * + * 天易--查询订单结果入表 + * @param tableName + * @param flowUnid + * @return + * @throws JBOException + */ + public static String tyQueryDataPersistence(String data,String applyNo, String tableName,Transaction Sqlca) throws Exception{ + JSONObject job = JSONObject.fromObject(data); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); + String thisDate = sdf.format(new Date()); + String result = job.getString("result"); + if(!"0".equals(result)){ + Sqlca.executeSQL("update "+tableName+" set RESULT='"+result+"',MESSAGE='查询失败,"+job.getString("message")+"' where APPLY_NO='"+applyNo+"'"); + return job.getString("message"); + } + String carVin = ""; + String status = job.getJSONObject("data").getString("status"); + if("3".equals(status)){ + JSONArray terminals = job.getJSONObject("data").getJSONArray("terminal"); + Sqlca.executeSQL("delete from lm_gps_location where APPLY_NO='"+applyNo+"'"); + for(int i=0;i0) continue; + JSONArray photoMsgs = terminal.getJSONArray("photoMsg"); + for(int j=0;j params,Transaction Sqlca) throws Exception{ + Sqlca.executeSQL(" insert into lm_gps_log values(replace(uuid(),\"-\",\"\"),'"+params.get("UPLOAD_PARAMETER")+"','"+params.get("RETURN_PARAMETER")+"',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'"+params.get("CALL_USERID")+"','"+params.get("FLOWUNID")+"','"+params.get("PROJECT_ID")+"','"+params.get("URL")+"','"+params.get("CALL_PURPOSE")+"','"+params.get("CALL_STATUS")+"')"); + } +} From 9355dc21e62cfb2e45442fb12e4717e41b386d91 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:30:42 +0800 Subject: [PATCH 12/20] gps --- src_tenwa/com/tenwa/gps/GpsController.java | 328 +++++++++++++++++++++ 1 file changed, 328 insertions(+) create mode 100644 src_tenwa/com/tenwa/gps/GpsController.java diff --git a/src_tenwa/com/tenwa/gps/GpsController.java b/src_tenwa/com/tenwa/gps/GpsController.java new file mode 100644 index 000000000..46449bd29 --- /dev/null +++ b/src_tenwa/com/tenwa/gps/GpsController.java @@ -0,0 +1,328 @@ +package com.tenwa.gps; + +import java.util.HashMap; +import java.util.Map; + +import net.sf.json.JSONObject; + +import com.alibaba.fastjson.JSON; +import com.amarsoft.are.jbo.JBOFactory; +import com.amarsoft.are.jbo.JBOTransaction; +import com.amarsoft.awe.util.ASResultSet; +import com.amarsoft.awe.util.SqlObject; +import com.amarsoft.awe.util.Transaction; +import com.tenwa.httpclient.resources.GPSConfigure; + +public class GpsController { + + private String applyNo; + private String orderNo; + private String flowUnid; + private String tableName; + private String vin; + private String projectId; + private String userId; + private String params; + + public String getParams() { + return params; + } + + public void setParams(String params) { + this.params = params; + } + + public String getProjectId() { + return projectId; + } + + public void setProjectId(String projectId) { + this.projectId = projectId; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public String getVin() { + return vin; + } + + public void setVin(String vin) { + this.vin = vin; + } + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public String getApplyNo() { + return applyNo; + } + + public void setApplyNo(String applyNo) { + this.applyNo = applyNo; + } + + public String getOrderNo() { + return orderNo; + } + + public void setOrderNo(String orderNo) { + this.orderNo = orderNo; + } + + public String getFlowUnid() { + return flowUnid; + } + + public void setFlowUnid(String flowUnid) { + this.flowUnid = flowUnid; + } + + /** + * 天易--新增工单 + * @throws Exception + */ + public String createOrder(JBOTransaction tx) throws Exception{ + Transaction Sqlca = Transaction.createTransaction(tx); + String url = GPSConfigure.get("TYUrl"); + String params = GpsCommon.tyEditCreateParameter(applyNo,Sqlca); + System.err.println("***************天易--新增工单上传参数*****************"); + System.err.println(params); + System.err.println("***************天易--新增工单上传参数*****************"); + Map resultMap = HttpClientSUtil.doPostJson(url,params); + String data = resultMap.get("data"); + System.err.println("***************天易--新增返回上传参数*****************"); + System.err.println(data); + System.err.println("***************天易--新增返回上传参数*****************"); + JSONObject job = JSONObject.fromObject(data); + String result = job.getString("result"); + //日志参数 + Map logMap = new HashMap(); + logMap.put("URL",url); + logMap.put("UPLOAD_PARAMETER",params); + logMap.put("RETURN_PARAMETER",data); + logMap.put("CALL_USERID",userId); + logMap.put("FLOWUNID",flowUnid); + logMap.put("PROJECT_ID",projectId); + logMap.put("CALL_PURPOSE","天易--新增工单"); + logMap.put("CALL_STATUS",resultMap.get("status")); + GpsCommon.callRecord(logMap, Sqlca); + + if("0".equals(result)){ + Sqlca.executeSQL("update LM_GPS_ORDER_TEMP set RESULT='"+result+"',ORDER_NO='"+job.getString("orderNo")+"',STATUS='8',MESSAGE='提交成功' where APPLY_NO='"+applyNo+"'"); + return "提交成功!"; + }else{ + Sqlca.executeSQL("update LM_GPS_ORDER_TEMP set RESULT='"+result+"',MESSAGE='新增工单失败,"+job.getString("message")+"' where APPLY_NO='"+applyNo+"'"); + return "提交失败!"; + } + } + + /** + * 天易--根据申请编号查询工单 + * @throws Exception + */ + public String queryOrder(JBOTransaction tx) throws Exception{ + Transaction Sqlca = Transaction.createTransaction(tx); + String url = GPSConfigure.get("TYUrl")+"/"+orderNo+","+applyNo; + + System.err.println("***************天易--根据申请编号查询工单URL*****************"); + System.err.println(url); + System.err.println("***************天易--根据申请编号查询工单URL*****************"); + + Map params = GpsCommon.tyEditQueryParameter(applyNo); + System.err.println("***************天易--根据申请编号查询工单上传参数*****************"); + System.err.println(params); + System.err.println("***************天易--根据申请编号查询工单上传参数*****************"); + + Map resultMap = HttpClientSUtil.doGet(url, params, null); + String data = resultMap.get("data"); + System.err.println("***************天易--根据申请编号查询工单返回参数*****************"); + System.err.println(data); + System.err.println("***************天易--根据申请编号查询工单返回参数*****************"); + + //日志参数 + Map logMap = new HashMap(); + logMap.put("URL",url); + logMap.put("UPLOAD_PARAMETER",params.toString()); + logMap.put("RETURN_PARAMETER",data); + logMap.put("CALL_USERID",userId); + logMap.put("FLOWUNID",flowUnid); + logMap.put("PROJECT_ID",projectId); + logMap.put("CALL_PURPOSE","天易--根据申请编号查询工单"); + logMap.put("CALL_STATUS",resultMap.get("status")); + GpsCommon.callRecord(logMap, Sqlca); + + return GpsCommon.tyQueryDataPersistence(data,applyNo,tableName,Sqlca); + } + + /** + * 天易--根据车架号查询工单 + * @throws Exception + */ + public boolean queryOrderToVin() throws Exception{ + String url = GPSConfigure.get("TYQueryOrderToVin"); + + System.err.println("***************天易--根据车架号查询工单URL*****************"); + System.err.println(url); + System.err.println("***************天易--根据车架号查询工单URL*****************"); + + Map params = GpsCommon.tyEditQueryToVinParameter(vin); + System.err.println("***************天易--根据车架号查询工单上传参数*****************"); + System.err.println(params); + System.err.println("***************天易--根据车架号查询工单上传参数*****************"); + + Map resultMap = HttpClientSUtil.doGet(url, params, null); + String data = resultMap.get("data"); + System.err.println("***************天易--根据车架号查询工单返回参数*****************"); + System.err.println(data); + System.err.println("***************天易--根据车架号查询工单返回参数*****************"); + + JBOTransaction tx = JBOFactory.createJBOTransaction(); + Transaction Sqlca = Transaction.createTransaction(tx); + //日志参数 + Map logMap = new HashMap(); + logMap.put("URL",url); + logMap.put("UPLOAD_PARAMETER",params.toString()); + logMap.put("RETURN_PARAMETER",data); + logMap.put("CALL_USERID",userId); + logMap.put("FLOWUNID",flowUnid); + logMap.put("PROJECT_ID",projectId); + logMap.put("CALL_PURPOSE","天易--根据车架号查询工单"); + logMap.put("CALL_STATUS",resultMap.get("status")); + GpsCommon.callRecord(logMap, Sqlca); + Sqlca.disConnect(); + return GpsCommon.tyQueryToVinDataPersistence(data); + } + + + + /** + * 天易--修改工单 + * @throws Exception + */ + public String alterOrder(JBOTransaction tx) throws Exception{ + Transaction Sqlca = Transaction.createTransaction(tx); + String url = GPSConfigure.get("TYUrl"); + String params = GpsCommon.tyEditAlterParameter(applyNo,this.params,Sqlca); + System.err.println("***************天易--修改工单上传参数*****************"); + System.err.println(params); + System.err.println("***************天易--修改工单上传参数*****************"); + + Map resultMap = HttpClientSUtil.doPutJson(url, params); + String data = resultMap.get("data"); + System.err.println("***************天易--修改工单返回参数*****************"); + System.err.println(data); + System.err.println("***************天易--修改工单返回参数*****************"); + + Map logMap = new HashMap(); + logMap.put("URL",url); + logMap.put("UPLOAD_PARAMETER",params.toString()); + logMap.put("RETURN_PARAMETER",data); + logMap.put("CALL_USERID",userId); + logMap.put("FLOWUNID",flowUnid); + logMap.put("PROJECT_ID",projectId); + logMap.put("CALL_PURPOSE","天易--修改工单"); + logMap.put("CALL_STATUS",resultMap.get("status")); + GpsCommon.callRecord(logMap, Sqlca); + + JSONObject job = JSONObject.fromObject(data); + String result = job.getString("result"); + if("0".equals(result)){ + String success = job.getString("success"); + if("true".equals(success)){ + Sqlca.executeSQL("update LM_GPS_ORDER_TEMP set RESULT='"+result+"',MESSAGE='修改成功' where APPLY_NO='"+applyNo+"'"); + return "修改成功!"; + }else{ + String orderStep = job.getString("orderStep"); + String itemname = Sqlca.getString("select cl.itemname from code_library cl where cl.codeno='gps_order_step' and cl.itemno='"+orderStep+"'"); + return "修改失败,当前订单状态为"+itemname; + } + }else{ + Sqlca.executeSQL("update LM_GPS_ORDER_TEMP set RESULT='"+result+"',MESSAGE='修改失败,"+job.getString("message")+"' where APPLY_NO='"+applyNo+"'"); + return "修改失败,"+job.getString("message"); + } + } + + + /** + * 天易--取消工单 + * @throws Exception + */ + public String cancelOrder(JBOTransaction tx) throws Exception{ + Transaction Sqlca = Transaction.createTransaction(tx); + String url = GPSConfigure.get("TYUrl"); + System.err.println("***************天易--取消工单URL*****************"); + System.err.println(url); + System.err.println("***************天易--取消工单URL*****************"); + + Map params = GpsCommon.tyEditQueryParameter(applyNo); + String params2 = JSON.toJSONString(params); + System.err.println("***************天易--取消工单上传参数*****************"); + System.err.println(params2); + System.err.println("***************天易--取消工单上传参数*****************"); + + Map resultMap = HttpClientSUtil.doPatchJson(url, params2); + String data = resultMap.get("data"); + System.err.println("***************天易--查询工单返回参数*****************"); + System.err.println(data); + System.err.println("***************天易--查询工单返回参数*****************"); + + Map logMap = new HashMap(); + logMap.put("URL",url); + logMap.put("UPLOAD_PARAMETER",params.toString()); + logMap.put("RETURN_PARAMETER",data); + logMap.put("CALL_USERID",userId); + logMap.put("FLOWUNID",flowUnid); + logMap.put("PROJECT_ID",projectId); + logMap.put("CALL_PURPOSE","天易--取消工单"); + logMap.put("CALL_STATUS",resultMap.get("status")); + GpsCommon.callRecord(logMap, Sqlca); + + JSONObject job = JSONObject.fromObject(data); + String result = job.getString("result"); + if("0".equals(result)){ + String success = job.getString("success"); + if("true".equals(success)){ + Sqlca.executeSQL("update LM_GPS_ORDER_TEMP set RESULT='"+result+"',MESSAGE='取消成功' where APPLY_NO='"+applyNo+"'"); + return "取消成功!"; + }else{ + String orderStep = job.getString("orderStep"); + String itemname = Sqlca.getString("select cl.itemname from code_library cl where cl.codeno='gps_order_step' and cl.itemno='"+orderStep+"'"); + return "取消失败,当前订单状态为"+itemname; + } + }else{ + Sqlca.executeSQL("update LM_GPS_ORDER_TEMP set RESULT='"+result+"',MESSAGE='取消失败,"+job.getString("message")+"' where APPLY_NO='"+applyNo+"'"); + return "取消失败,"+job.getString("message"); + } + } + + + /** + * 天易--获取图片 + * @throws Exception + */ + public String getImage(JBOTransaction tx) throws Exception{ + Transaction Sqlca = Transaction.createTransaction(tx); + ASResultSet res = Sqlca.getASResultSet(new SqlObject("SELECT url FROM lm_gps_photo WHERE apply_no='"+applyNo+"'")); + StringBuffer strb = null; + while(res.next()){ + if(strb==null){ + strb = new StringBuffer(res.getString("url")); + }else{ + strb.append(","+res.getString("url")); + } + } + res.close(); + return strb.toString(); + } +} From 08b0734d1c11ec42fd0158d6b04cbedbe00baa1f Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:31:14 +0800 Subject: [PATCH 13/20] gps --- src_tenwa/com/tenwa/gps/HttpClientSUtil.java | 214 +++++++++++++++++++ 1 file changed, 214 insertions(+) create mode 100644 src_tenwa/com/tenwa/gps/HttpClientSUtil.java diff --git a/src_tenwa/com/tenwa/gps/HttpClientSUtil.java b/src_tenwa/com/tenwa/gps/HttpClientSUtil.java new file mode 100644 index 000000000..a9cd4e108 --- /dev/null +++ b/src_tenwa/com/tenwa/gps/HttpClientSUtil.java @@ -0,0 +1,214 @@ +package com.tenwa.gps; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; +import org.apache.http.NameValuePair; +import org.apache.http.client.HttpClient; +import org.apache.http.client.entity.UrlEncodedFormEntity; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.methods.HttpPatch; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.client.methods.HttpPut; +import org.apache.http.client.utils.URIBuilder; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.message.BasicNameValuePair; +import org.apache.http.util.EntityUtils; +public class HttpClientSUtil { + + private static HttpClient httpClient = HttpClientBuilder.create().build();; + + //patch请求 + public static Map doPatchJson(String url, String params) throws Exception{ + + HttpPatch patch = new HttpPatch(url); + + //设置参数以及编码 + StringEntity entity = new StringEntity(params,"UTF-8"); + //设置请求头,服务器接收参数的格式以及编码格式 + entity.setContentType("application/json;charset=UTF-8"); + //发起httppatch请求 + patch.setEntity(entity); + HttpResponse response = httpClient.execute(patch); + // 判断返回状态为200时解析返回数据 + System.err.println(response.getStatusLine().getStatusCode()); + Map resultMap = new HashMap(); + resultMap.put("data",EntityUtils.toString(response.getEntity(),"UTF-8")); + resultMap.put("status",String.valueOf(response.getStatusLine().getStatusCode())); + return resultMap; + } + + //put请求,参数为json + public static Map doPutJson(String url, String json) throws Exception{ + HttpPut put = new HttpPut(url); + //设置参数以及编码 + StringEntity entity = new StringEntity(json,"UTF-8"); + //设置请求头,服务器接收参数的格式以及编码格式 + entity.setContentType("application/json;charset=UTF-8"); + //发起httpPut请求 + put.setEntity(entity); + HttpResponse response = httpClient.execute(put); + //返回结果解析 + HttpEntity httpEntity =response.getEntity(); + Map resultMap = new HashMap(); + resultMap.put("data",EntityUtils.toString(response.getEntity(),"UTF-8")); + resultMap.put("status",String.valueOf(response.getStatusLine().getStatusCode())); + return resultMap; + } + + //Post请求,参数为json + public static Map doPostJson(String url, String json) throws Exception{ + + HttpPost post = new HttpPost(url); + //设置参数以及编码 + StringEntity entity = new StringEntity(json,"UTF-8"); + //设置请求头,服务器接收参数的格式以及编码格式 + entity.setContentType("application/json;charset=UTF-8"); + //发起httpPost请求 + post.setEntity(entity); + HttpResponse response = httpClient.execute(post); + //返回结果解析 + HttpEntity httpEntity =response.getEntity(); + Map resultMap = new HashMap(); + resultMap.put("data",EntityUtils.toString(response.getEntity(),"UTF-8")); + resultMap.put("status",String.valueOf(response.getStatusLine().getStatusCode())); + return resultMap; + } + + //Post请求,参数为xml + public static Map doPostXml(String url, String xml) throws Exception{ + + HttpPost post = new HttpPost(url); + //设置参数以及编码 + StringEntity entity = new StringEntity(xml,"UTF-8"); + //设置请求头,服务器接收参数的格式以及编码格式 + entity.setContentType("application/xml;charset=UTF-8"); + //发起httpPost请求 + post.setEntity(entity); + HttpResponse response = httpClient.execute(post); + //返回结果解析 + HttpEntity httpEntity =response.getEntity(); + Map resultMap = new HashMap(); + resultMap.put("data",EntityUtils.toString(response.getEntity(),"UTF-8")); + resultMap.put("status",String.valueOf(response.getStatusLine().getStatusCode())); + return resultMap; + } + + // post请求,参数为Map + /** + * + * @param url //请求路径 + * @param params //请求参数 + * @param appkey //身份验证秘钥 + * @param encode //编码格式 + * @return + * @throws Exception + */ + public static Map doPost(String url,Map params,String appkey,String encode) throws Exception{ + + HttpPost post = new HttpPost(url); + //设置参数以及编码 + if (null != params) { + //添加请求参数 + List parameters = new ArrayList(0); + for (Map.Entry entry : params.entrySet()) { + parameters.add(new BasicNameValuePair(entry.getKey(), entry.getValue())); + } + + //设置编码格式以及服务器解码格式 + if(encode==null){ + encode ="UTF-8"; + } + // 构造一个form表单式的实体 + UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(parameters,encode); + + // 将请求实体设置到httpPost对象中 + post.setEntity(formEntity); + if(appkey!=null){ + //设置请求头,添加身份验证码 + post.addHeader("appkey",appkey); + } + post.addHeader("Content-Type","application/x-www-form-urlencoded"); + } + // 执行请求 + HttpResponse response = httpClient.execute(post); + Map resultMap = new HashMap(); + resultMap.put("data",EntityUtils.toString(response.getEntity(),"UTF-8")); + resultMap.put("status",String.valueOf(response.getStatusLine().getStatusCode())); + return resultMap; + } + + // post请求,参数为Map,返回为byte[] + /** + * + * @param url //请求路径 + * @param params //请求参数 + * @param appkey //身份验证秘钥 + * @param encode //编码格式 + * @return + * @throws Exception + */ + public static Map doPostRbyte(String url,Map params,String appkey,String encode) throws Exception{ + + HttpPost post = new HttpPost(url); + //设置参数以及编码 + if (null != params) { + //添加请求参数 + List parameters = new ArrayList(0); + for (Map.Entry entry : params.entrySet()) { + parameters.add(new BasicNameValuePair(entry.getKey(), entry.getValue())); + } + + //设置编码格式以及服务器解码格式 + if(encode==null){ + encode ="UTF-8"; + } + // 构造一个form表单式的实体 + UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(parameters,encode); + + // 将请求实体设置到httpPost对象中 + post.setEntity(formEntity); + if(appkey!=null){ + //设置请求头,添加身份验证码 + post.addHeader("appkey",appkey); + } + } + // 执行请求 + HttpResponse response = httpClient.execute(post); + Map resultMap = new HashMap(); + resultMap.put("data",EntityUtils.toString(response.getEntity(),"UTF-8")); + resultMap.put("status",String.valueOf(response.getStatusLine().getStatusCode())); + return resultMap; + } + + + //HTTPGet请求 + public static Map doGet(String url,Map params,String appkey) throws Exception{ + //将参数写到请求路径上 + if(null != params){ + URIBuilder builder = new URIBuilder(url); + for (Map.Entry entry : params.entrySet()) { + builder.setParameter(entry.getKey(), entry.getValue()); + } + url = builder.build().toString(); + } + //创建HPPTGet对象 + HttpGet get = new HttpGet(url); + + if(appkey!=null){ + //设置请求头,添加身份验证码 + get.addHeader("appkey",appkey); + } + // 执行请求 + HttpResponse response = httpClient.execute(get); + Map resultMap = new HashMap(); + resultMap.put("data",EntityUtils.toString(response.getEntity(),"UTF-8")); + resultMap.put("status",String.valueOf(response.getStatusLine().getStatusCode())); + return resultMap; + } +} From 288e728c1d4929515d79233021ff75c4cea8dc0e Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:38:33 +0800 Subject: [PATCH 14/20] =?UTF-8?q?=E6=96=B0=E5=A2=9EGPS=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- WebContent/WEB-INF/etc/jbo/jbo_sys.xml | 110 +++++++++++++++++++++++++ 1 file changed, 110 insertions(+) diff --git a/WebContent/WEB-INF/etc/jbo/jbo_sys.xml b/WebContent/WEB-INF/etc/jbo/jbo_sys.xml index 34988d486..43130ed22 100644 --- a/WebContent/WEB-INF/etc/jbo/jbo_sys.xml +++ b/WebContent/WEB-INF/etc/jbo/jbo_sys.xml @@ -2306,5 +2306,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 963284099625b4c56ea07d20f97f203a36f326ff Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:42:23 +0800 Subject: [PATCH 15/20] =?UTF-8?q?GPS=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/gps.properties | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/config/gps.properties b/config/gps.properties index 1b14f0622..358b7b24d 100644 --- a/config/gps.properties +++ b/config/gps.properties @@ -1,2 +1,5 @@ -APPKEY = 2C6074D0-C8E4-4BA4-A50A-E3A46EAD394A -GetCarStateInfo = http://lcrmapi.lunztech.cn/api/InterFace/GetCarStateInfo?appkey={appkey} \ No newline at end of file +TYuserAccount=tianyitest +TYtoken=9999 +TYsign=3474A2D7CFEC5DECD54DE8A263F7A4A9 +TYUrl=http://121.43.178.183:9989/dispatch_intf/apiController/order +TYQueryOrderToVin=http://api.tianyigps.cn/gps-intf/api2/getGpsInfosByCarVin \ No newline at end of file From b26b41d6fa347be71719a5ff94507ab3496b20ef Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:45:49 +0800 Subject: [PATCH 16/20] =?UTF-8?q?GPS=E5=B1=95=E7=A4=BA=E5=AE=89=E8=A3=85?= =?UTF-8?q?=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FlowBussinessView/ProductView.jsp | 7 +++++++ .../FlowManager/FlowPage/FlowPageViewTab.jsp | 19 +++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/WebContent/Tenwa/Core/FlowManager/FlowBussinessView/ProductView.jsp b/WebContent/Tenwa/Core/FlowManager/FlowBussinessView/ProductView.jsp index 948c52ba9..5ca573ce4 100644 --- a/WebContent/Tenwa/Core/FlowManager/FlowBussinessView/ProductView.jsp +++ b/WebContent/Tenwa/Core/FlowManager/FlowBussinessView/ProductView.jsp @@ -97,6 +97,13 @@ <%/*~BEGIN~可编辑区[Editable=true;CodeAreaID=View06;Describe=在页面装载时执行,初始化]~*/%> <%/*~END~*/%> <%@ include file="/IncludeEnd.jsp"%> diff --git a/WebContent/Tenwa/Core/FlowManager/FlowPage/FlowPageViewTab.jsp b/WebContent/Tenwa/Core/FlowManager/FlowPage/FlowPageViewTab.jsp index 2dcd3dfe6..903903b6e 100644 --- a/WebContent/Tenwa/Core/FlowManager/FlowPage/FlowPageViewTab.jsp +++ b/WebContent/Tenwa/Core/FlowManager/FlowPage/FlowPageViewTab.jsp @@ -53,6 +53,7 @@ %> +
@@ -233,5 +234,23 @@ function deleteConfigFlowToOtherUser(){ FlowFunction.deleteConfigFlowToOtherUser(tasknos.split(","),param["ObjectNo"]); reloadSelf(); } +var viewer=null; +function showImage(){ + if(viewer==null){ + alert("暂无图片信息!"); + return ; + } + viewer.show(); +} + +function editImage(ul){ + if(viewer==null){ + $("body").append(ul); + viewer = new Viewer(document.getElementById('dowebok'), { + url: 'data-original' + }); + } +} + <%@ include file="/IncludeEnd.jsp"%> \ No newline at end of file From e5e58d79c9f3d9c789c8962f382ae4d41025bc28 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:47:33 +0800 Subject: [PATCH 17/20] =?UTF-8?q?=E9=A3=8E=E9=99=A9=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AutoRiskDetect/ScenarioAlarm.jsp | 262 ++++++++++-------- 1 file changed, 143 insertions(+), 119 deletions(-) diff --git a/WebContent/AppConfig/AutoRiskDetect/ScenarioAlarm.jsp b/WebContent/AppConfig/AutoRiskDetect/ScenarioAlarm.jsp index 9994b4251..e73ff26c1 100644 --- a/WebContent/AppConfig/AutoRiskDetect/ScenarioAlarm.jsp +++ b/WebContent/AppConfig/AutoRiskDetect/ScenarioAlarm.jsp @@ -1,15 +1,25 @@ <%@ page contentType="text/html; charset=GBK"%> -<%@ include file="/IncludeBegin.jsp"%> +<%@ include file="/IncludeBegin.jsp"%> <%@page import="com.amarsoft.app.alarm.*"%> <%@page import="com.tenwa.alarm.*"%> <%@page import="com.amarsoft.awe.util.ObjectConverts"%> <%@page import="java.util.List"%> <%@page import="java.util.ArrayList"%> - + <% //获得组件参数 String sScenarioNo = CurPage.getParameter("ScenarioNo"); String sBizArg = CurPage.getParameter("BizArg"); + String [] bizArr = sBizArg.split(","); + String ProjectNo=""; + for(int i=0;i - -
- <% - List gList0 = context.getScenario().getGroupList(); - List gList = new ArrayList(); - - //根据运行条件进行预处理,分组下检查项检查条件均没通过,则不显示该分组 - for(int i=0;i ckList0 = group.getCheckItemList(); - List ckList1 = new ArrayList(); //存放检查通过的 - for(int j=0;j0){ - boolean bCondition = StringTool.runAmarScript(Sqlca, sCondition, context.getParameter()).booleanValue(); - if(!bCondition)continue; - else ckList1.add(ckItem); - }else{ - ckList1.add(ckItem); - } - } - if(ckList1.size()>0){ //重组分组 - group.getCheckItemList().clear(); - group.getCheckItemList().addAll(ckList1); - gList.add(group); - } - } - //生成界面 - for(int i=0;i ckList = group.getCheckItemList(); - %> -
-
-
<%=group.getGroupName()%>
-
-
-
-
- - - - - - - - - - - <%for(int j=0;j0){ - viewNode = "修改"; - } - %> - - <%if(ckItem.getItemID().equals("0027")||ckItem.getItemID().equals("0028")){ - autoCommit="fales"; - %> - - <%}else{ %> - - <%} %> - - - - - <%}%> - -
处理的任务处理结果提示信息
<%=ckItem.getItemName()%><%=ckItem.getItemName()%>
 
-
- -
- <%}%> -
- - + +
+ <% + List gList0 = context.getScenario().getGroupList(); + List gList = new ArrayList(); + + //根据运行条件进行预处理,分组下检查项检查条件均没通过,则不显示该分组 + for(int i=0;i ckList0 = group.getCheckItemList(); + List ckList1 = new ArrayList(); //存放检查通过的 + for(int j=0;j0){ + boolean bCondition = StringTool.runAmarScript(Sqlca, sCondition, context.getParameter()).booleanValue(); + if(!bCondition)continue; + else ckList1.add(ckItem); + }else{ + ckList1.add(ckItem); + } + } + if(ckList1.size()>0){ //重组分组 + group.getCheckItemList().clear(); + group.getCheckItemList().addAll(ckList1); + gList.add(group); + } + } + //生成界面 + for(int i=0;i ckList = group.getCheckItemList(); + %> +
+
+
<%=group.getGroupName()%>
+
+
+
+
+
+ + + + + + + + + + <% + for(int j=0;j0){ + viewNode = "修改"; + } + %> + + <% + if(ckItem.getItemID().equals("0027")||ckItem.getItemID().equals("0028")){ + autoCommit="fales"; + %> + + <% + }else{ + %> + + <% + } + %> + + + + + <% + } + %> + +
处理的任务处理结果提示信息
<%=ckItem.getItemName()%><%=ckItem.getItemName()%>
 
+
+ +
+ <% + } + %> +
+ + - + - + - +
- - - - - - -
<%=new Button("重新检查","重新检查","reRun()","","btn_icon_refresh").getHtmlText()%><%=new Button("确定","确定","alarm_ok()","","btn_icon_submit").getHtmlText()%><%=new Button("取消","取消","alarm_exit()","","btn_icon_close").getHtmlText()%>
-
+ + + + + + +
<%=new Button("重新检查","重新检查","reRun()","","btn_icon_refresh").getHtmlText()%><%=new Button("确定","确定","alarm_ok()","","btn_icon_submit").getHtmlText()%><%=new Button("取消","取消","alarm_exit()","","btn_icon_close").getHtmlText()%>
+
-
+ <%@ include file="/IncludeEnd.jsp"%> \ No newline at end of file From 40120b5ecb08140c3af4bc036c33d3cc7d5fa917 Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:49:43 +0800 Subject: [PATCH 18/20] =?UTF-8?q?=E7=A7=9F=E8=B5=81=E7=89=A9=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E8=BD=A6=E6=9E=B6=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Flow/Comm/LBEquipment_Car/LBEquipmentInfo.jsp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/WebContent/Tenwa/Lease/Flow/Comm/LBEquipment_Car/LBEquipmentInfo.jsp b/WebContent/Tenwa/Lease/Flow/Comm/LBEquipment_Car/LBEquipmentInfo.jsp index 301498a13..ca8932322 100644 --- a/WebContent/Tenwa/Lease/Flow/Comm/LBEquipment_Car/LBEquipmentInfo.jsp +++ b/WebContent/Tenwa/Lease/Flow/Comm/LBEquipment_Car/LBEquipmentInfo.jsp @@ -32,13 +32,14 @@ <%/*~BEGIN~可编辑区~[Editable=true;CodeAreaID=List02;Describe=定义变量,获取参数;]~*/%> <% String sFlowUnid = CurPage.getParameter("FlowUnid");//流程编号 + String ProjectNo = CurPage.getParameter("ProjectNo"); String projectId = CurPage.getParameter("ProjectId"); String ApplyType = CurPage.getParameter("ApplyType"); String flowName = CurPage.getParameter("FlowName");//流程名称 String contractid = CurPage.getParameter("ContractId"); String showtype = CurPage.getParameter("ShowType"); String operationType = CurPage.getParameter("operationType"); - + String status = Sqlca.getString("select STATUS from LM_GPS_ORDER_TEMP where APPLY_NO='"+ProjectNo+"'"); BizObject boLPI= JBOFactory.createBizObjectQuery(LB_PROJECT_INFO.CLASS_NAME,"ID='"+projectId+"'").getSingleResult(false); //String carType=boLPI.getAttribute("CAR_TYPE").toString(); String carType="new_car"; @@ -444,6 +445,13 @@ } function checkFrameNumber(){ + + if("1"=='<%=status%>'||"8"=='<%=status%>'){ + alert("车架号改变后请修改GPS工单!"); + }else if("2"=='<%=status%>'||"3"=='<%=status%>'||"4"=='<%=status%>'||"5"=='<%=status%>'){ + alert("GPS工单当前状态无法线上修改工单,请线下操作!"); + } + var vin = getItemValue(0,getRow(0),"FRAME_NUMBER"); if((typeof(vin) == "undefined" || vin == "")){ setErrorTips("FRAME_NUMBER",""); @@ -575,6 +583,7 @@ } },"选择车辆"); } + <%/*~END~*/%> From 74411908f9fe065b56ba7199ac198d704f8095cf Mon Sep 17 00:00:00 2001 From: lixuebo Date: Wed, 17 Jul 2019 11:51:38 +0800 Subject: [PATCH 19/20] =?UTF-8?q?=E4=BB=98=E6=AC=BE=E7=94=B3=E8=AF=B7?= =?UTF-8?q?=E6=9C=AC=E5=9C=B0=E5=8E=BB=E6=8E=89=E7=9F=AD=E4=BF=A1=E9=AA=8C?= =?UTF-8?q?=E8=AF=81=EF=BC=8C=E5=8D=87=E7=BA=A7=E6=AD=A3=E5=BC=8F=E8=A6=81?= =?UTF-8?q?=E6=B3=A8=E6=84=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Lease/Flow/Fund/FundPayment/FundPaymentApplyList.jsp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/WebContent/Tenwa/Lease/Flow/Fund/FundPayment/FundPaymentApplyList.jsp b/WebContent/Tenwa/Lease/Flow/Fund/FundPayment/FundPaymentApplyList.jsp index 5dfe22c5f..d6c076616 100644 --- a/WebContent/Tenwa/Lease/Flow/Fund/FundPayment/FundPaymentApplyList.jsp +++ b/WebContent/Tenwa/Lease/Flow/Fund/FundPayment/FundPaymentApplyList.jsp @@ -18,11 +18,11 @@ return; } sReturn = sReturn.split("@"); - var sReturnInfo = RunJavaMethodTrans("com.tenwa.lease.flow.contract.check.ContractInfoCheck","ProjectSignStatus","projectid="+sReturn[1]); - if("error"==sReturnInfo){ + /*var sReturnInfo = RunJavaMethodTrans("com.tenwa.lease.flow.contract.check.ContractInfoCheck","ProjectSignStatus","projectid="+sReturn[1]); + if("error"==sReturnInfo){ alert("请提醒客户查看手机短信,首先完成扣款卡的签约验证!"); return; - } + } */ var contract_id = sReturn[0]; var proj_id = sReturn[1]; var productId = sReturn[2]; From 9eb50ad9302299881ae540ee32f28f008f23ccff Mon Sep 17 00:00:00 2001 From: xiezhiwen Date: Wed, 17 Jul 2019 12:09:52 +0800 Subject: [PATCH 20/20] =?UTF-8?q?=E5=87=AD=E8=AF=81=E7=9B=B8=E5=85=B3-?= =?UTF-8?q?=E5=87=AD=E8=AF=81=E6=8E=A5=E5=8F=A3=E5=8F=98=E6=9B=B4=E5=8F=8A?= =?UTF-8?q?=E4=BA=8C=E6=9C=9F=E9=9C=80=E6=B1=8227=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CreateVoucherEbankMoney.java | 87 ++++++++++++++++++ .../ContractCorpusAddInterestTaxMoney.java | 22 +++++ .../ContractCorpusTaxMoney.java | 22 +++++ .../CreateVoucherLoanDistributor.java | 74 +++++++--------- .../CreateVoucherRedCompensatory.java | 88 +++++++++++++++++++ .../serviceImp/CreateVoucherServiceImpl.java | 12 +-- .../VoucherToNCforAssistContract.java | 53 ++++------- .../serviceImp/VoucherToNCforCustomer.java | 52 ++++------- .../serviceImp/VoucherToNCforDistributor.java | 52 ++++------- .../serviceImp/VoucherToNCforVoucherPZ.java | 42 +++------ 10 files changed, 328 insertions(+), 176 deletions(-) create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherEbankMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/ContractCorpusAddInterestTaxMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/ContractCorpusTaxMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedCompensatory.java diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherEbankMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherEbankMoney.java new file mode 100644 index 000000000..896f18614 --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherEbankMoney.java @@ -0,0 +1,87 @@ +package com.tenwa.voucher.CreateVoucherProcess; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import jbo.voucher.LV_VOUCHER_CONFIG; +import jbo.voucher.TAX_CODE; + +import com.amarsoft.are.jbo.BizObject; +import com.amarsoft.are.jbo.JBOException; +import com.amarsoft.are.jbo.JBOFactory; +import com.amarsoft.awe.util.ASResultSet; +import com.amarsoft.awe.util.Transaction; +import com.amarsoft.dict.als.cache.CacheLoaderFactory; +import com.tenwa.comm.util.jboutil.DataOperatorUtil; +import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl; + +/** + * 汽车多雨还款分解 + */ +public class CreateVoucherEbankMoney { + public void CreateVoucher(String flowunid,String VOUCHERNO,String userid,Transaction Sqlca) throws Exception{ + Transaction Sqlca1 =null; + Map map=new HashMap(); + Map param=new HashMap(); + Sqlca1 = Transaction.createTransaction(CacheLoaderFactory.getDataSource()); + ASResultSet rs=null; + CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl(); + String VOUCHER_TYPE="1";// 凭证分类 金蝶 + String MONEY=null; + String ACCOUNT_DATE=null; + String FACT_DATE=null; + String CONTRACT_ID=null; + String CONTRACT_NUMBER=null; + String leas_form=null; + String CUSTID=null; + String CUSTNAME=null; + + String sql=""; + param.clear(); + map.clear(); + + map.put("FLOWUNID", flowunid); + // 回款-多余回款分解 + if("PZ2019070100000018".equals(VOUCHERNO)){ + sql= "SELECT IFNULL(LE.MAYOPE_MONEY, 0) AS MONEY,DATE_FORMAT(NOW(),'%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(NOW(),'%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,LPI.BUSINESSTYPE FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID=LRIT.CONTRACT_ID AND LRI.PLAN_LIST=LRIT.PLAN_LIST AND LRI.HIRE_DATE=LRIT.HIRE_DATE LEFT JOIN LC_EBANK LE ON LE.EBANK_SN = LRI.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '1' AND LUL.IS_MAIN = 'Y' AND IFNULL(LE.MAYOPE_MONEY, 0) > 0 AND LRIT.FLOWUNID = :FLOWUNID "; + }else if("PZ2019070100000024".equals(VOUCHERNO)){ + sql= "SELECT -IFNULL(LE.MAYOPE_MONEY, 0) AS MONEY,DATE_FORMAT(NOW(),'%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(NOW(),'%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,LPI.BUSINESSTYPE FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID=LRIT.CONTRACT_ID AND LRI.PLAN_LIST=LRIT.PLAN_LIST AND LRI.HIRE_DATE=LRIT.HIRE_DATE LEFT JOIN LC_EBANK LE ON LE.EBANK_SN = LRI.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '1' AND LUL.IS_MAIN = 'Y' AND IFNULL(LE.MAYOPE_MONEY, 0) > 0 AND LRIT.FLOWUNID = :FLOWUNID "; + } + rs=Sqlca.getASResultSet(sql); + + while(rs.next()){ + MONEY=rs.getString("MONEY"); + ACCOUNT_DATE=rs.getString("ACCOUNT_DATE"); + FACT_DATE =rs.getString("FACT_DATE"); + CONTRACT_ID=rs.getString("CONTRACT_ID"); + CONTRACT_NUMBER=rs.getString("CONTRACT_NUMBER"); + leas_form="01"; + CUSTID=rs.getString("CUSTOMERID"); + CUSTNAME=rs.getString("CUSTOMERNAME"); + + param.put("FACT_MONEY",MONEY); + param.put("ACCOUNT_DATE",ACCOUNT_DATE); + param.put("FACT_DATE",FACT_DATE); + param.put("CONTRACT_ID",CONTRACT_ID); + param.put("CONTRACT_NUMBER",CONTRACT_NUMBER); + param.put("LEAS_FORM",leas_form); + param.put("CUSTID",CUSTID); + param.put("CUSTNAME",CUSTNAME); + param.put("VOUCHERNO",VOUCHERNO); + + map.clear(); + map.put("PROJ_TYPE", leas_form); + map.put("VOUCHER_NO", VOUCHERNO); + BizObject vouch=DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca); + + if(vouch!=null){ + vs.createVoucher(vouch.getAttribute("id").getString(),vouch.getAttribute("MODULAR_NUMBER").getString(), vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid,param, Sqlca1); + } + } + if(Sqlca1!=null){ + rs.close(); + Sqlca1.commit(); + } + } +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/ContractCorpusAddInterestTaxMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/ContractCorpusAddInterestTaxMoney.java new file mode 100644 index 000000000..112c4a149 --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/ContractCorpusAddInterestTaxMoney.java @@ -0,0 +1,22 @@ +package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoan; +/*** + * 获取本金 + */ +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; + +public class ContractCorpusAddInterestTaxMoney implements VoucherJavaParamService{ + + @Override + public Map getJavaParam(JBOTransaction tx,Map param,Map subData) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("MONEY",param.get("CORPUS_ADD_INTEREST_TAX")); + return returnValue; + } + +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/ContractCorpusTaxMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/ContractCorpusTaxMoney.java new file mode 100644 index 000000000..8fc8f7181 --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/ContractCorpusTaxMoney.java @@ -0,0 +1,22 @@ +package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoan; +/*** + * 获取本金 + */ +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; + +public class ContractCorpusTaxMoney implements VoucherJavaParamService{ + + @Override + public Map getJavaParam(JBOTransaction tx,Map param,Map subData) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("MONEY",param.get("CORPUS_TAX")); + return returnValue; + } + +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java index 860cc45e9..6134af46f 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java @@ -56,50 +56,53 @@ public class CreateVoucherLoanDistributor { param.clear(); map.put("FlowUnid", FlowUnid); - // 确认GPS收入 - if("PZ2018073100000061".equals(VOUCHERNO)||"PZ2018080300000068".equals(VOUCHERNO)){ + // 确认GPS收入-回租/直租 + if("PZ2018073100000061".equals(VOUCHERNO) || "PZ2019070100000001".equals(VOUCHERNO)){ moneyDataSource="LCCT.GPS_FEE"; TAX_TYPE="GPS"; } - //收取首付款 - if("PZ2018070900000003".equals(VOUCHERNO)||"PZ2018080200000065".equals(VOUCHERNO)){ + // 收取首付款-回租/直租 + if("PZ2018070900000003".equals(VOUCHERNO) || "PZ2019070100000002".equals(VOUCHERNO)){ moneyDataSource="LCCT.FIRST_PAYMENT"; TAX_TYPE="本金"; } - //收取客户保证金 - if("PZ2018071000000004".equals(VOUCHERNO)||"PZ2018080300000070".equals(VOUCHERNO)){ + // 收取客户保证金-回租 + if("PZ2018071000000004".equals(VOUCHERNO)){ moneyDataSource="LCCT.CAUTION_MONEY"; TAX_TYPE="本金"; } - //收取客户手续费(一次性确认收入)/按月分摊 - if("PZ2018071000000007".equals(VOUCHERNO)||"PZ2018080300000072".equals(VOUCHERNO) || "PZ2018071000000009".equals(VOUCHERNO)||"PZ2018080300000073".equals(VOUCHERNO)){ + // 收取客户手续费(一次性确认收入)/按月分摊-回租 + if("PZ2018071000000007".equals(VOUCHERNO) || "PZ2018071000000009".equals(VOUCHERNO) || "PZ2019070100000005".equals(VOUCHERNO) || "PZ2019070100000006".equals(VOUCHERNO) ){ moneyDataSource="LCCT.HANDLING_CHARGE_MONEY"; TAX_TYPE="手续费"; } - if("PZ2018072400000060".equals(VOUCHERNO) || "PZ2018071000000005".equals(VOUCHERNO)||"PZ2018080300000069".equals(VOUCHERNO) || "PZ2018071000000006".equals(VOUCHERNO)||"PZ2018080300000071".equals(VOUCHERNO)) { - sql="SELECT IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,IFNULL(LRPT.INTEREST, 0) AS INTEREST,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS FIRST_ADD_FINANCING,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) - IFNULL(LCCT.CAUTION_MONEY, 0) - IFNULL(LCCT.GPS_FEE, 0) AS FINANCING_SUB_OTHERS,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) AS FIRST_ADD_HANDLING,IFNULL(LRPT.INTEREST, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY/getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),0) AS INTEREST_ADD_HANDLING,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LPI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT WHERE lfit.FEE_TYPE = 'feetype10' AND LFIT.EBANK_STATUS = '05' GROUP BY FLOWUNID,CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM lc_pay_rent_plan GROUP BY CONTRACT_ID)LRPT ON LRPT.CONTRACT_ID = LFIT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID "; - // 普通购置融资租赁产 + + // 合同起租(一次性确认收入)-回租&&合同起租(按月分摊收入)--回租 + if("PZ2018071000000005".equals(VOUCHERNO) || "PZ2018071000000006".equals(VOUCHERNO)) { + sql="SELECT IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,IFNULL(LRPT.INTEREST, 0) AS INTEREST,IFNULL(LCCT.FIRST_PAYMENT, 0) AS FIRST_ADD_FINANCING,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) - IFNULL(LCCT.CAUTION_MONEY, 0) - IFNULL(LCCT.GPS_FEE, 0) AS FINANCING_SUB_OTHERS,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) AS FIRST_ADD_HANDLING,IFNULL(LRPT.INTEREST, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY/getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),0) AS INTEREST_ADD_HANDLING,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LPI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT WHERE lfit.FEE_TYPE = 'feetype10' AND LFIT.EBANK_STATUS = '05' GROUP BY FLOWUNID,CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM lc_pay_rent_plan GROUP BY CONTRACT_ID)LRPT ON LRPT.CONTRACT_ID = LFIT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID "; + // 合同起租-直租 + }else if("PZ2019070100000004".equals(VOUCHERNO)) { + sql="SELECT (IFNULL(LCCT.EQUIP_AMT, 0)-IFNULL(LCCT.FIRST_PAYMENT, 0)) AS MONEY,ROUND((IFNULL(LCCT.EQUIP_AMT, 0)-IFNULL(LCCT.FIRST_PAYMENT, 0))/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS MONEYNOTAX,((IFNULL(LCCT.EQUIP_AMT, 0)-IFNULL(LCCT.FIRST_PAYMENT, 0))-ROUND((IFNULL(LCCT.EQUIP_AMT, 0)-IFNULL(LCCT.FIRST_PAYMENT, 0))/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS MONEYTAX,IFNULL(LRPT.INTEREST, 0) AS INTEREST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LPI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT WHERE lfit.FEE_TYPE = 'feetype10' AND LFIT.EBANK_STATUS = '05' GROUP BY FLOWUNID,CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM lc_pay_rent_plan GROUP BY CONTRACT_ID) LRPT ON LRPT.CONTRACT_ID = LFIT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID "; + // 购置融资租赁产-回租 }else if("PZ2018070900000002".equals(VOUCHERNO)) { sql="SELECT IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS FIRST_ADD_FINANCING,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) - IFNULL(LCCT.CAUTION_MONEY, 0) - IFNULL(LCCT.GPS_FEE, 0) AS FINANCING_SUB_OTHERS,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) AS FIRST_ADD_HANDLING,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID,PSL.payType FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO AND LFIT.CONTRACT_ID=LFICDT.CONTRACT_ID WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.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 LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND (PSL.operationType <>'DYCD' OR PSL.operationType IS NULL) AND LFIT.FLOWUNID = :FLOWUNID "; - //sql="SELECT IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS FIRST_ADD_FINANCING,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) - IFNULL(LCCT.CAUTION_MONEY, 0) - IFNULL(LCCT.GPS_FEE, 0) AS FINANCING_SUB_OTHERS,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) AS FIRST_ADD_HANDLING,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.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 LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID "; - // 第一车贷购置融资租赁资产 + // 购置融资租赁产-直租 + }else if("PZ2019070100000003".equals(VOUCHERNO)) { + sql="SELECT ROUND(IFNULL(LCCT.EQUIP_AMT, 0)/getTax(lci.LEAS_FORM,'本金',LCCT.START_DATE),2) AS MONEY,(IFNULL(LCCT.EQUIP_AMT, 0)-ROUND(IFNULL(LCCT.EQUIP_AMT, 0)/getTax(lci.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS MONEYTAX,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) - IFNULL(LCCT.CAUTION_MONEY, 0) - IFNULL(LCCT.GPS_FEE, 0) AS FINANCING_SUB_OTHERS,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) AS FIRST_ADD_HANDLING,IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID,PSL.payType FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO AND LFIT.CONTRACT_ID = LFICDT.CONTRACT_ID WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.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 LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID "; + // 第一车贷购置融资租赁资产-回租 }else if("PZ2018073100000062".equals(VOUCHERNO)){ sql="SELECT IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS MONEY,IFNULL(LCCT.FIRST_PAYMENT, 0) AS MONEYNOTAX,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID,PSL.payType FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.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 LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND PSL.operationType = 'DYCD' AND LFIT.FLOWUNID = :FLOWUNID "; - //sql="SELECT IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS MONEY,IFNULL(LCCT.FIRST_PAYMENT, 0) AS MONEYNOTAX,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.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 LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID "; }else { sql="SELECT ROUND((getTax(lci.LEAS_FORM,'"+TAX_TYPE+"',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,IFNULL("+moneyDataSource+", 0) AS MONEY,IFNULL(ROUND("+moneyDataSource+"/getTax (lci.LEAS_FORM,'"+TAX_TYPE+"',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL("+moneyDataSource+" - ROUND("+moneyDataSource+" / getTax (lci.LEAS_FORM,'"+TAX_TYPE+"',LCCT.START_DATE),2),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,MIN(ACC_NUMBER) ACC_NUMBER,MIN(EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS= '05' AND lfit.FLOWUNID = :FLOWUNID "; } - //else if("PZ2018122000000010".equals(VOUCHERNO)){ - // sql="SELECT IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,IFNULL(LRPT.INTEREST, 0) AS INTEREST,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS FIRST_ADD_FINANCING,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) - IFNULL(LCCT.CAUTION_MONEY, 0) - IFNULL(LCCT.GPS_FEE, 0)+IFNULL(LFIT2.T_FIRST_MONEY,0) AS FINANCING_SUB_OTHERS,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0)-IFNULL(LFIT2.T_FIRST_MONEY,0) AS FIRST_ADD_HANDLING,IFNULL(LRPT.INTEREST, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY / getTax (LCI.LEAS_FORM,'手续费',LCCT.START_DATE),0) AS INTEREST_ADD_HANDLING,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT MAX(LFIT.FACT_MONEY) T_FIRST_MONEY,LFIT.CONTRACT_ID FROM LC_FUND_INCOME_TEMP LFIT WHERE LFIT.FEE_TYPE='feetype27' GROUP BY LFIT.CONTRACT_ID)LFIT2 ON LFIT2.CONTRACT_ID=LFIT.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRPT ON LRPT.CONTRACT_ID = LFIT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.FLOWUNID = :FLOWUNID "; - //} // 手续费收入(一次性确认收入) - if("PZ2018071000000007".equals(VOUCHERNO)||"PZ2018080300000072".equals(VOUCHERNO) || "PZ2018071000000005".equals(VOUCHERNO)||"PZ2018080300000069".equals(VOUCHERNO)){ + if("PZ2018071000000007".equals(VOUCHERNO) || "PZ2018071000000005".equals(VOUCHERNO) || "PZ2019070100000005".equals(VOUCHERNO)){ sql+=" AND (lcct.HANDLING_CHARGE_MONEY_TYPE='0010' OR lcct.HANDLING_CHARGE_MONEY_TYPE IS NULL OR lcct.HANDLING_CHARGE_MONEY_TYPE='')"; } // 收到手续费(按月分摊收入) - if("PZ2018071000000009".equals(VOUCHERNO)||"PZ2018080300000073".equals(VOUCHERNO) || "PZ2018071000000006".equals(VOUCHERNO)||"PZ2018080300000071".equals(VOUCHERNO)){ + if("PZ2018071000000009".equals(VOUCHERNO) || "PZ2018071000000006".equals(VOUCHERNO) || "PZ2019070100000006".equals(VOUCHERNO)){ sql+=" AND lcct.HANDLING_CHARGE_MONEY_TYPE='0020' "; } @@ -155,25 +158,13 @@ public class CreateVoucherLoanDistributor { // 通过客户名称获取客户编码维护里面的数据, 如果有数据说明是集团内, 如果没有数据说明是集团外 BizObject cust_list1=JBOFactory.createBizObjectQuery(CUSTOMER_LIST.CLASS_NAME, "CUST_ID='"+DISTRIBUTOR_ID+"'").getSingleResult(false); BizObject cust_list2=JBOFactory.createBizObjectQuery(CUSTOMER_LIST.CLASS_NAME, "CUST_ID='"+CUSTID+"'").getSingleResult(false); - if("1".equals(BUSINESSTYPE)){ - if("PZ2018073100000061".equals(VOUCHERNO)||"PZ2018080300000068".equals(VOUCHERNO)){// 确认GPS收入 - param.put("CASHFLOW", "");// 现金流项目 - param.put("BUSINESSTYPE", "0601");// 主营类型 - }else if("PZ2018071000000007".equals(VOUCHERNO)||"PZ2018080300000072".equals(VOUCHERNO)){// 收取客户手续费 - param.put("CASHFLOW", "");// 现金流项目 - param.put("BUSINESSTYPE", "0604"); - }else if("PZ2018070900000002".equals(VOUCHERNO)||"PZ2018072400000060".equals(VOUCHERNO) || "PZ2018073100000062".equals(VOUCHERNO)){// 购置融资租赁资产 - if(cust_list1 != null || cust_list2 !=null) {// 集团内 - param.put("CASHFLOW", "11212");// 现金流项目 - }else {// 集团外 - param.put("CASHFLOW", "11213");// 现金流项目 - } - param.put("BUSINESSTYPE", ""); - }else { - param.put("CASHFLOW", "");// 现金流项目 - param.put("BUSINESSTYPE", "");// 主营类型 - } - } + + if(cust_list1 != null || cust_list2 !=null) {// 集团内 + param.put("CASHFLOW", "11212");// 现金流项目 + }else {// 集团外 + param.put("CASHFLOW", "11213");// 现金流项目 + } + param.put("BUSINESSTYPE", ""); param.put("FlowUnid", FlowUnid); map.clear(); @@ -258,13 +249,13 @@ public class CreateVoucherLoanDistributor { BizObject cust_list1=JBOFactory.createBizObjectQuery(CUSTOMER_LIST.CLASS_NAME, "CUST_ID='"+DISTRIBUTOR_ID+"'").getSingleResult(false); BizObject cust_list2=JBOFactory.createBizObjectQuery(CUSTOMER_LIST.CLASS_NAME, "CUST_ID='"+CUSTID+"'").getSingleResult(false); if("1".equals(BUSINESSTYPE)){ - if("PZ2018073100000061".equals(VOUCHERNO)||"PZ2018080300000068".equals(VOUCHERNO)){// 确认GPS收入 + if("PZ2018073100000061".equals(VOUCHERNO) || "PZ2019070100000001".equals(VOUCHERNO)){// 确认GPS收入 param.put("CASHFLOW", "");// 现金流项目 param.put("BUSINESSTYPE", "0601");// 主营类型 - }else if("PZ2018071000000007".equals(VOUCHERNO)||"PZ2018080300000072".equals(VOUCHERNO)){// 收取客户手续费 + }else if("PZ2018071000000007".equals(VOUCHERNO) || "PZ2019070100000005".equals(VOUCHERNO)){// 收取客户手续费 param.put("CASHFLOW", "");// 现金流项目 param.put("BUSINESSTYPE", "0604"); - }else if("PZ2018070900000002".equals(VOUCHERNO)||"PZ2018072400000060".equals(VOUCHERNO) || "PZ2018073100000062".equals(VOUCHERNO)){// 购置融资租赁资产 + }else if("PZ2018070900000002".equals(VOUCHERNO) || "PZ2019070100000003".equals(VOUCHERNO)){// 购置融资租赁资产 if(cust_list1 != null || cust_list2 !=null) {// 集团内 param.put("CASHFLOW", "11212");// 现金流项目 }else {// 集团外 @@ -289,7 +280,6 @@ public class CreateVoucherLoanDistributor { } } } - if(Sqlca!=null){ Sqlca.commit(); diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedCompensatory.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedCompensatory.java new file mode 100644 index 000000000..08f2e6a55 --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedCompensatory.java @@ -0,0 +1,88 @@ +package com.tenwa.voucher.CreateVoucherProcess; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import jbo.voucher.LV_VOUCHER_CONFIG; +import com.amarsoft.are.jbo.BizObject; +import com.amarsoft.awe.util.Transaction; +import com.amarsoft.dict.als.cache.CacheLoaderFactory; +import com.tenwa.comm.util.jboutil.DataOperatorUtil; +import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl; +/** + * 生成代偿反冲凭证 + */ +public class CreateVoucherRedCompensatory { + + public void CreateVoucher(String VOUCHERNO,String userid,String LRP_ID) throws Exception{ + Transaction Sqlca =null; + Map map=new HashMap(); + Map param=new HashMap(); + Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource()); + String MONEY=null; + String ACCOUNT_DATE=null; + String FACT_DATE=null; + String CONTRACT_ID=null; + String leas_form=null; + String DISTRIBUTOR_ID=null; + String DISTRIBUTOR_NAME=null; + String BUSINESSTYPE=null; + String PLAN_LIST=null; + String F58=null; + + String sql=""; + param.clear(); + map.clear(); + + // 代偿反冲-收到的租金 + if("PZ2019071500000030".equals(VOUCHERNO)){ + sql="SELECT -V8.MONEY AS MONEY,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID,V8.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58 FROM (SELECT SUM(F7) AS MONEY,MAX(F58) AS F58,MAX(F65) AS DISTRIBUTOR_CODING,MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到代偿的租金%' AND F58='"+LRP_ID+"' AND F59=1 GROUP BY F3)V8 LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=V8.F58 LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID WHERE LCI.BUSINESSTYPE='1' AND IFNULL(V8.MONEY,0)>0 AND V8.F58 NOT IN(SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿反冲-收到的租金%' GROUP BY F58) "; + // 代偿反冲-收到的逾期利息 + }else if("PZ2019071500000031".equals(VOUCHERNO)){ + sql="SELECT -V8.MONEY AS MONEY,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,V8.DISTRIBUTOR_CODING,V8.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58 FROM (SELECT SUM(F7) AS MONEY,MAX(F58) AS F58,MAX(F65) AS DISTRIBUTOR_CODING,MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿逾期利息%' AND F58='"+LRP_ID+"' AND F59=1 GROUP BY F3)V8 LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=V8.F58 LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID WHERE LCI.BUSINESSTYPE='1' AND IFNULL(V8.MONEY,0)>0 AND V8.F58 NOT IN(SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿反冲-收到的逾期利息%' GROUP BY F58) "; + } + + List> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, null); + + CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl(); + String VOUCHER_TYPE="1";// 凭证分类 金蝶 + + for (int i=0;i '"+batch+"' AND XML_TYPE= '"+type+"'").getSingleResult(false); - if(old_record ==null) { - failed_count++; - }*/ } // 判断集合为否为null, 不为空遍历集合, 获取旧数据的批次号 @@ -618,6 +609,9 @@ public class VoucherToNCforAssistContract implements Job{ logger.info("导入成功"); // count不等于0说明有新数据, 否则就只有旧的错误数据, 不需要新增 if(count != 0 ) { + // 传输成功后将本批次数据变更为传输成功! + updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE='传输成功 !' WHERE XML_TYPE= '"+type+"' AND BATCH='"+batch+"'"; + Sqlca.executeSQL(updateSql); // 将本次导入信息记录入记录总表 String insertSql1="INSERT INTO NCXML_TOTAL_RECORDS(ID,BATCH,XML_TYPE,FLAG_,COUNT_,FAILED_COUNT,ERR_DESCRIBE,CREATETIME) VALUES('"+UUID.randomUUID().toString().replace("-", "")+"','"+batch+"','"+type+"','"+resSuc+"','"+count+"','0','导入成功 !','"+formatter2.format(new Date())+"')"; Sqlca.executeSQL(insertSql1); @@ -626,18 +620,9 @@ public class VoucherToNCforAssistContract implements Job{ if(batchList != null) { // 定义当前批次, 错误记录数 for (String old_batch : batchList) { - int con=0; - // 查询集合, 获取旧批次的失败总数 - String selectSql="SELECT BATCH,COUNT(BILLID) CON FROM ncxml_detail_records WHERE flag !=1 AND xml_type='"+type+"' AND BATCH='"+old_batch+"' GROUP BY BATCH;"; - List> dataList=DataOperatorUtil.getDataBySql(Sqlca, selectSql,null); - if(dataList!=null && dataList.size()>0) { - con=Integer.valueOf(dataList.get(0).get("CON")); - } - if(con==0) { - updateSql="UPDATE NCXML_TOTAL_RECORDS SET FLAG_='Y',FAILED_COUNT='0',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; - }else { - updateSql="UPDATE NCXML_TOTAL_RECORDS SET FAILED_COUNT='"+con+"',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; - } + updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE='传输成功 !' WHERE XML_TYPE= '"+type+"' AND BATCH='"+old_batch+"'"; + Sqlca.executeSQL(updateSql); + updateSql="UPDATE NCXML_TOTAL_RECORDS SET FLAG_='Y',FAILED_COUNT='0',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; Sqlca.executeSQL(updateSql); } } diff --git a/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforCustomer.java b/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforCustomer.java index 6c4ce9f01..62508a3cf 100644 --- a/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforCustomer.java +++ b/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforCustomer.java @@ -258,10 +258,13 @@ public class VoucherToNCforCustomer implements Job{ logger.info("客户记录语句: "+insertSql); count++; }else { - /*String updSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE=null,CREATE_TIME='"+year_month_days+"' WHERE BILLID='"+uuid+"' AND XML_TYPE= '"+type+"'"; - Sqlca.executeSQL(updSql);*/ + // 统计旧批次 String batch1= record.getAttribute("BATCH").getString(); + // 初始化将就数据描述信息变更为: 传输失败 , 请联系管理员 + String updSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输失败 , 请联系管理员 !',CREATE_TIME='"+year_month_days+"' WHERE BILLID='"+uuid+"' AND XML_TYPE= '"+type+"' AND BATCH='"+batch1+"'"; + Sqlca1.executeSQL(updSql); logger.info("旧批次号记录: "+batch1); + logger.info("变更旧批次数据: "+updSql); if(batchList.indexOf(batch1) == -1) { batchList.add(batch1); } @@ -283,8 +286,6 @@ public class VoucherToNCforCustomer implements Job{ Sqlca.rollback(); if(batch!=null || !"".equals(batch)){ logger.debug("客户xml传输失败"); - /*String updateSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输过程中遇到异常, 请联系管理员 !' WHERE BATCH='"+batch+"'"; - Sqlca1.executeSQL(updateSql);*/ String insertSql="INSERT INTO NCXML_TOTAL_RECORDS(ID,BATCH,XML_TYPE,FLAG_,COUNT_,FAILED_COUNT,ERR_DESCRIBE,CREATETIME) VALUES('"+UUID.randomUUID().toString().replace("-", "")+"','"+batch+"','"+type+"','N','"+count+"','"+count+"','传输失败, 请联系管理员 !','"+year_month_days+"')"; Sqlca1.executeSQL(insertSql); Sqlca1.commit(); @@ -512,10 +513,13 @@ public class VoucherToNCforCustomer implements Job{ logger.info("客户记录语句: "+insertSql); count++; }else { - /*String updSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE=null,CREATE_TIME='"+year_month_days+"' WHERE BILLID='"+uuid+"' AND XML_TYPE= '"+type+"'"; - Sqlca.executeSQL(updSql);*/ + // 统计旧批次 String batch1= record.getAttribute("BATCH").getString(); + // 初始化将就数据描述信息变更为: 传输失败 , 请联系管理员 + String updSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输失败 , 请联系管理员 !',CREATE_TIME='"+year_month_days+"' WHERE BILLID='"+uuid+"' AND XML_TYPE= '"+type+"' AND BATCH='"+batch1+"'"; + Sqlca1.executeSQL(updSql); logger.info("旧批次号记录: "+batch1); + logger.info("变更旧批次数据: "+updSql); if(batchList.indexOf(batch1) == -1) { batchList.add(batch1); } @@ -537,8 +541,6 @@ public class VoucherToNCforCustomer implements Job{ Sqlca.rollback(); if(batch!=null || !"".equals(batch)){ logger.debug("客户xml传输失败"); - /*String updateSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输过程中遇到异常, 请联系管理员 !' WHERE BATCH='"+batch+"'"; - Sqlca1.executeSQL(updateSql);*/ String insertSql="INSERT INTO NCXML_TOTAL_RECORDS(ID,BATCH,XML_TYPE,FLAG_,COUNT_,FAILED_COUNT,ERR_DESCRIBE,CREATETIME) VALUES('"+UUID.randomUUID().toString().replace("-", "")+"','"+batch+"','"+type+"','N','"+count+"','"+count+"','传输失败, 请联系管理员 !','"+year_month_days+"')"; Sqlca1.executeSQL(insertSql); Sqlca1.commit(); @@ -684,25 +686,15 @@ public class VoucherToNCforCustomer implements Job{ } } - /*// 查询不是本批次号的bdocid, 如果有值说明是之前传输错误的数据 - BizObject old_record=JBOFactory.createBizObjectQuery(NCXML_DETAIL_RECORDS.CLASS_NAME, "BILLID='"+bdocid+"' AND BATCH !='"+batch+"' AND XML_TYPE= '"+type+"'").getSingleResult(false); - if(old_record !=null || !"".equals(old_record)) { - // 如果状态为1, 说明已经变更, 传输成功. 执行upddate操作, 变更记录状态 - if(resultcode=="1" || "1".equals(resultcode)) { - updSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='"+resultcode+"',ERR_DESCRIBE=null,CREATE_TIME='"+formatter2+"' WHERE BILLID='"+bdocid+"' AND XML_TYPE= '"+type+"'"; - } - }*/ - /** * 根据回执信息, 变更明细表记录 */ + if("1".equals(resultcode)){ + resultdescription="传输成功 !"; + } updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='"+resultcode+"',ERR_DESCRIBE='"+resultdescription+"' WHERE BILLID='"+bdocid+"' AND XML_TYPE= '"+type+"'"; Sqlca.executeSQL(updateSql); logger.info("根据回执信息, 变更明细表数据记录"+updateSql); - /*BizObject old_record=JBOFactory.createBizObjectQuery(NCXML_DETAIL_RECORDS.CLASS_NAME, "BILLID='"+bdocid+"' AND BATCH <> '"+batch+"' AND XML_TYPE= '"+type+"'").getSingleResult(false); - if(old_record ==null) { - failed_count++; - }*/ } // 判断集合为否为null, 不为空遍历集合, 获取旧数据的批次号 @@ -752,6 +744,9 @@ public class VoucherToNCforCustomer implements Job{ logger.info("导入成功"); // count不等于0说明有新数据, 否则就只有旧的错误数据, 不需要新增 if(count != 0 ) { + // 传输成功后将本批次数据变更为传输成功! + updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE='传输成功 !' WHERE XML_TYPE= '"+type+"' AND BATCH='"+batch+"'"; + Sqlca.executeSQL(updateSql); // 将本次导入信息记录入记录总表 String insertSql1="INSERT INTO NCXML_TOTAL_RECORDS(ID,BATCH,XML_TYPE,FLAG_,COUNT_,FAILED_COUNT,ERR_DESCRIBE,CREATETIME) VALUES('"+UUID.randomUUID().toString().replace("-", "")+"','"+batch+"','"+type+"','"+resSuc+"','"+count+"','0','导入成功 !','"+formatter2.format(new Date())+"')"; Sqlca.executeSQL(insertSql1); @@ -760,18 +755,9 @@ public class VoucherToNCforCustomer implements Job{ if(batchList != null) { // 定义当前批次, 错误记录数 for (String old_batch : batchList) { - int con=0; - // 查询集合, 获取旧批次的失败总数 - String selectSql="SELECT BATCH,COUNT(BILLID) CON FROM ncxml_detail_records WHERE flag !=1 AND xml_type='"+type+"' AND BATCH='"+old_batch+"' GROUP BY BATCH;"; - List> dataList=DataOperatorUtil.getDataBySql(Sqlca, selectSql,null); - if(dataList!=null && dataList.size()>0) { - con=Integer.valueOf(dataList.get(0).get("CON")); - } - if(con==0) { - updateSql="UPDATE NCXML_TOTAL_RECORDS SET FLAG_='Y',FAILED_COUNT='0',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; - }else { - updateSql="UPDATE NCXML_TOTAL_RECORDS SET FAILED_COUNT='"+con+"',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; - } + updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE='传输成功 !' WHERE XML_TYPE= '"+type+"' AND BATCH='"+old_batch+"'"; + Sqlca.executeSQL(updateSql); + updateSql="UPDATE NCXML_TOTAL_RECORDS SET FLAG_='Y',FAILED_COUNT='0',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; Sqlca.executeSQL(updateSql); } } diff --git a/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforDistributor.java b/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforDistributor.java index 54fe6c595..0de70310b 100644 --- a/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforDistributor.java +++ b/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforDistributor.java @@ -330,10 +330,13 @@ public class VoucherToNCforDistributor implements Job{ logger.info("经销商记录语句: "+ insertSql); count++; }else { - /*String updSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE=null,CREATE_TIME='"+year_month_days+"' WHERE BILLID='"+uuid+"' AND XML_TYPE= '"+type+"'"; - Sqlca.executeSQL(updSql);*/ + // 统计旧批次 String batch1= record.getAttribute("BATCH").getString(); + // 初始化将就数据描述信息变更为: 传输失败 , 请联系管理员 + String updSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输失败 , 请联系管理员 !',CREATE_TIME='"+year_month_days+"' WHERE BILLID='"+uuid+"' AND XML_TYPE= '"+type+"' AND BATCH='"+batch1+"'"; + Sqlca1.executeSQL(updSql); logger.info("旧批次号记录: "+batch1); + logger.info("变更旧批次数据: "+updSql); if(batchList.indexOf(batch1) == -1) { batchList.add(batch1); } @@ -355,8 +358,6 @@ public class VoucherToNCforDistributor implements Job{ Sqlca.rollback(); if(batch!=null || !"".equals(batch)){ logger.debug("经销商xml传输失败"); - /*String updateSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输过程中遇到异常, 请联系管理员 !' WHERE BATCH='"+batch+"'"; - Sqlca1.executeSQL(updateSql);*/ String insertSql="INSERT INTO NCXML_TOTAL_RECORDS(ID,BATCH,XML_TYPE,FLAG_,COUNT_,FAILED_COUNT,ERR_DESCRIBE,CREATETIME) VALUES('"+UUID.randomUUID().toString().replace("-", "")+"','"+batch+"','"+type+"','N','"+count+"','"+count+"','传输失败, 请联系管理员 !','"+year_month_days+"')"; Sqlca1.executeSQL(insertSql); Sqlca1.commit(); @@ -656,10 +657,13 @@ public class VoucherToNCforDistributor implements Job{ logger.info("经销商记录语句: "+ insertSql); count++; }else { - /*String updSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE=null,CREATE_TIME='"+year_month_days+"' WHERE BILLID='"+uuid+"' AND XML_TYPE= '"+type+"'"; - Sqlca.executeSQL(updSql);*/ + // 统计旧批次 String batch1= record.getAttribute("BATCH").getString(); + // 初始化将就数据描述信息变更为: 传输失败 , 请联系管理员 + String updSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输失败 , 请联系管理员 !',CREATE_TIME='"+year_month_days+"' WHERE BILLID='"+uuid+"' AND XML_TYPE= '"+type+"' AND BATCH='"+batch1+"'"; + Sqlca1.executeSQL(updSql); logger.info("旧批次号记录: "+batch1); + logger.info("变更旧批次数据: "+updSql); if(batchList.indexOf(batch1) == -1) { batchList.add(batch1); } @@ -681,8 +685,6 @@ public class VoucherToNCforDistributor implements Job{ Sqlca.rollback(); if(batch!=null || !"".equals(batch)){ logger.debug("经销商xml传输失败"); - /*String updateSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输过程中遇到异常, 请联系管理员 !' WHERE BATCH='"+batch+"'"; - Sqlca1.executeSQL(updateSql);*/ String insertSql="INSERT INTO NCXML_TOTAL_RECORDS(ID,BATCH,XML_TYPE,FLAG_,COUNT_,FAILED_COUNT,ERR_DESCRIBE,CREATETIME) VALUES('"+UUID.randomUUID().toString().replace("-", "")+"','"+batch+"','"+type+"','N','"+count+"','"+count+"','传输失败, 请联系管理员 !','"+year_month_days+"')"; Sqlca1.executeSQL(insertSql); Sqlca1.commit(); @@ -827,25 +829,15 @@ public class VoucherToNCforDistributor implements Job{ } } - /*// 查询不是本批次号的bdocid, 如果有值说明是之前传输错误的数据 - BizObject old_record=JBOFactory.createBizObjectQuery(NCXML_DETAIL_RECORDS.CLASS_NAME, "BILLID='"+bdocid+"' AND BATCH !='"+batch+"' AND XML_TYPE= '"+type+"'").getSingleResult(false); - if(old_record !=null || !"".equals(old_record)) { - // 如果状态为1, 说明已经变更, 传输成功. 执行upddate操作, 变更记录状态 - if(resultcode=="1" || "1".equals(resultcode)) { - updSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='"+resultcode+"',ERR_DESCRIBE=null,CREATE_TIME='"+formatter2+"' WHERE BILLID='"+bdocid+"' AND XML_TYPE= '"+type+"'"; - } - }*/ - /** * 根据回执信息, 变更明细表记录 */ + if("1".equals(resultcode)){ + resultdescription="传输成功 !"; + } updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='"+resultcode+"',ERR_DESCRIBE='"+resultdescription+"' WHERE BILLID='"+bdocid+"' AND XML_TYPE= '"+type+"'"; Sqlca.executeSQL(updateSql); logger.info("根据回执信息, 变更明细表数据记录"+updateSql); - /*BizObject old_record=JBOFactory.createBizObjectQuery(NCXML_DETAIL_RECORDS.CLASS_NAME, "BILLID='"+bdocid+"' AND BATCH <> '"+batch+"' AND XML_TYPE= '"+type+"'").getSingleResult(false); - if(old_record ==null) { - failed_count++; - }*/ } // 判断集合为否为null, 不为空遍历集合, 获取旧数据的批次号 @@ -895,6 +887,9 @@ public class VoucherToNCforDistributor implements Job{ logger.info("导入成功"); // count不等于0说明有新数据, 否则就只有旧的错误数据, 不需要新增 if(count != 0 ) { + // 传输成功后将本批次数据变更为传输成功! + updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE='传输成功 !' WHERE XML_TYPE= '"+type+"' AND BATCH='"+batch+"'"; + Sqlca.executeSQL(updateSql); // 将本次导入信息记录入记录总表 String insertSql1="INSERT INTO NCXML_TOTAL_RECORDS(ID,BATCH,XML_TYPE,FLAG_,COUNT_,FAILED_COUNT,ERR_DESCRIBE,CREATETIME) VALUES('"+UUID.randomUUID().toString().replace("-", "")+"','"+batch+"','"+type+"','"+resSuc+"','"+count+"','0','导入成功 !','"+formatter2.format(new Date())+"')"; Sqlca.executeSQL(insertSql1); @@ -903,18 +898,9 @@ public class VoucherToNCforDistributor implements Job{ if(batchList != null) { // 定义当前批次, 错误记录数 for (String old_batch : batchList) { - int con=0; - // 查询集合, 获取旧批次的失败总数 - String selectSql="SELECT BATCH,COUNT(BILLID) CON FROM ncxml_detail_records WHERE flag !=1 AND xml_type='"+type+"' AND BATCH='"+old_batch+"' GROUP BY BATCH;"; - List> dataList=DataOperatorUtil.getDataBySql(Sqlca, selectSql,null); - if(dataList!=null && dataList.size()>0) { - con=Integer.valueOf(dataList.get(0).get("CON")); - } - if(con==0) { - updateSql="UPDATE NCXML_TOTAL_RECORDS SET FLAG_='Y',FAILED_COUNT='0',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; - }else { - updateSql="UPDATE NCXML_TOTAL_RECORDS SET FAILED_COUNT='"+con+"',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; - } + updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE='传输成功 !' WHERE XML_TYPE= '"+type+"' AND BATCH='"+old_batch+"'"; + Sqlca.executeSQL(updateSql); + updateSql="UPDATE NCXML_TOTAL_RECORDS SET FLAG_='Y',FAILED_COUNT='0',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; Sqlca.executeSQL(updateSql); } } diff --git a/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforVoucherPZ.java b/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforVoucherPZ.java index b5537f8c2..fd3fb7022 100644 --- a/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforVoucherPZ.java +++ b/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforVoucherPZ.java @@ -534,7 +534,11 @@ public class VoucherToNCforVoucherPZ implements Job{ }else { // 统计旧批次 String batch1= record.getAttribute("BATCH").getString(); - logger.info("记录旧批次: "+batch1); + // 初始化将就数据描述信息变更为: 传输失败 , 请联系管理员 + String updSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输失败 , 请联系管理员 !',CREATE_TIME='"+year_month_days+"' WHERE BILLID='"+uuid+"' AND XML_TYPE= '"+type+"' AND BATCH='"+batch1+"'"; + Sqlca1.executeSQL(updSql); + logger.info("旧批次号记录: "+batch1); + logger.info("变更旧批次数据: "+updSql); if(batchList.indexOf(batch1) == -1) { batchList.add(batch1); } @@ -559,8 +563,6 @@ public class VoucherToNCforVoucherPZ implements Job{ Sqlca.rollback(); if(batch!=null || !"".equals(batch)){ logger.debug("凭证xml传输失败"); - /*String updateSql="UPDATE NCXML_DETAIL_RECORDS SET FLAG='2',ERR_DESCRIBE='传输过程中遇到异常, 请联系管理员 !' WHERE BATCH='"+batch+"'"; - Sqlca1.executeSQL(updateSql);*/ String insertSql="INSERT INTO NCXML_TOTAL_RECORDS(ID,BATCH,XML_TYPE,FLAG_,COUNT_,FAILED_COUNT,ERR_DESCRIBE,CREATETIME) VALUES('"+UUID.randomUUID().toString().replace("-", "")+"','"+batch+"','"+type+"','N','"+count+"','"+count+"','传输失败, 请联系管理员 !','"+year_month_days+"')"; Sqlca1.executeSQL(insertSql); Sqlca1.commit(); @@ -707,25 +709,15 @@ public class VoucherToNCforVoucherPZ implements Job{ } } - /*// 查询不是本批次号的bdocid, 如果有值说明是之前传输错误的数据 - BizObject old_record=JBOFactory.createBizObjectQuery(NCXML_DETAIL_RECORDS.CLASS_NAME, "BILLID='"+bdocid+"' AND BATCH !='"+batch+"' AND XML_TYPE= '"+type+"'").getSingleResult(false); - if(old_record !=null || !"".equals(old_record)) { - // 如果状态为1, 说明已经变更, 传输成功. 执行upddate操作, 变更记录状态 - if(resultcode=="1" || "1".equals(resultcode)) { - updSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='"+resultcode+"',ERR_DESCRIBE=null,CREATE_TIME='"+formatter2+"' WHERE BILLID='"+bdocid+"' AND XML_TYPE= '"+type+"'"; - } - }*/ - /** * 根据回执信息, 变更明细表记录 */ + if("1".equals(resultcode)){ + resultdescription="传输成功 !"; + } updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='"+resultcode+"',ERR_DESCRIBE='"+resultdescription+"' WHERE BILLID='"+bdocid+"' AND XML_TYPE= '"+type+"'"; Sqlca.executeSQL(updateSql); logger.info("根据回执信息, 变更明细表数据记录"+updateSql); - /*BizObject old_record=JBOFactory.createBizObjectQuery(NCXML_DETAIL_RECORDS.CLASS_NAME, "BILLID='"+bdocid+"' AND BATCH <> '"+batch+"' AND XML_TYPE= '"+type+"'").getSingleResult(false); - if(old_record ==null) { - failed_count++; - }*/ } // 判断集合为否为null, 不为空遍历集合, 获取旧数据的批次号 @@ -775,6 +767,9 @@ public class VoucherToNCforVoucherPZ implements Job{ logger.info("导入成功"); // count不等于0说明有新数据, 否则就只有旧的错误数据, 不需要新增 if(count != 0 ) { + // 传输成功后将本批次数据变更为传输成功! + updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE='传输成功 !' WHERE XML_TYPE= '"+type+"' AND BATCH='"+batch+"'"; + Sqlca.executeSQL(updateSql); // 将本次导入信息记录入记录总表 String insertSql1="INSERT INTO NCXML_TOTAL_RECORDS(ID,BATCH,XML_TYPE,FLAG_,COUNT_,FAILED_COUNT,ERR_DESCRIBE,CREATETIME) VALUES('"+UUID.randomUUID().toString().replace("-", "")+"','"+batch+"','"+type+"','"+resSuc+"','"+count+"','0','导入成功 !','"+formatter2.format(new Date())+"')"; Sqlca.executeSQL(insertSql1); @@ -783,18 +778,9 @@ public class VoucherToNCforVoucherPZ implements Job{ if(batchList != null) { // 定义当前批次, 错误记录数 for (String old_batch : batchList) { - int con=0; - // 查询集合, 获取旧批次的失败总数 - String selectSql="SELECT BATCH,COUNT(BILLID) CON FROM ncxml_detail_records WHERE flag !=1 AND xml_type='"+type+"' AND BATCH='"+old_batch+"' GROUP BY BATCH;"; - List> dataList=DataOperatorUtil.getDataBySql(Sqlca, selectSql,null); - if(dataList!=null && dataList.size()>0) { - con=Integer.valueOf(dataList.get(0).get("CON")); - } - if(con==0) { - updateSql="UPDATE NCXML_TOTAL_RECORDS SET FLAG_='Y',FAILED_COUNT='0',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; - }else { - updateSql="UPDATE NCXML_TOTAL_RECORDS SET FAILED_COUNT='"+con+"',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; - } + updateSql=" UPDATE NCXML_DETAIL_RECORDS SET FLAG='1',ERR_DESCRIBE='传输成功 !' WHERE XML_TYPE= '"+type+"' AND BATCH='"+old_batch+"'"; + Sqlca.executeSQL(updateSql); + updateSql="UPDATE NCXML_TOTAL_RECORDS SET FLAG_='Y',FAILED_COUNT='0',ERR_DESCRIBE='"+resultdescription+"',CREATETIME='"+formatter2.format(new Date())+"' WHERE XML_TYPE='"+type+"' AND BATCH='"+old_batch+"'"; Sqlca.executeSQL(updateSql); } }