From 72468556f3709380ab3a70e07d8a916fbd47c988 Mon Sep 17 00:00:00 2001
From: ZQN <364596817@qq.com>
Date: 星期三, 19 六月 2024 08:52:18 +0800
Subject: [PATCH] 添加字段,审批权限修改

---
 project-system/src/main/resources/mapper/system/SysUserDeptMapper.xml                             |   14 +
 project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceOrderVo.java                   |   20 +
 project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java    |    2 
 project-framework/src/main/java/com/project/framework/web/service/SysLoginService.java            |   25 -
 project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceOrderBo.java            |   18 +
 project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateVo.java                |    4 
 project-admin/src/main/java/com/project/admin/controller/tool/CheckController.java                |    1 
 project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java              |   18 +
 project-system/src/main/java/com/project/system/service/ISysDeptService.java                      |   13 +
 project-system/src/main/java/com/project/system/service/impl/SysUserServiceImpl.java              |   33 +-
 project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateQuestion.java             |    6 
 project-system/src/main/java/com/project/system/domain/vo/SysCompanyResultVo.java                 |   19 +
 project-admin/src/main/resources/application.yml                                                  |    1 
 project-common/src/main/java/com/project/common/core/domain/model/ImportError.java                |   31 ++
 project-system/src/main/java/com/project/system/service/impl/SysCompanyServiceImpl.java           |  101 ++++++-
 project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java       |   27 +-
 project-system/src/main/java/com/project/system/mapper/SysDeptMapper.java                         |   13 
 project-system/src/main/resources/mapper/system/SysDeptMapper.xml                                 |    3 
 project-enforce/src/main/java/com/project/enforce/domain/bo/queryBo/EnforceOrderQueryBo.java      |   20 +
 project-system/src/main/java/com/project/system/domain/SysUserDept.java                           |   31 ++
 project-admin/src/main/java/com/project/admin/controller/system/SysCompanyController.java         |   31 ++
 project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateLogVo.java             |    7 
 project-system/src/main/java/com/project/system/service/ISysUserDeptService.java                  |   14 +
 project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java              |    8 
 project-enforce/src/main/java/com/project/enforce/domain/EnforceOrder.java                        |   25 +
 project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceEvaluateLogBo.java      |   21 -
 project-admin/src/main/java/com/project/admin/controller/system/SysLoginController.java           |   22 +
 project-system/src/main/java/com/project/system/service/impl/SysUserDeptServiceImpl.java          |   21 +
 project-admin/src/main/java/com/project/admin/controller/enforce/EnforceEvaluateController.java   |    2 
 project-system/src/main/java/com/project/system/mapper/SysUserDeptMapper.java                     |   13 +
 project-system/src/main/java/com/project/system/service/ISysCompanyService.java                   |   29 +
 project-system/src/main/java/com/project/system/domain/vo/SysCompanyVo.java                       |   24 +
 project-system/src/main/java/com/project/system/domain/vo/SysDocVo.java                           |   12 
 /dev/null                                                                                         |    0 
 project-admin/src/main/java/com/project/admin/controller/enforce/EnforceOrderController.java      |    2 
 project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateLogServiceImpl.java |   48 ++-
 project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml                          |    5 
 project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateAnswer.java               |   17 
 38 files changed, 534 insertions(+), 167 deletions(-)

diff --git a/project-admin/src/main/java/com/project/admin/controller/enforce/EnforceEvaluateController.java b/project-admin/src/main/java/com/project/admin/controller/enforce/EnforceEvaluateController.java
index 25f06ec..b13bbd2 100644
--- a/project-admin/src/main/java/com/project/admin/controller/enforce/EnforceEvaluateController.java
+++ b/project-admin/src/main/java/com/project/admin/controller/enforce/EnforceEvaluateController.java
@@ -24,7 +24,7 @@
 @Api(value = "鎵ф硶璇勪环鎺у埗鍣�", tags = {"鎵ф硶璇勪环绠$悊"})
 @RequiredArgsConstructor(onConstructor_ = @Autowired)
 @RestController
-@RequestMapping("/enforce/evaluate/")
+@RequestMapping("/enforce/evaluate")
 public class EnforceEvaluateController extends BaseController
 {
 
diff --git a/project-admin/src/main/java/com/project/admin/controller/enforce/EnforceOrderController.java b/project-admin/src/main/java/com/project/admin/controller/enforce/EnforceOrderController.java
index 21aa86d..36cbb28 100644
--- a/project-admin/src/main/java/com/project/admin/controller/enforce/EnforceOrderController.java
+++ b/project-admin/src/main/java/com/project/admin/controller/enforce/EnforceOrderController.java
@@ -44,7 +44,7 @@
     }
 
 
-    @ApiOperation("鏌ヨ鎵ф硶鍗曞緟瀹℃牳鍒楄〃")
+    @ApiOperation("鏌ヨ鎵ф硶鍗曞緟瀹℃壒鍒楄〃")
     @GetMapping("/checkList")
     public TableDataInfo checkList(EnforceOrderQueryBo bo)
     {
diff --git a/project-admin/src/main/java/com/project/admin/controller/system/SysCompanyController.java b/project-admin/src/main/java/com/project/admin/controller/system/SysCompanyController.java
index a4f3a5f..9d84510 100644
--- a/project-admin/src/main/java/com/project/admin/controller/system/SysCompanyController.java
+++ b/project-admin/src/main/java/com/project/admin/controller/system/SysCompanyController.java
@@ -9,6 +9,7 @@
 import com.project.common.utils.poi.ExcelUtil;
 import com.project.system.domain.bo.editBo.SysCompanyBo;
 import com.project.system.domain.bo.queryBo.SysCompanyQueryBo;
+import com.project.system.domain.vo.SysCompanyResultVo;
 import com.project.system.domain.vo.SysCompanyVo;
 import com.project.system.service.ISysCompanyService;
 import io.swagger.annotations.Api;
@@ -109,13 +110,33 @@
         return util.exportExcel(null, "浼佷笟淇℃伅妯℃澘");
     }
 
-    @ApiOperation(value = "瀵煎叆娲诲姩鎸囨爣")
-    @ApiImplicitParam(value = "涓婁紶鏂囦欢", name = "file", dataType = "file", dataTypeClass = MultipartFile.class)
-    @PostMapping("/import")
-    public AjaxResult importList(@RequestParam MultipartFile file) throws Exception
+    @ApiOperation(value = "澶勭悊瀵煎叆淇℃伅")
+    @Log(title = "瀵煎叆浼佷笟淇℃伅澶勭悊" , businessType = BusinessType.OTHER)
+    @ApiImplicitParam(value = "浼佷笟淇℃伅", name = "file", dataType = "file", dataTypeClass = MultipartFile.class)
+    @PostMapping("/doImport")
+    public AjaxResult doImport(@RequestPart(value = "file") MultipartFile file) throws Exception
     {
+
         ExcelUtil<SysCompanyVo> util = new ExcelUtil<>(SysCompanyVo.class);
         List<SysCompanyVo> list = util.importExcel(file.getInputStream());
-        return toAjax(iSysCompanyService.importList(list) ? 1 : 0);
+        return AjaxResult.success(iSysCompanyService.doImport(list));
     }
