فهرست منبع

Merge branch '20211202_imgTobase'

x-rf 3 سال پیش
والد
کامیت
e3f37d6a11
24فایلهای تغییر یافته به همراه812 افزوده شده و 12 حذف شده
  1. 131 0
      src/main/java/com/yx/face/boot/uitls/Base64Util.java
  2. 74 0
      src/main/java/com/yx/face/boot/uitls/DownLoad.java
  3. 22 0
      src/main/java/com/yx/face/dao/UserBlackListFromDao.java
  4. 15 0
      src/main/java/com/yx/face/dao/UserFaceRecordsFromDao.java
  5. 15 0
      src/main/java/com/yx/face/dao/UserInfoFromDao.java
  6. 15 0
      src/main/java/com/yx/face/dao/UserVisitorListFromDao.java
  7. 11 0
      src/main/java/com/yx/face/dao/UserWhiteListFromDao.java
  8. 27 0
      src/main/java/com/yx/face/model/entity/UserBlackListFrom.java
  9. 21 0
      src/main/java/com/yx/face/model/entity/UserFaceRecordsFrom.java
  10. 21 0
      src/main/java/com/yx/face/model/entity/UserInfoFrom.java
  11. 22 0
      src/main/java/com/yx/face/model/entity/UserVisitorListFrom.java
  12. 22 0
      src/main/java/com/yx/face/model/entity/UserWhitelistFrom.java
  13. 67 0
      src/main/java/com/yx/face/service/Aspect/UserBlackListDaoAspect.java
  14. 67 0
      src/main/java/com/yx/face/service/Aspect/UserFaceRecordsDaoAspect.java
  15. 67 0
      src/main/java/com/yx/face/service/Aspect/UserInfoDaoAspect.java
  16. 66 0
      src/main/java/com/yx/face/service/Aspect/UserVisitorListDaoAspect.java
  17. 65 0
      src/main/java/com/yx/face/service/Aspect/UserWhiteListDaoAspect.java
  18. 6 4
      src/main/java/com/yx/face/service/impl/UserInfoServiceImpl.java
  19. 13 8
      src/main/java/com/yx/face/service/impl/UserVisitorListServiceImpl.java
  20. 13 0
      src/main/resources/mapper/UserBlackListFromDao.xml
  21. 13 0
      src/main/resources/mapper/UserFaceRecordsFromDao.xml
  22. 13 0
      src/main/resources/mapper/UserInfoFromDao.xml
  23. 13 0
      src/main/resources/mapper/UserVisitorListFromDao.xml
  24. 13 0
      src/main/resources/mapper/UserWhiteListFromDao.xml

+ 131 - 0
src/main/java/com/yx/face/boot/uitls/Base64Util.java

