From 8218eb29f22c7ca0af555d3d2bb7d2f6e2de32b0 Mon Sep 17 00:00:00 2001
From: lxw <810412026@qq.com>
Date: 星期三, 13 七月 2022 15:37:07 +0800
Subject: [PATCH] 用户管理提交

---
 src/main/java/com/whyc/service/DocUserService.java |   73 ++++++++++++++++++++++++++++++++----
 1 files changed, 65 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/whyc/service/DocUserService.java b/src/main/java/com/whyc/service/DocUserService.java
index 15fcaf9..d1db6be 100644
--- a/src/main/java/com/whyc/service/DocUserService.java
+++ b/src/main/java/com/whyc/service/DocUserService.java
@@ -1,40 +1,97 @@
 package com.whyc.service;
 
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
+import com.whyc.constant.YamlProperties;
+import com.whyc.dto.Page;
 import com.whyc.dto.Response;
 import com.whyc.mapper.DocUserMapper;
 import com.whyc.pojo.DocUser;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.system.ApplicationHome;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
+import java.io.File;
+import java.io.IOException;
 import java.util.List;
+
+import static com.whyc.util.ActionUtil.createFilefolderIFNotExist;
 
 @Service
 public class DocUserService {
     @Autowired(required = false)
     private DocUserMapper mapper;
 
+    @Autowired
+    private DocFaceService faceService;
+
     //鏌ヨ鎵�鏈夌敤鎴蜂俊鎭�
-    public Response getAllUser() {
+    public Response getAllUser(Page page) {
+        PageHelper.startPage(page.getPageCurr(),page.getPageSize());
         List<DocUser> list=mapper.getAllUser();
         PageInfo pageInfo=new PageInfo(list);
         return new Response().setII(1,list!=null?true:false,pageInfo,"鏁版嵁杩斿洖");
     }
     //缂栬緫鎵�鏈夌敤鎴蜂俊鎭�
-    public Response updateAllUser(DocUser docUser) {
+    public Response updateAllUser(MultipartFile file,DocUser docUser) {
+        int faceId=(docUser.getFaceId()==null||docUser.getFaceId().isEmpty())?0:Integer.valueOf(docUser.getFaceId());
+        //妫�娴嬫槸鍚﹀瓨鍦ㄩ噸鏂颁笂浼犵殑浜鸿劯
+        faceId=checkFaceData(file,faceId);
         UpdateWrapper wrapper=new UpdateWrapper();
-        wrapper.eq("tel",docUser.getTel());
-        wrapper.eq("phone",docUser.getPhone());
-        wrapper.eq("depart_id",docUser.getDepartId());
-        wrapper.eq("face_id",docUser.getFaceId());
-        wrapper.eq("role_id",docUser.getRoleId());
+        wrapper.set("tel",docUser.getTel());
+        wrapper.set("phone",docUser.getPhone());
+        wrapper.set("depart_id",docUser.getDepartId());
+        wrapper.set("face_id",faceId);
+        wrapper.set("role_id",docUser.getRoleId());
+        wrapper.eq("id",docUser.getId());
         int bl=mapper.update(null,wrapper);
         return new Response().set(1,bl>0?true:false);
     }
     //鏂版坊鍔犵敤鎴蜂俊鎭�
-    public Response addUser(DocUser docUser) {
+    public Response addUser(MultipartFile file,DocUser docUser) {
+        int faceId=(docUser.getFaceId()==null||docUser.getFaceId().isEmpty())?0:Integer.valueOf(docUser.getFaceId());
+        //妫�娴嬫槸鍚﹀瓨鍦ㄩ噸鏂颁笂浼犵殑浜鸿劯
+        faceId=checkFaceData(file,faceId);
+        docUser.setFaceId(String.valueOf(faceId));
         int bl=mapper.insert(docUser);
         return new Response().set(1,bl>0?true:false);
     }
+
+    //妫�娴嬫槸鍚﹀瓨鍦ㄩ噸鏂颁笂浼犵殑浜鸿劯
+    public int checkFaceData(MultipartFile file,int faceId){
+        String fileDirName = "";
+        ApplicationHome applicationHome = new ApplicationHome(getClass());
+        File jarFile = applicationHome.getDir();
+        if( 1 == YamlProperties.runModel){
+            fileDirName = jarFile.getParentFile().toString();
+        }else{
+            //鎵撳寘鐗�
+            fileDirName = jarFile.toString();
+        }
+        String root=fileDirName+"/face/"+File.separator;
+        if(file.isEmpty()){
+            faceId=0;
+        }else{
+            String fileFileName = file.getOriginalFilename();
+            String filePath = root + fileFileName;
+            createFilefolderIFNotExist(filePath);
+            try {
+                file.transferTo(new File(filePath));
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+            if(faceId==0){
+                //鎻掑叆鏂板浘鐗囧悓鏃惰幏鍙栦汉鑴竔d
+                faceId=faceService.getNewFaceId();
+                //褰曞叆鏂扮殑浜鸿劯
+                faceService.setNewFace(faceId,filePath);
+            }else{
+                //淇敼鏃х殑浜鸿劯
+                faceService.updateFace(faceId,filePath);
+            }
+        }
+        return faceId;
+    }
 }

--
Gitblit v1.9.1