AmsDispatchSaleOrderServiceImpl.java 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. package com.steerinfo.dil.service.impl;
  2. import com.steerinfo.dil.mapper.AmsDispatchSaleOrderMapper;
  3. import com.steerinfo.dil.model.AmsDispatchSaleOrder;
  4. import com.steerinfo.dil.service.IAmsDispatchSaleOrderService;
  5. import com.steerinfo.dil.util.MapRemoveUtil;
  6. import com.steerinfo.framework.mapper.IBaseMapper;
  7. import com.steerinfo.framework.service.impl.BaseServiceImpl;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Service;
  10. import java.math.BigDecimal;
  11. import java.util.*;
  12. /**
  13. * AmsDispatchSaleOrder服务实现:
  14. * @author generator
  15. * @version 1.0-SNAPSHORT 2021-09-10 03:59
  16. * 类描述
  17. * 修订历史:
  18. * 日期:2021-09-10
  19. * 作者:generator
  20. * 参考:
  21. * 描述:AmsDispatchSaleOrder服务实现
  22. * @see null
  23. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  24. */
  25. @Service(value = "amsDispatchSaleOrderService")
  26. public class AmsDispatchSaleOrderServiceImpl extends BaseServiceImpl<AmsDispatchSaleOrder, BigDecimal> implements IAmsDispatchSaleOrderService {
  27. @Autowired
  28. private AmsDispatchSaleOrderMapper amsDispatchSaleOrderMapper;
  29. @Override
  30. protected IBaseMapper<AmsDispatchSaleOrder, BigDecimal> getMapper() {
  31. return amsDispatchSaleOrderMapper;
  32. }
  33. public List<Map<String, Object>> getOpenDispatchSaleOrder(Map<String, Object> mapValue) {
  34. return amsDispatchSaleOrderMapper.getOpenDispatchSaleOrder(mapValue);
  35. }
  36. /**
  37. * 查询最大id
  38. * @return
  39. */
  40. @Override
  41. public BigDecimal selectMaxId() {
  42. return amsDispatchSaleOrderMapper.selectOtherId();
  43. }
  44. public int insert(AmsDispatchSaleOrder ad) {
  45. ad.setDispatchTime(new Date());
  46. ad.setInsertTime(new Date());
  47. ad.setInsertUsername("admin");
  48. return amsDispatchSaleOrderMapper.insertSelective(ad);
  49. }
  50. /**
  51. * 查询app端公开抢单
  52. * @return
  53. */
  54. @Override
  55. public List<Map<String, Object>> getDispatchSaleOrderList() {
  56. List<Map<String, Object>> dispatchSaleOrderList = amsDispatchSaleOrderMapper.getDispatchSaleOrderList();
  57. for (Map<String,Object> map: dispatchSaleOrderList) {
  58. Date dispatchDealTime = (Date) map.get("dispatchDealTime");
  59. BigDecimal dispatchId = (BigDecimal) map.get("dispatchId");
  60. String isDeal;
  61. if (dispatchDealTime == null) {
  62. isDeal = "已成交";
  63. }
  64. else {
  65. isDeal = "未成交";
  66. }
  67. map.put("isDeal",isDeal);
  68. // 先把map中的key-value放到新的saleMap里面
  69. Map<String,Object> saleMap = new HashMap<>();
  70. saleMap.putAll(map);
  71. // 使用Map清空工具迭代删除map中的所有key-value
  72. MapRemoveUtil.removeMap(map);
  73. List<Map<String, Object>> materialMessages = amsDispatchSaleOrderMapper.getMaterialMessages(dispatchId);
  74. // 将已经清空的map里面put进一个map和一个list<Map>
  75. map.put("materialMessages",materialMessages);
  76. map.put("saleMap",saleMap);
  77. }
  78. return dispatchSaleOrderList;
  79. }
  80. /**
  81. * 抢单/接收订单
  82. * @param dispatchId
  83. * @param carrierId
  84. * @return
  85. */
  86. @Override
  87. public int lockDispatchSaleOrder(BigDecimal dispatchId, BigDecimal carrierId) {
  88. AmsDispatchSaleOrder amsDispatchSaleOrder = amsDispatchSaleOrderMapper.selectByPrimaryKey(dispatchId);
  89. amsDispatchSaleOrder.setDispatchDealTime(new Date());
  90. amsDispatchSaleOrder.setCarrierId(carrierId);
  91. amsDispatchSaleOrder.setDispatchStatus(new BigDecimal(1));
  92. int result = amsDispatchSaleOrderMapper.updateByPrimaryKeySelective(amsDispatchSaleOrder);
  93. return result;
  94. }
  95. }