+
+    @ApiOperation(value = "鏍¢獙瀵煎叆淇℃伅")
+    @Log(title = "瀵煎叆浼佷笟淇℃伅鏍¢獙" , businessType = BusinessType.OTHER)
+    @PostMapping("/checkImport")
+    public AjaxResult checkImport(@RequestBody SysCompanyResultVo resultVo)
+    {
+        return AjaxResult.success(iSysCompanyService.checkImport(resultVo));
+    }
+
+    @ApiOperation(value = "淇濆瓨瀵煎叆淇℃伅")
+    @Log(title = "瀵煎叆浼佷笟淇℃伅淇濆瓨" , businessType = BusinessType.IMPORT)
+    @PostMapping("/saveImport")
+    public AjaxResult saveImport(@RequestBody SysCompanyResultVo resultVo)
+    {
+        return toAjax(iSysCompanyService.saveImport(resultVo) ? 1 : 0);
+    }
+
+
 }
diff --git a/project-admin/src/main/java/com/project/admin/controller/system/SysLoginController.java b/project-admin/src/main/java/com/project/admin/controller/system/SysLoginController.java
index a8a17ef..11c8fe3 100644
--- a/project-admin/src/main/java/com/project/admin/controller/system/SysLoginController.java
+++ b/project-admin/src/main/java/com/project/admin/controller/system/SysLoginController.java
@@ -1,13 +1,6 @@
 package com.project.admin.controller.system;
 
-import java.util.List;
-import java.util.Set;
-
 import com.project.common.annotation.RepeatSubmit;
-import com.project.system.domain.bo.editBo.UserPhoneLoginBo;
-import io.swagger.annotations.ApiOperation;
-import lombok.RequiredArgsConstructor;
-import org.springframework.web.bind.annotation.*;
 import com.project.common.constant.Constants;
 import com.project.common.core.domain.AjaxResult;
 import com.project.common.core.domain.entity.SysMenu;
@@ -16,7 +9,14 @@
 import com.project.common.utils.SecurityUtils;
 import com.project.framework.web.service.SysLoginService;
 import com.project.framework.web.service.SysPermissionService;
+import com.project.system.domain.bo.editBo.UserPhoneLoginBo;
 import com.project.system.service.ISysMenuService;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Set;
 
 /**
  * 鐧诲綍楠岃瘉
@@ -56,6 +56,14 @@
         return AjaxResult.success(loginService.getVerifyCode(phone));
     }
 
+    @ApiOperation("鏍¢獙楠岃瘉鐮侀獙璇佺爜")
+    @PostMapping("/verify")
+    @RepeatSubmit
+    public AjaxResult verify(@RequestBody UserPhoneLoginBo bo)
+    {
+        return AjaxResult.success(loginService.verifyPhone(bo.getPhone(), bo.getCode()));
+    }
+
     @ApiOperation("鎵嬫満鍙烽獙璇佺爜鐧诲綍")
     @PostMapping("/login/phone")
     @RepeatSubmit
diff --git a/project-admin/src/main/java/com/project/admin/controller/tool/CheckController.java b/project-admin/src/main/java/com/project/admin/controller/tool/CheckController.java
index b96d08e..b2dc4f8 100644
--- a/project-admin/src/main/java/com/project/admin/controller/tool/CheckController.java
+++ b/project-admin/src/main/java/com/project/admin/controller/tool/CheckController.java
@@ -27,6 +27,7 @@
 
     @ApiOperation("瀹℃牳")
     @Log(title = "瀹℃牳", businessType = BusinessType.UPDATE)
+//    @PreAuthorize("@ss.hasPermi('sys:company:check')")
     @PostMapping(value = "/checkOrder")
     @RepeatSubmit
     public AjaxResult checkOrder(@RequestBody CheckBo bo)
diff --git a/project-admin/src/main/resources/application.yml b/project-admin/src/main/resources/application.yml
index 5babdb5..8abf401 100644
--- a/project-admin/src/main/resources/application.yml
+++ b/project-admin/src/main/resources/application.yml
@@ -143,5 +143,4 @@
             - /system/dict/**
             - /getVerifyCode
             - /login/phone
-            - /system/company/**   #涓存椂鐧藉悕鍗�
             - /tool/**   #涓存椂鐧藉悕鍗�
diff --git "a/project-common/shenqiuyingshang - \345\277\253\346\215\267\346\226\271\345\274\217.lnk" "b/project-common/shenqiuyingshang - \345\277\253\346\215\267\346\226\271\345\274\217.lnk"
deleted file mode 100644
index 6cac039..0000000
--- "a/project-common/shenqiuyingshang - \345\277\253\346\215\267\346\226\271\345\274\217.lnk"
+++ /dev/null
Binary files differ
diff --git a/project-common/src/main/java/com/project/common/core/domain/model/ImportError.java b/project-common/src/main/java/com/project/common/core/domain/model/ImportError.java
new file mode 100644
index 0000000..d46b21d
--- /dev/null
+++ b/project-common/src/main/java/com/project/common/core/domain/model/ImportError.java
@@ -0,0 +1,31 @@
+package com.project.common.core.domain.model;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * 鍔熻兘鎻忚堪锛�
+ *
+ * @author ZQN
+ * @version 1.0
+ */
+
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class ImportError
+{
+
+    /**
+     * 涓嬫爣
+     */
+    private Integer index;
+
+
+    /**
+     * 閿欒淇℃伅
+     */
+    private String msg;
+}
diff --git a/project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateAnswer.java b/project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateAnswer.java
index 25e9205..0028292 100644
--- a/project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateAnswer.java
+++ b/project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateAnswer.java
@@ -1,16 +1,14 @@
 package com.project.enforce.domain;
 
-import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
 import com.project.common.core.domain.BaseDomain;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-import lombok.experimental.Accessors;
-import java.io.Serializable;
-import java.math.BigDecimal;
-import java.util.Date;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
 /**
  * 鎵ф硶璇勪环绛旀瀵硅薄 enforce_evaluate_answer
  *
@@ -56,6 +54,9 @@
 
 
 
+    @ApiModelProperty("鏄惁閫夋嫨锛�0鍚︼紝1鏄�")
+    @TableField(exist = false)
+    private Integer isChoose;
 
 
 
diff --git a/project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateQuestion.java b/project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateQuestion.java
index 35bc3b1..d959037 100644
--- a/project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateQuestion.java
+++ b/project-enforce/src/main/java/com/project/enforce/domain/EnforceEvaluateQuestion.java
@@ -1,5 +1,6 @@
 package com.project.enforce.domain;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.project.common.core.domain.BaseDomain;
@@ -49,8 +50,13 @@
     private String answerIds;
 
     @ApiModelProperty("棰樼洰绛旀鍒楄〃")
+    @TableField(exist = false)
     private List<EnforceEvaluateAnswer> answerList;
 
+    @ApiModelProperty("鏈寰楀垎")
+    @TableField(exist = false)
+    private BigDecimal getScore;
+
 
 
 
diff --git a/project-enforce/src/main/java/com/project/enforce/domain/EnforceOrder.java b/project-enforce/src/main/java/com/project/enforce/domain/EnforceOrder.java
index 97b0ccb..961261b 100644
--- a/project-enforce/src/main/java/com/project/enforce/domain/EnforceOrder.java
+++ b/project-enforce/src/main/java/com/project/enforce/domain/EnforceOrder.java
@@ -1,16 +1,16 @@
 package com.project.enforce.domain;
 
-import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
 import com.project.common.core.domain.BaseDomain;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-import lombok.experimental.Accessors;
-import java.io.Serializable;
-import java.math.BigDecimal;
-import java.util.Date;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.math.BigDecimal;
+import java.util.Date;
 /**
  * 鎵ф硶鍗曞璞� enforce_order
  *
@@ -69,6 +69,9 @@
 
     @ApiModelProperty("鎵ф硶鍘熷洜")
     private String enforceReason;
+
+    @ApiModelProperty("鎵ф硶绫诲瀷")
+    private String enforceType;
 
 
     @ApiModelProperty("鐢宠浜篿d")
@@ -186,6 +189,12 @@
     @ApiModelProperty("璇勪环鎬诲緱鍒�")
     private BigDecimal totalScore;
 
+    /** 鏄惁鎶曡瘔锛�0鍚︼紝1鏄� */
+    @ApiModelProperty("鏄惁鎶曡瘔锛�0鍚︼紝1鏄�")
+    private Integer isComplaint;
 
