Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
W
web-purchase
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张冬
web-purchase
Commits
e7f8eabd
Commit
e7f8eabd
authored
Oct 19, 2020
by
张冬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改bug
parent
bec5894a
Show whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
132 additions
and
113 deletions
+132
-113
bid.js
src/api/purchaser/bid.js
+8
-2
detail.vue
src/pages/purchaser/bid/bidStage/bondList/detail.vue
+3
-0
propose.vue
src/pages/purchaser/bid/bidStage/clearManagement/propose.vue
+38
-40
detail.vue
src/pages/purchaser/bid/bidStage/tenderFeelist/detail.vue
+3
-0
publicity.vue
src/pages/purchaser/bid/bidSure/publicity.vue
+2
-0
message.vue
src/pages/purchaser/bid/releaseProject/message.vue
+2
-0
inquiryAnnouncement.vue
src/pages/purchaser/bid/reviewed/inquiryAnnouncement.vue
+1
-5
jurisdictionList.vue
src/pages/purchaser/organization/jurisdictionList.vue
+1
-1
jurisdictionSee.vue
src/pages/purchaser/organization/jurisdictionSee.vue
+4
-5
memberManagement.vue
src/pages/purchaser/organization/memberManagement.vue
+5
-3
see.vue
...s/supply/bid/joinProject/bidStage/clearManagement/see.vue
+4
-9
noticeSee.vue
src/pages/supply/bid/joinProject/bidSure/noticeSee.vue
+46
-34
seePrice.vue
src/pages/supply/bid/signupOnline/seePrice.vue
+1
-1
jurisdictionList.vue
src/pages/supply/organization/jurisdictionList.vue
+3
-3
jurisdictionSee.vue
src/pages/supply/organization/jurisdictionSee.vue
+5
-6
memberManagement.vue
src/pages/supply/organization/memberManagement.vue
+5
-3
common.js
src/utils/common.js
+1
-1
No files found.
src/api/purchaser/bid.js
View file @
e7f8eabd
...
...
@@ -171,10 +171,16 @@ export function noticeChange(id) {
// 流标公告管理
export
function
abortiveList
(
projectId
)
{
return
request
({
url
:
`/tender-
evaluate/bidFailed
/
${
projectId
}
`
,
url
:
`/tender-
notice/list
/
${
projectId
}
`
,
method
:
'get'
})
}
// export function abortiveList(projectId) {
// return request({
// url: `/tender-evaluate/bidFailed/${projectId}`,
// method: 'get'
// })
// }
// 发布流标公告
export
function
createAbortive
(
data
)
{
return
request
({
...
...
@@ -345,7 +351,7 @@ export function companyRank(projectId) {
})
}
//
专家评审里的
评审信息和排名信息
// 评审信息和排名信息
export
function
bidderlist
(
projectId
)
{
return
request
({
url
:
`tender-evaluate/bidder/list/
${
projectId
}
`
,
...
...
src/pages/purchaser/bid/bidStage/bondList/detail.vue
View file @
e7f8eabd
...
...
@@ -87,6 +87,9 @@
</li>
</ul>
</el-form-item>
<el-form-item
label=
"上传缴费凭证:"
v-else
>
<div>
无
</div>
</el-form-item>
</div>
</div>
</div>
...
...
src/pages/purchaser/bid/bidStage/clearManagement/propose.vue
View file @
e7f8eabd
...
...
@@ -19,7 +19,7 @@
<singleUpload
:limit=
"5"
tip=
"最多上传5个文件,每个文件不超过100M。"
@
input=
"getfile"
></singleUpload>
</el-form-item>
<el-form-item
label=
"公告内容"
prop=
"content"
>
<quill-editor
ref=
"text"
v-model
.
trim=
"ruleForm.content"
:options=
"editorOption"
class=
"myQuillEditor"
/>
<quill-editor
ref=
"text"
v-model=
"ruleForm.content"
:options=
"editorOption"
class=
"myQuillEditor"
/>
</el-form-item>
</el-form>
<div
class=
"centerButton"
>
...
...
@@ -31,32 +31,34 @@
</div>
</
template
>
<
script
>
import
{
import
{
forwardClarify
}
from
'@api/purchaser/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
singleUpload
from
'@components/Upload/Upload.vue'
import
{
}
from
'@api/purchaser/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
singleUpload
from
'@components/Upload/Upload.vue'
import
{
quillEditor
}
from
'vue-quill-editor'
import
'quill/dist/quill.core.css'
import
'quill/dist/quill.snow.css'
import
'quill/dist/quill.bubble.css'
export
default
{
}
from
'vue-quill-editor'
import
'quill/dist/quill.core.css'
import
'quill/dist/quill.snow.css'
import
'quill/dist/quill.bubble.css'
export
default
{
components
:
{
dataBreadcrumb
,
singleUpload
,
quillEditor
},
data
()
{
let
checkSpace
=
(
rule
,
value
,
callback
)
=>
{
console
.
log
(
value
.
split
(
" "
).
join
(
""
).
length
)
if
(
value
.
split
(
" "
).
join
(
""
).
length
==
0
)
{
callback
(
new
Error
(
'请输入'
))
}
else
{
callback
()
}
}
// let checkSpace = (rule, value, callback) => {
// console.log(value)
// console.log(value.trim().length)
// console.log(value.split(" ").join("").length)
// if (value.split(" ").join("").length == 0) {
// callback(new Error('请输入'))
// } else {
// callback()
// }
// }
return
{
accessoryPOList
:
[],
editorOption
:
{},
...
...
@@ -81,10 +83,7 @@ export default {
message
:
'请输入'
,
trigger
:
'blur'
},
{
validator
:
checkSpace
,
trigger
:
'blur'
}]
]
}
}
},
...
...
@@ -107,27 +106,28 @@ export default {
try
{
const
valid
=
await
this
.
$refs
[
'ruleForm'
].
validate
()
if
(
valid
)
{
const
{
code
,
msg
}
=
await
forwardClarify
(
this
.
ruleForm
)
if
(
code
===
200
)
{
this
.
$message
({
message
:
msg
,
type
:
'success'
,
duration
:
1500
})
setTimeout
(()
=>
{
this
.
$router
.
go
(
-
1
)
},
1500
)
}
console
.
log
(
ruleForm
)
// const {
// code,
// msg
// } = await forwardClarify(this.ruleForm)
// if (code === 200) {
// this.$message({
// message: msg,
// type: 'success',
// duration: 1500
// })
// setTimeout(() => {
// this.$router.go(-1)
// }, 1500)
// }
}
}
catch
(
err
)
{
console
.
log
(
err
)
}
}
}
}
}
</
script
>
...
...
@@ -136,6 +136,4 @@ export default {
padding
:
0
;
padding-bottom
:
100px
;
}
</
style
>
src/pages/purchaser/bid/bidStage/tenderFeelist/detail.vue
View file @
e7f8eabd
...
...
@@ -120,6 +120,9 @@
</li>
</ul>
</el-form-item>
<el-form-item
label=
"上传缴费凭证:"
v-if=
"ruleForm.voucherUrl"
>
<div>
无
</div>
</el-form-item>
</div>
</div>
</div>
...
...
src/pages/purchaser/bid/bidSure/publicity.vue
View file @
e7f8eabd
...
...
@@ -120,6 +120,8 @@
setTimeout
(()
=>
{
this
.
$router
.
go
(
-
1
)
},
1500
)
}
else
{
this
.
$message
.
error
(
msg
)
}
}
}
catch
(
e
)
{
...
...
src/pages/purchaser/bid/releaseProject/message.vue
View file @
e7f8eabd
...
...
@@ -468,8 +468,10 @@ export default {
created
()
{
this
.
ruleForm
.
purchaseAgent
=
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
companyName
let
phone
=
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
phone
this
.
ruleForm
.
projectManager
=
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
this
.
ruleForm
.
contactsWay
=
phone
this
.
bidBookInfoPO
.
phone
=
phone
this
.
earnestInfoPO
.
phone
=
phone
this
.
pageObj
.
companyId
=
localStorage
.
getItem
(
"companyId"
)
this
.
userList
()
this
.
industryList
()
...
...
src/pages/purchaser/bid/reviewed/inquiryAnnouncement.vue
View file @
e7f8eabd
...
...
@@ -55,7 +55,7 @@
<el-form-item
label=
"联系方式"
prop=
"contactPhone"
>
<el-input
v-model
.
trim=
"ruleForm.contactPhone"
disabled
style=
"width: 250px;"
></el-input>
</el-form-item>
<el-form-item
label=
"传真号码"
prop=
"facsimile"
>
<el-form-item
label=
"传真号码"
>
<el-input
v-model
.
trim=
"ruleForm.facsimile"
placeholder=
"请输入"
maxlength=
"30"
style=
"width: 250px;"
></el-input>
</el-form-item>
</div>
...
...
@@ -142,16 +142,12 @@ export default {
data
()
{
let
checkfacsimile
=
async
(
rule
,
value
,
callback
)
=>
{
if
(
!
value
)
{
return
callback
(
new
Error
(
'传真号不能为空'
));
}
else
{
const
reg
=
/^
(?:\d{3,4}
-
)?\d{7,8}(?:
-
\d{1,6})?
$/
if
(
reg
.
test
(
value
))
{
callback
();
}
else
{
return
callback
(
new
Error
(
'请输入正确的传真号'
));
}
}
};
return
{
projectName
:
""
,
...
...
src/pages/purchaser/organization/jurisdictionList.vue
View file @
e7f8eabd
...
...
@@ -25,7 +25,7 @@ export default {
},
data
()
{
return
{
breads
:
[
'系统管理'
,
'角色
权限
'
],
breads
:
[
'系统管理'
,
'角色
管理
'
],
tableData
:
[],
columns
:
[{
label
:
'角色名称'
,
...
...
src/pages/purchaser/organization/jurisdictionSee.vue
View file @
e7f8eabd
...
...
@@ -9,10 +9,10 @@
<div
class=
"message"
>
<el-form
:model=
"form"
:rules=
"rules"
ref=
"form"
label-width=
"100px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"角色名称"
prop=
"roleName"
>
<el-input
v-model=
"form.roleName"
></el-input>
<el-input
v-model
.
trim
=
"form.roleName"
></el-input>
</el-form-item>
<el-form-item
label=
"权限"
prop=
"menuPOList"
>
<el-tree
:data=
"data"
:props=
"defaultProps"
show-checkbox
@
check-change=
"handleCheckChange"
node-key=
"id"
ref=
"tree"
>
<el-tree
:data=
"data"
:
default-checked-keys=
"[1]"
:default-expanded-keys=
"[1]"
:
props=
"defaultProps"
show-checkbox
@
check-change=
"handleCheckChange"
node-key=
"id"
ref=
"tree"
>
</el-tree>
</el-form-item>
</el-form>
...
...
@@ -79,11 +79,10 @@
data
,
code
}
=
await
roleMenus
(
1
)
data
[
0
].
disabled
=
true
this
.
data
=
data
},
handleCheckChange
(
data
,
checked
,
indeterminate
)
{
console
.
log
(
data
,
checked
,
indeterminate
);
},
handleCheckChange
()
{
this
.
form
.
menuPOList
=
this
.
$refs
.
tree
.
getCheckedKeys
()
},
...
...
src/pages/purchaser/organization/memberManagement.vue
View file @
e7f8eabd
...
...
@@ -6,7 +6,7 @@
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
width=
"100"
>
<template
slot-scope=
"scope"
>
<el-button
type=
"text"
size=
"small"
@
click=
"edit(scope.row)"
>
编辑
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"handdelete(scope.row)"
>
删除
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"handdelete(scope.row)"
v-if=
"myId!==scope.row.uid"
>
删除
</el-button>
</
template
>
</el-table-column>
</dataTable>
...
...
@@ -41,9 +41,9 @@
<el-form-item
label=
"姓名"
label-width=
"100px"
prop=
"name"
>
<el-input
v-model
.
trim=
"form1.name"
autocomplete=
"off"
placeholder=
"请输入"
maxlength=
"30"
></el-input>
</el-form-item>
<el-form-item
label=
"手机"
label-width=
"100px"
prop=
"phone"
>
<!--
<el-form-item label="手机" label-width="100px" prop="phone">
<el-input v-model.trim="form1.phone" autocomplete="off" placeholder="请输入" maxlength="30"></el-input>
</el-form-item>
</el-form-item>
-->
<el-form-item
label=
"邮箱"
label-width=
"100px"
prop=
"email"
>
<el-input
v-model
.
trim=
"form1.email"
autocomplete=
"off"
placeholder=
"请输入"
maxlength=
"30"
></el-input>
</el-form-item>
...
...
@@ -90,6 +90,7 @@
}
};
return
{
myId
:
""
,
checklist
:
[{
title
:
'姓名'
,
type
:
'input'
,
...
...
@@ -269,6 +270,7 @@
},
},
created
()
{
this
.
myId
=
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
this
.
getroleList
()
}
}
...
...
src/pages/supply/bid/joinProject/bidStage/clearManagement/see.vue
View file @
e7f8eabd
...
...
@@ -31,9 +31,9 @@
<div
v-html=
"clarifies.content"
style=
"width:80%;"
></div>
</div>
</div>
<div
class=
"button"
>
<!--
<div
class=
"button"
>
<el-button
@
click=
"cancle"
>
返回
</el-button>
</div>
</div>
-->
</div>
<!-- 问题详情 -->
<div
class=
"content"
v-if=
"question"
>
...
...
@@ -61,9 +61,9 @@
<div
v-html=
"question.content"
style=
"width:80%;"
></div>
</div>
</div>
<div
class=
"button"
>
<el-button
@
click=
"cancle"
>
返回
</el-button>
</div>
<div
class=
"centerButton"
>
<el-button
@
click=
"cancle"
>
返回
</el-button>
</div>
</div>
</
template
>
...
...
@@ -145,11 +145,6 @@ export default {
padding-bottom
:
100px
;
}
.button
{
width
:
200px
;
margin
:
0
auto
}
.clear-message
{
margin-left
:
70px
;
/* width: 350px */
...
...
src/pages/supply/bid/joinProject/bidSure/noticeSee.vue
View file @
e7f8eabd
...
...
@@ -9,14 +9,18 @@
<div
class=
"flex-arround"
>
<div>
项目编号:
{{
projectCode
}}
</div>
<div>
项目名称:
{{
projectName
}}
</div>
<div
v-if=
"state"
>
发布时间:2020-08-08 18:12
</div>
<div
v-if=
"state"
>
发布时间:
{{
detail
.
createTime
}}
</div>
</div>
<div
class=
'detail'
v-if=
"state"
>
<h1>
一级标题
</h1>
<div
class=
"img"
>
<img
src=
"@static/images/content.png"
alt=
""
>
<div
class=
'detail1'
v-if=
"state"
>
<div
v-html=
"detail.content"
></div>
<div
class=
"enclosure"
v-if=
"detail.accessoryDOList"
>
<ul>
<li
v-for=
"(item,i) in detail.accessoryDOList"
:key=
"i"
>
<a
href=
"item.accessoryUrl"
>
item.fileName
</a>
</li>
</ul>
</div>
<div
class=
"enclosure"
>
相关附件:34567890-678.pdf
</div>
<div
class=
"enclosure"
>
相关附件:空
</div>
</div>
<div
v-else
class=
"detail1"
>
未找到该公告详情!
...
...
@@ -29,66 +33,74 @@
</
template
>
<
script
>
import
{
noticeWin
}
from
'@api/supply/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
export
default
{
import
{
noticeWin
}
from
'@api/supply/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
export
default
{
components
:
{
dataBreadcrumb
},
data
()
{
return
{
breads
:
[
'投标管理 '
,
'我参加的项目'
,
'工作台'
],
projectCode
:
""
,
projectName
:
""
,
state
:
true
,
detail
:
""
projectCode
:
""
,
projectName
:
""
,
state
:
true
,
detail
:
""
}
},
methods
:
{
back
()
{
back
()
{
this
.
$router
.
go
(
-
1
)
},
async
getnoticeWin
()
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
)
try
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
)
const
{
data
,
code
}
=
await
noticeWin
(
projectId
)
if
(
code
==
200
){
this
.
detail
=
data
}
else
{
this
.
state
=
false
if
(
code
==
200
)
{
console
.
log
(
data
)
this
.
detail
=
data
}
else
{
this
.
state
=
false
}
}
catch
(
err
)
{
console
.
log
(
err
)
}
}
},
created
()
{
this
.
projectCode
=
localStorage
.
getItem
(
"projectCode"
)
this
.
projectName
=
localStorage
.
getItem
(
"projectName"
)
this
.
projectCode
=
localStorage
.
getItem
(
"projectCode"
)
this
.
projectName
=
localStorage
.
getItem
(
"projectName"
)
this
.
getnoticeWin
()
}
}
}
</
script
>
<
style
scoped
>
.detail1
{
text-align
:
center
;
font-size
:
20px
;
font-weight
:
bold
;
.detail1
{
background
:
#fff
;
margin-top
:
30px
;
}
.content
>
h1
{
.content
>
h1
{
text-align
:
center
;
margin-top
:
20px
;
margin-bottom
:
40px
;
margin-top
:
20px
;
margin-bottom
:
40px
;
font-weight
:
bold
;
}
.content
>
.img
{
.content
>
.img
{
width
:
600px
;
margin
:
0
auto
margin
:
0
auto
}
.enclosure
{
margin
:
20px
0
;
.enclosure
{
margin
:
50px
0
;
}
</
style
>
src/pages/supply/bid/signupOnline/seePrice.vue
View file @
e7f8eabd
...
...
@@ -29,7 +29,7 @@
</el-dialog>
<!-- 报价供应商情况 -->
<el-dialog
:visible
.
sync=
"offerBidder"
title=
"报价供应商情况"
>
<dataTable
:table-data=
"offerBidderlist"
:columns=
"
offerBiddercolumns
"
:is-index=
"true"
>
<dataTable
:table-data=
"offerBidderlist"
:columns=
"
查看其它供应商报价
"
:is-index=
"true"
>
</dataTable>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"offerBidder = false"
>
取 消
</el-button>
...
...
src/pages/supply/organization/jurisdictionList.vue
View file @
e7f8eabd
...
...
@@ -25,7 +25,7 @@ export default {
},
data
()
{
return
{
breads
:
[
'系统管理'
,
'角色
权限
'
],
breads
:
[
'系统管理'
,
'角色
管理
'
],
tableData
:
[],
columns
:
[{
label
:
'角色名称'
,
...
...
@@ -55,10 +55,10 @@ export default {
},
methods
:
{
see
()
{
this
.
$router
.
push
(
'/
purchaser
/organization/jurisdictionSee'
)
this
.
$router
.
push
(
'/
supply
/organization/jurisdictionSee'
)
},
add
(){
this
.
$router
.
push
(
"/
purchaser
/organization/jurisdictionSee"
)
this
.
$router
.
push
(
"/
supply
/organization/jurisdictionSee"
)
},
async
getroleList
()
{
let
type
=
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
type
...
...
src/pages/supply/organization/jurisdictionSee.vue
View file @
e7f8eabd
...
...
@@ -9,10 +9,10 @@
<div
class=
"message"
>
<el-form
:model=
"form"
:rules=
"rules"
ref=
"form"
label-width=
"100px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"角色名称"
prop=
"roleName"
>
<el-input
v-model=
"form.roleName"
></el-input>
<el-input
v-model
.
trim
=
"form.roleName"
></el-input>
</el-form-item>
<el-form-item
label=
"权限"
prop=
"menuPOList"
>
<el-tree
:data=
"data"
:props=
"defaultProps"
show-checkbox
@
check-change=
"handleCheckChange"
node-key=
"id"
ref=
"tree"
>
<el-tree
:data=
"data"
:default-checked-keys=
"[7]"
:default-expanded-keys=
"[7]"
:props=
"defaultProps"
show-checkbox
@
check-change=
"handleCheckChange"
node-key=
"id"
ref=
"tree"
>
</el-tree>
</el-form-item>
</el-form>
...
...
@@ -78,15 +78,14 @@
const
{
data
,
code
}
=
await
roleMenus
(
1
)
}
=
await
roleMenus
(
2
)
data
[
0
].
disabled
=
true
this
.
data
=
data
},
handleCheckChange
(
data
,
checked
,
indeterminate
)
{
console
.
log
(
data
,
checked
,
indeterminate
);
},
handleCheckChange
()
{
this
.
form
.
menuPOList
=
this
.
$refs
.
tree
.
getCheckedKeys
()
},
async
add
()
{
try
{
const
valid
=
await
this
.
$refs
[
'form'
].
validate
()
...
...
src/pages/supply/organization/memberManagement.vue
View file @
e7f8eabd
...
...
@@ -6,7 +6,7 @@
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
width=
"100"
>
<template
slot-scope=
"scope"
>
<el-button
type=
"text"
size=
"small"
@
click=
"edit(scope.row)"
>
编辑
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"handdelete(scope.row)"
>
删除
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"handdelete(scope.row)"
v-if=
"myId!==scope.row.uid"
>
删除
</el-button>
</
template
>
</el-table-column>
</dataTable>
...
...
@@ -41,9 +41,9 @@
<el-form-item
label=
"姓名"
label-width=
"100px"
prop=
"name"
>
<el-input
v-model
.
trim=
"form1.name"
autocomplete=
"off"
placeholder=
"请输入"
maxlength=
"30"
></el-input>
</el-form-item>
<el-form-item
label=
"手机"
label-width=
"100px"
prop=
"phone"
>
<!--
<el-form-item label="手机" label-width="100px" prop="phone">
<el-input v-model.trim="form1.phone" autocomplete="off" placeholder="请输入" maxlength="30"></el-input>
</el-form-item>
</el-form-item>
-->
<el-form-item
label=
"邮箱"
label-width=
"100px"
prop=
"email"
>
<el-input
v-model
.
trim=
"form1.email"
autocomplete=
"off"
placeholder=
"请输入"
maxlength=
"30"
></el-input>
</el-form-item>
...
...
@@ -90,6 +90,7 @@
}
};
return
{
myId
:
""
,
checklist
:
[{
title
:
'姓名'
,
type
:
'input'
,
...
...
@@ -269,6 +270,7 @@
},
},
created
()
{
this
.
myId
=
JSON
.
parse
(
localStorage
.
getItem
(
"userInfo"
)).
userId
this
.
getroleList
()
}
}
...
...
src/utils/common.js
View file @
e7f8eabd
...
...
@@ -15,7 +15,7 @@
}
return
obj
[
key
];
}
// export let requestUrl = 'http://192.168.3.35:808
5
';
// export let requestUrl = 'http://192.168.3.35:808
1
';
export
let
requestUrl
=
'http://60.205.251.80:8082'
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment