Fix 3.6.1 (#736)

* fix: TriggerByTimerJob log

* fix: 去重连接*N

* VNExpires

* fix: Gitee#I99RBC


* fix: 表单计算数字符号

* v3.6.1
This commit is contained in:
REBUILD 企业管理系统 2024-03-22 15:00:52 +08:00 committed by GitHub
parent fb71f6db1d
commit 0232df8b93
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 29 additions and 15 deletions

2
@rbv

@ -1 +1 @@
Subproject commit b620fe7925c82990b116927ba6434dcccbddfdfb
Subproject commit f536bdfad3cc51f7edd2256579843bffae3ccfb0

View file

@ -10,7 +10,7 @@
</parent>
<groupId>com.rebuild</groupId>
<artifactId>rebuild</artifactId>
<version>3.6.0</version>
<version>3.6.1</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.6.0";
public static final String VER = "3.6.1";
/**
* Rebuild Build [MAJOR]{1}[MINOR]{2}[PATCH]{2}[BUILD]{2}
*/
public static final int BUILD = 3060005;
public static final int BUILD = 3060106;
static {
// Driver for DB

View file

@ -229,8 +229,10 @@ public class AggregationEvaluator {
if (n == null) continue;
// *N
boolean xN3 = false;
if (n instanceof ID && mode == 3) {
n = FieldValueHelper.getLabel((ID) n, StringUtils.EMPTY);
xN3 = true;
}
// 多引用
@ -243,7 +245,7 @@ public class AggregationEvaluator {
nvList.add(n);
}
} else {
Object v = easyField.wrapValue(n);
Object v = xN3 ? n : easyField.wrapValue(n);
if (v == null) continue;
DisplayType dt = easyField.getDisplayType();

View file

@ -82,6 +82,7 @@ public class ConfigurationController extends BaseController {
mv.getModel().put("Version", Application.VER);
mv.getModel().put("SN", "***" + auth.getString("sn").substring(12));
mv.getModel().put("VN", auth.getString("vn"));
mv.getModel().put("VNExpires", auth.getIntValue("vnExpiresLeft") < 0);
return mv;
}

View file

@ -278,6 +278,7 @@ public class ModelExtrasController extends BaseController {
} else if (dt == DisplayType.NUMBER || dt == DisplayType.DECIMAL) {
if (evalVal instanceof Number) {
evalVal = easyField.wrapValue(evalVal);
evalVal = EasyDecimal.clearFlaged(evalVal);
return RespBody.ok(evalVal);
}
}

View file

@ -316,11 +316,16 @@
</div>
<div class="col-lg-3 col-12 col-right-compact">
<div class="card">
<div class="card-header card-header-divider">[[${bundle.L('关于')}]] REBUILD</div>
<div class="card-header card-header-divider">[[${bundle.L('关于')}]]</div>
<div class="card-body">
<p class="mb-1">[[${bundle.L('系统版本')}]] <a class="link" target="_blank" th:href="|https://getrebuild.com/download?v=${Version}|">[[${Version}]]</a></p>
<p class="mb-1">[[${bundle.L('授权类型')}]] <a class="link" target="_blank" th:href="|https://getrebuild.com/authority?sn=${SN}|">[[${LicenseType}]]</a></p>
<p th:if="${VN != null}" class="mb-1">[[${bundle.L('服务支持码')}]] <a>[[${VN}]]</a></p>
<p th:if="${VN != null}" class="mb-2">
[[${bundle.L('服务支持码')}]] <span>[[${VN}]]</span>
<a th:if="${VNExpires}" class="badge badge-danger up-2 badge-pill" th:href="'https://getrebuild.com/buy-license?type=10fw&vn=' + ${VN}" target="_blank">
<i class="mdi mdi-information-variant"></i>[[${bundle.L('服务支持已到期')}]]
</a>
</p>
<ul style="line-height: 2">
<li><a class="link" target="_blank" th:href="@{/error/server-status}">[[${bundle.L('系统状态')}]]</a></li>
<li><a class="link" target="_blank" href="https://getrebuild.com/docs/">[[${bundle.L('帮助文档')}]]</a></li>

View file

@ -5559,6 +5559,7 @@ span.icon-append .icon {
animation: blink 1s infinite;
}
.dropdown-menu.nott .dropdown-item {
.dropdown-menu.nott .dropdown-item,
.btn.J_filterlist {
text-transform: none;
}

View file

@ -71,7 +71,10 @@ const AdvFilters = {
$(res.data).each(function () {
const item = this
const $item = $(`<div class="dropdown-item J_custom" data-id="${item.id}"><a class="text-truncate"></a></div>`).appendTo($menu)
$item.text(item.name).on('click', () => that._effectFilter($item, 'aside'))
$item
.on('click', () => that._effectFilter($item, 'aside'))
.find('>a')
.text(item.name)
if (lastFilter === item.id) $defaultFilter = $item

View file

@ -468,6 +468,7 @@ class RbForm extends React.Component {
let moreActions = []
// 添加明细
if (props.rawModel.mainMeta) {
// in New
if (props.$$$parent && props.$$$parent.props._nextAddDetail) {
moreActions.push(
<a key="Action101" className="dropdown-item" onClick={() => this.post(RbForm.NEXT_ADDDETAIL)}>
@ -476,18 +477,18 @@ class RbForm extends React.Component {
)
}
}
// 列表页添加
// 列表页保存并继续
else if (window.RbViewModal && window.__PageConfig.type === 'RecordList') {
moreActions.push(
<a key="Action104" className="dropdown-item" onClick={() => this.post(RbForm.NEXT_VIEW)}>
{$L('保存并打开')}
</a>
)
moreActions.push(
<a key="Action105" className="dropdown-item" onClick={() => this.post(RbForm.NEXT_ADD36)}>
{$L('保存并继续新建')}
</a>
)
moreActions.push(
<a key="Action104" className="dropdown-item" onClick={() => this.post(RbForm.NEXT_VIEW)}>
{$L('保存并打开')}
</a>
)
}
// Clean others action