仓库管理修改

liweidong
wusiyu 1 week ago
parent f4af678a21
commit 6a1666ee1b
  1. 12
      blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/feign/WmsTaskClient.java
  2. 8
      blade-service/blade-wms/src/main/java/org/springblade/wms/feign/WmsTaskClientImpl.java
  3. 4
      blade-service/blade-wms/src/main/java/org/springblade/wms/service/IStOtherReceiptRecordService.java
  4. 30
      blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StGoodsServiceImpl.java
  5. 38
      blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StOtherReceiptRecordServiceImpl.java

@ -26,6 +26,8 @@ public interface WmsTaskClient {
String BUY_ORDER_APPLY = API_PREFIX + "/buyOrderApply"; String BUY_ORDER_APPLY = API_PREFIX + "/buyOrderApply";
String SAVE_SUB_ORDER_WAREHOUSING = API_PREFIX + "/saveSubOrderWarehousing";
/** /**
* 物料状态监控同步erp * 物料状态监控同步erp
*/ */
@ -40,4 +42,12 @@ public interface WmsTaskClient {
@RequestParam("buyDate") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date buyDate, @RequestParam("checkUserId")Long checkUserId, @RequestParam("buyDate") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date buyDate, @RequestParam("checkUserId")Long checkUserId,
@RequestParam("checkDate") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date checkDate) throws Exception; @RequestParam("checkDate") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date checkDate) throws Exception;
}
/**
* 子件入库
*/
@PostMapping(SAVE_SUB_ORDER_WAREHOUSING)
void saveSubOrderWarehousing(@RequestParam("goodsCode")String goodsCode, @RequestParam("batchNo")String batchNo, @RequestParam("quantity")Double quantity,
@RequestParam("shId")Long shId, @RequestParam("slId")Long slId, @RequestParam("date") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")Date date,
@RequestParam("userId")Long userId) throws Exception;
}

@ -6,6 +6,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springblade.core.tenant.annotation.NonDS; import org.springblade.core.tenant.annotation.NonDS;
import org.springblade.wms.service.IStBuyOrderService; import org.springblade.wms.service.IStBuyOrderService;
import org.springblade.wms.service.IStGoodsExtService; import org.springblade.wms.service.IStGoodsExtService;
import org.springblade.wms.service.IStOtherReceiptRecordService;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.Date; import java.util.Date;
@ -29,6 +30,8 @@ public class WmsTaskClientImpl implements WmsTaskClient{
private final IStBuyOrderService stBuyOrderService; private final IStBuyOrderService stBuyOrderService;
private final IStOtherReceiptRecordService stOtherReceiptRecordService;
@Override @Override
public boolean executeGoodsStatusUpdate() { public boolean executeGoodsStatusUpdate() {
stGoodsExtService.executeGoodsStatusUpdate(); stGoodsExtService.executeGoodsStatusUpdate();
@ -39,4 +42,9 @@ public class WmsTaskClientImpl implements WmsTaskClient{
public Long buyOrderApply(String goodsCode, Double buyQty, Long userId, Date buyDate, Long checkUserId, Date checkDate) throws Exception { public Long buyOrderApply(String goodsCode, Double buyQty, Long userId, Date buyDate, Long checkUserId, Date checkDate) throws Exception {
return stBuyOrderService.buyOrderApplyFor(goodsCode, buyQty, userId, buyDate, checkUserId, checkDate); return stBuyOrderService.buyOrderApplyFor(goodsCode, buyQty, userId, buyDate, checkUserId, checkDate);
} }
@Override
public void saveSubOrderWarehousing(String goodsCode, String batchNo, Double quantity, Long shId, Long slId, Date date, Long userId) throws Exception {
stOtherReceiptRecordService.saveSubOrderWarehousing(goodsCode, batchNo, quantity, shId, slId, date, userId);
}
} }

@ -10,6 +10,7 @@ import org.springblade.wms.pojo.entity.StOtherReceiptRecord;
import org.springblade.wms.pojo.entity.StStockInoutRecord; import org.springblade.wms.pojo.entity.StStockInoutRecord;
import org.springblade.wms.pojo.vo.StOtherReceiptRecordVO; import org.springblade.wms.pojo.vo.StOtherReceiptRecordVO;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
@ -45,5 +46,8 @@ public interface IStOtherReceiptRecordService extends BaseService<StOtherReceipt
void otherWarehousing(StOtherReceiptRecord stOtherReceiptRecord, BladeUser user); void otherWarehousing(StOtherReceiptRecord stOtherReceiptRecord, BladeUser user);
StStockInoutRecord getGlassCakeByWoCode(String woCode, String goodsCode); StStockInoutRecord getGlassCakeByWoCode(String woCode, String goodsCode);
void saveSubOrderWarehousing(String goodsCode, String batchNo, Double quantity, Long shId, Long slId, Date date, Long userId) throws Exception;
} }

