nidapeng
2024-04-19 89610234a2bdc56f60e0998045892ef2672edccc
最新版本
已添加4个文件
已修改14个文件
391 ■■■■■ 文件已修改
logs/admin_timer.2024-04-12.log.zip 补丁 | 查看 | 原始文档 | blame | 历史
server/admin_timer/src/main/resources/application.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_admin/src/main/java/com/doumee/task/ScheduleTool.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_admin/src/main/resources/application.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_screen/src/main/resources/application.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/core/haikang/sdk/Dewlt.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/core/haikang/sdk/HCUsbSDK.java 156 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/core/haikang/sdk/HIKCSDemo.java 151 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncInitConfigServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_web/pom.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_web/src/main/resources/application.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/openapi/src/main/resources/application.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
logs/admin_timer.2024-04-12.log.zip
Binary files differ
server/admin_timer/src/main/resources/application.yml
@@ -8,7 +8,7 @@
spring:
  #  application:
  #    name: doumeemes
  #    name: doumeevisit
  profiles:
    active: proHS
@@ -53,7 +53,7 @@
# dao层的日志设置为debug,方便查看sql
logging:
  level:
    doumeemes.dao: debug
    com.doumee.dao: debug
knife4j:
  enable: true
server/dmvisit_admin/src/main/java/com/doumee/service/impl/HkSyncEventServiceImpl.java
@@ -34,13 +34,6 @@
    @PostConstruct
    public  int  initHkConfig(){
        if(StringUtils.isBlank( ArtemisConfig.host )){
            ArtemisConfig.host = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_HOST).getCode();
            ArtemisConfig.appKey = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_APPKEY).getCode();
            ArtemisConfig.appSecret = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_APPSECRET).getCode();
            HKConstants.https = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_HTTPS).getCode();
        }
        HKTools.interfaceLogService=interfaceLogService;
        //获取根组织编码
        getRootOrgCode();
        //开始订阅门禁事件、访客事件、和停车场事件
server/dmvisit_admin/src/main/java/com/doumee/task/ScheduleTool.java
@@ -24,8 +24,8 @@
 * @date 2021-10-10 14:40:35
 * https://www.bejson.com/othertools/cron/  cron è¡¨è¾¾å¼ç”Ÿæˆåœ°å€
 */
