diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java index ff292df3f..99cc91654 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java @@ -8,6 +8,9 @@ import com.op.common.core.utils.StringUtils; import com.op.common.core.utils.uuid.IdUtils; import com.op.common.core.web.domain.AjaxResult; +import com.op.common.log.annotation.Log; +import com.op.common.log.enums.BusinessType; +import com.op.common.security.annotation.RequiresPermissions; import com.op.wms.domain.*; import com.op.wms.service.*; import org.springframework.beans.factory.annotation.Autowired; @@ -43,6 +46,10 @@ public class WmsToWCSmissionController { private IOdsProcureOutOrderService odsProcureOutOrderService; @Autowired private IWmsSellOutEmbryoService wmsSellOutEmbryoService; + @Autowired + private IBpProcureOrderService bpProcureOrderService; + @Autowired + private IBpRawMaterialInDetailService bpRawMaterialInDetailService; /** * 包材请求入库--- * @@ -906,5 +913,25 @@ public class WmsToWCSmissionController { return success(result); } + /** + * 获取白坯原材料采购单详细信息 + */ + @PostMapping( "/selectByprocureCode") + public AjaxResult selectByprocureCode(@RequestBody BpProcureOrder bpProcureOrder) + { + if (bpProcureOrderService.selectBpProcureOrderByProcureCodeSc(bpProcureOrder)==null){ + return error("采购单不存在"); + } + return success(bpProcureOrderService.selectBpProcureOrderByProcureCodeSc(bpProcureOrder)); + } + /** + * 新增白坯原材料入库明细 + */ + + + @PostMapping("/addBpRawMaterialInDetail") + public AjaxResult add(@RequestBody BpRawMaterialInDetail bpRawMaterialInDetail){ + return success(bpRawMaterialInDetailService.insertBpRawMaterialInDetailSC(bpRawMaterialInDetail)); + } } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/BpProcureOrder.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/BpProcureOrder.java index 3091704c3..d2e10260a 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/BpProcureOrder.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BpProcureOrder.java @@ -9,7 +9,7 @@ import java.util.Date; /** * 白坯原材料采购单对象 bp_procure_order - * + * * @author ruoyi * @date 2024-11-04 */ @@ -71,76 +71,85 @@ public class BpProcureOrder extends BaseEntity /** 用户自定义5 */ @Excel(name = "用户自定义5") private String attr5; + private String factoryCode; - public void setID(String ID) + public String getFactoryCode() { + return factoryCode; + } + + public void setFactoryCode(String factoryCode) { + this.factoryCode = factoryCode; + } + + public void setID(String ID) { this.ID = ID; } - public String getID() + public String getID() { return ID; } - public void setProcureCode(String procureCode) + public void setProcureCode(String procureCode) { this.procureCode = procureCode; } - public String getProcureCode() + public String getProcureCode() { return procureCode; } - public void setMaterialCode(String materialCode) + public void setMaterialCode(String materialCode) { this.materialCode = materialCode; } - public String getMaterialCode() + public String getMaterialCode() { return materialCode; } - public void setMaterialName(String materialName) + public void setMaterialName(String materialName) { this.materialName = materialName; } - public String getMaterialName() + public String getMaterialName() { return materialName; } - public void setSupplyName(String supplyName) + public void setSupplyName(String supplyName) { this.supplyName = supplyName; } - public String getSupplyName() + public String getSupplyName() { return supplyName; } - public void setPlanNumber(Long planNumber) + public void setPlanNumber(Long planNumber) { this.planNumber = planNumber; } - public Long getPlanNumber() + public Long getPlanNumber() { return planNumber; } - public void setRealityNumber(Long realityNumber) + public void setRealityNumber(Long realityNumber) { this.realityNumber = realityNumber; } - public Long getRealityNumber() + public Long getRealityNumber() { return realityNumber; } - public void setUnit(String unit) + public void setUnit(String unit) { this.unit = unit; } - public String getUnit() + public String getUnit() { return unit; } @@ -162,39 +171,39 @@ public class BpProcureOrder extends BaseEntity { return attr1; } - public void setAttr2(String attr2) + public void setAttr2(String attr2) { this.attr2 = attr2; } - public String getAttr2() + public String getAttr2() { return attr2; } - public void setAttr3(String attr3) + public void setAttr3(String attr3) { this.attr3 = attr3; } - public String getAttr3() + public String getAttr3() { return attr3; } - public void setAttr4(String attr4) + public void setAttr4(String attr4) { this.attr4 = attr4; } - public String getAttr4() + public String getAttr4() { return attr4; } - public void setAttr5(String attr5) + public void setAttr5(String attr5) { this.attr5 = attr5; } - public String getAttr5() + public String getAttr5() { return attr5; } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpProcureOrderMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpProcureOrderMapper.java index 5bfb17c08..48b25cf8e 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpProcureOrderMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpProcureOrderMapper.java @@ -5,15 +5,15 @@ import com.op.wms.domain.BpProcureOrder; /** * 白坯原材料采购单Mapper接口 - * + * * @author ruoyi * @date 2024-11-04 */ -public interface BpProcureOrderMapper +public interface BpProcureOrderMapper { /** * 查询白坯原材料采购单 - * + * * @param ID 白坯原材料采购单主键 * @return 白坯原材料采购单 */ @@ -21,7 +21,7 @@ public interface BpProcureOrderMapper /** * 查询白坯原材料采购单列表 - * + * * @param bpProcureOrder 白坯原材料采购单 * @return 白坯原材料采购单集合 */ @@ -29,7 +29,7 @@ public interface BpProcureOrderMapper /** * 新增白坯原材料采购单 - * + * * @param bpProcureOrder 白坯原材料采购单 * @return 结果 */ @@ -37,7 +37,7 @@ public interface BpProcureOrderMapper /** * 修改白坯原材料采购单 - * + * * @param bpProcureOrder 白坯原材料采购单 * @return 结果 */ @@ -45,7 +45,7 @@ public interface BpProcureOrderMapper /** * 删除白坯原材料采购单 - * + * * @param ID 白坯原材料采购单主键 * @return 结果 */ @@ -53,7 +53,7 @@ public interface BpProcureOrderMapper /** * 批量删除白坯原材料采购单 - * + * * @param IDs 需要删除的数据主键集合 * @return 结果 */ @@ -61,4 +61,6 @@ public interface BpProcureOrderMapper // 根据采购单号查询 public BpProcureOrder selectBpProcureOrderByProcureCode(String procureCode); + + public BpProcureOrder selectBpProcureOrderByProcureCodeSc(BpProcureOrder bpProcureOrder); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IBpProcureOrderService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IBpProcureOrderService.java index 625c95666..052523163 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IBpProcureOrderService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IBpProcureOrderService.java @@ -65,4 +65,6 @@ public interface IBpProcureOrderService * 根据采购单号查询接口 * */ BpProcureOrder selectBpProcureOrderByProcureCode(String procureCode); + + BpProcureOrder selectBpProcureOrderByProcureCodeSc(BpProcureOrder bpProcureOrder); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInDetailService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInDetailService.java index f9b4cabb1..c69510b11 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInDetailService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInDetailService.java @@ -61,4 +61,6 @@ public interface IBpRawMaterialInDetailService * @return 结果 */ public int deleteBpRawMaterialInDetailById(String id); + + int insertBpRawMaterialInDetailSC(BpRawMaterialInDetail bpRawMaterialInDetail); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpProcureOrderServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpProcureOrderServiceImpl.java index 460c7d896..f458c2f34 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpProcureOrderServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpProcureOrderServiceImpl.java @@ -3,6 +3,7 @@ package com.op.wms.service.impl; import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.op.common.core.utils.uuid.IdUtils; import com.op.wms.domain.BaseProduct; import com.op.wms.mapper.BaseProductMapper; @@ -14,12 +15,12 @@ import com.op.wms.service.IBpProcureOrderService; /** * 白坯原材料采购单Service业务层处理 - * + * * @author ruoyi * @date 2024-11-04 */ @Service -public class BpProcureOrderServiceImpl implements IBpProcureOrderService +public class BpProcureOrderServiceImpl implements IBpProcureOrderService { @Autowired private BpProcureOrderMapper bpProcureOrderMapper; @@ -28,7 +29,7 @@ public class BpProcureOrderServiceImpl implements IBpProcureOrderService /** * 查询白坯原材料采购单 - * + * * @param ID 白坯原材料采购单主键 * @return 白坯原材料采购单 */ @@ -41,7 +42,7 @@ public class BpProcureOrderServiceImpl implements IBpProcureOrderService /** * 查询白坯原材料采购单列表 - * + * * @param bpProcureOrder 白坯原材料采购单 * @return 白坯原材料采购单 */ @@ -54,7 +55,7 @@ public class BpProcureOrderServiceImpl implements IBpProcureOrderService /** * 新增白坯原材料采购单 - * + * * @param bpProcureOrder 白坯原材料采购单 * @return 结果 */ @@ -70,7 +71,7 @@ public class BpProcureOrderServiceImpl implements IBpProcureOrderService /** * 修改白坯原材料采购单 - * + * * @param bpProcureOrder 白坯原材料采购单 * @return 结果 */ @@ -83,7 +84,7 @@ public class BpProcureOrderServiceImpl implements IBpProcureOrderService /** * 批量删除白坯原材料采购单 - * + * * @param IDs 需要删除的白坯原材料采购单主键 * @return 结果 */ @@ -96,7 +97,7 @@ public class BpProcureOrderServiceImpl implements IBpProcureOrderService /** * 删除白坯原材料采购单信息 - * + * * @param ID 白坯原材料采购单主键 * @return 结果 */ @@ -115,4 +116,12 @@ public class BpProcureOrderServiceImpl implements IBpProcureOrderService public BpProcureOrder selectBpProcureOrderByProcureCode(String procureCode){ return bpProcureOrderMapper.selectBpProcureOrderByProcureCode(procureCode); } + + @Override + public BpProcureOrder selectBpProcureOrderByProcureCodeSc(BpProcureOrder bpProcureOrder) { + String factoryCode = bpProcureOrder.getFactoryCode(); + DynamicDataSourceContextHolder.push("ds_" + factoryCode); + return bpProcureOrderMapper.selectBpProcureOrderByProcureCodeSc(bpProcureOrder); + } + } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInDetailServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInDetailServiceImpl.java index 5b016877f..c53e5356c 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInDetailServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInDetailServiceImpl.java @@ -4,6 +4,7 @@ import java.util.Date; import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.op.common.core.context.SecurityContextHolder; import com.op.common.core.utils.uuid.IdUtils; import com.op.common.core.web.domain.AjaxResult; @@ -187,4 +188,63 @@ public class BpRawMaterialInDetailServiceImpl implements IBpRawMaterialInDetailS public int deleteBpRawMaterialInDetailById(String id) { return bpRawMaterialInDetailMapper.deleteBpRawMaterialInDetailById(id); } + + @Override + public int insertBpRawMaterialInDetailSC(BpRawMaterialInDetail bpRawMaterialInDetail) { + int reselt=1; + //获取当前所选工厂 + String factoryCode = bpRawMaterialInDetail.getFactoryCode(); + DynamicDataSourceContextHolder.push("ds_" + factoryCode); + if (bpRawMaterialInDetail.getMaterialName().isEmpty() || bpRawMaterialInDetail.getAmountReal()==null){ + }else { + bpRawMaterialInDetail.setId(IdUtils.fastSimpleUUID()); + bpRawMaterialInDetail.setFactoryCode(factoryCode); + bpRawMaterialInDetail.setWaCode("白坯原料库"); + BaseProduct baseProduct = baseProductMapper.selectBaseProductByProductName(bpRawMaterialInDetail.getMaterialName()); + bpRawMaterialInDetail.setMaterialCode(baseProduct.getProductCode()); + bpRawMaterialInDetail.setUnit("吨"); + bpRawMaterialInDetail.setCreateBy(SecurityContextHolder.getUserName()); + bpRawMaterialInDetail.setGmtCreate(new Date()); + bpRawMaterialInDetail.setUserDefined1(bpRawMaterialInDetail.getUserDefined1());//采购单号 + bpRawMaterialInDetailMapper.insertBpRawMaterialInDetail(bpRawMaterialInDetail); + } + //判断库存中物料是否存在 + BpRawMaterialIn bpRawMaterialIn = bpRawMaterialInMapper.selectBpRawMaterialInBymateriaName(bpRawMaterialInDetail.getMaterialName()); + if (bpRawMaterialIn==null){ + //不存在,添加库存 + BpRawMaterialIn bpRawMaterialIn1 = new BpRawMaterialIn(); + bpRawMaterialIn1.setId(IdUtils.fastSimpleUUID()); + bpRawMaterialIn1.setFactoryCode(factoryCode); + bpRawMaterialIn1.setWaCode("白坯原料库"); + bpRawMaterialIn1.setMaterialName(bpRawMaterialInDetail.getMaterialName()); + BaseProduct baseProduct = baseProductMapper.selectBaseProductByProductName(bpRawMaterialInDetail.getMaterialName()); + bpRawMaterialIn1.setMaterialCode(baseProduct.getProductCode()); + bpRawMaterialIn1.setUnit(bpRawMaterialInDetail.getUnit()); + bpRawMaterialIn1.setAmountReal(bpRawMaterialInDetail.getAmountReal()); + reselt=bpRawMaterialInMapper.insertBpRawMaterialIn(bpRawMaterialIn1); + }else { + //物料存在,加库存 + bpRawMaterialIn.getAmountReal();//原有 + bpRawMaterialInDetail.getAmountReal();//新增 + bpRawMaterialIn.setAmountReal(bpRawMaterialIn.getAmountReal()+bpRawMaterialInDetail.getAmountReal()); + bpRawMaterialInMapper.updateBpRawMaterialIn(bpRawMaterialIn); + } + //采购单减库存 + // TODO: 2024-11-11 根据采购单号查询 + BpProcureOrder bpProcureOrder = bpProcureOrderMapper.selectBpProcureOrderByProcureCode(bpRawMaterialInDetail.getUserDefined1()); + if (bpProcureOrder==null){ + reselt=2; + return reselt; + }else { + //采购单减数量 +// BpProcureOrder bpProcureOrder1 = new BpProcureOrder(); +// bpProcureOrder1.setProcureCode(bpRawMaterialInDetail.getUserDefined1()); +// bpProcureOrder1.setMaterialName(bpRawMaterialInDetail.getMaterialName()); +// BaseProduct baseProduct = baseProductMapper.selectBaseProductByProductName(bpRawMaterialInDetail.getMaterialName()); +// bpProcureOrder1.setMaterialCode(baseProduct.getProductCode()); + bpProcureOrder.setRealityNumber(bpRawMaterialInDetail.getAmountReal()); + bpProcureOrderMapper.updateBpProcureOrder(bpProcureOrder); + } + return reselt; + } } diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/BpProcureOrderMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/BpProcureOrderMapper.xml index e4501f310..7f2fe20ec 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/BpProcureOrderMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/BpProcureOrderMapper.xml @@ -3,7 +3,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -27,7 +27,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + - + insert into bp_procure_order @@ -131,9 +151,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - delete from bp_procure_order where ID in + delete from bp_procure_order where ID in #{ID} - \ No newline at end of file + diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsMapper.xml index 23418ba34..a59fa337f 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/WmsOdsMateStorageNewsMapper.xml @@ -413,7 +413,7 @@ FROM wms_ods_mate_storage_news - material_code = #{materialCode}, + material_code = #{materialCode}