Merge branch dev/bug-67980 of zentao/zentaopms (#12987)

This commit is contained in:
刘刚
2025-12-24 16:25:06 +08:00
committed by Gitfox
3 changed files with 14 additions and 8 deletions
+3 -3
View File
@@ -5,7 +5,7 @@ window.onRenderCell = function(result, {row, col})
if(row.data.module == 'review')
{
result[0].props.items[0]['disabled'] = projectPriv ? false: true;
result[0].props.items[0]['url'] = 'javascript:checkReview("' + row.data.id + '")';
result[0].props.items[0]['url'] = 'javascript:checkReview("' + row.data.typeKey + '", "' + row.data.id + '")';
delete result[0].props.items[0]['data-toggle'];
}
else if(reviewPrivs[row.data.module])
@@ -56,9 +56,9 @@ window.onRenderCell = function(result, {row, col})
return result;
}
window.checkReview = function(id)
window.checkReview = function(objectType, id)
{
$.get($.createLink('review', 'ajaxCheckReviewInfo', 'reviewID=' + id), function(data)
$.get($.createLink('review', 'ajaxCheckReviewInfo', 'objectType=' + objectType + 'reviewID=' + id), function(data)
{
if(!data)
{
+8 -3
View File
@@ -1271,7 +1271,12 @@ class myModel extends model
{
if($this->config->edition != 'max' and $this->config->edition != 'ipd') return array();
$pendingList = $this->loadModel('approval')->getPendingReviews('review');
$projectchangePendingList = $this->loadModel('approval')->getPendingReviews('projectchange');
$projectchangeReviewingList = $this->dao->select('id')->from(TABLE_REVIEW)->where('type')->eq('projectchange')->andWhere('object')->in($projectchangePendingList)->fetchPairs();
$pendingList = $this->loadModel('approval')->getPendingReviews('review');
$pendingList = arrayUnion($pendingList, $projectchangeReviewingList);
$projectReviews = $this->loadModel('review')->getByList(0, $pendingList, $orderBy);
if($checkExists) return !empty($projectReviews);
@@ -1287,7 +1292,7 @@ class myModel extends model
$data = new stdclass();
$data->id = $review->id;
$data->title = $review->title;
$data->type = 'projectreview';
$data->type = $review->type == 'projectchange' ? 'projectchange' : 'projectreview';
$data->time = date('Y-m-d H:i:s', strtotime($review->createdDate));
$data->status = $review->status;
$data->product = $review->product;
@@ -1312,12 +1317,12 @@ class myModel extends model
$dataList = $this->dao->select('t2.objectType,t2.objectID')->from(TABLE_APPROVALNODE)->alias('t1')
->leftJoin(TABLE_APPROVALOBJECT)->alias('t2')->on('t2.approval = t1.approval')
->where('t2.objectType')->ne('review')
->andWhere('objectType')->ne('projectchange')
->beginIF($objectType != 'all')->andWhere('t2.objectType')->eq($objectType)->fi()
->andWhere('t1.account')->eq($this->app->user->account)
->andWhere('t1.status')->eq('doing')
->andWhere('t1.type')->eq('review')
->beginIF(!helper::hasFeature('project_cm'))->andWhere('objectType')->ne('baseline')->fi()
->beginIF(!helper::hasFeature('project_change'))->andWhere('objectType')->ne('projectchange')->fi()
->beginIF(!helper::hasFeature('project_risk'))->andWhere('objectType')->ne('risk')->fi()
->beginIF(!helper::hasFeature('project_issue'))->andWhere('objectType')->ne('issue')->fi()
->beginIF(!helper::hasFeature('project_opportunity'))->andWhere('objectType')->ne('opportunity')->fi()
+3 -2
View File
@@ -66,11 +66,12 @@ if($rawMethod != 'contribute' || $browseType != 'reviewedbyme') unset($config->m
foreach($reviewList as $review)
{
$type = $review->type == 'projectreview' ? 'review' : $review->type;
$type = $review->type == 'projectreview' || $review->type == 'projectchange' ? 'review' : $review->type;
$isOAObject = strpos(",{$config->my->oaObjectType},", ",$type,") !== false ? true : false;
$this->app->loadLang($type);
$review->module = $type;
$review->module = $type;
$review->typeKey = $review->type;
if(isset($lang->{$review->type}->common)) $typeName = $lang->{$review->type}->common;
if($review->type == 'projectreview') $typeName = $lang->project->common;