Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
inspect_report
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
zhengjinlei
inspect_report
Commits
6ef23c03
Commit
6ef23c03
authored
Mar 26, 2020
by
lvshibao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
数据分析-质检绩效考核汇总
parent
36c43baf
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
50 additions
and
37 deletions
+50
-37
tasksapi.py
src/inspect_report/api/tasksapi.py
+4
-0
seat_check.html
src/inspect_report/templates/inspect/seat_check.html
+7
-7
seat_check.js
static/inspect/js/seat_check.js
+39
-30
No files found.
src/inspect_report/api/tasksapi.py
View file @
6ef23c03
...
@@ -325,12 +325,14 @@ class TasksApi(viewsets.ViewSet):
...
@@ -325,12 +325,14 @@ class TasksApi(viewsets.ViewSet):
return
Response
({
'code'
:
0
,
'msg'
:
'success'
,
'data'
:
data_sort
})
return
Response
({
'code'
:
0
,
'msg'
:
'success'
,
'data'
:
data_sort
})
@
action
([
'post'
],
detail
=
False
)
@
action
([
'post'
],
detail
=
False
)
@
get_account_info
def
seat_check
(
self
,
req
:
Request
):
def
seat_check
(
self
,
req
:
Request
):
"""
"""
坐席绩效考核汇总
坐席绩效考核汇总
:param req:
:param req:
:return:
:return:
"""
"""
username
=
req
.
data
.
get
(
'username'
,
''
)
task_id
=
req
.
data
.
get
(
'task'
,
''
)
task_id
=
req
.
data
.
get
(
'task'
,
''
)
agent_name
=
req
.
data
.
get
(
'agentName'
,
''
)
agent_name
=
req
.
data
.
get
(
'agentName'
,
''
)
page
=
req
.
data
.
get
(
'page'
,
'1'
)
page
=
req
.
data
.
get
(
'page'
,
'1'
)
...
@@ -340,6 +342,8 @@ class TasksApi(viewsets.ViewSet):
...
@@ -340,6 +342,8 @@ class TasksApi(viewsets.ViewSet):
task_condition
=
{
'hasCheck'
:
1
,
'createdAt__gte'
:
start_date
,
'createdAt__lt'
:
end_date
+
' 23:59:59'
}
task_condition
=
{
'hasCheck'
:
1
,
'createdAt__gte'
:
start_date
,
'createdAt__lt'
:
end_date
+
' 23:59:59'
}
if
task_id
:
if
task_id
:
task_condition
[
'name__startswith'
]
=
task_id
task_condition
[
'name__startswith'
]
=
task_id
if
username
in
name_list
:
task_condition
[
'name__startswith'
]
=
username
tasks
=
Tasks
.
objects
.
filter
(
**
task_condition
)
.
values
(
'id'
,
'name'
,
'sessionCollectionId'
)
tasks
=
Tasks
.
objects
.
filter
(
**
task_condition
)
.
values
(
'id'
,
'name'
,
'sessionCollectionId'
)
task_dict
=
{}
task_dict
=
{}
task_name_dict
=
{}
task_name_dict
=
{}
...
...
src/inspect_report/templates/inspect/seat_check.html
View file @
6ef23c03
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
display
:
inline-block
;
display
:
inline-block
;
}
}
#OneTime
.el-input__icon
{
#OneTime
.el-input__icon
{
line-height
:
32px
;
line-height
:
32px
;
}
}
#OneTime
.el-input
.el-input__inner
{
#OneTime
.el-input
.el-input__inner
{
padding-left
:
30px
;
padding-left
:
30px
;
...
@@ -26,7 +26,7 @@
...
@@ -26,7 +26,7 @@
font-size
:
15px
;
font-size
:
15px
;
}
}
.groutTitle
{
.groutTitle
{
display
:
flex
;
display
:
flex
;
flex-direction
:
row
;
flex-direction
:
row
;
margin-bottom
:
20px
;
margin-bottom
:
20px
;
margin-top
:
10px
;
margin-top
:
10px
;
...
@@ -37,13 +37,13 @@
...
@@ -37,13 +37,13 @@
background-color
:
#fff
;
background-color
:
#fff
;
}
}
.groutTitle
>
div
:nth-child
(
2
)
{
.groutTitle
>
div
:nth-child
(
2
)
{
margin
:
0
10px
;
margin
:
0
10px
;
}
}
.groutTitle
.grid-content
{
.groutTitle
.grid-content
{
padding
:
20px
;
padding
:
20px
;
}
}
.groutTitle
.grid-content
.icon
{
.groutTitle
.grid-content
.icon
{
font-size
:
30px
;
font-size
:
30px
;
margin-right
:
10px
;
margin-right
:
10px
;
}
}
.groutTitle
.grid-content
div
{
.groutTitle
.grid-content
div
{
...
@@ -51,7 +51,7 @@
...
@@ -51,7 +51,7 @@
vertical-align
:
middle
;
vertical-align
:
middle
;
}
}
.groutTitle
.grid-content
.content-value
{
.groutTitle
.grid-content
.content-value
{
font-size
:
30px
;
font-size
:
30px
;
}
}
#main
{
#main
{
background-color
:
#fff
;
background-color
:
#fff
;
...
@@ -78,7 +78,7 @@
...
@@ -78,7 +78,7 @@
font-weight
:
bold
;
font-weight
:
bold
;
}
}
#mutiTable
.el-table__body
tr
:nth-child
(
2
)
td
:first-child
,
#mutiTable
.el-table__body
tr
:nth-child
(
1
)
td
:first-child
{
#mutiTable
.el-table__body
tr
:nth-child
(
2
)
td
:first-child
,
#mutiTable
.el-table__body
tr
:nth-child
(
1
)
td
:first-child
{
border-right
:
0
;
border-right
:
0
;
}
}
#noData
{
#noData
{
text-align
:
center
;
text-align
:
center
;
...
@@ -120,7 +120,7 @@
...
@@ -120,7 +120,7 @@
end-placeholder=
"结束日期"
end-placeholder=
"结束日期"
:default-time=
"['00:00:00', '23:59:59']"
>
:default-time=
"['00:00:00', '23:59:59']"
>
</el-date-picker>
</el-date-picker>
<el-select
v-model=
"taskvalue"
filterable
placeholder=
"请选择"
@
change=
"changeTask"
>
<el-select
v-
if=
"sel_is_show == true"
v-
model=
"taskvalue"
filterable
placeholder=
"请选择"
@
change=
"changeTask"
>
<el-option
<el-option
v-for=
"item in taskList"
v-for=
"item in taskList"
:key=
"item.id"
:key=
"item.id"
...
...
static/inspect/js/seat_check.js
View file @
6ef23c03
...
@@ -23,42 +23,43 @@ new Vue({
...
@@ -23,42 +23,43 @@ new Vue({
basearr
:
[
basearr
:
[
{
{
createdAt
:
'
质检考核项目编号
'
,
createdAt
:
'
质检考核项目编号
'
,
fwyy
:
'
1
'
,
fwyy
:
'
1
'
,
kcb
:
'
2
'
,
kcb
:
'
2
'
,
jsy
:
'
3
'
,
jsy
:
'
3
'
,
fwtd
:
'
4
'
,
fwtd
:
'
4
'
,
yssb
:
'
5
'
,
yssb
:
'
5
'
,
jysb
:
'
6
'
,
jysb
:
'
6
'
,
yycl
:
'
7
'
,
yycl
:
'
7
'
,
ywcc
:
'
8
'
,
ywcc
:
'
8
'
,
yyjlz
:
'
9
'
,
yyjlz
:
'
9
'
,
fwjs
:
'
10
'
,
fwjs
:
'
10
'
,
wtgbj
:
'
11
'
,
wtgbj
:
'
11
'
,
cgjxxhs
:
'
12
'
,
cgjxxhs
:
'
12
'
,
wgzlf
:
'
13
'
,
wgzlf
:
'
13
'
,
mgc
:
'
14
'
,
mgc
:
'
14
'
,
},
{
},
{
createdAt
:
'
质检考核权重
'
,
createdAt
:
'
质检考核权重
'
,
fwyy
:
'
15%
'
,
fwyy
:
'
15%
'
,
kcb
:
'
5%
'
,
kcb
:
'
5%
'
,
jsy
:
'
3%
'
,
jsy
:
'
3%
'
,
fwtd
:
'
5%
'
,
fwtd
:
'
5%
'
,
yssb
:
'
5%
'
,
yssb
:
'
5%
'
,
jysb
:
'
5%
'
,
jysb
:
'
5%
'
,
yycl
:
'
10%
'
,
yycl
:
'
10%
'
,
ywcc
:
'
10%
'
,
ywcc
:
'
10%
'
,
yyjlz
:
'
10%
'
,
yyjlz
:
'
10%
'
,
fwjs
:
'
10%
'
,
fwjs
:
'
10%
'
,
wtgbj
:
'
2%
'
,
wtgbj
:
'
2%
'
,
cgjxxhs
:
'
20%
'
,
cgjxxhs
:
'
20%
'
,
wgzlf
:
'
100%
'
,
wgzlf
:
'
100%
'
,
mgc
:
'
100%
'
,
mgc
:
'
100%
'
,
}],
}],
tableData
:
[],
tableData
:
[],
currentPage
:
1
,
currentPage
:
1
,
pagesize
:
15
,
pagesize
:
15
,
total
:
10
,
total
:
10
,
isHidePage
:
true
,
isHidePage
:
true
,
sel_is_show
:
true
,
}
}
},
},
mounted
()
{
mounted
()
{
...
@@ -77,12 +78,13 @@ new Vue({
...
@@ -77,12 +78,13 @@ new Vue({
this
.
start_date
=
dateRange
[
0
];
this
.
start_date
=
dateRange
[
0
];
this
.
end_date
=
dateRange
[
1
];
this
.
end_date
=
dateRange
[
1
];
this
.
currentPage
=
1
;
this
.
currentPage
=
1
;
this
.
getTake
();
this
.
getRule
(
this
.
taskvalue
,
this
.
start_date
,
this
.
end_date
,
this
.
takevalue
);
// 获取统计数据
this
.
getRule
(
this
.
taskvalue
,
this
.
start_date
,
this
.
end_date
,
this
.
takevalue
);
// 获取统计数据
},
},
changeTask
(
msg
){
changeTask
(
msg
){
this
.
taskvalue
=
msg
;
this
.
taskvalue
=
msg
;
this
.
currentPage
=
1
;
this
.
currentPage
=
1
;
this
.
getTake
()
this
.
getTake
()
;
this
.
getRule
(
this
.
taskvalue
,
this
.
start_date
,
this
.
end_date
,
this
.
takevalue
);
// 获取统计数据
this
.
getRule
(
this
.
taskvalue
,
this
.
start_date
,
this
.
end_date
,
this
.
takevalue
);
// 获取统计数据
},
},
changeTake
(
msg
){
changeTake
(
msg
){
...
@@ -145,6 +147,13 @@ new Vue({
...
@@ -145,6 +147,13 @@ new Vue({
}
else
{
}
else
{
that
.
takeList
=
data
.
data
;
that
.
takeList
=
data
.
data
;
}
}
if
([
'
合肥
'
,
'
芜湖
'
,
'
淮北
'
,
'
安庆
'
,
'
黄山
'
,
'
滁州
'
,
'
阜阳
'
,
'
亳州
'
,
'
宿州
'
,
'
六安
'
,
'
宣城
'
,
'
巢湖
'
,
'
池州
'
,
'
淮南
'
,
'
安徽省营业部
'
,
'
蚌埠
'
,
'
马鞍山
'
,
'
铜陵
'
].
indexOf
(
data
.
username
)
!==
-
1
)
{
that
.
sel_is_show
=
false
;
that
.
taskvalue
=
data
.
username
;
}
else
{
that
.
sel_is_show
=
true
;
}
})
})
},
},
arraySpanMethod
({
row
,
column
,
rowIndex
,
columnIndex
})
{
arraySpanMethod
({
row
,
column
,
rowIndex
,
columnIndex
})
{
...
@@ -157,7 +166,7 @@ new Vue({
...
@@ -157,7 +166,7 @@ new Vue({
else
if
(
columnIndex
===
2
||
columnIndex
===
3
)
{
else
if
(
columnIndex
===
2
||
columnIndex
===
3
)
{
return
[
0
,
0
]
return
[
0
,
0
]
}
}
}
}
},
},
dateFormat
(
date
){
dateFormat
(
date
){
return
date
.
getFullYear
()
+
"
-
"
+
(
date
.
getMonth
()
+
1
)
+
"
-
"
+
date
.
getDate
();
return
date
.
getFullYear
()
+
"
-
"
+
(
date
.
getMonth
()
+
1
)
+
"
-
"
+
date
.
getDate
();
...
...
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