From 6014dd764006524b4df12ef2ab6578e6119e1852 Mon Sep 17 00:00:00 2001 From: anthonywj Date: Fri, 10 Feb 2023 13:34:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=95=E6=8D=AE=E7=B1=BB=E5=9E=8B=EF=BC=8C?= =?UTF-8?q?=E5=A7=94=E6=89=98=E9=AA=8C=E6=94=B6=E7=9B=B8=E5=85=B3=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../auth/InvWarehouseController.java | 32 +--- .../basic/BasicBussinessTypeController.java | 20 +++ .../basic/EntrustReceController.java | 117 +++++++++++++ .../controller/inout/IoOrderController.java | 12 +- .../inout/IoOrderReviewController.java | 101 +++++++++++ .../glxp/api/dao/basic/EntrustReceDao.java | 31 ++++ .../api/entity/basic/DlEntrustReceEntity.java | 14 ++ .../api/entity/basic/EntrustReceEntity.java | 116 ++++++++++++ .../api/req/basic/BasicEntrustRecRequest.java | 23 +++ .../glxp/api/req/basic/BusNoUserRequest.java | 10 ++ .../api/req/inout/ReviewFinishRequest.java | 13 ++ .../api/res/auth/WarehouseUserResponse.java | 2 +- .../api/res/basic/EntrustReceResponse.java | 62 +++++++ .../api/res/inout/AcceptOrderResponse.java | 22 +++ .../api/service/basic/EntrustReceService.java | 32 ++++ .../basic/IBasicBussinessTypeService.java | 2 + .../impl/BasicBussinessTypeServiceImpl.java | 6 + .../basic/impl/EntrustReceServiceImpl.java | 115 ++++++++++++ .../service/inout/IoCheckInoutService.java | 71 ++++---- .../mybatis/mapper/auth/WarehouseUserDao.xml | 60 ++++--- .../mapper/basic/BasicBussinessTypeDao.xml | 5 +- .../mybatis/mapper/basic/EntrustReceDao.xml | 165 ++++++++++++++++++ 22 files changed, 935 insertions(+), 96 deletions(-) create mode 100644 src/main/java/com/glxp/api/controller/basic/EntrustReceController.java create mode 100644 src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java create mode 100644 src/main/java/com/glxp/api/dao/basic/EntrustReceDao.java create mode 100644 src/main/java/com/glxp/api/entity/basic/DlEntrustReceEntity.java create mode 100644 src/main/java/com/glxp/api/entity/basic/EntrustReceEntity.java create mode 100644 src/main/java/com/glxp/api/req/basic/BasicEntrustRecRequest.java create mode 100644 src/main/java/com/glxp/api/req/basic/BusNoUserRequest.java create mode 100644 src/main/java/com/glxp/api/req/inout/ReviewFinishRequest.java create mode 100644 src/main/java/com/glxp/api/res/basic/EntrustReceResponse.java create mode 100644 src/main/java/com/glxp/api/res/inout/AcceptOrderResponse.java create mode 100644 src/main/java/com/glxp/api/service/basic/EntrustReceService.java create mode 100644 src/main/java/com/glxp/api/service/basic/impl/EntrustReceServiceImpl.java create mode 100644 src/main/resources/mybatis/mapper/basic/EntrustReceDao.xml diff --git a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java index 8616461aa..c869feaad 100644 --- a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java +++ b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java @@ -70,10 +70,6 @@ public class InvWarehouseController extends BaseController { @GetMapping("spms/sub/inv/warehouse/filter") public BaseResponse filterInvWarehouse(FilterInvSubWarehouseRequest filterInvSubWarehouseRequest) { List responses = invWarehouseService.filterInvSubWarehouseResponse(filterInvSubWarehouseRequest); -// PageInfo pageInfo = new PageInfo<>(responses); -// PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); -// pageSimpleResponse.setTotal(pageInfo.getTotal()); - // pageSimpleResponse.setList(responses); return ResultVOUtils.success(responses); } @@ -382,32 +378,10 @@ public class InvWarehouseController extends BaseController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - filterInvLinkDataRequest.setUserName(filterInvLinkDataRequest.getKey()); List warehouseUserList = warehouseUserService.getWarehouseUserList(filterInvLinkDataRequest); - filterInvLinkDataRequest.setUserName(null); - filterInvLinkDataRequest.setEmployeeName(filterInvLinkDataRequest.getKey()); - List warehouseUserList1 = warehouseUserService.getWarehouseUserList(filterInvLinkDataRequest); - PageInfo pageInfo = null; - if (warehouseUserList.size() != 0) { - pageInfo = new PageInfo<>(warehouseUserList); - } else if (warehouseUserList1.size() != 0) { - pageInfo = new PageInfo<>(warehouseUserList1); - } else { - pageInfo = new PageInfo<>(warehouseUserList); - } - - - List result = new ArrayList<>(); - if (CollUtil.isNotEmpty(pageInfo.getList())) { - pageInfo.getList().forEach(warehouseUserEntity -> { - WarehouseUserResponse warehouseUserResponse = new WarehouseUserResponse(); - BeanUtils.copyProperties(warehouseUserEntity, warehouseUserResponse); - warehouseUserResponse.setUserid(warehouseUserEntity.getUserid() + ""); - result.add(warehouseUserResponse); - }); - } - PageSimpleResponse response = new PageSimpleResponse<>(); - response.setList(result); + PageInfo pageInfo = new PageInfo<>(warehouseUserList); + PageSimpleResponse response = new PageSimpleResponse<>(); + response.setList(pageInfo.getList()); response.setTotal(pageInfo.getTotal()); return ResultVOUtils.success(response); } diff --git a/src/main/java/com/glxp/api/controller/basic/BasicBussinessTypeController.java b/src/main/java/com/glxp/api/controller/basic/BasicBussinessTypeController.java index cdff9c6b0..f8853c1ed 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicBussinessTypeController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicBussinessTypeController.java @@ -11,6 +11,7 @@ import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.controller.BaseController; import com.glxp.api.entity.basic.BasicBussinessTypeEntity; +import com.glxp.api.req.basic.BusNoUserRequest; import com.glxp.api.req.basic.BussinessTypeSaveRequest; import com.glxp.api.req.basic.FilterBussinessTypeRequest; import com.glxp.api.req.system.DeleteRequest; @@ -307,4 +308,23 @@ public class BasicBussinessTypeController extends BaseController { return ResultVOUtils.success(list); } + + @AuthRuleAnnotation("") + @GetMapping("/udiwms/localBusType/filterUnUse") + public BaseResponse filterUnUse(BusNoUserRequest busNoUserRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + FilterBussinessTypeRequest bussinessTypeFilterRequest = new FilterBussinessTypeRequest(); + bussinessTypeFilterRequest.setEnable(true); + + List bussinessTypeEntities; + bussinessTypeEntities = basicBussinessTypeService.selectIgnoreSelf(busNoUserRequest.getCurAction()); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setList(bussinessTypeEntities); + return ResultVOUtils.success(pageSimpleResponse); + } + } diff --git a/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java b/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java new file mode 100644 index 000000000..c08649a1d --- /dev/null +++ b/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java @@ -0,0 +1,117 @@ +package com.glxp.api.controller.basic; + +import com.github.pagehelper.PageInfo; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.controller.BaseController; +import com.glxp.api.entity.basic.BasicBussinessTypeEntity; +import com.glxp.api.entity.basic.DlEntrustReceEntity; +import com.glxp.api.entity.basic.EntrustReceEntity; +import com.glxp.api.req.auth.BussinessTypeFilterRequest; +import com.glxp.api.req.basic.BasicEntrustRecRequest; +import com.glxp.api.req.basic.FilterBussinessTypeRequest; +import com.glxp.api.req.system.DeleteRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.basic.EntrustReceResponse; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.basic.EntrustReceService; +import com.glxp.api.service.basic.IBasicBussinessTypeService; +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 javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +@RestController +public class EntrustReceController extends BaseController { + + + @Resource + EntrustReceService entrustReceService; + @Resource + CustomerService customerService; + @Resource + private IBasicBussinessTypeService bussinessTypeService; + + @GetMapping("/spms/entrust/rece/filter") + public BaseResponse getEntrustRece(BasicEntrustRecRequest basicExportStatusRequest) { + List entrustReceEntities = entrustReceService.filterJoinEntrustRec(basicExportStatusRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(entrustReceEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(entrustReceEntities); + return ResultVOUtils.success(pageSimpleResponse); + } + + //手持终端下载委托验收 + @GetMapping("/spms/entrust/rece/downloads") + public BaseResponse downloadEntrust(BasicEntrustRecRequest basicExportStatusRequest) { + basicExportStatusRequest.setEntrustUser(getUserId()); + List entrustReceEntities = entrustReceService.downloadEntrustRec(basicExportStatusRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(entrustReceEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(entrustReceEntities); + return ResultVOUtils.success(pageSimpleResponse); + } + + + @GetMapping("/spms/entrust/rece/filterAllNoUse") + public BaseResponse filterAllNoUse(FilterBussinessTypeRequest bussinessTypeFilterRequest) { + bussinessTypeFilterRequest.setUserId(getUserId()); + List bussinessTypeEntities = bussinessTypeService.filterByUser(bussinessTypeFilterRequest); + return ResultVOUtils.success(bussinessTypeEntities); + + } + + + @PostMapping("/spms/entrust/rece/add") + public BaseResponse aadEntrustRece(@RequestBody EntrustReceEntity entrustReceEntity) { + entrustReceEntity.setUserId(getUserId()); + entrustReceEntity.setUpdateTime(new Date()); + + EntrustReceEntity temp = entrustReceService.findByUnique(entrustReceEntity.getAction(), entrustReceEntity.getEntrustUser()); + if (temp != null) { + return ResultVOUtils.error(500, "已存在相同的委托验收"); + } + int b = entrustReceService.insertEntrustRec(entrustReceEntity); + if (b > 0) { + return ResultVOUtils.success("添加成功!"); + } else { + return ResultVOUtils.error(500, "添加失败!"); + } + + } + + + @PostMapping("/spms/entrust/rece/update") + public BaseResponse updateEntrustRece(@RequestBody EntrustReceEntity entrustReceEntity) { + entrustReceEntity.setUpdateTime(new Date()); + + + int b = entrustReceService.updateEntrustRec(entrustReceEntity); + if (b > 0) { + return ResultVOUtils.success("添加成功!"); + } else { + return ResultVOUtils.error(500, "添加失败!"); + } + + } + + @PostMapping("/spms/entrust/rece/delete") + public BaseResponse deleteByStatus(@RequestBody DeleteRequest deleteRequest) { + + boolean b = entrustReceService.deleteById(deleteRequest.getId()); + if (b) + return ResultVOUtils.success("删除成功!"); + else + return ResultVOUtils.error(500, "删除失败!"); + } + + +} diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java index b0cae91db..2b610ad22 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java @@ -1,5 +1,6 @@ package com.glxp.api.controller.inout; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.annotation.AuthRuleAnnotation; @@ -15,9 +16,11 @@ import com.glxp.api.req.inout.AddOrderRequest; import com.glxp.api.req.inout.FilterOrderRequest; import com.glxp.api.req.system.DeleteRequest; import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.inout.AcceptOrderResponse; import com.glxp.api.res.inout.IoOrderResponse; import com.glxp.api.service.basic.IBasicBussinessTypeService; import com.glxp.api.service.inout.*; +import com.glxp.api.util.RedisUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; @@ -41,6 +44,10 @@ public class IoOrderController { private IoCodeTempService codeTempService; @Resource private IoCheckInoutService checkInoutService; + @Resource + IoOrderDetailBizService orderDetailBizService; + @Resource + IoOrderDetailCodeService orderDetailCodeService; /** * 查询单据列表 @@ -98,10 +105,6 @@ public class IoOrderController { return ResultVOUtils.success("保存成功!"); } - @Resource - IoOrderDetailBizService orderDetailBizService; - @Resource - IoOrderDetailCodeService orderDetailCodeService; //单据提交 @AuthRuleAnnotation("") @@ -133,4 +136,5 @@ public class IoOrderController { } + } diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java new file mode 100644 index 000000000..d0507771e --- /dev/null +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java @@ -0,0 +1,101 @@ +package com.glxp.api.controller.inout; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +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.constant.ConstantStatus; +import com.glxp.api.controller.BaseController; +import com.glxp.api.entity.auth.AuthAdmin; +import com.glxp.api.entity.basic.EntrustReceEntity; +import com.glxp.api.entity.inout.IoOrderDetailBizEntity; +import com.glxp.api.entity.inout.IoOrderEntity; +import com.glxp.api.req.inout.ReviewFinishRequest; +import com.glxp.api.res.inout.AcceptOrderResponse; +import com.glxp.api.service.inout.IoAddInoutService; +import com.glxp.api.service.inout.IoCheckInoutService; +import com.glxp.api.service.inout.IoOrderDetailBizService; +import com.glxp.api.service.inout.IoOrderService; +import com.glxp.api.util.RedisUtil; +import lombok.extern.slf4j.Slf4j; +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 javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +//单据验收 +@Slf4j +@RestController +public class IoOrderReviewController extends BaseController { + + @Resource + private RedisUtil redisUtil; + @Resource + IoOrderDetailBizService orderDetailBizService; + @Resource + IoOrderService orderService; + @Resource + IoCheckInoutService ioCheckInoutService; + + //获取验收单据业务详情 + @AuthRuleAnnotation("") + @GetMapping("/udiwms/stock/order/accept/getOrder") + public BaseResponse getAcceptOrder(String billNo) { + if (StrUtil.isBlank(billNo)) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + AcceptOrderResponse acceptOrderEntity = new AcceptOrderResponse(); + acceptOrderEntity.setBillNo(billNo); + List datas = (List) redisUtil.get(ConstantStatus.REDIS_BILLNO + billNo); + if (CollUtil.isNotEmpty(datas)) { + acceptOrderEntity.setOrderDetailEntities(datas); + acceptOrderEntity.setExitAccept(true); + } else { + List stockOrderDetailEntities = orderDetailBizService.findByOrderId(billNo); + acceptOrderEntity.setOrderDetailEntities(stockOrderDetailEntities); + acceptOrderEntity.setExitAccept(false); + } + return ResultVOUtils.success(acceptOrderEntity); + + } + + + //前端直接验收完成 + @AuthRuleAnnotation("") + @PostMapping("/spms/inout/order/web/updateStatus") + public BaseResponse webUpdateStatus(@RequestBody ReviewFinishRequest updateExportStatusRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + IoOrderEntity orderEntity = orderService.findByBillNo(updateExportStatusRequest.getOrderId()); + if (orderEntity == null) { + return ResultVOUtils.error(500, "未找到该业务单据"); + } + return updateReview(orderEntity); + } + + + public BaseResponse updateReview(IoOrderEntity orderEntity) { + AuthAdmin authAdmin = getUser(); + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + orderEntity.setReviewUser(authAdmin.getId() + ""); + orderEntity.setUpdateTime(new Date()); + orderEntity.setAuditTime(new Date()); + orderService.update(orderEntity); + redisUtil.del(ConstantStatus.REDIS_BILLNO + orderEntity.getBillNo()); + redisUtil.del(ConstantStatus.REDIS_BILLNO_CODES + orderEntity.getBillNo()); + //验收完成->进入流程 + ioCheckInoutService.checkSecond(orderEntity); + return ResultVOUtils.success("更新成功"); + } + +} diff --git a/src/main/java/com/glxp/api/dao/basic/EntrustReceDao.java b/src/main/java/com/glxp/api/dao/basic/EntrustReceDao.java new file mode 100644 index 000000000..b3c98f633 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/basic/EntrustReceDao.java @@ -0,0 +1,31 @@ +package com.glxp.api.dao.basic; + +import com.glxp.api.dao.BaseMapperPlus; +import com.glxp.api.entity.basic.DlEntrustReceEntity; +import com.glxp.api.entity.basic.EntrustReceEntity; +import com.glxp.api.req.basic.BasicEntrustRecRequest; +import com.glxp.api.res.basic.EntrustReceResponse; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface EntrustReceDao extends BaseMapperPlus { + + List filterEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest); + + List downloadEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest); + + List filterJoinEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest); + + EntrustReceEntity findByUnique(@Param("action") String action, @Param("entrustUser") Long entrustUser); + + boolean insertEntrustRec(EntrustReceEntity ioOrderStatusEntity); + + boolean deleteById(String id); + + boolean deleteAll(); + + +} diff --git a/src/main/java/com/glxp/api/entity/basic/DlEntrustReceEntity.java b/src/main/java/com/glxp/api/entity/basic/DlEntrustReceEntity.java new file mode 100644 index 000000000..79aea2037 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/basic/DlEntrustReceEntity.java @@ -0,0 +1,14 @@ +package com.glxp.api.entity.basic; + +import lombok.Data; + +@Data +public class DlEntrustReceEntity { + + + private Integer id; + private String action; + private String name; + private String mainAction; + +} diff --git a/src/main/java/com/glxp/api/entity/basic/EntrustReceEntity.java b/src/main/java/com/glxp/api/entity/basic/EntrustReceEntity.java new file mode 100644 index 000000000..79d0e8496 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/basic/EntrustReceEntity.java @@ -0,0 +1,116 @@ +package com.glxp.api.entity.basic; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import org.apache.xpath.operations.Bool; + +import java.util.Date; + +@Data +@TableName(value = "basic_entrust_accept") +public class EntrustReceEntity { + + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + /** + * 当前单据类型 + */ + @TableField(value = "`action`") + private String action; + + /** + * 当前部门 + */ + @TableField(value = "curDept") + private String curDept; + + /** + * 当前仓库 + */ + @TableField(value = "curInv") + private String curInv; + + /** + * 当前用户 + */ + @TableField(value = "userId") + private Long userId; + + /** + * 委托分库 + */ + @TableField(value = "entrustDept") + private String entrustDept; + + /** + * 委托人仓库 + */ + @TableField(value = "entrustInv") + private String entrustInv; + + /** + * 委托验收后生成单据类型 + */ + @TableField(value = "entrustAction") + private String entrustAction; + + /** + * 委托人用户 + */ + @TableField(value = "entrustUser") + private Long entrustUser; + + /** + * 是否完成验收 + */ + @TableField(value = "finishRece") + private Boolean finishRece; + + /** + * 更新时间 + */ + @TableField(value = "updateTime") + private Date updateTime; + + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; + + /** + * 是否委托验收完成 + */ + @TableField(value = "entrustEnd") + private Integer entrustEnd; + + public static final String COL_ID = "id"; + + public static final String COL_ACTION = "action"; + + public static final String COL_CURDEPT = "curDept"; + + public static final String COL_CURINV = "curInv"; + + public static final String COL_USERID = "userId"; + + public static final String COL_ENTRUSTDEPT = "entrustDept"; + + public static final String COL_ENTRUSTINV = "entrustInv"; + + public static final String COL_ENTRUSTACTION = "entrustAction"; + + public static final String COL_ENTRUSTUSER = "entrustUser"; + + public static final String COL_FINISHRECE = "finishRece"; + + public static final String COL_UPDATETIME = "updateTime"; + + public static final String COL_REMARK = "remark"; + + public static final String COL_ENTRUSTEND = "entrustEnd"; +} diff --git a/src/main/java/com/glxp/api/req/basic/BasicEntrustRecRequest.java b/src/main/java/com/glxp/api/req/basic/BasicEntrustRecRequest.java new file mode 100644 index 000000000..1f7de8025 --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/BasicEntrustRecRequest.java @@ -0,0 +1,23 @@ +package com.glxp.api.req.basic; + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import java.util.Date; + +@Data +public class BasicEntrustRecRequest extends ListPageRequest { + + private Integer id; + private String action; + private String entrustInv; + private Long entrustUser; + private String userId; + private Date updateTime; + private String curInv; + private String lastUpdateTime; + private String entrustSubInv; + private String invWarehouseCode; + private String name; + +} diff --git a/src/main/java/com/glxp/api/req/basic/BusNoUserRequest.java b/src/main/java/com/glxp/api/req/basic/BusNoUserRequest.java new file mode 100644 index 000000000..ebb799111 --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/BusNoUserRequest.java @@ -0,0 +1,10 @@ +package com.glxp.api.req.basic; + +import lombok.Data; + +@Data +public class BusNoUserRequest { + + private String curAction; + +} diff --git a/src/main/java/com/glxp/api/req/inout/ReviewFinishRequest.java b/src/main/java/com/glxp/api/req/inout/ReviewFinishRequest.java new file mode 100644 index 000000000..a4b4a40ae --- /dev/null +++ b/src/main/java/com/glxp/api/req/inout/ReviewFinishRequest.java @@ -0,0 +1,13 @@ +package com.glxp.api.req.inout; + +import lombok.Data; + +@Data +public class ReviewFinishRequest { + private String orderId; + private Integer exportStatus; + private Integer checkStatus; + private String stockOrderId; + private Integer entrustId; + private boolean entrust; +} diff --git a/src/main/java/com/glxp/api/res/auth/WarehouseUserResponse.java b/src/main/java/com/glxp/api/res/auth/WarehouseUserResponse.java index 630274a4f..0dab4a012 100644 --- a/src/main/java/com/glxp/api/res/auth/WarehouseUserResponse.java +++ b/src/main/java/com/glxp/api/res/auth/WarehouseUserResponse.java @@ -18,7 +18,7 @@ public class WarehouseUserResponse { /** * 用户id */ - private String userid; + private Long userid; /** * 用户名/登录账号 diff --git a/src/main/java/com/glxp/api/res/basic/EntrustReceResponse.java b/src/main/java/com/glxp/api/res/basic/EntrustReceResponse.java new file mode 100644 index 000000000..7bf820d13 --- /dev/null +++ b/src/main/java/com/glxp/api/res/basic/EntrustReceResponse.java @@ -0,0 +1,62 @@ +package com.glxp.api.res.basic; + +import lombok.Data; + +import java.util.Date; + +@Data +public class EntrustReceResponse { + private Integer id; + private String action; + private String entrustInv; + private Long entrustUser; + private String userId; + private String entrustAction; + private Date updateTime; + private String remark; + private boolean finishRece; + private String curName; + + private String entrustName; + + /** + * 委托验收人 + */ + private String employeeName; + + /** + * 分库名称 + */ + private String entrustInvName; + + /** + * 当前仓库编码 + */ + private String curInv; + + /** + * 当前仓库名称 + */ + private String curInvName; + + /** + * 委托分库编码 + */ + private String entrustSubInv; + + /** + * 当前分库编码 + */ + private String invWarehouseCode; + + /** + * 当前分库名称 + */ + private String invWarehouseName; + + /** + * 委托分库名称 + */ + private String entrustSubInvName; + +} diff --git a/src/main/java/com/glxp/api/res/inout/AcceptOrderResponse.java b/src/main/java/com/glxp/api/res/inout/AcceptOrderResponse.java new file mode 100644 index 000000000..fa24c023e --- /dev/null +++ b/src/main/java/com/glxp/api/res/inout/AcceptOrderResponse.java @@ -0,0 +1,22 @@ +package com.glxp.api.res.inout; + +import com.glxp.api.entity.inout.IoOrderDetailBizEntity; +import lombok.Data; + +import java.util.List; + +@Data +public class AcceptOrderResponse { + + + private String billNo; + + private String code; + + private boolean isExitAccept; + + private boolean finishAccept; + + private List orderDetailEntities; + +} diff --git a/src/main/java/com/glxp/api/service/basic/EntrustReceService.java b/src/main/java/com/glxp/api/service/basic/EntrustReceService.java new file mode 100644 index 000000000..6843ac24c --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/EntrustReceService.java @@ -0,0 +1,32 @@ +package com.glxp.api.service.basic; + +import com.glxp.api.entity.basic.DlEntrustReceEntity; +import com.glxp.api.entity.basic.EntrustReceEntity; +import com.glxp.api.req.basic.BasicEntrustRecRequest; +import com.glxp.api.res.basic.EntrustReceResponse; + +import java.util.List; + +public interface EntrustReceService { + + EntrustReceEntity findById(Integer id); + + List filterEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest); + + EntrustReceEntity findByUnique(String action, Long entrustUser); + + List downloadEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest); + + List filterJoinEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest); + + int insertEntrustRec(EntrustReceEntity entrustReceEntity); + + boolean replaceEntrustRec(EntrustReceEntity entrustReceEntity); + + boolean deleteById(String id); + + boolean deleteAll(); + + int updateEntrustRec(EntrustReceEntity warehouseEntity); + +} diff --git a/src/main/java/com/glxp/api/service/basic/IBasicBussinessTypeService.java b/src/main/java/com/glxp/api/service/basic/IBasicBussinessTypeService.java index c1674d261..61d90da9c 100644 --- a/src/main/java/com/glxp/api/service/basic/IBasicBussinessTypeService.java +++ b/src/main/java/com/glxp/api/service/basic/IBasicBussinessTypeService.java @@ -108,4 +108,6 @@ public interface IBasicBussinessTypeService { * @return */ boolean checkBusTypeNameExists(String name, Integer id); + + List selectIgnoreSelf(String action); } diff --git a/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java index c676b4318..238997046 100644 --- a/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java +++ b/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java @@ -182,6 +182,12 @@ public class BasicBussinessTypeServiceImpl implements IBasicBussinessTypeService return true; } + @Override + public List selectIgnoreSelf(String action) { + List list = basicBussinessTypeDao.selectList(new QueryWrapper().ne("action", action)); + return list; + } + /** * 统一设置创建/更新信息 * diff --git a/src/main/java/com/glxp/api/service/basic/impl/EntrustReceServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/EntrustReceServiceImpl.java new file mode 100644 index 000000000..cd0ea3278 --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/impl/EntrustReceServiceImpl.java @@ -0,0 +1,115 @@ +package com.glxp.api.service.basic.impl; + +import cn.hutool.core.collection.CollUtil; +import com.github.pagehelper.PageHelper; +import com.glxp.api.dao.auth.InvSubWarehouseDao; +import com.glxp.api.dao.basic.EntrustReceDao; +import com.glxp.api.entity.basic.DlEntrustReceEntity; +import com.glxp.api.entity.basic.EntrustReceEntity; +import com.glxp.api.req.basic.BasicEntrustRecRequest; +import com.glxp.api.res.basic.EntrustReceResponse; +import com.glxp.api.service.basic.EntrustReceService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class EntrustReceServiceImpl implements EntrustReceService { + + @Resource + EntrustReceDao entrustReceDao; + @Resource + private InvSubWarehouseDao invSubWarehouseDao; + + @Override + public EntrustReceEntity findById(Integer id) { + BasicEntrustRecRequest basicEntrustRecRequest = new BasicEntrustRecRequest(); + basicEntrustRecRequest.setId(id); + List entrustReceEntities = entrustReceDao.filterEntrustRec(basicEntrustRecRequest); + if (CollUtil.isNotEmpty(entrustReceEntities)) { + return entrustReceEntities.get(0); + } + return null; + } + + @Override + public List filterEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest) { + + if (basicEntrustRecRequest == null) { + return Collections.emptyList(); + } + if (basicEntrustRecRequest.getPage() != null) { + int offset = (basicEntrustRecRequest.getPage() - 1) * basicEntrustRecRequest.getLimit(); + PageHelper.offsetPage(offset, basicEntrustRecRequest.getLimit()); + } + return entrustReceDao.filterEntrustRec(basicEntrustRecRequest); + } + + @Override + public EntrustReceEntity findByUnique(String action, Long entrustUser) { + return entrustReceDao.findByUnique(action, entrustUser); + } + + @Override + public List downloadEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest) { + if (basicEntrustRecRequest == null) { + return Collections.emptyList(); + } + if (basicEntrustRecRequest.getPage() != null) { + int offset = (basicEntrustRecRequest.getPage() - 1) * basicEntrustRecRequest.getLimit(); + PageHelper.offsetPage(offset, basicEntrustRecRequest.getLimit()); + } + return entrustReceDao.downloadEntrustRec(basicEntrustRecRequest); + } + + @Override + public List filterJoinEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest) { + + if (basicEntrustRecRequest == null) { + return Collections.emptyList(); + } + if (basicEntrustRecRequest.getPage() != null) { + int offset = (basicEntrustRecRequest.getPage() - 1) * basicEntrustRecRequest.getLimit(); + PageHelper.offsetPage(offset, basicEntrustRecRequest.getLimit()); + } + List entrustReceResponses = entrustReceDao.filterJoinEntrustRec(basicEntrustRecRequest); + if (CollUtil.isNotEmpty(entrustReceResponses)) { + //查询当前分库名称和委托验收分库名称 + entrustReceResponses.forEach(entrustReceResponse -> { + String invWarehouseName = invSubWarehouseDao.selectNameByCode(entrustReceResponse.getInvWarehouseCode());//查询当前分库名称 + entrustReceResponse.setInvWarehouseName(invWarehouseName); + + String entrustSubInvName = invSubWarehouseDao.selectNameByCode(entrustReceResponse.getEntrustSubInv()); + entrustReceResponse.setEntrustSubInvName(entrustSubInvName); + }); + } + return entrustReceResponses; + } + + @Override + public int insertEntrustRec(EntrustReceEntity entrustReceEntity) { + return entrustReceDao.insert(entrustReceEntity); + } + + @Override + public boolean replaceEntrustRec(EntrustReceEntity entrustReceEntity) { + return entrustReceDao.insertEntrustRec(entrustReceEntity); + } + + @Override + public boolean deleteById(String id) { + return entrustReceDao.deleteById(id); + } + + @Override + public boolean deleteAll() { + return entrustReceDao.deleteAll(); + } + + @Override + public int updateEntrustRec(EntrustReceEntity entrustReceEntity) { + return entrustReceDao.updateById(entrustReceEntity); + } +} diff --git a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java index 4d1f36e4b..1675c63bb 100644 --- a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java +++ b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java @@ -334,43 +334,46 @@ public class IoCheckInoutService { //二次校验 public void checkSecond(IoOrderEntity orderEntity) { BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction()); - if (bussinessTypeEntity.isSecCheckEnable()) { - if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_UDIMS) { - if (!bussinessTypeEntity.isSecCheckUdims()) { - orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); - } - } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_WEBNEW) { - if (!bussinessTypeEntity.isSecCheckWebNew()) { - orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); - } - } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PDAED) { - if (!bussinessTypeEntity.isSecCheckPdaEd()) { - orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); - } - } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PDAUN) { - if (!bussinessTypeEntity.isSecCheckPdaUn()) { - orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); - } - } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PC) { - if (!bussinessTypeEntity.isSecCheckPc()) { - orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); - } - } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_CHANGE) { - if (!bussinessTypeEntity.isSecCheckChange()) { - orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); - } - } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PEACE_CHANGE) { - if (!bussinessTypeEntity.isSecCheckBalance()) { - orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); - } - } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_COPY) { - if (!bussinessTypeEntity.isSecCheckCopy()) { - orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + if (orderEntity.getStatus() != ConstantStatus.ORDER_STATUS_AUDITED) { + if (bussinessTypeEntity.isSecCheckEnable()) { + if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_UDIMS) { + if (!bussinessTypeEntity.isSecCheckUdims()) { + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + } + } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_WEBNEW) { + if (!bussinessTypeEntity.isSecCheckWebNew()) { + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + } + } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PDAED) { + if (!bussinessTypeEntity.isSecCheckPdaEd()) { + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + } + } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PDAUN) { + if (!bussinessTypeEntity.isSecCheckPdaUn()) { + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + } + } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PC) { + if (!bussinessTypeEntity.isSecCheckPc()) { + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + } + } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_CHANGE) { + if (!bussinessTypeEntity.isSecCheckChange()) { + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + } + } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PEACE_CHANGE) { + if (!bussinessTypeEntity.isSecCheckBalance()) { + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + } + } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_COPY) { + if (!bussinessTypeEntity.isSecCheckCopy()) { + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); + } } + } else { + orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); } - } else { - orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED); } + if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_AUDITED) { orderEntity.setUpdateTime(new Date()); orderService.update(orderEntity); diff --git a/src/main/resources/mybatis/mapper/auth/WarehouseUserDao.xml b/src/main/resources/mybatis/mapper/auth/WarehouseUserDao.xml index 3c768da42..350a23b39 100644 --- a/src/main/resources/mybatis/mapper/auth/WarehouseUserDao.xml +++ b/src/main/resources/mybatis/mapper/auth/WarehouseUserDao.xml @@ -9,11 +9,15 @@ - - id, code, userId, userName, isDirector,locSubInvCode + id, + code, + userId, + userName, + isDirector, + locSubInvCode - delete from auth_warehouse_user + delete + from auth_warehouse_user where id = #{id,jdbcType=INTEGER} - delete from auth_warehouse_user - where userid = #{id} and code=#{code} + delete + from auth_warehouse_user + where userid = #{id} + and code = #{code} - insert into auth_warehouse_user (code, userId, userName, isDirector - ) - values (#{code,jdbcType=VARCHAR}, #{userid,jdbcType=BIGINT}, #{username,jdbcType=VARCHAR}, #{isDirector} - ) + insert into auth_warehouse_user (code, userId, userName, isDirector) + values (#{code,jdbcType=VARCHAR}, #{userid,jdbcType=BIGINT}, #{username,jdbcType=VARCHAR}, #{isDirector}) @@ -102,10 +106,9 @@ update auth_warehouse_user - set code = #{code,jdbcType=VARCHAR}, - userId = #{userid,jdbcType=BIGINT}, - userName = #{username,jdbcType=VARCHAR} - isDirector = #{isDirector} + set code = #{code,jdbcType=VARCHAR}, + userId = #{userid,jdbcType=BIGINT}, + userName = #{username,jdbcType=VARCHAR} isDirector = #{isDirector} where id = #{id,jdbcType=INTEGER} @@ -167,12 +170,11 @@ insert into auth_warehouse_user - (code, userId, userName, isDirector) + (code, userId, userName, isDirector) values (#{item.code,jdbcType=VARCHAR}, #{item.userid,jdbcType=BIGINT}, #{item.username,jdbcType=VARCHAR}, - #{item.isDirector} - ) + #{item.isDirector}) code = #{code,jdbcType=VARCHAR}, - userId = #{userid,jdbcType=BIGINT}, - userName = #{username,jdbcType=VARCHAR}, + userId = #{userid,jdbcType=BIGINT}, + userName = #{username,jdbcType=VARCHAR}, - select auth_warehouse_user.*, auth_user.employeeName from auth_warehouse_user inner join auth_user on auth_user.id = auth_warehouse_user.userId @@ -279,13 +282,17 @@ AND auth_user.employeeName = #{employeeName} + + AND (auth_user.employeeName = #{key} or auth_warehouse_user.userName = #{key}) + + select * + from basic_entrust_accept + + + and id = #{id} + + + and `action` = #{action} + + + and entrustInv = #{entrustInv} + + + and entrustUser = #{entrustUser} + + + and userId = #{userId} + + + and curInv = #{curInv} + + + and entrustSubInv = #{entrustSubInv} + + + and invWarehouseCode = #{invWarehouseCode} + + + = DATE_FORMAT(#{lastUpdateTime} + , '%Y-%m-%d %H:%i:%S') + ]]> + + + order by updateTime desc + + + + + + + + + + + + + + replace + INTO basic_entrust_accept(`action`,curDept, entrustInv, `entrustUser`, userId, + updateTime, remark,entrustAction,finishRece,curInv,entrustDept,entrustInv,entrustEnd) + values ( + #{action}, + #{entrustInv}, + #{entrustUser}, + #{userId}, + #{updateTime}, + #{remark}, + #{entrustAction}, + #{finishRece}, + #{curInv}, + #{entrustDept}, + #{entrustInv}, + #{entrustEnd} + ) + + + + + DELETE + FROM basic_entrust_accept + WHERE id = #{id} + + + + DELETE + FROM basic_entrust_accept + + \ No newline at end of file