@Component
@EnableScheduling
//@Component
//@EnableScheduling
public class ScheduleTool {
    @Autowired
@@ -157,7 +157,7 @@
    /**
     * å®šæ—¶å†»ç»“内部人员
     */
    @Scheduled(fixedRate= 60*1000)
//    @Scheduled(fixedRate= 60*1000)
    public void memberFreeze()  {
        memberService.memberFreeze();
    }
server/dmvisit_admin/src/main/resources/application.yml
@@ -8,7 +8,7 @@
spring:
  #  application:
  #    name: doumeemes
  #    name: doumeevisit
  profiles:
    active: proHS
@@ -53,7 +53,7 @@
# dao层的日志设置为debug,方便查看sql
logging:
  level:
    doumeemes.dao: debug
    com.doumee.dao: debug
knife4j:
  enable: true
server/dmvisit_screen/src/main/resources/application.yml
@@ -8,7 +8,7 @@
spring:
  #  application:
  #    name: doumeemes
  #    name: doumeevisit
  profiles:
    active: devYL
@@ -55,7 +55,7 @@
# dao层的日志设置为debug,方便查看sql
logging:
  level:
    doumeemes.dao: debug
    com.doumee.dao: debug
knife4j:
  enable: true
server/dmvisit_service/src/main/java/com/doumee/core/haikang/sdk/Dewlt.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
package com.doumee.core.haikang.sdk;
import com.sun.jna.win32.StdCallLibrary;
public interface Dewlt extends StdCallLibrary{
    int dewlt(String strPictureBin);
}
server/dmvisit_service/src/main/java/com/doumee/core/haikang/sdk/HCUsbSDK.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,156 @@
package com.doumee.core.haikang.sdk;
//import com.sun.javafx.scene.paint.GradientUtils.Point;
import com.sun.jna.Native;
import com.sun.jna.Pointer;
import com.sun.jna.Structure;
import com.sun.jna.win32.StdCallLibrary;
public interface HCUsbSDK extends StdCallLibrary{
    HCUsbSDK INSTANCE = (HCUsbSDK) Native.loadLibrary("D:\\work\\安防平台对接\\HCUSBSDKV2.4.0.3_build20230418_win64_ZH\\library\\win64\\HCUSBSDK",HCUsbSDK.class);
    public static final int MAX_MANUFACTURE_LEN = 32;  //制造商名称最大长度
    public static final int MAX_DEVICE_NAME_LEN = 32;  //设备名称最大长度
    public static final int MAX_SERIAL_NUM_LEN = 48;  //序列号最大长度
    public static final int MAX_USB_DEV_LEN = 64;
    public static final int ERR_LEVEL = 1;
    public static final int DBG_LEVEL = 2;
    public static final int INF_LEVEL = 3;
    public static final int MAX_USERNAME_NAME = 32;  //用户名最大长度
    public static final int MAX_PASSWORD_LEN = 16;  //密码最大长度
    public static final int INVALID_USER_ID = -1;  //登录返回ID,登录失败为-1,有效ID 0-128
    public static final int USB_ERROR_BASE = 0;
    public static final int USB_SUCCESS = (HCUsbSDK.USB_ERROR_BASE + 0);
    public static final int USB_GET_ACTIVATE_CARD      = 1004;
    public static final int USB_GET_CERTIFICATE_INFO = 1020;
    public static final int MAX_SERIAL_NUMBER_LEN = 48;
    public static final int MAX_PATH_LEN = 260;
    public static final int MAX_USERNAME_LEN = 32;
    public enum LOG_LEVEL_ENUM
    {
        NONE,                  //å¡«è¡¥0这个位置,后面1,2,3
        ENUM_ERROR_LEVEL,
        ENUM_DEBUG_LEVEL,
        ENUM_INFO_LEVEL
    };
    public static class  USB_DEVICE_INFO extends Structure
    {
        public int           dwSize;   //结构体大小
        public int           dwIndex; // è®¾å¤‡ç´¢å¼•
        public int           dwVID;   //设备VID
        public int           dwPID;   //设备PID
        public byte[]        szManufacturer  = new byte[MAX_MANUFACTURE_LEN/*32*/];//制造商(来自描述符)
        public byte[]        szDeviceName     = new byte[MAX_DEVICE_NAME_LEN/*32*/];//设备名称(来自描述符)
        public byte[]        szSerialNumber     = new byte[MAX_SERIAL_NUMBER_LEN/*48*/];//设备序列号(来自描述符)
        public byte            byHaveAudio;    // æ˜¯å¦å…·æœ‰éŸ³é¢‘
        public byte            iColorType;     // 1.RGB路, 2.IRè·¯
        public byte[]        szDevicePath = new byte[MAX_PATH_LEN];
        public byte[]        byRes        = new byte[254];
     }
    public static class  USB_USER_LOGIN_INFO extends Structure
    {
        public int        dwSize; //结构体大小
        public int         dwTimeout; //登录超时时间(单位:毫秒)
        public int         dwDevIndex; //设备下标
        public int         dwVID;  //设备VID,枚举设备时得到
        public int         dwPID;  //设备PID,枚举设备时得到
        public byte[]    szUserName    = new byte    [MAX_USERNAME_LEN/*32*/]; //用户名,获取激活状态时无需填
        public byte[]    szPassword = new byte[MAX_PASSWORD_LEN/*16*/]; //密码,获取激活状态时无需填
        public byte[]    szSerialNumber = new byte[MAX_SERIAL_NUMBER_LEN/*48*/]; //设备序列号,枚举设备时得到
        public byte         byLoginMode; //0-认证登陆 1-默认账号登陆(不关心用户名密码)(权限不同,部分功能需认证登陆才支持)
        public byte[]    byRes2 = new byte[3];
        public int        dwFd; //设备描述符fd (android下没有root权限登录时使用)
        public byte[]      byRes    = new byte[248];
    }
    public static class  USB_DEVICE_REG_RES extends Structure
    {
        public int       dwSize;                           //结构体大小
        public byte[]   szDeviceName     = new byte[MAX_DEVICE_NAME_LEN /*32*/]; //设备名称
        public byte[]   szSerialNumber      = new byte[MAX_SERIAL_NUMBER_LEN /*48*/]; //设备序列号
        public int      dwSoftwareVersion;                 //软件版本号,高16位是主版本,低16位是次版本
        public short    wYear;
        public byte     byMonth;
        public byte      byDay;
        public byte      byRetryLoginTimes;                             //剩余可尝试登陆的次数
        public byte[]    byRes1           = new byte[3];             //保留
        public int        dwSurplusLockTime;                             //剩余时间,单位秒 ç”¨æˆ·é”å®šæ—¶ï¼Œæ­¤å‚数有效
        public byte[]   byRes             = new byte[256];
    }
    public static class USB_ACTIVATE_CARD_RES extends Structure
    {
        public int      dwSize;
        public byte       byCardType;                        // å¡ç±»åž‹ï¼ˆ0-TypeA m1卡,1-TypeA cpu卡,2-TypeB,3-125kHz Id卡,4-Felica Card 5-Desfire Card)
        public byte       bySerialLen;                     //卡物理序列号字节长度
        public byte[]    bySerial = new byte[10];        //卡物理序列号
        public byte       bySelectVerifyLen;                 //选择确认长度
        public byte[]      bySelectVerify = new byte[3];  //选择确认(3字节)
        public byte[]      byRes           = new byte[12];
    }
    public static class USB_WAIT_SECOND extends Structure
    {
        public int dwSize;  //结构体大小
        public byte byWait; //1Byte操作等待时间(0-一直执行直到有卡响应,其他对应1S单位)
        public byte[] byRes = new byte[27];
    }//32字节
    public static class USB_CONFIG_INPUT_INFO extends Structure
    {
        public Pointer  lpCondBuffer;  //指向条件缓冲区
        public int         dwCondBufferSize;  //条件缓冲区大小
        public Pointer  lpInBuffer;  //指向输出缓冲区
        public int         dwInBufferSize;  //输入缓冲区大小
        public byte[]   byRes = new byte[48];
    }//64字节
    public static class USB_CONFIG_OUTPUT_INFO extends Structure
    {
        public Pointer  lpOutBuffer;  //指向输出缓冲区
        public int         dwOutBufferSize;  //输出缓冲区大小
        public byte[]   byRes = new byte[56];
    }//64字节
    public static class USB_CERTIFICATE_INFO extends Structure
    {
        public int dwSize;  //结构体大小
        public short wWorldInfoSize;  //文字信息长度
        public short wPicInfoSize;    //相片信息长度
        public short wFingerPrintInfoSize; //指纹信息长度
        public byte byCertificateType; //证件类型:0-身份证,1-中国绿卡
        public byte byRes2;
        public byte[] byWordInfo = new byte[256];  //文字信息
        public byte[] byPicInfo = new byte[1024];  //相片信息
        public byte[] byFingerPrintInfo = new byte[1024];  //指纹信息
        public byte[] byRes = new byte[40];
    }
    public static class OUT_USB_DEVICE_INFO extends Structure
    {
        public USB_DEVICE_INFO[] struDeviceArr;
        public void init(int devCount)
        {
            struDeviceArr = new USB_DEVICE_INFO[devCount];
        }
    }
    boolean USB_Init();
    boolean USB_Cleanup();
    int USB_GetLastError();
    int USB_GetDeviceCount();
    //新增获取设备列表信息接口,替换原有回调的方式去获取设备信息
    boolean  USB_EnumDevices(int dwCount, Pointer pDevInfoList);
    Pointer  USB_GetErrorMsg(int dwErrorCode);
    boolean  USB_SetLogToFile(int dwLogLevel, String strLogDir, boolean bAutoDel);
    int      USB_GetSDKVersion();
    int      USB_Login(USB_USER_LOGIN_INFO pUsbLoginInfo, USB_DEVICE_REG_RES pDevRegRes);
    boolean USB_Logout(int lUserID);
    boolean USB_GetDeviceConfig(int lUserID, int dwCommand, USB_CONFIG_INPUT_INFO InputInfo, USB_CONFIG_OUTPUT_INFO OutputInfo);
}
server/dmvisit_service/src/main/java/com/doumee/core/haikang/sdk/HIKCSDemo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,151 @@
package com.doumee.core.haikang.sdk;
import com.sun.jna.Pointer;
public class HIKCSDemo {
    static HCUsbSDK hCUsbSDK = HCUsbSDK.INSTANCE;
    static int iHandle = -1;
    public static void main(String[] args) throws InterruptedException{
        HIKCSDemo csdemo = new HIKCSDemo();
        hCUsbSDK.USB_Init();
        hCUsbSDK.USB_SetLogToFile(3, ".\\", false);
        System.out.println(System.getProperty("user.dir"));
        csdemo.getVersion(); //获取版本
        csdemo.EnumDevices();    //枚举设备
        csdemo.Login();
        csdemo.ActivateCard();
        while(true);
    }
    public void getVersion(){
        int iVersion = hCUsbSDK.USB_GetSDKVersion();
        String v1 = Integer.toString((iVersion>>24) & 0xff);
        String v2 = Integer.toString((iVersion>>16) & 0xff);
        String v3 = Integer.toString((iVersion>>8) & 0xff);
        String v4 = Integer.toString((iVersion) & 0xff);
        System.out.println("USB_GetSDKVersion succeed, version:" + v1 + "." + v2 + "." + v3 + "." + v4);
    }
    public void EnumDevices(){
        int iNum = hCUsbSDK.USB_GetDeviceCount();
        System.out.println("iNum:" + iNum);
        if(iNum < 1){
            System.out.println("无设备接入");
            return ;
        }
        //根据获取到的设备数量,申请对应大小的设备信息结构体数组
        //对结构体数组中的每个成员进行初始化
        HCUsbSDK.OUT_USB_DEVICE_INFO  struOutDevice = new HCUsbSDK.OUT_USB_DEVICE_INFO();
        struOutDevice.init(iNum);
        struOutDevice.write();
        Pointer pStruDeviceInfo = struOutDevice.getPointer();
        if(hCUsbSDK.USB_EnumDevices(iNum, pStruDeviceInfo))
        {
            struOutDevice.read();
            while((--iNum) >= 0)
            {
                String s1, s2, s3, s4, s5, s6;
                s1 = String.valueOf(struOutDevice.struDeviceArr[iNum].dwIndex);
                s2 = String.valueOf(struOutDevice.struDeviceArr[iNum].dwVID);
                s3 = String.valueOf(struOutDevice.struDeviceArr[iNum].dwPID);
                s4 = new String(struOutDevice.struDeviceArr[iNum].szManufacturer).trim();
                s5 = new String(struOutDevice.struDeviceArr[iNum].szDeviceName).trim();
                s6 = new String(struOutDevice.struDeviceArr[iNum].szSerialNumber).trim();
                System.out.println("device:" + s1 + ",dwVID:" +s2 + ",dwPID:" + s3 + ",szManufacturer:" + s4 + ",szDeviceName:" +s5 + ",szSerialNumber:" + s6);
            }
            System.out.println("USB_EnumDevices succeed");
        }
        else
        {
            System.out.println("USB_EnumDevices failed, error:" + hCUsbSDK.USB_GetLastError());
        }
    }
    public void Login(){
        HCUsbSDK.USB_DEVICE_REG_RES struDeviceReg = new HCUsbSDK.USB_DEVICE_REG_RES();
        struDeviceReg.dwSize = struDeviceReg.size();
        struDeviceReg.write();
        HCUsbSDK.USB_USER_LOGIN_INFO struUserLoginInfo = new HCUsbSDK.USB_USER_LOGIN_INFO();
        struUserLoginInfo.dwSize = struUserLoginInfo.size();
        struUserLoginInfo.dwTimeout = 5000;
        struUserLoginInfo.dwDevIndex = 1;
        struUserLoginInfo.dwVID = 1155;
        struUserLoginInfo.dwPID = 22352;
        System.arraycopy("813717552".getBytes(), 0, struUserLoginInfo.szSerialNumber, 0, "813717552".length());
        System.arraycopy("admin".getBytes(), 0, struUserLoginInfo.szUserName, 0, "admin".length());
        System.arraycopy("12345".getBytes(), 0, struUserLoginInfo.szPassword, 0, "12345".length());
        struUserLoginInfo.write();
        iHandle = hCUsbSDK.USB_Login(struUserLoginInfo, struDeviceReg);
        System.out.println("iHandle:" + iHandle);
        if(iHandle < 0){
            System.out.println("USB_Login failed, error:" + hCUsbSDK.USB_GetLastError());
        }
        else{
            System.out.println("USB_Login succeed, lHandle:" + iHandle);
        }
    }
    public void ActivateCard(){
        HCUsbSDK.USB_WAIT_SECOND StruWaitSecond = new HCUsbSDK.USB_WAIT_SECOND();
        StruWaitSecond.dwSize = StruWaitSecond.size();
        StruWaitSecond.byWait = 5;
        HCUsbSDK.USB_ACTIVATE_CARD_RES StruActivateRes = new HCUsbSDK.USB_ACTIVATE_CARD_RES();
        StruActivateRes.dwSize = StruActivateRes.size();
        HCUsbSDK.USB_CONFIG_INPUT_INFO StruInput = new HCUsbSDK.USB_CONFIG_INPUT_INFO();
        StruInput.dwInBufferSize = StruWaitSecond.size();
        Pointer ptrwaitSecond = StruWaitSecond.getPointer();
        StruWaitSecond.write();
        StruInput.lpInBuffer = ptrwaitSecond;
        HCUsbSDK.USB_CONFIG_OUTPUT_INFO StruOutput = new HCUsbSDK.USB_CONFIG_OUTPUT_INFO();
        StruOutput.dwOutBufferSize = StruActivateRes.size();
        Pointer ptrActivateRes = StruActivateRes.getPointer();
        StruActivateRes.write();
        StruOutput.lpOutBuffer = ptrActivateRes;
        if(!hCUsbSDK.USB_GetDeviceConfig(iHandle, HCUsbSDK.USB_GET_ACTIVATE_CARD, StruInput, StruOutput))
        {
            System.out.println("USB_GET_ACTIVATE_CARD failed, error:" + hCUsbSDK.USB_GetLastError());
        }
        else{
            StruActivateRes.read();
            System.out.println("byCardType:" + StruActivateRes.byCardType + ",bySerialLen:" + StruActivateRes.bySerialLen);
            System.out.println("USB_GET_ACTIVATE_CARD succeed");
            String SerialNumber = "";
            //返回的bySerial数组需要反序之后,将十六进制转换成十进制就是卡号
            for(int i = 0; i < StruActivateRes.bySerialLen; i++)
            {
                String hex = Integer.toHexString(StruActivateRes.bySerial[StruActivateRes.bySerialLen-i-1] & 0xff);
                if(hex.length() == 1)
                {
                    hex += '0';
                }
                SerialNumber += hex.toUpperCase();
            }
            System.out.println("SerialNumber:0x" + SerialNumber);
            System.out.println("cardNo:" + Long.parseLong(SerialNumber,  16));
        }
    }
//class ç»“束
}
server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -422,9 +422,10 @@
    public static void main(String[] args) {
        System.out.println(Constants.getVehiclePlateNo("皖AA10991").getDescription());
//        System.out.println(Constants.getVehiclePlateNo("湘B140D17").getDescription());
//        System.out.println(Constants.getVehiclePlateNo("宿AP0637").getDescription());
    }
server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -1374,7 +1374,6 @@
        }
        int nday = caln.get(Calendar.DAY_OF_YEAR);
        days = days + nday - oday;
        return days;
    }
