新增库存选入与扫码添加接口

workplace
yewj 10 months ago
parent 3c4d1c16e1
commit b0248b2642

@ -1,38 +1,23 @@
package com.glxp.api.controller.collect; package com.glxp.api.controller.collect;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.Constant;
import com.glxp.api.constant.WorkOperType;
import com.glxp.api.controller.BaseController; import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.auth.SysWorkplace;
import com.glxp.api.entity.basic.BasicCollectBustypeEntity;
import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderBiz;
import com.glxp.api.entity.collect.IoCollectOrderCodeMan;
import com.glxp.api.req.collect.CollectOrderCodeManRequest; import com.glxp.api.req.collect.CollectOrderCodeManRequest;
import com.glxp.api.req.inout.AddTagCodeReqeust; import com.glxp.api.req.inout.AddTagCodeReqeust;
import com.glxp.api.req.inout.DeleteTageCodeRequest; import com.glxp.api.req.inout.DeleteTageCodeRequest;
import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.collect.CollectOrderCodeManResponse; import com.glxp.api.res.collect.CollectOrderCodeManResponse;
import com.glxp.api.service.auth.SysWorkplaceService; import com.glxp.api.service.auth.SysWorkplaceService;
import com.glxp.api.service.basic.UdiRelevanceService; import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.service.collect.IoCollectOrderBizService; import com.glxp.api.service.collect.IoCollectOrderBizService;
import com.glxp.api.service.collect.IoCollectOrderCodeManService; import com.glxp.api.service.collect.IoCollectOrderCodeManService;
import com.glxp.api.service.collect.IoCollectOrderService; import com.glxp.api.service.collect.IoCollectOrderService;
import com.glxp.api.service.inout.IoSplitFifoCodeService;
import com.glxp.api.util.GennerOrderUtils; import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.IntUtil;
import com.glxp.api.util.OrderNoTypeBean;
import com.glxp.api.util.udi.FilterUdiUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.validation.BindingResult; import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@ -41,8 +26,6 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
@Slf4j @Slf4j

@ -79,4 +79,20 @@ public class IoFifoDesOrderController extends BaseController {
} }
/**
*
*
* @return
*/
@PostMapping("/udiwms/collect/fifo/desOrder/addCode")
public BaseResponse addCode(@RequestBody AddInvDesDetaiRequest addInvDesDetaiRequest,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
IoSplitDesOrder splitDesOrder = splitDesOrderService.addCode(addInvDesDetaiRequest);
return ResultVOUtils.success(splitDesOrder);
}
} }

