DownloadOrderServiceImpl.java 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. package com.fdkankan.ucenter.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  4. import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
  5. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  6. import com.fdkankan.common.constant.TbStatus;
  7. import com.fdkankan.common.response.PageInfo;
  8. import com.fdkankan.ucenter.entity.DownloadOrder;
  9. import com.fdkankan.ucenter.entity.Invoice;
  10. import com.fdkankan.ucenter.entity.User;
  11. import com.fdkankan.ucenter.mapper.IDownloadOrderMapper;
  12. import com.fdkankan.ucenter.service.IDownloadOrderService;
  13. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  14. import com.fdkankan.ucenter.service.IInvoiceService;
  15. import com.fdkankan.ucenter.service.IUserService;
  16. import com.fdkankan.ucenter.vo.request.IncrementOrderParam;
  17. import com.fdkankan.ucenter.vo.response.DownloadVo;
  18. import org.springframework.beans.BeanUtils;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.stereotype.Service;
  21. import java.util.ArrayList;
  22. import java.util.Date;
  23. import java.util.List;
  24. /**
  25. * <p>
  26. * 下载次数订单表 服务实现类
  27. * </p>
  28. *
  29. * @author
  30. * @since 2022-07-13
  31. */
  32. @Service
  33. public class DownloadOrderServiceImpl extends ServiceImpl<IDownloadOrderMapper, DownloadOrder> implements IDownloadOrderService {
  34. @Autowired
  35. IUserService userService;
  36. @Autowired
  37. IInvoiceService invoiceService;
  38. @Override
  39. public PageInfo pageList(IncrementOrderParam param) {
  40. User user = userService.getByUserName(param.getUserName());
  41. LambdaQueryWrapper<DownloadOrder> wrapper = new LambdaQueryWrapper<>();
  42. wrapper.eq(DownloadOrder::getUserId,user.getId());
  43. wrapper.orderByDesc(DownloadOrder::getTradeTime);
  44. Page<DownloadOrder> page = this.page(new Page<>(param.getPageNum(), param.getPageSize()), wrapper);
  45. List<DownloadVo> listVo = new ArrayList<>();
  46. for (DownloadOrder record : page.getRecords()) {
  47. DownloadVo vo = new DownloadVo();
  48. BeanUtils.copyProperties(record,vo);
  49. Invoice invoice = invoiceService.getByDownId(record.getId());
  50. vo.setInvoice(invoice);
  51. listVo.add(vo);
  52. }
  53. Page<DownloadVo> pageVo = new Page<>(param.getPageNum(),param.getPageSize());
  54. pageVo.setTotal(page.getTotal());
  55. pageVo.setRecords(listVo);
  56. return PageInfo.PageInfo(pageVo);
  57. }
  58. @Override
  59. public DownloadOrder getByOrderSn(String orderSn) {
  60. QueryWrapper<DownloadOrder> queryWrapper = new QueryWrapper<>();
  61. queryWrapper.lambda().eq(DownloadOrder::getOrderSn,orderSn);
  62. List<DownloadOrder> list = this.list(queryWrapper);
  63. if(list == null || list.size() <=0){
  64. return null;
  65. }
  66. return list.get(0);
  67. }
  68. @Override
  69. public boolean paySuccessDownloadOrder(String orderSn, String tradeNo, int paymentTypeName) {
  70. LambdaUpdateWrapper<DownloadOrder> updateWrapper = new LambdaUpdateWrapper<>();
  71. updateWrapper.set(DownloadOrder::getPayType,paymentTypeName)
  72. .set(DownloadOrder::getNumber,tradeNo)
  73. .set(DownloadOrder::getPayStatus,1)
  74. .set(DownloadOrder::getTradeTime,new Date())
  75. .eq(DownloadOrder::getOrderSn,orderSn);
  76. return this.update(updateWrapper);
  77. }
  78. }