huangxingxing 1 year ago
parent
commit
fc9fdf4f0c

+ 1 - 0
dbscript/init/generate/03-functionInit.sql

@@ -39,3 +39,4 @@ INSERT INTO SYS_FUNCTION(FUNCTIONID, CLASSNAME, FUNCTIONNAME ,ENABLE)VALUES ('AF
 INSERT INTO SYS_FUNCTION(FUNCTIONID, CLASSNAME, FUNCTIONNAME ,ENABLE)VALUES ('AFT003', '基础系统','获取每步图片',true);
 INSERT INTO SYS_FUNCTION(FUNCTIONID, CLASSNAME, FUNCTIONNAME ,ENABLE)VALUES ('FEM001', '基础系统','bdf文件绑定',true);
 INSERT INTO SYS_FUNCTION(FUNCTIONID, CLASSNAME, FUNCTIONNAME ,ENABLE)VALUES ('MESH01', '基础系统','几何文件绑定',true);
+INSERT INTO SYS_FUNCTION(FUNCTIONID, CLASSNAME, FUNCTIONNAME ,ENABLE)VALUES ('MESH02', '基础系统','几何文件渲染',true);

+ 112 - 0
generated/com/miniframe/generate/business/system/model/MESH02BaseModel.java

@@ -0,0 +1,112 @@
+package com.miniframe.generate.business.system.model;
+
+import java.util.Map;
+import java.io.IOException;
+import java.util.LinkedHashMap;
+import com.miniframe.core.BaseMapModel;
+import com.miniframe.core.ext.UtilTools;
+import com.miniframe.core.ext.HttpMapFormater;
+import java.time.ZonedDateTime;
+import java.time.format.DateTimeFormatter;
+import com.miniframe.generate.global.AppGlobalVariableSysconfig;
+
+import com.miniframe.generate.comm.system.A_SYSTEMHEAD;
+import com.miniframe.generate.comm.system.D_SYSTEMHEAD;
+import com.miniframe.generate.comm.system.A_MESH02;
+import com.miniframe.generate.comm.system.D_MESH02;
+
+/**
+ * 系统服务,“几何文件渲染”模型类(不要维护,重新生成将覆盖)。
+ */
+@SuppressWarnings({ "rawtypes", "unchecked" })
+public class MESH02BaseModel extends BaseMapModel {
+
+	private static final long serialVersionUID = -1326184831746814093L;
+
+	A_SYSTEMHEAD a_systemhead;//上行头
+	D_SYSTEMHEAD d_systemhead;//下行头
+	A_MESH02 a_mesh02;//上行体
+	D_MESH02 d_mesh02;//下行体
+
+	public MESH02BaseModel(){
+		a_systemhead=new A_SYSTEMHEAD();
+		d_systemhead=new D_SYSTEMHEAD();
+		a_mesh02=new A_MESH02();
+		d_mesh02=new D_MESH02();
+	}
+
+	public void validater() throws Exception {
+		this.a_systemhead.validater();
+		this.a_mesh02.validater();
+	}
+
+	public void setTransMap(Map map) throws Exception {
+		Map headMap = HttpMapFormater.format(map, A_SYSTEMHEAD.class);
+		this.a_systemhead = UtilTools.map2Obj(headMap, A_SYSTEMHEAD.class);
+		Map bodyMap = HttpMapFormater.format(map, A_MESH02.class);
+		this.a_mesh02 = UtilTools.map2Obj(bodyMap, A_MESH02.class);
+	}
+
+	public Map getTransMap() throws Exception {
+		Map reMap = new LinkedHashMap();
+
+		if(UtilTools.isNullOrBlank((this.d_systemhead).getTransCode())){
+			(this.d_systemhead).setTransCode((this.a_systemhead).getTransCode());
+		}
+		if(UtilTools.isNullOrBlank((this.d_systemhead).getChannelNo())){
+			(this.d_systemhead).setChannelNo((this.a_systemhead).getChannelNo());
+		}
+		if(UtilTools.isNullOrBlank((this.d_systemhead).getUserId())){
+			(this.d_systemhead).setUserId((this.a_systemhead).getUserId());
+		}
+        if(UtilTools.isNullOrBlank((this.d_systemhead).getTransTime())){
+            (this.d_systemhead).setTransTime(DateTimeFormatter.ofPattern(AppGlobalVariableSysconfig.DATETIMEFORMAT).format(ZonedDateTime.now()));
+        }
+
+		reMap.putAll(UtilTools.obj2Map(this.d_systemhead));
+		reMap.putAll(UtilTools.obj2Map(this.d_mesh02));
+
+		return reMap;
+	}
+
+	public A_SYSTEMHEAD getA_systemhead() {
+		return this.a_systemhead;
+	}
+
+	public void setA_systemhead(A_SYSTEMHEAD a_systemhead) {
+		this.a_systemhead=a_systemhead;
+	}
+
+	public D_SYSTEMHEAD getD_systemhead() {
+		return d_systemhead;
+	}
+
+	public void setD_systemhead(D_SYSTEMHEAD d_systemhead) {
+		this.d_systemhead=d_systemhead;
+	}
+
+	public A_MESH02 getA_mesh02() {
+		return a_mesh02;
+	}
+
+	public void setA_mesh02(A_MESH02 a_mesh02) {
+		this.a_mesh02=a_mesh02;
+	}
+
+	public D_MESH02 getD_mesh02() {
+		return this.d_mesh02;
+	}
+
+	public void setD_mesh02(D_MESH02 d_mesh02) {
+		this.d_mesh02=d_mesh02;
+	}
+
+	@Override
+	public String toString() {
+		try {
+			return UtilTools.obj2Json(this,true);
+		} catch (IOException e) {
+			return "";
+		}
+	}
+}

+ 99 - 0
generated/com/miniframe/generate/comm/httpclientapater/MESH02Client.java

@@ -0,0 +1,99 @@
+package com.miniframe.generate.comm.httpclientapater;
+
+import com.miniframe.spring.httpclient.MFHttpRespInfo;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+import com.miniframe.core.Transmitter;
+import com.miniframe.core.ext.UtilTools;
+import com.miniframe.generate.comm.system.D_MESH02;
+import com.miniframe.generate.comm.system.D_SYSTEMHEAD;
+
+import com.miniframe.generate.business.system.model.MESH02BaseModel;
+
+public class MESH02Client {
+
+	private static final Logger logger = LoggerFactory.getLogger(MESH02Client.class);
+	private MFHttpRespInfo respInfo;
+
+	public MFHttpRespInfo getRespInfo(){
+		return respInfo;
+	}
+
+	/**
+	 * 调用 [系统服务->几何文件渲染((MESH02)]的通讯接口
+	 * @param model 接口模型
+	 * @param extMap 扩展输入
+	 * @param url 请求地址
+	 * @return model 接口模型
+	 * @throws Exception
+	 */
+	@SuppressWarnings({ "rawtypes", "unchecked" })
+	public MESH02BaseModel execute(MESH02BaseModel model,final Map extMap,final String url) throws Exception {
+		this.executeToRespInfo(model,extMap,url);
+		return model;
+	}
+
+	@SuppressWarnings({ "rawtypes", "unchecked" })
+	public MESH02BaseModel execute(MESH02BaseModel model,final Map extMap) throws Exception {
+		this.executeToRespInfo(model,extMap,null);
+		return model;
+	}
+
+
+	@SuppressWarnings({ "rawtypes", "unchecked" })
+	public MFHttpRespInfo executeToRespInfo(MESH02BaseModel model,final Map extMap,final String url) throws Exception {
+		if (logger.isDebugEnabled()) {
+			logger.debug("execute(MESH02BaseModel) - start");
+		}
+
+		if(UtilTools.isNullOrBlank(model.getA_systemhead().getTransCode())){
+			model.getA_systemhead().setTransCode("MESH02");
+		}
+
+		Map inMap = new LinkedHashMap();
+		inMap.putAll(UtilTools.obj2Map(model.getA_systemhead()));
+		inMap.putAll(UtilTools.obj2Map(model.getA_mesh02()));
+		if(extMap!=null && extMap.size()>0){
+			inMap.putAll(extMap);
+		}
+
+		Transmitter httpclientApater = (Transmitter) UtilTools.getBean("httpclientApater");
+		MFHttpRespInfo respInfo;
+		if(UtilTools.isNotNullAndBlank(url)){
+			respInfo = httpclientApater.doPostDataToRespInfo(inMap,url);
+		}else{
+			respInfo = httpclientApater.doPostDataToRespInfo(inMap);
+		}
+
+		if(respInfo!=null) {
+			Map outMap=respInfo.getParamMap();
+			D_SYSTEMHEAD d_systemhead =  UtilTools.map2Obj(outMap, D_SYSTEMHEAD.class);
+			D_MESH02 d_mesh02 =  UtilTools.map2Obj(outMap, D_MESH02.class);
+			model.setD_systemhead(d_systemhead);
+			model.setD_mesh02(d_mesh02);
+
+
+		}
+
+		if (logger.isDebugEnabled()) {
+			logger.debug("execute(MESH02BaseModel) - end");
+		}
+
+        this.respInfo=respInfo;
+
+		return respInfo;
+	}
+
+
+
+	@SuppressWarnings({ "rawtypes", "unchecked" })
+	public MESH02BaseModel execute(MESH02BaseModel model) throws Exception {
+		return this.execute(model,null,null);
+	}
+
+
+}

+ 25 - 0
generated/com/miniframe/generate/comm/system/A_MESH02.java

@@ -0,0 +1,25 @@
+/**
+ * 系统服务
+ */
+package com.miniframe.generate.comm.system;
+import com.miniframe.core.BaseMapModel;
+import java.io.Serializable;
+/**
+ * 几何文件渲染
+ */
+public class A_MESH02 extends BaseMapModel implements Serializable {
+	private static final long serialVersionUID = -1463838678425832212L;
+	String pid;//项目ID
+	/**
+	 *项目ID
+	 */
+	public void setPid(String pid) {
+		this.pid=pid;
+	}
+	/**
+	 *项目ID
+	 */
+	public String getPid() {
+		return this.pid;
+	}
+}

+ 12 - 0
generated/com/miniframe/generate/comm/system/D_MESH02.java

@@ -0,0 +1,12 @@
+/**
+ * 系统服务
+ */
+package com.miniframe.generate.comm.system;
+import com.miniframe.core.BaseMapModel;
+import java.io.Serializable;
+/**
+ * 几何文件渲染
+ */
+public class D_MESH02 extends BaseMapModel implements Serializable {
+	private static final long serialVersionUID = -1463838678425832212L;
+}

+ 12 - 0
generated/validateform/a_mesh02Form.xml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1//EN" "http://jakarta.apache.org/commons/dtds/validator_1_1.dtd">
+<!-- 几何文件渲染Form配置文件系统生成请勿修改,否则重新生成将覆盖 -->
+<form-validation>
+<formset>
+<form name="a_mesh02Form">
+<field property="pid" depends="required">
+    <arg0 key="a_mesh02.pid"/>
+</field>
+</form>
+</formset>
+</form-validation>

+ 2 - 0
generated/validator/resources_a_mesh02Form_validator.properties

@@ -0,0 +1,2 @@
+a_mesh02.pid = \u9879\u76EEID
+a_mesh02Form = true

+ 2 - 0
generated/validator/resources_a_mesh02Form_validator_zh_CN.properties

@@ -0,0 +1,2 @@
+a_mesh02.pid = \u9879\u76EEID
+a_mesh02Form = true

+ 1 - 0
generated/validator/resources_d_mesh02Form_validator.properties

@@ -0,0 +1 @@
+d_mesh02Form = false

+ 1 - 0
generated/validator/resources_d_mesh02Form_validator_zh_CN.properties

@@ -0,0 +1 @@
+d_mesh02Form = false

+ 1 - 1
modelsrc/com/miniframe/model/system/dbconfig/MapperConfig-system.xml

@@ -5,7 +5,7 @@
     This file is generated by MyBatis Generator.
     This file is the shell of a Mapper Config file - in many cases you will need to add
       to this file before it is usable by MyBatis.
-    This file was generated on Thu Sep 07 17:15:10 CST 2023.
+    This file was generated on Tue Oct 10 17:28:02 CST 2023.
   -->
   <mappers>
     <mapper resource="com/miniframe/model/system/xml/SysAppcodeMapper.xml" />

+ 3 - 3
profiles/dev/application-dev.properties

@@ -32,7 +32,7 @@ eureka.instance.health-check-url-path=/monitor/health
 #=======================datasource\u914D\u7F6E================================
 spring.datasource.druid.driver-class-name=org.postgresql.Driver
 
-spring.datasource.druid.url=jdbc:postgresql://192.168.0.43:5432/adi-cae
+spring.datasource.druid.url=jdbc:postgresql://192.168.0.131:5432/adi-cae
 spring.datasource.druid.username=postgres
 spring.datasource.druid.password=postgres
 
@@ -58,7 +58,7 @@ spring.datasource.druid.keep-alive=true
 # Redis\u6570\u636E\u5E93\u7D22\u5F15\uFF08\u9ED8\u8BA4\u4E3A0\uFF09
 spring.redis.database=0
 # Redis\u670D\u52A1\u5668\u5730\u5740
-spring.redis.host=192.168.0.43
+spring.redis.host=192.168.0.131
 # Redis\u670D\u52A1\u5668\u8FDE\u63A5\u7AEF\u53E3
 spring.redis.port=6379
 # Redis \u96C6\u7FA4\u914D\u7F6E \u6CE8\u610F\uFF1A\u4E00\u65E6\u5F00\u542F\u4E86\u96C6\u7FA4\u6A21\u5F0F\uFF0C\u90A3\u4E48\u57FA\u4E8E\u5355\u673A\u7684\u914D\u7F6E\u5C31\u4F1A\u8986\u76D6\u3002
@@ -111,7 +111,7 @@ mf.mail.nickname=\u670D\u52A1
 
 #=======================MQ\u914D\u7F6E================================
 # ip
-spring.rabbitmq.host=192.168.0.43
+spring.rabbitmq.host=192.168.0.131
 # \u7AEF\u53E3
 spring.rabbitmq.port=5672
 # \u7528\u6237\u540D

+ 16 - 0
src/main/java/com/miniframe/aftercure/PretreatmentMsg.java

@@ -0,0 +1,16 @@
+package com.miniframe.aftercure;
+
+/**
+ * 前处理消息
+ */
+public class PretreatmentMsg {
+    private String geometryFile;
+
+    public String getGeometryFile() {
+        return geometryFile;
+    }
+
+    public void setGeometryFile(String geometryFile) {
+        this.geometryFile = geometryFile;
+    }
+}

+ 23 - 0
src/main/java/com/miniframe/bisiness/system/AFT001Service.java

@@ -358,6 +358,29 @@ public class AFT001Service extends AFT001BaseModel implements ExecProcessFlow {
 			}catch (Exception e){
 				throw new BusinessException("MESH00002");
 			}
+		}else if(action.equals("geometryFileShow")){//几何文件渲染
+			try{
+				PretreatmentMsg preMsg= XiJsonUtil.jsonToPojo(paramJson, PretreatmentMsg.class);
+				AdiModelingMapper modelingMapper = UtilTools.getBean(AdiModelingMapper.class);
+				AdiModelingSQLBuilder sb = new AdiModelingSQLBuilder();
+				AdiModelingSQLBuilder.Criteria sc =sb.createCriteria();
+				sc.andPidEqualTo(proId);
+				List<AdiModeling> modelings =modelingMapper.selectByExample(sb);
+				if(modelings.isEmpty()){
+					throw new BusinessException("MESH00001");
+				}else {
+					AdiModeling modeling = modelings.get(0);
+					SysFileMapper fileMapper = UtilTools.getBean(SysFileMapper.class);
+					SysFile file = fileMapper.selectByPrimaryKey(modeling.getGeometryFile());
+					if (file == null) {
+						throw new BusinessException("MESH00001");
+					}
+					preMsg.setGeometryFile(XIFileUtils.getRootPathStr()+ MFConstant.separator+file.getFilepath());
+				}
+				msg.setParamJson(XiJsonUtil.objectToJson(preMsg));
+			}catch (Exception e){
+				throw new BusinessException("MESH00002");
+			}
 		}
 		MFMqUtils.get(CaeMQ.class).sendCaein(XiJsonUtil.objectToJson(msg));
 