@@ -2836,11 +2835,9 @@
    public static void main(String[] args) {
        try {
            System.out.println(RandomStringUtils.randomNumeric(3));
            Date date = getISO8601DateByStr("2024-02-21T15:46:36.014+08:00");
            System.out.println(getISO8601Timestamp(date));
            Date date = getISO8601DateByStr("2024-04-15T07:46:36.014+08:00");
            Date date1 = getISO8601DateByStr("2024-06-14T08:46:36.014+08:00");
            System.out.println(daysBetweenDates11(date1,date)+1);
        } catch (Exception ex) {
            ex.printStackTrace();
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -587,9 +587,16 @@
        }
        if(visits.getSourceType().equals(Constants.ZERO)){
            String code = systemDictDataBiz.queryByCode(Constants.VISIT_CONFIG,Constants.VALIDATE_VISIT).getCode();
            int codenum =0;
            try {
                codenum = Integer.parseInt(code);
            }catch (Exception e){
            }
            if(StringUtils.isNotBlank(code)&&!StringUtils.equals(code,"0")){
                Integer betweenDays = Math.toIntExact(cn.hutool.core.date.DateUtil.between(visits.getEndtime(), visits.getStarttime(), DateUnit.DAY));
                if(Integer.compare(betweenDays,Integer.valueOf(code))>0){
//                Integer betweenDays = Math.toIntExact(cn.hutool.core.date.DateUtil.between(visits.getEndtime(), visits.getStarttime(), DateUnit.DAY));
                int betweenDays = DateUtil.daysBetweenDates11(visits.getEndtime(), visits.getStarttime())+1;
                if( betweenDays > codenum){
                    throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,预约总天数不能超过["+code+"天]!");
                }
            }
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -771,7 +771,9 @@
                company.setParentId(Objects.isNull(parentCompany)?null:parentCompany.getId());
                company.setErpParentId(param.getParentId());
                company.setFsStatus(Constants.ZERO);
                company.setStatus(Constants.ZERO);
                company.setType(Constants.ONE);
                company.setIsdeleted(Constants.ZERO);
                company.setLinkName(param.getLinkName());
                company.setLinkPhone(param.getLinkPhone());
                companyMapper.insert(company);
@@ -1116,7 +1118,6 @@
                throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,请选择有效的访客门禁组!");
            }
        }
    }
    @Override
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncInitConfigServiceImpl.java
@@ -2,7 +2,9 @@
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.haikang.model.HKConstants;
import com.doumee.core.haikang.model.HKTools;
import com.doumee.core.utils.Constants;
import com.doumee.service.business.InterfaceLogService;
import com.hikvision.artemis.sdk.config.ArtemisConfig;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -19,6 +21,8 @@
    @Autowired
    private SystemDictDataBiz systemDictDataBiz;
    @Autowired
    private InterfaceLogService interfaceLogService;
    @PostConstruct
    public  int  initHkConfig(){
@@ -26,6 +30,7 @@
        ArtemisConfig.appKey = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_APPKEY).getCode();
        ArtemisConfig.appSecret = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_APPSECRET).getCode();
        HKConstants.https = systemDictDataBiz.queryByCode(Constants.HK_PARAM, Constants.HK_HTTPS).getCode();
        HKTools.interfaceLogService=interfaceLogService;
        return  0;
    }
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
@@ -115,7 +115,7 @@
        }catch (Exception e) {
            log.error("【海康门禁事件推送】========失败=======:\n" + e.getMessage());
        }finally {
            saveInterfaceLog(param,"/business/hksync/push/acs",result);
            saveInterfaceLog(param,"/business/hksync/push/acs",result,false);//不计日志
        }
        return  null;