@@ -0,0 +1,131 @@
+package com.yx.face.boot.uitls;
+
+/**
+ * @description:
+ * @ClassName Base64Util
+ * @Author WXG
+ * @Date 2021/12/2 14:06
+ */
+import sun.misc.BASE64Decoder;
+import sun.misc.BASE64Encoder;
+
+import java.io.*;
+
+/**
+ * Base64 转换工具
+ */
+public class Base64Util {
+
+    /**
+     * byte数组 转换为 Base64字符串
+     */
+    public static String encode(byte[] data) {
+        return new BASE64Encoder().encode(data);
+    }
+
+    /**
+     * Base64字符串 转换为 byte数组
+     */
+    public static byte[] decode(String base64) {
+        try {
+            return new BASE64Decoder().decodeBuffer(base64);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return new byte[0];
+    }
+
+    /**
+     * 把文件内容编码为 Base64字符串, 只能编码小文件(例如文本、图片等)
+     */
+    public static String encodeFile(File file) throws Exception {
+        InputStream in = null;
+        ByteArrayOutputStream bytesOut = null;
+
+        try {
+            in = new FileInputStream(file);
+            bytesOut = new ByteArrayOutputStream((int) file.length());
+
+            byte[] buf = new byte[1024];
+            int len = -1;
+
+            while ((len = in.read(buf)) != -1) {
+                bytesOut.write(buf, 0, len);
+            }
+            bytesOut.flush();
+
+            return encode(bytesOut.toByteArray());
+
+        } finally {
+            close(in);
+            close(bytesOut);
+        }
+    }
+    /**
+     * 根据图片路径转为Base的字符串
+     */
+    public static String encodeFile(String filePath) throws Exception {
+        File file = new File(filePath);
+        return encodeFile(file);
+    }
+    /**
+     * 把 Base64字符串 转换为 byte数组, 保存到指定文件
+     */
+    public static void decodeFile(String base64, File file) throws Exception {
+        OutputStream fileOut = null;
+        try {
+            fileOut = new FileOutputStream(file);
+            fileOut.write(decode(base64));
+            fileOut.flush();
+        } finally {
+            close(fileOut);
+        }
+    }
+    /*
+    * 把url的图片下载下来并转为byte[]
+    * */
+    public static byte[] getByteArrayFromUrl(String url){
+        String base64 = DownLoad.tranUrlToBase64String(url);
+        return decode(base64);
+    }
+
+
+    private static void close(Closeable c) {
+        if (c != null) {
+            try {
+                c.close();
+            } catch (IOException e) {
+                // nothing
+            }
+        }
+    }
+
+    @SuppressWarnings("finally")
+    public static boolean GenerateImage(String imgData, String imgFilePath) throws IOException { // 对字节数组字符串进行Base64解码并生成图片
+        if (imgData == null){
+            return false;
+        }
+        BASE64Decoder decoder = new BASE64Decoder();
+        OutputStream out = null;
+        try {
+            out = new FileOutputStream(imgFilePath);
+            // Base64解码
+            byte[] b = decoder.decodeBuffer(imgData.replace("data:image/jpeg;base64,", ""));
+            for (int i = 0; i < b.length; ++i) {
+                if (b[i] < 0) {// 调整异常数据
+                    b[i] += 256;
+                }
+            }
+            out.write(b);
+        } catch (FileNotFoundException e) {
+            e.printStackTrace();
+        } catch (IOException e) {
+            e.printStackTrace();
+        } finally {
+            out.flush();
+            out.close();
+            return true;
+        }
+    }
+}
+

+ 74 - 0
src/main/java/com/yx/face/boot/uitls/DownLoad.java

@@ -0,0 +1,74 @@
+package com.yx.face.boot.uitls;
+
+import sun.misc.BASE64Encoder;
+
+import java.io.*;
+import java.net.HttpURLConnection;
+import java.net.MalformedURLException;
+import java.net.URL;
+
+/**
+ * @ClassName DownLoad
+ * @Description
+ * @Author xrf
+ * @Date 2021/12/2 15:52
+ */
+public class DownLoad {
+    private static void downloadPicture(String urlList,String path) {
+        try {
+            URL url = new URL(urlList);
+            DataInputStream dataInputStream = new DataInputStream(url.openStream());
+            FileOutputStream fileOutputStream = new FileOutputStream(new File(path));
+            ByteArrayOutputStream output = new ByteArrayOutputStream();
+
+            byte[] buffer = new byte[1024];
+            int length;
+
+            while ((length = dataInputStream.read(buffer)) > 0) {
+                output.write(buffer, 0, length);
+            }
+            fileOutputStream.write(output.toByteArray());
+            dataInputStream.close();
+            fileOutputStream.close();
+        } catch (MalformedURLException e) {
+            e.printStackTrace();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+
+    /**
+     * url转Base63
+     * @param url
+     * @return
+     */
+    public static String tranUrlToBase64String(String url){
+        try {
+            URL urlImg = new URL(url);
+            HttpURLConnection httpURLConnection = (HttpURLConnection) urlImg.openConnection();
+            httpURLConnection.addRequestProperty("User-Agent","Mozilla / 4.76");
+            InputStream is = httpURLConnection.getInputStream();
+            //定义字节数组大小;
+            byte[] buffer = new byte[1024];
+            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+            int rc =0 ;
+            while((rc = is.read(buffer,0,100))>0){
+                byteArrayOutputStream.write(buffer,0,rc);
+            }
+            buffer = byteArrayOutputStream.toByteArray();
+            BASE64Encoder encoder = new BASE64Encoder();
+            return encoder.encode(buffer);
+
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+//    public static void main(String[] args) throws IOException {
+//        String s = tranUrlToBase64String("https://ldb-airport.hz-hanghui.com:9100/data/hanghui/16375779864021cec7bf9ad7f4685973b4da438faf08a.png");
+//
+//        Base64Util.GenerateImage(s,"d:/8.jpg");
+//    }
+}
+

+ 22 - 0
src/main/java/com/yx/face/dao/UserBlackListFromDao.java

@@ -0,0 +1,22 @@
+package com.yx.face.dao;
+
+import com.yx.face.boot.component.tk.TKMapper;
+import com.yx.face.model.entity.UserBlackListFrom;
+import com.yx.face.model.entity.UserFaceRecords;
+import lombok.Data;
+
+import javax.persistence.*;
+
+/**
+ * @description:
+ * @ClassName UserBlackListFrom
+ * @Author WXG
+ * @Date 2021/12/2 14:20
+ */
+
+public interface UserBlackListFromDao extends TKMapper<UserBlackListFrom> {
+
+    Integer updateByForgeinId(UserBlackListFrom userBlackListFrom);
+
+    Integer delteByForgeinId(Integer forgeinId);
+}

+ 15 - 0
src/main/java/com/yx/face/dao/UserFaceRecordsFromDao.java

@@ -0,0 +1,15 @@
+package com.yx.face.dao;
+
+import com.yx.face.boot.component.tk.TKMapper;
+import com.yx.face.model.entity.UserBlackListFrom;
+import com.yx.face.model.entity.UserFaceRecordsFrom;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface UserFaceRecordsFromDao extends TKMapper<UserFaceRecordsFrom> {
+
+    Integer updateByForgeinId(UserFaceRecordsFrom userFaceRecordsFrom);
+
+    Integer delteByForgeinId(Long forgeinId);
+}

+ 15 - 0
src/main/java/com/yx/face/dao/UserInfoFromDao.java

@@ -0,0 +1,15 @@
+package com.yx.face.dao;
+
+import com.yx.face.boot.component.tk.TKMapper;
+import com.yx.face.model.entity.UserFaceRecordsFrom;
+import com.yx.face.model.entity.UserInfoFrom;
+import org.apache.ibatis.annotations.Param; 
+
+import java.util.List;
+
+public interface UserInfoFromDao extends TKMapper<UserInfoFrom> {
+
+    Integer updateByForgeinId(UserInfoFrom userInfoFrom);
+
+    Integer delteByForgeinId(Long forgeinId);
+}

+ 15 - 0
src/main/java/com/yx/face/dao/UserVisitorListFromDao.java

@@ -0,0 +1,15 @@
+package com.yx.face.dao;
+
+import com.yx.face.boot.component.tk.TKMapper;
+import com.yx.face.model.entity.UserInfoFrom;
+import com.yx.face.model.entity.UserVisitorListFrom;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface UserVisitorListFromDao extends TKMapper<UserVisitorListFrom> {
+
+    Integer updateByForgeinId(UserVisitorListFrom userVisitorListFrom);
+
+    Integer delteByForgeinId(Integer forgeinId);
+}

+ 11 - 0
src/main/java/com/yx/face/dao/UserWhiteListFromDao.java

@@ -0,0 +1,11 @@
+package com.yx.face.dao;
+
+import com.yx.face.boot.component.tk.TKMapper;
+import com.yx.face.model.entity.UserWhitelistFrom;
+
+public interface UserWhiteListFromDao extends TKMapper<UserWhitelistFrom> {
+
+    Integer updateByForgeinId(UserWhitelistFrom userWhitelistFrom);
+
+    Integer delteByForgeinId(Integer forgeinId);
+}

+ 27 - 0
src/main/java/com/yx/face/model/entity/UserBlackListFrom.java

@@ -0,0 +1,27 @@
+package com.yx.face.model.entity;
+
+import lombok.Data;
+
+import javax.persistence.*;
+import java.sql.Blob;
+
+/**
+ * @description:
+ * @ClassName UserBlackListFrom
+ * @Author WXG
+ * @Date 2021/12/2 14:20
+ */
+@Data
+@Table(name = "user_black_list_from")
+public class UserBlackListFrom {
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Long id;
+
+    @Column(name = "user_black_list_id")
+    private Integer userBlackListId;
+
+    @Column(name = "img_base")
+    private byte[] imgBase;
+}

+ 21 - 0
src/main/java/com/yx/face/model/entity/UserFaceRecordsFrom.java

@@ -0,0 +1,21 @@
+package com.yx.face.model.entity;
+
+import lombok.Data;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+
+@Data
+@Table(name = "user_face_records_from")
+public class UserFaceRecordsFrom{
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Long id;
+
+    @Column(name = "user_face_records_id")
+    private Long userFaceRecordsId;
+
+    @Column(name = "img_base")
+    private byte[] imgBase;
+}

+ 21 - 0
src/main/java/com/yx/face/model/entity/UserInfoFrom.java

@@ -0,0 +1,21 @@
+package com.yx.face.model.entity;
+
+import lombok.Data;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+@Data
+@Table(name = "user_info_from")
+public class UserInfoFrom implements Serializable {
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Long id;
+
+    @Column(name = "user_info_id")
+    private Long userInfoId;
+
+    @Column(name = "img_base")
+    private byte[] imgBase;
+}

+ 22 - 0
src/main/java/com/yx/face/model/entity/UserVisitorListFrom.java

@@ -0,0 +1,22 @@
+package com.yx.face.model.entity;
+
+import lombok.Data;
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+
+@Data
+@Table(name = "user_visitor_list_from")
+public class UserVisitorListFrom implements Serializable {
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Long id;
+
+    @Column(name = "user_visitor_list_id")
+    private Integer userVisitorListId;
+
+    @Column(name = "img_base")
+    private byte[] imgBase;
+}

+ 22 - 0
src/main/java/com/yx/face/model/entity/UserWhitelistFrom.java

@@ -0,0 +1,22 @@
+package com.yx.face.model.entity;
+
+import lombok.Data;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.sql.Blob;
+
+@Data
+@Table(name = "user_whitelist_from")
+public class UserWhitelistFrom implements Serializable {
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Long id;
+
+    @Column(name = "user_whitelist_id")
+    private Integer userWhitelistId;
+
+    @Column(name = "img_base")
+    private byte[] imgBase;
+}

+ 67 - 0
src/main/java/com/yx/face/service/Aspect/UserBlackListDaoAspect.java

@@ -0,0 +1,67 @@
+package com.yx.face.service.Aspect;
+
+import com.yx.face.boot.uitls.Base64Util;
+import com.yx.face.dao.UserBlackListFromDao;
+import com.yx.face.model.entity.UserBlackList;
+import com.yx.face.model.entity.UserBlackListFrom;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.After;
+import org.aspectj.lang.annotation.AfterThrowing;
+import org.aspectj.lang.annotation.Aspect;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.Arrays;
+
+/**
+ * @description:
+ * @ClassName UserBlackListDaoAspect
+ * @Author WXG
+ * @Date 2021/12/2 15:09
+ */
+@Component
+@Aspect
+public class UserBlackListDaoAspect {
+
+    @Resource
+    UserBlackListFromDao userBlackListFromDao;
+
+    @After("execution( public * com.yx.face.dao.UserBlackListDao.delete*(*))")
+    public void deleteAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        if(name.equals("deleteByPrimaryKey")){
+            userBlackListFromDao.delteByForgeinId((Integer) args[0]);
+        }
+    }
+
+    @After("execution( public * com.yx.face.dao.UserBlackListDao.insert*(*))")
+    public void insertAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserBlackListFrom ublf = new UserBlackListFrom();
+        if(name.equals("insert")||name.equals("insertSelective")){
+            UserBlackList ubl = (UserBlackList)args[0];
+            if(ubl.getAvatar() != null && !ubl.getAvatar().equals("")&&ubl.getId()!=null){
+                ublf.setUserBlackListId(ubl.getId());
+                ublf.setImgBase(Base64Util.getByteArrayFromUrl(ubl.getAvatar()));
+                userBlackListFromDao.insertSelective(ublf);
+            }
+        }
+    }
+    @After("execution( public * com.yx.face.dao.UserBlackListDao.update*(*))")
+    public void updateAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserBlackListFrom ublf = new UserBlackListFrom();
+        if(name.equals("updateByPrimaryKey")||name.equals("updateByPrimaryKeySelective")){
+            UserBlackList ubl = (UserBlackList)args[0];
+            if(ubl.getAvatar() != null && !ubl.getAvatar().equals("")){
+                ublf.setUserBlackListId(ubl.getId());
+                ublf.setImgBase(Base64Util.getByteArrayFromUrl(ubl.getAvatar()));
+                userBlackListFromDao.updateByForgeinId(ublf);
+            }
+        }
+    }
+
+}

+ 67 - 0
src/main/java/com/yx/face/service/Aspect/UserFaceRecordsDaoAspect.java

@@ -0,0 +1,67 @@
+package com.yx.face.service.Aspect;
+
+import com.yx.face.boot.uitls.Base64Util;
+import com.yx.face.dao.UserFaceRecordsDao;
+import com.yx.face.dao.UserFaceRecordsFromDao;
+import com.yx.face.model.entity.UserBlackList;
+import com.yx.face.model.entity.UserFaceRecords;
+import com.yx.face.model.entity.UserFaceRecordsFrom;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.After;
+import org.aspectj.lang.annotation.Aspect;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+
+/**
+ * @description:
+ * @ClassName UserFaceRecordsDaoAspect
+ * @Author WXG
+ * @Date 2021/12/2 15:09
+ */
+@Component
+@Aspect
+public class UserFaceRecordsDaoAspect {
+
+    @Resource
+    UserFaceRecordsFromDao userFaceRecordsFromDao;
+
+    @After("execution( public * com.yx.face.dao.UserFaceRecordsDao.delete*(*))")
+    public void deleteAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        if(name.equals("deleteByPrimaryKey")){
+            userFaceRecordsFromDao.delteByForgeinId((Long) args[0]);
+        }
+    }
+
+    @After("execution( public * com.yx.face.dao.UserFaceRecordsDao.insert*(*))")
+    public void insertAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserFaceRecordsFrom obj = new UserFaceRecordsFrom();
+        if(name.equals("insert")||name.equals("insertSelective")){
+            UserFaceRecords userFaceRecords = (UserFaceRecords)args[0];
+            if(userFaceRecords.getPhoto() != null && !userFaceRecords.getPhoto().equals("")&&userFaceRecords.getId()!=null){
+                obj.setUserFaceRecordsId(userFaceRecords.getId());
+                obj.setImgBase(Base64Util.getByteArrayFromUrl(userFaceRecords.getPhoto()));
+                userFaceRecordsFromDao.insertSelective(obj);
+            }
+        }
+    }
+    @After("execution( public * com.yx.face.dao.UserFaceRecordsDao.update*(*))")
+    public void updateAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserFaceRecordsFrom obj = new UserFaceRecordsFrom();
+        if(name.equals("updateByPrimaryKey")||name.equals("updateByPrimaryKeySelective")){
+            UserFaceRecords ubl = (UserFaceRecords)args[0];
+            if(ubl.getPhoto() != null && !ubl.getPhoto().equals("")){
+                obj.setUserFaceRecordsId(ubl.getId());
+                obj.setImgBase(Base64Util.getByteArrayFromUrl(ubl.getPhoto()));
+                userFaceRecordsFromDao.updateByForgeinId(obj);
+            }
+        }
+    }
+
+}

