1.附件自动分目录拷贝功能(初版)
This commit is contained in:
parent
bf20be8272
commit
f76f5502f8
@ -26,6 +26,7 @@
|
||||
{"true","","Button","excel导入","excel导入","importExcel()","","","","btn_icon_import"},
|
||||
{"true","","Button","模版下载","模版下载","DiscountDownload()","","","","btn_icon_down",""},
|
||||
{"true","All","Button","生成租金计划","生成租金计划","createPlan()","","","","btn_icon_generate"},
|
||||
{"true","All","Button","测试拷贝","测试拷贝","copyPath()","","","","btn_icon_generate"},
|
||||
};
|
||||
%>
|
||||
<%/*~END~*/%>
|
||||
@ -42,13 +43,26 @@
|
||||
<%/*~BEGIN~可编辑区~[Editable=false;CodeAreaID=List06;Describe=定义按钮事件;]~*/%>
|
||||
<script type="text/javascript">
|
||||
/*~[Describe=新增记录;InputParam=无;OutPutParam=无;]~*/
|
||||
|
||||
function copyPath(){
|
||||
//正式采用代码
|
||||
/* var contractNoArray=getItemValueArray(0,"CONTRACT_NO");
|
||||
var contractNos = contractNoArray.join("@"); */
|
||||
//本地测试数据
|
||||
var contractNos="BQAP(AH)201904230002";
|
||||
var sparam = "contractNos="+contractNos;
|
||||
var result=RunJavaMethod("com.tenwa.reckon.copydata.FileCopyToOtherPath","copyFile",sparam);
|
||||
if(result=="SUCCESS"){
|
||||
alert("拷贝成功!!");
|
||||
}else{
|
||||
alert(result);
|
||||
}
|
||||
}
|
||||
//生成数据
|
||||
function createPlan(){
|
||||
debugger;
|
||||
var Id=getItemValueArray(0,"ID");
|
||||
var CONTRACT_NO=getItemValueArray(0,"CONTRACT_NO");
|
||||
var Id = getItemValueArray(0,"ID");
|
||||
var CONTRACT_NO = getItemValueArray(0,"CONTRACT_NO");
|
||||
var number = 0;
|
||||
var faile_no="";
|
||||
if(typeof(Id)=="undefined"||Id==null||Id==""){alert("请选择数据");return;}
|
||||
for(var i=0;i<Id.length;i++){
|
||||
var param={};
|
||||
@ -76,6 +90,8 @@
|
||||
|
||||
if(result=="success"){
|
||||
number++;
|
||||
}else{
|
||||
faile_no+=CONTRACT_NO[i]+";";
|
||||
}
|
||||
|
||||
}
|
||||
@ -87,7 +103,7 @@
|
||||
}else if(number==Id.length){
|
||||
alert("生成成功!!!");
|
||||
}else{
|
||||
alert("部分生成成功!!!");
|
||||
alert("部分生成成功!!!"+faile_no+"生成失败!!!");
|
||||
}
|
||||
reloadSelf();
|
||||
}
|
||||
|
||||
87
calc/com/tenwa/reckon/copydata/FileCopyToOtherPath.java
Normal file
87
calc/com/tenwa/reckon/copydata/FileCopyToOtherPath.java
Normal file
@ -0,0 +1,87 @@
|
||||
package com.tenwa.reckon.copydata;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.commons.io.FileUtils;
|
||||
|
||||
import com.amarsoft.awe.Configure;
|
||||
import com.amarsoft.awe.util.Transaction;
|
||||
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
|
||||
|
||||
public class FileCopyToOtherPath {
|
||||
private String contractNos;
|
||||
|
||||
public String getContractNo() {
|
||||
return contractNos;
|
||||
}
|
||||
public void setContractNos(String contractNos) {
|
||||
this.contractNos = contractNos;
|
||||
}
|
||||
|
||||
public String doCopy(String contractNo){
|
||||
Transaction Sqlca = Transaction.createTransaction("als");
|
||||
//原路径
|
||||
String srcPath ;
|
||||
//目标相对路径
|
||||
String destPath ;
|
||||
//目标根目录
|
||||
String rootPath;
|
||||
try {
|
||||
Configure config = Configure.getInstance();
|
||||
rootPath = config.getConfigure("FileCopyPath");
|
||||
String sql = "SELECT O.FULLPATH AS FULLPATH, CONCAT(LCI.CONTRACT_NO, '/', LDL.ONE_CLASSIFY, '/' , LDL.DOC_NAME, '/', O.FILENAME) AS TARGET_FILE_PATH FROM LB_DOCATTRIBUTE O"
|
||||
+" LEFT JOIN LB_DOCLIBRARY LDL ON LDL.ID = O.LIBRARY_ID"
|
||||
+" LEFT JOIN LB_DOCRELATIVE LDR ON LDL.RELATIVE_ID = LDR.ID"
|
||||
+" LEFT JOIN LB_CONTRACT_INFO LCI ON LDR.CONTRACT_ID = LCI.ID"
|
||||
+" WHERE LCI.CONTRACT_NO ='"+contractNo+"'";
|
||||
Map<String,String> params=new HashMap<String,String>();
|
||||
List<Map<String, String>> pathList = DataOperatorUtil.getDataBySql(Sqlca,sql,params);
|
||||
if(pathList.size()>0){
|
||||
for(Map<String, String> path:pathList){
|
||||
srcPath = path.get("FULLPATH");
|
||||
destPath =rootPath+"/"+path.get("TARGET_FILE_PATH");
|
||||
System.out.println("srcPath="+srcPath);
|
||||
System.out.println("destPath="+destPath);
|
||||
File srcFile = new File(srcPath);
|
||||
File destFile = new File(destPath);
|
||||
try {
|
||||
//文件拷贝,true为最后修改时间不变,fail为当前时间.
|
||||
//拷贝时如果目标文件已存在,则会从新覆盖。
|
||||
FileUtils.copyFile(srcFile, destFile, true);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
System.out.println("合同"+contractNo+"一共有"+pathList.size()+"条数据!!");
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return contractNo;
|
||||
}
|
||||
return "Y";
|
||||
}
|
||||
|
||||
public String copyFile(){
|
||||
String failNo="";
|
||||
List<String> cns = Arrays.asList(contractNos.split("@"));
|
||||
for(String contractNo:cns){
|
||||
if("".equals(contractNo)||contractNo==null){
|
||||
continue;
|
||||
}
|
||||
String result = doCopy(contractNo);
|
||||
if(!"Y".equals(result)){
|
||||
failNo+=contractNo+";";
|
||||
}
|
||||
}
|
||||
if("".equals(failNo)){
|
||||
return "SUCCESS";
|
||||
}
|
||||
return failNo;
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user