Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
21ea7596
Commit
21ea7596
authored
Sep 18, 2019
by
华国豪
🙄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增行政填写意见调查
parent
58dfca4d
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
1281 additions
and
0 deletions
+1281
-0
login2019.css
src/assets/css/login2019.css
+192
-0
Login2019.vue
src/components/Login2019.vue
+433
-0
NewSurvey.vue
src/components/administrative/NewSurvey.vue
+107
-0
NewSurveyList.vue
src/components/administrative/NewSurveyList.vue
+217
-0
Survey.vue
src/components/administrative/Survey.vue
+307
-0
config.js
src/router/config.js
+25
-0
No files found.
src/assets/css/login2019.css
0 → 100644
View file @
21ea7596
.newSummaryLogin
.item
img
{
width
:
100%
;
}
.login_Div
{
background
:
#fff
;
padding
:
60px
0
20px
0
;
box-sizing
:
border-box
;
height
:
100%
;
width
:
60%
;
margin
:
0
auto
;
}
.newSummaryLogin
.error-msg
{
color
:
#cccccc
;
font-size
:
12px
;
text-align
:
left
;
width
:
300px
;
margin
:
0
auto
0
;
height
:
20px
;
padding-left
:
16px
;
}
.newSummaryLogin
.error-msg
img
{
position
:
relative
;
top
:
3px
;
margin
:
0
10px
0
5px
;
}
.login_Div
.sumMainTitle
{
font-size
:
28px
;
padding-top
:
40px
;
color
:
#333
;
margin-bottom
:
40px
;
font-weight
:
bold
;
}
.login_Div
.littTitle
{
font-size
:
18px
;
color
:
#333333
;
}
.login_Div
.icon-login-name
,
.login_Div
.icon-login-password
{
width
:
16px
;
height
:
15px
;
display
:
inline-block
;
position
:
absolute
;
top
:
10px
;
color
:
#000000
}
.login_Div
.login-commonBotm
{
width
:
100%
;
position
:
relative
;
margin
:
10px
auto
0
0
;
}
.login_Div
.login-commonBotm
img
{
float
:
left
;
margin-top
:
14px
;
}
.login_Div
input
.input
{
width
:
100%
;
height
:
40px
;
outline
:
none
;
padding-left
:
30px
;
border
:
none
;
border-bottom
:
1px
solid
#CCCCCC
;
color
:
#333333
;
caret-color
:
#E95252
;
}
.login_Div
input
::-webkit-input-placeholder
{
color
:
#999999
;
font-size
:
12px
;
}
.newSummaryLogin
.sumPhone
{
width
:
100%
;
text-align
:
center
;
color
:
#333
;
margin-bottom
:
10px
;}
.login_Div
input
:-webkit-autofill
,
.login_Div
textarea
:-webkit-autofill
,
.login_Div
select
:-webkit-autofill
{
-webkit-text-fill-color
:
#ededed
!important
;
-webkit-box-shadow
:
0
0
0px
1000px
transparent
inset
!important
;
background-color
:
transparent
;
background-image
:
none
;
transition
:
background-color
50000s
ease-in-out
0s
;
}
.login_Div
.sLoginBtn
{
margin-top
:
30px
;
width
:
100%
;
height
:
40px
;
background
:
#EE4454
;
border-radius
:
4px
;
outline
:
none
;
border
:
none
;
color
:
#fff
;
transition
:
all
linear
0.5s
;
}
.login_Div
.sLoginBtn
:hover
{
opacity
:
.8
;
cursor
:
pointer
;
background-color
:
#E95252
;
color
:
#FFFFFF
}
.login_Div
.validatCode
{
color
:
#333333
;
}
.newSummaryLogin
.msgTips
p
{
color
:
#333333
!important
;
}
.newSummaryLogin
.msgTips
p
,
.newSummaryLogin
.msgTips
h2
{
color
:
#333333
!important
;
}
.newSummaryLogin
.bindTitle
{
margin-bottom
:
10px
;}
.newSummaryLogin
.changeBtn
{
margin-top
:
10px
;
}
.login-box
.forgetPw
{
/* width:300px; */
height
:
40px
;
text-align
:
right
;
margin
:
auto
;
color
:
#999999
;
font-size
:
12px
;
text-align
:
right
;
line-height
:
40px
;
}
.forgetPw
span
{
cursor
:
pointer
;
}
.newSummaryLogin
.login-box
.forgetPw
span
:hover
{
color
:
#E95252
;
}
.newSummaryLogin
.login-way
{
width
:
300px
;
height
:
40px
;
margin
:
25px
auto
;
font-size
:
12px
;
color
:
#CCCCCC
;
display
:
none
;
line-height
:
40px
;
}
.newSummaryLogin
.wayLeft
{
float
:
left
;
}
.newSummaryLogin
.icon-login-qqicon
{
width
:
16px
;
height
:
15px
;
display
:
inline-block
;
position
:
relative
;
top
:
3px
;
background
:
url(../img/qqIco.png)
no-repeat
;
}
.newSummaryLogin
.icon-login-wechaticon
{
width
:
19px
;
height
:
15px
;
display
:
inline-block
;
position
:
relative
;
top
:
3px
;
background
:
url(../img/wechatIco.png)
no-repeat
;
}
.newSummaryLogin
.wayRight
{
float
:
right
;
}
.newSummaryLogin
.validatCode
{
position
:
absolute
;
right
:
0
;
top
:
13px
;
padding-left
:
10px
;
color
:
#333
;
font-size
:
12px
;
letter-spacing
:
2px
;
border-left
:
1px
solid
#cccccc
;
}
.newSummaryLogin
.validatCode
span
:first-child
{
cursor
:
pointer
;}
.newSummaryLogin
.btValidate
{
margin-top
:
30px
;
}
.newSummaryLogin
.login_elephant
{
position
:
absolute
;
left
:
-15px
;
top
:
-80px
;
}
.newSummaryLogin
.homepage-hero-module
,
.video-container
{
position
:
relative
;
height
:
100vh
;
overflow
:
hidden
;
}
.newSummaryLogin
.name_bline_left
{
position
:
absolute
;
right
:
50%
;
bottom
:
0
;
width
:
0
;
height
:
2px
;
background-color
:
#E95252
;
transition
:
all
linear
0.5s
;}
.newSummaryLogin
.name_bline_right
{
position
:
absolute
;
left
:
50%
;
bottom
:
0
;
width
:
0
;
height
:
2px
;
background-color
:
#E95252
;
transition
:
all
linear
0.5s
;}
.newSummaryLogin
.pwd_bline_left
{
position
:
absolute
;
right
:
50%
;
bottom
:
0
;
width
:
0
;
height
:
2px
;
background-color
:
#E95252
;
transition
:
all
linear
0.5s
;}
.newSummaryLogin
.pwd_bline_right
{
position
:
absolute
;
left
:
50%
;
bottom
:
0
;
width
:
0
;
height
:
2px
;
background-color
:
#E95252
;
transition
:
all
linear
0.5s
;}
.newSummaryLogin
.login-Div
input
:-webkit-autofill
,
.login-Div
textarea
:-webkit-autofill
,
.login-Div
select
:-webkit-autofill
{
-webkit-text-fill-color
:
#ededed
!important
;
-webkit-box-shadow
:
0
0
0px
1000px
transparent
inset
!important
;
background-color
:
transparent
;
background-image
:
none
;
transition
:
background-color
50000s
ease-in-out
0s
;
}
.newSummaryLogin
._bline_w
{
width
:
50%
;}
src/components/Login2019.vue
0 → 100644
View file @
21ea7596
<
style
>
@import
"../assets/css/login2019.css"
;
.login_body
{
height
:
calc
(
100vh
);
width
:
100%
;
background-color
:
white
;
}
.logo_box
{
display
:
flex
;
align-items
:
center
;
font-size
:
16px
;
}
.logo_box
img
{
margin-right
:
10px
;
}
.jitang
{
margin-top
:
40px
;
}
.jitang
p
{
color
:
#424242
;
font-size
:
14px
;
text-indent
:
25px
;
width
:
60%
;
margin
:
0
auto
;
}
.FPF_s
{
font-family
:
'PingFangR'
;
}
.FPF_b
{
font-family
:
'PingFangR'
;
font-weight
:
600
;
}
</
style
>
<
template
>
<div>
<el-row
class=
"login_body"
>
<el-col
:span=
"16"
>
<my-carousel
:speed=
'speed'
:imgList=
'imgList'
/>
</el-col>
<el-col
:span=
"8"
class=
"login-box newSummaryLogin"
>
<div
v-if=
"isShow==1"
class=
"login_Div"
>
<div
class=
"logo_box"
>
<img
style=
"width: 40px;"
src=
"http://imgfile.oytour.com/Upload/CompanyImage/20181219/636808340326373827.png"
alt=
""
>
<p
class=
"FPF_b"
>
{{
groupModel
.
GroupName
?
groupModel
.
GroupName
:
''
}}
</p>
</div>
<div
class=
"sumMainTitle FPF_s"
>
登录
</div>
<div
class=
"login-commonBotm"
>
<i
class=
"icon-login-name iconfont icon-user11"
:style=
"
{color: name_bline==true?'#E95252':'#000000'}">
</i>
<input
class=
"input FPF_b"
@
focus=
"name_bline=true"
@
blur=
"name_bline=false"
maxlength=
"20"
autocomplete=
"new-password"
v-model=
"userInfo.name"
style=
"background-color:transparent !important;"
type=
"text"
:placeholder=
"$t('login.login_account')"
@
keyup
.
enter=
"doLogin"
/>
<div
class=
"name_bline_left"
:class=
"name_bline==true?'_bline_w':''"
></div>
<div
class=
"name_bline_right"
:class=
"name_bline==true?'_bline_w':''"
></div>
</div>
<div
class=
"error-msg"
>
<div
v-show=
"nameIsShow"
><img
src=
"../assets/img/login-error-tips.png"
/>
{{
nameErrorMsg
}}
</div>
</div>
<div
class=
"login-commonBotm"
>
<i
class=
"icon-login-password iconfont icon-mima"
:style=
"
{color: pwd_bline==true?'#E95252':'#000000'}">
</i>
<input
class=
"input FPF_b"
@
focus=
"pwd_bline=true"
@
blur=
"pwd_bline=false"
maxlength=
"20"
autocomplete=
"new-password"
v-model=
"userInfo.password"
style=
"background-color:transparent !important"
type=
"password"
:placeholder=
"$t('login.login_password')"
@
keyup
.
enter=
"doLogin"
/>
<div
class=
"pwd_bline_left"
:class=
"pwd_bline==true?'_bline_w':''"
></div>
<div
class=
"pwd_bline_right"
:class=
"pwd_bline==true?'_bline_w':''"
></div>
</div>
<div
class=
"error-msg"
>
<div
v-show=
"passwordIsShow"
><img
src=
"../assets/img/login-error-tips.png"
/>
{{
passwordErrorMsg
}}
</div>
</div>
<div
style=
"text-align: center;margin-top: 40px;"
>
<button
type=
"button"
class=
"sLoginBtn FPF_s"
:class=
"
{'loginIng':loginState==1}" :disabled="loginState==1" @click="doLogin">
{{
loginState
==
1
?
'登录中...'
:
'登录'
}}
</button>
</div>
<div
class=
"forgetPw"
>
<span
@
click=
"updatePwd"
>
{{
$t
(
'login.login_forgetpwd'
)
}}
?
</span>
</div>
<!--
<div
class=
"login-way"
>
<div
class=
"wayLeft"
>
<i
class=
"icon-login-qqicon"
></i>
<span>
QQ登录
</span>
</div>
<div
class=
"wayRight"
>
<i
class=
"icon-login-wechaticon"
></i>
<span>
微信登录
</span>
</div>
</div>
-->
</div>
<div
v-if=
"isShow==2"
class=
"phoneLogin login_Div>"
>
<div
class=
"logo_box"
>
<img
style=
"width: 40px;"
src=
"http://imgfile.oytour.com/Upload/CompanyImage/20181219/636808340326373827.png"
alt=
""
>
<p
class=
"FPF_b"
>
{{
groupModel
.
GroupName
?
groupModel
.
GroupName
:
''
}}
</p>
</div>
<div
class=
"sumMainTitle FPF_s"
>
绑定手机号
</div>
<div
class=
"login-commonBotm"
>
<i
class=
"icon-login-name iconfont icon-shouji1"
:style=
"
{color: name_bline==true?'#E95252':'#000000'}">
</i>
<input
class=
"input FPF_b"
@
focus=
"name_bline=true"
@
blur=
"name_bline=false"
onkeyup=
"value=value.replace(/[^\d]/g,'')"
maxlength=
"11"
autocomplete=
"new-password"
v-model=
"mobileNumber"
style=
"background-color:transparent !important;"
type=
"text"
placeholder=
"请输入手机号"
/>
<div
class=
"name_bline_left"
:class=
"name_bline==true?'_bline_w':''"
></div>
<div
class=
"name_bline_right"
:class=
"name_bline==true?'_bline_w':''"
></div>
</div>
<div
class=
"error-msg"
>
<div
v-show=
"nameIsShow"
><img
src=
"../assets/img/login-error-tips.png"
/>
{{
nameErrorMsg
}}
</div>
</div>
<div
class=
"login-commonBotm"
>
<i
class=
"icon-login-password iconfont icon-yanzhengma"
:style=
"
{color: pwd_bline==true?'#E95252':'#000000'}">
</i>
<input
class=
"input FPF_b phoneValidate"
maxlength=
"4"
@
focus=
"pwd_bline=true"
onkeyup=
"value=value.replace(/[^\d]/g,'')"
@
blur=
"pwd_bline=false"
v-model=
"code"
autocomplete=
"new-password"
style=
"background-color:transparent !important"
type=
"text"
placeholder=
"验证码"
@
keyup
.
enter=
"doBind"
/>
<div
class=
"pwd_bline_left"
:class=
"pwd_bline==true?'_bline_w':''"
></div>
<div
class=
"pwd_bline_right"
:class=
"pwd_bline==true?'_bline_w':''"
></div>
<div
class=
"validatCode"
>
<span
v-show=
"show"
@
click=
"getCode"
class=
"FPF_s"
>
获取验证码
</span>
<span
v-show=
"!show"
class=
"count FPF_s"
>
{{
count
}}
s重新获取
</span>
</div>
</div>
<div
class=
"error-msg"
>
<div
v-show=
"passwordIsShow"
><img
src=
"../assets/img/login-error-tips.png"
/>
{{
passwordErrorMsg
}}
</div>
</div>
<input
type=
"button"
class=
"sLoginBtn"
@
click=
"doBind"
value=
"确认绑定"
/>
</div>
<div
v-if=
"isShow==3"
class=
"phoneLogin login_Div"
>
<div
class=
"logo_box"
>
<img
style=
"width: 40px;"
src=
"http://imgfile.oytour.com/Upload/CompanyImage/20181219/636808340326373827.png"
alt=
""
>
<p>
{{
groupModel
.
GroupName
?
groupModel
.
GroupName
:
''
}}
</p>
</div>
<div
class=
"sumMainTitle FPF_s"
>
修改密码
</div>
<div
class=
"login-commonBotm"
>
<i
class=
"icon-login-name iconfont icon-shouji1"
:style=
"
{color: name_bline==true?'#E95252':'#000000'}">
</i>
<input
class=
"input FPF_b"
@
focus=
"name_bline=true"
onkeyup=
"value=value.replace(/[^\d]/g,'')"
maxlength=
"11"
@
blur=
"name_bline=false"
autocomplete=
"new-password"
v-model=
"mobileNumber"
style=
"background-color:transparent !important;"
type=
"text"
placeholder=
"请输入手机号"
/>
<div
class=
"name_bline_left"
:class=
"name_bline==true?'_bline_w':''"
></div>
<div
class=
"name_bline_right"
:class=
"name_bline==true?'_bline_w':''"
></div>
</div>
<div
class=
"error-msg"
>
<div
v-show=
"nameIsShow"
><img
src=
"../assets/img/login-error-tips.png"
/>
{{
nameErrorMsg
}}
</div>
</div>
<div
class=
"login-commonBotm"
>
<i
class=
"icon-login-password iconfont icon-mima"
:style=
"
{color: pwd_bline==true?'#E95252':'#000000'}">
</i>
<input
class=
"input FPF_b"
@
focus=
"pwd_bline=true"
@
blur=
"pwd_bline=false"
autocomplete=
"new-password"
maxlength=
"20"
v-model=
"password"
style=
"background-color:transparent !important"
type=
"password"
placeholder=
"请输入新密码"
/>
<div
class=
"pwd_bline_left"
:class=
"pwd_bline==true?'_bline_w':''"
></div>
<div
class=
"pwd_bline_right"
:class=
"pwd_bline==true?'_bline_w':''"
></div>
</div>
<div
class=
"login-commonBotm btValidate"
>
<i
class=
"icon-login-password iconfont icon-yanzhengma"
:style=
"
{color: validate_bline==true?'#E95252':'#000000'}">
</i>
<input
class=
"input FPF_b phoneValidate"
maxlength=
"4"
onkeyup=
"value=value.replace(/[^\d]/g,'')"
@
focus=
"validate_bline=true"
@
blur=
"validate_bline=false"
v-model=
"code"
autocomplete=
"new-password"
style=
"background-color:transparent !important"
type=
"text"
placeholder=
"验证码"
@
keyup
.
enter=
"changePwd"
/>
<div
class=
"pwd_bline_left"
:class=
"validate_bline==true?'_bline_w':''"
></div>
<div
class=
"pwd_bline_right"
:class=
"validate_bline==true?'_bline_w':''"
></div>
<div
class=
"validatCode"
>
<span
v-show=
"show"
@
click=
"getCode"
class=
"FPF_s"
>
获取验证码
</span>
<span
v-show=
"!show"
class=
"count FPF_s"
>
{{
count
}}
s重新获取
</span>
</div>
</div>
<div
class=
"forgetPw"
>
<div
class=
"error-msg"
style=
"float:left;width:auto;"
>
<div
v-show=
"passwordIsShow"
><img
src=
"../assets/img/login-error-tips.png"
/>
{{
passwordErrorMsg
}}
</div>
</div>
<span
@
click=
"goLogin"
class=
"FPF_s"
>
去登录
</span>
</div>
<input
type=
"button"
class=
"sLoginBtn changeBtn"
@
click=
"changePwd"
value=
"确认修改"
/>
</div>
<div
class=
"jitang FPF_s"
>
<p>
職場上成功者與失敗者最大的分別就是,前者找機會,後者找藉口,今日的你痛恨每天上班「度日如年」,將來的你會感激經歷過這一切,你練成了更強大的自己,玻璃心不再怕碎。
</p>
</div>
</el-col>
</el-row>
</div>
</
template
>
<
script
>
import
Carousel
from
"./public/Carousel"
export
default
{
data
(){
return
{
speed
:
3000
,
imgList
:
[
{
src
:
'http://imgfile.oytour.com/Upload/DMC/20190522030104834.jpg?x-oss-process=image/resize,l_140'
,
text
:
'蓝白相间 星月相伴'
,
text1
:
'土耳其希腊深度13日'
},
{
src
:
'http://imgfile.oytour.com/Upload/DMC/xESG4FERFri7JXnjQTbcZymGYkQx3sNG.png?x-oss-process=image/resize,l_140'
,
text
:
'浪漫邂逅 历史遗迹'
,
text1
:
'天然钟乳石地形'
},
{
src
:
'http://imgfile.oytour.com/Upload/DMC/T5TyQsQwekQGkWcMxceY5xXhCdJjeFX6.jpg'
,
text
:
'艾菲索斯古城'
,
text1
:
'凯马克勒地下城市'
},
],
userInfo
:
{
name
:
""
,
password
:
""
,
Domain
:
""
},
groupModel
:
""
,
password
:
""
,
mobileNumber
:
""
,
code
:
""
,
mobileCodeType
:
1
,
show
:
true
,
count
:
""
,
timer
:
null
,
isShow
:
1
,
vedioCanPlay
:
false
,
fixStyle
:
""
,
nameIsShow
:
false
,
passwordIsShow
:
false
,
nameErrorMsg
:
""
,
passwordErrorMsg
:
""
,
name_bline
:
false
,
pwd_bline
:
false
,
validate_bline
:
false
,
loginState
:
0
,
height
:
0
,
clock
:
null
,
crtIndex
:
0
,
}
},
components
:{
'my-carousel'
:
Carousel
},
methods
:{
//初始化数据
initData
()
{
//判断是否是线上环境
if
(
!
this
.
isOnline
())
{
this
.
userInfo
.
name
=
"18117845617"
;
this
.
userInfo
.
password
=
"123456"
;
}
this
.
userInfo
.
Domain
=
window
.
location
.
hostname
},
doLogin
()
{
if
(
this
.
userInfo
.
name
==
""
)
{
this
.
nameIsShow
=
true
;
this
.
nameErrorMsg
=
"请输入用户名"
;
return
;
}
else
if
(
this
.
userInfo
.
password
==
""
)
{
this
.
passwordIsShow
=
true
;
this
.
passwordErrorMsg
=
"请输入密码"
;
return
;
}
else
{
this
.
nameIsShow
=
false
;
this
.
passwordIsShow
=
false
;
}
this
.
loginState
=
1
;
var
msg
=
{
EmAccount
:
this
.
userInfo
.
name
,
EmPassword
:
this
.
userInfo
.
password
,
Domain
:
this
.
userInfo
.
Domain
};
this
.
apipost
(
"admin_get_EmployeeLogin"
,
msg
,
response
=>
{
var
jsonData
=
response
.
data
;
//未绑定手机号码
if
(
jsonData
.
resultCode
==
10006
)
{
this
.
$notify
.
error
({
title
:
"提示"
,
customClass
:
"msgTips"
,
message
:
"请绑定手机号"
,
showClose
:
false
,
duration
:
3000
});
this
.
isShow
=
2
;
}
else
if
(
jsonData
.
resultCode
==
1
)
{
//登录成功
var
userData
=
jsonData
.
data
;
var
userJson
=
JSON
.
stringify
(
userData
);
localStorage
.
removeItem
(
'navTabs'
)
localStorage
.
removeItem
(
'orderObj'
)
localStorage
.
userInfo
=
userJson
;
let
firstTire
=
[]
userData
.
UserMenu
.
forEach
(
x
=>
{
if
(
x
.
MenuUrl
==
''
)
{
firstTire
.
push
(
x
.
MenuName
)
}
})
//UserMenu
this
.
$cookie
.
set
(
"account"
,
this
.
userInfo
.
name
);
this
.
$cookie
.
set
(
"EmployeeId"
,
userData
.
EmployeeId
);
this
.
$cookie
.
set
(
"RB_Branch_id"
,
userData
.
RB_Branch_id
);
this
.
$cookie
.
set
(
"RB_Group_id"
,
userData
.
RB_Group_id
);
localStorage
.
menu
=
JSON
.
stringify
(
firstTire
)
this
.
loginState
=
0
;
// let previousPathInfo = localStorage.previousPathInfo ? JSON.parse(localStorage.previousPathInfo) : ''
// if (previousPathInfo) {
// let path = previousPathInfo.path.indexOf('login') === -1 ? previousPathInfo.path : 'index'
// let query = previousPathInfo.query ? previousPathInfo.query : {}
// this.$router.push({ path: "/"+ path, query: query });
// }else {
// this.$router.push({ path: "/index" });
// }
this
.
$router
.
push
({
path
:
"/personalCenter"
});
//登录成功后跳转页面
// this.$notify.success({
// title:'提示',
// customClass:'msgTips',
// message: '登陆成功',
// showClose: false,
// duration:1000
// });
}
else
{
this
.
$notify
.
error
({
title
:
"提示"
,
customClass
:
"msgTips"
,
message
:
response
.
data
.
message
,
showClose
:
false
,
duration
:
3000
});
this
.
loginState
=
0
;
}
},
err
=>
{}
);
},
getCode
()
{
var
phoneReg
=
/
(
^1
[
3|4|5|6|7|8|9
]\d{9}
$
)
|
(
^09
\d{8}
$
)
/
;
//电话
var
phone
=
this
.
mobileNumber
.
replace
(
/^
\s
+|
\s
+$/gm
,
""
);
if
(
!
phoneReg
.
test
(
phone
))
{
this
.
nameIsShow
=
true
;
this
.
nameErrorMsg
=
"请输入有效的手机号码!"
;
return
false
;
}
else
{
this
.
nameIsShow
=
false
;
}
const
TIME_COUNT
=
60
;
this
.
code
=
""
;
if
(
!
this
.
timer
)
{
this
.
count
=
TIME_COUNT
;
this
.
show
=
false
;
this
.
timer
=
setInterval
(()
=>
{
if
(
this
.
count
>
0
&&
this
.
count
<=
TIME_COUNT
)
{
this
.
count
--
;
}
else
{
this
.
show
=
true
;
clearInterval
(
this
.
timer
);
this
.
timer
=
null
;
}
},
1000
);
}
let
msg
=
{
mobileNumber
:
this
.
mobileNumber
,
mobileCodeType
:
this
.
mobileCodeType
};
this
.
apipost
(
"user_get_moblieNumber_code"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
}
else
{
this
.
$notify
.
error
({
title
:
"提示"
,
customClass
:
"msgTips"
,
message
:
res
.
data
.
message
,
showClose
:
false
,
duration
:
3000
});
}
});
},
doBind
()
{
if
(
this
.
mobileNumber
==
""
)
{
this
.
nameIsShow
=
true
;
this
.
nameErrorMsg
=
"请输入手机号"
;
return
;
}
else
if
(
this
.
code
==
""
)
{
this
.
passwordIsShow
=
true
;
this
.
passwordErrorMsg
=
"请输入验证码"
;
return
;
}
let
msg
=
{
account
:
this
.
userInfo
.
name
,
password
:
this
.
userInfo
.
password
,
mobileNumber
:
this
.
mobileNumber
,
code
:
this
.
code
};
this
.
apipost
(
"user_account_bind_moblieNumber"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
isShow
=
1
;
this
.
loginState
=
0
;
this
.
userInfo
.
name
=
this
.
mobileNumber
;
}
else
{
this
.
$notify
.
error
({
title
:
"提示"
,
customClass
:
"msgTips"
,
message
:
res
.
data
.
message
,
showClose
:
false
,
duration
:
3000
});
}
});
},
getGroup
()
{
//获取集团
let
Domain
=
window
.
location
.
hostname
this
.
apipost
(
'admin_get_GetModelByDomain'
,{
'Domain'
:
Domain
},
res
=>
{
this
.
groupModel
=
res
.
data
.
data
;
document
.
title
=
"欢迎使用 "
+
this
.
groupModel
.
GroupName
+
" ERP系统"
;
},
err
=>
{})
},
updatePwd
()
{
this
.
isShow
=
3
;
this
.
mobileCodeType
=
2
;
},
changePwd
()
{
let
msg
=
{
password
:
this
.
password
,
mobileNumber
:
this
.
mobileNumber
,
code
:
this
.
code
};
this
.
apipost
(
"user_change_password_by_mobileNumber"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
isShow
=
1
;
this
.
$notify
.
success
({
title
:
"提示"
,
customClass
:
"msgTips"
,
message
:
res
.
data
.
message
,
showClose
:
false
,
duration
:
3000
});
}
else
{
this
.
$notify
.
error
({
title
:
"提示"
,
customClass
:
"msgTips"
,
message
:
res
.
data
.
message
,
showClose
:
false
,
duration
:
3000
});
}
});
},
goLogin
()
{
this
.
isShow
=
1
;
}
},
mounted
(){
this
.
initData
()
this
.
getGroup
()
},
created
(){
}
}
</
script
>
\ No newline at end of file
src/components/administrative/NewSurvey.vue
0 → 100644
View file @
21ea7596
<
style
>
.investigationList
td
button
{
width
:
30px
;
height
:
30px
;
display
:
inline-block
;
color
:
white
!important
;
border-radius
:
50%
;
text-align
:
center
;
line-height
:
30px
;
margin-right
:
10px
;
cursor
:
pointer
;
outline
:
none
;
padding
:
0
;
}
.investigationList
.el-button.is-circle
{
padding
:
0
;
}
</
style
>
<
template
>
<div
class=
"investigationList"
>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th>
订单号
</th>
<th>
客人名称
</th>
<th>
销售名称
</th>
<th>
客户名称
</th>
<th>
分数
</th>
<th>
操作
</th>
</tr>
<tr
v-for=
"item in dataList"
>
<td>
{{
OrderId
}}
</td>
<td>
{{
item
.
GuestName
}}
</td>
<td>
{{
item
.
EnterName
}}
</td>
<td>
{{
item
.
CustomerName
}}
</td>
<td>
{{
item
.
ScoreNum
}}
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"填写"
placement=
"top"
>
<el-button
v-if=
"item.ID==0"
type=
"primary"
icon=
"iconfont icon-Edit"
circle
@
click=
"chaKan(item)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"详情"
placement=
"top"
>
<el-button
v-if=
"item.ID!==0"
type=
"primary"
icon=
"iconfont icon-sousuo"
circle
@
click=
"openPage(item)"
></el-button>
</el-tooltip>
</td>
</tr>
</table>
<div
class=
"noDataNotice"
v-if=
"dataList.length
<1
"
>
<i
class=
"iconfont icon-kong"
></i>
<p>
{{
$t
(
"active.ld_noData"
)
}}
</p>
</div>
<a
href=
""
id=
"blankLink"
target=
"_blank"
style=
"display:none"
>
1
</a>
</div>
</
template
>
<
script
>
export
default
{
data
(){
return
{
loading
:
false
,
dataList
:
[],
DiaoChaShow
:
false
,
YouJiShow
:
false
,
showID
:
0
,
dialogTitle
:
''
,
OrderId
:
''
,
TCIDL
:
''
}
},
mounted
()
{
let
TCID
=
this
.
$route
.
query
.
TCID
,
OrderID
=
this
.
$route
.
query
.
OrderId
;
this
.
OrderId
=
OrderID
this
.
TCID
=
TCID
this
.
getList
(
TCID
,
OrderID
);
},
methods
:
{
openPage
:
function
(
obj
){
console
.
log
(
obj
)
let
dom
=
document
.
querySelector
(
"#blankLink"
);
dom
.
href
=
"http://activity.oytour.com/html/invesDetails2.html"
+
'?ID='
+
obj
.
ID
+
'&name='
+
encodeURI
(
obj
.
GuestName
)
+
'&MobilePhone='
+
obj
.
CustomerPhone
dom
.
click
();
},
chaKan
(
item
){
let
obj
=
JSON
.
stringify
(
item
)
this
.
$router
.
push
({
name
:
'NewSurveyList'
,
query
:{
"TCID"
:
this
.
TCID
,
"OrderId"
:
this
.
OrderId
,
obj
:
obj
,
blank
:
'y'
}
})
},
getList
:
function
(
TCID
,
OrderID
)
{
this
.
apipost
(
'survey_post_GetTotalListAPP'
,
{
TCID
:
TCID
,
OrderID
:
OrderID
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
dataList
=
res
.
data
.
data
.
objAll
;
}
},
null
)
}
}
}
</
script
>
src/components/administrative/NewSurveyList.vue
0 → 100644
View file @
21ea7596
<
style
>
.NewSurveyList.main
{
padding
:
1.5rem
;
}
.NewSurveyList
.tit
{
font-size
:
2rem
;
text-align
:
center
;
margin-bottom
:
.5rem
;
}
.NewSurveyList
.sub_tit
{
font-size
:
1.4rem
;
margin-bottom
:
.4rem
;
}
.NewSurveyList
.indet_2
{
text-indent
:
2.4rem
;
}
.NewSurveyList
.tit_det
{
text-indent
:
2.4rem
;
font-size
:
1rem
;
}
.NewSurveyList
table
{
border-collapse
:
collapse
;
border-spacing
:
0
;
}
.NewSurveyList
table
{
margin-top
:
1rem
;
width
:
100%
;
}
.NewSurveyList
tr
td
{
padding
:
.5rem
;
border
:
1px
solid
#5b5653
;
font-size
:
1rem
;
}
.NewSurveyList
.qianming
{
margin-top
:
2.5rem
;
}
.NewSurveyList
.qianming
label
{
margin-right
:
.2rem
;
}
.NewSurveyList.main
{
width
:
720px
;
margin
:
0
auto
;
}
.NewSurveyList
#table
td
,
.NewSurveyList
.qianming
span
{
color
:
#111
;
}
.NewSurveyList
#table
td
._name
,
.NewSurveyList
.qianming
label
{
color
:
#5d5d5d
;
}
</
style
>
<
template
>
<div
class=
"main NewSurveyList"
>
<!--
<p
class=
"tit"
>
印象旅游服务意见表
</p>
<div
class=
"message-box"
>
<p
class=
"sub_tit"
>
亲爱的旅客:
</p>
<div
class=
"tit_det"
>
<p>
感谢与您同行,让我们的旅行更加圆满!
</p>
<p>
我们十分珍视倾听您的声音。它将是我们改善服务的重要基础。
</p>
<p>
最后,需要您花一点点时间填写此表。诚挚地感谢您!
</p>
</div>
</div>
-->
<div
class=
"qianming"
>
<label
class=
"_name"
>
旅客签名:
<span
id=
"name"
>
{{
obj
.
GuestName
}}
</span></label>
<!--
<label
class=
"_name"
>
手机:
<span
id=
"phone"
></span></label>
<label
class=
"_name"
>
日期:
<span
id=
"day"
></span></label>
-->
</div>
<div
class=
""
>
<table
id=
"table"
>
<!--
<tr>
<td
class=
"_name"
>
线路:
</td>
<td
id=
"LineName"
></td>
<td
class=
"_name"
>
出发时间:
</td>
<td
id=
"StartDateStr"
></td>
<td
class=
"_name"
>
领队:
</td>
<td
width=
"80"
id=
"LeaderName"
></td>
</tr>
<tr>
<td
class=
"_name"
>
您的报名公司:
</td>
<td
id=
"BranchName"
></td>
<td
class=
"_name"
>
报名接待员:
</td>
<td
id=
"ContactName"
></td>
<td
class=
"_name"
>
专业度及服务评价:
</td>
<td></td>
</tr>
-->
<tr>
<td
class=
"_name"
>
旅客意见
</td>
<td
class=
"_name"
>
非常满意
</td>
<td
class=
"_name"
>
满意
</td>
<td
class=
"_name"
>
基本合格
</td>
<td
class=
"_name"
>
不满意
</td>
<!--
<td
class=
"_name"
>
评价
</td>
-->
</tr>
<tr
v-for=
"(item, index) in dataList"
>
<td
class=
"_name"
>
{{
index
+
1
}}
、
{{
item
.
Title
}}
</td>
<template
v-if=
"item.SurveyType === 1"
>
<td
colspan=
"4"
>
<el-rate
v-model=
"item.ScoreNum"
show-text
:texts=
"texts"
>
</el-rate>
</td>
</
template
>
<
template
v-if=
"item.SurveyType === 2"
>
<td
colspan=
"4"
>
<el-radio-group
v-model=
"item.ScoreNum"
>
<el-radio
v-for=
"(radio, rIndex) in item.SurveyOptionsList"
:label=
"radio.ID"
:key=
"rIndex"
>
{{
radio
.
OptionsName
}}
</el-radio>
</el-radio-group>
</td>
</
template
>
<
template
v-if=
"item.SurveyType === 3"
>
<td
colspan=
"4"
>
<el-checkbox-group
v-model=
"item.SurveyOptionsList"
>
<el-checkbox
v-for=
"(radio, rIndex) in item.SurveyOptionsList"
:label=
"radio.ID"
:key=
"rIndex"
>
{{
radio
.
OptionsName
}}
</el-checkbox>
</el-checkbox-group>
</td>
</
template
>
<
template
v-if=
"item.SurveyType === 4"
>
<td
colspan=
"4"
>
<el-input
type=
"textarea"
:rows=
"2"
placeholder=
"请输入内容"
v-model=
"item.TextContent"
>
</el-input>
</td>
</
template
>
</tr>
</table>
</div>
<div
style=
"margin: 20px 0; text-align: right;"
>
<button
class=
"normalBtn"
@
click=
"saveMessage"
>
{{$t('fnc.tijiao')}}
</button>
</div>
</div>
</template>
<
script
>
export
default
{
components
:{
},
data
(){
return
{
leaderData
:
{},
loading
:
false
,
dataList
:
[],
TCID
:
''
,
OrderID
:
''
,
GuestId
:
''
,
obj
:
{},
texts
:
[
'非常不满意'
,
'不满意'
,
'感觉一般'
,
'满意'
,
'非常满意'
]
}
},
mounted
()
{
this
.
TCID
=
this
.
$route
.
query
.
TCID
;
this
.
OrderID
=
this
.
$route
.
query
.
OrderId
;
this
.
obj
=
JSON
.
parse
(
this
.
$route
.
query
.
obj
)
this
.
GuestId
=
this
.
obj
.
GuestId
this
.
GetSurveyShowList
();
},
methods
:
{
saveMessage
:
function
(){
let
data
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
dataList
))
data
.
forEach
(
x
=>
{
x
.
TCID
=
this
.
TCID
;
x
.
OrderID
=
this
.
OrderID
;
x
.
GuestId
=
this
.
GuestId
;
if
(
x
.
SurveyType
===
2
||
x
.
SurveyType
===
3
)
{
x
.
SurveyOptionsList
.
forEach
(
y
=>
{
y
.
IsCheck
=
x
.
ScoreNum
==
y
.
ID
?
'1'
:
'0'
})
x
.
ScoreNum
=
0
}
})
this
.
apipost
(
'survey_post_SetGuestSurvey'
,
data
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
$message
.
success
(
'提交成功!'
)
setTimeout
(()
=>
{
window
.
close
()
},
1000
)
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
})
},
GetSurveyShowList
:
function
()
{
let
data
=
{
IsShow
:
1
,
SurveyType
:
-
1
}
this
.
apipost
(
'survey_post_GetSurveyShowList'
,
data
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
let
data
=
res
.
data
.
data
data
.
map
(
item
=>
{
if
(
item
.
SurveyType
===
2
)
{
item
.
SurveyOptionsList
.
map
((
cItem
,
cIndex
)
=>
{
cItem
.
IsCheckS
=
false
})
}
if
(
item
.
SurveyType
===
3
)
{
item
.
SurveyOptionsList
.
map
((
cItem
,
cIndex
)
=>
{
cItem
.
IsCheckS
=
false
})
}
if
(
item
.
SurveyType
===
1
)
{
item
.
ScoreNum
=
5
;
}
})
this
.
dataList
=
data
;
}
},
null
)
}
}
}
</
script
>
src/components/administrative/Survey.vue
0 → 100644
View file @
21ea7596
<
template
>
<div
class=
"Feedback"
>
<div
class=
"query-box"
>
<ul>
<li>
<span>
<em>
订单号
</em>
<el-input
v-model=
"msg.OrderId"
></el-input>
</span>
</li>
<li>
<span>
<em>
线路
</em>
</span>
<el-select
filterable
v-model=
"obj.LineID"
value-key=
"LineID"
@
change=
"getLineTeamList"
>
<el-option
label=
"不限"
:value=
'
{LineName:"不限",LineID:0}'>
</el-option>
<el-option
v-for=
"item in LineList"
:label=
'item.LineName'
:value=
'item'
:key=
'item.LineID'
></el-option>
</el-select>
</li>
<li>
<span>
<em>
系列
</em>
</span>
<el-select
filterable
v-model=
"obj.LineteamId"
value-key=
"LtID"
@
change=
"getLineLtID"
>
<el-option
label=
"不限"
:value=
'
{LtName:"不限",LtID:0}'>
</el-option>
<el-option
v-for=
"item in LineTeamList"
:label=
'item.LtName'
:value=
'item'
:key=
'item.LtID'
>
</el-option>
</el-select>
</li>
<!--
<li>
<span>
<em>
只看有评分
</em>
</span>
<el-select
filterable
class=
'multiple_input'
v-model=
'msg.isScore'
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
label=
"不限"
:value=
"0"
></el-option>
<el-option
label=
"是"
:value=
"1"
></el-option>
<el-option
label=
"否"
:value=
"-1"
></el-option>
</el-select>
</li>
-->
<li>
<span>
<em>
发团时间
</em>
</span>
<el-date-picker
value-format=
"yyyy-MM-dd"
:picker-options=
"pickerDisabled"
size=
"small"
v-model=
"dateList"
type=
"daterange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</li>
<li>
<input
type=
"button"
class=
"hollowFixedBtn"
value=
"查询"
@
click=
"resetPageIndex(),getList()"
>
</li>
</ul>
</div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th>
发团日期
</th>
<th>
订单号
</th>
<th>
团号
</th>
<th>
整体评分
</th>
<th
v-for=
"(item,i) in fields"
:key=
"i"
>
{{
item
}}
</th>
<th>
操作
</th>
</tr>
<tr
v-for=
"(item,i) in dataList"
:key=
"i"
>
<td>
{{
item
.
start
}}
</td>
<td>
{{
item
.
orderId
}}
</td>
<td>
{{
item
.
tCNUM
}}
</td>
<td>
<span
v-if=
"fields.length>0"
>
<span
v-if=
"item.sumScore/fields.length>3.5"
>
{{
(
item
.
sumScore
/
fields
.
length
).
toFixed
(
1
)
}}
</span>
<span
v-else
style=
"color:red"
>
{{
(
item
.
sumScore
/
fields
.
length
).
toFixed
(
1
)
}}
</span>
</span>
<span
v-else
>
<span
v-if=
"item.sumScore>3.5"
>
{{
item
.
sumScore
}}
</span>
<span
v-else
style=
"color:red"
>
{{
item
.
sumScore
}}
</span>
</span>
</td>
<td
v-for=
"(c,childIndex) in fields"
:key=
"childIndex"
>
<span
v-if=
"item[c]&&item[c]>3.5"
>
{{
item
[
c
]?
item
[
c
]:
0
}}
</span>
<span
v-else
style=
"color:red"
>
{{
item
[
c
]?
item
[
c
]:
0
}}
</span>
</td>
<td>
<span
style=
"cursor:pointer"
@
click=
"chaKan(item)"
>
明细
</span>
</td>
</tr>
<tr
v-if=
"dataList.length==0"
>
<td
colspan=
"12"
align=
"center"
>
暂无数据
</td>
</tr>
</table>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:total=
"total"
></el-pagination>
</div>
</
template
>
<
script
>
import
moment
from
"moment"
export
default
{
name
:
'Feedback'
,
data
(){
return
{
obj
:{},
dataList
:[],
loading
:
false
,
msg
:{
pageSize
:
10
,
pageIndex
:
1
,
lineID
:
0
,
LineteamId
:
0
,
reStartDate
:
''
,
reEndDate
:
''
,
OrderId
:
''
,
isScore
:
0
,
lineName
:
"不限"
,
LineteamName
:
"不限"
,
},
total
:
0
,
currentPage
:
1
,
dateList
:[],
LineList
:[],
LineTeamList
:[],
fields
:[],
pickerDisabled
:
{
//验证时间范围
disabledDate
:(
time
)
=>
{
let
_now
=
Date
.
now
();
return
time
.
getTime
()
>
_now
;
}
}
}
},
created
(){
this
.
dateList
[
0
]
=
moment
().
subtract
(
6
,
"month"
).
format
(
"YYYY-MM-DD"
);
this
.
dateList
[
1
]
=
moment
().
format
(
"YYYY-MM-DD"
);
// console.log("this.dateList",this.dateList)
this
.
getTitle
();
},
mounted
(){
this
.
getLineList
();
this
.
getList
();
},
methods
:{
chaKan
(
item
){
this
.
$router
.
push
({
name
:
'NewSurvey'
,
query
:{
"TCID"
:
item
.
tcid
,
"OrderId"
:
item
.
orderId
,
blank
:
'y'
}
})
},
goUrl
(){
this
.
$router
.
push
({
name
:
'FeedbackChart'
,
query
:{
"msg"
:
JSON
.
stringify
(
this
.
msg
),
blank
:
'y'
}
})
},
getLineList
()
{
this
.
apipost
(
"line_post_GetAllList_V2"
,
{
LineDirection
:
0
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
LineList
=
res
.
data
.
data
;
}
});
},
getLineLtID
(
val
){
this
.
msg
.
LineteamId
=
val
.
LtID
;
this
.
msg
.
LineteamName
=
val
.
LtName
;
},
//获取系列列表
getLineTeamList
(
val
)
{
let
lineId
=
val
.
LineID
;
this
.
msg
.
lineID
=
val
.
LineID
;
this
.
msg
.
lineName
=
val
.
LineName
;
this
.
LineTeamList
=
[]
this
.
apipost
(
"team_post_GetList"
,
{
lineID
:
lineId
,
isTOOP
:
1
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
LineTeamList
=
res
.
data
.
data
;
}
});
},
getTitle
()
{
this
.
apiJavaPost
(
"/api/erp/survey/getSurveyTitleList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
res
.
data
.
data
.
forEach
(
item
=>
{
this
.
fields
.
push
(
item
.
title
)
})
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
getList
(){
if
(
this
.
dateList
&&
this
.
dateList
.
length
>
0
){
this
.
msg
.
reStartDate
=
this
.
dateList
[
0
];
this
.
msg
.
reEndDate
=
this
.
dateList
[
1
];
//计算相差多少天 day可以是second minute
let
m1
=
moment
(
this
.
msg
.
reStartDate
)
let
m2
=
moment
(
this
.
msg
.
reEndDate
)
let
year
=
m2
.
diff
(
m1
,
'year'
);
if
(
year
>
0
){
this
.
Error
(
"最多查询一年的数据!"
)
return
;
}
}
else
{
this
.
msg
.
reStartDate
=
""
;
this
.
msg
.
reEndDate
=
""
;
}
this
.
loading
=
true
;
this
.
apiJavaPost
(
"/api/erp/survey/getOrderSurveyList"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
===
1
)
{
let
arrays
=
[];
// console.log("res.data.data.pageData",res.data.data)
res
.
data
.
data
.
pageData
.
forEach
(
x
=>
{
let
isHave
=
false
if
(
x
.
tCID
!=
0
||
x
.
tCID
||
x
.
tCID
!=
''
){
// if(this.fields.indexOf(x.title)==-1&&x.title!=''){
// this.fields.push(x.title)
// console.log("fields",this.fields)
// }
if
(
arrays
.
length
>
0
){
arrays
.
forEach
(
y
=>
{
if
(
y
.
orderId
==
x
.
orderId
){
y
[
x
.
title
]
=
x
.
scoreNum
y
.
sumScore
+=
x
.
scoreNum
isHave
=
true
return
false
}
})
}
if
(
!
isHave
){
let
obj
=
{
tcid
:
x
.
tCID
,
orderId
:
x
.
orderId
,
start
:
""
,
sumScore
:
x
.
scoreNum
,
tCNUM
:
x
.
tCNUM
}
if
(
x
.
startDate
){
obj
.
start
=
x
.
startDate
.
split
(
'T'
)[
0
]
}
obj
[
x
.
title
]
=
x
.
scoreNum
arrays
.
push
(
obj
)
}
}
});
this
.
dataList
=
arrays
;
// console.log("this.dataList",this.dataList)
this
.
total
=
res
.
data
.
data
.
count
;
}
else
{
this
.
Error
(
res
.
data
.
message
)
}
},
null
);
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
;
this
.
currentPage
=
1
;
},
}
}
</
script
>
<
style
scoped
>
.Feedback
ul
>
li
{
display
:
inline-block
;
font-size
:
12px
;
color
:
#666
;
margin
:
20px
30px
0px
0
;
}
.Feedback
.singeRowTable
{
margin-top
:
20px
;
}
</
style
>
src/router/config.js
View file @
21ea7596
import
login
from
'../components/Login'
import
login
from
'../components/Login'
// import login from '../components/Login2019'
import
index
from
'../components/index'
import
index
from
'../components/index'
import
clientConfirm
from
'../components/clientConfirm'
import
clientConfirm
from
'../components/clientConfirm'
import
SignName
from
'../components/SignName'
import
SignName
from
'../components/SignName'
...
@@ -424,6 +425,30 @@ export default {
...
@@ -424,6 +425,30 @@ export default {
title
:
'岗位管理'
title
:
'岗位管理'
},
},
},
},
{
path
:
'/Survey'
,
//意见调查
name
:
'Survey'
,
component
:
resolve
=>
require
([
'@/components/administrative/Survey'
],
resolve
),
meta
:
{
title
:
'意见调查'
},
},
{
path
:
'/NewSurvey'
,
//意见调查 订单列表
name
:
'NewSurvey'
,
component
:
resolve
=>
require
([
'@/components/administrative/NewSurvey'
],
resolve
),
meta
:
{
title
:
'意见调查'
},
},
{
path
:
'/NewSurveyList'
,
//意见调查填写
name
:
'NewSurveyList'
,
component
:
resolve
=>
require
([
'@/components/administrative/NewSurveyList'
],
resolve
),
meta
:
{
title
:
'意见调查填写'
},
},
{
{
path
:
'/Announcement'
,
//公告管理
path
:
'/Announcement'
,
//公告管理
name
:
'Announcement'
,
name
:
'Announcement'
,
...
...
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