+ 67 - 0
src/main/java/com/yx/face/service/Aspect/UserInfoDaoAspect.java

@@ -0,0 +1,67 @@
+package com.yx.face.service.Aspect;
+
+import com.yx.face.boot.uitls.Base64Util;
+import com.yx.face.dao.UserInfoDao;
+import com.yx.face.dao.UserInfoFromDao;
+import com.yx.face.model.entity.UserFaceRecords;
+import com.yx.face.model.entity.UserInfo;
+import com.yx.face.model.entity.UserInfoFrom;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.After;
+import org.aspectj.lang.annotation.Aspect;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+
+/**
+ * @description:
+ * @ClassName UserInfoDaoAspect
+ * @Author WXG
+ * @Date 2021/12/2 15:09
+ */
+@Component
+@Aspect
+public class UserInfoDaoAspect {
+
+    @Resource
+    UserInfoFromDao userInfoFromDao;
+
+    @After("execution( public * com.yx.face.dao.UserInfoDao.delete*(*))")
+    public void deleteAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        if(name.equals("deleteByPrimaryKey")){
+            userInfoFromDao.delteByForgeinId((Long) args[0]);
+        }
+    }
+
+    @After("execution( public * com.yx.face.dao.UserInfoDao.insert*(*))")
+    public void insertAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserInfoFrom obj = new UserInfoFrom();
+        if(name.equals("insert")||name.equals("insertSelective")){
+            UserInfo ui = (UserInfo)args[0];
+            if(ui.getAvatar() != null && !ui.getAvatar().equals("")&&ui.getId()!=null){
+                obj.setUserInfoId(ui.getId());
+                obj.setImgBase(Base64Util.getByteArrayFromUrl(ui.getAvatar()));
+                userInfoFromDao.insertSelective(obj);
+            }
+        }
+    }
+    @After("execution( public * com.yx.face.dao.UserInfoDao.update*(*))")
+    public void updateAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserInfoFrom obj = new UserInfoFrom();
+        if(name.equals("updateByPrimaryKey")||name.equals("updateByPrimaryKeySelective")){
+            UserInfo ui = (UserInfo)args[0];
+            if(ui.getAvatar() != null && !ui.getAvatar().equals("")){
+                obj.setUserInfoId(ui.getId());
+                obj.setImgBase(Base64Util.getByteArrayFromUrl(ui.getAvatar()));
+                userInfoFromDao.updateByForgeinId(obj);
+            }
+        }
+    }
+
+}

