From d21773b0d86197d133ef4b16fe366232c345c665 Mon Sep 17 00:00:00 2001
From: ZQN <364596817@qq.com>
Date: 星期三, 19 六月 2024 23:02:50 +0800
Subject: [PATCH] 报表添加

---
 project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateServiceImpl.java          |    1 
 project-framework/src/main/java/com/project/framework/web/service/SysLoginService.java                  |   27 +
 project-common/src/main/java/com/project/common/core/domain/entity/SysDept.java                         |   32 +-
 project-enforce/src/main/java/com/project/enforce/service/IEnforceOrderService.java                     |   27 ++
 project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java                    |   13 
 project-report/src/main/java/com/project/report/service/IReportService.java                             |   36 +++
 project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateService.java                  |    4 
 project-system/src/main/java/com/project/system/service/ISysDeptService.java                            |    3 
 project-system/src/main/java/com/project/system/service/impl/SysUserServiceImpl.java                    |    1 
 pom.xml                                                                                                 |    8 
 project-common/src/main/java/com/project/common/vo/KeyVal.java                                          |   17 +
 project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateQuestionMapper.java             |    4 
 project-admin/src/main/resources/application.yml                                                        |    6 
 project-admin/src/main/java/com/project/admin/controller/system/SysUserController.java                  |    4 
 project-system/src/main/java/com/project/system/service/impl/SysCompanyServiceImpl.java                 |   12 
 project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java             |   20 +
 project-system/src/main/java/com/project/system/mapper/SysDeptMapper.java                               |    3 
 project-enforce/src/main/java/com/project/enforce/mapper/EnforceOrderMapper.java                        |    6 
 project-framework/src/main/java/com/project/framework/aspectj/LogAspect.java                            |   51 ++-
 project-admin/pom.xml                                                                                   |    8 
 project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateAnswerMapper.java               |    3 
 project-admin/src/main/java/com/project/admin/controller/report/ReportController.java                   |   48 ++++
 project-framework/src/main/java/com/project/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java |   89 ++++--
 project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateQuestionService.java          |    5 
 project-report/src/main/java/com/project/report/service/impl/ReportServiceImpl.java                     |  100 ++++++++
 project-system/src/main/java/com/project/system/domain/bo/editBo/UserPhoneLoginBo.java                  |    3 
 project-report/pom.xml                                                                                  |   28 ++
 project-common/src/main/java/com/project/common/core/domain/BaseEntity.java                             |   15 
 project-admin/src/main/java/com/project/admin/controller/enforce/EnforceOrderController.java            |   13 
 project-admin/src/main/java/com/project/core/config/SwaggerConfig.java                                  |   18 +
 project-admin/src/main/java/com/project/admin/controller/system/SysProfileController.java               |   20 
 project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml                                |   35 ++
 project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateQuestionServiceImpl.java  |   11 
 33 files changed, 553 insertions(+), 118 deletions(-)

diff --git a/pom.xml b/pom.xml
index 439b30f..641c670 100644
--- a/pom.xml
+++ b/pom.xml
@@ -229,6 +229,13 @@
                 <version>${project.version}</version>
             </dependency>
 
+            <!-- 缁熻鎶ヨ〃-->
+            <dependency>
+                <groupId>com.project</groupId>
+                <artifactId>project-report</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+
         </dependencies>
     </dependencyManagement>
 
@@ -241,6 +248,7 @@
         <module>project-common</module>
         <module>project-approval</module>
         <module>project-enforce</module>
+        <module>project-report</module>
     </modules>
     <packaging>pom</packaging>
 
diff --git a/project-admin/pom.xml b/project-admin/pom.xml
index 69458bb..e29e37e 100644
--- a/project-admin/pom.xml
+++ b/project-admin/pom.xml
@@ -67,13 +67,17 @@
             <artifactId>project-approval</artifactId>
         </dependency>
 
-        <!-- 瀹℃壒娴佺▼-->
+        <!-- 鎵ф硶涓氬姟-->
         <dependency>
             <groupId>com.project</groupId>
             <artifactId>project-enforce</artifactId>
         </dependency>
 
-
+        <!-- 缁熻鎶ヨ〃-->
+        <dependency>
+            <groupId>com.project</groupId>
+            <artifactId>project-report</artifactId>
+        </dependency>
 
     </dependencies>
 
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 36cbb28..f02c617 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
@@ -34,7 +34,16 @@
     private final IEnforceOrderService iEnforceOrderService;
 
 
-    @ApiOperation("鏌ヨ鎵ф硶鍗曞垪琛�")
+    @ApiOperation("淇℃伅鍏紡鍒楄〃")
+    @GetMapping("/showList")
+    public TableDataInfo showList()
+    {
+        startPage();
+        List<EnforceOrderVo> list = iEnforceOrderService.showList();
+        return getDataTable(list);
+    }
+
+    @ApiOperation("鎵ф硶鍗曞垪琛�")
     @GetMapping("/list")
     public TableDataInfo list(EnforceOrderQueryBo bo)
     {
@@ -44,7 +53,7 @@
     }
 
 
