zhoushihao
2024-05-27 7a23bac143166768c577411d68b256fdf85c8bb5
Merge remote-tracking branch 'origin/master'
2个文件已修改
1个文件已添加
81 ■■■■■ 已修改文件
hangzhoumesParent/moduleService/CacheGlassModule/pom.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/SmbTool.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/common/S7object.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/CacheGlassModule/pom.xml
@@ -22,6 +22,11 @@
            <artifactId>sqljdbc4</artifactId>
            <version>4.0</version>
        </dependency>
        <dependency>
            <groupId>org.samba.jcifs</groupId>
            <artifactId>jcifs</artifactId>
            <version>1.2.19</version>
        </dependency>
<!--        <dependency>-->
<!--            <groupId>com.github.yulichang</groupId>-->
<!--            <artifactId>mybatis-plus-join-boot-starter</artifactId>-->
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/SmbTool.java
New file
@@ -0,0 +1,71 @@
package com.mes.common;
import jcifs.smb.NtlmPasswordAuthentication;
import jcifs.smb.SmbFile;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class SmbTool {
    public static  String USER_DOMAIN=null;//共享计算机ip   "192.168.3.102";
    public  static  String USER_ACCOUNT=null;//登录共享文件夹 用户名 "aaa",如果是共享是无密码模式 此处值设置为 null;
    public  static  String USER_PWS=null;//登录共享文件夹  密码"guoyujie",如果是共享是无密码模式 此处值设置为 null;
    /**
     *  test 测试示例
     */
    private void test()
    {
        int index= SmbTool.getDescriptionIndex("log","P20240522");//输入切割机共享文件夹名字、工程号,返回当前工程正在切割的版图号
        System.out.print(index);
    }
    /**
     *  smbGetall 返回指定目录下的文件名字
     * @param   GoalUrl 远端目录("smb://192.168.2.100//ceshi//")
     */
    public static String[] smbGetallFilenames(String GoalUrl) {
        NtlmPasswordAuthentication auth=new NtlmPasswordAuthentication(USER_DOMAIN,USER_ACCOUNT,USER_PWS);
        List<String> filenames=new ArrayList<>();
        try {
            SmbFile remoteFile = new SmbFile(GoalUrl,auth);
            if (remoteFile == null) {
                return filenames.toArray(new String[]{});
            }
            if (remoteFile.exists())
            {
                SmbFile[] listFiles = remoteFile.listFiles();
                for(int i = 0; i < listFiles.length; i++) {
                    filenames.add(listFiles[i].getName());
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return filenames.toArray(new String[]{});
    }
    /**
     *  getDescriptionIndex 根据工程号,返回当前正在切割的版图号
     * @param   folderName 共享文件夹名字
     * @param   project_no 工程号
     */
    public static int getDescriptionIndex(String folderName,String project_no)
    {
        SimpleDateFormat formatter= new SimpleDateFormat("yyyyMMdd");
        Date date = new Date(System.currentTimeMillis());
        System.out.println(formatter.format(date));
        String[] getfilenames= smbGetallFilenames("smb://"+USER_DOMAIN+"/"+folderName+"/"+formatter.format(date)+"/");
        for (int i = 0; i < getfilenames.length; i++) {
            String[] splitvalues= getfilenames[i].split("_");
            if (splitvalues.length>=3&&splitvalues[1].trim().equals(project_no))
            {
                String[] indexstr= splitvalues[2].trim().split("\\.");
                if (indexstr.length>1) {
                    return  Integer.parseInt(indexstr[0]);
                }
            }
        }
        return -1;
    }
}
hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/common/S7object.java
@@ -52,8 +52,9 @@
            }
            byte[] getplcvlues = plccontrol.readByte(PlcMesObject.getPlcAddressBegin(), PlcMesObject.getPlcAddressLength());
            PlcMesObject.setPlcParameterList(getplcvlues);
            if(getplcvlues!=null) {
                PlcMesObject.setPlcParameterList(getplcvlues);
            }
        }
    }
}