+ 66 - 0
src/main/java/com/yx/face/service/Aspect/UserVisitorListDaoAspect.java

@@ -0,0 +1,66 @@
+package com.yx.face.service.Aspect;
+
+import com.yx.face.boot.uitls.Base64Util;
+import com.yx.face.dao.UserVisitorListFromDao;
+import com.yx.face.model.entity.UserFaceRecords;
+import com.yx.face.model.entity.UserVisitorList;
+import com.yx.face.model.entity.UserVisitorListFrom;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.After;
+import org.aspectj.lang.annotation.Aspect;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+
+/**
+ * @description:
+ * @ClassName UserInfoDaoAspect
+ * @Author WXG
+ * @Date 2021/12/2 15:09
+ */
+@Component
+@Aspect
+public class UserVisitorListDaoAspect {
+
+    @Resource
+    UserVisitorListFromDao userVisitorListFromDao;
+
+    @After("execution( public * com.yx.face.dao.UserVisitorListDao.delete*(*))")
+    public void deleteAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        if(name.equals("deleteByPrimaryKey")){
+            userVisitorListFromDao.delteByForgeinId((Integer) args[0]);
+        }
+    }
+
+    @After("execution( public * com.yx.face.dao.UserVisitorListDao.insert*(*))")
+    public void insertAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserVisitorListFrom obj = new UserVisitorListFrom();
+        if(name.equals("insert")||name.equals("insertSelective")){
+            UserVisitorList userVisitorList = (UserVisitorList)args[0];
+            if(userVisitorList.getAvatar() != null && !userVisitorList.getAvatar().equals("")&&userVisitorList.getId()!=null){
+                obj.setUserVisitorListId(userVisitorList.getId());
+                obj.setImgBase(Base64Util.getByteArrayFromUrl(userVisitorList.getAvatar()));
+                userVisitorListFromDao.insertSelective(obj);
+            }
+        }
+    }
+    @After("execution( public * com.yx.face.dao.UserVisitorListDao.update*(*))")
+    public void updateAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserVisitorListFrom obj = new UserVisitorListFrom();
+        if(name.equals("updateByPrimaryKey")||name.equals("updateByPrimaryKeySelective")){
+            UserVisitorList ubl = (UserVisitorList)args[0];
+            if(ubl.getAvatar() != null && !ubl.getAvatar().equals("")){
+                obj.setUserVisitorListId(ubl.getId());
+                obj.setImgBase(Base64Util.getByteArrayFromUrl(ubl.getAvatar()));
+                userVisitorListFromDao.updateByForgeinId(obj);
+            }
+        }
+    }
+
+}

