From c23e793aab1bee979cd9422949f3c648f35b074a Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期一, 10 七月 2023 23:00:22 +0800
Subject: [PATCH] 关于集成接口管理模块的开发
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingDataMapper.java | 7
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/WsErpClientUtil.java | 60 ++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java | 32 +
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java | 561 +++++++++++++++++++++++++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/SysIntegrationDataFlowTypeEnum.java | 4
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/HttpUtils.java | 194 +++++++++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingDataService.java | 11
Source/UBCS/ubcs-service/ubcs-code/pom.xml | 42 ++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingDataServiceImpl.java | 15
Source/UBCS/pom.xml | 2
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java | 2
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntHeader.java | 2
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingData.java | 73 +++
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java | 4
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java | 19
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingDataWrapper.java | 67 +++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java | 90 +++
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingTask.java | 3
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingDataMapper.xml | 41 +
19 files changed, 1,187 insertions(+), 42 deletions(-)
diff --git a/Source/UBCS/pom.xml b/Source/UBCS/pom.xml
index 8d31ce1..5757e07 100644
--- a/Source/UBCS/pom.xml
+++ b/Source/UBCS/pom.xml
@@ -21,7 +21,7 @@
<spring.cloud.version>2021.0.3</spring.cloud.version>
<spring.platform.version>Cairo-SR8</spring.platform.version>
<maven.plugin.version>3.8.1</maven.plugin.version>
-
+ <axis2.version>1.7.5</axis2.version>
<!-- 鎺ㄨ崘浣跨敤Harbor -->
<docker.registry.url>192.168.0.157</docker.registry.url>
<docker.registry.host>http://${docker.registry.url}:2375</docker.registry.host>
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java
index 8473859..d5d0221 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/DockingSystemConfigDTO.java
@@ -186,7 +186,7 @@
private String classPath;
/**
- * 鏁版嵁娴佸悜鏂瑰紡
+ * 鏁版嵁娴佸悜鏂瑰紡1:鎺ュ彈2锛氬垎鍙�
*/
private String dataFlowType;
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingData.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingData.java
new file mode 100644
index 0000000..8d36382
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingData.java
@@ -0,0 +1,73 @@
+package com.vci.ubcs.code.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.vci.ubcs.starter.constant.CodeTableNameConstant;
+import com.vci.ubcs.starter.revision.model.BaseModel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/***
+ * 寰呴泦鎴愭暟鎹�
+ */
+@Data
+@TableName(CodeTableNameConstant.PL_CODE_DOCKINGPADATA)
+@ApiModel(value = "DockingData", description = "寰呴泦鎴愭暟鎹�")
+@EqualsAndHashCode(callSuper = true)
+public class DockingData extends BaseModel {
+
+ /**
+ * 搴忓垪鍖�
+ */
+ private static final long serialVersionUID = 5020487634341415429L;
+
+ /**
+ * 鍥惧彿
+ */
+ @ApiModelProperty(value = "鍥惧彿")
+ private String uniqueCode;
+
+ /**
+ * 绯荤粺鎺ュ彛oid
+ */
+ @ApiModelProperty(value = "鍒嗙被涓婚敭")
+ private String classifyOid;
+
+ /**
+ * 涓氬姟绫诲瀷涓婚敭
+ */
+ @ApiModelProperty(value = "涓氬姟绫诲瀷涓婚敭")
+ private String btmOid;
+
+ /**
+ * 涓氬姟绫诲瀷缂栧彿
+ */
+ @ApiModelProperty(value = "涓氬姟绫诲瀷缂栧彿")
+ private String btmId;
+
+ /**
+ * 鍙戦�佺被鍨�
+ */
+ @ApiModelProperty(value = "鍙戦�佺被鍨�")
+ private String sendType;
+
+ /**
+ * 浠诲姟鏄惁鐢熸垚
+ */
+ @ApiModelProperty(value = "浠诲姟鏄惁鐢熸垚")
+ private String sendFlag;
+
+ /**
+ * 鍒嗙被缂栧彿
+ */
+ @ApiModelProperty(value = "鍒嗙被缂栧彿")
+ private String classifyId;
+
+ /**
+ * 绯荤粺id
+ */
+ @ApiModelProperty(value = "鍒嗙被鍚嶇О")
+ private String classifyName;
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntHeader.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntHeader.java
index d94e7fc..70efd0f 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntHeader.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSysIntHeader.java
@@ -14,7 +14,7 @@
* 鎺ュ彛澶村崗璁�
*/
@Data
-@TableName(CodeTableNameConstant.PL_CODE_SYSINTPAREMTER)
+@TableName(CodeTableNameConstant.PL_CODE_SYSINTHEADER)
@ApiModel(value = "DockingSysIntHeader", description = "闆嗘垚鎺ュ彛-鎺ュ彛澶村崗璁璞�")
@EqualsAndHashCode(callSuper = true)
public class DockingSysIntHeader extends BaseModel {
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java
index c18ddf3..393a0ee 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java
@@ -284,9 +284,9 @@
/***
- * 鎺ㄩ�佺被鍨� 1:鏁版嵁鎺ㄩ��/2鍒嗙被鎺ㄩ�侊紝榛樿鏁版嵁鎺ㄩ��
+ * 鎺ㄩ�佺被鍨� 1:鏁版嵁鎺ㄩ��,2鍒嗙被鎺ㄩ�侊紝榛樿鏁版嵁鎺ㄩ��,3:缂栫爜鐢宠,4:缂栫爜鏇存敼锛堟洿鏀广�佺姸鎬侊紝鍥炴敹锛�,5:鍒嗙被鏌ヨ,6:鍚鍒欎俊鎭殑鍒嗙被鏌ヨ,7:鏁版嵁鏌ヨ
*/
- @ApiModelProperty(value = "鎺ㄩ�佺被鍨� 1:鏁版嵁鎺ㄩ��/2鍒嗙被鎺ㄩ�侊紝榛樿鏁版嵁鎺ㄩ��")
+ @ApiModelProperty(value = "鎺ㄩ�佺被鍨� 1:鏁版嵁鎺ㄩ��,2鍒嗙被鎺ㄩ�侊紝榛樿鏁版嵁鎺ㄩ��,3:缂栫爜鐢宠,4:缂栫爜鏇存敼锛堟洿鏀广�佺姸鎬侊紝鍥炴敹锛�,5:鍒嗙被鏌ヨ,6:鍚鍒欎俊鎭殑鍒嗙被鏌ヨ,7:鏁版嵁鏌ヨ")
private String pushType;
/***
* 鎺ㄩ�佺被鍨嬫樉绀哄��
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingTask.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingTask.java
index 9e7d7fe..67c61d6 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingTask.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingTask.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
+import com.vci.ubcs.starter.constant.CodeTableNameConstant;
import com.vci.ubcs.starter.revision.model.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -12,7 +13,7 @@
* 瀹氭椂鍒嗗彂浠诲姟瀵硅薄
*/
@Data
-@TableName("PL_CODE_DOCKINGTASK")
+@TableName(CodeTableNameConstant.PL_CODE_DOCKINGTASK)
@ApiModel(value = "DockingTask", description = "瀹氭椂鍒嗗彂浠诲姟瀵硅薄")
@EqualsAndHashCode
public class DockingTask extends BaseModel {
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java
index 84b8d0f..94db481 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/constant/CodeTableNameConstant.java
@@ -118,14 +118,29 @@
public static final String PL_CODE_SYSINTBASE = "PL_CODE_SYSINTBASE";
/**
- * 闆嗘垚鎺ュ彛-闆嗘垚鎺ュ彛绠$悊瀵硅薄
+ * 闆嗘垚鎺ュ彛-闆嗘垚鎺ュ彛閰嶇疆瀵硅薄
*/
public static final String PL_CODE_SYSINTINFO = "PL_CODE_SYSINTINFO";
/**
- * 闆嗘垚鎺ュ彛-闆嗘垚鎺ュ彛绠$悊瀵硅薄
+ * 闆嗘垚鎺ュ彛-闆嗘垚鍙傛暟绠$悊瀵硅薄
* platformbtm_sysintparemter
*/
public static final String PL_CODE_SYSINTPAREMTER = "PL_CODE_SYSINTPAREMTER";
+ /**
+ * 鎺ュ彛澶村崗璁�
+ */
+ public static final String PL_CODE_SYSINTHEADER = "PL_CODE_SYSINTHEADER";
+ /***
+ * 寰呴泦鎴愭暟鎹�
+ */
+ public static final String PL_CODE_DOCKINGPADATA = "PL_CODE_DOCKINGPADATA";
+ /***
+ * 瀹氭椂鍒嗗彂浠诲姟瀵硅薄
+ */
+ public static final String PL_CODE_DOCKINGTASK = "PL_CODE_DOCKINGTASK";
+
+
+
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/pom.xml b/Source/UBCS/ubcs-service/ubcs-code/pom.xml
index ceed936..a6f8417 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/pom.xml
+++ b/Source/UBCS/ubcs-service/ubcs-code/pom.xml
@@ -97,6 +97,48 @@
<artifactId>DmJdbcDriver18</artifactId>
<optional>true</optional>
</dependency>-->
+
+ <!--axis2 begin -->
+ <dependency>
+ <groupId>org.apache.axis2</groupId>
+ <artifactId>axis2-adb</artifactId>
+ <version>${axis2.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.axis2</groupId>
+ <artifactId>axis2-transport-http</artifactId>
+ <version>${axis2.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.axis2</groupId>
+ <artifactId>axis2-transport-local</artifactId>
+ <version>${axis2.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.axis2</groupId>
+ <artifactId>axis2-kernel</artifactId>
+ <version>${axis2.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <artifactId>commons-io</artifactId>
+ <groupId>commons-io</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>geronimo-activation_1.1_spec</artifactId>
+ <groupId>org.apache.geronimo.specs</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>commons-logging</artifactId>
+ <groupId>commons-logging</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <!--axis2 end -->
+
</dependencies>
<build>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java
index 0ddb3ad..c24f718 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java
@@ -4,19 +4,19 @@
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.vci.ubcs.code.dto.DockingSystemConfigDTO;
import com.vci.ubcs.code.dto.DockingSystemDTO;
-import com.vci.ubcs.code.entity.CodeRule;
+import com.vci.ubcs.code.dto.UpdateSysInfoStatusDTO;
+import com.vci.ubcs.code.entity.DockingData;
import com.vci.ubcs.code.entity.DockingSystem;
import com.vci.ubcs.code.entity.DockingSystemConfig;
+import com.vci.ubcs.code.service.IDockingDataService;
import com.vci.ubcs.code.service.IDockingSystemConfigService;
import com.vci.ubcs.code.service.IDockingSystemService;
-import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
+import com.vci.ubcs.code.vo.pagemodel.DockingDataVO;
import com.vci.ubcs.code.vo.pagemodel.DockingSystemConfigVO;
import com.vci.ubcs.code.vo.pagemodel.DockingSystemVO;
-import com.vci.ubcs.code.wrapper.CodeRuleWrapper;
-import com.vci.ubcs.code.wrapper.DockingSystemConfigWrapper;
+import com.vci.ubcs.code.wrapper.DockingDataWrapper;
import com.vci.ubcs.code.wrapper.DockingSystemWrapper;
import com.vci.ubcs.starter.exception.VciBaseException;
-import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
@@ -40,12 +40,17 @@
* 闆嗘垚绯荤粺绠$悊鏈嶅姟
*/
private final IDockingSystemService dockingSystemService;
+
/***
* 闆嗘垚鎺ュ彛閰嶇疆鏈嶅姟
*/
private final IDockingSystemConfigService dockingSystemConfigService;
+ /***
+ * 寰呴泦鎴愭暟鎹湇鍔�
+ */
+ private final IDockingDataService dockingDataService;
/**绯荤粺闆嗘垚鐨勭郴缁熶俊鎭垪琛�
@@ -89,8 +94,8 @@
* @param oids 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞★紝oid鍜宼s闇�瑕佷紶杈�
* @return 鍒犻櫎缁撴灉鍙嶉锛氾細success锛氭垚鍔燂紝fail锛氬け璐�
*/
- @DeleteMapping( "/deleteDataById")
- public R deleteDataById( String oids) {
+ @DeleteMapping( "/deleteSystemsById")
+ public R deleteSystemsById( String oids) {
try {
return R.status(dockingSystemService.deleteDataById(oids));
}catch (VciBaseException e){
@@ -100,15 +105,15 @@
}
/**
* 绯荤粺闆嗘垚鍩虹淇℃伅鍒楄〃
- * @param DockingSystemConfig 鍩虹鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑
+ * @param dockingSystemConfig 鍩虹鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑
* @return 绯荤粺闆嗘垚鍩虹淇℃伅鏄剧ず瀵硅薄鍒楄〃
*/
@GetMapping("/gridSystemConfig")
@ApiOperationSupport(order = 3)
- @ApiOperation(value = "鍒嗛〉", notes = "DockingSystemConfig")
- public R<IPage<DockingSystemConfigVO>> gridSystemConfig(DockingSystemConfig DockingSystemConfig, Query query){
- IPage<DockingSystemConfig> pages = dockingSystemConfigService.page(Condition.getPage(query), Condition.getQueryWrapper(DockingSystemConfig));
- return R.data(DockingSystemConfigWrapper.build().pageVO(pages));
+ @ApiOperation(value = "鍒嗛〉", notes = "dockingSystemConfig")
+ public R<IPage<DockingSystemConfigVO>> gridSystemConfig(DockingSystemConfig dockingSystemConfig, Query query){
+ IPage<DockingSystemConfigVO> pages=dockingSystemConfigService.page(dockingSystemConfig,query);
+ return R.data(pages);
}
/**
@@ -125,4 +130,65 @@
return R.fail("淇濆瓨澶辫触!");
}
}
+
+ /**
+ * 澧炲姞 绯荤粺闆嗘垚鍩虹淇℃伅
+ * @param dockingSystemConfigDTO 绯荤粺闆嗘垚鍩虹淇℃伅鏁版嵁浼犺緭瀵硅薄
+ * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+ */
+ @PostMapping( "/editSystemConfig")
+ public R editSystemConfig(@RequestBody DockingSystemConfigDTO dockingSystemConfigDTO){
+ try {
+ boolean res = dockingSystemConfigService.editSave(dockingSystemConfigDTO);
+ return R.success("淇濆瓨鎴愬姛!");
+ }catch (Throwable e){
+ return R.fail("淇濆瓨澶辫触!");
+ }
+ }
+ /**
+ * 鍒犻櫎绯荤粺闆嗘垚绯荤粺閰嶇疆淇℃伅
+ * @param oids 绯荤粺闆嗘垚鍩虹淇℃伅鏁版嵁浼犺緭瀵硅薄锛宱id鍜宼s闇�瑕佷紶杈�
+ * @return 鍒犻櫎缁撴灉鍙嶉锛氾細success锛氭垚鍔燂紝fail锛氬け璐�
+ */
+ @DeleteMapping( "/deleteSystemConfigsById")
+ public R deleteSystemConfigsById( String oids) {
+ try {
+ return R.status(dockingSystemConfigService.deleteDataById(oids));
+ }catch (VciBaseException e){
+ R.fail(e.getMessage());
+ }
+ return R.success("鎿嶄綔鎴愬姛");
+ }
+ /***
+ * 鎺ュ彛淇℃伅鏄惁鍚敤/鍋滅敤
+ * @param sysInfoStatusDTO
+ * @return
+ */
+ @PostMapping("/updateStatus")
+ public R updateStatus(@RequestBody UpdateSysInfoStatusDTO sysInfoStatusDTO){
+ return dockingSystemConfigService.updateStatus(sysInfoStatusDTO);
+ }
+
+ /***
+ * 鎵嬪姩鎺ㄩ�佸垎绫�/鏁版嵁
+ * @param dockingSystemConfigDTO
+ * @return
+ */
+ @PostMapping("/pushData")
+ public R pushData(@RequestBody DockingSystemConfigDTO dockingSystemConfigDTO){
+ return dockingSystemConfigService.pushData(dockingSystemConfigDTO);
+ }
+
+ /**
+ * 寰呴泦鎴愭暟鎹�
+ * @param dockingData 鍩虹鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑
+ * @return 绯荤粺闆嗘垚鍩虹淇℃伅鏄剧ず瀵硅薄鍒楄〃
+ */
+ @GetMapping("/gridDockingData")
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "鍒嗛〉", notes = "DockingDataVO")
+ public R<IPage<DockingDataVO>> gridDockingData(DockingData dockingData, Query query){
+ IPage<DockingData> pages = dockingDataService.page(Condition.getPage(query), Condition.getQueryWrapper(dockingData));
+ return R.data(DockingDataWrapper.build().pageVO(pages));
+ }
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/SysIntegrationDataFlowTypeEnum.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/SysIntegrationDataFlowTypeEnum.java
index 316825f..403a381 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/SysIntegrationDataFlowTypeEnum.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/enumpack/SysIntegrationDataFlowTypeEnum.java
@@ -15,9 +15,9 @@
*/
PUSH("push","鎺ㄩ��"),
/**
- * 閫氱煡鍜屾煡璇�
+ * 鎺ュ彈
*/
- NOTICE_AND_QUERY("noticeAndQuery","閫氱煡鍜屾煡璇�");
+ ACCEPT("accept","鎺ユ敹");
/**
* 鏋氫妇鐨勫��
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingDataMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingDataMapper.java
new file mode 100644
index 0000000..e177ebd
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/DockingDataMapper.java
@@ -0,0 +1,7 @@
+package com.vci.ubcs.code.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.vci.ubcs.code.entity.DockingData;
+
+public interface DockingDataMapper extends BaseMapper<DockingData> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingDataService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingDataService.java
new file mode 100644
index 0000000..64e6361
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingDataService.java
@@ -0,0 +1,11 @@
+package com.vci.ubcs.code.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.entity.DockingData;
+
+/***
+ * @author xj
+ * @date 2023-07-10
+ */
+public interface IDockingDataService extends IService<DockingData> {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java
index 373ccab..1cee607 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java
@@ -1,9 +1,15 @@
package com.vci.ubcs.code.service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.code.dto.DockingSystemConfigDTO;
+import com.vci.ubcs.code.dto.UpdateSysInfoStatusDTO;
import com.vci.ubcs.code.entity.DockingSystemConfig;
+import com.vci.ubcs.code.vo.pagemodel.DockingSystemConfigVO;
import com.vci.ubcs.code.vo.pagemodel.DockingSystemVO;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
/***
* 绯荤粺鎺ュ彛绠$悊-鎺ュ彛閰嶇疆鏈嶅姟
@@ -12,19 +18,41 @@
*/
public interface IDockingSystemConfigService extends IService<DockingSystemConfig> {
+
+ /**
+ * 绯荤粺闆嗘垚鍩虹淇℃伅鍒楄〃
+ * @param dockingSystemConfig 鍩虹鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑
+ * @return 绯荤粺闆嗘垚鍩虹淇℃伅鏄剧ず瀵硅薄鍒楄〃
+ */
+ IPage<DockingSystemConfigVO> page(DockingSystemConfig dockingSystemConfig, Query query);
+
/**
* 澧炲姞 绯荤粺闆嗘垚鐨勬帴鍙g鐞嗕俊鎭�
* @param dockingSystemConfigDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
* @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
*/
- public boolean addSave(DockingSystemConfigDTO dockingSystemConfigDTO);
+ boolean addSave(DockingSystemConfigDTO dockingSystemConfigDTO);
/**
* 淇敼 绯荤粺闆嗘垚鐨勬帴鍙g鐞嗕俊鎭�
* @param dockingSystemConfigDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
* @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
*/
- DockingSystemVO editSave(DockingSystemConfigDTO dockingSystemConfigDTO);
+ boolean editSave(DockingSystemConfigDTO dockingSystemConfigDTO);
+
+ /***
+ * 鏇存柊鎺ュ彛閰嶇疆淇℃伅鐘舵��
+ * @param sysInfoStatusDTO
+ * @return
+ */
+ public R updateStatus(UpdateSysInfoStatusDTO sysInfoStatusDTO);
+ /***
+ * 鎵嬪姩鍚屾鎺ュ彛锛屽彧鏈夋帹閫佺殑鎵嶄細
+ * @param dockingSystemConfig
+ * @return
+ * @throws VciBaseException
+ */
+ R pushData(DockingSystemConfigDTO dockingSystemConfigDTO) throws VciBaseException;
boolean deleteDataById(String oids);
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingDataServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingDataServiceImpl.java
new file mode 100644
index 0000000..1efcbef
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingDataServiceImpl.java
@@ -0,0 +1,15 @@
+package com.vci.ubcs.code.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.entity.DockingData;
+import com.vci.ubcs.code.mapper.DockingDataMapper;
+import com.vci.ubcs.code.service.IDockingDataService;
+import org.springframework.stereotype.Service;
+
+/***
+ * @author xj
+ * @date 2023-07-10
+ */
+@Service
+public class DockingDataServiceImpl extends ServiceImpl<DockingDataMapper, DockingData> implements IDockingDataService {
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
index 4d9af0a..db243fa 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
@@ -1,36 +1,62 @@
package com.vci.ubcs.code.service.impl;
+import com.alibaba.cloud.commons.lang.StringUtils;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.thoughtworks.xstream.XStream;
+import com.thoughtworks.xstream.io.xml.DomDriver;
+import com.vci.ubcs.code.bo.CodeTemplateAttrSqlBO;
+import com.vci.ubcs.code.constant.FrameWorkDefaultValueConstant;
import com.vci.ubcs.code.constant.MdmBtmTypeConstant;
import com.vci.ubcs.code.dto.DockingSysIntHeaderDTO;
import com.vci.ubcs.code.dto.DockingSystemConfigDTO;
import com.vci.ubcs.code.dto.DockingSysIntParamDTO;
-import com.vci.ubcs.code.entity.DockingSysIntHeader;
-import com.vci.ubcs.code.entity.DockingSysIntParam;
-import com.vci.ubcs.code.entity.DockingSystem;
-import com.vci.ubcs.code.entity.DockingSystemConfig;
-import com.vci.ubcs.code.enumpack.SysIntegrationRequestTypeEnum;
-import com.vci.ubcs.code.mapper.DockingSysIntHeaderMapper;
-import com.vci.ubcs.code.mapper.DockingSysIntParamMapper;
-import com.vci.ubcs.code.mapper.DockingSystemConfigMapper;
-import com.vci.ubcs.code.mapper.DockingSystemMapper;
-import com.vci.ubcs.code.service.IDockingSysIntHeaderService;
-import com.vci.ubcs.code.service.IDockingSysIntParamService;
-import com.vci.ubcs.code.service.IDockingSystemConfigService;
-import com.vci.ubcs.code.vo.pagemodel.DockingSysIntHeaderVO;
-import com.vci.ubcs.code.vo.pagemodel.DockingSystemVO;
+import com.vci.ubcs.code.dto.UpdateSysInfoStatusDTO;
+import com.vci.ubcs.code.dto.datapush.classify.JsonRootDataDTO;
+import com.vci.ubcs.code.dto.datapush.classify.NodeClassifyDTO;
+import com.vci.ubcs.code.dto.datapush.classify.NodeDataDTO;
+import com.vci.ubcs.code.dto.datapush.classify.NodeLibraryDTO;
+import com.vci.ubcs.code.dto.datapush.result.ResultJsonDTO;
+import com.vci.ubcs.code.dto.datapush.result.ResultNodeDataDTO;
+import com.vci.ubcs.code.dto.datapush.result.ResultNodeObjectDTO;
+import com.vci.ubcs.code.entity.*;
+import com.vci.ubcs.code.enumpack.*;
+import com.vci.ubcs.code.mapper.*;
+import com.vci.ubcs.code.service.*;
+import com.vci.ubcs.code.util.HttpUtils;
+import com.vci.ubcs.code.util.WsErpClientUtil;
+import com.vci.ubcs.code.vo.pagemodel.*;
+import com.vci.ubcs.code.wrapper.DockingSysIntHeaderWrapper;
+import com.vci.ubcs.code.wrapper.DockingSysIntParamWrapper;
+import com.vci.ubcs.code.wrapper.DockingSystemConfigWrapper;
import com.vci.ubcs.starter.exception.VciBaseException;
import com.vci.ubcs.starter.revision.service.RevisionModelUtil;
import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
+import com.vci.ubcs.starter.web.constant.QueryOptionConstant;
+import com.vci.ubcs.starter.web.pagemodel.PageHelper;
import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import com.vci.ubcs.starter.web.util.VciDateUtil;
import lombok.extern.slf4j.Slf4j;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
+import org.springframework.util.LinkedMultiValueMap;
+import org.springframework.util.MultiValueMap;
+import javax.annotation.Resource;
import java.util.*;
+import java.util.stream.Collectors;
+
+import static com.vci.ubcs.code.constant.MdmDuckingConstant.*;
+import static com.vci.ubcs.starter.util.MdmBtmTypeConstant.CODE_CLASSIFY_OID_FIELD;
/***
* 绯荤粺鎺ュ彛绠$悊-鎺ュ彛閰嶇疆鏈嶅姟
@@ -41,6 +67,8 @@
@Service
public class DockingSystemConfigServiceImpl extends ServiceImpl<DockingSystemConfigMapper, DockingSystemConfig> implements IDockingSystemConfigService{
+ @Value("${dataSyncPush.dataParamName:xmlData}")
+ public String DATA_PARAM_NAME;
/***
* 闆嗘垚绯荤粺绠$悊鏈嶅姟
*/
@@ -53,8 +81,6 @@
@Autowired(required = false)
private IDockingSysIntParamService dockingSysIntParamService;
-
-
/***
* 闆嗘垚鎺ュ彛-闆嗘垚鎺ュ彛绠$悊鍙傛暟鏈嶅姟
*/
@@ -62,17 +88,71 @@
private IDockingSysIntHeaderService dockingSysIntHeaderService;
+
+
/***
* 闆嗘垚鎺ュ彛-闆嗘垚绯荤粺鏈嶅姟
*/
@Autowired(required = false)
private DockingSystemMapper dockingSystemMapper;
+ /***
+ * 浠诲姟鐢熸垚鏈嶅姟
+ */
+ @Autowired(required = false)
+ private IDockingTaskService dockingTaskService;
+
+ /**
+ * 涓绘暟鎹紩鎿庣殑鏈嶅姟
+ */
+ @Resource
+ private MdmEngineService engineService;
+
+
+ /**
+ * 涓婚搴撳垎绫荤殑鏈嶅姟
+ */
+ @Resource
+ private ICodeClassifyService classifyService;
/**
* 瀵硅薄鐨勬搷浣�
*/
@Autowired
private RevisionModelUtil revisionModelUtil;
+
+ /**
+ * 閫氱敤鏌ヨ
+ */
+ @Resource
+ private CommonsMapper commonsMapper;
+
+
+ /**
+ * 鏃ュ織鏂囦欢鏈嶅姟
+ */
+ @Resource
+ private IDockingLogeService dockingLogeService;
+
+ @Override
+ public IPage<DockingSystemConfigVO> page(DockingSystemConfig DockingSystemConfig, Query query) {
+
+ IPage<DockingSystemConfig> pages = page(Condition.getPage(query), Condition.getQueryWrapper(DockingSystemConfig));
+ List<DockingSystemConfig> dockingSystemConfigList= pages.getRecords();
+ dockingSystemConfigList.stream().forEach(dockingSystemConfig -> {
+ dockingSystemConfig.setDataFlowTypeText(SysIntegrationDataFlowTypeEnum.getTextByValue(dockingSystemConfig.getDataFlowType()));
+ dockingSystemConfig.setAuthorityTypeText(SysIntegrationAuthorityTypeEnum.getTextByValue(dockingSystemConfig.getAuthorityType()));
+ dockingSystemConfig.setParamTypeText(SysIntegrationParamAndReturnTypeEnum.getTextByValue(dockingSystemConfig.getParamType()));
+ dockingSystemConfig.setReturnTypeText(SysIntegrationParamAndReturnTypeEnum.getTextByValue(dockingSystemConfig.getReturnType()));
+ dockingSystemConfig.setInterfaceTypeText(SysIntegrationRequestTypeEnum.getValueByText(dockingSystemConfig.getInterfaceType()));
+ dockingSystemConfig.setPushTypeText(sysIntegrationPushTypeEnum.getTextByValue(dockingSystemConfig.getPushType()));
+ dockingSystemConfig.setRequestMethodText(SysIntegrationRequestMethodEnum.getTextByValue(dockingSystemConfig.getRequestMethod()));
+ //dockingSystemConfig.setSysBaseName("");
+ // dockingSystemConfig.setSourceSysName("");
+ //dockingSystemConfig.setTargetSysName("");
+ });
+ return DockingSystemConfigWrapper.build().pageVO(pages);
+ }
+
/**
* 澧炲姞绯荤粺闆嗘垚鐨勬帴鍙g鐞嗕俊鎭�
* @param dockingSystemConfigDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
@@ -127,9 +207,154 @@
}
+ /**
+ * 淇敼 绯荤粺闆嗘垚鐨勬帴鍙g鐞嗕俊鎭�
+ * @param dockingSystemConfigDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞�
+ * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+ */
+ @Transactional(rollbackFor = Exception.class)
@Override
- public DockingSystemVO editSave(DockingSystemConfigDTO dockingSystemDTO) {
- return null;
+ public boolean editSave(DockingSystemConfigDTO dockingSystemConfigDTO) {
+ VciBaseUtil.alertNotNull(dockingSystemConfigDTO,"鏁版嵁瀵硅薄",dockingSystemConfigDTO.getOid(),"绯荤粺闆嗘垚鍩虹淇℃伅涓婚敭");
+ String sourcesystemoid = dockingSystemConfigDTO.getSourceSystemOid();//.getSourcesystemoid();
+ DockingSystem dockingSystem = dockingSystemMapper.selectById(sourcesystemoid);
+ dockingSystemConfigDTO.setSysBaseOid(sourcesystemoid);
+ dockingSystemConfigDTO.setSysBaseId(dockingSystem.getId());
+ dockingSystemConfigDTO.setBtmname(dockingSystem.getName());
+ //灏咲TO杞崲涓篋O
+ DockingSystemConfig dockingSystemConfig = dockingSystemConfigMapper.selectById(dockingSystemConfigDTO.getOid());
+ revisionModelUtil.copyFromDTOIgnore(dockingSystemConfigDTO,dockingSystemConfig);
+ String sysInfoOid=dockingSystemConfigDTO.getOid();
+ List<DockingSysIntParamDTO> dockingSysIntParamDTOS= dockingSystemConfigDTO.getSysIntParamDTOS();
+ List<DockingSysIntParam> dockingSysIntParamList=new ArrayList<>();
+ if(!CollectionUtils.isEmpty(dockingSysIntParamDTOS)) {
+ dockingSysIntParamDTOS.stream().forEach(dockingSysIntParamDTO -> {
+ DockingSysIntParam dockingSysIntParam = new DockingSysIntParam();
+ BeanUtilForVCI.copyPropertiesIgnoreCase(dockingSysIntParamDTO, dockingSysIntParam);
+ dockingSysIntParamList.add(dockingSysIntParam);
+ });
+ }
+ List<DockingSysIntHeaderDTO> dockingSysIntHeaderDTOS= dockingSystemConfigDTO.getSysIntHeaderDTOS();
+ List<DockingSysIntHeader> dockingSysIntHeaderList = new ArrayList<>();
+ if(!CollectionUtils.isEmpty(dockingSysIntHeaderDTOS)) {
+ dockingSysIntHeaderDTOS.stream().forEach(dockingSysIntHeaderDTO -> {
+ DockingSysIntHeader dockingSysIntHeader = new DockingSysIntHeader();
+ BeanUtilForVCI.copyPropertiesIgnoreCase(dockingSysIntHeaderDTO, dockingSysIntHeader);
+ dockingSysIntHeaderList.add(dockingSysIntHeader);
+ });
+ }
+
+ //鎵归噺澶勭悊淇濆瓨header瀵硅薄
+ if(!CollectionUtils.isEmpty(dockingSysIntHeaderList)) {
+ List<String> idList=new ArrayList<>();
+ List<DockingSysIntHeader> headers_old =this.dockingSysIntHeaderService.list(Wrappers.<DockingSysIntHeader>query().lambda().eq(DockingSysIntHeader::getInfoOid,sysInfoOid));;
+ for (DockingSysIntHeader sysIntHeader:headers_old){
+ sysIntHeader.setUsedFlag(FLAG_FAIL);
+ idList.add(sysIntHeader.getOid());
+ }
+ if(idList.size()!=0){
+ boolean res=dockingSysIntHeaderService.removeBatchByIds(idList);
+ }
+ //鍐嶆柊澧瀐eaders
+ for(DockingSysIntHeader sysIntHeader:dockingSysIntHeaderList){
+ sysIntHeader.setUsedFlag(FLAG_TRUE);
+ sysIntHeader.setInfoOid(dockingSystemConfig.getOid());
+
+ }
+ boolean res= dockingSysIntHeaderService.saveBatch(dockingSysIntHeaderList);
+ }
+ //鎵归噺澶勭悊淇濆瓨Param瀵硅薄
+ if(!CollectionUtils.isEmpty(dockingSysIntParamList)) {
+ //鍏堝垹闄arams_old
+ List<String> idList=new ArrayList<>();
+ List<DockingSysIntParam> params_old =this.dockingSysIntParamService.list(Wrappers.<DockingSysIntParam>query().lambda().eq(DockingSysIntParam::getInfoOid,sysInfoOid));
+ for (DockingSysIntParam sysIntParamDO:params_old){
+ sysIntParamDO.setUsedFlag(FLAG_FAIL);
+ idList.add(sysIntParamDO.getOid());
+ }
+ if(idList.size()!=0){
+ boolean res= dockingSysIntParamService.removeBatchByIds(idList);
+ }
+ //鍐嶆柊澧瀙arams
+ for(DockingSysIntParam sysIntParamDOi:dockingSysIntParamList){
+ sysIntParamDOi.setUsedFlag(FLAG_TRUE);
+ sysIntParamDOi.setInfoOid(dockingSystemConfig.getOid());
+ }
+ dockingSysIntParamService.saveBatch(dockingSysIntParamList);
+ }
+ this.dockingSystemConfigMapper.updateById(dockingSystemConfig);
+ //return changeoDckingSystemEntityVOs(dockingSystemConfig,dockingSysIntHeaderList,dockingSysIntParamList);
+ return true;
+ }
+ /***
+ * 鏇存柊鎺ュ彛閰嶇疆淇℃伅鐘舵��
+ * @param sysInfoStatusDTO
+ * @return
+ */
+ @Override
+ public R updateStatus(UpdateSysInfoStatusDTO sysInfoStatusDTO) {
+ VciBaseUtil.alertNotNull(sysInfoStatusDTO.getOid(),"鏁版嵁瀵硅薄",sysInfoStatusDTO.getOid(),"绯荤粺闆嗘垚鍩虹淇℃伅涓婚敭");
+ DockingSystemConfig dockingSystemConfig = this.dockingSystemConfigMapper.selectById(sysInfoStatusDTO.getOid());
+ try {
+ dockingSystemConfig.setTs(VciDateUtil.str2Date(sysInfoStatusDTO.getTs(), VciDateUtil.DateTimeFormat));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ if(sysInfoStatusDTO.getUpdate().equals("disable")) {
+ dockingSystemConfig.setUsedFlag("false");
+ }else{
+ dockingSystemConfig.setUsedFlag("true");
+ }
+ dockingSystemConfigMapper.updateById(dockingSystemConfig);
+ return R.status(true);
+ }
+
+ /***
+ * 鎵嬪姩鍚屾鎺ュ彛锛屽彧鏈夋帹閫佺殑鎵嶄細
+ * @param dockingSystemConfigDTO
+ * @return
+ * @throws VciBaseException
+ */
+ @Transactional(rollbackFor = Exception.class)
+ @Override
+ public R pushData(DockingSystemConfigDTO dockingSystemConfigDTO) throws VciBaseException {
+ VciBaseUtil.alertNotNull(dockingSystemConfigDTO.getOid(),"鏁版嵁瀵硅薄",dockingSystemConfigDTO.getOid(),"绯荤粺闆嗘垚閰嶇疆淇℃伅涓婚敭");
+ if(dockingSystemConfigDTO.getDataFlowType().equals(SysIntegrationDataFlowTypeEnum.ACCEPT.getValue())){
+ throw new VciBaseException("浣犳墍閫夋嫨闆嗘垚閰嶇疆淇℃伅涓嶅睘浜庢帹閫佺被鍨嬬殑鎺ュ彛閰嶇疆锛�");
+ }
+ boolean issuccess=false;
+ String type="鏁版嵁鎺ㄩ��";
+ if(dockingSystemConfigDTO.getPushType().equalsIgnoreCase("1")){//鎺ㄩ�佹暟鎹�
+ pushDockingTasks(dockingSystemConfigDTO);
+ }else if(dockingSystemConfigDTO.getPushType().equalsIgnoreCase("2")){//鎺ㄩ�佸垎绫�
+ issuccess= pushClsfDatas(dockingSystemConfigDTO);
+ type="鍒嗙被鎺ㄩ��";
+ }
+ return issuccess?R.success(type+"鎴愬姛锛�"):R.fail(type+"澶辫触锛�");
+ }
+
+ /**
+ *
+ * @param dockingSystemConfig
+ * @param dockingSysIntHeaderList
+ * @param dockingSysIntParamList
+ * @return
+ */
+ private DockingSystemConfigVO changeoDckingSystemEntityVOs(DockingSystemConfig dockingSystemConfig , List<DockingSysIntHeader> dockingSysIntHeaderList , List<DockingSysIntParam> dockingSysIntParamList) {
+ DockingSystemConfigVO vo = new DockingSystemConfigVO();
+ if(dockingSystemConfig != null){
+ BeanUtilForVCI.copyPropertiesIgnoreCase(dockingSystemConfig,vo);
+ //濡傛灉鏈塴cstatus鐨勭被鐨勮瘽
+ if(!CollectionUtils.isEmpty(dockingSysIntParamList)) {
+ List<DockingSysIntParamVO> dockingSysIntParamVOList = DockingSysIntParamWrapper.build().entityVOs(dockingSysIntParamList);
+ vo.setSysIntParamVOs(dockingSysIntParamVOList);
+ }
+ if(!CollectionUtils.isEmpty(dockingSysIntHeaderList)){
+ List<DockingSysIntHeaderVO> dockingSysIntHeaderVOList= DockingSysIntHeaderWrapper.build().entityVOs(dockingSysIntHeaderList);
+ vo.setSysIntHeaderVOs(dockingSysIntHeaderVOList);
+ }
+ }
+ return vo;
}
@Override
@@ -153,4 +378,304 @@
VciBaseUtil.alertNotNull(dockingSystemConfigDTO.getClassPath(),"绫昏矾寰�");
}
}
+
+ private R pushDockingTasks(DockingSystemConfigDTO dockingSystemConfigDTO) {
+ String msg="鏁版嵁鎺ㄩ�佸埌瀹氭椂浠诲姟鎴愬姛锛�";
+ try {
+ DockingSystemConfig dockingSystemConfig =dockingSystemConfigMapper.selectById(dockingSystemConfigDTO.getOid());
+ String codeClassifyOid = dockingSystemConfig.getClassifyOid();
+ CodeClassifyTemplateVO templateVO = engineService.getUsedTemplateByClassifyOid(codeClassifyOid);
+ CodeClassifyVO topClassifyVO = classifyService.getTopClassifyVO(codeClassifyOid);
+ String btmTypeId = topClassifyVO.getBtmtypeid();
+ if (StringUtils.isBlank(btmTypeId)) {
+ return R.fail("杩欎釜鍒嗙被鎵�灞為《灞傚垎绫绘病鏈夋坊鍔犱笟鍔$被鍨�");
+ }
+ List<CodeClassifyVO> codeClassifyIdPathVOS = classifyService.listChildrenClassify(topClassifyVO.getOid(), true, "id", false);
+ List<CodeClassifyVO> codeClassifynamePathVOS = classifyService.listChildrenClassify(topClassifyVO.getOid(), true, "name", false);
+ Map<String/**鍒嗙被oid**/, String/**鍒嗙被浠e彿閾炬帴绗�**/> clsfOidIdMap = codeClassifyIdPathVOS.stream().collect(Collectors.toMap(s -> s.getOid(), t -> reverseOrderByList(t.getPath(), topClassifyVO, 1).toLowerCase(Locale.ROOT), (o1, o2) -> o2));
+ Map<String/**鍒嗙被oid**/, String/**鍒嗙被鍚嶇О閾炬帴绗�**/> clsfOidNameMap = codeClassifynamePathVOS.stream().collect(Collectors.toMap(s -> s.getOid(), t -> reverseOrderByList(t.getPath(), topClassifyVO, 2).toLowerCase(Locale.ROOT), (o1, o2) -> o2));
+ PageHelper pageHelper = new PageHelper();
+ pageHelper.setPage(1);
+ pageHelper.setLimit(1000000);
+ pageHelper.setStart(0);
+
+ HashMap<String, String> conditionMap = new HashMap<>();
+ if (!classifyService.checkHasChild(codeClassifyOid)) {
+ conditionMap.put(CODE_CLASSIFY_OID_FIELD, codeClassifyOid);
+ } else {
+ conditionMap.put(CODE_CLASSIFY_OID_FIELD, QueryOptionConstant.IN + "(select oid from " + VciBaseUtil.getTableName(MdmBtmTypeConstant.CODE_CLASSIFY)
+ + " where lcstatus='" + FrameWorkDefaultValueConstant.FRAMEWORK_DATA_ENABLED +
+ "' start with parentCodeClassifyOid = '" + codeClassifyOid + "' CONNECT BY PRIOR OID = parentCodeClassifyOid )");
+ }
+ conditionMap.put("islastr", "1");
+ conditionMap.put("islastv", "1");
+ List<String> lcstatusList = new ArrayList<>(Arrays.asList(new String[]{"TakeBack", "Released", "Disabled"}));
+ conditionMap.put("lcstatus", QueryOptionConstant.IN + VciBaseUtil.toInSql(lcstatusList.toArray(new String[0])));
+
+ CodeTemplateAttrSqlBO sqlBO = engineService.getSqlByTemplateVO(btmTypeId, templateVO, conditionMap, pageHelper);
+ List<Map<String,String>> maps = commonsMapper.queryByOnlySqlForMap(sqlBO.getSqlHasPage());
+ List<DockingTask> dockingTaskDO_insert = new ArrayList<>();
+ if (!CollectionUtils.isEmpty(maps)) {
+ maps.stream().forEach(map -> {
+ String btmoid = map.get("oid".toUpperCase(Locale.ROOT)) == null ? "" : map.get("oid".toUpperCase(Locale.ROOT)).toString();//鏁版嵁oid
+ String sendtype = map.get("lcstatus".toUpperCase(Locale.ROOT)) == null ? "" : map.get("lcstatus".toUpperCase(Locale.ROOT)).toString();//鏁版嵁鎺ㄩ�佺被鍨�
+ String id = map.get("id".toUpperCase(Locale.ROOT)) == null ? "" : map.get("id".toUpperCase(Locale.ROOT)).toString();//缂栫爜
+ String btmid = topClassifyVO.getBtmtypeid();//鏁版嵁涓氬姟绫诲瀷
+ String classifyoid = map.get("codeclsfid".toUpperCase(Locale.ROOT)) == null ? "" : map.get("codeclsfid".toUpperCase(Locale.ROOT)).toString();//鏁版嵁鎵�鍦ㄧ殑鍒嗙被id
+ String date2Str = VciDateUtil.date2Str(new Date(), VciDateUtil.DateTimeFormatStr);
+ DockingTask dockingTaskDO = new DockingTask();
+ dockingTaskDO.setOid(date2Str +"_"+id);
+ dockingTaskDO.setSendFlag(SEND_FLAG_FALSE);
+ dockingTaskDO.setId(id);//缂栫爜
+ dockingTaskDO.setUniqueCode("");
+ dockingTaskDO.setBtmOid(btmoid);//鏁版嵁oid
+ dockingTaskDO.setBtmId(btmid);//鏁版嵁涓氬姟绫诲瀷id
+ if (clsfOidIdMap.containsKey(classifyoid)) {
+ String classifyid = clsfOidIdMap.get(classifyoid);
+ dockingTaskDO.setClassifyId(classifyid);//鏁版嵁鍦ㄥ垎绫籭d
+ }
+ dockingTaskDO.setClassifyOid(classifyoid);//鏁版嵁鎵�鍦ㄥ垎绫籵id
+ if (clsfOidNameMap.containsKey(classifyoid)) {
+ String classifyname = clsfOidNameMap.get(classifyoid);
+ dockingTaskDO.setClassifyName(classifyname);//鏁版嵁鎵�鍦ㄥ垎绫诲悕绉�
+ }
+ dockingTaskDO.setSendType(sendtype);//鏁版嵁鎺ㄩ�佺被鍨�
+ //String dataoid=redisService.getUUIDEveryDay();
+ dockingTaskDO.setDataOid(date2Str +"_"+ btmoid);
+ //intinfo
+ dockingTaskDO.setSysInfoOid(dockingSystemConfigDTO.getOid());//intinfo鐨刼id
+ dockingTaskDO.setSystemOid(dockingSystemConfigDTO.getSysBaseOid());//绯荤粺oid
+ dockingTaskDO.setSystemCode(dockingSystemConfigDTO.getSysBaseId());//绯荤粺缂栫爜
+ dockingTaskDO.setSystemName(dockingSystemConfigDTO.getSysBaseName());//绯荤粺name
+ dockingTaskDO_insert.add(dockingTaskDO);
+ });
+ }
+ dockingTaskService.saveBatch(dockingTaskDO_insert);
+ }catch (Throwable e){
+ msg="鏁版嵁鎺ㄩ�佸埌瀹氭椂浠诲姟澶辫触!";
+ log.error("鏁版嵁鎺ㄩ�佸埌瀹氭椂浠诲姟澶辫触!"+e);
+ e.printStackTrace();
+ }finally {
+ log.info(msg);
+ return R.success("鏁版嵁鎺ㄩ�佸埌瀹氭椂浠诲姟鎴愬姛锛�");
+ }
+ }
+
+ /***
+ * 鍒嗙被鎺ㄩ�侀泦鎴�
+ * @param dockingSystemConfigDTO
+ * @return
+ */
+ private boolean pushClsfDatas(DockingSystemConfigDTO dockingSystemConfigDTO){
+ DockingSystemConfig dockingSystemConfig= dockingSystemConfigMapper.selectById(dockingSystemConfigDTO.getOid());
+ String classOid= dockingSystemConfig.getClassifyOid();
+ List<CodeClassifyVO> listChildrenClassify= classifyService.listChildrenClassify(classOid,true,"id",false);
+ List<NodeClassifyDTO>nodeClassifyDTOList=new ArrayList<>();
+ JsonRootDataDTO jsonRootDataDTO=new JsonRootDataDTO();
+ NodeDataDTO nodeDataDTO=new NodeDataDTO();
+ //姣忎釜task涓�涓簨鍔★紝寮�鍚�
+ boolean isSuccess=false;
+ try {
+ String sendString = "";
+ if (!CollectionUtils.isEmpty(listChildrenClassify)) {
+ listChildrenClassify.stream().forEach(codeClassifyVO -> {
+ NodeClassifyDTO nodeClassifyDTO = new NodeClassifyDTO();
+ nodeClassifyDTO.setClassCode(codeClassifyVO.getId());//鍒嗙被浠e彿
+ nodeClassifyDTO.setDescription(codeClassifyVO.getDescription());//鍒嗙被鎻忚堪
+ nodeClassifyDTO.setFullPathName(codeClassifyVO.getPath());//鍏ㄨ矾寰�
+ nodeClassifyDTO.setLcStatus(codeClassifyVO.getLcStatus());//鐘舵��
+ nodeClassifyDTO.setPid(codeClassifyVO.getId());//鐖秈d鑺傜偣
+ nodeClassifyDTO.setId(codeClassifyVO.getOid());//鍒嗙被oid
+ nodeClassifyDTO.setName(codeClassifyVO.getName());//鍒嗙被鍚嶇О
+ nodeClassifyDTOList.add(nodeClassifyDTO);
+ });
+ NodeLibraryDTO nodeLibraryDTO = new NodeLibraryDTO();
+ nodeLibraryDTO.setClassify(nodeClassifyDTOList);
+ CodeClassifyVO rootClassify = classifyService.getTopClassifyVO(classOid);
+ nodeLibraryDTO.setId(rootClassify.getOid());
+ nodeLibraryDTO.setName(rootClassify.getName());
+ nodeDataDTO.setLibrary(nodeLibraryDTO);
+ jsonRootDataDTO.setData(nodeDataDTO);
+ String paramType = dockingSystemConfigDTO.getParamType();//xml/json
+ if (paramType.equals(DATATYPE_JSON)) {
+ Object object = JSONObject.toJSON(jsonRootDataDTO);
+ sendString = object.toString();
+ } else {
+ //缁勭粐杩斿洖鎺ュ彛淇℃伅
+ XStream xStream = new XStream(new DomDriver());
+ xStream.processAnnotations(NodeDataDTO.class);
+ xStream.autodetectAnnotations(true);
+ sendString = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" + xStream.toXML(nodeDataDTO);
+ }
+ //璋冪敤鎺ュ彛
+ callInterface(sendString, dockingSystemConfigDTO);
+ isSuccess=true;
+ }
+ }catch (Throwable e){
+ e.printStackTrace();
+ isSuccess=false;
+ }finally {
+ return true;
+ }
+ }
+
+ /***
+ * 璋冪敤鎺ュ彛
+ * @param dockingSystemConfigDTO
+ * @throws Throwable
+ */
+ private void callInterface(String sendString , DockingSystemConfigDTO dockingSystemConfigDTO) throws Throwable{
+ String paramString = "";
+
+ String backString = "";
+ String msg="";
+ String url = dockingSystemConfigDTO.getRequestUrl();//url
+ List<ResultNodeObjectDTO> resultNodeObjectDTOS =new ArrayList<>();
+ try {
+ String type = dockingSystemConfigDTO.getInterfaceType().toLowerCase(Locale.ROOT);//get/post/webserver/corba
+ String paramType = dockingSystemConfigDTO.getParamType();//xml/json
+ String returnType = dockingSystemConfigDTO.getReturnType();//xml/json
+ String requestmethod= dockingSystemConfigDTO.getRequestMethod();
+ String interfaceFunction = dockingSystemConfigDTO.getInterfaceFunction();//涓昏鏄痺ebservice鐨勬柟娉曞悕
+ String namespace = dockingSystemConfigDTO.getNamespace();//namespace
+ String soapaction = dockingSystemConfigDTO.getSoapAction();//soapaction
+ String targName = dockingSystemConfigDTO.getTargetName();//targName
+ String cxfaxis = dockingSystemConfigDTO.getCxfAxis();//webservice鏄痗xf/axis
+ //鏌ヨparam
+ List<DockingSysIntParamDTO> sysIntParamVOList = dockingSystemConfigDTO.getSysIntParamDTOS();
+ //鏌ヨheader
+ List<DockingSysIntHeaderDTO> sysIntHeaderVOList =dockingSystemConfigDTO.getSysIntHeaderDTOS();
+ if(type.equals(URLTYPE_HTTP)) {
+ if (requestmethod.equals(URLTYPE_GET)) {//GET璇锋眰
+ String sendurl = url + "?" + DATA_PARAM_NAME + "=" + sendString;
+ //鎷兼帴param
+ for (DockingSysIntParamDTO sysIntParamVO : sysIntParamVOList) {
+ sendurl = sendurl + "&" + sysIntParamVO.getParamkey() + "=" + sysIntParamVO.getParamvalue();
+ }
+ paramString = sendurl;
+ backString = HttpUtils.get(sendurl);
+ } else if (requestmethod.equals(URLTYPE_POST)) {//POST璇锋眰
+ MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
+ if(!CollectionUtils.isEmpty(sysIntParamVOList)) {
+ for (DockingSysIntParamDTO sysIntParamVO : sysIntParamVOList) {
+ params.add(sysIntParamVO.getParamkey(), sysIntParamVO.getParamvalue());
+ }
+ }
+ params.add(DATA_PARAM_NAME,sendString);
+ paramString = params.toString();
+ MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
+ if(!CollectionUtils.isEmpty(sysIntHeaderVOList)) {
+ for (DockingSysIntHeaderDTO sysIntHeaderVO : sysIntHeaderVOList) {
+ headers.add(sysIntHeaderVO.getHeaderKey(), sysIntHeaderVO.getHeaderValue());
+ }
+ }
+ backString = HttpUtils.post(url, params, headers);
+ }
+ if(backString.startsWith("\"")){
+ backString=backString.substring(backString.indexOf("\"")+1);
+ }
+ if(backString.endsWith("\"")){
+ backString=backString.substring(0,backString.lastIndexOf("\""));
+ }
+ if(backString.contains("\n")){
+ String res="\n";
+ backString= backString.replaceAll(res,"");
+ }
+ if(backString.contains("\\")){
+ String res="\\\\\"";
+ backString= backString.replaceAll(res,"\"").trim();
+ }
+ }else if (type.equals(URLTYPE_WEBSERVICE)) {//webserver璇锋眰
+ MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
+ for (DockingSysIntParamDTO sysIntParamVO : sysIntParamVOList) {
+ params.add(sysIntParamVO.getParamkey(), sysIntParamVO.getParamvalue());
+ }
+ paramString = sendString;
+ MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
+ for (DockingSysIntHeaderDTO sysIntHeaderVO : sysIntHeaderVOList) {
+ headers.add(sysIntHeaderVO.getHeaderKey(), sysIntHeaderVO.getHeaderValue());
+ }
+ backString = WsErpClientUtil.sendMsg(url, namespace, soapaction, interfaceFunction, targName, sendString, 10000);
+
+ } else {//corba鎺ュ彛
+ //paramString=sendString;
+ // backString = jacorbClient.getBOFactoryService().sendCode(sendString);
+ }
+
+ ResultJsonDTO resultJsonDTO = new ResultJsonDTO();
+ if(returnType.equals(DATATYPE_JSON)){
+ resultJsonDTO =JSONObject.toJavaObject(JSONObject.parseObject(backString), ResultJsonDTO.class);
+ }else {
+ //缁勭粐杩斿洖鎺ュ彛淇℃伅
+ XStream xStream = new XStream(new DomDriver());
+ xStream.processAnnotations(ResultNodeDataDTO.class);
+ xStream.autodetectAnnotations(true);
+ ResultNodeDataDTO resultNodeDataDTO = (ResultNodeDataDTO) xStream.fromXML(backString);
+ resultJsonDTO.setData(resultNodeDataDTO);
+ }
+ ResultNodeDataDTO resultNodeDataDTO=resultJsonDTO.getData();
+ resultNodeObjectDTOS=resultNodeDataDTO.getObject();
+
+ }catch (Throwable e){
+ msg="璋冪敤鎺ュ彛澶辫触:"+e;
+ e.printStackTrace();
+ // throw new Throwable("璋冪敤鎺ュ彛澶辫触:"+e);
+ ResultNodeObjectDTO resultNodeObjectDTO=new ResultNodeObjectDTO();
+ resultNodeObjectDTO.setErroid("1");
+ resultNodeObjectDTO.setMsg(msg);
+ resultNodeObjectDTO.setCode(dockingSystemConfigDTO.getClassifyId());
+ resultNodeObjectDTO.setOid(dockingSystemConfigDTO.getClassifyOid());
+ resultNodeObjectDTOS.add(resultNodeObjectDTO);
+ }finally {
+ boolean isSend = false;
+ List<DockingLog> dockingLogList=new ArrayList<>();
+ for (ResultNodeObjectDTO resultNodeObjectDTO:resultNodeObjectDTOS){
+ String erroid = resultNodeObjectDTO.getErroid();
+ msg = resultNodeObjectDTO.getMsg();
+ if("0".equals(erroid)){
+ isSend = true;
+ }else if("1".equals(erroid)){
+ isSend=false;
+ }else{
+ isSend=false;
+ }
+ DockingLog dockingLog = new DockingLog();
+ String oid=VciBaseUtil.getPk();
+ dockingLog.setOid(oid);
+ dockingLog.setSystemCode(dockingSystemConfigDTO.getSysBaseId());
+ dockingLog.setSystemName(dockingSystemConfigDTO.getSysBaseName());
+ dockingLog.setSystemOid(dockingSystemConfigDTO.getSysBaseOid());
+ dockingLog.setClassifyOid(dockingSystemConfigDTO.getClassifyOid());
+ dockingLog.setClassifyId(dockingSystemConfigDTO.getClassifyId());
+ dockingLog.setClassifyName(dockingSystemConfigDTO.getClassifyName());
+ dockingLog.setId(dockingSystemConfigDTO.getId());
+ dockingLog.setUniqueCode("");
+ dockingLog.setInterfaceStatus(isSend?"true":"false");
+ dockingLog.setParamString(paramString);
+ dockingLog.setType(DATA_LOGE_OUT);
+ dockingLog.setReturnString(backString);
+ dockingLog.setMsg(msg);
+ dockingLogList.add(dockingLog);
+ log.info("闆嗘垚鎺ㄩ�佹暟鎹�,systemcode:"+dockingSystemConfigDTO.getSysBaseId()+",systemname:"+dockingSystemConfigDTO.getSysBaseName()+",url:"+url+",param:"+paramString+",e:"+msg);
+ }
+ dockingLogeService.saveBatch(dockingLogList);
+ }
+ }
+
+ private String reverseOrderByList(String StringValue, CodeClassifyVO topClassifyVO,int type){
+ String[] s=StringValue.split("#");
+ StringBuffer sb=new StringBuffer();
+ List<String> list=new ArrayList<>(Arrays.asList(s));
+ Collections.reverse(list);
+ System.out.println(list.toString());
+ for (String o:list){
+ if(StringUtils.isNotBlank(o)){
+ sb.append(o).append(",");
+ }
+ }
+ sb.append(type==1?topClassifyVO.getId():topClassifyVO.getName());
+ System.out.println(sb.toString());
+
+ return sb.toString();
+ }
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/HttpUtils.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/HttpUtils.java
new file mode 100644
index 0000000..89d8c9e
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/HttpUtils.java
@@ -0,0 +1,194 @@
+package com.vci.ubcs.code.util;
+
+import org.springframework.http.*;
+import org.springframework.util.LinkedMultiValueMap;
+import org.springframework.util.MultiValueMap;
+import org.springframework.web.client.RestTemplate;
+
+import javax.servlet.http.HttpServletRequest;
+
+/**
+ * http璇锋眰宸ュ叿绫�
+ *
+ * @since 2020-03-25
+ */
+public class HttpUtils {
+
+ //Content-Type鐨刱ey
+ public static String CONTENT_TYPE = "Content-Type";
+ //json鏁版嵁
+ public static String CONTENT_TYPE_JSON = MediaType.APPLICATION_JSON_VALUE;
+ public static String CONTENT_TYPE_JSON_UTF8 = MediaType.APPLICATION_JSON_UTF8_VALUE;
+
+ //琛ㄥ崟鏍煎紡,榛樿
+ public static String CONTENT_TYPE_TEXT = MediaType.APPLICATION_FORM_URLENCODED_VALUE;
+
+ /**
+ * get璇锋眰
+ *
+ * @param url
+ * @return
+ */
+ public static String get(String url) {
+ return get(url, null);
+ }
+
+ /**
+ * get璇锋眰
+ *
+ * @param url
+ * @param headers 璇锋眰澶�
+ * @return
+ */
+ public static String get(String url, MultiValueMap<String, String> headers) {
+ return request(url, null, headers, HttpMethod.GET);
+ }
+
+ /**
+ * post璇锋眰
+ *
+ * @param url
+ * @param params 璇锋眰鍙傛暟
+ * @return
+ */
+ public static String post(String url, MultiValueMap<String, String> params) {
+ return post(url, params, null);
+ }
+
+ /**
+ * post璇锋眰
+ *
+ * @param url
+ * @param params 璇锋眰鍙傛暟
+ * @param headers 璇锋眰澶�
+ * @return
+ */
+ public static String post(String url, MultiValueMap<String, String> params, MultiValueMap<String, String> headers) {
+ return request(url, params, headers, HttpMethod.POST);
+ }
+
+ /**
+ * put璇锋眰
+ *
+ * @param url
+ * @param params 璇锋眰鍙傛暟
+ * @return
+ */
+ public static String put(String url, MultiValueMap<String, String> params) {
+ return put(url, params, null);
+ }
+
+ /**
+ * put璇锋眰
+ *
+ * @param url
+ * @param params 璇锋眰鍙傛暟
+ * @param headers 璇锋眰澶�
+ * @return
+ */
+ public static String put(String url, MultiValueMap<String, String> params, MultiValueMap<String, String> headers) {
+ return request(url, params, headers, HttpMethod.PUT);
+ }
+
+ /**
+ * delete璇锋眰
+ *
+ * @param url
+ * @param params 璇锋眰鍙傛暟
+ * @return
+ */
+ public static String delete(String url, MultiValueMap<String, String> params) {
+ return delete(url, params, null);
+ }
+
+ /**
+ * delete璇锋眰
+ *
+ * @param url
+ * @param params 璇锋眰鍙傛暟
+ * @param headers 璇锋眰澶�
+ * @return
+ */
+ public static String delete(String url, MultiValueMap<String, String> params, MultiValueMap<String, String> headers) {
+ return request(url, params, headers, HttpMethod.DELETE);
+ }
+
+ /**
+ * 琛ㄥ崟璇锋眰
+ *
+ * @param url
+ * @param params 璇锋眰鍙傛暟
+ * @param headers 璇锋眰澶�
+ * @param method 璇锋眰鏂瑰紡
+ * @return
+ */
+ public static String request(String url, MultiValueMap<String, String> params, MultiValueMap<String, String> headers, HttpMethod method) {
+ if (params == null) {
+ params = new LinkedMultiValueMap<>();
+ }
+ return request(url, params, headers, method, MediaType.APPLICATION_FORM_URLENCODED);
+ }
+
+ /**
+ * http璇锋眰
+ *
+ * @param url
+ * @param params 璇锋眰鍙傛暟
+ * @param headers 璇锋眰澶�
+ * @param method 璇锋眰鏂瑰紡
+ * @param mediaType 鍙傛暟绫诲瀷
+ * @return
+ */
+ public static String request(String url, Object params, MultiValueMap<String, String> headers, HttpMethod method, MediaType mediaType) {
+ if (url == null || url.trim().isEmpty()) {
+ return null;
+ }
+ RestTemplate client = new RestTemplate();
+ // header
+ HttpHeaders httpHeaders = new HttpHeaders();
+ if (headers != null) {
+ httpHeaders.addAll(headers);
+ }
+ // 鎻愪氦鏂瑰紡锛氳〃鍗曘�乯son
+ httpHeaders.setContentType(mediaType);
+ HttpEntity<Object> httpEntity = new HttpEntity(params, httpHeaders);
+ ResponseEntity<String> response = client.exchange(url, method, httpEntity, String.class);
+ return response.getBody();
+ }
+
+ public static MultiValueMap<String, String> set_params_headers(String key,String value,MultiValueMap<String, String> map){
+ if(map==null){
+ map = new LinkedMultiValueMap<>();
+ }
+ map.add(key,value);
+ return map;
+ }
+ /**
+ * 鑾峰彇ip
+ * @param request
+ * @return
+ */
+ public static String getIpAddressFromRequest(HttpServletRequest request){
+ String ip = request.getHeader("X-Forwarded-For");
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("Proxy-Client-IP");
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("WL-Proxy-Client-IP");
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("HTTP_CLIENT_IP");
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader("HTTP_X_FORWARDED_FOR");
+ }
+ if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+ ip = request.getRemoteAddr();
+ }
+ if (ip == null || ip.length() == 0 || ip.indexOf("0:0:0:0:0:0:0:1") >-1) {
+ //0:0:0:0:0:0:0:1鏄湰鏈哄湪璁块棶
+ ip = "127.0.0.1";
+ }
+ return ip;
+ }
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/WsErpClientUtil.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/WsErpClientUtil.java
new file mode 100644
index 0000000..6659503
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/WsErpClientUtil.java
@@ -0,0 +1,60 @@
+package com.vci.ubcs.code.util;
+
+import com.alibaba.cloud.commons.lang.StringUtils;
+import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
+import org.apache.axiom.soap.SOAP11Constants;
+import org.apache.axis2.Constants;
+import org.apache.axis2.addressing.EndpointReference;
+import org.apache.axis2.client.Options;
+import org.apache.axis2.client.ServiceClient;
+
+public class WsErpClientUtil {
+
+ /**
+ * axis2璋冪敤瀹㈡埛绔�
+ *
+ * @param url 璇锋眰鏈嶅姟鍦板潃
+ * @param nameSpace 鍛藉悕绌洪棿
+ * @param method 鏂规硶鍚�
+ * @param tarName 鍙傛暟鍚嶇О
+ * @param xmlData 璇锋眰鎶ユ枃
+ * @param timeOutInMilliSeconds 瓒呮椂鏃堕棿
+ * @return String 绫诲瀷鐨勫搷搴旀姤鎭�
+ */
+ public static String sendMsg(String url, String nameSpace,String soapAction, String method, String tarName, String xmlData, long timeOutInMilliSeconds) throws Exception {
+ ServiceClient serviceClient = new ServiceClient();
+ Options option = new Options();
+ option.setSoapVersionURI(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI);
+ option.setTransportInProtocol(Constants.TRANSPORT_HTTP);
+
+ // 鍊间负targetNamespace+methodName
+ if(StringUtils.isEmpty(soapAction)){
+ soapAction = nameSpace+method;
+ }
+ option.setAction(soapAction);
+
+ EndpointReference epfs = new EndpointReference(url);
+ option.setTo(epfs);
+ serviceClient.setOptions(option);
+
+ OMFactory fac = OMAbstractFactory.getOMFactory();
+ OMNamespace namespaceOM = fac.createOMNamespace(nameSpace, "");
+ OMElement element = fac.createOMElement(method, namespaceOM);
+ OMElement theCityCode = fac.createOMElement(tarName, namespaceOM);
+ theCityCode.setText(xmlData);
+ element.addChild(theCityCode);
+// OMElement theUserID = fac.createOMElement("theUserID ", namespace);
+// theUserID.setText("");
+// element.addChild(theUserID);
+
+ OMElement resultOM = serviceClient.sendReceive(element);
+
+ String result = resultOM.getFirstElement().getText();
+ System.out.println(result);
+
+ return result;
+ }
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingDataWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingDataWrapper.java
new file mode 100644
index 0000000..d2c834f
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingDataWrapper.java
@@ -0,0 +1,67 @@
+package com.vci.ubcs.code.wrapper;
+
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.vci.ubcs.code.entity.DockingData;
+import com.vci.ubcs.code.vo.pagemodel.DockingDataVO;
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Objects;
+
+public class DockingDataWrapper extends BaseEntityWrapper<DockingData, DockingDataVO> {
+ public static DockingDataWrapper build() {
+ return new DockingDataWrapper();
+ }
+
+ @Override
+ public DockingDataVO entityVO(DockingData entity) {
+ DockingDataVO vo = Objects.requireNonNull(BeanUtil.copy(entity, DockingDataVO.class));
+ return vo;
+ }
+
+
+ /***
+ * 鏁扮粍瀵硅薄杞崲
+ * @param entitys
+ * @return
+ */
+ public List<DockingDataVO> entityVOs(Collection<DockingData> entitys) {
+ if(CollectionUtils.isEmpty(entitys)) {return new ArrayList<>();}
+ List<DockingDataVO> vos=new ArrayList<>();
+ if(!CollectionUtils.isEmpty(entitys)) {
+ entitys.stream().forEach(vo -> {
+ vos.add(entityVO(vo));
+ });
+ }
+ return vos;
+ }
+
+ /***
+ * 鏁扮粍瀵硅薄杞崲
+ * @param vos
+ * @return
+ */
+ public List<DockingData> voentitys(Collection<DockingDataVO> vos) {
+ if(CollectionUtils.isEmpty(vos)) {return new ArrayList<>();}
+ List<DockingData>entitys =new ArrayList<>();
+ if(!CollectionUtils.isEmpty(vos)) {
+ vos.stream().forEach(entity -> {
+ entitys.add(voentity(entity));
+ });
+ }
+ return entitys;
+ }
+
+ /***
+ * 鏁扮粍瀵硅薄杞崲
+ * @param vo
+ * @return
+ */
+ public DockingData voentity( DockingDataVO vo) {
+ DockingData entity = Objects.requireNonNull(BeanUtil.copy(vo, DockingData.class));
+ return entity;
+ }
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingDataMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingDataMapper.xml
new file mode 100644
index 0000000..ff0ef90
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/DockingDataMapper.xml
@@ -0,0 +1,41 @@
+<?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="com.vci.ubcs.code.mapper.DockingDataMapper">
+ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+ <resultMap id="plDockingDataResultMap" type="com.vci.ubcs.code.entity.DockingData">
+ <result column="OID" property="oid"/>
+ <result column="REVISIONOID" property="revisionOid"/>
+ <result column="NAMEOID" property="nameOid"/>
+ <result column="BTMNAME" property="btmName"/>
+ <result column="LASTR" property="lastR"/>
+ <result column="FIRSTR" property="firstR"/>
+ <result column="LASTV" property="lastV"/>
+ <result column="FIRSTV" property="firstV"/>
+ <result column="CREATOR" property="creator"/>
+ <result column="CREATETIME" property="createTime"/>
+ <result column="LASTMODIFIER" property="lastModifier"/>
+ <result column="LASTMODIFYTIME" property="lastModifyTime"/>
+ <result column="REVISIONRULE" property="revisionRule"/>
+ <result column="VERSIONRULE" property="versionRule"/>
+ <result column="REVISIONSEQ" property="revisionSeg"/>
+ <result column="REVISIONVALUE" property="revisionValue"/>
+ <result column="VERSIONSEQ" property="versionSeq"/>
+ <result column="VERSIONVALUE" property="versionValue"/>
+ <result column="LCTID" property="lctid"/>
+ <result column="LCSTATUS" property="lcStatus"/>
+ <result column="TS" property="ts"/>
+ <result column="ID" property="id"/>
+ <result column="NAME" property="name"/>
+ <result column="DESCRIPTION" property="description"/>
+ <result column="OWNER" property="owner"/>
+ <result column="COPYFROMVERSION" property="copyFromVersion"/>
+ <result column="UNIQUECODE" property="uniqueCode"/>
+ <result column="CLASSIFYOID" property="classifyOid"/>
+ <result column="BTMOID" property="btmOid"/>
+ <result column="BTMID" property="btmId"/>
+ <result column="SENDTYPE" property="sendType"/>
+ <result column="SENDFLAG" property="sendFlag"/>
+ <result column="CLASSIFYID" property="classifyId"/>
+ <result column="CLASSIFYNAME" property="classifyName"/>
+ </resultMap>
+</mapper>
--
Gitblit v1.9.3