Commit 81133afa by lijingjing

相关大屏统计查询;

parent 7ab18466
...@@ -53,27 +53,27 @@ public class NoticeAnnouncementController extends ServiceController { ...@@ -53,27 +53,27 @@ public class NoticeAnnouncementController extends ServiceController {
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class), @ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
}) })
@PutMapping("/{id}") @PutMapping("/{id}")
public RestResult<Boolean> edit(@PathVariable("id") Long id, NoticeAnnouncement noticeAnnouncement) { public RestResult<Boolean> edit(@PathVariable("id") Long id, NoticeAnnouncement noticeAnnouncement) {
noticeAnnouncement.setId(id); noticeAnnouncement.setId(id);
noticeAnnouncement.setUpdater(getAccount().getUserName()); noticeAnnouncement.setUpdater(getAccount().getUserName());
return success(noticeAnnouncementService.updateAndRecord(noticeAnnouncement)); return success(noticeAnnouncementService.updateAndRecord(noticeAnnouncement));
} }
@ApiOperation("添加") @ApiOperation("添加")
@PostMapping("/") @PostMapping("/")
public RestResult<Boolean> add(NoticeAnnouncement noticeAnnouncement) { public RestResult<Boolean> add(NoticeAnnouncement noticeAnnouncement) {
noticeAnnouncement.setCreator(getAccount().getUserName()); noticeAnnouncement.setCreator(getAccount().getUserName());
return success(noticeAnnouncementService.save(noticeAnnouncement)); return success(noticeAnnouncementService.save(noticeAnnouncement));
} }
@ApiOperation("根据 ids 删除") @ApiOperation("根据 ids 删除")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "ids", value = "主键列表", required = true, paramType = "query", allowMultiple = true, dataTypeClass = Long.class), @ApiImplicitParam(name = "ids", value = "主键列表", required = true, paramType = "query", allowMultiple = true, dataTypeClass = Long.class),
}) })
@DeleteMapping("/") @DeleteMapping("/")
public RestResult<Boolean> delete(@RequestParam("ids") List<Long> ids) { public RestResult<Boolean> delete(@RequestParam("ids") List<Long> ids) {
return success(noticeAnnouncementService.removeByIds(ids)); return success(noticeAnnouncementService.removeByIds(ids));
} }
@ApiOperation("显示最近修改的通知") @ApiOperation("显示最近修改的通知")
@ApiImplicitParams({ @ApiImplicitParams({
...@@ -81,9 +81,15 @@ public class NoticeAnnouncementController extends ServiceController { ...@@ -81,9 +81,15 @@ public class NoticeAnnouncementController extends ServiceController {
}) })
@PostMapping("/recent/") @PostMapping("/recent/")
public RestResult<List<NoticeAnnouncement>> recent( public RestResult<List<NoticeAnnouncement>> recent(
@RequestParam(value = "count",required = false) Integer count) { @RequestParam(value = "count", required = false) Integer count) {
if (count == null) if (count == null)
count = 3; count = 3;
return success(noticeAnnouncementService.recent(count)); return success(noticeAnnouncementService.recent(count));
} }
@ApiOperation("显示最新 N 条通知公告")
@PostMapping("/latest")
public RestResult<List<NoticeAnnouncement>> latestNotices(Integer limit) {
return success(noticeAnnouncementService.latestNotices(limit));
}
} }
package com.patzn.cloud.service.lims.hmhj.controller; package com.patzn.cloud.service.lims.hmhj.controller;
import com.baomidou.kisso.annotation.Action;
import com.baomidou.kisso.annotation.Login;
import com.patzn.cloud.commons.api.RestResult; import com.patzn.cloud.commons.api.RestResult;
import com.patzn.cloud.commons.controller.ServiceController; import com.patzn.cloud.commons.controller.ServiceController;
import com.patzn.cloud.commons.toolkit.DateUtils;
import com.patzn.cloud.service.hmhj.dto.LedgerQueryDTO; import com.patzn.cloud.service.hmhj.dto.LedgerQueryDTO;
import com.patzn.cloud.service.hmhj.dto.QueryDTO; import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.RangeStatsQueryDTO; import com.patzn.cloud.service.hmhj.dto.RangeStatsQueryDTO;
...@@ -14,6 +17,7 @@ import org.springframework.web.bind.annotation.PostMapping; ...@@ -14,6 +17,7 @@ import org.springframework.web.bind.annotation.PostMapping;
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 java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -32,17 +36,40 @@ public class StatisticsController extends ServiceController { ...@@ -32,17 +36,40 @@ public class StatisticsController extends ServiceController {
} }
@ApiOperation("阳极检查量统计") @ApiOperation("阳极检查量统计")
@Login(action = Action.Skip)
@PostMapping("/anode_inspection_quantity") @PostMapping("/anode_inspection_quantity")
public RestResult<List<Statistics>> getAnodeInspectionQuantity(QueryDTO queryDTO) { public RestResult<Integer> getAnodeInspectionQuantity(QueryDTO queryDTO) {
return success(statsService.getAnodeInspectionQuantity(queryDTO)); return success(statsService.getAnodeInspectionQuantity(queryDTO));
} }
@ApiOperation("获取阳极检查量合格率")
@Login(action = Action.Skip)
@PostMapping("/anode_inspection_done_quantity")
public RestResult<Statistics> getAnodeInspectionDoneQuantity(QueryDTO queryDTO) {
return success(statsService.getAnodeInspectionDoneQuantity(queryDTO));
}
@ApiOperation("报告发放量统计") @ApiOperation("报告发放量统计")
@PostMapping("/report_send_quantity") @PostMapping("/report_send_quantity")
@Login(action = Action.Skip)
public RestResult<Map<String, Object>> getReportSendQuantity(RangeStatsQueryDTO queryDTO) { public RestResult<Map<String, Object>> getReportSendQuantity(RangeStatsQueryDTO queryDTO) {
return success(statsService.getReportSendQuantity(queryDTO)); return success(statsService.getReportSendQuantity(queryDTO));
} }
@ApiOperation("获取报告发放量数据统计")
@Login(action = Action.Skip)
@PostMapping("/month_report_send_quantity")
public RestResult<Map<String, Object>> getMonthReportSendQuantity(RangeStatsQueryDTO queryDTO) {
return success(statsService.getMonthReportSendQuantity(queryDTO));
}
@ApiOperation("获取报告发放量同比环比数据")
@Login(action = Action.Skip)
@PostMapping("/sames_chain_report_send_quantity")
public RestResult<Statistics> getSamesChainReportSendQuantity(RangeStatsQueryDTO queryDTO) {
return success(statsService.getSamesChainReportSendQuantity(queryDTO));
}
@ApiOperation("检测项目数量统计") @ApiOperation("检测项目数量统计")
@PostMapping("/item_quantity") @PostMapping("/item_quantity")
...@@ -52,11 +79,47 @@ public class StatisticsController extends ServiceController { ...@@ -52,11 +79,47 @@ public class StatisticsController extends ServiceController {
@ApiOperation("取样量统计") @ApiOperation("取样量统计")
@PostMapping("/sampling_quantity") @PostMapping("/sampling_quantity")
@Login(action = Action.Skip)
public RestResult<List<Statistics>> getSamplingQuantity(RangeStatsQueryDTO queryDTO) { public RestResult<List<Statistics>> getSamplingQuantity(RangeStatsQueryDTO queryDTO) {
return success(statsService.getSamplingQuantity(queryDTO)); return success(statsService.getSamplingQuantity(queryDTO));
} }
@ApiOperation("外检完成量统计") @ApiOperation("获取取样量统计数据")
@PostMapping("/total_sampling_quantity")
@Login(action = Action.Skip)
public RestResult<Integer> getTotalSamplingQuantity(QueryDTO queryDTO) {
return success(statsService.getTotalSamplingQuantity(queryDTO));
}
@ApiOperation("获取铝成品检查数量")
@PostMapping("/al_pro_inspection_quantity")
@Login(action = Action.Skip)
public RestResult<Integer> getAlProductInspectionQuantity(QueryDTO queryDTO) {
return success(statsService.getAlProductInspectionQuantity(queryDTO));
}
@ApiOperation("获取铝成品检查量合格率数据")
@PostMapping("/al_pro_inspection_quantity_rate")
@Login(action = Action.Skip)
public RestResult<Statistics> getAlProductInspectionQuantityRate(QueryDTO queryDTO) {
return success(statsService.getAlProductInspectionQuantityRate(queryDTO));
}
@ApiOperation("获取验收工作量同比环比数据")
@Login(action = Action.Skip)
@PostMapping("/accept_sames_chain_quantity")
public RestResult<Statistics> getAcceptSamesChainQuantity(RangeStatsQueryDTO queryDTO) {
return success(statsService.getAcceptSamesChainQuantity(queryDTO));
}
@ApiOperation("获取项目委托量同比环比数据")
@Login(action = Action.Skip)
@PostMapping("/item_sames_chain_quantity")
public RestResult<Statistics> getItemSamesChainQuantity(RangeStatsQueryDTO queryDTO) {
return success(statsService.getItemSamesChainQuantity(queryDTO));
}
@ApiOperation("获取外检完成量数据")
@PostMapping("/out_test_finish_quantity") @PostMapping("/out_test_finish_quantity")
public RestResult<Statistics> getOutTestFinishQuantity(QueryDTO queryDTO) { public RestResult<Statistics> getOutTestFinishQuantity(QueryDTO queryDTO) {
return success(statsService.getOutTestFinishQuantity(queryDTO)); return success(statsService.getOutTestFinishQuantity(queryDTO));
...@@ -80,6 +143,20 @@ public class StatisticsController extends ServiceController { ...@@ -80,6 +143,20 @@ public class StatisticsController extends ServiceController {
return success(statsService.getCurWeekAcceptanceQualified(queryDTO)); return success(statsService.getCurWeekAcceptanceQualified(queryDTO));
} }
@ApiOperation("上周验收合格情况")
@Login(action = Action.Skip)
@PostMapping("/prev_week_acceptance_qualified")
public RestResult<List<Statistics>> getPrevWeekAcceptanceQualified(QueryDTO queryDTO) {
return success(statsService.getPrevWeekAcceptanceQualified(queryDTO));
}
@ApiOperation("获取某个时间段验收合格情况")
@Login(action = Action.Skip)
@PostMapping("/frame_acceptance_qualified")
public RestResult<Statistics> getFrameAcceptanceQualified(QueryDTO queryDTO) {
return success(statsService.getAcceptanceQualifiedByTimeFrame(queryDTO));
}
@ApiOperation("本周自产炭块质量统计") @ApiOperation("本周自产炭块质量统计")
@PostMapping("/cur_week_carbon_blocks") @PostMapping("/cur_week_carbon_blocks")
public RestResult<List<Statistics>> getCurWeekCarbonBlocks(QueryDTO queryDTO) { public RestResult<List<Statistics>> getCurWeekCarbonBlocks(QueryDTO queryDTO) {
...@@ -92,6 +169,14 @@ public class StatisticsController extends ServiceController { ...@@ -92,6 +169,14 @@ public class StatisticsController extends ServiceController {
return success(statsService.getAlBrandsRate(queryDTO)); return success(statsService.getAlBrandsRate(queryDTO));
} }
@ApiOperation("昨日原铝质量统计")
@Login(action = Action.Skip)
@PostMapping("/prev_al_brands_rate")
public RestResult<List<Statistics>> getPrevAlBrandsRate(QueryDTO queryDTO) {
queryDTO.setQueryDate(DateUtils.dateAddDays(new Date(), -1));
return success(statsService.getPrevAlBrandsRate(queryDTO));
}
@ApiOperation("原铝品味台账") @ApiOperation("原铝品味台账")
@PostMapping("/al_grade_ledger") @PostMapping("/al_grade_ledger")
public RestResult<List<Map>> getAlGradeLedger(LedgerQueryDTO ledgerQueryDTO) { public RestResult<List<Map>> getAlGradeLedger(LedgerQueryDTO ledgerQueryDTO) {
...@@ -129,4 +214,10 @@ public class StatisticsController extends ServiceController { ...@@ -129,4 +214,10 @@ public class StatisticsController extends ServiceController {
return success(statsService.getSummaryLedgerStats(ledgerQueryDTO)); return success(statsService.getSummaryLedgerStats(ledgerQueryDTO));
} }
@ApiOperation("获取检测项目委托量统计数据")
@Login(action = Action.Skip)
@PostMapping("/test_item_quantity_stats")
public RestResult<Statistics> getTestItemQuantityStats(QueryDTO queryDTO) {
return success(statsService.getTestItemQuantityStats(queryDTO));
}
} }
...@@ -16,6 +16,19 @@ import java.util.List; ...@@ -16,6 +16,19 @@ import java.util.List;
*/ */
public interface NoticeAnnouncementMapper extends BatchMapper<NoticeAnnouncement> { public interface NoticeAnnouncementMapper extends BatchMapper<NoticeAnnouncement> {
/* 最近的count条数据 */ /**
* 最近的count条数据 .
*
* @param count the count
* @return the list
*/
List<NoticeAnnouncement> recent(@Param("count") Integer count); List<NoticeAnnouncement> recent(@Param("count") Integer count);
/**
* Select last notices list.
*
* @param limit the limit
* @return the list
*/
List<NoticeAnnouncement> selectLatestNotices(@Param("limit") Integer limit);
} }
...@@ -13,26 +13,52 @@ import java.util.List; ...@@ -13,26 +13,52 @@ import java.util.List;
public interface StatisticsMapper extends BatchMapper<Statistics> { public interface StatisticsMapper extends BatchMapper<Statistics> {
@SqlParser(filter = true)
List<Statistics> selectAlBrandsRateStats(@Param("vo") QueryDTO dto); List<Statistics> selectAlBrandsRateStats(@Param("vo") QueryDTO dto);
@SqlParser(filter = true)
Integer selectAlBrandLowFeStats(@Param("vo") QueryDTO dto);
@SqlParser(filter = true)
Statistics selectOutTestFinishQuantity(@Param("vo") QueryDTO queryDTO); Statistics selectOutTestFinishQuantity(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
List<Statistics> selectCurWeekCarbonBlocks(@Param("vo") QueryDTO queryDTO); List<Statistics> selectCurWeekCarbonBlocks(@Param("vo") QueryDTO queryDTO);
List<Statistics> selectCurWeekAcceptanceQualified(@Param("vo") QueryDTO queryDTO); @SqlParser(filter = true)
List<Statistics> selectAcceptanceQualifiedByDate (@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
Statistics selectAcceptanceQualifiedByTimeFrame(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
Statistics selectWorkloadQuantity(@Param("vo") RangeStatsQueryDTO workloadStatsQueryDTO); Statistics selectWorkloadQuantity(@Param("vo") RangeStatsQueryDTO workloadStatsQueryDTO);
@SqlParser(filter = true)
List<Statistics> selectOutTestItemQuantity(@Param("vo") QueryDTO queryDTO); List<Statistics> selectOutTestItemQuantity(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
List<Statistics> selectSamplingQuantity(@Param("vo") RangeStatsQueryDTO queryDTO); List<Statistics> selectSamplingQuantity(@Param("vo") RangeStatsQueryDTO queryDTO);
@SqlParser(filter = true)
Integer selectTotalSamplingQuantity(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
Integer selectAlProductInspectionQuantity(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
List<Statistics> selectItemQuantity(@Param("vo") QueryDTO queryDTO); List<Statistics> selectItemQuantity(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
List<Statistics> selectReportSendQuantityMonth(@Param("vo") RangeStatsQueryDTO queryDTO); List<Statistics> selectReportSendQuantityMonth(@Param("vo") RangeStatsQueryDTO queryDTO);
Statistics selectReportSendQuantity(@Param("vo") RangeStatsQueryDTO queryDTO); @SqlParser(filter = true)
Statistics selectReportSendQuantitySamesChain(@Param("vo") RangeStatsQueryDTO queryDTO);
@SqlParser(filter = true)
Integer selectReportSendQuantityTotal(@Param("vo") RangeStatsQueryDTO queryDTO);
@SqlParser(filter = true)
List<Statistics> selectEntrustedQuantity(QueryDTO queryDTO); List<Statistics> selectEntrustedQuantity(QueryDTO queryDTO);
@SqlParser(filter = true) @SqlParser(filter = true)
...@@ -50,4 +76,21 @@ public interface StatisticsMapper extends BatchMapper<Statistics> { ...@@ -50,4 +76,21 @@ public interface StatisticsMapper extends BatchMapper<Statistics> {
@SqlParser(filter = true) @SqlParser(filter = true)
List<DailyStatsLedgerVO> selectAlImpurityLedgerStats(@Param("vo") LedgerQueryDTO ledgerQueryDTO); List<DailyStatsLedgerVO> selectAlImpurityLedgerStats(@Param("vo") LedgerQueryDTO ledgerQueryDTO);
@SqlParser(filter = true)
Statistics selectTestItemQuantityStats(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
Statistics selectAcceptSamesChainQuantity(@Param("vo") RangeStatsQueryDTO queryDTO);
@SqlParser(filter = true)
Statistics selectItemSamesChainQuantity(@Param("vo") RangeStatsQueryDTO queryDTO);
@SqlParser(filter = true)
Integer selectAnodeInspectionQuantity(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
Statistics selectAnodeInspectionDoneQuantity(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
Statistics selectAlProductInspectionQuantityRate(@Param("vo") QueryDTO queryDTO);
} }
...@@ -21,4 +21,6 @@ public interface INoticeAnnouncementService extends IBaseService<NoticeAnnouncem ...@@ -21,4 +21,6 @@ public interface INoticeAnnouncementService extends IBaseService<NoticeAnnouncem
boolean updateAndRecord(NoticeAnnouncement noticeAnnouncement); boolean updateAndRecord(NoticeAnnouncement noticeAnnouncement);
List<NoticeAnnouncement> recent(Integer count); List<NoticeAnnouncement> recent(Integer count);
List<NoticeAnnouncement> latestNotices(Integer limit);
} }
...@@ -15,16 +15,26 @@ public interface IStatisticsService extends IBaseService<Statistics> { ...@@ -15,16 +15,26 @@ public interface IStatisticsService extends IBaseService<Statistics> {
*/ */
List<Statistics> getAlBrandsRate(QueryDTO queryDTO); List<Statistics> getAlBrandsRate(QueryDTO queryDTO);
List<Statistics> getPrevAlBrandsRate(QueryDTO queryDTO);
List<Statistics> getEntrustedQuantity(QueryDTO queryDTO); List<Statistics> getEntrustedQuantity(QueryDTO queryDTO);
List<Statistics> getAnodeInspectionQuantity(QueryDTO queryDTO); Integer getAnodeInspectionQuantity(QueryDTO queryDTO);
Statistics getAnodeInspectionDoneQuantity(QueryDTO queryDTO);
Map<String, Object> getReportSendQuantity(RangeStatsQueryDTO queryDTO); Map<String, Object> getReportSendQuantity(RangeStatsQueryDTO queryDTO);
Map<String, Object> getMonthReportSendQuantity(RangeStatsQueryDTO queryDTO);
Statistics getSamesChainReportSendQuantity(RangeStatsQueryDTO queryDTO);
List<Statistics> getItemQuantity(QueryDTO queryDTO); List<Statistics> getItemQuantity(QueryDTO queryDTO);
List<Statistics> getSamplingQuantity(RangeStatsQueryDTO queryDTO); List<Statistics> getSamplingQuantity(RangeStatsQueryDTO queryDTO);
Statistics getItemSamesChainQuantity(RangeStatsQueryDTO queryDTO);
Statistics getOutTestFinishQuantity(QueryDTO queryDTO); Statistics getOutTestFinishQuantity(QueryDTO queryDTO);
List<Statistics> getOutTestItemQuantity(QueryDTO queryDTO); List<Statistics> getOutTestItemQuantity(QueryDTO queryDTO);
...@@ -33,6 +43,10 @@ public interface IStatisticsService extends IBaseService<Statistics> { ...@@ -33,6 +43,10 @@ public interface IStatisticsService extends IBaseService<Statistics> {
List<Statistics> getCurWeekAcceptanceQualified(QueryDTO queryDTO); List<Statistics> getCurWeekAcceptanceQualified(QueryDTO queryDTO);
List<Statistics> getPrevWeekAcceptanceQualified(QueryDTO queryDTO);
Statistics getAcceptanceQualifiedByTimeFrame(QueryDTO queryDTO);
List<Statistics> getCurWeekCarbonBlocks(QueryDTO queryDTO); List<Statistics> getCurWeekCarbonBlocks(QueryDTO queryDTO);
List<Map> getAlGradeLedger(LedgerQueryDTO ledgerQueryDTO); List<Map> getAlGradeLedger(LedgerQueryDTO ledgerQueryDTO);
...@@ -47,4 +61,13 @@ public interface IStatisticsService extends IBaseService<Statistics> { ...@@ -47,4 +61,13 @@ public interface IStatisticsService extends IBaseService<Statistics> {
List<Map> getSummaryLedgerStats(LedgerQueryDTO ledgerQueryDTO); List<Map> getSummaryLedgerStats(LedgerQueryDTO ledgerQueryDTO);
Statistics getTestItemQuantityStats(QueryDTO queryDTO);
Statistics getAcceptSamesChainQuantity(RangeStatsQueryDTO queryDTO);
Integer getTotalSamplingQuantity(QueryDTO queryDTO);
Integer getAlProductInspectionQuantity(QueryDTO queryDTO);
Statistics getAlProductInspectionQuantityRate(QueryDTO queryDTO);
} }
...@@ -60,7 +60,6 @@ public class NoticeAnnouncementServiceImpl extends BaseServiceImpl<NoticeAnnounc ...@@ -60,7 +60,6 @@ public class NoticeAnnouncementServiceImpl extends BaseServiceImpl<NoticeAnnounc
} }
/** /**
*
* @param count 查询最近修改的几条数据 * @param count 查询最近修改的几条数据
* @return * @return
*/ */
...@@ -68,4 +67,10 @@ public class NoticeAnnouncementServiceImpl extends BaseServiceImpl<NoticeAnnounc ...@@ -68,4 +67,10 @@ public class NoticeAnnouncementServiceImpl extends BaseServiceImpl<NoticeAnnounc
public List<NoticeAnnouncement> recent(Integer count) { public List<NoticeAnnouncement> recent(Integer count) {
return baseMapper.recent(count); return baseMapper.recent(count);
} }
@Override
public List<NoticeAnnouncement> latestNotices(Integer limit) {
limit = null == limit ? 2 : limit;
return baseMapper.selectLatestNotices(limit);
}
} }
...@@ -3,6 +3,7 @@ package com.patzn.cloud.service.lims.hmhj.service.impl; ...@@ -3,6 +3,7 @@ package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.baomidou.mybatisplus.toolkit.CollectionUtils; import com.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.patzn.cloud.commons.api.RestAssert; import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl; import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.commons.toolkit.BigDecimalUtils;
import com.patzn.cloud.service.hmhj.dto.LedgerQueryDTO; import com.patzn.cloud.service.hmhj.dto.LedgerQueryDTO;
import com.patzn.cloud.service.hmhj.dto.QueryDTO; import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.RangeStatsQueryDTO; import com.patzn.cloud.service.hmhj.dto.RangeStatsQueryDTO;
...@@ -15,6 +16,7 @@ import org.apache.commons.lang.time.DateUtils; ...@@ -15,6 +16,7 @@ import org.apache.commons.lang.time.DateUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.*; import java.util.*;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -46,11 +48,7 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta ...@@ -46,11 +48,7 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta
private void handleQueryTimeRange(RangeStatsQueryDTO queryDTO) { private void handleQueryTimeRange(RangeStatsQueryDTO queryDTO) {
handleQueryTime(queryDTO); handleQueryTime(queryDTO);
queryDTO.setLastYearTimeS(DateUtils.addYears(queryDTO.getTimeS(), -1)); handleTimeRange(queryDTO);
queryDTO.setLastYearTimeE(DateUtils.addYears(queryDTO.getTimeE(), -1));
Integer days = DateKit.monthsBetweenTwoDates(queryDTO.getTimeS(), queryDTO.getTimeE());
queryDTO.setPrevTimeS(DateUtils.addDays(queryDTO.getTimeS(), -days));
queryDTO.setPrevTimeE(queryDTO.getTimeS());
} }
private List<Statistics> handleMonthData(QueryDTO queryDTO, List<Statistics> statistics) { private List<Statistics> handleMonthData(QueryDTO queryDTO, List<Statistics> statistics) {
...@@ -82,10 +80,37 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta ...@@ -82,10 +80,37 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta
@Override @Override
public List<Statistics> getAlBrandsRate(QueryDTO queryDTO) { public List<Statistics> getAlBrandsRate(QueryDTO queryDTO) {
if (null == queryDTO.getQueryDate()) {
queryDTO.setQueryDate(new Date());
}
return baseMapper.selectAlBrandsRateStats(queryDTO); return baseMapper.selectAlBrandsRateStats(queryDTO);
} }
@Override @Override
public List<Statistics> getPrevAlBrandsRate(QueryDTO queryDTO) {
List<Statistics> statistics = getAlBrandsRate(queryDTO);
if (CollectionUtils.isEmpty(statistics)) {
return statistics;
}
queryDTO.setType("Al99.70");
Integer total = statistics.get(0).getTotal();
Integer num = baseMapper.selectAlBrandLowFeStats(queryDTO);
num = null == num ? 0 : num;
Statistics lowFe = new Statistics();
lowFe.setBrand(queryDTO.getType() + "低铁");
lowFe.setTotal(total);
lowFe.setBrandNum(num);
if (null == total || 0 == total) {
lowFe.setRatio(0.0000);
} else {
double def = 1.0000;
lowFe.setRatio(BigDecimalUtils.div(new BigDecimal(def * num), new BigDecimal(def * total), 4).doubleValue());
}
statistics.add(lowFe);
return statistics;
}
@Override
public List<Statistics> getEntrustedQuantity(QueryDTO queryDTO) { public List<Statistics> getEntrustedQuantity(QueryDTO queryDTO) {
handleQueryTime(queryDTO); handleQueryTime(queryDTO);
List<String> sampleNameList = Arrays.asList("电解质", "硅铁", "磷铁", "锰铁", "水", "纯铝", "铝合金", "石灰石"); List<String> sampleNameList = Arrays.asList("电解质", "硅铁", "磷铁", "锰铁", "水", "纯铝", "铝合金", "石灰石");
...@@ -113,8 +138,13 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta ...@@ -113,8 +138,13 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta
} }
@Override @Override
public List<Statistics> getAnodeInspectionQuantity(QueryDTO queryDTO) { public Integer getAnodeInspectionQuantity(QueryDTO queryDTO) {
return null; return baseMapper.selectAnodeInspectionQuantity(queryDTO);
}
@Override
public Statistics getAnodeInspectionDoneQuantity(QueryDTO queryDTO){
return baseMapper.selectAnodeInspectionDoneQuantity(queryDTO);
} }
@Override @Override
...@@ -124,12 +154,29 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta ...@@ -124,12 +154,29 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta
List<Statistics> monthList = baseMapper.selectReportSendQuantityMonth(queryDTO); List<Statistics> monthList = baseMapper.selectReportSendQuantityMonth(queryDTO);
monthList = handleMonthData(queryDTO, monthList); monthList = handleMonthData(queryDTO, monthList);
result.put("monthList", monthList); result.put("monthList", monthList);
Statistics statistics = baseMapper.selectReportSendQuantity(queryDTO); Statistics statistics = baseMapper.selectReportSendQuantitySamesChain(queryDTO);
result.put("statsData", statistics); result.put("statsData", statistics);
return result; return result;
} }
@Override @Override
public Map<String, Object> getMonthReportSendQuantity(RangeStatsQueryDTO queryDTO) {
handleQueryTimeRange(queryDTO);
Map<String, Object> result = new HashMap<>();
List<Statistics> monthList = baseMapper.selectReportSendQuantityMonth(queryDTO);
monthList = handleMonthData(queryDTO, monthList);
result.put("total", baseMapper.selectReportSendQuantityTotal(queryDTO));
result.put("monthList", monthList);
return result;
}
@Override
public Statistics getSamesChainReportSendQuantity(RangeStatsQueryDTO queryDTO) {
handleSamesChainTimeRange(queryDTO);
return baseMapper.selectReportSendQuantitySamesChain(queryDTO);
}
@Override
public List<Statistics> getItemQuantity(QueryDTO queryDTO) { public List<Statistics> getItemQuantity(QueryDTO queryDTO) {
handleQueryTime(queryDTO); handleQueryTime(queryDTO);
return baseMapper.selectItemQuantity(queryDTO); return baseMapper.selectItemQuantity(queryDTO);
...@@ -142,6 +189,54 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta ...@@ -142,6 +189,54 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta
} }
@Override @Override
public Statistics getAcceptSamesChainQuantity(RangeStatsQueryDTO queryDTO) {
handleSamesChainTimeRange(queryDTO);
return baseMapper.selectAcceptSamesChainQuantity(queryDTO);
}
@Override
public Integer getTotalSamplingQuantity(QueryDTO queryDTO) {
return baseMapper.selectTotalSamplingQuantity(queryDTO);
}
@Override
public Integer getAlProductInspectionQuantity(QueryDTO queryDTO) {
return baseMapper.selectAlProductInspectionQuantity(queryDTO);
}
@Override
public Statistics getAlProductInspectionQuantityRate(QueryDTO queryDTO) {
return baseMapper.selectAlProductInspectionQuantityRate(queryDTO);
}
@Override
public Statistics getItemSamesChainQuantity(RangeStatsQueryDTO queryDTO) {
handleSamesChainTimeRange(queryDTO);
return baseMapper.selectItemSamesChainQuantity(queryDTO);
}
private void handleSamesChainTimeRange(RangeStatsQueryDTO queryDTO) {
RestAssert.fail(Objects.isNull(queryDTO.getQueryDate()), "查询日期不能为空!");
String queryDateStr = com.patzn.cloud.commons.toolkit.DateUtils.toYearMonthDay(queryDTO.getQueryDate());
queryDTO.setTimeS(com.patzn.cloud.commons.toolkit.DateUtils.getYearMonthStart(queryDateStr));
queryDTO.setTimeE(com.patzn.cloud.commons.toolkit.DateUtils.getYearMonthEnd(queryDateStr));
handleTimeRange(queryDTO);
}
/**
* 根据当前时间区域,处理其他时间区域
*
* @param queryDTO
*/
private void handleTimeRange(RangeStatsQueryDTO queryDTO) {
queryDTO.setLastYearTimeS(DateUtils.addYears(queryDTO.getTimeS(), -1));
queryDTO.setLastYearTimeE(DateUtils.addYears(queryDTO.getTimeE(), -1));
Integer days = DateKit.monthsBetweenTwoDates(queryDTO.getTimeS(), queryDTO.getTimeE());
queryDTO.setPrevTimeS(DateUtils.addDays(queryDTO.getTimeS(), -days));
queryDTO.setPrevTimeE(queryDTO.getTimeS());
}
@Override
public Statistics getOutTestFinishQuantity(QueryDTO queryDTO) { public Statistics getOutTestFinishQuantity(QueryDTO queryDTO) {
handleQueryTime(queryDTO); handleQueryTime(queryDTO);
return baseMapper.selectOutTestFinishQuantity(queryDTO); return baseMapper.selectOutTestFinishQuantity(queryDTO);
...@@ -163,7 +258,23 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta ...@@ -163,7 +258,23 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta
@Override @Override
public List<Statistics> getCurWeekAcceptanceQualified(QueryDTO queryDTO) { public List<Statistics> getCurWeekAcceptanceQualified(QueryDTO queryDTO) {
return baseMapper.selectCurWeekAcceptanceQualified(queryDTO); // 由于map.xml文件中是取上一周的数据
// 默认查询的话,查询本周的数据,需要天数+7
if (null == queryDTO.getQueryDate()) {
queryDTO.setQueryDate(DateUtils.addDays(new Date(), 7));
}
return baseMapper.selectAcceptanceQualifiedByDate(queryDTO);
}
@Override
public List<Statistics> getPrevWeekAcceptanceQualified(QueryDTO queryDTO) {
queryDTO.setQueryDate(new Date());
return baseMapper.selectAcceptanceQualifiedByDate(queryDTO);
}
@Override
public Statistics getAcceptanceQualifiedByTimeFrame(QueryDTO queryDTO) {
return baseMapper.selectAcceptanceQualifiedByTimeFrame(queryDTO);
} }
@Override @Override
...@@ -269,6 +380,11 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta ...@@ -269,6 +380,11 @@ public class StatisticsServiceImpl extends BaseServiceImpl<StatisticsMapper, Sta
return null; return null;
} }
@Override
public Statistics getTestItemQuantityStats(QueryDTO queryDTO) {
return baseMapper.selectTestItemQuantityStats(queryDTO);
}
private String getDataLabel(String label, List<String> names) { private String getDataLabel(String label, List<String> names) {
if (StringUtils.isBlank(label) || CollectionUtils.isEmpty(names) || null == names.get(0)) { if (StringUtils.isBlank(label) || CollectionUtils.isEmpty(names) || null == names.get(0)) {
return label; return label;
......
...@@ -8,4 +8,16 @@ ...@@ -8,4 +8,16 @@
ORDER BY ltime DESC ORDER BY ltime DESC
LIMIT #{count} LIMIT #{count}
</select> </select>
<!--查询最新发布的 N 条数据-->
<select id="selectLatestNotices" resultType="com.patzn.cloud.service.hmhj.entity.NoticeAnnouncement">
SELECT
na."content",
na.creator,
na.ctime
FROM
notice_announcement na
ORDER BY
na.ctime DESC
LIMIT #{limit}
</select>
</mapper> </mapper>
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 to comment