CcOutboundCdrServiceImpl.java 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. package com.ruoyi.cc.service.impl;
  2. import com.ruoyi.cc.domain.CcOutboundCdr;
  3. import com.ruoyi.cc.mapper.CcOutboundCdrMapper;
  4. import com.ruoyi.cc.service.ICcOutboundCdrService;
  5. import com.ruoyi.common.core.text.Convert;
  6. import com.ruoyi.common.utils.DateUtils;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.stereotype.Service;
  9. import java.util.HashMap;
  10. import java.util.List;
  11. import java.util.Map;
  12. /**
  13. * 外呼记录Service业务层处理
  14. *
  15. * @author ruoyi
  16. * @date 2024-12-22
  17. */
  18. @Service
  19. public class CcOutboundCdrServiceImpl implements ICcOutboundCdrService
  20. {
  21. @Autowired
  22. private CcOutboundCdrMapper ccOutboundCdrMapper;
  23. /**
  24. * 查询外呼记录
  25. *
  26. * @param id 外呼记录主键
  27. * @return 外呼记录
  28. */
  29. @Override
  30. public CcOutboundCdr selectCcOutboundCdrById(String id)
  31. {
  32. return ccOutboundCdrMapper.selectCcOutboundCdrById(id);
  33. }
  34. /**
  35. * 查询外呼记录列表
  36. *
  37. * @param ccOutboundCdr 外呼记录
  38. * @return 外呼记录
  39. */
  40. @Override
  41. public List<CcOutboundCdr> selectCcOutboundCdrList(CcOutboundCdr ccOutboundCdr)
  42. {
  43. Map<String, Object> params = ccOutboundCdr.getParams();
  44. if (null == params) {
  45. params = new HashMap<>();
  46. }
  47. if (null != params.get("calloutTimeStart")
  48. && !"".equals(params.get("calloutTimeStart"))) {
  49. params.put("calloutTimeStart", DateUtils.dateTime("yyyy-MM-dd HH:mm:ss", (String)params.get("calloutTimeStart")).getTime());
  50. }
  51. if (null != params.get("calloutTimeEnd")
  52. && !"".equals(params.get("calloutTimeEnd"))) {
  53. params.put("calloutTimeEnd", DateUtils.dateTime("yyyy-MM-dd HH:mm:ss", (String)params.get("calloutTimeEnd")).getTime());
  54. }
  55. if (null != params.get("startTimeStart")
  56. && !"".equals(params.get("startTimeStart"))) {
  57. params.put("startTimeStart", DateUtils.dateTime("yyyy-MM-dd HH:mm:ss", (String)params.get("startTimeStart")).getTime());
  58. }
  59. if (null != params.get("startTimeEnd")
  60. && !"".equals(params.get("startTimeEnd"))) {
  61. params.put("startTimeEnd", DateUtils.dateTime("yyyy-MM-dd HH:mm:ss", (String)params.get("startTimeEnd")).getTime());
  62. }
  63. if (null != params.get("answeredTimeStart")
  64. && !"".equals(params.get("answeredTimeStart"))) {
  65. params.put("answeredTimeStart", DateUtils.dateTime("yyyy-MM-dd HH:mm:ss", (String)params.get("answeredTimeStart")).getTime());
  66. }
  67. if (null != params.get("answeredTimeEnd")
  68. && !"".equals(params.get("answeredTimeEnd"))) {
  69. params.put("answeredTimeEnd", DateUtils.dateTime("yyyy-MM-dd HH:mm:ss", (String)params.get("answeredTimeEnd")).getTime());
  70. }
  71. if (null != params.get("endTimeStart")
  72. && !"".equals(params.get("endTimeStart"))) {
  73. params.put("endTimeStart", DateUtils.dateTime("yyyy-MM-dd HH:mm:ss", (String)params.get("endTimeStart")).getTime());
  74. }
  75. if (null != params.get("endTimeEnd")
  76. && !"".equals(params.get("endTimeEnd"))) {
  77. params.put("endTimeEnd", DateUtils.dateTime("yyyy-MM-dd HH:mm:ss", (String)params.get("endTimeEnd")).getTime());
  78. }
  79. // 通话时长(分钟)
  80. if (null != params.get("timeLenStart")
  81. && !"".equals(params.get("timeLenStart"))) {
  82. params.put("timeLenStart", Double.valueOf((String)params.get("timeLenStart")) * 60 * 1000L);
  83. }
  84. if (null != params.get("timeLenEnd")
  85. && !"".equals(params.get("timeLenEnd"))) {
  86. params.put("timeLenEnd", Double.valueOf((String)params.get("timeLenEnd")) * 60 * 1000L);
  87. }
  88. // 通话时长(秒)
  89. if (null != params.get("timeLenSecondStart")
  90. && !"".equals(params.get("timeLenSecondStart"))) {
  91. params.put("timeLenStart", Double.valueOf((String)params.get("timeLenSecondStart")) * 1000L);
  92. }
  93. if (null != params.get("timeLenSecondEnd")
  94. && !"".equals(params.get("timeLenSecondEnd"))) {
  95. params.put("timeLenEnd", Double.valueOf((String)params.get("timeLenSecondEnd")) * 1000L);
  96. }
  97. ccOutboundCdr.setParams(params);
  98. return ccOutboundCdrMapper.selectCcOutboundCdrList(ccOutboundCdr);
  99. }
  100. /**
  101. * 新增外呼记录
  102. *
  103. * @param ccOutboundCdr 外呼记录
  104. * @return 结果
  105. */
  106. @Override
  107. public int insertCcOutboundCdr(CcOutboundCdr ccOutboundCdr)
  108. {
  109. return ccOutboundCdrMapper.insertCcOutboundCdr(ccOutboundCdr);
  110. }
  111. /**
  112. * 修改外呼记录
  113. *
  114. * @param ccOutboundCdr 外呼记录
  115. * @return 结果
  116. */
  117. @Override
  118. public int updateCcOutboundCdr(CcOutboundCdr ccOutboundCdr)
  119. {
  120. return ccOutboundCdrMapper.updateCcOutboundCdr(ccOutboundCdr);
  121. }
  122. /**
  123. * 批量删除外呼记录
  124. *
  125. * @param ids 需要删除的外呼记录主键
  126. * @return 结果
  127. */
  128. @Override
  129. public int deleteCcOutboundCdrByIds(String ids)
  130. {
  131. return ccOutboundCdrMapper.deleteCcOutboundCdrByIds(Convert.toStrArray(ids));
  132. }
  133. /**
  134. * 删除外呼记录信息
  135. *
  136. * @param id 外呼记录主键
  137. * @return 结果
  138. */
  139. @Override
  140. public int deleteCcOutboundCdrById(String id)
  141. {
  142. return ccOutboundCdrMapper.deleteCcOutboundCdrById(id);
  143. }
  144. }