增加 原材料出库接口

master
wanghao 4 months ago
parent 685799de4a
commit c5d129da0b

@ -6,9 +6,6 @@ import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*; import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaCheckPermission;
import org.dromara.wms.domain.WmsInstockDetail;
import org.dromara.wms.domain.WmsOutstockDetail;
import org.dromara.wms.domain.bo.WmsInstockDetailBo;
import org.dromara.wms.domain.bo.WmsOutstockDetailBo; import org.dromara.wms.domain.bo.WmsOutstockDetailBo;
import org.dromara.wms.domain.vo.WmsOutstockDetailVo; import org.dromara.wms.domain.vo.WmsOutstockDetailVo;
import org.dromara.wms.service.IWmsOutstockDetailService; import org.dromara.wms.service.IWmsOutstockDetailService;
@ -19,7 +16,6 @@ import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController; import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup; import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType; import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil; import org.dromara.common.excel.utils.ExcelUtil;

@ -3,10 +3,6 @@ package org.dromara.wms.controller;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.R;
import org.dromara.common.web.core.BaseController; import org.dromara.common.web.core.BaseController;
import org.dromara.wms.domain.WmsBaseLocation;
import org.dromara.wms.domain.WmsHppStorageDetail;
import org.dromara.wms.domain.WmsInstockPrint;
import org.dromara.wms.domain.bo.WmsInstockPrintBo;
import org.dromara.wms.domain.bo.WmsReturnOrderBo; import org.dromara.wms.domain.bo.WmsReturnOrderBo;
import org.dromara.wms.domain.vo.*; import org.dromara.wms.domain.vo.*;
import org.dromara.wms.service.*; import org.dromara.wms.service.*;
@ -68,10 +64,28 @@ public class WmsPdaApiController extends BaseController {
if (wmsBaseLocationVo == null) { if (wmsBaseLocationVo == null) {
return R.fail("库位条码扫描错误"); return R.fail("库位条码扫描错误");
} }
vo.setWarehouseId( wmsBaseLocationVo.getWarehouseId());
Boolean result = apiService.inSubmit(vo); Boolean result = apiService.inSubmit(vo);
return result ? R.ok() : R.fail(); return result ? R.ok() : R.fail();
} }
/**
*
* @param orderCode
* @return
*/
@PostMapping("/raw/outSelectByOrderCode")
public R< List<WmsOutstockDetailVo>> outSelectByOrderCode(String orderCode) {
List<WmsOutstockDetailVo> wmsOutstockDetailVo=apiService.outSelectByOrderCode(orderCode);
if (wmsOutstockDetailVo == null) {
return R.fail("出库单号不正确");
}
return R.ok(wmsOutstockDetailVo);
}
@PostMapping("/raw/selectInVentoryByBatchCode")
public void rawSelectInVentoryByBatchCode(String batchCode){
}
/** /**
* *
* *

@ -2,10 +2,8 @@ package org.dromara.wms.domain;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.ibm.icu.math.BigDecimal; import com.ibm.icu.math.BigDecimal;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial; import java.io.Serial;
import java.util.Date; import java.util.Date;
@ -49,7 +47,7 @@ public class WmsOutstockDetail {
*/ */
@TableField(typeHandler = JacksonTypeHandler.class) @TableField(typeHandler = JacksonTypeHandler.class)
private BigDecimal outstockQty; private BigDecimal outstockQty;
private double outSum;
/** /**
* *
*/ */
@ -82,6 +80,12 @@ public class WmsOutstockDetail {
private String materialCode; private String materialCode;
private String materialName; private String materialName;
@TableField(exist = false)
private String materialDesc;
@TableField(exist = false)
private String unitName;
} }

@ -3,8 +3,6 @@ package org.dromara.wms.domain.vo;
import org.dromara.wms.domain.WmsBaseLocation; import org.dromara.wms.domain.WmsBaseLocation;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper; import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data; import lombok.Data;
@ -82,4 +80,5 @@ public class WmsBaseLocationVo implements Serializable {
*/ */
private String warehouseName; private String warehouseName;
} }

@ -3,16 +3,12 @@ package org.dromara.wms.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper; import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data; import lombok.Data;
import org.dromara.wms.domain.WmsInstockPrint; import org.dromara.wms.domain.WmsInstockPrint;
import java.io.Serial; import java.io.Serial;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date;
/** /**
@ -115,4 +111,5 @@ public class WmsInstockPrintVo implements Serializable {
*/ */
private Double instockQty; private Double instockQty;
private Long warehouseId;
} }

