package com.matrix.system.hiveErp.action;
|
|
import com.matrix.core.constance.MatrixConstance;
|
import com.matrix.core.pojo.AjaxResult;
|
import com.matrix.core.pojo.PaginationVO;
|
import com.matrix.core.tools.DateUtil;
|
import com.matrix.core.tools.StringUtils;
|
import com.matrix.core.tools.WebUtil;
|
import com.matrix.core.tools.excl.ExcelSheetPO;
|
import com.matrix.core.tools.excl.ExcelUtil;
|
import com.matrix.core.tools.excl.ExcelVersion;
|
import com.matrix.system.common.bean.SysUsers;
|
import com.matrix.system.common.tools.ResponseHeadUtil;
|
import com.matrix.system.hive.action.BaseController;
|
import com.matrix.system.hive.action.util.QueryUtil;
|
import com.matrix.system.hive.bean.MoneyCardUse;
|
import com.matrix.system.hive.bean.SysOrder;
|
import com.matrix.system.hive.bean.SysOrderItem;
|
import com.matrix.system.hive.dao.SysOrderDao;
|
import com.matrix.system.hive.dao.SysOrderItemDao;
|
import com.matrix.system.hive.service.AchieveNewService;
|
import com.matrix.system.hive.service.MoneyCardUseService;
|
import com.matrix.system.hive.service.SysOrderItemService;
|
import com.matrix.system.hive.service.SysOrderService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.ui.ModelMap;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
import java.io.OutputStream;
|
import java.net.URLEncoder;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* 线下订单
|
*
|
* @author jiangyouyao
|
* @date 2016-09-08
|
*/
|
@Controller
|
@RequestMapping(value = "admin/erpOrder")
|
public class ErpOrderController extends BaseController {
|
@Resource
|
private SysOrderService orderService;
|
|
@Autowired
|
private SysOrderItemDao orderItemDao;
|
|
@Resource
|
private MoneyCardUseService cardUseService;
|
|
@Autowired
|
private SysOrderItemService orderItemService;
|
|
@Autowired
|
private SysOrderDao sysOrderDao;
|
|
@Autowired
|
private AchieveNewService achieveNewService;
|
|
|
/**
|
* 列表显示
|
*/
|
@RequestMapping(value = "/showList")
|
public @ResponseBody
|
AjaxResult showList(SysOrder sysOrder, PaginationVO pageVo) {
|
//默认排序
|
QueryUtil.setQueryLimitCom(sysOrder);
|
if(StringUtils.isBlank(pageVo.getSort())){pageVo.setSort("order_time");}
|
if(StringUtils.isBlank(pageVo.getOrder())){pageVo.setOrder("desc");}
|
return new AjaxResult(AjaxResult.STATUS_SUCCESS, orderService.findInPage(sysOrder, pageVo),
|
orderService.findTotal(sysOrder));
|
}
|
|
|
|
//=======================================页面转发==================================
|
|
|
|
/**
|
* 跳转 消费流水详情页面
|
*
|
* @author jyy
|
*/
|
@RequestMapping(value = "/orderItem")
|
public String orderItem(SysOrder orderVo) {
|
|
if(orderVo.getId()!=null){
|
WebUtil.getRequest().setAttribute("orderParam", orderVo.getId());
|
WebUtil.getRequest().setAttribute("orderId", orderVo.getId());
|
}else if(StringUtils.isNotBlank(orderVo.getOrderNo())){
|
WebUtil.getRequest().setAttribute("orderParam", orderVo.getOrderNo());
|
WebUtil.getRequest().setAttribute("orderNo", orderVo.getOrderNo());
|
}
|
return "admin/hive-erp/order/orderXq-form";
|
}
|
|
|
|
/**
|
* 取消订单
|
*/
|
@Transactional(rollbackFor = Exception.class)
|
@RequestMapping(value = "/cancelOrder")
|
public @ResponseBody
|
AjaxResult cancelOrder(Long id, HttpServletRequest request) {
|
|
AjaxResult result = new AjaxResult();
|
SysOrder order = orderService.findById(id);
|
if (order == null) {
|
return new AjaxResult(AjaxResult.STATUS_FAIL, "订单不存在!");
|
}
|
orderService.cancelOrder(id);
|
result.setStatus(AjaxResult.STATUS_SUCCESS);
|
result.setInfo("取消成功!");
|
return result;
|
}
|
|
@RequestMapping(value = "/exportExcel")
|
public void report(ModelMap model, HttpServletRequest request, HttpServletResponse response,
|
SysOrder sysOrder) throws Exception {
|
List<ExcelSheetPO> res = new ArrayList<>();
|
ExcelSheetPO orderSheet = new ExcelSheetPO();
|
String title = "订单记录";
|
orderSheet.setSheetName(title);
|
orderSheet.setTitle(title);
|
String[] header = {"订单号", "客户姓名", "客户手机", "下单时间", "订单总价", "折后价", "现金付款", "卡付款", "顾问姓名", "所属门店", "订单状态"};
|
orderSheet.setHeaders(header);
|
SysUsers users = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
|
sysOrder.setShopId(users.getShopId());
|
List<SysOrder> dataList = orderService.findInPage(sysOrder, null);
|
List<List<Object>> list = new ArrayList<>();
|
if (dataList.size() > 0) {
|
for (SysOrder item : dataList) {
|
List<Object> temp = new ArrayList<>();
|
temp.add(item.getOrderNo());
|
temp.add(item.getVipName());
|
temp.add(item.getVipPhone());
|
temp.add(DateUtil.dateToString(item.getOrderTime(), DateUtil.DATE_FORMAT_MM));
|
temp.add(item.getTotal());
|
temp.add(item.getZkTotal());
|
temp.add(item.getCashPay());
|
temp.add(item.getCardPay());
|
temp.add(item.getStaffName());
|
temp.add(item.getShopName());
|
temp.add(item.getStatu());
|
list.add(temp);
|
}
|
}
|
orderSheet.setDataList(list);
|
res.add(orderSheet);
|
response = ResponseHeadUtil.setExcelHead(response);
|
response.setHeader("Content-Disposition",
|
"attachment;filename=" + URLEncoder.encode(title + DateUtil.getTimeMark() + ".xlsx".trim(), "UTF-8"));
|
OutputStream os = response.getOutputStream();
|
ExcelUtil.createWorkbookAtOutStream(ExcelVersion.V2007, res, os, true);
|
|
}
|
|
|
|
}
|