Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
agcs2.0-web
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
liang
agcs2.0-web
Commits
d88c3781
Commit
d88c3781
authored
Apr 28, 2023
by
miaojiale
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改
parent
ebd48e90
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
185 additions
and
187 deletions
+185
-187
index.vue
src/components/FormComponents/index.vue
+183
-186
index.vue
src/views/followupquery/index.vue
+2
-1
No files found.
src/components/FormComponents/index.vue
View file @
d88c3781
...
@@ -10,209 +10,204 @@
...
@@ -10,209 +10,204 @@
:style=
"formStyle"
:style=
"formStyle"
@
submit.native.prevent=
"handleSearch()"
@
submit.native.prevent=
"handleSearch()"
>
>
<el-col
<div
v-for=
"(item, index) in forms"
:key=
"index"
>
v-for=
"(item, index) in forms"
<template
v-if=
"!item.hidden"
>
v-if=
"!item.hidden"
<el-form-item
:key=
"index"
v-if=
"item.type != 'btn'"
:xs=
"item.xs ? item.xs : 24"
:label=
"item.label ? item.label + (item.hiddenColon ? '' : ':') : ''"
:sm=
"item.sm ? item.sm : 12"
:prop=
"item.prop"
:md=
"item.md ? item.md : 8"
:rules=
"item.rules"
:lg=
"item.lg ? item.lg : 8"
:label-width=
"item.labelWidth || '110px'"
:xl=
"item.xl ? item.xl : 6"
>
<el-form-item
v-if=
"item.type != 'btn'"
:label=
"item.label ? item.label + (item.hiddenColon ? '' : ':') : ''"
:prop=
"item.prop"
:rules=
"item.rules"
:label-width=
"item.labelWidth || '110px'"
>
<!-- 输入框 -->
<el-input
v-if=
"item.type === 'input'"
:id=
"item.id ? item.id : ''"
v-model=
"form[item.prop]"
:readonly=
"item.readonly"
:disabled=
"item.disabled"
clearable=
""
:placeholder=
"item.placeholder"
@
focus=
"item.focusFunc ? item.focusFunc($event) :
{}"
@change="item.func ? item.func($event) : {}"
>
>
<span
v-if=
"item.unit"
:slot=
"item.slot ? item.slot : 'append'"
>
<!-- 输入框 -->
{{
item
.
unit
}}
</span>
</el-input>
<template
v-if=
"item.type === 'textarea'"
>
<el-input
<el-input
v-if=
"item.type === 'input'"
:id=
"item.id ? item.id : ''"
v-model=
"form[item.prop]"
v-model=
"form[item.prop]"
type=
"textarea"
:readonly=
"item.readonly"
:disabled=
"item.disabled"
clearable=
""
:placeholder=
"item.placeholder"
:placeholder=
"item.placeholder"
:rows=
"item.rows
"
@
focus=
"item.focusFunc ? item.focusFunc($event) :
{}
"
:autosize=
"item.autosize
"
@change="item.func ? item.func($event) : {}
"
:minlength=
"item.minlength"
>
:maxlength=
"item.maxlength"
<span
v-if=
"item.unit"
:slot=
"item.slot ? item.slot : 'append'"
>
:show-word-limit=
"item.showLimit"
{{
item
.
unit
}}
></el-input
>
</span
>
</
template
>
</el-input
>
<!-- 模糊查询输入 -->
<template
v-if=
"item.type === 'textarea'"
>
<el-autocomplete
<el-input
v-else-if=
"item.type === 'autocomplete'"
v-model=
"form[item.prop]"
v-model=
"form[item.prop]"
type=
"textarea"
:popper-class=
"item.popperClass"
:placeholder=
"item.placeholder"
style=
"width: 100%"
:rows=
"item.rows"
:fetch-suggestions=
"item.func"
:autosize=
"item.autosize"
:placeholder=
"item.placeholder"
:minlength=
"item.minlength"
clearable
:maxlength=
"item.maxlength"
@
select=
"item.selectfun ? item.selectfun($event) : {}"
:show-word-limit=
"item.showLimit"
>
></el-input>
<
template
slot-scope=
"{ item }"
>
<div
class=
"name"
>
{{
item
.
value
}}
</div>
<span
class=
"description"
>
{{
item
.
description
}}
</span>
</
template
>
</
template
>
</el-autocomplete>
<!-- 模糊查询选择 -->
<!-- 模糊查询输入 -->
<el-select
<el-autocomplete
v-else-if=
"item.type === 'remote'"
v-else-if=
"item.type === 'autocomplete'"
v-model=
"form[item.prop]"
v-model=
"form[item.prop]"
filterable
:popper-class=
"item.popperClass"
remote
style=
"width: 100%"
reserve-keyword
:fetch-suggestions=
"item.func"
:placeholder=
"item.placeholder"
:placeholder=
"item.placeholder"
:remote-method=
"item.remoteFunc"
clearable
>
@
select=
"item.selectfun ? item.selectfun($event) : {}"
<el-option
>
v-for=
"(opt, optIndex) in item.opts"
<
template
slot-scope=
"{ item }"
>
:key=
"optIndex"
<div
class=
"name"
>
{{
item
.
value
}}
</div>
:label=
"opt.label"
<span
class=
"description"
>
{{
item
.
description
}}
</span>
:value=
"item.isSelect ? opt.selectValue : opt.value"
</
template
>
></el-option>
</el-autocomplete>
</el-select>
<!-- 日期区间 -->
<!-- 模糊查询选择 -->
<el-date-picker
<el-select
v-else-if=
"item.type === 'daterange'"
v-else-if=
"item.type === 'remote'"
v-model=
"form[item.prop]"
v-model=
"form[item.prop]"
type=
"daterange"
filterable
align=
"right"
remote
unlink-panels
reserve-keyword
range-separator=
"-"
:placeholder=
"item.placeholder"
start-placeholder=
"开始日期"
:remote-method=
"item.remoteFunc"
end-placeholder=
"结束日期"
>
:picker-options=
"item.options"
<el-option
:format=
"item.format"
v-for=
"(opt, optIndex) in item.opts"
:value-format=
"item.valueFormat"
:key=
"optIndex"
></el-date-picker>
:label=
"opt.label"
:value=
"item.isSelect ? opt.selectValue : opt.value"
></el-option>
</el-select>
<!-- 日期 -->
<!-- 日期区间 -->
<el-date-picker
<el-date-picker
v-else-if=
"item.type === 'date'"
v-else-if=
"item.type === 'daterange'"
v-model=
"form[item.prop]"
v-model=
"form[item.prop]"
:type=
"item.dateType ? item.dateType : 'date'"
type=
"daterange"
:placeholder=
"item.placeholder"
align=
"right"
:picker-options=
"item.options"
unlink-panels
:format=
"item.format"
range-separator=
"-"
:value-format=
"item.valueFormat"
start-placeholder=
"开始日期"
></el-date-picker>
end-placeholder=
"结束日期"
:picker-options=
"item.options"
:format=
"item.format"
:value-format=
"item.valueFormat"
@
change=
"handleSearch"
></el-date-picker>
<!-- 下拉框 -->
<!-- 日期 -->
<el-select
<el-date-picker
v-else-if=
"item.type === 'select'"
v-else-if=
"item.type === 'date'"
v-model=
"form[item.prop]"
v-model=
"form[item.prop]"
clearable
:type=
"item.dateType ? item.dateType : 'date'"
filterable
:placeholder=
"item.placeholder"
:disabled=
"item.disabled"
:picker-options=
"item.options"
:placeholder=
"item.placeholder ? item.placeholder : '请选择'"
:format=
"item.format"
@
change=
"item.func ? item.func($event) : {}"
:value-format=
"item.valueFormat"
>
@
change=
"handleSearch"
<el-option
></el-date-picker>
<!-- 下拉框 -->
<el-select
v-else-if=
"item.type === 'select'"
v-model=
"form[item.prop]"
clearable
filterable
:disabled=
"item.disabled"
:placeholder=
"item.placeholder ? item.placeholder : '请选择'"
@
change=
"item.func ? item.func($event) : handleSearch()"
>
<el-option
v-for=
"(opt, optIndex) in item.opts"
:key=
"optIndex"
:label=
"opt.label"
:value=
"item.isSelect ? opt.selectValue : opt.value"
></el-option>
</el-select>
<!-- 单选框 -->
<el-radio
v-for=
"(opt, optIndex) in item.opts"
v-for=
"(opt, optIndex) in item.opts"
v-else-if=
"item.type === 'radio'"
:key=
"optIndex"
:key=
"optIndex"
:label=
"opt.label"
v-model=
"form[item.prop]"
:value=
"item.isSelect ? opt.selectValue : opt.value"
:class=
"item.class"
></el-option>
:label=
"opt.value"
</el-select>
@
change=
"item.func ? item.func($event) : {}"
>
{{ opt.label }}
</el-radio
<!-- 单选框 -->
>
<el-radio
v-for=
"(opt, optIndex) in item.opts"
v-else-if=
"item.type === 'radio'"
:key=
"optIndex"
v-model=
"form[item.prop]"
:class=
"item.class"
:label=
"opt.value"
@
change=
"item.func ? item.func($event) : {}"
>
{{ opt.label }}
</el-radio
>
<!-- 级联 -->
<!-- 级联 -->
<el-cascader
<el-cascader
v-else-if=
"item.type === 'cascader'"
v-else-if=
"item.type === 'cascader'"
v-model=
"form[item.prop]"
v-model=
"form[item.prop]"
:style=
"'width:' + item.width"
:style=
"'width:' + item.width"
:options=
"item.list"
:options=
"item.list"
:change-on-select=
"item.changeSelect"
:change-on-select=
"item.changeSelect"
:show-all-levels=
"item.showLevel"
:show-all-levels=
"item.showLevel"
></el-cascader>
></el-cascader>
<!-- 文字 -->
<!-- 文字 -->
<span
v-else-if=
"item.type === 'text'"
>
{{
<span
v-else-if=
"item.type === 'text'"
>
{{
item.text ? item.text : form[item.prop]
item.text ? item.text : form[item.prop]
}}
</span>
}}
</span>
<!-- 数字输入框 -->
<!-- 数字输入框 -->
<el-input-number
<el-input-number
v-else-if=
"item.type === 'number'"
v-else-if=
"item.type === 'number'"
v-model=
"form[item.prop]"
v-model=
"form[item.prop]"
:controls=
"false"
:controls=
"false"
:min=
"item.min || 0"
:min=
"item.min || 0"
:precision=
"item.precision"
:precision=
"item.precision"
:disabled=
"item.disabled || disabled"
:disabled=
"item.disabled || disabled"
/>
/>
<!-- 图标 -->
<!-- 图标 -->
<span
v-else-if=
"item.type === 'svg'"
>
<span
v-else-if=
"item.type === 'svg'"
>
<svg-icon
<svg-icon
:style=
"item.style"
:style=
"item.style"
:icon-class=
"item.iconClass"
:icon-class=
"item.iconClass"
class=
"form-svg"
class=
"form-svg"
@
click.native=
"clickSvg(item.func)"
@
click.native=
"clickSvg(item.func)"
></svg-icon>
></svg-icon>
</span>
</span>
</el-form-item>
</el-form-item>
<div
v-if=
"item.type == 'btn'"
class=
"flex"
>
<div
v-if=
"item.type == 'btn'"
class=
"flex"
>
<
template
v-for=
"(btn, index) in item.list"
>
<
template
v-for=
"(btn, index) in item.list"
>
<el-button
<el-button
v-if=
"btn.btnType == 'button'"
v-if=
"btn.btnType == 'button'"
:key=
"index"
:key=
"index"
:type=
"btn.type"
:type=
"btn.type"
:size=
"size"
:size=
"size"
:icon=
"btn.icon"
:icon=
"btn.icon"
:style=
"btn.style"
:style=
"btn.style"
@
click=
"btn.func(form)"
@
click=
"btn.func(form)"
>
{{
btn
.
btnText
}}
</el-button
>
{{
btn
.
btnText
}}
</el-button
>
<div
v-if=
"btn.btnType == 'tobeModified'"
:key=
"index"
class=
"tobeModified"
:style=
"
{ backgroundColor: modifiedFlag ? '#4E68FF' : '#fff' }"
@click="changeModified"
>
<i
:style=
"
{ color: modifiedFlag ? '#fff' : '#d9d9d9' }"
class="el-icon-check"
>
</i>
<span
:style=
"
{ color: modifiedFlag ? '#fff' : '#000' }"
>待修改(
{{
btn
.
tobeModified
}}
)
</span
>
>
</div>
<div
</
template
>
v-if=
"btn.btnType == 'tobeModified'"
</div>
:key=
"index"
</el-col>
class=
"tobeModified"
:style=
"
{ backgroundColor: modifiedFlag ? '#4E68FF' : '#fff' }"
@click="changeModified"
>
<i
:style=
"
{ color: modifiedFlag ? '#fff' : '#d9d9d9' }"
class="el-icon-check"
>
</i>
<span
:style=
"
{ color: modifiedFlag ? '#fff' : '#000' }"
>待修改(
{{
btn
.
tobeModified
}}
)
</span
>
</div>
</
template
>
</div></template
>
</div>
<el-col
v-if=
"lists"
:xs=
"24"
:sm=
"24"
:lg=
"24"
style=
"padding-left: 120px"
>
<el-col
v-if=
"lists"
:xs=
"24"
:sm=
"24"
:lg=
"24"
style=
"padding-left: 120px"
>
<el-button
<el-button
...
@@ -342,6 +337,8 @@ export default {
...
@@ -342,6 +337,8 @@ export default {
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
.el-form-self
{
.el-form-self
{
display
:
flex
;
flex-wrap
:
wrap
;
width
:
100%
;
width
:
100%
;
margin
:
20px
0
;
margin
:
20px
0
;
overflow
:
hidden
;
overflow
:
hidden
;
...
...
src/views/followupquery/index.vue
View file @
d88c3781
...
@@ -328,9 +328,10 @@ export default {
...
@@ -328,9 +328,10 @@ export default {
},
},
onSearch
(
form
)
{
onSearch
(
form
)
{
console
.
log
(
form
)
console
.
log
(
form
)
this
.
pageIndex
=
1
sessionStorage
.
setItem
(
"
followQuery-form
"
,
JSON
.
stringify
(
form
))
sessionStorage
.
setItem
(
"
followQuery-form
"
,
JSON
.
stringify
(
form
))
this
.
formEdit
=
form
this
.
formEdit
=
form
//
this.handleSearch()
this
.
handleSearch
()
},
},
onClickSearch
()
{
onClickSearch
()
{
this
.
pageIndex
=
1
this
.
pageIndex
=
1
...
...
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