Skip to content

Commit 04c283f

Browse files
committed
3.0.5
1.修复了接口编辑页里raw格式下json的值列表不能重新生成的bug 2.修复了在团队模式下团队管理员进入非项目成员项目的多处bug
1 parent 7dcf09a commit 04c283f

File tree

10 files changed

+139
-26
lines changed

10 files changed

+139
-26
lines changed

Client/dist/vendor.bundle.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Client/dist/vendor.bundle.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Binary file not shown.
Binary file not shown.

Client/web/util/helper.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,14 +110,15 @@ helper.eachResult=function (item,pItem,arr,json) {
110110
bFind=true;
111111
}
112112
})
113-
if(!bFind)
113+
if(!bFind && v)
114114
{
115115
item.value.data.push({
116116
value:v,
117117
remark:""
118118
});
119119
}
120120
}
121+
obj.value=$.clone(item.value);
121122
}
122123
else
123124
{

Server/routes/group/group.js

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ var interfaceVersion=require("../../model/interfaceVersionModel")
1414
var interfaceSnapshot=require("../../model/interfaceSnapshotModel")
1515
var groupVersion=require("../../model/groupVersionModel")
1616
var version=require("../../model/versionModel")
17+
var teamGroup=require("../../model/teamGroupModel")
1718
var fs=require("fs");
1819
var uuid=require("uuid/v1");
1920
let refreshInterface=async (function (req,id) {
@@ -86,7 +87,41 @@ function validateUser(req,res) {
8687
}))
8788
if(!obj)
8889
{
89-
util.throw(e.projectNotFound,"项目不存在或者没有权限");
90+
obj=await (project.findOneAsync({
91+
_id:req.clientParam.id?req.clientParam.id:grp.project,
92+
}));
93+
if(!obj)
94+
{
95+
util.throw(e.projectNotFound,"项目不存在");
96+
return;
97+
}
98+
if(obj.team)
99+
{
100+
let arrUser=await (teamGroup.findAsync({
101+
team:obj.team,
102+
users:{
103+
$elemMatch:{
104+
user:req.userInfo._id,
105+
role:{
106+
$in:[0,2]
107+
}
108+
}
109+
}
110+
}))
111+
if(arrUser.length==0)
112+
{
113+
util.throw(e.userForbidden,"你没有权限");
114+
return;
115+
}
116+
}
117+
else
118+
{
119+
util.throw(e.userForbidden,"你没有权限");
120+
return;
121+
}
122+
req.obj=obj;
123+
req.group=grp;
124+
util.next();
90125
}
91126
else
92127
{

Server/routes/interface/interface.js

Lines changed: 47 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ var interface=require("../../model/interfaceModel")
1414
var interfaceVersion=require("../../model/interfaceVersionModel")
1515
var interfaceSnapshot=require("../../model/interfaceSnapshotModel")
1616
var version=require("../../model/versionModel")
17+
var teamGroup=require("../../model/teamGroupModel")
1718
var fs=require("fs");
1819
var uuid=require("uuid/v1");
1920
let refreshInterface=async (function (req,id) {
@@ -93,31 +94,59 @@ var validateUser =async (function validateUser(req) {
9394
}))
9495
if(!obj)
9596
{
96-
util.throw(e.projectNotFound,"项目不存在");
97-
}
98-
else
99-
{
100-
req.project=obj;
101-
if(obj.owner.toString()==req.userInfo._id.toString())
97+
obj=await (project.findOneAsync({
98+
_id:pro
99+
}));
100+
if(!obj)
102101
{
103-
req.access=1;
102+
util.throw(e.projectNotFound,"项目不存在");
103+
return;
104+
}
105+
if(obj.team)
106+
{
107+
let arrUser=await (teamGroup.findAsync({
108+
team:obj.team,
109+
users:{
110+
$elemMatch:{
111+
user:req.userInfo._id,
112+
role:{
113+
$in:[0,2]
114+
}
115+
}
116+
}
117+
}))
118+
if(arrUser.length==0)
119+
{
120+
util.throw(e.userForbidden,"你没有权限");
121+
return;
122+
}
104123
}
105124
else
106125
{
107-
for(let o of obj.users)
126+
util.throw(e.userForbidden,"你没有权限");
127+
return;
128+
}
129+
}
130+
req.project=obj;
131+
if(obj.owner.toString()==req.userInfo._id.toString())
132+
{
133+
req.access=1;
134+
}
135+
else
136+
{
137+
for(let o of obj.users)
138+
{
139+
if(o.user.toString()==req.userInfo._id.toString())
108140
{
109-
if(o.user.toString()==req.userInfo._id.toString())
141+
if(o.role==0)
110142
{
111-
if(o.role==0)
112-
{
113-
req.access=1;
114-
}
115-
else
116-
{
117-
req.access=0;
118-
}
119-
break;
143+
req.access=1;
144+
}
145+
else
146+
{
147+
req.access=0;
120148
}
149+
break;
121150
}
122151
}
123152
}

Server/routes/project/project.js

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,14 +303,17 @@ function inProject(req,res) {
303303
util.throw(e.projectNotFound,"项目不存在");
304304
return;
305305
}
306+
req.obj=obj;
306307
if(obj.team)
307308
{
308309
let arrUser=await (teamGroup.findAsync({
309310
team:obj.team,
310311
users:{
311312
$elemMatch:{
312313
user:req.userInfo._id,
313-
role:0
314+
role:{
315+
$in:[0,2]
316+
}
314317
}
315318
}
316319
}))
@@ -325,6 +328,21 @@ function inProject(req,res) {
325328
util.throw(e.userForbidden,"你没有权限");
326329
return;
327330
}
331+
if(obj.baseUrls.length>0 && typeof(obj.baseUrls[0])=="string")
332+
{
333+
obj.baseUrls=obj.baseUrls.map(function (obj) {
334+
return {
335+
url:obj,
336+
remark:""
337+
}
338+
})
339+
await (project.updateAsync({
340+
_id:obj._id
341+
},{
342+
baseUrls:obj.baseUrls
343+
}));
344+
}
345+
util.next()
328346
}
329347
else
330348
{

Server/routes/version/version.js

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,41 @@ function validateVersion(req,res) {
6464
"users.user":req.userInfo._id
6565
}
6666
]
67-
6867
}));
6968
if(!obj)
7069
{
71-
util.throw(e.projectNotFound,"项目不存在");
70+
obj=await (project.findOneAsync({
71+
_id:pro
72+
}));
73+
if(!obj)
74+
{
75+
util.throw(e.projectNotFound,"项目不存在");
76+
return;
77+
}
78+
if(obj.team)
79+
{
80+
let arrUser=await (teamGroup.findAsync({
81+
team:obj.team,
82+
users:{
83+
$elemMatch:{
84+
user:req.userInfo._id,
85+
role:{
86+
$in:[0,2]
87+
}
88+
}
89+
}
90+
}))
91+
if(arrUser.length==0)
92+
{
93+
util.throw(e.userForbidden,"你没有权限");
94+
return;
95+
}
96+
}
97+
else
98+
{
99+
util.throw(e.userForbidden,"你没有权限");
100+
return;
101+
}
72102
}
73103
req.project=obj;
74104
}

config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
"imgPath":"/Users/Shared/SBDoc/img",
55
"tempPath":"/Users/Shared/SBDoc/temp",
66
"port":10000,
7-
"version":"3.0.4"
7+
"version":"3.0.5"
88
}

0 commit comments

Comments
 (0)