+    /** 鎶曡瘔鍐呭 */
+    @ApiModelProperty("鎶曡瘔鍐呭")
+    private String complaintReason;
 
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceEvaluateLogBo.java b/project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceEvaluateLogBo.java
index 8121e8b..cc4cede 100644
--- a/project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceEvaluateLogBo.java
+++ b/project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceEvaluateLogBo.java
@@ -1,13 +1,9 @@
 package com.project.enforce.domain.bo.editBo;
 
-import com.project.common.core.domain.BaseDomain;
+import com.project.enforce.domain.vo.EnforceEvaluateVo;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.util.Date;
 
 import java.math.BigDecimal;
 
@@ -62,6 +58,8 @@
     @ApiModelProperty("鎵ц浜哄崟浣�")
     private Long executeDeptName;
 
+
+
     /** 璇勪环璇存槑 */
     @ApiModelProperty("璇勪环璇存槑")
     private String questionRemark;
@@ -74,16 +72,11 @@
     @ApiModelProperty("璇勪环鎬诲緱鍒�")
     private BigDecimal totalScore;
 
-    /** 鏇存柊浜� */
-    @ApiModelProperty("鏇存柊浜�")
-    private String updateBy;
-
-    /** 鏇存柊鏃堕棿 */
-    @ApiModelProperty("鏇存柊鏃堕棿")
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private Date updateTime;
-
     /** 澶囨敞 */
     @ApiModelProperty("澶囨敞")
     private String remark;
+
+
+    @ApiModelProperty("璇勪环闂埜")
+    private EnforceEvaluateVo evaluateVo;
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceOrderBo.java b/project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceOrderBo.java
index b321b9d..1ffb524 100644
--- a/project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceOrderBo.java
+++ b/project-enforce/src/main/java/com/project/enforce/domain/bo/editBo/EnforceOrderBo.java
@@ -1,17 +1,12 @@
 package com.project.enforce.domain.bo.editBo;
 
-import com.project.common.core.domain.BaseDomain;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.util.Date;
 
 import java.math.BigDecimal;
 import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
 
 /**
  * 鎵ф硶鍗曠紪杈戝璞� enforce_order
@@ -67,6 +62,9 @@
     /** 鎵ф硶鍘熷洜 */
     @ApiModelProperty("鎵ф硶鍘熷洜")
     private String enforceReason;
+
+    @ApiModelProperty("鎵ф硶绫诲瀷")
+    private String enforceType;
 
     /** 鐢宠浜篿d */
     @ApiModelProperty("鐢宠浜篿d")
@@ -185,4 +183,12 @@
     /** 璇勪环鎬诲緱鍒� */
     @ApiModelProperty("璇勪环鎬诲緱鍒�")
     private BigDecimal totalScore;
+
+    /** 鏄惁鎶曡瘔锛�0鍚︼紝1鏄� */
+    @ApiModelProperty("鏄惁鎶曡瘔锛�0鍚︼紝1鏄�")
+    private Integer isComplaint;
+
+    /** 鎶曡瘔鍐呭 */
+    @ApiModelProperty("鎶曡瘔鍐呭")
+    private String complaintReason;
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/domain/bo/queryBo/EnforceOrderQueryBo.java b/project-enforce/src/main/java/com/project/enforce/domain/bo/queryBo/EnforceOrderQueryBo.java
index 61604c4..5948912 100644
--- a/project-enforce/src/main/java/com/project/enforce/domain/bo/queryBo/EnforceOrderQueryBo.java
+++ b/project-enforce/src/main/java/com/project/enforce/domain/bo/queryBo/EnforceOrderQueryBo.java
@@ -9,6 +9,7 @@
 
 import java.math.BigDecimal;
 import java.util.Date;
+import java.util.List;
 
 /**
  * 鎵ф硶鍗曞垎椤垫煡璇㈠璞� enforce_order
@@ -64,6 +65,10 @@
 	/** 鎵ф硶鍘熷洜 */
 	@ApiModelProperty("鎵ф硶鍘熷洜")
 	private String enforceReason;
+
+	@ApiModelProperty("鎵ф硶绫诲瀷")
+	private String enforceType;
+
 	/** 鐢宠浜篿d */
 	@ApiModelProperty("鐢宠浜篿d")
 	private Long applyId;
@@ -154,4 +159,19 @@
 	@ApiModelProperty("璇勪环鎬诲緱鍒�")
 	private BigDecimal totalScore;
 
+	/** 鏄惁鎶曡瘔锛�0鍚︼紝1鏄� */
+	@ApiModelProperty("鏄惁鎶曡瘔锛�0鍚︼紝1鏄�")
+	private Integer isComplaint;
+
+	/** 鎶曡瘔鍐呭 */
+	@ApiModelProperty("鎶曡瘔鍐呭")
+	private String complaintReason;
+
+
+	@ApiModelProperty("鐢宠閮ㄩ棬ids")
+	private List<Long> applyDeptIds;
+
+	@ApiModelProperty("鏄惁瀹℃壒鏌ヨ锛�1鏄�")
+	private Integer isCheckQuery;
+
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateLogVo.java b/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateLogVo.java
index a522245..89cae37 100644
--- a/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateLogVo.java
+++ b/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateLogVo.java
@@ -1,11 +1,11 @@
 package com.project.enforce.domain.vo;
 
 import com.project.common.annotation.Excel;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import java.math.BigDecimal;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+
+import java.math.BigDecimal;
 
 
 /**
@@ -62,4 +62,7 @@
 	@ApiModelProperty("澶囨敞")
 	private String remark;
 
+	@ApiModelProperty("璇勪环闂埜")
+	private EnforceEvaluateVo evaluateVo;
+
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateVo.java b/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateVo.java
index 5263703..e6f71d2 100644
--- a/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateVo.java
+++ b/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceEvaluateVo.java
@@ -15,5 +15,9 @@
 @Data
 public class EnforceEvaluateVo
 {
+    private Long orderId;
+
     private List<EnforceEvaluateQuestion> questionList;
+
+    private String questionRemark;
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceOrderVo.java b/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceOrderVo.java
index 1573111..d2ca42d 100644
--- a/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceOrderVo.java
+++ b/project-enforce/src/main/java/com/project/enforce/domain/vo/EnforceOrderVo.java
@@ -1,13 +1,13 @@
 package com.project.enforce.domain.vo;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.project.common.annotation.Excel;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import java.math.BigDecimal;
-import java.util.Date;
-import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
 
 
 /**
@@ -54,6 +54,10 @@
 	@Excel(name = "鎵ф硶鍘熷洜")
 	@ApiModelProperty("鎵ф硶鍘熷洜")
 	private String enforceReason;
+
+	@ApiModelProperty("鎵ф硶绫诲瀷")
+	private String enforceType;
+
 	@Excel(name = "鐢宠浜篿d")
 	@ApiModelProperty("鐢宠浜篿d")
 	private Long applyId;
@@ -144,4 +148,12 @@
 	@ApiModelProperty("璇勪环鎬诲緱鍒�")
 	private BigDecimal totalScore;
 
+	/** 鏄惁鎶曡瘔锛�0鍚︼紝1鏄� */
+	@ApiModelProperty("鏄惁鎶曡瘔锛�0鍚︼紝1鏄�")
+	private Integer isComplaint;
+
+	/** 鎶曡瘔鍐呭 */
+	@ApiModelProperty("鎶曡瘔鍐呭")
+	private String complaintReason;
+
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java
index f5cf852..e3cc10c 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java
@@ -1,7 +1,6 @@
 package com.project.enforce.service.impl;
 
 import cn.hutool.core.convert.Convert;
