* [bug#57447,1h] fix bug.
This commit is contained in:
@@ -95,11 +95,16 @@ class pivot extends control
|
||||
|
||||
$this->pivotZen->show($groupID, $pivotID, '', $version);
|
||||
|
||||
$this->loadModel('mark')->setMark(array($pivotID), 'pivot', $version, 'version');
|
||||
$marks = $this->loadModel('mark')->getNeededMarks(array($pivotID), 'pivot', 'all', 'version');
|
||||
$marks = array();
|
||||
if($pivot->builtin == 1)
|
||||
{
|
||||
$this->loadModel('mark')->setMark(array($pivotID), 'pivot', $version, 'version');
|
||||
$marks = $this->loadModel('mark')->getNeededMarks(array($pivotID), 'pivot', 'all', 'version');
|
||||
}
|
||||
|
||||
$this->view->versionSpecs = $versionSpecs;
|
||||
$this->view->markedVersions = array_column($marks, 'version');
|
||||
$this->view->builtin = $pivot->builtin;
|
||||
$this->view->version = $version;
|
||||
$this->view->groupID = $groupID;
|
||||
$this->view->pivotID = $groupID;
|
||||
|
||||
@@ -2947,14 +2947,8 @@ class pivotModel extends model
|
||||
|
||||
foreach($pivots as $index => $pivot)
|
||||
{
|
||||
if(isset($pivotMaxVersion[$pivot->id]) && $pivotMaxVersion[$pivot->id] != $pivot->version)
|
||||
{
|
||||
$pivots[$index]->versionChange = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$pivots[$index]->versionChange = false;
|
||||
}
|
||||
$maxVersion = zget($pivotMaxVersion, $pivot->id, '');
|
||||
$pivots[$index]->versionChange = $maxVersion != $pivot->version && $pivot->builtin == 1;
|
||||
}
|
||||
|
||||
return $isObject ? current($pivots) : $pivots;
|
||||
|
||||
@@ -18,6 +18,10 @@ include_once 'show.html.php';
|
||||
$versionsTableBody = array();
|
||||
foreach($versionSpecs as $versionSpec)
|
||||
{
|
||||
$isMarked = in_array($versionSpec->version, $markedVersions);
|
||||
$isBuiltIn = $builtin == 1;
|
||||
$isFirstVersion = $versionSpec->version == 1;
|
||||
$isMainVersion = filter_var($versionSpec->version, FILTER_VALIDATE_INT) !== false;
|
||||
$versionsTableBody[] = h::tr
|
||||
(
|
||||
$version == $versionSpec->version ? setClass('bg-secondary-50') : null,
|
||||
@@ -26,12 +30,12 @@ foreach($versionSpecs as $versionSpec)
|
||||
on::click("previewVersion"),
|
||||
setData(array('pivot' => $pivot->id, 'version' => $versionSpec->version, 'group' => $groupID)),
|
||||
'#' . $versionSpec->version,
|
||||
!in_array($versionSpec->version, $markedVersions) ? span
|
||||
span
|
||||
(
|
||||
setData(array('pivot' => $pivot->id, 'version' => $versionSpec->version, 'group' => $groupID)),
|
||||
setClass("label ghost size-sm bg-secondary-50 text-secondary-500 rounded-full"),
|
||||
setClass("label ghost size-sm bg-secondary-50 text-secondary-500 rounded-full", array('hidden' => $isMarked || $isFirstVersion || ($isBuiltIn && !$isMainVersion))),
|
||||
$lang->pivot->newVersion
|
||||
) : null
|
||||
)
|
||||
),
|
||||
h::td(empty($versionSpec->desc) ? $lang->pivot->noDesc : $versionSpec->desc)
|
||||
);
|
||||
|
||||
@@ -125,6 +125,7 @@ class pivotZen extends pivot
|
||||
*/
|
||||
protected function setNewMark(object $pivot, object $firstAction, array $builtins): void
|
||||
{
|
||||
if($pivot->builtin == 1) return;
|
||||
// 版本没有改变,此时讨论是不是新透视表
|
||||
if(!$pivot->versionChange)
|
||||
{
|
||||
@@ -202,7 +203,7 @@ class pivotZen extends pivot
|
||||
$driver = $pivot->driver;
|
||||
|
||||
$this->pivot->isVersionChange($pivot);
|
||||
if($mark)
|
||||
if($mark && $pivot->builtin == 1)
|
||||
{
|
||||
$markVersion = $pivot->versionChange ? $this->pivot->getMaxVersion($pivot->id) : $pivot->version;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user