|
@ -1,11 +1,13 @@ |
|
|
package com.yxt.yythmall.adminapi; |
|
|
package com.yxt.yythmall.adminapi; |
|
|
|
|
|
|
|
|
|
|
|
import com.alibaba.excel.EasyExcel; |
|
|
|
|
|
import com.alibaba.excel.ExcelWriter; |
|
|
|
|
|
import com.alibaba.excel.write.metadata.WriteSheet; |
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
import com.yxt.common.core.query.PagerQuery; |
|
|
import com.yxt.common.core.query.PagerQuery; |
|
|
import com.yxt.common.core.result.ResultBean; |
|
|
import com.yxt.common.core.result.ResultBean; |
|
|
import com.yxt.common.core.vo.PagerVo; |
|
|
|
|
|
import com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderQuery; |
|
|
import com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderQuery; |
|
|
import com.yxt.yythmall.biz.vegecallerreserveorder.ReserveOrderVo; |
|
|
import com.yxt.yythmall.biz.vegecallerreserveorder.*; |
|
|
import com.yxt.yythmall.biz.vegecallerreserveorder.VegeCellarReserveOrderService; |
|
|
|
|
|
import io.swagger.annotations.ApiOperation; |
|
|
import io.swagger.annotations.ApiOperation; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.web.bind.annotation.PostMapping; |
|
|
import org.springframework.web.bind.annotation.PostMapping; |
|
@ -13,6 +15,13 @@ import org.springframework.web.bind.annotation.RequestBody; |
|
|
import org.springframework.web.bind.annotation.RequestMapping; |
|
|
import org.springframework.web.bind.annotation.RequestMapping; |
|
|
import org.springframework.web.bind.annotation.RestController; |
|
|
import org.springframework.web.bind.annotation.RestController; |
|
|
|
|
|
|
|
|
|
|
|
import javax.servlet.http.HttpServletResponse; |
|
|
|
|
|
import java.io.IOException; |
|
|
|
|
|
import java.net.URLEncoder; |
|
|
|
|
|
import java.util.List; |
|
|
|
|
|
import java.util.Map; |
|
|
|
|
|
import java.util.concurrent.atomic.AtomicInteger; |
|
|
|
|
|
|
|
|
@RestController("com.yxt.yythmall.adminapi.AdminReserveRest") |
|
|
@RestController("com.yxt.yythmall.adminapi.AdminReserveRest") |
|
|
@RequestMapping("/adminapi/reserve") |
|
|
@RequestMapping("/adminapi/reserve") |
|
|
public class AdminReserveRest { |
|
|
public class AdminReserveRest { |
|
@ -22,7 +31,97 @@ public class AdminReserveRest { |
|
|
|
|
|
|
|
|
@ApiOperation("精确到客户的预约单列表") |
|
|
@ApiOperation("精确到客户的预约单列表") |
|
|
@PostMapping("/pageOfCustomer") |
|
|
@PostMapping("/pageOfCustomer") |
|
|
public ResultBean<PagerVo<ReserveOrderVo>> orderList(@RequestBody PagerQuery<LpkReserveOrderQuery> pq) { |
|
|
public ResultBean<IPage<ReserveOrderVo>> pageOfCustomer(@RequestBody PagerQuery<LpkReserveOrderQuery> pq) { |
|
|
return vegeCellarReserveOrderService.pageOfCustomer(pq); |
|
|
return vegeCellarReserveOrderService.pageOfCustomer(pq); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@PostMapping("/expExcelOfCustomer") |
|
|
|
|
|
public void expExcelOfCustomer(@RequestBody LpkReserveOrderQuery pq, HttpServletResponse response) throws IOException { |
|
|
|
|
|
// 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman
|
|
|
|
|
|
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); |
|
|
|
|
|
response.setCharacterEncoding("utf-8"); |
|
|
|
|
|
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
|
|
|
|
|
|
String fileName = URLEncoder.encode("预约单明细", "UTF-8").replaceAll("\\+", "%20"); |
|
|
|
|
|
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); |
|
|
|
|
|
Map<String, List<ReserveCustomerExcel>> map = vegeCellarReserveOrderService.mapForExcelCustomer(pq); |
|
|
|
|
|
// EasyExcel.write(response.getOutputStream(), RpHzcExcel.class).sheet("cck").doWrite(list);
|
|
|
|
|
|
try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), ReserveCustomerExcel.class).build()) { |
|
|
|
|
|
AtomicInteger i= new AtomicInteger(); |
|
|
|
|
|
map.forEach((key,val) ->{ |
|
|
|
|
|
WriteSheet writeSheet = EasyExcel.writerSheet(i.get(),key).build(); |
|
|
|
|
|
i.getAndIncrement(); |
|
|
|
|
|
excelWriter.write(val, writeSheet); |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ApiOperation("精确到客户的预约单列表") |
|
|
|
|
|
@PostMapping("/pageOfStore") |
|
|
|
|
|
public ResultBean<IPage<ReserveOrderVo>> pageOfStore(@RequestBody PagerQuery<LpkReserveOrderQuery> pq) { |
|
|
|
|
|
return vegeCellarReserveOrderService.pageOfStore(pq); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@PostMapping("/expExcelOfStore") |
|
|
|
|
|
public void expExcelOfStore(@RequestBody LpkReserveOrderQuery pq, HttpServletResponse response) throws IOException { |
|
|
|
|
|
// 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman
|
|
|
|
|
|
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); |
|
|
|
|
|
response.setCharacterEncoding("utf-8"); |
|
|
|
|
|
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
|
|
|
|
|
|
String fileName = URLEncoder.encode("提货点配货单", "UTF-8").replaceAll("\\+", "%20"); |
|
|
|
|
|
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); |
|
|
|
|
|
Map<String, List<ReserveStoreExcel>> map = vegeCellarReserveOrderService.mapForExcelStore(pq); |
|
|
|
|
|
// EasyExcel.write(response.getOutputStream(), RpHzcExcel.class).sheet("cck").doWrite(list);
|
|
|
|
|
|
try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), ReserveStoreExcel.class).build()) { |
|
|
|
|
|
AtomicInteger i= new AtomicInteger(); |
|
|
|
|
|
map.forEach((key,val) ->{ |
|
|
|
|
|
WriteSheet writeSheet = EasyExcel.writerSheet(i.get(),key).build(); |
|
|
|
|
|
i.getAndIncrement(); |
|
|
|
|
|
excelWriter.write(val, writeSheet); |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ApiOperation("精确到客户的预约单列表") |
|
|
|
|
|
@PostMapping("/pageOfBank") |
|
|
|
|
|
public ResultBean<IPage<ReserveOrderVo>> pageOfBank(@RequestBody PagerQuery<LpkReserveOrderQuery> pq) { |
|
|
|
|
|
return vegeCellarReserveOrderService.pageOfBank(pq); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@PostMapping("/expExcelOfBank") |
|
|
|
|
|
public void expExcelOfBank(@RequestBody LpkReserveOrderQuery pq, HttpServletResponse response) throws IOException { |
|
|
|
|
|
// 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman
|
|
|
|
|
|
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); |
|
|
|
|
|
response.setCharacterEncoding("utf-8"); |
|
|
|
|
|
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
|
|
|
|
|
|
String fileName = URLEncoder.encode("提货点配货单", "UTF-8").replaceAll("\\+", "%20"); |
|
|
|
|
|
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); |
|
|
|
|
|
Map<String, List<ReserveBankExcel>> map = vegeCellarReserveOrderService.mapForExcelBank(pq); |
|
|
|
|
|
// EasyExcel.write(response.getOutputStream(), RpHzcExcel.class).sheet("cck").doWrite(list);
|
|
|
|
|
|
try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), ReserveBankExcel.class).build()) { |
|
|
|
|
|
AtomicInteger i= new AtomicInteger(); |
|
|
|
|
|
map.forEach((key,val) ->{ |
|
|
|
|
|
WriteSheet writeSheet = EasyExcel.writerSheet(i.get(),key).build(); |
|
|
|
|
|
i.getAndIncrement(); |
|
|
|
|
|
excelWriter.write(val, writeSheet); |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ApiOperation("精确到客户的预约单列表") |
|
|
|
|
|
@PostMapping("/pageOfAll") |
|
|
|
|
|
public ResultBean<IPage<ReserveOrderVo>> pageOfAll(@RequestBody PagerQuery<LpkReserveOrderQuery> pq) { |
|
|
|
|
|
return vegeCellarReserveOrderService.pageOfAll(pq); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@PostMapping("/expExcelOfAll") |
|
|
|
|
|
public void expExcelOfAll(@RequestBody LpkReserveOrderQuery pq, HttpServletResponse response) throws IOException { |
|
|
|
|
|
// 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman
|
|
|
|
|
|
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); |
|
|
|
|
|
response.setCharacterEncoding("utf-8"); |
|
|
|
|
|
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
|
|
|
|
|
|
String fileName = URLEncoder.encode("提货点配货单", "UTF-8").replaceAll("\\+", "%20"); |
|
|
|
|
|
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); |
|
|
|
|
|
List<ReserveAllExcel> list = vegeCellarReserveOrderService.listForExcelAll(pq); |
|
|
|
|
|
EasyExcel.write(response.getOutputStream(), ReserveAllExcel.class).sheet("总配货明细").doWrite(list); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|