From b292e4a1662d1a2d61a2365f4f0106eb8d3c0afb Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期二, 21 一月 2025 19:26:47 +0800
Subject: [PATCH] 1

---
 ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/service/impl/CompanyServiceImpl.java |   38 ++++++++++++++++++++++++++------------
 1 files changed, 26 insertions(+), 12 deletions(-)

diff --git a/ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/service/impl/CompanyServiceImpl.java b/ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/service/impl/CompanyServiceImpl.java
index d2764db..bc25578 100644
--- a/ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/service/impl/CompanyServiceImpl.java
+++ b/ruoyi-modules/ruoyi-company/src/main/java/com/ruoyi/company/service/impl/CompanyServiceImpl.java
@@ -103,6 +103,7 @@
         //添加用户信息
         User user = BeanUtils.copyBean(dto, User.class);
         user.setPassword(SecurityUtils.encryptPassword(dto.getPassword()));
+        user.setCreateBy(SecurityUtils.getUserId());
         userService.save(user);
 
         Company company = BeanUtils.copyBean(dto, Company.class);
@@ -153,9 +154,14 @@
         userUpd.setUpdateBy(SecurityUtils.getUserId());
         userService.updateById(userUpd);
         //根据公司名称查询数据库
-        Long count = this.lambdaQuery().ne(Company::getId, dto.getId()).eq(Company::getCompanyName, company.getCompanyName()).count();
-        if (count > 0) {
-            throw new ServiceException("该公司账号已存在");
+        if (StringUtils.isNotBlank(company.getCompanyName())){
+            Long count = this.lambdaQuery()
+                    .ne(Company::getId, dto.getId())
+                    .eq(Company::getCompanyName, company.getCompanyName())
+                    .count();
+            if (count > 0) {
+                throw new ServiceException("该公司账号已存在");
+            }
         }
         //身份证二要素校验
         Boolean res = aliyunCloudAuthUtil.verifyIdCard(dto.getLegalPersonName(), dto.getIdCardNumber());
@@ -190,16 +196,24 @@
     @Override
     public void export(MgtCompanyQuery query) throws IOException {
         List<Company> list = this.lambdaQuery()
-                .like(StringUtils.isNotBlank(query.getCompanyInfo()), Company::getCompanyName, query.getCompanyInfo())
-                .like(StringUtils.isNotBlank(query.getCompanyInfo()), Company::getSocialCode, query.getCompanyInfo())
-                .like(StringUtils.isNotBlank(query.getLegalPersonInfo()), Company::getLegalPersonName, query.getLegalPersonInfo())
-                .like(StringUtils.isNotBlank(query.getLegalPersonInfo()), Company::getIdCardNumber, query.getLegalPersonInfo())
-                .like(StringUtils.isNotBlank(query.getContactInfo()), Company::getContactName, query.getContactInfo())
-                .like(StringUtils.isNotBlank(query.getContactInfo()), Company::getContactPhone, query.getContactInfo()).list();
+                .and(StringUtils.isNotBlank(query.getCompanyInfo()),
+                        queryWrapper -> queryWrapper
+                                .like(Company::getCompanyName, query.getCompanyInfo())
+                                .or()
+                                .like(Company::getSocialCode, query.getCompanyInfo()))
+                .and(StringUtils.isNotBlank(query.getLegalPersonInfo()),
+                        queryWrapper -> queryWrapper
+                                .like(Company::getLegalPersonName, query.getLegalPersonInfo())
+                                .or()
+                                .like(Company::getIdCardNumber, query.getLegalPersonInfo()))
+                .and(StringUtils.isNotBlank(query.getContactInfo()),
+                        queryWrapper -> queryWrapper
+                                .like(Company::getContactName, query.getContactInfo())
+                                .or()
+                                .like(Company::getContactPhone, query.getContactInfo()))
+                .orderByDesc(Company::getCreateTime).list();
         response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
-        response.setCharacterEncoding
-
-                ("utf-8");
+        response.setCharacterEncoding("utf-8");
         String fileName = URLEncoder.encode("企业信息导出数据", "UTF-8").replaceAll("\\+", "%20");
         response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
 

--
Gitblit v1.7.1