廖井涛
2025-05-22 8d6b17bfa56fd767c6f9de666eb0dd44c6b032cd
north-glass-erp/src/main/java/com/example/erp/service/sd/ProductService.java
@@ -64,6 +64,26 @@
    }
    public Map<String,Object> selectProduct(String productName,Map<String,Object>  productObject) {
        Map<String,Object> map = new HashMap<>();
        //把传入主附表的object类型转换成实体类类型
        JSONObject productJson = new JSONObject(productObject);
        Product product = JSONObject.parseObject(JSONObject.toJSONString(productJson.get("title")), Product.class);
        List<ProductDetail> productDetails = JSONArray.parseArray(JSONObject.toJSONString(productJson.get("detail")), ProductDetail.class);
        //完善主附表信息并返回
        Map<String,Object> getProductJson = updateProduct(productDetails,product);
        Product getProduct = JSONObject.parseObject(JSONObject.toJSONString(getProductJson.get("title")), Product.class);
        List<ProductDetail> getProductDetails = JSONArray.parseArray(JSONObject.toJSONString(getProductJson.get("detail")), ProductDetail.class);
        if(getProduct.getId()!=null){
            map.put("data",productMapper.selectProductId(productName,getProduct.getProductAbbreviation(), getProduct.getId()));
        }else{
            map.put("data",productMapper.selectProduct(productName,getProduct.getProductAbbreviation()));
        }
        return map;
    }
    private void updateProductData(List<ProductDetail> getProductDetails, Product getProduct) {
        productMapper.update(getProduct,new UpdateWrapper<Product>().eq("id",getProduct.getId()));
        productDetailMapper.delete(new QueryWrapper<ProductDetail>().eq("prod_id",getProduct.getId()));
@@ -153,4 +173,9 @@
        map.put("detail",productDetailList);
        return map;
    }
    public List<Product> otherSysGetProduct() {
        return productMapper.selectList(new QueryWrapper<Product>().eq("state",1)
                .orderByDesc("id"));
    }
}