-import com.project.common.core.domain.entity.SysRole;
 import com.project.common.core.domain.entity.SysUser;
 import com.project.common.exception.base.BaseException;
 import com.project.common.utils.SecurityUtils;
@@ -20,7 +19,6 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
-import java.util.stream.Collectors;
 
 /**
  * 鍔熻兘鎻忚堪锛�
@@ -58,8 +56,7 @@
                 }
                 addCheckLog(company, bo);
                 company.setCheckReason(bo.getCheckReason());
-                companyService.updateById(company);
-                break;
+                return companyService.updateById(company);
             case 2:
                 EnforceOrder order = orderService.getById(bo.getId());
                 if (order==null) {
@@ -80,8 +77,7 @@
                     order.setCheckLevel(order.getCheckLevel()+1);
                 }
                 order.setCheckReason(bo.getCheckReason());
-                orderService.updateById(order);
-                break;
+                return orderService.updateById(order);
         }
         return false;
     }
diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateLogServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateLogServiceImpl.java
index c6ddd9d..1fa97b1 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateLogServiceImpl.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateLogServiceImpl.java
@@ -1,21 +1,23 @@
 package com.project.enforce.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import lombok.RequiredArgsConstructor;
-import org.springframework.beans.factory.annotation.Autowired;
 import cn.hutool.core.convert.Convert;
-import com.project.common.utils.StringUtils;
-import org.springframework.stereotype.Service;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import org.springframework.transaction.annotation.Transactional;
-import com.project.enforce.domain.vo.EnforceEvaluateLogVo;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.project.common.exception.base.BaseException;
+import com.project.common.utils.JsonUtils;
+import com.project.common.utils.StringUtils;
+import com.project.enforce.domain.EnforceEvaluateLog;
 import com.project.enforce.domain.bo.editBo.EnforceEvaluateLogBo;
 import com.project.enforce.domain.bo.queryBo.EnforceEvaluateLogQueryBo;
-import com.project.enforce.domain.EnforceEvaluateLog;
+import com.project.enforce.domain.vo.EnforceEvaluateLogVo;
+import com.project.enforce.domain.vo.EnforceEvaluateVo;
 import com.project.enforce.mapper.EnforceEvaluateLogMapper;
 import com.project.enforce.service.IEnforceEvaluateLogService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Collection;
 import java.util.List;
@@ -43,7 +45,15 @@
     public EnforceEvaluateLogVo queryById(Long id)
     {
         EnforceEvaluateLog db = this.baseMapper.selectById(id);
-        return Convert.convert(EnforceEvaluateLogVo.class , db);
+        EnforceEvaluateLogVo vo = Convert.convert(EnforceEvaluateLogVo.class, db);
+        String questionStatic = vo.getQuestionStatic();
+        try {
+            EnforceEvaluateVo evaluateVo = JsonUtils.jsonToPojo(questionStatic, EnforceEvaluateVo.class);
+            vo.setEvaluateVo(evaluateVo);
+        } catch (Exception e) {
+            throw new BaseException("璇勪环闂埜瑙f瀽寮傚父锛�");
+        }
+        return vo;
     }
 
 
@@ -52,7 +62,9 @@
     public Boolean insertByBo(EnforceEvaluateLogBo bo)
     {
         EnforceEvaluateLog add = Convert.convert(EnforceEvaluateLog.class, bo);
-        validEntityBeforeSave(add);
+        validEntityBeforeSave(bo);
+        String questionStatic = JsonUtils.objectToJson(bo.getEvaluateVo());
+        add.setQuestionStatic(questionStatic);
         return this.save(add);
     }
 
@@ -61,7 +73,9 @@
     public Boolean updateByBo(EnforceEvaluateLogBo bo)
     {
         EnforceEvaluateLog update = Convert.convert(EnforceEvaluateLog.class, bo);
-        validEntityBeforeSave(update);
+        validEntityBeforeSave(bo);
+        String questionStatic = JsonUtils.objectToJson(bo.getEvaluateVo());
+        update.setQuestionStatic(questionStatic);
         return this.updateById(update);
     }
 
@@ -69,9 +83,7 @@
     @Transactional
     public Boolean deleteByIds(Collection<Long> ids)
     {
-
         //鍋氫竴浜涗笟鍔′笂鐨勬牎楠�,鍒ゆ柇鏄惁闇�瑕佹牎楠�
-
         return this.removeByIds(ids);
     }
 
@@ -79,9 +91,11 @@
 //-------------------------------------------------------------------------------------
 
     //淇濆瓨鍓嶆牎楠�
-    private void validEntityBeforeSave(EnforceEvaluateLog entity)
+    private void validEntityBeforeSave(EnforceEvaluateLogBo bo)
     {
-        //鍋氫竴浜涙暟鎹牎楠�,濡傚敮涓�绾︽潫
+        if (bo.getEvaluateVo()==null) {
+            throw new BaseException("璇蜂笂浼犺瘎浠烽棶鍒稿唴瀹癸紒");
+        }
     }
 
     //鑾峰彇鏌ヨ鍙傛暟
diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java
index 6a24155..8d08a34 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java
@@ -75,7 +75,7 @@
         return null;
     }
 
-    @Override
+    @Override//璇勪环璁剧疆璇︽儏
     public EnforceEvaluateVo getInfo()
     {
         EnforceEvaluateVo vo = new EnforceEvaluateVo();
diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java
index 67468d3..0468779 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java
@@ -53,20 +53,22 @@
     public List<EnforceOrderVo> queryCheckList(EnforceOrderQueryBo bo)
     {
         SysUser loginUser = SecurityUtils.getLoginUser().getUser();
-        if (!"01".equals(loginUser.getUserType())) {
-            throw new BaseException("鎮ㄦ病鏈夊鎵规潈闄愶紝璇烽噸璇曪紒");
+        if (bo.getIsCheckQuery()!=null && bo.getIsCheckQuery()==1){
+            List<String> roleKeys = loginUser.getRoles().stream().map(SysRole::getRoleKey).collect(Collectors.toList());
+            if (roleKeys.contains(CheckLevelCodeConstants.CHECK_LEVEL_ONE) && roleKeys.contains(CheckLevelCodeConstants.CHECK_LEVEL_TWO)){
+                bo.setCheckLevel(null);
+            } else if (roleKeys.contains(CheckLevelCodeConstants.CHECK_LEVEL_ONE)){
+                bo.setCheckLevel(0);
+            } else if (roleKeys.contains(CheckLevelCodeConstants.CHECK_LEVEL_TWO)) {
+                bo.setCheckLevel(1);
+            } else {
+                throw new BaseException("鎮ㄦ病鏈夊鎵规潈闄愶紝璇烽噸璇曪紒");
+            }
         }
-        List<String> roleKeys = loginUser.getRoles().stream().map(SysRole::getRoleKey).collect(Collectors.toList());
-        if (roleKeys.contains(CheckLevelCodeConstants.CHECK_LEVEL_ONE) && roleKeys.contains(CheckLevelCodeConstants.CHECK_LEVEL_TWO)){
-            bo.setCheckLevel(null);
-        } else if (roleKeys.contains(CheckLevelCodeConstants.CHECK_LEVEL_ONE)){
-            bo.setCheckLevel(0);
-        } else if (roleKeys.contains(CheckLevelCodeConstants.CHECK_LEVEL_TWO)) {
-            bo.setCheckLevel(1);
-        } else {
-            throw new BaseException("鎮ㄦ病鏈夊鎵规潈闄愶紝璇烽噸璇曪紒");
-        }
+
         bo.setCheckDeptId(deptService.getCheckDeptIdByLoginDeptId(loginUser.getDeptId()));
+
+        bo.setApplyDeptIds(deptService.getApplyDeptIdsByLoginUserId(loginUser.getUserId()));
 
         return this.baseMapper.selectCheckList(bo);
     }
@@ -133,6 +135,7 @@
         qw.eq(StringUtils.isNotEmpty(bo.getRegionCode()), "region_code", bo.getRegionCode());
         qw.like(StringUtils.isNotEmpty(bo.getRegionName()), "region_name", bo.getRegionName());
         qw.eq(StringUtils.isNotEmpty(bo.getEnforceReason()), "enforce_reason", bo.getEnforceReason());
+        qw.eq(StringUtils.isNotEmpty(bo.getEnforceType()), "enforce_type", bo.getEnforceType());
         qw.eq(bo.getApplyId() != null, "apply_id", bo.getApplyId());
         qw.eq(StringUtils.isNotEmpty(bo.getApplyUser()), "apply_user", bo.getApplyUser());
         qw.eq(StringUtils.isNotEmpty(bo.getApplyPhone()), "apply_phone", bo.getApplyPhone());
diff --git a/project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml b/project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml
index 48c793c..52c5596 100644
--- a/project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml
+++ b/project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml
@@ -16,6 +16,7 @@
         <result property="regionCode"    column="region_code"    />
         <result property="regionName"    column="region_name"    />
         <result property="enforceReason"    column="enforce_reason"    />
+        <result property="enforceType"    column="enforce_type"    />
         <result property="applyId"    column="apply_id"    />
         <result property="applyUser"    column="apply_user"    />
         <result property="applyPhone"    column="apply_phone"    />
@@ -81,6 +82,10 @@
                 AND check_level = #{checkLevel}
             </if>
 
+            <if test="checkLevel != null ">
+                AND apply_dept_id in #{checkLevel}
+            </if>
+
         </where>
     </select>
 
diff --git a/project-framework/src/main/java/com/project/framework/web/service/SysLoginService.java b/project-framework/src/main/java/com/project/framework/web/service/SysLoginService.java
index 44c3077..0a9eb08 100644
--- a/project-framework/src/main/java/com/project/framework/web/service/SysLoginService.java
+++ b/project-framework/src/main/java/com/project/framework/web/service/SysLoginService.java
@@ -1,7 +1,5 @@
 package com.project.framework.web.service;
 
-import javax.annotation.Resource;
-
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONObject;
 import com.aliyuncs.CommonRequest;
@@ -13,23 +11,13 @@
 import com.aliyuncs.profile.DefaultProfile;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.project.common.constant.AliyunSmsConstants;
-import com.project.common.exception.base.BaseException;
-import com.project.system.domain.bo.editBo.UserPhoneLoginBo;
-import com.project.system.mapper.SysUserMapper;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.authentication.AuthenticationManager;
-import org.springframework.security.authentication.BadCredentialsException;
-import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
-import org.springframework.security.core.Authentication;
-import org.springframework.stereotype.Component;
 import com.project.common.constant.CacheConstants;
 import com.project.common.constant.Constants;
 import com.project.common.core.domain.entity.SysUser;
 import com.project.common.core.domain.model.LoginUser;
 import com.project.common.core.redis.RedisCache;
 import com.project.common.exception.ServiceException;
+import com.project.common.exception.base.BaseException;
 import com.project.common.exception.user.CaptchaException;
 import com.project.common.exception.user.CaptchaExpireException;
 import com.project.common.exception.user.UserPasswordNotMatchException;
@@ -41,8 +29,17 @@
 import com.project.framework.manager.AsyncManager;
 import com.project.framework.manager.factory.AsyncFactory;
 import com.project.framework.security.context.AuthenticationContextHolder;
+import com.project.system.domain.bo.editBo.UserPhoneLoginBo;
+import com.project.system.mapper.SysUserMapper;
 import com.project.system.service.ISysConfigService;
 import com.project.system.service.ISysUserService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.security.authentication.AuthenticationManager;
+import org.springframework.security.authentication.BadCredentialsException;
+import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
+import org.springframework.security.core.Authentication;
+import org.springframework.stereotype.Component;
 
 import java.util.Random;
 import java.util.concurrent.TimeUnit;
@@ -237,7 +234,7 @@
      * @param code  楠岃瘉鐮�
      * @return  鏍¢獙缁撴灉
      */
