package com.kernal.passportreader.sdk.utils; 
 | 
  
 | 
import android.content.Context; 
 | 
import android.os.Environment; 
 | 
import android.text.format.Time; 
 | 
  
 | 
import androidx.annotation.NonNull; 
 | 
  
 | 
import java.io.File; 
 | 
  
 | 
import kernal.idcard.camera.SavePath; 
 | 
  
 | 
/** 
 | 
 * @author A@H 
 | 
 * Description: 该类实现了SavePath方法 主要是生成图片的路径 
 | 
 */ 
 | 
public class DefaultPicSavePath implements SavePath { 
 | 
    public String PATH ; 
 | 
    private String parentPath; 
 | 
    private boolean saveOnce=false; 
 | 
  
 | 
  
 | 
    public DefaultPicSavePath(Context context){ 
 | 
        PATH= context.getFilesDir().getPath()+ "/wtimage/"; 
 | 
        File file=new File(PATH); 
 | 
        if(!file.exists()){ 
 | 
            file.mkdirs(); 
 | 
        } 
 | 
         parentPath=PATH; 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 图片只存储一次,之后覆盖 
 | 
     * @param onlyOne 
 | 
     */ 
 | 
    public DefaultPicSavePath(Context context,boolean onlyOne){ 
 | 
        PATH= context.getFilesDir().getPath()+ "/wtimage/"; 
 | 
        File file=new File(PATH); 
 | 
        if(!file.exists()){ 
 | 
            file.mkdirs(); 
 | 
        } 
 | 
        parentPath=PATH; 
 | 
        saveOnce=onlyOne; 
 | 
    } 
 | 
  
 | 
    public DefaultPicSavePath(@NonNull String parentPath){ 
 | 
        if(parentPath!=null&&!parentPath.equals("")){ 
 | 
            this.parentPath=parentPath; 
 | 
        }else{ 
 | 
            this.parentPath=PATH; 
 | 
        } 
 | 
        File file=new File(parentPath); 
 | 
        if(!file.exists()){ 
 | 
            file.mkdirs(); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public String getCropPicPath() { 
 | 
        String cropPicPath=""; 
 | 
        if(saveOnce){ 
 | 
            cropPicPath= parentPath+"Android_WintoneIDCard_"+"0000002"+"thaiCropCode.jpg"; 
 | 
        }else{ 
 | 
            cropPicPath= parentPath+"Android_WintoneIDCard_"+pictureName()+"thaiCropCode.jpg"; 
 | 
        } 
 | 
        return cropPicPath; 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public String getFullPicPath() { 
 | 
        String fullPicPath=""; 
 | 
        if(saveOnce){ 
 | 
            fullPicPath= parentPath+"Android_WintoneIDCard_"+"0000001"+"thaiFullCode.jpg"; 
 | 
        }else{ 
 | 
            fullPicPath= parentPath+"Android_WintoneIDCard_"+pictureName()+"thaiFullCode.jpg"; 
 | 
        } 
 | 
  
 | 
        return fullPicPath; 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public String getHeadPicPath() { 
 | 
        String headPicPath=""; 
 | 
        if(saveOnce){ 
 | 
            headPicPath= parentPath+"Android_WintoneIDCard_"+"0000003"+"thaiHeadCode.jpg"; 
 | 
        }else{ 
 | 
            headPicPath= parentPath+"Android_WintoneIDCard_"+pictureName()+"thaiHeadCode.jpg"; 
 | 
        } 
 | 
  
 | 
        return headPicPath; 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public String getThaiCodePath() { 
 | 
        String thaiCoddPath=""; 
 | 
        if(saveOnce){ 
 | 
            thaiCoddPath= parentPath+"Android_WintoneIDCard_"+"0000004"+"thaicode.jpg"; 
 | 
        }else{ 
 | 
            thaiCoddPath= parentPath+"Android_WintoneIDCard_"+pictureName()+"thaicode.jpg"; 
 | 
        } 
 | 
  
 | 
        return thaiCoddPath; 
 | 
    } 
 | 
  
 | 
    public String pictureName() { 
 | 
        String str = ""; 
 | 
        Time t = new Time(); 
 | 
        t.setToNow(); //  Get system time。 
 | 
        int year = t.year; 
 | 
        int month = t.month + 1; 
 | 
        int date = t.monthDay; 
 | 
        int hour = t.hour; // 0-23 
 | 
        int minute = t.minute; 
 | 
        int second = t.second; 
 | 
        if (month < 10) 
 | 
            str = String.valueOf(year) + "0" + String.valueOf(month); 
 | 
        else { 
 | 
            str = String.valueOf(year) + String.valueOf(month); 
 | 
        } 
 | 
        if (date < 10) { 
 | 
            str = str + "0" + String.valueOf(date); 
 | 
        } else { 
 | 
            str = str + String.valueOf(date); 
 | 
        } 
 | 
        if (hour < 10) 
 | 
            str = str + "0" + String.valueOf(hour); 
 | 
        else { 
 | 
            str = str + String.valueOf(hour); 
 | 
        } 
 | 
        if (minute < 10) 
 | 
            str = str + "0" + String.valueOf(minute); 
 | 
        else { 
 | 
            str = str + String.valueOf(minute); 
 | 
        } 
 | 
        if (second < 10) 
 | 
            str = str + "0" + String.valueOf(second); 
 | 
        else { 
 | 
            str = str + String.valueOf(second); 
 | 
        } 
 | 
        return str; 
 | 
    } 
 | 
  
 | 
} 
 |