@@ -306,7 +306,7 @@
            log.error("【海康访客事件推送】========失败=======:\n"+e.getMessage());
        }
        saveInterfaceLog(param,"/business/hksync/push/visit",result);
        saveInterfaceLog(param,"/business/hksync/push/visit",result,true);
        return  null;
    }
@@ -478,7 +478,7 @@
            log.error("【海康停车场事件推送】========失败=======:\n"+e.getMessage());
        }
        saveInterfaceLog(param,"/business/hksync/push/parks",result);
        saveInterfaceLog(param,"/business/hksync/push/parks",result,false);
        return  null;
    }
@@ -586,7 +586,10 @@
        return retention;
    }
    private void saveInterfaceLog(Object param, String path,String result) {
    private void saveInterfaceLog(Object param, String path,String result,boolean need) {
        if(!need){
            return;
        }
        InterfaceLog hkMonitoryLogDO=new InterfaceLog();
        hkMonitoryLogDO.setType(1);
        hkMonitoryLogDO.setCreateDate(new Date());
server/dmvisit_web/pom.xml
@@ -26,7 +26,7 @@
    </dependencies>
    <build>
        <finalName>visit_web</finalName>
        <finalName>web_interface</finalName>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
server/dmvisit_web/src/main/resources/application.yml
@@ -8,7 +8,7 @@
spring:
  #  application:
  #    name: doumeemes
  #    name: doumeevisit
  profiles:
    active: proHS
@@ -55,7 +55,7 @@
# dao层的日志设置为debug,方便查看sql
logging:
  level:
    doumeemes.dao: debug
    com.doumee.dao: debug
knife4j:
  enable: true
server/openapi/src/main/resources/application.yml
@@ -7,7 +7,7 @@
spring:
  #  application:
  #    name: doumeemes
  #    name: doumeevisit
  profiles:
    active: proHS
@@ -54,7 +54,7 @@
# dao层的日志设置为debug,方便查看sql
logging:
  level:
    doumeemes.dao: debug
    com.doumee.dao: debug
knife4j:
  enable: true