| | |
| | | package com.zy.asrs.task.handler; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.entity.Order; |
| | | import com.zy.asrs.entity.WrkDetl; |
| | | import com.zy.asrs.entity.WrkMast; |
| | | import com.zy.asrs.mapper.OrderMapper; |
| | | import com.zy.asrs.mapper.WrkMastMapper; |
| | | import com.zy.asrs.service.ApiLogService; |
| | | import com.zy.asrs.service.WrkDetlService; |
| | | import com.zy.common.constant.MesConstant; |
| | | import com.zy.common.utils.HttpHandler; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * @author pang.jiabao |
| | |
| | | @Resource |
| | | private WrkMastMapper wrkMastMapper; |
| | | |
| | | @Resource |
| | | private WrkDetlService wrkDetlService; |
| | | |
| | | @Transactional |
| | | public void startCkrwPushGwcs(WrkMast wrkMast) { |
| | | |
| | |
| | | Map<String, Object> headers = new HashMap<>(); |
| | | headers.put("Content-Type", "application/json;charset=UTF-8"); |
| | | |
| | | // 下发给gwcs要走的路径标识 |
| | | int descFlag = getDescToGwcs(wrkMast); |
| | | |
| | | // 构造请求体 |
| | | JSONObject jsonObject = new JSONObject(); |
| | | jsonObject.put("workNo", wrkMast.getWrkNo()); |
| | | jsonObject.put("staNo", wrkMast.getStaNo()); |
| | | jsonObject.put("sourceStaNo", wrkMast.getSourceStaNo()); |
| | | jsonObject.put("descFlag", descFlag); // 101出库时用,0只有一条路径,1理货贴标路径,2贴标打带路径 |
| | | String body = jsonObject.toJSONString(); |
| | | |
| | | boolean success = false; |
| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 全板出库到3077或3106的任务,判断出库要走的路径 |
| | | * @param wrkMast 工作主档 |
| | | * @return 0.只有一条路径,1.理货贴标出库路径,2.贴标打带出库路径 |
| | | */ |
| | | private int getDescToGwcs(WrkMast wrkMast) { |
| | | int flag = 0; |
| | | if (wrkMast.getIoType() == 101 && (wrkMast.getStaNo() == 3077 || wrkMast.getStaNo() == 3106)) { |
| | | List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); |
| | | // 出的物料有几个位置 |
| | | List<String> collect = wrkDetls.stream().map(WrkDetl::getOrigin).distinct().collect(Collectors.toList()); |
| | | if (collect.size() == 1) { // 一箱 |
| | | if (wrkDetls.size() == 1) { // 一卷去贴标 |
| | | flag = 1; |
| | | } else { // 多卷直接出 |
| | | |
| | | } |
| | | } else if(collect.size() == 2) { // 两箱去贴标打带 |
| | | flag = 2; |
| | | } |
| | | } |
| | | return flag; |
| | | } |
| | | |
| | | @Transactional |
| | | public void OutBoundCompleteReport(Order order) { |
| | | |