From b10d9b8fcbe9eddeb881690bbeddafc7f786077f Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期三, 14 五月 2025 16:12:13 +0800
Subject: [PATCH] 来票登记优化

---
 src/main/java/com/ruoyi/basic/service/impl/CustomerServiceImpl.java |   86 +++++++++++++++++++++++++++++++++++++------
 1 files changed, 74 insertions(+), 12 deletions(-)

diff --git a/src/main/java/com/ruoyi/basic/service/impl/CustomerServiceImpl.java b/src/main/java/com/ruoyi/basic/service/impl/CustomerServiceImpl.java
index 02cd697..b0b1e56 100644
--- a/src/main/java/com/ruoyi/basic/service/impl/CustomerServiceImpl.java
+++ b/src/main/java/com/ruoyi/basic/service/impl/CustomerServiceImpl.java
@@ -1,15 +1,24 @@
 package com.ruoyi.basic.service.impl;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
 import com.ruoyi.basic.mapper.CustomerMapper;
 import com.ruoyi.basic.pojo.Customer;
 import com.ruoyi.basic.service.ICustomerService;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.framework.security.LoginUser;
 import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
+import java.util.Arrays;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 
 /**
@@ -20,6 +29,7 @@
  */
 @Service
 @AllArgsConstructor
+@Slf4j
 public class CustomerServiceImpl extends ServiceImpl<CustomerMapper, Customer> implements ICustomerService {
     private CustomerMapper customerMapper;
 
@@ -31,7 +41,7 @@
      */
     @Override
     public Customer selectCustomerById(Long id) {
-        return customerMapper.selectCustomerById(id);
+        return customerMapper.selectById(id);
     }
 
     /**
@@ -42,7 +52,18 @@
      */
     @Override
     public List<Customer> selectCustomerList(Customer customer) {
-        return customerMapper.selectCustomerList(customer);
+        LambdaQueryWrapper<Customer> queryWrapper = new LambdaQueryWrapper<>();
+
+        if (StringUtils.isNotBlank(customer.getCustomerName())) {
+            queryWrapper.like(Customer::getCustomerName, customer.getCustomerName());
+        }
+
+        List<Customer> customerList = customerMapper.selectList(queryWrapper);
+
+        // 浣跨敤 Stream 淇敼姣忎釜 Customer 鐨� addressPhone 瀛楁
+        return customerList.stream().peek(c ->
+                c.setAddressPhone(c.getCompanyAddress() + "( " + c.getCompanyPhone() + " )")
+        ).collect(Collectors.toList());
     }
 
     /**
@@ -53,7 +74,10 @@
      */
     @Override
     public int insertCustomer(Customer customer) {
-        return customerMapper.insertCustomer(customer);
+        LoginUser loginUser = SecurityUtils.getLoginUser();
+        Integer tenantId = loginUser.getTenantId();
+        customer.setTenantId(Long.valueOf(tenantId));
+        return customerMapper.insert(customer);
     }
 
     /**
@@ -64,7 +88,10 @@
      */
     @Override
     public int updateCustomer(Customer customer) {
-        return customerMapper.updateCustomer(customer);
+        LoginUser loginUser = SecurityUtils.getLoginUser();
+        Integer tenantId = loginUser.getTenantId();
+        customer.setTenantId(Long.valueOf(tenantId));
+        return customerMapper.updateById(customer);
     }
 
     /**
@@ -75,17 +102,52 @@
      */
     @Override
     public int deleteCustomerByIds(Long[] ids) {
-        return customerMapper.deleteCustomerByIds(ids);
+        List<Long> idList = Arrays.asList(ids);
+        return customerMapper.deleteBatchIds(idList);
+    }
+
+    @Override
+    public List<Customer> selectCustomerListByIds(Long[] ids) {
+        LambdaQueryWrapper<Customer> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.in(Customer::getId, Arrays.asList(ids));
+        return customerMapper.selectList(queryWrapper);
+    }
+
+    @Override
+    public List<Map<String, Object>> customerList(Customer customer) {
+        LambdaQueryWrapper<Customer> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.select(Customer::getId, Customer::getCustomerName,Customer::getTaxpayerIdentificationNumber);
+
+        // 鑾峰彇鍘熷鏌ヨ缁撴灉
+        List<Map<String, Object>> result = customerMapper.selectMaps(queryWrapper);
+
+        // 灏嗕笅鍒掔嚎鍛藉悕杞崲涓洪┘宄板懡鍚�
+        return result.stream().map(map -> map.entrySet().stream()
+                .collect(Collectors.toMap(
+                        entry -> underlineToCamel(entry.getKey()),
+                        Map.Entry::getValue))
+        ).collect(Collectors.toList());
     }
 
     /**
-     * 鍒犻櫎瀹㈡埛妗f淇℃伅
-     *
-     * @param id 瀹㈡埛妗f涓婚敭
-     * @return 缁撴灉
+     * 涓嬪垝绾垮懡鍚嶈浆椹煎嘲鍛藉悕
      */
-    @Override
-    public int deleteCustomerById(Long id) {
-        return customerMapper.deleteCustomerById(id);
+    private String underlineToCamel(String param) {
+        if (param == null || "".equals(param.trim())) {
+            return "";
+        }
+        int len = param.length();
+        StringBuilder sb = new StringBuilder(len);
+        for (int i = 0; i < len; i++) {
+            char c = param.charAt(i);
+            if (c == '_') {
+                if (++i < len) {
+                    sb.append(Character.toUpperCase(param.charAt(i)));
+                }
+            } else {
+                sb.append(Character.toLowerCase(c));
+            }
+        }
+        return sb.toString();
     }
 }

--
Gitblit v1.9.3