From 12803c10957b20738ce23906342fe5db8524c0a9 Mon Sep 17 00:00:00 2001 From: "bbl\\baobl" Date: Tue, 12 Mar 2024 13:08:41 +0800 Subject: [PATCH] =?UTF-8?q?=E5=87=BA=E5=BA=93=E5=8D=95=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=98=AF=E5=90=A6AGV=E5=87=BA=E5=BA=93=E4=B8=9A=E5=8A=A1?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=EF=BC=8C=E7=9B=AE=E6=A0=87=E7=82=B9=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../youchain/businessdata/domain/Pick.java | 12 +- .../businessdata/domain/PickDetail.java | 15 +- .../repository/PickDetailRepository.java | 4 + .../repository/PickRepository.java | 6 + .../rest/PickDetailController.java | 20 +- .../service/PickDetailService.java | 2 +- .../service/dto/PickDetailDto.java | 3 +- .../businessdata/service/dto/PickDto.java | 9 +- .../service/impl/PickDetailServiceImpl.java | 221 ++++++++++++------ .../service/impl/PickServiceImpl.java | 16 +- .../java/com/youchain/utils/BizStatus.java | 9 + 11 files changed, 202 insertions(+), 115 deletions(-) diff --git a/youchain-system/src/main/java/com/youchain/businessdata/domain/Pick.java b/youchain-system/src/main/java/com/youchain/businessdata/domain/Pick.java index 653606e..59804ad 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/domain/Pick.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/domain/Pick.java @@ -16,6 +16,7 @@ package com.youchain.businessdata.domain; import com.youchain.base.BaseEntity; +import com.youchain.basicdata.domain.BillType; import lombok.Data; import cn.hutool.core.bean.BeanUtil; import io.swagger.annotations.ApiModelProperty; @@ -46,13 +47,14 @@ public class Pick extends BaseEntity implements Serializable { @ApiModelProperty(value = "仓库ID") private Long deptId; - @Column(name = "`bill_type_id`") + @OneToOne + @JoinColumn(name = "bill_type_id") @ApiModelProperty(value = "单据类型ID") - private String billTypeId; + private BillType billType; @Column(name = "`order_origin`") @ApiModelProperty(value = "订单来源") - private Long orderOrigin; + private String orderOrigin; @Column(name = "`priority`") @ApiModelProperty(value = "优先级") @@ -84,11 +86,11 @@ public class Pick extends BaseEntity implements Serializable { @Column(name = "`dispatch_date`") @ApiModelProperty(value = "发货时间") - private Long dispatchDate; + private Timestamp dispatchDate; @Column(name = "`er_time`") @ApiModelProperty(value = "操作时间") - private Long erTime; + private Timestamp erTime; @Column(name = "`create_by`") @ApiModelProperty(value = "创建人") diff --git a/youchain-system/src/main/java/com/youchain/businessdata/domain/PickDetail.java b/youchain-system/src/main/java/com/youchain/businessdata/domain/PickDetail.java index 4604493..07ac003 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/domain/PickDetail.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/domain/PickDetail.java @@ -45,9 +45,10 @@ public class PickDetail extends BaseEntity implements Serializable { @ApiModelProperty(value = "ID") private Long id; - @Column(name = "`pick_id`") + @OneToOne + @JoinColumn(name = "`pick_id`") @ApiModelProperty(value = "订单序号") - private Long pickId; + private Pick pick; @OneToOne @JoinColumn(name = "`item_id`",nullable = false) @@ -96,23 +97,23 @@ public class PickDetail extends BaseEntity implements Serializable { private String remark; @Column(name = "`prop_c1`") - @ApiModelProperty(value = "批次号") + @ApiModelProperty(value = "中标批次名称") private String propC1; @Column(name = "`prop_c2`") - @ApiModelProperty(value = "序列号") + @ApiModelProperty(value = "成品物料编码") private String propC2; @Column(name = "`prop_c3`") - @ApiModelProperty(value = "属性3") + @ApiModelProperty(value = "序列号") private String propC3; @Column(name = "`prop_c4`") - @ApiModelProperty(value = "属性4") + @ApiModelProperty(value = "出库方式") private String propC4; @Column(name = "`prop_c5`") - @ApiModelProperty(value = "属性5") + @ApiModelProperty(value = "目标点位") private String propC5; @Column(name = "`prop_c6`") diff --git a/youchain-system/src/main/java/com/youchain/businessdata/repository/PickDetailRepository.java b/youchain-system/src/main/java/com/youchain/businessdata/repository/PickDetailRepository.java index 70a32bc..8cfcfba 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/repository/PickDetailRepository.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/repository/PickDetailRepository.java @@ -52,4 +52,8 @@ public interface PickDetailRepository extends JpaRepository, J " UNION select a.* from data_pick_detail a INNER JOIN base_item b on a.item_id = b.id " + "WHERE b.name = '前桶' and a.create_time > :time ", nativeQuery = true) List queryOutQHAllData(String time); + @Query(value = "select pd from PickDetail pd where pd.pick.id=?1 and pd.lineNo=?2", nativeQuery = false) + PickDetail findByPickAndLineNo(Long id, Long lineNo); + @Query(value = "select pd from PickDetail pd where pd.pick.id=?1", nativeQuery = false) + List findByPick(Long id); } \ No newline at end of file diff --git a/youchain-system/src/main/java/com/youchain/businessdata/repository/PickRepository.java b/youchain-system/src/main/java/com/youchain/businessdata/repository/PickRepository.java index 98e64ee..749ff53 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/repository/PickRepository.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/repository/PickRepository.java @@ -16,8 +16,12 @@ package com.youchain.businessdata.repository; import com.youchain.businessdata.domain.Pick; +import com.youchain.businessdata.domain.PickDetail; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; +import org.springframework.data.jpa.repository.Query; + +import java.util.List; /** * @website https://eladmin.vip @@ -25,4 +29,6 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor; * @date 2024-03-11 **/ public interface PickRepository extends JpaRepository, JpaSpecificationExecutor { + @Query(value = "select p from Pick p where p.relatedBill2=?1") + Pick findByCode(String relatedBill2); } \ No newline at end of file diff --git a/youchain-system/src/main/java/com/youchain/businessdata/rest/PickDetailController.java b/youchain-system/src/main/java/com/youchain/businessdata/rest/PickDetailController.java index 868aa1d..3bbaa6c 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/rest/PickDetailController.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/rest/PickDetailController.java @@ -127,20 +127,12 @@ public class PickDetailController { @AnonymousAccess public synchronized ResponseEntity allocate(@RequestBody Long[] ids) throws Exception { List pickDetailIds = Arrays.asList(ids); - if (pickDetailIds.size() > 0) { - try { - for (Long id : pickDetailIds) { - PickDetailDto pickDetailDto = pickDetailService.findById(id); - pickDetailService.allocate(id, pickDetailDto.getOrderQty()); - } - } catch (Exception e) { - return new ResponseEntity(ApiResult.fail(BAD_REQUEST.value(), e.getMessage(), ""), HttpStatus.BAD_REQUEST); - - } - } else { - return new ResponseEntity(ApiResult.fail(BAD_REQUEST.value(), "参数错误或者为null", ""), HttpStatus.BAD_REQUEST); - } - return new ResponseEntity<>(HttpStatus.OK); + ApiResult apiResult=pickDetailService.allocate(ids); + /*for (Long id : pickDetailIds) { + PickDetailDto pickDetailDto = pickDetailService.findById(id); + pickDetailService.allocate(id, pickDetailDto.getOrderQty()); + }*/ + return new ResponseEntity<>(apiResult, HttpStatus.valueOf(apiResult.getStatus())); } @PostMapping("/cancelAllocate") diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/PickDetailService.java b/youchain-system/src/main/java/com/youchain/businessdata/service/PickDetailService.java index 89d2da4..82184c4 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/PickDetailService.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/PickDetailService.java @@ -90,7 +90,7 @@ public interface PickDetailService { /** * 分配 */ - void allocate(long id,double quantity) throws Exception; + ApiResult allocate(Long[] ids); /** * 整出分配 diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/dto/PickDetailDto.java b/youchain-system/src/main/java/com/youchain/businessdata/service/dto/PickDetailDto.java index 88700a7..e046d16 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/dto/PickDetailDto.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/dto/PickDetailDto.java @@ -17,6 +17,7 @@ package com.youchain.businessdata.service.dto; import com.youchain.basicdata.service.dto.ItemDto; import com.youchain.basicdata.service.dto.ItemSmallDto; +import com.youchain.businessdata.domain.Pick; import com.youchain.modules.system.domain.Dept; import lombok.Data; import java.sql.Timestamp; @@ -35,7 +36,7 @@ public class PickDetailDto implements Serializable { private Long id; /** 订单序号 */ - private Long pickId; + private Pick pick; /** 物料序号 */ private ItemDto item; diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/dto/PickDto.java b/youchain-system/src/main/java/com/youchain/businessdata/service/dto/PickDto.java index 87576cd..cc85963 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/dto/PickDto.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/dto/PickDto.java @@ -15,6 +15,7 @@ */ package com.youchain.businessdata.service.dto; +import com.youchain.basicdata.domain.BillType; import lombok.Data; import java.sql.Timestamp; import java.io.Serializable; @@ -35,10 +36,10 @@ public class PickDto implements Serializable { private Long deptId; /** 单据类型ID */ - private String billTypeId; + private BillType billType; /** 订单来源 */ - private Long orderOrigin; + private String orderOrigin; /** 优先级 */ private Long priority; @@ -62,10 +63,10 @@ public class PickDto implements Serializable { private String address; /** 发货时间 */ - private Long dispatchDate; + private Timestamp dispatchDate; /** 操作时间 */ - private Long erTime; + private Timestamp erTime; /** 创建人 */ private String createBy; diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/PickDetailServiceImpl.java b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/PickDetailServiceImpl.java index 122828f..be9b7a5 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/PickDetailServiceImpl.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/PickDetailServiceImpl.java @@ -17,27 +17,20 @@ package com.youchain.businessdata.service.impl; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; -import com.youchain.basicdata.domain.Box; -import com.youchain.basicdata.domain.Item; -import com.youchain.basicdata.domain.Point; -import com.youchain.basicdata.domain.Stock; +import com.youchain.basicdata.domain.*; +import com.youchain.basicdata.repository.BillTypeRepository; import com.youchain.basicdata.repository.BoxRepository; +import com.youchain.basicdata.repository.ItemRepository; import com.youchain.basicdata.repository.StockRepository; import com.youchain.basicdata.service.ItemService; import com.youchain.basicdata.service.PointService; import com.youchain.basicdata.service.dto.ItemDto; -import com.youchain.businessdata.domain.AgvTask; -import com.youchain.businessdata.domain.Inventory; -import com.youchain.businessdata.domain.PickDetail; -import com.youchain.businessdata.domain.Task; -import com.youchain.businessdata.repository.AgvTaskRepository; -import com.youchain.businessdata.repository.InventoryRepository; -import com.youchain.businessdata.repository.TaskRepository; +import com.youchain.businessdata.domain.*; +import com.youchain.businessdata.repository.*; import com.youchain.exception.handler.ApiResult; import com.youchain.modules.system.domain.Dept; import com.youchain.utils.*; import lombok.RequiredArgsConstructor; -import com.youchain.businessdata.repository.PickDetailRepository; import com.youchain.businessdata.service.PickDetailService; import com.youchain.businessdata.service.dto.PickDetailDto; import com.youchain.businessdata.service.dto.PickDetailQueryCriteria; @@ -49,6 +42,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; +import java.sql.Timestamp; import java.text.SimpleDateFormat; import java.util.*; import java.io.IOException; @@ -66,10 +60,13 @@ import static org.springframework.http.HttpStatus.BAD_REQUEST; **/ @Service @RequiredArgsConstructor +@Transactional public class PickDetailServiceImpl implements PickDetailService { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH"); private final PickDetailRepository pickDetailRepository; + private final PickRepository pickRepository; private final PickDetailMapper pickDetailMapper; + private final BillTypeRepository billTypeRepository; private final InventoryRepository inventoryRepository; private final BoxRepository boxRepository; private final AgvTaskRepository agvTaskRepository; @@ -77,6 +74,7 @@ public class PickDetailServiceImpl implements PickDetailService { private final ItemService itemService; private final PointService pointService; private final StockRepository stockRepository; + private final ItemRepository itemRepository; private final EntityManager entityMapper; @Override @@ -144,70 +142,79 @@ public class PickDetailServiceImpl implements PickDetailService { @Override @Transactional(rollbackFor = Exception.class) - public synchronized void allocate(long id, double quantity) throws Exception { - PickDetailDto pickDetailDto = findById(id); - PickDetail pd = toEntity(pickDetailDto);//Dto转实体 - ItemDto itemDto = pickDetailDto.getItem(); - Item item = itemService.toEntity(itemDto); - Dept dept = item.getDept();//仓库 - Box box = boxRepository.getBoxByItem(item.getId()); - Point endPoint = box.getPoint();//目标点位 - if (pd.getOrderQty() > pd.getAllocatedQty()) { - List Inventorys = inventoryRepository.queryInventory(item.getId()); - if (Inventorys.size() > 0) { - double allocateQty = 0; - double unQty = quantity;//未分配数量 - for (Inventory inv : Inventorys) { - Stock stock = inv.getStock();//容器 - Point startPoint = inv.getPoint();//起始点位 - if (unQty == 0) { - break; - } - allocateQty = inv.getQuantity() - inv.getQueuedQty();//库存可用数量 - if (allocateQty <= 0) { - continue; - } - if (unQty < allocateQty) { - allocateQty = unQty; - } - inv.setQueuedQty(inv.getQueuedQty() + allocateQty); - inventoryRepository.save(inv); - unQty -= allocateQty; - pd.setAllocatedQty(pd.getAllocatedQty() + allocateQty); - if (pd.getOrderQty().equals(pd.getAllocatedQty())) { - pd.setStatus(BizStatus.ALLOCATE); - } - pickDetailRepository.save(pd); - - //生成搬运任务 - AgvTask agvTask = new AgvTask(BizStatus.PICK, stock.getCode(), startPoint.getCode(), endPoint.getCode(), BizStatus.OPEN, "01"); - agvTaskRepository.save(agvTask); - //生成Task - Task task = new Task(); - task.setItem(item); - task.setItemKey(inv.getItemKey()); - task.setPickDetail(pd); - task.setBillCode(pd.getPo()); - task.setSrcStock(inv.getStock()); - task.setDstStock(inv.getStock()); - task.setSrcPoint(startPoint); - task.setDstPoint(endPoint); - task.setSrcStockCode(inv.getStock().getCode()); - task.setSrcPointCode(startPoint.getCode()); - task.setDstPointCode(endPoint.getCode()); - task.setInvStatus(inv.getStatus()); - task.setTaskStatus(BizStatus.OPEN); - task.setPlanQty(allocateQty); - task.setDept(dept); - task.setAgvTask(agvTask); - taskRepository.save(task); - } + public ApiResult allocate(Long[] ids) { + for (int i = 0; i < ids.length; i++) { + Long id=ids[i]; + PickDetail pickDetail=pickDetailRepository.getById(id); + if (pickDetail.getPropC4().equals(BizStatus.AGV_PT)){ + //AGV出库 } - } else { - throw new RuntimeException("已分配,请勿重复操作!"); - } + Double quantity=pickDetail.getOrderQty(); + PickDetail pd = pickDetailRepository.getById(id);//Dto转实体 + Item item = pd.getItem(); + Dept dept = item.getDept();//仓库 + Box box = boxRepository.getBoxByItem(item.getId()); + + Point endPoint = box.getPoint();//目标点位 + if (pd.getOrderQty() > pd.getAllocatedQty()) { + List Inventorys = inventoryRepository.queryInventory(item.getId()); + if (Inventorys.size() > 0) { + double allocateQty = 0; + double unQty = quantity;//未分配数量 + for (Inventory inv : Inventorys) { + Stock stock = inv.getStock();//容器 + Point startPoint = inv.getPoint();//起始点位 + if (unQty == 0) { + break; + } + allocateQty = inv.getQuantity() - inv.getQueuedQty();//库存可用数量 + if (allocateQty <= 0) { + continue; + } + if (unQty < allocateQty) { + allocateQty = unQty; + } + inv.setQueuedQty(inv.getQueuedQty() + allocateQty); + inventoryRepository.save(inv); + unQty -= allocateQty; + pd.setAllocatedQty(pd.getAllocatedQty() + allocateQty); + if (pd.getOrderQty().equals(pd.getAllocatedQty())) { + pd.setStatus(BizStatus.ALLOCATE); + } + pickDetailRepository.save(pd); + + //生成搬运任务 + AgvTask agvTask = new AgvTask(BizStatus.PICK, stock.getCode(), startPoint.getCode(), endPoint.getCode(), BizStatus.OPEN, "01"); + agvTaskRepository.save(agvTask); + //生成Task + Task task = new Task(); + task.setItem(item); + task.setItemKey(inv.getItemKey()); + task.setPickDetail(pd); + task.setBillCode(pd.getPo()); + task.setSrcStock(inv.getStock()); + task.setDstStock(inv.getStock()); + task.setSrcPoint(startPoint); + task.setDstPoint(endPoint); + task.setSrcStockCode(inv.getStock().getCode()); + task.setSrcPointCode(startPoint.getCode()); + task.setDstPointCode(endPoint.getCode()); + task.setInvStatus(inv.getStatus()); + task.setTaskStatus(BizStatus.OPEN); + task.setPlanQty(allocateQty); + task.setDept(dept); + task.setAgvTask(agvTask); + taskRepository.save(task); + } + } + + } else { + throw new RuntimeException("已分配,请勿重复操作!"); + } + } + return ApiResult.fail(200,"操作成功",null); } @Override @@ -414,12 +421,72 @@ public class PickDetailServiceImpl implements PickDetailService { public ApiResult importPtApi(JSONObject jsonObject) { JSONArray orders=jsonObject.getJSONArray("order"); for (int i = 0; i < orders.size(); i++) { - PickDetail pickDetail = new PickDetail(); - JSONObject order=orders.getJSONObject(i); - + String orderId=order.getString("orderId"); + String erTime=order.getString("orderDate");//操作时间 + Timestamp er = Timestamp.valueOf(DateUtil.parseLocalDateTimeFormat(erTime, "yyyy-MM-dd HH:mm:ss")); + String owner=order.getString("owner");//货主 + String orderType=order.getString("orderType");//订单类型 + List billTypeList=billTypeRepository.findBySourceName(orderType); + if (billTypeList.size()<1){ + return ApiResult.result(500,"单据类型错误",null); + } + BillType billType=billTypeList.get(0); + String dispatchDate=order.getString("dispatchDate");//发货日期 + Timestamp dc = Timestamp.valueOf(DateUtil.parseLocalDateTimeFormat(dispatchDate, "yyyy-MM-dd HH:mm:ss")); + Long priority=order.getLong("priority");//订单类型 + String address=order.getString("consolidationLoc");//地址 + Pick pick; + pick = pickRepository.findByCode(orderId); + if (pick==null){ + pick=new Pick(); + pick.setStatus(BizStatus.OPEN); + } + pick.setRelatedBill1(orderId); + pick.setRelatedBill2(orderId); + pick.setErTime(er); + pick.setBillType(billType); + pick.setDispatchDate(dc); + pick.setOwner(owner); + pick.setAddress(address); + pick.setPriority(priority); + pickRepository.save(pick); + JSONArray orderLineArray=order.getJSONArray("orderLine"); + for (int j = 0; j < orderLineArray.size(); j++) { + JSONObject orderLine=orderLineArray.getJSONObject(i); + String lineNo=orderLine.getString("orderLineNumber"); + String itemCode=orderLine.getString("productId"); + String quantity=orderLine.getString("quantityOrdered"); + JSONArray attributeValueList=orderLine.getJSONArray("attributeValue"); + Map attributeValue=new HashMap<>(); + for (int k = 0; k < attributeValueList.size(); k++) { + JSONObject at=attributeValueList.getJSONObject(k); + attributeValue.put(at.getString("name"),at.getString("value")); + } + String propC1=attributeValue.get("ztBidName")+"";//中标批次名称 + String propC2=attributeValue.get("prodMtrlNo")+"";//成品物料编码 + String propC3=attributeValue.get("loadUnitId")+"";//序列号 + Item item=itemRepository.findByCode(itemCode); + if (item==null){ + return ApiResult.result(500, itemCode+"物料不存在",null); + } + PickDetail pickDetail; + pickDetail=pickDetailRepository.findByPickAndLineNo(pick.getId(),Long.valueOf(lineNo)); + if (pickDetail==null){ + pickDetail=new PickDetail(); + pickDetail.setStatus(BizStatus.OPEN); + } + pickDetail.setLineNo(Long.valueOf(lineNo)); + pickDetail.setItem(item); + pickDetail.setOrderQty(Double.valueOf(quantity)); + pickDetail.setPropC1(propC1); + pickDetail.setPropC2(propC2); + pickDetail.setPropC3(propC3); + pickDetail.setPick(pick); + pickDetailRepository.save(pickDetail); + } } - return null; + return ApiResult.result(200, "操作成功",null); } } diff --git a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/PickServiceImpl.java b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/PickServiceImpl.java index 86eaf91..37d2a9c 100644 --- a/youchain-system/src/main/java/com/youchain/businessdata/service/impl/PickServiceImpl.java +++ b/youchain-system/src/main/java/com/youchain/businessdata/service/impl/PickServiceImpl.java @@ -16,10 +16,9 @@ package com.youchain.businessdata.service.impl; import com.youchain.businessdata.domain.Pick; -import com.youchain.utils.FileUtil; -import com.youchain.utils.PageUtil; -import com.youchain.utils.QueryHelp; -import com.youchain.utils.ValidationUtil; +import com.youchain.businessdata.domain.PickDetail; +import com.youchain.businessdata.repository.PickDetailRepository; +import com.youchain.utils.*; import lombok.RequiredArgsConstructor; import com.youchain.businessdata.repository.PickRepository; import com.youchain.businessdata.service.PickService; @@ -48,6 +47,7 @@ import java.util.LinkedHashMap; public class PickServiceImpl implements PickService { private final PickRepository pickRepository; + private final PickDetailRepository pickDetailRepository; private final PickMapper pickMapper; @Override @@ -87,6 +87,11 @@ public class PickServiceImpl implements PickService { @Override public void deleteAll(Long[] ids) { for (Long id : ids) { + List pickDetailList=pickDetailRepository.findByPick(id); + for (int i = 0; i < pickDetailList.size(); i++) { + PickDetail pickDetail=pickDetailList.get(i); + pickDetailRepository.deleteById(pickDetail.getId()); + } pickRepository.deleteById(id); } } @@ -96,8 +101,7 @@ public class PickServiceImpl implements PickService { List> list = new ArrayList<>(); for (PickDto pick : all) { Map map = new LinkedHashMap<>(); - map.put("仓库ID", pick.getDeptId()); - map.put("单据类型ID", pick.getBillTypeId()); + map.put("单据类型", pick.getBillType().getName()); map.put("订单来源", pick.getOrderOrigin()); map.put("优先级", pick.getPriority()); map.put("货主", pick.getOwner()); diff --git a/youchain-system/src/main/java/com/youchain/utils/BizStatus.java b/youchain-system/src/main/java/com/youchain/utils/BizStatus.java index bbfe67e..c0dca27 100644 --- a/youchain-system/src/main/java/com/youchain/utils/BizStatus.java +++ b/youchain-system/src/main/java/com/youchain/utils/BizStatus.java @@ -216,4 +216,13 @@ public interface BizStatus { String AGV_C="AGV_C"; /** 半成品入库*/ String SMGS="SMGS"; + + /** AGV出库*/ + String AGV_PT="AGV_PT"; + /** 人工出库*/ + String RG_PT="RG_PT"; + /** AGV入库*/ + String AGV_ASN="AGV_ASN"; + /** 人工入库*/ + String RG_ASN="RG_ASN"; }