+ 48 - 0
src/main/java/com/miniframe/bisiness/system/MESH02Service.java

@@ -0,0 +1,48 @@
+package com.miniframe.bisiness.system;
+
+import java.util.Map;
+import com.miniframe.core.ExecProcessFlow;
+import com.miniframe.generate.business.system.model.MESH02BaseModel;
+
+/**
+ * 基础系统,“几何文件渲染”逻辑处理(重新生成不覆盖)。
+ */
+public class MESH02Service extends MESH02BaseModel implements ExecProcessFlow {
+	
+	private static final long serialVersionUID = -7051358269847459502L;
+		
+	/**
+	 * 基础系统,“几何文件渲染”业务核心处理
+ 	 */
+	public void transExecute() throws Exception {
+	
+	}
+	
+	/**
+	 * 基础系统,“几何文件渲染”业务前处理
+ 	 */
+	public void preTransFlow() throws Exception {
+		this.validater();
+	}
+	
+	/**
+	 * 基础系统,“几何文件渲染”业务后处理
+ 	 */
+	public void afterTransFlow() throws Exception {
+	
+	}
+	
+	/**
+	 * 基础系统,“几何文件渲染”逻辑入口处理方法
+ 	 */
+ 	@SuppressWarnings("rawtypes")
+	@Override
+	public Map execute(Map vars) throws Exception {
+		this.setTransMap(vars);
+		preTransFlow();// 执行业务开始的规则检查和校验
+		transExecute();// 执行核心业务段
+		afterTransFlow();// 执行核心逻辑完成后的收尾逻辑
+		return this.getTransMap();
+	}
+
+}

