package com.mes.job;
|
|
import cn.hutool.core.collection.CollectionUtil;
|
import cn.hutool.json.JSONObject;
|
import com.mes.rawglassdetails.entity.RawGlassStorageDetails;
|
import com.mes.rawglassstation.service.RawGlassStorageStationService;
|
import com.mes.rawglasstask.entity.RawGlassStorageTask;
|
import com.mes.rawglasstask.service.RawGlassStorageTaskService;
|
import com.mes.tools.WebSocketServer;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.stereotype.Component;
|
|
import javax.annotation.Resource;
|
import java.util.List;
|
|
/**
|
* @author wangfei
|
*/
|
@Slf4j
|
@Component
|
public class RawGlassPushMessage {
|
|
@Resource private RawGlassStorageStationService rawGlassStorageStationService;
|
|
@Resource private RawGlassStorageTaskService rawGlassStorageTaskService;
|
|
@Scheduled(fixedDelay = 2000)
|
public void sendRawGlassMessage() {
|
log.info("发送任务信息和架子信息");
|
JSONObject jsonObject = new JSONObject();
|
List<RawGlassStorageDetails> rawStationDetailsList =
|
rawGlassStorageStationService.listRawGlassDetails();
|
List<RawGlassStorageTask> tasks = rawGlassStorageTaskService.listRawGlassTask();
|
jsonObject.append("rawStationDetailsList", rawStationDetailsList);
|
jsonObject.append("tasks", tasks);
|
log.info("获取到的工位详情及任务信息为:{}", jsonObject);
|
|
List<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("rawGlass");
|
if (CollectionUtil.isNotEmpty(sendwServer)) {
|
if (sendwServer.get(0).session.isOpen()) {
|
log.info("已发送");
|
sendwServer.get(0).sendMessage(String.valueOf(jsonObject));
|
}
|
}
|
}
|
|
/** todo:入库任务:吊装位有玻璃,先去工位表查询空格子,生成入库任务从吊装位到目标格子 */
|
|
/** todo:出库任务:1、点出库,立马生成出片任务 2、点出库修改工位详情内的状态为待出库,定时任务扫描生成出库任务 */
|
|
/** todo:原片调度:1、查询工程原片表,按照顺序将原片放入上片1号位,后续原片放上片2号位,出现尺寸替换,判断原上片位是否有玻璃,有 先出后进,无 直接进片 */
|
}
|