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
27bb5c1d
Commit
27bb5c1d
authored
Sep 04, 2024
by
youjie
Browse files
Options
Browse Files
Download
Plain Diff
no message
parents
49db80f2
27690f81
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
361 additions
and
518 deletions
+361
-518
user-right-box.vue
src/components/global/user-right-box.vue
+155
-279
orderlist.vue
src/components/sale/orderlist.vue
+43
-52
reserve-form.vue
src/components/schedul/reserve-form.vue
+9
-0
MainLayout.vue
src/layouts/MainLayout.vue
+4
-8
audition.vue
src/pages/h5page/components/audition.vue
+134
-136
reserveClassStudent.vue
src/pages/sale/reserveClassStudent.vue
+15
-39
erpindex.js
src/utils/erpindex.js
+1
-4
No files found.
src/components/global/user-right-box.vue
View file @
27bb5c1d
<
template
>
<
template
>
<q-dialog
<q-dialog
v-model=
"persistent"
maximized
full-height
position=
"right"
@
hide=
"closeShenheForm"
>
v-model=
"persistent"
<q-card
style=
"margin-top:61px;width:375px;padding-bottom: 70px;"
class=
"no-border-radius q-pa-lg"
>
maximized
<q-scroll-area
style=
"height: 100%; max-width: 375px;"
:thumb-style=
"thumbStyle"
:bar-style=
"barStyle"
>
full-height
position=
"right"
@
hide=
"closeShenheForm"
>
<q-card
style=
"margin-top:61px;width:375px;padding-bottom: 70px;"
class=
"no-border-radius q-pa-lg"
>
<q-scroll-area
style=
"height: 100%; max-width: 375px;"
:thumb-style=
"thumbStyle"
:bar-style=
"barStyle"
>
<div
class=
"text-weight-bold"
>
<div
class=
"text-weight-bold"
>
<span
style=
"font-size:20px;"
class=
"q-mr-md"
>
用户个人资料
</span>
<span
style=
"font-size:20px;"
class=
"q-mr-md"
>
用户个人资料
</span>
<span
class=
"remark-font"
>
12条未读消息
</span>
<span
class=
"remark-font"
>
12条未读消息
</span>
</div>
</div>
<div
class=
"q-mt-lg flex"
>
<div
class=
"q-mt-lg flex"
>
<q-avatar
<q-avatar
size=
"100px"
font-size=
"36px"
rounded
style=
"background:#C9F7F5"
text-color=
"white"
>
size=
"100px"
font-size=
"36px"
rounded
style=
"background:#C9F7F5"
text-color=
"white"
>
<img
:src=
"showObj.UserIcon"
v-if=
"showObj.UserIcon"
/>
<img
:src=
"showObj.UserIcon"
v-if=
"showObj.UserIcon"
/>
<span
v-else
>
{{
showObj
.
AccountName
.
substring
(
0
,
1
)
}}
</span>
<span
v-else
>
{{
showObj
.
AccountName
.
substring
(
0
,
1
)
}}
</span>
</q-avatar>
</q-avatar>
...
@@ -38,10 +19,8 @@
...
@@ -38,10 +19,8 @@
{{
showObj
.
SchoolName
}}
·
{{
showObj
.
PostName
}}
{{
showObj
.
SchoolName
}}
·
{{
showObj
.
PostName
}}
</div>
</div>
<div
class=
"flex items-center text-muted"
>
<div
class=
"flex items-center text-muted"
>
<inline-svg
<inline-svg
class=
"svg-icon svg-icon-primary q-mr-xs"
src=
"icons/svg/Communication/Mail-notification.svg"
>
class=
"svg-icon svg-icon-primary q-mr-xs"
</inline-svg>
src=
"icons/svg/Communication/Mail-notification.svg"
></inline-svg>
<span>
{{
showObj
.
Email
}}
</span>
<span>
{{
showObj
.
Email
}}
</span>
</div>
</div>
<div
class=
"q-mt-xs"
>
<div
class=
"q-mt-xs"
>
...
@@ -51,21 +30,10 @@
...
@@ -51,21 +30,10 @@
</div>
</div>
<q-separator
color=
"grey-2"
class=
"q-my-md"
></q-separator>
<q-separator
color=
"grey-2"
class=
"q-my-md"
></q-separator>
<q-list>
<q-list>
<q-item
<q-item
class=
"q-my-sm"
clickable
v-ripple
v-for=
"(item, index) in showObj.UserCenterList"
:key=
"index"
class=
"q-my-sm"
:to=
"item.MenuUrl"
>
clickable
v-ripple
v-for=
"(item, index) in showObj.UserCenterList"
:key=
"index"
:to=
"item.MenuUrl"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
<i
:class=
"[item.MenuIcon]"
></i>
<i
:class=
"[item.MenuIcon]"
></i>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
...
@@ -73,19 +41,9 @@
...
@@ -73,19 +41,9 @@
<q-item-label
class=
"font-pfb"
>
{{
item
.
MenuName
}}
</q-item-label>
<q-item-label
class=
"font-pfb"
>
{{
item
.
MenuName
}}
</q-item-label>
</q-item-section>
</q-item-section>
</q-item>
</q-item>
<q-item
<q-item
class=
"q-my-sm"
clickable
v-ripple
@
click=
"autoSubmitHandler()"
>
class=
"q-my-sm"
clickable
v-ripple
@
click=
"autoSubmitHandler()"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
<i
class=
"iconfont icon-zichan"
></i>
<i
class=
"iconfont icon-zichan"
></i>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
...
@@ -96,12 +54,7 @@
...
@@ -96,12 +54,7 @@
<!-- 跳转进阶未来 -->
<!-- 跳转进阶未来 -->
<q-item
v-if=
"userinfo.Id==2602"
class=
"q-my-sm"
clickable
v-ripple
@
click=
"goUrlZC(4)"
>
<q-item
v-if=
"userinfo.Id==2602"
class=
"q-my-sm"
clickable
v-ripple
@
click=
"goUrlZC(4)"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
<i
class=
"iconfont icon-fabu"
></i>
<i
class=
"iconfont icon-fabu"
></i>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
...
@@ -112,12 +65,7 @@
...
@@ -112,12 +65,7 @@
<!-- 跳转资产 -->
<!-- 跳转资产 -->
<q-item
class=
"q-my-sm"
clickable
v-ripple
@
click=
"goUrlZC(1)"
>
<q-item
class=
"q-my-sm"
clickable
v-ripple
@
click=
"goUrlZC(1)"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
<i
class=
"iconfont icon-zichan"
></i>
<i
class=
"iconfont icon-zichan"
></i>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
...
@@ -128,12 +76,7 @@
...
@@ -128,12 +76,7 @@
<!-- 跳转资产 -->
<!-- 跳转资产 -->
<q-item
class=
"q-my-sm"
clickable
v-ripple
@
click=
"goUrlZC(2)"
>
<q-item
class=
"q-my-sm"
clickable
v-ripple
@
click=
"goUrlZC(2)"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
<i
class=
"iconfont icon-qinggoudan"
></i>
<i
class=
"iconfont icon-qinggoudan"
></i>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
...
@@ -144,12 +87,7 @@
...
@@ -144,12 +87,7 @@
<!-- 请购审核 -->
<!-- 请购审核 -->
<q-item
class=
"q-my-sm"
clickable
v-ripple
@
click=
"goUrlZC(3)"
>
<q-item
class=
"q-my-sm"
clickable
v-ripple
@
click=
"goUrlZC(3)"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"primary"
>
<i
class=
"iconfont icon-ruku"
></i>
<i
class=
"iconfont icon-ruku"
></i>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
...
@@ -161,249 +99,187 @@
...
@@ -161,249 +99,187 @@
<q-separator
color=
"grey-2"
class=
"q-my-md"
></q-separator>
<q-separator
color=
"grey-2"
class=
"q-my-md"
></q-separator>
<div
class=
"text-weight-bold"
style=
"font-size:16px;"
>
常用功能
</div>
<div
class=
"text-weight-bold"
style=
"font-size:16px;"
>
常用功能
</div>
<q-list>
<q-list>
<q-item
<q-item
class=
"q-my-sm q-pa-xs"
clickable
v-ripple
@
click=
"goUrlgeren"
>
class=
"q-my-sm q-pa-xs"
clickable
v-ripple
@
click=
"goUrlgeren"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"secondary"
>
style=
"background-color: #F3F6F9;"
<inline-svg
class=
"svg-icon svg-icon-secondary"
src=
"icons/svg/General/Notification2.svg"
></inline-svg>
rounded
size=
"40px"
text-color=
"secondary"
>
<inline-svg
class=
"svg-icon svg-icon-secondary"
src=
"icons/svg/General/Notification2.svg"
></inline-svg>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
<q-item-section>
<q-item-section>
<q-item-label
class=
"font-pfb"
>
个人资料
</q-item-label>
<q-item-label
class=
"font-pfb"
>
个人资料
</q-item-label>
<q-item-label
caption
lines=
"1"
class=
"remark-font"
<q-item-label
caption
lines=
"1"
class=
"remark-font"
>
账号信息设置等相关功能
</q-item-label>
>
账号信息设置等相关功能
</q-item-label
>
</q-item-section>
</q-item-section>
</q-item>
</q-item>
<q-item
<!--
<q-item
class=
"q-my-sm q-pa-xs"
clickable
v-ripple
@
click=
"undefinedGongneng"
>
class=
"q-my-sm q-pa-xs"
clickable
v-ripple
@
click=
"undefinedGongneng"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"secondary"
>
style=
"background-color: #F3F6F9;"
<inline-svg
class=
"svg-icon svg-icon-warning"
src=
"icons/svg/Shopping/Chart-bar1.svg"
></inline-svg>
rounded
size=
"40px"
text-color=
"secondary"
>
<inline-svg
class=
"svg-icon svg-icon-warning"
src=
"icons/svg/Shopping/Chart-bar1.svg"
></inline-svg>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
<q-item-section>
<q-item-section>
<q-item-label
class=
"font-pfb"
>
奖金提成
</q-item-label>
<q-item-label
class=
"font-pfb"
>
奖金提成
</q-item-label>
<q-item-label
caption
lines=
"1"
class=
"remark-font"
<q-item-label
caption
lines=
"1"
class=
"remark-font"
>
销售与教师相关的奖金或提成
</q-item-label>
>
销售与教师相关的奖金或提成
</q-item-label
>
</q-item-section>
</q-item-section>
</q-item>
</q-item>
<q-item
<q-item
class=
"q-my-sm q-pa-xs"
clickable
v-ripple
@
click=
"undefinedGongneng"
>
class=
"q-my-sm q-pa-xs"
clickable
v-ripple
@
click=
"undefinedGongneng"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"secondary"
>
style=
"background-color: #F3F6F9;"
<inline-svg
class=
"svg-icon svg-icon-negative"
src=
"icons/svg/Files/Selected-file.svg"
></inline-svg>
rounded
size=
"40px"
text-color=
"secondary"
>
<inline-svg
class=
"svg-icon svg-icon-negative"
src=
"icons/svg/Files/Selected-file.svg"
></inline-svg>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
<q-item-section>
<q-item-section>
<q-item-label
class=
"font-pfb"
>
考勤
</q-item-label>
<q-item-label
class=
"font-pfb"
>
考勤
</q-item-label>
<q-item-label
caption
lines=
"1"
class=
"remark-font"
<q-item-label
caption
lines=
"1"
class=
"remark-font"
>
出勤,请假等相关功能入口
</q-item-label>
>
出勤,请假等相关功能入口
</q-item-label
>
</q-item-section>
</q-item-section>
</q-item>
</q-item>
<q-item
<q-item
class=
"q-my-sm q-pa-xs"
clickable
v-ripple
@
click=
"undefinedGongneng"
>
class=
"q-my-sm q-pa-xs"
clickable
v-ripple
@
click=
"undefinedGongneng"
>
<q-item-section
avatar
>
<q-item-section
avatar
>
<q-avatar
<q-avatar
style=
"background-color: #F3F6F9;"
rounded
size=
"40px"
text-color=
"secondary"
>
style=
"background-color: #F3F6F9;"
<inline-svg
class=
"svg-icon svg-icon-primary"
src=
"icons/svg/Communication/Mail-opened.svg"
>
rounded
</inline-svg>
size=
"40px"
text-color=
"secondary"
>
<inline-svg
class=
"svg-icon svg-icon-primary"
src=
"icons/svg/Communication/Mail-opened.svg"
></inline-svg>
</q-avatar>
</q-avatar>
</q-item-section>
</q-item-section>
<q-item-section>
<q-item-section>
<q-item-label
class=
"font-pfb"
>
我的工作
</q-item-label>
<q-item-label
class=
"font-pfb"
>
我的工作
</q-item-label>
<q-item-label
caption
lines=
"1"
class=
"remark-font"
<q-item-label
caption
lines=
"1"
class=
"remark-font"
>
OKR、教师备课相关功能入口
</q-item-label>
>
OKR、教师备课相关功能入口
</q-item-label
>
</q-item-section>
</q-item-section>
</q-item>
</q-item>
-->
</q-list>
</q-list>
</q-scroll-area>
</q-scroll-area>
</q-card>
</q-card>
<!--
<div
class=
"dialog-out-close"
@
click=
"closeShenheForm"
style=
"height:40px !important;border-top-left-radius: 4px !important;border-bottom-left-radius: 4px !important;"
>
<form
id=
"cgForm"
method=
"post"
target=
"_blank"
style=
"display:none;"
<q-icon
name=
"iconfont icon-jujue1"
size=
"26px"
/>
action=
"http://cloud.kookaku.com/user.php?mod=login&op=logging&action=login&loginsubmit=yes&loginhash=LYe3Z&returnType=page&sc=erp"
>
</div>
-->
</form>
<form
id=
"cgForm"
method=
"post"
target=
"_blank"
style=
"display:none;"
action=
"http://cloud.kookaku.com/user.php?mod=login&op=logging&action=login&loginsubmit=yes&loginhash=LYe3Z&returnType=page&sc=erp"
></form>
</q-dialog>
</q-dialog>
</
template
>
</
template
>
<
script
>
<
script
>
import
Lockr
from
"lockr"
;
import
Lockr
from
"lockr"
;
import
{
url_jump_zc
,
url_jump_jjwl
}
from
"../../utils/url"
;
import
{
export
default
{
url_jump_zc
,
props
:
{
url_jump_jjwl
showObj
:
{
}
from
"../../utils/url"
;
type
:
Object
,
export
default
{
default
:
null
props
:
{
}
showObj
:
{
},
type
:
Object
,
data
()
{
default
:
null
return
{
persistent
:
true
,
text
:
"Field content"
,
reason
:
""
,
saveLoading
:
false
,
saveType
:
0
,
thumbStyle
:
{
right
:
"4px"
,
borderRadius
:
"5px"
,
backgroundColor
:
"#027be3"
,
width
:
"5px"
,
opacity
:
0.75
},
barStyle
:
{
right
:
"2px"
,
borderRadius
:
"9px"
,
backgroundColor
:
"#027be3"
,
width
:
"9px"
,
opacity
:
0.2
},
userinfo
:{}
};
},
mounted
()
{
this
.
userinfo
=
this
.
getLocalStorage
();
},
methods
:
{
autoSubmitHandler
()
{
let
userinfo
=
this
.
getLocalStorage
();
var
formData
=
{
formhash
:
"6d51f5e5"
,
referer
:
"http://cloud.kookaku.com/index.php?mod=explorer"
,
email
:
`
${
userinfo
.
UserMobile
}
@kookaku.com`
,
password
:
"lcdjl520"
};
let
form
=
document
.
getElementById
(
"cgForm"
);
for
(
let
p
in
formData
)
{
if
(
p
!=
"url"
)
{
let
input
=
document
.
createElement
(
"input"
);
input
.
setAttribute
(
"name"
,
p
);
input
.
setAttribute
(
"value"
,
formData
[
p
]);
form
.
append
(
input
);
}
}
}
form
.
submit
();
},
closeShenheForm
()
{
this
.
$emit
(
"close"
);
},
},
goUrlgeren
()
{
data
()
{
//个人资料
return
{
this
.
$root
.
$emit
(
"goworkobj"
);
persistent
:
true
,
this
.
$router
.
push
({
text
:
"Field content"
,
path
:
"/user/personalData"
reason
:
""
,
});
saveLoading
:
false
,
},
saveType
:
0
,
undefinedGongneng
()
{
thumbStyle
:
{
this
.
$q
right
:
"4px"
,
.
dialog
({
borderRadius
:
"5px"
,
title
:
"功能提示"
,
backgroundColor
:
"#027be3"
,
message
:
"此功能即将在下一版本中开放"
width
:
"5px"
,
})
opacity
:
0.75
.
onOk
(()
=>
{});
},
barStyle
:
{
right
:
"2px"
,
borderRadius
:
"9px"
,
backgroundColor
:
"#027be3"
,
width
:
"9px"
,
opacity
:
0.2
},
userinfo
:
{}
};
},
},
logout
()
{
mounted
()
{
this
.
$store
this
.
userinfo
=
this
.
getLocalStorage
();
.
dispatch
(
"LogOut"
)
.
then
(()
=>
{
this
.
$router
.
push
(
"/login"
);
})
.
catch
(
e
=>
{});
},
},
methods
:
{
autoSubmitHandler
()
{
let
userinfo
=
this
.
getLocalStorage
();
var
formData
=
{
formhash
:
"6d51f5e5"
,
referer
:
"http://cloud.kookaku.com/index.php?mod=explorer"
,
email
:
`
${
userinfo
.
UserMobile
}
@kookaku.com`
,
password
:
"lcdjl520"
};
let
form
=
document
.
getElementById
(
"cgForm"
);
for
(
let
p
in
formData
)
{
if
(
p
!=
"url"
)
{
let
input
=
document
.
createElement
(
"input"
);
input
.
setAttribute
(
"name"
,
p
);
input
.
setAttribute
(
"value"
,
formData
[
p
]);
form
.
append
(
input
);
}
}
form
.
submit
();
},
closeShenheForm
()
{
this
.
$emit
(
"close"
);
},
goUrlgeren
()
{
//个人资料
this
.
$root
.
$emit
(
"goworkobj"
);
this
.
$router
.
push
({
path
:
"/user/personalData"
});
},
undefinedGongneng
()
{
this
.
$q
.
dialog
({
title
:
"功能提示"
,
message
:
"此功能即将在下一版本中开放"
})
.
onOk
(()
=>
{});
},
logout
()
{
this
.
$store
.
dispatch
(
"LogOut"
)
.
then
(()
=>
{
this
.
$router
.
push
(
"/login"
);
})
.
catch
(
e
=>
{});
},
goUrlZC
(
type
)
{
goUrlZC
(
type
)
{
let
userinfo
=
this
.
getLocalStorage
();
let
userinfo
=
this
.
getLocalStorage
();
let
token
=
Lockr
.
get
(
"Token"
);
let
token
=
Lockr
.
get
(
"Token"
);
if
(
type
==
1
)
{
if
(
type
==
1
)
{
let
url
=
let
url
=
url_jump_zc
+
url_jump_zc
+
"/#/Autologin?ObjInfo="
+
"/#/Autologin?ObjInfo="
+
token
+
token
+
"&SecretKey="
+
"&SecretKey="
+
userinfo
.
UploadConfig
.
SecretKey
;
userinfo
.
UploadConfig
.
SecretKey
;
window
.
open
(
url
);
window
.
open
(
url
);
}
else
if
(
type
==
2
)
{
}
else
if
(
type
==
2
)
{
let
url
=
let
url
=
url_jump_zc
+
url_jump_zc
+
"/#/Autologin?ObjInfo="
+
"/#/Autologin?ObjInfo="
+
token
+
token
+
"&SecretKey="
+
"&SecretKey="
+
userinfo
.
UploadConfig
.
SecretKey
+
userinfo
.
UploadConfig
.
SecretKey
+
"&ComeFrom=2"
;
"&ComeFrom=2"
;
window
.
open
(
url
);
window
.
open
(
url
);
}
else
if
(
type
==
3
)
{
}
else
if
(
type
==
3
)
{
let
url
=
let
url
=
url_jump_zc
+
url_jump_zc
+
"/#/Autologin?ObjInfo="
+
"/#/Autologin?ObjInfo="
+
token
+
token
+
"&SecretKey="
+
"&SecretKey="
+
userinfo
.
UploadConfig
.
SecretKey
+
userinfo
.
UploadConfig
.
SecretKey
+
"&ComeFrom=3"
;
"&ComeFrom=3"
;
window
.
open
(
url
);
window
.
open
(
url
);
}
else
if
(
type
==
4
)
{
}
else
if
(
type
==
4
)
{
let
url
=
let
url
=
url_jump_jjwl
+
url_jump_jjwl
+
"/#/login?userId="
+
this
.
userinfo
.
Id
;
"/#/login?userId="
+
this
.
userinfo
.
Id
;
window
.
open
(
url
);
window
.
open
(
url
);
}
}
}
}
}
}
}
;
};
</
script
>
</
script
>
<
style
></
style
>
<
style
></
style
>
src/components/sale/orderlist.vue
View file @
27bb5c1d
...
@@ -6,32 +6,32 @@
...
@@ -6,32 +6,32 @@
<div
class=
"table-body"
v-loading=
"loading"
>
<div
class=
"table-body"
v-loading=
"loading"
>
<table
class=
"enrollTotalSearchTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<table
class=
"enrollTotalSearchTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tr
class=
"fix_th"
>
<tr
class=
"fix_th"
>
<th
width=
"12%"
>
单号
</th>
<th
width=
"12%"
>
单号
</th>
<th
width=
"6%"
>
人数
</th>
<th
width=
"6%"
>
人数
</th>
<th
width=
"6%"
>
单价
</th>
<th
width=
"6%"
>
单价
</th>
<th
width=
"6%"
v-if=
"studyOrderType!=1"
>
教材费
</th>
<th
width=
"6%"
v-if=
"studyOrderType!=1"
>
教材费
</th>
<th
width=
"6%"
v-if=
"studyOrderType!=1"
>
课件费
</th>
<th
width=
"6%"
v-if=
"studyOrderType!=1"
>
课件费
</th>
<th
width=
"6%"
v-if=
"studyOrderType!=1"
>
总课时
</th>
<th
width=
"6%"
v-if=
"studyOrderType!=1"
>
总课时
</th>
<th
width=
"6%"
>
成交
</th>
<th
width=
"6%"
>
成交
</th>
<th
width=
"6%"
>
应收总额
</th>
<th
width=
"6%"
>
应收总额
</th>
<th
width=
"6%"
>
实收
</th>
<th
width=
"6%"
>
实收
</th>
<th
width=
"6%"
>
优惠
</th>
<th
width=
"6%"
>
优惠
</th>
<th
width=
"6%"
>
少价金额
</th>
<th
width=
"6%"
>
少价金额
</th>
<th
width=
"6%"
>
退款
</th>
<th
width=
"6%"
>
退款
</th>
<th
width=
"6%"
>
平台税金
</th>
<th
width=
"6%"
>
平台税金
</th>
<th
width=
"6%"
>
待收金额
</th>
<th
width=
"6%"
>
待收金额
</th>
<template
v-if=
"AuthorityObj.isShowStudyRebate"
>
<template
v-if=
"AuthorityObj.isShowStudyRebate"
>
<th
width=
"6%"
>
留学订单回佣
</th>
<th
width=
"6%"
>
留学订单回佣
</th>
</
template
>
</
template
>
<th
width=
"6%"
>
状态
</th>
<th
width=
"6%"
>
状态
</th>
<th
v-if=
"viewType == 0"
>
操作
</th>
<th
v-if=
"viewType == 0"
>
操作
</th>
<tr>
<tr>
<td
v-show=
"dataList && dataList.length == 0"
:colspan=
"17"
align=
"center"
>
<td
v-show=
"dataList && dataList.length == 0"
:colspan=
"17"
align=
"center"
>
暂无数据
暂无数据
</td>
</td>
</tr>
</tr>
<
template
v-for=
"(item, index) in dataList"
>
<
template
v-for=
"(item, index) in dataList"
>
<tr>
<tr
:key=
"`r_d_1_`+index"
>
<td
:rowspan=
"3"
style=
"text-align: left"
>
<td
:rowspan=
"3"
style=
"text-align: left"
>
<div>
<div>
<span
@
click=
"goOrderdetails(item, 1)"
class=
"order_OfferId"
>
{{
<span
@
click=
"goOrderdetails(item, 1)"
class=
"order_OfferId"
>
{{
...
@@ -104,7 +104,6 @@
...
@@ -104,7 +104,6 @@
<div>
{{ item.CreateByName }}
</div>
<div>
{{ item.CreateByName }}
</div>
<!-- <div>课程顾问:{{ item.ConsultantName||'无' }}</div> -->
<!-- <div>课程顾问:{{ item.ConsultantName||'无' }}</div> -->
<div>
市场专员:{{ item.EnterName ||'无' }}
</div>
<div>
市场专员:{{ item.EnterName ||'无' }}
</div>
<div
style=
"margin-top: 10px"
>
{{ item.CreateTime }}
</div>
<div
style=
"margin-top: 10px"
>
{{ item.CreateTime }}
</div>
<
template
v-if=
"AuthorityObj.isShowName"
>
<
template
v-if=
"AuthorityObj.isShowName"
>
<div
style=
"font-weight: bold;color:#2961FE;cursor:pointer;"
@
click=
"getClassInfo(item)"
>
<div
style=
"font-weight: bold;color:#2961FE;cursor:pointer;"
@
click=
"getClassInfo(item)"
>
...
@@ -130,9 +129,10 @@
...
@@ -130,9 +129,10 @@
<
template
v-if=
"item.OrderType == 1"
>
<
template
v-if=
"item.OrderType == 1"
>
<div
v-if=
"item.ClassList&&item.ClassList.length>0"
>
<div
v-if=
"item.ClassList&&item.ClassList.length>0"
>
课程名称:
课程名称:
<span
v-for=
"(itemc, indexc) in item.ClassList"
>
{{
indexc
>
0
?
'、'
:
""
}}{{
itemc
.
CourseName
}}
</span>
<span
v-for=
"(itemc, indexc) in item.ClassList"
:key=
"`c_`+indexc"
>
{{
indexc
>
0
?
'、'
:
""
}}{{
itemc
.
CourseName
}}
</span>
</div>
</div>
<div
v-else
=
"item.CourseName"
>
<div
v-else
>
课程名称:
{{
item
.
CourseName
}}
课程名称:
{{
item
.
CourseName
}}
</div>
</div>
<div
v-if=
"item.CourseSubjectName"
>
<div
v-if=
"item.CourseSubjectName"
>
...
@@ -189,10 +189,10 @@
...
@@ -189,10 +189,10 @@
<td
style=
"border:none;"
>
{{ item.GuestNum }}人
</td>
<td
style=
"border:none;"
>
{{ item.GuestNum }}人
</td>
<td
style=
"border:none;"
>
<td
style=
"border:none;"
>
<
template
v-if=
"item.Class_Price >= 0"
>
<
template
v-if=
"item.Class_Price >= 0"
>
{{
item
.
Class_Price
.
toFixed
(
2
)
}}
{{
item
.
Class_Price
.
toFixed
(
2
)
}}
</br
>
<br
/
>
<template
v-if=
"studyOrderType!=1"
>
<template
v-if=
"studyOrderType!=1"
>
(
{{
item
.
SellPriceType
==
2
?
'课时单价'
:
'课时总价'
}}
)
</
template
>
(
{{
item
.
SellPriceType
==
2
?
'课时单价'
:
'课时总价'
}}
)
</
template
>
</template>
</template>
</td>
</td>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
...
@@ -206,10 +206,7 @@
...
@@ -206,10 +206,7 @@
</
template
>
</
template
>
</td>
</td>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
{{ item.TotalClassHours }}
{{ item.TotalClassHours }}
</td>
</td>
<td
:style=
"{
<td
:style=
"{
color:
color:
...
@@ -449,11 +446,11 @@
...
@@ -449,11 +446,11 @@
</q-btn-dropdown>
</q-btn-dropdown>
</td>
</td>
</tr>
</tr>
<tr>
<tr
:key=
"`r_d_2_`+index"
>
<td
:colspan=
"studyOrderType!=1?17:14"
style=
"text-align: left"
>
<td
:colspan=
"studyOrderType!=1?17:14"
style=
"text-align: left"
>
<div
class=
"row"
v-if=
"item.GuestList && item.GuestList.length > 0"
>
<div
class=
"row"
v-if=
"item.GuestList && item.GuestList.length > 0"
>
学生名单:
学生名单:
<
template
v-for=
"(x, j) in item.GuestList"
:index=
"j"
>
<
template
v-for=
"(x, j) in item.GuestList"
>
<span
v-if=
"x.GuestState == 1"
style=
"color:#2961FE;margin-right: 5px"
:key=
"j"
>
{{
x
.
GuestName
}}
<span
v-if=
"x.GuestState == 1"
style=
"color:#2961FE;margin-right: 5px"
:key=
"j"
>
{{
x
.
GuestName
}}
</span>
</span>
<span
v-else
style=
"color:red;margin-right: 5px"
:key=
"j"
>
<span
v-else
style=
"color:red;margin-right: 5px"
:key=
"j"
>
...
@@ -521,7 +518,7 @@
...
@@ -521,7 +518,7 @@
<span
v-if=
"item.GuestList && item.GuestList.length == 0"
>
暂无
</span>
<span
v-if=
"item.GuestList && item.GuestList.length == 0"
>
暂无
</span>
</td>
</td>
</tr>
</tr>
<tr>
<tr
:key=
"`r_d_3_`+index"
>
<td
:colspan=
"studyOrderType!=1?17:14"
style=
"height: 168px;text-align: left"
>
<td
:colspan=
"studyOrderType!=1?17:14"
style=
"height: 168px;text-align: left"
>
<div
class=
"col row remarks q-gutter-x-md"
>
<div
class=
"col row remarks q-gutter-x-md"
>
<div
class=
"col"
>
<div
class=
"col"
>
...
@@ -556,15 +553,11 @@
...
@@ -556,15 +553,11 @@
<div
class=
"col"
>
<div
class=
"col"
>
<div>
教务备注:
</div>
<div>
教务备注:
</div>
<div
class=
"remarks-b "
>
<div
class=
"remarks-b "
>
<div
v-if=
"
<div
v-if=
"item.TeacherRemark != null || item.TeacherRemark != ''"
>
item.TeacherRemark != null || item.TeacherRemark != ''
"
>
<div>
{{ item.TeacherRemark }}
</div>
<div>
{{ item.TeacherRemark }}
</div>
<div
class=
"remarks-b-b"
>
<div
class=
"remarks-b-b"
>
<span
class=
"iconfont icon-xiangxia"
style=
"color: #2961FE;font-size: 10px"
v-if=
"
<span
class=
"iconfont icon-xiangxia"
style=
"color: #2961FE;font-size: 10px"
item.TeacherRemarkList &&
v-if=
"item.TeacherRemarkList&&item.TeacherRemarkList.length > 0 "
></span>
item.TeacherRemarkList.length > 0
"
></span>
<q-popup-proxy>
<q-popup-proxy>
<q-banner>
<q-banner>
<div
style=
"width: 500px;"
>
<div
style=
"width: 500px;"
>
...
@@ -581,9 +574,7 @@
...
@@ -581,9 +574,7 @@
</q-popup-proxy>
</q-popup-proxy>
</div>
</div>
</div>
</div>
<span
v-if=
"
<span
v-if=
"item.TeacherRemark == null || item.TeacherRemark == ''"
>
暂无
</span>
item.TeacherRemark == null || item.TeacherRemark == ''
"
>
暂无
</span>
</div>
</div>
</div>
</div>
<div
class=
"col"
>
<div
class=
"col"
>
...
@@ -912,16 +903,16 @@
...
@@ -912,16 +903,16 @@
{{
item
.
TextbookFee
.
toFixed
(
2
)
}}
{{
item
.
TextbookFee
.
toFixed
(
2
)
}}
</
template
>
</
template
>
</td>
</td>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
<
template
v-if=
"item.CoursewareFee >= 0"
>
<
template
v-if=
"item.CoursewareFee >= 0"
>
{{
item
.
CoursewareFee
.
toFixed
(
2
)
}}
{{
item
.
CoursewareFee
.
toFixed
(
2
)
}}
</
template
>
</
template
>
</td>
</td>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
<td
style=
"border:none;"
v-if=
"studyOrderType!=1"
>
{{ item.TotalClassHours }}
{{ item.TotalClassHours }}
</td>
</td>
<td
:style=
"{
<td
:style=
"{
color:
color:
item.Class_Price != item.Unit_Price
item.Class_Price != item.Unit_Price
? 'var(--q-color-negative)'
? 'var(--q-color-negative)'
...
...
src/components/schedul/reserve-form.vue
View file @
27bb5c1d
...
@@ -10,6 +10,11 @@
...
@@ -10,6 +10,11 @@
<div
class=
"text-h6"
>
{{
objOption
.
Id
==
0
?
'新增试听课程'
:
'修改试听课程'
}}
</div>
<div
class=
"text-h6"
>
{{
objOption
.
Id
==
0
?
'新增试听课程'
:
'修改试听课程'
}}
</div>
</q-card-section>
</q-card-section>
<q-card-section
class=
"q-pt-none scroll"
style=
"max-height: 70vh"
>
<q-card-section
class=
"q-pt-none scroll"
style=
"max-height: 70vh"
>
<p
><span>
试听时间:
</span><span
style=
"color:red;"
>
{{
timeFormatSeconds
(
objOption
.
ReservationDate
)
}}
</span></p>
<q-space
/>
<p><span
style=
"float:left;"
>
试听需求:
</span><div
v-html=
"objOption.Demand"
style=
"color:red;"
></div></p>
<q-space
/>
<div
class=
"row wrap"
>
<div
class=
"row wrap"
>
<q-input
filled
v-model=
"objOption.ClassDate"
class=
""
<q-input
filled
v-model=
"objOption.ClassDate"
class=
""
:class=
"[$q.platform.is.desktop?'col-6 q-pr-lg q-pb-lg':'col-12 q-pb-sm']"
:class=
"[$q.platform.is.desktop?'col-6 q-pr-lg q-pb-lg':'col-12 q-pb-sm']"
...
@@ -104,6 +109,8 @@
...
@@ -104,6 +109,8 @@
TrialLessonId
:
''
,
TrialLessonId
:
''
,
Visitor_Id
:
0
,
Visitor_Id
:
0
,
Id
:
0
,
Id
:
0
,
ReservationDate
:
""
,
Demand
:
""
,
},
},
saveLoading
:
false
,
saveLoading
:
false
,
TeacherList
:
[],
TeacherList
:
[],
...
@@ -171,6 +178,8 @@
...
@@ -171,6 +178,8 @@
this
.
objOption
.
ClassRoomId
=
res
.
Data
[
0
].
ClassRoomId
;
this
.
objOption
.
ClassRoomId
=
res
.
Data
[
0
].
ClassRoomId
;
this
.
objOption
.
TrialLessonId
=
res
.
Data
[
0
].
TrialLessonId
;
this
.
objOption
.
TrialLessonId
=
res
.
Data
[
0
].
TrialLessonId
;
this
.
objOption
.
Visitor_Id
=
res
.
Data
[
0
].
Visitor_Id
;
this
.
objOption
.
Visitor_Id
=
res
.
Data
[
0
].
Visitor_Id
;
this
.
objOption
.
ReservationDate
=
res
.
Data
[
0
].
ReservationDate
;
this
.
objOption
.
Demand
=
res
.
Data
[
0
].
Demand
;
if
(
this
.
objOption
.
TrialLessonId
==
0
){
if
(
this
.
objOption
.
TrialLessonId
==
0
){
this
.
objOption
.
ClassDate
=
this
.
timeFormatSeconds
(
res
.
Data
[
0
].
ReservationDate
);
this
.
objOption
.
ClassDate
=
this
.
timeFormatSeconds
(
res
.
Data
[
0
].
ReservationDate
);
}
}
...
...
src/layouts/MainLayout.vue
View file @
27bb5c1d
...
@@ -113,7 +113,7 @@
...
@@ -113,7 +113,7 @@
</q-item-section>
</q-item-section>
<q-item-section>
{{
x
.
MenuName
}}
</q-item-section>
<q-item-section>
{{
x
.
MenuName
}}
</q-item-section>
</q-item>
</q-item>
<q-expansion-item
v-else
:label=
"x.MenuName"
>
<q-expansion-item
v-else
:label=
"x.MenuName"
:key=
"`s_`+i"
>
<template
v-for=
"(y, yi) in x.SubList"
>
<template
v-for=
"(y, yi) in x.SubList"
>
<q-item
:to=
"y.MenuUrl"
clickable
v-ripple
:active=
"currentPath == y.MenuUrl"
:key=
"yi"
<q-item
:to=
"y.MenuUrl"
clickable
v-ripple
:active=
"currentPath == y.MenuUrl"
:key=
"yi"
class=
"q-ml-md"
v-if=
"!y.SubList || y.SubList.length == 0"
>
class=
"q-ml-md"
v-if=
"!y.SubList || y.SubList.length == 0"
>
...
@@ -122,7 +122,7 @@
...
@@ -122,7 +122,7 @@
</q-item-section>
</q-item-section>
<q-item-section>
{{
y
.
MenuName
}}
</q-item-section>
<q-item-section>
{{
y
.
MenuName
}}
</q-item-section>
</q-item>
</q-item>
<q-expansion-item
v-else
:label=
"y.MenuName"
class=
"q-ml-md"
>
<q-expansion-item
v-else
:label=
"y.MenuName"
class=
"q-ml-md"
:key=
"`s_`+i+`_t_`+yi"
>
<q-item
:to=
"z.MenuUrl"
clickable
v-ripple
:active=
"currentPath == z.MenuUrl"
:key=
"zi"
<q-item
:to=
"z.MenuUrl"
clickable
v-ripple
:active=
"currentPath == z.MenuUrl"
:key=
"zi"
v-for=
"(z, zi) in y.SubList"
class=
"q-ml-md"
>
v-for=
"(z, zi) in y.SubList"
class=
"q-ml-md"
>
<q-item-section
avatar
style=
"padding-right: 0; min-width: 30px"
>
<q-item-section
avatar
style=
"padding-right: 0; min-width: 30px"
>
...
@@ -238,9 +238,7 @@
...
@@ -238,9 +238,7 @@
this
.
secondNavs
=
this
.
secondNavs
=
newVal
.
MenuList
.
length
>
0
?
newVal
.
MenuList
.
length
>
0
?
newVal
.
MenuList
[
i
]
&&
newVal
.
MenuList
[
i
].
SubList
?
newVal
.
MenuList
[
i
]
&&
newVal
.
MenuList
[
i
].
SubList
?
newVal
.
MenuList
[
i
].
SubList
:
newVal
.
MenuList
[
i
].
SubList
:
[]
:
[];
[]
:
[];
}
}
if
(
newVal
&&
newVal
.
UserCenterList
)
{
if
(
newVal
&&
newVal
.
UserCenterList
)
{
this
.
userCenterMenuList
=
newVal
.
UserCenterList
;
this
.
userCenterMenuList
=
newVal
.
UserCenterList
;
...
@@ -262,9 +260,7 @@
...
@@ -262,9 +260,7 @@
this
.
secondNavs
=
this
.
secondNavs
=
this
.
userInfo
.
MenuList
.
length
>
0
?
this
.
userInfo
.
MenuList
.
length
>
0
?
this
.
userInfo
.
MenuList
[
i
]
&&
this
.
userInfo
.
MenuList
[
i
].
SubList
?
this
.
userInfo
.
MenuList
[
i
]
&&
this
.
userInfo
.
MenuList
[
i
].
SubList
?
this
.
userInfo
.
MenuList
[
i
].
SubList
:
this
.
userInfo
.
MenuList
[
i
].
SubList
:
[]
:
[];
[]
:
[];
}
}
this
.
$root
.
$on
(
"goworkobj"
,
data
=>
{
this
.
$root
.
$on
(
"goworkobj"
,
data
=>
{
this
.
secondNavs
=
[];
this
.
secondNavs
=
[];
...
...
src/pages/h5page/components/audition.vue
View file @
27bb5c1d
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
::v-deep
.el-input__inner
{
::v-deep
.el-input__inner
{
background-color
:
rgba
(
25
,
25
,
25
,
0
);
background-color
:
rgba
(
25
,
25
,
25
,
0
);
border
:
0
;
border
:
0
;
}
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
:class=
"[$q.platform.is.mobile?'q-pa-md bg-grey-1':'']"
<div
:class=
"[$q.platform.is.mobile?'q-pa-md bg-grey-1':'']"
:style=
"
{'height':$q.platform.is.mobile?'100vh':''}">
:style=
"
{'height':$q.platform.is.mobile?'100vh':''}">
<p
class=
"text-center small text-weight-bold text-h6"
v-if=
"type"
>
试听开课
</p>
<p
class=
"text-center small text-weight-bold text-h6"
v-if=
"type"
>
试听开课
</p>
<div
class=
"row wrap"
>
<div
class=
"row wrap"
>
<div
style=
"width:100%;margin-bottom:15px;"
>
试听时间:
<span
<div
style=
"width:100%;margin-bottom:15px;"
>
试听时间:
<span
style=
"color:red;"
>
{{
timeFormatSeconds
(
setClassMsg
.
ReservationDate
)
}}
</span></div>
style=
"color:red;"
>
{{
timeFormatSeconds
(
setClassMsg
.
ReservationDate
)
}}
</span></div>
<div
style=
"width:100%;margin-bottom:15px;"
>
试听需求:
<span
style=
"color:red;"
>
{{
setClassMsg
.
Demand
}}
</span></div>
<div
style=
"width:100%;margin-bottom:15px;"
>
试听需求:
<font
style=
"color:red;"
v-html=
"setClassMsg.Demand"
></font></div>
</div>
</div>
<q-card
class=
"bg-white q-pa-md"
flat
>
<q-card
class=
"bg-white q-pa-md"
flat
>
<div
class=
"row studentDate"
>
<div
class=
"row studentDate"
>
<q-field
filled
dense
<q-field
filled
dense
:class=
"[$q.platform.is.mobile?'col-12 q-pb-sm':'col-6 q-pr-lg q-pb-lg']"
>
:class=
"[$q.platform.is.mobile?'col-12 q-pb-sm':'col-6 q-pr-lg q-pb-lg']"
>
<template
v-slot:control
>
<el-date-picker
v-model=
"setClassMsg.ClassDate"
ref=
"ClassDate"
:rules=
"[val => !!val || '请选择预约日期']"
style=
"width:100%"
size=
"mini"
type=
"date"
placeholder=
"预约日期"
value-format=
"yyyy-MM-dd"
>
</el-date-picker>
</
template
>
</q-field>
<div
class=
"Student_Date "
:class=
"[$q.platform.is.mobile?'col-12 q-pb-sm':'col-6 q-pr-lg q-pb-lg']"
>
<q-field
filled
class=
""
dense
>
<
template
v-slot:control
>
<
template
v-slot:control
>
<el-date-picker
v-model=
"setClassMsg.ClassDate"
ref=
"ClassDate"
:rules=
"[val => !!val || '请选择预约日期']"
<el-time-select
v-model=
"setClassMsg.ClassTime"
size=
"mini"
ref=
"ClassTime"
style=
"width:50%;"
style=
"width:100%"
size=
"mini"
type=
"date"
placeholder=
"预约日期"
value-format=
"yyyy-MM-dd"
>
:picker-options=
"
{
</el-date-picker>
</
template
>
</q-field>
<div
class=
"Student_Date "
:class=
"[$q.platform.is.mobile?'col-12 q-pb-sm':'col-6 q-pr-lg q-pb-lg']"
>
<q-field
filled
class=
""
dense
>
<
template
v-slot:control
>
<el-time-select
v-model=
"setClassMsg.ClassTime"
size=
"mini"
ref=
"ClassTime"
style=
"width:50%;"
:picker-options=
"
{
start: '09:00',
start: '09:00',
step: '00:15',
step: '00:15',
end: '21:00',
end: '21:00',
maxTime: setClassMsg.EndTime
maxTime: setClassMsg.EndTime
}" placeholder="预约开始时间">
}" placeholder="预约开始时间">
</el-time-select>
</el-time-select>
<el-time-select
v-model=
"setClassMsg.EndTime"
size=
"mini"
dense
ref=
"EndTime"
style=
"width:50%;"
<el-time-select
v-model=
"setClassMsg.EndTime"
size=
"mini"
dense
ref=
"EndTime"
style=
"width:50%;"
:picker-options=
"
{
:picker-options=
"
{
start: '09:00',
start: '09:00',
step: '00:15',
step: '00:15',
end: '21:00',
end: '21:00',
minTime: setClassMsg.ClassTime
minTime: setClassMsg.ClassTime
}" placeholder="预约结束时间">
}" placeholder="预约结束时间">
</el-time-select>
</el-time-select>
</
template
>
</
template
>
</q-field>
</q-field>
</div>
</div>
<div
class=
"row wrap"
>
<q-select
filled
stack-label
option-value=
"TId"
option-label=
"TeacherName"
v-model=
"setClassMsg.TeacherId"
ref=
"TeacherId"
:options=
"TeacherList"
label=
"选择教师"
dense
class=
"col-6"
:class=
"[$q.platform.is.mobile?'q-pr-sm q-pb-sm':'q-pr-lg q-pb-lg']"
emit-value
map-options
/>
<q-select
filled
stack-label
option-value=
"RoomId"
dense
option-label=
"RoomName"
v-model=
"setClassMsg.ClassRoomId"
ref=
"ClassRoomId"
:options=
"ClassRoomList"
label=
"关联教室"
class=
"col-6"
:class=
"[$q.platform.is.mobile?'q-pl-sm q-pb-sm':'q-pr-lg q-pb-lg']"
emit-value
map-options
/>
<q-select
filled
stack-label
option-value=
"Id"
dense
option-label=
"LessonName"
v-model=
"setClassMsg.TrialLessonId"
:options=
"TrialList"
label=
"试听课程"
class=
"col-6"
:class=
"[$q.platform.is.mobile?'q-pr-sm':'q-pr-lg q-pb-lg']"
emit-value
map-options
/>
</div>
</div>
</q-card>
</div>
<div
class=
"row wrap"
>
<q-select
filled
stack-label
option-value=
"TId"
option-label=
"TeacherName"
v-model=
"setClassMsg.TeacherId"
ref=
"TeacherId"
:options=
"TeacherList"
label=
"选择教师"
dense
class=
"col-6"
:class=
"[$q.platform.is.mobile?'q-pr-sm q-pb-sm':'q-pr-lg q-pb-lg']"
emit-value
map-options
/>
<q-select
filled
stack-label
option-value=
"RoomId"
dense
option-label=
"RoomName"
v-model=
"setClassMsg.ClassRoomId"
ref=
"ClassRoomId"
:options=
"ClassRoomList"
label=
"关联教室"
class=
"col-6"
:class=
"[$q.platform.is.mobile?'q-pl-sm q-pb-sm':'q-pr-lg q-pb-lg']"
emit-value
map-options
/>
<q-select
filled
stack-label
option-value=
"Id"
dense
option-label=
"LessonName"
v-model=
"setClassMsg.TrialLessonId"
:options=
"TrialList"
label=
"试听课程"
class=
"col-6"
:class=
"[$q.platform.is.mobile?'q-pr-sm':'q-pr-lg q-pb-lg']"
emit-value
map-options
/>
</div>
</q-card>
<div
slot=
"footer"
class=
"dialog-footer"
<div
slot=
"footer"
class=
"dialog-footer"
:class=
"[$q.platform.is.mobile?'text-center q-pt-lg row':'text-right q-pb-lg']"
>
:class=
"[$q.platform.is.mobile?'text-center q-pt-lg row':'text-right q-pb-lg']"
>
<el-button
v-if=
"!$q.platform.is.mobile"
@
click=
"closeShitingKaiKe()"
>
取 消
</el-button>
<el-button
v-if=
"!$q.platform.is.mobile"
@
click=
"closeShitingKaiKe()"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"SetVisitorReserveClass()"
<el-button
type=
"primary"
@
click=
"SetVisitorReserveClass()"
:class=
"[$q.platform.is.mobile?'col-12':'']"
>
:class=
"[$q.platform.is.mobile?'col-12':'']"
>
{{type?'保 存':'确 定'}}
</el-button>
{{type?'保 存':'确 定'}}
</el-button>
</div>
</div>
<statusPrompt
v-if=
"isSuccess"
:isSuccess=
"isSuccess"
:isSuccessTitle=
"isSuccessTitle"
></statusPrompt>
<statusPrompt
v-if=
"isSuccess"
:isSuccess=
"isSuccess"
:isSuccessTitle=
"isSuccessTitle"
></statusPrompt>
</div>
</div>
...
@@ -87,7 +85,7 @@
...
@@ -87,7 +85,7 @@
}
from
"../../../api/school/index"
;
}
from
"../../../api/school/index"
;
import
statusPrompt
from
"./statusPrompt"
;
import
statusPrompt
from
"./statusPrompt"
;
export
default
{
export
default
{
props
:
[
'VisitorReserveClassMsg'
,
'type'
],
props
:
[
'VisitorReserveClassMsg'
,
'type'
],
components
:
{
components
:
{
statusPrompt
statusPrompt
},
},
...
@@ -97,26 +95,26 @@
...
@@ -97,26 +95,26 @@
TeacherList
:
[],
TeacherList
:
[],
ClassRoomList
:
[],
ClassRoomList
:
[],
TrialList
:
[],
TrialList
:
[],
setClassMsg
:{
setClassMsg
:
{
Id
:
0
,
Id
:
0
,
Visitor_Id
:
0
,
Visitor_Id
:
0
,
Remark
:
""
,
Remark
:
""
,
ReserveClassId
:
0
,
ReserveClassId
:
0
,
ClassDate
:
""
,
ClassDate
:
""
,
ReservationDate
:
""
,
ReservationDate
:
""
,
ClassTime
:
""
,
ClassTime
:
""
,
TeacherId
:
0
,
TeacherId
:
0
,
ClassRoomId
:
0
,
ClassRoomId
:
0
,
ClassContent
:
""
,
ClassContent
:
""
,
EndTime
:
""
,
EndTime
:
""
,
TrialLessonId
:
0
,
TrialLessonId
:
0
,
ReserveType
:
0
,
ReserveType
:
0
,
ClassPlanId
:
0
,
ClassPlanId
:
0
,
Demand
:
""
,
Demand
:
""
,
},
},
isSuccess
:
false
,
isSuccess
:
false
,
isSuccessTitle
:
''
,
isSuccessTitle
:
''
,
Id
:
0
,
Id
:
0
,
}
}
},
},
watch
:
{
watch
:
{
...
@@ -152,7 +150,7 @@
...
@@ -152,7 +150,7 @@
},
},
computed
:
{},
computed
:
{},
mounted
()
{
mounted
()
{
if
(
this
.
$route
.
query
.
Id
)
{
if
(
this
.
$route
.
query
.
Id
)
{
this
.
Id
=
this
.
$route
.
query
.
Id
this
.
Id
=
this
.
$route
.
query
.
Id
this
.
GetVisitorReserve
()
this
.
GetVisitorReserve
()
}
}
...
@@ -161,7 +159,7 @@
...
@@ -161,7 +159,7 @@
this
.
getClassRoomList
()
this
.
getClassRoomList
()
},
},
methods
:
{
methods
:
{
//保存
//保存
SetVisitorReserveClass
()
{
SetVisitorReserveClass
()
{
if
(
this
.
setClassMsg
.
ClassDate
==
""
)
{
if
(
this
.
setClassMsg
.
ClassDate
==
""
)
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
...
@@ -218,55 +216,55 @@
...
@@ -218,55 +216,55 @@
return
;
return
;
}
}
SetVisitorReserveClass
(
this
.
setClassMsg
).
then
(
res
=>
{
SetVisitorReserveClass
(
this
.
setClassMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
if
(
res
.
Code
==
1
)
{
if
(
this
.
type
){
if
(
this
.
type
)
{
this
.
isSuccess
=
true
this
.
isSuccess
=
true
this
.
isSuccessTitle
=
'试听课开课成功!'
this
.
isSuccessTitle
=
'试听课开课成功!'
}
else
{
this
.
$q
.
notify
({
icon
:
"iconfont icon-chenggong"
,
color
:
"accent"
,
timeout
:
2000
,
message
:
res
.
Message
,
position
:
"top"
});
}
this
.
$emit
(
"success"
);
}
else
{
}
else
{
this
.
$q
.
notify
({
this
.
$q
.
notify
({
type
:
"negative
"
,
icon
:
"iconfont icon-chenggong
"
,
position
:
"top
"
,
color
:
"accent
"
,
timeout
:
2000
,
timeout
:
2000
,
message
:
res
.
Message
message
:
res
.
Message
,
position
:
"top"
});
});
}
}
this
.
$emit
(
'close'
)
this
.
$emit
(
"success"
);
});
}
else
{
this
.
$q
.
notify
({
type
:
"negative"
,
position
:
"top"
,
timeout
:
2000
,
message
:
res
.
Message
});
}
this
.
$emit
(
'close'
)
});
},
},
closeShitingKaiKe
(){
closeShitingKaiKe
()
{
this
.
setClassMsg
=
{
this
.
setClassMsg
=
{
Id
:
0
,
Id
:
0
,
Visitor_Id
:
0
,
Visitor_Id
:
0
,
Remark
:
""
,
Remark
:
""
,
ReserveClassId
:
0
,
ReserveClassId
:
0
,
ClassDate
:
""
,
ClassDate
:
""
,
ReservationDate
:
""
,
ReservationDate
:
""
,
ClassTime
:
""
,
ClassTime
:
""
,
TeacherId
:
0
,
TeacherId
:
0
,
ClassRoomId
:
0
,
ClassRoomId
:
0
,
ClassContent
:
""
,
ClassContent
:
""
,
EndTime
:
""
,
EndTime
:
""
,
TrialLessonId
:
0
,
TrialLessonId
:
0
,
ReserveType
:
0
,
ReserveType
:
0
,
ClassPlanId
:
0
,
ClassPlanId
:
0
,
Demand
:
""
,
Demand
:
""
,
}
}
this
.
$emit
(
'close'
)
this
.
$emit
(
'close'
)
},
},
timeFormatSeconds
(
time
,
type
)
{
timeFormatSeconds
(
time
,
type
)
{
let
timeStr
=
""
;
let
timeStr
=
""
;
if
(
time
===
'0001-01-01T00:00:00'
)
{
if
(
time
===
'0001-01-01T00:00:00'
)
{
return
timeStr
;
return
timeStr
;
}
}
var
d
=
time
?
new
Date
(
time
)
:
new
Date
();
var
d
=
time
?
new
Date
(
time
)
:
new
Date
();
...
@@ -275,17 +273,17 @@
...
@@ -275,17 +273,17 @@
var
day
=
d
.
getDate
();
var
day
=
d
.
getDate
();
if
(
month
<
10
)
month
=
'0'
+
month
;
if
(
month
<
10
)
month
=
'0'
+
month
;
if
(
day
<
10
)
day
=
'0'
+
day
;
if
(
day
<
10
)
day
=
'0'
+
day
;
if
(
type
==
2
)
{
if
(
type
==
2
)
{
var
hours
=
d
.
getHours
();
var
hours
=
d
.
getHours
();
var
min
=
d
.
getMinutes
();
var
min
=
d
.
getMinutes
();
var
seconds
=
d
.
getSeconds
();
var
seconds
=
d
.
getSeconds
();
if
(
hours
<
0
)
hours
=
'0'
+
hours
;
if
(
hours
<
0
)
hours
=
'0'
+
hours
;
if
(
min
<
10
)
min
=
'0'
+
min
;
if
(
min
<
10
)
min
=
'0'
+
min
;
if
(
seconds
<
10
)
seconds
=
'0'
+
seconds
;
if
(
seconds
<
10
)
seconds
=
'0'
+
seconds
;
timeStr
+=
' '
+
hours
+
':'
+
min
+
':'
+
seconds
;
timeStr
+=
' '
+
hours
+
':'
+
min
+
':'
+
seconds
;
}
}
timeStr
=
year
+
'-'
+
month
+
'-'
+
day
+
timeStr
;
timeStr
=
year
+
'-'
+
month
+
'-'
+
day
+
timeStr
;
return
timeStr
;
return
timeStr
;
},
},
//试听课程列表
//试听课程列表
...
@@ -325,34 +323,34 @@
...
@@ -325,34 +323,34 @@
});
});
},
},
GetVisitorReserve
()
{
GetVisitorReserve
()
{
GetVisitorReserveById
({
GetVisitorReserveById
({
Id
:
this
.
Id
Id
:
this
.
Id
}).
then
(
res
=>
{
}).
then
(
res
=>
{
if
(
res
.
Data
.
length
>
0
){
if
(
res
.
Data
.
length
>
0
)
{
let
Data
=
res
.
Data
[
0
]
let
Data
=
res
.
Data
[
0
]
this
.
setClassMsg
=
{
this
.
setClassMsg
=
{
Id
:
Data
.
Id
,
//编号
Id
:
Data
.
Id
,
//编号
Visitor_Id
:
Data
.
Visitor_Id
,
//访客编号
Visitor_Id
:
Data
.
Visitor_Id
,
//访客编号
ReserveClassId
:
Data
.
ReserveClassId
,
//选中的班级编号
ReserveClassId
:
Data
.
ReserveClassId
,
//选中的班级编号
ClassDate
:
Data
.
ClassDateStr
,
//预约日期
ClassDate
:
Data
.
ClassDateStr
,
//预约日期
ClassTime
:
Data
.
ClassTime
,
//预约开始时间
ClassTime
:
Data
.
ClassTime
,
//预约开始时间
EndTime
:
Data
.
EndTime
,
//预约结束时间
EndTime
:
Data
.
EndTime
,
//预约结束时间
TeacherId
:
Data
.
TeacherId
,
//教师编号
TeacherId
:
Data
.
TeacherId
,
//教师编号
TeacherName
:
Data
.
TeacherName
,
TeacherName
:
Data
.
TeacherName
,
ClassRoomId
:
Data
.
ClassRoomId
,
//教室编号
ClassRoomId
:
Data
.
ClassRoomId
,
//教室编号
RoomName
:
Data
.
RoomName
,
RoomName
:
Data
.
RoomName
,
ClassContent
:
Data
.
ClassContent
,
//主讲内容
ClassContent
:
Data
.
ClassContent
,
//主讲内容
TrialLessonId
:
Data
.
TrialLessonId
,
TrialLessonId
:
Data
.
TrialLessonId
,
LessonName
:
Data
.
LessonName
,
LessonName
:
Data
.
LessonName
,
ReserveType
:
Data
.
ReserveType
,
ReserveType
:
Data
.
ReserveType
,
ClassPlanId
:
Data
.
ClassPlanId
,
ClassPlanId
:
Data
.
ClassPlanId
,
VisitorName
:
Data
.
VisitorName
,
VisitorName
:
Data
.
VisitorName
,
Demand
:
Data
.
Demand
,
Demand
:
Data
.
Demand
,
ReservationDate
:
Data
.
ReservationDate
,
ReservationDate
:
Data
.
ReservationDate
,
}
}
}
}
})
})
},
},
}
}
...
...
src/pages/sale/reserveClassStudent.vue
View file @
27bb5c1d
...
@@ -3,15 +3,13 @@
...
@@ -3,15 +3,13 @@
background
:
transparent
!important
;
background
:
transparent
!important
;
border
:
0
!important
;
border
:
0
!important
;
}
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"page-body"
>
<div
class=
"page-body"
>
<div
class=
"page-search"
<div
class=
"page-search"
:class=
"[$q.platform.is.desktop?'row items-center':'']"
>
:class=
"[$q.platform.is.desktop?'row items-center':'']"
>
<div
class=
"col row wrap q-col-gutter-md"
:class=
"[$q.platform.is.desktop?'q-mr-lg':'']"
>
<div
class=
"col row wrap q-col-gutter-md"
<div
:class=
"[$q.platform.is.desktop?'col-3':'col-12']"
>
:class=
"[$q.platform.is.desktop?'q-mr-lg':'']"
>
<div
:class=
"[$q.platform.is.desktop?'col-3':'col-12']"
>
<div
class=
"Sysuser_Date"
>
<div
class=
"Sysuser_Date"
>
<q-field
filled
>
<q-field
filled
>
<template
v-slot:control
>
<template
v-slot:control
>
...
@@ -25,37 +23,13 @@
...
@@ -25,37 +23,13 @@
</q-field>
</q-field>
</div>
</div>
</div>
</div>
<!-- <div class="col-3">
<q-select @input="resetSearch" filled option-value="TId" option-label="TeacherName" v-model="msg.TeacherId"
:options="TeacherList" emit-value map-options label="老师" clearable />
</div>
<div class="col-3">
<q-select @input="resetSearch" filled stack-label option-value="RoomId" option-label="RoomName"
v-model="msg.ClassRoomId" ref="ClassRoomId" :options="ClassRoomList" label="关联教室" clearable :dense="false"
class="col-6 q-pb-lg" emit-value map-options />
</div>
<div class="col-3">
<q-input @input="resetSearch" clearable filled v-model="msg.LessonName" label="试听课程名称" @clear="resetSearch"
maxlength="20" />
</div> -->
</div>
</div>
</div>
</div>
<reservelist
:data=
"dataList"
:authObj=
"authObj"
:loading=
"loading"
@
success=
"resetSearch"
></reservelist>
<reservelist
:data=
"dataList"
:authObj=
"authObj"
:loading=
"loading"
@
success=
"refreshPage"
></reservelist>
<q-card
class=
"light-shadow q-pa-md bg-white rounded-borders q-mb-md"
v-if=
"msg.pageCount > 0"
flat
>
<q-card
<q-pagination
v-if=
"$q.platform.is.mobile"
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
class=
"light-shadow q-pa-md bg-white rounded-borders q-mb-md"
:max=
"msg.pageCount"
:input=
"true"
@
update:model-value=
"changePageHandler"
/>
v-if=
"msg.pageCount > 0"
</q-card>
flat
>
<q-pagination
v-if=
"$q.platform.is.mobile"
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"msg.pageCount"
:input=
"true"
@
update:model-value=
"changePageHandler"
/>
</q-card>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"PageCount"
:input=
"true"
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"PageCount"
:input=
"true"
@
input=
"changePage"
/>
@
input=
"changePage"
/>
</div>
</div>
...
@@ -71,7 +45,7 @@
...
@@ -71,7 +45,7 @@
import
reservelist
from
'../../components/schedul/reservestudentlist'
import
reservelist
from
'../../components/schedul/reservestudentlist'
export
default
{
export
default
{
meta
:
{
meta
:
{
title
:
"试听
班级
管理"
title
:
"试听
开课
管理"
},
},
components
:
{
components
:
{
reservelist
reservelist
...
@@ -88,8 +62,8 @@
...
@@ -88,8 +62,8 @@
ClassRoomId
:
""
,
//教室编号
ClassRoomId
:
""
,
//教室编号
LessonName
:
''
,
//课程名称
LessonName
:
''
,
//课程名称
Visitor_Id
:
0
,
Visitor_Id
:
0
,
IsReserve
:
1
,
IsReserve
:
1
,
IsQNotReserveClassId
:
1
,
IsQNotReserveClassId
:
1
,
},
},
dataList
:
[],
dataList
:
[],
loading
:
false
,
loading
:
false
,
...
@@ -106,7 +80,7 @@
...
@@ -106,7 +80,7 @@
var
year
=
nowDay
.
getFullYear
();
//年
var
year
=
nowDay
.
getFullYear
();
//年
var
month
=
nowDay
.
getMonth
()
+
1
;
//月
var
month
=
nowDay
.
getMonth
()
+
1
;
//月
var
day
=
nowDay
.
getDate
();
//日
var
day
=
nowDay
.
getDate
();
//日
this
.
msg
.
StartClassDate
=
year
+
'-'
+
month
+
'-'
+
day
this
.
msg
.
StartClassDate
=
year
+
'-'
+
month
+
'-'
+
day
if
(
this
.
$route
.
query
)
{
if
(
this
.
$route
.
query
)
{
if
(
this
.
$route
.
query
.
StartClassDate
)
{
if
(
this
.
$route
.
query
.
StartClassDate
)
{
...
@@ -172,7 +146,9 @@
...
@@ -172,7 +146,9 @@
},
},
}
}
}
}
</
script
>
</
script
>
<
style
lang=
"sass"
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass')
@import
url('~assets/css/table.sass')
</
style
>
</
style
>
src/utils/erpindex.js
View file @
27bb5c1d
...
@@ -80,12 +80,9 @@ export default {
...
@@ -80,12 +80,9 @@ export default {
},
},
//域名管理对象
//域名管理对象
Vue
.
prototype
.
domainManager
=
function
()
{
Vue
.
prototype
.
domainManager
=
function
()
{
//let domainUrl = 'http://192.168.10.214';
let
domainUrl
=
'http://192.168.5.57'
;
let
domainUrl
=
'http://192.168.5.57'
;
let
viewFileUrl
=
'http://192.168.5.214:8120'
;
let
viewFileUrl
=
'http://192.168.5.214:8120'
;
let
mallUrl
=
"http://192.168.5.2:8088"
;
let
mallUrl
=
"http://192.168.5.46:8200"
;
let
vtUploadUrl
=
"http://upload.oytour.com"
;
let
vtUploadUrl
=
"http://upload.oytour.com"
;
let
vtViewUrl
=
"http://192.168.5.214:8130"
;
let
vtViewUrl
=
"http://192.168.5.214:8130"
;
let
locationName
=
window
.
location
.
hostname
;
let
locationName
=
window
.
location
.
hostname
;
...
...
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