Browse Source

陆运修改

Signed-off-by: sunhz <mpcoo@foxmail.com>
sunhz 3 years ago
parent
commit
7b830e2f59
21 changed files with 506 additions and 291 deletions
  1. 17 0
      blade-service-api/blade-land-api/src/main/java/org/springblade/land/constant/LandConstant.java
  2. 0 2
      blade-service-api/blade-land-api/src/main/java/org/springblade/land/constant/WxConstant.java
  3. 3 3
      blade-service-api/blade-land-api/src/main/java/org/springblade/land/dto/TrackLogDTO.java
  4. 19 1
      blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/OrderItem.java
  5. 14 0
      blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/TrackKey.java
  6. 15 55
      blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/TrackLog.java
  7. 4 4
      blade-service-api/blade-land-api/src/main/java/org/springblade/land/vo/TrackLogVO.java
  8. 147 5
      blade-service/blade-land/src/main/java/org/springblade/land/controller/OrderIndexController.java
  9. 39 42
      blade-service/blade-land/src/main/java/org/springblade/land/controller/TrackLogController.java
  10. 30 97
      blade-service/blade-land/src/main/java/org/springblade/land/handler/LocateJobHandler.java
  11. 2 1
      blade-service/blade-land/src/main/java/org/springblade/land/handler/WxJobHandler.java
  12. 0 27
      blade-service/blade-land/src/main/java/org/springblade/land/mapper/OrderTrackMapper.xml
  13. 5 5
      blade-service/blade-land/src/main/java/org/springblade/land/mapper/TrackLogMapper.java
  14. 20 0
      blade-service/blade-land/src/main/java/org/springblade/land/mapper/TrackLogMapper.xml
  15. 23 5
      blade-service/blade-land/src/main/java/org/springblade/land/service/ITrackLogService.java
  16. 2 1
      blade-service/blade-land/src/main/java/org/springblade/land/service/impl/NcpCheckServiceImpl.java
  17. 0 1
      blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderItemServiceImpl.java
  18. 4 0
      blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderServiceImpl.java
  19. 0 41
      blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderTrackServiceImpl.java
  20. 161 0
      blade-service/blade-land/src/main/java/org/springblade/land/service/impl/TrackLogServiceImpl.java
  21. 1 1
      blade-service/blade-land/src/main/resources/application.yml

+ 17 - 0
blade-service-api/blade-land-api/src/main/java/org/springblade/land/constant/LandConstant.java

@@ -0,0 +1,17 @@
+package org.springblade.land.constant;
+
+public interface LandConstant {
+
+	String LAND_CACHE = "blade:land";
+
+	String TRACK_TOKEN = "track:token:";
+
+	String TRACK_LOGIN_URL = "https://openapi-test.sinoiov.cn/save/apis/login";
+
+	String TRACK_LOCATION_URL = "https://openapi-test.sinoiov.cn/save/apis/transTimeManage";
+
+	String TRACK_TRACK_URL = "https://openapi-test.sinoiov.cn/save/apis/routerPath";
+
+	String TRACK_REQ_SUCCESS = "1001";
+
+}

+ 0 - 2
blade-service-api/blade-land-api/src/main/java/org/springblade/land/constant/WxConstant.java

