| | |
| | | package com.zy.asrs.controller; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.mapper.Wrapper; |
| | |
| | | import com.zy.asrs.entity.param.CombParam; |
| | | import com.zy.asrs.entity.param.MobileAdjustParam; |
| | | import com.zy.asrs.entity.param.OffSaleParam; |
| | | import com.zy.asrs.entity.param.RCSParam; |
| | | import com.zy.asrs.entity.result.MobileAdjustResult; |
| | | import com.zy.asrs.mapper.ManLocDetlMapper; |
| | | import com.zy.asrs.service.*; |
| | | import com.zy.asrs.task.WorkMastScheduler; |
| | | import com.zy.common.model.LocDto; |
| | | import com.zy.common.model.TaskDto; |
| | | import com.zy.common.model.WrkDto; |
| | | import com.zy.common.model.enums.WorkNoType; |
| | | import com.zy.common.service.CommonService; |
| | | import com.zy.common.utils.HttpHandler; |
| | | import com.zy.common.web.BaseController; |
| | | 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.transaction.annotation.Transactional; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.xml.crypto.Data; |
| | | import java.time.LocalDateTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.*; |
| | | |
| | | import static jdk.nashorn.internal.runtime.regexp.joni.Config.log; |
| | | |
| | | /** |
| | | * 移动端接口控制器 |
| | |
| | | @RestController |
| | | @RequestMapping("mobile") |
| | | public class MobileController extends BaseController { |
| | | private static final Logger log = LoggerFactory.getLogger(WorkMastScheduler.class); |
| | | |
| | | @Autowired |
| | | private MobileService mobileService; |
| | |
| | | private CommonService commonService; |
| | | @Autowired |
| | | private StaDescService staDescService; |
| | | @Autowired |
| | | private ApiLogService apiLogService; |
| | | @Value("${rcs.address.url}") |
| | | private String url; |
| | | @Value("${rcs.address.attrcs}") |
| | | private String attrcs; |
| | | |
| | | |
| | | // 商品上架 |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * agv扫描源站点显示目标站点 |
| | | * @param locNo |
| | | * @return |
| | | */ |
| | | @RequestMapping("/AGVSite") |
| | | public R AGVSite(@RequestParam(required = false) String locNo){ |
| | | HashMap<Integer,String> map=new HashMap<>(); |
| | | map.put(100,"100-入库口"); |
| | | map.put(1001,"1000-补空板口"); |
| | | map.put(2001,"2001-出库口1"); |
| | | map.put(2002,"2002-出库口2"); |
| | | map.put(3001,"3001-作业口1"); |
| | | map.put(3002,"3002-作业口2"); |
| | | map.put(4001,"4001-不合格"); |
| | | map.remove(Integer.parseInt(locNo)); |
| | | return R.ok(map); |
| | | } |
| | | |
| | | /** |
| | | * 执行移库任务 |
| | | * @param sourceStaNo |
| | | * @param staNo |
| | | * @return |
| | | */ |
| | | @RequestMapping("/AGVMove") |
| | | public R AGVMove(@RequestParam(required = false) String sourceStaNo |
| | | ,@RequestParam(required = false) String staNo){ |
| | | LocalDateTime now = LocalDateTime.now(); |
| | | String noww=new Date().getTime()+""; |
| | | DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); |
| | | String formattedDate = now.format(formatter); // 格式化日期时间 |
| | | |
| | | LinkedHashMap<String,Object> rcsParam=new LinkedHashMap<>(); |
| | | rcsParam.put("task_id",noww); |
| | | rcsParam.put("start_location",sourceStaNo); |
| | | rcsParam.put("start_site_level",1); |
| | | rcsParam.put("start_command",1); |
| | | rcsParam.put("target_location",staNo); |
| | | rcsParam.put("target_site_level",1); |
| | | rcsParam.put("target_command",2); |
| | | rcsParam.put("priority",1); |
| | | rcsParam.put("robot_type",3);//车 辆 类 型 0:XC 1:XCD 2:XP_T 3:XP_L |
| | | rcsParam.put("MoverID","XS1"); |
| | | |
| | | LinkedHashMap<String,Object> map=new LinkedHashMap<>(); |
| | | map.put("data",rcsParam); |
| | | String response =""; |
| | | Boolean bool =false; |
| | | String msg = ""; |
| | | |
| | | try { |
| | | log.info("wms派发搬运任务给AGV搬运={}", rcsParam); |
| | | response = new HttpHandler.Builder() |
| | | // .setHeaders(headParam) |
| | | .setUri(url) |
| | | .setPath(attrcs) |
| | | .setJson(JSON.toJSONString(map)) |
| | | .build() |
| | | .doPost(); |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | JSONObject data = jsonObject.getJSONObject("data"); |
| | | JSONObject errInfo = jsonObject.getJSONObject("err_info"); |
| | | if(data.getInteger("result")==0){ |
| | | bool = true; |
| | | }else{ |
| | | msg=errInfo.getString("err_msg"); |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("wms派发搬运任务给AGV搬运失败返回值={}", response); |
| | | } finally { |
| | | apiLogService.save("wms派发搬运任务给AGV搬运" |
| | | , url + attrcs |
| | | , null |
| | | , "127.0.0.1" |
| | | , JSON.toJSONString(map) |
| | | , response |
| | | , bool |
| | | ); |
| | | } |
| | | if(bool){ |
| | | return R.ok(); |
| | | }else { |
| | | return R.error(msg); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | // 根据库位码和商品码搜索商品 |
| | | @RequestMapping("/mat/find/auth") |
| | | public R find(@RequestParam(required = false) String locNo |