KuaishouLiveDataAnalysisServiceImpl.java 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. package com.ruixuan.data.service.impl;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.ruixuan.common.utils.DateUtils;
  4. import com.ruixuan.data.entity.KuaishouLiveDataAnalysis;
  5. import com.ruixuan.data.mapper.KuaishouLiveDataAnalysisMapper;
  6. import com.ruixuan.data.service.IKuaishouLiveDataAnalysisService;
  7. import com.ruixuan.live.entity.KuaishouLiveBroadcast;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Service;
  10. import java.util.ArrayList;
  11. import java.util.List;
  12. /**
  13. * 商品分析数据Service业务层处理
  14. *
  15. * @author ruoyi
  16. * @date 2022-05-31
  17. */
  18. @Service
  19. public class KuaishouLiveDataAnalysisServiceImpl implements IKuaishouLiveDataAnalysisService {
  20. @Autowired
  21. private KuaishouLiveDataAnalysisMapper kuaishouLiveDataAnalysisMapper;
  22. /**
  23. * 查询商品分析数据
  24. *
  25. * @param ksId 商品分析数据主键
  26. * @return 商品分析数据
  27. */
  28. @Override
  29. public KuaishouLiveDataAnalysis selectKuaishouLiveDataAnalysisByKsId(Long ksId) {
  30. return kuaishouLiveDataAnalysisMapper.selectKuaishouLiveDataAnalysisByKsId(ksId);
  31. }
  32. /**
  33. * 查询商品分析数据列表
  34. *
  35. * @param kuaishouLiveDataAnalysis 商品分析数据
  36. * @return 商品分析数据
  37. */
  38. @Override
  39. public List<KuaishouLiveDataAnalysis> selectKuaishouLiveDataAnalysisList(KuaishouLiveDataAnalysis kuaishouLiveDataAnalysis) {
  40. return kuaishouLiveDataAnalysisMapper.selectKuaishouLiveDataAnalysisList(kuaishouLiveDataAnalysis);
  41. }
  42. /**
  43. * 新增商品分析数据
  44. *
  45. * @param kuaishouLiveDataAnalysis 商品分析数据
  46. * @return 结果
  47. */
  48. @Override
  49. public int insertKuaishouLiveDataAnalysis(KuaishouLiveDataAnalysis kuaishouLiveDataAnalysis) {
  50. kuaishouLiveDataAnalysis.setCreateTime(DateUtils.getNowDate());
  51. return kuaishouLiveDataAnalysisMapper.insertKuaishouLiveDataAnalysis(kuaishouLiveDataAnalysis);
  52. }
  53. /**
  54. * 修改商品分析数据
  55. *
  56. * @param kuaishouLiveDataAnalysis 商品分析数据
  57. * @return 结果
  58. */
  59. @Override
  60. public int updateKuaishouLiveDataAnalysis(KuaishouLiveDataAnalysis kuaishouLiveDataAnalysis) {
  61. kuaishouLiveDataAnalysis.setUpdateTime(DateUtils.getNowDate());
  62. return kuaishouLiveDataAnalysisMapper.updateKuaishouLiveDataAnalysis(kuaishouLiveDataAnalysis);
  63. }
  64. /**
  65. * 批量删除商品分析数据
  66. *
  67. * @param ksIds 需要删除的商品分析数据主键
  68. * @return 结果
  69. */
  70. @Override
  71. public int deleteKuaishouLiveDataAnalysisByKsIds(Long[] ksIds) {
  72. return kuaishouLiveDataAnalysisMapper.deleteKuaishouLiveDataAnalysisByKsIds(ksIds);
  73. }
  74. /**
  75. * 删除商品分析数据信息
  76. *
  77. * @param ksId 商品分析数据主键
  78. * @return 结果
  79. */
  80. @Override
  81. public int deleteKuaishouLiveDataAnalysisByKsId(Long ksId) {
  82. return kuaishouLiveDataAnalysisMapper.deleteKuaishouLiveDataAnalysisByKsId(ksId);
  83. }
  84. @Override
  85. public int inserExcelInfo(KuaishouLiveBroadcast broadcast, List<JSONObject> list) throws Exception {
  86. /* excel表头:商品名称 商品上架时间 商品价格 商品销售额 商品销量 待支付订单数
  87. 对应字段编码:0,1,2...
  88. */
  89. try {
  90. List<KuaishouLiveDataAnalysis> analysisList = new ArrayList<>();
  91. for (JSONObject cell : list) {
  92. KuaishouLiveDataAnalysis analysis = new KuaishouLiveDataAnalysis();
  93. analysis.setKsId(broadcast.getKsId());
  94. analysis.setKsName(broadcast.getKsName());
  95. analysis.setAccountId(broadcast.getAccountId());
  96. analysis.setAccountName(broadcast.getAccountName());
  97. analysis.setWaresName(cell.getString("0"));
  98. analysis.setWaresPutDate(cell.getString("1"));
  99. analysis.setWaresPrice(cell.getBigDecimal("2"));
  100. analysis.setWaresSalesAmount(cell.getBigDecimal("3"));
  101. analysis.setWaresSalesVolume(cell.getBigDecimal("4"));
  102. analysis.setTopayOrders(cell.getLong("5"));
  103. analysisList.add(analysis);
  104. }
  105. int i = kuaishouLiveDataAnalysisMapper.inserExcelBatchInfo(analysisList);
  106. if (i > 0) {
  107. return 1;
  108. }
  109. } catch (Exception e) {
  110. e.printStackTrace();
  111. throw new Exception("商品分析数据列异常");
  112. }
  113. return 0;
  114. }
  115. }