WmspOutboundScanResultServiceImpl.java 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package com.steerinfo.dil.service.impl;
  2. import com.steerinfo.dil.mapper.WmspOutboundScanResultMapper;
  3. import com.steerinfo.dil.model.WmspOutboundScanResult;
  4. import com.steerinfo.dil.service.IWmspOutboundScanResultService;
  5. import com.steerinfo.dil.vo.OutBoundMaterialDetailedInfo;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.stereotype.Service;
  8. import java.math.BigDecimal;
  9. import java.util.List;
  10. import java.util.Map;
  11. import java.util.stream.Collectors;
  12. /**
  13. * WmspOutboundScanResult服务实现:
  14. * @author generator
  15. * @version 1.0-SNAPSHORT 2021-09-26 02:27
  16. * 类描述
  17. * 修订历史:
  18. * 日期:2021-09-26
  19. * 作者:generator
  20. * 参考:
  21. * 描述:WmspOutboundScanResult服务实现
  22. * @see null
  23. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  24. */
  25. @Service
  26. public class WmspOutboundScanResultServiceImpl implements IWmspOutboundScanResultService {
  27. @Autowired
  28. private WmspOutboundScanResultMapper wmspOutboundScanResultMapper;
  29. @Autowired
  30. private RmsMaterialSteelServiceImpl rmsMaterialSteelService;
  31. @Override
  32. public int insertSelective(WmspOutboundScanResult wmspOutboundScanResult) {
  33. return wmspOutboundScanResultMapper.insertSelective(wmspOutboundScanResult);
  34. }
  35. @Override
  36. public List<Map<String, Object>> getResultMaterial(Integer resultId) {
  37. return wmspOutboundScanResultMapper.getResultMaterial(resultId);
  38. }
  39. @Override
  40. public List<Map<String, Object>> getRmsMaterial(String materialOnlyCode) {
  41. return wmspOutboundScanResultMapper.getRmsMaterial(materialOnlyCode);
  42. }
  43. @Override
  44. public List<OutBoundMaterialDetailedInfo> getOutBoundMaterialDetailedInfos(List<String> onlyCodes) {
  45. return wmspOutboundScanResultMapper.getOutBoundMaterialDetailedInfos(onlyCodes);
  46. }
  47. @Override
  48. public List<String> getOutBoundScanResultOnlyCodes(BigDecimal resultId) {
  49. //通过出库单实绩查询已经扫码结果
  50. List<String> resultStrs= wmspOutboundScanResultMapper.getResultStrs(resultId);
  51. //通过扫码结果获得,唯一编码
  52. List<String> onlyCodes = resultStrs.stream().map(resultStr -> {
  53. return resultStr.split("-")[7];
  54. }).collect(Collectors.toList());
  55. return onlyCodes;
  56. }
  57. /**
  58. * 查询出onlyCode数据类型的数据
  59. * @param onlyCode
  60. * @param resultId
  61. * @return
  62. */
  63. @Override
  64. public int getScanCount(String onlyCode, BigDecimal resultId) {
  65. List<String> onlyCodes=getOutBoundScanResultOnlyCodes(resultId);
  66. Integer scanCount= rmsMaterialSteelService.getScanCount(onlyCode,onlyCodes);
  67. return scanCount;
  68. }
  69. }