diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/BpProcureOrderController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/BpProcureOrderController.java new file mode 100644 index 000000000..77da644f6 --- /dev/null +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/BpProcureOrderController.java @@ -0,0 +1,104 @@ +package com.op.wms.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.op.wms.domain.BpProcureOrder; +import com.op.wms.service.IBpProcureOrderService; +import com.op.common.log.annotation.Log; +import com.op.common.core.web.controller.BaseController; +import com.op.common.core.web.domain.AjaxResult; +import com.op.common.log.enums.BusinessType; +import com.op.common.core.utils.poi.ExcelUtil; +import com.op.common.core.web.page.TableDataInfo; + +/** + * 白坯原材料采购单Controller + * + * @author ruoyi + * @date 2024-11-04 + */ +@RestController +@RequestMapping("/bpprocure") +public class BpProcureOrderController extends BaseController +{ + @Autowired + private IBpProcureOrderService bpProcureOrderService; + + /** + * 查询白坯原材料采购单列表 + */ + @PreAuthorize("@ss.hasPermi('wms:bpprocure:list')") + @GetMapping("/list") + public TableDataInfo list(BpProcureOrder bpProcureOrder) + { + startPage(); + List list = bpProcureOrderService.selectBpProcureOrderList(bpProcureOrder); + return getDataTable(list); + } + + /** + * 导出白坯原材料采购单列表 + */ + @PreAuthorize("@ss.hasPermi('wms:bpprocure:export')") + @Log(title = "白坯原材料采购单", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BpProcureOrder bpProcureOrder) + { + List list = bpProcureOrderService.selectBpProcureOrderList(bpProcureOrder); + ExcelUtil util = new ExcelUtil(BpProcureOrder.class); + util.exportExcel(response, list, "白坯原材料采购单数据"); + } + + /** + * 获取白坯原材料采购单详细信息 + */ + @PreAuthorize("@ss.hasPermi('wms:bpprocure:query')") + @GetMapping(value = "/{ID}") + public AjaxResult getInfo(@PathVariable("ID") String ID) + { + return success(bpProcureOrderService.selectBpProcureOrderByID(ID)); + } + + /** + * 新增白坯原材料采购单 + */ + @PreAuthorize("@ss.hasPermi('wms:bpprocure:add')") + @Log(title = "白坯原材料采购单", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BpProcureOrder bpProcureOrder) + { + return toAjax(bpProcureOrderService.insertBpProcureOrder(bpProcureOrder)); + } + + /** + * 修改白坯原材料采购单 + */ + @PreAuthorize("@ss.hasPermi('wms:bpprocure:edit')") + @Log(title = "白坯原材料采购单", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BpProcureOrder bpProcureOrder) + { + return toAjax(bpProcureOrderService.updateBpProcureOrder(bpProcureOrder)); + } + + /** + * 删除白坯原材料采购单 + */ + @PreAuthorize("@ss.hasPermi('wms:bpprocure:remove')") + @Log(title = "白坯原材料采购单", businessType = BusinessType.DELETE) + @DeleteMapping("/{IDs}") + public AjaxResult remove(@PathVariable String[] IDs) + { + return toAjax(bpProcureOrderService.deleteBpProcureOrderByIDs(IDs)); + } +} diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInDetailController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInDetailController.java index b0fd2bd8c..8f102db52 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInDetailController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInDetailController.java @@ -78,7 +78,7 @@ public class BpRawMaterialInDetailController extends BaseController @RequiresPermissions("wms:detail:add") @Log(title = "白坯原材料入库明细", businessType = BusinessType.INSERT) @PostMapping - public AjaxResult add(@RequestBody BpRawMaterialInDetail bpRawMaterialInDetail) throws ServiceException { + public AjaxResult add(@RequestBody BpRawMaterialInDetail bpRawMaterialInDetail){ return toAjax(bpRawMaterialInDetailService.insertBpRawMaterialInDetail(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 new file mode 100644 index 000000000..bfe3e9064 --- /dev/null +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BpProcureOrder.java @@ -0,0 +1,219 @@ +package com.op.wms.domain; + +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.op.common.core.annotation.Excel; +import com.op.common.core.web.domain.BaseEntity; + +/** + * 白坯原材料采购单对象 bp_procure_order + * + * @author ruoyi + * @date 2024-11-04 + */ +public class BpProcureOrder extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** ID */ + private String ID; + + /** 采购单号 */ + @Excel(name = "采购单号") + private String procureCode; + + /** 物料编码 */ + @Excel(name = "物料编码") + private String materialCode; + + /** 物料名称 */ + @Excel(name = "物料名称") + private String materialName; + + /** 供应商 */ + @Excel(name = "供应商") + private String supplyName; + + /** 计划数量 */ + @Excel(name = "计划数量") + private Long planNumber; + + /** 已入库数量 */ + @Excel(name = "已入库数量") + private Long realityNumber; + + /** 单位 */ + @Excel(name = "单位") + private String unit; + + /** 价格 */ + @Excel(name = "价格") + private Long price; + + /** 用户自定义1 */ + @Excel(name = "用户自定义1") + private String attr1; + + /** 用户自定义2 */ + @Excel(name = "用户自定义2") + private String attr2; + + /** 用户自定义3 */ + @Excel(name = "用户自定义3") + private String attr3; + + /** 用户自定义4 */ + @Excel(name = "用户自定义4") + private String attr4; + + /** 用户自定义5 */ + @Excel(name = "用户自定义5") + private String attr5; + + public void setID(String ID) + { + this.ID = ID; + } + + public String getID() + { + return ID; + } + public void setProcureCode(String procureCode) + { + this.procureCode = procureCode; + } + + public String getProcureCode() + { + return procureCode; + } + public void setMaterialCode(String materialCode) + { + this.materialCode = materialCode; + } + + public String getMaterialCode() + { + return materialCode; + } + public void setMaterialName(String materialName) + { + this.materialName = materialName; + } + + public String getMaterialName() + { + return materialName; + } + public void setSupplyName(String supplyName) + { + this.supplyName = supplyName; + } + + public String getSupplyName() + { + return supplyName; + } + public void setPlanNumber(Long planNumber) + { + this.planNumber = planNumber; + } + + public Long getPlanNumber() + { + return planNumber; + } + public void setRealityNumber(Long realityNumber) + { + this.realityNumber = realityNumber; + } + + public Long getRealityNumber() + { + return realityNumber; + } + public void setUnit(String unit) + { + this.unit = unit; + } + + public String getUnit() + { + return unit; + } + public void setPrice(Long price) + { + this.price = price; + } + + public Long getPrice() + { + return price; + } + public void setAttr1(String attr1) + { + this.attr1 = attr1; + } + + public String getAttr1() + { + return attr1; + } + public void setAttr2(String attr2) + { + this.attr2 = attr2; + } + + public String getAttr2() + { + return attr2; + } + public void setAttr3(String attr3) + { + this.attr3 = attr3; + } + + public String getAttr3() + { + return attr3; + } + public void setAttr4(String attr4) + { + this.attr4 = attr4; + } + + public String getAttr4() + { + return attr4; + } + public void setAttr5(String attr5) + { + this.attr5 = attr5; + } + + public String getAttr5() + { + return attr5; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("ID", getID()) + .append("procureCode", getProcureCode()) + .append("materialCode", getMaterialCode()) + .append("materialName", getMaterialName()) + .append("supplyName", getSupplyName()) + .append("planNumber", getPlanNumber()) + .append("realityNumber", getRealityNumber()) + .append("unit", getUnit()) + .append("price", getPrice()) + .append("attr1", getAttr1()) + .append("attr2", getAttr2()) + .append("attr3", getAttr3()) + .append("attr4", getAttr4()) + .append("attr5", getAttr5()) + .toString(); + } +} diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialInDetail.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialInDetail.java index 536f256ef..19f920be7 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialInDetail.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialInDetail.java @@ -57,7 +57,7 @@ public class BpRawMaterialInDetail extends BaseEntity private Long amountReal; /** 备用 */ - @Excel(name = "备用") + @Excel(name = "采购单号") private String userDefined1; /** 备用 */ 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 new file mode 100644 index 000000000..7648d521f --- /dev/null +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpProcureOrderMapper.java @@ -0,0 +1,61 @@ +package com.op.wms.mapper; + +import java.util.List; +import com.op.wms.domain.BpProcureOrder; + +/** + * 白坯原材料采购单Mapper接口 + * + * @author ruoyi + * @date 2024-11-04 + */ +public interface BpProcureOrderMapper +{ + /** + * 查询白坯原材料采购单 + * + * @param ID 白坯原材料采购单主键 + * @return 白坯原材料采购单 + */ + public BpProcureOrder selectBpProcureOrderByID(String ID); + + /** + * 查询白坯原材料采购单列表 + * + * @param bpProcureOrder 白坯原材料采购单 + * @return 白坯原材料采购单集合 + */ + public List selectBpProcureOrderList(BpProcureOrder bpProcureOrder); + + /** + * 新增白坯原材料采购单 + * + * @param bpProcureOrder 白坯原材料采购单 + * @return 结果 + */ + public int insertBpProcureOrder(BpProcureOrder bpProcureOrder); + + /** + * 修改白坯原材料采购单 + * + * @param bpProcureOrder 白坯原材料采购单 + * @return 结果 + */ + public int updateBpProcureOrder(BpProcureOrder bpProcureOrder); + + /** + * 删除白坯原材料采购单 + * + * @param ID 白坯原材料采购单主键 + * @return 结果 + */ + public int deleteBpProcureOrderByID(String ID); + + /** + * 批量删除白坯原材料采购单 + * + * @param IDs 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBpProcureOrderByIDs(String[] IDs); +} 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 new file mode 100644 index 000000000..845d2ffe4 --- /dev/null +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IBpProcureOrderService.java @@ -0,0 +1,61 @@ +package com.op.wms.service; + +import java.util.List; +import com.op.wms.domain.BpProcureOrder; + +/** + * 白坯原材料采购单Service接口 + * + * @author ruoyi + * @date 2024-11-04 + */ +public interface IBpProcureOrderService +{ + /** + * 查询白坯原材料采购单 + * + * @param ID 白坯原材料采购单主键 + * @return 白坯原材料采购单 + */ + public BpProcureOrder selectBpProcureOrderByID(String ID); + + /** + * 查询白坯原材料采购单列表 + * + * @param bpProcureOrder 白坯原材料采购单 + * @return 白坯原材料采购单集合 + */ + public List selectBpProcureOrderList(BpProcureOrder bpProcureOrder); + + /** + * 新增白坯原材料采购单 + * + * @param bpProcureOrder 白坯原材料采购单 + * @return 结果 + */ + public int insertBpProcureOrder(BpProcureOrder bpProcureOrder); + + /** + * 修改白坯原材料采购单 + * + * @param bpProcureOrder 白坯原材料采购单 + * @return 结果 + */ + public int updateBpProcureOrder(BpProcureOrder bpProcureOrder); + + /** + * 批量删除白坯原材料采购单 + * + * @param IDs 需要删除的白坯原材料采购单主键集合 + * @return 结果 + */ + public int deleteBpProcureOrderByIDs(String[] IDs); + + /** + * 删除白坯原材料采购单信息 + * + * @param ID 白坯原材料采购单主键 + * @return 结果 + */ + public int deleteBpProcureOrderByID(String ID); +} 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 a47cc37ec..f9b4cabb1 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 @@ -36,7 +36,7 @@ public interface IBpRawMaterialInDetailService * @param bpRawMaterialInDetail 白坯原材料入库明细 * @return 结果 */ - public int insertBpRawMaterialInDetail(BpRawMaterialInDetail bpRawMaterialInDetail) throws ServiceException; + public int insertBpRawMaterialInDetail(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 new file mode 100644 index 000000000..e45e9bc71 --- /dev/null +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpProcureOrderServiceImpl.java @@ -0,0 +1,109 @@ +package com.op.wms.service.impl; + +import java.util.List; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.utils.uuid.IdUtils; +import com.op.wms.domain.BaseProduct; +import com.op.wms.mapper.BaseProductMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.op.wms.mapper.BpProcureOrderMapper; +import com.op.wms.domain.BpProcureOrder; +import com.op.wms.service.IBpProcureOrderService; + +/** + * 白坯原材料采购单Service业务层处理 + * + * @author ruoyi + * @date 2024-11-04 + */ +@Service +public class BpProcureOrderServiceImpl implements IBpProcureOrderService +{ + @Autowired + private BpProcureOrderMapper bpProcureOrderMapper; + @Autowired + private BaseProductMapper baseProductMapper; + + /** + * 查询白坯原材料采购单 + * + * @param ID 白坯原材料采购单主键 + * @return 白坯原材料采购单 + */ + @Override + @DS("#header.poolName") + public BpProcureOrder selectBpProcureOrderByID(String ID) + { + return bpProcureOrderMapper.selectBpProcureOrderByID(ID); + } + + /** + * 查询白坯原材料采购单列表 + * + * @param bpProcureOrder 白坯原材料采购单 + * @return 白坯原材料采购单 + */ + @Override + @DS("#header.poolName") + public List selectBpProcureOrderList(BpProcureOrder bpProcureOrder) + { + return bpProcureOrderMapper.selectBpProcureOrderList(bpProcureOrder); + } + + /** + * 新增白坯原材料采购单 + * + * @param bpProcureOrder 白坯原材料采购单 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertBpProcureOrder(BpProcureOrder bpProcureOrder) + { + bpProcureOrder.setID(IdUtils.fastSimpleUUID()); + BaseProduct baseProduct = baseProductMapper.selectBaseProductByProductName(bpProcureOrder.getMaterialName()); + bpProcureOrder.setMaterialCode(baseProduct.getProductCode()); + return bpProcureOrderMapper.insertBpProcureOrder(bpProcureOrder); + } + + /** + * 修改白坯原材料采购单 + * + * @param bpProcureOrder 白坯原材料采购单 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateBpProcureOrder(BpProcureOrder bpProcureOrder) + { + return bpProcureOrderMapper.updateBpProcureOrder(bpProcureOrder); + } + + /** + * 批量删除白坯原材料采购单 + * + * @param IDs 需要删除的白坯原材料采购单主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteBpProcureOrderByIDs(String[] IDs) + { + return bpProcureOrderMapper.deleteBpProcureOrderByIDs(IDs); + } + + /** + * 删除白坯原材料采购单信息 + * + * @param ID 白坯原材料采购单主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteBpProcureOrderByID(String ID) + { + return bpProcureOrderMapper.deleteBpProcureOrderByID(ID); + } +} 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 e01e41ca4..381cfe58f 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,7 +4,6 @@ import java.util.Date; import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; -import com.microsoft.windowsazure.exception.ServiceException; import com.op.common.core.context.SecurityContextHolder; import com.op.common.core.utils.uuid.IdUtils; import com.op.common.core.web.domain.AjaxResult; @@ -72,7 +71,7 @@ public class BpRawMaterialInDetailServiceImpl implements IBpRawMaterialInDetailS */ @Override @DS("#header.poolName") - public int insertBpRawMaterialInDetail(BpRawMaterialInDetail bpRawMaterialInDetail) throws ServiceException { + public int insertBpRawMaterialInDetail(BpRawMaterialInDetail bpRawMaterialInDetail){ int reselt=1; //获取当前所选工厂 HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); @@ -80,7 +79,6 @@ public class BpRawMaterialInDetailServiceImpl implements IBpRawMaterialInDetailS String factoryCode = request.getHeader(key.substring(8)).replace("ds_", ""); if (bpRawMaterialInDetail.getMaterialName().isEmpty() || bpRawMaterialInDetail.getAmountReal()==null){ - throw new ServiceException("物料名称或数量不能为空"); }else { bpRawMaterialInDetail.setId(IdUtils.fastSimpleUUID()); bpRawMaterialInDetail.setFactoryCode(factoryCode); @@ -90,6 +88,7 @@ public class BpRawMaterialInDetailServiceImpl implements IBpRawMaterialInDetailS bpRawMaterialInDetail.setUnit("吨"); bpRawMaterialInDetail.setCreateBy(SecurityContextHolder.getUserName()); bpRawMaterialInDetail.setGmtCreate(new Date()); + bpRawMaterialInDetail.setUserDefined1(bpRawMaterialInDetail.getUserDefined1());//采购单号 bpRawMaterialInDetailMapper.insertBpRawMaterialInDetail(bpRawMaterialInDetail); } //判断库存中物料是否存在 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 new file mode 100644 index 000000000..91fdf9d5b --- /dev/null +++ b/op-modules/op-wms/src/main/resources/mapper/wms/BpProcureOrderMapper.xml @@ -0,0 +1,118 @@ + + + + + + + + + + + + + + + + + + + + + + + select ID, procure_code, material_code, material_name, supply_name, plan_number, reality_number, unit, price, attr1, attr2, attr3, attr4, attr5 from bp_procure_order + + + + + + + + insert into bp_procure_order + + ID, + procure_code, + material_code, + material_name, + supply_name, + plan_number, + reality_number, + unit, + price, + attr1, + attr2, + attr3, + attr4, + attr5, + + + #{ID}, + #{procureCode}, + #{materialCode}, + #{materialName}, + #{supplyName}, + #{planNumber}, + #{realityNumber}, + #{unit}, + #{price}, + #{attr1}, + #{attr2}, + #{attr3}, + #{attr4}, + #{attr5}, + + + + + update bp_procure_order + + procure_code = #{procureCode}, + material_code = #{materialCode}, + material_name = #{materialName}, + supply_name = #{supplyName}, + plan_number = #{planNumber}, + reality_number = #{realityNumber}, + unit = #{unit}, + price = #{price}, + attr1 = #{attr1}, + attr2 = #{attr2}, + attr3 = #{attr3}, + attr4 = #{attr4}, + attr5 = #{attr5}, + + where ID = #{ID} + + + + delete from bp_procure_order where ID = #{ID} + + + + delete from bp_procure_order where ID in + + #{ID} + + + \ No newline at end of file