-    private Boolean verifyPhone(String phone, String code)
+    public Boolean verifyPhone(String phone, String code)
     {
         String key = getCacheKey(phone);
         if (!redisCache.hasKey(key)) {
diff --git a/project-system/src/main/java/com/project/system/domain/SysUserDept.java b/project-system/src/main/java/com/project/system/domain/SysUserDept.java
new file mode 100644
index 0000000..50ad083
--- /dev/null
+++ b/project-system/src/main/java/com/project/system/domain/SysUserDept.java
@@ -0,0 +1,31 @@
+package com.project.system.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+/**
+ * 鐢ㄦ埛涓庨儴闂ㄥ叧鑱斿璞� sys_user_dept
+ *
+ * @author manton
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("sys_user_dept")
+@ApiModel("鐢ㄦ埛涓庨儴闂ㄥ叧鑱斿疄浣撳璞�")
+public class SysUserDept {
+
+    private static final long serialVersionUID=1L;
+
+
+    @ApiModelProperty("鐢ㄦ埛ID")
+    private Long userId;
+
+
+    @ApiModelProperty("閮ㄩ棬ID")
+    private Long deptId;
+
+}
diff --git a/project-system/src/main/java/com/project/system/domain/vo/SysCompanyResultVo.java b/project-system/src/main/java/com/project/system/domain/vo/SysCompanyResultVo.java
new file mode 100644
index 0000000..09c14bf
--- /dev/null
+++ b/project-system/src/main/java/com/project/system/domain/vo/SysCompanyResultVo.java
@@ -0,0 +1,19 @@
+package com.project.system.domain.vo;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+
+import java.util.List;
+
+
+/**
+ * 浼佷笟淇℃伅瑙嗗浘瀵硅薄 mall_package
+ *
+ * @author manton
+ */
+@Data
+@ApiModel("浼佷笟淇℃伅瑙嗗浘瀵硅薄")
+public class SysCompanyResultVo
+{
+	private List<SysCompanyVo> voList;
+}
diff --git a/project-system/src/main/java/com/project/system/domain/vo/SysCompanyVo.java b/project-system/src/main/java/com/project/system/domain/vo/SysCompanyVo.java
index d54f2b8..c99e3a2 100644
--- a/project-system/src/main/java/com/project/system/domain/vo/SysCompanyVo.java
+++ b/project-system/src/main/java/com/project/system/domain/vo/SysCompanyVo.java
@@ -2,11 +2,13 @@
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.project.common.annotation.Excel;
+import com.project.common.core.domain.model.ImportError;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.Date;
+import java.util.List;
 
 
 /**
@@ -23,20 +25,20 @@
 	@ApiModelProperty("浼佷笟id")
 	private Long companyId;
 
-	@Excel(name = "浼佷笟鍚�")
-	@ApiModelProperty("浼佷笟鍚�")
+	@Excel(name = "浼佷笟鍚�(浼佷笟鍏ㄧО)")
+	@ApiModelProperty("浼佷笟鍚�(浼佷笟鍏ㄧО)")
 	private String companyName;
 
-	@Excel(name = "浼佷笟绀句細缂栫爜")
-	@ApiModelProperty("浼佷笟绀句細缂栫爜")
+	@Excel(name = "缁熶竴绀句細淇$敤浠g爜")
+	@ApiModelProperty("缁熶竴绀句細淇$敤浠g爜")
 	private String companyCode;
 
 	@Excel(name = "浼佷笟鑱旂郴浜�")
 	@ApiModelProperty("浼佷笟鑱旂郴浜�")
 	private String companyUser;
 
-	@Excel(name = "浼佷笟鑱旂郴浜虹數璇�" , readConverterExp = "璐�=鍙�")
-	@ApiModelProperty("浼佷笟鑱旂郴浜虹數璇濓紙璐﹀彿锛�")
+	@Excel(name = "鑱旂郴浜虹數璇�" )
+	@ApiModelProperty("鑱旂郴浜虹數璇�")
 	private String companyPhone;
 
 	@Excel(name = "浼佷笟鍦板潃")
@@ -67,12 +69,10 @@
 	@ApiModelProperty("瀹℃壒璇存槑")
 	private String checkReason;
 
-	@Excel(name = "鑷畾涔夋帓搴�")
 	@ApiModelProperty("鑷畾涔夋帓搴�")
 	private Integer sortNum;
 
 	/** 鍒涘缓浜� */
-	@Excel(name = "鍒涘缓浜�")
 	@ApiModelProperty("鍒涘缓浜�")
 	private String createBy;
 
@@ -81,16 +81,20 @@
 	private Date createTime;
 
 	/** 鏇存柊浜� */
-	@Excel(name = "鏇存柊浜�")
 	@ApiModelProperty("鏇存柊浜�")
 	private String updateBy;
 
-	@ApiModelProperty("鍒涘缓鏃堕棿")
+	@ApiModelProperty("鏇存柊鏃堕棿")
 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 	private Date updateTime;
+
 	/** 澶囨敞 */
 	@Excel(name = "澶囨敞")
 	@ApiModelProperty("澶囨敞")
 	private String remark;
 
+
+	@ApiModelProperty("閿欒淇℃伅鏁版嵁")
+	private List<ImportError> errorList;
+
 }
diff --git a/project-system/src/main/java/com/project/system/domain/vo/SysDocVo.java b/project-system/src/main/java/com/project/system/domain/vo/SysDocVo.java
index 2449f55..edfa388 100644
--- a/project-system/src/main/java/com/project/system/domain/vo/SysDocVo.java
+++ b/project-system/src/main/java/com/project/system/domain/vo/SysDocVo.java
@@ -1,10 +1,12 @@
 package com.project.system.domain.vo;
 
-import com.project.common.annotation.Excel;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.project.common.annotation.Excel;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+
+import java.util.Date;
 
 
 /**
@@ -37,4 +39,12 @@
 	@ApiModelProperty("澶囨敞")
 	private String remark;
 
+	/** 鍒涘缓浜� */
+	@ApiModelProperty("鍒涘缓浜�")
+	private String createBy;
+
+	@ApiModelProperty("鍒涘缓鏃堕棿")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date createTime;
+
 }
