| | |
| | | import cc.mrbird.febs.common.enumerates.OrderDeliveryStateEnum; |
| | | import cc.mrbird.febs.common.enumerates.OrderStatusEnum; |
| | | import cc.mrbird.febs.common.exception.FebsException; |
| | | import cc.mrbird.febs.common.utils.FebsUtil; |
| | | import cc.mrbird.febs.common.utils.SpringContextHolder; |
| | | import cc.mrbird.febs.common.utils.excl.ExcelSheetPO; |
| | | import cc.mrbird.febs.common.utils.excl.ExcelUtil; |
| | |
| | | import cc.mrbird.febs.pay.service.IXcxPayService; |
| | | import cc.mrbird.febs.pay.util.WechatConfigure; |
| | | import cc.mrbird.febs.system.entity.Dept; |
| | | import cc.mrbird.febs.system.entity.User; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.date.DateTime; |
| | | import cn.hutool.core.date.DateUtil; |
| | |
| | | String title = "订单列表"; |
| | | orderSheet.setSheetName(title); |
| | | orderSheet.setTitle(title); |
| | | // String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品名称", "订单状态", "物流单号", "物流公司", "物流公司码"}; |
| | | String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品名称", "订单状态", "物流单号", "物流公司", "物流公司码"}; |
| | | orderSheet.setHeaders(header); |
| | | |
| | | QueryRequest request = new QueryRequest(); |
| | | request.setPageNum(1); |
| | | request.setPageSize(9999); |
| | | List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords(); |
| | | List<MallOrderInfo> dataList = new ArrayList<>(); |
| | | String orderIds = mallOrderInfo.getOrderIds(); |
| | | List<String> ids = StrUtil.splitTrim(orderIds, ","); |
| | | for(String id : ids){ |
| | | long orderId = Long.parseLong(id); |
| | | MallOrderInfo mallOrderInfo1 = mallOrderInfoMapper.selectAllOrderInfoByIdAndTakeUniqueCode(orderId,mallOrderInfo.getTakeUniqueCode()); |
| | | if(ObjectUtil.isNotEmpty(mallOrderInfo1)){ |
| | | dataList.add(mallOrderInfo1); |
| | | } |
| | | } |
| | | // List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords(); |
| | | List<List<Object>> list = new ArrayList<>(); |
| | | if (dataList.size() > 0) { |
| | | for (MallOrderInfo item : dataList) { |
| | |
| | | mallOrderInfo.setDeliveryState(OrderDeliveryStateEnum.DELIVERY_FINISH.getValue()); |
| | | mallOrderInfoMapper.updateById(mallOrderInfo); |
| | | |
| | | OrderStateDto orderStateDto = new OrderStateDto(); |
| | | orderStateDto.setOrderNo(mallOrderInfo.getOrderNo()); |
| | | String productNames = getProductNames(mallOrderInfo.getMemberId(), mallOrderInfo.getId()); |
| | | orderStateDto.setGoodsName(StrUtil.sub(productNames,0,10)+"..."); |
| | | orderStateDto.setOrderState("待自提"); |
| | | orderStateDto.setTakeCode(mallOrderInfo.getTakeCode()); |
| | | String takeUniqueCode = mallOrderInfo.getTakeUniqueCode(); |
| | | MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); |
| | | orderStateDto.setAddressArea(StrUtil.sub(mallTeamLeader.getAddressArea(),0,10)+"..."); |
| | | orderStateDto.setDetailAddress(StrUtil.sub(mallTeamLeader.getDetailAddress(),0,10)+"..."); |
| | | orderStateDto.setAmount(mallOrderInfo.getAmount().toString()); |
| | | orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId()); |
| | | DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getCode()); |
| | | orderStateDto.setTemplateId(dataDictionaryCustom.getValue()); |
| | | iXcxPayService.pushOrderToAddress(orderStateDto); |
| | | // OrderStateDto orderStateDto = new OrderStateDto(); |
| | | // String productNames = getProductNames(mallOrderInfo.getMemberId(), mallOrderInfo.getId()); |
| | | // orderStateDto.setGoodsName(StrUtil.sub(productNames,0,15)+"..."); |
| | | // String takeUniqueCode = mallOrderInfo.getTakeUniqueCode(); |
| | | // MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); |
| | | // orderStateDto.setAddressArea(mallTeamLeader.getAddressArea()); |
| | | // orderStateDto.setDetailAddress(StrUtil.sub(mallTeamLeader.getDetailAddress(),0,20)+"..."); |
| | | // orderStateDto.setRemark("果蔬等生鲜,请尽快取货"); |
| | | // orderStateDto.setLeaderPhone(mallTeamLeader.getPhone()); |
| | | // orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId()); |
| | | // DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_THREE.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_THREE.getCode()); |
| | | // orderStateDto.setTemplateId(dataDictionaryCustom.getValue()); |
| | | // iXcxPayService.pushOrderToAddress(orderStateDto); |
| | | // iXcxPayService.uniformMessageSend(orderStateDto); |
| | | } |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | | @GetMapping("deliverOrder") |
| | | @ControllerEndpoint(operation = "导出订单列表,系统自动发货", exceptionMessage = "操作失败") |
| | | public FebsResponse deliverOrder(MallOrderInfo mallOrderInfoDto){ |
| | | String orderIds = mallOrderInfoDto.getOrderIds(); |
| | | List<String> ids = StrUtil.splitTrim(orderIds, ","); |
| | | for(String id : ids){ |
| | | long orderId = Long.parseLong(id); |
| | | MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectByIdAndTakeUniqueCode(orderId,mallOrderInfoDto.getTakeUniqueCode()); |
| | | // if(ObjectUtil.isEmpty(mallOrderInfo)){ |
| | | // return new FebsResponse().fail().message("请确认订单是否属于该团长"); |
| | | // } |
| | | Integer status = mallOrderInfo.getStatus() == null ? 0 : mallOrderInfo.getStatus(); |
| | | Integer deliveryState = mallOrderInfo.getDeliveryState() == null ? 0 : mallOrderInfo.getDeliveryState(); |
| | | if(OrderStatusEnum.WAIT_SHIPPING.getValue() != status){ |
| | | // continue; |
| | | return new FebsResponse().fail().message("状态不是待发货"); |
| | | } |
| | | if(1 != deliveryState){ |
| | | // continue; |
| | | return new FebsResponse().fail().message("配送状态不是待配送"); |
| | | } |
| | | adminMallOrderService.updateOrderStateAndDeliveryState(mallOrderInfo.getId(), OrderStatusEnum.WAIT_FINISH.getValue(), OrderDeliveryStateEnum.DELIVERY_ING.getValue()); |
| | | } |
| | | return new FebsResponse().success(); |
| | | } |
| | |
| | | List<ExcelSheetPO> res = new ArrayList<>(); |
| | | ExcelSheetPO orderSheet = new ExcelSheetPO(); |
| | | String title = "订单列表"; |
| | | |
| | | orderSheet.setSheetName(title); |
| | | orderSheet.setTitle(title); |
| | | String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "商品名称", "团长名称", "团长手机号码", "自提点名称","详细地址"}; |
| | | // String[] header = {"订单编号", "订单详情(商品*数量)", "订单金额", "用户提货码", "配送方式", "用户姓名", "用户电话","用户地址", "团长名称", "团长手机号码", "自提点名称"}; |
| | | |
| | | String[] header = {"订单编号", "订单详情(商品*数量)", "订单金额", "用户提货码", "用户姓名", "用户电话","用户地址", "团长名称", "团长手机号码", "自提点名称"}; |
| | | orderSheet.setHeaders(header); |
| | | |
| | | QueryRequest request = new QueryRequest(); |
| | | request.setPageNum(1); |
| | | request.setPageSize(9999); |
| | | List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords(); |
| | | List<MallOrderInfo> dataList = new ArrayList<>(); |
| | | String orderIds = mallOrderInfo.getOrderIds(); |
| | | List<String> ids = StrUtil.splitTrim(orderIds, ","); |
| | | for(String id : ids){ |
| | | long orderId = Long.parseLong(id); |
| | | MallOrderInfo mallOrderInfo1 = mallOrderInfoMapper.selectAllOrderInfoByIdAndTakeUniqueCode(orderId,mallOrderInfo.getTakeUniqueCode()); |
| | | if(ObjectUtil.isNotEmpty(mallOrderInfo1)){ |
| | | dataList.add(mallOrderInfo1); |
| | | } |
| | | } |
| | | // List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords(); |
| | | List<List<Object>> list = new ArrayList<>(); |
| | | if (dataList.size() > 0) { |
| | | if (CollUtil.isNotEmpty(dataList)) { |
| | | for (MallOrderInfo item : dataList) { |
| | | List<Object> temp = new ArrayList<>(); |
| | | temp.add(item.getOrderNo()); |
| | | temp.add(item.getAmount()); |
| | | temp.add(DateUtil.format(item.getOrderTime(), "yyyy-MM-dd HH:mm:ss")); |
| | | temp.add("自提"); |
| | | temp.add(item.getName()); |
| | | temp.add(item.getPhone()); |
| | | if (CollUtil.isNotEmpty(item.getItems())) { |
| | | StringBuilder sb = new StringBuilder(); |
| | | |
| | |
| | | } else { |
| | | temp.add(""); |
| | | } |
| | | temp.add(item.getAmount()); |
| | | temp.add(item.getTakeCode()); |
| | | // temp.add("自提"); |
| | | temp.add(item.getName()); |
| | | temp.add(item.getPhone()); |
| | | temp.add(item.getAddress()); |
| | | |
| | | temp.add(item.getLeaderName()); |
| | | temp.add(item.getLeaderPhone()); |
| | | temp.add(item.getAddressArea()); |
| | | temp.add(item.getProvince()+item.getCity()+item.getTownship()+item.getDetailAddress()); |
| | | list.add(temp); |
| | | |
| | | adminMallOrderService.updateOrderStateAndDeliveryState(item.getId(), OrderStatusEnum.WAIT_FINISH.getValue(), OrderDeliveryStateEnum.DELIVERY_ING.getValue()); |
| | | // adminMallOrderService.updateOrderStateAndDeliveryState(item.getId(), OrderStatusEnum.WAIT_FINISH.getValue(), OrderDeliveryStateEnum.DELIVERY_ING.getValue()); |
| | | } |
| | | } |
| | | orderSheet.setDataList(list); |
| | | res.add(orderSheet); |
| | | response = ResponseHeadUtil.setExcelHead(response); |
| | | MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(mallOrderInfo.getTakeUniqueCode()); |
| | | String name = mallTeamLeader.getName(); |
| | | response.setHeader("Content-Disposition", |
| | | "attachment;filename=" + URLEncoder.encode(title + DateUtil.format(new Date(), "yyyyMMDDHHmmss") + ".xlsx".trim(), "UTF-8")); |
| | | "attachment;filename=" + URLEncoder.encode(name+"-"+title + DateUtil.format(new Date(), "yyyyMMDDHHmmss") + ".xlsx".trim(), "UTF-8")); |
| | | OutputStream os = response.getOutputStream(); |
| | | ExcelUtil.createWorkbookAtOutStream(ExcelVersion.V2007, res, os, true); |
| | | return null; |
| | |
| | | } |
| | | |
| | | String fileName = file.getOriginalFilename(); |
| | | String dirPath = "/Users/helius/Documents/"; |
| | | String dirPath = "/home/javaweb/webresource/qianAYi/"; |
| | | |
| | | File saveFile = new File(new File(dirPath).getAbsolutePath() + File.separator + fileName); |
| | | if (!saveFile.exists()) { |
| | |
| | | return adminMallOrderService.showStateSwitchOff(id); |
| | | } |
| | | |
| | | /** |
| | | * 订单列表-统计商品份数 |
| | | */ |
| | | @GetMapping("goodsStatistics") |
| | | public FebsResponse goodsStatistics(MallOrderItem mallOrderItem, QueryRequest request, Integer parentId) { |
| | | if (parentId == null) { |
| | | ViewMallOrderController.orderIdsStr = ""; |
| | | } |
| | | long[] longs = StrUtil.splitToLong(ViewMallOrderController.orderIdsStr, ','); |
| | | mallOrderItem.setOrderIdsStr(longs); |
| | | Map<String, Object> data = getDataTable(adminMallOrderService.goodsStatistics(mallOrderItem,request)); |
| | | return new FebsResponse().success().data(data); |
| | | } |
| | | |
| | | } |