package com.zy.asrs.task; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.zy.asrs.entity.LocMast; import com.zy.asrs.entity.param.ShuttleTask; import com.zy.asrs.service.LocMastService; import com.zy.asrs.task.core.ReturnT; import com.zy.asrs.task.handler.ErrorStockHandler; import com.zy.common.utils.HttpHandler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; 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; import java.io.IOException; import java.util.List; /** * Created by vincent on 2020/7/7 */ @Component public class ErrorStockScheduler { private static final Logger log = LoggerFactory.getLogger(ErrorStockScheduler.class); @Autowired private ErrorStockHandler errorStockHandler; @Autowired private LocMastService locMastService; @Value("${shuttleWcs.url}") private String shuttleWcsUrl; @Scheduled(cron = "0/3 * * * * ? ") private void execute() { ReturnT returnT = errorStockHandler.start(); if (!returnT.isSuccess()) { log.error(returnT.getMsg()); } } // @Scheduled(cron = "0/15 * * * * ? ") // private void execute2() { // String response = null; // try { // ShuttleTask param = new ShuttleTask(); // response = new HttpHandler.Builder() // .setUri(shuttleWcsUrl) // .setJson(JSON.toJSONString(param)) // .setPath("/openapi/getAllLocInformation") // .build() // .doPost(); // } catch (IOException e) { // e.printStackTrace(); // } // JSONObject jsonObject = JSON.parseObject(response); // Integer code = jsonObject.getInteger("code"); // if (code.equals(200)) { // String data = jsonObject.getString("data"); // List locMasts = JSONArray.parseArray(data, LocMast.class); // for (LocMast locMast : locMasts) { // if (locMast.getLocNo().startsWith("02003") || locMast.getLocNo().startsWith("12003")) { // continue; // } // String locNo = locMast.getLocNo(); // int row = Integer.parseInt(locNo.substring(0, 2)) + 4; // if (row >= 10) { // locNo = row + locMast.getLocNo().substring(2); // } else { // locNo = "0" + row + locMast.getLocNo().substring(2); // } // LocMast locMast1 = locMastService.selectOne(new EntityWrapper().eq("loc_no", locNo)); // if (locMast1 == null) { // log.info("库位不匹配"); // } else { // if (locMast1.getLocSts().equalsIgnoreCase("X")) { // // } else if (!locMast1.getLocSts().equalsIgnoreCase(locMast.getLocSts())) { // log.info("库位状态不匹配{},WMS:{},RCS:{}", locMast1.getLocNo(), locMast1.getLocSts(), locMast.getLocSts()); // } // } // } // } // } }