@ -5,8 +5,6 @@ import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.ibm.icu.math.BigDecimal; import com.ibm.icu.math.BigDecimal;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper; import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data; import lombok.Data;
import org.dromara.wms.domain.WmsOutstockDetail; import org.dromara.wms.domain.WmsOutstockDetail;
@ -94,6 +92,6 @@ public class WmsOutstockDetailVo implements Serializable {
private String materialCode; private String materialCode;
private String materialName; private String materialName;
private double outSum;
} }

@ -4,6 +4,7 @@ import org.apache.ibatis.annotations.Select;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.wms.domain.WmsInstockPrint; import org.dromara.wms.domain.WmsInstockPrint;
import org.dromara.wms.domain.vo.WmsInstockPrintVo; import org.dromara.wms.domain.vo.WmsInstockPrintVo;
import org.springframework.stereotype.Repository;
/** /**
* -Mapper * -Mapper
@ -11,9 +12,10 @@ import org.dromara.wms.domain.vo.WmsInstockPrintVo;
* @author LionLi * @author LionLi
* @date 2025-01-07 * @date 2025-01-07
*/ */
@Repository
public interface WmsInstockPrintMapper extends BaseMapperPlus<WmsInstockPrint, WmsInstockPrintVo> { public interface WmsInstockPrintMapper extends BaseMapperPlus<WmsInstockPrint, WmsInstockPrintVo> {
@Select("select top 1 material_spe,batch_code,material_categories,material_code,material_name,unit_name,\n" + @Select("select top 1 material_spe,batch_code,material_categories,material_code,material_name,unit_name, " +
" material_id,instock_print_id,apportion_qty,instock_code,material_qty\n" + " material_id,instock_print_id,apportion_qty,instock_code,material_qty " +
"from wms_instock_print where batch_code=#{code}") "from wms_instock_print where batch_code=#{code}")
WmsInstockPrintVo inSelectCode(String code); WmsInstockPrintVo inSelectCode(String code);
} }

@ -3,7 +3,7 @@ package org.dromara.wms.mapper;
import org.dromara.wms.domain.WmsInstockRecord; import org.dromara.wms.domain.WmsInstockRecord;
import org.dromara.wms.domain.vo.WmsInstockRecordVo; import org.dromara.wms.domain.vo.WmsInstockRecordVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.stereotype.Repository;
/** /**
* Mapper * Mapper
@ -11,6 +11,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
* @author Yinq * @author Yinq
* @date 2025-01-07 * @date 2025-01-07
*/ */
@Repository
public interface WmsInstockRecordMapper extends BaseMapperPlus<WmsInstockRecord, WmsInstockRecordVo> { public interface WmsInstockRecordMapper extends BaseMapperPlus<WmsInstockRecord, WmsInstockRecordVo> {
} }

