From c14c261181c9afb2e0d07c714e06c81a6417c8cd Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期四, 05 六月 2025 16:10:51 +0800 Subject: [PATCH] 对接mes物料信息 --- src/main/java/com/zy/asrs/controller/MatController.java | 101 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 97 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MatController.java b/src/main/java/com/zy/asrs/controller/MatController.java index 53e9135..51a04b9 100644 --- a/src/main/java/com/zy/asrs/controller/MatController.java +++ b/src/main/java/com/zy/asrs/controller/MatController.java @@ -2,6 +2,7 @@ import com.alibaba.excel.EasyExcel; import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; @@ -10,20 +11,21 @@ import com.core.annotations.ManagerAuth; import com.core.common.*; import com.core.exception.CoolException; -import com.zy.asrs.entity.Mat; -import com.zy.asrs.entity.MatPrint; -import com.zy.asrs.entity.OrderDetl; +import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.EmptyPlateOutParam; import com.zy.asrs.entity.result.KeyValueVo; +import com.zy.asrs.service.ApiLogService; import com.zy.asrs.service.MatService; import com.zy.asrs.utils.MatExcelListener; import com.zy.common.CodeRes; import com.zy.common.config.AdminInterceptor; import com.zy.common.entity.MatExcel; import com.zy.common.utils.BarcodeUtils; +import com.zy.common.utils.HttpHandler; import com.zy.common.utils.QrCode; import com.zy.common.web.BaseController; 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 org.springframework.web.multipart.MultipartFile; @@ -42,6 +44,12 @@ private MatService matService; @Autowired private SnowflakeIdWorker snowflakeIdWorker; + @Value("${mes.address.url}") + private String url; + @Value("${mes.address.cxaddress}") + private String cxaddress; + @Autowired + private ApiLogService apiLogService; @RequestMapping(value = "/mat/auto/matnr/auth") public R autoMatnr(){ @@ -80,7 +88,92 @@ @RequestMapping(value = "/mat/auth") @ManagerAuth public R find(@RequestParam("matnr") String matnr) { - return R.ok(matService.selectOne(new EntityWrapper<Mat>().eq("matnr", matnr))); + Mat mat = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", matnr)); + if(Cools.isEmpty(mat)){ + LinkedHashMap<String,Object> map = new LinkedHashMap<>(); + LinkedHashMap<String,Object> YongHuCanShu=new LinkedHashMap<>(); + YongHuCanShu.put("QianMingId",""); + map.put("YongHuCanShu",YongHuCanShu); + LinkedHashMap<String,Object> QiTaCanShu=new LinkedHashMap<>(); + QiTaCanShu.put("GnBm","bopp_TM302D12"); + QiTaCanShu.put("pagesize",50); + QiTaCanShu.put("pageindex",1); + QiTaCanShu.put("Operation","1"); + + List<LinkedHashMap<String,Object>> XhJiHes=new ArrayList<>(); + LinkedHashMap<String,Object> XhJiHe=new LinkedHashMap<>(); + XhJiHe.put("Xh1","1"); + XhJiHe.put("Xh2",2); + XhJiHes.add(XhJiHe); + QiTaCanShu.put("XhJiHe",XhJiHes); + QiTaCanShu.put("鏉′欢涓�"," and t1.tm_xj like ##"+"%"+matnr+"%"+"##"); + map.put("QiTaCanShu",QiTaCanShu); + + + HashMap<String,Object>hashMap=new HashMap<String,Object>(); + hashMap.put("Quanjucanshu","%7B%22XiTongCanShu%22%3A%7B%22xt_id%22%3A%2230077%22%2C%22xt_bm%22%3A%22undefined%22%2C%22xt_yhid%22%3A%22156%22%2C%22xt_yhms%22%3A%22%E7%B3%BB%E7%BB%9F%E7%AE%A1%E7%90%86%E5%91%98%22%2C%22xt_yhbm%22%3A%22admin%22%2C%22xt_qyms%22%3A%221%22%2C%22xt_qyjc%22%3A%221%22%2C%22xt_jsms%22%3A%22%E7%AE%A1%E7%90%86%E5%91%98%22%2C%22xt_yuyan%22%3A%22%22%7D%2C%22NeiBuCanShu%22%3A%7B%7D%7D"); + + String jsonString = JSON.toJSONString(map); + HashMap<String,Object>CanShuJi=new HashMap<String,Object>(); + CanShuJi.put("CanShuJi",jsonString); + System.out.println(JSON.toJSONString(CanShuJi)); + String response = ""; + boolean success = false; + try { + response = new HttpHandler.Builder() + .setHeaders(hashMap) + .setUri(url) + .setPath(cxaddress) + .setParams(CanShuJi) + .build() + .doPost(); + JSONObject jsonObject = JSON.parseObject(response); + if (jsonObject.getString("BianHao").equals("0000")) { + Object jieGuo = jsonObject.get("JieGuo"); + JSONObject jsonString1 = JSON.parseObject(jieGuo.toString()); + JSONObject jsonString2 = JSON.parseObject(jsonString1.get("peizhidingyicanshu").toString()); + JSONArray sqlyujujg = JSON.parseArray(jsonString2.get("sqlyujujg").toString()); + JSONObject jsonString3 = JSON.parseObject(sqlyujujg.get(0).toString()); + //娣诲姞鐗╂枡妗f + Mat mat1=new Mat(); + mat1.setMatnr(jsonString3.getString("鐢熶骇鎵瑰彿")); + mat1.setMaktx(jsonString3.getString("浜у搧鍚嶇О")); + mat1.setSpecs(jsonString3.getString("浜у搧瑙勬牸")); + mat1.setUnit(jsonString3.getString("鍗曚綅")); + mat1.setModel(jsonString3.getString("鍒跺崟浜�")); + mat1.setColor(jsonString3.getString("鐘舵��")); + mat1.setPrice(jsonString3.getDouble("鐢熶骇鏁伴噺")); + mat1.setSku(jsonString3.getString("鐢熶骇鎵瑰彿")); + mat1.setOrigin(jsonString3.getString("鑳堕噺")); + mat1.setBarcode(jsonString3.getString("鏉$爜")); + mat1.setManu(jsonString3.getString("璐ㄩ噺鐘舵��")); + matService.insert(mat1); + mat=mat1; + success=true; + + } else { + throw new CoolException("wms璇锋眰mes鏌ヨ鐗╂枡淇℃伅澶辫触"); + } + } catch (Exception e) { + return R.error(e.getMessage()); + } finally { + try { + // 淇濆瓨鎺ュ彛鏃ュ織 + apiLogService.save( + "wms璇锋眰mes鏌ヨ鐗╂枡淇℃伅", + url+"/"+cxaddress, + null, + "127.0.0.1", + JSON.toJSONString(map), + response, + success + ); + } catch (Exception e) { + R.error(e.toString()); + } + } + } + return R.ok(mat); } @RequestMapping(value = "/mat/list/auth") -- Gitblit v1.9.1