+ 65 - 0
src/main/java/com/yx/face/service/Aspect/UserWhiteListDaoAspect.java

@@ -0,0 +1,65 @@
+package com.yx.face.service.Aspect;
+
+import com.yx.face.boot.uitls.Base64Util;
+import com.yx.face.dao.UserWhiteListFromDao;
+import com.yx.face.model.entity.UserWhitelistFrom;
+import com.yx.face.model.entity.UserWhitelist;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.After;
+import org.aspectj.lang.annotation.Aspect;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+
+/**
+ * @description:
+ * @ClassName UserInfoDaoAspect
+ * @Author WXG
+ * @Date 2021/12/2 15:09
+ */
+@Component
+@Aspect
+public class UserWhiteListDaoAspect {
+
+    @Resource
+    UserWhiteListFromDao userWhiteListFromDao;
+
+    @After("execution( public * com.yx.face.dao.UserWhitelistDao.delete*(*))")
+    public void deleteAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        if(name.equals("deleteByPrimaryKey")){
+            userWhiteListFromDao.delteByForgeinId((Integer) args[0]);
+        }
+    }
+
+    @After("execution( public * com.yx.face.dao.UserWhitelistDao.insert*(*))")
+    public void insertAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserWhitelistFrom obj = new UserWhitelistFrom();
+        if(name.equals("insert")||name.equals("insertSelective")){
+            UserWhitelist userWhiteList = (UserWhitelist)args[0];
+            if(userWhiteList.getAvatar() != null && !userWhiteList.getAvatar().equals("")&&userWhiteList.getId()!=null){
+                obj.setUserWhitelistId(userWhiteList.getId());
+                obj.setImgBase(Base64Util.getByteArrayFromUrl(userWhiteList.getAvatar()));
+                userWhiteListFromDao.insertSelective(obj);
+            }
+        }
+    }
+    @After("execution( public * com.yx.face.dao.UserWhitelistDao.update*(*))")
+    public void updateAfter(JoinPoint joinPoint){
+        String name = joinPoint.getSignature().getName();
+        Object[] args = joinPoint.getArgs();
+        UserWhitelistFrom obj = new UserWhitelistFrom();
+        if(name.equals("updateByPrimaryKey")||name.equals("updateByPrimaryKeySelective")){
+            UserWhitelist ubl = (UserWhitelist)args[0];
+            if(ubl.getAvatar() != null && !ubl.getAvatar().equals("")){
+                obj.setUserWhitelistId(ubl.getId());
+                obj.setImgBase(Base64Util.getByteArrayFromUrl(ubl.getAvatar()));
+                userWhiteListFromDao.updateByForgeinId(obj);
+            }
+        }
+    }
+
+}

