前端代码:
public function confirm():void{
var file:FileReference = new FileReference();
file.download(new URLRequest(PdpRequestUrl.exportPayment+"?startTime="+startTime.text+"&endTime="+endTime.text),"支付记录.xls");
var alert:Alert;
file.addEventListener(Event.SELECT,function(event:Event):void{
alert = Alert.show("正在导出中,请稍后...","提示");
});
file.addEventListener(Event.COMPLETE, function(event:Event):void{
PopUpManager.removePopUp(alert);
Alert.show("导出成功!","提示");
close();
});
}
后台用grails写的:
def exportService;
def exportPayment(){
log.info("导出支付记录start.....................")
response.contentType = 'application/vnd.ms-excel'
response.setHeader('Content-disposition', 'attachment;filename=transinfo.xls')
def queryParams = {
if (params.startTime && params.endTime) {
if (params.startTime > params.endTime) {
throw new LogicException("开始时间不能大于结束时间");
}
}
if (params.startTime?.trim()) {
ge("createTime", AppDateUtils.toDate(params.startTime.trim(), AppDateUtils.yyyyMMdd))
}
if (params.endTime?.trim()) {
lt("createTime", AppDateUtils.addDay2Date(AppDateUtils.toDate(params.endTime.trim(), AppDateUtils.yyyyMMdd), 1))
}
}
def list = Payment.createCriteria().list(queryParams);
List<Map> result = new ArrayList<Map>()
list.each { Payment payment ->
Map bean = [:];
bean.paymentNum = payment.paymentNum;
bean.amount = payment.amount/100;
bean.channelName = payment.channelInfo.channelName;
bean.createTime = AppDateUtils.toString(payment.createTime,AppDateUtils.yyyyMMddHHmmss);
bean.memo = payment.memo;
result.add(bean);
}
List fields = [
'paymentNum',
'channelName', 'amount',
'createTime', 'memo'
]
Map labels = [
'paymentNum': '交易流水号',
'channelName': '渠道', 'amount': '支付金额',
'createTime': '支付时间', 'memo': '描述'
]
Map parameters = [title: '支付记录', 'column.widths': [0.2, 0.15, 0.15, 0.2, 0.2]]
try {
exportService.export('excel', response.outputStream, result, fields, labels, [:], parameters);
} catch (Exception e){
throw new LogicException("导出失败!");
}
log.info("导出支付记录end.....................")
}
分享到:
相关推荐
在标题“FLEX上传文件,flex upload”和描述“flex上传文件的例子,支持多文件上传。”中,我们关注的核心知识点是Flex中的文件上传功能。 文件上传是Web应用中的常见需求,特别是在处理用户提交的多媒体内容时。在...
本项目提供了一个完整的Flex文件上传控件,且集成了Java服务端处理,允许用户上传文件到服务器,并能进行多文件或单文件选择,以及设置上传文件大小限制,同时展示上传进度条,为用户提供友好的交互体验。...
Mobile FLEX上传文件是一种在移动设备上利用Adobe Flex技术实现文件上传至服务器的过程。Flex是基于ActionScript 3.0的开源框架,主要用于构建富互联网应用程序(RIA),它支持多种平台,包括移动设备。在本场景中,...
Flex上传文件到.NET服务器是一种常见的交互方式,尤其在开发富互联网应用程序时。本文将深入探讨Flex客户端如何与.NET服务器进行文件上传的详细过程,并提供关键的技术知识点。 首先,`Flex`是一个开源的富互联网...
- **Button**:两个按钮,分别用于打开文件选择对话框(选择文件)和上传文件。 - **List**:用于显示已选中的文件列表。 - **Button**:用于触发文件下载操作。 - **ProgressBar**:用于显示文件上传进度。 #### ...
在Flex中处理文件上传是一项常见的任务,尤其是在开发涉及用户交互和数据交换的Web应用时。下面我们将深入探讨Flex中的文件上传机制及其限制。 1. Flex文件上传组件:Flex提供了FileReference类,它是Flash Player ...
FileReference提供了选择文件、读取文件内容以及上传文件的方法。例如,你可以创建一个按钮,当用户点击时弹出文件选择对话框,选择的文件将存储在FileReference对象中。然后,通过调用FileReference的upload方法,...
- 开始上传文件时,监听器会捕捉到`Event.COMPLETE`事件,表示文件上传完成。 - 在上传过程中,通过`ProgressEvent.PROGRESS`事件实时更新进度条。 #### 4. **异常处理** 当出现无法浏览文件或者上传失败的情况时...
1. **FileReference类**:Flex中的FileReference类是与文件操作相关的基础,它允许用户选择一个或多个文件,并提供了读取、保存和上传文件的功能。 2. **事件监听**:在用户选择文件后,我们需要监听DataEvent....
一个实现FLEX图片上传转换二进制的类 替换通过外部服务上传
实现DataGrid多文件上传,希望对你有帮助!
在Flex上传文件的场景中,我们需要创建一个自定义的HttpHandler,处理POST请求,并接收从Flex客户端传来的文件数据。接收到文件后,可以将其保存到服务器的指定位置。 下载部分则相对简单,通常由Flex客户端发起...
Flex 文件上传的文件代码 交你一步一步的完成上传功能
1. **安全性**:确保只有授权的用户才能上传文件,并且上传的文件不包含恶意代码。 2. **并发性**:如果多个用户同时上传,服务器需要处理并发请求,避免资源冲突。 3. **用户体验**:提供良好的反馈,如进度指示、...
标题“Flex多文件上传+md5验证文件是否上传”揭示了该技术的核心要点:使用Flex来处理多个文件的上传,并通过MD5哈希校验确保上传的文件与原始文件一致,防止数据篡改。 1. **多文件上传**:在Flex中,可以利用...
例如,使用HTTPS进行加密传输,对上传文件进行病毒扫描,以及限制非法文件类型。同时,优化文件传输速度,比如采用分块上传和断点续传,以提高大文件上传的效率。 6. **后端接口**:Flex前端需要与后端服务进行交互...
本文将深入探讨“flash上传文件,flex上传,无刷新上传,php上传”这一主题,并结合提供的源码文件,分析实现这些功能的关键技术和步骤。 首先,让我们了解一下“Flash上传文件”。在早期的Web开发中,Flash由于其强大...
这个类提供了选择本地文件、读取文件内容以及上传文件到服务器的方法。用户通过点击按钮触发文件选择对话框,选择后,`FileReference`会处理文件并准备上传。 3. **事件监听**:为了跟踪文件选择和上传过程,我们...
Flex文件上传组件是一种基于Adobe Flex技术的用户界面组件,它允许用户在Web应用程序中选择并上传文件。在Flex中,这种组件通常会显示一个文件选择对话框,让用户选择要上传的文件,并且会提供一个进度条来显示上传...
在Flex中,通过FileReference类选择和上传文件;在Java端,使用Spring MVC的MultipartFile接口接收并处理上传的文件。这个过程涉及到前端与后端的交互,对理解网络通信和文件处理机制有很好的实践意义。