@ -6,12 +6,20 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
@ApiModel(value = "io_split_des_order_code") @ApiModel(value = "io_split_des_order_code")
@Data @Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "io_split_des_order_code") @TableName(value = "io_split_des_order_code")
public class IoSplitDesOrderCode implements Serializable { public class IoSplitDesOrderCode implements Serializable {
@TableId(value = "id", type = IdType.INPUT) @TableId(value = "id", type = IdType.INPUT)

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
@ -26,7 +27,7 @@ import lombok.NoArgsConstructor;
public class IoSplitDesOrderDetail implements Serializable { public class IoSplitDesOrderDetail implements Serializable {
@TableId(value = "id", type = IdType.INPUT) @TableId(value = "id", type = IdType.INPUT)
@ApiModelProperty(value = "") @ApiModelProperty(value = "")
private Integer id; private Long id;
@TableField(value = "workPlaceCode") @TableField(value = "workPlaceCode")
@ApiModelProperty(value = "") @ApiModelProperty(value = "")

@ -10,13 +10,19 @@ import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
/** /**
* *
*/ */
@ApiModel(value = "com-glxp-api-entity-inout-IoSplitFifoCode") @ApiModel(value = "com-glxp-api-entity-inout-IoSplitFifoCode")
@Data @Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "io_split_fifo_code") @TableName(value = "io_split_fifo_code")
public class IoSplitFifoCodeEntity implements Serializable { public class IoSplitFifoCodeEntity implements Serializable {
@TableId(value = "id", type = IdType.INPUT) @TableId(value = "id", type = IdType.INPUT)

@ -1,6 +1,8 @@
package com.glxp.api.service.collect; package com.glxp.api.service.collect;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.api.entity.collect.IoCollectOrderBiz;
import com.glxp.api.req.collect.IoSplitDesOrderDetailRequest; import com.glxp.api.req.collect.IoSplitDesOrderDetailRequest;
import com.glxp.api.req.collect.IoSplitDesOrderRequest; import com.glxp.api.req.collect.IoSplitDesOrderRequest;
import com.glxp.api.res.collect.IoSplitDesOrderDetailResponse; import com.glxp.api.res.collect.IoSplitDesOrderDetailResponse;
@ -33,8 +35,12 @@ public class IoSplitDesOrderDetailService extends ServiceImpl<IoSplitDesOrderDet
return data; return data;
} }
public List<IoSplitDesOrderDetail> listByBillNo(String billNo) {
List<IoSplitDesOrderDetail> list = super.list(Wrappers.lambdaQuery(IoSplitDesOrderDetail.class)
.eq(IoSplitDesOrderDetail::getOrderIdFk, billNo)
);
return list;
}
} }

@ -1,20 +1,27 @@
package com.glxp.api.service.collect; package com.glxp.api.service.collect;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.api.constant.Constant; import com.glxp.api.constant.Constant;
import com.glxp.api.dao.collect.IoSplitDesOrderMapper; import com.glxp.api.dao.collect.IoSplitDesOrderMapper;
import com.glxp.api.entity.collect.IoCollectOrderBiz;
import com.glxp.api.entity.collect.IoSplitDesOrder; import com.glxp.api.entity.collect.IoSplitDesOrder;
import com.glxp.api.entity.collect.IoSplitDesOrderCode;
import com.glxp.api.entity.collect.IoSplitDesOrderDetail; import com.glxp.api.entity.collect.IoSplitDesOrderDetail;
import com.glxp.api.entity.inout.IoSplitFifoCodeEntity; import com.glxp.api.entity.inout.IoSplitFifoCodeEntity;
import com.glxp.api.entity.inout.IoSplitFifoInv; import com.glxp.api.entity.inout.IoSplitFifoInv;
import com.glxp.api.exception.JsonException;
import com.glxp.api.req.collect.AddInvDesDetaiRequest; import com.glxp.api.req.collect.AddInvDesDetaiRequest;
import com.glxp.api.req.collect.IoSplitDesOrderRequest; import com.glxp.api.req.collect.IoSplitDesOrderRequest;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.collect.IoSplitDesOrderResponse; import com.glxp.api.res.collect.IoSplitDesOrderResponse;
import com.glxp.api.service.inout.IoSplitFifoCodeService; import com.glxp.api.service.inout.IoSplitFifoCodeService;
import com.glxp.api.util.GennerOrderUtils; import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.IntUtil;
import com.glxp.api.util.OrderNoTypeBean; import com.glxp.api.util.OrderNoTypeBean;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -73,6 +80,7 @@ public class IoSplitDesOrderService extends ServiceImpl<IoSplitDesOrderMapper, I
} }
IoSplitFifoInv splitFifoInv = addInvDesDetaiRequest.getSplitFifoInv(); IoSplitFifoInv splitFifoInv = addInvDesDetaiRequest.getSplitFifoInv();
IoSplitDesOrderDetail splitDesOrderDetail = IoSplitDesOrderDetail.builder() IoSplitDesOrderDetail splitDesOrderDetail = IoSplitDesOrderDetail.builder()
.id(IdUtil.getSnowflakeNextId())
.workPlaceCode(collectOrder.getWorkPlaceCode()) .workPlaceCode(collectOrder.getWorkPlaceCode())
.orderIdFk(collectOrder.getBillNo()) .orderIdFk(collectOrder.getBillNo())
.invId(splitFifoInv.getId()) .invId(splitFifoInv.getId())
@ -92,9 +100,39 @@ public class IoSplitDesOrderService extends ServiceImpl<IoSplitDesOrderMapper, I
@Resource @Resource
IoSplitFifoCodeService splitFifoCodeService; IoSplitFifoCodeService splitFifoCodeService;
@Resource
IoSplitDesOrderCodeService ioSplitDesOrderCodeService;
public void addCode(AddInvDesDetaiRequest addInvDesDetaiRequest) { public IoSplitDesOrder addCode(AddInvDesDetaiRequest addInvDesDetaiRequest) {
IoSplitFifoCodeEntity splitFifoCodeEntity = splitFifoCodeService.findByCode(addInvDesDetaiRequest.getCode(), addInvDesDetaiRequest.getWorkPlaceCode()); IoSplitFifoCodeEntity splitFifoCodeEntity = splitFifoCodeService.findByCode(addInvDesDetaiRequest.getCode(), addInvDesDetaiRequest.getWorkPlaceCode());
if (splitFifoCodeEntity == null) {
throw new JsonException("工位存量不存在,请检查后重试!");
}
IoSplitDesOrder collectOrder;
if (StrUtil.isNotEmpty(addInvDesDetaiRequest.getBillNo())) {
collectOrder = getByBillNo(addInvDesDetaiRequest.getBillNo());
} else {
collectOrder = IoSplitDesOrder.builder()
.billNo(gennerOrderUtils.createWdOrderNo(new OrderNoTypeBean(Constant.SPLIT_DES_ORDER, "yyyyMMdd")))
.busType("1")
.workPlaceCode(addInvDesDetaiRequest.getWorkPlaceCode())
.createTime(new Date())
.billTime(new Date())
.remark(addInvDesDetaiRequest.getRemark())
.status(1)
.createUser(addInvDesDetaiRequest.getCreateUser())
.updateTime(new Date())
.updateUser(addInvDesDetaiRequest.getUpdateUser())
.build();
save(collectOrder);
}
IoSplitDesOrderCode splitDesOrderCode = new IoSplitDesOrderCode();
BeanUtil.copyProperties(splitFifoCodeEntity, splitDesOrderCode);
splitDesOrderCode.setCount(0);
splitDesOrderCode.setReCount(0);
ioSplitDesOrderCodeService.save(splitDesOrderCode);
return collectOrder;
} }
} }

Loading…
Cancel
Save