Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
attendance-performance-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
attendance-performance-platform
Commits
8e749a65
Commit
8e749a65
authored
Jul 11, 2023
by
姬鋆屾
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
推
parent
14ba689a
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
244 additions
and
134 deletions
+244
-134
attendance-performance-manager-ui/admin/src/components/tools/TableButtons.vue
...ce-manager-ui/admin/src/components/tools/TableButtons.vue
+11
-0
attendance-performance-manager-ui/admin/src/views/perform/rules/attend/components/AttendIndex.vue
...src/views/perform/rules/attend/components/AttendIndex.vue
+1
-0
attendance-performance-manager-ui/admin/src/views/perform/staff/conf/deptdrawershow.vue
...-ui/admin/src/views/perform/staff/conf/deptdrawershow.vue
+222
-132
attendance-performance-manager-ui/admin/src/views/perform/staff/conf/list.vue
...ce-manager-ui/admin/src/views/perform/staff/conf/list.vue
+10
-2
No files found.
attendance-performance-manager-ui/admin/src/components/tools/TableButtons.vue
View file @
8e749a65
...
@@ -20,6 +20,13 @@
...
@@ -20,6 +20,13 @@
>
查看
</el-button
>
查看
</el-button
>
>
<span>
</span>
<span>
</span>
<el-switch
v-if=
"switchBtn"
@
change=
"$emit('view', row)"
title=
"核查"
v-model=
"row.check"
></el-switch>
<span>
</span>
<el-button
<el-button
v-if=
"reCheck"
v-if=
"reCheck"
type=
"text"
type=
"text"
...
@@ -63,6 +70,10 @@ export default {
...
@@ -63,6 +70,10 @@ export default {
type
:
Boolean
,
type
:
Boolean
,
default
:
false
,
default
:
false
,
},
},
switchBtn
:
{
type
:
Boolean
,
default
:
false
,
},
noView
:
{
noView
:
{
type
:
Boolean
,
type
:
Boolean
,
default
:
false
,
default
:
false
,
...
...
attendance-performance-manager-ui/admin/src/views/perform/rules/attend/components/AttendIndex.vue
View file @
8e749a65
...
@@ -218,6 +218,7 @@ export default {
...
@@ -218,6 +218,7 @@ export default {
async
getKaoQin
(
categoryId
)
{
async
getKaoQin
(
categoryId
)
{
await
this
.
$post
(
"
/perform/rules/list
"
,
{
await
this
.
$post
(
"
/perform/rules/list
"
,
{
categoryId
,
categoryId
,
type
:
this
.
activeName
,
page
:
this
.
query
.
page
,
page
:
this
.
query
.
page
,
orderColList
:
this
.
typeArr
,
orderColList
:
this
.
typeArr
,
name
:
this
.
searchValue
,
name
:
this
.
searchValue
,
...
...
attendance-performance-manager-ui/admin/src/views/perform/staff/conf/deptdrawershow.vue
View file @
8e749a65
...
@@ -15,16 +15,19 @@
...
@@ -15,16 +15,19 @@
>
>
<el-row>
<el-row>
<el-row
style=
"width: 100%;margin-bottom: 10px;"
>
<el-row
style=
"width: 100%;margin-bottom: 10px;"
>
<el-col
style=
"width: 100%;"
:span=
"24"
>
<el-form-item
label=
"选择部门"
>
<Field
<el-col
:span=
"23"
>
label=
"选择部门:"
<el-select
v-model=
"form.deptId"
style=
"width: 100%;"
>
prop=
"deptId"
<el-option
v-model=
"form.deptId"
v-for=
"item in deptArr"
placeholder=
"选择部门"
:key=
"item.id"
:enumData=
"deptGroup"
:label=
"item.deptName"
type=
"select"
:value=
"item.id"
/>
>
</el-option
></el-select>
</el-col>
</el-col>
</el-form-item>
</el-row>
</el-row>
<el-row
style=
"width: 96%;margin: 0 auto;"
>
<el-row
style=
"width: 96%;margin: 0 auto;"
>
<el-tabs
v-model=
"activeName"
type=
"card"
@
tab-click=
"handleClick"
>
<el-tabs
v-model=
"activeName"
type=
"card"
@
tab-click=
"handleClick"
>
...
@@ -35,12 +38,16 @@
...
@@ -35,12 +38,16 @@
请选择自动考核指标:
请选择自动考核指标:
</div>
</div>
<div
class=
"search_box"
>
<div
class=
"search_box"
>
<el-select
v-model=
"type"
placeholder=
"请选择分类"
>
<el-select
v-model=
"type"
placeholder=
"请选择分类"
@
change=
"typeSelect"
>
<el-option
<el-option
v-for=
"item in
options
"
v-for=
"item in
dataArr
"
:key=
"item.
value
"
:key=
"item.
id
"
:label=
"item.
label
"
:label=
"item.
name
"
:value=
"item.
value
"
:value=
"item.
id
"
style=
"width: 200px;"
style=
"width: 200px;"
>
>
</el-option>
</el-option>
...
@@ -54,29 +61,14 @@
...
@@ -54,29 +61,14 @@
</div>
</div>
</div>
</div>
<div
class=
"mid_table"
>
<div
class=
"mid_table"
>
<el-table
:data=
"tableData"
border
style=
"width: 100%"
>
<LayoutTable
<el-table-column
type=
"index"
label=
"序号"
width=
"50"
>
:data=
"tableData"
</el-table-column>
notAdd
<el-table-column
notDel
prop=
"name"
notSearch
label=
"考核内容简称"
:config=
"tableConfig"
width=
"180"
>
</el-table-column>
<el-table-column
prop=
"simple"
label=
"评分标准"
>
</el-table-column>
<el-table-column
prop=
"core"
label=
"扣分分值"
>
</el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"120"
>
<template
slot-scope=
"scope"
>
<el-switch
v-model=
"scope.row.check"
@
change=
"handleChange(scope.row)"
>
>
</el-switch>
</LayoutTable>
</
template
>
</el-table-column>
</el-table>
</div>
</div>
</div>
</div>
</el-tab-pane>
</el-tab-pane>
...
@@ -87,12 +79,16 @@
...
@@ -87,12 +79,16 @@
请选择自动考核指标:
请选择自动考核指标:
</div>
</div>
<div
class=
"search_box"
>
<div
class=
"search_box"
>
<el-select
v-model=
"type"
placeholder=
"请选择分类"
>
<el-select
v-model=
"type"
placeholder=
"请选择分类"
@
change=
"typeSelect"
>
<el-option
<el-option
v-for=
"item in
options
"
v-for=
"item in
dataArr
"
:key=
"item.
value
"
:key=
"item.
id
"
:label=
"item.
label
"
:label=
"item.
name
"
:value=
"item.
value
"
:value=
"item.
id
"
style=
"width: 200px;"
style=
"width: 200px;"
>
>
</el-option>
</el-option>
...
@@ -106,29 +102,14 @@
...
@@ -106,29 +102,14 @@
</div>
</div>
</div>
</div>
<div
class=
"mid_table"
>
<div
class=
"mid_table"
>
<el-table
:data=
"tableData"
border
style=
"width: 100%"
>
<LayoutTable
<el-table-column
type=
"index"
label=
"序号"
width=
"50"
>
:data=
"tableData"
</el-table-column>
notAdd
<el-table-column
notDel
prop=
"name"
notSearch
label=
"考核内容简称"
:config=
"tableConfig"
width=
"180"
>
</el-table-column>
<el-table-column
prop=
"simple"
label=
"评分标准"
>
</el-table-column>
<el-table-column
prop=
"core"
label=
"扣分分值"
>
</el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"120"
>
<
template
slot-scope=
"scope"
>
<el-switch
v-model=
"scope.row.check"
@
change=
"handleChange(scope.row)"
>
>
</el-switch>
</LayoutTable>
</
template
>
</el-table-column>
</el-table>
</div>
</div>
</div>
</div>
</el-tab-pane>
</el-tab-pane>
...
@@ -139,12 +120,16 @@
...
@@ -139,12 +120,16 @@
请选择自动考核指标:
请选择自动考核指标:
</div>
</div>
<div
class=
"search_box"
>
<div
class=
"search_box"
>
<el-select
v-model=
"type"
placeholder=
"请选择分类"
>
<el-select
v-model=
"type"
placeholder=
"请选择分类"
@
change=
"typeSelect"
>
<el-option
<el-option
v-for=
"item in
options
"
v-for=
"item in
dataArr
"
:key=
"item.
value
"
:key=
"item.
id
"
:label=
"item.
label
"
:label=
"item.
name
"
:value=
"item.
value
"
:value=
"item.
id
"
style=
"width: 200px;"
style=
"width: 200px;"
>
>
</el-option>
</el-option>
...
@@ -158,34 +143,14 @@
...
@@ -158,34 +143,14 @@
</div>
</div>
</div>
</div>
<div
class=
"mid_table"
>
<div
class=
"mid_table"
>
<
el-t
able
<
LayoutT
able
:data=
"tableData"
:data=
"tableData"
border
notAdd
style=
"width: 100%"
notDel
height=
"520"
notSearch
:config=
"tableConfig"
>
>
<el-table-column
type=
"index"
label=
"序号"
width=
"50"
>
</LayoutTable>
</el-table-column>
<el-table-column
prop=
"name"
label=
"考核内容简称"
width=
"180"
>
</el-table-column>
<el-table-column
prop=
"simple"
label=
"评分标准"
>
</el-table-column>
<el-table-column
prop=
"core"
label=
"扣分分值"
>
</el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"120"
>
<
template
slot-scope=
"scope"
>
<el-switch
v-model=
"scope.row.check"
@
change=
"handleChange(scope.row)"
>
</el-switch>
</
template
>
</el-table-column>
</el-table>
</div>
</div>
</div>
</div>
</el-tab-pane>
</el-tab-pane>
...
@@ -196,12 +161,16 @@
...
@@ -196,12 +161,16 @@
请选择自动考核指标:
请选择自动考核指标:
</div>
</div>
<div
class=
"search_box"
>
<div
class=
"search_box"
>
<el-select
v-model=
"type"
placeholder=
"请选择分类"
>
<el-select
v-model=
"type"
placeholder=
"请选择分类"
@
change=
"typeSelect"
>
<el-option
<el-option
v-for=
"item in
options
"
v-for=
"item in
dataArr
"
:key=
"item.
value
"
:key=
"item.
id
"
:label=
"item.
label
"
:label=
"item.
name
"
:value=
"item.
value
"
:value=
"item.
id
"
style=
"width: 200px;"
style=
"width: 200px;"
>
>
</el-option>
</el-option>
...
@@ -215,29 +184,55 @@
...
@@ -215,29 +184,55 @@
</div>
</div>
</div>
</div>
<div
class=
"mid_table"
>
<div
class=
"mid_table"
>
<el-table
:data=
"tableData"
border
style=
"width: 100%"
>
<LayoutTable
<el-table-column
type=
"index"
label=
"序号"
width=
"50"
>
:data=
"tableData"
</el-table-column>
notAdd
<el-table-column
notDel
prop=
"name"
notSearch
label=
"考核内容简称"
:config=
"tableConfig"
width=
"180"
>
>
</el-table-column>
</LayoutTable>
<el-table-column
prop=
"simple"
label=
"评分标准"
>
</div>
</el-table-column>
</div>
<el-table-column
prop=
"core"
label=
"扣分分值"
>
</el-tab-pane>
</el-table-column>
<el-tab-pane
label=
"其他绩效指标"
name=
"5"
>
<el-table-column
fixed=
"right"
label=
"操作"
width=
"120"
>
<div
class=
"content"
>
<
template
slot-scope=
"scope"
>
<div
class=
"top"
>
<el-switch
<div>
v-model=
"scope.row.check"
请选择自动考核指标:
@
change=
"handleChange(scope.row)"
</div>
<div
class=
"search_box"
>
<el-select
v-model=
"type"
placeholder=
"请选择分类"
@
change=
"typeSelect"
>
<el-option
v-for=
"item in dataArr"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
style=
"width: 200px;"
>
</el-option>
</el-select>
<el-input
v-model=
"keywords"
placeholder=
"请输入评分标准关键字搜索"
style=
"width: 200px;margin: 0 10px;"
></el-input>
<el-button
type=
"primary"
>
搜索
</el-button>
</div>
</div>
<div
class=
"mid_table"
>
<LayoutTable
:data=
"tableData"
notAdd
notDel
notSearch
:config=
"tableConfig"
>
>
</el-switch>
</LayoutTable>
</
template
>
</el-table-column>
</el-table>
</div>
</div>
</div>
</div>
</el-tab-pane>
</el-tab-pane>
...
@@ -308,12 +303,23 @@
...
@@ -308,12 +303,23 @@
<
script
>
<
script
>
import
form
from
"
@/assets/mixins/formdialog
"
;
import
form
from
"
@/assets/mixins/formdialog
"
;
import
table
from
"
@/assets/mixins/table
"
;
export
default
{
export
default
{
name
:
"
PerformDeptConfDetail
"
,
name
:
"
PerformDeptConfDetail
"
,
mixins
:
[
form
],
mixins
:
[
form
,
table
],
components
:
{},
components
:
{},
created
()
{
created
()
{
this
.
changePath
(
"
perform/dept/conf
"
);
this
.
changePath
(
"
perform/dept/conf
"
);
// 获取部门列表
this
.
$post
(
"
/dept/list
"
,
{
page
:
1
,
size
:
-
1
}).
then
((
res
)
=>
{
if
(
res
.
code
==
1
)
{
this
.
deptArr
=
res
.
data
.
data
;
}
else
{
this
.
deptArr
=
[];
}
});
// this.getKaoQin();
},
},
data
()
{
data
()
{
return
{
return
{
...
@@ -350,28 +356,112 @@ export default {
...
@@ -350,28 +356,112 @@ export default {
],
],
type
:
""
,
type
:
""
,
keywords
:
""
,
keywords
:
""
,
deptArr
:
[],
config
:
{
isshowTabPane
:
false
,
search
:
[],
columns
:
[
{
type
:
"
index
"
,
label
:
"
序号
"
,
width
:
50
},
{
label
:
"
考核内容简称
"
,
prop
:
"
name
"
},
{
label
:
"
评分标准
"
,
prop
:
"
content
"
},
{
label
:
"
分值
"
,
prop
:
"
score
"
},
{
label
:
"
操作
"
,
width
:
100
,
formatter
:
(
row
)
=>
{
return
(
<
table
-
buttons
noAdd
noView
noEdit
noDel
switchBtn
row
=
{
row
}
onEdit
=
{
this
.
eddRules
}
onDel
=
{
this
.
toDelRules
}
onView
=
{
this
.
switchChange
}
/
>
);
},
},
],
},
cateObj
:
{},
dataArr
:
[],
};
};
},
},
// watch: {
// query: {
// deep,
// handler(val) {
// console.log(val);
// },
// },
// },
methods
:
{
methods
:
{
handleChange
(
val
)
{
typeSelect
(
val
)
{
console
.
log
(
val
);
this
.
getKaoQin
(
val
);
},
async
getData
()
{
await
this
.
$post
(
"
/perform/rules/category/list
"
,
{
type
:
this
.
activeName
,
}).
then
((
res
)
=>
{
this
.
getKaoQin
(
this
.
cateObj
?
this
.
cateObj
.
id
:
""
);
if
(
res
.
code
==
1
)
{
this
.
dataArr
=
res
.
data
.
data
;
}
else
{
this
.
dataArr
=
[];
}
});
},
async
getKaoQin
(
categoryId
)
{
await
this
.
$post
(
"
/perform/rules/list
"
,
{
categoryId
,
type
:
this
.
activeName
,
page
:
this
.
query
.
page
,
orderColList
:
this
.
typeArr
,
name
:
this
.
searchValue
,
}).
then
((
res
)
=>
{
if
(
res
.
code
==
1
)
{
this
.
tableData
=
res
.
data
;
this
.
$forceUpdate
(
this
.
tableData
);
}
else
{
this
.
tableData
=
{};
}
});
},
switchChange
(
val
)
{},
handleClick
(
val
)
{
this
.
getData
();
},
},
handleClick
()
{},
/** 编辑 */
/** 编辑 */
edit
(
row
)
{
edit
(
row
)
{
this
.
reset
();
this
.
reset
();
this
.
query
=
{
id
:
row
.
id
};
this
.
query
=
{
id
:
row
.
id
};
this
.
urls
.
currUrl
=
"
perform/dept/conf/edit
"
;
// this.urls.currUrl = "perform/dept/conf/edit";
this
.
$get
(
"
/perform/dept/conf/info
"
,
{
id
:
row
.
id
}).
then
((
res
)
=>
{
if
(
res
.
code
==
1
)
{
this
.
form
=
res
.
data
;
}
else
{
this
.
form
=
{};
}
this
.
open
=
true
;
});
this
.
getData
();
this
.
getData
();
this
.
pageInfo
.
type
=
"
edit
"
;
this
.
pageInfo
.
type
=
"
edit
"
;
this
.
title
=
"
修改部门自动考核信息
"
;
this
.
title
=
"
修改部门自动考核信息
"
;
},
},
/** 新增 */
/** 新增 */
add
(
row
)
{
add
(
row
)
{
this
.
reset
();
this
.
reset
();
this
.
urls
.
currUrl
=
"
perform/dept/conf/add
"
;
//
this.urls.currUrl = "perform/dept/conf/add";
this
.
getData
();
this
.
getData
();
this
.
open
=
true
;
this
.
pageInfo
.
type
=
"
add
"
;
this
.
pageInfo
.
type
=
"
add
"
;
this
.
title
=
"
新增部门自动考核信息
"
;
this
.
title
=
"
新增部门自动考核信息
"
;
},
},
...
@@ -449,7 +539,7 @@ export default {
...
@@ -449,7 +539,7 @@ export default {
}
}
.content {
.content {
width: 100%;
width: 100%;
height:
50
0px;
height:
72
0px;
border: 1px solid #e4e7ed;
border: 1px solid #e4e7ed;
border-top: 0;
border-top: 0;
padding: 20px;
padding: 20px;
...
...
attendance-performance-manager-ui/admin/src/views/perform/staff/conf/list.vue
View file @
8e749a65
...
@@ -36,6 +36,9 @@
...
@@ -36,6 +36,9 @@
<el-tag
style=
"margin: 0 5px 5px 0"
<el-tag
style=
"margin: 0 5px 5px 0"
>
效能绩效指标/工作纪律:
{{
val
.
effectCount
}}
</el-tag
>
效能绩效指标/工作纪律:
{{
val
.
effectCount
}}
</el-tag
>
>
<el-tag
style=
"margin: 0 5px 5px 0"
>
其他绩效指标/工作纪律:
{{
val
.
otherCount
}}
</el-tag
>
</p>
</p>
<p
class=
"goal_txt"
>
<p
class=
"goal_txt"
>
<span>
最近更新:
</span><span>
{{
val
.
createTime
}}
</span>
<span>
最近更新:
</span><span>
{{
val
.
createTime
}}
</span>
...
@@ -85,6 +88,8 @@ import drawerShow from "./drawershow";
...
@@ -85,6 +88,8 @@ import drawerShow from "./drawershow";
import
deptdrawerShow
from
"
./deptdrawershow.vue
"
;
import
deptdrawerShow
from
"
./deptdrawershow.vue
"
;
import
windowdrawerShow
from
"
./windowdrawershow.vue
"
;
import
windowdrawerShow
from
"
./windowdrawershow.vue
"
;
import
table
from
"
@/assets/mixins/table
"
;
import
table
from
"
@/assets/mixins/table
"
;
import
{
timestampToTime
}
from
"
@/assets/utils/dateFormat.js
"
;
export
default
{
export
default
{
name
:
"
PerformStaffConfList
"
,
name
:
"
PerformStaffConfList
"
,
components
:
{
components
:
{
...
@@ -146,9 +151,12 @@ export default {
...
@@ -146,9 +151,12 @@ export default {
await
this
.
$post
(
await
this
.
$post
(
this
.
type
==
1
?
"
/perform/dept/conf/list
"
:
"
/perform/staff/conf/list
"
this
.
type
==
1
?
"
/perform/dept/conf/list
"
:
"
/perform/staff/conf/list
"
).
then
((
res
)
=>
{
).
then
((
res
)
=>
{
console
.
log
(
res
);
if
(
res
.
code
==
1
)
{
if
(
res
.
code
==
1
)
{
this
.
dataList
=
res
.
data
.
data
;
this
.
dataList
=
res
.
data
.
data
;
this
.
dataList
.
forEach
((
v
)
=>
{
v
.
createTime
=
v
.
createTime
?
timestampToTime
(
v
.
createTime
,
6
)
:
""
;
v
.
updateTime
=
v
.
updateTime
?
timestampToTime
(
v
.
updateTime
,
6
)
:
""
;
});
}
}
});
});
this
.
activeName
==
2
this
.
activeName
==
2
...
@@ -293,7 +301,7 @@ export default {
...
@@ -293,7 +301,7 @@ export default {
flex-wrap: wrap;
flex-wrap: wrap;
.goal_box {
.goal_box {
width: 405px;
width: 405px;
height:
27
0px;
height:
31
0px;
background: inherit;
background: inherit;
background-color: rgba(255, 255, 255, 1);
background-color: rgba(255, 255, 255, 1);
border: none;
border: none;
...
...
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