文件下载功能 #4

Merged
wang_lei1 merged 1 commits from dev into sit 2021-05-25 06:23:48 +00:00
17 changed files with 244 additions and 125 deletions
+3 -3
View File
@@ -1,9 +1,7 @@
<?xml version='1.0' encoding='UTF-8'?>
<!--ATM-->
<Application name="cap" code="204">
<Include file="app/bui/etc/cap/OCAPRPT2/204071_CTL.XML" desc="实效报表" />
<Include file="app/bui/etc/cap/OCAPRPT2/204072_CTL.XML" desc="批量执行情况报表" />
@@ -11,4 +9,6 @@
<Include file="app/bui/etc/cap/OCAPRPT2/204073_CTL.XML" desc="交易失败原因统计" />
<Include file="app/bui/etc/cap/OCAPRPT2/204074_CTL.XML" desc="回单查询" />
</Application>
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+2
View File
@@ -0,0 +1,2 @@
PACKAGE=com.murong.ctg.util
CLASS=ZipUtils,FileUtils
+70 -53
View File
@@ -1,60 +1,77 @@
<?xml version='1.0' encoding='UTF-8'?>
<Root>
<Transaction code="204071" desc="交易成功率统计报表" log_switch="1">
<FlowCtrl>
<Exec func="PUB:InitGWA" /> <!--交易初始化 -->
<Set>AC_DT=$GWA.AC_DT</Set>
<Transaction code="204071" desc="交易成功率统计报表" log_switch="1">
<FlowCtrl>
<Exec func="PUB:InitGWA" /> <!--交易初始化 -->
<Set>AC_DT=GETDATE()</Set>
<Exec func="PUB:IsExistNode" error="IGNORE">
<Arg name="FieldName" value="END_DT"/>
</Exec>
<If condition="~RetCod=1"> <!--存在-->
<Set>END_DT=$END_DT</Set>
</If>
<Else>
<Set>END_DT=CALCDATE($AC_DT,-,d,1)</Set>
</Else>
<Exec func="PUB:IsExistNode" error="IGNORE">
<Arg name="FieldName" value="STAT_DT"/>
</Exec>
<If condition="~RetCod=1"> <!--存在-->
<Set>STAT_DT=$STAT_DT</Set>
</If>
<Else>
<Set>STAT_DT=CALCDATE($END_DT,-,d,6)</Set>
</Else>
<Exec func="PUB:IsExistNode" error="IGNORE">
<Arg name="FieldName" value="END_DT"/>
</Exec>
<If condition="~RetCod=1"> <!--存在-->
<Set>END_DT=$END_DT</Set>
</If>
<Else>
<Set>END_DT=CALCDATE($AC_DT,-,d,1)</Set>
</Else>
<Set>RPT_KND=RPT_D_001</Set>
<Set>raqname=STRCAT($RPT_KND,-,$AC_DT,.xls)</Set>
<Set>WORKDIR=GETENV(HWORKDIR)</Set>
<Set>CR_RPT_FILE=STRCAT($WORKDIR,/app/cap/etc/OCAPRPT2/RPT_D_001.raq)</Set>
<Set>RPTNAME=STRCAT($WORKDIR,/ejbs/capbui/rptdata/,$raqname)</Set>
<Exec func="PUB:IsExistNode" error="IGNORE">
<Arg name="FieldName" value="STAT_DT"/>
</Exec>
<If condition="~RetCod=1"> <!--存在-->
<Set>STAT_DT=$STAT_DT</Set>
</If>
<Else>
<Set>STAT_DT=CALCDATE($END_DT,-,d,6)</Set>
</Else>
<Set>RPT_KND=RPT_D_001</Set>
<Set>raqname=STRCAT($RPT_KND,-,$AC_DT,.xls)</Set>
<Set>WORKDIR=GETENV(HWORKDIR)</Set>
<Set>CR_RPT_FILE=STRCAT($WORKDIR,/app/cap/etc/OCAPRPT2/RPT_D_001.raq)</Set>
<Set>RPTNAME=STRCAT(/tmp/data/,$raqname)</Set>
<Set>RPT_FIL_NM=STRCAT("交易成功率统计报表-",FMTDATE($AC_DT,0,5),.xls)</Set>
<Exec func="PUB:GenerateReportNew" error="IGNORE"> <!--报表生成组件-->
<Arg name="RptName" value="$RPTNAME" />
<Arg name="RptFile" value="$CR_RPT_FILE" />
<Arg name="STAT_DT" value="$STAT_DT" />
<Arg name="END_DT" value="$END_DT" />
</Exec>
<If condition="~RetCod=-1">
<Set>Rsp_Cd=20499</Set>
<Set>Rsp_Msg=失败</Set>
<Return/>
</If>
<ElseIf condition="~RetCod=0">
<Set>Rsp_Cd=00000</Set>
<Set>Rsp_Msg=成功</Set>
<Exec func="PUB:GWASetMsg">
<Arg name="MsgCd" value="CAP00000" />
</Exec>
</ElseIf>
<Set>FILE_NAME=$RPTNAME</Set>
<Call package="UPLOAD_FILE" function="UPLOAD_FILE">
</Call>
<Set>RPT_FIL_NM=STRCAT("交易成功率统计报表-",FMTDATE($AC_DT,0,5),.xls)</Set>
<Exec func="PUB:DumpETF" />
<Set>RPT_FIL_URL=$OUT_DAT.FILE_URL</Set>
<If condition="ISNULL($RPT_FIL_URL)">
<Exec func="PUB:GWASetMsg">
<Arg name="MsgCd" value="CAP00032"/>
</Exec>
<Return/>
</If>
<Exec func="PUB:GenerateReportNew" error="IGNORE"> <!--报表生成组件-->
<Arg name="RptName" value="$RPTNAME" />
<Arg name="RptFile" value="$CR_RPT_FILE" />
<Arg name="STAT_DT" value="$STAT_DT" />
<Arg name="END_DT" value="$END_DT" />
</Exec>
<If condition="~RetCod=-1">
<Set>Rsp_Cd=20499</Set>
<Set>Rsp_Msg=失败</Set>
<Return/>
</If>
<ElseIf condition="~RetCod=0">
<Set>Rsp_Cd=00000</Set>
<Set>Rsp_Msg=成功</Set>
<Set>RPT_TYP=D</Set>
<Quote name="Do_SVRPro"/> <!--插入报表登记表-->
</ElseIf>
</FlowCtrl>
</Transaction>
<Set>RPT_TYP=D</Set>
<Quote name="Do_SVRPro"/> <!--插入报表登记表-->
</FlowCtrl>
</Transaction>
</Root>
+30 -13
View File
@@ -3,7 +3,7 @@
<Transaction code="204072" desc="批量执行情况报表" log_switch="1">
<FlowCtrl>
<Exec func="PUB:InitGWA" /> <!--交易初始化 -->
<Set>AC_DT=$GWA.AC_DT</Set>
<Set>AC_DT=GETDATE()</Set>
<Exec func="PUB:IsExistNode" error="IGNORE">
<Arg name="FieldName" value="END_DT"/>
@@ -39,7 +39,7 @@
<Set>raqname=STRCAT($RPT_KND,-,$AC_DT,.xls)</Set>
<Set>WORKDIR=GETENV(HWORKDIR)</Set>
<Set>CR_RPT_FILE=STRCAT($WORKDIR,/app/cap/etc/OCAPRPT2/RPT_D_002.raq)</Set>
<Set>RPTNAME=STRCAT($WORKDIR,/ejbs/capbui/rptdata/,$raqname)</Set>
<Set>RPTNAME=STRCAT(/tmp/data/,$raqname)</Set>
<Set>RPT_FIL_NM=STRCAT("批量执行情况报表-",FMTDATE($AC_DT,0,5),.xls)</Set>
@@ -51,19 +51,36 @@
<Arg name="CORG_NO" value="$CORG_NO" />
</Exec>
<If condition="~RetCod=-1">
<Set>Rsp_Cd=20499</Set>
<Set>Rsp_Msg=失败</Set>
<Return/>
</If>
<ElseIf condition="~RetCod=0">
<Set>Rsp_Cd=00000</Set>
<Set>Rsp_Msg=成功</Set>
<If condition="~RetCod=-1">
<Set>Rsp_Cd=20499</Set>
<Set>Rsp_Msg=失败</Set>
<Return/>
</If>
<ElseIf condition="~RetCod=0">
<Set>Rsp_Cd=00000</Set>
<Set>Rsp_Msg=成功</Set>
<Exec func="PUB:GWASetMsg">
<Arg name="MsgCd" value="CAP00000" />
</Exec>
<Set>RPT_TYP=D</Set>
<Quote name="Do_SVRPro"/> <!--插入报表登记表-->
</ElseIf>
</ElseIf>
<Set>FILE_NAME=$RPTNAME</Set>
<Call package="UPLOAD_FILE" function="UPLOAD_FILE">
</Call>
<Exec func="PUB:DumpETF" />
<Set>RPT_FIL_URL=$OUT_DAT.FILE_URL</Set>
<If condition="ISNULL($RPT_FIL_URL)">
<Exec func="PUB:GWASetMsg">
<Arg name="MsgCd" value="CAP00032"/>
</Exec>
<Return/>
</If>
<Set>RPT_TYP=D</Set>
<Quote name="Do_SVRPro"/> <!--插入报表登记表-->
</FlowCtrl>
</Transaction>
</Root>
+66 -51
View File
@@ -1,60 +1,75 @@
<?xml version='1.0' encoding='UTF-8'?>
<Root>
<Transaction code="204073" desc="交易失败原因统计" log_switch="1">
<FlowCtrl>
<Exec func="PUB:InitGWA" /> <!--交易初始化 -->
<Set>AC_DT=$GWA.AC_DT</Set>
<Transaction code="204073" desc="交易失败原因统计" log_switch="1">
<FlowCtrl>
<Exec func="PUB:InitGWA" /> <!--交易初始化 -->
<Set>AC_DT=GETDATE()</Set>
<Exec func="PUB:IsExistNode" error="IGNORE">
<Arg name="FieldName" value="END_DT"/>
</Exec>
<If condition="~RetCod=1"> <!--存在-->
<Set>END_DT=$END_DT</Set>
</If>
<Else>
<Set>END_DT=CALCDATE($AC_DT,-,d,1)</Set>
</Else>
<Exec func="PUB:IsExistNode" error="IGNORE">
<Arg name="FieldName" value="STAT_DT"/>
</Exec>
<If condition="~RetCod=1"> <!--存在-->
<Set>STAT_DT=$STAT_DT</Set>
</If>
<Else>
<Set>STAT_DT=CALCDATE($END_DT,-,d,6)</Set>
</Else>
<Exec func="PUB:IsExistNode" error="IGNORE">
<Arg name="FieldName" value="END_DT"/>
</Exec>
<If condition="~RetCod=1"> <!--存在-->
<Set>END_DT=$END_DT</Set>
</If>
<Else>
<Set>END_DT=CALCDATE($AC_DT,-,d,1)</Set>
</Else>
<Set>RPT_KND=RPT_D_003</Set>
<Set>raqname=STRCAT($RPT_KND,-,$AC_DT,.xls)</Set>
<Set>WORKDIR=GETENV(HWORKDIR)</Set>
<Set>CR_RPT_FILE=STRCAT($WORKDIR,/app/cap/etc/OCAPRPT2/RPT_D_003.raq)</Set>
<Set>RPTNAME=STRCAT($WORKDIR,/ejbs/capbui/rptdata/,$raqname)</Set>
<Set>RPT_FIL_NM=STRCAT("交易失败原因统计-",FMTDATE($AC_DT,0,5),.xls)</Set>
<Exec func="PUB:IsExistNode" error="IGNORE">
<Arg name="FieldName" value="STAT_DT"/>
</Exec>
<If condition="~RetCod=1"> <!--存在-->
<Set>STAT_DT=$STAT_DT</Set>
</If>
<Else>
<Set>STAT_DT=CALCDATE($END_DT,-,d,6)</Set>
</Else>
<Exec func="PUB:GenerateReportNew" error="IGNORE"> <!--报表生成组件-->
<Arg name="RptName" value="$RPTNAME" />
<Arg name="RptFile" value="$CR_RPT_FILE" />
<Arg name="STAT_DT" value="$STAT_DT" />
<Arg name="END_DT" value="$END_DT" />
</Exec>
<If condition="~RetCod=-1">
<Set>Rsp_Cd=20499</Set>
<Set>Rsp_Msg=失败</Set>
<Return/>
</If>
<ElseIf condition="~RetCod=0">
<Set>Rsp_Cd=00000</Set>
<Set>Rsp_Msg=成功</Set>
<Set>RPT_KND=RPT_D_003</Set>
<Set>raqname=STRCAT($RPT_KND,-,$AC_DT,.xls)</Set>
<Set>WORKDIR=GETENV(HWORKDIR)</Set>
<Set>CR_RPT_FILE=STRCAT($WORKDIR,/app/cap/etc/OCAPRPT2/RPT_D_003.raq)</Set>
<Set>RPTNAME=STRCAT($WORKDIR,/ejbs/capbui/rptdata/,$raqname)</Set>
<Set>RPT_TYP=D</Set>
<Quote name="Do_SVRPro"/> <!--插入报表登记表-->
<Set>RPT_FIL_NM=STRCAT("交易失败原因统计-",FMTDATE($AC_DT,0,5),.xls)</Set>
</ElseIf>
</FlowCtrl>
</Transaction>
<Exec func="PUB:GenerateReportNew" error="IGNORE"> <!--报表生成组件-->
<Arg name="RptName" value="$RPTNAME" />
<Arg name="RptFile" value="$CR_RPT_FILE" />
<Arg name="STAT_DT" value="$STAT_DT" />
<Arg name="END_DT" value="$END_DT" />
</Exec>
<If condition="~RetCod=-1">
<Set>Rsp_Cd=20499</Set>
<Set>Rsp_Msg=失败</Set>
<Return/>
</If>
<ElseIf condition="~RetCod=0">
<Set>Rsp_Cd=00000</Set>
<Set>Rsp_Msg=成功</Set>
<Exec func="PUB:GWASetMsg">
<Arg name="MsgCd" value="CAP00000" />
</Exec>
</ElseIf>
<Set>FILE_NAME=$RPTNAME</Set>
<Call package="UPLOAD_FILE" function="UPLOAD_FILE">
</Call>
<Exec func="PUB:DumpETF" />
<Set>RPT_FIL_URL=$OUT_DAT.FILE_URL</Set>
<If condition="ISNULL($RPT_FIL_URL)">
<Exec func="PUB:GWASetMsg">
<Arg name="MsgCd" value="CAP00032"/>
</Exec>
<Return/>
</If>
<Set>RPT_TYP=D</Set>
<Quote name="Do_SVRPro"/> <!--插入报表登记表-->
</FlowCtrl>
</Transaction>
</Root>
Binary file not shown.
Binary file not shown.
Binary file not shown.
+59
View File
@@ -0,0 +1,59 @@
<?xml version="1.0" encoding="UTF-8"?>
<Package>
<Function name="UPLOAD_FILE">
<DynSentence name="QRY_TOKEN">
<Sentence>
select P_VALUES TOKEN FROM CAPPARAMTER where P_KEY = 'FIL_TOKEN'
</Sentence>
<Fields>|</Fields>
</DynSentence>
<DynSentence name="QRY_TOKEN_URL">
<Sentence>
select P_VALUES URL FROM CAPPARAMTER where P_KEY = 'FIL_TOKEN_URL'
</Sentence>
<Fields>|</Fields>
</DynSentence>
<Process>
<Exec func="PUB:ReadRecord" error="IGNORE">
<Arg name="SqlCmd" value="QRY_TOKEN"/>
</Exec>
<If condition="~RetCod!=0">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="CAP99999"/>
</Exec>
<Return/>
</If>
<Exec func="PUB:ReadRecord" error="IGNORE">
<Arg name="SqlCmd" value="QRY_TOKEN_URL"/>
</Exec>
<If condition="~RetCod!=0">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="CAP99999"/>
</Exec>
<Return/>
</If>
<!--调用文件上传接口-->
<Exec func="CTG:uploadFile">
<Arg name="token" value="$TOKEN"/>
<Arg name="url" value="$URL"/>
<Arg name="filePath" value="$FILE_NAME"/>
</Exec>
<If condition="~RetCod!=0">
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="CAP99999"/>
</Exec>
<Return/>
</If>
<Set>FILE_URL=STRCAT($URL,/file/download/,$OUT_DAT.FILE_ID,?token=,$TOKEN)</Set>
<Set>OUT_DAT.FILE_URL=$FILE_URL</Set>
<Exec func="PUB:CmpSetMsg">
<Arg name="MsgCd" value="CAP00000"/>
</Exec>
</Process>
</Function>
</Package>
+14 -5
View File
@@ -6,9 +6,9 @@
<Macro name="Do_SVRInf">
<DynSentence name="Insrpt">
<Sentence>
INSERT INTO CMMTRPTREG (RPT_DAT,RPT_TYP,RPT_KND,RPT_FIL,RPT_FIL_NM) VALUES('%s','%s','%s','%s','%s')
INSERT INTO CMMTRPTREG (RPT_DAT,RPT_TYP,RPT_KND,RPT_FIL,RPT_FIL_NM,RPT_FIL_URL) VALUES('%s','%s','%s','%s','%s','%s')
</Sentence>
<Fields>RPT_DAT|RPT_TYP|RPT_KND|RPT_FIL|RPT_FIL_NM|</Fields>
<Fields>RPT_DAT|RPT_TYP|RPT_KND|RPT_FIL|RPT_FIL_NM|RPT_FIL_URL|</Fields>
</DynSentence>
<DynSentence name="Delrpt">
<Sentence>
@@ -19,7 +19,7 @@
</Macro>
<!--插入报表登记表-->
<Macro name="Do_SVRPro">
<Set>RPT_DAT=$GWA.AC_DT</Set>
<Set>RPT_DAT=GETDATE()</Set>
<Set>RPT_KND=$RPT_KND</Set>
<Set>RPT_FIL=$raqname</Set>
<!--Set>TM_SMP=GETDATETIME()</Set-->
@@ -32,14 +32,14 @@
</Exec>
<If condition="~RetCod=0">
<Exec func="PUB:GWASetMsg">
<Arg name="MsgCd" value="000000"/>
<Arg name="MsgCd" value="CAP00000"/>
<Arg name="MsgDat" value="插入报表登记表成功"/>
</Exec>
<Return/>
</If>
<Else>
<Exec func="PUB:GWASetMsg">
<Arg name="MsgCd" value="20499"/>
<Arg name="MsgCd" value="CAP00022"/>
<Arg name="MsgDat" value="数据库操作错误"/>
</Exec>
<Return/>
@@ -47,6 +47,14 @@
</Macro>
</Define>
<LibDeclare>
<Library name="CTG" value="ctg.jar"/>
</LibDeclare>
<PackageDeclare>
<Package name="UPLOAD_FILE" value="app/cap/etc/OCAPRPT2/UPLOAD_FILE_PKG.XML"/>
</PackageDeclare>
<Include file="app/bui/etc/BUI_PUB_CTL.XML"/> <!-- UI公共前后处理 -->
<Include file="app/cap/etc/OCAPRPT2/204071_CTL.XML" desc="实效报表" />
@@ -56,4 +64,5 @@
<Include file="app/cap/etc/OCAPRPT2/204073_CTL.XML" desc="交易失败原因统计" />
<Include file="app/cap/etc/OCAPRPT2/204074_CTL.XML" desc="回单查询" />
</Application>