@@ -2,8 +2,6 @@ package org.springblade.land.constant;
 
 public interface WxConstant {
 
-	String LAND_CACHE = "blade:land";
-
 	String WECHAT_TOKEN = "wechat:token:";
 
 	String REQ_SUCCESS = "0";

+ 3 - 3
blade-service-api/blade-land-api/src/main/java/org/springblade/land/dto/OrderTrackDTO.java → blade-service-api/blade-land-api/src/main/java/org/springblade/land/dto/TrackLogDTO.java

@@ -16,19 +16,19 @@
  */
 package org.springblade.land.dto;
 
-import org.springblade.land.entity.OrderTrack;
+import org.springblade.land.entity.TrackLog;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 /**
- * 陆运订单轨迹表数据传输对象实体类
+ * 陆运轨迹日志表数据传输对象实体类
  *
  * @author BladeX
  * @since 2022-04-22
  */
 @Data
 @EqualsAndHashCode(callSuper = true)
-public class OrderTrackDTO extends OrderTrack {
+public class TrackLogDTO extends TrackLog {
 	private static final long serialVersionUID = 1L;
 
 }

+ 19 - 1
blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/OrderItem.java

@@ -328,6 +328,18 @@ public class OrderItem implements Serializable {
 	@ApiModelProperty(value = "是否已删除(0-否、1-是)")
 	private Integer isDeleted;
 
+	/**
+	 * 运输方式(用于统计)
+	 */
+	@ApiModelProperty(value = "运输方式(用于统计)")
+	private String shippingMode;
+
+	/**
+	 * 业务部门(用于统计)
+	 */
+	@ApiModelProperty(value = "业务部门(用于统计)")
+	private Long salesmanDept;
+
 	@TableField(exist = false)
 	private Long corpId;
 
@@ -407,7 +419,13 @@ public class OrderItem implements Serializable {
 	private String businessType;
 
 	@TableField(exist = false)
-	private String shippingMode;
+	private String salesmanName;
+
+	@TableField(exist = false)
+	private BigDecimal allFeeD;
+
+	@TableField(exist = false)
+	private BigDecimal allFeeC;
 
 	@TableField(exist = false)
 	private String source;

+ 14 - 0
blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/TrackKey.java

@@ -0,0 +1,14 @@
+package org.springblade.land.entity;
+
+import lombok.Data;
+
+@Data
+public class TrackKey {
+
+	private String token;
+
+	private String cid;
+
+	private String srt;
+
+}

+ 15 - 55
blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/OrderTrack.java → blade-service-api/blade-land-api/src/main/java/org/springblade/land/entity/TrackLog.java

@@ -28,15 +28,15 @@ import java.io.Serializable;
 import java.util.Date;
 
 /**
- * 陆运订单轨迹表实体类
+ * 陆运轨迹日志表实体类
  *
  * @author BladeX
  * @since 2022-04-22
  */
 @Data
-@TableName("land_order_track")
-@ApiModel(value = "OrderTrack对象", description = "陆运订单轨迹表")
-public class OrderTrack implements Serializable {
+@TableName("land_track_log")
+@ApiModel(value = "TrackLog对象", description = "陆运轨迹日志表")
+public class TrackLog implements Serializable {
 
 	private static final long serialVersionUID = 1L;
 
@@ -57,64 +57,24 @@ public class OrderTrack implements Serializable {
 	@ApiModelProperty(value = "车牌号")
 	private String plateNo;
 	/**
-	 * 经度处理
+	 * 详情
 	 */
-	@ApiModelProperty(value = "经度处理")
-	private Double longitude;
+	@ApiModelProperty(value = "详情")
+	private String detail;
 	/**
-	 * 纬度处理
+	 * 租户
 	 */
-	@ApiModelProperty(value = "纬度处理")
-	private Double latitude;
+	@ApiModelProperty(value = "租户")
+	private String tenantId;
 	/**
-	 * 经度
+	 * 创建人
 	 */
-	@ApiModelProperty(value = "经度")
-	private String lon;
+	@ApiModelProperty(value = "创建人")
+	private Long createUser;
 	/**
-	 * 纬度
+	 * 创建时间
 	 */
-	@ApiModelProperty(value = "纬度")
-	private String lat;
-	/**
-	 * 地址
-	 */
-	@ApiModelProperty(value = "地址")
-	private String adr;
-	/**
-	 * 定位时间
-	 */
-	@ApiModelProperty(value = "定位时间")
-	private String utc;
-	/**
-	 * 速度(km/h)
-	 */
-	@ApiModelProperty(value = "速度(km/h)")
-	private String spd;
-	/**
-	 * 方向
-	 */
-	@ApiModelProperty(value = "方向")
-	private String drc;
-	/**
-	 * 省
-	 */
-	@ApiModelProperty(value = "省")
-	private String province;
-	/**
-	 * 市
-	 */
-	@ApiModelProperty(value = "市")
-	private String city;
-	/**
-	 * 县
-	 */
-	@ApiModelProperty(value = "县")
-	private String country;
-	/**
-	 * 时间
-	 */
-	@ApiModelProperty(value = "时间")
+	@ApiModelProperty(value = "创建时间")
 	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
 	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 	private Date createTime;

+ 4 - 4
blade-service-api/blade-land-api/src/main/java/org/springblade/land/vo/OrderTrackVO.java → blade-service-api/blade-land-api/src/main/java/org/springblade/land/vo/TrackLogVO.java

@@ -16,21 +16,21 @@
  */
 package org.springblade.land.vo;
 
-import org.springblade.land.entity.OrderTrack;
+import org.springblade.land.entity.TrackLog;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import io.swagger.annotations.ApiModel;
 
 /**
- * 陆运订单轨迹表视图实体类
+ * 陆运轨迹日志表视图实体类
  *
  * @author BladeX
  * @since 2022-04-22
  */
 @Data
 @EqualsAndHashCode(callSuper = true)
-@ApiModel(value = "OrderTrackVO对象", description = "陆运订单轨迹表")
-public class OrderTrackVO extends OrderTrack {
+@ApiModel(value = "TrackLogVO对象", description = "陆运轨迹日志表")
+public class TrackLogVO extends TrackLog {
 	private static final long serialVersionUID = 1L;
 
 }

+ 147 - 5
blade-service/blade-land/src/main/java/org/springblade/land/controller/OrderIndexController.java

@@ -32,14 +32,16 @@ import org.springblade.land.entity.Order;
 import org.springblade.land.entity.OrderItem;
 import org.springblade.land.service.IOrderItemService;
 import org.springblade.land.service.IOrderService;
+import org.springblade.system.feign.ISysClient;
+import org.springblade.system.user.entity.User;
+import org.springblade.system.user.feign.IUserClient;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 陆运订单明细表 控制器
@@ -61,6 +63,10 @@ public class OrderIndexController extends BladeController {
 
 	private final ICorpsDescClient corpsDescClient;
 
+	private final ISysClient sysClient;
+
+	private final IUserClient userClient;
+
 	/**
 	 * 统计
 	 */
@@ -138,12 +144,148 @@ public class OrderIndexController extends BladeController {
 		return R.data(itemList);
 	}
 
+	/**
+	 * 业务统计
+	 */
+	@GetMapping("/biz-count")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "业务统计")
+	public R bizCount(Integer mold) {
+		LambdaQueryWrapper<OrderItem> wrapper = new LambdaQueryWrapper<OrderItem>()
+			.between(OrderItem::getCreateTime, getTime(true), getTime(false))
+			.eq(OrderItem::getKind, 2)
+			.eq(OrderItem::getIsDeleted, 0)
+			.eq(OrderItem::getTenantId, AuthUtil.getTenantId());
+
+		if (mold == 1) {
+			wrapper.eq(OrderItem::getShippingMode, "集装箱");
+		} else if (mold == 2) {
+			wrapper.eq(OrderItem::getShippingMode, "散货");
+		} else {
+			wrapper.eq(OrderItem::getShippingMode, "特种车辆");
+		}
+
+		List<OrderItem> itemList = orderItemService.list(wrapper);
+
+		Map<String, Object> data = new HashMap<>();
+		Map<String, Object> table;
+		List<Map<String, Object>> tableTemp;
+		Map<String, Object> mapTemp;
+
+		table = new HashMap<>();
+		tableTemp = new ArrayList<>();
+		// 今日总量
+		long all = itemList.size();
+
+		// 未运行
+		long inactive = itemList.stream().filter(item -> item.getStatus() == 0 && item.getStatus() == 1).count();
+		mapTemp = new HashMap<>();
+		mapTemp.put("name", "未运行");
+		mapTemp.put("value", inactive);
+		tableTemp.add(mapTemp);
+
+		// 运行中
+		long active = itemList.stream().filter(item -> item.getStatus() != 0 && item.getStatus() != 1 && item.getStatus() != 4).count();
+		mapTemp = new HashMap<>();
+		mapTemp.put("name", "运行中");
+		mapTemp.put("value", active);
+		tableTemp.add(mapTemp);
+
+		// 已完成
+		long finish = itemList.stream().filter(item -> item.getStatus() == 4).count();
+		mapTemp = new HashMap<>();
+		mapTemp.put("name", "已完成");
+		mapTemp.put("value", finish);
+		tableTemp.add(mapTemp);
+
+		table.put("all", all);
+		table.put("list", tableTemp);
+		data.put("flow", table);
+
+
+		// 部门统计
+		Map<Long, Long> deptMap = itemList.stream().collect(Collectors.groupingBy(OrderItem::getSalesmanDept, Collectors.counting()));
+
+		table = new HashMap<>();
+		tableTemp = new ArrayList<>();
+		for (Long key : deptMap.keySet()) {
+			String deptName = "";
+			if (!ObjectUtil.isEmpty(key)) {
+				R<String> dept = sysClient.getDeptName(key);
+				if (dept.isSuccess() && dept.getData() != null) {
+					deptName = dept.getData();
+				}
+			}
+
+			mapTemp = new HashMap<>();
+			mapTemp.put("dept", key);
+			mapTemp.put("name", deptName);
+			mapTemp.put("value", deptMap.get(key));
+			tableTemp.add(mapTemp);
+		}
+		table.put("all", all);
+		table.put("list", tableTemp);
+		data.put("dept", table);
+
+		return R.data(data);
+	}
+
+	/**
+	 * 业务详情
+	 */
+	@GetMapping("/biz-detail")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "业务详情")
+	public R bizDetail(Integer mold, Long dept, Integer status) {
+		LambdaQueryWrapper<OrderItem> wrapper = new LambdaQueryWrapper<OrderItem>()
+			.between(OrderItem::getCreateTime, getTime(true), getTime(false))
+			.eq(ObjectUtil.isNotEmpty(dept), OrderItem::getSalesmanDept, dept)
+			.eq(OrderItem::getKind, 2)
+			.eq(OrderItem::getIsDeleted, 0)
+			.eq(OrderItem::getTenantId, AuthUtil.getTenantId());
+
+		if (mold == 1) {
+			wrapper.eq(OrderItem::getShippingMode, "集装箱");
+		} else if (mold == 2) {
+			wrapper.eq(OrderItem::getShippingMode, "散货");
+		} else if (mold == 3){
+			wrapper.eq(OrderItem::getShippingMode, "特种车辆");
+		}
+
+		if (status == 1) {
+			wrapper.in(OrderItem::getStatus, 0, 1);
+		} else if (status == 2) {
+			wrapper.notIn(OrderItem::getStatus, 0, 1, 4);
+		} else if (status == 3){
+			wrapper.in(OrderItem::getStatus, 4);
+		}
+
+		List<OrderItem> itemList = orderItemService.list(wrapper);
+		itemList.forEach(item -> {
+			Order order = orderService.getById(item.getOrderId());
+			item.setBillNo(order.getBillNo());
+			item.setStation(order.getStation());
+			item.setAddressDetail(order.getAddressDetail());
+			item.setAllFeeD(item.getOneFeeD().add(item.getTwoFeeD()).add(item.getThreeFeeD()).add(item.getFourFeeD()).add(item.getFiveFeeD()));
+			item.setAllFeeC(item.getOneFeeC().add(item.getTwoFeeC()).add(item.getThreeFeeC()).add(item.getFourFeeC()).add(item.getFiveFeeC()));
+
+			if (!ObjectUtil.isEmpty(order.getSalesman())) {
+				R<User> user = userClient.userInfoById(order.getSalesman());
+				if (user.isSuccess() && user.getData() != null) {
+					item.setSalesmanName(user.getData().getRealName());
+				}
+			}
+		});
+
+		return R.data(itemList);
+	}
+
 	private String getTime(boolean init) {
 		String date = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
 		if (init) {
-			return date + "00:00:00";
+			return date + " 00:00:00";
 		}
-		return date + "23:59:59";
+		return date + " 23:59:59";
 	}
 
 }

+ 39 - 42
blade-service/blade-land/src/main/java/org/springblade/land/controller/OrderTrackController.java → blade-service/blade-land/src/main/java/org/springblade/land/controller/TrackLogController.java

@@ -27,15 +27,13 @@ import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
-import org.springblade.land.entity.OrderTrack;
-import org.springblade.land.service.IOrderTrackService;
-import org.springblade.land.vo.OrderTrackVO;
+import org.springblade.land.entity.TrackLog;
+import org.springblade.land.service.ITrackLogService;
+import org.springblade.land.vo.TrackLogVO;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
-import java.util.ArrayList;
 import java.util.List;
-import java.util.stream.Collectors;
 
 /**
  * 陆运订单轨迹表 控制器
@@ -45,20 +43,20 @@ import java.util.stream.Collectors;
  */
 @RestController
 @AllArgsConstructor
-@RequestMapping("/order-track")
+@RequestMapping("/track-log")
 @Api(value = "陆运订单轨迹表", tags = "陆运订单轨迹表接口")
-public class OrderTrackController extends BladeController {
+public class TrackLogController extends BladeController {
 
-	private final IOrderTrackService orderTrackService;
+	private final ITrackLogService trackLogService;
 
 	/**
 	 * 详情
 	 */
 	@GetMapping("/detail")
 	@ApiOperationSupport(order = 1)
-	@ApiOperation(value = "详情", notes = "传入orderTrack")
-	public R<OrderTrack> detail(OrderTrack orderTrack) {
-		OrderTrack detail = orderTrackService.getOne(Condition.getQueryWrapper(orderTrack));
+	@ApiOperation(value = "详情", notes = "传入trackLog")
+	public R<TrackLog> detail(TrackLog trackLog) {
+		TrackLog detail = trackLogService.getOne(Condition.getQueryWrapper(trackLog));
 		return R.data(detail);
 	}
 
@@ -67,30 +65,30 @@ public class OrderTrackController extends BladeController {
 	 */
 	@GetMapping("/list")
 	@ApiOperationSupport(order = 2)
-	@ApiOperation(value = "分页", notes = "传入orderTrack")
-	public R<IPage<OrderTrack>> list(OrderTrack orderTrack, Query query) {
-		IPage<OrderTrack> pages = orderTrackService.page(Condition.getPage(query), Condition.getQueryWrapper(orderTrack));
+	@ApiOperation(value = "分页", notes = "传入trackLog")
+	public R<IPage<TrackLog>> list(TrackLog trackLog, Query query) {
+		IPage<TrackLog> pages = trackLogService.page(Condition.getPage(query), Condition.getQueryWrapper(trackLog));
 		return R.data(pages);
 	}
 
 	/**
-	 * 陆运定位点列表
+	 * 陆运定位
 	 */
-	@GetMapping("/location-list")
+	@GetMapping("/location")
 	@ApiOperationSupport(order = 2)
-	@ApiOperation(value = "分页", notes = "传入orderTrack")
-	public R<List<List<Double>>> locationList(OrderTrack orderTrack) {
-		List<List<Double>> data = new ArrayList<>();
-
-		List<OrderTrack> trackList = orderTrackService.list(Condition.getQueryWrapper(orderTrack));
-		trackList.forEach(track -> {
-			List<Double> temp = new ArrayList<>();
-			temp.add(track.getLongitude());
-			temp.add(track.getLatitude());
-			data.add(temp);
-		});
+	@ApiOperation(value = "陆运定位", notes = "传入trackLog")
+	public R<List<Double>> location(TrackLog trackLog) {
+		return R.data(trackLogService.location(trackLog));
+	}
 
-		return R.data(data);
+	/**
+	 * 陆运轨迹
+	 */
+	@GetMapping("/track")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "陆运轨迹", notes = "传入trackLog")
+	public R<List<List<Double>>> track(TrackLog trackLog) {
+		return R.data(trackLogService.track(trackLog));
 	}
 
 	/**
@@ -98,9 +96,9 @@ public class OrderTrackController extends BladeController {
 	 */
 	@GetMapping("/page")
 	@ApiOperationSupport(order = 3)
-	@ApiOperation(value = "分页", notes = "传入orderTrack")
-	public R<IPage<OrderTrackVO>> page(OrderTrackVO orderTrack, Query query) {
-		IPage<OrderTrackVO> pages = orderTrackService.selectOrderTrackPage(Condition.getPage(query), orderTrack);
+	@ApiOperation(value = "分页", notes = "传入trackLog")
+	public R<IPage<TrackLogVO>> page(TrackLogVO orderTrack, Query query) {
+		IPage<TrackLogVO> pages = trackLogService.selectOrderTrackPage(Condition.getPage(query), orderTrack);
 		return R.data(pages);
 	}
 
@@ -109,9 +107,9 @@ public class OrderTrackController extends BladeController {
 	 */
 	@PostMapping("/save")
 	@ApiOperationSupport(order = 4)
-	@ApiOperation(value = "新增", notes = "传入orderTrack")
-	public R save(@Valid @RequestBody OrderTrack orderTrack) {
-		return R.status(orderTrackService.save(orderTrack));
+	@ApiOperation(value = "新增", notes = "传入trackLog")
+	public R save(@Valid @RequestBody TrackLog trackLog) {
+		return R.status(trackLogService.save(trackLog));
 	}
 
 	/**
@@ -119,9 +117,9 @@ public class OrderTrackController extends BladeController {
 	 */
 	@PostMapping("/update")
 	@ApiOperationSupport(order = 5)
-	@ApiOperation(value = "修改", notes = "传入orderTrack")
-	public R update(@Valid @RequestBody OrderTrack orderTrack) {
-		return R.status(orderTrackService.updateById(orderTrack));
+	@ApiOperation(value = "修改", notes = "传入trackLog")
+	public R update(@Valid @RequestBody TrackLog trackLog) {
+		return R.status(trackLogService.updateById(trackLog));
 	}
 
 	/**
@@ -129,9 +127,9 @@ public class OrderTrackController extends BladeController {
 	 */
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
-	@ApiOperation(value = "新增或修改", notes = "传入orderTrack")
-	public R submit(@Valid @RequestBody OrderTrack orderTrack) {
-		return R.status(orderTrackService.saveOrUpdate(orderTrack));
+	@ApiOperation(value = "新增或修改", notes = "传入trackLog")
+	public R submit(@Valid @RequestBody TrackLog trackLog) {
+		return R.status(trackLogService.saveOrUpdate(trackLog));
 	}
 
 
@@ -142,8 +140,7 @@ public class OrderTrackController extends BladeController {
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
-		return R.status(orderTrackService.removeByIds(Func.toLongList(ids)));
+		return R.status(trackLogService.removeByIds(Func.toLongList(ids)));
 	}
 
-
 }

+ 30 - 97
blade-service/blade-land/src/main/java/org/springblade/land/handler/LocateJobHandler.java

@@ -2,23 +2,16 @@ package org.springblade.land.handler;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.openapi.sdk.service.DataExchangeService;
 import com.xxl.job.core.biz.model.ReturnT;
 import com.xxl.job.core.handler.annotation.XxlJob;
 import com.xxl.job.core.log.XxlJobLogger;
 import lombok.AllArgsConstructor;
-import org.springblade.core.tool.utils.ObjectUtil;
-import org.springblade.core.tool.utils.StringUtil;
-import org.springblade.land.entity.OrderItem;
-import org.springblade.land.entity.OrderTrack;
-import org.springblade.land.service.IOrderItemService;
-import org.springblade.land.service.IOrderTrackService;
+import org.springblade.core.cache.utils.CacheUtil;
+import org.springblade.land.constant.LandConstant;
+import org.springblade.land.entity.TrackKey;
 import org.springframework.stereotype.Component;
 
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -28,20 +21,6 @@ import java.util.concurrent.*;
 @AllArgsConstructor
 public class LocateJobHandler {
 
-	private final IOrderItemService orderItemService;
-
-	private final IOrderTrackService orderTrackService;
-
-	private static final Map<String, String> TOKEN = new ConcurrentHashMap<>();
-
-	private static final String SUCCESS = "1001";
-
-	private static final String OVERTIME = "1013";
-
-	private static final String LOGIN_URL = "https://openapi-test.sinoiov.cn/save/apis/login";
-
-	private static final String BS_URL = "https://openapi-test.sinoiov.cn/save/apis/transTimeManage";
-
 	@XxlJob("locateJobHandler")
 	public ReturnT<String> locateJobHandler(String param) throws Exception {
 		// 创建线程池
@@ -51,37 +30,36 @@ public class LocateJobHandler {
 			new ThreadPoolExecutor.AbortPolicy());
 
 		try {
-			JSONObject json = JSON.parseObject(param);
-			String tenantId = json.getString("tenantId");
-			String token = getToken(json);
-
-			List<OrderItem> itemList = orderItemService.list(new LambdaQueryWrapper<OrderItem>()
-				.select(OrderItem::getId, OrderItem::getPlateNo)
-				.in(OrderItem::getStatus, 2, 3, 5, 6)
-				.eq(OrderItem::getKind, 2)
-				.eq(OrderItem::getIsDeleted, 0)
-				.eq(OrderItem::getTenantId, tenantId)
-			);
-
-			for (OrderItem item : itemList) {
+			List<JSONObject> locateList = JSON.parseArray(param, JSONObject.class);
+			for (JSONObject locate : locateList) {
 				pool.execute(() -> {
-					// 业务处理
 					try {
-						String data = getData(json, token, item.getPlateNo());
-						OrderTrack track = JSON.parseObject(data, OrderTrack.class);
-						if (!ObjectUtil.isEmpty(track)) {
-							// 计算并组装经纬度
-							BigDecimal divisor = new BigDecimal("600000");
-							BigDecimal longitude = new BigDecimal(track.getLon()).divide(divisor, 6, RoundingMode.HALF_UP);
-							BigDecimal latitude = new BigDecimal(track.getLat()).divide(divisor, 6, RoundingMode.HALF_UP);
-
-							track.setItemId(item.getId());
-							track.setPlateNo(item.getPlateNo());
-							track.setLongitude(longitude.doubleValue());
-							track.setLatitude(latitude.doubleValue());
-							track.setCreateTime(new Date());
-							orderTrackService.save(track);
+						String tenantId = locate.getString("tenantId");
+						String user = locate.getString("user");
+						String pwd = locate.getString("pwd");
+						String srt = locate.getString("srt");
+						String cid = locate.getString("cid");
+
+						Map<String, String> map = new HashMap<>(4);
+						map.put("user", user);
+						map.put("pwd", pwd);
+						map.put("srt", srt);
+						map.put("cid", cid);
+
+						DataExchangeService des = new DataExchangeService(5000, 8000);
+						String res = des.postHttps(LandConstant.TRACK_LOGIN_URL, map);
+
+						JSONObject result = JSON.parseObject(res);
+						if (!LandConstant.TRACK_REQ_SUCCESS.equals(result.getString("status"))) {
+							throw new RuntimeException("登录失败:" + result.getString("status"));
 						}
+						String token = result.getString("result");
+
+						TrackKey key = new TrackKey();
+						key.setToken(token);
+						key.setCid(cid);
+						key.setSrt(srt);
+						CacheUtil.put(LandConstant.LAND_CACHE, LandConstant.TRACK_TOKEN, tenantId, key);
 					} catch (Exception e) {
 						XxlJobLogger.log(e);
 					}
@@ -96,49 +74,4 @@ public class LocateJobHandler {
 		}
 	}
 
-	private String getToken(JSONObject json) throws Exception {
-		String tenantId = json.getString("tenantId");
-		String token = TOKEN.get(tenantId);
-		if (StringUtil.isNotBlank(token)) {
-			return token;
-		}
-
-		Map<String, String> map = new HashMap<>(4);
-		map.put("user", json.getString("user"));
-		map.put("pwd", json.getString("pwd"));
-		map.put("srt", json.getString("srt"));
-		map.put("cid", json.getString("cid"));
-
-		DataExchangeService des = new DataExchangeService(5000, 8000);
-		String res = des.postHttps(LOGIN_URL, map);
-
-		JSONObject result = JSON.parseObject(res);
-		if (!SUCCESS.equals(result.getString("status"))) {
-			throw new RuntimeException("登录失败:" + result.getString("status"));
-		}
-		TOKEN.put(tenantId, result.getString("result"));
-		return result.getString("result");
-	}
-
-	private String getData(JSONObject json, String token, String plateNo) throws Exception {
-		Map<String, String> map = new HashMap<>(4);
-		map.put("token", token);
-		map.put("cid", json.getString("cid"));
-		map.put("srt", json.getString("srt"));
-		map.put("vclN", plateNo);
-		map.put("vco", "2");
-
-		DataExchangeService des = new DataExchangeService(5000, 8000);
-		String res = des.postHttps(BS_URL, map);
-
-		JSONObject result = JSON.parseObject(res);
-		if (!SUCCESS.equals(result.getString("status"))) {
-			if (!OVERTIME.equals(result.getString("status"))) {
-				throw new RuntimeException("获取数据失败:" + result.getString("status"));
-			}
-			return null;
-		}
-		return result.getString("result");
-	}
-
 }

+ 2 - 1
blade-service/blade-land/src/main/java/org/springblade/land/handler/WxJobHandler.java

@@ -9,6 +9,7 @@ import lombok.AllArgsConstructor;
 import org.springblade.core.cache.utils.CacheUtil;
 import org.springblade.core.http.HttpRequest;
 import org.springblade.core.tool.utils.StringUtil;
+import org.springblade.land.constant.LandConstant;
 import org.springblade.land.constant.WxConstant;
 import org.springframework.stereotype.Component;
 
@@ -50,7 +51,7 @@ public class WxJobHandler {
 								return result.getString("access_token");
 							});
 
-						CacheUtil.put(WxConstant.LAND_CACHE, WxConstant.WECHAT_TOKEN, tenantId, token);
+						CacheUtil.put(LandConstant.LAND_CACHE, WxConstant.WECHAT_TOKEN, tenantId, token);
 					} catch (Exception e) {
 						XxlJobLogger.log(e);
 					}

+ 0 - 27
blade-service/blade-land/src/main/java/org/springblade/land/mapper/OrderTrackMapper.xml

@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.springblade.land.mapper.OrderTrackMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="orderTrackResultMap" type="org.springblade.land.entity.OrderTrack">
-        <id column="id" property="id"/>
-        <result column="item_id" property="itemId"/>
-        <result column="plate_no" property="plateNo"/>
-        <result column="lon" property="lon"/>
-        <result column="lat" property="lat"/>
-        <result column="adr" property="adr"/>
-        <result column="utc" property="utc"/>
-        <result column="spd" property="spd"/>
-        <result column="drc" property="drc"/>
-        <result column="province" property="province"/>
-        <result column="city" property="city"/>
-        <result column="country" property="country"/>
-        <result column="create_time" property="createTime"/>
-    </resultMap>
-
-
-    <select id="selectOrderTrackPage" resultMap="orderTrackResultMap">
-        select * from land_order_track where is_deleted = 0
-    </select>
-
-</mapper>

+ 5 - 5
blade-service/blade-land/src/main/java/org/springblade/land/mapper/OrderTrackMapper.java → blade-service/blade-land/src/main/java/org/springblade/land/mapper/TrackLogMapper.java

@@ -18,18 +18,18 @@ package org.springblade.land.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.land.entity.OrderTrack;
-import org.springblade.land.vo.OrderTrackVO;
+import org.springblade.land.entity.TrackLog;
+import org.springblade.land.vo.TrackLogVO;
 
 import java.util.List;
 
 /**
- * 陆运订单轨迹表 Mapper 接口
+ * 陆运轨迹日志表 Mapper 接口
  *
  * @author BladeX
  * @since 2022-04-22
  */
-public interface OrderTrackMapper extends BaseMapper<OrderTrack> {
+public interface TrackLogMapper extends BaseMapper<TrackLog> {
 
 	/**
 	 * 自定义分页
@@ -38,6 +38,6 @@ public interface OrderTrackMapper extends BaseMapper<OrderTrack> {
 	 * @param orderTrack
 	 * @return
 	 */
-	List<OrderTrackVO> selectOrderTrackPage(IPage page, OrderTrackVO orderTrack);
+	List<TrackLogVO> selectOrderTrackPage(IPage page, TrackLogVO orderTrack);
 
 }

+ 20 - 0
blade-service/blade-land/src/main/java/org/springblade/land/mapper/TrackLogMapper.xml

@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.land.mapper.TrackLogMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="orderTrackResultMap" type="org.springblade.land.entity.TrackLog">
+        <id column="id" property="id"/>
+        <result column="item_id" property="itemId"/>
+        <result column="plate_no" property="plateNo"/>
+        <result column="detail" property="detail"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_time" property="createTime"/>
+    </resultMap>
+
+
+    <select id="selectOrderTrackPage" resultMap="orderTrackResultMap">
+        select * from land_track_log where is_deleted = 0
+    </select>
+
+</mapper>

+ 23 - 5
blade-service/blade-land/src/main/java/org/springblade/land/service/IOrderTrackService.java → blade-service/blade-land/src/main/java/org/springblade/land/service/ITrackLogService.java

@@ -18,16 +18,18 @@ package org.springblade.land.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
-import org.springblade.land.entity.OrderTrack;
-import org.springblade.land.vo.OrderTrackVO;
+import org.springblade.land.entity.TrackLog;
+import org.springblade.land.vo.TrackLogVO;
+
+import java.util.List;
 
 /**
- * 陆运订单轨迹表 服务类
+ * 陆运轨迹日志表 服务类
  *
  * @author BladeX
  * @since 2022-04-22
  */
-public interface IOrderTrackService extends IService<OrderTrack> {
+public interface ITrackLogService extends IService<TrackLog> {
 
 	/**
 	 * 自定义分页
@@ -36,6 +38,22 @@ public interface IOrderTrackService extends IService<OrderTrack> {
 	 * @param orderTrack
 	 * @return
 	 */
-	IPage<OrderTrackVO> selectOrderTrackPage(IPage<OrderTrackVO> page, OrderTrackVO orderTrack);
+	IPage<TrackLogVO> selectOrderTrackPage(IPage<TrackLogVO> page, TrackLogVO orderTrack);
+
+	/**
+	 * 获取定位
+	 *
+	 * @param trackLog
+	 * @return
+	 */
+	List<Double> location(TrackLog trackLog);
+
+	/**
+	 * 获取轨迹
+	 *
+	 * @param trackLog
+	 * @return
+	 */
+	List<List<Double>> track(TrackLog trackLog);
 
 }

+ 2 - 1
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/NcpCheckServiceImpl.java

@@ -33,6 +33,7 @@ import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.ObjectUtil;
 import org.springblade.core.tool.utils.StringUtil;
+import org.springblade.land.constant.LandConstant;
 import org.springblade.land.constant.WxConstant;
 import org.springblade.land.entity.NcpCheck;
 import org.springblade.land.mapper.NcpCheckMapper;
@@ -109,7 +110,7 @@ public class NcpCheckServiceImpl extends ServiceImpl<NcpCheckMapper, NcpCheck> i
 
 	@Override
 	public String phone(NcpCheck ncpCheck) {
-		String token = CacheUtil.get(WxConstant.LAND_CACHE, WxConstant.WECHAT_TOKEN, ncpCheck.getTenantId(), String.class);
+		String token = CacheUtil.get(LandConstant.LAND_CACHE, WxConstant.WECHAT_TOKEN, ncpCheck.getTenantId(), String.class);
 		if (StringUtil.isBlank(token)) {
 			throw new RuntimeException("获取请求token失败");
 		}

+ 0 - 1
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderItemServiceImpl.java

@@ -101,7 +101,6 @@ public class OrderItemServiceImpl extends ServiceImpl<OrderItemMapper, OrderItem
 			// 手机端
 			if (StringUtil.isNotBlank(orderItem.getSource())) {
 				record.setBusinessType(order.getBusinessType());
-				record.setShippingMode(order.getShippingMode());
 
 				List<OrderAddress> orderAddressList = orderAddressMapper.selectList(new LambdaQueryWrapper<OrderAddress>()
 					.eq(OrderAddress::getOrderId, record.getOrderId())

+ 4 - 0
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderServiceImpl.java

@@ -428,12 +428,16 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				item.setOrderId(orderId);
 				item.setBillNo(order.getBillNo());
 				item.setKind(1);
+				item.setShippingMode(order.getShippingMode());
+				item.setSalesmanDept(order.getSalesmanDept());
 				item.setTenantId(AuthUtil.getTenantId());
 				item.setCreateUser(AuthUtil.getUserId());
 				item.setCreateTime(new Date());
 				orderItemMapper.insert(item);
 			} else {
 				item.setBillNo(order.getBillNo());
+				item.setShippingMode(order.getShippingMode());
+				item.setSalesmanDept(order.getSalesmanDept());
 				item.setUpdateUser(AuthUtil.getUserId());
 				item.setUpdateTime(new Date());
 				orderItemMapper.updateById(item);

+ 0 - 41
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderTrackServiceImpl.java

@@ -1,41 +0,0 @@
-/*
- *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
- *
- *  Redistribution and use in source and binary forms, with or without
- *  modification, are permitted provided that the following conditions are met:
- *
- *  Redistributions of source code must retain the above copyright notice,
- *  this list of conditions and the following disclaimer.
- *  Redistributions in binary form must reproduce the above copyright
- *  notice, this list of conditions and the following disclaimer in the
- *  documentation and/or other materials provided with the distribution.
- *  Neither the name of the dreamlu.net developer nor the names of its
- *  contributors may be used to endorse or promote products derived from
- *  this software without specific prior written permission.
- *  Author: Chill 庄骞 (smallchill@163.com)
- */
-package org.springblade.land.service.impl;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springblade.land.entity.OrderTrack;
-import org.springblade.land.mapper.OrderTrackMapper;
-import org.springblade.land.service.IOrderTrackService;
-import org.springblade.land.vo.OrderTrackVO;
-import org.springframework.stereotype.Service;
-
-/**
- * 陆运订单轨迹表 服务实现类
- *
- * @author BladeX
- * @since 2022-04-22
- */
-@Service
-public class OrderTrackServiceImpl extends ServiceImpl<OrderTrackMapper, OrderTrack> implements IOrderTrackService {
-
-	@Override
-	public IPage<OrderTrackVO> selectOrderTrackPage(IPage<OrderTrackVO> page, OrderTrackVO orderTrack) {
-		return page.setRecords(baseMapper.selectOrderTrackPage(page, orderTrack));
-	}
-
-}

+ 161 - 0
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/TrackLogServiceImpl.java

@@ -0,0 +1,161 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.land.service.impl;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.openapi.sdk.service.DataExchangeService;
+import org.springblade.core.cache.utils.CacheUtil;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.ObjectUtil;
+import org.springblade.land.constant.LandConstant;
+import org.springblade.land.entity.TrackKey;
+import org.springblade.land.entity.TrackLog;
+import org.springblade.land.mapper.TrackLogMapper;
+import org.springblade.land.service.ITrackLogService;
+import org.springblade.land.vo.TrackLogVO;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.text.SimpleDateFormat;
+import java.util.*;
+
+/**
+ * 陆运轨迹日志表 服务实现类
+ *
+ * @author BladeX
+ * @since 2022-04-22
+ */
+@Service
+public class TrackLogServiceImpl extends ServiceImpl<TrackLogMapper, TrackLog> implements ITrackLogService {
+
+	@Override
+	public IPage<TrackLogVO> selectOrderTrackPage(IPage<TrackLogVO> page, TrackLogVO orderTrack) {
+		return page.setRecords(baseMapper.selectOrderTrackPage(page, orderTrack));
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public List<Double> location(TrackLog trackLog) {
+		TrackKey key = CacheUtil.get(LandConstant.LAND_CACHE, LandConstant.TRACK_TOKEN, AuthUtil.getTenantId(), TrackKey.class, false);
+		if (ObjectUtil.isEmpty(key)) {
+			throw new RuntimeException("获取请求token失败");
+		}
+
+		List<Double> data = new ArrayList<>();
+		try {
+			Map<String, String> map = new HashMap<>(5);
+			map.put("token", key.getToken());
+			map.put("cid", key.getCid());
+			map.put("srt", key.getSrt());
+			map.put("vclN", trackLog.getPlateNo());
+			map.put("vco", "2");
+
+			DataExchangeService des = new DataExchangeService(5000, 8000);
+			String res = des.postHttps(LandConstant.TRACK_LOCATION_URL, map);
+			System.out.println("RES::" + res);
+			trackLog.setDetail(res);
+
+			JSONObject result = getData(res);
+			// 处理数据
+			JSONObject temp = result.getJSONObject("result");
+			BigDecimal divisor = new BigDecimal("600000");
+			BigDecimal longitude = new BigDecimal(temp.getString("lon")).divide(divisor, 6, RoundingMode.HALF_UP);
+			BigDecimal latitude = new BigDecimal(temp.getString("lat")).divide(divisor, 6, RoundingMode.HALF_UP);
+			data.add(longitude.doubleValue());
+			data.add(latitude.doubleValue());
+		} catch (Exception e) {
+			throw new RuntimeException("获取数据失败:" + e.getMessage());
+		}
+
+		trackLog.setTenantId(AuthUtil.getTenantId());
+		trackLog.setCreateUser(AuthUtil.getUserId());
+		trackLog.setCreateTime(new Date());
+		baseMapper.insert(trackLog);
+		return data;
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public List<List<Double>> track(TrackLog trackLog) {
+		TrackKey key = CacheUtil.get(LandConstant.LAND_CACHE, LandConstant.TRACK_TOKEN, AuthUtil.getTenantId(), TrackKey.class, false);
+		if (ObjectUtil.isEmpty(key)) {
+			throw new RuntimeException("获取请求token失败");
+		}
+
+		List<List<Double>> data = new ArrayList<>();
+		try {
+			Map<String, String> map = new HashMap<>(7);
+			map.put("token", key.getToken());
+			map.put("cid", key.getCid());
+			map.put("srt", key.getSrt());
+			map.put("vclN", trackLog.getPlateNo());
+			map.put("vco", "2");
+			map.put("qryBtm", getInitDay());
+			map.put("qryEtm", DateUtil.formatDateTime(new Date()));
+
+			DataExchangeService des = new DataExchangeService(5000, 8000);
+			String res = des.postHttps(LandConstant.TRACK_TRACK_URL, map);
+			System.out.println("RES::" + res);
+			trackLog.setDetail(res);
+
+			JSONObject result = getData(res);
+			// 处理数据
+			JSONArray array = result.getJSONObject("result").getJSONArray("trackArray");
+			for (Object obj : array) {
+				JSONObject temp = (JSONObject) obj;
+				BigDecimal divisor = new BigDecimal("600000");
+				BigDecimal longitude = new BigDecimal(temp.getString("lon")).divide(divisor, 6, RoundingMode.HALF_UP);
+				BigDecimal latitude = new BigDecimal(temp.getString("lat")).divide(divisor, 6, RoundingMode.HALF_UP);
+				List<Double> tempList = new ArrayList<>();
+				tempList.add(longitude.doubleValue());
+				tempList.add(latitude.doubleValue());
+				data.add(tempList);
+			}
+		} catch (Exception e) {
+			throw new RuntimeException("获取数据失败:" + e.getMessage());
+		}
+
+		trackLog.setTenantId(AuthUtil.getTenantId());
+		trackLog.setCreateUser(AuthUtil.getUserId());
+		trackLog.setCreateTime(new Date());
+		baseMapper.insert(trackLog);
+		return data;
+	}
+
+	private static JSONObject getData(String res) throws Exception {
+		JSONObject result = JSON.parseObject(res);
+		if (!LandConstant.TRACK_REQ_SUCCESS.equals(result.getString("status"))) {
+			throw new Exception("获取数据失败:" + result.getString("status"));
+		}
+		return result;
+	}
+
+	private String getInitDay() {
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+		Calendar calendar = Calendar.getInstance();
+		calendar.add(Calendar.DATE, -2);
+		return sdf.format(calendar.getTime()) + " 00:00:00";
+	}
+
+}

+ 1 - 1
blade-service/blade-land/src/main/resources/application.yml

@@ -6,7 +6,7 @@ xxl:
   job:
     accessToken: ''
     admin:
-      addresses: http://127.0.0.1:10031/xxl-job-admin
+      addresses: http://127.0.0.1:7009/xxl-job-admin
     executor:
       appname: blade-land
       ip: 127.0.0.1