提交 4e38ce23 编写于 作者: O o2sword

内容管理文档增加预留字段并可在视图中查询

上级 bb41c040
......@@ -623,6 +623,15 @@ public class ActionPersistPublishContent extends BaseAction {
private List<String> pictureList;
@FieldDescribe("业务数据String值01.")
private String stringValue01;
@FieldDescribe("业务数据String值02.")
private String stringValue02;
@FieldDescribe("业务数据String值03.")
private String stringValue03;
public String getId() {
return id;
}
......@@ -1078,6 +1087,30 @@ public class ActionPersistPublishContent extends BaseAction {
public void setNotice(Boolean notice) {
isNotice = notice;
}
public String getStringValue01() {
return stringValue01;
}
public void setStringValue01(String stringValue01) {
this.stringValue01 = stringValue01;
}
public String getStringValue02() {
return stringValue02;
}
public void setStringValue02(String stringValue02) {
this.stringValue02 = stringValue02;
}
public String getStringValue03() {
return stringValue03;
}
public void setStringValue03(String stringValue03) {
this.stringValue03 = stringValue03;
}
}
public static class Wo extends WoId {
......
......@@ -426,6 +426,15 @@ public class ActionPersistSaveDocument extends BaseAction {
@FieldDescribe( "不修改权限(跳过权限设置,保留原来的设置),非必填" )
private Boolean skipPermission = false;
@FieldDescribe("业务数据String值01.")
private String stringValue01;
@FieldDescribe("业务数据String值02.")
private String stringValue02;
@FieldDescribe("业务数据String值03.")
private String stringValue03;
public static WrapCopier<Wi, Document> copier = WrapCopierFactory.wi( Wi.class, Document.class, null, JpaObject.FieldsUnmodifyExcludeId);
public String getId() {
......@@ -566,6 +575,30 @@ public class ActionPersistSaveDocument extends BaseAction {
public void setPublishTime(Date publishTime) {
this.publishTime = publishTime;
}
public String getStringValue01() {
return stringValue01;
}
public void setStringValue01(String stringValue01) {
this.stringValue01 = stringValue01;
}
public String getStringValue02() {
return stringValue02;
}
public void setStringValue02(String stringValue02) {
this.stringValue02 = stringValue02;
}
public String getStringValue03() {
return stringValue03;
}
public void setStringValue03(String stringValue03) {
this.stringValue03 = stringValue03;
}
}
public static class Wo extends WoId {
......
......@@ -428,6 +428,27 @@ public class Document extends SliceJpaObject {
@CheckPersist(allowEmpty = true)
private List<String> pictureList;
public static final String stringValue01_FIELDNAME = "stringValue01";
@FieldDescribe("业务数据String值01.")
@Column(length = length_255B, name = ColumnNamePrefix + stringValue01_FIELDNAME)
@Index(name = TABLE + IndexNameMiddle + stringValue01_FIELDNAME)
@CheckPersist(allowEmpty = true)
private String stringValue01;
public static final String stringValue02_FIELDNAME = "stringValue02";
@FieldDescribe("业务数据String值02.")
@Column(length = length_255B, name = ColumnNamePrefix + stringValue02_FIELDNAME)
@Index(name = TABLE + IndexNameMiddle + stringValue02_FIELDNAME)
@CheckPersist(allowEmpty = true)
private String stringValue02;
public static final String stringValue03_FIELDNAME = "stringValue03";
@FieldDescribe("业务数据String值03.")
@Column(length = length_255B, name = ColumnNamePrefix + stringValue03_FIELDNAME)
@Index(name = TABLE + IndexNameMiddle + stringValue03_FIELDNAME)
@CheckPersist(allowEmpty = true)
private String stringValue03;
public Date getModifyTime() {
return modifyTime;
}
......@@ -842,6 +863,30 @@ public class Document extends SliceJpaObject {
this.sequenceCreatorUnitName = getSequenceString(sequenceCreatorUnitName);
}
public String getStringValue01() {
return stringValue01;
}
public void setStringValue01(String stringValue01) {
this.stringValue01 = stringValue01;
}
public String getStringValue02() {
return stringValue02;
}
public void setStringValue02(String stringValue02) {
this.stringValue02 = stringValue02;
}
public String getStringValue03() {
return stringValue03;
}
public void setStringValue03(String stringValue03) {
this.stringValue03 = stringValue03;
}
// -------------------Reader-------------------------
// -------------------2020-06-12 改为只存储DistinguishedName后两段,第一段可能会在运行过程中修改
public void addToReadPersonList(String readPerson) {
......
package com.x.query.core.express.plan;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Set;
......@@ -267,11 +268,11 @@ public class CmsPlan extends Plan {
private Predicate documentPredicate(CriteriaBuilder cb, Root<Document> root, Runtime runtime,
List<FilterEntry> filterList) throws Exception {
List<Predicate> ps = new TreeList<>();
ps.add(this.documentPredicate_creator(cb, root));
//ps.add(this.documentPredicate_creator(cb, root));
ps.add(this.documentPredicate_appInfo(cb, root));
ps.add(this.documentPredicate_date(cb, root));
//ps.add(this.documentPredicate_date(cb, root));
ps.add(this.documentPredicate_Filter(cb, root, runtime, filterList));
ps.add(this.documentPredicate_draft(cb, root));
//ps.add(this.documentPredicate_draft(cb, root));
Predicate predicate = this.documentPredicate_typeScope(cb, root);
if (predicate != null) {
......@@ -386,12 +387,21 @@ public class CmsPlan extends Plan {
private Predicate documentPredicate_Filter(CriteriaBuilder cb, Root<Document> root, Runtime runtime,
List<FilterEntry> filterList) throws Exception {
boolean flag = true;
boolean orFlag = false;
boolean andFlag = false;
Predicate rp = cb.conjunction();
Predicate p = cb.disjunction();
for (FilterEntry filterEntry : filterList) {
List<FilterEntry> list = new ArrayList<>();
list.addAll(filterList);
if(runtime.filterList!=null){
list.addAll(runtime.filterList);
}
for (FilterEntry filterEntry : list) {
if (filterEntry.path.indexOf("(") > -1 && filterEntry.path.indexOf(")") > -1) {
flag = false;
String path = StringUtils.substringBetween(filterEntry.path, "(", ")").trim();
if ("readPersonList".equals(path)) {
orFlag = true;
p = cb.or(p, cb.isMember("所有人", root.get(Document_.readPersonList)));
p = cb.or(p, cb.isMember(runtime.person, root.get(Document_.readPersonList)));
if (runtime.person.indexOf("@") > -1) {
......@@ -399,18 +409,22 @@ public class CmsPlan extends Plan {
root.get(Document_.readPersonList)));
}
} else if ("readUnitList".equals(path)) {
orFlag = true;
if (ListTools.isNotEmpty(runtime.unitAllList)) {
p = cb.or(p, root.get(Document_.readUnitList).in(runtime.unitAllList));
}
} else if ("readGroupList".equals(path)) {
orFlag = true;
if (ListTools.isNotEmpty(runtime.groupList)) {
p = cb.or(p, root.get(Document_.readGroupList).in(runtime.groupList));
}
} else {
Predicate fp = filterEntry.toCmsDocumentPredicate(cb, root, runtime, path);
if (StringUtils.equals("and", filterEntry.logic)) {
p = cb.and(p, fp);
if (Comparison.isEquals(filterEntry.logic)) {
andFlag = true;
rp = cb.and(rp, fp);
} else {
orFlag = true;
p = cb.or(p, fp);
}
}
......@@ -419,8 +433,14 @@ public class CmsPlan extends Plan {
if (flag) {
return null;
}
return p;
if(andFlag){
if(orFlag){
rp = cb.and(rp, p);
}
}else{
rp = p;
}
return rp;
}
}
}
......@@ -630,7 +630,7 @@ public class FilterEntry extends GsonPropertyObject {
public Predicate toCmsDocumentPredicate(CriteriaBuilder cb, Root<Document> root, Runtime runtime, String paramName)
throws Exception {
Predicate p = cb.disjunction();
Predicate p = cb.conjunction();
String compareValue = this.compareValue(runtime);
String compareOtherValue = this.compareOtherValue(runtime);
if (StringUtils.equals(this.formatType, FORMAT_BOOLEANVALUE)) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册