|
@@ -1,18 +1,18 @@
|
|
|
package com.steerinfo.dil.service.impl;
|
|
|
|
|
|
-import com.steerinfo.dil.feign.JoinFeign;
|
|
|
-import com.steerinfo.dil.mapper.TmstruckLeaveFactoryResultMapper;
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.steerinfo.dil.mapper.TmstruckSmsRusultMapper;
|
|
|
import com.steerinfo.dil.mapper.UtilsMapper;
|
|
|
import com.steerinfo.dil.model.TmstruckSmsRusult;
|
|
|
import com.steerinfo.dil.service.ITmstruckSmsRusultService;
|
|
|
+import com.steerinfo.dil.util.HTTPRequestUtils;
|
|
|
import com.steerinfo.dil.util.MD5Util;
|
|
|
-import com.steerinfo.framework.mapper.IBaseMapper;
|
|
|
-import com.steerinfo.framework.service.impl.BaseServiceImpl;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
+import java.io.IOException;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
@@ -33,78 +33,58 @@ import java.util.Map;
|
|
|
* @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
|
|
|
*/
|
|
|
@Service(value = "tmstruckSmsRusultService")
|
|
|
-public class TmstruckSmsRusultServiceImpl extends BaseServiceImpl<TmstruckSmsRusult, BigDecimal> implements ITmstruckSmsRusultService {
|
|
|
+public class TmstruckSmsRusultServiceImpl implements ITmstruckSmsRusultService {
|
|
|
|
|
|
@Autowired
|
|
|
private TmstruckSmsRusultMapper tmstruckSmsRusultMapper;
|
|
|
@Autowired
|
|
|
private UtilsMapper utilsMapper;
|
|
|
- @Autowired
|
|
|
- JoinFeign joinFeign;
|
|
|
-// @Autowired
|
|
|
-// private OmstruckOrderMapper omstruckOrderMapper;
|
|
|
|
|
|
- @Override
|
|
|
- protected IBaseMapper<TmstruckSmsRusult, BigDecimal> getMapper() {
|
|
|
- return tmstruckSmsRusultMapper;
|
|
|
- }
|
|
|
|
|
|
/**
|
|
|
- * 销售物流通过点击确认新增短信实绩
|
|
|
- * @param map
|
|
|
+ * 新增短信实绩
|
|
|
+ * @param orderId
|
|
|
* @return
|
|
|
+ * @throws Exception
|
|
|
*/
|
|
|
- @Override
|
|
|
- public int addSmsResult(Map<String,Object> map) {
|
|
|
- //获取用户名
|
|
|
-// Integer personnelId=(Integer) map.get("personnelId");
|
|
|
-// String personnelName=omstruckOrderMapper.selectPersonNameByPersonnelId(personnelId);
|
|
|
- //获取订单号
|
|
|
- String orderNumber = map.get("orderNumber").toString();
|
|
|
+ public int addSmsResult(BigDecimal orderId) throws Exception {
|
|
|
//新增短信实绩
|
|
|
TmstruckSmsRusult tmstruckSmsRusult=new TmstruckSmsRusult();
|
|
|
tmstruckSmsRusult.setResultId(tmstruckSmsRusultMapper.selectMaxId());
|
|
|
//新增总实绩id
|
|
|
- BigDecimal resultTotalId = utilsMapper.getTotalIdByOrderNumber(orderNumber);
|
|
|
+ BigDecimal resultTotalId = utilsMapper.getTotalIdByOrderId(orderId);
|
|
|
tmstruckSmsRusult.setTotalResultId(resultTotalId);
|
|
|
- Integer shipperId = tmstruckSmsRusultMapper.selectShipperIdByOrderNumber(orderNumber);
|
|
|
- //设置发送方id
|
|
|
- tmstruckSmsRusult.setSenderId(new BigDecimal(shipperId));
|
|
|
- //通过发送方ID查询appId和秘钥
|
|
|
- Map<String,Object>map5=tmstruckSmsRusultMapper.selectIdApp(new BigDecimal(shipperId));
|
|
|
- String AppId= (String) map5.get("AppId");
|
|
|
- String secretKey=(String) map5.get("secretKey");
|
|
|
-
|
|
|
tmstruckSmsRusult.setResultSendingTime(new Date());
|
|
|
- //根据运输订单号查找司机电话号码
|
|
|
- String driverPhone=tmstruckSmsRusultMapper.selectCarDriverByOrderNumber(orderNumber);
|
|
|
- String content="您好!您在达钢购买的钢材已发车,司机电话"+driverPhone+"欲知详情,请前往xxxxx地址,下载APP 达钢物流";
|
|
|
- tmstruckSmsRusult.setResultSmsContent("您好!您在达钢购买的钢材已发车,司机电话"+driverPhone+"欲知详情,请前往xxxxx地址,下载APP 达钢物流");
|
|
|
-
|
|
|
//新增短信实绩
|
|
|
tmstruckSmsRusult.setInsertTime(new Date());
|
|
|
- //调用接口发送短信
|
|
|
- Map<String, Object> map2 = new HashMap<>();
|
|
|
- String timestamp=String.valueOf(new Date().getTime());
|
|
|
- String sign=AppId+secretKey+timestamp;
|
|
|
- try {
|
|
|
- String signMd5=MD5Util.md5Encode(sign);
|
|
|
- map2.put("sign",signMd5);
|
|
|
- } catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
- map2.put("AppId",AppId);
|
|
|
- map2.put("timestamp",timestamp);
|
|
|
- map2.put("content",content);
|
|
|
- map2.put("mobiles",driverPhone);
|
|
|
- if (joinFeign.push(map2)){
|
|
|
- int i=tmstruckSmsRusultMapper.insertSelective(tmstruckSmsRusult);
|
|
|
- return i;
|
|
|
- }
|
|
|
- else return 0;
|
|
|
-
|
|
|
-
|
|
|
+ tmstruckSmsRusultMapper.insertSelective(tmstruckSmsRusult);
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
|
|
|
+ public int generaSendMessage(String mobile,String capacityNum,BigDecimal orderId) throws Exception {
|
|
|
+ String url = "http://www.btom.cn:8080/simpleinter/sendSMS?appId=EUCP-EMY-SMS1-10QNI&";
|
|
|
+ String tmpTmp = MD5Util.formatTimeTmp();
|
|
|
+ String sign = MD5Util.sign("EUCP-EMY-SMS1-10QNI","EE20B0B28B75E567");
|
|
|
+ String mobile1 = mobile;
|
|
|
+ String content = "【达州钢铁】您好,您在达钢购买的钢材已发车,司机车牌号:" + capacityNum + "。退订";
|
|
|
+ String sendUrl = url+"timestamp=" + tmpTmp + "&sign=" + sign + "&mobiles=" + mobile1 + "&content=" + content;
|
|
|
+ String jsonData = null;
|
|
|
+ JSONObject jsonObject = new JSONObject();
|
|
|
+ jsonData = HTTPRequestUtils.send(sendUrl,jsonObject,"utf-8");
|
|
|
+ if(!"null".equals(jsonData)){
|
|
|
+ System.out.println(jsonData);
|
|
|
+ HashMap hashMap = JSON.parseObject(jsonData, HashMap.class);
|
|
|
+ String code = (String) hashMap.get("code");
|
|
|
+ System.out.println(hashMap.get("code"));
|
|
|
+ if("SUCCESS".equals(code)){
|
|
|
+ return addSmsResult(orderId);
|
|
|
+ }else{
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ System.out.println("短信发送失败:" + jsonData);
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|