package com.steerinfo.dil.controller; import com.steerinfo.dil.service.impl.StatisticalReportImpl; import com.steerinfo.dil.util.BaseRESTfulController; import com.steerinfo.dil.util.ColumnDataUtil; import com.steerinfo.dil.util.DataChange; import com.steerinfo.dil.util.PageListAdd; import com.steerinfo.framework.controller.RESTfulResult; import com.steerinfo.framework.service.pagehelper.PageHelper; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.*; /** * @ author :TXF * @ time :2021/12/14 18:05 */ @RestController @RequestMapping("/${api.version}/statisticalReport") public class StatisticalReportController extends BaseRESTfulController { @Autowired StatisticalReportImpl statisticalReportService; @Autowired ColumnDataUtil columnDataUtil; private final SimpleDateFormat sdfDate = new SimpleDateFormat("yyyy-MM-dd"); private final SimpleDateFormat sdfDateTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); @ApiOperation(value="查询辅料燃料统计报表") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId(220)", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"), }) @PostMapping("/getRLFLReport") public RESTfulResult getRLFLReport(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, String startTime, String endTime, Integer orderType ){ mapValue.put("orderTypee", orderType); DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据 PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getRLFLReport(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,report); return success(pageList); } @ApiOperation(value="查询销售统计报表") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId(423)", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"), }) @PostMapping("/getAllSaleReport") public RESTfulResult getAllSaleReport(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, String startTime, String endTime, String carrierSsoId ){ if(carrierSsoId != null){ if(!"null".equals(carrierSsoId)){ mapValue.put("carrierSsoId", carrierSsoId); } } DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据 List> allReport = statisticalReportService.getAllSaleReportNum(mapValue); PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getAllSaleReport(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData2(apiId, allReport, report); return success(pageList); } @ApiOperation(value="查询销售统计报表筛选过后的总净重") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId(423)", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"), }) @PostMapping("/getAllSaleReportTotal") public RESTfulResult getAllSaleReportTotal(@RequestBody(required=false) Map mapValue, String startTime, String endTime, String carrierSsoId ){ if(carrierSsoId != null){ if(!"null".equals(carrierSsoId)){ mapValue.put("carrierSsoId", carrierSsoId); } } DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据 List> allReport = statisticalReportService.getAllSaleReportNum(mapValue); //获取销售统计报表筛选过后的总净重 BigDecimal AllResultNetWeight = new BigDecimal(0); for (Map stringObjectMap : allReport) { if(stringObjectMap.get("resultNetWeight")!=null) { AllResultNetWeight = AllResultNetWeight.add(new BigDecimal(stringObjectMap.get("resultNetWeight").toString())); } } return success(AllResultNetWeight); } @ApiOperation(value="查询零星物资进厂统计报表") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId(424)", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"), }) @PostMapping("/getSporadicSuppliesReport1") public RESTfulResult getSporadicSuppliesReport1(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, String startTime, String endTime, String carrierSsoId, String userId, String userIds, String con, Integer orderType ){ if(carrierSsoId != null) { if (!"null".equals(carrierSsoId)) { mapValue.put("carrierSsoId", carrierSsoId); } } DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据 if (userId!=null){ mapValue.put("userId",userId); } if (orderType!=null){ mapValue.put("orderType",orderType); } if (userIds!=null){ mapValue.put("userIds",userIds); } if (con!=null&&!con.equals("undefined")){ mapValue.put("con","%"+con+"%"); } List> allReport = statisticalReportService.getSporadicSuppliesReportNum1(mapValue); PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getSporadicSuppliesReport1(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allReport, report); return success(pageList); } @ApiOperation(value="查询零星物资出厂统计报表") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId(425)", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"), }) @PostMapping("/getSporadicSuppliesReport2") public RESTfulResult getSporadicSuppliesReport2(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, String startTime, String endTime, String carrierSsoId, String userId, String userIds, String con, Integer orderType ){ if(carrierSsoId != null){ if(!"null".equals(carrierSsoId)){ mapValue.put("carrierSsoId", carrierSsoId); } } DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据 if (con!=null&&!con.equals("undefined")){ mapValue.put("con","%"+con+"%"); } if (userId!=null){ mapValue.put("userId",userId); } if (orderType!=null){ mapValue.put("orderType",orderType); } if (userIds!=null){ mapValue.put("userIds",userIds); } List> allReport = statisticalReportService.getSporadicSuppliesReportNum2(mapValue); PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getSporadicSuppliesReport2(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allReport, report); return success(pageList); } @ApiOperation(value="查询采购内转统计报表") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"), }) @PostMapping("/getPurInwardReport") public RESTfulResult getPurInwardReport(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, String startTime, String endTime ){ DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据 PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getPurInwardReport(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, report); return success(pageList); } @ApiOperation(value="查询零星内转统计报表") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"), }) @PostMapping("/getLXInwardReport") public RESTfulResult getLXInwardReport(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, String startTime, String endTime ){ DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据 PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getLXInwardReport(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, report); return success(pageList); } @ApiOperation(value="查询内转统计报表") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"), @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"), @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"), }) @PostMapping("/getInwardReport") public RESTfulResult getInwardReport(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, String startTime, String endTime ){ DataChange.queryDataByDateTime(startTime, endTime, mapValue,sdfDateTime);//根据时间段查询数据 PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getInwardReport(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, report); return success(pageList); } @ApiOperation("对内转车辆装货点进行统计") @PostMapping("/getLoading") public RESTfulResult getLoading(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, String startTime, String endTime){ DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据 PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getLoading(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, report); return success(pageList); } @ApiOperation("装载机所装车辆重量统计报表") @PostMapping("/getLoaderResult") public RESTfulResult getLoaderResult(@RequestBody(required=false) Map mapValue, Integer apiId,//apiId:463 Integer pageNum, Integer pageSize, String startTime, String endTime){ DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据 PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getLoaderResult(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, report); return success(pageList); } @ApiOperation("对内转车辆装卸货点进行统计") @PostMapping("/getUnLoading") public RESTfulResult getUnLoading(@RequestBody(required=false) Map mapValue, Integer apiId, Integer pageNum, Integer pageSize, String startTime, String endTime){ DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDate);//根据时间段查询数据 PageHelper.startPage(pageNum, pageSize); //分页数据 List> report = statisticalReportService.getUnLoading(mapValue); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, report); return success(pageList); } //保卫部随机抽查车牌号查看所有信息 @ApiOperation("保卫部随机抽查车牌号查看所有信息") @PostMapping("/getCapacityByDefend") public RESTfulResult getCapacityByDefend(@RequestBody(required = false) Map map, Integer apiId, Integer pageNum, Integer pageSize, String con){ map.put("con",con); PageHelper.startPage(pageNum, pageSize); List> report = statisticalReportService.getCapacityByDefend(map); PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, report); return success(pageList); } }