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
4cedceda
authored
2023-09-14 14:11:53 +0800
by
tianhaohao@pashanhoo.com
Browse Files
Options
Browse Files
Tag
Download
Plain Diff
Merge branch 'dev' of
http://yun.pashanhoo.com:9090/bdc/bdcdj-web
into dev
2 parents
2ff27d21
443bf236
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
297 additions
and
9 deletions
src/views/system/qtjfjmb/components/djbdispositions.vue
src/views/system/qtjfjmb/qtjfjmb.js
src/views/system/qtjfjmb/qtjfjmb.vue
src/views/xxba/components/clxx/dialog/clxxDetailDialog.vue
src/views/system/qtjfjmb/components/djbdispositions.vue
0 → 100644
View file @
4cedced
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-09-14 10:53:42
-->
<
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"
>
<el-table
class=
"tablelist"
:data=
"datalist"
ref=
"listTable"
:key=
"key"
row-key=
"bsmMb"
: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
,
sortable
:
null
,
checkedCities
:
[],
cities
:
[],
datalist
:
[],
tablelist
:
[],
key
:
0
,
isIndeterminate
:
true
,
};
},
mounted
()
{
this
.
generateData
()
},
beforeDestroy
()
{
if
(
this
.
sortable
)
{
this
.
sortable
.
destroy
();
}
},
watch
:
{
key
:
{
handler
(
newName
,
oldName
)
{
this
.
initSort
()
}
}
},
methods
:
{
changeIndex
(
array
,
index1
,
index2
)
{
array
[
index1
]
=
array
.
splice
(
index2
,
1
,
array
[
index1
])[
0
];
},
initSort
()
{
const
el
=
this
.
$refs
.
listTable
.
$el
.
querySelectorAll
(
".el-table__body-wrapper > table > tbody"
)[
0
];
this
.
sortable
=
new
Sortable
(
el
,
{
ghostClass
:
"sortable-ghost"
,
setData
:
function
(
dataTransfer
)
{
dataTransfer
.
setData
(
"Text"
,
""
);
},
onEnd
:
(
evt
)
=>
{
// 其他排序逻辑
// const targetRow = this.datalist.splice(evt.oldIndex, 1)[0]
// this.datalist.splice(evt.newIndex, 0, targetRow);
}
})
},
/**
* @description: 初始数据集
* @author: renchao
*/
generateData
()
{
let
that
=
this
getFieldList
({
qllx
:
this
.
formData
.
qllx
}).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
let
listss
=
res
.
result
;
listss
.
forEach
((
item
,
index
)
=>
{
that
.
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
)
=>
{
that
.
tablelist
.
push
({
name
:
item
.
name
,
despriction
:
item
.
despriction
,
desprictionor
:
item
.
despriction
,
});
that
.
$nextTick
(()
=>
{
that
.
datalist
=
this
.
tablelist
that
.
checkedCities
.
push
(
item
.
name
);
})
})
that
.
initSort
()
}
});
}
});
},
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
]);
}
});
});
this
.
checkedCities
=
orlist
this
.
tablelist
=
lists
;
this
.
datalist
=
this
.
tablelist
// 其他排序逻辑
this
.
initSort
()
},
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
// 其他排序逻辑
this
.
initSort
()
},
submitForm
()
{
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.js
View file @
4cedced
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-0
4-11 13:53:12
* @LastEditTime: 2023-0
9-14 10:51:36
*/
import
filter
from
'@/utils/filter.js'
let
vm
=
null
...
...
@@ -61,11 +61,11 @@ class data extends filter {
},
{
label
:
'操作'
,
width
:
'1
6
0'
,
width
:
'1
3
0'
,
render
:
(
h
,
scope
)
=>
{
return
(
<
div
>
<
el
-
button
type
=
"text"
icon
=
"el-icon-edit-outline"
onClick
=
{()
=>
{
vm
.
djbdisposition
(
scope
.
row
)
}}
>
配置
<
/el-button
>
<
el
-
button
type
=
"text"
icon
=
"el-icon-edit-outline"
onClick
=
{()
=>
{
vm
.
djbdisposition
(
scope
.
row
)
}}
>
配置
<
/el-button
>
<
el
-
button
type
=
"text"
icon
=
"el-icon-edit-outline"
onClick
=
{()
=>
{
vm
.
editClick
(
scope
.
row
)
}}
>
修改
<
/el-button
>
<
/div
>
)
...
...
src/views/system/qtjfjmb/qtjfjmb.vue
View file @
4cedced
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-0
8-09 10:09:12
* @LastEditTime: 2023-0
9-14 10:02:08
-->
<
template
>
<div
class=
"from-clues"
>
...
...
@@ -89,8 +89,8 @@
editClick
(
row
)
{
this
.
$popupDialog
(
"其他及附记模板"
,
"system/qtjfjmb/components/editDialog"
,
row
,
'60%'
)
},
djbdisposition
(
row
)
{
this
.
$popupDialog
(
"配置登记簿打印字段"
,
"system/qtjfjmb/components/djbdisposition"
,
row
,
'6
0%'
)
djbdisposition
(
row
)
{
this
.
$popupDialog
(
"配置登记簿打印字段"
,
"system/qtjfjmb/components/djbdispositions"
,
row
,
'7
0%'
)
}
}
}
...
...
src/views/xxba/components/clxx/dialog/clxxDetailDialog.vue
View file @
4cedced
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-09-1
3 17:08:5
3
* @LastEditTime: 2023-09-1
4 10:12:2
3
-->
<
template
>
<div
class=
"clmlmx-box"
>
...
...
@@ -141,7 +141,6 @@
mounted
()
{
this
.
initSort
()
this
.
tableData
=
_
.
cloneDeep
(
this
.
formData
.
data
)
console
.
log
(
this
.
formData
.
bsmCompany
);
},
beforeDestroy
()
{
if
(
this
.
sortable
)
{
...
...
@@ -185,7 +184,6 @@
* @author: renchao
*/
handleDelete
(
index
,
row
)
{
let
that
=
this
this
.
$confirm
(
'此操作将永久删除该 是否继续?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
...
...
Please
register
or
sign in
to post a comment