GoodsServiceImpl.java 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. package com.ruoyi.demo.service.impl;
  2. import cn.hutool.core.date.DateUtil;
  3. import com.baomidou.mybatisplus.core.conditions.Wrapper;
  4. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  5. import com.github.pagehelper.PageHelper;
  6. import com.github.pagehelper.PageInfo;
  7. import com.ruoyi.demo.entity.Goods;
  8. import com.ruoyi.demo.entity.bo.GoodsBo;
  9. import com.ruoyi.demo.entity.bo.GoodsDeleteBo;
  10. import com.ruoyi.demo.entity.bo.PlanBo;
  11. import com.ruoyi.demo.entity.vo.GoodsDetailVo;
  12. import com.ruoyi.demo.entity.vo.GoodsListVo;
  13. import com.ruoyi.demo.mapper.GoodsMapper;
  14. import com.ruoyi.demo.service.GoodsService;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.stereotype.Service;
  17. import org.springframework.transaction.annotation.Transactional;
  18. import java.time.LocalDateTime;
  19. import java.time.ZoneId;
  20. import java.util.ArrayList;
  21. import java.util.List;
  22. @Service
  23. @Transactional
  24. public class GoodsServiceImpl implements GoodsService {
  25. @Autowired
  26. GoodsMapper goodsMapper;
  27. @Override
  28. public int addGoods(Goods goods) {
  29. QueryWrapper<Goods> goodsQueryWrapper = new QueryWrapper<>();
  30. goodsQueryWrapper.eq("appkey",goods.getAppkey());
  31. goodsQueryWrapper.eq("goods_id",goods.getGoodsId());
  32. goodsQueryWrapper.eq("vendor_id",goods.getVendorId());
  33. goodsQueryWrapper.eq("deleted","0");
  34. Goods one = goodsMapper.selectOne(goodsQueryWrapper);
  35. if (one != null)
  36. return 2;
  37. goods.setCreateTime(DateUtil.date());
  38. return goodsMapper.insert(goods);
  39. }
  40. @Override
  41. public int deleteGoods(GoodsDeleteBo bo) {
  42. QueryWrapper<Goods> goodsQueryWrapper = new QueryWrapper<>();
  43. goodsQueryWrapper.eq("appkey",bo.getAppkey());
  44. goodsQueryWrapper.eq("goods_id",bo.getGoodsId());
  45. goodsQueryWrapper.eq("vendor_id",bo.getVendorId());
  46. return goodsMapper.delete(goodsQueryWrapper);
  47. }
  48. @Override
  49. public PageInfo<List<GoodsListVo>> getGoodsList(PlanBo bo) {
  50. PageHelper.startPage(bo.getPageNum(),bo.getPageSize(),true);
  51. QueryWrapper<Goods> queryWrapper = new QueryWrapper<>();
  52. if (bo.getText() != null)
  53. queryWrapper.and(goodsQueryWrapper -> {
  54. goodsQueryWrapper.like("goods_id",bo.getText())
  55. .or()
  56. .like("goods_name",bo.getText())
  57. .or()
  58. .like("vendor_id",bo.getText())
  59. .or()
  60. .like("vendor_name",bo.getText())
  61. .or()
  62. .like("goods_classify",bo.getText());
  63. });
  64. if (bo.getStartTime() != null) // 搜索开始时间小于等于商品创建时间
  65. queryWrapper.apply("create_time >= STR_TO_DATE({0},'%Y-%m-%d %H:%i:%s')",bo.getStartTime());
  66. if (bo.getEndTime() != null) // 搜索结束时间大于等于商品创建时间
  67. queryWrapper.apply("create_time <= STR_TO_DATE({0},'%Y-%m-%d %H:%i:%s')",bo.getEndTime());
  68. queryWrapper.eq("deleted","0");
  69. List<GoodsListVo> vos = new ArrayList<>();
  70. for (Goods goods : goodsMapper.selectList(queryWrapper)) {
  71. vos.add(new GoodsListVo(goods));
  72. }
  73. return new PageInfo(vos);
  74. }
  75. @Override
  76. public GoodsDetailVo getGoodsDetail(GoodsBo bo) {
  77. QueryWrapper<Goods> goodsQueryWrapper = new QueryWrapper<>();
  78. goodsQueryWrapper.eq("appkey",bo.getAppkey());
  79. goodsQueryWrapper.eq("goods_id",bo.getGoodsId());
  80. goodsQueryWrapper.eq("vendor_id",bo.getVendorId());
  81. goodsQueryWrapper.eq("deleted","0");
  82. Goods goods = goodsMapper.selectOne(goodsQueryWrapper);
  83. return new GoodsDetailVo(goods);
  84. }
  85. @Override
  86. public int editGoods(Goods goods) {
  87. QueryWrapper<Goods> goodsQueryWrapper = new QueryWrapper<>();
  88. goodsQueryWrapper.eq("appkey",goods.getAppkey());
  89. goodsQueryWrapper.eq("goods_id",goods.getGoodsId());
  90. goodsQueryWrapper.eq("vendor_id",goods.getVendorId());
  91. goodsQueryWrapper.eq("deleted","0");
  92. return goodsMapper.update(goods,goodsQueryWrapper);
  93. }
  94. }