diff --git a/project-system/src/main/java/com/project/system/mapper/SysDeptMapper.java b/project-system/src/main/java/com/project/system/mapper/SysDeptMapper.java
index 3868dd1..6db8ce0 100644
--- a/project-system/src/main/java/com/project/system/mapper/SysDeptMapper.java
+++ b/project-system/src/main/java/com/project/system/mapper/SysDeptMapper.java
@@ -1,8 +1,9 @@
 package com.project.system.mapper;
 
-import java.util.List;
-import org.apache.ibatis.annotations.Param;
 import com.project.common.core.domain.entity.SysDept;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * 閮ㄩ棬绠$悊 鏁版嵁灞�
@@ -115,4 +116,12 @@
      * @return 缁撴灉
      */
     public int deleteDeptById(Long deptId);
+
+    /**
+     * 鏍规嵁鐧诲綍浜篿d鑾峰彇绠¤緰鏈烘瀯ids
+     * @param userId    鐧诲綍浜篿d
+     * @return  绠¤緰鏈烘瀯ids
+     */
+    List<Long> getApplyDeptIdsByLoginUserId(Long userId);
+
 }
diff --git a/project-system/src/main/java/com/project/system/mapper/SysUserDeptMapper.java b/project-system/src/main/java/com/project/system/mapper/SysUserDeptMapper.java
new file mode 100644
index 0000000..25f343c
--- /dev/null
+++ b/project-system/src/main/java/com/project/system/mapper/SysUserDeptMapper.java
@@ -0,0 +1,13 @@
+package com.project.system.mapper;
+
+import com.project.system.domain.SysUserDept;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 鐢ㄦ埛涓庨儴闂ㄥ叧鑱擬apper鎺ュ彛
+ *
+ * @author manton
+ */
+public interface SysUserDeptMapper extends BaseMapper<SysUserDept> {
+
+}
diff --git a/project-system/src/main/java/com/project/system/service/ISysCompanyService.java b/project-system/src/main/java/com/project/system/service/ISysCompanyService.java
index 1937239..c662d21 100644
--- a/project-system/src/main/java/com/project/system/service/ISysCompanyService.java
+++ b/project-system/src/main/java/com/project/system/service/ISysCompanyService.java
@@ -1,12 +1,11 @@
 package com.project.system.service;
 
+import com.project.common.mybatis.IBaseService;
 import com.project.system.domain.SysCompany;
-import com.project.system.domain.vo.SysCompanyVo;
 import com.project.system.domain.bo.editBo.SysCompanyBo;
 import com.project.system.domain.bo.queryBo.SysCompanyQueryBo;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.project.common.mybatis.IBaseService;
-import cn.hutool.core.convert.Convert;
+import com.project.system.domain.vo.SysCompanyResultVo;
+import com.project.system.domain.vo.SysCompanyVo;
 
 import java.util.Collection;
 import java.util.List;
@@ -52,9 +51,23 @@
 	Boolean deleteByIds(Collection<Long> ids);
 
 	/**
-	 * 鎵归噺瀵煎叆浼佷笟淇℃伅
-	 * @param list 浼佷笟淇℃伅闆嗗悎
-	 * @return  true鎴愬姛 false澶辫触
+	 * 澶勭悊瀵煎叆淇℃伅
+	 * @param list	鏁版嵁
+	 * @return	缁撴灉
 	 */
-	Boolean importList(List<SysCompanyVo> list);
+	SysCompanyResultVo doImport(List<SysCompanyVo> list);
+
+	/**
+	 * 鏍¢獙瀵煎叆淇℃伅
+	 * @param resultVo	鏁版嵁
+	 * @return	缁撴灉
+	 */
+	SysCompanyResultVo checkImport(SysCompanyResultVo resultVo);
+
+	/**
+	 * 淇濆瓨瀵煎叆淇℃伅
+	 * @param resultVo	鏁版嵁
+	 * @return	缁撴灉
+	 */
+	Boolean saveImport(SysCompanyResultVo resultVo);
 }
diff --git a/project-system/src/main/java/com/project/system/service/ISysDeptService.java b/project-system/src/main/java/com/project/system/service/ISysDeptService.java
index 5bcbcbc..cb94213 100644
--- a/project-system/src/main/java/com/project/system/service/ISysDeptService.java
+++ b/project-system/src/main/java/com/project/system/service/ISysDeptService.java
@@ -124,6 +124,17 @@
     public int deleteDeptById(Long deptId);
 
 
