Przeglądaj źródła

1.改动凯和-内贸业务-我的订单,相关提货单发起逻辑

nzf 3 lat temu
rodzic
commit
e45374eb9f

+ 1 - 1
ruoyi-shipping/src/main/java/com/ruoyi/shipping/domain/ShipperDataVo.java

@@ -109,5 +109,5 @@ public class ShipperDataVo {
     /** 拼箱类型(0: 整箱,1:拼箱) Y */
     private String lclType;
     /** 箱子列表 */
-    private List<ShipperContList> contList;
+    private List<ShipperContList> contlist;
 }

+ 144 - 117
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehouseBillsServiceImpl.java

@@ -495,40 +495,40 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                     li.put("fBillstatus", WarehouseTypeEnum.fromTypeAndBusinessType(li.get("fBillstatus").toString(), "storageStatus").getName());
                 });
             }
-            for (Map<String,Object> map : mapList) {
+            for (Map<String, Object> map : mapList) {
                 // 获取该数据创建人
                 String createBy = (String) map.get("createBy");
                 // 获取当前登录人用户名
                 String userName = user.getUser().getUserName();
                 // 如果当前登录者是超级管理员
                 if ("admin".equals(userName)) {
-                    map.put("isCreate",0);// 设置状态为 0
+                    map.put("isCreate", 0);// 设置状态为 0
                 } else { // 非超级管理员
                     // 比对,如果当前数据发布者与登录人一致
                     if (userName.equals(createBy)) {
-                        map.put("isCreate",1);// 状态设为 1
+                        map.put("isCreate", 1);// 状态设为 1
                     } else { // 不一致,则为 2
-                        map.put("isCreate",2);
+                        map.put("isCreate", 2);
                     }
                 }
             }
             return mapList;
         } else if (tWarehousebills.getfBilltype().equals(WarehouseTypeEnum.HQZY.getType())) {
-            List<Map<String,Object>> list = tWarehouseBillsMapper.selectWarehouseBusinessList1(tWarehousebills);
-            for (Map<String,Object> map : list) {
+            List<Map<String, Object>> list = tWarehouseBillsMapper.selectWarehouseBusinessList1(tWarehousebills);
+            for (Map<String, Object> map : list) {
                 // 获取该数据创建人
                 String createBy = (String) map.get("createBy");
                 // 获取当前登录人用户名
                 String userName = user.getUser().getUserName();
                 // 如果当前登录者是超级管理员
                 if ("admin".equals(userName)) {
-                    map.put("isCreate",0);// 设置状态为 0
+                    map.put("isCreate", 0);// 设置状态为 0
                 } else { // 非超级管理员
                     // 比对,如果当前数据发布者与登录人一致
                     if (userName.equals(createBy)) {
-                        map.put("isCreate",1);// 状态设为 1
+                        map.put("isCreate", 1);// 状态设为 1
                     } else { // 不一致,则为 2
-                        map.put("isCreate",2);
+                        map.put("isCreate", 2);
                     }
                 }
             }
@@ -543,13 +543,13 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                 String userName = user.getUser().getUserName();
                 // 如果当前登录者是超级管理员
                 if ("admin".equals(userName)) {
-                    billsMap.put("isCreate",0);// 设置状态为 0
+                    billsMap.put("isCreate", 0);// 设置状态为 0
                 } else { // 非超级管理员
                     // 比对,如果当前数据发布者与登录人一致
                     if (userName.equals(createBy)) {
-                        billsMap.put("isCreate",1);// 状态设为 1
+                        billsMap.put("isCreate", 1);// 状态设为 1
                     } else { // 不一致,则为 2
-                        billsMap.put("isCreate",2);
+                        billsMap.put("isCreate", 2);
                     }
                 }
                 // 查询箱型、箱量表
@@ -2969,102 +2969,122 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
 
     @Override
     public AjaxResult ruoYiVersionOrderListNew(TWarehouseBills tWarehouseBills) {
-        List<Map<String,Object>> result = tWarehouseBillsMapper.ruoYiVersionOrderList(tWarehouseBills);
+        List<Map<String, Object>> result = tWarehouseBillsMapper.ruoYiVersionOrderList(tWarehouseBills);
         List<ShipperDataVo> list = new ArrayList<>();
-        for (Map<String,Object> map : result) {
-            // 新建实体
-            ShipperDataVo dataVo = new ShipperDataVo();
-            dataVo.setBillOfLadingNo((String) map.get("fBillno"));
-            dataVo.setOrderEnterprise((String) map.get("corpName"));
-            dataVo.setOrderEnterpriseNo("91370220334191898X");
-            dataVo.setConsignee((String) map.get("fConsigneername"));
-            dataVo.setConsigneeAddress((String) map.get("fConsigneername"));
-            dataVo.setConsigneePersonPhone((String) map.get("fConsigneetel"));
-            dataVo.setBillTime(StringUtils.nowTimeStr(map.get("createTime")));
-            dataVo.setShipAgent("青岛凯和志成");
-            dataVo.setShipAgentNo("BH1234678767");
-            dataVo.setSendEnterprise("青岛凯和志成");
-            dataVo.setSendType("2");
-            dataVo.setSwitchBillPerson("OP");
-            dataVo.setDeliveryClause((String) map.get("fServiceitems"));
-            //dataVo.setContractNo("HT2345678");
-            //dataVo.setBillType("A");
-            //dataVo.setOceanFreight("到付海运费");
-            //dataVo.setCurrency("币种");
-            dataVo.setShipCompany("青岛凯和志成");
-            dataVo.setXsgsm("GSM001");
-            dataVo.setImportZone("进口关区");
-            dataVo.setFirstTrans("第一程运输");
-            dataVo.setTradeFlag("N");
-            dataVo.setMtdm("QQCTN");
-            dataVo.setLoadingPort((String) map.get("loadportName"));
-            dataVo.setDischargePort((String) map.get("destportName"));
-            //dataVo.setDestination("目的地");
-            //dataVo.setDischargePlace("卸货地点");
-            dataVo.setArrivalDatetime((String) map.get("fEta"));
-            dataVo.setBillMark((String) map.get("fMarks"));
-            //dataVo.setVesselNameCn("中文船名");
-            dataVo.setVesselNameEn("KaiHeZhinCheng");
-            dataVo.setVoyageNumber((String) map.get("fVoyTwoName"));
-            dataVo.setImo("IMO001");
-            dataVo.setMtdm("TDH2345678");
-            dataVo.setMtVesselCode("QD22334455");
-            dataVo.setMtVoyageNumber("HC12345678");
-            dataVo.setGoodsName((String) map.get("goodsName"));
-            dataVo.setPackages("12");
-            dataVo.setPackagesUnit("吨");
-            dataVo.setWeight("12.3");
-            dataVo.setWeightUnit("吨");
-            dataVo.setVolume("23.1");
-            dataVo.setVolumeUnit("体积单位");
-            //dataVo.setTransferRemark("备注(换单备注)");
-            dataVo.setConDescribe((String) map.get("fNo"));
-            dataVo.setLclType("0");
-            List<ShipperContList> contLists = new ArrayList<>();
-
-            //配箱信息
-            TWarehousebillsCntritems warehousebillsCntritems = new TWarehousebillsCntritems();
-            warehousebillsCntritems.setfPid(Long.valueOf(map.get("fId").toString()));
-            List<TWarehousebillsCntritems> tWarehousebillsCntritems = tWarehousebillsCntritemsMapper.selectTWarehousebillsCntritemsList(warehousebillsCntritems);
-            if (CollectionUtils.isNotEmpty(tWarehousebillsCntritems)) {
-                for (TWarehousebillsCntritems cntritems : tWarehousebillsCntritems) {
-                    ShipperContList contList = new ShipperContList();
-                    contList.setContainerNo(cntritems.getfCntrno());
-                    contList.setContainerType(cntritems.getfCntrid().toString());
-                    contList.setContainerSize(cntritems.getfPackageid());
-                    contList.setSealno(cntritems.getfSealno());
-                    //contList.setConPackages("12");
-                    //contList.setConWeight("1.2");
-                    //contList.setConVolume("21");
-                    contList.setLclType("0");
-                    contLists.add(contList);
-                }
-            }
-            dataVo.setContList(contLists);
-            // list.add(dataVo);
-            String json = JSONObject.toJSONString(dataVo);
-            System.err.println("json:" + json);
-            //String jsonStr = JSONObject.toJSONString(dataVo);
-            // 请求路径 (测试)
-            // String postUrl = "https://api.qingdao-port.net/container/web/eir/edo/shipagent/insertEdo.do";
-            String postUrl = "https://api.qingdao-port.net/container/web/eir/edo/shipagent/insertEdo.do";
-            // 请求路径 (正式)
-            //String postUrl = "https://api.qingdao-port.net/container/web/wlds_eir/edo/shipagent/insertEdo.do";
-            // 请求参数
-            Map<String,String> params = new HashMap<>();
-            params.put("customerCode","A00001");
-            params.put("sign","abcdef");
-            params.put("reqTime",StringUtils.nowTimeStr());
-            params.put("data",json);
-            System.err.println(params);
-            TResponseVo responseVo = sendPostRequest(postUrl,params);
-            System.err.println(responseVo);
-            if (!responseVo.isSuccess()) {
-                return AjaxResult.error(responseVo.getMessage().get("msg"));
-            } else {
-                return AjaxResult.success(responseVo.getMessage().get("msg"));
+        try {
+            for (Map<String, Object> map : result) {
+                // 新建实体
+                ShipperDataVo dataVo = new ShipperDataVo();
+                dataVo.setBillOfLadingNo((String) map.get("fBillno") + "12345");
+                dataVo.setOrderEnterprise((String) map.get("corpName"));
+                dataVo.setOrderEnterpriseNo("91370220334191898X");
+                dataVo.setConsignee((String) map.get("fConsigneername"));
+                dataVo.setConsigneeAddress((String) map.get("fConsigneername"));
+                dataVo.setConsigneePersonPhone((String) map.get("fConsigneetel"));
+                dataVo.setContEnterprise("青岛凯和志成");
+                dataVo.setContEnterpriseNo("91370220334191898X");
+                dataVo.setBillTime(StringUtils.nowTimeStr(map.get("createTime")));
+                dataVo.setShipAgent("青岛凯和志成");
+                dataVo.setShipAgentNo("91370220334191898X");
+                dataVo.setSendEnterprise("青岛凯和志成");
+                dataVo.setSendType("2");
+                dataVo.setSwitchBillPerson("OP");
+                dataVo.setDeliveryClause((String) map.get("fServiceitems"));
+                dataVo.setContractNo("");
+                dataVo.setBillType("");
+                dataVo.setBillType("");
+                dataVo.setOceanFreight("");
+                dataVo.setCurrency("");
+                dataVo.setShipCompany("青岛凯和志成");
+                dataVo.setXsgsm("HXC");
+                dataVo.setImportZone("");
+                dataVo.setFirstTrans("");
+                dataVo.setTradeFlag("N");
+                dataVo.setMtdm("QQCTN");
+                dataVo.setLoadingPort((String) map.get("loadportName"));
+                dataVo.setDischargePort((String) map.get("destportName"));
+                dataVo.setDestination("");
+                dataVo.setDischargePlace("");
+                dataVo.setArrivalDatetime("2022-04-28 15:36:23");
+                dataVo.setBillMark("N/M");
+                dataVo.setVesselNameCn("KaiHeZhinCheng");
+                dataVo.setVesselNameEn("KaiHeZhinCheng");
+                dataVo.setVoyageNumber("2206N");
+                dataVo.setImo("NM");
+                //dataVo.setMtdm("TDH2345678");
+                //dataVo.setMtVesselCode("QD22334455");
+                //dataVo.setMtVoyageNumber("HC12345678");
+                dataVo.setGoodsName((String) map.get("goodsName"));
+                dataVo.setPackages("12");
+                dataVo.setPackagesUnit("吨");
+                dataVo.setWeight("12.3");
+                dataVo.setWeightUnit("KG");
+                dataVo.setVolume("23.1");
+                dataVo.setVolumeUnit("CBM");
+                dataVo.setTransferRemark("");
+                dataVo.setConDescribe((String) map.get("fNo"));
+                dataVo.setLclType("0");
+                List<ShipperContList> contLists = new ArrayList<>();
+                //配箱信息
+                TWarehousebillsCntritems warehousebillsCntritems = new TWarehousebillsCntritems();
+                warehousebillsCntritems.setfPid(Long.valueOf(map.get("fId").toString()));
+                List<TWarehousebillsCntritems> tWarehousebillsCntritems = tWarehousebillsCntritemsMapper.selectTWarehousebillsCntritemsList(warehousebillsCntritems);
+                if (CollectionUtils.isNotEmpty(tWarehousebillsCntritems)) {
+                    for (TWarehousebillsCntritems cntritems : tWarehousebillsCntritems) {
+                        ShipperContList contList = new ShipperContList();
+                        if (StringUtils.isNotNull(cntritems.getfCntrno())) {
+                            contList.setContainerNo(cntritems.getfCntrno());
+                        } else {
+                            contList.setContainerNo("LYGU7004588");
+                        }
+                        if (StringUtils.isNotNull(cntritems.getfCntrid())) {
+                            contList.setContainerType(cntritems.getfCntrid().toString());
+                        } else {
+                            contList.setContainerType("HC");
+                        }
+                        if (StringUtils.isNotNull(cntritems.getfPackageid())) {
+                            contList.setContainerSize(cntritems.getfPackageid());
+                        } else {
+                            contList.setContainerSize("40");
+                        }
+                        if (StringUtils.isNotNull(cntritems.getfSealno())) {
+                            contList.setSealno(cntritems.getfSealno());
+                        } else {
+                            contList.setSealno("CR303985");
+                        }
+                        contList.setConPackages("");
+                        contList.setConWeight("");
+                        contList.setConVolume("");
+                        contList.setLclType("0");
+                        contLists.add(contList);
+                    }
+                }
+                dataVo.setContlist(contLists);
+                // list.add(dataVo);
+                String json = JSONObject.toJSONString(dataVo);
+                //String jsonStr = JSONObject.toJSONString(dataVo);
+                // 请求路径 (测试)
+                String postUrl = "https://api.qingdao-port.net/container/web/eir/edo/shipagent/insertEdo.do";
+                // 请求路径 (正式)
+                //String postUrl = "https://api.qingdao-port.net/container/web/wlds_eir/edo/shipagent/insertEdo.do";
+                // 请求参数
+                MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
+                params.add("customerCode", "A00001");
+                params.add("sign", "abcdef");
+                params.add("reqTime", StringUtils.nowTimeStr());
+                params.add("data", json);
+                TResponseVo responseVo = sendPostRequest(postUrl, params);
+                Thread.sleep(2000);
+                System.err.println(responseVo);
+                if (!responseVo.isSuccess()) {
+                    throw new WarehouseException(responseVo.getMessage().get("msg"));
+                }
             }
+        } catch (Exception e) {
+            e.printStackTrace();
+            return AjaxResult.error(e.getMessage());
         }
+
         // String json = JSONObject.toJSONString(list);
         return AjaxResult.success("成功");
     }
@@ -3075,14 +3095,21 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
      * @param params 发送的参数
      * @return ResponseVo
      */
-    public static TResponseVo sendPostRequest(String url, Map<String,String> params) {
+    /**
+     * 向目的 URL 发送 post 请求
+     *
+     * @param url 目的 url
+     * @param map 发送的参数
+     * @return ResponseVo
+     */
+    public static TResponseVo sendPostRequest(String url, MultiValueMap<String, String> map) {
         RestTemplate client = new RestTemplate();
         HttpHeaders headers = new HttpHeaders();
         HttpMethod method = HttpMethod.POST;
         // 以表单的方式提交
-        headers.setContentType(MediaType.APPLICATION_JSON);
+        headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
         // 将请求头部和参数合成一个请求
-        HttpEntity<Map<String,String>> requestEntity = new HttpEntity<>(params,headers);
+        HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<>(map, headers);
         // 执行 HTTP 请求,将返回的结构使用 ResponseVo 类格式化
         ResponseEntity<TResponseVo> response = client.exchange(url, method, requestEntity, TResponseVo.class);
         return response.getBody();
@@ -7820,13 +7847,13 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         if (CollectionUtils.isNotEmpty(WarehousebillsfeesList)) {
             //修改原单费用
             for (TWarehousebillsfees tWarehousebillsfees : WarehousebillsfeesList) {
-               if (tWarehousebillsfees.getfBillstatus().longValue() <=2L){
-                   tWarehousebillsfees.setUpdateBy(SecurityUtils.getUsername());
-                   tWarehousebillsfees.setUpdateTime(new Date());
-                   tWarehousebillsfees.setfQty(tWarehousebillsfees.getfQty().subtract(new BigDecimal(wareHouseBillsCnTr.getfCntrcount())));
-                   tWarehousebillsfees.setfAmount(tWarehousebillsfees.getfQty().multiply(tWarehousebillsfees.getfUnitprice()));
-                   tWarehousebillsfeesMapper.updateTWarehousebillsfees(tWarehousebillsfees);
-               }
+                if (tWarehousebillsfees.getfBillstatus().longValue() <= 2L) {
+                    tWarehousebillsfees.setUpdateBy(SecurityUtils.getUsername());
+                    tWarehousebillsfees.setUpdateTime(new Date());
+                    tWarehousebillsfees.setfQty(tWarehousebillsfees.getfQty().subtract(new BigDecimal(wareHouseBillsCnTr.getfCntrcount())));
+                    tWarehousebillsfees.setfAmount(tWarehousebillsfees.getfQty().multiply(tWarehousebillsfees.getfUnitprice()));
+                    tWarehousebillsfeesMapper.updateTWarehousebillsfees(tWarehousebillsfees);
+                }
             }
             //应收费用
             List<TWarehousebillsfees> fd = tWarehousebillsfeesMapper.selectFeesByPId(selectOne.getfId(), "D");
@@ -9042,11 +9069,11 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
     @Override
     public AjaxResult turnVoyage(TWarehouseBills tWarehouseBills, LoginUser loginUser) {
         TVoyage voyage = tVoyageMapper.selectTVoyageByFid(tWarehouseBills.getfVoyid());
-        if (voyage == null){
+        if (voyage == null) {
             throw new RuntimeException("未找到航次信息");
         }
         TVessel tVessel = tVesselMapper.selectTVesselById(tWarehouseBills.getfVslid());
-        if (tVessel == null){
+        if (tVessel == null) {
             throw new RuntimeException("未找到船信息");
         }
         for (Long aLong : tWarehouseBills.getOrderList()) {