Merge branch 'master' of http://gitlab.zcorp.cc/easycorp/zentaopms
This commit is contained in:
+20
-19
@@ -471,23 +471,6 @@ CREATE TABLE IF NOT EXISTS `zt_history` (
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `action` (`action`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_pipeline`;
|
||||
CREATE TABLE IF NOT EXISTS `zt_pipeline` (
|
||||
`id` smallint(8) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`type` char(30) NOT NULL,
|
||||
`name` varchar(50) NOT NULL,
|
||||
`url` varchar(255) DEFAULT NULL,
|
||||
`account` varchar(30) DEFAULT NULL,
|
||||
`password` varchar(255) NOT NULL,
|
||||
`token` varchar(255) DEFAULT NULL,
|
||||
`private` char(32) DEFAULT NULL,
|
||||
`createdBy` varchar(30) NOT NULL,
|
||||
`createdDate` datetime NOT NULL,
|
||||
`editedBy` varchar(30) NOT NULL,
|
||||
`editedDate` datetime NOT NULL,
|
||||
`deleted` enum('0','1') NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_job`;
|
||||
CREATE TABLE IF NOT EXISTS `zt_job` (
|
||||
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
|
||||
@@ -495,8 +478,9 @@ CREATE TABLE IF NOT EXISTS `zt_job` (
|
||||
`repo` mediumint(8) unsigned NOT NULL,
|
||||
`product` mediumint(8) unsigned NOT NULL,
|
||||
`frame` varchar(20) NOT NULL,
|
||||
`jkHost` mediumint(8) unsigned NOT NULL,
|
||||
`jkJob` varchar(500) NOT NULL,
|
||||
`engine` varchar(20) NOT NULL,
|
||||
`server` mediumint(8) unsigned NOT NULL,
|
||||
`pipeline` varchar(500) NOT NULL,
|
||||
`triggerType` varchar(255) NOT NULL,
|
||||
`svnDir` varchar(255) NOT NULL,
|
||||
`atDay` varchar(255) DEFAULT NULL,
|
||||
@@ -588,6 +572,23 @@ CREATE TABLE IF NOT EXISTS `zt_oauth` (
|
||||
KEY `providerType` (`providerType`),
|
||||
KEY `providerID` (`providerID`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_pipeline`;
|
||||
CREATE TABLE IF NOT EXISTS `zt_pipeline` (
|
||||
`id` smallint(8) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`type` char(30) NOT NULL,
|
||||
`name` varchar(50) NOT NULL,
|
||||
`url` varchar(255) DEFAULT NULL,
|
||||
`account` varchar(30) DEFAULT NULL,
|
||||
`password` varchar(255) NOT NULL,
|
||||
`token` varchar(255) DEFAULT NULL,
|
||||
`private` char(32) DEFAULT NULL,
|
||||
`createdBy` varchar(30) NOT NULL,
|
||||
`createdDate` datetime NOT NULL,
|
||||
`editedBy` varchar(30) NOT NULL,
|
||||
`editedDate` datetime NOT NULL,
|
||||
`deleted` enum('0','1') NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
-- DROP TABLE IF EXISTS `zt_planstory`;
|
||||
CREATE TABLE IF NOT EXISTS `zt_planstory` (
|
||||
`plan` mediumint(8) unsigned NOT NULL,
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
2021-07-20 15.2
|
||||
完成的需求
|
||||
27297 调整产品下拉菜单信息展现方式
|
||||
27298 调整执行下拉菜单信息展现方式
|
||||
27300 调整测试中产品下拉菜单信息展现方式
|
||||
|
||||
@@ -102,9 +102,9 @@ class ci extends control
|
||||
$jobID = 0;
|
||||
if($compileID)
|
||||
{
|
||||
$compile = $this->dao->select('t1.*, t2.jkJob,t2.product,t2.frame,t3.name as jenkinsName,t3.url,t3.account,t3.token,t3.password')->from(TABLE_COMPILE)->alias('t1')
|
||||
$compile = $this->dao->select('t1.*, t2.pipeline,t2.product,t2.frame,t3.name as jenkinsName,t3.url,t3.account,t3.token,t3.password')->from(TABLE_COMPILE)->alias('t1')
|
||||
->leftJoin(TABLE_JOB)->alias('t2')->on('t1.job=t2.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t3')->on('t2.jkHost=t3.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t3')->on('t2.server=t3.id')
|
||||
->where('t1.id')->eq($compileID)
|
||||
->fetch();
|
||||
|
||||
|
||||
+2
-2
@@ -28,10 +28,10 @@ class ciModel extends model
|
||||
*/
|
||||
public function checkCompileStatus()
|
||||
{
|
||||
$compiles = $this->dao->select('t1.*, t2.jkJob, t3.name as jenkinsName,t3.url,t3.account,t3.token,t3.password')
|
||||
$compiles = $this->dao->select('t1.*, t2.pipeline, t3.name as jenkinsName,t3.url,t3.account,t3.token,t3.password')
|
||||
->from(TABLE_COMPILE)->alias('t1')
|
||||
->leftJoin(TABLE_JOB)->alias('t2')->on('t1.job=t2.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t3')->on('t2.jkHost=t3.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t3')->on('t2.server=t3.id')
|
||||
->where('t1.status')->ne('success')
|
||||
->andWhere('t1.status')->ne('failure')
|
||||
->andWhere('t1.status')->ne('create_fail')
|
||||
|
||||
@@ -34,10 +34,10 @@ class compileModel extends model
|
||||
*/
|
||||
public function getList($jobID, $orderBy = 'id_desc', $pager = null)
|
||||
{
|
||||
return $this->dao->select('t1.id, t1.name, t1.job, t1.status, t1.createdDate,t1.testtask, t2.jkJob,t2.triggerType,t2.comment,t2.atDay,t2.atTime, t3.name as repoName, t4.name as jenkinsName')->from(TABLE_COMPILE)->alias('t1')
|
||||
return $this->dao->select('t1.id, t1.name, t1.job, t1.status, t1.createdDate,t1.testtask, t2.pipeline,t2.triggerType,t2.comment,t2.atDay,t2.atTime, t3.name as repoName, t4.name as jenkinsName')->from(TABLE_COMPILE)->alias('t1')
|
||||
->leftJoin(TABLE_JOB)->alias('t2')->on('t1.job=t2.id')
|
||||
->leftJoin(TABLE_REPO)->alias('t3')->on('t2.repo=t3.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t4')->on('t2.jkHost=t4.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t4')->on('t2.server=t4.id')
|
||||
->where('t1.deleted')->eq('0')
|
||||
->andWhere('t1.job')->ne('0')
|
||||
->beginIF(!empty($jobID))->andWhere('t1.job')->eq($jobID)->fi()
|
||||
@@ -84,7 +84,7 @@ class compileModel extends model
|
||||
|
||||
$url = new stdclass();
|
||||
$url->userPWD = "$jenkinsUser:$jenkinsPassword";
|
||||
$url->url = sprintf('%s/job/%s/buildWithParameters/api/json', $jenkinsServer, $jenkins->jkJob);
|
||||
$url->url = sprintf('%s/job/%s/buildWithParameters/api/json', $jenkinsServer, $jenkins->pipeline);
|
||||
|
||||
return $url;
|
||||
}
|
||||
@@ -121,9 +121,9 @@ class compileModel extends model
|
||||
*/
|
||||
public function exec($compile)
|
||||
{
|
||||
$job = $this->dao->select('t1.id,t1.name,t1.repo,t1.jkJob,t2.name as jenkinsName,t2.url,t2.account,t2.token,t2.password')
|
||||
$job = $this->dao->select('t1.id,t1.name,t1.repo,t1.pipeline,t2.name as jenkinsName,t2.url,t2.account,t2.token,t2.password')
|
||||
->from(TABLE_JOB)->alias('t1')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t2')->on('t1.jkHost=t2.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t2')->on('t1.server=t2.id')
|
||||
->where('t1.id')->eq($compile->job)
|
||||
->fetch();
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
<td class='text-center'><?php echo $id;?></td>
|
||||
<td title='<?php echo $build->name;?>'><?php echo common::hasPriv('job', 'view') ? html::a($this->createLink('job', 'view', "jobID={$build->job}&compileID={$build->id}", 'html', true), $build->name, '', "class='iframe' data-width='90%'") : $build->name;?></td>
|
||||
<td title='<?php echo $build->repoName;?>'><?php echo $build->repoName;?></td>
|
||||
<?php $jenkins = urldecode($build->jkJob) . '@' . $build->jenkinsName;?>
|
||||
<?php $jenkins = urldecode($build->pipeline) . '@' . $build->jenkinsName;?>
|
||||
<td title='<?php echo $jenkins; ?>'><?php echo $jenkins; ?></td>
|
||||
<?php $triggerConfig = $this->loadModel('job')->getTriggerConfig($build);?>
|
||||
<td title='<?php echo $triggerConfig;?>'><?php echo $triggerConfig;?></td>
|
||||
|
||||
@@ -2985,7 +2985,7 @@ class execution extends control
|
||||
|
||||
$this->loadModel('project');
|
||||
$project = $this->project->getByID($this->session->project);
|
||||
if($project->model == 'waterfall') $this->lang->executionCommon = $this->lang->project->stage;
|
||||
if(!empty($project->model) and $project->model == 'waterfall') $this->lang->executionCommon = $this->lang->project->stage;
|
||||
|
||||
$this->view->fileName = (in_array($status, array('all', 'undone')) ? $this->lang->execution->$status : $this->lang->execution->statusList[$status]) . $this->lang->executionCommon;
|
||||
|
||||
|
||||
@@ -2,5 +2,5 @@
|
||||
$config->job = new stdclass();
|
||||
$config->job->create = new stdclass();
|
||||
$config->job->edit = new stdclass();
|
||||
$config->job->create->requiredFields = 'name,repo,jkHost,jkJob,triggerType';
|
||||
$config->job->edit->requiredFields = 'name,repo,jkHost,jkJob,triggerType';
|
||||
$config->job->create->requiredFields = 'name,repo,server,pipeline,triggerType';
|
||||
$config->job->edit->requiredFields = 'name,repo,server,pipeline,triggerType';
|
||||
|
||||
@@ -86,7 +86,7 @@ class job extends control
|
||||
$this->view->repoPairs = $repoPairs;
|
||||
$this->view->repoTypes = $repoTypes;
|
||||
$this->view->products = array(0 => '') + $this->loadModel('product')->getProductPairsByProject($this->projectID);
|
||||
$this->view->jkHostList = $this->loadModel('jenkins')->getPairs();
|
||||
$this->view->serverList = $this->loadModel('jenkins')->getPairs();
|
||||
|
||||
$this->display();
|
||||
}
|
||||
@@ -129,8 +129,8 @@ class job extends control
|
||||
$this->view->repoType = zget($repoTypes, $job->repo, 'Git');
|
||||
$this->view->job = $job;
|
||||
$this->view->products = array(0 => '') + $this->loadModel('product')->getProductPairsByProject($this->projectID);
|
||||
$this->view->jkHostList = $this->loadModel('jenkins')->getPairs();
|
||||
$this->view->jkJobs = $this->jenkins->getTasks($job->jkHost);
|
||||
$this->view->serverList = $this->loadModel('jenkins')->getPairs();
|
||||
$this->view->pipelines = $this->jenkins->getTasks($job->server);
|
||||
|
||||
$this->display();
|
||||
}
|
||||
@@ -226,7 +226,7 @@ class job extends control
|
||||
$this->view->job = $job;
|
||||
$this->view->compile = $compile;
|
||||
$this->view->repo = $this->loadModel('repo')->getRepoByID($job->repo);
|
||||
$this->view->jenkins = $this->loadModel('jenkins')->getById($job->jkHost);
|
||||
$this->view->jenkins = $this->loadModel('jenkins')->getById($job->server);
|
||||
$this->view->product = $this->loadModel('product')->getById($job->product);
|
||||
$this->display();
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
.only-pick-time thead th, .only-pick-time tfoot th {color: transparent !important;}
|
||||
.checkbox-primary.checkbox-inline {display: inline-block !important;}
|
||||
.checkbox-primary.checkbox-inline label {padding-left: 5px !important;}
|
||||
#jkHost_chosen .chosen-single {border-right: 0px;}
|
||||
#jkJobBox {width: 385px;}
|
||||
#server_chosen .chosen-single {border-right: 0px;}
|
||||
#pipelineBox {width: 385px;}
|
||||
#svnDirBox .input-group {width: unset !important;}
|
||||
#paramDiv .input-group {padding: 3px;}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
.only-pick-time thead th, .only-pick-time tfoot th {color: transparent !important;}
|
||||
.checkbox-primary.checkbox-inline {display: inline-block !important;}
|
||||
.checkbox-primary.checkbox-inline label {padding-left: 5px !important;}
|
||||
#jkHost_chosen .chosen-single {border-right: 0px;}
|
||||
#jkJobBox {width: 385px;}
|
||||
#server_chosen .chosen-single {border-right: 0px;}
|
||||
#pipelineBox {width: 385px;}
|
||||
#svnDirBox .input-group {width: unset !important;}
|
||||
#paramDiv .input-group {padding: 3px;}
|
||||
|
||||
@@ -82,25 +82,25 @@ $('#triggerType').change(function()
|
||||
}
|
||||
});
|
||||
|
||||
$('#jkHost').change(function()
|
||||
$('#server').change(function()
|
||||
{
|
||||
var jenkinsID = $(this).val();
|
||||
$('#jkJobBox #jkJob').remove();
|
||||
$('#jkJobBox #jkJob_chosen').remove();
|
||||
$('#jkJobBox .input-group').append("<div class='load-indicator loading'></div>");
|
||||
$('#pipelineBox #pipeline').remove();
|
||||
$('#pipelineBox #pipeline_chosen').remove();
|
||||
$('#pipelineBox .input-group').append("<div class='load-indicator loading'></div>");
|
||||
$.getJSON(createLink('jenkins', 'ajaxGetTasks', 'jenkinsID=' + jenkinsID), function(tasks)
|
||||
{
|
||||
html = "<select id='jkJob' name='jkJob' class='form-control'>";
|
||||
html = "<select id='pipeline' name='pipeline' class='form-control'>";
|
||||
for(taskKey in tasks)
|
||||
{
|
||||
var task = tasks[taskKey];
|
||||
html += "<option value='" + taskKey + "'>" + task + "</option>";
|
||||
}
|
||||
html += '</select>';
|
||||
$('#jkJobBox .loading').remove();
|
||||
$('#jkJobBox .input-group').append(html);
|
||||
$('#pipelineBox .loading').remove();
|
||||
$('#pipelineBox .input-group').append(html);
|
||||
|
||||
$('#jkJobBox #jkJob').chosen({drop_direction: 'auto'});
|
||||
$('#pipelineBox #pipeline').chosen({drop_direction: 'auto'});
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
@@ -86,30 +86,30 @@ $('#triggerType').change(function()
|
||||
}
|
||||
});
|
||||
|
||||
$('#jkHost').change(function()
|
||||
$('#server').change(function()
|
||||
{
|
||||
var jenkinsID = $(this).val();
|
||||
$('#jkJobBox #jkJob').remove();
|
||||
$('#jkJobBox #jkJob_chosen').remove();
|
||||
$('#jkJobBox .input-group').append("<div class='load-indicator loading'></div>");
|
||||
$('#pipelineBox #pipeline').remove();
|
||||
$('#pipelineBox #pipeline_chosen').remove();
|
||||
$('#pipelineBox .input-group').append("<div class='load-indicator loading'></div>");
|
||||
$.getJSON(createLink('jenkins', 'ajaxGetTasks', 'jenkinsID=' + jenkinsID), function(tasks)
|
||||
{
|
||||
html = "<select id='jkJob' name='jkJob' class='form-control'>";
|
||||
html = "<select id='pipeline' name='pipeline' class='form-control'>";
|
||||
for(taskKey in tasks)
|
||||
{
|
||||
var task = tasks[taskKey];
|
||||
html += "<option value='" + taskKey + "'>" + task + "</option>";
|
||||
}
|
||||
html += '</select>';
|
||||
$('#jkJobBox .loading').remove();
|
||||
$('#jkJobBox .input-group').append(html);
|
||||
$('#pipelineBox .loading').remove();
|
||||
$('#pipelineBox .input-group').append(html);
|
||||
|
||||
$('#jkJobBox #jkJob').val(jkJob).chosen({drop_direction: 'auto'});
|
||||
$('#pipelineBox #pipeline').val(pipeline).chosen({drop_direction: 'auto'});
|
||||
})
|
||||
})
|
||||
|
||||
$(function()
|
||||
{
|
||||
$('#jkHost').change();
|
||||
$('#server').change();
|
||||
$('#triggerType').change();
|
||||
});
|
||||
|
||||
@@ -17,8 +17,10 @@ $lang->job->product = $lang->productCommon;
|
||||
$lang->job->svnDir = 'SVN Tag Watch Path';
|
||||
$lang->job->jenkins = 'Jenkins';
|
||||
$lang->job->jkHost = 'Jenkins Server';
|
||||
$lang->job->buildType = 'Build Type';
|
||||
$lang->job->jkJob = 'Jenkins Task';
|
||||
$lang->job->server = 'Server';
|
||||
$lang->job->pipeline = 'Pipeline';
|
||||
$lang->job->buildType = 'Build Type';
|
||||
$lang->job->frame = 'Frame';
|
||||
$lang->job->triggerType = 'Trigger';
|
||||
$lang->job->atDay = 'Custom Days';
|
||||
|
||||
@@ -19,8 +19,11 @@ $lang->job->product = $lang->productCommon;
|
||||
$lang->job->svnDir = 'SVN Tag Watch Path';
|
||||
$lang->job->jenkins = 'Jenkins';
|
||||
$lang->job->jkHost = 'Jenkins Server';
|
||||
$lang->job->buildType = 'Build Type';
|
||||
$lang->job->jkJob = 'Jenkins Task';
|
||||
$lang->job->engine = 'Engine';
|
||||
$lang->job->server = 'Server';
|
||||
$lang->job->pipeline = 'Pipeline';
|
||||
$lang->job->buildType = 'Build Type';
|
||||
$lang->job->frame = 'Frame';
|
||||
$lang->job->triggerType = 'Trigger';
|
||||
$lang->job->atDay = 'Custom Days';
|
||||
|
||||
@@ -17,8 +17,10 @@ $lang->job->product = $lang->productCommon;
|
||||
$lang->job->svnDir = 'SVN Tag Watch Path';
|
||||
$lang->job->jenkins = 'Jenkins';
|
||||
$lang->job->jkHost = 'Serveur Jenkins';
|
||||
$lang->job->buildType = 'Type Build';
|
||||
$lang->job->jkJob = 'T鈉he Jenkins';
|
||||
$lang->job->server = 'Serveur';
|
||||
$lang->job->pipeline = 'Pipeline';
|
||||
$lang->job->buildType = 'Type Build';
|
||||
$lang->job->frame = 'Cadre';
|
||||
$lang->job->triggerType = 'D閏lencheur';
|
||||
$lang->job->atDay = 'Jours Person.';
|
||||
|
||||
@@ -17,8 +17,10 @@ $lang->job->product = $lang->productCommon;
|
||||
$lang->job->svnDir = 'SVN Tag Watch Path';
|
||||
$lang->job->jenkins = 'Jenkins';
|
||||
$lang->job->jkHost = 'Jenkins Server';
|
||||
$lang->job->buildType = 'Loại bản dựng';
|
||||
$lang->job->jkJob = 'Jenkins nhiệm vụ';
|
||||
$lang->job->server = 'Server';
|
||||
$lang->job->pipeline = 'Pipeline';
|
||||
$lang->job->buildType = 'Loại bản dựng';
|
||||
$lang->job->frame = 'Frame';
|
||||
$lang->job->triggerType = 'Trigger';
|
||||
$lang->job->atDay = 'Ngày tùy chọn';
|
||||
|
||||
@@ -19,8 +19,11 @@ $lang->job->product = '关联' . $lang->productCommon;
|
||||
$lang->job->svnDir = 'SVN监控路径';
|
||||
$lang->job->jenkins = 'Jenkins';
|
||||
$lang->job->jkHost = 'Jenkins服务器';
|
||||
$lang->job->buildType = '构建类型';
|
||||
$lang->job->jkJob = 'Jenkins任务';
|
||||
$lang->job->engine = '构建引擎';
|
||||
$lang->job->server = '服务器';
|
||||
$lang->job->pipeline = '流水线';
|
||||
$lang->job->buildType = '构建类型';
|
||||
$lang->job->frame = '工具/框架';
|
||||
$lang->job->triggerType = '触发方式';
|
||||
$lang->job->atDay = '自定义日期';
|
||||
|
||||
@@ -19,8 +19,10 @@ $lang->job->product = '關聯' . $lang->productCommon;
|
||||
$lang->job->svnDir = 'SVN監控路徑';
|
||||
$lang->job->jenkins = 'Jenkins';
|
||||
$lang->job->jkHost = 'Jenkins伺服器';
|
||||
$lang->job->buildType = '構建類型';
|
||||
$lang->job->jkJob = 'Jenkins任務';
|
||||
$lang->job->server = '伺服器';
|
||||
$lang->job->pipeline = '流水線';
|
||||
$lang->job->buildType = '構建類型';
|
||||
$lang->job->frame = '工具/框架';
|
||||
$lang->job->triggerType = '觸發方式';
|
||||
$lang->job->atDay = '自定義日期';
|
||||
|
||||
@@ -35,7 +35,7 @@ class jobModel extends model
|
||||
{
|
||||
return $this->dao->select('t1.*, t2.name as repoName, t3.name as jenkinsName')->from(TABLE_JOB)->alias('t1')
|
||||
->leftJoin(TABLE_REPO)->alias('t2')->on('t1.repo=t2.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t3')->on('t1.jkHost=t3.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t3')->on('t1.server=t3.id')
|
||||
->where('t1.deleted')->eq('0')
|
||||
->orderBy($orderBy)
|
||||
->page($pager)
|
||||
@@ -288,9 +288,9 @@ class jobModel extends model
|
||||
*/
|
||||
public function exec($id)
|
||||
{
|
||||
$job = $this->dao->select('t1.id,t1.name,t1.product,t1.repo,t1.jkJob,t1.triggerType,t1.atTime,t1.customParam,t2.name as jenkinsName,t2.url,t2.account,t2.token,t2.password')
|
||||
$job = $this->dao->select('t1.id,t1.name,t1.product,t1.repo,t1.pipeline,t1.triggerType,t1.atTime,t1.customParam,t2.name as jenkinsName,t2.url,t2.account,t2.token,t2.password')
|
||||
->from(TABLE_JOB)->alias('t1')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t2')->on('t1.jkHost=t2.id')
|
||||
->leftJoin(TABLE_PIPELINE)->alias('t2')->on('t1.server=t2.id')
|
||||
->where('t1.id')->eq($id)
|
||||
->fetch();
|
||||
if(!$job) return false;
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
<th class='text-left'><?php common::printOrderLink('name', $orderBy, $vars, $lang->job->name);?></th>
|
||||
<th class='w-150px text-left'><?php common::printOrderLink('repo', $orderBy, $vars, $lang->job->repo);?></th>
|
||||
<th class='w-80px'><?php common::printOrderLink('frame', $orderBy, $vars, $lang->job->frame);?></th>
|
||||
<th class='w-250px text-left'><?php common::printOrderLink('jkHost', $orderBy, $vars, $lang->job->jenkins);?></th>
|
||||
<th class='w-250px text-left'><?php common::printOrderLink('server', $orderBy, $vars, $lang->job->jenkins);?></th>
|
||||
<th class='text-left'><?php echo $lang->job->triggerType;?></th>
|
||||
<th class='w-100px text-center'><?php common::printOrderLink('lastStatus', $orderBy, $vars, $lang->job->lastStatus);?></th>
|
||||
<th class='w-130px text-left'><?php common::printOrderLink('lastExec', $orderBy, $vars, $lang->job->lastExec);?></th>
|
||||
@@ -44,7 +44,7 @@
|
||||
<td title='<?php echo $job->name; ?>'><?php echo common::hasPriv('job', 'view') ? html::a($this->createLink('job', 'view', "jobID={$job->id}", 'html', true), $job->name, '', "class='iframe' data-width='90%'") : $job->name;?></td>
|
||||
<td title='<?php echo $job->repoName; ?>'><?php echo $job->repoName; ?></td>
|
||||
<td><?php echo zget($lang->job->frameList, $job->frame);?></td>
|
||||
<?php $jenkins = urldecode($job->jkJob) . '@' . $job->jenkinsName;?>
|
||||
<?php $jenkins = urldecode($job->pipeline) . '@' . $job->jenkinsName;?>
|
||||
<td title='<?php echo $jenkins; ?>'><?php echo $jenkins; ?></td>
|
||||
<?php $triggerConfig = $this->job->getTriggerConfig($job);?>
|
||||
<td title='<?php echo $triggerConfig;?>'><?php echo $triggerConfig;?></td>
|
||||
|
||||
@@ -73,14 +73,14 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><?php echo $lang->job->jkHost; ?></th>
|
||||
<th><?php echo $lang->job->server; ?></th>
|
||||
<td colspan='2'>
|
||||
<div class='table-row'>
|
||||
<div class='table-col'><?php echo html::select('jkHost', $jkHostList, '', "class='form-control chosen'"); ?></div>
|
||||
<div id='jkJobBox' class='table-col'>
|
||||
<div class='table-col'><?php echo html::select('server', $serverList, '', "class='form-control chosen'"); ?></div>
|
||||
<div id='pipelineBox' class='table-col'>
|
||||
<div class='input-group'>
|
||||
<span class='input-group-addon'><?php echo $lang->job->jkJob; ?></span>
|
||||
<?php echo html::select('jkJob', array('' => ''), '', "class='form-control chosen'"); ?>
|
||||
<span class='input-group-addon'><?php echo $lang->job->pipeline; ?></span>
|
||||
<?php echo html::select('pipeline', array('' => ''), '', "class='form-control chosen'"); ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
<?php js::set('repoTypes', $repoTypes)?>
|
||||
<?php js::set('triggerType', $job->triggerType);?>
|
||||
<?php js::set('jkJob', $job->jkJob);?>
|
||||
<?php js::set('pipeline', $job->pipeline);?>
|
||||
<?php js::set('dirChange', $lang->job->dirChange);?>
|
||||
<?php js::set('buildTag', $lang->job->buildTag);?>
|
||||
|
||||
@@ -96,14 +96,14 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><?php echo $lang->job->jkHost; ?></th>
|
||||
<th><?php echo $lang->job->server; ?></th>
|
||||
<td colspan='2'>
|
||||
<div class='table-row'>
|
||||
<div class='table-col'><?php echo html::select('jkHost', $jkHostList, $job->jkHost, "class='form-control chosen'");?></div>
|
||||
<div id='jkJobBox' class='table-col'>
|
||||
<div class='table-col'><?php echo html::select('server', $serverList, $job->server, "class='form-control chosen'");?></div>
|
||||
<div id='pipelineBox' class='table-col'>
|
||||
<div class='input-group'>
|
||||
<span class='input-group-addon'><?php echo $lang->job->jkJob; ?></span>
|
||||
<?php echo html::select('jkJob', array('' => ''), $job->jkJob, "class='form-control chosen'");?>
|
||||
<span class='input-group-addon'><?php echo $lang->job->pipeline; ?></span>
|
||||
<?php echo html::select('pipeline', array('' => ''), $job->pipeline, "class='form-control chosen'");?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -112,6 +112,7 @@
|
||||
<tr>
|
||||
<th><?php echo $lang->job->customParam;?></th>
|
||||
<td colspan='2' id='paramDiv'>
|
||||
<?php if($job->customParam):?>
|
||||
<?php foreach(json_decode($job->customParam) as $paramName => $paramValue):?>
|
||||
<div class='table-row input-group'>
|
||||
<span class='input-group-addon w-50px'><?php echo $lang->job->paramName; ?></span>
|
||||
@@ -135,6 +136,7 @@
|
||||
<span class='input-group-addon w-40px'><a href='javascript:;' onclick='deleteItem(this)'><i class='icon icon-close'></i></a></span>
|
||||
</div>
|
||||
<?php endforeach;?>
|
||||
<?php endif;?>
|
||||
<div class='table-row input-group'>
|
||||
<span class='input-group-addon w-50px'><?php echo $lang->job->paramName; ?></span>
|
||||
<?php echo html::input('paramName[]', '', "class='form-control' id='paramName'"); ?>
|
||||
|
||||
@@ -50,8 +50,8 @@
|
||||
<td><?php echo zget($lang->job->frameList, $job->frame);?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><?php echo $lang->job->jkHost;?></th>
|
||||
<td><?php echo urldecode($job->jkJob) . '@' . $jenkins->name;?></td>
|
||||
<th><?php echo $lang->job->server;?></th>
|
||||
<td><?php echo urldecode($job->pipeline) . '@' . $jenkins->name;?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><?php echo $lang->job->triggerType;?></th>
|
||||
|
||||
@@ -104,7 +104,8 @@
|
||||
</td>
|
||||
<td><span class='label-pri <?php echo 'label-pri-' . $bug->pri?>' title='<?php echo zget($lang->bug->priList, $bug->pri);?>'><?php echo zget($lang->bug->priList, $bug->pri)?></span></td>
|
||||
<td class='text-left nobr'><?php echo html::a($this->createLink('bug', 'view', "bugID=$bug->id"), $bug->title, null, "style='color: $bug->color' title={$bug->title}");?></td>
|
||||
<td class='text-left nobr'><?php echo html::a($this->createLink('product', explode('-', $config->productLink)[1], "productID=$bug->product"), $bug->productName, null, "title={$bug->productName}");?></td>
|
||||
<?php $param = $config->productLink == 'product-all' ? '' : "productID=$bug->product";?>
|
||||
<td class='text-left nobr'><?php echo html::a($this->createLink('product', explode('-', $config->productLink)[1], $param), $bug->productName, null, "title={$bug->productName}");?></td>
|
||||
<td title="<?php echo zget($lang->bug->typeList, $bug->type, '');?>"><?php echo zget($lang->bug->typeList, $bug->type, '');?></td>
|
||||
<?php if($type != 'openedBy'): ?>
|
||||
<td><?php echo zget($users, $bug->openedBy);?></td>
|
||||
|
||||
@@ -25,6 +25,7 @@ $lang->stakeholder->viewExpect = 'Expectation Info';
|
||||
$lang->stakeholder->issue = 'Issue Management';
|
||||
$lang->stakeholder->viewIssue = 'Active Issues';
|
||||
$lang->stakeholder->userIssue = 'Stakeholder Issues';
|
||||
$lang->stakeholder->deleted = 'Deleted';
|
||||
|
||||
/* Fields. */
|
||||
$lang->stakeholder->id = 'ID';
|
||||
|
||||
@@ -25,6 +25,7 @@ $lang->stakeholder->viewExpect = 'Expectation Info';
|
||||
$lang->stakeholder->issue = 'Issue Management';
|
||||
$lang->stakeholder->viewIssue = 'Active Issues';
|
||||
$lang->stakeholder->userIssue = 'Stakeholder Issues';
|
||||
$lang->stakeholder->deleted = 'Deleted';
|
||||
|
||||
$lang->stakeholder->viewAction = 'View Stakeholder';
|
||||
$lang->stakeholder->viewIssueAction = 'Issue List';
|
||||
|
||||
@@ -25,6 +25,7 @@ $lang->stakeholder->viewExpect = 'Expectation Info';
|
||||
$lang->stakeholder->issue = 'Issue Management';
|
||||
$lang->stakeholder->viewIssue = 'Active Issues';
|
||||
$lang->stakeholder->userIssue = 'Stakeholder Issues';
|
||||
$lang->stakeholder->deleted = 'Deleted';
|
||||
|
||||
/* Fields. */
|
||||
$lang->stakeholder->id = 'ID';
|
||||
|
||||
@@ -25,6 +25,7 @@ $lang->stakeholder->viewExpect = 'Expectation Info';
|
||||
$lang->stakeholder->issue = 'Issue Management';
|
||||
$lang->stakeholder->viewIssue = 'Active Issues';
|
||||
$lang->stakeholder->userIssue = 'Stakeholder Issues';
|
||||
$lang->stakeholder->deleted = 'Deleted';
|
||||
|
||||
/* Fields. */
|
||||
$lang->stakeholder->id = 'ID';
|
||||
|
||||
@@ -25,6 +25,7 @@ $lang->stakeholder->viewExpect = '期望信息';
|
||||
$lang->stakeholder->issue = '问题管理';
|
||||
$lang->stakeholder->viewIssue = '活动问题列表';
|
||||
$lang->stakeholder->userIssue = '干系人问题列表';
|
||||
$lang->stakeholder->deleted = '已删除';
|
||||
|
||||
$lang->stakeholder->viewAction = '干系人详情';
|
||||
$lang->stakeholder->viewIssueAction = '问题列表';
|
||||
|
||||
@@ -382,8 +382,6 @@ class stakeholderModel extends model
|
||||
->leftJoin(TABLE_USER)->alias('t2')->on('t1.user=t2.account')
|
||||
->leftJoin(TABLE_COMPANY)->alias('t3')->on('t2.company=t3.id')
|
||||
->where('t1.id')->eq($userID)
|
||||
->andWhere('t1.deleted')->eq('0')
|
||||
->andWhere('t1.objectID')->eq($this->session->project)
|
||||
->fetch();
|
||||
|
||||
return $stakeholder;
|
||||
|
||||
@@ -25,6 +25,9 @@ $createLink = $this->createLink('stakeholder', 'create', "projectID=$user->objec
|
||||
<div class="page-title">
|
||||
<span class="label label-id"><?php echo $user->id?></span>
|
||||
<span class="text" title="<?php echo $user->name?>"><?php echo $user->name?></span>
|
||||
<?php if($user->deleted):?>
|
||||
<span class='label label-danger'><?php echo $lang->stakeholder->deleted;?></span>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="btn-toolbar pull-right">
|
||||
|
||||
@@ -1846,6 +1846,7 @@ class storyModel extends model
|
||||
$story->assignedTo = $assignedTo;
|
||||
$story->assignedDate = $now;
|
||||
|
||||
$this->dao->update(TABLE_STORY)->data($story)->autoCheck()->where('id')->eq((int)$storyID)->exec();
|
||||
if(!dao::isError())
|
||||
{
|
||||
$this->loadModel('gitlab');
|
||||
|
||||
Reference in New Issue
Block a user