TmstruckSmsRusultServiceImpl.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. package com.steerinfo.dil.service.impl;
  2. import com.steerinfo.dil.feign.JoinFeign;
  3. import com.steerinfo.dil.mapper.TmstruckLeaveFactoryResultMapper;
  4. import com.steerinfo.dil.mapper.TmstruckSmsRusultMapper;
  5. import com.steerinfo.dil.model.TmstruckSmsRusult;
  6. import com.steerinfo.dil.service.ITmstruckSmsRusultService;
  7. import com.steerinfo.dil.util.MD5Util;
  8. import com.steerinfo.framework.mapper.IBaseMapper;
  9. import com.steerinfo.framework.service.impl.BaseServiceImpl;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.stereotype.Service;
  12. import java.math.BigDecimal;
  13. import java.util.Date;
  14. import java.util.HashMap;
  15. import java.util.List;
  16. import java.util.Map;
  17. /**
  18. * TmstruckSmsRusult服务实现:
  19. * @author generator
  20. * @version 1.0-SNAPSHORT 2021-10-18 09:19
  21. * 类描述
  22. * 修订历史:
  23. * 日期:2021-10-18
  24. * 作者:generator
  25. * 参考:
  26. * 描述:TmstruckSmsRusult服务实现
  27. * @see null
  28. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  29. */
  30. @Service(value = "tmstruckSmsRusultService")
  31. public class TmstruckSmsRusultServiceImpl extends BaseServiceImpl<TmstruckSmsRusult, BigDecimal> implements ITmstruckSmsRusultService {
  32. @Autowired
  33. private TmstruckSmsRusultMapper tmstruckSmsRusultMapper;
  34. @Autowired
  35. private TmstruckLeaveFactoryResultMapper tmstruckLeaveFactoryResultMapper;
  36. @Autowired
  37. JoinFeign joinFeign;
  38. // @Autowired
  39. // private OmstruckOrderMapper omstruckOrderMapper;
  40. @Override
  41. protected IBaseMapper<TmstruckSmsRusult, BigDecimal> getMapper() {
  42. return tmstruckSmsRusultMapper;
  43. }
  44. /**
  45. * 销售物流通过点击确认新增短信实绩
  46. * @param map
  47. * @return
  48. */
  49. @Override
  50. public int addSmsResult(Map<String,Object> map) {
  51. //获取用户名
  52. // Integer personnelId=(Integer) map.get("personnelId");
  53. // String personnelName=omstruckOrderMapper.selectPersonNameByPersonnelId(personnelId);
  54. //获取订单号
  55. String orderNumber = map.get("orderNumber").toString();
  56. //新增短信实绩
  57. TmstruckSmsRusult tmstruckSmsRusult=new TmstruckSmsRusult();
  58. tmstruckSmsRusult.setResultId(tmstruckSmsRusultMapper.selectMaxId());
  59. //新增总实绩id
  60. Map<String,Object> map1= tmstruckLeaveFactoryResultMapper.selectResultId(orderNumber);
  61. Integer resultTotalId = Integer.parseInt(map1.get("resultTotalId").toString());
  62. tmstruckSmsRusult.setTotalResultId(new BigDecimal(resultTotalId));
  63. Integer shipperId = tmstruckSmsRusultMapper.selectShipperIdByOrderNumber(orderNumber);
  64. //设置发送方id
  65. tmstruckSmsRusult.setSenderId(new BigDecimal(shipperId));
  66. //通过发送方ID查询appId和秘钥
  67. Map<String,Object>map5=tmstruckSmsRusultMapper.selectIdApp(new BigDecimal(shipperId));
  68. String AppId= (String) map5.get("AppId");
  69. String secretKey=(String) map5.get("secretKey");
  70. tmstruckSmsRusult.setResultSendingTime(new Date());
  71. //根据运输订单号查找司机电话号码
  72. String driverPhone=tmstruckSmsRusultMapper.selectCarDriverByOrderNumber(orderNumber);
  73. String content="您好!您在达钢购买的钢材已发车,司机电话"+driverPhone+"欲知详情,请前往xxxxx地址,下载APP 达钢物流";
  74. tmstruckSmsRusult.setResultSmsContent("您好!您在达钢购买的钢材已发车,司机电话"+driverPhone+"欲知详情,请前往xxxxx地址,下载APP 达钢物流");
  75. //新增短信实绩
  76. tmstruckSmsRusult.setInsertTime(new Date());
  77. //调用接口发送短信
  78. Map<String, Object> map2 = new HashMap<>();
  79. String timestamp=String.valueOf(new Date().getTime());
  80. String sign=AppId+secretKey+timestamp;
  81. try {
  82. String signMd5=MD5Util.md5Encode(sign);
  83. map2.put("sign",signMd5);
  84. } catch (Exception e) {
  85. e.printStackTrace();
  86. }
  87. map2.put("AppId",AppId);
  88. map2.put("timestamp",timestamp);
  89. map2.put("content",content);
  90. map2.put("mobiles",driverPhone);
  91. if (joinFeign.push(map2)){
  92. int i=tmstruckSmsRusultMapper.insertSelective(tmstruckSmsRusult);
  93. return i;
  94. }
  95. else return 0;
  96. }
  97. @Override
  98. public List<Map<String, Object>> getSmsResult(Map<String, Object> map) {
  99. return tmstruckSmsRusultMapper.selectSmsResult(map);
  100. }
  101. }