From e70428eb12c33888fa36b680ad9582c95a50a56f Mon Sep 17 00:00:00 2001 From: yangbin <yangbin@qq.com> Date: 星期一, 31 三月 2025 13:04:31 +0800 Subject: [PATCH] 自动化产线集成模块添加数据查询 --- lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/controller/MsiWebapiJsonController.java | 56 +++++++++++ lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/JsonMapper.java | 56 +++++++++++ lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java | 2 lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/MsiWebapiJsonMapper.java | 8 + lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/xml/MsiWebapiJsonMapper.fxml | 2 lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/IMsiWebapiJsonService.java | 7 + lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/DetailedListVo.java | 2 lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/entity/MsiWebapiJsonEntity.java | 2 lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java | 11 ++ /dev/null | 11 -- lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/WebServiceUtil.java | 62 ++++++++++++ lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/MachineEquipentInfo.java | 4 lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/MsiWebServiceServiceApi.java | 18 +++ lxzn-boot-base-core/pom.xml | 12 ++ lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/impl/MsiWebServiceServiceApiImpl.java | 5 + 15 files changed, 241 insertions(+), 17 deletions(-) diff --git a/lxzn-boot-base-core/pom.xml b/lxzn-boot-base-core/pom.xml index 51f8564..052feea 100644 --- a/lxzn-boot-base-core/pom.xml +++ b/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> diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java b/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java index 5aeb5ce..982587e 100644 --- a/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java +++ b/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"); diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/controller/MsiWebapiJsonController.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/controller/MsiWebapiJsonController.java deleted file mode 100644 index 066eb1e..0000000 --- a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/controller/MsiWebapiJsonController.java +++ /dev/null @@ -1,34 +0,0 @@ -package org.jeecg.modules.msi.controller; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -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.entity.MsiWebapiJsonEntity; -import org.jeecg.modules.msi.service.IMsiWebapiJsonService; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -@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"); - //鍚庣画杩涜鍏朵粬涓氬姟鍏宠仈 - service.save(entity); - } - -} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/mapper/MsiWebapiJsonMapper.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/mapper/MsiWebapiJsonMapper.java deleted file mode 100644 index 3250d0c..0000000 --- a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/mapper/MsiWebapiJsonMapper.java +++ /dev/null @@ -1,8 +0,0 @@ -package org.jeecg.modules.msi.mapper; - - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import org.jeecg.modules.msi.entity.MsiWebapiJsonEntity; - -public interface MsiWebapiJsonMapper extends BaseMapper<MsiWebapiJsonEntity> { -} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/IMsiWebapiJsonService.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/IMsiWebapiJsonService.java deleted file mode 100644 index f5978a0..0000000 --- a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/IMsiWebapiJsonService.java +++ /dev/null @@ -1,7 +0,0 @@ -package org.jeecg.modules.msi.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import org.jeecg.modules.msi.entity.MsiWebapiJsonEntity; - -public interface IMsiWebapiJsonService extends IService<MsiWebapiJsonEntity> { -} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/impl/MsiWebapiJsonServiceImpl.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/impl/MsiWebapiJsonServiceImpl.java deleted file mode 100644 index 18b6f20..0000000 --- a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/service/impl/MsiWebapiJsonServiceImpl.java +++ /dev/null @@ -1,11 +0,0 @@ -package org.jeecg.modules.msi.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.jeecg.modules.msi.entity.MsiWebapiJsonEntity; -import org.jeecg.modules.msi.mapper.MsiWebapiJsonMapper; -import org.jeecg.modules.msi.service.IMsiWebapiJsonService; -import org.springframework.stereotype.Service; - -@Service -public class MsiWebapiJsonServiceImpl extends ServiceImpl<MsiWebapiJsonMapper, MsiWebapiJsonEntity> implements IMsiWebapiJsonService { -} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/JsonMapper.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/JsonMapper.java new file mode 100644 index 0000000..1f1c88e --- /dev/null +++ b/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)); + } +} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/WebServiceUtil.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/utils/WebServiceUtil.java new file mode 100644 index 0000000..a104726 --- /dev/null +++ b/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.浠g悊绫诲伐鍘傜殑鏂瑰紡,闇�瑕佹嬁鍒板鏂圭殑鎺ュ彛鍦板潃, 鍚屾椂闇�瑕佸紩鍏ユ帴鍙� + */ + public static void invokeService_1(String address, Class<?> tClass){ + // 鎺ュ彛鍦板潃 + //String address = "http://localhost:8080/services/ws/api?wsdl"; + // 浠g悊宸ュ巶 + JaxWsProxyFactoryBean jaxWsProxyFactoryBean = new JaxWsProxyFactoryBean(); + // 璁剧疆浠g悊鍦板潃 + jaxWsProxyFactoryBean.setAddress(address); + // 璁剧疆鎺ュ彛绫诲瀷 + jaxWsProxyFactoryBean.setServiceClass(tClass); + // 鍒涘缓涓�涓唬鐞嗘帴鍙e疄鐜� + Object us = jaxWsProxyFactoryBean.create(); + // 鏁版嵁鍑嗗 + String data = "hello world"; + // 璋冪敤浠g悊鎺ュ彛鐨勬柟娉曡皟鐢ㄥ苟杩斿洖缁撴灉 + //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]); + } +} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/controller/MsiWebapiJsonController.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/controller/MsiWebapiJsonController.java new file mode 100644 index 0000000..e8de154 --- /dev/null +++ b/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); + } + +} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/entity/MsiWebapiJsonEntity.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/entity/MsiWebapiJsonEntity.java similarity index 96% rename from lxzn-module-msi/src/main/java/org/jeecg/modules/msi/entity/MsiWebapiJsonEntity.java rename to lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/entity/MsiWebapiJsonEntity.java index b7cc28d..8cea7da 100644 --- a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/entity/MsiWebapiJsonEntity.java +++ b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/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; diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/MsiWebapiJsonMapper.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/MsiWebapiJsonMapper.java new file mode 100644 index 0000000..3d4ca98 --- /dev/null +++ b/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> { +} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/mapper/xml/MsiWebapiJsonMapper.fxml b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/xml/MsiWebapiJsonMapper.fxml similarity index 67% rename from lxzn-module-msi/src/main/java/org/jeecg/modules/msi/mapper/xml/MsiWebapiJsonMapper.fxml rename to lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/mapper/xml/MsiWebapiJsonMapper.fxml index cfdb996..a330cc4 100644 --- a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/mapper/xml/MsiWebapiJsonMapper.fxml +++ b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/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> \ No newline at end of file diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/IMsiWebapiJsonService.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/IMsiWebapiJsonService.java new file mode 100644 index 0000000..3fa4d5b --- /dev/null +++ b/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> { +} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java new file mode 100644 index 0000000..ab23abd --- /dev/null +++ b/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 { +} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/vo/DetailedListVo.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/DetailedListVo.java similarity index 77% rename from lxzn-module-msi/src/main/java/org/jeecg/modules/msi/vo/DetailedListVo.java rename to lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/DetailedListVo.java index daf9b6b..146b306 100644 --- a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/vo/DetailedListVo.java +++ b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/DetailedListVo.java @@ -1,4 +1,4 @@ -package org.jeecg.modules.msi.vo; +package org.jeecg.modules.msi.webapi.vo; import lombok.Data; diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/vo/MachineEquipentInfo.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/MachineEquipentInfo.java similarity index 75% rename from lxzn-module-msi/src/main/java/org/jeecg/modules/msi/vo/MachineEquipentInfo.java rename to lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/vo/MachineEquipentInfo.java index 1f07c46..1679cd1 100644 --- a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/vo/MachineEquipentInfo.java +++ b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/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; diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/MsiWebServiceServiceApi.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/MsiWebServiceServiceApi.java new file mode 100644 index 0000000..b390855 --- /dev/null +++ b/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); +} diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/impl/MsiWebServiceServiceApiImpl.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webservice/service/impl/MsiWebServiceServiceApiImpl.java new file mode 100644 index 0000000..d5068e1 --- /dev/null +++ b/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 { + +} -- Gitblit v1.9.3