TmstruckSmsRusultServiceImpl.java 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. package com.steerinfo.dil.service.impl;
  2. import com.alibaba.fastjson.JSON;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.steerinfo.dil.mapper.TmstruckSmsRusultMapper;
  5. import com.steerinfo.dil.mapper.UtilsMapper;
  6. import com.steerinfo.dil.model.TmstruckSmsRusult;
  7. import com.steerinfo.dil.service.ITmstruckSmsRusultService;
  8. import com.steerinfo.dil.util.HTTPRequestUtils;
  9. import com.steerinfo.dil.util.MD5Util;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.stereotype.Service;
  12. import java.io.IOException;
  13. import java.math.BigDecimal;
  14. import java.util.Date;
  15. import java.util.HashMap;
  16. import java.util.List;
  17. import java.util.Map;
  18. import java.util.regex.Pattern;
  19. /**
  20. * TmstruckSmsRusult服务实现:
  21. * @author generator
  22. * @version 1.0-SNAPSHORT 2021-10-18 09:19
  23. * 类描述
  24. * 修订历史:
  25. * 日期:2021-10-18
  26. * 作者:generator
  27. * 参考:
  28. * 描述:TmstruckSmsRusult服务实现
  29. * @see null
  30. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  31. */
  32. @Service(value = "tmstruckSmsRusultService")
  33. public class TmstruckSmsRusultServiceImpl implements ITmstruckSmsRusultService {
  34. @Autowired
  35. private TmstruckSmsRusultMapper tmstruckSmsRusultMapper;
  36. @Autowired
  37. private UtilsMapper utilsMapper;
  38. /**
  39. * 新增短信实绩
  40. * @param orderId
  41. * @return
  42. * @throws Exception
  43. */
  44. public int addSmsResult(BigDecimal orderId,String content) throws Exception {
  45. //新增短信实绩
  46. TmstruckSmsRusult tmstruckSmsRusult=new TmstruckSmsRusult();
  47. tmstruckSmsRusult.setResultId(tmstruckSmsRusultMapper.selectMaxId());
  48. //新增总实绩id
  49. BigDecimal resultTotalId = utilsMapper.getTotalIdByOrderId(orderId);
  50. tmstruckSmsRusult.setTotalResultId(resultTotalId);
  51. tmstruckSmsRusult.setResultSendingTime(new Date());
  52. tmstruckSmsRusult.setResultSmsContent(content);
  53. //新增短信实绩
  54. tmstruckSmsRusult.setInsertTime(new Date());
  55. tmstruckSmsRusultMapper.insertSelective(tmstruckSmsRusult);
  56. tmstruckSmsRusultMapper.updateTotalResultSmsStatus(resultTotalId);
  57. return 1;
  58. }
  59. public int generaSendMessage(String mobile,String capacityNum,BigDecimal orderId) throws Exception {
  60. String url = "http://www.btom.cn:8080/simpleinter/sendSMS?appId=EUCP-EMY-SMS1-0RHMZ&";
  61. String tmpTmp = MD5Util.formatTimeTmp();
  62. String sign = MD5Util.sign("EUCP-EMY-SMS1-0RHMZ","0CC1A5DEBB4590DA");
  63. String driverTel = tmstruckSmsRusultMapper.getDriverTel(orderId);
  64. String mobile1 = Pattern.compile("[^0-9]").matcher(mobile).replaceAll("");
  65. String content = "【达州钢铁】您好!您在达钢购买的钢材已发车。司机电话:" + driverTel + "。欲知详情,请前往达州钢铁智慧物流平台查看车辆实时轨迹。";
  66. String sendUrl = url+"timestamp=" + tmpTmp + "&sign=" + sign + "&mobiles=" + mobile1 + "&content=" + content;
  67. System.out.println(mobile1);
  68. String jsonData = null;
  69. JSONObject jsonObject = new JSONObject();
  70. jsonData = HTTPRequestUtils.send(sendUrl,jsonObject,"utf-8");
  71. System.out.println(jsonData);
  72. if(!"null".equals(jsonData)){
  73. System.out.println(jsonData);
  74. HashMap hashMap = JSON.parseObject(jsonData, HashMap.class);
  75. String code = (String) hashMap.get("code");
  76. System.out.println(hashMap.get("code"));
  77. if("SUCCESS".equals(code)){
  78. return addSmsResult(orderId,content);
  79. }else{
  80. return 0;
  81. }
  82. }else{
  83. System.out.println("短信发送失败:" + jsonData);
  84. return 0;
  85. }
  86. }
  87. public int generaSendMessageNew(String mobile,String capacityNum,BigDecimal orderId, String message, String deliveryAddress) throws Exception {
  88. String url = "http://www.btom.cn:8080/simpleinter/sendSMS?appId=EUCP-EMY-SMS1-2G25B&";
  89. String tmpTmp = MD5Util.formatTimeTmp();
  90. String sign = MD5Util.sign("EUCP-EMY-SMS1-2G25B","960ABC95153C60F0");
  91. String driverTel = tmstruckSmsRusultMapper.getDriverTel(orderId);
  92. String mobile1 = Pattern.compile("[^0-9]").matcher(mobile).replaceAll("");
  93. String content ="【达州钢铁】尊敬的用户,您在我公司采购的钢材,规格:" + message + ",车牌号:" + capacityNum + ",司机电话:" + driverTel + ",收货地址:"+ deliveryAddress +"。车辆已出厂配送中,欲知详情,请前往达州钢铁智慧物流平台查看车辆实际轨迹。";
  94. String sendUrl = url+"timestamp=" + tmpTmp + "&sign=" + sign + "&mobiles=" + mobile1 + "&content=" + content;
  95. System.out.println(mobile1);
  96. String jsonData;
  97. JSONObject jsonObject = new JSONObject();
  98. jsonData = HTTPRequestUtils.send(sendUrl,jsonObject,"utf-8");
  99. System.out.println("短信发送返回:" + jsonData);
  100. if(!"null".equals(jsonData)){
  101. HashMap hashMap = JSON.parseObject(jsonData, HashMap.class);
  102. String code = (String) hashMap.get("code");
  103. System.out.println(hashMap.get("code"));
  104. if("SUCCESS".equals(code)){
  105. return addSmsResult(orderId,content);
  106. }else{
  107. return 0;
  108. }
  109. }else{
  110. System.out.println("短信发送失败:" + jsonData);
  111. return 0;
  112. }
  113. }
  114. @Override
  115. public int sendMessage(String mobile,String content) throws Exception{
  116. String url = "http://www.btom.cn:8080/simpleinter/sendSMS?appId=EUCP-EMY-SMS1-2G25B&";
  117. String tmpTmp = MD5Util.formatTimeTmp();
  118. String sign = MD5Util.sign("EUCP-EMY-SMS1-2G25B","960ABC95153C60F0");
  119. String mobile1 = mobile;
  120. //String content1 = "【达州钢铁】您好!" + content + "退订";
  121. //String content1 = "【达州钢铁】您好!您在达钢购买的钢材已发车。司机电话:" + mobile + "。欲知详情,请前往达州钢铁智慧物流平台查看车辆实时轨迹。";
  122. String content1 ="【达州钢铁】尊敬的用户,您在我公司采购的钢材,规格:Φ20(HRB400E)5件、Φ25(HRB400E)5件、Φ8(HPB300)2件,车牌号:陕F73979,司机电话:" + mobile + ",收货地址:四川遂宁船山区科创西路88号。车辆已出厂配送中,欲知详情,请前往达州钢铁智慧物流平台查看车辆实际轨迹。";
  123. String sendUrl = url+"timestamp=" + tmpTmp + "&sign=" + sign + "&mobiles=" + mobile1 + "&content=" + content1;
  124. String jsonData = null;
  125. JSONObject jsonObject = new JSONObject();
  126. jsonData = HTTPRequestUtils.send(sendUrl, jsonObject, "utf-8");
  127. if(!"null".equals(jsonData)){
  128. System.out.println(jsonData);
  129. HashMap hashMap = JSON.parseObject(jsonData, HashMap.class);
  130. String code = (String) hashMap.get("code");
  131. System.out.println(hashMap.get("code"));
  132. if("SUCCESS".equals(code)){
  133. return 1;
  134. }else{
  135. return 0;
  136. }
  137. }else{
  138. return 0;
  139. }
  140. }
  141. @Override
  142. public List<Map<String, Object>> getSmsResult(Map<String, Object> map) {
  143. return tmstruckSmsRusultMapper.selectSmsResult(map);
  144. }
  145. }