伊利项目 模型转换功能

This commit is contained in:
qinoy 2022-12-14 15:00:32 +08:00
parent ba49f71402
commit 000b1ab5ac
29 changed files with 118 additions and 19 deletions

View File

@ -32,4 +32,12 @@ public class Position {
public int hashCode() {
return Objects.hash(x, y);
}
@Override
public String toString() {
return "Position{" +
"x=" + x +
", y=" + y +
'}';
}
}

View File

@ -27,6 +27,7 @@ import com.actionsoft.apps.coe.pal.pal.repository.upfile.dao.UpFileDao;
import com.actionsoft.apps.coe.pal.pal.repository.upfile.model.UpfileModel;
import com.actionsoft.apps.coe.pal.pal.repository.util.CoeProcessLevelUtil;
import com.actionsoft.apps.resource.plugin.profile.DCPluginProfile;
import com.actionsoft.bpms.commons.mvc.view.ResponseObject;
import com.actionsoft.bpms.server.UserContext;
import com.actionsoft.bpms.server.fs.DCContext;
import com.actionsoft.bpms.server.fs.dc.DCProfileManager;
@ -288,10 +289,6 @@ public class EpcToBPMN implements ModelConvertStrategy {
JSONArray points = new JSONArray();
if (epcLinkerFromPoi.getX() == epcLinkerToPoi.getX()
&& epcLinkerFromPoi.getY() != epcLinkerToPoi.getY()
// && (epcLinkerFromObj.getDoubleValue("angle") == LinkerDefConstant.ANGLE_UP
// || epcLinkerFromObj.getDoubleValue("angle") == LinkerDefConstant.ANGLE_DOWN)
// && (epcLinkerToObj.getDoubleValue("angle") == LinkerDefConstant.ANGLE_UP
// || epcLinkerToObj.getDoubleValue("angle") == LinkerDefConstant.ANGLE_DOWN)
&& epcLinkerPoints.size() == 2
&& epcLinkerPoint1.equals(epcLinkerPoint2)){ // 说明是连线原本是垂直方向的 转换后连线方向应为水平方向
if (epcLinkerFromPoi.getY() < epcLinkerToPoi.getY()){ // 连线是自上而下的走向 转换后连线方向应为 自左向右
@ -330,10 +327,6 @@ public class EpcToBPMN implements ModelConvertStrategy {
}
}else if (epcLinkerFromPoi.getY() == epcLinkerToPoi.getY()
&& epcLinkerFromPoi.getX() != epcLinkerToPoi.getX()
// && (epcLinkerFromObj.getDoubleValue("angle") == LinkerDefConstant.ANGLE_LEFT
// || epcLinkerFromObj.getDoubleValue("angle") == LinkerDefConstant.ANGLE_RIGHT)
// && (epcLinkerToObj.getDoubleValue("angle") == LinkerDefConstant.ANGLE_LEFT
// || epcLinkerToObj.getDoubleValue("angle") == LinkerDefConstant.ANGLE_RIGHT)
&& epcLinkerPoints.size() == 2
&& epcLinkerPoint1.equals(epcLinkerPoint2)){ // 说明连线原本是水平方向的 转换后连线方向应为垂直方向
if (epcLinkerFromPoi.getX() < epcLinkerToPoi.getX()){ // 连线是自左而右的走向 转换后连线方向应为 自下而上
@ -391,7 +384,6 @@ public class EpcToBPMN implements ModelConvertStrategy {
point10.put("y",epcPageWidth - epcLinkerPoint2.getX());
points.add(point10);
}
// System.out.println("==========================> 11111 "+epcLinkerObj.getString("text"));
}else if (epcLinkerFromObj.getDoubleValue("x") > epcLinkerPoint1.getX()
&& epcLinkerFromObj.getDoubleValue("y") == epcLinkerPoint1.getY()){ // 从图形左侧出发 转换后 图形下侧出发
bpmnLinkerFromObj.put("x",bpmnShapeFromProps.getDoubleValue("x") + (bpmnShapeFromProps.getDoubleValue("w") / 2));
@ -411,10 +403,8 @@ public class EpcToBPMN implements ModelConvertStrategy {
point12.put("y",epcPageWidth - epcLinkerPoint2.getX());
points.add(point12);
}
// System.out.println("==========================> 2222 "+epcLinkerObj.getString("text"));
}else {
// 垂直方向上
// System.out.println("==========================> 333"+epcLinkerObj.getString("text"));
Map<String, Position> anchorPoiMap = ConvertUtil.getConvertAnchorPoi(elements, bpmnElements, epcLinkerObj);
if (anchorPoiMap.containsKey("from")){
Position fromPoi = anchorPoiMap.get("from");
@ -427,6 +417,10 @@ public class EpcToBPMN implements ModelConvertStrategy {
JSONObject point = (JSONObject)o;
Position tempPoi = new Position(point.getDoubleValue("y"),epcPageWidth - point.getDoubleValue("x"));
positionList.add(tempPoi);
JSONObject tempPoint = new JSONObject();
tempPoint.put("x",tempPoi.getX());
tempPoint.put("y",tempPoi.getY());
points.add(tempPoint);
}
if (anchorPoiMap.containsKey("to")){
Position toPoi = anchorPoiMap.get("to");
@ -515,13 +509,13 @@ public class EpcToBPMN implements ModelConvertStrategy {
String eventMappingName = ConvertUtil.epcToBPMNShapeMapping("event");
String annotation = ConvertUtil.epcToBPMNShapeMapping("procedure");
String annotationId = "";
List<String> annotationIds = new ArrayList<>();
// Map<String,Position> eventShapeCenterPoiMap = new HashMap<>();
List<EventNode> eventNodeList = new ArrayList<>();
for (String key : bpmnElements.keySet()) {
JSONObject element = bpmnElements.getJSONObject(key);
String eleName = element.getString("name");
if (annotation.equals(eleName)) annotationId = element.getString("id");
if (annotation.equals(eleName)) annotationIds.add(element.getString("id"));
if (!eventMappingName.equals(eleName)) continue;
JSONObject props = element.getJSONObject("props");
EventNode eventNode = new EventNode(key, props.getDoubleValue("x"), props.getDoubleValue("y"), props.getDoubleValue("w"), props.getDoubleValue("h"));
@ -548,15 +542,45 @@ public class EpcToBPMN implements ModelConvertStrategy {
// 与产品沟通 转换前一定会有开始事件/结束事件 且在最两边
EventNode startEpcEventNode = eventNodeList.get(0);
startEventLinkerTo.put("id",startEpcEventNode.getId());
startEventLinkerTo.put("x",startEpcEventNode.getX());
startEventLinkerTo.put("y",startEpcEventNode.getCenterShapePosi().getY());
startEventLinkerTo.put("angle",LinkerDefConstant.ANGLE_RIGHT);
int startEventLinkerZIndex = zIndexMap.get("zindex").intValue();
JSONObject startEventLinkerProps = new JSONObject();
zIndexMap.put("zindex",startEventLinkerZIndex++);
startEventLinkerProps.put("zindex",startEventLinkerZIndex++);
startEventLinker.put("props",startEventLinkerProps);
startEventLinker.put("from",startEventLinkerFrom);
JSONArray startLinkerPoints = new JSONArray();
if (startEventLinkerFrom.getDoubleValue("y") > startEventLinkerTo.getDoubleValue("y")){
startEventLinkerTo.put("angle",LinkerDefConstant.ANGLE_UP);
startEventLinkerTo.put("x",startEpcEventNode.getX() + (startEpcEventNode.getWidth() / 2));
startEventLinkerTo.put("y",startEpcEventNode.getY() + startEpcEventNode.getHeight());
JSONObject point = new JSONObject();
point.put("x",startEventLinkerTo.getDoubleValue("x"));
point.put("y",startEventLinkerFrom.getDoubleValue("y"));
startLinkerPoints.add(point);
}else if (startEventLinkerFrom.getDoubleValue("y") < startEventLinkerTo.getDoubleValue("y")){
startEventLinkerTo.put("angle",LinkerDefConstant.ANGLE_DOWN);
startEventLinkerTo.put("x",startEpcEventNode.getX() + (startEpcEventNode.getWidth() / 2));
startEventLinkerTo.put("y",startEpcEventNode.getY());
JSONObject point = new JSONObject();
point.put("x",startEventLinkerTo.getDoubleValue("x"));
point.put("y",startEventLinkerFrom.getDoubleValue("y"));
startLinkerPoints.add(point);
}else if (startEventLinkerFrom.getDoubleValue("y") == startEventLinkerTo.getDoubleValue("y")){
startEventLinkerTo.put("angle",LinkerDefConstant.ANGLE_RIGHT);
startEventLinkerTo.put("x",startEpcEventNode.getX());
startEventLinkerTo.put("y",startEpcEventNode.getY() + (startEpcEventNode.getWidth() / 2));
JSONObject p1 = new JSONObject();
p1.put("x",(startEventLinkerTo.getDoubleValue("x") - startEventLinkerFrom.getDoubleValue("x")) / 2);
p1.put("y",startEventLinkerFrom.getDoubleValue("y"));
startLinkerPoints.add(p1);
JSONObject p2 = new JSONObject();
p2.put("x",(startEventLinkerTo.getDoubleValue("x") - startEventLinkerFrom.getDoubleValue("x")) / 2);
p2.put("y",startEventLinkerFrom.getDoubleValue("y"));
startLinkerPoints.add(p2);
}
startEventLinker.put("points",startLinkerPoints);
startEventLinker.put("to",startEventLinkerTo);
bpmnElements.put(startEventLinkerId,startEventLinker);
@ -753,7 +777,7 @@ public class EpcToBPMN implements ModelConvertStrategy {
String linkDefId = UUIDGener.getObjectId();
linkerDef.put("id",linkDefId);
linkerDef.put("text","事件");
if (annotationId.equals(fromLinkerAdapter.getId())){
if (annotationIds.contains(fromLinkerAdapter.getId())){
JSONObject lineStyle = linkerDef.getJSONObject("lineStyle");
lineStyle.put("lineStyle","dashed");
lineStyle.put("endArrowStyle","none");

View File

@ -546,7 +546,7 @@ var UI = {
success: function (r,textStatus,jqXHR) {
$.simpleAlert("close");
if(r.result == 'ok' ) {
$.simpleAlert('转换成功', 'success');
$.simpleAlert('转换成功,请到当前文件所在同级目录查看', 'ok',4000);
}else {
$.simpleAlert(r.data.desc, 'error');
}

View File

@ -606,7 +606,7 @@ var UI = {
success: function (r,textStatus,jqXHR) {
$.simpleAlert("close");
if(r.result == 'ok' ) {
$.simpleAlert('转换成功', 'success');
$.simpleAlert('转换成功,请到当前文件所在同级目录查看', 'ok',4000);
}else {
$.simpleAlert(r.data.desc, 'error');
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.category-title[data-v-0a5ea2f0]{height:25px;line-height:25px;vertical-align:center;margin:10px 10px 5px 0;border-left:3px solid #4e7ff9}.logo:hover .logo-del-icon[data-v-0a5ea2f0]{display:inline-block}.logo-mask[data-v-0a5ea2f0]{display:none}.logo:hover .logo-mask[data-v-0a5ea2f0]{display:inline-block;border-radius:2px;position:absolute;left:1px;top:1px;right:0;width:100%;height:100%;color:#fff;background-color:hsla(0,0%,49%,.5)}.logo-del-icon[data-v-0a5ea2f0]{cursor:pointer;float:right;position:relative;top:-23px;left:-5px;display:none}.banner:hover .banner-del-icon[data-v-0a5ea2f0]{display:inline-block}.banner-mask[data-v-0a5ea2f0]{display:none}.banner:hover .banner-mask[data-v-0a5ea2f0]{display:inline-block;border-radius:2px;position:absolute;left:1px;top:1px;right:0;width:100%;height:100%;color:#fff;background-color:hsla(0,0%,49%,.5)}.banner-del-icon[data-v-0a5ea2f0]{display:none}

View File

@ -0,0 +1 @@
#userGroup[data-v-e0fd60a6] .el-main{padding:0 20px}#userGroup[data-v-e0fd60a6] .el-table__row .operate-icon-display{display:none}#userGroup[data-v-e0fd60a6] .el-table__row:hover .operate-icon-display{display:inline-block}#userGroup[data-v-e0fd60a6] .el-dialog__body{padding:0 20px}#userGroup[data-v-e0fd60a6] .el-tabs__nav-wrap:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background-color:#f2f2f2;z-index:1}#userGroup[data-v-e0fd60a6] .el-tabs__active-bar{height:1px;background-color:#4e7ff9}#userGroup[data-v-e0fd60a6] .el-tabs__item.is-active{color:#4e7ff9}#userGroup[data-v-e0fd60a6] .el-tabs__item{color:#606266}#userGroup[data-v-e0fd60a6] .el-form-item__label{padding:0;line-height:0}#userGroup[data-v-e0fd60a6] .el-form-item{margin-bottom:16px}#userGroup[data-v-e0fd60a6] .el-tree{min-width:100%;display:inline-block!important}#userGroup[data-v-e0fd60a6] .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:#f5f7fa;color:#4e7ff9}#userGroup[data-v-e0fd60a6] .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content .awsui-iconfont{color:#4e7ff9!important}#userGroup[data-v-e0fd60a6] .el-step__title{font-size:12px}#userGroup[data-v-e0fd60a6] textarea.awsui-input{height:130px}

View File

@ -0,0 +1 @@
.inline-block[data-v-08929cd1]{display:inline-block}.label-padding[data-v-08929cd1]{padding-bottom:8px;padding-top:8px}.workspace-update[data-v-08929cd1] .el-dialog__body{padding:10px 20px;color:#606266;font-size:14px;word-break:break-all}#workspaceManage[data-v-6a19ae20] .el-main{display:block;flex:1;flex-basis:auto;overflow:auto;padding-top:20px;padding-left:20px;padding-right:0;padding-bottom:0}#workspaceManage[data-v-6a19ae20] .el-table__row .operate-icon-display{display:none}#workspaceManage[data-v-6a19ae20] .el-table__row:hover .operate-icon-display{display:inline-block}.el-header[data-v-052ecdb7]{background-color:#b3c0d1;color:#333;line-height:60px}.el-aside[data-v-052ecdb7]{color:#333}#menu .el-menu[data-v-052ecdb7]{border-right:0 solid #e6e6e6}#manage #menu[data-v-052ecdb7]{border-right:1px solid #e6e6e6}.icon[data-v-052ecdb7]{margin-right:5px;position:relative;top:-1px}

View File

@ -0,0 +1 @@
.inline-block[data-v-08929cd1]{display:inline-block}.label-padding[data-v-08929cd1]{padding-bottom:8px;padding-top:8px}.workspace-import[data-v-4fcb9135] .el-dialog__body,.workspace-update[data-v-08929cd1] .el-dialog__body{padding:10px 20px;color:#606266;font-size:14px;word-break:break-all}

View File

@ -0,0 +1 @@
#bpmOrgAddress[data-v-6de64a47] .el-dialog__body{padding:10px 20px;color:#606266;font-size:14px;word-break:break-all}#bpmOrgAddress[data-v-6de64a47] .el-input__inner{border-radius:0}#bpmOrgAddress[data-v-6de64a47] .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:#f5f7fa;color:#4e7ff9}#bpmOrgAddress[data-v-6de64a47] .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content .awsui-iconfont{color:#4e7ff9!important}.tree[data-v-6de64a47]{overflow:auto;width:458px;height:300px}#bpmOrgAddress[data-v-6de64a47] .el-tree{min-width:100%;display:inline-block!important}#user[data-v-189b73c4] .el-main{padding:0 20px}#user[data-v-189b73c4] .el-footer{padding:0}#user[data-v-189b73c4] .el-card__body{padding:10px 0}#user[data-v-189b73c4] .el-drawer__header{margin-bottom:17px;color:#606266;font-size:17px}#drawerDiv .row .operate-icon-display[data-v-189b73c4]{display:none}#drawerDiv .row:hover .operate-icon-display[data-v-189b73c4]{display:inline-block}#drawerDiv .row[data-v-189b73c4]:hover{background-color:#f5f7fa}.row[data-v-189b73c4]{display:inline-block;width:155px;height:25px;line-height:25px;border-right:1px solid #f2f2f2;padding-left:4px;margin-right:5px}.category-title[data-v-189b73c4]{height:25px;line-height:25px;vertical-align:center;margin:10px 10px 5px 0;border-left:3px solid #4e7ff9}.user_photo_img[data-v-189b73c4]{width:30px;height:30px;border-radius:50%;position:relative;top:0}.text-over-hidden[data-v-189b73c4]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

View File

@ -0,0 +1 @@
.inline-block[data-v-08929cd1]{display:inline-block}.label-padding[data-v-08929cd1]{padding-bottom:8px;padding-top:8px}.workspace-update[data-v-08929cd1] .el-dialog__body{padding:10px 20px;color:#606266;font-size:14px;word-break:break-all}#workspaceManage[data-v-6a19ae20] .el-main{display:block;flex:1;flex-basis:auto;overflow:auto;padding-top:20px;padding-left:20px;padding-right:0;padding-bottom:0}#workspaceManage[data-v-6a19ae20] .el-table__row .operate-icon-display{display:none}#workspaceManage[data-v-6a19ae20] .el-table__row:hover .operate-icon-display{display:inline-block}

View File

@ -0,0 +1 @@
#commonRepository[data-v-c633f5ea] .el-dialog__body,#commonRepository[data-v-c633f5ea] .el-main{padding:0 20px}#commonRepository[data-v-c633f5ea] .el-footer{padding:0}#commonRepository[data-v-c633f5ea] .el-table__row .operate-icon-display{display:none}#commonRepository[data-v-c633f5ea] .el-table__row:hover .operate-icon-display{display:inline-block}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0ab156"],{1485:function(a,t,e){"use strict";e.r(t);var i=function(){var a=this,t=a._self._c;return t("div",{staticStyle:{width:"100%",height:"100%"}},[t("iframe",{staticStyle:{border:"0"},attrs:{id:"iframe",width:"100%",height:"100%",name:"iframe",src:a.src}})])},s=[],n={name:"MappingManagement",data(){return{src:"./w?sid="+this.$store.state.sessionId+"&cmd=com.actionsoft.apps.coe.pal.mappingmanagement_main_page&dataType="+this.$route.params.dataType}}},r=n,c=e("2877"),p=Object(c["a"])(r,i,s,!1,null,"56fd105e",null);t["default"]=p.exports}}]);

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0f078a"],{"9d09":function(t,e,i){"use strict";i.r(e);var s=function(){var t=this,e=t._self._c;return e("div",{style:{width:"100%",height:t.mainHeight}},[e("iframe",{staticStyle:{border:"0"},attrs:{id:"orgIframe",width:"100%",height:parseInt(t.mainHeight)-4+"px",name:"orgIframe",src:t.src}})])},n=[],r={name:"BPMOrg",data(){return{src:"./w?sid="+this.$store.state.sessionId+"&cmd=com.actionsoft.apps.coe.pal_average_user_org",mainHeight:parseInt(this.$store.getters.getTopMainHeightFn)-4+"px"}},computed:{listenTopMainHeight(){return this.$store.getters.getTopMainHeightFn}},watch:{listenTopMainHeight:function(t,e){this.mainHeight=parseInt(this.$store.getters.getTopMainHeightFn)-4+"px"}}},a=r,o=i("2877"),h=Object(o["a"])(a,s,n,!1,null,"2280cc48",null);e["default"]=h.exports}}]);

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d216d3a"],{c3b6:function(t,e,i){"use strict";i.r(e);var a=function(){var t=this,e=t._self._c;return e("div",{style:{width:"100%",height:t.mainHeight},attrs:{id:"cooperation"}},[e("iframe",{staticStyle:{border:"0"},attrs:{id:"coopIframe",width:"100%",height:parseInt(t.mainHeight)-4+"px",name:"coopIframe",src:t.src}})])},n=[],s={name:"cooperationCreate",data(){return{src:wHref+"?sid="+this.$store.state.sessionId+"&mainPage=create&cmd=com.actionsoft.apps.coe.pal.cooperation_main",mainHeight:parseInt(this.$store.getters.getTopMainHeightFn)-4+"px"}},computed:{listenTopMainHeight(){return this.$store.getters.getTopMainHeightFn}},watch:{listenTopMainHeight:function(t,e){this.mainHeight=parseInt(this.$store.getters.getTopMainHeightFn)-4+"px"}}},o=s,r=i("2877"),c=Object(r["a"])(o,a,n,!1,null,"6a826a48",null);e["default"]=c.exports}}]);

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d224b23"],{e0df:function(t,e,i){"use strict";i.r(e);var a=function(){var t=this,e=t._self._c;return e("div",{style:{width:"100%",height:t.mainHeight},attrs:{id:"cooperationUpdate"}},[e("iframe",{staticStyle:{border:"0"},attrs:{id:"coopIframe",width:"100%",height:parseInt(t.mainHeight)-4+"px",name:"coopIframe",src:t.src}})])},n=[],s={name:"CooperationUpdate",data(){return{src:wHref+"?sid="+this.$store.state.sessionId+"&mainPage=update&cmd=com.actionsoft.apps.coe.pal.cooperation_main",mainHeight:parseInt(this.$store.getters.getTopMainHeightFn)-4+"px"}},computed:{listenTopMainHeight(){return this.$store.getters.getTopMainHeightFn}},watch:{listenTopMainHeight:function(t,e){this.mainHeight=parseInt(this.$store.getters.getTopMainHeightFn)-4+"px"}}},o=s,r=i("2877"),p=Object(r["a"])(o,a,n,!1,null,"543345d8",null);e["default"]=p.exports}}]);

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d224ef1"],{e1f5:function(e,s,t){"use strict";t.r(s);var n=function(){var e=this,s=e._self._c;return s("div",{staticClass:"devGetSession"},[e._v(" 正在获取session ")])},a=[],d=t("a18c"),o=t("0f08"),i=t("4360");o["a"].post({url:"jd",data:{userid:devUserInfo.userid,pwd:devUserInfo.pwd,lang:"cn",cmd:"com.actionsoft.apps.getsession.get",deviceType:"pc"}}).then((function(e){"error"==e.result?alert("获取session错误"+e.msg):(i["a"].commit("edit",{sessionId:e.data.sid}),d["a"].replace("/"))}));var r={data(){return{dwList:[]}},methods:{},mounted(){}},c=r,u=t("2877"),l=Object(u["a"])(c,n,a,!1,null,null,null);s["default"]=l.exports}}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long