diff --git a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/MoInfo.java b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/MoInfo.java index 4df9abc..fe86680 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/MoInfo.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/MoInfo.java @@ -26,5 +26,5 @@ public class MoInfo { int pageSize; @ApiModelProperty(value = "参数") - Params params; + MoParams params; } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/MoParams.java b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/MoParams.java new file mode 100644 index 0000000..59659d4 --- /dev/null +++ b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/MoParams.java @@ -0,0 +1,38 @@ +package com.youchain.businessdata.inputJson; + +import io.swagger.annotations.ApiModelProperty; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.Set; +@Data +public class MoParams { + @ApiModelProperty(value = "库存组织id") + @Schema(example = "100059") + int orgId; + + @ApiModelProperty(value = "子库编码") + @Schema(example = "[\"MA2111\"]") + Set invCodes; + + + @ApiModelProperty(value = "开始时间") + @Schema(example = "2023-07-03 00:00:00") + String startTime; + + @ApiModelProperty(value = "结束时间") + @Schema(example = "2023-07-03 23:59:59") + String endTime; + + public MoParams() { + + } + + public MoParams(int orgId, Set invCodes, String startTime, String endTime) { + this.orgId = orgId; + this.invCodes = invCodes; + this.startTime = startTime; + this.endTime = endTime; + } + +} diff --git a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/OrderInfo.java b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/OrderInfo.java index 8f3fa90..0d81c7e 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/OrderInfo.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/OrderInfo.java @@ -1,9 +1,7 @@ package com.youchain.businessdata.inputJson; import io.swagger.annotations.ApiModelProperty; -import io.swagger.annotations.ApiParam; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Builder; import lombok.Data; /** @@ -20,13 +18,13 @@ public class OrderInfo { String sourceSystem; @ApiModelProperty(value = "参数") - Params params; + OrderParams params; public OrderInfo() { } - public OrderInfo(String ifaceCode, String sourceSystem, Params params) { + public OrderInfo(String ifaceCode, String sourceSystem, OrderParams params) { this.ifaceCode = ifaceCode; this.sourceSystem = sourceSystem; this.params = params; diff --git a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/Params.java b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/OrderParams.java similarity index 82% rename from youchain-system/src/main/java/com/youchain/businessdata/inputJson/Params.java rename to youchain-system/src/main/java/com/youchain/businessdata/inputJson/OrderParams.java index fe3f9ed..20ac3fd 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/Params.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/OrderParams.java @@ -2,19 +2,18 @@ package com.youchain.businessdata.inputJson; import io.swagger.annotations.ApiModelProperty; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Builder; import lombok.Data; import java.util.Set; @Data -public class Params { +public class OrderParams { @ApiModelProperty(value = "库存组织id") @Schema(example = "100059") int orgId; @ApiModelProperty(value = "子库编码") - @Schema(example = "[\"MA1181\", \"MA1181\"]") + @Schema(example = "[\"MA2111\"]") Set invCodes; @ApiModelProperty(value = "检验结果") @@ -36,11 +35,11 @@ public class Params { @Schema(example = "100") int pageSize; - public Params(){ + public OrderParams(){ } - public Params(int orgId, Set invCodes, String iqcResult, String startTime, String endTime,int pageNo,int pageSize) { + public OrderParams(int orgId, Set invCodes, String iqcResult, String startTime, String endTime, int pageNo, int pageSize) { this.orgId = orgId; this.invCodes = invCodes; this.iqcResult = iqcResult; diff --git a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnIssueInfo.java b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnIssueInfo.java new file mode 100644 index 0000000..5af2c52 --- /dev/null +++ b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnIssueInfo.java @@ -0,0 +1,24 @@ +package com.youchain.businessdata.inputJson; + +import io.swagger.annotations.ApiModelProperty; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +/** + * @author + * @date 2024/04/12 + */ +@Data +public class ReturnIssueInfo { + + @ApiModelProperty(value = "接口编码") + @Schema(example = "MLS-WQ-006") + String ifaceCode; + + @ApiModelProperty(value = "来源系统") + @Schema(example = "WQ") + String sourceSystem; + + @ApiModelProperty(value = "参数") + ReturnIssueInfoParams params; + +} diff --git a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnIssueInfoParams.java b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnIssueInfoParams.java new file mode 100644 index 0000000..ce2e75c --- /dev/null +++ b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnIssueInfoParams.java @@ -0,0 +1,31 @@ +package com.youchain.businessdata.inputJson; + +import io.swagger.annotations.ApiModelProperty; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.Set; + +@Data +public class ReturnIssueInfoParams { + @ApiModelProperty(value = "类型") + @Schema(example = "ISSUE") + String billType; + + @ApiModelProperty(value = "库存组织id") + @Schema(example = "100219") + int orgId; + + + @ApiModelProperty(value = "标签集合") + @Schema(example = "[\"DC0001\"]") + Set labelNos; + + @ApiModelProperty(value = "子库编码") + @Schema(example = "MC1311") + String invCode; + + @ApiModelProperty(value = "需求工单") + @Schema(example = "ZZ总部18210606021401") + String workOrderName; +} diff --git a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnMoInfo.java b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnMoInfo.java new file mode 100644 index 0000000..9d005e3 --- /dev/null +++ b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnMoInfo.java @@ -0,0 +1,25 @@ +package com.youchain.businessdata.inputJson; + +import io.swagger.annotations.ApiModelProperty; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +/** + * @author + * Description:回传MO信息入参 + * @date 2024/04/12 + */ +@Data +public class ReturnMoInfo { + @ApiModelProperty(value = "接口编码") + @Schema(example = "MLS-WQ-004") + String ifaceCode; + + @ApiModelProperty(value = "来源系统") + @Schema(example = "WQ") + String sourceSystem; + + @ApiModelProperty(value = "参数") + ReturnMoParams params; + + +} diff --git a/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnMoParams.java b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnMoParams.java new file mode 100644 index 0000000..6b5df0f --- /dev/null +++ b/youchain-system/src/main/java/com/youchain/businessdata/inputJson/ReturnMoParams.java @@ -0,0 +1,22 @@ +package com.youchain.businessdata.inputJson; + +import io.swagger.annotations.ApiModelProperty; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.Set; +@Data +public class ReturnMoParams { + + @ApiModelProperty(value = "库存组织id") + @Schema(example = "100059") + int orgId; + + @ApiModelProperty(value = "子库编码") + @Schema(example = "MC1311") + String invCode; + + @ApiModelProperty(value = "标签集合") + @Schema(example = "[\"DC220608000006\"]") + Set labelNos; +} diff --git a/youchain-system/src/main/java/com/youchain/businessdata/rest/MlsController.java b/youchain-system/src/main/java/com/youchain/businessdata/rest/MlsController.java index 5acf0b5..dad886b 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/rest/MlsController.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/rest/MlsController.java @@ -5,6 +5,8 @@ import com.youchain.annotation.Log; import com.youchain.appupdate.inputJson.MissionStateCallback; import com.youchain.businessdata.inputJson.MoInfo; import com.youchain.businessdata.inputJson.OrderInfo; +import com.youchain.businessdata.inputJson.ReturnIssueInfo; +import com.youchain.businessdata.inputJson.ReturnMoInfo; import com.youchain.businessdata.service.MlsService; import com.youchain.exception.handler.ApiResult; import io.swagger.annotations.Api; @@ -36,12 +38,18 @@ public class MlsController { @ApiOperation("获取送货单信息") @AnonymousAccess public ResponseEntity getOrderInfo(@RequestBody OrderInfo orderInfo) { - String resultJson = mlsService.getOrderJson(orderInfo); + String resultJson = ""; + try { + resultJson = mlsService.getOrderJson(orderInfo);//获取送货单JSON + } catch (Exception e) { + return new ResponseEntity<>(ApiResult.success(BAD_REQUEST.value(), e.getMessage(), ""), HttpStatus.BAD_REQUEST); + } + if (resultJson == null || resultJson.length() == 0) { return new ResponseEntity<>(ApiResult.success(BAD_REQUEST.value(), "接口异常!", ""), HttpStatus.BAD_REQUEST); } else { try { - mlsService.getOrderInfo(resultJson); + mlsService.getOrderInfo(resultJson);//获取送货单 return new ResponseEntity<>(ApiResult.success(OK.value(), "", resultJson), HttpStatus.OK); } catch (Exception e) { return new ResponseEntity<>(ApiResult.success(BAD_REQUEST.value(), e.getMessage(), ""), HttpStatus.BAD_REQUEST); @@ -52,15 +60,21 @@ public class MlsController { @PostMapping("/getMoInfo") @AnonymousAccess - @Log("获取Mo票信息") - @ApiOperation("获取Mo票信息") + @Log("获取MO票信息") + @ApiOperation("获取MO票信息") public ResponseEntity getMoInfo(@RequestBody MoInfo moInfo) { - String resultJson = mlsService.getMoJson(moInfo); + String resultJson = ""; + try { + resultJson = mlsService.getMoJson(moInfo);//获取Mo票JSON + } catch (Exception e) { + return new ResponseEntity<>(ApiResult.success(BAD_REQUEST.value(), e.getMessage(), ""), HttpStatus.BAD_REQUEST); + } + if (resultJson == null || resultJson.length() == 0) { return new ResponseEntity<>(ApiResult.success(BAD_REQUEST.value(), "接口异常!", ""), HttpStatus.BAD_REQUEST); } else { try { - mlsService.getMoInfo(resultJson); + mlsService.getMoInfo(resultJson);//获取Mo票 return new ResponseEntity<>(ApiResult.success(OK.value(), "", resultJson), HttpStatus.OK); } catch (Exception e) { return new ResponseEntity<>(ApiResult.success(BAD_REQUEST.value(), e.getMessage(), ""), HttpStatus.BAD_REQUEST); @@ -68,4 +82,31 @@ public class MlsController { } } + @PostMapping("/returnMo") + @AnonymousAccess + @Log("按MO票入库") + @ApiOperation("按MO票入库") + public ResponseEntity returnMo(@RequestBody ReturnMoInfo returnMoInfo) { + try { + String resultJson = mlsService.returnMo(returnMoInfo);//回传MO票J + return new ResponseEntity<>(ApiResult.success(OK.value(), "", resultJson), HttpStatus.OK); + } catch (Exception e) { + return new ResponseEntity<>(ApiResult.success(BAD_REQUEST.value(), e.getMessage(), ""), HttpStatus.BAD_REQUEST); + } + } + + @PostMapping("/returnIssue") + @AnonymousAccess + @Log("叫料结果回传") + @ApiOperation("叫料结果回传") + public ResponseEntity returnIssue(@RequestBody ReturnIssueInfo returnMoInfo) { + try { + String resultJson = mlsService.returnIssue(returnMoInfo);//叫料结果回传 + return new ResponseEntity<>(ApiResult.success(OK.value(), "", resultJson), HttpStatus.OK); + } catch (Exception e) { + return new ResponseEntity<>(ApiResult.success(BAD_REQUEST.value(), e.getMessage(), ""), HttpStatus.BAD_REQUEST); + } + } + + } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/MlsService.java b/youchain-system/src/main/java/com/youchain/businessdata/service/MlsService.java index bc188db..e767169 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/MlsService.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/MlsService.java @@ -3,6 +3,8 @@ package com.youchain.businessdata.service; import com.youchain.annotation.Log; import com.youchain.businessdata.inputJson.MoInfo; import com.youchain.businessdata.inputJson.OrderInfo; +import com.youchain.businessdata.inputJson.ReturnIssueInfo; +import com.youchain.businessdata.inputJson.ReturnMoInfo; import io.swagger.annotations.ApiOperation; /** @@ -10,6 +12,12 @@ import io.swagger.annotations.ApiOperation; */ public interface MlsService { + /** + * 获取ToKen + * @return + */ + String getToKen(); + /** * 获取送货单JSON * @return @@ -34,4 +42,16 @@ public interface MlsService { * @return */ void getMoInfo(String resultJson); + + /** + * 回传MO票 + * @return + */ + String returnMo(ReturnMoInfo returnMoInfo); + + /** + * 叫料结果回传 + * @return + */ + String returnIssue(ReturnIssueInfo returnIssueInfo); } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/MoService.java b/youchain-system/src/main/java/com/youchain/businessdata/service/MoService.java index 851d7f7..d4d2a6d 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/MoService.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/MoService.java @@ -54,6 +54,8 @@ public interface MoService { */ MoDto findById(Integer id); + MoDto findByLabelNo(String labelNo); + /** * 创建 * @param resources / @@ -80,4 +82,11 @@ public interface MoService { * @throws IOException / */ void download(List all, HttpServletResponse response) throws IOException; -} \ No newline at end of file + + /** + * 将MoDto转换为Entity对象的方法 + * @param moDto 要转换的对象 + * @return 转换后的对象 + */ + Mo toEntity(MoDto moDto); +} diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/OrderService.java b/youchain-system/src/main/java/com/youchain/businessdata/service/OrderService.java index 59efc2e..4ec9c4e 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/OrderService.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/OrderService.java @@ -15,7 +15,9 @@ */ package com.youchain.businessdata.service; +import com.youchain.businessdata.domain.Mo; import com.youchain.businessdata.domain.Order; +import com.youchain.businessdata.service.dto.MoDto; import com.youchain.businessdata.service.dto.OrderDto; import com.youchain.businessdata.service.dto.OrderQueryCriteria; import org.springframework.data.domain.Pageable; @@ -54,6 +56,13 @@ public interface OrderService { */ OrderDto findById(Integer id); + /** + * 根据barcodeNumber查询 + * @param barcodeNumber + * @return OrderDto + */ + OrderDto findByBarcodeNumber(String barcodeNumber); + /** * 创建 * @param resources / @@ -81,4 +90,12 @@ public interface OrderService { */ void download(List all, HttpServletResponse response) throws IOException; + /** + * 将MoDto转换为Entity对象的方法 + * @param orderDto 要转换的对象 + * @return 转换后的对象 + */ + Order toEntity(OrderDto orderDto); + + } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/ToKenService.java b/youchain-system/src/main/java/com/youchain/businessdata/service/ToKenService.java deleted file mode 100644 index 2f0bc97..0000000 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/ToKenService.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.youchain.businessdata.service; - -/** - * ToKen服务接口 - */ -public interface ToKenService { - /** - * 获取ToKen - * @return - */ - String getToKen(); -} diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/dto/MoQueryCriteria.java b/youchain-system/src/main/java/com/youchain/businessdata/service/dto/MoQueryCriteria.java index 6f02400..b8dc58a 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/dto/MoQueryCriteria.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/dto/MoQueryCriteria.java @@ -16,6 +16,8 @@ package com.youchain.businessdata.service.dto; import lombok.Data; + +import java.sql.Timestamp; import java.util.List; import com.youchain.annotation.Query; @@ -26,4 +28,25 @@ import com.youchain.annotation.Query; **/ @Data public class MoQueryCriteria{ -} \ No newline at end of file + + /** 关联Id */ + @Query(type = Query.Type.INNER_LIKE) + private String deliveryHeaderId; + + /** Mo票 */ + @Query(type = Query.Type.INNER_LIKE) + private String labelNo; + + @Query(joinName = "item", propName="code",type = Query.Type.INNER_LIKE) + private long itemCode; + + @Query(joinName = "item", propName="name",type = Query.Type.INNER_LIKE) + private long itemName; + + /** Mo状态 */ + @Query(type = Query.Type.EQUAL) + private String labelState; + + @Query(type = Query.Type.BETWEEN) + private List createTime; +} diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/dto/OrderQueryCriteria.java b/youchain-system/src/main/java/com/youchain/businessdata/service/dto/OrderQueryCriteria.java index 3ca488a..ee0d8ae 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/dto/OrderQueryCriteria.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/dto/OrderQueryCriteria.java @@ -28,6 +28,11 @@ import com.youchain.annotation.Query; **/ @Data public class OrderQueryCriteria{ + + /** 关联Id */ + @Query(type = Query.Type.INNER_LIKE) + private String deliveryHeaderId; + /** 送货单条码号 */ @Query(type = Query.Type.INNER_LIKE) private String barcodeNumber; diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/MlsServiceImpl.java b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/MlsServiceImpl.java index c489fac..3043f60 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/MlsServiceImpl.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/MlsServiceImpl.java @@ -6,38 +6,72 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.youchain.basicdata.domain.Item; import com.youchain.basicdata.service.ItemService; +import com.youchain.basicdata.service.dto.ItemDto; import com.youchain.businessdata.domain.Mo; import com.youchain.businessdata.domain.Order; import com.youchain.businessdata.inputJson.MoInfo; import com.youchain.businessdata.inputJson.OrderInfo; +import com.youchain.businessdata.inputJson.ReturnIssueInfo; +import com.youchain.businessdata.inputJson.ReturnMoInfo; import com.youchain.businessdata.service.MlsService; import com.youchain.businessdata.service.MoService; import com.youchain.businessdata.service.OrderService; -import com.youchain.businessdata.service.ToKenService; +import com.youchain.businessdata.service.dto.MoDto; +import com.youchain.businessdata.service.dto.OrderDto; import com.youchain.modules.system.domain.Dept; import com.youchain.modules.system.service.DeptService; import com.youchain.modules.system.service.dto.DeptDto; import com.youchain.utils.HttpPostUtil; +import com.youchain.utils.StringUtils; import com.youchain.utils.UrlApi; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import javax.persistence.EntityManager; -import javax.persistence.Query; import java.util.*; @Service @RequiredArgsConstructor @Slf4j public class MlsServiceImpl implements MlsService { - private final ToKenService toKenService; private final OrderService orderService; private final ItemService itemService; private final DeptService deptService; private final MoService moService; - private final EntityManager entityMapper; + + /** + * 获取Token + * + * @return + */ + @Override + public String getToKen() { + String toKen = ""; + String mlsUser = "WMS"; + String mlsPwd = "EDlsFOvn3xaJm*EH"; + JSONObject jsonObject = new JSONObject(new LinkedHashMap<>()); + Map objMap = new LinkedHashMap<>(); + objMap.put("mlsUser", mlsUser);//快码代码 + objMap.put("mlsPwd", mlsPwd);//快码值 + jsonObject.putAll(objMap); + String resultJson = HttpPostUtil.sendPostReq(UrlApi.extSignIn, jsonObject.toString());//返回ResponseJson*/ + JSONObject resulObject = JSON.parseObject(resultJson); + //判断接口是否成功 + if (resulObject == null) { + throw new RuntimeException("获取toKen接口返回数据为空!"); + } + + String code = resulObject.getString("code") == null ? "" : resulObject.getString("code"); + String msg = resulObject.getString("msg") == null ? "" : resulObject.getString("msg"); + + if ("0".equals(code)) { + toKen = resulObject.getString("data") == null ? "" : resulObject.getString("data"); + return toKen; + } else { + throw new RuntimeException("MLS异常信息:" + msg); + } + } /** * 获取送货单JSON @@ -52,8 +86,7 @@ public class MlsServiceImpl implements MlsService { objMap.put("sourceSystem", orderInfo.getSourceSystem());//来源系统 objMap.put("params", orderInfo.getParams()); jsonObject.putAll(objMap); - String resultJson = HttpPostUtil.sendPostReq(UrlApi.publicApi, jsonObject.toString(), toKenService.getToKen());//返回ResponseJson*/ - return resultJson; + return HttpPostUtil.sendPostReq(UrlApi.publicApi, jsonObject.toString(), this.getToKen());//返回ResponseJson*/ } /** @@ -64,73 +97,88 @@ public class MlsServiceImpl implements MlsService { @Override @Transactional(rollbackFor = Exception.class) public synchronized void getOrderInfo(String resultJson) { - if (resultJson != null && resultJson.length() > 0) { - JSONObject resulObject = JSON.parseObject(resultJson); - String code = resulObject.getString("code") == null ? "" : resulObject.getString("code"); - String msg = resulObject.getString("msg") == null ? "" : resulObject.getString("msg"); - if ("0".equals(code)) { - String data = resulObject.getString("data") == null ? "" : resulObject.getString("data"); - JSONObject dataObject = JSON.parseObject(data); - JSONArray details = dataObject.getJSONArray("list"); - for (int i = 0; i < details.size(); i++) { - JSONObject detail = details.getJSONObject(i); - String barcodeNumber = detail.getString("barcodeNumber");//送货单条码号 - String isCreatedLabel = detail.getString("isCreatedLabel");//是否已生成标签N - String itemCode = detail.getString("itemCode");//物料编码 - String iqcResult = detail.getString("iqcResult");//检验结果(不合格:REJECT,合格:ACCEPT) - String supplierCode = detail.getString("supplierCode");//供应商编码 - //String dispatchNumber=detail.getString("dispatchNumber");//文档没有该字段 - String receivedLocationName = detail.getString("receivedLocationName");//LMES货位名称 - String receivedInvCode = detail.getString("receivedInvCode");//LMES接收子库编码 - //Integer deliveryNotifyLineId = detail.getInteger("deliveryNotifyLineId");//送货通知单行ID - String deliveryNumber = detail.getString("deliveryNumber");//送货单号 - String receivedAreaCode = detail.getString("receivedAreaCode");//LMES接收货区编码 - String supplierName = detail.getString("supplierName");//供应商名称 - String isIqcInspected = detail.getString("isIqcInspected");//Y-已检验N-未检验 - Double deliveryQty = detail.getDouble("deliveryQty");//计划数量 - //String deliveryType=detail.getString("deliveryType");//文档没有该字段 - String receivedLocationCode = detail.getString("receivedLocationCode");//LMES货位编码 - String mlsUpdateTime = detail.getString("updateTime");//更新时间 - String receivedInvName = detail.getString("receivedInvName");//LMES接收子库名称 - Double receivedQty = detail.getDouble("receivedQty");//实际接收数量 - //Integer deliveryLineId = detail.getInteger("deliveryLineId");//送货单行ID - String inInspector = detail.getString("inInspector");//检验员 - Integer deliveryHeaderId = detail.getInteger("deliveryHeaderId");//送货单头ID和003接口关联 - String receivedAreaName = detail.getString("receivedAreaName");//mls接收货区名称 - String deliveryStatus = detail.getString("deliveryStatus");//送货单状态 - - //直接接收已合格的送货单 - if ("Y".equals(isIqcInspected)) { - - String order_hql = " from Order order where order.barcodeNumber= :barcodeNumber "; - Query query = entityMapper.createQuery(order_hql); - query.setParameter("barcodeNumber", barcodeNumber); - List orderList = query.getResultList(); - if (orderList.size() > 0) { - //更新 - Order order = orderList.get(0); - order.setDeliveryStatus(deliveryStatus); - orderService.update(order); - } else { - //创建 - Order newOrder = new Order(deliveryHeaderId, null, null, - deliveryNumber, barcodeNumber, deliveryStatus, receivedInvCode, receivedInvName, - receivedAreaCode, receivedAreaName, receivedLocationCode, receivedLocationName, - itemCode, deliveryQty, inInspector, receivedQty, isIqcInspected, iqcResult, isCreatedLabel, - supplierCode, supplierName,mlsUpdateTime == null ? null : DateUtil.parse(mlsUpdateTime).toTimestamp() - ); - orderService.create(newOrder); - } - } - } - } else { - throw new RuntimeException("MLS异常信息:" + msg); - } - } else { + if (StringUtils.isEmpty(resultJson)) { throw new RuntimeException("获取送货单接口失败!"); } + + JSONObject resulObject = JSON.parseObject(resultJson); + String code = resulObject.getString("code") == null ? "" : resulObject.getString("code"); + String msg = resulObject.getString("msg") == null ? "" : resulObject.getString("msg"); + //判断接口是否成功 + if (!"0".equals(code)) { + throw new RuntimeException("获取送货单接口异常信息:" + msg); + } + + String data = resulObject.getString("data") == null ? "" : resulObject.getString("data"); + JSONObject dataObject = JSON.parseObject(data); + if (dataObject == null) { + throw new RuntimeException("获取送货单接口返回数据为空!"); + } + JSONArray details = dataObject.getJSONArray("list"); + //判断是否有送货单数据 + if (details == null || details.size() == 0) { + throw new RuntimeException("没有获取到送货单数据!"); + } + //循环处理每个送货单 + log.info("送货单数量:"+details.size()); + for (int i = 0; i < details.size(); i++) { + JSONObject detail = details.getJSONObject(i); + String barcodeNumber = detail.getString("barcodeNumber");//送货单条码号 + String isCreatedLabel = detail.getString("isCreatedLabel");//是否已生成标签N + String itemCode = detail.getString("itemCode");//物料编码 + String iqcResult = detail.getString("iqcResult");//检验结果(不合格:REJECT,合格:ACCEPT) + String supplierCode = detail.getString("supplierCode");//供应商编码 + //String dispatchNumber=detail.getString("dispatchNumber");//文档没有该字段 + String receivedLocationName = detail.getString("receivedLocationName");//LMES货位名称 + String receivedInvCode = detail.getString("receivedInvCode");//LMES接收子库编码 + //Integer deliveryNotifyLineId = detail.getInteger("deliveryNotifyLineId");//送货通知单行ID + String deliveryNumber = detail.getString("deliveryNumber");//送货单号 + String receivedAreaCode = detail.getString("receivedAreaCode");//LMES接收货区编码 + String supplierName = detail.getString("supplierName");//供应商名称 + String isIqcInspected = detail.getString("isIqcInspected");//Y-已检验N-未检验 + Double deliveryQty = detail.getDouble("deliveryQty");//计划数量 + //String deliveryType=detail.getString("deliveryType");//文档没有该字段 + String receivedLocationCode = detail.getString("receivedLocationCode");//LMES货位编码 + String mlsUpdateTime = detail.getString("updateTime");//更新时间 + String receivedInvName = detail.getString("receivedInvName");//LMES接收子库名称 + Double receivedQty = detail.getDouble("receivedQty");//实际接收数量 + //Integer deliveryLineId = detail.getInteger("deliveryLineId");//送货单行ID + String inInspector = detail.getString("inInspector");//检验员 + Integer deliveryHeaderId = detail.getInteger("deliveryHeaderId");//送货单头ID和003接口关联 + String receivedAreaName = detail.getString("receivedAreaName");//mls接收货区名称 + String deliveryStatus = detail.getString("deliveryStatus");//送货单状态 + + //直接接收已合格的送货单 + if ("Y".equals(isIqcInspected)) { + OrderDto orderdto = orderService.findByBarcodeNumber(barcodeNumber); + if (orderdto == null) { + //创建 + Order newOrder = new Order(deliveryHeaderId, null, null, + deliveryNumber, barcodeNumber, deliveryStatus, receivedInvCode, receivedInvName, + receivedAreaCode, receivedAreaName, receivedLocationCode, receivedLocationName, + itemCode, deliveryQty, inInspector, receivedQty, isIqcInspected, iqcResult, isCreatedLabel, + supplierCode, supplierName, mlsUpdateTime == null ? null : DateUtil.parse(mlsUpdateTime).toTimestamp() + ); + orderService.create(newOrder); + } else { + //更新 + Order order = orderService.toEntity(orderdto); + order.setDeliveryStatus(deliveryStatus); + orderService.update(order); + } + + + } + } + + } + /** + * 获取MO票JSON信息 + * + * @return + */ @Override public String getMoJson(MoInfo moInfo) { JSONObject jsonObject = new JSONObject(new LinkedHashMap<>()); @@ -139,8 +187,8 @@ public class MlsServiceImpl implements MlsService { objMap.put("sourceSystem", moInfo.getSourceSystem());//来源系统 objMap.put("params", moInfo.getParams()); jsonObject.putAll(objMap); - String resultJson = HttpPostUtil.sendPostReq(UrlApi.publicApi, jsonObject.toString(), toKenService.getToKen());//返回ResponseJson*/ - return resultJson; + return HttpPostUtil.sendPostReq(UrlApi.publicApi, jsonObject.toString(), this.getToKen()); + } /** @@ -151,90 +199,116 @@ public class MlsServiceImpl implements MlsService { @Override @Transactional(rollbackFor = Exception.class) public synchronized void getMoInfo(String resultJson) { - if (resultJson != null && resultJson.length() > 0) { - JSONObject resulObject = JSON.parseObject(resultJson); - String code = resulObject.getString("code") == null ? "" : resulObject.getString("code"); - String msg = resulObject.getString("msg") == null ? "" : resulObject.getString("msg"); - if ("0".equals(code)) { - String data = resulObject.getString("data") == null ? "" : resulObject.getString("data"); - JSONObject dataObject = JSON.parseObject(data); - JSONArray details = dataObject.getJSONArray("list"); - for (int i = 0; i < details.size(); i++) { - JSONObject detail = details.getJSONObject(i); - Integer selfWorkOrderId = detail.getInteger("selfWorkOrderId");//自制件工单id - String sourceSystem = detail.getString("sourceSystem");//来源系统 - String selfWorkOrderName = detail.getString("selfWorkOrderName");//自制件工单编号 - String itemCode = detail.getString("itemCode");//物料编码 - String labelType = detail.getString("labelType");//标签类型 - String goodsAreaCode = detail.getString("goodsAreaCode");//MLS货区 - String checkResult = detail.getString("checkResult");//检验状态 - String datetimeStockIn = detail.getString("datetimeStockin");//入库时间 - String deleteFlag = detail.getString("deleteFlag");//数据有效性;有效0,无效1 - String uom = detail.getString("uom");//单位 - String createUserCode = detail.getString("createUserCode");//创建人 - String mlsUpdateTime = detail.getString("updateTime");//修改时间 - String itemDesc = detail.getString("itemDesc");//物料描述 - String labelNo = detail.getString("labelNo");//MO票 - Long itemId = detail.getLong("itemId");//物料id - String updateUserCode = detail.getString("updateUserCode");//修改人 - String mlsCreateTime = detail.getString("createTime");//创建时间 - Double qty = detail.getDouble("qty");//可用数量 - String labelState = detail.getString("labelState");//标签状态 - Integer deliveryHeaderId = detail.getInteger("deliveryHeaderId");//送货单头ID;通过该字段能找到002接口送货单 - String workOrderName = detail.getString("workOrderName");//工单编号 - Integer workOrderId = detail.getInteger("workOrderId");//工单Id - String goodsLocationCode = detail.getString("goodsLocationCode");//MLS货位 - String invCode = detail.getString("invCode");//MLS子库 - - //接收有效的MO票 - if ("0".equals(deleteFlag)) { - //判断物料是否存在;不存在新增; - Item item = null; - String item_hql = " from Item item where item.code='" + itemCode + "' "; - Query item_query = entityMapper.createQuery(item_hql); - List itemList = item_query.getResultList(); - if (itemList.size() > 0) { - item = itemList.get(0); - } else { - item = new Item(); - item.setCode(itemCode); - item.setName(itemDesc); - item.setUnit(uom); - DeptDto deptDto= deptService.findById(7L); - Dept dept= deptService.toEntity(deptDto); - item.setDept(dept); - item.setSourceName(sourceSystem); - item.setSourceId(itemId); - itemService.create(item); - } - - //判断MO票是否存在;不存在新增;存在更新 - String mo_hql = " from Mo mo where mo.labelNo='" + labelNo + "' "; - Query mo_query = entityMapper.createQuery(mo_hql); - List moList = mo_query.getResultList(); - if (moList.size() > 0) { - Mo mo = moList.get(0); - } else { - Mo mo = new Mo(labelNo, labelType, labelState, deliveryHeaderId, sourceSystem, qty, - workOrderId, workOrderName, selfWorkOrderId, selfWorkOrderName, null, item, - checkResult, Boolean.parseBoolean(deleteFlag), null, null, null, null, invCode, goodsAreaCode, goodsLocationCode, - datetimeStockIn == null ? null : DateUtil.parse(datetimeStockIn).toTimestamp(), - mlsCreateTime == null ? null : DateUtil.parse(mlsCreateTime).toTimestamp(), - mlsUpdateTime == null ? null : DateUtil.parse(mlsUpdateTime).toTimestamp(), - createUserCode, updateUserCode - ); - moService.create(mo); - - } - } - - - } - } else { - throw new RuntimeException("MLS异常信息:" + msg); - } - } else { + if (StringUtils.isEmpty(resultJson)) { throw new RuntimeException("获取MO票接口失败!"); } + + JSONObject resulObject = JSON.parseObject(resultJson); + String code = resulObject.getString("code") == null ? "" : resulObject.getString("code"); + String msg = resulObject.getString("msg") == null ? "" : resulObject.getString("msg"); + if (!"0".equals(code)) { + throw new RuntimeException("获取MO票接口异常信息:" + msg); + } + + String data = resulObject.getString("data") == null ? "" : resulObject.getString("data"); + JSONObject dataObject = JSON.parseObject(data); + if (dataObject == null) { + throw new RuntimeException("获取MO票接口返回数据为空!"); + } + JSONArray details = dataObject.getJSONArray("list"); + //判断是否有MO票数据 + if (details == null || details.size() == 0) { + throw new RuntimeException("没有获取到MO票数据!"); + } + //循环处理每个MO票 + log.info("MO票数量:"+details.size()); + for (int i = 0; i < details.size(); i++) { + JSONObject detail = details.getJSONObject(i); + Integer selfWorkOrderId = detail.getInteger("selfWorkOrderId");//自制件工单id + String sourceSystem = detail.getString("sourceSystem");//来源系统 + String selfWorkOrderName = detail.getString("selfWorkOrderName");//自制件工单编号 + String itemCode = detail.getString("itemCode");//物料编码 + String labelType = detail.getString("labelType");//标签类型 + String goodsAreaCode = detail.getString("goodsAreaCode");//MLS货区 + String checkResult = detail.getString("checkResult");//检验状态 + String datetimeStockIn = detail.getString("datetimeStockin");//入库时间 + String deleteFlag = detail.getString("deleteFlag");//数据有效性;有效0,无效1 + String uom = detail.getString("uom");//单位 + String createUserCode = detail.getString("createUserCode");//创建人 + String mlsUpdateTime = detail.getString("updateTime");//修改时间 + String itemDesc = detail.getString("itemDesc");//物料描述 + String labelNo = detail.getString("labelNo");//MO票 + Long itemId = detail.getLong("itemId");//物料id + String updateUserCode = detail.getString("updateUserCode");//修改人 + String mlsCreateTime = detail.getString("createTime");//创建时间 + Double qty = detail.getDouble("qty");//可用数量 + String labelState = detail.getString("labelState");//标签状态 + Integer deliveryHeaderId = detail.getInteger("deliveryHeaderId");//送货单头ID;通过该字段能找到002接口送货单 + String workOrderName = detail.getString("workOrderName");//工单编号 + Integer workOrderId = detail.getInteger("workOrderId");//工单Id + String goodsLocationCode = detail.getString("goodsLocationCode");//MLS货位 + String invCode = detail.getString("invCode");//MLS子库 + + //接收有效的MO票 + if ("PRINTED".equals(labelState)) { + //判断物料是否存在;不存在新增; + ItemDto itemDto = itemService.findByCode(itemCode); + Item item = itemService.toEntity(itemDto); + if (item == null) { + item = new Item(); + item.setCode(itemCode); + item.setName(itemDesc); + item.setUnit(uom); + DeptDto deptDto = deptService.findById(7L); + Dept dept = deptService.toEntity(deptDto); + item.setDept(dept); + item.setSourceName(sourceSystem); + item.setSourceId(itemId); + itemService.create(item); + } + + MoDto moDto = moService.findByLabelNo(labelNo); + if (moDto == null) { + Mo mo = new Mo(labelNo, labelType, labelState, deliveryHeaderId, sourceSystem, qty, + workOrderId, workOrderName, selfWorkOrderId, selfWorkOrderName, null, item, + checkResult, Boolean.parseBoolean(deleteFlag), null, null, null, null, invCode, goodsAreaCode, goodsLocationCode, + datetimeStockIn == null ? null : DateUtil.parse(datetimeStockIn).toTimestamp(), + mlsCreateTime == null ? null : DateUtil.parse(mlsCreateTime).toTimestamp(), + mlsUpdateTime == null ? null : DateUtil.parse(mlsUpdateTime).toTimestamp(), + createUserCode, updateUserCode + ); + moService.create(mo); + } + } + + } } + + @Override + public String returnMo(ReturnMoInfo returnMoInfo) { + JSONObject jsonObject = new JSONObject(new LinkedHashMap<>()); + Map objMap = new LinkedHashMap<>(); + objMap.put("ifaceCode", returnMoInfo.getIfaceCode());//获取送货单信息 + objMap.put("sourceSystem", returnMoInfo.getSourceSystem());//来源系统 + objMap.put("params", returnMoInfo.getParams()); + jsonObject.putAll(objMap); + return HttpPostUtil.sendPostReq(UrlApi.publicApi, jsonObject.toString(), this.getToKen()); + } + + /** + * 叫料结果回传 + * @param returnIssueInfo + * @return + */ + @Override + public String returnIssue(ReturnIssueInfo returnIssueInfo) { + JSONObject jsonObject = new JSONObject(new LinkedHashMap<>()); + Map objMap = new LinkedHashMap<>(); + objMap.put("ifaceCode", returnIssueInfo.getIfaceCode());//获取送货单信息 + objMap.put("sourceSystem", returnIssueInfo.getSourceSystem());//来源系统 + objMap.put("params", returnIssueInfo.getParams()); + jsonObject.putAll(objMap); + return HttpPostUtil.sendPostReq(UrlApi.publicApi, jsonObject.toString(), this.getToKen()); + } + } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/MoServiceImpl.java b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/MoServiceImpl.java index edd7943..e8b0580 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/MoServiceImpl.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/MoServiceImpl.java @@ -1,20 +1,21 @@ /* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ + * Copyright 2019-2020 Zheng Jie + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.youchain.businessdata.service.impl; +import com.youchain.basicdata.domain.Item; import com.youchain.businessdata.domain.Mo; import com.youchain.exception.EntityExistException; import com.youchain.utils.FileUtil; @@ -27,49 +28,67 @@ import com.youchain.businessdata.service.MoService; import com.youchain.businessdata.service.dto.MoDto; import com.youchain.businessdata.service.dto.MoQueryCriteria; import com.youchain.businessdata.service.mapstruct.MoMapper; +import org.springframework.data.domain.Example; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; + import java.util.List; import java.util.Map; import java.io.IOException; +import javax.persistence.EntityManager; +import javax.persistence.Query; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.LinkedHashMap; /** -* @website https://eladmin.vip -* @description 服务实现 -* @author huojin -* @date 2024-04-10 -**/ + * @author huojin + * @website https://eladmin.vip + * @description 服务实现 + * @date 2024-04-10 + **/ @Service @RequiredArgsConstructor public class MoServiceImpl implements MoService { private final MoRepository moRepository; private final MoMapper moMapper; + private final EntityManager entityManager; @Override - public Map queryAll(MoQueryCriteria criteria, Pageable pageable){ - Page page = moRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); + public Map queryAll(MoQueryCriteria criteria, Pageable pageable) { + Page page = moRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root, criteria, criteriaBuilder), pageable); return PageUtil.toPage(page.map(moMapper::toDto)); } @Override - public List queryAll(MoQueryCriteria criteria){ - return moMapper.toDto(moRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); + public List queryAll(MoQueryCriteria criteria) { + return moMapper.toDto(moRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root, criteria, criteriaBuilder))); } @Override @Transactional public MoDto findById(Integer id) { Mo mo = moRepository.findById(id).orElseGet(Mo::new); - ValidationUtil.isNull(mo.getId(),"Mo","id",id); + ValidationUtil.isNull(mo.getId(), "Mo", "id", id); return moMapper.toDto(mo); } + @Override + public MoDto findByLabelNo(String labelNo) { + String hql = "from Mo where labelNo = :labelNo"; + Query query = entityManager.createQuery(hql); + query.setParameter("labelNo", labelNo); + List list = query.getResultList(); + if (list.size() > 0) { + return moMapper.toDto(list.get(0)); + } else { + return null; + } + } + @Override @Transactional(rollbackFor = Exception.class) public MoDto create(Mo resources) { @@ -80,7 +99,7 @@ public class MoServiceImpl implements MoService { @Transactional(rollbackFor = Exception.class) public void update(Mo resources) { Mo mo = moRepository.findById(resources.getId()).orElseGet(Mo::new); - ValidationUtil.isNull( mo.getId(),"Mo","id",resources.getId()); + ValidationUtil.isNull(mo.getId(), "Mo", "id", resources.getId()); mo.copy(resources); moRepository.save(mo); } @@ -96,11 +115,16 @@ public class MoServiceImpl implements MoService { public void download(List all, HttpServletResponse response) throws IOException { List> list = new ArrayList<>(); for (MoDto mo : all) { - Map map = new LinkedHashMap<>(); + Map map = new LinkedHashMap<>(); map.put("自制件工单id", mo.getSelfWorkOrderId()); list.add(map); } FileUtil.downloadExcel(list, response); } + + @Override + public Mo toEntity(MoDto moDto) { + return moMapper.toEntity(moDto); + } } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/OrderServiceImpl.java b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/OrderServiceImpl.java index 25ac406..8f31d82 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/OrderServiceImpl.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/OrderServiceImpl.java @@ -16,6 +16,7 @@ package com.youchain.businessdata.service.impl; import com.youchain.businessdata.domain.AsnDetail; +import com.youchain.businessdata.domain.Mo; import com.youchain.businessdata.domain.Order; import com.youchain.utils.FileUtil; import com.youchain.utils.PageUtil; @@ -27,6 +28,7 @@ import com.youchain.businessdata.service.OrderService; import com.youchain.businessdata.service.dto.OrderDto; import com.youchain.businessdata.service.dto.OrderQueryCriteria; import com.youchain.businessdata.service.mapstruct.OrderMapper; +import org.springframework.data.domain.Example; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.data.domain.Page; @@ -53,6 +55,7 @@ public class OrderServiceImpl implements OrderService { private final OrderRepository orderRepository; private final OrderMapper orderMapper; + private final EntityManager entityManager; @Override @@ -74,6 +77,20 @@ public class OrderServiceImpl implements OrderService { return orderMapper.toDto(order); } + @Override + public OrderDto findByBarcodeNumber(String barcodeNumber) { + String hql = "from Order o where o.barcodeNumber = :barcodeNumber"; + Query query = entityManager.createQuery(hql); + query.setParameter("barcodeNumber", barcodeNumber); + List orders = query.getResultList(); + if (orders.size() > 0) { + return orderMapper.toDto(orders.get(0)); // 返回第一个订单 + } else { + return null; + } + + } + @Override @Transactional(rollbackFor = Exception.class) public OrderDto create(Order resources) { @@ -108,5 +125,9 @@ public class OrderServiceImpl implements OrderService { FileUtil.downloadExcel(list, response); } + @Override + public Order toEntity(OrderDto orderDto) { + return orderMapper.toEntity(orderDto); + } } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/ToKenServiceImpl.java b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/ToKenServiceImpl.java deleted file mode 100644 index 4669455..0000000 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/ToKenServiceImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.youchain.businessdata.service.impl; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.youchain.businessdata.service.ToKenService; -import com.youchain.utils.HttpPostUtil; -import com.youchain.utils.UrlApi; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - -import java.util.LinkedHashMap; -import java.util.Map; - -@Service -@RequiredArgsConstructor -@Slf4j -public class ToKenServiceImpl implements ToKenService { - - @Override - public String getToKen() { - String toKen=""; - String mlsUser="WMS"; - String mlsPwd="EDlsFOvn3xaJm*EH"; - JSONObject jsonObject = new JSONObject(new LinkedHashMap<>()); - Map objMap = new LinkedHashMap<>(); - objMap.put("mlsUser", mlsUser);//快码代码 - objMap.put("mlsPwd", mlsPwd);//快码值 - jsonObject.putAll(objMap); - String resultJson = HttpPostUtil.sendPostReq(UrlApi.extSignIn, jsonObject.toString());//返回ResponseJson*/ - JSONObject resulObject = JSON.parseObject(resultJson); - String code = resulObject.getString("code") == null ? "" : resulObject.getString("code"); - String msg = resulObject.getString("msg") == null ? "" : resulObject.getString("msg"); - - if("0".equals(code)){ - toKen = resulObject.getString("data") == null ? "" : resulObject.getString("data"); - return toKen; - }else{ - throw new RuntimeException("MLS异常信息:"+msg); - } - } -} diff --git a/youchain-system/src/main/java/com/youchain/modules/quartz/task/orderTask.java b/youchain-system/src/main/java/com/youchain/modules/quartz/task/orderTask.java index 77898c4..76e973c 100644 --- a/youchain-system/src/main/java/com/youchain/modules/quartz/task/orderTask.java +++ b/youchain-system/src/main/java/com/youchain/modules/quartz/task/orderTask.java @@ -2,7 +2,7 @@ package com.youchain.modules.quartz.task; import cn.hutool.core.date.DateUtil; import com.youchain.businessdata.inputJson.OrderInfo; -import com.youchain.businessdata.inputJson.Params; +import com.youchain.businessdata.inputJson.OrderParams; import com.youchain.businessdata.rest.MlsController; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -28,26 +28,26 @@ public class orderTask { this.mlsController = mlsController; } - public void orderTask(){ - Date date=new Date(); - OrderInfo orderInfo=new OrderInfo(); + public void orderTask() { + + Date date = new Date(); + OrderInfo orderInfo = new OrderInfo(); orderInfo.setIfaceCode("MLS-WQ-002"); orderInfo.setSourceSystem("WQ"); - Set invCodes=new HashSet<>(); - invCodes.add("MA1181"); - invCodes.add("MD2211"); + Set invCodes = new HashSet<>(); + invCodes.add("MA2111"); - String startTime=DateUtil.format(DateUtil.beginOfDay(date), "yyyy-MM-dd HH:mm:ss"); - String endTime=DateUtil.format(DateUtil.endOfDay(date), "yyyy-MM-dd HH:mm:ss"); - Params params=new Params(100059,invCodes,"",startTime,endTime,1,100); + String startTime = DateUtil.format(DateUtil.beginOfDay(date), "yyyy-MM-dd HH:mm:ss"); + String endTime = DateUtil.format(DateUtil.endOfDay(date), "yyyy-MM-dd HH:mm:ss"); + OrderParams params = new OrderParams(100059, invCodes, "", startTime, endTime, 1, 100); orderInfo.setParams(params); - try{ + try { log.info("获取送货单信息"); mlsController.getOrderInfo(orderInfo); - }catch (Exception e){ + } catch (Exception e) { throw new RuntimeException("MLS异常信息:" + e); } diff --git a/youchain-system/src/test/java/com/youchain/EladminSystemApplicationTests.java b/youchain-system/src/test/java/com/youchain/EladminSystemApplicationTests.java index eef74f6..5e17e8e 100644 --- a/youchain-system/src/test/java/com/youchain/EladminSystemApplicationTests.java +++ b/youchain-system/src/test/java/com/youchain/EladminSystemApplicationTests.java @@ -1,16 +1,10 @@ package com.youchain; -import com.youchain.businessdata.domain.AgvTask; -import com.youchain.businessdata.service.MlsService; -import com.youchain.businessdata.service.ToKenService; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.ArrayBlockingQueue; -import java.util.concurrent.BlockingQueue; @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Slf4j