From 644daa26317482e84540699efcdfa2233879e128 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 15 八月 2025 13:35:38 +0800
Subject: [PATCH] 代码优化
---
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java | 40 +++++++++++++++++++++++++++++++++++++++-
1 files changed, 39 insertions(+), 1 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java
index 73248a4..46eb8f1 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java
@@ -3,10 +3,15 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.vincent.rsf.framework.exception.CoolException;
+import com.vincent.rsf.server.api.controller.params.BaseMatParms;
+import com.vincent.rsf.server.manager.entity.Matnr;
+import com.vincent.rsf.server.manager.entity.MatnrGroup;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.entity.PurchaseItem;
+import com.vincent.rsf.server.manager.service.MatnrGroupService;
import com.vincent.rsf.server.manager.service.PurchaseItemService;
import com.vincent.rsf.server.manager.service.PurchaseService;
+import com.vincent.rsf.server.manager.service.impl.MatnrServiceImpl;
import com.vincent.rsf.server.system.constant.SerialRuleCode;
import com.vincent.rsf.server.api.controller.params.OrderParams;
import com.vincent.rsf.server.system.entity.Fields;
@@ -42,6 +47,10 @@
private FieldsService fieldsService;
@Autowired
private FieldsItemService fieldsItemService;
+ @Autowired
+ private MatnrGroupService matnrGroupService;
+ @Autowired
+ private MatnrServiceImpl matnrService;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -54,7 +63,7 @@
BeanUtils.copyProperties(ors, purchase);
String wkVal = SerialRuleUtils.generateRuleCode(SerialRuleCode.PURCHASE_CODE, purchase);
purchase.setCode(wkVal)
- .setType(OrderType.ORDER_PURCHASE_IN.type);
+ .setType(OrderType.ORDER_IN.type);
if (!purchaseService.save(purchase)) {
throw new CoolException("閲囪喘鍗曟嵁淇濆瓨澶辫触");
}
@@ -86,6 +95,35 @@
return true;
}
+ /**
+ * 鐗╂枡淇℃伅鍚屾
+ * @param matnrs
+ */
+ @Override
+ public void syncMatnrs(List<BaseMatParms> matnrs) {
+ List<Matnr> syncMatnrs = new ArrayList<>();
+ if (!matnrs.isEmpty()) {
+ matnrs.forEach(matnr -> {
+ Matnr mat = new Matnr();
+ if (Objects.isNull(matnr.getMatnr())) {
+ throw new RuntimeException("鐗╂枡缂栫爜涓嶈兘涓虹┖锛侊紒");
+ }
+ BeanUtils.copyProperties(matnr, mat);
+ mat.setCode(matnr.getMatnr()).setName(matnr.getMaktx());
+ if (!Objects.isNull(matnr.getGroupName())) {
+ MatnrGroup matnrGroup = matnrGroupService.getOne(new LambdaQueryWrapper<MatnrGroup>().eq(MatnrGroup::getName, matnr.getGroupName()), false);
+ if (Objects.isNull(matnrGroup)) {
+ mat.setGroupCode(matnrGroup.getCode()).setGroupId(matnrGroup.getId());
+ }
+ }
+ syncMatnrs.add(mat);
+ });
+
+ if (!matnrService.saveOrUpdateBatch(syncMatnrs)) {
+ throw new CoolException("鐗╂枡淇℃伅淇濆瓨鎴愬姛锛侊紒");
+ }
+ }
+ }
}
--
Gitblit v1.9.1