@ -5,7 +5,7 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.wms.domain.WmsInventory; import org.dromara.wms.domain.WmsInventory;
import org.dromara.wms.domain.bo.WmsInventoryBo; import org.dromara.wms.domain.bo.WmsInventoryBo;
import org.dromara.wms.domain.vo.WmsInventoryVo; import org.dromara.wms.domain.vo.WmsInventoryVo;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.stereotype.Repository;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List; import java.util.List;
@ -16,6 +16,7 @@ import java.util.List;
* @author LionLi * @author LionLi
* @date 2025-01-07 * @date 2025-01-07
*/ */
@Repository
public interface WmsInventoryMapper extends BaseMapperPlus<WmsInventory, WmsInventoryVo> { public interface WmsInventoryMapper extends BaseMapperPlus<WmsInventory, WmsInventoryVo> {
BigDecimal materailCount(@Param("entity") WmsInventory wmsInventory); BigDecimal materailCount(@Param("entity") WmsInventory wmsInventory);

@ -3,6 +3,7 @@ package org.dromara.wms.mapper;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.wms.domain.WmsOutstockDetail; import org.dromara.wms.domain.WmsOutstockDetail;
import org.dromara.wms.domain.vo.WmsOutstockDetailVo; import org.dromara.wms.domain.vo.WmsOutstockDetailVo;
import org.springframework.stereotype.Repository;
/** /**
* -Mapper * -Mapper
@ -10,6 +11,8 @@ import org.dromara.wms.domain.vo.WmsOutstockDetailVo;
* @author LionLi * @author LionLi
* @date 2025-01-08 * @date 2025-01-08
*/ */
@Repository
public interface WmsOutstockDetailMapper extends BaseMapperPlus<WmsOutstockDetail, WmsOutstockDetailVo> { public interface WmsOutstockDetailMapper extends BaseMapperPlus<WmsOutstockDetail, WmsOutstockDetailVo> {
} }

@ -26,4 +26,6 @@ public interface IWmsPdaApiService {
WmsInstockPrintVo inSelectCode(String code); WmsInstockPrintVo inSelectCode(String code);
Boolean inSubmit(WmsInstockPrintVo vo); Boolean inSubmit(WmsInstockPrintVo vo);
List<WmsOutstockDetailVo> outSelectByOrderCode(String orderCode);
} }

@ -2,7 +2,6 @@ package org.dromara.wms.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.github.yulichang.toolkit.JoinWrappers; import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@ -10,12 +9,10 @@ import org.dromara.common.core.utils.DateUtils;
import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.translation.annotation.Translation; import org.dromara.common.translation.annotation.Translation;
import org.dromara.wms.domain.*; import org.dromara.wms.domain.*;
import org.dromara.wms.domain.bo.WmsInstockRecordBo;
import org.dromara.wms.domain.vo.*; import org.dromara.wms.domain.vo.*;
import org.dromara.wms.mapper.*; import org.dromara.wms.mapper.*;
import org.dromara.wms.service.IWmsPdaApiService; import org.dromara.wms.service.IWmsPdaApiService;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.parsing.BeanEntry;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
@ -32,8 +29,6 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService {
private final WmsPsmInLoadDetailMapper wmsPsmInLoadDetailMapper; private final WmsPsmInLoadDetailMapper wmsPsmInLoadDetailMapper;
@Override @Override
public WmsOutstockRecordVo returnSelectCode(String code) { public WmsOutstockRecordVo returnSelectCode(String code) {
MPJLambdaWrapper<WmsOutstockRecord> lqw = JoinWrappers.lambda(WmsOutstockRecord.class) MPJLambdaWrapper<WmsOutstockRecord> lqw = JoinWrappers.lambda(WmsOutstockRecord.class)
@ -149,7 +144,9 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService {
public WmsHppStorageDetailVo selectHppStorageDetailInfobyCode(String code) { public WmsHppStorageDetailVo selectHppStorageDetailInfobyCode(String code) {
return hppStorageDetailMapper.selectHppStorageDetailInfobyCode(code); return hppStorageDetailMapper.selectHppStorageDetailInfobyCode(code);
} }
private final WmsHppOutStockDetailMapper hppOutStockDetailMapper;//半成品出库记录 private final WmsHppOutStockDetailMapper hppOutStockDetailMapper;//半成品出库记录
@Override @Override
public Boolean semiSubmitOutInfo(WmsHppStorageDetailVo vo) { public Boolean semiSubmitOutInfo(WmsHppStorageDetailVo vo) {
if (vo.getStorageNum() == vo.getOutNumber()) { if (vo.getStorageNum() == vo.getOutNumber()) {
@ -168,12 +165,17 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService {
hppOutStockDetailMapper.insert(outStockDetail); hppOutStockDetailMapper.insert(outStockDetail);
return true; return true;
} }
private final WmsInstockPrintMapper wmsInstockPrintMapper; private final WmsInstockPrintMapper wmsInstockPrintMapper;
@Override @Override
public WmsInstockPrintVo inSelectCode(String code) { public WmsInstockPrintVo inSelectCode(String code) {
return wmsInstockPrintMapper.inSelectCode(code); return wmsInstockPrintMapper.inSelectCode(code);
} }
private final WmsInstockRecordMapper wmsInstockRecordMapper; private final WmsInstockRecordMapper wmsInstockRecordMapper;
private final WmsInventoryMapper wmsInventoryMapper;
@Override @Override
public Boolean inSubmit(WmsInstockPrintVo vo) { public Boolean inSubmit(WmsInstockPrintVo vo) {
// 插入记录 // 插入记录
@ -181,7 +183,21 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService {
BeanUtils.copyProperties(vo, wmsInstockRecord); BeanUtils.copyProperties(vo, wmsInstockRecord);
wmsInstockRecordMapper.insert(wmsInstockRecord); wmsInstockRecordMapper.insert(wmsInstockRecord);
// 插入库存 // 插入库存
WmsInventory inventory = new WmsInventory();
BeanUtils.copyProperties(vo, inventory);
wmsInventoryMapper.insert(inventory);
return true; return true;
} }
private final WmsOutstockDetailMapper wmsOutstockDetailMapper;
@Override
public List<WmsOutstockDetailVo> outSelectByOrderCode(String orderCode) {
MPJLambdaWrapper<WmsOutstockDetail> lqw = JoinWrappers.lambda(WmsOutstockDetail.class)
.selectAll(WmsOutstockDetail.class)
.select(BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec)
.leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockDetail::getMaterialId)
.eq(WmsOutstockDetail::getOutstockCode, orderCode);
return wmsOutstockDetailMapper.selectVoList(lqw);
}
} }

Loading…
Cancel
Save