yangbin
2025-03-31 e70428eb12c33888fa36b680ad9582c95a50a56f
自动化产线集成模块添加数据查询
已重命名4个文件
已添加8个文件
已修改2个文件
已删除4个文件
307 ■■■■ 文件已修改
lxzn-boot-base-core/pom.xml 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/controller/MsiWebapiJsonController.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/mapper/MsiWebapiJsonMapper.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/IMsiWebapiJsonService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/impl/MsiWebapiJsonServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/JsonMapper.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/WebServiceUtil.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/controller/MsiWebapiJsonController.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/entity/MsiWebapiJsonEntity.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/MsiWebapiJsonMapper.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/xml/MsiWebapiJsonMapper.fxml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/IMsiWebapiJsonService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/DetailedListVo.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/MachineEquipentInfo.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/MsiWebServiceServiceApi.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/impl/MsiWebServiceServiceApiImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-boot-base-core/pom.xml
@@ -140,6 +140,18 @@
            <version>${java-jwt.version}</version>
        </dependency>
        <!-- CXF webservice -->
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-spring-boot-starter-jaxws</artifactId>
            <version>3.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-transports-http</artifactId>
            <version>3.2.1</version>
        </dependency>
        <!--shiro-->
        <dependency>
            <groupId>org.apache.shiro</groupId>
lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java
@@ -98,7 +98,7 @@
        filterChainDefinitionMap.put("/sys/getLoginQrcode/**", "anon"); //登录二维码
        filterChainDefinitionMap.put("/sys/getQrcodeToken/**", "anon"); //监听扫码
        filterChainDefinitionMap.put("/sys/checkAuth", "anon"); //授权接口排除
        filterChainDefinitionMap.put("/msi/**", "anon"); //集成接口
        filterChainDefinitionMap.put("/", "anon");
        filterChainDefinitionMap.put("/doc.html", "anon");
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/controller/MsiWebapiJsonController.java
ÎļþÒÑɾ³ý
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/mapper/MsiWebapiJsonMapper.java
ÎļþÒÑɾ³ý
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/IMsiWebapiJsonService.java
ÎļþÒÑɾ³ý
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/impl/MsiWebapiJsonServiceImpl.java
ÎļþÒÑɾ³ý
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/JsonMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,56 @@
package org.jeecg.modules.msi.utils;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.util.JSONPObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
/**
 * json转换.
 */
