Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
confucius
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
罗超
confucius
Commits
29bcc01b
Commit
29bcc01b
authored
Jan 20, 2022
by
Mac
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/confucius
parents
77f36d42
c74d3e28
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
1111 additions
and
88 deletions
+1111
-88
index.js
src/api/system/index.js
+55
-0
index.js
src/api/work/index.js
+12
-0
tougao-form.vue
src/components/sale/tougao-form.vue
+0
-1
studentRight-form.vue
src/components/school/student/studentRight-form.vue
+0
-1
target-form.vue
src/components/system/target-form.vue
+223
-0
todayData.vue
src/components/work/todayData.vue
+648
-81
workutaTeaching.vue
src/pages/course/workutaTeaching.vue
+0
-1
addFinancialProcess.vue
src/pages/financial/addFinancialProcess.vue
+0
-1
stuDistributionRule.vue
src/pages/system/stuDistributionRule.vue
+0
-1
stuManageConfig.vue
src/pages/system/stuManageConfig.vue
+5
-1
stuTarget.vue
src/pages/system/stuTarget.vue
+168
-0
contributeManage.vue
src/pages/teacher/contribution/contributeManage.vue
+0
-1
No files found.
src/api/system/index.js
View file @
29bcc01b
...
...
@@ -645,3 +645,58 @@ export function RemoveNeeds(data) {
data
});
}
/**
* 获取目标分页列表
*/
export
function
GetConsultantGoalPage
(
data
)
{
return
request
({
url
:
'/UserCenter/GetConsultantGoalPage'
,
method
:
'post'
,
data
});
}
/**
* 批量添加目标
*/
export
function
AddConsultantGoal
(
data
)
{
return
request
({
url
:
'/UserCenter/AddConsultantGoal'
,
method
:
'post'
,
data
});
}
/**
* 删除目标
*/
export
function
RemoveConsultantGoal
(
data
)
{
return
request
({
url
:
'/UserCenter/RemoveConsultantGoal'
,
method
:
'post'
,
data
});
}
/**
* 修改目标
*/
export
function
UpdateConsultantGoal
(
data
)
{
return
request
({
url
:
'/UserCenter/UpdateConsultantGoal'
,
method
:
'post'
,
data
});
}
/**
* 获取目标详情
*/
export
function
GetConsultantGoal
(
data
)
{
return
request
({
url
:
'/UserCenter/GetConsultantGoal'
,
method
:
'post'
,
data
});
}
\ No newline at end of file
src/api/work/index.js
View file @
29bcc01b
...
...
@@ -41,3 +41,15 @@ export function MarketStatic(data) {
})
}
/**
* 首页 课程顾问部统计
*/
export
function
ConsultantStatic
(
data
)
{
return
request
({
url
:
'/UserCenter/ConsultantStatic'
,
method
:
'post'
,
data
})
}
src/components/sale/tougao-form.vue
View file @
29bcc01b
...
...
@@ -658,7 +658,6 @@ export default {
this
.
changeBillMsg
.
Id
=
this
.
setingObj
.
Id
;
this
.
changeBillMsg
.
SpecialNode
=
this
.
setingObj
.
SpecialNode
;
this
.
changeBillMsg
.
RemunerationState
=
this
.
setingObj
.
DataObj
.
RemunerationState
;
console
.
log
(
this
.
setingObj
)
},
methods
:
{
closeBackInfo
()
{
...
...
src/components/school/student/studentRight-form.vue
View file @
29bcc01b
...
...
@@ -425,7 +425,6 @@ export default {
});
},
assistBatchHandler
()
{
console
.
log
(
this
.
pushing
||
this
.
baseObj
.
IsHaveCurseManager
);
if
(
this
.
pushing
||
this
.
baseObj
.
IsHaveCurseManager
)
return
;
this
.
pushing
=
true
;
let
parameter
=
{
...
...
src/components/system/target-form.vue
0 → 100644
View file @
29bcc01b
<
template
>
<q-dialog
v-model=
"persistent"
content-class=
"bg-grey-1"
persistent
transition-show=
"scale"
transition-hide=
"scale"
>
<q-card
style=
"width: 400px;max-width:400px;"
>
<q-card-section>
<div
class=
"text-h6"
>
{{
optionTitle
}}
</div>
</q-card-section>
<q-card-section
class=
"q-pt-none scroll"
style=
"max-height: 70vh"
>
<template
v-if=
"isShow==1"
>
<div
class=
"row wrap"
>
<div
class=
"col-12"
>
<el-date-picker
v-model=
"value"
style=
"width:100%"
type=
"month"
:clearable=
"false"
@
change=
"dateChange"
value-format=
"yyyy-MM"
placeholder=
"选择月"
>
</el-date-picker>
<div
style=
"margin-top:10px;"
>
<el-tag
v-for=
"(tag, index) in objOption.TimeList"
size=
"small"
style=
"margin:0 5px 5px 0;"
:key=
"tag"
@
close=
"params => tagClose(index)"
closable
type=
"success"
>
{{
tag
}}
</el-tag>
</div>
</div>
</div>
<div
class=
"row wrap"
>
<div
class=
"col-12"
>
<el-input
v-model=
"objOption.GoalMoney"
placeholder=
"金额"
@
keyup
.
native=
"checkInteger(objOption,'GoalMoney')"
></el-input>
</div>
</div>
<div
class=
"row wrap"
style=
"margin-top:10px;"
>
<div
class=
"col-12"
>
<selectTree
:treeData=
'DeptList'
:defaultArray=
"returnString"
nodeKey=
"DeptId"
:multiple=
"false"
labelKey=
"DeptName"
childrenKey=
"ChildList"
tipText=
"选择部门"
@
getChild=
"getChild"
></selectTree>
</div>
</div>
</
template
>
<
template
v-if=
"isShow==2"
>
<div
class=
"row wrap"
>
<div
class=
"col-12"
>
<el-date-picker
v-model=
"value2"
style=
"width:100%"
type=
"month"
value-format=
"yyyy-MM"
placeholder=
"选择月"
>
</el-date-picker>
</div>
</div>
<div
class=
"row wrap"
style=
"margin-top:10px;"
>
<div
class=
"col-12"
>
<el-input
v-model=
"updateMsg.GoalMoney"
placeholder=
"金额"
@
keyup
.
native=
"checkInteger(updateMsg,'GoalMoney')"
></el-input>
</div>
</div>
<div
class=
"row wrap"
style=
"margin-top:10px;"
>
<div
class=
"col-12"
>
<selectTree
:treeData=
'DeptList'
:defaultArray=
"returnString2"
nodeKey=
"DeptId"
:multiple=
"false"
labelKey=
"DeptName"
childrenKey=
"ChildList"
tipText=
"选择部门"
@
getChild=
"getChild"
></selectTree>
</div>
</div>
</
template
>
</q-card-section>
<q-separator
/>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-btn
label=
"取消"
flat
color=
"grey-10"
style=
"font-weight:400 !important"
@
click=
"closeSaveForm"
/>
<q-btn
label=
"立即提交"
color=
"accent q-px-md"
style=
"font-weight:400 !important"
v-if=
"isShow==1"
:loading=
"saveLoading"
@
click=
"saveNeed"
/>
<q-btn
label=
"立即提交"
color=
"accent q-px-md"
style=
"font-weight:400 !important"
v-if=
"isShow==2"
:loading=
"saveLoading"
@
click=
"saveTarget"
/>
</q-card-actions>
</q-card>
</q-dialog>
</template>
<
script
>
import
{
AddConsultantGoal
,
UpdateConsultantGoal
,
GetConsultantGoal
}
from
'../../api/system/index'
//部门
import
{
getDeptTree
,
getDeptList
}
from
'../../api/system/dept'
import
selectTree
from
'../../components/common/select-tree'
export
default
{
props
:
{
saveObj
:
{
type
:
Object
,
default
:
null
}
},
components
:
{
selectTree
},
data
()
{
return
{
persistent
:
true
,
saveLoading
:
false
,
value
:
''
,
objOption
:
{
GoalMoney
:
""
,
Dept_Id
:
0
,
TimeList
:
[],
},
updateMsg
:
{
Id
:
0
,
YearStr
:
''
,
MonthStr
:
''
,
GoalMoney
:
''
,
Dept_Id
:
''
},
optionTitle
:
""
,
DeptList
:
[],
// 部门下拉
returnString
:
[],
//默认岗位
isShow
:
1
,
value2
:
''
,
returnString2
:[]
}
},
mounted
()
{
this
.
initObj
();
this
.
queryDeptTree
();
},
methods
:
{
//获取部门结构树
queryDeptTree
()
{
getDeptTree
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
DeptList
=
res
.
Data
;
}
})
},
getChild
(
deptArray
)
{
var
tempStr
=
""
;
if
(
deptArray
&&
deptArray
!=
''
)
{
tempStr
=
deptArray
;
}
if
(
tempStr
)
{
this
.
objOption
.
Dept_Id
=
tempStr
;
this
.
updateMsg
.
Dept_Id
=
tempStr
;
}
else
{
this
.
objOption
.
Dept_Id
=
0
;
this
.
updateMsg
.
Dept_Id
=
0
;
}
},
//选择月份
dateChange
(
val
)
{
this
.
objOption
.
TimeList
.
push
(
val
)
// 这里记得格式化
},
tagClose
(
index
)
{
this
.
objOption
.
TimeList
.
splice
(
index
,
1
);
},
//初始化表单
initObj
()
{
if
(
this
.
saveObj
&&
this
.
saveObj
.
Id
>
0
)
{
GetConsultantGoal
({
Id
:
this
.
saveObj
.
Id
}).
then
(
res
=>
{
this
.
updateMsg
.
Id
=
res
.
Data
.
Id
;
this
.
updateMsg
.
YearStr
=
res
.
Data
.
YearStr
;
this
.
updateMsg
.
MonthStr
=
res
.
Data
.
MonthStr
;
this
.
updateMsg
.
GoalMoney
=
res
.
Data
.
GoalMoney
;
this
.
updateMsg
.
Dept_Id
=
res
.
Data
.
Dept_Id
;
this
.
returnString2
.
push
(
res
.
Data
.
Dept_Id
);
this
.
isShow
=
2
;
this
.
value2
=
this
.
updateMsg
.
YearStr
+
'-'
+
this
.
updateMsg
.
MonthStr
;
})
this
.
optionTitle
=
"修改目标"
}
else
{
this
.
optionTitle
=
"新增目标"
this
.
objOption
.
GoalMoney
=
''
;
this
.
objOption
.
Dept_Id
=
''
;
this
.
objOption
.
TimeList
=
[];
this
.
isShow
=
1
}
},
//关闭弹窗
closeSaveForm
()
{
this
.
$emit
(
'close'
)
},
//新增保存菜单
saveNeed
()
{
this
.
saveLoading
=
true
AddConsultantGoal
(
this
.
objOption
).
then
(
res
=>
{
this
.
saveLoading
=
false
;
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'数据保存成功!'
,
position
:
'top'
})
this
.
$emit
(
"success"
)
this
.
closeSaveForm
()
}
})
},
//修改保存
saveTarget
(){
if
(
this
.
value2
){
let
myDate
=
this
.
value2
.
split
(
'-'
);
this
.
updateMsg
.
YearStr
=
myDate
[
0
];
this
.
updateMsg
.
MonthStr
=
myDate
[
1
];
}
else
{
this
.
updateMsg
.
YearStr
=
''
;
this
.
updateMsg
.
MonthStr
=
''
;
}
this
.
saveLoading
=
true
;
UpdateConsultantGoal
(
this
.
updateMsg
).
then
(
res
=>
{
this
.
saveLoading
=
false
;
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'数据保存成功!'
,
position
:
'top'
})
this
.
$emit
(
"success"
)
this
.
closeSaveForm
()
}
})
}
}
}
</
script
>
src/components/work/todayData.vue
View file @
29bcc01b
...
...
@@ -55,10 +55,10 @@
.Data_List
{
box-sizing
:
border-box
;
flex
:
1
;
flex
:
0
0
22%
;
padding
:
32px
;
background-color
:
#fff
;
margin
-right
:
24px
;
margin
:
0
24px
24px
0
;
font-size
:
14px
;
}
...
...
@@ -108,26 +108,35 @@
.Data_One
{
margin-top
:
3px
;
display
:
flex
;
//
display: flex;
font-size
:
14px
;
text-align
:
right
;
}
.label_Day
{
color
:
rgba
(
0
,
0
,
0
,
.5
);
font-size
:
14px
;
width
:
20px
;
width
:
25px
;
display
:
inline-block
;
text-align
:
left
;
}
.label_Number
{
flex
:
1
1
0%
;
color
:
#fa5151
;
}
.label_Cule
{
flex
:
1
1
0%
;
color
:
#fa5151
;
.label_Cule
{
flex
:
1
1
0%
;
color
:
#fa5151
;
display
:
inline-block
;
width
:
40px
;
}
.greenClass
{
color
:
#00ce8b
!
important
;
.greenClass
{
color
:
#00ce8b
!
important
;
display
:
inline-block
;
width
:
40px
;
}
</
style
>
<
template
>
...
...
@@ -136,18 +145,26 @@
<div
class=
"q-my-md text-dark"
style=
"font-size:20px"
>
平台数据
</div>
<div>
<el-date-picker
v-model=
"
value2"
type=
"daterange"
align=
"right"
unlink-panels
range-separator=
"至
"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
<div
style=
"display:flex;"
>
<el-date-picker
v-model=
"
dateList"
type=
"daterange"
align=
"right"
value-format=
"yyyy-MM-dd"
@
change=
"searchData
"
unlink-panels
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
<el-select
v-if=
"IsShowEmpQuery"
v-model=
"msg.empList"
@
change=
"searchData"
style=
"width:180px;margin-left:10px;"
collapse-tags
multiple
filterable
placeholder=
"请选择"
>
<el-option
v-for=
"item in myEmployeeList"
:key=
"item.Id"
:label=
"item.EmployeeName"
:value=
"item.Id"
>
</el-option>
</el-select>
</div>
</div>
<div
class=
"Check_Content"
>
<div
class=
"Check_ListContent"
>
<div
class=
"Check_Item"
@
click=
"getCheck(1)"
:class=
"
{'ckedClass':comType==1}">市场部数据统计
</div>
<div
class=
"Check_Item"
@
click=
"getCheck(2)"
:class=
"
{'ckedClass':comType==2}">课程顾问部统计
</div>
<div
class=
"Check_Item"
v-if=
"IsQueryAuth||CurrentUserInfo.IsMarket==1"
@
click=
"comType=1,searchData() "
:class=
"
{'ckedClass':comType==1}">市场部数据统计
</div>
<div
class=
"Check_Item"
v-if=
"IsQueryAuth||CurrentUserInfo.IsCourseConsultant==1"
@
click=
"comType=2,searchData()"
:class=
"
{'ckedClass':comType==2}">课程顾问部统计
</div>
</div>
</div>
<template
v-if=
"comType==1"
>
<div
class=
"Check_Map"
>
<div
class=
"check_Title"
>
今日实时数据
</div>
<div
class=
""
>
...
...
@@ -156,11 +173,81 @@
</div>
<div
class=
"Check_Map"
v-if=
"yesData"
>
<div
class=
"check_Title"
>
访问核心数据
</div>
<div
class=
"Data_ListContent"
style=
"width:300px;"
>
<div
class=
"Data_ListContent"
>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
条数(资源量)
</div>
<div
class=
"Data_Time"
>
{{
yesData
.
DayStr
}}
{{
yesData
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
yesData
.
ClueCount
}}
</span>
<span
class=
"Data_Ci"
>
次
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.ClueCount,yesData.YestodayClue)>0}">
{{
calcPercent
(
yesData
.
ClueCount
,
yesData
.
YestodayClue
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurWeekClue,yesData.LastWeekClue)>0}">
{{
calcPercent
(
yesData
.
CurWeekClue
,
yesData
.
LastWeekClue
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurMonthClue,yesData.LastMonthClue)>0}">
{{
calcPercent
(
yesData
.
CurMonthClue
,
yesData
.
LastMonthClue
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
有效数据量
</div>
<div
class=
"Data_Time"
>
{{
yesData
.
DayStr
}}
{{
yesData
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
yesData
.
FollowCount
}}
</span>
<span
class=
"Data_Ci"
>
次
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.FollowCount,yesData.YestodayFollow)>0}">
{{
calcPercent
(
yesData
.
FollowCount
,
yesData
.
YestodayFollow
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurWeekFollow,yesData.LastWeekFollow)>0}">
{{
calcPercent
(
yesData
.
CurWeekFollow
,
yesData
.
LastWeekFollow
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurMonthFollow,yesData.LastMonthFollow)>0}">
{{
calcPercent
(
yesData
.
CurMonthFollow
,
yesData
.
LastMonthFollow
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
日访问人数
</div>
<div
class=
"Data_Time"
>
{{
yesData
.
DayStr
}}
周四
</div>
<div
class=
"Data_Title"
>
上门咨询
</div>
<div
class=
"Data_Time"
>
{{
yesData
.
DayStr
}}
{{
yesData
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
yesData
.
VisitCount
}}
</span>
...
...
@@ -169,43 +256,434 @@
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':getVisitCount(yesData.ClueCount,yesData.YestodayVisit)>0}">
{{
getVisitCount
(
yesData
.
ClueCount
,
yesData
.
YestodayVisit
)
}}
%
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.VisitCount,yesData.YestodayVisit)>0}">
{{
calcPercent
(
yesData
.
VisitCount
,
yesData
.
YestodayVisit
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurWeekVisit,yesData.LastWeekVisit)>0}">
{{
calcPercent
(
yesData
.
CurWeekVisit
,
yesData
.
LastWeekVisit
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurMonthVisit,yesData.LastMonthVisit)>0}">
{{
calcPercent
(
yesData
.
CurMonthVisit
,
yesData
.
LastMonthVisit
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
试听邀约
</div>
<div
class=
"Data_Time"
>
{{
yesData
.
DayStr
}}
{{
yesData
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
yesData
.
TrialLessonCount
}}
</span>
<span
class=
"Data_Ci"
>
次
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.TrialLessonCount,yesData.YestodayTrialLesson)>0}">
{{
calcPercent
(
yesData
.
TrialLessonCount
,
yesData
.
YestodayTrialLesson
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurWeekTrialLesson,yesData.LastWeekTrialLesson)>0}">
{{
calcPercent
(
yesData
.
CurWeekTrialLesson
,
yesData
.
LastWeekTrialLesson
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurMonthTrialLesson,yesData.LastMonthTrialLesson)>0}">
{{
calcPercent
(
yesData
.
CurMonthTrialLesson
,
yesData
.
LastMonthTrialLesson
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
销售额(签约量)
</div>
<div
class=
"Data_Time"
>
{{
yesData
.
DayStr
}}
{{
yesData
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
yesData
.
SaleMoney
}}
</span>
<span
class=
"Data_Ci"
>
元
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.SaleMoney,yesData.YestodaySale)>0}">
{{
calcPercent
(
yesData
.
SaleMoney
,
yesData
.
YestodaySale
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurWeekSale,yesData.LastWeekSale)>0}">
{{
calcPercent
(
yesData
.
CurWeekSale
,
yesData
.
LastWeekSale
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(yesData.CurMonrhSale,yesData.LastMonthSale)>0}">
{{
calcPercent
(
yesData
.
CurMonrhSale
,
yesData
.
LastMonthSale
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</
template
>
<
template
v-else
>
<div
class=
"Check_Map"
>
<div
class=
"check_Title"
>
今日实时数据
</div>
<div
class=
"Data_ListContent"
>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
试听邀约
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
TrialLessonCount
}}
</span>
<span
class=
"Data_Ci"
>
次
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.TrialLessonCount,ConsultObj.YestodayTrialLesson)>0}">
{{
calcPercent
(
ConsultObj
.
TrialLessonCount
,
ConsultObj
.
YestodayTrialLesson
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurWeekTrialLesson,ConsultObj.LastWeekTrialLesson)>0}">
{{
calcPercent
(
ConsultObj
.
CurWeekTrialLesson
,
ConsultObj
.
LastWeekTrialLesson
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurMonthTrialLesson,ConsultObj.LastMonthTrialLesson)>0}">
{{
calcPercent
(
ConsultObj
.
CurMonthTrialLesson
,
ConsultObj
.
LastMonthTrialLesson
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
到访累计
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
VisitCount
}}
</span>
<span
class=
"Data_Ci"
>
次
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.VisitCount,ConsultObj.YestodayVisit)>0}">
{{
calcPercent
(
ConsultObj
.
VisitCount
,
ConsultObj
.
YestodayVisit
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurWeekVisit,ConsultObj.LastWeekVisit)>0}">
{{
calcPercent
(
ConsultObj
.
CurWeekVisit
,
ConsultObj
.
LastWeekVisit
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurMonthVisit,ConsultObj.LastMonthVisit)>0}">
{{
calcPercent
(
ConsultObj
.
CurMonthVisit
,
ConsultObj
.
LastMonthVisit
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
转化率
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
Rates
}}
</span>
<span
class=
"Data_Ci"
>
%
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
昨日
</span>
<span
class=
"label_Cule"
>
{{
ConsultObj
.
YestodayRates
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
>
{{
ConsultObj
.
CurWeekRates
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
>
{{
ConsultObj
.
CurMonthRates
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
有效回访总量
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
FollowCount
}}
</span>
<span
class=
"Data_Ci"
>
次
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.FollowCount,ConsultObj.YestodayFollow)>0}">
{{
calcPercent
(
ConsultObj
.
FollowCount
,
ConsultObj
.
YestodayFollow
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurWeekFollow,ConsultObj.LastWeekFollow)>0}">
{{
calcPercent
(
ConsultObj
.
CurWeekFollow
,
ConsultObj
.
LastWeekFollow
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurMonthFollow,ConsultObj.LastMonthFollow)>0}">
{{
calcPercent
(
ConsultObj
.
CurMonthFollow
,
ConsultObj
.
LastMonthFollow
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
单资源回访平均数
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
AgFollow
}}
</span>
<span
class=
"Data_Ci"
>
次
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
>
{{
ConsultObj
.
YestodayAgFollow
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':getVisitCount(yesData.CurWeekVisit,yesData.LastWeekVisit)>0}
">
{{
getVisitCount
(
yesData
.
CurWeekVisit
,
yesData
.
LastWeekVisit
)
}}
%
<span
class=
"label_Cule
"
>
{{
ConsultObj
.
CurWeekAgFollow
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':getVisitCount(yesData.CurMonthVisit,yesData.LastMonthVisit)>0}
">
{{
getVisitCount
(
yesData
.
CurMonthVisit
,
yesData
.
LastMonthVisit
)
}}
%
<span
class=
"label_Cule
"
>
{{
ConsultObj
.
CurMonthAgFollow
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
本周新签数
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
CurWeekOrderNum
}}
</span>
<span
class=
"Data_Ci"
>
单
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
上周
</span>
<span
class=
"label_Cule"
>
{{
ConsultObj
.
LastWeekOrderNum
}}
单
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
本周签约金额
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
CurWeekOrderSale
}}
</span>
<span
class=
"Data_Ci"
>
元
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
>
{{
ConsultObj
.
LastWeekOrderSale
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
新签数累计
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
Rates
}}
</span>
<span
class=
"Data_Ci"
>
单
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.Rates,ConsultObj.YestodayRates)>0}">
{{
calcPercent
(
ConsultObj
.
Rates
,
ConsultObj
.
YestodayRates
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurWeekRates,ConsultObj.LastWeekRates)>0}">
{{
calcPercent
(
ConsultObj
.
CurWeekRates
,
ConsultObj
.
LastWeekRates
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurMonthRates,ConsultObj.LastMonthRates)>0}">
{{
calcPercent
(
ConsultObj
.
CurMonthRates
,
ConsultObj
.
LastMonthRates
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
签约金额累计
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
Rates
}}
</span>
<span
class=
"Data_Ci"
>
次
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
日
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.Rates,ConsultObj.YestodayRates)>0}">
{{
calcPercent
(
ConsultObj
.
Rates
,
ConsultObj
.
YestodayRates
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
周
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurWeekRates,ConsultObj.LastWeekRates)>0}">
{{
calcPercent
(
ConsultObj
.
CurWeekRates
,
ConsultObj
.
LastWeekRates
)
}}
%
</span>
</div>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
月
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurMonthRates,ConsultObj.LastMonthRates)>0}">
{{
calcPercent
(
ConsultObj
.
CurMonthRates
,
ConsultObj
.
LastMonthRates
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"Data_List"
>
<div
class=
"Data_Inner"
>
<div
class=
"Data_Title"
>
当月效能目标
</div>
<div
class=
"Data_Time"
>
{{
ConsultObj
.
DayStr
}}
{{
ConsultObj
.
WeekStr
}}
</div>
<div
class=
"Data_wrapper"
>
<div
class=
"Data_Left"
>
<span
class=
"Data_Span"
>
{{
ConsultObj
.
CurMonthOrderGoal
}}
</span>
<span
class=
"Data_Ci"
>
元
</span>
</div>
<div
class=
"Data_Right"
>
<div
class=
"Data_One"
>
<span
class=
"label_Day"
>
完成进度
</span>
<span
class=
"label_Cule"
:class=
"
{'greenClass':calcPercent(ConsultObj.CurMonthOrderSale,ConsultObj.CurMonthOrderGoal)>0}">
{{
calcPercent
(
ConsultObj
.
CurMonthOrderSale
,
ConsultObj
.
CurMonthOrderGoal
)
}}
%
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</
template
>
</div>
</template>
<
script
>
import
VueApexCharts
from
"vue-apexcharts"
;
import
{
MarketStatic
MarketStatic
,
ConsultantStatic
}
from
'../../api/work/index'
import
{
queryEmployee
}
from
"../../api/users/user"
;
export
default
{
components
:
{
VueApexCharts
},
data
()
{
return
{
value2
:
""
,
comType
:
1
,
dateList
:
[],
comType
:
2
,
//1-市场部;2-课程顾问部
msg
:
{
startTime
:
""
,
endTime
:
""
,
empList
:
[]
},
series
:
[{
name
:
"新增条数"
,
data
:
[]
...
...
@@ -223,11 +701,11 @@
chart
:
{
height
:
350
,
type
:
'line'
,
background
:
'#fff'
},
zoom
:
{
enabled
:
false
},
background
:
'#fff'
},
dataLabels
:
{
enabled
:
false
},
...
...
@@ -251,14 +729,14 @@
sizeOffset
:
6
}
},
xaxis
:
{
type
:
'datetime'
,
//设置X轴的类型 三种可选:category、datetime、numeric
labels
:
{
format
:
"MM-dd"
//设置X轴时间格式
}
},
//
xaxis: {
//
type: 'datetime', //设置X轴的类型 三种可选:category、datetime、numeric
//
labels: {
//
format: "MM-dd" //设置X轴时间格式
//
}
//
},
//设置X轴的时间
labels
:
[],
//
labels: [],
tooltip
:
{
y
:
[{
title
:
{
...
...
@@ -288,48 +766,137 @@
},
},
yesData
:
{},
//昨日数据
employeeList
:
[],
myEmployeeList
:
[],
ConsultObj
:
{},
//课程顾问数据
IsQueryAuth
:
false
,
//是否有查询市场部和课程顾问部人员权限
CurrentUserInfo
:
{},
//当前登录用户信息
IsShowEmpQuery
:
false
,
//是否显示员工下拉框
};
},
mounted
()
{
this
.
getData
();
created
()
{
this
.
CurrentUserInfo
=
this
.
getLocalStorage
();
if
(
this
.
CurrentUserInfo
&&
this
.
CurrentUserInfo
.
ActionMenuList
&&
this
.
CurrentUserInfo
.
ActionMenuList
.
length
>
0
)
{
this
.
CurrentUserInfo
.
ActionMenuList
.
forEach
((
x
)
=>
{
if
(
x
.
FunctionCode
==
"Query_MarketConsultant"
)
{
this
.
IsQueryAuth
=
true
;
}
});
}
if
(
this
.
IsQueryAuth
||
(
this
.
CurrentUserInfo
.
IsManager
==
1
&&
this
.
CurrentUserInfo
.
IsCourseConsultant
==
1
)
||
(
this
.
CurrentUserInfo
.
IsManager
==
1
&&
this
.
CurrentUserInfo
.
IsMarket
==
1
))
{
this
.
IsShowEmpQuery
=
true
;
}
else
{
this
.
msg
.
empList
.
push
(
this
.
CurrentUserInfo
.
Id
);
}
if
(
this
.
IsQueryAuth
)
{
this
.
comType
=
1
;
}
else
if
(
this
.
CurrentUserInfo
.
IsMarket
==
1
)
{
this
.
comType
=
1
;
}
else
if
(
this
.
CurrentUserInfo
.
IsCourseConsultant
==
1
)
{
this
.
comType
=
2
;
}
},
computed
:{
mounted
()
{
this
.
searchData
();
},
methods
:
{
//获取访问量
getVisitCount
(
num
,
total
){
if
(
this
.
yesData
){
//获取员工列表
getEmployeeList
()
{
var
qMsg
=
{
IsLeave
:
1
,
Dept_Id
:
0
,
};
if
(
this
.
comType
==
1
)
{
qMsg
.
Dept_Id
=
4
;
}
else
{
qMsg
.
Dept_Id
=
13
;
}
queryEmployee
(
qMsg
).
then
(
res
=>
{
this
.
employeeList
=
res
.
Data
;
this
.
myEmployeeList
=
res
.
Data
;
});
},
//筛选员工
filterEmployee
(
val
,
update
,
abort
)
{
update
(()
=>
{
this
.
myEmployeeList
=
this
.
employeeList
.
filter
(
v
=>
v
.
EmployeeName
.
indexOf
(
val
)
>
-
1
);
});
},
//计算百分比
calcPercent
(
num
,
total
)
{
num
=
parseFloat
(
num
);
total
=
parseFloat
(
total
);
if
(
isNaN
(
num
)
||
isNaN
(
total
))
{
return
"-"
;
}
return
total
<=
0
?
"0"
:
(
Math
.
round
(
num
/
total
*
10000
)
/
100.00
);
},
//重新查询
searchData
()
{
this
.
getEmployeeList
();
if
(
this
.
comType
==
1
)
{
this
.
getData
()
}
if
(
this
.
comType
==
2
)
{
this
.
getConsultant
();
}
},
//点击
getCheck
(
type
)
{
this
.
comType
=
type
;
//获取课程顾问数据
getConsultant
()
{
if
(
this
.
dateList
&&
this
.
dateList
.
length
>
0
)
{
this
.
msg
.
startTime
=
this
.
dateList
[
0
];
this
.
msg
.
endTime
=
this
.
dateList
[
1
];
}
else
{
this
.
msg
.
startTime
=
""
;
this
.
msg
.
endTime
=
""
;
}
ConsultantStatic
(
this
.
msg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
ConsultObj
=
res
.
Data
;
}
});
},
//获取数据
//获取
市场部
数据
getData
()
{
MarketStatic
({}).
then
(
res
=>
{
if
(
this
.
dateList
&&
this
.
dateList
.
length
>
0
)
{
this
.
msg
.
startTime
=
this
.
dateList
[
0
];
this
.
msg
.
endTime
=
this
.
dateList
[
1
];
}
else
{
this
.
msg
.
startTime
=
""
;
this
.
msg
.
endTime
=
""
;
}
MarketStatic
(
this
.
msg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
let
tempData
=
res
.
Data
.
dayList
;
this
.
yesData
=
res
.
Data
.
YesDataObj
;
this
.
series
[
0
].
data
=
[];
this
.
series
[
1
].
data
=
[];
this
.
series
[
2
].
data
=
[];
this
.
xArray
=
[];
tempData
.
forEach
(
x
=>
{
this
.
series
[
0
].
data
.
push
(
x
.
ClueCount
);
this
.
series
[
1
].
data
.
push
(
x
.
VisitCount
);
this
.
series
[
2
].
data
.
push
(
x
.
TrialLessonCount
);
this
.
chartOptions
.
labels
.
push
(
x
.
DayStr
);
this
.
xArray
.
push
(
x
.
DayStr
);
})
if
(
this
.
xArray
&&
this
.
xArray
.
length
>
0
)
{
this
.
chartOptions
=
{
xaxis
:
{
categories
:
this
.
xArray
}
}
}
setTimeout
(()
=>
{
this
.
$refs
.
apex
.
updateSeries
(
this
.
series
)
},
100
)
}
});
},
}
}
}
</
script
>
\ No newline at end of file
src/pages/course/workutaTeaching.vue
View file @
29bcc01b
...
...
@@ -285,7 +285,6 @@ export default {
return
obj
},
choicedate
(
item
,
x
,
index
,
y
){
//点击某一个弹出
console
.
log
(
item
,
x
);
this
.
InfoMsg
=
{
index
:
index
,
y
:
y
,
...
...
src/pages/financial/addFinancialProcess.vue
View file @
29bcc01b
...
...
@@ -1422,7 +1422,6 @@
this
.
closeLayer
()
},
getItemValue
(
obj
,
index
)
{
console
.
log
(
obj
)
this
.
SpecialNode
=
obj
.
SpecialNode
this
.
addBtn
=
false
;
this
.
updateItemIndex
=
index
;
...
...
src/pages/system/stuDistributionRule.vue
View file @
29bcc01b
...
...
@@ -82,7 +82,6 @@ export default {
this
.
outerVisible
=
false
;
},
getsuccess2
(
list
,
type
)
{
console
.
log
(
list
);
this
.
chosenUser
=
list
;
this
.
outerVisible
=
false
;
},
...
...
src/pages/system/stuManageConfig.vue
View file @
29bcc01b
...
...
@@ -13,6 +13,7 @@
<q-tab
:ripple=
"false"
:name=
"4"
label=
"收客渠道"
/>
<q-tab
:ripple=
"false"
:name=
"5"
label=
"客户需求"
></q-tab>
<q-tab
:ripple=
"false"
:name=
"6"
label=
"客户分配规则"
></q-tab>
<q-tab
:ripple=
"false"
:name=
"7"
label=
"目标管理"
></q-tab>
</q-tabs>
<stage
v-if=
"tabCheck == 1"
></stage>
<cusType
v-if=
"tabCheck == 2"
></cusType>
...
...
@@ -20,6 +21,7 @@
<channel
v-if=
"tabCheck == 4"
></channel>
<customneed
v-if=
"tabCheck == 5"
></customneed>
<stu-distribution-rule
v-if=
"tabCheck == 6"
></stu-distribution-rule>
<stuTarget
v-if=
"tabCheck==7"
></stuTarget>
</div>
</
template
>
<
script
>
...
...
@@ -29,6 +31,7 @@ import aim from "./studyAim";
import
channel
from
"./stuReceiveChannel"
;
import
customneed
from
"./customneed"
;
import
stuDistributionRule
from
"./stuDistributionRule"
;
import
stuTarget
from
"./stuTarget"
;
export
default
{
components
:
{
stage
,
...
...
@@ -36,7 +39,8 @@ export default {
aim
,
channel
,
customneed
,
stuDistributionRule
stuDistributionRule
,
stuTarget
},
data
()
{
return
{
...
...
src/pages/system/stuTarget.vue
0 → 100644
View file @
29bcc01b
<
template
>
<div
class=
"page-body"
>
<div
class=
"page-content"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
separator=
"none"
:data=
"dataList"
:columns=
"columns"
row-key=
"name"
>
<template
v-slot:top=
"props"
>
<div
class=
"col-2 q-table__title"
>
目标管理
</div>
<q-space
/>
<div
class=
"page-option"
>
<el-date-picker
v-model=
"dateTime"
size=
"small"
style=
"margin-right:10px;"
type=
"month"
value-format=
"yyyy-MM"
@
change=
"dateChange"
placeholder=
"选择月"
>
</el-date-picker>
<q-btn
color=
"accent"
size=
"sm"
class=
"q-mr-md"
icon=
"add"
label=
"新增阶段"
@
click=
"addObj(null)"
/>
</div>
</
template
>
<
template
v-slot:body-cell-Id=
"props"
>
<q-td
:props=
"props"
>
<div>
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"accent"
style=
"font-weight:400"
label=
"编辑"
@
click=
"addObj(props.row)"
/>
<q-btn
flat
size=
"xs"
icon=
"delete"
color=
"negative"
class=
"q-mr-xs"
label=
"删除"
@
click=
"deletTarget(props.row.Id)"
/>
</div>
</q-td>
</
template
>
<
template
v-slot:bottom
>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
</
template
>
</q-table>
</div>
<target-form
v-if=
"isShowTargetForm"
:save-obj=
"customObj"
@
close=
"closestageForm"
@
success=
"refreshPage"
>
</target-form>
</div>
</template>
<
script
>
import
{
GetConsultantGoalPage
,
RemoveConsultantGoal
}
from
'../../api/system/index'
import
targetForm
from
'../../components/system/target-form'
export
default
{
meta
:
{
title
:
"目标管理"
},
components
:
{
targetForm
},
data
()
{
return
{
columns
:
[{
name
:
'YearStr'
,
label
:
'年份'
,
field
:
'YearStr'
,
align
:
'left'
},
{
name
:
'GoalMoney'
,
label
:
'金额'
,
field
:
'GoalMoney'
,
align
:
'left'
},
{
name
:
'CreateBy'
,
label
:
'创建人'
,
align
:
'left'
,
field
:
'CreateBy'
},
{
name
:
'Id'
,
label
:
'操作'
,
field
:
'Id'
}],
msg
:
{
pageIndex
:
1
,
pageSize
:
12
,
YearStr
:
''
,
MonthStr
:
''
,
rowsPerPage
:
12
},
dataList
:
[],
pageCount
:
0
,
loading
:
true
,
isShowTargetForm
:
false
,
customObj
:
{},
dateTime
:
''
}
},
mounted
()
{
this
.
getList
()
},
methods
:
{
//选择日期
dateChange
(
val
){
if
(
val
){
let
myDate
=
val
.
split
(
'-'
);
this
.
msg
.
YearStr
=
myDate
[
0
];
this
.
msg
.
MonthStr
=
myDate
[
1
];
}
else
{
this
.
msg
.
YearStr
=
''
;
this
.
msg
.
MonthStr
=
''
;
}
this
.
getList
();
},
//翻页
changePage
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
()
},
deletTarget
(
Id
)
{
let
delMsg
=
{
Id
:
Id
};
this
.
$q
.
dialog
({
title
:
'提示信息'
,
message
:
'是否确定该目标?'
,
cancel
:
true
,
persistent
:
true
,
ok
:
"确定"
,
cancel
:
"取消"
,
}).
onOk
(()
=>
{
RemoveConsultantGoal
(
delMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'删除成功!'
,
position
:
'top'
})
this
.
getList
();
}
})
}).
onCancel
(()
=>
{
});
},
getList
()
{
this
.
loading
=
true
;
GetConsultantGoalPage
(
this
.
msg
).
then
(
res
=>
{
this
.
loading
=
false
;
if
(
res
.
Code
==
1
)
{
console
.
log
(
res
,
'数据'
);
this
.
dataList
=
res
.
Data
.
PageData
;
this
.
pageCount
=
res
.
Data
.
PageCount
;
}
})
},
closestageForm
()
{
this
.
isShowTargetForm
=
false
},
refreshPage
()
{
this
.
getList
();
},
addObj
(
obj
)
{
if
(
obj
)
{
this
.
customObj
=
obj
}
else
{
this
.
customObj
=
null
}
this
.
isShowTargetForm
=
true
;
}
},
}
</
script
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass')
</
style
>
src/pages/teacher/contribution/contributeManage.vue
View file @
29bcc01b
...
...
@@ -397,7 +397,6 @@
},
saveCourse2
(){
console
.
log
(
this
.
gaochouMsg
)
setRemunerationState
(
this
.
gaochouMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
$q
.
notify
({
...
...
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