连线校验过滤制度、表单类型

This commit is contained in:
zhal 2023-07-31 11:39:15 +08:00
parent 81979353d2
commit 39d2f3158f
3 changed files with 884 additions and 859 deletions

View File

@ -253,79 +253,84 @@ public class PublishFormBeforeSaveEvent extends InterruptListener implements Int
public void defineQualityCheck(String uuid){
PALRepositoryModel model = PALRepositoryCache.getCache().get(uuid);
String vison = getVison(uuid);
List<JSONObject> elements_fei = getShapeJsonToJsonObject2(vison);
StringBuffer sb6= new StringBuffer();
StringBuilder sbs = new StringBuilder();
List<String> list_linker = new LinkedList<>();
//连线数据增加
JSONObject json = new JSONObject(new LinkedHashMap<>());
for (JSONObject o : elements_fei) {
String shapeId = o.getString("id");
if(!model.getMethodId().equals("control.policy") && !model.getMethodId().equals("data.form")){
String vison = getVison(uuid);
List<JSONObject> elements_fei = getShapeJsonToJsonObject2(vison);
StringBuffer sb6= new StringBuffer();
StringBuilder sbs = new StringBuilder();
List<String> list_linker = new LinkedList<>();
//连线数据增加
JSONObject json = new JSONObject(new LinkedHashMap<>());
for (JSONObject o : elements_fei) {
String shapeId = o.getString("id");
String shapeName = o.getString("name");
String title = o.getString("text");
if (!shapeName.equals("linker")) {
list_linker.add(shapeId);
json.put(shapeId,title);
}
}
for (JSONObject o : elements_fei) {
String shapeId = o.getString("id");
String shapeName = o.getString("name");
//System.out.println("这个名字是什么>>>>>>>" + shapeName);
if (shapeName.equals("linker")) {
JSONObject from = o.getJSONObject("from");
JSONObject to = o.getJSONObject("to");
if (to==null||from==null){
throw new BPMNError("0313", "出入线未与其他形状进行关联,请查看模型,连线校验未通过!!!");
}
String from_id = from.getString("id");
String to_id = to.getString("id");
if (UtilString.isEmpty(from_id)&&UtilString.isEmpty(to_id)){
throw new BPMNError("0313", "出入线未与其他形状进行关联,请查看模型,连线校验未通过!!!");
}
if (UtilString.isNotEmpty(from_id)) {
list_linker.remove(from_id);
}else {
JSONObject definition = JSONObject.parseObject(vison);
JSONObject elements = definition.getJSONObject("elements");
JSONObject string = elements.getJSONObject(to_id);
String title = string.getString("title");
sb6.append("\""+title+"\"").append("连线没有入线");
list_linker.add("\""+title+"\""+"连线没有入线");
}
if (UtilString.isNotEmpty(to_id)) {
list_linker.remove(to_id);
}else {
JSONObject definition = JSONObject.parseObject(vison);
JSONObject elements = definition.getJSONObject("elements");
JSONObject string = elements.getJSONObject(from_id);
String title = string.getString("title");
sb6.append("\""+title+"\"").append("连线没有出线");
list_linker.add("\""+title+"\""+"连线没有出线");
String shapeName = o.getString("name");
String title = o.getString("text");
if (!shapeName.equals("linker")) {
list_linker.add(shapeId);
json.put(shapeId,title);
}
}
//System.out.println("m的值>>>>>>>>>>>" + ms);
}
for (JSONObject o : elements_fei) {
String shapeId = o.getString("id");
String shapeName = o.getString("name");
//System.out.println("这个名字是什么>>>>>>>" + shapeName);
if (shapeName.equals("linker")) {
JSONObject from = o.getJSONObject("from");
JSONObject to = o.getJSONObject("to");
if (to==null||from==null){
throw new BPMNError("0313", "出入线未与其他形状进行关联,请查看模型,连线校验未通过!!!");
}
String from_id = from.getString("id");
String to_id = to.getString("id");
if (UtilString.isEmpty(from_id)&&UtilString.isEmpty(to_id)){
throw new BPMNError("0313", "出入线未与其他形状进行关联,请查看模型,连线校验未通过!!!");
}
if (UtilString.isNotEmpty(from_id)) {
list_linker.remove(from_id);
}else {
JSONObject definition = JSONObject.parseObject(vison);
JSONObject elements = definition.getJSONObject("elements");
JSONObject string = elements.getJSONObject(to_id);
String title = string.getString("title");
sb6.append("\""+title+"\"").append("连线没有入线");
list_linker.add("\""+title+"\""+"连线没有入线");
}
if (UtilString.isNotEmpty(to_id)) {
list_linker.remove(to_id);
}else {
JSONObject definition = JSONObject.parseObject(vison);
JSONObject elements = definition.getJSONObject("elements");
JSONObject string = elements.getJSONObject(from_id);
String title = string.getString("title");
sb6.append("\""+title+"\"").append("连线没有出线");
list_linker.add("\""+title+"\""+"连线没有出线");
}
}
//System.out.println("m的值>>>>>>>>>>>" + ms);
}
//System.out.println("linker>>>>>>>>>>>>" + list_linker.size());
if (list_linker.size() > 0) {
sbs.append("连线校验:");
for (String d :
list_linker) {
String name = json.getString(d);
sb6.append(name).append("没有连线");
if (list_linker.size() > 0) {
sbs.append("连线校验:");
for (String d :
list_linker) {
String name = json.getString(d);
sb6.append(name).append("没有连线");
}
sb6.append("校验未通过,请检查模型是否都已连线!");
sbs.append(sb6);
}
if (sbs.length()>0){
throw new BPMNError("0313", sbs.toString());
}
sb6.append("校验未通过,请检查模型是否都已连线!");
sbs.append(sb6);
}
if (sbs.length()>0){
throw new BPMNError("0313", sbs.toString());
}
/************************************文件属性校验************************************/
ResponseObject ro = ResponseObject.newOkResponse();
PALRepositoryModel m = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);