package com.zy.asrs.task;
|
|
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSONObject;
|
import com.zy.asrs.entity.WmsWrk;
|
import com.zy.asrs.service.WmsWrkLogService;
|
import com.zy.asrs.service.WmsWrkService;
|
import com.zy.common.utils.HttpHandler;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.stereotype.Component;
|
|
/**
|
* 定时将WMS任务(完成、取消)转成日志
|
*/
|
@Slf4j
|
@Component
|
public class WmsWrkLogScheduler {
|
|
@Autowired
|
private WmsWrkService wmsWrkService;
|
@Autowired
|
private WmsWrkLogService wmsWrkLogService;
|
|
@Value("${wms.url}")
|
private String wmsUrl;
|
|
@Scheduled(cron = "0/3 * * * * ? ")
|
public void execute() {
|
for (WmsWrk wmsWrk : wmsWrkService.selectToBeHistoryData()) {
|
boolean save = wmsWrkLogService.save(wmsWrk.getWmsWrkNo());
|
boolean delete = wmsWrkService.deleteById(wmsWrk.getWmsWrkNo());
|
if (!save || !delete) {
|
log.error("任务[wmsWrkNo={}]历史处理失败", wmsWrk.getWmsWrkNo());
|
}
|
|
try {
|
//任务上报
|
String response = new HttpHandler.Builder()
|
.setUri(wmsUrl)
|
.setPath("/wmsWrk/test")
|
.setJson(JSON.toJSONString(wmsWrk))
|
.build()
|
.doPost();
|
JSONObject jsonObject = JSON.parseObject(response);
|
if (jsonObject.getInteger("code").equals(200)) {
|
//todo
|
// StartupDto dto = jsonObject.getObject("data", StartupDto.class);
|
|
} else {
|
log.error("请求接口失败!!!url:{};request:{};response:{}", wmsUrl + "/wmsWrk/test", JSON.toJSONString(wmsWrk), response);
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
}
|
|
}
|