-
+    /**
+     * 鑾峰彇瀵瑰簲瀹℃壒鏈烘瀯id
+     * @param deptId    鐧诲綍浜洪儴闂╥d
+     * @return  瀹℃壒鏈烘瀯id
+     */
     public Long getCheckDeptIdByLoginDeptId(Long deptId);
+
+    /**
+     * 鑾峰彇瀵瑰簲绠¤緰鏈烘瀯ids
+     * @param userId    鐧诲綍浜篿d
+     * @return  绠¤緰鏈烘瀯ids
+     */
+    List<Long> getApplyDeptIdsByLoginUserId(Long userId);
 }
diff --git a/project-system/src/main/java/com/project/system/service/ISysUserDeptService.java b/project-system/src/main/java/com/project/system/service/ISysUserDeptService.java
new file mode 100644
index 0000000..3932764
--- /dev/null
+++ b/project-system/src/main/java/com/project/system/service/ISysUserDeptService.java
@@ -0,0 +1,14 @@
+package com.project.system.service;
+
+import com.project.common.mybatis.IBaseService;
+import com.project.system.domain.SysUserDept;
+
+/**
+ * 鐢ㄦ埛涓庨儴闂ㄥ叧鑱擲ervice鎺ュ彛
+ *
+ * @author manton
+ */
+public interface ISysUserDeptService extends IBaseService<SysUserDept> {
+
+
+}
diff --git a/project-system/src/main/java/com/project/system/service/impl/SysCompanyServiceImpl.java b/project-system/src/main/java/com/project/system/service/impl/SysCompanyServiceImpl.java
index b92f1d6..e43b05a 100644
--- a/project-system/src/main/java/com/project/system/service/impl/SysCompanyServiceImpl.java
+++ b/project-system/src/main/java/com/project/system/service/impl/SysCompanyServiceImpl.java
@@ -3,8 +3,10 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.project.common.constant.UserConstants;
 import com.project.common.core.domain.entity.SysUser;
+import com.project.common.core.domain.model.ImportError;
 import com.project.common.exception.base.BaseException;
 import com.project.common.utils.SecurityUtils;
+import com.project.system.domain.vo.SysCompanyResultVo;
 import com.project.system.service.ISysUserService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -22,6 +24,7 @@
 import com.project.system.mapper.SysCompanyMapper;
 import com.project.system.service.ISysCompanyService;
 
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 
@@ -57,7 +60,7 @@
     public Boolean insertByBo(SysCompanyBo bo)
     {
         SysCompany add = Convert.convert(SysCompany.class, bo);
-        validEntityBeforeSave(add, 0);
+        validEntityBeforeSave(add);
         boolean save = this.save(add);
         addCompanyUser(add);
         return save;
@@ -76,7 +79,7 @@
             }
             this.addCompanyUser(update);
         }
-        validEntityBeforeSave(update, 0);
+        validEntityBeforeSave(update);
         return this.updateById(update);
     }
 
@@ -93,17 +96,47 @@
         return this.removeByIds(ids);
     }
 
-    @Override//瀵煎叆
-    @Transactional
-    public Boolean importList(List<SysCompanyVo> list)
+
+    @Override
+    public SysCompanyResultVo doImport(List<SysCompanyVo> list)
     {
         if (list==null || list.size()<1){
-            throw new BaseException("鏈幏鍙栧埌瀵煎叆淇℃伅");
+            throw new BaseException("鏈幏鍙栧埌瀵煎叆淇℃伅锛�");
         }
-        List<SysCompany> companies = Convert.toList(SysCompany.class, list);
-        companies.forEach(e-> validEntityBeforeSave(e,1));
-        boolean b = this.saveOrUpdateBatch(companies);
+        SysCompanyResultVo resultVo = new SysCompanyResultVo();
+        resultVo.setVoList(list);
+        return this.checkImport(resultVo);
 
+    }
+
+    @Override
+    public SysCompanyResultVo checkImport(SysCompanyResultVo resultVo)
+    {
+        if (resultVo==null || StringUtils.isEmpty(resultVo.getVoList())){
+            throw new BaseException("鏈幏鍙栧埌瀵煎叆淇℃伅锛�");
+        }
+        for (SysCompanyVo vo : resultVo.getVoList()) {
+            List<ImportError> errors = new ArrayList<>();
+            validEntityBeforeImport(vo, errors);
+            vo.setErrorList(errors);
+        }
+        return  resultVo;
+    }
+
+    @Override
+    @Transactional
+    public Boolean saveImport(SysCompanyResultVo resultVo)
+    {
+        if (resultVo==null || StringUtils.isEmpty(resultVo.getVoList())){
+            throw new BaseException("鏈幏鍙栧埌瀵煎叆淇℃伅锛�");
+        }
+        resultVo.getVoList().forEach(e-> {
+            if (StringUtils.isNotEmpty(e.getErrorList())) {
+                throw new BaseException("杩樻湁鏈鐞嗛敊璇俊鎭紒");
+            }
+        });
+        List<SysCompany> companies = Convert.toList(SysCompany.class, resultVo.getVoList());
+        boolean b = this.saveOrUpdateBatch(companies);
         companies.forEach(this::addCompanyUser);
         return b;
     }
@@ -114,15 +147,12 @@
     /**
      * 淇濆瓨鍓嶆牎楠�
      * @param entity    鍙傛暟
-     * @param isImport  鏄惁瀵煎叆锛�0鍚︼紝1鏄�
      */
-    private void validEntityBeforeSave(SysCompany entity, int isImport)
+    private void validEntityBeforeSave(SysCompany entity)
     {
-        entity.setIsImport(isImport);
-        if (isImport!=1){
-            if (StringUtils.isEmpty(entity.getCompanyImg())){
-                throw new BaseException(String.format("%1$s锛岃涓婁紶钀ヤ笟鎵х収", entity.getCompanyName()));
-            }
+        entity.setIsImport(0);
+        if (StringUtils.isEmpty(entity.getCompanyImg())){
+            throw new BaseException(String.format("%1$s锛岃涓婁紶钀ヤ笟鎵х収", entity.getCompanyName()));
         }
         if (StringUtils.isEmpty(entity.getCompanyCode())){
             throw new BaseException(String.format("%1$s锛岃濉啓浼佷笟绀句細缂栫爜锛�", entity.getCompanyName()));
@@ -132,6 +162,9 @@
         }
         if (StringUtils.isEmpty(entity.getCompanyPhone())){
             throw new BaseException(String.format("%1$s锛岃濉啓浼佷笟鑱旂郴浜虹數璇濓紒", entity.getCompanyName()));
+        }
+        if (StringUtils.isEmpty(entity.getCompanyAddress())){
+            throw new BaseException(String.format("%1$s锛岃濉啓浼佷笟鍦板潃锛�", entity.getCompanyName()));
         }
         if (StringUtils.isEmpty(entity.getCompanyName())){
             throw new BaseException("璇峰~鍐欎紒涓氬悕锛�");
@@ -163,12 +196,42 @@
                 throw new BaseException(String.format("%1$s锛屼紒涓氳仈绯荤數璇濆凡瀛樺湪锛�", entity.getCompanyName()));
             }
         }
-        if (isImport==1){
-            entity.setCheckStatus(2);
-        }
     }
 
 
