| | |
| | | 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.FileDirPath; |
| | | 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(int pageCurr,int pageSize) { |
| | | PageHelper.startPage(pageCurr,pageSize); |
| | | 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 = FileDirPath.getFileDirName(); |
| | | String root=fileDirName+File.separator+"face"+File.separator; |
| | | if(file.isEmpty()){ |
| | | return faceId; |
| | | }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){ |
| | | //插入新图片同时获取人脸id |
| | | faceId=faceService.getNewFaceId(); |
| | | //录入新的人脸 |
| | | faceService.setNewFace(faceId,filePath); |
| | | }else{ |
| | | //修改旧的人脸 |
| | | faceService.updateFace(faceId,filePath); |
| | | } |
| | | } |
| | | return faceId; |
| | | } |
| | | } |