@ -71,35 +71,7 @@ public class StGoodsServiceImpl extends BaseServiceImpl<StGoodsMapper, StGoods>
public StGoods saveGoodsInfo(List<String> prtnoList) throws Exception { public StGoods saveGoodsInfo(List<String> prtnoList) throws Exception {
StGoods goods = null; StGoods goods = null;
//查询物料信息 //查询物料信息
// List<StPdmPartDTO> pdmPartInfo = stHttpRequestService.getPdmPartInfo(prtnoList); List<StPdmPartDTO> pdmPartInfo = stHttpRequestService.getPdmPartInfo(prtnoList);
List<StPdmPartDTO> pdmPartInfo = new ArrayList<>();
StPdmPartDTO dto1 = new StPdmPartDTO();
dto1.setPrtno("TEST-MAT-001");
dto1.setReleaseno("V1.0");
dto1.setDrwpartno("DWG-TEST-001");
dto1.setPrtdesc("测试物料_环规");
dto1.setMtlsgrt(7.85);
dto1.setPrttype("PART");
dto1.setSource("自制");
dto1.setMtlspcf("45#钢");
dto1.setPrtum("PCS");
dto1.setCavityno("1");
dto1.setCplb("机械部件");
dto1.setEcnno("ECN-TEST-001");
dto1.setEnditem((short) 123);
dto1.setMtltmrk("45#钢");
dto1.setPartLink("/pdm/part/TEST-MAT-001");
dto1.setPriority("1");
dto1.setPrtrevedit("Released");
dto1.setPrtstd("GB/T 1234-2020");
dto1.setPrtwt(0.5);
dto1.setRemark("测试物料");
dto1.setTrademark("测试");
dto1.setRcdchgdatd(new Date());
pdmPartInfo.add(dto1);
log.debug("pdmPartInfo:{}", pdmPartInfo); log.debug("pdmPartInfo:{}", pdmPartInfo);
if (CollectionUtils.isEmpty(pdmPartInfo)) { if (CollectionUtils.isEmpty(pdmPartInfo)) {

@ -7,13 +7,16 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
import org.springblade.common.exception.BusinessException;
import org.springblade.core.log.exception.ServiceException; import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.desk.dashboard.feign.IPartClient; import org.springblade.desk.dashboard.feign.IPartClient;
import org.springblade.desk.dashboard.pojo.entity.DsPartEntity; import org.springblade.desk.dashboard.pojo.entity.DsPartEntity;
import org.springblade.desk.order.pojo.entity.YieldOrder; import org.springblade.desk.order.pojo.entity.YieldOrder;
import org.springblade.desk.produce.pojo.entity.WorkOrder; import org.springblade.desk.produce.pojo.entity.WorkOrder;
import org.springblade.system.feign.IUserClient;
import org.springblade.wms.excel.StOtherReceiptRecordExcel; import org.springblade.wms.excel.StOtherReceiptRecordExcel;
import org.springblade.wms.mapper.StOtherReceiptRecordMapper; import org.springblade.wms.mapper.StOtherReceiptRecordMapper;
import org.springblade.wms.pojo.dto.InitStockDTO; import org.springblade.wms.pojo.dto.InitStockDTO;
@ -52,6 +55,8 @@ public class StOtherReceiptRecordServiceImpl extends BaseServiceImpl<StOtherRece
IStStockInoutRecordService stStockInoutRecordService; IStStockInoutRecordService stStockInoutRecordService;
@Resource @Resource
IPartClient partClient; IPartClient partClient;
@Resource
IUserClient userClient;
// private static IPartClient getPartClient() { // private static IPartClient getPartClient() {
// if (partClient == null) { // if (partClient == null) {
@ -336,6 +341,39 @@ public class StOtherReceiptRecordServiceImpl extends BaseServiceImpl<StOtherRece
return inoutRecord; return inoutRecord;
} }
@Override
public void saveSubOrderWarehousing(String goodsCode, String batchNo, Double quantity, Long shId, Long slId, Date date, Long userId) throws Exception {
BladeUser user = AuthUtil.getUser();
StOtherReceiptRecord otherReceiptRecord = new StOtherReceiptRecord();
//入库信息
otherReceiptRecord.setWarehousingReason(StOtherReceiptRecord.REASON_PRODUCE);
otherReceiptRecord.setShId(shId);
otherReceiptRecord.setSlId(slId);
otherReceiptRecord.setCreateUser(userId);
//如果物料信息不存在,则同步
StGoods goods = stGoodsService.queryByCode(goodsCode);
if (goods == null) {
throw new ServiceException("物料【" + goodsCode + "】不存在,无法执行入库操作");
}
otherReceiptRecord.setGoodsId(goods.getId());
List<StStockInoutRecord> inoutList = new ArrayList<>();
StStockInoutRecord stockInoutRecord = new StStockInoutRecord();
stockInoutRecord.setGoodsId(goods.getId());
stockInoutRecord.setPiNo(batchNo);
stockInoutRecord.setQuantity(quantity);
stockInoutRecord.setShId(shId);
stockInoutRecord.setSlId(slId);
stockInoutRecord.setInOutDate(date);
stockInoutRecord.setCreateUser(userId);
inoutList.add(stockInoutRecord);
otherReceiptRecord.setInoutList(inoutList);
this.otherWarehousing(otherReceiptRecord, user);
}
@Override @Override
public List<StOtherReceiptRecordExcel> exportStOtherReceiptRecord(Wrapper<StOtherReceiptRecord> queryWrapper) { public List<StOtherReceiptRecordExcel> exportStOtherReceiptRecord(Wrapper<StOtherReceiptRecord> queryWrapper) {
List<StOtherReceiptRecordExcel> stOtherReceiptRecordList = baseMapper.exportStOtherReceiptRecord(queryWrapper); List<StOtherReceiptRecordExcel> stOtherReceiptRecordList = baseMapper.exportStOtherReceiptRecord(queryWrapper);

Loading…
Cancel
Save