From f1d3595e79b7a1a0ae1c862ec2c1f98da861f57e Mon Sep 17 00:00:00 2001
From: mengjiao <3338049200@qq,com>
Date: Mon, 28 Oct 2024 15:19:08 +0800
Subject: [PATCH 1/3] =?UTF-8?q?wms=E9=A1=B5=E9=9D=A2=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../WmsOdsWhiteEmbryoInController.java | 2 +
.../controller/WmsToWCSmissionController.java | 2 +-
.../wms/domain/WmsOdsMateStorageNewsSn.java | 10 ++++
.../service/IWmsOdsWhiteEmbryoInService.java | 2 +
.../impl/WmsOdsWhiteEmbryoInServiceImpl.java | 8 ++++
.../wms/WmsOdsMateStorageNewsMapper.xml | 48 +++++++------------
.../wms/WmsOdsMateStorageNewsSnMapper.xml | 7 +++
7 files changed, 46 insertions(+), 33 deletions(-)
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsOdsWhiteEmbryoInController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsOdsWhiteEmbryoInController.java
index 173740063..49ae6098d 100644
--- a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsOdsWhiteEmbryoInController.java
+++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsOdsWhiteEmbryoInController.java
@@ -3,6 +3,7 @@ package com.op.wms.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
+import com.op.wms.domain.ProOrderWorkorder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@@ -95,4 +96,5 @@ public class WmsOdsWhiteEmbryoInController extends BaseController {
}
+
}
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 89d5a5207..9297e2a57 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
@@ -117,7 +117,7 @@ public class WmsToWCSmissionController {
}
/**
- * 手持 --包材采购单采购收货确认操作--我们把入库砍掉了,你这个就是入库操作了
+ * 手持 --包材采购单采购收货确认操作--我们把入库砍掉了,你这个就是入库操作了--不用这个了
*/
@PostMapping("/PurchaseOrderdeliPdaConfirm")
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsOdsMateStorageNewsSn.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsOdsMateStorageNewsSn.java
index afa061587..4c0d11538 100644
--- a/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsOdsMateStorageNewsSn.java
+++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/WmsOdsMateStorageNewsSn.java
@@ -137,6 +137,16 @@ public class WmsOdsMateStorageNewsSn extends BaseEntity {
*/
@Excel(name = "备用5")
private String userDefined5;
+ @Excel(name = "备用5")
+ private String status;
+
+ public String getStatus() {
+ return status;
+ }
+
+ public void setStatus(String status) {
+ this.status = status;
+ }
/**
* 备用6
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IWmsOdsWhiteEmbryoInService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IWmsOdsWhiteEmbryoInService.java
index 047069217..769e1ec4c 100644
--- a/op-modules/op-wms/src/main/java/com/op/wms/service/IWmsOdsWhiteEmbryoInService.java
+++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IWmsOdsWhiteEmbryoInService.java
@@ -2,6 +2,7 @@ package com.op.wms.service;
import java.util.List;
+import com.op.wms.domain.ProOrderWorkorder;
import com.op.wms.domain.WmsOdsWhiteEmbryoIn;
/**
@@ -59,4 +60,5 @@ public interface IWmsOdsWhiteEmbryoInService {
*/
public int deleteWmsOdsWhiteEmbryoInByID(String ID);
+
}
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsOdsWhiteEmbryoInServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsOdsWhiteEmbryoInServiceImpl.java
index 5bb18b3d9..034563f6f 100644
--- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsOdsWhiteEmbryoInServiceImpl.java
+++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsOdsWhiteEmbryoInServiceImpl.java
@@ -3,10 +3,13 @@ package com.op.wms.service.impl;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
+import java.util.Map;
+import com.alibaba.fastjson2.JSONArray;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.op.common.core.context.SecurityContextHolder;
import com.op.common.core.utils.uuid.IdUtils;
+import com.op.wms.domain.ProOrderWorkorder;
import com.op.wms.domain.Purcode;
import com.op.wms.mapper.PurcodeMapper;
import org.springframework.beans.factory.annotation.Autowired;
@@ -15,6 +18,10 @@ import com.op.wms.mapper.WmsOdsWhiteEmbryoInMapper;
import com.op.wms.domain.WmsOdsWhiteEmbryoIn;
import com.op.wms.service.IWmsOdsWhiteEmbryoInService;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.servlet.http.HttpServletRequest;
/**
* 白胚入库单Service业务层处理
@@ -115,6 +122,7 @@ public class WmsOdsWhiteEmbryoInServiceImpl implements IWmsOdsWhiteEmbryoInServi
return wmsOdsWhiteEmbryoInMapper.deleteWmsOdsWhiteEmbryoInByID(ID);
}
+
@DS("#header.poolName")
private String getPurcode(String factorycode, String orderType) {
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 f09af0700..725d0ce04 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
@@ -89,42 +89,17 @@
diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskInventoryMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskInventoryMapper.xml
index 8e8bf55b0..fc6fc6d98 100644
--- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskInventoryMapper.xml
+++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskInventoryMapper.xml
@@ -72,10 +72,8 @@
and qct.material_name like concat('%',#{materialName}, '%')
- and qct.supplier_code = #{supplierCode}
- and qct.supplier_name like concat('%',
- #{supplierName}, '%')
-
+ and qct.supplier_code like concat('%',#{supplierCode}, '%')
+ and qct.supplier_name like concat('%',#{supplierName}, '%')
and qct.income_time = #{incomeTime}
and qct.check_loc = #{checkLoc}
and qct.check_status = #{checkStatus}
diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml
index 5eb0f6b23..dc75e15a4 100644
--- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml
+++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskProduceMapper.xml
@@ -46,6 +46,7 @@
+
@@ -108,12 +109,13 @@
qct.supplier_code, qct.supplier_name, qct.income_time, qct.check_loc, qct.check_status,
qct.check_man_code, qct.check_man_name,qct.check_time, qct.check_result, qct.status,
qct.create_by,qct.create_time, qct.update_by, qct.update_time,
- qct.check_type,qct.sample_quality,qct.noOk_quality,bpa.cpk_type,
+ qct.check_type,qct.sample_quality,qct.noOk_quality,bpa.cpk_type,sdd.dict_label cpkTypeName,
q.type_code,q.check_name,SUBSTRING(pow.workorder_code_sap, 4, 12) workorderCodeSap
from qc_check_task qct
left join qc_check_type q on q.id = qct.check_type
left join pro_order_workorder pow on pow.workorder_code = qct.order_no
left join base_product_attached bpa on concat('0000000',bpa.product_code) = qct.material_code
+ left join lanju_op_cloud.dbo.sys_dict_data sdd on sdd.dict_type = 'qms_category' and sdd.dict_value = bpa.cpk_type
and qct.check_no = #{checkNo}
and qct.income_batch_no = #{incomeBatchNo}
diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml
index 8c298431e..5299836f9 100644
--- a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml
+++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml
@@ -206,7 +206,9 @@
left join base_equipment be on be.equipment_code = qct.check_loc
where qct.check_type = 'checkTypeSCXJ' and qct.del_flag = '0' and pow.del_flag = '0'
and qct.check_no like concat('%',#{orderNo},'%')
- and qct.material_code like concat('%',#{materialCode},'%')
+ and (
+ qct.material_code like concat('%',#{materialCode},'%') or qct.material_name like concat('%',#{materialCode},'%')
+ )
and qct.income_batch_no like concat('%',#{incomeBatchNo},'%')
and CONVERT(varchar(10),pow.product_date, 120) = #{incomeTimeStr}
and CONVERT(varchar(30),qct.income_time, 120) >= #{incomeTimeStart}
From 0b22b0542ca1db9211d0ace695aaa8e1ce56b96f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=99=88=E6=81=92=E6=9D=B0?= <2658502433@qq.com>
Date: Tue, 29 Oct 2024 18:08:12 +0800
Subject: [PATCH 3/3] =?UTF-8?q?=E7=99=BD=E5=9D=AF=E5=8E=9F=E6=9D=90?=
=?UTF-8?q?=E6=96=99=E5=85=A5=E5=BA=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../controller/BpRawMaterialInController.java | 104 +++++++
.../BpRawMaterialInDetailController.java | 105 +++++++
.../com/op/wms/domain/BpRawMaterialIn.java | 280 ++++++++++++++++++
.../op/wms/domain/BpRawMaterialInDetail.java | 280 ++++++++++++++++++
.../com/op/wms/mapper/BaseProductMapper.java | 2 +
.../mapper/BpRawMaterialInDetailMapper.java | 61 ++++
.../op/wms/mapper/BpRawMaterialInMapper.java | 64 ++++
.../IBpRawMaterialInDetailService.java | 63 ++++
.../wms/service/IBpRawMaterialInService.java | 61 ++++
.../BpRawMaterialInDetailServiceImpl.java | 156 ++++++++++
.../impl/BpRawMaterialInServiceImpl.java | 101 +++++++
.../mapper/wms/BaseProductMapper.xml | 7 +
.../wms/BpRawMaterialInDetailMapper.xml | 142 +++++++++
.../mapper/wms/BpRawMaterialInMapper.xml | 148 +++++++++
14 files changed, 1574 insertions(+)
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInController.java
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInDetailController.java
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialIn.java
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialInDetail.java
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/mapper/BpRawMaterialInDetailMapper.java
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/mapper/BpRawMaterialInMapper.java
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInDetailService.java
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInService.java
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInDetailServiceImpl.java
create mode 100644 op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInServiceImpl.java
create mode 100644 op-modules/op-wms/src/main/resources/mapper/wms/BpRawMaterialInDetailMapper.xml
create mode 100644 op-modules/op-wms/src/main/resources/mapper/wms/BpRawMaterialInMapper.xml
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInController.java
new file mode 100644
index 000000000..3a1ce6081
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInController.java
@@ -0,0 +1,104 @@
+package com.op.wms.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+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.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.wms.domain.BpRawMaterialIn;
+import com.op.wms.service.IBpRawMaterialInService;
+import com.op.common.core.utils.poi.ExcelUtil;
+import com.op.common.core.web.page.TableDataInfo;
+
+/**
+ * 白坯原材料入库Controller
+ *
+ * @author ruoyi
+ * @date 2024-10-28
+ */
+@RestController
+@RequestMapping("/raw")
+public class BpRawMaterialInController extends BaseController
+{
+ @Autowired
+ private IBpRawMaterialInService bpRawMaterialInService;
+
+ /**
+ * 查询白坯原材料入库列表
+ */
+ @PreAuthorize("@ss.hasPermi('wms:raw:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(BpRawMaterialIn bpRawMaterialIn)
+ {
+ startPage();
+ List list = bpRawMaterialInService.selectBpRawMaterialInList(bpRawMaterialIn);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出白坯原材料入库列表
+ */
+ @PreAuthorize("@ss.hasPermi('wms:raw:export')")
+ @Log(title = "白坯原材料入库", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, BpRawMaterialIn bpRawMaterialIn)
+ {
+ List list = bpRawMaterialInService.selectBpRawMaterialInList(bpRawMaterialIn);
+ ExcelUtil util = new ExcelUtil(BpRawMaterialIn.class);
+ util.exportExcel(response, list, "白坯原材料入库数据");
+ }
+
+ /**
+ * 获取白坯原材料入库详细信息
+ */
+ @PreAuthorize("@ss.hasPermi('wms:raw:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") String id)
+ {
+ return success(bpRawMaterialInService.selectBpRawMaterialInById(id));
+ }
+
+ /**
+ * 新增白坯原材料入库
+ */
+ @PreAuthorize("@ss.hasPermi('wms:raw:add')")
+ @Log(title = "白坯原材料入库", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody BpRawMaterialIn bpRawMaterialIn)
+ {
+ return toAjax(bpRawMaterialInService.insertBpRawMaterialIn(bpRawMaterialIn));
+ }
+
+ /**
+ * 修改白坯原材料入库
+ */
+ @PreAuthorize("@ss.hasPermi('wms:raw:edit')")
+ @Log(title = "白坯原材料入库", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody BpRawMaterialIn bpRawMaterialIn)
+ {
+ return toAjax(bpRawMaterialInService.updateBpRawMaterialIn(bpRawMaterialIn));
+ }
+
+ /**
+ * 删除白坯原材料入库
+ */
+ @PreAuthorize("@ss.hasPermi('wms:raw:remove')")
+ @Log(title = "白坯原材料入库", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable String[] ids)
+ {
+ return toAjax(bpRawMaterialInService.deleteBpRawMaterialInByIds(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
new file mode 100644
index 000000000..a624f8df4
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/BpRawMaterialInDetailController.java
@@ -0,0 +1,105 @@
+package com.op.wms.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.microsoft.windowsazure.exception.ServiceException;
+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.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.wms.domain.BpRawMaterialInDetail;
+import com.op.wms.service.IBpRawMaterialInDetailService;
+import com.op.common.core.utils.poi.ExcelUtil;
+import com.op.common.core.web.page.TableDataInfo;
+
+/**
+ * 白坯原材料入库明细Controller
+ *
+ * @author ruoyi
+ * @date 2024-10-29
+ */
+@RestController
+@RequestMapping("/detail")
+public class BpRawMaterialInDetailController extends BaseController
+{
+ @Autowired
+ private IBpRawMaterialInDetailService bpRawMaterialInDetailService;
+
+ /**
+ * 查询白坯原材料入库明细列表
+ */
+ @PreAuthorize("@ss.hasPermi('wms:detail:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(BpRawMaterialInDetail bpRawMaterialInDetail)
+ {
+ startPage();
+ List list = bpRawMaterialInDetailService.selectBpRawMaterialInDetailList(bpRawMaterialInDetail);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出白坯原材料入库明细列表
+ */
+ @PreAuthorize("@ss.hasPermi('wms:detail:export')")
+ @Log(title = "白坯原材料入库明细", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, BpRawMaterialInDetail bpRawMaterialInDetail)
+ {
+ List list = bpRawMaterialInDetailService.selectBpRawMaterialInDetailList(bpRawMaterialInDetail);
+ ExcelUtil util = new ExcelUtil(BpRawMaterialInDetail.class);
+ util.exportExcel(response, list, "白坯原材料入库明细数据");
+ }
+
+ /**
+ * 获取白坯原材料入库明细详细信息
+ */
+ @PreAuthorize("@ss.hasPermi('wms:detail:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") String id)
+ {
+ return success(bpRawMaterialInDetailService.selectBpRawMaterialInDetailById(id));
+ }
+
+ /**
+ * 新增白坯原材料入库明细
+ */
+ @PreAuthorize("@ss.hasPermi('wms:detail:add')")
+ @Log(title = "白坯原材料入库明细", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody BpRawMaterialInDetail bpRawMaterialInDetail) throws ServiceException {
+ return toAjax(bpRawMaterialInDetailService.insertBpRawMaterialInDetail(bpRawMaterialInDetail));
+ }
+
+ /**
+ * 修改白坯原材料入库明细
+ */
+ @PreAuthorize("@ss.hasPermi('wms:detail:edit')")
+ @Log(title = "白坯原材料入库明细", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody BpRawMaterialInDetail bpRawMaterialInDetail)
+ {
+ return toAjax(bpRawMaterialInDetailService.updateBpRawMaterialInDetail(bpRawMaterialInDetail));
+ }
+
+ /**
+ * 删除白坯原材料入库明细
+ */
+ @PreAuthorize("@ss.hasPermi('wms:detail:remove')")
+ @Log(title = "白坯原材料入库明细", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable String[] ids)
+ {
+ return toAjax(bpRawMaterialInDetailService.deleteBpRawMaterialInDetailByIds(ids));
+ }
+}
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialIn.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialIn.java
new file mode 100644
index 000000000..2f68ab9b5
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialIn.java
@@ -0,0 +1,280 @@
+package com.op.wms.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+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_raw_material_in
+ *
+ * @author ruoyi
+ * @date 2024-10-28
+ */
+public class BpRawMaterialIn extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键ID */
+ private String id;
+
+ /** 工厂 */
+ @Excel(name = "工厂")
+ private String factoryCode;
+
+ /** 仓库 */
+ @Excel(name = "仓库")
+ private String waCode;
+
+ /** 库区 */
+ @Excel(name = "库区")
+ private String wlCode;
+
+ /** 物料编码 */
+ @Excel(name = "物料编码")
+ private String materialCode;
+
+ /** 物料名称 */
+ @Excel(name = "物料名称")
+ private String materialName;
+
+ /** 单位 */
+ @Excel(name = "单位")
+ private String unit;
+
+ /** 供应商 */
+ @Excel(name = "供应商")
+ private String supplyName;
+
+ /** 计划数量 */
+ @Excel(name = "计划数量")
+ private Long amnountPlan;
+
+ /** 收货数量 */
+ @Excel(name = "收货数量")
+ private Long amountReal;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined1;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined2;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined3;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined4;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined5;
+
+ /** 创建时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date gmtCreate;
+
+ /** 更新人 */
+ @Excel(name = "更新人")
+ private String modifiedBy;
+
+ /** 更新时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date gmtModified;
+
+ public void setId(String id)
+ {
+ this.id = id;
+ }
+
+ public String getId()
+ {
+ return id;
+ }
+ public void setFactoryCode(String factoryCode)
+ {
+ this.factoryCode = factoryCode;
+ }
+
+ public String getFactoryCode()
+ {
+ return factoryCode;
+ }
+ public void setWaCode(String waCode)
+ {
+ this.waCode = waCode;
+ }
+
+ public String getWaCode()
+ {
+ return waCode;
+ }
+ public void setWlCode(String wlCode)
+ {
+ this.wlCode = wlCode;
+ }
+
+ public String getWlCode()
+ {
+ return wlCode;
+ }
+ 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 setUnit(String unit)
+ {
+ this.unit = unit;
+ }
+
+ public String getUnit()
+ {
+ return unit;
+ }
+ public void setSupplyName(String supplyName)
+ {
+ this.supplyName = supplyName;
+ }
+
+ public String getSupplyName()
+ {
+ return supplyName;
+ }
+ public void setAmnountPlan(Long amnountPlan)
+ {
+ this.amnountPlan = amnountPlan;
+ }
+
+ public Long getAmnountPlan()
+ {
+ return amnountPlan;
+ }
+ public void setAmountReal(Long amountReal)
+ {
+ this.amountReal = amountReal;
+ }
+
+ public Long getAmountReal()
+ {
+ return amountReal;
+ }
+ public void setUserDefined1(String userDefined1)
+ {
+ this.userDefined1 = userDefined1;
+ }
+
+ public String getUserDefined1()
+ {
+ return userDefined1;
+ }
+ public void setUserDefined2(String userDefined2)
+ {
+ this.userDefined2 = userDefined2;
+ }
+
+ public String getUserDefined2()
+ {
+ return userDefined2;
+ }
+ public void setUserDefined3(String userDefined3)
+ {
+ this.userDefined3 = userDefined3;
+ }
+
+ public String getUserDefined3()
+ {
+ return userDefined3;
+ }
+ public void setUserDefined4(String userDefined4)
+ {
+ this.userDefined4 = userDefined4;
+ }
+
+ public String getUserDefined4()
+ {
+ return userDefined4;
+ }
+ public void setUserDefined5(String userDefined5)
+ {
+ this.userDefined5 = userDefined5;
+ }
+
+ public String getUserDefined5()
+ {
+ return userDefined5;
+ }
+ public void setGmtCreate(Date gmtCreate)
+ {
+ this.gmtCreate = gmtCreate;
+ }
+
+ public Date getGmtCreate()
+ {
+ return gmtCreate;
+ }
+ public void setModifiedBy(String modifiedBy)
+ {
+ this.modifiedBy = modifiedBy;
+ }
+
+ public String getModifiedBy()
+ {
+ return modifiedBy;
+ }
+ public void setGmtModified(Date gmtModified)
+ {
+ this.gmtModified = gmtModified;
+ }
+
+ public Date getGmtModified()
+ {
+ return gmtModified;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("factoryCode", getFactoryCode())
+ .append("waCode", getWaCode())
+ .append("wlCode", getWlCode())
+ .append("materialCode", getMaterialCode())
+ .append("materialName", getMaterialName())
+ .append("unit", getUnit())
+ .append("supplyName", getSupplyName())
+ .append("amnountPlan", getAmnountPlan())
+ .append("amountReal", getAmountReal())
+ .append("userDefined1", getUserDefined1())
+ .append("userDefined2", getUserDefined2())
+ .append("userDefined3", getUserDefined3())
+ .append("userDefined4", getUserDefined4())
+ .append("userDefined5", getUserDefined5())
+ .append("createBy", getCreateBy())
+ .append("gmtCreate", getGmtCreate())
+ .append("modifiedBy", getModifiedBy())
+ .append("gmtModified", getGmtModified())
+ .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
new file mode 100644
index 000000000..536f256ef
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BpRawMaterialInDetail.java
@@ -0,0 +1,280 @@
+package com.op.wms.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+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_raw_material_in_detail
+ *
+ * @author ruoyi
+ * @date 2024-10-29
+ */
+public class BpRawMaterialInDetail extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键ID */
+ private String id;
+
+ /** 工厂 */
+ @Excel(name = "工厂")
+ private String factoryCode;
+
+ /** 仓库 */
+ @Excel(name = "仓库")
+ private String waCode;
+
+ /** 库区 */
+ @Excel(name = "库区")
+ private String wlCode;
+
+ /** 物料编码 */
+ @Excel(name = "物料编码")
+ private String materialCode;
+
+ /** 物料名称 */
+ @Excel(name = "物料名称")
+ private String materialName;
+
+ /** 单位 */
+ @Excel(name = "单位")
+ private String unit;
+
+ /** 供应商 */
+ @Excel(name = "供应商")
+ private String supplyName;
+
+ /** 计划数量 */
+ @Excel(name = "计划数量")
+ private Long amnountPlan;
+
+ /** 收货数量 */
+ @Excel(name = "收货数量")
+ private Long amountReal;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined1;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined2;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined3;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined4;
+
+ /** 备用 */
+ @Excel(name = "备用")
+ private String userDefined5;
+
+ /** 创建时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date gmtCreate;
+
+ /** 更新人 */
+ @Excel(name = "更新人")
+ private String modifiedBy;
+
+ /** 更新时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date gmtModified;
+
+ public void setId(String id)
+ {
+ this.id = id;
+ }
+
+ public String getId()
+ {
+ return id;
+ }
+ public void setFactoryCode(String factoryCode)
+ {
+ this.factoryCode = factoryCode;
+ }
+
+ public String getFactoryCode()
+ {
+ return factoryCode;
+ }
+ public void setWaCode(String waCode)
+ {
+ this.waCode = waCode;
+ }
+
+ public String getWaCode()
+ {
+ return waCode;
+ }
+ public void setWlCode(String wlCode)
+ {
+ this.wlCode = wlCode;
+ }
+
+ public String getWlCode()
+ {
+ return wlCode;
+ }
+ 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 setUnit(String unit)
+ {
+ this.unit = unit;
+ }
+
+ public String getUnit()
+ {
+ return unit;
+ }
+ public void setSupplyName(String supplyName)
+ {
+ this.supplyName = supplyName;
+ }
+
+ public String getSupplyName()
+ {
+ return supplyName;
+ }
+ public void setAmnountPlan(Long amnountPlan)
+ {
+ this.amnountPlan = amnountPlan;
+ }
+
+ public Long getAmnountPlan()
+ {
+ return amnountPlan;
+ }
+ public void setAmountReal(Long amountReal)
+ {
+ this.amountReal = amountReal;
+ }
+
+ public Long getAmountReal()
+ {
+ return amountReal;
+ }
+ public void setUserDefined1(String userDefined1)
+ {
+ this.userDefined1 = userDefined1;
+ }
+
+ public String getUserDefined1()
+ {
+ return userDefined1;
+ }
+ public void setUserDefined2(String userDefined2)
+ {
+ this.userDefined2 = userDefined2;
+ }
+
+ public String getUserDefined2()
+ {
+ return userDefined2;
+ }
+ public void setUserDefined3(String userDefined3)
+ {
+ this.userDefined3 = userDefined3;
+ }
+
+ public String getUserDefined3()
+ {
+ return userDefined3;
+ }
+ public void setUserDefined4(String userDefined4)
+ {
+ this.userDefined4 = userDefined4;
+ }
+
+ public String getUserDefined4()
+ {
+ return userDefined4;
+ }
+ public void setUserDefined5(String userDefined5)
+ {
+ this.userDefined5 = userDefined5;
+ }
+
+ public String getUserDefined5()
+ {
+ return userDefined5;
+ }
+ public void setGmtCreate(Date gmtCreate)
+ {
+ this.gmtCreate = gmtCreate;
+ }
+
+ public Date getGmtCreate()
+ {
+ return gmtCreate;
+ }
+ public void setModifiedBy(String modifiedBy)
+ {
+ this.modifiedBy = modifiedBy;
+ }
+
+ public String getModifiedBy()
+ {
+ return modifiedBy;
+ }
+ public void setGmtModified(Date gmtModified)
+ {
+ this.gmtModified = gmtModified;
+ }
+
+ public Date getGmtModified()
+ {
+ return gmtModified;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("factoryCode", getFactoryCode())
+ .append("waCode", getWaCode())
+ .append("wlCode", getWlCode())
+ .append("materialCode", getMaterialCode())
+ .append("materialName", getMaterialName())
+ .append("unit", getUnit())
+ .append("supplyName", getSupplyName())
+ .append("amnountPlan", getAmnountPlan())
+ .append("amountReal", getAmountReal())
+ .append("userDefined1", getUserDefined1())
+ .append("userDefined2", getUserDefined2())
+ .append("userDefined3", getUserDefined3())
+ .append("userDefined4", getUserDefined4())
+ .append("userDefined5", getUserDefined5())
+ .append("createBy", getCreateBy())
+ .append("gmtCreate", getGmtCreate())
+ .append("modifiedBy", getModifiedBy())
+ .append("gmtModified", getGmtModified())
+ .toString();
+ }
+}
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseProductMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseProductMapper.java
index c2b55d5f9..d51ed923b 100644
--- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseProductMapper.java
+++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BaseProductMapper.java
@@ -64,4 +64,6 @@ public interface BaseProductMapper {
String checkCodeUnique(BaseProduct baseProduct);
BaseProduct selectBaseProductByProductCode(String productCode);
+
+ BaseProduct selectBaseProductByProductName(String productName);
}
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpRawMaterialInDetailMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpRawMaterialInDetailMapper.java
new file mode 100644
index 000000000..faceb2c93
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpRawMaterialInDetailMapper.java
@@ -0,0 +1,61 @@
+package com.op.wms.mapper;
+
+import java.util.List;
+import com.op.wms.domain.BpRawMaterialInDetail;
+
+/**
+ * 白坯原材料入库明细Mapper接口
+ *
+ * @author ruoyi
+ * @date 2024-10-29
+ */
+public interface BpRawMaterialInDetailMapper
+{
+ /**
+ * 查询白坯原材料入库明细
+ *
+ * @param id 白坯原材料入库明细主键
+ * @return 白坯原材料入库明细
+ */
+ public BpRawMaterialInDetail selectBpRawMaterialInDetailById(String id);
+
+ /**
+ * 查询白坯原材料入库明细列表
+ *
+ * @param bpRawMaterialInDetail 白坯原材料入库明细
+ * @return 白坯原材料入库明细集合
+ */
+ public List selectBpRawMaterialInDetailList(BpRawMaterialInDetail bpRawMaterialInDetail);
+
+ /**
+ * 新增白坯原材料入库明细
+ *
+ * @param bpRawMaterialInDetail 白坯原材料入库明细
+ * @return 结果
+ */
+ public int insertBpRawMaterialInDetail(BpRawMaterialInDetail bpRawMaterialInDetail);
+
+ /**
+ * 修改白坯原材料入库明细
+ *
+ * @param bpRawMaterialInDetail 白坯原材料入库明细
+ * @return 结果
+ */
+ public int updateBpRawMaterialInDetail(BpRawMaterialInDetail bpRawMaterialInDetail);
+
+ /**
+ * 删除白坯原材料入库明细
+ *
+ * @param id 白坯原材料入库明细主键
+ * @return 结果
+ */
+ public int deleteBpRawMaterialInDetailById(String id);
+
+ /**
+ * 批量删除白坯原材料入库明细
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteBpRawMaterialInDetailByIds(String[] ids);
+}
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpRawMaterialInMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpRawMaterialInMapper.java
new file mode 100644
index 000000000..f2c84213f
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/BpRawMaterialInMapper.java
@@ -0,0 +1,64 @@
+package com.op.wms.mapper;
+
+import java.util.List;
+
+import com.op.wms.domain.BpRawMaterialIn;
+
+/**
+ * 白坯原材料入库Mapper接口
+ *
+ * @author ruoyi
+ * @date 2024-10-28
+ */
+public interface BpRawMaterialInMapper
+{
+ /**
+ * 查询白坯原材料入库
+ *
+ * @param id 白坯原材料入库主键
+ * @return 白坯原材料入库
+ */
+ public BpRawMaterialIn selectBpRawMaterialInById(String id);
+
+ /**
+ * 查询白坯原材料入库列表
+ *
+ * @param bpRawMaterialIn 白坯原材料入库
+ * @return 白坯原材料入库集合
+ */
+ public List selectBpRawMaterialInList(BpRawMaterialIn bpRawMaterialIn);
+
+ /**
+ * 新增白坯原材料入库
+ *
+ * @param bpRawMaterialIn 白坯原材料入库
+ * @return 结果
+ */
+ public int insertBpRawMaterialIn(BpRawMaterialIn bpRawMaterialIn);
+
+ /**
+ * 修改白坯原材料入库
+ *
+ * @param bpRawMaterialIn 白坯原材料入库
+ * @return 结果
+ */
+ public int updateBpRawMaterialIn(BpRawMaterialIn bpRawMaterialIn);
+
+ /**
+ * 删除白坯原材料入库
+ *
+ * @param id 白坯原材料入库主键
+ * @return 结果
+ */
+ public int deleteBpRawMaterialInById(String id);
+
+ /**
+ * 批量删除白坯原材料入库
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteBpRawMaterialInByIds(String[] ids);
+
+ BpRawMaterialIn selectBpRawMaterialInBymateriaName(String materiaName);
+}
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
new file mode 100644
index 000000000..73f0c1c26
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInDetailService.java
@@ -0,0 +1,63 @@
+package com.op.wms.service;
+
+import java.util.List;
+
+import com.microsoft.windowsazure.exception.ServiceException;
+import com.op.wms.domain.BpRawMaterialInDetail;
+
+/**
+ * 白坯原材料入库明细Service接口
+ *
+ * @author ruoyi
+ * @date 2024-10-29
+ */
+public interface IBpRawMaterialInDetailService
+{
+ /**
+ * 查询白坯原材料入库明细
+ *
+ * @param id 白坯原材料入库明细主键
+ * @return 白坯原材料入库明细
+ */
+ public BpRawMaterialInDetail selectBpRawMaterialInDetailById(String id);
+
+ /**
+ * 查询白坯原材料入库明细列表
+ *
+ * @param bpRawMaterialInDetail 白坯原材料入库明细
+ * @return 白坯原材料入库明细集合
+ */
+ public List selectBpRawMaterialInDetailList(BpRawMaterialInDetail bpRawMaterialInDetail);
+
+ /**
+ * 新增白坯原材料入库明细
+ *
+ * @param bpRawMaterialInDetail 白坯原材料入库明细
+ * @return 结果
+ */
+ public int insertBpRawMaterialInDetail(BpRawMaterialInDetail bpRawMaterialInDetail) throws ServiceException;
+
+ /**
+ * 修改白坯原材料入库明细
+ *
+ * @param bpRawMaterialInDetail 白坯原材料入库明细
+ * @return 结果
+ */
+ public int updateBpRawMaterialInDetail(BpRawMaterialInDetail bpRawMaterialInDetail);
+
+ /**
+ * 批量删除白坯原材料入库明细
+ *
+ * @param ids 需要删除的白坯原材料入库明细主键集合
+ * @return 结果
+ */
+ public int deleteBpRawMaterialInDetailByIds(String[] ids);
+
+ /**
+ * 删除白坯原材料入库明细信息
+ *
+ * @param id 白坯原材料入库明细主键
+ * @return 结果
+ */
+ public int deleteBpRawMaterialInDetailById(String id);
+}
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInService.java
new file mode 100644
index 000000000..b0e307312
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IBpRawMaterialInService.java
@@ -0,0 +1,61 @@
+package com.op.wms.service;
+
+import java.util.List;
+import com.op.wms.domain.BpRawMaterialIn;
+
+/**
+ * 白坯原材料入库Service接口
+ *
+ * @author ruoyi
+ * @date 2024-10-28
+ */
+public interface IBpRawMaterialInService
+{
+ /**
+ * 查询白坯原材料入库
+ *
+ * @param id 白坯原材料入库主键
+ * @return 白坯原材料入库
+ */
+ public BpRawMaterialIn selectBpRawMaterialInById(String id);
+
+ /**
+ * 查询白坯原材料入库列表
+ *
+ * @param bpRawMaterialIn 白坯原材料入库
+ * @return 白坯原材料入库集合
+ */
+ public List selectBpRawMaterialInList(BpRawMaterialIn bpRawMaterialIn);
+
+ /**
+ * 新增白坯原材料入库
+ *
+ * @param bpRawMaterialIn 白坯原材料入库
+ * @return 结果
+ */
+ public int insertBpRawMaterialIn(BpRawMaterialIn bpRawMaterialIn);
+
+ /**
+ * 修改白坯原材料入库
+ *
+ * @param bpRawMaterialIn 白坯原材料入库
+ * @return 结果
+ */
+ public int updateBpRawMaterialIn(BpRawMaterialIn bpRawMaterialIn);
+
+ /**
+ * 批量删除白坯原材料入库
+ *
+ * @param ids 需要删除的白坯原材料入库主键集合
+ * @return 结果
+ */
+ public int deleteBpRawMaterialInByIds(String[] ids);
+
+ /**
+ * 删除白坯原材料入库信息
+ *
+ * @param id 白坯原材料入库主键
+ * @return 结果
+ */
+ public int deleteBpRawMaterialInById(String 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
new file mode 100644
index 000000000..92080165f
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInDetailServiceImpl.java
@@ -0,0 +1,156 @@
+package com.op.wms.service.impl;
+
+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.wms.domain.BaseProduct;
+import com.op.wms.domain.BpRawMaterialIn;
+import com.op.wms.mapper.BaseProductMapper;
+import com.op.wms.mapper.BpRawMaterialInMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.op.wms.mapper.BpRawMaterialInDetailMapper;
+import com.op.wms.domain.BpRawMaterialInDetail;
+import com.op.wms.service.IBpRawMaterialInDetailService;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.servlet.http.HttpServletRequest;
+
+/**
+ * 白坯原材料入库明细Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2024-10-29
+ */
+@Service
+public class BpRawMaterialInDetailServiceImpl implements IBpRawMaterialInDetailService
+{
+ @Autowired
+ private BpRawMaterialInDetailMapper bpRawMaterialInDetailMapper;
+ @Autowired
+ private BaseProductMapper baseProductMapper;
+ @Autowired
+ private BpRawMaterialInMapper bpRawMaterialInMapper;
+
+ /**
+ * 查询白坯原材料入库明细
+ *
+ * @param id 白坯原材料入库明细主键
+ * @return 白坯原材料入库明细
+ */
+ @Override
+ @DS("#header.poolName")
+ public BpRawMaterialInDetail selectBpRawMaterialInDetailById(String id)
+ {
+ return bpRawMaterialInDetailMapper.selectBpRawMaterialInDetailById(id);
+ }
+
+ /**
+ * 查询白坯原材料入库明细列表
+ *
+ * @param bpRawMaterialInDetail 白坯原材料入库明细
+ * @return 白坯原材料入库明细
+ */
+ @Override
+ @DS("#header.poolName")
+ public List selectBpRawMaterialInDetailList(BpRawMaterialInDetail bpRawMaterialInDetail)
+ {
+ return bpRawMaterialInDetailMapper.selectBpRawMaterialInDetailList(bpRawMaterialInDetail);
+ }
+
+ /**
+ * 新增白坯原材料入库明细
+ *
+ * @param bpRawMaterialInDetail 白坯原材料入库明细
+ * @return 结果
+ */
+ @Override
+ @DS("#header.poolName")
+ public int insertBpRawMaterialInDetail(BpRawMaterialInDetail bpRawMaterialInDetail) throws ServiceException {
+ //获取当前所选工厂
+ HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
+ String key = "#header.poolName";
+ 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);
+ bpRawMaterialInDetail.setWaCode("白坯原料库");
+ BaseProduct baseProduct = baseProductMapper.selectBaseProductByProductName(bpRawMaterialInDetail.getMaterialName());
+ bpRawMaterialInDetail.setMaterialCode(baseProduct.getProductCode());
+ bpRawMaterialInDetail.setUnit("吨");
+ bpRawMaterialInDetail.setCreateBy(SecurityContextHolder.getUserName());
+ bpRawMaterialInDetail.setGmtCreate(new Date());
+ 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(String.valueOf(baseProduct));
+ bpRawMaterialIn1.setUnit(bpRawMaterialInDetail.getUnit());
+ bpRawMaterialIn1.setAmountReal(bpRawMaterialInDetail.getAmountReal());
+ bpRawMaterialInMapper.insertBpRawMaterialIn(bpRawMaterialIn1);
+ }else {
+ //物料存在,加库存
+ bpRawMaterialIn.getAmountReal();//原有
+ bpRawMaterialInDetail.getAmountReal();//新增
+ bpRawMaterialIn.setAmountReal(bpRawMaterialIn.getAmountReal()+bpRawMaterialInDetail.getAmountReal());
+ bpRawMaterialInMapper.updateBpRawMaterialIn(bpRawMaterialIn);
+ }
+ int reselt=1;
+ return reselt;
+ }
+
+ /**
+ * 修改白坯原材料入库明细
+ *
+ * @param bpRawMaterialInDetail 白坯原材料入库明细
+ * @return 结果
+ */
+ @Override
+ @DS("#header.poolName")
+ public int updateBpRawMaterialInDetail(BpRawMaterialInDetail bpRawMaterialInDetail)
+ {
+ return bpRawMaterialInDetailMapper.updateBpRawMaterialInDetail(bpRawMaterialInDetail);
+ }
+
+ /**
+ * 批量删除白坯原材料入库明细
+ *
+ * @param ids 需要删除的白坯原材料入库明细主键
+ * @return 结果
+ */
+ @Override
+ @DS("#header.poolName")
+ public int deleteBpRawMaterialInDetailByIds(String[] ids)
+ {
+ return bpRawMaterialInDetailMapper.deleteBpRawMaterialInDetailByIds(ids);
+ }
+
+ /**
+ * 删除白坯原材料入库明细信息
+ *
+ * @param id 白坯原材料入库明细主键
+ * @return 结果
+ */
+ @Override
+ @DS("#header.poolName")
+ public int deleteBpRawMaterialInDetailById(String id)
+ {
+ return bpRawMaterialInDetailMapper.deleteBpRawMaterialInDetailById(id);
+ }
+}
diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInServiceImpl.java
new file mode 100644
index 000000000..84d2f6dbb
--- /dev/null
+++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpRawMaterialInServiceImpl.java
@@ -0,0 +1,101 @@
+package com.op.wms.service.impl;
+
+import java.util.List;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.op.wms.domain.BpRawMaterialIn;
+import com.op.wms.mapper.BpRawMaterialInMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.op.wms.service.IBpRawMaterialInService;
+
+/**
+ * 白坯原材料入库Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2024-10-28
+ */
+@Service
+public class BpRawMaterialInServiceImpl implements IBpRawMaterialInService
+{
+ @Autowired
+ private BpRawMaterialInMapper bpRawMaterialInMapper;
+
+ /**
+ * 查询白坯原材料入库
+ *
+ * @param id 白坯原材料入库主键
+ * @return 白坯原材料入库
+ */
+ @Override
+ @DS("#header.poolName")
+ public BpRawMaterialIn selectBpRawMaterialInById(String id)
+ {
+ return bpRawMaterialInMapper.selectBpRawMaterialInById(id);
+ }
+
+ /**
+ * 查询白坯原材料入库列表
+ *
+ * @param bpRawMaterialIn 白坯原材料入库
+ * @return 白坯原材料入库
+ */
+ @Override
+ @DS("#header.poolName")
+ public List selectBpRawMaterialInList(BpRawMaterialIn bpRawMaterialIn)
+ {
+ return bpRawMaterialInMapper.selectBpRawMaterialInList(bpRawMaterialIn);
+ }
+
+ /**
+ * 新增白坯原材料入库
+ *
+ * @param bpRawMaterialIn 白坯原材料入库
+ * @return 结果
+ */
+ @Override
+ @DS("#header.poolName")
+ public int insertBpRawMaterialIn(BpRawMaterialIn bpRawMaterialIn)
+ {
+ return bpRawMaterialInMapper.insertBpRawMaterialIn(bpRawMaterialIn);
+ }
+
+ /**
+ * 修改白坯原材料入库
+ *
+ * @param bpRawMaterialIn 白坯原材料入库
+ * @return 结果
+ */
+ @Override
+ @DS("#header.poolName")
+ public int updateBpRawMaterialIn(BpRawMaterialIn bpRawMaterialIn)
+ {
+ return bpRawMaterialInMapper.updateBpRawMaterialIn(bpRawMaterialIn);
+ }
+
+ /**
+ * 批量删除白坯原材料入库
+ *
+ * @param ids 需要删除的白坯原材料入库主键
+ * @return 结果
+ */
+ @Override
+ @DS("#header.poolName")
+ public int deleteBpRawMaterialInByIds(String[] ids)
+ {
+ return bpRawMaterialInMapper.deleteBpRawMaterialInByIds(ids);
+ }
+
+ /**
+ * 删除白坯原材料入库信息
+ *
+ * @param id 白坯原材料入库主键
+ * @return 结果
+ */
+ @Override
+ @DS("#header.poolName")
+ public int deleteBpRawMaterialInById(String id)
+ {
+ return bpRawMaterialInMapper.deleteBpRawMaterialInById(id);
+ }
+}
diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductMapper.xml
index bc8cfd7d3..0df2de904 100644
--- a/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductMapper.xml
+++ b/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductMapper.xml
@@ -472,5 +472,12 @@
where bp.product_code like concat('%', #{productCode}, '%')
and del_flag = '0'
+
diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/BpRawMaterialInDetailMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/BpRawMaterialInDetailMapper.xml
new file mode 100644
index 000000000..45799ff1c
--- /dev/null
+++ b/op-modules/op-wms/src/main/resources/mapper/wms/BpRawMaterialInDetailMapper.xml
@@ -0,0 +1,142 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, factory_code, wa_code, wl_code, material_code, material_name, unit, supply_name, amnount_plan, amount_real, user_defined1, user_defined2, user_defined3, user_defined4, user_defined5, create_by, gmt_create, modified_by, gmt_modified from bp_raw_material_in_detail
+
+
+
+
+
+
+
+ insert into bp_raw_material_in_detail
+
+ id,
+ factory_code,
+ wa_code,
+ wl_code,
+ material_code,
+ material_name,
+ unit,
+ supply_name,
+ amnount_plan,
+ amount_real,
+ user_defined1,
+ user_defined2,
+ user_defined3,
+ user_defined4,
+ user_defined5,
+ create_by,
+ gmt_create,
+ modified_by,
+ gmt_modified,
+
+
+ #{id},
+ #{factoryCode},
+ #{waCode},
+ #{wlCode},
+ #{materialCode},
+ #{materialName},
+ #{unit},
+ #{supplyName},
+ #{amnountPlan},
+ #{amountReal},
+ #{userDefined1},
+ #{userDefined2},
+ #{userDefined3},
+ #{userDefined4},
+ #{userDefined5},
+ #{createBy},
+ #{gmtCreate},
+ #{modifiedBy},
+ #{gmtModified},
+
+
+
+
+ update bp_raw_material_in_detail
+
+ factory_code = #{factoryCode},
+ wa_code = #{waCode},
+ wl_code = #{wlCode},
+ material_code = #{materialCode},
+ material_name = #{materialName},
+ unit = #{unit},
+ supply_name = #{supplyName},
+ amnount_plan = #{amnountPlan},
+ amount_real = #{amountReal},
+ user_defined1 = #{userDefined1},
+ user_defined2 = #{userDefined2},
+ user_defined3 = #{userDefined3},
+ user_defined4 = #{userDefined4},
+ user_defined5 = #{userDefined5},
+ create_by = #{createBy},
+ gmt_create = #{gmtCreate},
+ modified_by = #{modifiedBy},
+ gmt_modified = #{gmtModified},
+
+ where id = #{id}
+
+
+
+ delete from bp_raw_material_in_detail where id = #{id}
+
+
+
+ delete from bp_raw_material_in_detail where id in
+
+ #{id}
+
+
+
\ No newline at end of file
diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/BpRawMaterialInMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/BpRawMaterialInMapper.xml
new file mode 100644
index 000000000..c13df621e
--- /dev/null
+++ b/op-modules/op-wms/src/main/resources/mapper/wms/BpRawMaterialInMapper.xml
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, factory_code, wa_code, wl_code, material_code, material_name, unit, supply_name, amnount_plan, amount_real, user_defined1, user_defined2, user_defined3, user_defined4, user_defined5, create_by, gmt_create, modified_by, gmt_modified from bp_raw_material_in
+
+
+
+
+
+
+
+
+ insert into bp_raw_material_in
+
+ id,
+ factory_code,
+ wa_code,
+ wl_code,
+ material_code,
+ material_name,
+ unit,
+ supply_name,
+ amnount_plan,
+ amount_real,
+ user_defined1,
+ user_defined2,
+ user_defined3,
+ user_defined4,
+ user_defined5,
+ create_by,
+ gmt_create,
+ modified_by,
+ gmt_modified,
+
+
+ #{id},
+ #{factoryCode},
+ #{waCode},
+ #{wlCode},
+ #{materialCode},
+ #{materialName},
+ #{unit},
+ #{supplyName},
+ #{amnountPlan},
+ #{amountReal},
+ #{userDefined1},
+ #{userDefined2},
+ #{userDefined3},
+ #{userDefined4},
+ #{userDefined5},
+ #{createBy},
+ #{gmtCreate},
+ #{modifiedBy},
+ #{gmtModified},
+
+
+
+
+ update bp_raw_material_in
+
+ factory_code = #{factoryCode},
+ wa_code = #{waCode},
+ wl_code = #{wlCode},
+ material_code = #{materialCode},
+ material_name = #{materialName},
+ unit = #{unit},
+ supply_name = #{supplyName},
+ amnount_plan = #{amnountPlan},
+ amount_real = #{amountReal},
+ user_defined1 = #{userDefined1},
+ user_defined2 = #{userDefined2},
+ user_defined3 = #{userDefined3},
+ user_defined4 = #{userDefined4},
+ user_defined5 = #{userDefined5},
+ create_by = #{createBy},
+ gmt_create = #{gmtCreate},
+ modified_by = #{modifiedBy},
+ gmt_modified = #{gmtModified},
+
+ where id = #{id}
+
+
+
+ delete from bp_raw_material_in where id = #{id}
+
+
+
+ delete from bp_raw_material_in where id in
+
+ #{id}
+
+
+
\ No newline at end of file