| src/main/java/com/zy/api/controller/KopenApiController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/api/entity/OrderParams.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/api/entity/PubOrderParams.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/api/entity/ReportOrderParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/api/entity/ReportOrderParams.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/api/service/KopenApiService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/mapper/LocDetlMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/api/controller/KopenApiController.java
@@ -1,11 +1,12 @@ package com.zy.api.controller; import com.alibaba.fastjson.JSON; import com.core.common.R; import com.zy.api.entity.OrderParams; import com.zy.api.entity.PubOrderParams; import com.zy.api.entity.ReportOrderParam; import com.zy.api.entity.SyncMatParmas; import com.zy.api.service.KopenApiService; import com.zy.asrs.entity.Mat; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; @@ -13,8 +14,6 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; import java.util.Map; import java.util.Objects; @RestController @@ -33,8 +32,8 @@ * @return com.core.common.R */ @ApiOperation("上架派工单") @PostMapping("/order/add") public R receiveOrders(@RequestBody OrderParams params) { @PostMapping("/sendInDispatch") public R receiveOrders(@RequestBody PubOrderParams params) { if (Objects.isNull(params)) { return R.error("参数不能为空!!"); } @@ -53,7 +52,7 @@ * @return com.core.common.R */ @ApiOperation("零件信息数据更新") @PostMapping("/sync/mat") @PostMapping("/sendPartsMaster") public R basMatUpdate(@RequestBody SyncMatParmas params) { if (Objects.isNull(params)) { return R.error("参数不能为空!!"); @@ -66,5 +65,23 @@ } /** * 上架派工单反馈 * @author Ryan * @date 2025/11/24 15:20 * @param params * @return com.core.common.R */ @ApiOperation("上架派工单反馈") @PostMapping("/getInDispatchResult") public R getInDispatchResult(@RequestBody ReportOrderParam params) { if (Objects.isNull(params)) { return R.error("参数不能为空!!"); } if (Objects.isNull(params.getKopen_id()) && Objects.isNull(params.getInv_no()) && Objects.isNull(params.getDispatch_no())) { return R.error("取消条件不能为空!!"); } return kopenApiService.getInDispatchResult(params); } } src/main/java/com/zy/api/entity/OrderParams.java
@@ -35,8 +35,9 @@ @ApiModelProperty("入库通知单号") private String inv_no; @ApiModelProperty("入库物料列表") List<OrderItemsParam> details; @ApiModelProperty("目标库区") private String target_location; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") src/main/java/com/zy/api/entity/PubOrderParams.java
New file @@ -0,0 +1,17 @@ package com.zy.api.entity; import java.util.List; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; @Data @Accessors(chain = true) @ApiModel(value = "PubOrderParams", description = "发布订单信息") public class PubOrderParams extends OrderParams{ @ApiModelProperty("入库物料列表") List<OrderItemsParam> details; } src/main/java/com/zy/api/entity/ReportOrderParam.java
New file @@ -0,0 +1,18 @@ package com.zy.api.entity; import java.util.List; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; @Data @Accessors(chain = true) @ApiModel(value = "ReportOrderParam", description = "上报订单信息") public class ReportOrderParam extends OrderParams{ @ApiModelProperty("上报订单列表") List<ReportOrderParams> details; } src/main/java/com/zy/api/entity/ReportOrderParams.java
New file @@ -0,0 +1,48 @@ package com.zy.api.entity; import java.io.Serializable; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; @Data @Accessors(chain = true) @ApiModel("上报订单参数") public class ReportOrderParams implements Serializable { @ApiModelProperty("BS Code") private String total_serial; @ApiModelProperty("产品类型") private String pro_type; @ApiModelProperty("零件代码") private String pro_komcode; @ApiModelProperty("供应商ID") private String pro_id; @ApiModelProperty("容器编码") private String location_no; @ApiModelProperty("货位类型") private String location_type; @ApiModelProperty("上架日期") private String sj_date; @ApiModelProperty("上架人") private String sj_emp; @ApiModelProperty("上架数量") private Integer pick_qty; @ApiModelProperty("破损数量") private Integer damage_qty; @ApiModelProperty("差异数量") private Integer diff_qty; } src/main/java/com/zy/api/service/KopenApiService.java
@@ -1,7 +1,8 @@ package com.zy.api.service; import com.core.common.R; import com.zy.api.entity.OrderParams; import com.zy.api.entity.PubOrderParams; import com.zy.api.entity.ReportOrderParam; import com.zy.api.entity.SyncMatParmas; public interface KopenApiService { @@ -14,7 +15,7 @@ * @param params * @return com.core.common.R */ R receiveOrders(OrderParams params); R receiveOrders(PubOrderParams params); /** * 基础零件变更 @@ -31,5 +32,12 @@ * @author Ryan * @date 2025/11/24 15:33 */ void addOrUpdateOrders(OrderParams params, String type) ; void addOrUpdateOrders(PubOrderParams params, String type) ; /** * 上架派工单反馈 * @param params * @return */ R getInDispatchResult(ReportOrderParam params); } src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java
@@ -6,6 +6,9 @@ import com.core.common.R; import com.core.exception.CoolException; import com.zy.api.entity.OrderParams; import com.zy.api.entity.ReportOrderParam; import com.zy.api.entity.PubOrderParams; import com.zy.api.entity.ReportOrderParam; import com.zy.api.entity.SyncMatParmas; import com.zy.api.enums.MatLocType; import com.zy.api.enums.MatType; @@ -22,6 +25,7 @@ import com.zy.asrs.service.OrderService; import com.zy.asrs.utils.Utils; import com.zy.common.utils.HttpHandler; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -52,12 +56,47 @@ * @return com.core.common.R */ @Override public R receiveOrders(OrderParams params) { public R receiveOrders(PubOrderParams params) { if (params.getType().equals(OrderWkType.getTypeVal(params.getType()))) { return R.error("当前类型不是上架派工单!!"); } addOrUpdateOrders(params, "add"); return R.ok("单据下发成功!!"); } /** * 上架派工单反馈 * @author Ryan * @date 2025/11/24 15:33 */ @Override @Transactional(rollbackFor = Exception.class) public R getInDispatchResult(ReportOrderParam params) { if (Objects.isNull(params)) { return R.error("参数不能为空!!"); } String response = null; try { response = new HttpHandler.Builder() .setUri("127.0.0.1:8081") .setPath("/wms/order/getInDispatchResult") .setJson(JSONObject.toJSONString(params)) .build() .doPost(); if (Objects.isNull(response) || response.trim().isEmpty()) { return R.error("外网接口无响应!!"); } JSONObject jsonObject = JSONObject.parseObject(response); Integer code = jsonObject.getInteger("code"); if (!Objects.isNull(code) && code.equals(1)) { return R.ok("入库单上报完成!!"); } else { String msg = jsonObject.getString("message"); return R.error(Objects.isNull(msg) ? "上报失败!!" : msg); } } catch (Exception e) { return R.error(e.getMessage()); } } /** @@ -121,7 +160,7 @@ */ @Override @Transactional(rollbackFor = Exception.class) public void addOrUpdateOrders(OrderParams params, String type) { public void addOrUpdateOrders(PubOrderParams params, String type) { if (Objects.isNull(params)) { throw new CoolException("参数不能为空!!"); } @@ -161,7 +200,7 @@ * @param params */ @Transactional(rollbackFor = Exception.class) public void generateOrders(OrderParams params) { public void generateOrders(PubOrderParams params) { // 将数据当新订单插入 Order newOrder = new Order(); if (OrderType.ORDER_IN.type.equals(OrderWkType.getTypeVal(params.getType()))) { src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
@@ -5,6 +5,8 @@ import com.core.common.Cools; import com.core.common.DateUtils; import com.core.exception.CoolException; import com.zy.api.entity.ReportOrderParam; import com.zy.api.service.KopenApiService; import com.zy.asrs.entity.*; import com.zy.asrs.enums.OrderTypeEnum; import com.zy.asrs.service.*; @@ -47,6 +49,8 @@ private OrderPakinService orderPakinService; @Autowired private OrderDetlPakinService orderDetlPakinService; @Autowired private KopenApiService kopenApiService; @Transactional public ReturnT<String> startOrderIssuedOnceMore(Order order) { @@ -208,6 +212,16 @@ OrderInAndOutUtil.updateOrder(order.getPakinPakoutStatus$(),order.getId(),6L,null); return SUCCESS; } /** * 单据上报 * @author Ryan * @date 2025/12/15 16:14 * @param order * @return com.zy.asrs.task.core.ReturnT<java.lang.String> */ @Transactional public ReturnT<String> startOrderReport(Order order) { DocType docType = docTypeService.selectById(order.getDocType()); @@ -233,6 +247,9 @@ String response = ""; boolean success = false; try { ReportOrderParam orderParam = new ReportOrderParam(); kopenApiService.getInDispatchResult(orderParam); // response = new HttpHandler.Builder() // .setUri(MesConstant.URL) // .setPath(MesConstant.PAKIN_URL) src/main/resources/mapper/LocDetlMapper.xml
@@ -531,14 +531,6 @@ where 1=1 and b.loc_sts = 'F' and a.matnr = #{matnr} <!-- <choose>--> <!-- <when test="batch != null and batch != ''">--> <!-- and a.batch = #{batch}--> <!-- </when>--> <!-- <otherwise>--> <!-- and (a.batch IS NULL OR a.batch = '')--> <!-- </otherwise>--> <!-- </choose>--> <if test="orderNo != null and orderNo != ''"> and a.order_no = #{orderNo} </if> @@ -625,14 +617,6 @@ where 1=1 and b.loc_sts = 'F' and a.matnr = #{matnr} <!-- <choose>--> <!-- <when test="batch != null and batch != ''">--> <!-- and a.batch = #{batch}--> <!-- </when>--> <!-- <otherwise>--> <!-- and (a.batch IS NULL OR a.batch = '')--> <!-- </otherwise>--> <!-- </choose>--> <if test="orderNo != null and orderNo != ''"> and a.order_no = #{orderNo} </if>