+ 44 - 0
src/test/java/com/miniframe/comm/httpclientapater/MESH02Test.java

@@ -0,0 +1,44 @@
+package com.miniframe.comm.httpclientapater;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import com.miniframe.comm.httpclientapater.HttpclientapaterUtil;
+import com.miniframe.generate.comm.system.A_MESH02;
+import com.miniframe.generate.comm.httpclientapater.MESH02Client;
+import com.miniframe.generate.business.system.model.MESH02BaseModel;
+
+public class MESH02Test {
+
+	private static final Logger logger = LoggerFactory.getLogger(MESH02Test.class);
+
+	/**
+	 * 几何文件渲染,获取报文体
+	 * @return
+	 */
+	public static A_MESH02 getA_mesh02() {
+		A_MESH02 a_mesh02 = new A_MESH02();
+
+		// ----------以下增加【几何文件渲染】上行体赋值-------------
+
+
+
+		// ---------------------------------------------------
+		return a_mesh02;
+	}
+	
+	/**
+	 * 运行客户端测试,几何文件渲染
+	 * 
+	 * @param args
+	 * @throws Exception
+	 */
+	public static void main(String[] args) throws Exception {
+		MESH02BaseModel model = new MESH02BaseModel();
+		model.setA_systemhead(HttpclientapaterUtil.getA_systemhead("MESH02"));
+		model.setA_mesh02(MESH02Test.getA_mesh02());
+		MESH02Client client = new MESH02Client();
+		logger.error("客户端发送前总线:\r\n"+model);
+		model = client.execute(model);
+		logger.error("客户端发送后总线:\r\n"+model);
+	}
+}

+ 2 - 1
系统设计/系统模块/SYSTEM(基础系统).csv

@@ -41,4 +41,5 @@
 410001,FEM001,bdf文件绑定,service,,
 
 
-500001,MESH01,几何文件绑定,service,,
+500001,MESH01,几何文件绑定,service,,
+500002,MESH02,几何文件渲染,service,,

+ 2 - 0
系统设计/通信设计/通讯报文/system(系统服务)/报文体/MESH02_A(几何文件渲染).csv

@@ -0,0 +1,2 @@
+序号,英文名称,中文名称,数据类型,默认值,格式化,非空/引用,最小(长度/值),最大(长度/值),验证规则,标准数据ID,XML样式,TAG标签,映射/子标签,CDATA
+1,pid,项目ID,string,,,是,,,,,,,,

+ 1 - 0
系统设计/通信设计/通讯报文/system(系统服务)/报文体/MESH02_D(几何文件渲染).csv

@@ -0,0 +1 @@
+序号,英文名称,中文名称,数据类型,默认值,格式化,非空/引用,最小(长度/值),最大(长度/值),验证规则,标准数据ID,XML样式,TAG标签,映射/子标签,CDATA