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

workplace
yewj 10 months ago
parent 3c4d1c16e1
commit b0248b2642

@ -1,38 +1,23 @@
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.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
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.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.IoCollectOrderBiz;
import com.glxp.api.entity.collect.IoCollectOrderCodeMan;
import com.glxp.api.req.collect.CollectOrderCodeManRequest;
import com.glxp.api.req.inout.AddTagCodeReqeust;
import com.glxp.api.req.inout.DeleteTageCodeRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.collect.CollectOrderCodeManResponse;
import com.glxp.api.service.auth.SysWorkplaceService;
import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.service.collect.IoCollectOrderBizService;
import com.glxp.api.service.collect.IoCollectOrderCodeManService;
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.IntUtil;
import com.glxp.api.util.OrderNoTypeBean;
import com.glxp.api.util.udi.FilterUdiUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@ -41,8 +26,6 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@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,139 +6,147 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@ApiModel(value="io_split_des_order_code")
@ApiModel(value = "io_split_des_order_code")
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "io_split_des_order_code")
public class IoSplitDesOrderCode implements Serializable {
@TableId(value = "id", type = IdType.INPUT)
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private Integer id;
/**
*
*/
@TableField(value = "code")
@ApiModelProperty(value="追溯码")
@ApiModelProperty(value = "追溯码")
private String code;
@TableField(value = "errUdiCode")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private String errUdiCode;
/**
*
*/
@TableField(value = "orderIdFk")
@ApiModelProperty(value="损耗单号")
@ApiModelProperty(value = "损耗单号")
private String orderIdFk;
/**
* ID
*/
@TableField(value = "bizIdFk")
@ApiModelProperty(value="业务单ID")
@ApiModelProperty(value = "业务单ID")
private Long bizIdFk;
/**
* ID
*/
@TableField(value = "relId")
@ApiModelProperty(value="产品字典ID")
@ApiModelProperty(value = "产品字典ID")
private Long relId;
/**
*
*/
@TableField(value = "batchNo")
@ApiModelProperty(value="批次号")
@ApiModelProperty(value = "批次号")
private String batchNo;
/**
*
*/
@TableField(value = "produceDate")
@ApiModelProperty(value="生产日期")
@ApiModelProperty(value = "生产日期")
private String produceDate;
/**
*
*/
@TableField(value = "expireDate")
@ApiModelProperty(value="失效日期")
@ApiModelProperty(value = "失效日期")
private String expireDate;
/**
*
*/
@TableField(value = "serialNo")
@ApiModelProperty(value="序列号")
@ApiModelProperty(value = "序列号")
private String serialNo;
/**
* ID
*/
@TableField(value = "supId")
@ApiModelProperty(value="供应商ID")
@ApiModelProperty(value = "供应商ID")
private Long supId;
/**
*
*/
@TableField(value = "workPlaceCode")
@ApiModelProperty(value="工位")
@ApiModelProperty(value = "工位")
private String workPlaceCode;
/**
*
*/
@TableField(value = "createTime")
@ApiModelProperty(value="创建时间")
@ApiModelProperty(value = "创建时间")
private Date createTime;
/**
*
*/
@TableField(value = "updateTime")
@ApiModelProperty(value="更新时间")
@ApiModelProperty(value = "更新时间")
private Date updateTime;
/**
*
*/
@TableField(value = "`createUser`")
@ApiModelProperty(value="创建人")
@ApiModelProperty(value = "创建人")
private String createUser;
/**
*
*/
@TableField(value = "updateUser")
@ApiModelProperty(value="更新人")
@ApiModelProperty(value = "更新人")
private String updateUser;
/**
*
*/
@TableField(value = "`count`")
@ApiModelProperty(value="数量")
@ApiModelProperty(value = "数量")
private Integer count;
/**
*
*/
@TableField(value = "reCount")
@ApiModelProperty(value="实际数量")
@ApiModelProperty(value = "实际数量")
private Integer reCount;
/**
*
*/
@TableField(value = "remark")
@ApiModelProperty(value="备注")
@ApiModelProperty(value = "备注")
private String remark;
private static final long serialVersionUID = 1L;

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
@ -15,9 +16,9 @@ import lombok.Data;
import lombok.NoArgsConstructor;
/**
*
*/
@ApiModel(value="销毁出库详情")
*
*/
@ApiModel(value = "销毁出库详情")
@Data
@Builder
@AllArgsConstructor
@ -25,59 +26,59 @@ import lombok.NoArgsConstructor;
@TableName(value = "io_split_des_order_detail")
public class IoSplitDesOrderDetail implements Serializable {
@TableId(value = "id", type = IdType.INPUT)
@ApiModelProperty(value="")
private Integer id;
@ApiModelProperty(value = "")
private Long id;
@TableField(value = "workPlaceCode")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private Long workPlaceCode;
@TableField(value = "orderIdFk")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private String orderIdFk;
@TableField(value = "invId")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private Integer invId;
@TableField(value = "relId")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private Long relId;
@TableField(value = "batchNo")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private String batchNo;
@TableField(value = "produceDate")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private String produceDate;
@TableField(value = "expireDate")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private String expireDate;
@TableField(value = "supId")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private Long supId;
@TableField(value = "`count`")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private Integer count;
@TableField(value = "reCount")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private Integer reCount;
@TableField(value = "createTime")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private Date createTime;
@TableField(value = "updateTime")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private Date updateTime;
@TableField(value = "remark")
@ApiModelProperty(value="")
@ApiModelProperty(value = "")
private String remark;
private static final long serialVersionUID = 1L;

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

@ -1,6 +1,8 @@
package com.glxp.api.service.collect;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
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.IoSplitDesOrderRequest;
import com.glxp.api.res.collect.IoSplitDesOrderDetailResponse;
@ -33,8 +35,12 @@ public class IoSplitDesOrderDetailService extends ServiceImpl<IoSplitDesOrderDet
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;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.constant.Constant;
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.IoSplitDesOrderCode;
import com.glxp.api.entity.collect.IoSplitDesOrderDetail;
import com.glxp.api.entity.inout.IoSplitFifoCodeEntity;
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.IoSplitDesOrderRequest;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.collect.IoSplitDesOrderResponse;
import com.glxp.api.service.inout.IoSplitFifoCodeService;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.IntUtil;
import com.glxp.api.util.OrderNoTypeBean;
import org.springframework.stereotype.Service;
@ -73,6 +80,7 @@ public class IoSplitDesOrderService extends ServiceImpl<IoSplitDesOrderMapper, I
}
IoSplitFifoInv splitFifoInv = addInvDesDetaiRequest.getSplitFifoInv();
IoSplitDesOrderDetail splitDesOrderDetail = IoSplitDesOrderDetail.builder()
.id(IdUtil.getSnowflakeNextId())
.workPlaceCode(collectOrder.getWorkPlaceCode())
.orderIdFk(collectOrder.getBillNo())
.invId(splitFifoInv.getId())
@ -92,9 +100,39 @@ public class IoSplitDesOrderService extends ServiceImpl<IoSplitDesOrderMapper, I
@Resource
IoSplitFifoCodeService splitFifoCodeService;
@Resource
IoSplitDesOrderCodeService ioSplitDesOrderCodeService;
public void addCode(AddInvDesDetaiRequest addInvDesDetaiRequest) {
public IoSplitDesOrder addCode(AddInvDesDetaiRequest addInvDesDetaiRequest) {
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