+ 6 - 4
src/main/java/com/yx/face/service/impl/UserInfoServiceImpl.java

@@ -10,10 +10,7 @@ import com.google.common.collect.Maps;
 import com.yx.face.boot.config.TaskPoolConfig;
 import com.yx.face.boot.restful.RestDTO;
 import com.yx.face.boot.restful.ServiceException;
-import com.yx.face.boot.uitls.DateUtils;
-import com.yx.face.boot.uitls.FileUploadUtil;
-import com.yx.face.boot.uitls.JsonUtils;
-import com.yx.face.boot.uitls.OkHttpUtils;
+import com.yx.face.boot.uitls.*;
 import com.yx.face.dao.*;
 import com.yx.face.model.dto.WxInfoDTO;
 import com.yx.face.model.entity.*;
@@ -61,10 +58,15 @@ public class UserInfoServiceImpl implements UserInfoService {
     @Resource
     private UserWhitelistDao userWhitelistdao;
 
+    @Resource
+    private UserFaceRecordsFromDao userFaceRecordsFromDao;
+
     @Resource
     private UserVisitorListDao userVisitorListDao;
     @Resource
     private UserBlackListDao userBlackListDao;
+    @Resource
+    private UserInfoFromDao userInfoFromDao;
 
     @Autowired
     private TaskPoolConfig taskPoolConfig;

+ 13 - 8
src/main/java/com/yx/face/service/impl/UserVisitorListServiceImpl.java

@@ -1,16 +1,12 @@
 package com.yx.face.service.impl;
 
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.yx.face.boot.restful.RestDTO;
 import com.yx.face.boot.restful.ServiceException;
-import com.yx.face.boot.uitls.DateUtils;
-import com.yx.face.boot.uitls.JsonUtils;
-import com.yx.face.boot.uitls.SMSOrIdCardUtils;
+import com.yx.face.boot.uitls.*;
 import com.yx.face.dao.*;
 import com.yx.face.model.entity.*;
 import com.yx.face.model.search.UserWhitelistSearch;
@@ -19,7 +15,6 @@ import com.yx.face.model.vo.UserVisitorListVO;
 import com.yx.face.model.vo.UserWhitelistVO;
 import com.yx.face.service.AdminService;
 import com.yx.face.service.UserVisitorListService;
-import com.yx.face.service.feign.TBDeviceFaceService;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -40,6 +35,8 @@ import java.util.*;
 public class UserVisitorListServiceImpl implements UserVisitorListService {
     @Resource
     private UserVisitorListDao userVisitorListDao;
+    @Resource
+    private UserVisitorListFromDao userVisitorListFromDao;
 
     @Resource
     private AdminService adminService;
@@ -65,6 +62,11 @@ public class UserVisitorListServiceImpl implements UserVisitorListService {
     @Resource
     private FaceTaskDao faceTaskDao;
 
+    @Resource
+    private UserWhiteListFromDao userWhitelistFromDao;
+    @Resource
+    private UserBlackListFromDao userBlackListFromDao;
+
     @Override
     public PageInfo<UserVisitorListVO> getPageList(RestDTO<UserWhitelistSearch> dto) {
         UserWhitelistSearch data = dto.getData();
@@ -99,7 +101,9 @@ public class UserVisitorListServiceImpl implements UserVisitorListService {
         //校验是否存在
         UserWhitelist byPhoneAndId = userWhitelistDao.getByPhoneAndId(uvl.getPhone(), null, uvl.getAdminId());
         UserWhitelist addWhite = new UserWhitelist();
-        addWhite.setAvatar(uvl.getAvatar());
+
+        String avatar = uvl.getAvatar();
+        addWhite.setAvatar(avatar);
         if (byPhoneAndId != null) {
             addWhite.setUpdateTime(new Date());
             addWhite.setId(byPhoneAndId.getId());
@@ -153,6 +157,7 @@ public class UserVisitorListServiceImpl implements UserVisitorListService {
         userBlackListOne.setPhone(uvl.getPhone());
         UserBlackList userBlackOne = userBlackListDao.selectOne(userBlackListOne);
         UserBlackList userBlackList = new UserBlackList();
+        String avatar = userBlackOne.getAvatar();//照片
         if (userBlackOne != null) {
             userBlackList.setId(userBlackOne.getId());
             userBlackList.setAvatar(userBlackOne.getAvatar());
@@ -283,4 +288,4 @@ public class UserVisitorListServiceImpl implements UserVisitorListService {
         faceTaskDao.updateByPrimaryKeySelective(faceTask);
         return result;
     }
-}
+}

+ 13 - 0
src/main/resources/mapper/UserBlackListFromDao.xml

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yx.face.dao.UserBlackListFromDao">
+    <update id="updateByForgeinId">
+        update user_black_list_from
+        set img_base = #{imgBase}
+        where user_black_list_id = #{userBlackListId}
+    </update>
+    <delete id="delteByForgeinId">
+        delete from user_black_list_from
+        where user_black_list_id = #{forgeinId}
+    </delete>
+</mapper>

+ 13 - 0
src/main/resources/mapper/UserFaceRecordsFromDao.xml

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yx.face.dao.UserFaceRecordsFromDao">
+    <update id="updateByForgeinId">
+        update user_face_records_from
+        set img_base = #{imgBase}
+        where user_face_records_id = #{userFaceRecordsId}
+    </update>
+    <delete id="delteByForgeinId">
+        delete from user_face_records_from
+        where user_face_records_id = #{forgeinId}
+    </delete>
+</mapper>

+ 13 - 0
src/main/resources/mapper/UserInfoFromDao.xml

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yx.face.dao.UserInfoFromDao">
+    <update id="updateByForgeinId">
+        update user_info_from
+        set img_base = #{imgBase}
+        where user_info_id = #{userInfoId}
+    </update>
+    <delete id="delteByForgeinId">
+        delete from user_info_from
+        where user_info_id = #{forgeinId}
+    </delete>
+</mapper>

+ 13 - 0
src/main/resources/mapper/UserVisitorListFromDao.xml

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yx.face.dao.UserVisitorListFromDao">
+    <update id="updateByForgeinId">
+        update user_visitor_list_from
+        set img_base = #{imgBase}
+        where user_visitor_list_id = #{userVisitorListId}
+    </update>
+    <delete id="delteByForgeinId">
+        delete from user_visitor_list_from
+        where user_visitor_list_id = #{forgeinId}
+    </delete>
+</mapper>

+ 13 - 0
src/main/resources/mapper/UserWhiteListFromDao.xml

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yx.face.dao.UserWhiteListFromDao">
+    <update id="updateByForgeinId">
+        update user_whitelist_from
+        set img_base = #{imgBase}
+        where user_whitelist_id = #{userWhitelistId}
+    </update>
+    <delete id="delteByForgeinId">
+        delete from user_whitelist_from
+        where user_whitelist_id = #{forgeinId}
+    </delete>
+</mapper>