-    @ApiOperation("鏌ヨ鎵ф硶鍗曞緟瀹℃壒鍒楄〃")
+    @ApiOperation("瀹℃壒浜哄垪琛�")
     @GetMapping("/checkList")
     public TableDataInfo checkList(EnforceOrderQueryBo bo)
     {
diff --git a/project-admin/src/main/java/com/project/admin/controller/report/ReportController.java b/project-admin/src/main/java/com/project/admin/controller/report/ReportController.java
new file mode 100644
index 0000000..323b4c7
--- /dev/null
+++ b/project-admin/src/main/java/com/project/admin/controller/report/ReportController.java
@@ -0,0 +1,48 @@
+package com.project.admin.controller.report;
+
+import com.project.common.core.controller.BaseController;
+import com.project.common.core.domain.AjaxResult;
+import com.project.report.service.IReportService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+@Slf4j
+@Api(value = "鎶ヨ〃绠$悊", tags = "鎶ヨ〃绠$悊")
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/report/team")
+public class ReportController extends BaseController
+{
+
+    private final IReportService reportService;
+
+    @ApiOperation("鎵ф硶姹囨�绘暟鎹�")
+    @GetMapping("/getTotalInfo")
+    public AjaxResult getTotalInfo()
+    {
+        return AjaxResult.success(reportService.getTotalInfo());
+    }
+
+
+    @ApiOperation("鎵ф硶娆℃暟鏈堝害鍒嗗竷")
+    @GetMapping("/getMonthCount")
+    public AjaxResult getMonthCount(Long deptId)
+    {
+        return AjaxResult.success(reportService.getMonthCount(deptId));
+    }
+
+
+    @ApiOperation("鎵ф硶娆℃暟閮ㄩ棬鍒嗗竷")
+    @GetMapping("/getDeptCount")
+    public AjaxResult getDeptCount(String yearMonth)
+    {
+        return AjaxResult.success(reportService.getDeptCount(yearMonth));
+    }
+
+}
diff --git a/project-admin/src/main/java/com/project/admin/controller/system/SysProfileController.java b/project-admin/src/main/java/com/project/admin/controller/system/SysProfileController.java
index 7bc3bff..2101771 100644
--- a/project-admin/src/main/java/com/project/admin/controller/system/SysProfileController.java
+++ b/project-admin/src/main/java/com/project/admin/controller/system/SysProfileController.java
@@ -59,8 +59,14 @@
     public AjaxResult updateProfile(@RequestBody SysUser user)
     {
         LoginUser loginUser = getLoginUser();
-        SysUser sysUser = loginUser.getUser();
-        user.setUserName(sysUser.getUserName());
+        user.setUserName(user.getUserName());
+        SysUser byId = userService.getById(user.getUserId());
+        byId.setNickName(user.getNickName());
+        byId.setPhonenumber(user.getPhonenumber());
+        byId.setEmail(user.getEmail());
+        byId.setSex(user.getSex());
+        byId.setAvatar(user.getAvatar());
+        byId.setDeptId(user.getDeptId());
         if (StringUtils.isNotEmpty(user.getPhonenumber())
                 && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
         {
@@ -71,15 +77,11 @@
         {
             return error("淇敼鐢ㄦ埛'" + user.getUserName() + "'澶辫触锛岄偖绠辫处鍙峰凡瀛樺湪");
         }
-        user.setUserId(sysUser.getUserId());
-        if (userService.updateUser(user) > 0)
+        int upd = userService.updateUser(byId);
+        if (upd > 0)
         {
             // 鏇存柊缂撳瓨鐢ㄦ埛淇℃伅
-            sysUser.setNickName(user.getNickName());
-            sysUser.setPhonenumber(user.getPhonenumber());
-            sysUser.setEmail(user.getEmail());
-            sysUser.setSex(user.getSex());
-            sysUser.setAvatar(user.getAvatar());
+            loginUser.setUser(byId);
             tokenService.setLoginUser(loginUser);
             return success();
         }
diff --git a/project-admin/src/main/java/com/project/admin/controller/system/SysUserController.java b/project-admin/src/main/java/com/project/admin/controller/system/SysUserController.java
index e9aaa5d..f1c3f6d 100644
--- a/project-admin/src/main/java/com/project/admin/controller/system/SysUserController.java
+++ b/project-admin/src/main/java/com/project/admin/controller/system/SysUserController.java
@@ -113,10 +113,12 @@
     @PostMapping
     public AjaxResult add(@Validated @RequestBody SysUser user)
     {
+
         if (user.getDeptId()!=null){
+            user.setUserType("01");
             SysDept sysDept = deptService.selectDeptById(user.getDeptId());
             if (sysDept.getAncestors().contains("101") || sysDept.getDeptId().equals(101L)){
-                user.setUserType("01");
+                user.setUserType("00");
                 user.setRecommendPhone(deptService.getCheckDeptIdByLoginDeptId(user.getDeptId()).toString());
             }
         }
diff --git a/project-admin/src/main/java/com/project/core/config/SwaggerConfig.java b/project-admin/src/main/java/com/project/core/config/SwaggerConfig.java
index c71283a..eec2c9d 100644
--- a/project-admin/src/main/java/com/project/core/config/SwaggerConfig.java
+++ b/project-admin/src/main/java/com/project/core/config/SwaggerConfig.java
@@ -116,7 +116,7 @@
     public Docket enforceApi()
     {
         return new Docket(DocumentationType.OAS_30)
-                .groupName("鎵ф硶娴佺▼")
+                .groupName("鎵ф硶涓績")
                 .apiInfo(apiInfo())
                 .select()
                 .apis(RequestHandlerSelectors.any())
@@ -128,6 +128,22 @@
                 .pathMapping(pathMapping);
     }
 
+    @Bean
+    public Docket reportApi()
+    {
+        return new Docket(DocumentationType.OAS_30)
+                .groupName("鎶ヨ〃涓績")
+                .apiInfo(apiInfo())
+                .select()
+                .apis(RequestHandlerSelectors.any())
+                .paths(PathSelectors.regex("/report/.*"))
+                .build()
+                /* 璁剧疆瀹夊叏妯″紡锛宻wagger鍙互璁剧疆璁块棶token */
+                .securitySchemes(securitySchemes())
+                .securityContexts(securityContexts())
+                .pathMapping(pathMapping);
+    }
+
 
     /**
      * 瀹夊叏妯″紡锛岃繖閲屾寚瀹歵oken閫氳繃Authorization澶磋姹傚ご浼犻��
diff --git a/project-admin/src/main/resources/application.yml b/project-admin/src/main/resources/application.yml
index 164f9a6..b1e7e70 100644
--- a/project-admin/src/main/resources/application.yml
+++ b/project-admin/src/main/resources/application.yml
@@ -140,6 +140,10 @@
             - /**/*.js
             - /websocket/**
             - /chat/**
+            - /system/company/add
             - /system/dict/**
+            - /system/doc/**
+            - /tool/**
             - /verify/**
-            - /tool/**   #涓存椂鐧藉悕鍗�
+            - /report/**
+            - /enforce/order/showList
diff --git a/project-common/src/main/java/com/project/common/core/domain/BaseEntity.java b/project-common/src/main/java/com/project/common/core/domain/BaseEntity.java
index 20852e5..e5f0f16 100644
--- a/project-common/src/main/java/com/project/common/core/domain/BaseEntity.java
+++ b/project-common/src/main/java/com/project/common/core/domain/BaseEntity.java
@@ -1,16 +1,18 @@
 package com.project.common.core.domain;
 
-import java.io.Serializable;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonInclude;
 
+import java.io.Serializable;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * Entity鍩虹被
- * 
+ *
  * @author project
  */
 public class BaseEntity implements Serializable
@@ -19,6 +21,7 @@
 
     /** 鎼滅储鍊� */
     @JsonIgnore
+    @TableField(exist = false)
     private String searchValue;
 
     /** 鍒涘缓鑰� */
@@ -36,10 +39,12 @@
     private Date updateTime;
 
     /** 澶囨敞 */
+    @TableField(exist = false)
     private String remark;
 
     /** 璇锋眰鍙傛暟 */
     @JsonInclude(JsonInclude.Include.NON_EMPTY)
+    @TableField(exist = false)
     private Map<String, Object> params;
 
     public String getSearchValue()
diff --git a/project-common/src/main/java/com/project/common/core/domain/entity/SysDept.java b/project-common/src/main/java/com/project/common/core/domain/entity/SysDept.java
index a5407a7..032d172 100644
--- a/project-common/src/main/java/com/project/common/core/domain/entity/SysDept.java
+++ b/project-common/src/main/java/com/project/common/core/domain/entity/SysDept.java
@@ -1,14 +1,16 @@
 package com.project.common.core.domain.entity;
 
-import java.util.ArrayList;
-import java.util.List;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.project.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
 import javax.validation.constraints.Email;
 import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.NotNull;
 import javax.validation.constraints.Size;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
-import com.project.common.core.domain.BaseEntity;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * 閮ㄩ棬琛� sys_dept
@@ -49,10 +51,19 @@
     /** 鍒犻櫎鏍囧織锛�0浠h〃瀛樺湪 2浠h〃鍒犻櫎锛� */
     private String delFlag;
 
-    /** 鐖堕儴闂ㄥ悕绉� */
+    @TableField(exist = false)
     private String parentName;
 
+    public String getParentName() {
+        return parentName;
+    }
+
+    public void setParentName(String parentName) {
+        this.parentName = parentName;
+    }
+
     /** 瀛愰儴闂� */
+    @TableField(exist = false)
     private List<SysDept> children = new ArrayList<SysDept>();
 
     public Long getDeptId()
@@ -161,15 +172,6 @@
         this.delFlag = delFlag;
     }
 
-    public String getParentName()
-    {
-        return parentName;
-    }
-
-    public void setParentName(String parentName)
-    {
-        this.parentName = parentName;
-    }
 
     public List<SysDept> getChildren()
     {
diff --git a/project-common/src/main/java/com/project/common/vo/KeyVal.java b/project-common/src/main/java/com/project/common/vo/KeyVal.java
new file mode 100644
index 0000000..9df4378
--- /dev/null
+++ b/project-common/src/main/java/com/project/common/vo/KeyVal.java
@@ -0,0 +1,17 @@
+package com.project.common.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @author Mr.Zhao
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class KeyVal
+{
+    private String k;
+    private Object v;
+}
diff --git a/project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateAnswerMapper.java b/project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateAnswerMapper.java
index e1843d5..c1fae63 100644
--- a/project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateAnswerMapper.java
+++ b/project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateAnswerMapper.java
@@ -2,6 +2,7 @@
 
 import com.project.enforce.domain.EnforceEvaluateAnswer;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Delete;
 
 /**
  * 鎵ф硶璇勪环绛旀Mapper鎺ュ彛
@@ -10,4 +11,6 @@
  */
 public interface EnforceEvaluateAnswerMapper extends BaseMapper<EnforceEvaluateAnswer> {
 
+    @Delete("delete from enforce_evaluate_answer")
+    void clearAnswer();
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateQuestionMapper.java b/project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateQuestionMapper.java
index b0fe30d..cd120b8 100644
--- a/project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateQuestionMapper.java
+++ b/project-enforce/src/main/java/com/project/enforce/mapper/EnforceEvaluateQuestionMapper.java
@@ -2,6 +2,7 @@
 
 import com.project.enforce.domain.EnforceEvaluateQuestion;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Delete;
 
 /**
  * 鎵ф硶璇勪环棰樼洰Mapper鎺ュ彛
@@ -10,4 +11,7 @@
  */
 public interface EnforceEvaluateQuestionMapper extends BaseMapper<EnforceEvaluateQuestion> {
 
+    @Delete("delete from enforce_evaluate_question")
+    void clearQuestion();
+
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/mapper/EnforceOrderMapper.java b/project-enforce/src/main/java/com/project/enforce/mapper/EnforceOrderMapper.java
index 1624d80..4c291ba 100644
--- a/project-enforce/src/main/java/com/project/enforce/mapper/EnforceOrderMapper.java
+++ b/project-enforce/src/main/java/com/project/enforce/mapper/EnforceOrderMapper.java
@@ -1,7 +1,8 @@
 package com.project.enforce.mapper;
 
-import com.project.enforce.domain.EnforceOrder;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.project.common.vo.KeyVal;
+import com.project.enforce.domain.EnforceOrder;
 import com.project.enforce.domain.bo.queryBo.EnforceOrderQueryBo;
 import com.project.enforce.domain.vo.EnforceOrderVo;
 
@@ -17,4 +18,7 @@
 
     List<EnforceOrderVo> selectCheckList(EnforceOrderQueryBo bo);
 
+    List<KeyVal> getMonthCount(Long deptId);
+
+    List<KeyVal> getDeptCount(String yearMonth);
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateQuestionService.java b/project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateQuestionService.java
index e99a4d9..4417f3d 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateQuestionService.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateQuestionService.java
@@ -11,4 +11,9 @@
 public interface IEnforceEvaluateQuestionService extends IBaseService<EnforceEvaluateQuestion> {
 
 
+    /**
+     * 娓呯┖璇勪环椤瑰強绛旀
+     */
+    void clearQuestionAndAnswer();
+
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateService.java b/project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateService.java
index 7c79723..bf64516 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateService.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/IEnforceEvaluateService.java
@@ -20,6 +20,10 @@
      */
     Boolean save(EnforceEvaluateBo bo);
 
+    /**
+     * 璇勪环妯℃澘璇︽儏
+     * @return  璇勪环淇℃伅
+     */
     EnforceEvaluateVo getInfo();
 
 
diff --git a/project-enforce/src/main/java/com/project/enforce/service/IEnforceOrderService.java b/project-enforce/src/main/java/com/project/enforce/service/IEnforceOrderService.java
index deb4291..6a0c78e 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/IEnforceOrderService.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/IEnforceOrderService.java
@@ -1,10 +1,11 @@
 package com.project.enforce.service;
 
+import com.project.common.mybatis.IBaseService;
+import com.project.common.vo.KeyVal;
 import com.project.enforce.domain.EnforceOrder;
-import com.project.enforce.domain.vo.EnforceOrderVo;
 import com.project.enforce.domain.bo.editBo.EnforceOrderBo;
 import com.project.enforce.domain.bo.queryBo.EnforceOrderQueryBo;
-import com.project.common.mybatis.IBaseService;
+import com.project.enforce.domain.vo.EnforceOrderVo;
 
 import java.util.Collection;
 import java.util.List;
@@ -25,6 +26,12 @@
 	 * 鏌ヨ寰呭鏍稿垪琛�
 	 */
 	List<EnforceOrderVo> queryCheckList(EnforceOrderQueryBo bo);
+
+	/**
+	 * 淇℃伅鍏紡鍒楄〃
+	 * @return	鏁版嵁
+	 */
+	List<EnforceOrderVo> showList();
 
     /**
 	 * 鏌ヨ鍗曚釜
@@ -53,4 +60,20 @@
 	 * @return  true鎴愬姛 false澶辫触
 	 */
 	Boolean deleteByIds(Collection<Long> ids);
+
+
+	/**
+	 * 鎵ф硶娆℃暟鏈堝害鍒嗗竷
+	 * @param deptId	鏈烘瀯id
+	 * @return	鏈堝害鍒嗗竷
+	 */
+	List<KeyVal> getMonthCount(Long deptId);
+
+
+	/**
+	 * 鎵ф硶娆℃暟閮ㄩ棬鍒嗗竷
+	 * @param yearMonth	骞存湀
+	 * @return	閮ㄩ棬鍒嗗竷
+	 */
+	List<KeyVal> getDeptCount(String yearMonth);
 }
diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateQuestionServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateQuestionServiceImpl.java
index 9cbe5be..3d404ed 100644
--- a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateQuestionServiceImpl.java
+++ b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceEvaluateQuestionServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.project.enforce.domain.EnforceEvaluateQuestion;
+import com.project.enforce.mapper.EnforceEvaluateAnswerMapper;
 import com.project.enforce.mapper.EnforceEvaluateQuestionMapper;
 import com.project.enforce.service.IEnforceEvaluateQuestionService;
 import lombok.RequiredArgsConstructor;
@@ -17,7 +18,13 @@
 @RequiredArgsConstructor(onConstructor_ = @Autowired)
 public class EnforceEvaluateQuestionServiceImpl extends ServiceImpl<EnforceEvaluateQuestionMapper, EnforceEvaluateQuestion> implements IEnforceEvaluateQuestionService {
 
+    private final EnforceEvaluateQuestionMapper questionMapper;
+    private final EnforceEvaluateAnswerMapper answerMapper;
 
-
-
+    @Override//娓呯┖璇勪环椤瑰強绛旀
+    public void clearQuestionAndAnswer()
+    {
+        questionMapper.clearQuestion();
+        answerMapper.clearAnswer();
+    }
 }
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 d8fcbb8..6744ad0 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
@@ -36,6 +36,7 @@
     @Transactional
     public Boolean save(EnforceEvaluateBo bo)
     {
+        questionService.clearQuestionAndAnswer();
         List<EnforceEvaluateQuestion> questionList = bo.getQuestionList();
         if (StringUtils.isEmpty(questionList)){
             throw new BaseException("璇勪环椤逛笉鍙负绌猴紒");
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 bd34b92..25b35ac 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
@@ -11,6 +11,7 @@
 import com.project.common.exception.base.BaseException;
 import com.project.common.utils.SecurityUtils;
 import com.project.common.utils.StringUtils;
+import com.project.common.vo.KeyVal;
 import com.project.enforce.domain.EnforceOrder;
 import com.project.enforce.domain.bo.editBo.EnforceOrderBo;
 import com.project.enforce.domain.bo.queryBo.EnforceOrderQueryBo;
@@ -37,6 +38,7 @@
 public class EnforceOrderServiceImpl extends ServiceImpl<EnforceOrderMapper, EnforceOrder> implements IEnforceOrderService {
 
     private final ISysDeptService deptService;
+    private final EnforceOrderMapper orderMapper;
 
 
     @Override//鍒楄〃鏌ヨ
@@ -70,6 +72,13 @@
         bo.setApplyDeptIds(deptService.getApplyDeptIdsByLoginUserId(loginUser.getUserId()));
 
         return this.baseMapper.selectCheckList(bo);
+    }
+
+    @Override//淇℃伅鍏紡鍒楄〃
+    public List<EnforceOrderVo> showList()
+    {
+        List<EnforceOrder> list = this.list(lq().eq(EnforceOrder::getIsShow, 1));
+        return Convert.toList(EnforceOrderVo.class, list);
     }
 
     @Override//id鏌ヨ
@@ -108,6 +117,17 @@
         return this.removeByIds(ids);
     }
 
+    @Override//鏈堝害鍒嗗竷
+    public List<KeyVal> getMonthCount(Long deptId) {
+        return orderMapper.getMonthCount(deptId);
+    }
+
+    @Override//閮ㄩ棬鍒嗗竷
+    public List<KeyVal> getDeptCount(String yearMonth)
+    {
+        return orderMapper.getDeptCount(yearMonth);
+    }
+
 
 //-------------------------------------------------------------------------------------
 
diff --git a/project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml b/project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml
index fd174aa..0de0eb8 100644
--- a/project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml
+++ b/project-enforce/src/main/resources/mapper/enforce/EnforceOrderMapper.xml
@@ -60,7 +60,9 @@
         from sys_job_log
     </sql>
 
-    <select id="selectCheckList" parameterType="EnforceOrderQueryBo" resultMap="EnforceOrderResult">
+    <select id="selectCheckList"
+            parameterType="EnforceOrderQueryBo"
+            resultMap="EnforceOrderResult">
         <include refid="selectEnforceOrderVo"/>
         <where>
             <if test="orderNo != null and orderNo != ''">
@@ -88,10 +90,35 @@
                     #{applyDeptId}
                 </foreach>
             </if>
-
-
-
         </where>
     </select>
 
+    <select id="getMonthCount"
+            parameterType="Long"
+            resultType="com.project.common.vo.KeyVal">
+        select
+            MONTH(apply_time) AS k,
+            IFNULL(count(order_id),0) as v
+        from enforce_order
+        where 1=1
+        <if test="deptId != null ">
+            AND apply_dept_id = #{deptId}
+        </if>
+        GROUP BY k
+    </select>
+
+    <select id="getDeptCount"
+            parameterType="String"
+            resultType="com.project.common.vo.KeyVal">
+        select
+        MONTH(check_dept_id) AS k,
+        IFNULL(count(order_id),0) as v
+        from enforce_order
+        where 1=1
+        <if test="yearMonth!=null and yearMonth!=''">
+            AND apply_time like concat('%', #{yearMonth}, '%')
+        </if>
+        GROUP BY k
+    </select>
+
 </mapper>
diff --git a/project-framework/src/main/java/com/project/framework/aspectj/LogAspect.java b/project-framework/src/main/java/com/project/framework/aspectj/LogAspect.java
index 27a7081..cc89b0c 100644
--- a/project-framework/src/main/java/com/project/framework/aspectj/LogAspect.java
+++ b/project-framework/src/main/java/com/project/framework/aspectj/LogAspect.java
@@ -1,22 +1,5 @@
 package com.project.framework.aspectj;
 
-import java.util.Collection;
-import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import com.project.system.domain.SysOperLog;
-import org.aspectj.lang.JoinPoint;
-import org.aspectj.lang.annotation.AfterReturning;
-import org.aspectj.lang.annotation.AfterThrowing;
-import org.aspectj.lang.annotation.Aspect;
-import org.aspectj.lang.annotation.Before;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.core.NamedThreadLocal;
-import org.springframework.stereotype.Component;
-import org.springframework.validation.BindingResult;
-import org.springframework.web.multipart.MultipartFile;
 import com.alibaba.fastjson2.JSON;
 import com.project.common.annotation.Log;
 import com.project.common.core.domain.model.LoginUser;
@@ -29,10 +12,27 @@
 import com.project.common.utils.ip.IpUtils;
 import com.project.framework.manager.AsyncManager;
 import com.project.framework.manager.factory.AsyncFactory;
+import com.project.system.domain.SysOperLog;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.AfterReturning;
+import org.aspectj.lang.annotation.AfterThrowing;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Before;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.core.NamedThreadLocal;
+import org.springframework.stereotype.Component;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Collection;
+import java.util.Map;
 
 /**
  * 鎿嶄綔鏃ュ織璁板綍澶勭悊
- * 
+ *
  * @author project
  */
 @Aspect
@@ -69,7 +69,7 @@
 
     /**
      * 鎷︽埅寮傚父鎿嶄綔
-     * 
+     *
      * @param joinPoint 鍒囩偣
      * @param e 寮傚父
      */
@@ -84,7 +84,12 @@
         try
         {
             // 鑾峰彇褰撳墠鐨勭敤鎴�
-            LoginUser loginUser = SecurityUtils.getLoginUser();
+            LoginUser loginUser;
+            try {
+                loginUser = SecurityUtils.getLoginUser();
+            } catch (Exception be){
+                loginUser = null;
+            }
 
             // *========鏁版嵁搴撴棩蹇�=========*//
             SysOperLog operLog = new SysOperLog();
@@ -130,7 +135,7 @@
 
     /**
      * 鑾峰彇娉ㄨВ涓鏂规硶鐨勬弿杩颁俊鎭� 鐢ㄤ簬Controller灞傛敞瑙�
-     * 
+     *
      * @param log 鏃ュ織
      * @param operLog 鎿嶄綔鏃ュ織
      * @throws Exception
@@ -158,7 +163,7 @@
 
     /**
      * 鑾峰彇璇锋眰鐨勫弬鏁帮紝鏀惧埌log涓�
-     * 
+     *
      * @param operLog 鎿嶄綔鏃ュ織
      * @throws Exception 寮傚父
      */
@@ -213,7 +218,7 @@
 
     /**
      * 鍒ゆ柇鏄惁闇�瑕佽繃婊ょ殑瀵硅薄銆�
-     * 
+     *
      * @param o 瀵硅薄淇℃伅銆�
      * @return 濡傛灉鏄渶瑕佽繃婊ょ殑瀵硅薄锛屽垯杩斿洖true锛涘惁鍒欒繑鍥瀎alse銆�
      */
diff --git a/project-framework/src/main/java/com/project/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java b/project-framework/src/main/java/com/project/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java
index db4cc73..75c4e3d 100644
--- a/project-framework/src/main/java/com/project/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java
+++ b/project-framework/src/main/java/com/project/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java
@@ -1,6 +1,7 @@
 package com.project.framework.mybatisplus;
 
 import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
+import com.project.common.core.domain.model.LoginUser;
 import com.project.common.utils.SecurityUtils;
 import com.project.common.utils.StringUtils;
 import org.apache.ibatis.reflection.MetaObject;
@@ -18,45 +19,67 @@
 		String createBy = (String) this.getFieldValByName("createBy", metaObject);
 		Object createTime = this.getFieldValByName("createTime", metaObject);
 		if (StringUtils.isEmpty(createBy)) {
-			createBy = SecurityUtils.getLoginUser().getUser().getNickName();
+			LoginUser loginUser;
+			try {
+				loginUser = SecurityUtils.getLoginUser();
+			} catch (Exception e){
+				loginUser = null;
+			}
+
+			if (loginUser == null) {
+				createBy = "绯荤粺鎿嶄綔";
+			} else {
+				createBy = loginUser.getUser().getNickName();
+			}
 			this.setFieldValByName("createBy", createBy, metaObject);
 		}
-		if (createTime == null) {
-			createTime = new Date();
-			this.setFieldValByName("createTime", createTime, metaObject);
+			if (createTime == null) {
+				createTime = new Date();
+				this.setFieldValByName("createTime", createTime, metaObject);
+			}
+			//endregion
+			//region 澶勭悊淇敼浜轰俊鎭�
+			Object updateBy = this.getFieldValByName("updateBy", metaObject);
+			Object updateTime = this.getFieldValByName("updateTime", metaObject);
+			if (updateBy == null) {
+				updateBy = createBy;
+				this.setFieldValByName("updateBy", updateBy, metaObject);
+			}
+			if (updateTime == null) {
+				updateTime = createTime;
+				this.setFieldValByName("updateTime", updateTime, metaObject);
+			}
+			//endregion
 		}
-		//endregion
-		//region 澶勭悊淇敼浜轰俊鎭�
-		Object updateBy = this.getFieldValByName("updateBy", metaObject);
-		Object updateTime = this.getFieldValByName("updateTime", metaObject);
-		if (updateBy == null) {
-			updateBy = createBy;
+
+		@Override
+		public void updateFill(MetaObject metaObject) {
+			//region 澶勭悊淇敼浜轰俊鎭�
+			String updateBy;
+			LoginUser loginUser;
+			try {
+				loginUser = SecurityUtils.getLoginUser();
+			} catch (Exception e){
+				loginUser = null;
+			}
+			if (loginUser==null){
+				updateBy = "绯荤粺鎿嶄綔";
+			} else {
+				updateBy = loginUser.getUser().getNickName();
+			}
 			this.setFieldValByName("updateBy", updateBy, metaObject);
-		}
-		if (updateTime == null) {
-			updateTime = createTime;
+			Date updateTime = new Date();
 			this.setFieldValByName("updateTime", updateTime, metaObject);
+			//endregion
 		}
-		//endregion
-	}
 
-	@Override
-	public void updateFill(MetaObject metaObject) {
-		//region 澶勭悊淇敼浜轰俊鎭�
-		String updateBy = SecurityUtils.getLoginUser().getUser().getNickName();
-		this.setFieldValByName("updateBy", updateBy, metaObject);
-		Date updateTime = new Date();
-		this.setFieldValByName("updateTime", updateTime, metaObject);
-		//endregion
-	}
+		@Override
+		public boolean openInsertFill() {
+			return true;
+		}
 
-	@Override
-	public boolean openInsertFill() {
-		return true;
-	}
-
-	@Override
-	public boolean openUpdateFill() {
-		return true;
-	}
+		@Override
+		public boolean openUpdateFill() {
+			return true;
+		}
 }
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 50cf765..d0faebe 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
@@ -132,11 +132,11 @@
         int randomNum = ran.nextInt(10000);
         code = String.format("%04d", randomNum);
         log.info("鎵嬫満鍙凤細"+phone+"->楠岃瘉鐮侊細"+code);
-        boolean send = sendAl(phone, code);
-        if (send){
-            redisCache.setCacheObject(getCacheKey(phone), code, Constants.PHONE_EXPIRATION, TimeUnit.MINUTES);
-            return true;
-        }
+//        boolean send = sendAl(phone, code);
+//        if (send){
+//            redisCache.setCacheObject(getCacheKey(phone), code, Constants.PHONE_EXPIRATION, TimeUnit.MINUTES);
+//            return true;
+//        }
         redisCache.setCacheObject(getCacheKey(phone), code, Constants.PHONE_EXPIRATION, TimeUnit.MINUTES);
         return false;
     }
@@ -187,9 +187,22 @@
         if (!verified){
             throw new BaseException("鎵嬫満鍙烽獙璇佺爜鏍¢獙澶辫触锛�");
         }
-        SysUser user = userMapper.selectOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getPhonenumber,bo.getPhone()));
+        SysUser user = null;
+        if ("01".equals(bo.getUserType())){
+            user = userMapper.selectOne(new LambdaQueryWrapper<SysUser>()
+                    .eq(SysUser::getPhonenumber,bo.getPhone())
+                    .and(wrapper->wrapper.eq(SysUser::getUserType,"00").or().eq(SysUser::getUserType, "01")));
+        } else {
+            user = userMapper.selectOne(new LambdaQueryWrapper<SysUser>()
+                    .eq(SysUser::getPhonenumber,bo.getPhone())
+                    .eq(SysUser::getUserType,bo.getUserType())
+                    );
+        }
         if (user==null){
-            throw new BaseException("鎮ㄦ墜鏈哄彿灏氭湭娉ㄥ唽锛�");
+            throw new BaseException("鎮ㄦ墜鏈哄彿灏氭湭娉ㄥ唽鎴栨偍閫夋嫨鐧诲綍绫诲瀷鏈夎锛�");
+        }
+        if (!"0".equals(user.getStatus())){
+            throw new BaseException("鎮ㄨ处鍙峰凡鍋滅敤鎴栧緟瀹℃壒锛岃鑱旂郴钀ュ晢鍔炵鐞嗕汉鍛橈紒");
         }
         return this.login(user.getUserName(), user.getRecommendUser(), null, null);
     }
diff --git a/project-report/pom.xml b/project-report/pom.xml
new file mode 100644
index 0000000..c43d389
--- /dev/null
+++ b/project-report/pom.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>com.project</groupId>
+        <artifactId>sqys_admin</artifactId>
+        <version>3.8.5</version>
+    </parent>
+
+    <artifactId>project-report</artifactId>
+
+    <description>
+        report缁熻鎶ヨ〃
+    </description>
+
+    <dependencies>
+
+        <!-- 绯荤粺 -->
+        <dependency>
+            <groupId>com.project</groupId>
+            <artifactId>project-enforce</artifactId>
+        </dependency>
+
+    </dependencies>
+
+</project>
diff --git a/project-report/src/main/java/com/project/report/service/IReportService.java b/project-report/src/main/java/com/project/report/service/IReportService.java
new file mode 100644
index 0000000..0f5d6eb
--- /dev/null
+++ b/project-report/src/main/java/com/project/report/service/IReportService.java
@@ -0,0 +1,36 @@
+package com.project.report.service;
+
+import com.project.common.vo.KeyVal;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 鍔熻兘鎻忚堪锛�
+ *
+ * @author ZQN
+ * @version 1.0
+ */
+
+public interface IReportService
+{
+    /**
+     * 姹囨�绘暟鎹�
+     * @return  姹囨�绘暟鎹�
+     */
+    Map<String, Object> getTotalInfo();
+
+    /**
+     * 鎵ф硶娆℃暟鏈堝害鍒嗗竷
+     * @param deptId    閮ㄩ棬id
+     * @return  鎵ф硶娆℃暟
+     */
+    List<KeyVal> getMonthCount(Long deptId);
+
+    /**
+     * 鎵ф硶娆℃暟閮ㄩ棬鍒嗗竷
+     * @param yearMonth    骞存湀
+     * @return  鎵ф硶娆℃暟
+     */
+    List<KeyVal> getDeptCount(String yearMonth);
+}
diff --git a/project-report/src/main/java/com/project/report/service/impl/ReportServiceImpl.java b/project-report/src/main/java/com/project/report/service/impl/ReportServiceImpl.java
new file mode 100644
index 0000000..b3df464
--- /dev/null
+++ b/project-report/src/main/java/com/project/report/service/impl/ReportServiceImpl.java
@@ -0,0 +1,100 @@
+package com.project.report.service.impl;
+
+import com.project.common.core.domain.entity.SysDept;
+import com.project.common.core.domain.entity.SysUser;
+import com.project.common.vo.KeyVal;
+import com.project.enforce.domain.EnforceOrder;
+import com.project.enforce.service.IEnforceComplaintLogService;
+import com.project.enforce.service.IEnforceOrderService;
+import com.project.report.service.IReportService;
+import com.project.system.domain.SysCompany;
+import com.project.system.domain.SysDoc;
+import com.project.system.service.ISysCompanyService;
+import com.project.system.service.ISysDeptService;
+import com.project.system.service.ISysDocService;
+import com.project.system.service.ISysUserService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+ * 鍔熻兘鎻忚堪锛�
+ *
+ * @author ZQN
+ * @version 1.0
+ */
+
+@Service
+@RequiredArgsConstructor
+public class ReportServiceImpl implements IReportService
+{
+    private final ISysCompanyService companyService;
+    private final ISysDeptService deptService;
+    private final ISysUserService userService;
+    private final ISysDocService docService;
+    private final IEnforceOrderService orderService;
+    private final IEnforceComplaintLogService complaintLogService;
+
+    private final String[] months = {"1","2","3","4","5","6","7","8","9","10","11","12"};
+
+    @Override//姹囨��
+    public Map<String, Object> getTotalInfo()
+    {
+
+        int companyNum = companyService.count(companyService.lq().eq(SysCompany::getCompanyStatus, 0));
+        int enforceCompanyNum = orderService.count(orderService.lq().groupBy(EnforceOrder::getCompanyId));
+        int enforceDeptNum = deptService.count(deptService.lq().eq(SysDept::getParentId,100));
+        int enforceUserNum = userService.count(userService.lq().ne(SysUser::getUserType,"02"));
+        int enforceOrderNum = orderService.count();
+        int complaintNum = complaintLogService.count();
+        int docNum = docService.count(docService.lq().eq(SysDoc::getDocStatus,0));
+
+        Map<String, Object> result = new HashMap<>(7);
+        result.put("companyNum", companyNum);
+        result.put("enforceCompanyNum", enforceCompanyNum);
+        result.put("enforceDeptNum", enforceDeptNum);
+        result.put("enforceUserNum", enforceUserNum);
+        result.put("enforceOrderNum", enforceOrderNum);
+        result.put("complaintNum", complaintNum);
+        result.put("docNum", docNum);
+        return result;
+    }
+
+    @Override//鎵ф硶鍗曚綅鎵ф硶娆℃暟鏈堝害鍒嗗竷
+    public List<KeyVal> getMonthCount(Long deptId)
+    {
+        List<KeyVal> list = orderService.getMonthCount(deptId);
+        Map<String, Object> resultMap = list.stream().collect(Collectors.toMap(KeyVal::getK,KeyVal::getV));
+
+        return Arrays.stream(months).map(e -> {
+            KeyVal keyVal;
+            if (resultMap.get(e) == null) {
+                keyVal = new KeyVal(e, 0);
+            } else {
+                keyVal = new KeyVal(e, resultMap.get(e));
+            }
+            return keyVal;
+        }).collect(Collectors.toList());
+    }
+
+    @Override//鎵ф硶鍗曚綅鎵ф硶娆℃暟閮ㄩ棬鍒嗗竷
+    public List<KeyVal> getDeptCount(String yearMonth)
+    {
+        List<KeyVal> list = orderService.getDeptCount(yearMonth);
+        Map<String, Object> resultMap = list.stream().collect(Collectors.toMap(KeyVal::getK,KeyVal::getV));
+
+        List<SysDept> depts = deptService.list(deptService.lq().eq(SysDept::getParentId, 100));
+
+        return depts.stream().map(e -> {
+            KeyVal keyVal;
+            if (resultMap.get(e.getDeptId().toString()) == null) {
+                keyVal = new KeyVal(e.getDeptName(), 0);
+            } else {
+                keyVal = new KeyVal(e.getDeptName(), resultMap.get(e.getDeptId().toString()));
+            }
+            return keyVal;
+        }).collect(Collectors.toList());
+    }
+}
diff --git a/project-system/src/main/java/com/project/system/domain/bo/editBo/UserPhoneLoginBo.java b/project-system/src/main/java/com/project/system/domain/bo/editBo/UserPhoneLoginBo.java
index 7986144..db9a87a 100644
--- a/project-system/src/main/java/com/project/system/domain/bo/editBo/UserPhoneLoginBo.java
+++ b/project-system/src/main/java/com/project/system/domain/bo/editBo/UserPhoneLoginBo.java
@@ -21,4 +21,7 @@
 
     @ApiModelProperty(value = "楠岃瘉鐮�")
     private String code;
+
+    @ApiModelProperty(value = "鐧诲綍鐢ㄦ埛绫诲瀷锛�00钀ュ晢鍔�,01鎵ф硶,02浼佷笟")
+    private String userType;
 }
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 6db8ce0..d52b1ba 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,5 +1,6 @@
 package com.project.system.mapper;
 
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.project.common.core.domain.entity.SysDept;
 import org.apache.ibatis.annotations.Param;
 
@@ -10,7 +11,7 @@
  *
  * @author project
  */
-public interface SysDeptMapper
+public interface SysDeptMapper extends BaseMapper<SysDept>
 {
     /**
      * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁
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 cb94213..bd16bdf 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
@@ -2,6 +2,7 @@
 
 import com.project.common.core.domain.TreeSelect;
 import com.project.common.core.domain.entity.SysDept;
+import com.project.common.mybatis.IBaseService;
 
 import java.util.List;
 
@@ -10,7 +11,7 @@
  *
  * @author project
  */
-public interface ISysDeptService
+public interface ISysDeptService extends IBaseService<SysDept>
 {
     /**
      * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁
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 f8335ef..b4df7a6 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
@@ -62,6 +62,7 @@
         SysCompany add = Convert.convert(SysCompany.class, bo);
         add.setCompanyStatus(1);
         validEntityBeforeSave(add);
+        add.setCompanyStatus(0);
         boolean save = this.save(add);
         addCompanyUser(add, 0);
         return save;
@@ -198,6 +199,11 @@
             if (phoneCount>0){
                 throw new BaseException(String.format("%1$s锛屼紒涓氳仈绯荤數璇濆凡瀛樺湪锛�", entity.getCompanyName()));
             }
+            SysUser user = new SysUser();
+            user.setPhonenumber(entity.getCompanyPhone());
+            if (UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
+                throw new BaseException(String.format("%1$s锛屼紒涓氳仈绯荤數璇濆凡瀛樺湪锛岃鏇存崲鎵嬫満鍙凤紒", entity.getCompanyName()));
+            }
         } else {
             int codeCount = this.count(lq().eq(SysCompany::getCompanyCode, entity.getCompanyCode()).ne(SysCompany::getCompanyId,entity.getCompanyId()));
             if (codeCount>0){
@@ -242,6 +248,11 @@
             errorList.add(new ImportError(0, "浼佷笟鍚嶅凡瀛樺湪锛�"));
         }
         int phoneCount = this.count(lq().eq(SysCompany::getCompanyPhone, entity.getCompanyPhone()));
+        SysUser user = new SysUser();
+        user.setPhonenumber(entity.getCompanyPhone());
+        if (UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
+            errorList.add(new ImportError(3, "浼佷笟鑱旂郴鐢佃瘽绯荤粺涓凡瀛樺湪锛岃鏇存崲鐢佃瘽锛�"));
+        }
         if (phoneCount>0){
             errorList.add(new ImportError(3, "浼佷笟鑱旂郴鐢佃瘽宸插瓨鍦紒"));
         }
@@ -285,7 +296,6 @@
         {
             return;
         }
-        user.setCreateBy(SecurityUtils.getUsername());
         user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
         userService.insertUser(user);
     }
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 8d17372..9d3b4be 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
@@ -1,5 +1,6 @@
 package com.project.system.service.impl;
 
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.project.common.annotation.DataScope;
 import com.project.common.constant.UserConstants;
 import com.project.common.core.domain.TreeSelect;
@@ -14,7 +15,7 @@
 import com.project.system.mapper.SysDeptMapper;
 import com.project.system.mapper.SysRoleMapper;
 import com.project.system.service.ISysDeptService;
-import org.springframework.beans.factory.annotation.Autowired;
+import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
@@ -28,13 +29,11 @@
  * @author project
  */
 @Service
-public class SysDeptServiceImpl implements ISysDeptService
+@RequiredArgsConstructor
+public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> implements ISysDeptService
 {
-    @Autowired
-    private SysDeptMapper deptMapper;
-
-    @Autowired
-    private SysRoleMapper roleMapper;
+    private final SysDeptMapper deptMapper;
+    private final SysRoleMapper roleMapper;
 
     /**
      * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁
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 8c9c811..50ef0de 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
@@ -284,6 +284,7 @@
         userPostMapper.deleteUserPostByUserId(userId);
         // 鏂板鐢ㄦ埛涓庡矖浣嶇鐞�
         insertUserPost(user);
+
         return userMapper.updateUser(user);
     }
 

--
Gitblit v1.9.1