Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
bdc
/
bdcjg-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
73357b5a
authored
2023-02-07 15:53:47 +0800
by
xiaomiao
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
--no commit message
1 parent
239e92c8
Show whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
672 additions
and
281 deletions
src/components/Echart/Columnar/index.vue
src/components/Echart/Columnarsmat/index.vue
src/components/Echart/Map/Chart.vue
src/components/Echart/Map/index.vue
src/components/Echart/Rose/Chart.vue
src/components/Echart/Rose/index.vue
src/utils/operation copy.js
src/utils/operation.js
src/views/dataView/leftcard.vue
src/views/dataView/rightcard.vue
src/views/system/menus/authorizationdiglog.vue
src/views/system/menus/edit-dialog.vue
src/views/system/menus/index.vue
src/views/system/roles/data/index.js
src/views/system/roles/data/roles.js
src/views/system/roles/edit-dialog.vue
src/views/system/roles/index.vue
src/views/system/roles/roleslistdiglog.vue
src/views/system/users/edit-dialog.vue
src/views/system/users/index.vue
src/views/zxrz/components/detailDialog.vue
src/components/Echart/Columnar/index.vue
View file @
73357b5
...
...
@@ -25,7 +25,7 @@ export default {
async
submitViews
()
{
try
{
let
{
result
:
res
}
=
await
work
.
submitViews
(
"A20"
);
res
.
filter
((
item
)
=>
{
res
.
map
((
item
)
=>
{
return
(
this
.
cdata
.
category
.
push
(
item
.
areaName
),
this
.
cdata
.
barData
.
push
(
item
.
successCount
),
...
...
src/components/Echart/Columnarsmat/index.vue
View file @
73357b5
...
...
@@ -30,7 +30,7 @@ export default {
XZQDM
:
""
,
};
let
res
=
await
work
.
getDjlxtotal
(
p
);
res
.
result
.
filter
((
item
)
=>
{
res
.
result
.
map
((
item
)
=>
{
return
(
this
.
cdata
.
category
.
push
(
item
.
AREACODE
),
this
.
cdata
.
lineData
.
push
(
item
.
ywtotal
)
...
...
src/components/Echart/Map/Chart.vue
View file @
73357b5
...
...
@@ -103,7 +103,7 @@ export default {
},
// 如果需要自定义 tooltip样式,需要使用formatter
formatter
:
params
=>
{
return
`<div style="">
${
params
.
name
}
:
${
params
.
value
}
</div>`
return
`<div style="">
${
params
.
name
}
:
${
params
.
value
+
"个"
}
</div>`
}
},
visualMap
:
{
...
...
src/components/Echart/Map/index.vue
View file @
73357b5
...
...
@@ -22,9 +22,9 @@ export default {
async
mapViews
()
{
try
{
let
{
result
:
res
}
=
await
work
.
mapViews
(
"A20"
);
res
.
filter
((
item
)
=>
{
res
.
map
((
item
)
=>
{
return
(
this
.
cdata
.
push
({
"name"
:
item
.
areaName
,
"value"
:
item
.
areaCode
})
this
.
cdata
.
push
({
"name"
:
item
.
areaName
,
"value"
:
item
.
ywtotal
})
)
});
...
...
src/components/Echart/Rose/Chart.vue
View file @
73357b5
<
template
>
<Echart
:options=
"options"
id=
"centreLeft1Chart"
height=
"200px"
width=
"10
0%"
></Echart>
<Echart
:options=
"options"
id=
"centreLeft1Chart"
:key=
"key"
height=
"225px"
width=
"8
0%"
></Echart>
</
template
>
<
script
>
import
Echart
from
'@/common/echart'
...
...
@@ -7,6 +7,11 @@ export default {
components
:
{
Echart
,
},
data
()
{
return
{
key
:
0
}
},
props
:
{
cdata
:
{
type
:
Object
,
...
...
@@ -16,11 +21,11 @@ export default {
watch
:
{
cdata
:
{
handler
(
newData
)
{
console
.
log
(
"newData"
,
newData
);
this
.
options
=
{
grid
:
{
// 让图表占满容器
top
:
20
,
right
:
0
,
right
:
"1%"
,
bottom
:
"4%"
},
color
:
[
"#37a2da"
,
...
...
@@ -44,12 +49,14 @@ export default {
{
name
:
"业务量"
,
type
:
"pie"
,
radius
:
[
0
,
8
0
],
radius
:
[
40
,
10
0
],
roseType
:
"area"
,
data
:
newData
.
seriesData
}
]
],
}
this
.
key
++
},
immediate
:
true
,
deep
:
true
...
...
@@ -60,6 +67,7 @@ export default {
<
style
lang=
"scss"
scoped
>
#centreLeft1Chart
{
margin-left
:
-20px
;
margin-bottom
:
10px
;
margin-left
:
60px
;
}
</
style
>
...
...
src/components/Echart/Rose/index.vue
View file @
73357b5
<
template
>
<div>
<Chart
:cdata=
"cdata"
/>
<el-carousel
height=
"40px"
indicator-position=
"none"
>
<el-carousel-item
v-for=
"item in 4"
:key=
"item"
>
<div
class=
"rotograph"
>
佛坪县
</div>
</el-carousel-item>
</el-carousel>
</div>
</
template
>
...
...
@@ -29,6 +24,7 @@ export default {
},
methods
:
{
// 获取登记业务量玫瑰图数据
async
getdjywltotal
()
{
try
{
let
p
=
{
...
...
@@ -38,14 +34,14 @@ export default {
};
let
res
=
await
work
.
getdjywltotal
(
p
);
console
.
log
(
"res"
,
res
);
res
.
result
.
filter
((
item
)
=>
{
// 遍历修改数组键,作为echars图表的参数
res
.
result
.
map
((
item
)
=>
{
return
(
this
.
cdata
.
seriesData
.
push
({
"name"
:
item
.
AREACODE
,
"value"
:
item
.
ywtotal
})
)
});
console
.
log
(
"this.cdata.seriesData"
,
this
.
cdata
.
seriesData
);
}
catch
(
error
)
{
this
.
$refs
.
msg
.
messageShow
(
);
console
.
log
(
error
);
}
...
...
@@ -55,16 +51,4 @@ export default {
</
script
>
<
style
lang=
"scss"
scoped
>
.rotograph
{
margin
:
auto
;
width
:
200px
;
height
:
30px
;
background-color
:
rgb
(
6
,
121
,
167
);
font-size
:
20px
;
line-height
:
30px
;
text-align
:
center
;
border-radius
:
6px
;
font-weight
:
600
;
color
:
#02d9fd
;
}
</
style
>
...
...
src/utils/operation copy.js
0 → 100644
View file @
73357b5
import
{
Message
}
from
"element-ui"
;
export
function
removeTreeListItem
(
treeList
,
dictId
,
idName
=
'bsmDict'
)
{
if
(
!
treeList
||
!
treeList
.
length
)
{
return
}
for
(
let
i
=
0
;
i
<
treeList
.
length
;
i
++
)
{
if
(
treeList
[
i
][
idName
]
===
dictId
)
{
treeList
.
splice
(
i
,
1
);
break
;
}
removeTreeListItem
(
treeList
[
i
].
children
,
dictId
)
}
}
// 创造id
export
function
getUuid
(
len
,
radix
)
{
var
chars
=
"0123456789abcdefghijklmnopqrstuvwxyz"
.
split
(
""
);
var
uuid
=
[],
i
;
radix
=
radix
||
chars
.
length
;
if
(
len
)
{
for
(
i
=
0
;
i
<
len
;
i
++
)
uuid
[
i
]
=
chars
[
0
|
(
Math
.
random
()
*
radix
)];
}
else
{
var
r
;
uuid
[
8
]
=
uuid
[
13
]
=
uuid
[
18
]
=
uuid
[
23
]
=
"-"
;
uuid
[
14
]
=
"4"
;
for
(
i
=
0
;
i
<
36
;
i
++
)
{
if
(
!
uuid
[
i
])
{
r
=
0
|
(
Math
.
random
()
*
16
);
uuid
[
i
]
=
chars
[
i
==
19
?
(
r
&
0x3
)
|
0x8
:
r
];
}
}
}
return
uuid
.
join
(
""
);
}
export
function
judgeSort
(
arr
)
{
if
(
arr
.
length
)
{
for
(
let
i
in
arr
)
{
arr
[
i
][
"isTop"
]
=
false
;
arr
[
i
][
"isBottom"
]
=
false
;
arr
[
i
]
==
arr
[
0
]
&&
(
arr
[
i
].
isTop
=
true
);
arr
[
i
]
==
arr
[
arr
.
length
-
1
]
&&
(
arr
[
i
].
isBottom
=
true
);
arr
[
i
].
children
&&
arr
[
i
].
children
.
length
&&
judgeSort
(
arr
[
i
].
children
)
}
}
return
arr
}
// 上下移动
export
function
realMove
(
bsmDict
,
operate
,
data
)
{
function
changeSort
(
arr
,
bsmDict
)
{
if
(
arr
.
length
)
{
let
flag
=
false
;
for
(
let
i
in
arr
)
{
if
(
arr
[
i
].
bsmDict
==
bsmDict
)
{
if
(
operate
===
"UP"
)
{
arr
[
i
]
=
arr
.
splice
(
i
-
1
,
1
,
arr
[
i
])[
0
];
}
else
if
(
operate
===
"DOWN"
)
{
let
temp
=
arr
.
splice
(
i
-
0
+
1
,
1
,
arr
[
i
])
arr
[
i
]
=
temp
[
0
];
}
flag
=
true
;
break
;
}
if
(
!
flag
&&
arr
[
i
].
children
&&
arr
[
i
].
children
.
length
)
{
arr
[
i
].
children
=
changeSort
(
arr
[
i
].
children
,
bsmDict
);
}
}
}
return
arr
;
}
data
=
judgeSort
(
changeSort
(
data
,
bsmDict
));
}
// 获取所有父节点
export
function
findParents
(
treeData
,
bsmDict
)
{
if
(
treeData
.
length
==
0
)
return
for
(
let
i
=
0
;
i
<
treeData
.
length
;
i
++
)
{
if
(
treeData
[
i
].
bsmDict
==
bsmDict
)
{
return
[]
}
else
{
if
(
treeData
[
i
].
children
)
{
let
res
=
findParents
(
treeData
[
i
].
children
,
bsmDict
)
if
(
res
!==
undefined
)
{
return
res
.
concat
(
treeData
[
i
].
bsmDict
)
}
}
}
}
}
// 上移下移
export
function
upward
(
index
,
data
)
{
if
(
index
>
0
)
{
let
upData
=
data
[
index
-
1
];
data
.
splice
(
index
-
1
,
1
);
data
.
splice
(
index
,
0
,
upData
);
}
else
{
Message
({
message
:
'已经是第一条,上移失败'
});
}
}
export
function
down
(
index
,
data
)
{
if
((
index
+
1
)
==
data
.
length
)
{
Message
({
message
:
'已经是最后一条,下移失败'
});
}
else
{
let
downData
=
data
[
index
+
1
];
data
.
splice
(
index
+
1
,
1
);
data
.
splice
(
index
,
0
,
downData
);
}
}
src/utils/operation.js
View file @
73357b5
src/views/dataView/leftcard.vue
View file @
73357b5
...
...
@@ -87,21 +87,24 @@ export default {
return
new
Promise
(
async
(
resolve
)
=>
{
try
{
let
p
=
{
DJLX
:
"
A21
"
,
QLLX
:
"
A8
"
,
XZQDM
:
"
A20
"
,
DJLX
:
""
,
QLLX
:
""
,
XZQDM
:
""
,
};
let
res
=
await
work
.
getsthjqxjrtotal
(
p
);
this
.
stjrl
=
Number
(
res
.
result
.
sum
)
this
.
qxjrl
=
Number
(
res
.
result
.
sum
)
console
.
log
(
"res"
,
res
);
this
.
stjrl
=
res
.
result
.
sum
this
.
qxjrl
=
res
.
result
.
sum
this
.
qxerrer
=
Number
(
res
.
result
.
qxjrerrer
)
this
.
sterrer
=
Number
(
res
.
result
.
sthjerrer
)
if
(
res
.
result
.
sum
==
"0"
){
this
.
qxcgl
=
"100%"
this
.
stcgl
=
"100%"
}
else
{
this
.
qxcgl
=
Number
(
res
.
result
.
qxjrsuccess
)
/
this
.
qxjrl
*
100
+
"%"
this
.
stcgl
=
Number
(
res
.
result
.
sthjsuccess
)
/
Number
(
res
.
result
.
sum
)
*
100
+
"%"
let
qxcglnum
=
Number
(
res
.
result
.
qxjrsuccess
)
/
this
.
qxjrl
*
100
let
stcgl
=
Number
(
res
.
result
.
sthjsuccess
)
/
this
.
qxjrl
*
100
this
.
qxcgl
=
qxcglnum
.
toFixed
(
2
)
+
"%"
;
this
.
stcgl
=
stcgl
.
toFixed
(
2
)
+
"%"
;
}
}
catch
(
error
)
{
...
...
src/views/dataView/rightcard.vue
View file @
73357b5
<
template
>
<div
class=
"rightcard"
>
<div
class=
"card1 cardCon d-center"
>
<div
class=
"cardhead"
>
房屋情况统计表
</div>
<div
class=
"cardhead"
>
新建商品房登记
</div>
<div
class=
"cardcontent"
style=
"margin-top: 70px"
>
<dv-scroll-board
:config=
"config"
class=
"board"
/>
</div>
...
...
src/views/system/menus/authorizationdiglog.vue
0 → 100644
View file @
73357b5
<
template
>
<Dialog
:title=
"title"
class=
"tableClass"
:show
.
sync=
"visible"
:width=
"'715px'"
@
close=
"close()"
>
<template
slot=
"content"
>
<lb-table
ref=
"multipleTable"
:pagination=
"false"
:column=
"tableData.column"
:data=
"tableData.data"
@
selection-change=
"handleSelectionChange"
>
</lb-table>
</
template
>
<
template
slot=
"footer"
>
<el-button
type=
"primary"
class=
"save"
@
click=
"handleSaveMember()"
>
保存
</el-button
>
<el-button
class=
"cancel-button"
@
click=
"close()"
>
取消
</el-button>
</
template
>
</Dialog>
</template>
<
script
>
import
Dialog
from
"@/components/Dialog/"
;
export
default
{
name
:
""
,
components
:
{
Dialog
},
props
:
{},
data
()
{
return
{
title
:
"人员配置"
,
visible
:
false
,
tableData
:
{
column
:
[
{
type
:
'selection'
},
{
prop
:
'name'
,
label
:
'角色名称'
},
{
prop
:
'type'
,
label
:
'角色类型'
},
{
prop
:
'departmentName'
,
label
:
'角色描述'
},
],
data
:
[
{
id
:
"3127e455-43ba-45ff-9326-0e02ef89485e"
,
createdAt
:
null
,
updatedAt
:
"2022-08-04T03:38:27.626+0000"
,
createdBy
:
null
,
updatedBy
:
"3127e455-43ba-45ff-9326-0e02ef89485e"
,
sort
:
1
,
name
:
"超级管理员"
,
loginName
:
"admin"
,
password
:
"05eb15777e8fd1d61c840472e7267f61d432f63340d86b59"
,
passwordSalt
:
"5178114777136485"
,
email
:
null
,
lastLoginTime
:
null
,
mobilePhone
:
"18291003568"
,
status
:
"ACTIVE"
,
passwordChangeTime
:
"2021-12-10T08:01:01.569+0000"
,
idCard
:
"612725202111021521"
,
departmentId
:
"2eae5304-544f-4f5b-b354-8f5d47433c9b"
,
organizationId
:
"0bca67ae-1d9e-4b41-b057-f165586d24aa"
,
sex
:
"0"
,
isDuty
:
true
,
type
:
""
,
code
:
"123324"
,
jobLevel
:
null
,
telephone
:
"028-87720898"
,
address
:
"办公地点修改测试"
,
isLocked
:
false
,
departmentName
:
"研发部"
,
_X_ROW_KEY
:
"row_276"
,
},
{
name
:
'数据管理员'
,
type
:
"1"
,
},
{
name
:
'数据管理员2'
,
type
:
"d"
,
}
]
},
multipleSelection
:
[]
}
},
computed
:
{},
watch
:
{},
created
()
{},
mounted
()
{},
methods
:
{
authorization
()
{
this
.
visible
=
true
;
},
close
()
{
// this.resetForm()
this
.
visible
=
false
;
},
// 保存事件
handleSaveMember
()
{
// if (this.memberList.length === 0) {
// this.$message.warning("请添加待选人员");
// return false;
// }
// const idList = this.memberList.map(item => item.id)
// updateUser(this.roleId, idList).then(res => {
// if (res.status === 1) {
// this.$message.success({ message: '保存成功', showClose: true })
// this.showMemberConfigDialog = false
// this.$emit('setUsers', this.roleId)
// this.resetMemberConfig()
// } else this.$message.error({ message: res.message, showClose: true })
// })
},
handleSelectionChange
(
val
)
{
console
.
log
(
"vadddl"
,
val
);
this
.
multipleSelection
=
val
}
}
};
</
script
>
<
style
scoped
lang=
"scss"
>
/
deep
/
.el-dialog__header
{
text-align
:
center
;
margin-bottom
:
10px
;
.el-dialog__title{
color
:
white
;
}
}
</
style
>
src/views/system/menus/edit-dialog.vue
View file @
73357b5
...
...
@@ -204,22 +204,14 @@ export default {
// this.form.jumpMode = 1
},
edit
(
record
)
{
// this.type = 1
// // 若有id为编辑
// if (record.id) {
// this.$nextTick(() => {
// this.form = Object.assign({}, record)
// this.getParentMenuList(this.productId)
// })
// }
this
.
visible
=
true
;
},
addChild
(
record
)
{
// 若有id为编辑
if
(
record
.
id
)
{
this
.
$nextTick
(()
=>
{
this
.
form
=
Object
.
assign
({},
record
)
// this.getParentMenuList(this.productId)
})
}
this
.
visible
=
true
;
// this.type = 2
// this.form.jumpMode = 1
// this.form.parentId = record.id
},
handleChange
(
value
)
{
// this.form.parentId = value
...
...
@@ -289,12 +281,16 @@ export default {
};
</
script
>
<
style
scoped
lang=
"scss"
>
.el-form
{
.el-input
{
.el-input__icon
{
font-size
:
14px
;
//
color
:
#3AA3F8
!important
;
}
/
deep
/
.el-input__inner
{
background
:
#07388B
;
border-radius
:
2px
;
border
:
1px
solid
#6BC1FC
;
}
/
deep
/
.el-textarea__inner
{
background
:
#07388B
;
color
:
#fff
;
}
/
deep
/
.el-form-item__label
{
color
:
#fff
;
}
</
style
>
...
...
src/views/system/menus/index.vue
View file @
73357b5
...
...
@@ -12,7 +12,7 @@
<div
class=
"from-clues-content"
>
<lb-table
:column=
"tableData.columns"
:data=
"tabledata
11
"
:data=
"tabledata"
row-key=
"id"
default-expand-all
:tree-props=
"
{ children: 'children', hasChildren: 'hasChildren' }"
...
...
@@ -20,27 +20,30 @@
</lb-table>
</div>
<edit-dialog
ref=
"dialogForm"
/>
<authorizationdiglog
ref=
"rolesForm"
/>
</div>
</
template
>
<
script
>
// 定时任务
import
data
from
"./data"
;
import
EditDialog
from
"./edit-dialog.vue"
;
import
authorizationdiglog
from
"./authorizationdiglog.vue"
;
export
default
{
name
:
"menus"
,
components
:
{
EditDialog
,
authorizationdiglog
,
},
data
()
{
return
{
tabledata
11
:
[
tabledata
:
[
{
id
:
"c6221838-187b-4a7a-b173-b0543022f560"
,
createdAt
:
"2021-08-26T07:00:07.101+0000"
,
updatedAt
:
"2021-08-26T07:00:07.101+0000"
,
createdBy
:
"3127e455-43ba-45ff-9326-0e02ef89485e"
,
updatedBy
:
"3127e455-43ba-45ff-9326-0e02ef89485e"
,
sort
:
1
35
,
sort
:
35
,
name
:
"概览"
,
code
:
"GL"
,
description
:
null
,
...
...
@@ -293,14 +296,14 @@ export default {
// 修改
handleEdit
(
record
)
{
localStorage
.
setItem
(
"record"
,
JSON
.
stringify
(
record
));
this
.
$refs
.
dialogForm
.
edit
(
record
);
this
.
$refs
.
dialogForm
.
title
=
"修改"
;
},
// 授权
authorizationQuery
(
record
)
{
this
.
$refs
.
authorizationList
.
open
(
record
,
'menu'
)
this
.
$refs
.
authorizationList
.
emptyJudge
=
true
this
.
$refs
.
rolesForm
.
authorization
(
record
);
this
.
$refs
.
rolesForm
.
title
=
"授权查询"
;
},
// 删除
handleDelete
(
row
,
id
)
{
...
...
@@ -340,4 +343,7 @@ export default {
<
style
scoped
lang=
"scss"
>
@import
"~@/styles/mixin.scss"
;
@import
"~@/styles/public.scss"
;
/
deep
/
.el-table__expand-icon
{
color
:
#fff
;
}
</
style
>
...
...
src/views/system/roles/data/index.js
View file @
73357b5
...
...
@@ -6,17 +6,17 @@ class data extends filter {
columns
()
{
return
[
{
prop
:
"
job_
name"
,
prop
:
"name"
,
label
:
"角色名称"
,
width
:
330
},
{
prop
:
"
description
"
,
prop
:
"
type
"
,
label
:
"类别"
,
width
:
400
},
{
prop
:
"
cron_express
ion"
,
prop
:
"
descript
ion"
,
label
:
"备注"
}
]
...
...
src/views/system/roles/data/roles.js
0 → 100644
View file @
73357b5
import
filter
from
'@/utils/filter.js'
class
data
extends
filter
{
constructor
()
{
super
()
}
columns
()
{
return
[
{
prop
:
"name"
,
label
:
"角色名称"
,
width
:
330
},
{
prop
:
"type"
,
label
:
"类别"
,
width
:
400
},
{
prop
:
"address"
,
label
:
"备注"
}
]
}
}
export
default
new
data
()
src/views/system/roles/edit-dialog.vue
View file @
73357b5
...
...
@@ -171,4 +171,17 @@ export default {
}
}
</
script
>
<
style
scoped
lang=
"scss"
></
style
>
<
style
scoped
lang=
"scss"
>
/
deep
/
.el-input__inner
{
background
:
#07388B
;
border-radius
:
2px
;
border
:
1px
solid
#6BC1FC
;
}
/
deep
/
.el-textarea__inner
{
background
:
#07388B
;
color
:
#fff
;
}
/
deep
/
.el-form-item__label
{
color
:
#fff
;
}
</
style
>
...
...
src/views/system/roles/index.vue
View file @
73357b5
...
...
@@ -6,185 +6,252 @@
<el-col
:span=
"2"
class=
"btnColRight"
>
<btn
nativeType=
"cx"
@
click=
"handleAdd"
>
增加角色
</btn>
</el-col>
</el-row>
</el-form>
</div>
<div
class=
"from-clues-content"
>
<lb-table
:page-size=
"pageData.size"
:current-page
.
sync=
"pageData.current"
:total=
"pageData.total"
@
size-change=
"handleSizeChange"
@
p-current-change=
"handleCurrentChange"
:column=
"tableData.columns"
:data=
"tableData.data"
>
<lb-table
:page-size=
"pageData.size"
:current-page
.
sync=
"pageData.current"
:total=
"pageData.total"
@
size-change=
"handleSizeChange"
@
p-current-change=
"handleCurrentChange"
:column=
"tableData.columns"
:data=
"tableData.data"
>
</lb-table>
</div>
<EditDialog
ref=
"dialogForm
"
/>
<EditDialog
ref=
"addEditDialog
"
/>
<Roleslistdiglog
ref=
"rolesForm"
/>
</div>
</
template
>
<
script
>
// 定时任务
import
data
from
"./data"
import
sjsbTask
from
'@/api/sjsbTask.js'
import
tableMixin
from
'@/mixins/tableMixin.js'
import
data
from
"./data"
;
import
sjsbTask
from
"@/api/sjsbTask.js"
;
import
tableMixin
from
"@/mixins/tableMixin.js"
;
import
EditDialog
from
"./edit-dialog.vue"
;
import
Roleslistdiglog
from
"./roleslistdiglog.vue"
;
export
default
{
name
:
"menus"
,
mixins
:
[
tableMixin
],
components
:
{
EditDialog
,
Roleslistdiglog
EditDialog
,
Roleslistdiglog
,
},
data
()
{
data
()
{
return
{
taskData
:
null
,
form
:
{
job_name
:
''
,
currentPage
:
1
job_name
:
""
,
currentPage
:
1
,
},
title
:
''
,
// 当前所选角色id
roleId
:
""
,
title
:
""
,
queryParam
:
{},
selectType
:
'0'
,
queryName
:
''
,
organizationId
:
''
,
// 组织机构ID
departmentId
:
''
,
// 部门ID
selectType
:
"0"
,
queryName
:
""
,
organizationId
:
""
,
// 组织机构ID
departmentId
:
""
,
// 部门ID
departmentList
:
[],
// 部门列表
levelList
:
[],
// 职务级别
tableData
:
[],
sexList
:
[],
typeOptions
:
[
{
value
:
'0'
,
label
:
'姓名'
value
:
"0"
,
label
:
"姓名"
,
},
{
value
:
'1'
,
label
:
'工号'
value
:
"1"
,
label
:
"工号"
,
},
{
value
:
'2'
,
label
:
'部门'
value
:
"2"
,
label
:
"部门"
,
},
{
value
:
'3'
,
label
:
'机构'
}
value
:
"3"
,
label
:
"机构"
,
}
,
],
selectionList
:
[],
tableData
:
{
columns
:
[{
label
:
'序号'
,
type
:
'index'
,
width
:
'50'
,
columns
:
[
{
label
:
"序号"
,
type
:
"index"
,
width
:
"50"
,
index
:
this
.
indexMethod
,
}].
concat
(
data
.
columns
()).
concat
([
{
},
]
.
concat
(
data
.
columns
())
.
concat
([
{
label
:
"排序"
,
width
:
380
,
render
:
(
h
,
scope
)
=>
{
return
(
<
div
>
<
el
-
button
type
=
"text"
size
=
"mini"
icon
=
"el-icon-video-pause"
onClick
=
{()
=>
{
this
.
personnel
(
scope
.
row
);
}}
>
人员
<
/el-button
>
<
el
-
button
type
=
"text"
size
=
"mini"
icon
=
"el-icon-edit"
onClick
=
{()
=>
{
this
.
handleEdit
(
scope
.
row
);
}}
>
修改
<
/el-button
>
<
/div
>
);
},
},
])
.
concat
([
{
label
:
"操作"
,
width
:
380
,
render
:
(
h
,
scope
)
=>
{
return
(
<
div
>
<
el
-
button
type
=
"text"
size
=
"mini"
<
el
-
button
type
=
"text"
size
=
"mini"
icon
=
"el-icon-video-pause"
onClick
=
{()
=>
{
this
.
personnel
(
scope
.
row
)
}}
>
人员
onClick
=
{()
=>
{
this
.
personnel
(
scope
.
row
);
}}
>
人员
<
/el-button
>
<
el
-
button
type
=
"text"
size
=
"mini"
<
el
-
button
type
=
"text"
size
=
"mini"
icon
=
"el-icon-edit"
onClick
=
{()
=>
{
this
.
handleEdit
(
scope
.
row
)
}}
>
修改
onClick
=
{()
=>
{
this
.
handleEdit
(
scope
.
row
);
}}
>
修改
<
/el-button
>
<
el
-
button
type
=
"text"
size
=
"mini"
icon
=
"el-icon-delete"
style
=
"color:#F56C6C"
onClick
=
{()
=>
{
this
.
handleDel
(
scope
.
row
)
}}
>
删除
<
el
-
button
type
=
"text"
size
=
"mini"
icon
=
"el-icon-delete"
style
=
"color:#F56C6C"
onClick
=
{()
=>
{
this
.
handleDel
(
scope
.
row
);
}}
>
删除
<
/el-button
>
<
/div
>
);
},
},
]),
data
:
[]
data
:
[]
,
},
pageData
:
{
total
:
5
,
pageSize
:
15
,
current
:
1
,
},
}
};
},
created
()
{
this
.
featchData
();
},
methods
:
{
// 新增角色
handleAdd
()
{
// this.$refs.addEditDialog.menuType = this.menuType
// this.$refs.addEditDialog.roleId = value.id
// this.roleSort = value.sort ? value.sort : 0
// if (value.id) {
// this.$refs.addEditDialog.dialogForm.roleName = value.name
// this.$refs.addEditDialog.dialogForm.roleType = value.type
// this.$refs.addEditDialog.dialogForm.roleTextArea = value.description
// }
this
.
$refs
.
dialogForm
.
showAddEditDialog
=
true
// this.$refs.addEditDialog.dialogTitle = value.id ? '修改' : '新增'
this
.
$refs
.
addEditDialog
.
showAddEditDialog
=
true
;
this
.
$refs
.
addEditDialog
.
dialogTitle
=
"新增"
;
},
// 修改角色
handleEdit
(
row
)
{
// this.$refs.addEditDialog.menuType = this.menuType
// this.$refs.addEditDialog.roleId = row.id
// this.roleSort = row.sort ? row.sort : 0
// if (row.id) {
// this.$refs.addEditDialog.dialogForm.roleName = row.name
// this.$refs.addEditDialog.dialogForm.roleType = row.type
// this.$refs.addEditDialog.dialogForm.roleTextArea = row.description
// }
this
.
$refs
.
dialogForm
.
showAddEditDialog
=
true
// this.$refs.addEditDialog.dialogTitle = row.id ? '修改' : '新增'
},
featchData
()
{
this
.
$refs
.
addEditDialog
.
roleId
=
row
.
id
;
this
.
roleSort
=
row
.
sort
?
row
.
sort
:
0
;
if
(
row
.
id
)
{
this
.
$refs
.
addEditDialog
.
dialogForm
.
roleName
=
row
.
name
;
this
.
$refs
.
addEditDialog
.
dialogForm
.
roleType
=
row
.
type
;
this
.
$refs
.
addEditDialog
.
dialogForm
.
roleTextArea
=
row
.
description
;
}
this
.
$refs
.
addEditDialog
.
showAddEditDialog
=
true
;
this
.
$refs
.
addEditDialog
.
dialogTitle
=
"修改"
;
},
featchData
()
{
this
.
tableData
.
data
=
[
{
job_name
:
"人事部材料管理员"
,
description
:
"材料管理员"
,
cron_expression
:
"管理内部材料"
,
id
:
"2176e915-fdb4-414a-b8d6-6cf63171cffc"
,
createdAt
:
"2022-10-31T07:08:29.293+0000"
,
updatedAt
:
"2022-10-31T07:08:29.293+0000"
,
createdBy
:
"3127e455-43ba-45ff-9326-0e02ef89485e"
,
updatedBy
:
"3127e455-43ba-45ff-9326-0e02ef89485e"
,
sort
:
29
,
name
:
"人事部材料管理员"
,
type
:
"材料管理员"
,
category
:
2
,
description
:
"管理内部材料"
,
_X_ROW_KEY
:
"row_365"
,
},
]
];
},
personnel
(){
personnel
()
{
this
.
$refs
.
rolesForm
.
adds
();
//
this.$refs.rolesForm.title = "人员配置";
this
.
$refs
.
rolesForm
.
title
=
"人员配置"
;
},
handleDel
(
row
)
{
this
.
$confirm
(
'此操将进行删除操作, 是否继续?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
,
handleDel
(
row
)
{
this
.
$confirm
(
"此操将进行删除操作, 是否继续?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
,
})
.
then
(()
=>
{
sjsbTask
.
sjsbTaskRemove
(
row
.
id
)
sjsbTask
.
sjsbTaskRemove
(
row
.
id
)
.
then
((
res
)
=>
{
if
((
res
.
code
=
200
))
{
this
.
$message
({
type
:
'success'
,
type
:
"success"
,
message
:
res
.
message
,
})
this
.
featchData
()
})
;
this
.
featchData
()
;
}
})
.
catch
((
error
)
=>
{
this
.
$alert
(
error
,
'提示'
,
{
confirmButtonText
:
'确定'
,
type
:
'error'
})
})
this
.
$alert
(
error
,
"提示"
,
{
confirmButtonText
:
"确定"
,
type
:
"error"
,
})
;
})
;
})
.
catch
(()
=>
{
this
.
$message
({
type
:
'info'
,
message
:
'已取消'
,
})
})
}
}
}
type
:
"info"
,
message
:
"已取消"
,
})
;
})
;
}
,
}
,
}
;
</
script
>
<
style
scoped
lang=
"scss"
>
@import
"~@/styles/mixin.scss"
;
...
...
src/views/system/roles/roleslistdiglog.vue
View file @
73357b5
<
template
>
<Dialog
:title=
"title"
:show
.
sync=
"visible"
:width=
"'715px'"
@
close=
"close()"
>
<template
slot=
"content"
>
<vxe-table
show-overflow
:data=
"memberList"
border
class=
"header-bg-type1"
auto-resize
:checkbox-config=
"
{ highlight: true, range: true }"
highlight-hover-row
max-height="500px"
:empty-render="{ name: 'NotData' }"
<Dialog
:title=
"title"
class=
"tableClass"
:show
.
sync=
"visible"
:width=
"'715px'"
@
close=
"close()"
>
<template
#
empty
>
<table-empty
/>
</
template
>
<vxe-table-column
type=
"checkbox"
width=
"60"
align=
"left"
fixed=
"left"
/>
<vxe-table-column
field=
"code"
title=
"工号"
fixed=
"left"
min-width=
"100"
show-header-overflow=
"tooltip"
show-overflow=
"tooltip"
align=
"left"
/>
<vxe-table-column
title=
"姓名"
fixed=
"left"
show-header-overflow=
"tooltip"
show-overflow=
"tooltip"
<template
slot=
"content"
>
<lb-table
ref=
"multipleTable"
:pagination=
"false"
:column=
"tableData.column"
:data=
"tableData.data"
@
selection-change=
"handleSelectionChange"
>
<
template
slot-scope=
"scope"
>
<svg-icon
:icon-class=
"
scope.row.sex === '0'
? 'male'
: scope.row.sex === '1'
? 'female'
: 'secrecy'
"
/>
{{
scope
.
row
.
name
}}
</
template
>
</vxe-table-column>
<vxe-table-column
field=
"loginName"
title=
"用户名"
fixed=
"left"
show-header-overflow=
"tooltip"
show-overflow=
"tooltip"
/>
<vxe-table-column
field=
"departmentName"
title=
"部门"
show-header-overflow=
"tooltip"
show-overflow=
"tooltip"
/>
</vxe-table>
</lb-table>
</
template
>
<
template
slot=
"footer"
>
<el-button
type=
"primary"
class=
"save"
@
click=
"
submitForm(1
)"
<el-button
type=
"primary"
class=
"save"
@
click=
"
handleSaveMember(
)"
>
保存
</el-button
>
<el-button
class=
"cancel-button"
@
click=
"close()"
>
取消
</el-button>
...
...
@@ -81,10 +33,46 @@ export default {
props
:
{},
data
()
{
return
{
form
:
{
sex
:
"0"
,
title
:
"人员配置"
,
visible
:
false
,
hasSelectList
:
[
{
name
:
"管理员"
,
loginName
:
"admin1"
,
departmentName
:
"研发部"
,
jobLevel
:
null
,
},
{
name
:
"测试账号"
,
loginName
:
"admin2"
,
departmentName
:
"研发部"
,
jobLevel
:
null
,
},
],
//已经选择的id组成的数组
tableData
:
{
column
:
[
{
type
:
"selection"
,
},
{
prop
:
"name"
,
label
:
"姓名"
,
},
{
prop
:
"loginName"
,
label
:
"用户名"
,
},
{
prop
:
"departmentName"
,
label
:
"部门"
,
},
{
prop
:
"jobLevel"
,
label
:
"职务"
,
},
memberList
:
[
],
data
:
[
{
id
:
"3127e455-43ba-45ff-9326-0e02ef89485e"
,
createdAt
:
null
,
...
...
@@ -114,24 +102,23 @@ export default {
departmentName
:
"研发部"
,
_X_ROW_KEY
:
"row_276"
,
},
{
name
:
"管理员"
,
loginName
:
"admin1"
,
departmentName
:
"研发部"
,
jobLevel
:
null
,
selectStatus
:
0
,
},
{
name
:
"测试账号"
,
loginName
:
"admin2"
,
departmentName
:
"研发部"
,
jobLevel
:
null
,
selectStatus
:
0
,
},
],
title
:
""
,
type
:
""
,
visible
:
false
,
showLoginName
:
false
,
options
:
[],
setProps
:
{
value
:
"id"
,
label
:
"name"
,
children
:
"children"
,
expandTrigger
:
"hover"
,
checkStrictly
:
true
,
// 可取消关联,选择任意一级选项
emitPath
:
false
,
},
sexList
:
[],
levelList
:
[],
organizationId
:
""
,
// 组织机构ID
departmentId
:
""
,
// 部门ID
},
multipleSelection
:
[],
};
},
computed
:
{},
...
...
@@ -141,33 +128,49 @@ export default {
methods
:
{
adds
()
{
this
.
visible
=
true
;
this
.
tableData
.
data
.
forEach
((
item
,
index
)
=>
{
if
(
item
.
selectStatus
===
0
)
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
multipleTable
.
toggleRowSelection
(
this
.
tableData
.
data
[
index
],
true
);
});
}
});
},
edit
(
record
)
{
this
.
visible
=
true
;
},
handleChange
(
value
)
{
this
.
form
.
departmentId
=
value
;
},
close
()
{
// this.resetForm()
this
.
visible
=
false
;
},
// 保存事件
handleSaveMember
()
{
// if (this.memberList.length === 0) {
// this.$message.warning("请添加待选人员");
// return false;
// }
// const idList = this.memberList.map(item => item.id)
// updateUser(this.roleId, idList).then(res => {
// if (res.status === 1) {
// this.$message.success({ message: '保存成功', showClose: true })
// this.showMemberConfigDialog = false
// this.$emit('setUsers', this.roleId)
// this.resetMemberConfig()
// } else this.$message.error({ message: res.message, showClose: true })
// })
},
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
;
},
},
};
</
script
>
<
style
scoped
lang=
"scss"
>
.el-form
{
.el-form-item__content
{
.el-radio
{
margin-right
:
6px
;
}
}
.el-checkbox
{
line-height
:
40px
;
}
.col-pd0
{
padding
:
0
!important
;
}
/
deep
/
.el-dialog__header
{
text-align
:
center
;
margin-bottom
:
10px
;
.el-dialog__title{
color
:
white
;
}
}
</
style
>
...
...
src/views/system/users/edit-dialog.vue
View file @
73357b5
...
...
@@ -222,17 +222,16 @@ export default {
};
</
script
>
<
style
scoped
lang=
"scss"
>
.el-form
{
.el-form-item__content
{
.el-radio
{
margin-right
:
6px
;
}
}
.el-checkbox
{
line-height
:
40px
;
}
.col-pd0
{
padding
:
0
!important
;
/
deep
/
.el-input__inner
{
background
:
#07388B
;
border-radius
:
2px
;
border
:
1px
solid
#6BC1FC
;
}
/
deep
/
.el-textarea__inner
{
background
:
#07388B
;
color
:
#fff
;
}
/
deep
/
.el-form-item__label
{
color
:
#fff
;
}
</
style
>
...
...
src/views/system/users/index.vue
View file @
73357b5
...
...
@@ -7,10 +7,6 @@
<el-col
:span=
"2"
class=
"btnColRight"
>
<el-form-item>
<btn
nativeType=
"cx"
@
click=
"handleAdd"
>
添加人员
</btn>
<!--
<btn
nativeType=
"cx"
@
click=
"resetPassword(selectionRows)"
>
重置密码
</btn
>
<btn
nativeType=
"cx"
@
click=
"resetSearch()"
>
重置
</btn>
-->
</el-form-item>
</el-col>
</el-row>
...
...
@@ -33,6 +29,13 @@
</
template
>
<
script
>
// 定时任务
import
{
getUuid
,
judgeSort
,
realMove
,
findParents
,
removeTreeListItem
,
}
from
"@/utils/operation"
;
import
data
from
"./data"
;
import
sjsbTask
from
"@/api/sjsbTask.js"
;
import
tableMixin
from
"@/mixins/tableMixin.js"
;
...
...
@@ -94,7 +97,28 @@ export default {
label
:
"排序"
,
width
:
380
,
render
:
(
h
,
scope
)
=>
{
return
<
div
><
/div>
;
return
(
<
div
>
<
el
-
button
type
=
"text"
disabled
=
{
scope
.
row
.
isTop
}
onClick
=
{()
=>
{
this
.
moveUpward
(
scope
.
$index
,
scope
.
row
);
}}
>
上移
<
/el-button
>
<
el
-
button
type
=
"text"
disabled
=
{
scope
.
row
.
isBottom
}
onClick
=
{()
=>
{
this
.
moveDown
(
scope
.
$index
,
scope
.
row
);
}}
>
下移
<
/el-button
>
<
/div
>
);
},
},
{
...
...
@@ -213,7 +237,7 @@ export default {
address
:
null
,
_X_ROW_KEY
:
"row_43"
,
switch
:
true
,
}
}
,
];
},
// 重置搜索
...
...
@@ -256,6 +280,21 @@ export default {
})
.
catch
(()
=>
{});
},
// 上移下移
moveUpward
(
index
,
row
)
{
console
.
log
(
"index"
,
index
);
console
.
log
(
"row"
,
row
);
realMove
(
row
.
bsmDict
,
"UP"
,
this
.
tableData
);
this
.
key
++
;
let
id
=
findParents
(
this
.
tableData
,
row
.
bsmDict
);
this
.
keyList
=
id
;
},
moveDown
(
index
,
row
)
{
realMove
(
row
.
bsmDict
,
"DOWN"
,
this
.
tableData
);
this
.
key
++
;
let
id
=
findParents
(
this
.
tableData
,
row
.
bsmDict
);
this
.
keyList
=
id
;
},
// 重置用户密码
resetPassword
(
data
)
{
const
ids
=
[];
...
...
src/views/zxrz/components/detailDialog.vue
View file @
73357b5
<
template
>
<!-- 编辑 -->
<dialogBox
title=
"操作内容"
@
closeDialog=
"closeDialog"
@
submitForm=
"handleSubmit"
v-model=
"myValue"
>
<p>
2
222222222222222222222
</p>
<p>
2
</p>
</dialogBox>
</
template
>
...
...
Please
register
or
sign in
to post a comment