Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
bdc
/
bdcdj-web
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
5c9211a4
authored
2023-09-14 09:59:44 +0800
by
xiaomiao
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
--no commit message
1 parent
3edaaf1d
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
327 additions
and
1 deletions
src/views/system/qtjfjmb/components/djbdispositions.vue
src/views/system/qtjfjmb/qtjfjmb.vue
src/views/system/qtjfjmb/components/djbdispositions.vue
0 → 100644
View file @
5c9211a
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-07-19 16:04:58
-->
<
template
>
<div>
<div
class=
"fieldcheck"
>
<div
class=
"left"
>
<div
class=
"header"
>
<el-checkbox
class=
"check"
:indeterminate=
"isIndeterminate"
v-model=
"checkAll"
@
change=
"handleCheckAllChange"
>
待选合集
</el-checkbox
>
<div
class=
"num"
>
/
</div>
</div>
<el-checkbox-group
class=
"concent"
v-model=
"checkedCities"
@
change=
"handleCheckedCitiesChange"
>
<el-checkbox
v-for=
"city in cities"
:label=
"city.name"
:key=
"city.name"
>
{{
city
.
despriction
}}
(
{{
city
.
name
}}
)
</el-checkbox
>
</el-checkbox-group>
</div>
<div
class=
"right"
>
<div
class=
"header"
>
<el-button>
置顶
</el-button>
<el-button>
上移
</el-button>
<el-button>
下移
</el-button>
<el-button>
置底
</el-button>
</div>
<el-table
class=
"tablelist"
:data=
"datalist"
ref=
"listTable"
row-key=
"zd"
:pagination=
"false"
:header-cell-style=
"
{ 'text-align': 'center' }"
:heightNumSetting="true"
:minHeight="150"
height="590"
style="width: 100%"
>
<el-table-column
label=
"字段"
prop=
"name"
min-width=
"100"
>
</el-table-column>
<el-table-column
label=
"字段名称"
prop=
"desprictionor"
min-width=
"100"
>
</el-table-column>
<el-table-column
label=
"字段别名"
min-width=
"100"
>
<template
slot-scope=
"scope"
>
<el-input
v-model=
"scope.row.despriction"
placeholder=
"请输入内容"
@
input=
"sumTime(scope.$index, scope.row.tdsyqx)"
>
>
</el-input
>
</
template
>
</el-table-column>
</el-table>
</div>
</div>
<div
class=
"btn"
>
<el-button
@
click=
"$popupCacel"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm"
plain
>
确定
</el-button>
</div>
</div>
</template>
<
script
>
import
Sortable
from
"sortablejs"
;
import
{
getFieldList
,
getFieldListByQlxx
,
save
}
from
"@/api/SysDjbFieldDO"
;
export
default
{
props
:
{
formData
:
{
type
:
Object
,
default
:
()
=>
{},
},
},
data
()
{
return
{
checkAll
:
false
,
checkedCities
:
[],
cities
:
[],
datalist
:
[],
tablelist
:
[],
key
:
0
,
isIndeterminate
:
true
,
};
},
mounted
()
{
this
.
generateData
();
this
.
initSort
();
},
beforeDestroy
()
{
if
(
this
.
sortable
)
{
this
.
sortable
.
destroy
();
}
},
methods
:
{
changeIndex
(
array
,
index1
,
index2
)
{
array
[
index1
]
=
array
.
splice
(
index2
,
1
,
array
[
index1
])[
0
];
/** splice 会修改原来的数组 slice 不会 返回的是删除后的数据 所以 index2要删除的位置,删除1个数据 返回是index2的数据 然后最后一个参数是新增的数据为index的数据 */
},
initSort
()
{
this
.
datalist
=
[]
this
.
datalist
=
this
.
tablelist
const
el
=
this
.
$refs
.
listTable
.
$el
.
querySelectorAll
(
".el-table__body-wrapper > table > tbody"
)[
0
];
this
.
sortable
=
Sortable
.
create
(
el
,
{
ghostClass
:
"sortable-ghost"
,
setData
:
function
(
dataTransfer
)
{
dataTransfer
.
setData
(
"Text"
,
""
);
},
onEnd
:
(
evt
)
=>
{
console
.
log
(
"evt.oldIndex"
,
evt
.
oldIndex
);
console
.
log
(
"evt.newIndex"
,
evt
.
newIndex
);
const
targetRow
=
this
.
tablelist
.
splice
(
evt
.
oldIndex
,
1
)[
0
];
console
.
log
(
"targetRow"
,
targetRow
);
// this.changeIndex(this.datalist,evt.newIndex,evt.oldIndex)
// console.log("this.datalist", this.datalist);
this
.
datalist
.
splice
(
evt
.
newIndex
,
0
,
targetRow
);
console
.
log
();
this
.
$set
(
this
.
datalist
,
targetRow
);
},
});
},
// initSort () {
// const el = this.$refs.listTable.$el.querySelectorAll('.el-table__body-wrapper > table > tbody')[0]
// this.sortable =new Sortable(el, {
// onEnd: (evt) => { // 监听拖动结束事件
// console.log(this) // this是当前vue上下文
// console.log(evt.oldIndex) // 当前行的被拖拽前的顺序
// console.log(evt.newIndex)
// const currRow = this.tableData.splice(evt.oldIndex, 1)[0]
// this.datalist.splice(evt.newIndex, 0, currRow)
// }
// })
// },
// initSort(){
// let el = this.$refs.listTable.$el.querySelectorAll('.el-table__body-wrapper > table > tbody')[0]
// //设置配置
// let _this = this
// Sortable.create(el, {
// animation: 150,
// sort: true,
// // draggable: '.el-table__row', // 设置可拖拽行的类名(el-table自带的类名)
// forceFallback: true,
// onEnd({newIndex, oldIndex}) {
// let currRow = _this.datalist.splice(oldIndex, 1)[0];
// _this.datalist.splice(newIndex, 0, currRow);
// }
// })
// },
/**
* @description: 初始数据集
* @author: renchao
*/
generateData
()
{
getFieldList
({
qllx
:
this
.
formData
.
qllx
}).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
let
listss
=
res
.
result
;
listss
.
forEach
((
item
,
index
)
=>
{
this
.
cities
.
push
({
name
:
item
.
name
,
despriction
:
item
.
despriction
,
desprictionor
:
item
.
despriction
,
});
});
getFieldListByQlxx
({
qllx
:
this
.
formData
.
qllx
}).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
let
listss
=
res
.
result
;
listss
.
forEach
((
item
,
index
)
=>
{
this
.
tablelist
.
push
({
name
:
item
.
name
,
despriction
:
item
.
despriction
,
desprictionor
:
item
.
despriction
,
});
this
.
datalist
=
this
.
tablelist
this
.
checkedCities
.
push
(
item
.
name
);
});
}
});
}
});
},
handleCheckAllChange
(
val
)
{
let
checkedlist
=
[]
let
orlist
=
[]
checkedlist
=
val
?
this
.
cities
:
[];
this
.
isIndeterminate
=
false
;
console
.
log
(
"this.checkedCities"
,
this
.
checkedCities
);
let
lists
=
[];
this
.
cities
.
forEach
((
item
,
index
)
=>
{
checkedlist
.
forEach
((
el
)
=>
{
orlist
.
push
(
el
.
name
)
if
(
item
.
name
==
el
.
name
)
{
lists
.
push
(
this
.
cities
[
index
]);
}
});
});
console
.
log
(
"orlist"
,
orlist
);
this
.
checkedCities
=
orlist
this
.
tablelist
=
lists
;
this
.
datalist
=
this
.
tablelist
},
handleCheckedCitiesChange
(
value
)
{
console
.
log
(
"value"
,
value
,
this
.
checkedCities
);
let
checkedCount
=
value
.
length
;
this
.
checkAll
=
checkedCount
===
this
.
cities
.
length
;
this
.
isIndeterminate
=
checkedCount
>
0
&&
checkedCount
<
this
.
cities
.
length
;
let
lists
=
[];
this
.
cities
.
forEach
((
item
,
index
)
=>
{
this
.
checkedCities
.
forEach
((
el
)
=>
{
if
(
item
.
name
==
el
)
{
console
.
log
(
"1"
);
lists
.
push
(
this
.
cities
[
index
]);
}
});
});
this
.
tablelist
=
lists
;
this
.
datalist
=
this
.
tablelist
},
submitForm
()
{
console
.
log
(
"this.datalistdss"
,
this
.
datalist
);
save
(
this
.
formData
.
bsmMb
,
this
.
datalist
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
this
.
$popupCacel
();
this
.
$message
({
message
:
"保存成功"
,
type
:
"success"
,
});
}
else
{
this
.
$message
({
message
:
"保存失败"
,
type
:
"error"
,
});
}
});
},
},
};
</
script
>
<
style
scoped
lang=
"scss"
>
@import
"~@/styles/mixin.scss"
;
@import
"~@/styles/dialogBoxheader.scss"
;
.fieldcheck
{
width
:
100%
;
height
:
650px
;
display
:
flex
;
justify-content
:
space-between
;
.left,
.right
{
width
:
47%
;
height
:
650px
;
border
:
1px
solid
rgb
(
230
,
230
,
230
);
}
.left
{
.header
{
width
:
100%
;
height
:
50px
;
line-height
:
50px
;
background-color
:
rgba
(
243
,
242
,
242
,
0.897
);
display
:
flex
;
justify-content
:
space-around
;
align-items
:
center
.
check
{
height
:
20px
;
margin
:
auto
;
}
.num
{
height
:
20px
;
}
}
.concent
{
padding
:
10px
;
width
:
100%
;
display
:
inline-block
;
padding-left
:
20px
;
overflow-x
:
hidden
;
height
:
600px
;
.el-checkbox
{
width
:
100%
;
padding
:
10px
;
}
.el-checkbox
:hover
{
padding
:
10px
;
background-color
:
rgba
(
243
,
242
,
242
,
0.897
);
}
}
}
.right
{
.header
{
width
:
100%
;
height
:
50px
;
line-height
:
50px
;
background-color
:
rgba
(
243
,
242
,
242
,
0.897
);
}
.tablelist
{
margin-top
:
10px
;
height
:
680px
;
}
}
}
.btn
{
margin-top
:
10px
;
width
:
100%
;
text-align
:
center
;
}
</
style
>
src/views/system/qtjfjmb/qtjfjmb.vue
View file @
5c9211a
...
...
@@ -90,7 +90,7 @@
this
.
$popupDialog
(
"其他及附记模板"
,
"system/qtjfjmb/components/editDialog"
,
row
,
'60%'
)
},
djbdisposition
(
row
){
this
.
$popupDialog
(
"配置登记簿打印字段"
,
"system/qtjfjmb/components/djbdisposition"
,
row
,
'60%'
)
this
.
$popupDialog
(
"配置登记簿打印字段"
,
"system/qtjfjmb/components/djbdisposition
s
"
,
row
,
'60%'
)
}
}
}
...
...
Please
register
or
sign in
to post a comment