From 884aa89a31c5fb06b0a9b554feeeed73c9c612f9 Mon Sep 17 00:00:00 2001 From: anthonywj Date: Wed, 31 May 2023 14:47:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=87=BA=E5=85=A5=E5=BA=93=E5=8D=95=E6=8D=AE?= =?UTF-8?q?=EF=BC=8C=E7=94=9F=E4=BA=A7=E8=AE=A2=E5=8D=95=E9=87=8D=E5=A4=8D?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../trace/TraceManuOrderController.java | 4 -- .../controller/trace/TraceTaskController.java | 18 ------- .../controller/trace/UdiTraceController.java | 17 +++++++ .../service/trace/TraceManuOrderService.java | 38 +++++++++++--- .../api/service/trace/TraceOrderService.java | 28 ++++++++++- .../api/service/trace/UdiTraceService.java | 1 - .../trace/impl/TraceManuOrderServiceImpl.java | 39 --------------- .../trace/impl/TraceOrderServiceImpl.java | 50 ------------------- 8 files changed, 76 insertions(+), 119 deletions(-) delete mode 100644 src/main/java/com/glxp/api/service/trace/impl/TraceManuOrderServiceImpl.java delete mode 100644 src/main/java/com/glxp/api/service/trace/impl/TraceOrderServiceImpl.java diff --git a/src/main/java/com/glxp/api/controller/trace/TraceManuOrderController.java b/src/main/java/com/glxp/api/controller/trace/TraceManuOrderController.java index 014bc84..fcba49e 100644 --- a/src/main/java/com/glxp/api/controller/trace/TraceManuOrderController.java +++ b/src/main/java/com/glxp/api/controller/trace/TraceManuOrderController.java @@ -7,16 +7,12 @@ import com.glxp.api.annotation.AuthRuleAnnotation; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; -import com.glxp.api.entity.purchase.SupCertRemindMsgEntity; -import com.glxp.api.entity.sup.UserCertEntity; import com.glxp.api.entity.trace.TraceManuCodeRelEntity; import com.glxp.api.entity.trace.TraceManuOrderEntity; import com.glxp.api.req.trace.*; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.trace.TraceManuCodeRellResponse; import com.glxp.api.res.trace.TraceManuOrderResponse; -import com.glxp.api.res.trace.TraceRecordResponse; -import com.glxp.api.res.trace.TraceTaskDlResponse; import com.glxp.api.service.trace.TraceManuCodeRelService; import com.glxp.api.service.trace.TraceManuOrderService; import com.glxp.api.service.trace.TraceTaskService; diff --git a/src/main/java/com/glxp/api/controller/trace/TraceTaskController.java b/src/main/java/com/glxp/api/controller/trace/TraceTaskController.java index ae9cdba..88f93f9 100644 --- a/src/main/java/com/glxp/api/controller/trace/TraceTaskController.java +++ b/src/main/java/com/glxp/api/controller/trace/TraceTaskController.java @@ -1,37 +1,19 @@ package com.glxp.api.controller.trace; -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.util.IdUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.annotation.AuthRuleAnnotation; -import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; -import com.glxp.api.entity.trace.TraceManuCodeRelEntity; -import com.glxp.api.entity.trace.TraceManuOrderEntity; -import com.glxp.api.req.trace.TraceManuDetailRequest; -import com.glxp.api.req.trace.TraceManuOrderRequest; -import com.glxp.api.req.trace.TraceManuOrderUploadRequest; import com.glxp.api.req.trace.TraceTaskDetailRequest; import com.glxp.api.res.PageSimpleResponse; -import com.glxp.api.res.trace.TraceManuCodeRellResponse; -import com.glxp.api.res.trace.TraceManuOrderResponse; import com.glxp.api.res.trace.TraceTaskDlResponse; -import com.glxp.api.service.trace.TraceManuCodeRelService; -import com.glxp.api.service.trace.TraceManuOrderService; import com.glxp.api.service.trace.TraceTaskService; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; -import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Date; import java.util.List; diff --git a/src/main/java/com/glxp/api/controller/trace/UdiTraceController.java b/src/main/java/com/glxp/api/controller/trace/UdiTraceController.java index a899cbc..7db4ddf 100644 --- a/src/main/java/com/glxp/api/controller/trace/UdiTraceController.java +++ b/src/main/java/com/glxp/api/controller/trace/UdiTraceController.java @@ -28,6 +28,7 @@ import com.glxp.api.util.GennerOrderUtils; import com.glxp.api.util.udi.FilterUdiUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; +import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -263,6 +264,7 @@ public class UdiTraceController extends BaseController { * @param bindingResult * @return */ + @Transactional @AuthRuleAnnotation("udi/trace/order/upload") @PostMapping("udi/trace/order/upload") public BaseResponse uploadOrder(@RequestBody TraceOrderUploadRequest traceOrderUploadRequest, BindingResult bindingResult) { @@ -275,6 +277,9 @@ public class UdiTraceController extends BaseController { return ResultVOUtils.error(500, "任务已过期,或任务不存在!"); } + //清空历史数据 + traceOrderService.deleteByCompanyId(taskNoticeEntity.getProdudctRecordIdFk(), taskNoticeEntity.getCompanyIdFk()); + TraceOrderEntity traceOrderEntity = new TraceOrderEntity(); BeanUtils.copyProperties(traceOrderUploadRequest, traceOrderEntity); traceOrderEntity.setId(IdUtil.getSnowflakeNextId()); @@ -296,6 +301,7 @@ public class UdiTraceController extends BaseController { * @param bindingResult * @return */ + @Transactional @AuthRuleAnnotation("udi/trace/manuOrder/upload") @PostMapping("udi/trace/manuOrder/upload") public BaseResponse uploadManuOrder(@RequestBody TraceManuOrderUploadRequest traceManuOrderUploadRequest, BindingResult bindingResult) { @@ -308,10 +314,21 @@ public class UdiTraceController extends BaseController { if (taskNoticeEntity == null) { return ResultVOUtils.error(500, "任务已过期,或任务不存在!"); } + + //清除历史数据 + TraceManuOrderEntity originOrder = traceManuOrderService.findByBillNo(traceManuOrderUploadRequest.getBillNo(), taskNoticeEntity.getProdudctRecordIdFk(), taskNoticeEntity.getCompanyIdFk()); + if (originOrder != null) { + traceManuOrderService.removeById(originOrder.getId()); + traceManuCodeRelService.remove(new QueryWrapper().eq("manuOrderIdFk", originOrder.getId())); + } + + //新增生产订单 TraceManuOrderEntity traceManuOrderEntity = new TraceManuOrderEntity(); BeanUtils.copyProperties(traceManuOrderUploadRequest, traceManuOrderEntity); traceManuOrderEntity.setId(IdUtil.getSnowflakeNextId()); traceManuOrderService.save(traceManuOrderEntity); + + //新增订单关联明细 List traceManuDetailRequests = traceManuOrderUploadRequest.getDetails(); if (CollUtil.isNotEmpty(traceManuDetailRequests)) { for (TraceManuDetailRequest traceManuDetailRequest : traceManuDetailRequests) { diff --git a/src/main/java/com/glxp/api/service/trace/TraceManuOrderService.java b/src/main/java/com/glxp/api/service/trace/TraceManuOrderService.java index bab828f..de60b1d 100644 --- a/src/main/java/com/glxp/api/service/trace/TraceManuOrderService.java +++ b/src/main/java/com/glxp/api/service/trace/TraceManuOrderService.java @@ -1,19 +1,45 @@ package com.glxp.api.service.trace; -import com.glxp.api.entity.trace.TraceManuOrderEntity; -import com.baomidou.mybatisplus.extension.service.IService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.github.pagehelper.PageHelper; import com.glxp.api.req.trace.TraceManuOrderRequest; -import com.glxp.api.req.trace.TraceRecordRequest; import com.glxp.api.res.trace.TraceManuOrderResponse; -import com.glxp.api.res.trace.TraceRecordResponse; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.glxp.api.entity.trace.TraceManuOrderEntity; +import com.glxp.api.dao.trace.TraceManuOrderMapper; +import javax.annotation.Resource; +import java.util.Collections; import java.util.List; -public interface TraceManuOrderService extends IService { +@Service +public class TraceManuOrderService extends ServiceImpl { + - List filterTraces(TraceManuOrderRequest traceManuOrderRequest); + @Resource + TraceManuOrderMapper traceManuOrderMapper; + public List filterTraces(TraceManuOrderRequest traceManuOrderRequest) { + if (traceManuOrderRequest == null) { + return Collections.emptyList(); + } + if (traceManuOrderRequest.getPage() != null) { + int offset = (traceManuOrderRequest.getPage() - 1) * traceManuOrderRequest.getLimit(); + PageHelper.offsetPage(offset, traceManuOrderRequest.getLimit()); + } + return traceManuOrderMapper.filterTraces(traceManuOrderRequest); + } + public TraceManuOrderEntity findByBillNo(String billNo, Long traceProductIdFk, Long companyIdFk) { + TraceManuOrderEntity traceManuOrderEntity = + traceManuOrderMapper.selectOne(new QueryWrapper() + .eq("billNo", billNo) + .eq("traceProductIdFk", traceProductIdFk) + .eq("companyIdFk", companyIdFk) + ); + return traceManuOrderEntity; + } } diff --git a/src/main/java/com/glxp/api/service/trace/TraceOrderService.java b/src/main/java/com/glxp/api/service/trace/TraceOrderService.java index 2f679b6..50886ba 100644 --- a/src/main/java/com/glxp/api/service/trace/TraceOrderService.java +++ b/src/main/java/com/glxp/api/service/trace/TraceOrderService.java @@ -4,7 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; import com.glxp.api.entity.trace.TraceRecordLogEntity; import com.glxp.api.req.trace.TraceOrderDetailRequest; +import com.glxp.api.req.trace.TraceProductRecordRequest; import com.glxp.api.res.trace.TraceOrderResponse; +import com.glxp.api.res.trace.TraceProductRecordResponse; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.glxp.api.dao.trace.TraceOrderMapper; @@ -33,10 +35,26 @@ public class TraceOrderService extends ServiceImpl findByProductIdFk(Long traceProductIdFk) { return traceOrderMapper.selectList(new QueryWrapper().eq("traceProductIdFk", traceProductIdFk)); } + + public List findByCompanyId(Long traceProductIdFk, Long companyId) { + return traceOrderMapper.selectList(new QueryWrapper() + .eq("traceProductIdFk", traceProductIdFk) + .eq("companyIdFk", companyId)); + } + + + public boolean deleteByCompanyId(Long traceProductIdFk, Long companyId) { + return traceOrderMapper.delete(new QueryWrapper() + .eq("traceProductIdFk", traceProductIdFk) + .eq("companyIdFk", companyId)) > 0; + } + + public List findByRecordId(Long recordId) { TraceRecordLogEntity traceRecordLogEntity = traceRecordService.getById(recordId); if (traceRecordLogEntity == null) @@ -44,5 +62,13 @@ public class TraceOrderService extends ServiceImpl().eq("traceProductIdFk", traceRecordLogEntity.getTraceProductIdFk())); } - + public List filterBatchNo(TraceProductRecordRequest traceProductRecordRequest) { + if (traceProductRecordRequest == null) { + return Collections.emptyList(); + } + int offset = (traceProductRecordRequest.getPage() - 1) * traceProductRecordRequest.getLimit(); + PageHelper.offsetPage(offset, traceProductRecordRequest.getLimit()); + List data = traceOrderMapper.filterBatchNo(traceProductRecordRequest); + return data; + } } diff --git a/src/main/java/com/glxp/api/service/trace/UdiTraceService.java b/src/main/java/com/glxp/api/service/trace/UdiTraceService.java index 162f519..824b7d4 100644 --- a/src/main/java/com/glxp/api/service/trace/UdiTraceService.java +++ b/src/main/java/com/glxp/api/service/trace/UdiTraceService.java @@ -164,7 +164,6 @@ public class UdiTraceService { } // 创建现场检查询任务 - public void createCheckTraceTask(TraceProductDetailEntity traceProductDetailEntity, Long companyId) { //1.查询出入库单消息是否已经上传 diff --git a/src/main/java/com/glxp/api/service/trace/impl/TraceManuOrderServiceImpl.java b/src/main/java/com/glxp/api/service/trace/impl/TraceManuOrderServiceImpl.java deleted file mode 100644 index cbd919e..0000000 --- a/src/main/java/com/glxp/api/service/trace/impl/TraceManuOrderServiceImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.glxp.api.service.trace.impl; - -import com.github.pagehelper.PageHelper; -import com.glxp.api.dao.trace.TraceRecordMapper; -import com.glxp.api.req.trace.TraceManuOrderRequest; -import com.glxp.api.req.trace.TraceRecordRequest; -import com.glxp.api.res.trace.TraceManuOrderResponse; -import com.glxp.api.res.trace.TraceRecordResponse; -import com.glxp.api.service.trace.TraceManuOrderService; -import org.springframework.stereotype.Service; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.glxp.api.entity.trace.TraceManuOrderEntity; -import com.glxp.api.dao.trace.TraceManuOrderMapper; - -import javax.annotation.Resource; -import java.util.Collections; -import java.util.List; - -@Service -public class TraceManuOrderServiceImpl extends ServiceImpl implements TraceManuOrderService { - - - @Resource - TraceManuOrderMapper traceManuOrderMapper; - - @Override - public List filterTraces(TraceManuOrderRequest traceManuOrderRequest) { - if (traceManuOrderRequest == null) { - return Collections.emptyList(); - } - if (traceManuOrderRequest.getPage() != null) { - int offset = (traceManuOrderRequest.getPage() - 1) * traceManuOrderRequest.getLimit(); - PageHelper.offsetPage(offset, traceManuOrderRequest.getLimit()); - } - return traceManuOrderMapper.filterTraces(traceManuOrderRequest); - } - - -} diff --git a/src/main/java/com/glxp/api/service/trace/impl/TraceOrderServiceImpl.java b/src/main/java/com/glxp/api/service/trace/impl/TraceOrderServiceImpl.java deleted file mode 100644 index b59d1dd..0000000 --- a/src/main/java/com/glxp/api/service/trace/impl/TraceOrderServiceImpl.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.glxp.api.service.trace.impl; - -import com.github.pagehelper.PageHelper; -import com.glxp.api.common.util.ResultVOUtils; -import com.glxp.api.entity.sup.UserCompanyEntity; -import com.glxp.api.req.auth.FilterUserComapanyRequest; -import com.glxp.api.req.trace.TraceOrderDetailRequest; -import com.glxp.api.req.trace.TraceOrderRequest; -import com.glxp.api.req.trace.TraceProductRecordRequest; -import com.glxp.api.res.trace.TraceOrderResponse; -import com.glxp.api.res.trace.TraceProductRecordResponse; -import com.glxp.api.service.trace.TraceOrderService; -import org.springframework.stereotype.Service; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.glxp.api.dao.trace.TraceOrderMapper; -import com.glxp.api.entity.trace.TraceOrderEntity; - -import javax.annotation.Resource; -import java.util.Collections; -import java.util.List; - -@Service -public class TraceOrderServiceImpl extends ServiceImpl implements TraceOrderService { - - @Resource - TraceOrderMapper traceOrderMapper; - - @Override - public List queryTraceOrderList(TraceOrderDetailRequest traceOrderDetailRequest) { - if (traceOrderDetailRequest == null) { - return Collections.emptyList(); - } - if (traceOrderDetailRequest.getPage() != null) { - int offset = (traceOrderDetailRequest.getPage() - 1) * traceOrderDetailRequest.getLimit(); - PageHelper.offsetPage(offset, traceOrderDetailRequest.getLimit()); - } - return traceOrderMapper.queryTraceOrderList(traceOrderDetailRequest); - } - - @Override - public List filterBatchNo(TraceProductRecordRequest traceProductRecordRequest) { - if (traceProductRecordRequest == null) { - return Collections.emptyList(); - } - int offset = (traceProductRecordRequest.getPage() - 1) * traceProductRecordRequest.getLimit(); - PageHelper.offsetPage(offset, traceProductRecordRequest.getLimit()); - List data = traceOrderMapper.filterBatchNo(traceProductRecordRequest); - return data; - } -}