+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.desk.cost.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.desk.cost.excel.CostCalculationOutputExcel;
+import org.springblade.desk.cost.pojo.entity.CostCalculationOutputEntity;
+import org.springblade.desk.cost.pojo.vo.CostCalculationOutputVO;
+
+import java.util.List;
+
+/**
+ * 成本计算物料配置表 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2026-04-21
+ */
+public interface CostCalculationOutputMapper extends BaseMapper {
+
+ /**
+ * 自定义分页
+ *
+ * @param page 分页参数
+ * @param CostCalculationOutput 查询参数
+ * @return List
+ */
+ List selectCostCalculationOutputPage(IPage page, CostCalculationOutputVO CostCalculationOutput);
+
+
+ /**
+ * 获取导出数据
+ *
+ * @param queryWrapper 查询条件
+ * @return List
+ */
+ List export(@Param("ew") Wrapper queryWrapper);
+
+}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostCalculationOutputMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostCalculationOutputMapper.xml
new file mode 100644
index 000000000..5a32dad3f
--- /dev/null
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostCalculationOutputMapper.xml
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostStatisticsMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostStatisticsMapper.java
index efd4e3548..d967831c7 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostStatisticsMapper.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostStatisticsMapper.java
@@ -74,4 +74,8 @@ public interface CostStatisticsMapper extends BaseMapper {
List exportWorkCenterMaterialCost(@Param("workCenterId")Long workCenterId, @Param("month")String month);
List exportAssistantMaterialCost(@Param("month")String month);
+
+ BigDecimal getWorkCenterMaterialCostByUser(@Param("userCode")String userCode, @Param("month")String month);
+
+ BigDecimal getAssistantMaterialCostByUser(@Param("userCode")String userCode,@Param("month")String month);
}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostStatisticsMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostStatisticsMapper.xml
index 3853cbb6a..bf4a32b96 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostStatisticsMapper.xml
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostStatisticsMapper.xml
@@ -71,6 +71,20 @@
AND a.GOODS_ID NOT IN ( SELECT id FROM ST_GOODS WHERE GOODS_CODE IN ( SELECT GOODS_CODE FROM MES_COST_CALCULATION_GOODS ) )
+
+
+
@@ -104,7 +107,10 @@
ST_STOCK_INOUT_RECORD a left join blade_user b on a.user_id = b.id
WHERE
a.is_deleted = 0
- AND b.code != #{userCode}
+ AND b.code not in
+
+ #{userCode}
+
AND a.IN_OUT_TYPE = 1
AND to_char( IN_OUT_DATE, 'yyyy-MM' ) = #{month}
AND a.GOODS_ID NOT IN ( SELECT id FROM ST_GOODS WHERE GOODS_CODE IN ( SELECT GOODS_CODE FROM MES_COST_CALCULATION_GOODS ) )
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/service/impl/CostStatisticsServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/service/impl/CostStatisticsServiceImpl.java
index 0f136e0ea..d2b618dd1 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/service/impl/CostStatisticsServiceImpl.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/service/impl/CostStatisticsServiceImpl.java
@@ -117,8 +117,8 @@ public class CostStatisticsServiceImpl extends BaseServiceImpllambdaQuery().eq(CostCalculationEmployeeEntity::getWorkCenterId,workCenter.getId()));
- if(costCalculationEmployee == null){
+ List costCalculationEmployeeList = costCalculationEmployeeService.list(Wrappers.lambdaQuery().eq(CostCalculationEmployeeEntity::getWorkCenterId,workCenter.getId()));
+ if(CollectionUtils.isEmpty(costCalculationEmployeeList)){
//作业中心材料费用(剔除成本计算维护的物料)
workCenterMaterialCost = baseMapper.getWorkCenterMaterialCost(workCenter.getId(),month);
//费用科目中维护的作业中心材料费用
@@ -130,11 +130,12 @@ public class CostStatisticsServiceImpl extends BaseServiceImpl userCodeList = costCalculationEmployeeList.stream().map(CostCalculationEmployeeEntity::getEmployeeCode).collect(Collectors.toList());
//作业中心材料费用(剔除成本计算维护的物料)
- workCenterMaterialCost = baseMapper.getWorkCenterMaterialCostByUser(costCalculationEmployee.getEmployeeCode(),month);
+ workCenterMaterialCost = baseMapper.getWorkCenterMaterialCostByUser(userCodeList,month);
//费用科目中维护的作业中心材料费用
erpWorkCenterMaterialCost = getMaterialCost(subjectFeeList,workCenter,month);
- assistantMaterialCost = baseMapper.getAssistantMaterialCostByUser(costCalculationEmployee.getEmployeeCode(),month);
+ assistantMaterialCost = baseMapper.getAssistantMaterialCostByUser(userCodeList,month);
//材料费用
materialCost = workCenterMaterialCost.add(assistantMaterialCost).add(erpWorkCenterMaterialCost);
}
From 81bc93a329c400054c058ddd4b3e60418131509e Mon Sep 17 00:00:00 2001
From: wusiyu <2015098864@qq.com>
Date: Mon, 1 Jun 2026 18:33:28 +0800
Subject: [PATCH 03/12] =?UTF-8?q?=E4=BB=93=E5=BA=93=E7=AE=A1=E7=90=86?=
=?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../wms/mapper/StOtherReceiptRecordMapper.java | 4 ++++
.../wms/mapper/StOtherReceiptRecordMapper.xml | 12 ++++++++++++
.../impl/StGlassCakeOutServiceImpl.java | 18 +++++++++++++++++-
.../impl/StGraphiteMoldOutServiceImpl.java | 17 ++++++++++++++++-
.../impl/StOtherReceiptRecordServiceImpl.java | 7 +++++++
5 files changed, 56 insertions(+), 2 deletions(-)
diff --git a/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StOtherReceiptRecordMapper.java b/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StOtherReceiptRecordMapper.java
index 195ce21c7..fd29e76e0 100644
--- a/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StOtherReceiptRecordMapper.java
+++ b/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StOtherReceiptRecordMapper.java
@@ -46,5 +46,9 @@ public interface StOtherReceiptRecordMapper extends BaseMapper
+
+
+ UPDATE MES_WORK_ORDER
+ SET batch_no = #{batchNo}
+ WHERE ID = #{id}
+
+
+
+ UPDATE MES_YIELD_ORDER
+ SET batch_no = #{batchNo}
+ WHERE ID = #{id}
+
diff --git a/blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StGlassCakeOutServiceImpl.java b/blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StGlassCakeOutServiceImpl.java
index 01a6e65fc..1780f5fd3 100644
--- a/blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StGlassCakeOutServiceImpl.java
+++ b/blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StGlassCakeOutServiceImpl.java
@@ -1,6 +1,8 @@
package org.springblade.wms.service.impl;
+import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
+import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -16,6 +18,7 @@ import org.springblade.wms.excel.StGlassCakeOutExcel;
import org.springblade.wms.mapper.StGlassCakeOutMapper;
import org.springblade.wms.mapper.StOtherReceiptRecordMapper;
import org.springblade.wms.mapper.StRealtimeStockMapper;
+import org.springblade.wms.mapper.StStockInoutRecordMapper;
import org.springblade.wms.pojo.dto.StGlassCakeOutDTO;
import org.springblade.wms.pojo.entity.*;
import org.springblade.wms.pojo.vo.StGlassCakeOutVO;
@@ -43,6 +46,8 @@ public class StGlassCakeOutServiceImpl extends BaseServiceImpl preOutStockList = new ArrayList<>();
+ String datePrefix = DateUtil.format(new Date(), "yyyyMMdd");
+ // 2. 当天最大序号
+ String maxCode = stStockInoutRecordMapper.getMaxCheckCode(datePrefix);
+ int lastNum = 0;
+ if (StrUtil.isNotBlank(maxCode)) {
+ String number = maxCode.substring(datePrefix.length());
+ lastNum = Integer.parseInt(number);
+ }
+
// 4. 遍历每个玻璃饼,单独匹配库存+判断是否生成预出库
if (!CollectionUtils.isEmpty(glassCakePartList)) {
for (DsPartEntity glassCake : glassCakePartList) {
@@ -269,7 +283,9 @@ public class StGlassCakeOutServiceImpl extends BaseServiceImpl
Date: Tue, 2 Jun 2026 09:55:33 +0800
Subject: [PATCH 04/12] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BF=AE=E6=94=B9-sjx?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../desk/cost/controller/CostCalculationEmployeeController.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java
index e41d6b593..8fc7d2ef2 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java
@@ -196,7 +196,7 @@ public class CostCalculationEmployeeController extends BladeController {
List list = new ArrayList<>();
for(CostCalculationEmployeeExcel employExcel : importList){
//根据员工编号查询,有则删除
- CostCalculationEmployeeEntity old = costCalculationEmployeeService.getOne(Wrappers.lambdaQuery().eq(CostCalculationEmployeeEntity::getEmployeeCode,employExcel.getEmployeeCode()));
+ CostCalculationEmployeeEntity old = costCalculationEmployeeService.getOne(Wrappers.lambdaQuery().eq(CostCalculationEmployeeEntity::getEmployeeCode,employExcel.getEmployeeCode()).eq(CostCalculationEmployeeEntity::getWorkCenterName,employExcel.getWorkCenterName()));
if(old != null){
costCalculationEmployeeService.deleteLogic(Func.toLongList(old.getId().toString()));
}
From 72a67e2d1c2bf255be5107f9ac8f5e462116f033 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=8E=E6=B6=9B?=
Date: Tue, 2 Jun 2026 10:05:19 +0800
Subject: [PATCH 05/12] =?UTF-8?q?=E5=B7=A5=E5=BA=8F=E6=8A=A5=E5=B7=A5?=
=?UTF-8?q?=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../desk/produce/service/impl/WorkOrderServiceImpl.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java
index 3e4683967..4c62270ed 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java
@@ -2037,7 +2037,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl
Date: Tue, 2 Jun 2026 10:15:19 +0800
Subject: [PATCH 06/12] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BF=AE=E6=94=B9-sjx?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../cost/controller/CostCalculationEmployeeController.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java
index 8fc7d2ef2..50641c473 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java
@@ -195,8 +195,8 @@ public class CostCalculationEmployeeController extends BladeController {
}
List list = new ArrayList<>();
for(CostCalculationEmployeeExcel employExcel : importList){
- //根据员工编号查询,有则删除
- CostCalculationEmployeeEntity old = costCalculationEmployeeService.getOne(Wrappers.lambdaQuery().eq(CostCalculationEmployeeEntity::getEmployeeCode,employExcel.getEmployeeCode()).eq(CostCalculationEmployeeEntity::getWorkCenterName,employExcel.getWorkCenterName()));
+ //根据作业中心查询,有则删除
+ CostCalculationEmployeeEntity old = costCalculationEmployeeService.getOne(Wrappers.lambdaQuery().eq(CostCalculationEmployeeEntity::getWorkCenterName,employExcel.getWorkCenterName()));
if(old != null){
costCalculationEmployeeService.deleteLogic(Func.toLongList(old.getId().toString()));
}
From ea5001f61efd718a463b6671fc3bb32bfac0aa66 Mon Sep 17 00:00:00 2001
From: maxiangong <298222784@qq.com>
Date: Tue, 2 Jun 2026 11:47:52 +0800
Subject: [PATCH 07/12] =?UTF-8?q?=E8=96=AA=E8=B5=84=E8=AE=A1=E7=AE=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../excel/BsSalaryCalculationExcel.java | 21 +++++++----
.../pojo/vo/BsSalaryCalculationVO.java | 35 +++++++++++++++----
.../desk/produce/mapper/WorkPlanMapper.xml | 26 ++++++++++++--
3 files changed, 67 insertions(+), 15 deletions(-)
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/excel/BsSalaryCalculationExcel.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/excel/BsSalaryCalculationExcel.java
index 84f449eb9..8d715e55f 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/excel/BsSalaryCalculationExcel.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/excel/BsSalaryCalculationExcel.java
@@ -7,6 +7,8 @@ import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.io.Serializable;
+import java.math.BigDecimal;
+
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@@ -83,25 +85,25 @@ public class BsSalaryCalculationExcel implements Serializable {
private String ppsName;
/**
- * 定额工时
+ * 额定工时
*/
@ColumnWidth(20)
- @ExcelProperty("定额工时")
- private String hourQuota;
+ @ExcelProperty("额定工时")
+ private BigDecimal standardTime;
/**
* 准备工时
*/
@ColumnWidth(20)
@ExcelProperty("准备工时")
- private String hourPrepar;
+ private BigDecimal prepareTime;
/**
* 工时额定单位
*/
@ColumnWidth(20)
@ExcelProperty("工时额定单位")
- private String hqUnit;
+ private String hourTypeValue;
/**
* 报工数
@@ -115,7 +117,14 @@ public class BsSalaryCalculationExcel implements Serializable {
*/
@ColumnWidth(20)
@ExcelProperty("总工时")
- private String hourTotal;
+ private BigDecimal totalHour;
+
+ /**
+ * 实际总工时
+ */
+ @ColumnWidth(20)
+ @ExcelProperty("实际总工时")
+ private BigDecimal hourQuota;
/**
* 责任人
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/pojo/vo/BsSalaryCalculationVO.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/pojo/vo/BsSalaryCalculationVO.java
index 5414e8d00..f4438d7fb 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/pojo/vo/BsSalaryCalculationVO.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/pojo/vo/BsSalaryCalculationVO.java
@@ -3,6 +3,7 @@ package org.springblade.desk.efficiency.pojo.vo;
import lombok.Data;
import java.io.Serial;
+import java.math.BigDecimal;
@Data
public class BsSalaryCalculationVO {
@@ -56,9 +57,9 @@ public class BsSalaryCalculationVO {
private String ppsName;
/**
- * 定额工时
+ * 工时定额
*/
- private String hourQuota;
+ private BigDecimal hourQuota;
/**
* 准备工时
@@ -75,11 +76,6 @@ public class BsSalaryCalculationVO {
*/
private String workQty;
- /**
- * 总工时
- */
- private String hourTotal;
-
/**
* 责任人
*/
@@ -169,4 +165,29 @@ public class BsSalaryCalculationVO {
*/
private boolean isAsc;
+ /**
+ * 额定工时
+ */
+ private BigDecimal standardTime;
+
+ /**
+ * 准备工时
+ */
+ private BigDecimal prepareTime;
+
+ /**
+ * 工时类型 0-按件 1-按订单
+ */
+ private String hourType;
+
+ /**
+ * 工时类型
+ */
+ private String hourTypeValue;
+
+ /**
+ * 总工时
+ */
+ private BigDecimal totalHour;
+
}
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.xml
index bc5418bee..e62c5afd9 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.xml
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.xml
@@ -490,7 +490,18 @@
CASE WHEN a.BASE_AMOUNT IS NULL AND a.SUBSIDY_AMOUNT IS NULL
THEN NULL
ELSE NVL(a.BASE_AMOUNT, 0) + NVL(a.SUBSIDY_AMOUNT, 0)
- END AS totalAmount
+ END AS totalAmount,
+ a.STANDARD_TIME as standardTime,
+ a.PREPARE_TIME as prepareTime,
+ a.HOUR_TYPE as hourType,
+ CASE
+ WHEN a.HOUR_TYPE = '0' THEN a.WORK_QTY * a.STANDARD_TIME + PREPARE_TIME
+ WHEN a.HOUR_TYPE = '1' THEN a.STANDARD_TIME + PREPARE_TIME
+ ELSE NULL END as totalHour,
+ CASE
+ WHEN a.HOUR_TYPE = '0' THEN '按件'
+ WHEN a.HOUR_TYPE = '1' THEN '按订单'
+ ELSE '' END as hourTypeValue
FROM MES_WORK_PLAN a
INNER JOIN BS_PROCESS_SET b ON a.PPS_ID = b.ID AND b.IS_DELETED = 0
INNER JOIN MES_MAKE_REC c ON a.ID = c.WP_ID AND c.IS_DELETED = 0
@@ -640,7 +651,18 @@
CASE WHEN a.BASE_AMOUNT IS NULL AND a.SUBSIDY_AMOUNT IS NULL
THEN NULL
ELSE NVL(a.BASE_AMOUNT, 0) + NVL(a.SUBSIDY_AMOUNT, 0)
- END AS totalAmount
+ END AS totalAmount,
+ a.STANDARD_TIME as standardTime,
+ a.PREPARE_TIME as prepareTime,
+ a.HOUR_TYPE as hourType,
+ CASE
+ WHEN a.HOUR_TYPE = '0' THEN a.WORK_QTY * a.STANDARD_TIME + PREPARE_TIME
+ WHEN a.HOUR_TYPE = '1' THEN a.STANDARD_TIME + PREPARE_TIME
+ ELSE NULL END as totalHour,
+ CASE
+ WHEN a.HOUR_TYPE = '0' THEN '按件'
+ WHEN a.HOUR_TYPE = '1' THEN '按订单'
+ ELSE '' END as hourTypeValue
FROM MES_WORK_PLAN a
INNER JOIN BS_PROCESS_SET b ON a.PPS_ID = b.ID AND b.IS_DELETED = 0
INNER JOIN MES_MAKE_REC c ON a.ID = c.WP_ID AND c.IS_DELETED = 0
From 321d451173fe35edbeb1429c54109ae27d76e75d Mon Sep 17 00:00:00 2001
From: sunjianxi <839419401@qq.com>
Date: Tue, 2 Jun 2026 11:53:02 +0800
Subject: [PATCH 08/12] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BF=AE=E6=94=B9-sjx?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../desk/cost/mapper/CostCalculationEmployeeMapper.xml | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostCalculationEmployeeMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostCalculationEmployeeMapper.xml
index aa260ae81..7508b941d 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostCalculationEmployeeMapper.xml
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/mapper/CostCalculationEmployeeMapper.xml
@@ -22,10 +22,17 @@
From 4a8efb3417603b328fc8eda7b11d920977980f6c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=8E=E6=B6=9B?=
Date: Tue, 2 Jun 2026 13:34:53 +0800
Subject: [PATCH 09/12] =?UTF-8?q?=E8=87=AA=E5=8A=A8=E5=88=86=E6=B4=BE?=
=?UTF-8?q?=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../impl/YieldOrderCraftServiceImpl.java | 27 +++++++++++++------
1 file changed, 19 insertions(+), 8 deletions(-)
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderCraftServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderCraftServiceImpl.java
index 783005ac5..11d1cbd57 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderCraftServiceImpl.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderCraftServiceImpl.java
@@ -413,7 +413,7 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpllambdaQuery().apply("INSTR(',' || CRAFT_ABILITY_ID || ',', ',' || {0} || ',') > 0", orderCraft.getCaId()));
+ if (workCenter == null) {
+ throw new ServiceException("工艺" + orderCraft.getCaId() + "未查询到对应作业中心");
+ }
+ orderCraft.setWorkCenterId(workCenter.getId());
+ orderCraft.setIsOutsource(Boolean.FALSE);
+ } else {
+ orderCraft.setOcId(oemCustomer.getId());
+ orderCraft.setIsOutsource(Boolean.TRUE);
+ }
}
// 更新主工序工艺能力日产能信息
From 99b8f8adef73d164def565984fb8370026b6e56a Mon Sep 17 00:00:00 2001
From: sunjianxi <839419401@qq.com>
Date: Tue, 2 Jun 2026 14:01:46 +0800
Subject: [PATCH 10/12] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BF=AE=E6=94=B9-sjx?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../controller/CostCalculationEmployeeController.java | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java
index 50641c473..17178d475 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/cost/controller/CostCalculationEmployeeController.java
@@ -38,6 +38,7 @@ import lombok.AllArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.base.BaseEntity;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.secure.BladeUser;
@@ -62,6 +63,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
/**
* 成本计算物料配置表 控制器
@@ -196,9 +198,10 @@ public class CostCalculationEmployeeController extends BladeController {
List list = new ArrayList<>();
for(CostCalculationEmployeeExcel employExcel : importList){
//根据作业中心查询,有则删除
- CostCalculationEmployeeEntity old = costCalculationEmployeeService.getOne(Wrappers.lambdaQuery().eq(CostCalculationEmployeeEntity::getWorkCenterName,employExcel.getWorkCenterName()));
- if(old != null){
- costCalculationEmployeeService.deleteLogic(Func.toLongList(old.getId().toString()));
+ List oldList = costCalculationEmployeeService.list(Wrappers.lambdaQuery().eq(CostCalculationEmployeeEntity::getWorkCenterName,employExcel.getWorkCenterName()));
+ if(CollectionUtils.isNotEmpty(oldList)){
+ List idList = oldList.stream().map(BaseEntity::getId).collect(Collectors.toList());
+ costCalculationEmployeeService.deleteLogic(idList);
}
BsWorkCenterEntity workCenter = workCenterService.getOne(Wrappers.lambdaQuery().eq(BsWorkCenterEntity::getWcName,employExcel.getWorkCenterName()));
if(workCenter == null){
From 66041104388e17ad7da4294f027d2be108920957 Mon Sep 17 00:00:00 2001
From: maxiangong <298222784@qq.com>
Date: Tue, 2 Jun 2026 14:35:44 +0800
Subject: [PATCH 11/12] =?UTF-8?q?=E6=A0=87=E5=87=86=E5=B7=A5=E5=BA=8F?=
=?UTF-8?q?=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../OemStandardProcessController.java | 31 +++++++++++++++----
1 file changed, 25 insertions(+), 6 deletions(-)
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/controller/OemStandardProcessController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/controller/OemStandardProcessController.java
index 4fc5428e9..ad3e64077 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/controller/OemStandardProcessController.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/controller/OemStandardProcessController.java
@@ -1,5 +1,6 @@
package org.springblade.desk.oem.controller;
+import com.alibaba.nacos.common.utils.CollectionUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.v3.oas.annotations.Operation;
@@ -23,7 +24,6 @@ import org.springblade.desk.oem.service.IOemStandardProcessService;
import org.springframework.beans.BeanUtils;
import org.springframework.core.io.Resource;
import org.springframework.http.ResponseEntity;
-import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -73,7 +73,7 @@ public class OemStandardProcessController {
wrapper.ne(OemStandardProcessEntity::getId, oemStandardProcessEntity.getId());
}
List list = oemStandardProcessService.list(wrapper);
- if (!CollectionUtils.isEmpty(list)) {
+ if (CollectionUtils.isNotEmpty(list)) {
return R.fail("数据已存在");
}
}
@@ -91,6 +91,7 @@ public class OemStandardProcessController {
/**
* 外协标准工序代码 下载模板
+ *
* @return
*/
@GetMapping("/download-excel-template")
@@ -101,6 +102,7 @@ public class OemStandardProcessController {
/**
* 外协标准工序代码 导入Excel
+ *
* @param file
* @return
*/
@@ -120,10 +122,10 @@ public class OemStandardProcessController {
if (StringUtils.isEmpty(row.getProcessName())) {
return R.fail(rowNum + "行工序未填写");
}
- if(StringUtils.isEmpty(row.getStandardProcessCode())){
+ if (StringUtils.isEmpty(row.getStandardProcessCode())) {
return R.fail(rowNum + "行标准工序代码未填写");
}
- String uniqueStr = StringUtils.joinWith("|", row.getProcessName(), row.getPlate(), row.getPlateThickness(), row.getPartName());
+ String uniqueStr = StringUtils.joinWith("|", String.valueOf(row.getProcessName()), String.valueOf(row.getPlate()), String.valueOf(row.getPlateThickness()), String.valueOf(row.getPartName()));
if (!uniqueSet.add(uniqueStr)) {
return R.fail(rowNum + "行在Excel中重复");
}
@@ -131,8 +133,25 @@ public class OemStandardProcessController {
if (processSet == null) {
return R.fail(rowNum + "行错误,系统无此工序");
}
- OemStandardProcessEntity exist = oemStandardProcessService.getOne(new LambdaQueryWrapper().eq(OemStandardProcessEntity::getProcessId, processSet.getId()).eq(OemStandardProcessEntity::getPlate, row.getPlate()).eq(OemStandardProcessEntity::getPlateThickness, row.getPlateThickness()).eq(OemStandardProcessEntity::getPartName, row.getPartName()));
- if (exist != null) {
+ LambdaQueryWrapper qw = new LambdaQueryWrapper<>();
+ qw.eq(OemStandardProcessEntity::getProcessId, processSet.getId());
+ if (StringUtils.isEmpty(row.getPlate())) {
+ qw.isNull(OemStandardProcessEntity::getPlate);
+ } else {
+ qw.eq(OemStandardProcessEntity::getPlate, row.getPlate());
+ }
+ if (StringUtils.isEmpty(row.getPlateThickness())) {
+ qw.isNull(OemStandardProcessEntity::getPlateThickness);
+ } else {
+ qw.eq(OemStandardProcessEntity::getPlateThickness, row.getPlateThickness());
+ }
+ if (StringUtils.isEmpty(row.getPartName())) {
+ qw.isNull(OemStandardProcessEntity::getPartName);
+ } else {
+ qw.eq(OemStandardProcessEntity::getPartName, row.getPartName());
+ }
+ List exist = oemStandardProcessService.list(qw);
+ if (CollectionUtils.isNotEmpty(exist)) {
return R.fail(rowNum + "行错误,数据已存在");
}
OemStandardProcessEntity entity = new OemStandardProcessEntity();
From 25fff58fdfe9ba15d683bde3a026f2ae01d05679 Mon Sep 17 00:00:00 2001
From: maxiangong <298222784@qq.com>
Date: Tue, 2 Jun 2026 15:27:31 +0800
Subject: [PATCH 12/12] =?UTF-8?q?=E6=A0=87=E5=87=86=E5=B7=A5=E5=BA=8F?=
=?UTF-8?q?=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../pojo/entity/OemStandardProcessEntity.java | 6 ++--
.../oem/pojo/vo/OemStandardProcessVO.java | 3 --
.../OemStandardProcessController.java | 29 ++++++++++++++-----
.../oem/mapper/OemStandardProcessMapper.xml | 6 ++--
.../service/impl/OemStatementServiceImpl.java | 28 +++++++++---------
5 files changed, 41 insertions(+), 31 deletions(-)
diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/entity/OemStandardProcessEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/entity/OemStandardProcessEntity.java
index 57117a6b3..62829636c 100644
--- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/entity/OemStandardProcessEntity.java
+++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/entity/OemStandardProcessEntity.java
@@ -24,10 +24,10 @@ public class OemStandardProcessEntity extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
- * 工序ID
+ * 工序名称
*/
- @Schema(description = "工序ID")
- private Long processId;
+ @Schema(description = "工序名称")
+ private String processName;
/**
* 镀种
*/
diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/vo/OemStandardProcessVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/vo/OemStandardProcessVO.java
index 1638eb4fe..9620581ab 100644
--- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/vo/OemStandardProcessVO.java
+++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/vo/OemStandardProcessVO.java
@@ -20,9 +20,6 @@ public class OemStandardProcessVO extends OemStandardProcessEntity {
@Serial
private static final long serialVersionUID = 1L;
- @Schema(description = "工序名称")
- private String processName;
-
@Schema(description = "维护人")
private String updateUserName;
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/controller/OemStandardProcessController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/controller/OemStandardProcessController.java
index ad3e64077..42d09e04c 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/controller/OemStandardProcessController.java
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/controller/OemStandardProcessController.java
@@ -68,11 +68,27 @@ public class OemStandardProcessController {
@Operation(summary = "新增或修改", description = "传入bsEfficiencyTempList")
public R submit(@Valid @RequestBody List oemStandardProcessList) {
for (OemStandardProcessEntity oemStandardProcessEntity : oemStandardProcessList) {
- LambdaQueryWrapper wrapper = new LambdaQueryWrapper().eq(OemStandardProcessEntity::getProcessId, oemStandardProcessEntity.getProcessId()).eq(OemStandardProcessEntity::getPlate, oemStandardProcessEntity.getPlate()).eq(OemStandardProcessEntity::getPlateThickness, oemStandardProcessEntity.getPlateThickness()).eq(OemStandardProcessEntity::getPartName, oemStandardProcessEntity.getPartName());
+ LambdaQueryWrapper qw = new LambdaQueryWrapper<>();
+ qw.eq(OemStandardProcessEntity::getProcessName, oemStandardProcessEntity.getProcessName());
+ if (StringUtils.isEmpty(oemStandardProcessEntity.getPlate())) {
+ qw.isNull(OemStandardProcessEntity::getPlate);
+ } else {
+ qw.eq(OemStandardProcessEntity::getPlate, oemStandardProcessEntity.getPlate());
+ }
+ if (StringUtils.isEmpty(oemStandardProcessEntity.getPlateThickness())) {
+ qw.isNull(OemStandardProcessEntity::getPlateThickness);
+ } else {
+ qw.eq(OemStandardProcessEntity::getPlateThickness, oemStandardProcessEntity.getPlateThickness());
+ }
+ if (StringUtils.isEmpty(oemStandardProcessEntity.getPartName())) {
+ qw.isNull(OemStandardProcessEntity::getPartName);
+ } else {
+ qw.eq(OemStandardProcessEntity::getPartName, oemStandardProcessEntity.getPartName());
+ }
if (oemStandardProcessEntity.getId() != null) {
- wrapper.ne(OemStandardProcessEntity::getId, oemStandardProcessEntity.getId());
+ qw.ne(OemStandardProcessEntity::getId, oemStandardProcessEntity.getId());
}
- List list = oemStandardProcessService.list(wrapper);
+ List list = oemStandardProcessService.list(qw);
if (CollectionUtils.isNotEmpty(list)) {
return R.fail("数据已存在");
}
@@ -129,12 +145,12 @@ public class OemStandardProcessController {
if (!uniqueSet.add(uniqueStr)) {
return R.fail(rowNum + "行在Excel中重复");
}
- BsProcessSetEntity processSet = bsProcessSetService.getOne(new LambdaQueryWrapper().eq(BsProcessSetEntity::getName, row.getProcessName()));
- if (processSet == null) {
+ List processSet = bsProcessSetService.list(new LambdaQueryWrapper().eq(BsProcessSetEntity::getName, row.getProcessName()));
+ if (CollectionUtils.isEmpty(processSet)) {
return R.fail(rowNum + "行错误,系统无此工序");
}
LambdaQueryWrapper qw = new LambdaQueryWrapper<>();
- qw.eq(OemStandardProcessEntity::getProcessId, processSet.getId());
+ qw.eq(OemStandardProcessEntity::getProcessName, row.getProcessName());
if (StringUtils.isEmpty(row.getPlate())) {
qw.isNull(OemStandardProcessEntity::getPlate);
} else {
@@ -156,7 +172,6 @@ public class OemStandardProcessController {
}
OemStandardProcessEntity entity = new OemStandardProcessEntity();
BeanUtils.copyProperties(row, entity);
- entity.setProcessId(processSet.getId());
entityList.add(entity);
}
return R.status(oemStandardProcessService.saveBatch(entityList));
diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStandardProcessMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStandardProcessMapper.xml
index 4cdb8d806..1d2cd6595 100644
--- a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStandardProcessMapper.xml
+++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStandardProcessMapper.xml
@@ -5,7 +5,7 @@
-
+
@@ -24,15 +24,13 @@