Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
P
pc
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
wbx-PCAndMobi
pc
Commits
27995879
Commit
27995879
authored
Mar 11, 2021
by
Gakki
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
标签功能完善
parent
f279b26b
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
210 additions
and
45 deletions
+210
-45
api.js
src/server/api.js
+7
-5
labelList.vue
src/views/label/labelList.vue
+8
-3
labelRightSide.vue
src/views/label/labelRightSide.vue
+107
-37
parentLabelRightPanel.vue
src/views/label/parentLabelRightPanel.vue
+88
-0
No files found.
src/server/api.js
View file @
27995879
...
@@ -62,8 +62,8 @@ case 'huangpu-prod':
...
@@ -62,8 +62,8 @@ case 'huangpu-prod':
default
:
// 默认环境下(开发环境)
default
:
// 默认环境下(开发环境)
// BASE_URL = 'http://31.0.161.39/apiv2'
// BASE_URL = 'http://31.0.161.39/apiv2'
// BASE_URL = 'http://211.136.105.193/apiv2'
// BASE_URL = 'http://211.136.105.193/apiv2'
BASE_URL
=
'http://xuhui.hm.omniview.pro/api/v2'
//
BASE_URL = 'http://xuhui.hm.omniview.pro/api/v2'
//
BASE_URL = 'http://pudong.hm.omniview.pro/api/v2'
BASE_URL
=
'http://pudong.hm.omniview.pro/api/v2'
// BASE_URL = 'http://211.136.105.193/apiv2'
// BASE_URL = 'http://211.136.105.193/apiv2'
MOCK_URL
=
'https://yapi.omniview.pro/mock/283'
MOCK_URL
=
'https://yapi.omniview.pro/mock/283'
break
break
...
@@ -201,7 +201,9 @@ export default {
...
@@ -201,7 +201,9 @@ export default {
get_specialInspection
:
'/service-documents-ddd/statistical/specialInspection'
,
//行业督查数字
get_specialInspection
:
'/service-documents-ddd/statistical/specialInspection'
,
//行业督查数字
get_month_check
:
'service-documents-ddd/dashboard/house/month'
,
get_month_check
:
'service-documents-ddd/dashboard/house/month'
,
GET_LABEL_LIST
:
MOCK_URL
+
'/service-customkey-ddd/label/tree'
,
// 获取标签列表
GET_LABEL_LIST
:
'/service-customkey-ddd/label/tree'
,
// 获取标签列表
GET_LABEL_DETAIL
:
MOCK_URL
+
'/service-customkey-ddd/label/{id}'
,
// 查看标签详情
GET_LABEL_DETAIL
:
'/service-customkey-ddd/label/{id}'
,
// 查看标签详情
DELETE_SINGLE_LABEL
:
MOCK_URL
+
'/service-customkey-ddd/label/{id}'
,
// 根据id删除某个标签
DELETE_SINGLE_LABEL
:
'/service-customkey-ddd/label/{id}'
,
// 根据id删除某个标签
POST_SINGLE_LABEL
:
'/service-customkey-ddd/label'
,
// 新增标签
PUT_LABEL_INFO
:
'/service-customkey-ddd/label/{id}'
,
// 修改标签信息
}
}
src/views/label/labelList.vue
View file @
27995879
...
@@ -3,6 +3,7 @@
...
@@ -3,6 +3,7 @@
<div
class=
"routerWapper"
>
<div
class=
"routerWapper"
>
<div
class=
"portalDetailTitle"
v-if=
"$route.name=='lvot'"
>
<div
class=
"portalDetailTitle"
v-if=
"$route.name=='lvot'"
>
<span
class=
"title"
>
标签维护
</span>
<span
class=
"title"
>
标签维护
</span>
{{
currentState
}}
<div
class=
"detailOperations"
>
<div
class=
"detailOperations"
>
<a-button
@
click=
"backPage"
>
返回
</a-button>
<a-button
@
click=
"backPage"
>
返回
</a-button>
</div>
</div>
...
@@ -23,7 +24,8 @@
...
@@ -23,7 +24,8 @@
<a-col
:span=
'1'
></a-col>
<a-col
:span=
'1'
></a-col>
<a-col
:span=
'18'
class=
"layoutMargin layoutPadding"
>
<a-col
:span=
'18'
class=
"layoutMargin layoutPadding"
>
<RightPanel
v-if=
"currentState == 'create'"
:trigger-type=
'currentState'
@
finish=
'getFinishState'
/>
<RightPanel
v-if=
"currentState == 'create'"
:trigger-type=
'currentState'
@
finish=
'getFinishState'
/>
<RightPanel
v-else-if=
"currentState == 'loadChildLabel'"
:trigger-type=
'currentState'
:label-id=
'labelId'
@
finish=
'getFinishState'
/>
<RightPanel
v-else-if=
"currentState == 'loadChildLabel'"
:trigger-type=
'currentState'
:label-id=
'labelId'
@
finish=
'getFinishState'
/>
<ParentRightPanel
v-else-if=
"currentState == 'loadParentLabel'"
:trigger-type=
'currentState'
:label-id=
'labelId'
@
finish=
'getFinishState'
/>
<EmptyRightPanel
v-else
/>
<EmptyRightPanel
v-else
/>
</a-col>
</a-col>
</a-row>
</a-row>
...
@@ -34,6 +36,7 @@
...
@@ -34,6 +36,7 @@
<
script
>
<
script
>
import
RightPanel
from
'@/views/label/labelRightSide.vue'
import
RightPanel
from
'@/views/label/labelRightSide.vue'
import
ParentRightPanel
from
'@/views/label/parentLabelRightPanel.vue'
import
EmptyRightPanel
from
'@/views/label/labelRightSideEmpty.vue'
import
EmptyRightPanel
from
'@/views/label/labelRightSideEmpty.vue'
const
treeData
=
[]
const
treeData
=
[]
...
@@ -42,7 +45,8 @@ export default {
...
@@ -42,7 +45,8 @@ export default {
name
:
'lvot'
,
name
:
'lvot'
,
components
:
{
components
:
{
RightPanel
,
RightPanel
,
EmptyRightPanel
EmptyRightPanel
,
ParentRightPanel
},
},
data
()
{
data
()
{
return
{
return
{
...
@@ -64,6 +68,7 @@ export default {
...
@@ -64,6 +68,7 @@ export default {
getFinishState
(
state
)
{
getFinishState
(
state
)
{
if
(
state
==
true
)
{
if
(
state
==
true
)
{
this
.
currentState
=
null
this
.
currentState
=
null
this
.
getLabelList
()
}
}
},
},
getLabelList
()
{
getLabelList
()
{
...
@@ -86,7 +91,7 @@ export default {
...
@@ -86,7 +91,7 @@ export default {
if
(
res
.
code
==
200
)
{
if
(
res
.
code
==
200
)
{
let
result
=
this
.
$com
.
confirm
(
res
,
'data.content'
,
[])
let
result
=
this
.
$com
.
confirm
(
res
,
'data.content'
,
[])
this
.
labelId
=
selectedKeys
[
0
]
this
.
labelId
=
selectedKeys
[
0
]
if
(
!!
result
.
parentId
)
{
// 为二级菜单
if
(
result
.
parentId
!==
'0'
)
{
// 为二级菜单
this
.
currentState
=
'loadChildLabel'
this
.
currentState
=
'loadChildLabel'
}
else
{
// 为一级菜单
}
else
{
// 为一级菜单
this
.
currentState
=
'loadParentLabel'
this
.
currentState
=
'loadParentLabel'
...
...
src/views/label/labelRightSide.vue
View file @
27995879
<
template
>
<
template
>
<div
class=
"routerWapper"
>
<div
class=
"routerWapper"
>
<div>
<div>
{{
triggerType
}}
-
{{
labelId
}}
-
{{
finish
}}
<!--
{{
triggerType
}}
-
{{
labelId
}}
-
{{
finish
}}
-
{{
jsonData
}}
-->
<a-row>
<a-row>
<a-col
:span=
'1'
v-if=
"triggerType == 'create'"
>
<a-col
:span=
'1'
v-if=
"triggerType == 'create'"
>
<a-button
type=
'default'
@
click=
"backPage()"
>
返回
</a-button>
<a-button
type=
'default'
@
click=
"backPage()"
>
返回
</a-button>
...
@@ -21,13 +21,17 @@
...
@@ -21,13 +21,17 @@
<a-divider
type=
'horizontal'
/>
<a-divider
type=
'horizontal'
/>
<a-form
:form=
'labelForm'
>
<a-form
:form=
'labelForm'
>
<a-form-item
label=
'标签名'
:label-col=
"
{span:2}" :wrapper-col="{span:14}">
<a-form-item
label=
'标签名'
:label-col=
"
{span:2}" :wrapper-col="{span:14}">
<a-input
v-decorator=
"['labelName',
{validateTrigger:'blur',
rules: [
]}]">
</a-input>
<a-input
v-decorator=
"['labelName',
{validateTrigger:'blur',
initialValue: jsonData.labelName?jsonData.labelName: '', rules: [{required: true, message: '请填写标签名!'}
]}]">
</a-input>
</a-form-item>
</a-form-item>
<a-form-item
label=
'标签分组'
:label-col=
"
{span:2}" :wrapper-col="{span:14}">
<a-form-item
label=
'标签分组'
:label-col=
"
{span:2}" :wrapper-col="{span:14}">
<a-select
v-decorator=
"['parentLabel',
{validateTrigger:'blur',rules: []}]">
</a-select>
<a-select
v-decorator=
"['parentId',
{validateTrigger:'blur', initialValue: jsonData.parentId?jsonData.parentId: '', rules: []}]">
<a-select-option
v-for=
"(item, index) in parentLabelList"
:key=
'index'
:value=
'item.id'
>
{{
item
.
labelName
}}
</a-select-option>
</a-select>
</a-form-item>
</a-form-item>
<a-form-item
label=
'业务对象'
:label-col=
"
{span:2}" :wrapper-col="{span:14}">
<a-form-item
label=
'业务对象'
:label-col=
"
{span:2}" :wrapper-col="{span:14}">
<a-select
v-decorator=
"['
businessObj',
{validateTrigger:'blur',rules: [
]}]">
<a-select
v-decorator=
"['
tableName',
{validateTrigger:'blur', initialValue: jsonData.tableName?jsonData.tableName: '', rules: [{required: true, message: '请选择业务对象!'}
]}]">
<a-select-option
value=
'xq'
>
小区
</a-select-option>
<a-select-option
value=
'xq'
>
小区
</a-select-option>
<a-select-option
value=
'mpz'
>
门牌幢
</a-select-option>
<a-select-option
value=
'mpz'
>
门牌幢
</a-select-option>
</a-select>
</a-select>
...
@@ -65,10 +69,10 @@
...
@@ -65,10 +69,10 @@
</a-form-item>
</a-form-item>
<a-form-item>
<a-form-item>
<a-input
placeholder=
'请输入'
v-decorator=
"['inputOne' + index,
{initialValue: item.inputOne
, validateTrigger:'blur',rules: [],}]">
</a-input>
<a-input
style=
"width: 120px"
placeholder=
'请输入'
v-decorator=
"['inputOne' + index,
{initialValue: getInitialValueOne(item.val)
, validateTrigger:'blur',rules: [],}]">
</a-input>
</a-form-item>
</a-form-item>
<a-form-item
v-if=
"infoSettingForm.getFieldValue('codition'+index) == 'btw'"
>
<a-form-item
v-if=
"infoSettingForm.getFieldValue('codition'+index) == 'btw'"
>
<a-input
placeholder=
'请输入'
v-decorator=
"['inputTwo' + index,
{initialValue: item.inputTwo
, validateTrigger:'blur',rules: []}]">
</a-input>
<a-input
style=
"width: 120px"
placeholder=
'请输入'
v-decorator=
"['inputTwo' + index,
{initialValue: getInitialValueTwo(item.val)
, validateTrigger:'blur',rules: []}]">
</a-input>
</a-form-item>
</a-form-item>
<a-form-item>
<a-form-item>
...
@@ -104,14 +108,16 @@ export default {
...
@@ -104,14 +108,16 @@ export default {
selMet
:
''
selMet
:
''
}]
}]
},
},
jsonData
:
[]
,
jsonData
:
{}
,
deleteVisible
:
false
,
deleteVisible
:
false
,
finish
:
false
finish
:
false
,
parentLabelList
:
[]
}
}
},
},
mounted
()
{
mounted
()
{
console
.
log
(
'得到的'
+
this
.
labelId
)
console
.
log
(
'得到的'
+
this
.
labelId
)
this
.
getLabelDetail
()
this
.
getLabelDetail
()
this
.
getParentLabelList
()
},
},
props
:
[
props
:
[
'triggerType'
,
'triggerType'
,
...
@@ -135,12 +141,16 @@ export default {
...
@@ -135,12 +141,16 @@ export default {
},
},
methods
:
{
methods
:
{
getLabelDetail
()
{
getLabelDetail
()
{
// console.log('得到的' + this.labelId)
if
(
!!
this
.
labelId
&&
this
.
labelId
!==
'undefined'
)
{
if
(
!!
this
.
labelId
&&
this
.
labelId
!==
'undefined'
)
{
this
.
$ajax
.
get
({
this
.
$ajax
.
get
({
url
:
this
.
$api
.
DELETE_SINGLE_LABEL
.
replace
(
'{id}'
,
this
.
labelId
),
url
:
this
.
$api
.
DELETE_SINGLE_LABEL
.
replace
(
'{id}'
,
this
.
labelId
),
}).
then
(
res
=>
{
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
if
(
res
.
code
==
200
)
{
this
.
labelForm
.
setFieldsValue
({
labelName
:
res
.
data
.
content
.
labelName
,
parentId
:
res
.
data
.
content
.
parentId
,
tableName
:
res
.
data
.
content
.
tableName
})
this
.
loopContent
.
data
=
res
.
data
.
content
.
selParams
this
.
loopContent
.
data
=
res
.
data
.
content
.
selParams
console
.
log
(
res
.
data
.
content
.
selParams
)
console
.
log
(
res
.
data
.
content
.
selParams
)
}
}
...
@@ -149,8 +159,36 @@ export default {
...
@@ -149,8 +159,36 @@ export default {
this
.
resetFormFields
()
this
.
resetFormFields
()
}
}
},
},
getParentLabelList
()
{
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_LABEL_LIST
,
}).
then
(
res
=>
{
let
list
=
this
.
$com
.
confirm
(
res
,
'data.content'
,
[])
for
(
let
i
=
0
;
i
<
list
.
length
;
i
++
)
{
this
.
parentLabelList
.
push
({
'labelName'
:
list
[
i
].
labelName
,
'id'
:
list
[
i
].
id
})
}
})
},
getInitialValueOne
(
val
)
{
if
(
val
.
indexOf
(
','
)
>
-
1
)
{
return
val
.
split
(
','
)[
0
]
}
else
{
return
val
}
},
getInitialValueTwo
(
val
)
{
if
(
val
.
indexOf
(
','
)
>
-
1
)
{
return
val
.
split
(
','
)[
1
]
}
else
{
return
''
}
},
backPage
(){
// 返回按钮
backPage
(){
// 返回按钮
this
.
$router
.
back
()
this
.
finish
=
true
this
.
$emit
(
'finish'
,
this
.
finish
)
},
},
addInitRow
()
{
addInitRow
()
{
this
.
loopContent
.
data
.
push
({
this
.
loopContent
.
data
.
push
({
...
@@ -181,45 +219,77 @@ export default {
...
@@ -181,45 +219,77 @@ export default {
this
.
deleteVisible
=
!
this
.
deleteVisible
this
.
deleteVisible
=
!
this
.
deleteVisible
},
},
handleDeleteOk
()
{
handleDeleteOk
()
{
this
.
$message
.
success
(
'标签【'
+
this
.
labelId
+
'】已删除!'
)
this
.
$ajax
.
delete
({
url
:
this
.
$api
.
DELETE_SINGLE_LABEL
.
replace
(
'{id}'
,
this
.
labelId
),
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
.
success
(
'删除标签成功!'
)
this
.
finish
=
true
this
.
$emit
(
'finish'
,
this
.
finish
)
}
})
this
.
deleteVisible
=
!
this
.
deleteVisible
this
.
deleteVisible
=
!
this
.
deleteVisible
},
},
handleCancelOk
()
{
handleCancelOk
()
{
this
.
deleteVisible
=
!
this
.
deleteVisible
this
.
deleteVisible
=
!
this
.
deleteVisible
},
},
resetFormFields
()
{
resetFormFields
()
{
// this.loopContent.data = [{
// key: '',
// codition: 'equels',
// val: '',
// selMet: ''
// }]
this
.
loopContent
.
data
=
[]
this
.
loopContent
.
data
=
[]
this
.
labelForm
.
resetFields
()
},
},
save
()
{
save
()
{
this
.
jsonData
=
[]
this
.
jsonData
=
{
selParams
:
[]}
this
.
infoSetting
Form
.
validateFields
((
err
,
values
)
=>
{
this
.
label
Form
.
validateFields
((
err
,
values
)
=>
{
if
(
!
err
)
{
if
(
!
err
)
{
let
loopCounts
=
this
.
loopContent
.
data
.
length
const
labelFormData
=
this
.
labelForm
.
getFieldsValue
()
let
formData
=
this
.
infoSettingForm
.
getFieldsValue
()
this
.
jsonData
=
Object
.
assign
(
this
.
jsonData
,
labelFormData
)
this
.
infoSettingForm
.
validateFields
((
err1
,
values
)
=>
{
for
(
let
i
=
0
;
i
<
loopCounts
;
i
++
)
{
if
(
!
err1
)
{
this
.
jsonData
.
push
({
let
loopCounts
=
this
.
loopContent
.
data
.
length
key
:
formData
[
'key'
+
i
],
let
formData
=
this
.
infoSettingForm
.
getFieldsValue
()
val
:
!
formData
[
'inputTwo'
+
i
]
?
formData
[
'inputOne'
+
i
]
:
formData
[
'inputOne'
+
i
]
+
','
+
formData
[
'inputTwo'
+
i
],
for
(
let
i
=
0
;
i
<
loopCounts
;
i
++
)
{
condition
:
formData
[
'codition'
+
i
],
this
.
jsonData
.
selParams
.
push
({
relation
:
formData
[
'relation'
+
i
],
key
:
formData
[
'key'
+
i
],
selMet
:
formData
[
'selMet'
+
i
]
val
:
!
formData
[
'inputTwo'
+
i
]
?
formData
[
'inputOne'
+
i
]
:
formData
[
'inputOne'
+
i
]
+
','
+
formData
[
'inputTwo'
+
i
],
})
codition
:
formData
[
'codition'
+
i
],
}
relation
:
formData
[
'relation'
+
i
],
selMet
:
formData
[
'selMet'
+
i
]
console
.
log
(
JSON
.
stringify
(
this
.
jsonData
))
})
this
.
$message
.
success
(
'保存成功!'
)
}
// 提交标签内容, 如果有labelId则调用put接口,反之调用post接口
if
(
!!
this
.
labelId
)
{
this
.
$ajax
.
put
({
url
:
this
.
$api
.
PUT_LABEL_INFO
.
replace
(
'{id}'
,
this
.
labelId
),
params
:
Object
.
assign
(
this
.
jsonData
,
{
id
:
this
.
labelId
})
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
.
success
(
'修改成功!'
)
this
.
resetFormFields
()
this
.
finish
=
true
this
.
$emit
(
'finish'
,
this
.
finish
)
}
else
{
this
.
$message
.
success
(
'修改失败!'
)
}
})
}
else
{
this
.
$ajax
.
post
({
url
:
this
.
$api
.
POST_SINGLE_LABEL
,
params
:
Object
.
assign
(
this
.
jsonData
)
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
.
success
(
'保存成功!'
)
this
.
resetFormFields
()
this
.
finish
=
true
this
.
$emit
(
'finish'
,
this
.
finish
)
}
else
{
this
.
$message
.
success
(
'保存失败!'
)
}
})
}
}
})
}
}
})
})
this
.
resetFormFields
()
this
.
finish
=
true
this
.
$emit
(
'finish'
,
this
.
finish
)
},
},
},
},
}
}
...
...
src/views/label/parentLabelRightPanel.vue
View file @
27995879
<
template
>
<div
class=
"routerWapper"
>
{{
labelId
}}
<div>
<a-row>
<a-col
:span=
'1'
>
<a-button
type=
'default'
@
click=
"backPage()"
>
返回
</a-button>
</a-col>
<a-col
:span=
'1'
:offset=
'1'
>
<a-button
type=
'primary'
@
click=
"save()"
>
保存
</a-button>
</a-col>
<a-col
:span=
'19'
></a-col>
</a-row>
</div>
<div>
<a-divider
type=
'horizontal'
/>
<a-form
:form=
'labelForm'
>
<a-form-item
label=
'标签名'
:label-col=
"
{span:2}" :wrapper-col="{span:14}">
<a-input
v-decorator=
"['labelName',
{validateTrigger:'blur', initialValue: '', rules: [{required: true, message: '请填写标签名!'}]}]">
</a-input>
</a-form-item>
</a-form>
</div>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
labelForm
:
this
.
$form
.
createForm
(
this
),
labelList
:
{},
finish
:
false
,
}
},
props
:
[
'triggerType'
,
'labelId'
],
mounted
()
{
this
.
getLabelInfo
()
},
methods
:
{
getLabelInfo
()
{
if
(
!!
this
.
labelId
)
{
this
.
$ajax
.
get
({
url
:
this
.
$api
.
GET_LABEL_DETAIL
.
replace
(
'{id}'
,
this
.
labelId
),
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
labelList
=
res
.
data
.
content
this
.
labelForm
.
setFieldsValue
({
labelName
:
res
.
data
.
content
.
labelName
})
}
})
}
},
resetFormFields
()
{
this
.
labelForm
.
resetFields
()
},
backPage
(){
// 返回按钮
this
.
finish
=
true
this
.
$emit
(
'finish'
,
this
.
finish
)
},
save
()
{
this
.
labelForm
.
validateFields
((
err1
,
values
)
=>
{
if
(
!
err1
)
{
this
.
labelList
.
labelName
=
this
.
labelForm
.
getFieldValue
(
'labelName'
)
this
.
$ajax
.
put
({
url
:
this
.
$api
.
PUT_LABEL_INFO
.
replace
(
'{id}'
,
this
.
labelId
),
params
:
Object
.
assign
(
this
.
labelList
,
{
id
:
this
.
labelId
})
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
.
success
(
'修改成功!'
)
this
.
resetFormFields
()
this
.
finish
=
true
this
.
$emit
(
'finish'
,
this
.
finish
)
}
else
{
this
.
$message
.
success
(
'修改失败!'
)
}
})
}
})
},
},
}
</
script
>
\ No newline at end of file
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