Commit 81e90200 by Huang Linyu

Merge branch 'f-6.7.0' of 192.168.10.6:caosy/fun-admin into f-6.7.0

parents 4b0491a2 c73bf791
package com.ctrip.fun.admin.controller.order;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
......@@ -13,17 +17,23 @@ import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import com.ctrip.fun.admin.form.PaginationForm;
import com.ctrip.fun.admin.form.order.CommuneOrderQueryForm;
import com.ctrip.fun.admin.form.order.EventActivityOrderQueryForm;
import com.ctrip.fun.admin.form.order.VoucherOrderQueryForm;
import com.ctrip.fun.admin.form.order.OrderPayForm;
import com.ctrip.fun.admin.service.order.AbstractOpOrderService;
import com.ctrip.fun.admin.service.order.OpVoucherOrderService;
import com.ctrip.fun.admin.service.order.VoucherOrderExcelExportService;
import com.ctrip.fun.common.core.util.BeanConverter;
import com.ctrip.fun.common.core.util.DateUtil;
import com.ctrip.fun.common.core.util.StringUtils;
import com.ctrip.fun.common.vo.PagedResponseBean;
import com.ctrip.fun.common.vo.order.EventActivityOrderListBean;
import com.ctrip.fun.common.vo.order.EventActivityOrderListExcelBean;
import com.ctrip.fun.common.vo.order.EventActivityOrderMenuEnum;
import com.ctrip.fun.common.vo.order.VoucherOrderListBean;
import com.ctrip.fun.common.vo.order.VoucherOrderListExcelBean;
import com.ctrip.fun.common.vo.order.VoucherOrderMenuEnum;
......@@ -41,6 +51,9 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
@Autowired
private OpVoucherOrderService opVoucherOrderService;
@Autowired
private VoucherOrderExcelExportService voucherOrderExcelExportService;
@Override
AbstractOpOrderService<VoucherOrderProcessBean, OpVoucherOrderBean, VoucherOrderListBean, VoucherOrderListExcelBean> getOpOrderService() {
return opVoucherOrderService;
......@@ -53,14 +66,9 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
@SuppressWarnings("deprecation")
@Override
public String listAll(HttpServletRequest request, @PathVariable("listType") String listType,
@ModelAttribute("form") VoucherOrderQueryForm form, ModelMap model
) {
public String listAll(HttpServletRequest request, @PathVariable("listType") String listType, @ModelAttribute("form") VoucherOrderQueryForm form, ModelMap model) {
OpOrderQuery query = new OpOrderQuery();
// listType = "list_all";
// 获得菜单枚举值,并设置查询条件
VoucherOrderMenuEnum voucherOrderMenuEnum = this.setOrderQuery(query, listType, form);
// 设置paymentVersion #1为老版本,#2为新版本
query.setPaymentVersion(2);
int currentPage = 0;
int pageSize;
......@@ -88,17 +96,53 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
StringBuilder excel = new StringBuilder("/voucherOrder/excel/" + listType + "?");
String userName = (form.getUserName() == null) ? ("") : (form.getUserName());
String orderName = (form.getOrderName() == null) ? ("") : (form.getOrderName());
String recommendUserName = (form.getRecommendUserName() == null) ? ("") : (form.getRecommendUserName());
String recommendPhone = (form.getRecommendPhone() == null) ? ("") : (form.getRecommendPhone());
String userId = (form.getUserId() == null) ? ("") : (form.getUserId());
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String orderStartDate = (form.getOrderStartDate() == null) ? ("") : (format.format(form.getOrderStartDate()));
String orderEndDate = (form.getOrderEndDate() == null) ? ("") : (format.format(form.getOrderEndDate()));
excel.append("orderNo=").append(form.getOrderNo()).append("&userId=").append(userId).append("&userName=").append(userName).append("&orderStartDate=").append(orderStartDate)
.append("&orderEndDate=").append(orderEndDate).append("&total=").append(total);
excel.append("orderNo=").append(form.getOrderNo()).append("&orderName=").append(orderName).append("&userId=").append(userId).append("&userName=").append(userName).append("&orderStartDate=").append(orderStartDate)
.append("&orderEndDate=").append(orderEndDate).append("&total=").append(total).append("&recommendPhone=").append(recommendPhone).append("&recommendUserName=").append(recommendUserName);
model.put("excelpath", excel.toString());
return "voucherOrder/list/" + voucherOrderMenuEnum.getResult();
}
@Override
public String getExcelExport(@PathVariable("listType") String listType, Integer total,VoucherOrderQueryForm form, HttpServletResponse response) {
OpOrderQuery query = new OpOrderQuery();
this.setOrderQuery(query, listType, form);
query.setPagerOffset(0);
query.setPagerPerPage(total);
List<VoucherOrderListExcelBean> responseBean = voucherOrderExcelExportService.list("", query);
if (responseBean != null) {
for (VoucherOrderListBean bean : responseBean) {
bean.setOrderStatusString(OrderStatusEnum.getOrderStatusEnum(bean.getOrderStatus()).getShowStatusName());
}
}
response.setContentType("application/binary;charset=ISO8859-1");
String filename = "";
try {
ServletOutputStream outputStream = response.getOutputStream();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
filename += format.format(new Date());
filename += "爱玩活动订单";
filename = filename.replaceAll(" ", "_");
response.setHeader("Content-disposition", "attachment;filename=" + new String(filename.getBytes("gb2312"), "ISO8859-1") + ".xlsx");
voucherOrderExcelExportService.exportExcel(filename, responseBean, outputStream, listType);
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
private VoucherOrderMenuEnum setOrderQuery(OpOrderQuery query,
String listType, VoucherOrderQueryForm form) {
if (form.getOrderNo() == "") {
......@@ -255,12 +299,7 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
return null;
}
@Override
public String getExcelExport(String listType, Integer total,
VoucherOrderQueryForm form, HttpServletResponse response) {
// TODO Auto-generated method stub
return null;
}
public OpVoucherOrderService getOpVoucherOrderService() {
return opVoucherOrderService;
......@@ -270,7 +309,4 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
this.opVoucherOrderService = opVoucherOrderService;
}
}
package com.ctrip.fun.admin.service.order;
import java.util.ArrayList;
import java.util.List;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.core.ParameterizedTypeReference;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpMethod;
import com.ctrip.fun.admin.form.order.VoucherOrderQueryForm;
import com.ctrip.fun.common.core.util.DateUtil;
import com.ctrip.fun.common.vo.Request;
import com.ctrip.fun.common.vo.Response;
import com.ctrip.fun.common.vo.order.VoucherOrderListExcelBean;
import com.ctrip.fun.common.vo.order.OpOrderQuery;
public class VoucherOrderExcelExportService extends AbstractExcelExportService<VoucherOrderQueryForm, VoucherOrderListExcelBean> {
private static Logger logger = LoggerFactory.getLogger(VoucherOrderExcelExportService.class);
@Override
String getOrderType() {
return "voucherOrder";
}
@Override
public String[] getRowsName(String listType) {
String[] title_invoice = { "订单号", "订单名称","下单时间", "订单金额", "下单人", "下单手机号", "订单来源", "推荐人", "推荐人手机号"};
return title_invoice;
}
@Override
public void setCellByListType(String listType, XSSFRow row,
VoucherOrderListExcelBean bean, Integer cellNum,
XSSFCellStyle bodyCellStyle) {
ArrayList<XSSFCell> cellList_invoice = new ArrayList<XSSFCell>();
for (int i = 0; i < cellNum; i++) {
XSSFCell cell = row.createCell(i);
cell.setCellStyle(bodyCellStyle);
cellList_invoice.add(cell);
}
cellList_invoice.get(0).setCellValue(bean.getOrderNo() + "");
cellList_invoice.get(1).setCellValue(bean.getOrderName());
cellList_invoice.get(2).setCellValue(DateUtil.getDateTimeStr(bean.getOrderDate()));
cellList_invoice.get(3).setCellValue(bean.getActualAmount()+"");
cellList_invoice.get(4).setCellValue(bean.getOrderUserName());
cellList_invoice.get(5).setCellValue(bean.getOrderPhone());
cellList_invoice.get(6).setCellValue(bean.getPlatform());
cellList_invoice.get(7).setCellValue(bean.getRecommendUserName());
cellList_invoice.get(8).setCellValue(bean.getRecommendPhone());
}
@Override
public List<VoucherOrderListExcelBean> list(String userId, OpOrderQuery query) {
String uri = super.getServiceUri("uri.order.excelList");
uri = uri.replace("{orderType}", this.getOrderType());
List<VoucherOrderListExcelBean> responseBean = new ArrayList<VoucherOrderListExcelBean>();
Request<OpOrderQuery> request = new Request<OpOrderQuery>(userId, query);
HttpEntity<Request<OpOrderQuery>> entity = new HttpEntity<Request<OpOrderQuery>>(request);
Response<List<VoucherOrderListExcelBean>> response = super.exchange(uri, HttpMethod.POST, entity,
new ParameterizedTypeReference<Response<List<VoucherOrderListExcelBean>>>() {
}).getBody();
if (response.getStatus() == 0) {
responseBean = response.getBody();
} else {
logger.error(String.format("[list] status: %d, msg: %s", response.getStatus(), response.getMessage()));
}
return responseBean;
}
}
......@@ -172,6 +172,9 @@
<bean name="opVoucherOrderService"
class="com.ctrip.fun.admin.service.order.OpVoucherOrderService"
parent="abstractOpOrderService" />
<bean name="voucherOrderExcelExportService"
class="com.ctrip.fun.admin.service.order.VoucherOrderExcelExportService"
parent="abstractExcelExportService" />
<bean name="abstractExcelExportService"
class="com.ctrip.fun.admin.service.order.AbstractExcelExportService"
......
......@@ -108,9 +108,9 @@ function updateMobilePhone(){
</table>
<div class="row-fluid">
<!-- <div class="pagination pagination-left">
<div class="pagination pagination-left">
<a href="${excelpath}">excel导出</a>
</div> -->
</div>
<div class="pagination pagination-right">
<ul class="pagination pagination-right">
<@paginator.first />
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment