liuyc пре 3 година
родитељ
комит
c87d971284
18 измењених фајлова са 274 додато и 181 уклоњено
  1. 1 0
      blade-common/pom.xml
  2. 6 7
      blade-service/blade-manager/src/main/java/org/springblade/manager/controller/WbsTreeController.java
  3. 14 0
      blade-service/blade-manager/src/main/java/org/springblade/manager/injector/EasyBaseMapper.java
  4. 22 0
      blade-service/blade-manager/src/main/java/org/springblade/manager/injector/EasysqlInjector.java
  5. 18 0
      blade-service/blade-manager/src/main/java/org/springblade/manager/injector/MybatisPlusConfig.java
  6. 8 9
      blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeContractMapper.java
  7. 1 2
      blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeContractMapper.xml
  8. 2 2
      blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeMapper.java
  9. 2 2
      blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreePrivateMapper.java
  10. 50 45
      blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreePrivateMapper.xml
  11. 6 4
      blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeContractServiceImpl.java
  12. 49 46
      blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreePrivateServiceImpl.java
  13. 35 30
      blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeServiceImpl.java
  14. 0 6
      blade-service/blade-user/src/main/java/org/springblade/system/user/controller/UserController.java
  15. 2 3
      blade-service/blade-user/src/main/java/org/springblade/system/user/excel/UserExcel.java
  16. 2 2
      blade-service/blade-user/src/main/java/org/springblade/system/user/excel/UserExcel2.java
  17. 41 15
      blade-service/blade-user/src/main/java/org/springblade/system/user/mapper/UserMapper.xml
  18. 15 8
      blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java

+ 1 - 0
blade-common/pom.xml

@@ -42,6 +42,7 @@
             <groupId>com.aliyun.oss</groupId>
             <artifactId>aliyun-sdk-oss</artifactId>
         </dependency>
+
     </dependencies>
 
     <build>

+ 6 - 7
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/WbsTreeController.java

@@ -125,7 +125,7 @@ public class WbsTreeController extends BladeController {
                     .set("deptCategoryName", DictCache.getValue(DictEnum.ORG_CATEGORY, WbsTreeDTO.getDeptCategory()));
             return R.data(kv);
         }
-        return R.fail(200,"操作失败");
+        return R.fail("操作失败");
     }
 
 
@@ -176,20 +176,19 @@ public class WbsTreeController extends BladeController {
         if (StringUtils.isNotEmpty(id)) {
             List<WbsFormElementVO> wbsFormElements = wbsTreeService.selectFormElements(id);
             if (wbsFormElements.size() > 0) {
-                return R.fail(200,"该表单中的存在元素,删除失败");
+                throw new ServiceException("该表单中的存在元素,删除失败");
             }
             List<WbsTreePrivate> wbsTreePrivates = wbsTreePrivateMapper.selectList(Wrappers.<WbsTreePrivate>query().lambda()
                     .eq(WbsTreePrivate::getStatus, 1)
                     .eq(WbsTreePrivate::getId, id));
             if (wbsTreePrivates.size() > 0) {
-                return R.fail("该表单已被项目引用,删除失败");
+                throw new ServiceException("该表单已被项目引用,删除失败");
             }
-            boolean result = wbsTreeService.removeTableById(id);
-            if (result) {
+            if (wbsTreeService.removeTableById(id)) {
                 return R.success("删除成功");
             }
         }
-        return R.fail(200,"删除失败");
+        return R.fail("删除失败");
     }
 
     /**
@@ -259,7 +258,7 @@ public class WbsTreeController extends BladeController {
         if (result) {
             return R.success("新增导入成功");
         } else {
-            return R.fail(200,"请选择正确模板导入");
+            return R.fail(200, "请选择正确模板导入");
         }
     }
 

+ 14 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/injector/EasyBaseMapper.java

@@ -0,0 +1,14 @@
+package org.springblade.manager.injector;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import java.util.List;
+
+public interface EasyBaseMapper<T> extends BaseMapper<T> {
+    /**
+     * 批量插入注射器方式 仅适用于MySqL
+     * @param entityList 实体列表
+     * @return 影响行数
+     */
+    Integer insertBatchSomeColumn(List<T> entityList);
+
+}

+ 22 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/injector/EasysqlInjector.java

@@ -0,0 +1,22 @@
+package org.springblade.manager.injector;
+
+import com.baomidou.mybatisplus.core.injector.AbstractMethod;
+import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
+import com.baomidou.mybatisplus.core.metadata.TableInfo;
+import com.baomidou.mybatisplus.extension.injector.methods.InsertBatchSomeColumn;
+
+import java.util.List;
+
+/**
+ * mybatis-plus 注入器
+ */
+public class EasysqlInjector extends DefaultSqlInjector {
+
+    @Override
+    public List<AbstractMethod> getMethodList(Class<?> mapperClass, TableInfo tableInfo) {
+        List<AbstractMethod> methodList = super.getMethodList(mapperClass,tableInfo);
+        methodList.add(new InsertBatchSomeColumn());
+        return methodList;
+    }
+
+}

+ 18 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/injector/MybatisPlusConfig.java

@@ -0,0 +1,18 @@
+package org.springblade.manager.injector;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+
+@EnableTransactionManagement
+@Configuration
+@MapperScan("org.springblade.manager.mapper*")
+public class MybatisPlusConfig {
+
+    @Bean
+    public EasysqlInjector easysqlInjector() {
+        return new EasysqlInjector();
+    }
+    
+}

+ 8 - 9
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeContractMapper.java

@@ -1,23 +1,22 @@
 package org.springblade.manager.mapper;
 
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Param;
 import org.springblade.business.entity.InformationQuery;
 import org.springblade.manager.entity.*;
+import org.springblade.manager.injector.EasyBaseMapper;
 import org.springblade.manager.vo.*;
 
-import java.util.ArrayList;
 import java.util.List;
 
-public interface WbsTreeContractMapper extends BaseMapper<WbsTreeContract> {
+public interface WbsTreeContractMapper extends EasyBaseMapper<WbsTreeContract> {
 
     List<WbsTreeContract> selectQueryCurrentNodeByAncestors(@Param("ids") List<String> ids, @Param("contractId") String contractId);
 
-    List<WbsTreeContract> selectQueryValueLikeNodeName(@Param("queryValue") String queryValue,@Param("contractId") String contractId);
+    List<WbsTreeContract> selectQueryValueLikeNodeName(@Param("queryValue") String queryValue, @Param("contractId") String contractId);
 
     Boolean regainRemoveTreeByPrimaryKeyIds(@Param("primaryKeyIds") List<String> primaryKeyIds);
 
-    List<WbsTreeContract> queryContractSubmitWbsTreeByContractId(@Param("contractId")String contractId);
+    List<WbsTreeContract> queryContractSubmitWbsTreeByContractId(@Param("contractId") String contractId);
 
     List<WbsTreeContract> queryCurrentContractLogList(@Param("projectId") String projectId);
 
@@ -71,13 +70,13 @@ public interface WbsTreeContractMapper extends BaseMapper<WbsTreeContract> {
 
     List<WbsTreeContract> selectTableListInfo(List<Long> ids, String wbsId, String projectId, String contractId);
 
-    List<WbsTreeContract> selectContractList(String wbsId, String projectId,@Param("ids") List<Long> ids);
+    List<WbsTreeContract> selectContractList(String wbsId, String projectId, @Param("ids") List<Long> ids);
 
-    void updateBatchByIds(@Param("wbsTree") WbsTree wbsTree,@Param("id") Long id);
+    void updateBatchByIds(@Param("wbsTree") WbsTree wbsTree, @Param("id") Long id);
 
-    void updateBatchByIds2(@Param("wbsTreePrivate") WbsTreePrivate wbsTreePrivate,@Param("id")  Long id);
+    void updateBatchByIds2(@Param("wbsTreePrivate") WbsTreePrivate wbsTreePrivate, @Param("id") Long id);
 
-    void updateContractTablesInfo(@Param("contractInfoId") Long contractInfoId,@Param("wbsTreePrivate") WbsTreePrivate wbsTreePrivate);
+    void updateContractTablesInfo(@Param("contractInfoId") Long contractInfoId, @Param("wbsTreePrivate") WbsTreePrivate wbsTreePrivate);
 
     void updateBatchWbsContract(@Param("listContract") List<WbsTreeContract> listContract);
 

+ 1 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeContractMapper.xml

@@ -486,10 +486,9 @@
             <if test="wbsTreePrivate.sort != null and wbsTreePrivate.sort != ''">
                 , sort = #{wbsTreePrivate.sort}
             </if>
-        WHERE id = #{wbsTreePrivate.id}
+        WHERE (id = #{wbsTreePrivate.id} OR old_id = #{wbsTreePrivate.id})
         AND project_id = #{wbsTreePrivate.projectId}
         AND contract_id = #{contractInfoId}
-        AND old_id is null
         AND type = 2
         AND status = 1
         AND is_deleted = 0

+ 2 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeMapper.java

@@ -1,16 +1,16 @@
 package org.springblade.manager.mapper;
 
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
 import org.springblade.manager.dto.WbsTreeDTO2;
 import org.springblade.manager.entity.WbsFormElement;
 import org.springblade.manager.entity.WbsTree;
+import org.springblade.manager.injector.EasyBaseMapper;
 import org.springblade.manager.vo.*;
 
 import java.util.List;
 
-public interface WbsTreeMapper extends BaseMapper<WbsTree> {
+public interface WbsTreeMapper extends EasyBaseMapper<WbsTree> {
 
     List<WbsTreeVO> selectWbsTreePage(IPage page, WbsTreeVO wbsTree);
 

+ 2 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreePrivateMapper.java

@@ -1,17 +1,17 @@
 package org.springblade.manager.mapper;
 
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Param;
 import org.springblade.manager.dto.WbsTreePrivateDTO2;
 import org.springblade.manager.dto.WbsTreePrivateDTO3;
 import org.springblade.manager.entity.WbsTree;
 import org.springblade.manager.entity.WbsTreePrivate;
+import org.springblade.manager.injector.EasyBaseMapper;
 import org.springblade.manager.vo.WbsNodeTableVO;
 import org.springblade.manager.vo.WbsTreePrivateVO;
 
 import java.util.List;
 
-public interface WbsTreePrivateMapper extends BaseMapper<WbsTreePrivate> {
+public interface WbsTreePrivateMapper extends EasyBaseMapper<WbsTreePrivate> {
     List<WbsTreePrivate> selectAll(Integer wbsType);
 
     List<WbsTreePrivateVO> tree(@Param("wbsId") String wbsId, @Param("projectId") String projectId, @Param("wbsType") Integer wbsType);

+ 50 - 45
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreePrivateMapper.xml

@@ -10,11 +10,11 @@
         <result column="w_id" property="wbsId"/>
         <result column="is_deleted" property="isDeleted"/>
         <result column="status" property="status"/>
-        <result column="create_time" property="createTime"/>
+        <result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
         <result column="create_user" property="createUser"/>
         <result column="create_dept" property="createDept"/>
         <result column="update_user" property="updateUser"/>
-        <result column="update_time" property="updateTime"/>
+        <result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/>
         <result column="type" property="type"/>
         <result column="table_type" property="tableType"/>
         <result column="tenant_id" property="tenantId"/>
@@ -92,7 +92,6 @@
                 #{wbsTree.tableOwner}, #{wbsTree.majorDataType}, #{wbsTree.initTableName}, #{wbsTree.isLinkTable})
     </insert>
 
-
     <update id="deleteByCondition">
         UPDATE m_wbs_tree_private
         SET is_deleted = 1
@@ -192,8 +191,8 @@
 
     <update id="updateBatchByPid">
         UPDATE m_wbs_tree_private
-        SET dept_name = #{wbsTreePrivates.deptName},
-            full_name =#{wbsTreePrivates.deptName},
+        SET dept_name   = #{wbsTreePrivates.deptName},
+            full_name   =#{wbsTreePrivates.deptName},
             table_type  = #{wbsTreePrivates.tableType},
             table_owner = #{wbsTreePrivates.tableOwner}
         WHERE p_key_id = #{wbsTreePrivates.pKeyId}
@@ -202,16 +201,16 @@
     <update id="updateBatchByIds">
         UPDATE m_wbs_tree_private
         SET dept_name = #{wbsTree.deptName},
-            full_name =#{wbsTree.deptName},
-            dept_category = #{wbsTree.deptCategory},
-            major_data_type = #{wbsTree.majorDataType},
-            unique_code = #{wbsTree.uniqueCode},
-            partition_code = #{wbsTree.partitionCode},
-            table_type = #{wbsTree.tableType},
-            table_owner = #{wbsTree.tableOwner}
-            <if test="wbsTree.sort != null and wbsTree.sort != ''">
-                , sort = #{wbsTree.sort}
-            </if>
+        full_name =#{wbsTree.deptName},
+        dept_category = #{wbsTree.deptCategory},
+        major_data_type = #{wbsTree.majorDataType},
+        unique_code = #{wbsTree.uniqueCode},
+        partition_code = #{wbsTree.partitionCode},
+        table_type = #{wbsTree.tableType},
+        table_owner = #{wbsTree.tableOwner}
+        <if test="wbsTree.sort != null and wbsTree.sort != ''">
+            , sort = #{wbsTree.sort}
+        </if>
         WHERE id = #{wbsTree.id}
         AND project_id = #{projectId}
         AND status = 1
@@ -221,25 +220,25 @@
     <update id="updateBatchByIds2">
         UPDATE m_wbs_tree_private
         SET dept_name = #{wbsTreePrivate.deptName},
-            full_name = #{wbsTreePrivate.deptName},
-            dept_category = #{wbsTreePrivate.deptCategory},
-            major_data_type = #{wbsTreePrivate.majorDataType},
-            unique_code = #{wbsTreePrivate.uniqueCode},
-            partition_code = #{wbsTreePrivate.partitionCode},
-            table_type = #{wbsTreePrivate.tableType},
-            table_owner = #{wbsTreePrivate.tableOwner}
-            <if test="wbsTreePrivate.sort != null and wbsTreePrivate.sort != ''">
-                , sort = #{wbsTreePrivate.sort}
-            </if>
+        full_name = #{wbsTreePrivate.deptName},
+        dept_category = #{wbsTreePrivate.deptCategory},
+        major_data_type = #{wbsTreePrivate.majorDataType},
+        unique_code = #{wbsTreePrivate.uniqueCode},
+        partition_code = #{wbsTreePrivate.partitionCode},
+        table_type = #{wbsTreePrivate.tableType},
+        table_owner = #{wbsTreePrivate.tableOwner}
+        <if test="wbsTreePrivate.sort != null and wbsTreePrivate.sort != ''">
+            , sort = #{wbsTreePrivate.sort}
+        </if>
         WHERE id = #{wbsTreePrivate.id}
-          AND project_id = #{projectId}
-          AND wbs_id = #{wbsId}
-          AND status = 1
-          AND is_deleted = 0
+        AND project_id = #{projectId}
+        AND wbs_id = #{wbsId}
+        AND status = 1
+        AND is_deleted = 0
     </update>
 
     <update id="updateBatchWbsPrivate" parameterType="java.util.List">
-        <foreach  collection="listPrivate" item="item" index="index" separator=";">
+        <foreach collection="listPrivate" item="item" index="index" separator=";">
             UPDATE m_wbs_tree_private
             <set>
                 dept_name = #{item.deptName},
@@ -313,7 +312,7 @@
         GROUP BY
         project_id
         ORDER BY
-        create_time
+        ( SELECT create_time FROM m_project_info pi WHERE wtp.project_id = pi.id )
     </select>
 
     <select id="tree" resultMap="treeNodeResultMap">
@@ -339,7 +338,8 @@
     </select>
 
     <select id="selectByCondition" resultType="org.springblade.manager.entity.WbsTreePrivate">
-        SELECT * FROM m_wbs_tree_private
+        SELECT *
+        FROM m_wbs_tree_private
         WHERE (id = #{id}
             AND type = 1
             AND project_id = #{projectId}
@@ -365,7 +365,8 @@
     </select>
 
     <select id="selectIsTable" resultType="org.springblade.manager.entity.WbsTree">
-        SELECT * FROM m_wbs_tree_private
+        SELECT *
+        FROM m_wbs_tree_private
         WHERE type = 2
           AND is_deleted = 0
           AND `status` = 1
@@ -373,15 +374,15 @@
           AND project_id = #{projectId}
     </select>
     <select id="selectByNodeTable" resultType="org.springblade.manager.vo.WbsNodeTableVO">
-        SELECT wt.p_key_id AS "pKeyId",
-               wt.id AS id,
-               wt.dept_name AS tableName,
-               wt.table_type AS tableType,
-               wt.`status` AS isCreateTable,
-               wt.table_owner as tableOwner,
+        SELECT wt.p_key_id                                                  AS "pKeyId",
+               wt.id                                                        AS id,
+               wt.dept_name                                                 AS tableName,
+               wt.table_type                                                AS tableType,
+               wt.`status`                                                  AS isCreateTable,
+               wt.table_owner                                               as tableOwner,
                wt.is_link_table,
                wt.init_table_name,
-               wt.excel_id as excelId,
+               wt.excel_id                                                  as excelId,
                wt.sort,
                wt.status,
                (SELECT count(1) FROM m_wbs_form_element WHERE f_id = wt.id) AS "elementTotal"
@@ -391,10 +392,11 @@
           AND wt.parent_id = #{id}
           AND wt.wbs_id = #{wbsId}
           AND wt.project_id = #{projectId}
-        ORDER BY wt.sort,wt.dept_name,wt.create_time
+        ORDER BY wt.sort, wt.dept_name, wt.create_time
     </select>
     <select id="getByCondition" resultType="org.springblade.manager.entity.WbsTreePrivate">
-        SELECT * FROM m_wbs_tree_private
+        SELECT *
+        FROM m_wbs_tree_private
         WHERE project_id = #{projectId}
           AND id = #{parentId}
           AND wbs_id = #{wbsId}
@@ -403,7 +405,8 @@
           AND type = 1
     </select>
     <select id="getByPKeyId" resultType="org.springblade.manager.entity.WbsTreePrivate">
-        SELECT * FROM m_wbs_tree_private
+        SELECT *
+        FROM m_wbs_tree_private
         WHERE p_key_id = #{pKeyId}
     </select>
 
@@ -419,7 +422,8 @@
           AND parent_id = 0
     </select>
     <select id="selectByPKeyId" resultType="org.springblade.manager.entity.WbsTreePrivate">
-        SELECT * FROM m_wbs_tree_private
+        SELECT *
+        FROM m_wbs_tree_private
         WHERE p_key_id = #{referenceWbsTemplateId}
     </select>
 
@@ -458,7 +462,8 @@
     </select>
 
     <select id="selectNodeAndTable2" resultType="org.springblade.manager.entity.WbsTreePrivate">
-        SELECT * FROM m_wbs_tree_private
+        SELECT *
+        FROM m_wbs_tree_private
         WHERE project_id = #{referencePrivateWbsProjectId}
           AND wbs_id = #{wbsId}
           AND STATUS = 1

+ 6 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeContractServiceImpl.java

@@ -135,6 +135,8 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
                         }
                     });
                 });
+
+                //baseMapper.insertBatchSomeColumn(wbsTreeContracts);
                 this.saveBatch(wbsTreeContracts, 10000);
             }
         } else {
@@ -173,8 +175,8 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
 
             //新增
             if (saveIds.size() > 0) {
-                List<WbsTreeContract> wbsTreeContractList = new ArrayList<>();
                 List<WbsTreePrivate> wbsTreePrivatesList = new ArrayList<>();
+                List<WbsTreeContract> wbsTreeContractList = new ArrayList<>();
                 ArrayList<ConstructionLedger> constructionLedgerList = new ArrayList<>();
 
                 //获取wbs私有树下节点、表
@@ -211,13 +213,13 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
                 });
 
                 //新增合同段节点、表
-                this.saveBatch(wbsTreeContractList, 10000);
+                baseMapper.insertBatchSomeColumn(wbsTreeContractList);
+                //this.saveBatch(wbsTreeContractList, 10000);
 
                 //新增施工台账
                 constructionLedgerFeign.initConstructionLedger(constructionLedgerList);
             }
         }
