From 0bac87005199be1c535b36b031b2b8f59e1461c0 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期三, 15 五月 2024 09:41:48 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit
---
server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/request/MemberImport.java | 32 ++++++++++++++++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java | 3 +
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java | 17 +++++++-
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 30 +++++++++++++++
4 files changed, 79 insertions(+), 3 deletions(-)
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
index 2550487..78dad97 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
@@ -10,18 +10,21 @@
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.dao.admin.request.LaborMemberDTO;
+import com.doumee.dao.admin.request.MemberImport;
import com.doumee.dao.admin.request.MemberQuery;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.MemberRole;
import com.doumee.service.business.MemberService;
import com.doumee.service.business.ext.ERPSyncService;
import com.doumee.service.business.impl.hksync.fhk.HkSyncOrgUserFromHKServiceImpl;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.*;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
+import java.io.File;
import java.util.ArrayList;
import java.util.List;
/**
@@ -156,7 +159,15 @@
return ApiResponse.success(null);
}
-
+ @ApiOperation(value = "浜哄憳淇℃伅瀵煎叆" ,notes = "淇濆崟鐢宠")
+ @PostMapping("/importExcel")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "file", value = "file", required = true, paramType = "query", dataType = "file", dataTypeClass = File.class),
+ })
+ @RequiresPermissions("business:worktype:create")
+ public ApiResponse<String> importExcel (@ApiParam(value = "file") MultipartFile file, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(memberService.importBatch(file,this.getLoginUser(token)));
+ }
@ApiOperation("鎵归噺鎷夐粦")
@GetMapping("/batchBlock")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/request/MemberImport.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/request/MemberImport.java
new file mode 100644
index 0000000..910d847
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/admin/request/MemberImport.java
@@ -0,0 +1,32 @@
+package com.doumee.dao.admin.request;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 鍛樺伐淇℃伅瀵煎叆琛�
+ * @author 姹熻箘韫�
+ * @date 2024/01/16 10:03
+ */
+@Data
+@ApiModel("鍛樺伐淇℃伅瀵煎叆")
+public class MemberImport {
+
+ @ExcelColumn(name="搴忓彿",value = "sn")
+ private Integer sn;
+
+ @ExcelColumn(name="濮撳悕",value = "name")
+ private String name;
+
+ @ExcelColumn(name="韬唤璇佸彿",value = "idcardNo")
+ private String idcardNo;
+
+ @ExcelColumn(name="鎵�灞炵粍缁�" , value = "companyName")
+ private String companyName;
+
+ @ExcelColumn(name="宸ュ彿" , value = "code")
+ private String code;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
index 8193db2..c7b31f0 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
@@ -14,6 +14,7 @@
import com.doumee.dao.web.reqeust.VisitMemberDTO;
import com.doumee.dao.web.response.MemberVO;
import com.doumee.dao.web.response.WxAuthorizeVO;
+import org.springframework.web.multipart.MultipartFile;
import java.util.List;
@@ -203,4 +204,6 @@
void updateWorkStatus(Member member);
void batchRoleAuth(Member memberRole);
+
+ String importBatch(MultipartFile file, LoginUserInfo loginUser);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index d6d06ff..b0e9327 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -29,6 +29,7 @@
import com.doumee.core.wx.WXConstant;
import com.doumee.dao.admin.request.LaborEmpowerDTO;
import com.doumee.dao.admin.request.LaborMemberDTO;
+import com.doumee.dao.admin.request.MemberImport;
import com.doumee.dao.admin.request.MemberQuery;
import com.doumee.dao.admin.response.StagingDataVO;
import com.doumee.dao.business.*;
@@ -58,6 +59,7 @@
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.multipart.MultipartFile;
import java.util.Date;
import java.util.*;
@@ -1686,6 +1688,34 @@
return stagingHeadVO;
}
+ @Override
+ public String importBatch(MultipartFile file, LoginUserInfo loginUserInfo){
+
+ List<Member> list = memberJoinMapper.selectJoinList(Member.class,new MPJLambdaWrapper<Member>()
+ .selectAll(Member.class)
+ .leftJoin(Company.class,Company::getId,Member::getCompanyId)
+ .eq(Member::getIsdeleted,Constants.ZERO)
+ );
+ ExcelImporter ie = null;
+ List<MemberImport> dataList =null;
+ try {
+ ie = new ExcelImporter(file,0,0);
+ dataList = ie.getDataList(MemberImport.class,null);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ if(dataList == null || dataList.size() ==0){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝褰曞叆鏁版嵁涓虹┖锛�");
+ }
+ List<String> idCardList = dataList.stream().map(m->m.getIdcardNo()).collect(Collectors.toList());
+ Set<String> set = new HashSet<>(idCardList);
+ if(idCardList.size() != set.size()){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝褰曞叆鏁版嵁瀛樺湪韬唤璇佸彿鐩稿悓鏁版嵁锛�");
+ }
+
+ return "瀵煎叆鎴愬姛";
+ }
+
}
--
Gitblit v1.9.3