+    private void validEntityBeforeImport(SysCompanyVo entity, List<ImportError> errorList)
+    {
+        entity.setIsImport(1);
+        if (StringUtils.isEmpty(entity.getCompanyName())){
+            errorList.add(new ImportError(0, "璇峰~鍐欎紒涓氬悕锛�"));
+        }
+        if (StringUtils.isEmpty(entity.getCompanyCode())){
+            errorList.add(new ImportError(1, "璇峰~鍐欎紒涓氱ぞ浼氱紪鐮侊紒"));
+        }
+        if (StringUtils.isEmpty(entity.getCompanyUser())){
+            errorList.add(new ImportError(2, "璇峰~鍐欎紒涓氳仈绯讳汉锛�"));
+        }
+        if (StringUtils.isEmpty(entity.getCompanyPhone())){
+            errorList.add(new ImportError(3, "璇峰~鍐欎紒涓氳仈绯讳汉鐢佃瘽锛�"));
+        }
+        if (StringUtils.isEmpty(entity.getCompanyAddress())){
+            errorList.add(new ImportError(4, "璇峰~鍐欎紒涓氬湴鍧�锛�"));
+        }
+        int codeCount = this.count(lq().eq(SysCompany::getCompanyCode, entity.getCompanyCode()));
+        if (codeCount>0){
+            errorList.add(new ImportError(1, "浼佷笟绀句細缂栫爜宸插瓨鍦紒"));
+        }
+        int nameCount = this.count(lq().eq(SysCompany::getCompanyName, entity.getCompanyName()));
+        if (nameCount>0){
+            errorList.add(new ImportError(0, "浼佷笟鍚嶅凡瀛樺湪锛�"));
+        }
+        int phoneCount = this.count(lq().eq(SysCompany::getCompanyPhone, entity.getCompanyPhone()));
+        if (phoneCount>0){
+            errorList.add(new ImportError(3, "浼佷笟鑱旂郴鐢佃瘽宸插瓨鍦紒"));
+        }
+        entity.setCheckStatus(2);
+    }
+
     /**
      * 娣诲姞浼佷笟鐢ㄦ埛
      * @param entity    浼佷笟淇℃伅
diff --git a/project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java b/project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java
index bb89e61..8d17372 100644
--- a/project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java
+++ b/project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java
@@ -294,11 +294,16 @@
         return deptMapper.deleteDeptById(deptId);
     }
 
+    /**
+     * 鏍规嵁鐧诲綍浜洪儴闂ㄨ幏鍙栧鎵规満鏋刬d
+     * @param deptId    鐧诲綍浜洪儴闂╥d
+     * @return  瀹℃壒鏈烘瀯id
+     */
     @Override
     public Long getCheckDeptIdByLoginDeptId(Long deptId)
     {
         SysDept loginDept = selectDeptById(deptId);
-        if (loginDept.getParentId()==101){
+        if (loginDept.getParentId()==100){
             return loginDept.getDeptId();
         } else {
             return getCheckDeptIdByLoginDeptId(loginDept.getParentId());
@@ -306,6 +311,17 @@
     }
 
     /**
+     * 鏍规嵁鐧诲綍浜篿d鑾峰彇绠¤緰鏈烘瀯ids
+     * @param userId    鐧诲綍浜篿d
+     * @return  瀹℃壒鏈烘瀯ids
+     */
+    @Override
+    public List<Long> getApplyDeptIdsByLoginUserId(Long userId)
+    {
+        return deptMapper.getApplyDeptIdsByLoginUserId(userId);
+    }
+
+    /**
      * 閫掑綊鍒楄〃
      */
     private void recursionFn(List<SysDept> list, SysDept t)
diff --git a/project-system/src/main/java/com/project/system/service/impl/SysUserDeptServiceImpl.java b/project-system/src/main/java/com/project/system/service/impl/SysUserDeptServiceImpl.java
new file mode 100644
index 0000000..1a871f1
--- /dev/null
+++ b/project-system/src/main/java/com/project/system/service/impl/SysUserDeptServiceImpl.java
@@ -0,0 +1,21 @@
+package com.project.system.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.project.system.domain.SysUserDept;
+import com.project.system.mapper.SysUserDeptMapper;
+import com.project.system.service.ISysUserDeptService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 鐢ㄦ埛涓庨儴闂ㄥ叧鑱擲ervice涓氬姟灞傚鐞�
+ *
+ * @author manton
+ */
+@Service
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+public class SysUserDeptServiceImpl extends ServiceImpl<SysUserDeptMapper, SysUserDept> implements ISysUserDeptService {
+
+
+}
diff --git a/project-system/src/main/java/com/project/system/service/impl/SysUserServiceImpl.java b/project-system/src/main/java/com/project/system/service/impl/SysUserServiceImpl.java
index e2d8390..8c9c811 100644
--- a/project-system/src/main/java/com/project/system/service/impl/SysUserServiceImpl.java
+++ b/project-system/src/main/java/com/project/system/service/impl/SysUserServiceImpl.java
@@ -1,19 +1,7 @@
 package com.project.system.service.impl;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.stream.Collectors;
-import javax.validation.Validator;
-
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import lombok.RequiredArgsConstructor;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
 import com.project.common.annotation.DataScope;
 import com.project.common.constant.UserConstants;
 import com.project.common.core.domain.entity.SysRole;
@@ -26,13 +14,21 @@
 import com.project.system.domain.SysPost;
 import com.project.system.domain.SysUserPost;
 import com.project.system.domain.SysUserRole;
-import com.project.system.mapper.SysPostMapper;
-import com.project.system.mapper.SysRoleMapper;
-import com.project.system.mapper.SysUserMapper;
-import com.project.system.mapper.SysUserPostMapper;
-import com.project.system.mapper.SysUserRoleMapper;
+import com.project.system.mapper.*;
 import com.project.system.service.ISysConfigService;
 import com.project.system.service.ISysUserService;
+import lombok.RequiredArgsConstructor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import javax.validation.Validator;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 鐢ㄦ埛 涓氬姟灞傚鐞�
@@ -545,7 +541,8 @@
     public int deleteUserByDeptId(Long deptId)
     {
         List<SysUser> sysUsers = userMapper.selectList(new LambdaQueryWrapper<SysUser>().eq(SysUser::getDeptId, deptId));
-        return this.deleteUserByIds((Long[]) sysUsers.stream().map(SysUser::getUserId).toArray());
+        Long[] ids = sysUsers.stream().map(SysUser::getUserId).toArray(Long[]::new);
+        return this.deleteUserByIds(ids);
     }
 
     @Override
diff --git a/project-system/src/main/resources/mapper/system/SysDeptMapper.xml b/project-system/src/main/resources/mapper/system/SysDeptMapper.xml
index 7e5a8de..f56e0a2 100644
--- a/project-system/src/main/resources/mapper/system/SysDeptMapper.xml
+++ b/project-system/src/main/resources/mapper/system/SysDeptMapper.xml
@@ -156,4 +156,7 @@
 		update sys_dept set del_flag = '2' where dept_id = #{deptId}
 	</delete>
 
+	<select id="getApplyDeptIdsByLoginUserId" resultType="Long">
+		select dept_id from sys_user_dept where user_id = #{userId}
+	</select>
 </mapper>
diff --git a/project-system/src/main/resources/mapper/system/SysUserDeptMapper.xml b/project-system/src/main/resources/mapper/system/SysUserDeptMapper.xml
new file mode 100644
index 0000000..5975274
--- /dev/null
+++ b/project-system/src/main/resources/mapper/system/SysUserDeptMapper.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.project.system.mapper.SysUserDeptMapper">
+    
+    <resultMap type="SysUserDept" id="SysUserDeptResult">
+        <result property="userId"    column="user_id"    />
+        <result property="deptId"    column="dept_id"    />
+    </resultMap>
+
+
+
+</mapper>
\ No newline at end of file

--
Gitblit v1.9.1