Fix 3.7.7 (#797)

* 3.7.7

* fix: Excel列表无法导出审批相关字段

* Update @rbv
This commit is contained in:
REBUILD 企业管理系统 2024-08-13 19:20:34 +08:00 committed by GitHub
parent dab75bbd9c
commit 82e51fe46c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 32 additions and 22 deletions

2
@rbv

@ -1 +1 @@
Subproject commit 0f64bea1ce3d94152e7ad6716cdb1bdc3565336a
Subproject commit fb639d01abceb0dbb85760e475a153e2f69237b5

View file

@ -10,7 +10,7 @@
</parent>
<groupId>com.rebuild</groupId>
<artifactId>rebuild</artifactId>
<version>3.7.6</version>
<version>3.7.7</version>
<name>rebuild</name>
<description>Building your business-systems freely!</description>
<url>https://getrebuild.com/</url>

View file

@ -74,11 +74,11 @@ public class Application implements ApplicationListener<ApplicationStartedEvent>
/**
* Rebuild Version
*/
public static final String VER = "3.7.6";
public static final String VER = "3.7.7";
/**
* Rebuild Build [MAJOR]{1}[MINOR]{2}[PATCH]{2}[BUILD]{2}
*/
public static final int BUILD = 3070612;
public static final int BUILD = 3070713;
static {
// Driver for DB

View file

@ -97,7 +97,7 @@ public class TemplateExtractor {
String listField = varName.substring(1);
// 审批流程
if (varName.startsWith(APPROVAL_PREFIX)) {
if (!this.isListType && varName.startsWith(APPROVAL_PREFIX)) {
String stepNodeField = listField.substring(APPROVAL_PREFIX.length());
if (approvalEntity != null && MetadataHelper.getLastJoinField(approvalEntity, stepNodeField) != null) {
map.put(varName, stepNodeField);

View file

@ -50,7 +50,7 @@ public abstract class ObservableService extends SafeObservable implements Servic
@Override
public void addObserver(SafeObserver o) {
log.info("Add observer : {} for [ {} ] ", o, getEntityCode() == 0 ? "*" : getEntityCode());
log.info("Add observer : {} for [ {} ]", o, getEntityCode() == 0 ? "*" : getEntityCode());
super.addObserver(o);
}

View file

@ -41,8 +41,8 @@ public class OverDateOperator {
@Override
public AviatorObject call(Map<String, Object> env, AviatorObject arg1, AviatorObject arg2) {
Object $argv1 = arg1.getValue(env);
Object $argv2 = arg2.getValue(env);
Object $argv1 = convertIfDate(arg1.getValue(env));
Object $argv2 = convertIfDate(arg2.getValue(env));
if ($argv1 instanceof Date && $argv2 instanceof Number) {
return opDate((Date) $argv1, ((Number) $argv2).intValue());
@ -66,8 +66,8 @@ public class OverDateOperator {
@Override
public AviatorObject call(Map<String, Object> env, AviatorObject arg1, AviatorObject arg2) {
Object $argv1 = arg1.getValue(env);
Object $argv2 = arg2.getValue(env);
Object $argv1 = convertIfDate(arg1.getValue(env));
Object $argv2 = convertIfDate(arg2.getValue(env));
if ($argv1 instanceof Date && $argv2 instanceof Number) {
return opDate((Date) $argv1, -((Number) $argv2).intValue());
@ -101,8 +101,8 @@ public class OverDateOperator {
@Override
public AviatorObject call(Map<String, Object> env, AviatorObject arg1, AviatorObject arg2) {
Object $argv1 = arg1.getValue(env);
Object $argv2 = arg2.getValue(env);
Object $argv1 = convertIfDate(arg1.getValue(env));
Object $argv2 = convertIfDate(arg2.getValue(env));
if ($argv1 instanceof Date && $argv2 instanceof Date) {
long v1 = ((Date) $argv1).getTime();
@ -127,8 +127,8 @@ public class OverDateOperator {
@Override
public AviatorObject call(Map<String, Object> env, AviatorObject arg1, AviatorObject arg2) {
Object $argv1 = arg1.getValue(env);
Object $argv2 = arg2.getValue(env);
Object $argv1 = convertIfDate(arg1.getValue(env));
Object $argv2 = convertIfDate(arg2.getValue(env));
if ($argv1 instanceof Date && $argv2 instanceof Date) {
long v1 = ((Date) $argv1).getTime();
@ -153,8 +153,8 @@ public class OverDateOperator {
@Override
public AviatorObject call(Map<String, Object> env, AviatorObject arg1, AviatorObject arg2) {
Object $argv1 = arg1.getValue(env);
Object $argv2 = arg2.getValue(env);
Object $argv1 = convertIfDate(arg1.getValue(env));
Object $argv2 = convertIfDate(arg2.getValue(env));
if ($argv1 instanceof Date && $argv2 instanceof Date) {
long v1 = ((Date) $argv1).getTime();
@ -179,8 +179,8 @@ public class OverDateOperator {
@Override
public AviatorObject call(Map<String, Object> env, AviatorObject arg1, AviatorObject arg2) {
Object $argv1 = arg1.getValue(env);
Object $argv2 = arg2.getValue(env);
Object $argv1 = convertIfDate(arg1.getValue(env));
Object $argv2 = convertIfDate(arg2.getValue(env));
if ($argv1 instanceof Date && $argv2 instanceof Date) {
long v1 = ((Date) $argv1).getTime();
@ -205,8 +205,8 @@ public class OverDateOperator {
@Override
public AviatorObject call(Map<String, Object> env, AviatorObject arg1, AviatorObject arg2) {
Object $argv1 = arg1.getValue(env);
Object $argv2 = arg2.getValue(env);
Object $argv1 = convertIfDate(arg1.getValue(env));
Object $argv2 = convertIfDate(arg2.getValue(env));
if ($argv1 instanceof Date && $argv2 instanceof Date) {
long v1 = ((Date) $argv1).getTime();
@ -231,8 +231,8 @@ public class OverDateOperator {
@Override
public AviatorObject call(Map<String, Object> env, AviatorObject arg1, AviatorObject arg2) {
Object $argv1 = arg1.getValue(env);
Object $argv2 = arg2.getValue(env);
Object $argv1 = convertIfDate(arg1.getValue(env));
Object $argv2 = convertIfDate(arg2.getValue(env));
if ($argv1 instanceof Date && $argv2 instanceof Date) {
long v1 = ((Date) $argv1).getTime();
@ -244,4 +244,14 @@ public class OverDateOperator {
}
}
}
// 转换为日期
static Object convertIfDate(Object d) {
if (d instanceof Date) return d;
if (d instanceof String) {
Date date = CalendarUtils.parse((String) d);
return date == null ? d : date;
}
return d;
}
}