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
dbdde84b
Commit
dbdde84b
authored
Oct 11, 2024
by
youjie
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
9bb03486
ddfc1c3c
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
1316 additions
and
716 deletions
+1316
-716
investigationDetail.vue
src/components/SalesModule/investigationDetail.vue
+61
-59
investigationList.vue
src/components/SalesModule/investigationList.vue
+83
-91
LianMengManagement.vue
src/components/administrative/LianMengManagement.vue
+276
-257
Survey.vue
src/components/administrative/Survey.vue
+2
-1
SurveyManager.vue
src/components/administrative/SurveyManager.vue
+298
-0
VoucherInquiry.vue
src/components/administrative/VoucherInquiry.vue
+296
-299
guestSign.vue
src/components/guestSign.vue
+123
-0
guestlogin.vue
src/components/guestlogin.vue
+75
-0
guestlogin.vue
src/components/h5page/guestlogin.vue
+40
-0
TravelFeature.vue
...nts/newTravelmanager/TravelGroupControl/TravelFeature.vue
+12
-1
YearLimit.vue
src/components/public/YearLimit.vue
+0
-1
index.js
src/plug/index.js
+26
-7
config.js
src/router/config.js
+24
-0
No files found.
src/components/SalesModule/investigationDetail.vue
View file @
dbdde84b
<
style
>
<
style
>
.investigationDetail
.item
{
.investigationDetail
.item
{
padding
:
20px
0
10px
20px
;
padding
:
20px
0
10px
20px
;
}
}
</
style
>
</
style
>
<
template
>
<
template
>
<el-form
class=
"investigationDetail"
>
<el-form
class=
"investigationDetail"
>
<div
v-for=
"(item, index) in details"
:key=
"index"
>
<div
v-for=
"(item, index) in details"
:key=
"index"
>
<p>
{{
index
+
1
}}
、
{{
item
.
Title
}}
</p>
<p>
{{
index
+
1
}}
、
{{
item
.
Title
}}
</p>
<div
class=
"item"
>
<div
class=
"item"
>
<el-rate
<el-rate
disabled=
"disabled"
v-if=
"item.SurveyType === 1"
v-model=
"item.ScoreNum"
:texts=
"texts"
show-text
>
disabled=
"disabled"
v-if=
"item.SurveyType === 1"
v-model=
"item.ScoreNum"
:texts=
"texts"
show-text
>
</el-rate>
</el-rate>
<template
v-else-if=
"item.SurveyType === 2"
>
<template
v-else-if=
"item.SurveyType === 2"
>
<template
v-for=
"(r, i) in item.SurveyOptionsList"
v-if=
"r.IsCheck!=='0'"
>
<template
v-for=
"(r, i) in item.SurveyOptionsList"
v-if=
"r.IsCheck!=='0'"
>
<span>
{{
r
.
OptionsName
}}
</span>
<span>
{{
r
.
OptionsName
}}
</span>
</
template
>
</
template
>
</template>
</template>
<
template
v-else-if=
"item.SurveyType === 3"
>
<
template
v-else-if=
"item.SurveyType === 3"
>
<template
v-for=
"(r, i) in item.SurveyOptionsList"
v-if=
"r.IsCheck!=='0'"
>
<template
v-for=
"(r, i) in item.SurveyOptionsList"
v-if=
"r.IsCheck!=='0'"
>
<span>
{{
r
.
OptionsName
}}
</span>
<span>
{{
r
.
OptionsName
}}
</span>
</
template
>
</
template
>
</template>
</template>
<
template
v-else-if=
"item.SurveyType === 4"
>
<
template
v-else-if=
"item.SurveyType === 4"
>
<span>
{{
item
.
TextContent
}}
</span>
<span>
{{
item
.
TextContent
}}
</span>
</
template
>
</
template
>
</div>
</div>
</div>
</div>
</el-form>
</el-form>
</template>
</template>
<
script
>
<
script
>
export
default
{
export
default
{
props
:[
'ID'
],
props
:
[
'ID'
],
data
(){
data
()
{
return
{
return
{
details
:
[],
details
:
[],
texts
:
[
'非常不满意'
,
'不满意'
,
'感觉一般'
,
'满意'
,
'非常满意'
]
texts
:
[
'非常不满意'
,
'不满意'
,
'感觉一般'
,
'满意'
,
'非常满意'
]
}
}
},
watch
:
{
},
ID
:
{
watch
:
{
handler
:
function
(
val
,
oldVal
)
{
ID
:
{
if
(
val
!==
oldVal
){
handler
:
function
(
val
,
oldVal
)
{
this
.
getDetails
()
if
(
val
!==
oldVal
)
{
}
this
.
getDetails
()
},
}
deep
:
true
},
}
deep
:
true
},
mounted
()
{
}
this
.
getDetails
()
},
},
methods
:
{
mounted
()
{
getDetails
:
function
()
{
this
.
getDetails
()
this
.
apipost
(
'survey_post_GetGuestSurvey'
,
{
SurveyID
:
this
.
ID
},
res
=>
{
},
if
(
res
.
data
.
resultCode
===
1
)
{
methods
:
{
let
data
=
res
.
data
.
data
getDetails
:
function
()
{
data
.
map
(
x
=>
{
this
.
apipost
(
'survey_post_GetGuestSurvey'
,
{
if
(
x
.
SurveyType
===
2
)
{
SurveyID
:
this
.
ID
x
.
SurveyOptionsList
.
map
(
y
=>
{
},
res
=>
{
if
(
y
.
IsCheck
===
'1'
)
{
if
(
res
.
data
.
resultCode
===
1
)
{
x
.
lable
=
y
.
ID
let
data
=
res
.
data
.
data
}
data
.
map
(
x
=>
{
})
if
(
x
.
SurveyType
===
2
)
{
}
x
.
SurveyOptionsList
.
map
(
y
=>
{
if
(
x
.
SurveyType
===
3
)
{
if
(
y
.
IsCheck
===
'1'
)
{
let
ckeckList
=
[]
x
.
lable
=
y
.
ID
x
.
SurveyOptionsList
.
map
(
y
=>
{
}
if
(
y
.
IsCheck
===
'1'
)
{
})
ckeckList
.
push
(
y
.
ID
)
}
}
if
(
x
.
SurveyType
===
3
)
{
})
let
ckeckList
=
[]
x
.
ckeckList
=
ckeckList
x
.
SurveyOptionsList
.
map
(
y
=>
{
}
if
(
y
.
IsCheck
===
'1'
)
{
})
ckeckList
.
push
(
y
.
ID
)
this
.
details
=
data
}
}
})
},
null
)
x
.
ckeckList
=
ckeckList
}
})
this
.
details
=
data
}
},
null
)
}
}
}
}
}
}
</
script
>
</
script
>
src/components/SalesModule/investigationList.vue
View file @
dbdde84b
<
style
>
<
style
>
.investigationList
td
button
{
.investigationList
td
button
{
width
:
30px
;
width
:
30px
;
height
:
30px
;
height
:
30px
;
display
:
inline-block
;
display
:
inline-block
;
color
:
white
!important
;
color
:
white
!important
;
border-radius
:
50%
;
border-radius
:
50%
;
text-align
:
center
;
text-align
:
center
;
line-height
:
30px
;
line-height
:
30px
;
margin-right
:
10px
;
margin-right
:
10px
;
cursor
:
pointer
;
cursor
:
pointer
;
outline
:
none
;
outline
:
none
;
padding
:
0
;
padding
:
0
;
}
}
.investigationList
.el-button.is-circle
{
padding
:
0
;
.investigationList
.el-button.is-circle
{
}
padding
:
0
;
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"investigationList"
>
<div
class=
"investigationList"
>
...
@@ -27,95 +29,85 @@
...
@@ -27,95 +29,85 @@
<th>
分数
</th>
<th>
分数
</th>
<th>
{{
$t
(
'system.table_operation'
)
}}
</th>
<th>
{{
$t
(
'system.table_operation'
)
}}
</th>
</tr>
</tr>
<tr
v-for=
"item in dataList"
>
<tr
v-for=
"(item,index) in dataList"
:key=
"index"
>
<td>
{{
item
.
OrderID
}}
</td>
<td>
{{
item
.
OrderID
}}
</td>
<td>
{{
item
.
GuestName
}}
</td>
<td>
{{
item
.
GuestName
}}
</td>
<td>
{{
item
.
EnterName
}}
</td>
<td>
{{
item
.
EnterName
}}
</td>
<td>
{{
item
.
CustomerName
}}
</td>
<td>
{{
item
.
CustomerName
}}
</td>
<td>
{{
item
.
ScoreNum
}}
</td>
<td>
{{
item
.
ScoreNum
}}
</td>
<td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"查看问券"
placement=
"top"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"查看问券"
placement=
"top"
>
<el-button
<el-button
type=
"primary"
icon=
"iconfont icon-sousuo"
circle
type=
"primary"
@
click=
"dialogTitle = '游客问券',DiaoChaShow=true, openPage(item)"
>
icon=
"iconfont icon-sousuo"
</el-button>
circle
</el-tooltip>
@
click=
"dialogTitle = '游客问券', openPage(item)"
<el-tooltip
class=
"item"
effect=
"dark"
content=
"查看游记"
placement=
"top"
>
></el-button>
<el-button
v-if=
"item.NotesId > 0"
type=
"primary"
icon=
"iconfont icon-youji"
circle
<!-- showID = item.ID, DiaoChaShow = true -->
@
click=
"dialogTitle = '游记', showID = item.NotesId, YouJiShow = true"
></el-button>
</el-tooltip>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"查看游记"
placement=
"top"
>
</td>
<el-button
v-if=
"item.NotesId > 0"
type=
"primary"
icon=
"iconfont icon-youji"
circle
@
click=
"dialogTitle = '游记', showID = item.NotesId, YouJiShow = true"
></el-button>
</el-tooltip>
</td>
</tr>
</tr>
</table>
</table>
<div
class=
"noDataNotice"
v-if=
"dataList.length
<1
"
>
<div
class=
"noDataNotice"
v-if=
"dataList.length
<1
"
>
<i
class=
"iconfont icon-kong"
></i>
<i
class=
"iconfont icon-kong"
></i>
<p>
{{
$t
(
"active.ld_noData"
)
}}
</p>
<p>
{{
$t
(
"active.ld_noData"
)
}}
</p>
</div>
</div>
<el-dialog
<el-dialog
custom-class=
"w400"
:title=
"dialogTitle"
:visible
.
sync=
"DiaoChaShow"
center
:before-close=
"closeDialog"
>
custom-class=
"w400"
<DiaoCha
:ID=
"showID"
/>
:title=
"dialogTitle"
:visible
.
sync=
"DiaoChaShow"
center
:before-close=
"closeDialog"
>
<DiaoCha
:ID=
"showID"
/>
</el-dialog>
</el-dialog>
<el-dialog
<el-dialog
custom-class=
"w500"
:title=
"dialogTitle"
:visible
.
sync=
"YouJiShow"
center
:before-close=
"closeDialog"
>
custom-class=
"w500"
<YouJi
:ID=
"showID"
/>
:title=
"dialogTitle"
:visible
.
sync=
"YouJiShow"
center
:before-close=
"closeDialog"
>
<YouJi
:ID=
"showID"
/>
</el-dialog>
</el-dialog>
<a
href=
""
id=
"blankLink"
target=
"_blank"
style=
"display:none"
>
1
</a>
<a
href=
""
id=
"blankLink"
target=
"_blank"
style=
"display:none"
>
1
</a>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
DiaoCha
from
'./investigationDetail'
;
import
DiaoCha
from
'./investigationDetail'
;
import
YouJi
from
'./investigationYouDetail'
;
import
YouJi
from
'./investigationYouDetail'
;
export
default
{
export
default
{
components
:{
components
:
{
DiaoCha
:
DiaoCha
,
DiaoCha
:
DiaoCha
,
YouJi
:
YouJi
,
YouJi
:
YouJi
,
},
},
data
(){
data
()
{
return
{
return
{
loading
:
false
,
loading
:
false
,
dataList
:
[],
dataList
:
[],
DiaoChaShow
:
false
,
DiaoChaShow
:
false
,
YouJiShow
:
false
,
YouJiShow
:
false
,
showID
:
0
,
showID
:
0
,
dialogTitle
:
''
,
dialogTitle
:
''
,
}
}
},
mounted
()
{
let
TCID
=
this
.
$route
.
query
.
TCID
,
OrderID
=
this
.
$route
.
query
.
OrderId
;
this
.
getList
(
TCID
,
OrderID
);
},
methods
:
{
openPage
:
function
(
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
();
},
},
closeDialog
:
function
()
{
mounted
()
{
this
.
DiaoChaShow
=
false
;
let
TCID
=
this
.
$route
.
query
.
TCID
;
this
.
YouJiShow
=
false
;
let
OrderID
=
this
.
$route
.
query
.
OrderId
;
this
.
getList
(
TCID
,
OrderID
);
},
},
getList
:
function
(
TCID
,
OrderID
)
{
methods
:
{
this
.
apipost
(
'survey_post_GetTotalList'
,
{
TCID
:
TCID
,
OrderID
:
OrderID
},
res
=>
{
openPage
:
function
(
obj
)
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
showID
=
obj
.
ID
;
this
.
dataList
=
res
.
data
.
data
;
// let dom = document.querySelector("#blankLink");
}
// dom.href = "http://activity.oytour.com/html/invesDetails2.html" + '?ID=' + obj.ID + '&name=' + encodeURI(obj
},
null
)
// .GuestName) + '&MobilePhone=' + obj.CustomerPhone
// dom.click();
},
closeDialog
:
function
()
{
this
.
DiaoChaShow
=
false
;
this
.
YouJiShow
=
false
;
},
getList
:
function
(
TCID
,
OrderID
)
{
this
.
apipost
(
'survey_post_GetTotalList'
,
{
TCID
:
TCID
,
OrderID
:
OrderID
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
dataList
=
res
.
data
.
data
;
console
.
log
(
"this.dataList"
,
this
.
dataList
);
}
},
null
)
}
}
}
}
}
}
</
script
>
</
script
>
src/components/administrative/LianMengManagement.vue
View file @
dbdde84b
This diff is collapsed.
Click to expand it.
src/components/administrative/Survey.vue
View file @
dbdde84b
...
@@ -32,7 +32,8 @@
...
@@ -32,7 +32,8 @@
<em>
发团时间
</em>
<em>
发团时间
</em>
</span>
</span>
<el-date-picker
value-format=
"yyyy-MM-dd"
:picker-options=
"pickerDisabled"
size=
"small"
v-model=
"dateList"
<el-date-picker
value-format=
"yyyy-MM-dd"
:picker-options=
"pickerDisabled"
size=
"small"
v-model=
"dateList"
type=
"daterange"
:range-separator=
"$t('OrderList.zhi')"
:start-placeholder=
"$t('OrderList.star')"
:end-placeholder=
"$t('OrderList.end')"
>
type=
"daterange"
:range-separator=
"$t('OrderList.zhi')"
:start-placeholder=
"$t('OrderList.star')"
:end-placeholder=
"$t('OrderList.end')"
>
</el-date-picker>
</el-date-picker>
</li>
</li>
<li>
<li>
...
...
src/components/administrative/SurveyManager.vue
0 → 100644
View file @
dbdde84b
<
style
>
.height_auto.el-select
.el-input
{
height
:
auto
;
}
.CommodityType
._addUpload_box
{
display
:
block
;
margin
:
10px
0
0
;
}
.CommodityType
._addUpload_box
img
{
height
:
15px
;
display
:
block
;
margin-right
:
25px
;
}
.CommodityType
._addUpload_box
>
div
.el-upload
{
float
:
left
;
width
:
138px
;
height
:
92px
;
border
:
1px
dashed
rgba
(
210
,
210
,
210
,
1
);
border-radius
:
2px
;
cursor
:
pointer
;
margin-bottom
:
10px
;
padding
:
5px
;
margin-right
:
10px
;
position
:
relative
;
}
.CommodityType
._addUpload_box
.icon-guanbi1
{
font-size
:
12px
;
color
:
white
;
display
:
inline-block
;
margin-left
:
15px
;
position
:
absolute
;
left
:
9px
;
top
:
-5px
;
background-color
:
#f56c6c
;
border-radius
:
50%
;
height
:
15px
;
width
:
15px
;
text-align
:
center
;
line-height
:
15px
;
}
.CommodityType
._addUpload_box
>
div
:hover
{
background-color
:
#f5f5f5
;
}
.CommodityType
.el-upload-dragger
{
font-size
:
28px
;
color
:
#8c939d
;
width
:
126px
;
height
:
80px
;
line-height
:
41px
;
text-align
:
center
;
}
.CommodityType
.bg_color_delete
{
background-color
:
#ee4454
;
border-color
:
#ee4454
;
}
.comType_Img
{
max-height
:
50px
;
}
</
style
>
<
template
>
<div
class=
"flexOne CommodityType"
>
<div
class=
"query-box"
>
<ul
class
>
<li>
<span>
<em>
名称
</em>
<el-input
v-model=
"msg.Title"
></el-input>
</span>
</li>
<li>
<input
type=
"button"
@
click=
"getList"
class=
"hollowFixedBtn"
:value=
"$t('pub.searchBtn')"
>
<input
type=
"button"
@
click=
"outerVisible = true,dialogTitle='新增', addMsg.reqType = 'add',resetInfo()"
class=
"normalBtn"
:value=
"$t('pub.addBtn')"
>
</li>
</ul>
</div>
<div
class=
"clearfix"
></div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th
width=
"100px"
>
编号
</th>
<th>
问卷名称
</th>
<th
width=
"200px"
>
操作人
</th>
<th
width=
"200px"
>
操作时间
</th>
<th
width=
"120px"
>
{{
$t
(
'hotel.table_operat'
)
}}
</th>
</tr>
<tr
v-for=
"(item,index) in dataList"
:key=
"index"
>
<td>
{{
item
.
MainId
}}
</td>
<td>
{{
item
.
Title
}}
</td>
<td>
{{
item
.
CreateByName
}}
</td>
<td>
<template
v-if=
"item.UpdateDate&&item.UpdateDate!=''"
>
{{
item
.
UpdateDate
}}
</
template
>
<
template
v-else
>
{{
item
.
CreateDate
}}
</
template
>
</td>
<td>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('active.ld_editInfo')"
placement=
"top"
>
<el-button
type=
"primary"
icon=
"el-icon-edit"
circle
@
click=
"outerVisible=true,dialogTitle='修改',updateData(item)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"设置问卷内容"
placement=
"top"
>
<el-button
type=
"primary"
icon=
"el-icon-tickets"
circle
@
click=
"setSurverContent(item)"
>
</el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('system.table_delete')"
placement=
"top"
>
<el-button
type=
"primary"
class=
"bg_color_delete"
icon=
"el-icon-delete"
circle
@
click=
"Delete(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>
<el-pagination
background
@
current-change=
"handleCurrentChange"
layout=
"total,prev, pager, next, jumper"
:page-size=
"msg.pageSize"
:total=
"total"
>
</el-pagination>
<el-dialog
custom-class=
"w400"
:title=
"dialogTitle"
:visible
.
sync=
"outerVisible"
center
:before-close=
"closeChangeMachie"
>
<el-form
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"110px"
>
<el-form-item
label=
"问卷名称"
prop=
"Title"
>
<el-input
v-model=
"addMsg.Title"
class=
"w217"
/>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
@
click=
"outerVisible = false, resetForm('addMsg')"
>
{{$t('pub.cancelBtn')}}
</button>
<button
class=
"normalBtn"
@
click=
"submitForm('addMsg')"
>
{{$t('pub.saveBtn')}}
</button>
</div>
</el-dialog>
</div>
</template>
<
script
>
export
default
{
data
()
{
return
{
//请求
msg
:
{
pageIndex
:
1
,
pageSize
:
15
,
Title
:
''
},
addMsg
:
{
MainId
:
0
,
Title
:
""
,
},
total
:
0
,
rules
:
{
Title
:
[{
required
:
true
,
message
:
"请输入名称"
,
trigger
:
"blur"
}]
},
loading
:
false
,
outerVisible
:
false
,
dialogTitle
:
""
,
dataList
:
[],
};
},
mounted
()
{
this
.
getList
();
},
filters
:
{},
methods
:
{
//设置问卷内容
setSurverContent
(
item
)
{
let
query
=
{
MainId
:
item
.
MainId
,
}
this
.
OpenNewPage
(
'/VoucherInquiry'
,
query
)
},
// 删除
Delete
(
item
)
{
this
.
$confirm
(
"是否删除? 删除后不可恢复"
,
this
.
$t
(
'tips.tips'
),
{
confirmButtonText
:
this
.
$t
(
'pub.sureBtn'
),
cancelButtonText
:
this
.
$t
(
'pub.cancelBtn'
),
type
:
"warning"
})
.
then
(()
=>
{
this
.
apipost
(
"survey_post_RemoveSurveyMain"
,
{
MainId
:
item
.
MainId
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
res
.
data
.
message
);
this
.
getList
();
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
})
.
catch
(()
=>
{});
},
//获取数据
getList
()
{
this
.
loading
=
true
;
this
.
apipost
(
"survey_post_GetSurveyMainPage"
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
dataList
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
//提交
submitForm
(
addMsg
)
{
//提交创建、修改表单
this
.
$refs
[
addMsg
].
validate
(
valid
=>
{
if
(
valid
)
{
this
.
addAward
();
}
else
{
return
false
;
}
});
},
//提交添加
addAward
()
{
this
.
apipost
(
"survey_post_SetSurveyMain"
,
this
.
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
Success
(
res
.
data
.
message
);
this
.
outerVisible
=
false
;
this
.
getList
();
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
//修改信息
updateData
(
item
)
{
this
.
outerVisible
=
true
;
this
.
apipost
(
"survey_post_GetSurveyMain"
,
{
MainId
:
item
.
MainId
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
let
data
=
res
.
data
.
data
this
.
addMsg
.
MainId
=
data
.
MainId
;
this
.
addMsg
.
Title
=
data
.
Title
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
//重置信息
resetInfo
()
{
this
.
addMsg
.
MainId
=
0
;
this
.
addMsg
.
Title
=
""
;
},
closeChangeMachie
(
done
)
{
//弹出框关闭初始化弹框内表单
done
();
this
.
resetForm
(
"addMsg"
);
},
resetForm
(
formName
)
{
this
.
$refs
[
formName
].
resetFields
();
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
}
};
</
script
>
src/components/administrative/VoucherInquiry.vue
View file @
dbdde84b
This diff is collapsed.
Click to expand it.
src/components/guestSign.vue
0 → 100644
View file @
dbdde84b
<
style
scoped
>
.guestSign
{
font-size
:
40px
;
margin-top
:
10px
;
margin-bottom
:
10px
;
}
/* 自定义评分组件的样式 */
.guestSign
.custom-rate
.el-rate__item
{
font-size
:
38px
;
/* 调整星星的大小 */
}
/
deep
/
.guestSign
.custom-rate
.el-rate__icon
{
font-size
:
60px
;
}
/
deep
/
.guestSign
.custom-rate
.el-rate__text
{
font-size
:
60px
;
}
</
style
>
<
template
>
<div
class=
"guestSign"
>
<span>
感谢
{{
qMsg
.
SurName
}}
{{
qMsg
.
Sex
==
1
?
"先生"
:
"女士"
}}
参与意见调查
</span>
<span>
领队:王 ,导游:张
</span>
<span>
团期:2022.01.01-2024.08.01
</span>
<template
v-for=
"(item,index) in dataList "
>
<span
:key=
"`t_`+index"
>
{{
index
+
1
}}
、
{{
item
.
Title
}}
</span>
<template
v-if=
"item.SurveyType === 1"
>
<el-rate
:key=
"`s_`+index"
v-model=
"item.ScoreNum"
show-text
:texts=
"texts"
class=
"custom-rate"
>
</el-rate>
</
template
>
<
template
v-if=
"item.SurveyType === 2"
>
<el-radio-group
v-model=
"item.ScoreNum"
:key=
"`ss_`+index"
>
<el-radio
v-for=
"(radio, rIndex) in item.SurveyOptionsList"
:label=
"radio.ID"
:key=
"rIndex"
>
{{
radio
.
OptionsName
}}
</el-radio>
</el-radio-group>
</
template
>
<
template
v-if=
"item.SurveyType === 3"
>
<el-checkbox-group
v-model=
"item.SurveyOptionsList"
:key=
"`sss_`+index"
>
<el-checkbox
v-for=
"(radio, rIndex) in item.SurveyOptionsList"
:label=
"radio.ID"
:key=
"rIndex"
>
{{
radio
.
OptionsName
}}
</el-checkbox>
</el-checkbox-group>
</
template
>
<
template
v-if=
"item.SurveyType === 4"
>
<el-input
:key=
"`ssss_`+index"
type=
"textarea"
:rows=
"2"
:placeholder=
"$t('fnc.qsrneirong')"
v-model=
"item.TextContent"
>
</el-input>
</
template
>
</template>
<el-button
type=
"primary"
>
提交
</el-button>
</div>
</template>
<
script
>
export
default
{
data
()
{
return
{
qMsg
:
{
TCID
:
21633
,
GuestId
:
0
,
SurName
:
""
,
//中文姓
Sex
:
0
,
//性别 1-男 2-女
},
dataList
:
[],
};
},
created
()
{
if
(
this
.
$route
.
query
.
TCID
)
{
this
.
qMsg
.
TCID
=
this
.
$route
.
query
.
TCID
;
}
if
(
this
.
$route
.
query
.
GuestId
)
{
this
.
qMsg
.
GuestId
=
this
.
$route
.
query
.
GuestId
;
}
if
(
this
.
$route
.
query
.
SurName
)
{
this
.
qMsg
.
SurName
=
this
.
$route
.
query
.
SurName
;
}
if
(
this
.
$route
.
query
.
Sex
)
{
this
.
qMsg
.
Sex
=
this
.
$route
.
query
.
Sex
;
}
},
mounted
()
{
this
.
GetSurveyShowList
();
},
methods
:
{
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/guestlogin.vue
0 → 100644
View file @
dbdde84b
<
style
>
</
style
>
<
template
>
<div>
<input
type=
"button"
value=
"手机号验证"
style=
"width:95%;height:200px;"
@
click=
"changeLoginType(1)"
/>
<br
/>
<input
type=
"button"
value=
"护照号验证"
style=
"width:95%;height:200px;"
@
click=
"changeLoginType(2)"
/>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
activeName
:
'first'
,
postMsg
:
{
type
:
1
,
//1-手机号码验证登录,2-护照号码验证登录
//E75385750 13970261014
guestMobile
:
"13970261014"
,
//1-为手机号码,2-护照号码
TCID
:
21633
},
qMsg
:
{
TCID
:
21633
,
GuestId
:
0
,
SurName
:
""
,
//中文姓
Sex
:
0
,
//性别 1-男 2-女
}
};
},
created
()
{
if
(
this
.
$route
.
query
.
TCID
)
{
this
.
postMsg
.
TCID
=
this
.
$route
.
query
.
TCID
;
this
.
qMsg
.
TCID
=
this
.
$route
.
query
.
TCID
;
}
},
mounted
()
{
this
.
guestLogin
();
},
methods
:
{
changeLoginType
(
type
)
{
this
.
postMsg
.
type
=
type
;
},
guestLogin
()
{
this
.
apipost
(
"miniProgram_price_GetGuestByPhone_V2"
,
this
.
postMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
var
tempData
=
res
.
data
.
data
;
console
.
log
(
tempData
);
this
.
qMsg
.
GuestId
=
tempData
[
0
].
Id
;
this
.
qMsg
.
SurName
=
tempData
[
0
].
SurName
;
this
.
qMsg
.
Sex
=
tempData
[
0
].
Sex
;
this
.
$router
.
push
({
name
:
"guestSign"
,
query
:
{
TCID
:
this
.
qMsg
.
TCID
,
GuestId
:
this
.
qMsg
.
GuestId
,
SurName
:
this
.
qMsg
.
SurName
,
Sex
:
this
.
qMsg
.
Sex
,
}
})
}
},
err
=>
{}
);
}
}
}
</
script
>
src/components/h5page/guestlogin.vue
0 → 100644
View file @
dbdde84b
<
style
>
</
style
>
<
template
>
<div>
<input
type=
"button"
value=
"手机号验证"
/>
<input
type=
"button"
value=
"护照号验证"
/>
</div>
</
template
>
<
script
>
export
default
{
components
:
{
},
data
()
{
return
{
activeName
:
'first'
,
postMsg
:
{
loginType
:
1
,
//1-手机号码验证登录,2-护照号码验证登录
phoneNum
:
""
,
//电话号码
passportNum
:
""
,
//护照号码
}
};
},
mounted
()
{
},
methods
:
{
guestLogin
()
{
}
}
};
</
script
>
src/components/newTravelmanager/TravelGroupControl/TravelFeature.vue
View file @
dbdde84b
...
@@ -451,7 +451,8 @@
...
@@ -451,7 +451,8 @@
}
}
if
(
this
.
myIframeUrl
&&
this
.
myIframeUrl
!=
''
)
{
if
(
this
.
myIframeUrl
&&
this
.
myIframeUrl
!=
''
)
{
document
.
all
.
myIframe
.
src
=
this
.
myIframeUrl
+
`&t=
${
new
Date
().
getTime
()}
`
this
.
myIframeUrl
=
this
.
myIframeUrl
+
`&t=
${
new
Date
().
getTime
()}
`
document
.
all
.
myIframe
.
src
=
this
.
myIframeUrl
;
}
}
this
.
$emit
(
'pptJourney'
,
true
)
this
.
$emit
(
'pptJourney'
,
true
)
}
else
if
(
event
.
data
==
'暂无行程数据'
)
{
}
else
if
(
event
.
data
==
'暂无行程数据'
)
{
...
@@ -782,6 +783,16 @@
...
@@ -782,6 +783,16 @@
}
}
},
},
watch
:
{
watch
:
{
myIframeUrl
:
{
//深度监听,可监听到对象、数组的变化
handler
:
function
(
val
,
oldVal
)
{
if
(
val
!=
''
&&
val
!=
oldVal
)
{
this
.
resizeIframe
();
}
},
deep
:
true
,
immediate
:
true
},
dataAll
:
{
dataAll
:
{
handler
:
function
(
val
,
oldVal
)
{},
handler
:
function
(
val
,
oldVal
)
{},
deep
:
true
,
deep
:
true
,
...
...
src/components/public/YearLimit.vue
View file @
dbdde84b
...
@@ -57,7 +57,6 @@
...
@@ -57,7 +57,6 @@
this
.
isQueryHistoryData
=
true
;
this
.
isQueryHistoryData
=
true
;
}
}
});
});
},
},
}
}
}
}
...
...
src/plug/index.js
View file @
dbdde84b
...
@@ -123,7 +123,7 @@ export default {
...
@@ -123,7 +123,7 @@ export default {
let
isOnline
=
0
;
//0-本地测试,1-线上
let
isOnline
=
0
;
//0-本地测试,1-线上
let
ocrUrl
=
"http://192.168.5.46:8888"
;
let
ocrUrl
=
"http://192.168.5.46:8888"
;
domainUrl
=
"http://192.168.5.46"
;
domainUrl
=
"http://192.168.5.46"
;
domainUrl
=
"http://192.168.5.39:8083"
;
//
domainUrl = "http://192.168.5.39:8083";
let
crmLocalFileStreamDownLoadUrl
=
""
;
let
crmLocalFileStreamDownLoadUrl
=
""
;
crmLocalFileStreamDownLoadUrl
=
locationName
.
indexOf
(
'oytour'
)
!==
-
1
?
"http://crm.oytour.com"
:
"http://testcrm.oytour.com"
;
crmLocalFileStreamDownLoadUrl
=
locationName
.
indexOf
(
'oytour'
)
!==
-
1
?
"http://crm.oytour.com"
:
"http://testcrm.oytour.com"
;
let
javaUrldo
=
""
;
let
javaUrldo
=
""
;
...
@@ -291,7 +291,7 @@ export default {
...
@@ -291,7 +291,7 @@ export default {
this
.
$route
.
name
.
indexOf
(
'confirmationOrderDownLoadNew'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'PrintPage'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'confirmationOrderDownLoadNew'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'PrintPage'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'TravelContractConfirm'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'ViittoContractConfirm'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'TravelContractConfirm'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'ViittoContractConfirm'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'OrderProfitLossList'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'clientProtocol'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'OrderProfitLossList'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'clientProtocol'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'clientDisclaimerProtocol'
)
===
-
1
this
.
$route
.
name
.
indexOf
(
'clientDisclaimerProtocol'
)
===
-
1
&&
this
.
$route
.
name
.
indexOf
(
'guestLogin'
)
===
-
1
)
{
)
{
let
previousPathInfo
=
{
let
previousPathInfo
=
{
path
:
this
.
$route
.
name
,
path
:
this
.
$route
.
name
,
...
@@ -374,6 +374,14 @@ export default {
...
@@ -374,6 +374,14 @@ export default {
Id
:
Id
Id
:
Id
}
}
})
})
}
else
if
(
this
.
$route
.
path
==
"/guestLogin"
)
{
let
TCID
=
this
.
$route
.
query
.
TCID
;
this
.
$router
.
push
({
name
:
"guestLogin"
,
query
:
{
TCID
:
TCID
}
})
}
else
{
}
else
{
if
(
!
localStorage
.
userInfo
&&
localStorage
.
userInfo
!=
""
&&
this
.
$route
.
path
.
toLowerCase
()
!=
"/login"
)
{
if
(
!
localStorage
.
userInfo
&&
localStorage
.
userInfo
!=
""
&&
this
.
$route
.
path
.
toLowerCase
()
!=
"/login"
)
{
this
.
goToLogin
(
1
);
this
.
goToLogin
(
1
);
...
@@ -672,9 +680,20 @@ export default {
...
@@ -672,9 +680,20 @@ export default {
}
}
successCall
(
res
);
successCall
(
res
);
}
else
{
}
else
{
this
.
apipost
(
"userauth_get_GetCheckUserAuthService"
,
{
if
(
authCode
!=
this
.
$AuthCode
.
isQueryHistoryData
)
{
actionMenuCode
:
authCode
this
.
apipost
(
"userauth_get_GetCheckUserAuthService"
,
{
},
successCall
,
faildCall
);
actionMenuCode
:
authCode
},
successCall
,
faildCall
);
}
else
{
var
data
=
{
resultCode
:
1
,
data
:
0
,
};
var
res
=
{
data
:
data
}
successCall
(
res
);
}
}
}
},
},
//供应商版请求接口方法
//供应商版请求接口方法
...
@@ -1931,8 +1950,8 @@ export default {
...
@@ -1931,8 +1950,8 @@ export default {
}
}
Vue
.
prototype
.
TourDateRestrictions
=
function
(
date1
,
date2
)
{
Vue
.
prototype
.
TourDateRestrictions
=
function
(
date1
,
date2
)
{
var
endDate
=
this
.
getBeforeDate
(
0
,
new
Date
().
Format
(
"yyyy-MM-dd"
))
var
endDate
=
this
.
getBeforeDate
(
0
,
new
Date
().
Format
(
"yyyy-MM-dd"
))
var
data_1
=
Date
.
parse
(
date1
?
date1
:
'2021-12-31'
);
var
data_1
=
Date
.
parse
(
date1
?
date1
:
'2021-12-31'
);
var
data_2
=
Date
.
parse
(
date2
?
date2
:
endDate
);
var
data_2
=
Date
.
parse
(
date2
?
date2
:
endDate
);
var
dateNum
=
Math
.
abs
(
data_2
-
data_1
);
var
dateNum
=
Math
.
abs
(
data_2
-
data_1
);
var
days
=
Math
.
floor
(
dateNum
/
(
24
*
3600
*
1000
));
var
days
=
Math
.
floor
(
dateNum
/
(
24
*
3600
*
1000
));
let
endTime
=
new
Date
(
this
.
getBeforeDate
(
days
,
new
Date
().
Format
(
"yyyy-MM-dd"
)));
let
endTime
=
new
Date
(
this
.
getBeforeDate
(
days
,
new
Date
().
Format
(
"yyyy-MM-dd"
)));
...
...
src/router/config.js
View file @
dbdde84b
...
@@ -508,6 +508,14 @@ export default {
...
@@ -508,6 +508,14 @@ export default {
title
:
'公告管理'
title
:
'公告管理'
},
},
},
},
{
path
:
'/SurveyManager'
,
//问卷管理
name
:
'SurveyManager'
,
component
:
resolve
=>
require
([
'@/components/administrative/SurveyManager'
],
resolve
),
meta
:
{
title
:
'问券调查'
},
},
{
{
path
:
'/VoucherInquiry'
,
//问券调查
path
:
'/VoucherInquiry'
,
//问券调查
name
:
'VoucherInquiry'
,
name
:
'VoucherInquiry'
,
...
@@ -6410,5 +6418,21 @@ export default {
...
@@ -6410,5 +6418,21 @@ export default {
title
:
'财务批量打印页面'
title
:
'财务批量打印页面'
},
},
},
},
{
path
:
'/guestlogin'
,
//意见调查表登录
name
:
'guestlogin'
,
component
:
resolve
=>
require
([
'@/components/guestlogin'
],
resolve
),
meta
:
{
title
:
'意见调查表登录'
},
},
{
path
:
'/guestSign'
,
//意见调查表填写
name
:
'guestSign'
,
component
:
resolve
=>
require
([
'@/components/guestSign'
],
resolve
),
meta
:
{
title
:
'意见调查表填写'
},
},
]
]
}
}
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