Merge branch release/21.7.5 of zentao/zentaopms (#11104)

This commit is contained in:
刘刚
2025-08-22 15:33:06 +08:00
committed by Gitfox
5 changed files with 117 additions and 70 deletions
@@ -1,20 +1,37 @@
#!/usr/bin/env php
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/program.unittest.class.php';
/**
title=测试 programModel::createDefaultProgram();
timeout=0
cid=1
pid=1
创建默认项目集 >> 1
- 查询项目集数量 @1
- 查询默认项目集数据
- 属性id @1
- 属性type @program
- 查询默认项目集数据
- 属性budgetUnit @CNY
- 属性name @默认项目集
- 查询默认项目集数据属性hasProduct @1
- 查询默认项目集数据
- 属性status @doing
- 属性acl @open
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/program.unittest.class.php';
zenData('project')->gen(0);
$programTester = new programTest();
$programTester->createDefaultProgramTest();
$result = $programTester->createDefaultProgramTest();
r($result) && p('') && e('1'); // 创建默认项目集
global $tester;
$programs = $tester->loadModel('program')->dao->select('*')->from(TABLE_PROGRAM)->fetchAll();
r(count($programs)) && p() && e('1'); // 查询项目集数量
r($programs[0]) && p('id,type') && e('1,program'); // 查询默认项目集数据
r($programs[0]) && p('budgetUnit,name') && e('CNY,默认项目集'); // 查询默认项目集数据
r($programs[0]) && p('hasProduct') && e('1'); // 查询默认项目集数据
r($programs[0]) && p('status,acl') && e('doing,open'); // 查询默认项目集数据
+23 -23
View File
@@ -1,33 +1,33 @@
#!/usr/bin/env php
<?php
/**
title=测试 programModel::getBudgetLeft();
timeout=0
cid=1
- 查看项目集1的所有父项目集的预算剩余 @1000
- 查看项目集2的所有父项目集的预算剩余 @2000
- 查看项目集3的所有父项目集的预算剩余 @3000
- 查看项目集4的所有父项目集的预算剩余 @4000
- 查看项目集5的所有父项目集的预算剩余 @5000
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/program.unittest.class.php';
su('admin');
$program = zenData('project');
$program->id->range('1,2');
$program->name->range('父项目集1,父项目集2');
$program->id->range('1,2,3,4,5');
$program->type->range('program');
$program->budget->range('900000,899900');
$program->path->range('1,2')->prefix(',')->postfix(',');
$program->begin->range('20220112 000000:0')->type('timestamp')->format('YYYY-MM-DD');
$program->end->range('20220212 000000:0')->type('timestamp')->format('YYYY-MM-DD');
$program->gen(2);
/**
title=测试 programModel::getBudgetLeft();
cid=1
pid=1
查看项目集1的所有父项目集的预算剩余 >> 900000
查看项目集2的所有父项目集的预算剩余 >> 899900
*/
$program->budget->range('1000,2000,3000,4000,5000');
$program->gen(5);
$programTester = new programTest();
$result1 = $programTester->getBudgetLeftTest(1);
$result2 = $programTester->getBudgetLeftTest(2);
r($result1) && p() && e('900000'); // 查看项目集1的所有父项目集的预算剩余
r($result2) && p() && e('899900'); // 查看项目集2的所有父项目集的预算剩余
r($programTester->getBudgetLeftTest(1)) && p() && e('1000'); // 查看项目集1的所有父项目集的预算剩余
r($programTester->getBudgetLeftTest(2)) && p() && e('2000'); // 查看项目集2的所有父项目集的预算剩余
r($programTester->getBudgetLeftTest(3)) && p() && e('3000'); // 查看项目集3的所有父项目集的预算剩余
r($programTester->getBudgetLeftTest(4)) && p() && e('4000'); // 查看项目集4的所有父项目集的预算剩余
r($programTester->getBudgetLeftTest(5)) && p() && e('5000'); // 查看项目集5的所有父项目集的预算剩余
+35 -19
View File
@@ -1,5 +1,35 @@
#!/usr/bin/env php
<?php
/**
title=测试 programModel::getById();
timeout=0
cid=1
- 通过id字段获取id=1的项目集。
- 属性id @1
- 属性name @项目集1
- 属性budget @900000
- 属性type @program
- 属性status @wait
- 通过id字段获取id=2的项目集。
- 属性id @2
- 属性name @项目集2
- 属性budget @899900
- 属性type @program
- 属性status @wait
- 通过id字段获取id=3的项目集。
- 属性id @3
- 属性name @项目集3
- 属性budget @899800
- 属性type @program
- 属性status @doing
- 通过id字段获取id=1000的项目集,返回空 @0
- 通过id字段获取id=0的项目集,返回空 @0
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/program.unittest.class.php';
su('admin');
@@ -13,24 +43,10 @@ $program->name->setFields(array(
));
$program->gen(5);
/**
title=测试 programModel::getById();
cid=1
pid=1
通过id字段获取id=1的项目集并验证它的name。 >> 项目集1
通过id字段获取id=1000的项目集,返回空 >> 0
通过id字段获取id=0的项目集,返回空 >> 0
*/
$programTester = new programTest();
$program1 = $programTester->getByIDTest(1);
$program2 = $programTester->getByIDTest(1000);
$program3 = $programTester->getByIDTest(0);
r($program1) && p('name') && e('项目集1'); // 通过id字段获取id=1的项目集并验证它的name。
r($program2) && p() && e('0'); // 通过id字段获取id=1000的项目集,返回空
r($program3) && p() && e('0'); // 通过id字段获取id=0的项目集,返回空
r($programTester->getByIDTest(1)) && p('id,name,budget,type,status') && e('1,项目集1,900000,program,wait'); // 通过id字段获取id=1的项目集。
r($programTester->getByIDTest(2)) && p('id,name,budget,type,status') && e('2,项目集2,899900,program,wait'); // 通过id字段获取id=2的项目集。
r($programTester->getByIDTest(3)) && p('id,name,budget,type,status') && e('3,项目集3,899800,program,doing'); // 通过id字段获取id=3的项目集。
r($programTester->getByIDTest(1000)) && p() && e('0'); // 通过id字段获取id=1000的项目集,返回空
r($programTester->getByIDTest(0)) && p() && e('0'); // 通过id字段获取id=0的项目集,返回空
+19 -14
View File
@@ -1,5 +1,20 @@
#!/usr/bin/env php
<?php
/**
title=测试 programModel::getParentPM();
timeout=0
cid=1
- 获取父项目集的负责人数量 @4
- 获取父项目集的负责人account第6条的admin属性 @admin
- 获取父项目集的负责人account第7条的test1属性 @test1
- 获取父项目集的负责人account第8条的admin属性 @admin
- 获取父项目集的负责人account第9条的test1属性 @test1
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/program.unittest.class.php';
su('admin');
@@ -20,23 +35,13 @@ $program->end->range('20220212 000000:0')->type('timestamp')->format('YYYY-MM-DD
$program->deleted->range('0{15},1{5}');
$program->gen(10);
/**
title=测试 programModel::getParentPM();
cid=1
pid=1
获取父项目集的负责人数量 >> 2
获取父项目集的负责人account >> admin
获取父项目集的负责人account >> test1
*/
$programTester = new programTest();
$programIdList = array(5, 6, 7);
$programIdList = array(5, 6, 7, 8, 9);
$parentPM = $programTester->getParentPMTest($programIdList);
r(count($parentPM)) && p() && e('2'); // 获取父项目集的负责人数量
r(count($parentPM)) && p() && e('4'); // 获取父项目集的负责人数量
r($parentPM) && p('6:admin') && e('admin'); // 获取父项目集的负责人account
r($parentPM) && p('7:test1') && e('test1'); // 获取父项目集的负责人account
r($parentPM) && p('8:admin') && e('admin'); // 获取父项目集的负责人account
r($parentPM) && p('9:test1') && e('test1'); // 获取父项目集的负责人account
+16 -7
View File
@@ -1,5 +1,20 @@
#!/usr/bin/env php
<?php
/**
title=测试 programModel::getStakeholders();
timeout=0
cid=1
- 获取干系人数量 @2
- 获取干系人数量 @1
- id倒序排,获取第一个干系人真实姓名第0条的realname属性 @用户2
- id倒序排,获取第二个干系人真实姓名第1条的realname属性 @admin
- id正序排,获取第一个干系人真实姓名第0条的realname属性 @用户1
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/program.unittest.class.php';
@@ -23,13 +38,6 @@ $stakeholder->user->range('admin,user1,user2');
$stakeholder->gen(3);
su('admin');
/**
title=测试 programModel::getStakeholders();
timeout=0
cid=1
*/
global $tester;
$tester->loadModel('program');
@@ -39,4 +47,5 @@ $stakeholders2 = $tester->program->getStakeholders(2, 'id_asc');
r(count($stakeholders1)) && p() && e('2'); // 获取干系人数量
r(count($stakeholders2)) && p() && e('1'); // 获取干系人数量
r($stakeholders1) && p('0:realname') && e('用户2'); // id倒序排,获取第一个干系人真实姓名
r($stakeholders1) && p('1:realname') && e('admin'); // id倒序排,获取第二个干系人真实姓名
r($stakeholders2) && p('0:realname') && e('用户1'); // id正序排,获取第一个干系人真实姓名