-
         return true;
     }
 
@@ -237,7 +239,7 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
         wbsTreeContract.setAncestors(wbsTree.getAncestors());
         wbsTreeContract.setDeptName(wbsTree.getDeptName());
         wbsTreeContract.setDeptCategory(wbsTree.getDeptCategory());
-        wbsTreeContract.setFullName(wbsTree.getDeptName());
+        wbsTreeContract.setFullName(wbsTree.getFullName());
         wbsTreeContract.setSort(wbsTree.getSort());
         wbsTreeContract.setRemark(wbsTree.getRemark());
         wbsTreeContract.setType(wbsTree.getType());

+ 49 - 46
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreePrivateServiceImpl.java

@@ -210,52 +210,55 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
     @Override
     @Transactional(rollbackFor = Exception.class)
     public boolean updateBatchByPid(List<WbsTreePrivateDTO3> wbsTreePrivates) {
-        try {
-            //修改当前私有项目元素表基础信息
-            wbsTreePrivates.forEach(list -> {
-                baseMapper.updateBatchByPid(list);
-            });
-
-            //修改当前项目下所有合同段中的元素表基础信息
-            String projectId = "";
-            String parentId = "";
-            List<WbsTreePrivate> wbsTreePrivateList = new ArrayList<>();
-            int number = 0;
-            for (WbsTreePrivateDTO3 wbsTreePrivate : wbsTreePrivates) {
-                WbsTreePrivate wbsTreePrivate1 = baseMapper.selectOne(Wrappers.<WbsTreePrivate>query().lambda().eq(WbsTreePrivate::getPKeyId, wbsTreePrivate.getPKeyId()));
-                wbsTreePrivateList.add(wbsTreePrivate1);
-                if (number == 0) {
-                    projectId = wbsTreePrivate1.getProjectId();
-                    parentId = String.valueOf(wbsTreePrivate1.getParentId());
-                    number = 1;
-                }
+        //try {
+        //修改当前私有项目元素表基础信息
+        wbsTreePrivates.forEach(list -> {
+            baseMapper.updateBatchByPid(list);
+        });
+
+        //修改当前项目下所有合同段中的元素表基础信息
+        String projectId = "";
+        String parentId = "";
+        List<WbsTreePrivate> wbsTreePrivateList = new ArrayList<>();
+        int number = 0;
+        for (WbsTreePrivateDTO3 wbsTreePrivate : wbsTreePrivates) {
+            WbsTreePrivate wbsTreePrivate1 = baseMapper.selectOne(Wrappers.<WbsTreePrivate>query().lambda().eq(WbsTreePrivate::getPKeyId, wbsTreePrivate.getPKeyId()));
+            wbsTreePrivateList.add(wbsTreePrivate1);
+            if (number == 0) {
+                projectId = wbsTreePrivate1.getProjectId();
+                parentId = String.valueOf(wbsTreePrivate1.getParentId());
+                number = 1;
             }
-            if (StringUtils.isNotEmpty(projectId) && StringUtils.isNotEmpty(parentId) && wbsTreePrivateList.size() > 0) {
-                //获取所有合同段ids
-                List<ContractInfo> contractInfos = contractInfoMapper.selectList(Wrappers.<ContractInfo>query().lambda().eq(ContractInfo::getPId, projectId));
-                if (contractInfos.size() > 0) {
-                    List<Long> contractInfoIds = contractInfos.stream().map(ContractInfo::getId).collect(Collectors.toList());
-                    for (Long contractInfoId : contractInfoIds) {
-                        for (WbsTreePrivate wbsTreePrivate : wbsTreePrivateList) {
-                            //判断当前合同段是否存在该元素表
-                            WbsTreeContract wbsTreeContract = wbsTreeContractMapper.selectOne(Wrappers.<WbsTreeContract>query().lambda()
-                                    .eq(WbsTreeContract::getContractId, contractInfoId)
-                                    .eq(WbsTreeContract::getProjectId, wbsTreePrivate.getProjectId())
-                                    .eq(WbsTreeContract::getId, wbsTreePrivate.getId())
-                                    .eq(WbsTreeContract::getStatus, 1)
-                                    .isNull(WbsTreeContract::getOldId) //不是客户端的复制或新增的节点
-                            );
-                            if (wbsTreeContract != null) {
-                                wbsTreeContractMapper.updateContractTablesInfo(contractInfoId, wbsTreePrivate);
-                            }
+        }
+        if (StringUtils.isNotEmpty(projectId) && StringUtils.isNotEmpty(parentId) && wbsTreePrivateList.size() > 0) {
+            //获取所有合同段ids
+            List<ContractInfo> contractInfos = contractInfoMapper.selectList(Wrappers.<ContractInfo>query().lambda().eq(ContractInfo::getPId, projectId));
+            if (contractInfos.size() > 0) {
+                List<Long> contractInfoIds = contractInfos.stream().map(ContractInfo::getId).collect(Collectors.toList());
+                for (Long contractInfoId : contractInfoIds) {
+                    for (WbsTreePrivate wbsTreePrivate : wbsTreePrivateList) {
+                        //判断当前合同段是否存在该元素表、以及该元素表父级节点(包括新增、复制节点)
+                        List<WbsTreeContract> wbsTreeContract = wbsTreeContractMapper.selectList(Wrappers.<WbsTreeContract>query().lambda()
+                                .eq(WbsTreeContract::getContractId, contractInfoId)
+                                .eq(WbsTreeContract::getProjectId, wbsTreePrivate.getProjectId())
+                                .eq(WbsTreeContract::getStatus, 1)
+                                .eq(WbsTreeContract::getId, wbsTreePrivate.getId())
+                                .or()
+                                .eq(WbsTreeContract::getParentId, wbsTreePrivate.getId())
+                                .or()
+                                .eq(WbsTreeContract::getOldId, wbsTreePrivate.getId())
+                        );
+                        //修改原始、复制、新增节点下的元素表
+                        if (wbsTreeContract.size() > 0) {
+                            wbsTreeContractMapper.updateContractTablesInfo(contractInfoId, wbsTreePrivate);
                         }
                     }
                 }
             }
-
-        } catch (Exception e) {
-            throw new ServiceException("操作失败");
         }
+        /*} catch (Exception e) {
+            throw new ServiceException("操作失败");
+        }*/
         return true;
     }
 
@@ -314,7 +317,7 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
                     //修改项目wbs信息
                     //baseMapper.updateBatchByIds(wbsTree, projectId);
                     WbsTreePrivate wbsPrivate = new WbsTreePrivate();
-                    BeanUtil.copyProperties(wbsTree,wbsPrivate);
+                    BeanUtil.copyProperties(wbsTree, wbsPrivate);
                     wbsPrivate.setProjectId(projectId);
                     listPrivate.add(wbsPrivate);
 
@@ -322,7 +325,7 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
                         //修改合同段wbs信息
                         //wbsTreeContractMapper.updateBatchByIds(wbsTree, contractInfo.getId());
                         WbsTreeContract wbsContract = new WbsTreeContract();
-                        BeanUtil.copyProperties(wbsTree,wbsContract);
+                        BeanUtil.copyProperties(wbsTree, wbsContract);
                         wbsContract.setContractId(String.valueOf(contractInfo.getId()));
                         wbsContract.setProjectId(projectId);
                         listContract.add(wbsContract);
@@ -333,7 +336,7 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
         try {
             baseMapper.updateBatchWbsPrivate(listPrivate);
             wbsTreeContractMapper.updateBatchWbsContract(listContract);
-        }catch (Exception e){
+        } catch (Exception e) {
             e.printStackTrace();
             //throw new ServiceException("节点基础信息同步修改失败");
         }
@@ -362,7 +365,7 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
                     //修改项目wbs信息
                     //baseMapper.updateBatchByIds2(wbsTreePrivate, projectId, wbsId);
                     WbsTreePrivate wbsPrivate = new WbsTreePrivate();
-                    BeanUtil.copyProperties(wbsTreePrivate,wbsPrivate);
+                    BeanUtil.copyProperties(wbsTreePrivate, wbsPrivate);
                     wbsPrivate.setWbsId(wbsId);
                     wbsPrivate.setProjectId(projectId);
                     listPrivate.add(wbsPrivate);
@@ -371,7 +374,7 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
                         //修改合同段wbs信息
                         //wbsTreeContractMapper.updateBatchByIds2(wbsTreePrivate, contractInfo.getId());
                         WbsTreeContract wbsContract = new WbsTreeContract();
-                        BeanUtil.copyProperties(wbsTreePrivate,wbsContract);
+                        BeanUtil.copyProperties(wbsTreePrivate, wbsContract);
                         wbsContract.setContractId(String.valueOf(contractInfo.getId()));
                         wbsContract.setProjectId(projectId);
                         listContract.add(wbsContract);
@@ -382,7 +385,7 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
         try {
             baseMapper.updateBatchWbsPrivate(listPrivate);
             wbsTreeContractMapper.updateBatchWbsContract(listContract);
-        }catch (Exception e){
+        } catch (Exception e) {
             e.printStackTrace();
             //throw new ServiceException("节点基础信息同步修改失败");
         }

+ 35 - 30
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeServiceImpl.java

@@ -33,15 +33,20 @@ import org.springblade.manager.service.IWbsTreeService;
 import org.springblade.core.mp.base.BaseServiceImpl;
 import org.springblade.manager.unit.RedisUtil;
 import org.springblade.manager.vo.*;
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.jdbc.support.JdbcUtils;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.sql.DataSource;
 import java.io.File;
 import java.io.IOException;
+import java.sql.*;
 import java.util.*;
+import java.util.concurrent.Executor;
 import java.util.stream.Collectors;
 
 @Service
@@ -58,6 +63,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
     private final ContractInfoMapper contractInfoMapper;
     private final FormulaMapper formulaMapper;
     private final BladeRedis bladeRedis;
+    private final JdbcTemplate jdbcTemplate;
 
     @Override
     public IPage<WbsTreeVO> selectWbsTreePage(IPage<WbsTreeVO> page, WbsTreeVO wbsTree) {
@@ -391,8 +397,8 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
     }
 
     @Override
-    public List<WbsNodeTableVO> selectByNodeTableByExcel(String id, String projectid,String liunxId) {
-        return wbsTreeMapper.selectByNodeTableByExcel(id, projectid,liunxId);
+    public List<WbsNodeTableVO> selectByNodeTableByExcel(String id, String projectid, String liunxId) {
+        return wbsTreeMapper.selectByNodeTableByExcel(id, projectid, liunxId);
     }
 
     @Override
@@ -490,12 +496,12 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
                     //内页资料
                     if (wbsTreeZi.getDeptCategory() == 6 && !(("中间交工证书").equals(wbsTreeZi.getDeptName()) || ("分项工程质量检验评定表").equals(wbsTreeZi.getDeptName()) || ("分项工程开工报告").equals(wbsTreeZi.getDeptName()))) {
                         wbsTreeZi.setMajorDataType(4);
-                    }else if (wbsTreeZi.getDeptCategory() == 5 || wbsTreeZi.getDeptCategory() == 4 || wbsTreeZi.getDeptCategory() == 3 || wbsTreeZi.getDeptCategory() == 2) {
-                        if (getContains(wbsTreeZi.getDeptName(),"开工报告")) {
+                    } else if (wbsTreeZi.getDeptCategory() == 5 || wbsTreeZi.getDeptCategory() == 4 || wbsTreeZi.getDeptCategory() == 3 || wbsTreeZi.getDeptCategory() == 2) {
+                        if (getContains(wbsTreeZi.getDeptName(), "开工报告")) {
                             wbsTreeZi.setMajorDataType(1);
-                        } else if (getContains(wbsTreeZi.getDeptName(),"质量评定")) {
+                        } else if (getContains(wbsTreeZi.getDeptName(), "质量评定")) {
                             wbsTreeZi.setMajorDataType(2);
-                        } else if (getContains(wbsTreeZi.getDeptName(),"中间交工")) {
+                        } else if (getContains(wbsTreeZi.getDeptName(), "中间交工")) {
                             wbsTreeZi.setMajorDataType(3);
                         }
                     }
@@ -582,20 +588,20 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
         return wbsTree;
     }
 
-    private boolean getContains(String A,String B){
+    private boolean getContains(String A, String B) {
         boolean result = false;
         char[] arrayA = A.toCharArray();
         char[] arrayB = B.toCharArray();
         int intLen = 0;
-        for(int i = 0;i < arrayB.length;i++){
-            for(int j = 0;j < arrayA.length;j++){
-                if(arrayB[i] == arrayA[j]){
+        for (int i = 0; i < arrayB.length; i++) {
+            for (int j = 0; j < arrayA.length; j++) {
+                if (arrayB[i] == arrayA[j]) {
                     intLen++;
                     break;
                 }
             }
         }
-        if(intLen == arrayB.length)
+        if (intLen == arrayB.length)
             result = true;
         return result;
     }
@@ -899,7 +905,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
                                     .eq(WbsTreePrivate::getId, list.getParentId())
                                     .eq(WbsTreePrivate::getWbsId, pawDTO.getPrimaryKeyId())
                                     .eq(WbsTreePrivate::getProjectId, pawDTO.getProjectId())
-                                    .eq(WbsTreePrivate::getStatus,1)
+                                    .eq(WbsTreePrivate::getStatus, 1)
                             );
 
                             if (wbsTreePrivate1 != null) {
@@ -1017,7 +1023,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
             //2.新增
             if (saveIds.size() > 0) {
                 if (saveIds.size() >= 1000) { //新增1000个以上节点时,防止响应过慢重复提交
-                    //获取Redis的Value
                     String redisValue = bladeRedis.get("submit-wbs-project:" + pawDTO.getProjectId());
                     if (StringUtils.isNotEmpty(redisValue) && redisValue.equals("1")) {
                         throw new ServiceException("请勿重复提交,请60秒后再次尝试!");
@@ -1082,35 +1087,22 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
 
                 //新增
                 if (pawDTO.getReferenceType().equals("public")) {
-                    wbsTreePrivateService.saveBatch(insertData, 10000);
+                    wbsTreePrivateMapper.insertBatchSomeColumn(insertData);
                     projectInfoMapper.updateTemplateIdById(pawDTO.getProjectId(), pawDTO.getWbsId(), "public");
+
                 } else if (pawDTO.getReferenceType().equals("private")) {
-                    wbsTreePrivateService.saveBatch(insertData2, 10000);
+                    wbsTreePrivateMapper.insertBatchSomeColumn(insertData2);
                     projectInfoMapper.updateTemplateIdById(pawDTO.getProjectId(), pawDTO.getPrimaryKeyId(), "private");
                 }
 
-                //设置Redis的Key、value
+                //Redis
                 bladeRedis.set("submit-wbs-project:" + pawDTO.getProjectId(), "1");
-                //设置过期时间
                 bladeRedis.expire("submit-wbs-project:" + pawDTO.getProjectId(), 60);
             }
         }
         return true;
     }
 
-    public List<WbsTree> findAllNodeList(String wbsTreeIds) {
-        if (StringUtils.isNotEmpty(wbsTreeIds)) {
-            String[] ids = wbsTreeIds.split(",");
-            List<Long> idList = new ArrayList<>();
-            for (String id : ids) {
-                idList.add(Long.valueOf(id));
-            }
-            return baseMapper.selectBatchIds(idList);
-        } else {
-            return null;
-        }
-    }
-
     @Async
     public boolean updateWbsInfoPrivateAsync(List<WbsTree> wbsTreeListAll, List<WbsTreePrivate> wbsTreePrivatesAll, String projectId) {
         return wbsTreePrivateService.updateBatchByIds(wbsTreeListAll, wbsTreePrivatesAll, projectId);
@@ -1394,4 +1386,17 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
     public int updateByCondition(Long id, String wbsName, Integer status) {
         return baseMapper.updateByCondition(id, wbsName, status);
     }
+
+    public List<WbsTree> findAllNodeList(String wbsTreeIds) {
+        if (StringUtils.isNotEmpty(wbsTreeIds)) {
+            String[] ids = wbsTreeIds.split(",");
+            List<Long> idList = new ArrayList<>();
+            for (String id : ids) {
+                idList.add(Long.valueOf(id));
+            }
+            return baseMapper.selectBatchIds(idList);
+        } else {
+            return null;
+        }
+    }
 }

+ 0 - 6
blade-service/blade-user/src/main/java/org/springblade/system/user/controller/UserController.java

@@ -287,12 +287,6 @@ public class UserController {
     @ApiOperationSupport(order = 13)
     @ApiOperation(value = "导出全部用户", notes = "传入token")
     public void exportUser(@ApiIgnore @RequestParam Map<String, Object> user, BladeUser bladeUser, HttpServletResponse response) {
-        /*QueryWrapper<User> queryWrapper = Condition.getQueryWrapper(user, User.class);
-        if (!AuthUtil.isAdministrator()) {
-            queryWrapper.lambda().eq(User::getTenantId, bladeUser.getTenantId());
-        }
-        queryWrapper.lambda().eq(User::getIsDeleted, BladeConstant.DB_NOT_DELETED);
-        List<UserExcel> list = userService.exportUser(queryWrapper);*/
         List<UserVO> list = userService.selectUserListByCondition();
         List<UserExcel2> list1 = Objects.requireNonNull(BeanUtil.copy(list, UserExcel2.class));
         ExcelUtil.export(response, "用户数据" + DateUtil.time(), "用户数据表", list1, UserExcel2.class);

+ 2 - 3
blade-service/blade-user/src/main/java/org/springblade/system/user/excel/UserExcel.java

@@ -60,11 +60,11 @@ public class UserExcel implements Serializable {
 
     @ColumnWidth(15)
     @ExcelIgnore
-    @ExcelProperty("部门名称")
+    @ExcelProperty("岗位名称")
     private String postName;
 
     @ColumnWidth(15)
-    @ExcelProperty("部门名称")
+    @ExcelProperty("机构/部门名称(格式:总公司/子公司)")
     private String deptName;
 
     @ExcelIgnore
@@ -91,5 +91,4 @@ public class UserExcel implements Serializable {
     @ExcelProperty("用户平台名称")
     private String userTypeName;
 
-
 }

+ 2 - 2
blade-service/blade-user/src/main/java/org/springblade/system/user/excel/UserExcel2.java

@@ -58,11 +58,11 @@ public class UserExcel2 implements Serializable {
 
     @ColumnWidth(15)
     @ExcelIgnore
-    @ExcelProperty("部门名称")
+    @ExcelProperty("岗位名称")
     private String postName;
 
     @ColumnWidth(15)
-    @ExcelProperty("部门名称")
+    @ExcelProperty("机构/部门名称(格式:总公司/子公司)")
     private String deptName;
 
     @ExcelIgnore

+ 41 - 15
blade-service/blade-user/src/main/java/org/springblade/system/user/mapper/UserMapper.xml

@@ -31,15 +31,27 @@
         <result column="company_name" property="companyName"/>
     </resultMap>
     <update id="updateRoleIdById">
-        UPDATE blade_user SET role_id = CONCAT(role_id,',',#{roleId1}) WHERE id = #{id} AND status = 1 AND is_deleted=0
+        UPDATE blade_user
+        SET role_id = CONCAT(role_id, ',', #{roleId1})
+        WHERE id = #{id}
+          AND status = 1
+          AND is_deleted = 0
     </update>
 
     <update id="updateRoleIdByIdTwo">
-        UPDATE blade_user SET role_id = #{roleId1} WHERE id = #{id} AND status = 1 AND is_deleted=0
+        UPDATE blade_user
+        SET role_id = #{roleId1}
+        WHERE id = #{id}
+          AND status = 1
+          AND is_deleted = 0
     </update>
 
     <update id="updateRoleId">
-        UPDATE blade_user SET role_id = #{roleId1} WHERE id = #{id} AND status = 1 AND is_deleted=0
+        UPDATE blade_user
+        SET role_id = #{roleId1}
+        WHERE id = #{id}
+          AND status = 1
+          AND is_deleted = 0
     </update>
 
     <select id="selectUserPage" resultMap="userResultMap">
@@ -76,25 +88,39 @@
     </select>
 
     <select id="getUser" resultMap="userResultMap">
-        SELECT
-            *
-        FROM
-            blade_user
-        WHERE
-            tenant_id = #{param1} and account = #{param2} and is_deleted = 0
+        SELECT *
+        FROM blade_user
+        WHERE tenant_id = #{param1}
+          and account = #{param2}
+          and is_deleted = 0
     </select>
 
     <select id="exportUser" resultType="org.springblade.system.user.excel.UserExcel">
-        SELECT id, tenant_id, user_type, account, name, real_name, email, phone, birthday, role_id, dept_id, post_id FROM blade_user ${ew.customSqlSegment}
+        SELECT id,
+               tenant_id,
+               user_type,
+               account,
+               name,
+               real_name,
+               email,
+               phone,
+               birthday,
+               role_id,
+               dept_id,
+               post_id
+        FROM blade_user ${ew.customSqlSegment}
     </select>
 
     <select id="selectUserListByCondition" resultType="org.springblade.system.user.vo.UserVO">
-        SELECT account, real_name, id_number, phone,
-        (SELECT dept_name FROM blade_dept d WHERE d.id = b.dept_id) AS "deptName",
-        (SELECT role_name FROM blade_role r WHERE r.id = b.role_id) AS "roleName"
+        SELECT account,
+               real_name,
+               id_number,
+               phone,
+               CONCAT((SELECT dept_name FROM blade_dept a WHERE a.id = d.parent_id),"/",d.dept_name) AS "deptName",
+               (SELECT role_name FROM blade_role r WHERE r.id = b.role_id)                             AS "roleName"
         FROM blade_user b
-        WHERE
-        account not in("admin","administrator")
+                 INNER JOIN blade_dept d ON b.dept_id = d.id
+        WHERE b.account NOT IN ("admin", "administrator")
     </select>
 
 </mapper>

+ 15 - 8
blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java

@@ -45,6 +45,7 @@ import org.springblade.manager.feign.SaveUserInfoByProjectClient;
 import org.springblade.system.cache.DictCache;
 import org.springblade.system.cache.ParamCache;
 import org.springblade.system.cache.SysCache;
+import org.springblade.system.entity.Dept;
 import org.springblade.system.entity.Tenant;
 import org.springblade.system.enums.DictEnum;
 import org.springblade.system.feign.ISysClient;
@@ -425,12 +426,18 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
             User user = Objects.requireNonNull(BeanUtil.copy(userExcel, User.class));
             // 设置用户平台
             user.setUserType(Func.toInt(DictCache.getKey(DictEnum.USER_TYPE, userExcel.getUserTypeName()), 1));
-            // 设置部门ID
-            user.setDeptId(Func.toStrWithEmpty(SysCache.getDeptIds(AuthUtil.getTenantId(), userExcel.getDeptName()), StringPool.EMPTY));
-            // 设置岗位ID
-            //user.setPostId(Func.toStrWithEmpty(SysCache.getPostIds(userExcel.getTenantId(), userExcel.getPostName()), StringPool.EMPTY));
-            // 设置角色ID
-            //user.setRoleId(Func.toStrWithEmpty(SysCache.getRoleIds(AuthUtil.getTenantId(), userExcel.getRoleName()), StringPool.EMPTY));
+
+            //获取上级部门id
+            String superiorDeptId = Func.toStrWithEmpty(SysCache.getDeptIds(AuthUtil.getTenantId(), userExcel.getDeptName().split("/")[0]), StringPool.EMPTY);
+            //根据上级部门id获取所有下级部门信息
+            List<Dept> deptChildIds = SysCache.getDeptChild(Long.valueOf(superiorDeptId));
+            String childName = userExcel.getDeptName().split("/")[1];
+            for (Dept deptChild : deptChildIds) {
+                if (childName.equals(deptChild.getDeptName())) {
+                    // 设置部门ID
+                    user.setDeptId(Func.toStrWithEmpty(deptChild.getId(), StringPool.EMPTY));
+                }
+            }
             // 设置租户ID
             if (!AuthUtil.isAdministrator() || StringUtil.isBlank(user.getTenantId())) {
                 user.setTenantId(AuthUtil.getTenantId());
@@ -438,8 +445,8 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
             // 覆盖数据
             if (isCovered) {
                 // 查询用户是否存在
-                //User oldUser = UserCache.getUser(AuthUtil.getTenantId(), userExcel.getAccount());
-                User oldUser = baseMapper.selectOne(Wrappers.<User>query().lambda().eq(User::getAccount, userExcel.getAccount()).eq(User::getIsDeleted, BladeConstant.DB_NOT_DELETED));
+                User oldUser = UserCache.getUser(AuthUtil.getTenantId(), userExcel.getAccount());
+                //User oldUser = baseMapper.selectOne(Wrappers.<User>query().lambda().eq(User::getAccount, userExcel.getAccount()).eq(User::getIsDeleted, BladeConstant.DB_NOT_DELETED));
                 if (oldUser != null && oldUser.getId() != null) {
                     user.setId(oldUser.getId());
                     this.updateUser(user);