From 7ee68df04b7a169d51ab95ad9955276c9aff6ee1 Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期一, 22 九月 2025 09:44:34 +0800
Subject: [PATCH] 流程卡查询界面修改表格下方汇总方式
---
north-glass-erp/src/main/java/com/example/erp/service/sd/BomDataService.java | 97 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 97 insertions(+), 0 deletions(-)
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/BomDataService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/BomDataService.java
new file mode 100644
index 0000000..c9a7c02
--- /dev/null
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/BomDataService.java
@@ -0,0 +1,97 @@
+package com.example.erp.service.sd;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.example.erp.entity.pp.FlowCard;
+import com.example.erp.entity.sd.*;
+import com.example.erp.mapper.sd.BomDataMapper;
+import com.example.erp.mapper.sd.BasicOtherMoneyMapper;
+import com.example.erp.mapper.sd.CustomerMapper;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+
+@Service
+@DS("sd")
+public class BomDataService {
+ private final BomDataMapper bomDataMapper;
+
+ private final CustomerMapper customerMapper;
+ private final BasicOtherMoneyMapper basicOtherMoneyMapper;
+
+ public BomDataService(BomDataMapper bomDataMapper, CustomerMapper customerMapper, BasicOtherMoneyMapper basicOtherMoneyMapper) {
+ this.bomDataMapper = bomDataMapper;
+ this.customerMapper = customerMapper;
+ this.basicOtherMoneyMapper = basicOtherMoneyMapper;
+ }
+
+
+ public Boolean saveMaterialBomDataSv(Map<String, Object> object) {
+ Integer id = (Integer) object.get("MaterialId");
+ String name = (String) object.get("MaterialName");
+ Object consume = object.get("consume");
+ Object price = object.get("price");
+ Integer type = (Integer) object.get("type");
+
+ if (id!=null){
+ //鏌ヨ鐗╂枡缂栧彿鏄惁宸插瓨鍦�
+ Integer countId = bomDataMapper.getMaterialId(id);
+ if (countId == 0){
+ bomDataMapper.saveMaterialBomDataMp(id,name,consume,price,type);
+ }else {
+ bomDataMapper.updateMaterialBomDataMp(id,name,consume,price,type);
+ }
+
+ return true;
+ }else {
+ return false;
+ }
+ }
+
+ public Object saveProductBOMSv(Map<String, Object> object) {
+ // 閬嶅巻姣忎釜浜у搧
+ for (Map.Entry<String, Object> entry : object.entrySet()) {
+ String productName = entry.getKey();
+ Object value = entry.getValue();
+
+ if (value instanceof List) {
+ List<Map<String, Object>> rows = (List<Map<String, Object>>) value;
+
+ for (Map<String, Object> row : rows) {
+ // 鍙栨瘡鏉℃暟鎹�
+ Object produceId = row.get("produceId");
+ Object tabId = row.get("tabId");
+ Object layer = row.get("layer");
+
+ bomDataMapper.saveProductBOMMp(produceId,tabId,layer);
+ }
+ }
+ }
+
+ return true;
+ }
+
+ public Map<String, Object> getOrderBomDataSv(String orderId) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("data", bomDataMapper.getOrderBomDataMp(orderId));
+ return map;
+ }
+
+ public Map<String, Object> getBomDataProductSv(Map<String, Object> object) {
+ Map<String, Object> map = new HashMap<>();
+ List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//鏈�缁堢粨鏋�
+ List<OrderDetail> orderDetailsList = JSONArray.parseArray(JSONObject.toJSONString(object.get("productName")), OrderDetail.class);
+ if (!orderDetailsList.isEmpty()) {
+ for (OrderDetail od : orderDetailsList) {
+ Map<String, Object> itemmap = new HashMap<>();
+ itemmap.put("data", bomDataMapper.getBOMDetails(od.getProductId()));
+ list.add(itemmap);
+
+ }
+ }
+ map.put("data", list);
+ return map;
+ }
+}
--
Gitblit v1.8.0