md
This commit is contained in:
parent
f73e1de1e3
commit
7719bd6285
@ -60,6 +60,17 @@ public class EmisTmsMapTraceController extends BaseController
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/getLbsRecordListByBillCode")
|
||||
public AjaxResult getLbsRecordListByBillCode(EmisTmsMapTrace emisTmsMapTrace)
|
||||
{
|
||||
EmisTmsMapTrace rst=emisTmsMapTraceService.getLbsRecordListByBillCode(emisTmsMapTrace.getBillCode());
|
||||
if(rst!=null){
|
||||
return AjaxResult.success("成功",rst);
|
||||
}else{
|
||||
return AjaxResult.success("成功",null);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询可视化物流轨迹列表
|
||||
*/
|
||||
|
||||
@ -10,6 +10,8 @@
|
||||
|
||||
package com.xdadan.erp.emis.domain;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||
@ -19,6 +21,8 @@ import com.xdadan.erp.common.core.domain.TreeEntity;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
@ -49,8 +53,12 @@ public class EmisTmsMapTrace extends BaseEntity
|
||||
/* 最后地点 */
|
||||
private String lastLocationInfo;
|
||||
|
||||
|
||||
// 扩展
|
||||
private String billCode;
|
||||
private JSONArray lbsRecordList;
|
||||
|
||||
// device 跟踪 开始时间,结束时间
|
||||
private Date startTraceDate;
|
||||
private Date endTraceDate;
|
||||
|
||||
}
|
||||
|
||||
@ -27,6 +27,13 @@ public interface IEmisTmsMapTraceService
|
||||
*/
|
||||
public EmisTmsMapTrace selectEmisTmsMapTraceById(Long id);
|
||||
|
||||
/**
|
||||
* 获取lbs记录
|
||||
* @param billCode
|
||||
* @return
|
||||
*/
|
||||
public EmisTmsMapTrace getLbsRecordListByBillCode(String billCode);
|
||||
|
||||
|
||||
/**
|
||||
* 根据运单号获取设备号
|
||||
|
||||
@ -10,7 +10,18 @@
|
||||
|
||||
package com.xdadan.erp.emis.service.impl;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.xdadan.erp.common.utils.DateUtils;
|
||||
import com.xdadan.erp.common.utils.StringUtils;
|
||||
import com.xdadan.erp.emis.domain.EmisWaybill;
|
||||
import com.xdadan.erp.emis.service.EmisBaseService;
|
||||
import com.xdadan.erp.emis.utils.HTTPHelperV3;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.xdadan.erp.emis.domain.EmisTmsMapTrace;
|
||||
@ -24,7 +35,7 @@ import com.xdadan.erp.emis.service.IEmisTmsMapTraceService;
|
||||
* @date 2025-08-13 04:50:50
|
||||
*/
|
||||
@Service
|
||||
public class EmisTmsMapTraceServiceImpl implements IEmisTmsMapTraceService
|
||||
public class EmisTmsMapTraceServiceImpl extends EmisBaseService implements IEmisTmsMapTraceService
|
||||
{
|
||||
@Autowired
|
||||
private EmisTmsMapTraceMapper emisTmsMapTraceMapper;
|
||||
@ -46,13 +57,80 @@ public class EmisTmsMapTraceServiceImpl implements IEmisTmsMapTraceService
|
||||
public EmisTmsMapTrace getDeviceNoByBillCode(String billCode)
|
||||
{
|
||||
EmisTmsMapTrace emisTmsMapTrace=emisTmsMapTraceMapper.selectEmisTmsMapTraceByBillCode(billCode);
|
||||
|
||||
if(emisTmsMapTrace!=null){
|
||||
// 获取轨迹开始时间,获取轨迹结束时间
|
||||
// List<Map> stepList=emisTmsScanRecordService.queryWaybillTraceInfo(mainNo,lang,false);
|
||||
// EmisWaybill waybill=getWaybillByBillCode(billCode);
|
||||
// if(waybill.)
|
||||
return emisTmsMapTrace;
|
||||
}
|
||||
return emisTmsMapTraceMapper.selectEmisTmsMapTraceFromSiteBatch(billCode);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public EmisTmsMapTrace getLbsRecordListByBillCode(String billCode)
|
||||
{
|
||||
EmisWaybill waybill=getWaybillByBillCode(billCode);
|
||||
if(waybill==null){
|
||||
return null;
|
||||
}
|
||||
|
||||
EmisTmsMapTrace emisTmsMapTrace=emisTmsMapTraceMapper.selectEmisTmsMapTraceByBillCode(billCode);
|
||||
if(emisTmsMapTrace==null){
|
||||
emisTmsMapTrace=emisTmsMapTraceMapper.selectEmisTmsMapTraceFromSiteBatch(billCode);
|
||||
}
|
||||
|
||||
if(emisTmsMapTrace!=null){
|
||||
Date signDate=waybill.getSignDate();
|
||||
if(signDate==null){
|
||||
signDate=new Date();
|
||||
}
|
||||
|
||||
JSONArray lbsRecordList = getLbsList(emisTmsMapTrace.getDeviceNo(),waybill.getSendDate(),signDate);
|
||||
emisTmsMapTrace.setLbsRecordList(lbsRecordList);
|
||||
}
|
||||
|
||||
return emisTmsMapTrace;
|
||||
}
|
||||
|
||||
private static JSONArray getLbsList(String msisdn,Date startDate,Date endDate){
|
||||
JSONArray lbsRecordList = new JSONArray();
|
||||
String url="https://api.lbs.jtrs56.com/api/lbssvr/lbs/common/getLocationRecord?msisdn=" +msisdn
|
||||
+"¶ms[beginCreateTime]="+ DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,startDate)
|
||||
+"¶ms[endCreateTime]="+DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,endDate);
|
||||
try {
|
||||
String result= HTTPHelperV3.get(url);
|
||||
if(!StringUtils.isEmpty(result)) {
|
||||
JSONObject jobj = JSONObject.parseObject(result);
|
||||
if ("200".equals(jobj.getString("code"))) {
|
||||
JSONArray arrLbs=jobj.getJSONArray("rows");
|
||||
|
||||
for(Object item:arrLbs){
|
||||
JSONObject oldItem=(JSONObject)item;
|
||||
JSONObject newItem=new JSONObject();
|
||||
newItem.put("address",oldItem.getOrDefault("address",null));
|
||||
newItem.put("createTime",oldItem.getOrDefault("createTime",null));
|
||||
newItem.put("latitude",oldItem.getOrDefault("latitude",null));
|
||||
newItem.put("longitude",oldItem.getOrDefault("longitude",null));
|
||||
lbsRecordList.add(newItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return lbsRecordList;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
JSONArray lbsRecordList = getLbsList("13110244178",DateUtils.parseDate("2025-07-01"),DateUtils.parseDate("2025-09-01"));
|
||||
System.out.println(JSON.toJSONString(lbsRecordList));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询可视化物流轨迹列表
|
||||
*
|
||||
|
||||
Loading…
Reference in New Issue
Block a user