public class JsonMapper {
    /** logger. */
    private static Logger logger = LoggerFactory.getLogger(JsonMapper.class);
    /** jackson. */
    private ObjectMapper mapper;
    /** constructor. */
    public JsonMapper() {
        mapper = new ObjectMapper();
        mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
    }
    public String toJson(Object object) throws IOException {
        return mapper.writeValueAsString(object);
    }
    public <T> T fromJson(String jsonString, Class<T> clazz) throws IOException {
        if ((jsonString == null) || "".equals(jsonString.trim())) {
            return null;
        }
        return mapper.readValue(jsonString, clazz);
    }
    /**
     * new TypeReference<List<String>>(){}
     */
    public <T> T fromJson(String jsonString, TypeReference<T> typeReference)
            throws IOException {
        if ((jsonString == null) || "".equals(jsonString.trim())) {
            return null;
        }
        return (T) mapper.readValue(jsonString, typeReference);
    }
    public String toJsonP(String functionName, Object object)
            throws IOException {
        return toJson(new JSONPObject(functionName, object));
    }
}
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/WebServiceUtil.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,62 @@
package org.jeecg.modules.msi.utils;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
public class WebServiceUtil {
    /**
     * 1.代理类工厂的方式,需要拿到对方的接口地址, åŒæ—¶éœ€è¦å¼•入接口
     */
    public static void invokeService_1(String address, Class<?> tClass){
        // æŽ¥å£åœ°å€
        //String address = "http://localhost:8080/services/ws/api?wsdl";
        // ä»£ç†å·¥åŽ‚
        JaxWsProxyFactoryBean jaxWsProxyFactoryBean = new JaxWsProxyFactoryBean();
        // è®¾ç½®ä»£ç†åœ°å€
        jaxWsProxyFactoryBean.setAddress(address);
        // è®¾ç½®æŽ¥å£ç±»åž‹
        jaxWsProxyFactoryBean.setServiceClass(tClass);
        // åˆ›å»ºä¸€ä¸ªä»£ç†æŽ¥å£å®žçް
        Object us = jaxWsProxyFactoryBean.create();
        // æ•°æ®å‡†å¤‡
        String data = "hello world";
        // è°ƒç”¨ä»£ç†æŽ¥å£çš„æ–¹æ³•调用并返回结果
        //String result = us.emrService(data);
        //System.out.println("返回结果:" + result);
    }
    /**
     * 3. åŠ¨æ€è°ƒç”¨
     */
    public static String invokeService(String uri, String data, String method)
    {
        JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
        Client client = dcf.createClient(uri);
        Object[] objects = new Object[0];
        try {
            objects = client.invoke(method, data);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return String.valueOf(objects[0]);
    }
    /**
     * 2. åŠ¨æ€è°ƒç”¨
     */
    public static String invokeServiceObJect(String uri,Object[] datas, String method)
    {
        JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
        Client client = dcf.createClient(uri);
        Object[] objects = new Object[0];
        try {
            objects = client.invoke(method, datas);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return String.valueOf(objects[0]);
    }
}
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/controller/MsiWebapiJsonController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,56 @@
package org.jeecg.modules.msi.webapi.controller;
import com.fasterxml.jackson.core.type.TypeReference;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import liquibase.pro.packaged.S;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.modules.msi.utils.JsonMapper;
import org.jeecg.modules.msi.webapi.entity.MsiWebapiJsonEntity;
import org.jeecg.modules.msi.webapi.service.IMsiWebapiJsonService;
import org.jeecg.modules.msi.webapi.vo.MachineEquipentInfo;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.io.IOException;
import java.util.List;
@Slf4j
@Api(tags = "自动化线数据")
@RestController
@RequestMapping("/msi/webapi")
public class MsiWebapiJsonController extends JeecgController<MsiWebapiJsonEntity, IMsiWebapiJsonService> {
    @AutoLog(value = "自动化线数据接收")
    @ApiOperation(value = "自动化线数据接收 ", notes = "自动化线数据接收")
    @PostMapping(value = "/receiveAutomation")
    public void receiveSaveMsiWebApiJson(String data) {
        MsiWebapiJsonEntity entity = new MsiWebapiJsonEntity();
        if (StringUtils.isBlank(data)) {
            return;
        }
        entity.setModuleType("MDC");
        entity.setWebapiInfo(data);
        //后续进行其他业务关联
        JsonMapper mapper = new JsonMapper();
        try {
            List<MachineEquipentInfo> machineInfoList = mapper.fromJson(data, new TypeReference<List<MachineEquipentInfo>>(){});
            for (MachineEquipentInfo machineInfo : machineInfoList) {
                System.out.println(machineInfo);
                // Add additional processing logic here for each item
            }
        } catch (IOException e) {
            log.error("JSON parsing error: {}", e.getMessage());
            throw new RuntimeException("Invalid data format", e);
        }
        service.save(entity);
    }
}
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/entity/MsiWebapiJsonEntity.java
ÎļþÃû´Ó lxzn-module-msi/src/main/java/org/jeecg/modules/msi/entity/MsiWebapiJsonEntity.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package org.jeecg.modules.msi.entity;
package org.jeecg.modules.msi.webapi.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/MsiWebapiJsonMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
package org.jeecg.modules.msi.webapi.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.msi.webapi.entity.MsiWebapiJsonEntity;
public interface MsiWebapiJsonMapper extends BaseMapper<MsiWebapiJsonEntity> {
}
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/xml/MsiWebapiJsonMapper.fxml
ÎļþÃû´Ó lxzn-module-msi/src/main/java/org/jeecg/modules/msi/mapper/xml/MsiWebapiJsonMapper.fxml ÐÞ¸Ä
@@ -1,4 +1,4 @@
<?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="org.jeecg.modules.msi.mapper.MsiWebapiJsonMapper">
<mapper namespace="org.jeecg.modules.msi.webapi.mapper.MsiWebapiJsonMapper">
</mapper>
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/IMsiWebapiJsonService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
package org.jeecg.modules.msi.webapi.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.msi.webapi.entity.MsiWebapiJsonEntity;
public interface IMsiWebapiJsonService  extends IService<MsiWebapiJsonEntity> {
}
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
package org.jeecg.modules.msi.webapi.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.msi.webapi.entity.MsiWebapiJsonEntity;
import org.jeecg.modules.msi.webapi.mapper.MsiWebapiJsonMapper;
import org.jeecg.modules.msi.webapi.service.IMsiWebapiJsonService;
import org.springframework.stereotype.Service;
@Service
public class MsiWebapiJsonServiceImpl extends ServiceImpl<MsiWebapiJsonMapper, MsiWebapiJsonEntity> implements IMsiWebapiJsonService {
}
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/DetailedListVo.java
ÎļþÃû´Ó lxzn-module-msi/src/main/java/org/jeecg/modules/msi/vo/DetailedListVo.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package org.jeecg.modules.msi.vo;
package org.jeecg.modules.msi.webapi.vo;
import lombok.Data;
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/MachineEquipentInfo.java
ÎļþÃû´Ó lxzn-module-msi/src/main/java/org/jeecg/modules/msi/vo/MachineEquipentInfo.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package org.jeecg.modules.msi.vo;
package org.jeecg.modules.msi.webapi.vo;
import lombok.Data;
@@ -8,7 +8,7 @@
public class MachineEquipentInfo {
    private String machineNo;
    private String itemCount;
    private Integer itemCount;
    private String beginTime;
    private String endTime;
    private List<DetailedListVo> itemList;
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/MsiWebServiceServiceApi.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
package org.jeecg.modules.msi.webservice.service;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
@WebService(name = "msiWebServiceApi", targetNamespace = "http://msi.lxzn.com")
public interface MsiWebServiceServiceApi {
    /**
     * test æ¼”示
     * @param  data ä¼ å‚
     * @return
     */
    @WebMethod
    String testData(@WebParam String data);
}
lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/impl/MsiWebServiceServiceApiImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
package org.jeecg.modules.msi.webservice.service.impl;
public class MsiWebServiceServiceApiImpl {
}