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; package com.ctrip.fun.admin.controller.order;
import java.io.IOException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Calendar; 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.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
...@@ -13,17 +17,23 @@ import org.springframework.validation.BindingResult; ...@@ -13,17 +17,23 @@ import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping; 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.PaginationForm;
import com.ctrip.fun.admin.form.order.CommuneOrderQueryForm; 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.VoucherOrderQueryForm;
import com.ctrip.fun.admin.form.order.OrderPayForm; import com.ctrip.fun.admin.form.order.OrderPayForm;
import com.ctrip.fun.admin.service.order.AbstractOpOrderService; import com.ctrip.fun.admin.service.order.AbstractOpOrderService;
import com.ctrip.fun.admin.service.order.OpVoucherOrderService; 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.BeanConverter;
import com.ctrip.fun.common.core.util.DateUtil; import com.ctrip.fun.common.core.util.DateUtil;
import com.ctrip.fun.common.core.util.StringUtils; import com.ctrip.fun.common.core.util.StringUtils;
import com.ctrip.fun.common.vo.PagedResponseBean; 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.VoucherOrderListBean;
import com.ctrip.fun.common.vo.order.VoucherOrderListExcelBean; import com.ctrip.fun.common.vo.order.VoucherOrderListExcelBean;
import com.ctrip.fun.common.vo.order.VoucherOrderMenuEnum; import com.ctrip.fun.common.vo.order.VoucherOrderMenuEnum;
...@@ -41,6 +51,9 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO ...@@ -41,6 +51,9 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
@Autowired @Autowired
private OpVoucherOrderService opVoucherOrderService; private OpVoucherOrderService opVoucherOrderService;
@Autowired
private VoucherOrderExcelExportService voucherOrderExcelExportService;
@Override @Override
AbstractOpOrderService<VoucherOrderProcessBean, OpVoucherOrderBean, VoucherOrderListBean, VoucherOrderListExcelBean> getOpOrderService() { AbstractOpOrderService<VoucherOrderProcessBean, OpVoucherOrderBean, VoucherOrderListBean, VoucherOrderListExcelBean> getOpOrderService() {
return opVoucherOrderService; return opVoucherOrderService;
...@@ -53,14 +66,9 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO ...@@ -53,14 +66,9 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
@SuppressWarnings("deprecation") @SuppressWarnings("deprecation")
@Override @Override
public String listAll(HttpServletRequest request, @PathVariable("listType") String listType, public String listAll(HttpServletRequest request, @PathVariable("listType") String listType, @ModelAttribute("form") VoucherOrderQueryForm form, ModelMap model) {
@ModelAttribute("form") VoucherOrderQueryForm form, ModelMap model
) {
OpOrderQuery query = new OpOrderQuery(); OpOrderQuery query = new OpOrderQuery();
// listType = "list_all";
// 获得菜单枚举值,并设置查询条件
VoucherOrderMenuEnum voucherOrderMenuEnum = this.setOrderQuery(query, listType, form); VoucherOrderMenuEnum voucherOrderMenuEnum = this.setOrderQuery(query, listType, form);
// 设置paymentVersion #1为老版本,#2为新版本
query.setPaymentVersion(2); query.setPaymentVersion(2);
int currentPage = 0; int currentPage = 0;
int pageSize; int pageSize;
...@@ -88,17 +96,53 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO ...@@ -88,17 +96,53 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
StringBuilder excel = new StringBuilder("/voucherOrder/excel/" + listType + "?"); StringBuilder excel = new StringBuilder("/voucherOrder/excel/" + listType + "?");
String userName = (form.getUserName() == null) ? ("") : (form.getUserName()); 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()); String userId = (form.getUserId() == null) ? ("") : (form.getUserId());
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String orderStartDate = (form.getOrderStartDate() == null) ? ("") : (format.format(form.getOrderStartDate())); String orderStartDate = (form.getOrderStartDate() == null) ? ("") : (format.format(form.getOrderStartDate()));
String orderEndDate = (form.getOrderEndDate() == null) ? ("") : (format.format(form.getOrderEndDate())); 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) 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("&orderEndDate=").append(orderEndDate).append("&total=").append(total).append("&recommendPhone=").append(recommendPhone).append("&recommendUserName=").append(recommendUserName);
model.put("excelpath", excel.toString()); model.put("excelpath", excel.toString());
return "voucherOrder/list/" + voucherOrderMenuEnum.getResult(); 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, private VoucherOrderMenuEnum setOrderQuery(OpOrderQuery query,
String listType, VoucherOrderQueryForm form) { String listType, VoucherOrderQueryForm form) {
if (form.getOrderNo() == "") { if (form.getOrderNo() == "") {
...@@ -255,12 +299,7 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO ...@@ -255,12 +299,7 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
return null; return null;
} }
@Override
public String getExcelExport(String listType, Integer total,
VoucherOrderQueryForm form, HttpServletResponse response) {
// TODO Auto-generated method stub
return null;
}
public OpVoucherOrderService getOpVoucherOrderService() { public OpVoucherOrderService getOpVoucherOrderService() {
return opVoucherOrderService; return opVoucherOrderService;
...@@ -270,7 +309,4 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO ...@@ -270,7 +309,4 @@ public class OpVoucherOrderController extends AbstractOpOrderController<VoucherO
this.opVoucherOrderService = opVoucherOrderService; 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 @@ ...@@ -172,6 +172,9 @@
<bean name="opVoucherOrderService" <bean name="opVoucherOrderService"
class="com.ctrip.fun.admin.service.order.OpVoucherOrderService" class="com.ctrip.fun.admin.service.order.OpVoucherOrderService"
parent="abstractOpOrderService" /> parent="abstractOpOrderService" />
<bean name="voucherOrderExcelExportService"
class="com.ctrip.fun.admin.service.order.VoucherOrderExcelExportService"
parent="abstractExcelExportService" />
<bean name="abstractExcelExportService" <bean name="abstractExcelExportService"
class="com.ctrip.fun.admin.service.order.AbstractExcelExportService" class="com.ctrip.fun.admin.service.order.AbstractExcelExportService"
......
...@@ -108,9 +108,9 @@ function updateMobilePhone(){ ...@@ -108,9 +108,9 @@ function updateMobilePhone(){
</table> </table>
<div class="row-fluid"> <div class="row-fluid">
<!-- <div class="pagination pagination-left"> <div class="pagination pagination-left">
<a href="${excelpath}">excel导出</a> <a href="${excelpath}">excel导出</a>
</div> --> </div>
<div class="pagination pagination-right"> <div class="pagination pagination-right">
<ul class="pagination pagination-right"> <ul class="pagination pagination-right">
<@paginator.first /> <@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