From 0ce15190cdc3aa3654dd6ad67afaa1adba631851 Mon Sep 17 00:00:00 2001
From: jiaosong <jiaosong6760@dingtalk.com>
Date: 星期二, 05 十二月 2023 10:14:35 +0800
Subject: [PATCH] #劳务人员禁启用

---
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java  |   13 ++++++
 server/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java           |    9 ++++
 server/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java             |    8 ++++
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java |   14 +++++-
 server/dmvisit_admin/src/main/java/com/doumee/api/business/MemberController.java              |   27 +++++++++++++
 5 files changed, 66 insertions(+), 5 deletions(-)

diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java
index 8f69c70..122e391 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java
@@ -39,6 +39,14 @@
         return ApiResponse.success(companyService.create(company));
     }
 
+    @PreventRepeat
+    @ApiOperation("鍒涘缓鍔冲姟鍏徃")
+    @PostMapping("/createLaborServices")
+    @RequiresPermissions("business:company:create")
+    public ApiResponse<Integer> createLaborServices(@RequestBody Company company){
+        return ApiResponse.success(companyService.createLaborServices(company));
+    }
+
     @ApiOperation("鏍规嵁ID鍒犻櫎")
     @GetMapping("/delete/{id}")
     @RequiresPermissions("business:company:delete")
diff --git a/server/dmvisit_admin/src/main/java/com/doumee/api/business/MemberController.java b/server/dmvisit_admin/src/main/java/com/doumee/api/business/MemberController.java
index 181333b..ba74171 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/api/business/MemberController.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/api/business/MemberController.java
@@ -6,11 +6,13 @@
 import com.doumee.core.model.ApiResponse;
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.model.PageData;
+import com.doumee.dao.admin.request.LaborMemberDTO;
+import com.doumee.dao.admin.response.MemberInfoDTO;
 import com.doumee.dao.business.model.Member;
 import com.doumee.service.business.MemberService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import javax.servlet.http.HttpServletResponse;
@@ -36,6 +38,14 @@
     @RequiresPermissions("business:member:create")
     public ApiResponse create(@RequestBody Member member) {
         return ApiResponse.success(memberService.create(member));
+    }
+
+    @PreventRepeat
+    @ApiOperation("鍒涘缓鍔冲姟浜哄憳淇℃伅")
+    @PostMapping("/laborMemberCreate")
+    @RequiresPermissions("business:member:create")
+    public ApiResponse<Integer> laborMemberCreate(@RequestBody LaborMemberDTO member){
+        return ApiResponse.success(memberService.laborMemberCreate(member));
     }
 
     @ApiOperation("鏍规嵁ID鍒犻櫎")
@@ -67,6 +77,14 @@
         return ApiResponse.success(null);
     }
 
+    @ApiOperation("鏍规嵁ID 绂佸惎鐢� 鎷夐粦")
+    @PostMapping("/updateStatusById")
+    @RequiresPermissions("business:member:update")
+    public ApiResponse updateStatusById(@RequestBody Member member){
+        memberService.updateStatusById(member);
+        return ApiResponse.success(null);
+    }
+
     @ApiOperation("鍒嗛〉鏌ヨ")
     @PostMapping("/page")
     @RequiresPermissions("business:member:query")
@@ -74,6 +92,13 @@
         return ApiResponse.success(memberService.findPage(pageWrap));
     }
 
+    @ApiOperation("鍒嗛〉鍔冲姟鐢ㄦ埛淇℃伅鏌ヨ")
+    @PostMapping("/findLaborMemberInfoPage")
+    @RequiresPermissions("business:member:query")
+    public ApiResponse<PageData<MemberInfoDTO>> findLaborMemberInfoPage(@RequestBody PageWrap<MemberInfoDTO> pageWrap){
+        return ApiResponse.success(memberService.findLaborMemberInfoPage(pageWrap));
+    }
+
     @ApiOperation("瀵煎嚭Excel")
     @PostMapping("/exportExcel")
     @RequiresPermissions("business:member:exportExcel")
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
index 123bcf2..b84b44a 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
@@ -1,5 +1,6 @@
 package com.doumee.service.business;
 
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.dao.admin.request.LaborMemberDTO;
@@ -58,6 +59,14 @@
      */
     void updateById(Member member);
 
+
+    /**
+     * 涓婚敭鏇存柊鍔冲姟浜哄憳鐘舵��
+     *
+     * @param member 瀹炰綋瀵硅薄
+     */
+    void updateStatusById(Member member);
+
     /**
      * 鎵归噺涓婚敭鏇存柊
      *
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
index 1009c4a..5958cf0 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
@@ -24,6 +24,7 @@
 import org.springframework.stereotype.Service;
 import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 浼佷笟淇℃伅琛⊿ervice瀹炵幇
@@ -255,9 +256,16 @@
                 .eq(Company::getType,Constants.ZERO)
                 .eq(Company::getName,company.getName());
         List<Company> companies = companyMapper.selectList(wrapper);
-
-        if (CollectionUtils.isNotEmpty(companies)){
-            throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"浼佷笟淇℃伅宸插瓨鍦�");
+        if (CollectionUtils.isEmpty(companies)){
+            return;
+        }
+        //鏂板鐨勬儏鍐靛瓨鍦ㄨ褰�
+        if (Objects.isNull(company.getId())){
+            throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"鍏徃鍚嶇О宸插瓨鍦�");
+        }
+        //淇敼鐨勬儏鍐靛瓨鍦ㄨ褰� 鍖归厤涓嶅埌 own
+        if (!companies.stream().map(s -> s.getId()).anyMatch(s -> s.equals(company.getId()))){
+            throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"鍏徃鍚嶇О宸插瓨鍦�");
         }
     }
 }
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index 5e60a0b..7bb37f3 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -3,6 +3,7 @@
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.IdcardUtil;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.LoginUserInfo;
@@ -74,7 +75,7 @@
         //鑾峰彇鍑虹敓鏃ユ湡
         String birthByIdCard = IdcardUtil.getBirthByIdCard(member.getIdcardNo());
         //鑴辨晱鎿嶄綔
-        String hide = IdcardUtil.hide(member.getIdcardNo(), 6, 14);
+        String hide = IdcardUtil.hide(member.getIdcardNo(), 5, 14);
         //杞崲鏃ユ湡
         DateTime yyyyMMdd = DateUtil.parse(birthByIdCard, "yyyyMMdd");
 
@@ -138,6 +139,16 @@
     }
 
     @Override
+    public void updateStatusById(Member member) {
+        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        Member update = new Member();
+        update.setEditDate(new Date());
+        update.setEditor(loginUserInfo.getId());
+        update.setStatus(member.getStatus());
+        memberMapper.updateById(update);
+    }
+
+    @Override
     public void updateByIdInBatch(List<Member> members) {
         if (CollectionUtils.isEmpty(members)) {
             return;

--
Gitblit v1.9.3