Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
haoban-3
Overview
Overview
Details
Activity
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
office
haoban-3
Commits
64c8d0d6
Commit
64c8d0d6
authored
Jul 15, 2022
by
crushh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update: dist
parent
77696415
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
226 additions
and
27 deletions
+226
-27
index.js
config/index.js
+1
-1
actCode.js
src/api/actCode.js
+3
-0
api.js
src/api/api.js
+29
-20
attractFlowLinkRouter.js
src/router/actCodeManageRouter/attractFlowLinkRouter.js
+8
-0
relationDialog.vue
src/views/enterprise/relationDialog.vue
+114
-0
salutatory.vue
src/views/enterprise/salutatory.vue
+71
-6
No files found.
config/index.js
View file @
64c8d0d6
...
...
@@ -23,7 +23,7 @@ module.exports = {
// Various Dev Server settings
// host: '0.0.0.0', // can be overwritten by process.env.HOST
host
:
'localhost'
,
//'192.168.1.20',//
port
:
800
6
,
// can be overwritten by process.env.PORT, if port is in use, a free one will be determined
port
:
800
1
,
// can be overwritten by process.env.PORT, if port is in use, a free one will be determined
autoOpenBrowser
:
false
,
errorOverlay
:
true
,
notifyOnErrors
:
true
,
...
...
src/api/actCode.js
View file @
64c8d0d6
...
...
@@ -38,3 +38,6 @@ export const linkPage = params => postRequest('/haoban-manage3-web/hm/link/page'
//【活码】详情-查看明细列表
export
const
detailClerkList
=
params
=>
postJsonRequest
(
'/haoban-manage3-web/hm/qrcode/detail-clerk-list-page'
,
params
);
//【欢迎语】-- 特殊欢迎语关联详情列表
export
const
welcomeRelationList
=
params
=>
getRequest
(
'/haoban-manage3-web/welcome/relation/list'
,
params
);
src/api/api.js
View file @
64c8d0d6
...
...
@@ -57,6 +57,15 @@ Vue.axios.interceptors.request.use(
cancel
});
});
/**
* 获取好办 企业 id
*/
if
(
!!
sessionStorage
.
getItem
(
'userInfoBrandId'
))
{
let
haobanSign
=
sessionStorage
.
getItem
(
'userInfoBrandId'
);
haobanSign
?
(
config
.
headers
.
enterpriseId
=
haobanSign
)
:
''
;
}
console
.
log
(
config
);
return
config
;
},
err
=>
{
...
...
@@ -68,29 +77,29 @@ Vue.axios.interceptors.request.use(
Vue
.
axios
.
interceptors
.
response
.
use
(
data
=>
{
removePending
(
data
.
config
);
//在一个ajax响应后再执行一下取消操作,把已经完成的请求从pending中移除
if
(
data
.
status
&&
data
.
status
==
200
&&
data
.
data
.
errorCode
!=
1
)
{
if
(
data
.
data
.
errorCode
==
4
)
{
if
(
window
.
location
.
href
.
indexOf
(
'gic-error'
)
!=
-
1
)
{
return
false
;
}
window
.
location
.
href
=
gicHost
+
'/gic-web/#/login?ishb=1'
;
}
if
(
data
.
data
.
errorCode
==
10
||
data
.
data
.
errorCode
==
7
)
{
window
.
location
.
href
=
gicHost
+
'/haoban-3/#/index'
;
}
return
data
;
}
//
if (data.status && data.status == 200 && data.data.errorCode != 1) {
//
if (data.data.errorCode == 4) {
//
if (window.location.href.indexOf('gic-error') != -1) {
//
return false;
//
}
//
window.location.href = gicHost + '/gic-web/#/login?ishb=1';
//
}
//
if (data.data.errorCode == 10 || data.data.errorCode == 7) {
//
window.location.href = gicHost + '/haoban-3/#/index';
//
}
//
return data;
//
}
return
data
;
},
err
=>
{
if
(
err
.
response
.
status
==
502
)
{
window
.
location
.
href
=
gicHost
+
'/gic-web/#/login?ishb=1'
;
Message
.
error
({
message
:
'服务异常⊙﹏⊙∥'
});
}
if
(
err
.
response
.
status
!=
403
)
{
window
.
location
.
href
=
gicHost
+
'/gic-web/#/login?ishb=1'
;
Message
.
error
({
message
:
'登录失效!'
});
}
//
if (err.response.status == 502) {
//
window.location.href = gicHost + '/gic-web/#/login?ishb=1';
//
Message.error({ message: '服务异常⊙﹏⊙∥' });
//
}
//
if (err.response.status != 403) {
//
window.location.href = gicHost + '/gic-web/#/login?ishb=1';
//
Message.error({ message: '登录失效!' });
//
}
return
Promise
.
resolve
(
err
);
}
);
...
...
src/router/actCodeManageRouter/attractFlowLinkRouter.js
View file @
64c8d0d6
...
...
@@ -23,6 +23,14 @@ const attractFlowLinkRouter = [
component
:
_import
(
'salesleads/actCodeManage/attractFlowLink'
,
'detail'
)
},
{
path
:
'/attractFlowLinkInfo/:id'
,
name
:
'详情引流链接'
,
meta
:
{
type
:
'info'
},
component
:
_import
(
'salesleads/actCodeManage/attractFlowLink'
,
'detail'
)
},
{
path
:
'/ladingPageList'
,
name
:
'落地页列表'
,
component
:
_import
(
'salesleads/actCodeManage/attractFlowLink/landingPage'
,
'list'
)
...
...
src/views/enterprise/relationDialog.vue
0 → 100644
View file @
64c8d0d6
<
template
>
<el-dialog
title=
"关联详情"
width=
"610px"
:visible
.
sync=
"dialogVisible"
@
close=
"$emit('update:dialogVisible', false)"
>
<div
class=
"daily-set-content boder-box"
>
<div
class=
"flex flex-space-between m-b-16"
>
<el-input
placeholder=
"请输入关联ID / 关联名称 "
class=
"w-260"
v-model=
"form.searchContent"
@
keyup
.
native=
"value => toInput(value, searchInput)"
clearable
@
clear=
"getList"
>
<i
slot=
"prefix"
class=
"el-input__icon el-icon-search"
></i>
</el-input>
</div>
</div>
<el-table
class=
"select-table"
ref=
"multipleTable"
v-loading=
"loading"
:data=
"tableData"
height=
"450"
tooltip-effect=
"dark"
>
<el-table-column
prop=
"referCode"
label=
"关联ID"
></el-table-column>
<el-table-column
prop=
"referName"
label=
"关联名称"
show-overflow-tooltip
></el-table-column>
<el-table-column
prop=
"type"
label=
"类型"
>
<template
slot-scope=
"
{ row }">
{{
row
.
type
==
1
?
'员工活码'
:
'引流链接'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"status"
label=
"状态"
>
<
template
slot-scope=
"{ row }"
>
<div
class=
"status-class"
>
<span
:class=
"['state-point', logStatusClass[row.status]]"
>
{{
relationSatusMap
[
row
.
status
]
}}
</span>
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
""
label=
"操作"
width=
"80"
>
<
template
slot-scope=
"{ row }"
>
<el-button
type=
"text"
@
click=
"$emit('goLinkDetail', row)"
>
查看
</el-button>
</
template
>
</el-table-column>
</el-table>
<el-pagination
class=
"text-right margin-pg"
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:page-size
.
sync=
"form.pageSize"
:current-page
.
sync=
"form.pageNum"
layout=
"prev, pager, next"
:total=
"total"
>
</el-pagination>
</el-dialog>
</template>
<
script
>
import
{
welcomeRelationList
}
from
'@/api/actCode'
;
import
{
_debounce
}
from
'@/common/js/public'
;
export
default
{
data
()
{
return
{
form
:
{
searchContent
:
''
,
welcomeId
:
''
,
pageNum
:
1
,
pageSize
:
20
},
loading
:
false
,
total
:
0
,
tableData
:
[],
relationSatusMap
:
{
1
:
'启用'
,
0
:
'删除'
,
2
:
'废弃'
},
logStatusClass
:
{
1
:
'state-point-success'
,
0
:
'state-point-error'
,
2
:
'state-point-warning'
}
};
},
props
:
{
id
:
{
type
:
String
,
default
:
''
},
dialogVisible
:
{
type
:
Boolean
,
default
:
false
}
},
watch
:
{
id
(
val
)
{
if
(
val
)
{
this
.
form
=
{
searchContent
:
''
,
welcomeId
:
val
,
pageNum
:
1
,
pageSize
:
20
};
this
.
getList
();
}
}
},
methods
:
{
toInput
:
_debounce
(
function
(
e
,
value
)
{
this
.
getList
();
},
500
),
getList
()
{
this
.
loading
=
true
;
welcomeRelationList
(
this
.
form
)
.
then
(
res
=>
{
const
{
totalCount
,
result
}
=
res
.
data
.
result
;
if
(
result
)
{
this
.
total
=
totalCount
;
this
.
tableData
=
result
;
}
// let obj = { referCode: 'HM01421002535046766593', referId: '421002535046766593', referName: '吴苏兰', relationId: '421002538737754114', status: 1, type: 2, typeText: null };
// for (let i = 0; i
<
50
;
i
++
)
{
// this.tableData.push(obj);
// }
// this.total = 50;
})
.
finally
(
_
=>
{
this
.
loading
=
false
;
});
},
handleSizeChange
(
val
)
{
this
.
form
.
pageNum
=
1
;
this
.
form
.
pageSize
=
val
;
this
.
getList
();
},
handleCurrentChange
(
val
)
{
this
.
form
.
pageNum
=
val
;
this
.
getList
();
}
}
};
</
script
>
<
style
type=
"text/scss"
lang=
"scss"
scoped
>
.margin-pg
{
margin
:
20px
0
0
0
;
}
</
style
>
src/views/enterprise/salutatory.vue
View file @
64c8d0d6
...
...
@@ -28,7 +28,7 @@
<el-button
v-if=
"$getButtonLimit($buttonCode.addSalutatory)"
:limit-code=
"$buttonCode.addSalutatory"
type=
"primary"
@
click=
"addSalutatory"
>
新建欢迎语
</el-button>
</div>
<el-table
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
:style=
"
{ width: '100%' }" v-loading="loading">
<el-table-column
prop=
"title"
label=
"标题"
width=
"200"
>
<el-table-column
prop=
"title"
label=
"标题"
width=
"200"
fixed=
"left"
>
<div
ref=
"title"
slot-scope=
"
{ row }">
<!-- 算出文本的长度,再设置 -->
<el-tooltip
placement=
"top"
:content=
"row.title"
v-if=
"row.isOverflow"
>
...
...
@@ -76,13 +76,15 @@
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
width=
"
180"
fixed=
"right"
v-if=
"$getButtonLimit($buttonCode.editSalutatory) || $getButtonLimit($buttonCode.delSalutatory)"
>
<el-table-column
label=
"操作"
:width=
"type == 2 ? 220 :
180"
fixed=
"right"
v-if=
"$getButtonLimit($buttonCode.editSalutatory) || $getButtonLimit($buttonCode.delSalutatory)"
>
<
template
slot-scope=
"{ row }"
>
<el-button
type=
"text"
@
click=
"showRelateDetail(row)"
v-show=
"row.type == 2"
>
关联详情
</el-button>
<el-button
v-if=
"$getButtonLimit($buttonCode.editSalutatory)"
:limit-code=
"$buttonCode.editSalutatory"
type=
"text"
@
click=
"changeRoute(row)"
>
编辑
</el-button>
<el-button
v-if=
"$getButtonLimit($buttonCode.delSalutatory)"
:limit-code=
"$buttonCode.delSalutatory"
type=
"text"
@
click=
"remove(row)"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
<relation-dialog
:dialogVisible
.
sync=
"dialogVisible"
:id=
"welcomeId"
@
goLinkDetail=
"goLinkDetail"
/>
<div
class=
"block common-wrap__page text-right m-t-24"
v-if=
"tableData.length != 0"
>
<el-pagination
background
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"form.pageNum"
:page-sizes=
"[20, 40, 60, 80]"
:page-size=
"form.pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"total"
>
</el-pagination>
</div>
...
...
@@ -93,6 +95,7 @@
<
script
>
import
{
postJsonRequest
,
getRequest
}
from
'@/api/api'
;
import
{
_debounce
}
from
'@/common/js/public'
;
import
relationDialog
from
'./relationDialog'
;
export
default
{
data
()
{
return
{
...
...
@@ -101,6 +104,8 @@ export default {
pageSize
:
20
,
pageNum
:
1
},
dialogVisible
:
false
,
welcomeId
:
''
,
total
:
0
,
wxEnterpriseId
:
sessionStorage
.
getItem
(
'userInfos'
)
?
JSON
.
parse
(
sessionStorage
.
getItem
(
'userInfos'
)).
wxEnterpriseId
:
''
,
friendSettingId
:
''
,
...
...
@@ -129,6 +134,9 @@ export default {
default
:
1
}
},
components
:
{
relationDialog
},
watch
:
{
type
(
val
)
{
this
.
form
=
{
...
...
@@ -162,12 +170,19 @@ export default {
this
.
$router
.
push
({
path
:
'/salutatorySet'
,
query
:
{
type
:
this
.
type
}
});
},
remove
(
row
)
{
let
str
=
'是否删除本条欢迎语?'
;
if
(
row
.
type
==
2
)
{
this
.
delType2
(
row
);
}
else
{
this
.
delType1
(
row
);
}
},
delType1
(
row
)
{
let
str
=
'模板删除后将无法恢复'
;
if
(
row
.
defaultWelcomeFlag
==
1
)
{
str
=
'此条欢迎语为全员欢迎语,删除后可能影响欢迎语发送
,是否继续删除?
'
;
str
=
'此条欢迎语为全员欢迎语,删除后可能影响欢迎语发送'
;
}
this
.
$confirm
(
str
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
this
.
$confirm
(
str
,
'
确认要删除该欢迎语吗?
'
,
{
confirmButtonText
:
'
删除
'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
...
...
@@ -180,6 +195,56 @@ export default {
});
});
},
delType2
(
row
)
{
getRequest
(
'/haoban-manage3-web/welcome/statistics'
,
{
welcomeId
:
row
.
welcomeId
}).
then
(
res
=>
{
console
.
log
(
res
);
const
{
result
}
=
res
.
data
;
let
str
=
''
;
if
(
result
)
{
if
(
result
.
qrCodeReferNum
&&
result
.
linkReferNum
)
{
str
=
`当前模板已关联状态为正常的活码(
${
result
.
qrCodeReferNum
}
)、链接(
${
result
.
linkReferNum
}
),请确认相关活码是否不再使用该欢迎语以及链接已投放结束,取消关联后才可删除该模板`
;
}
else
if
(
result
.
qrCodeReferNum
)
{
str
=
`当前模板已关联状态为正常的活码(
${
result
.
qrCodeReferNum
}
),请确认相关活码是否不再使用该欢迎语,取消关联后才可删除该模板`
;
}
else
if
(
result
.
linkReferNum
)
{
str
=
`当前模板已关联链接(
${
result
.
linkReferNum
}
),请确认相关链接已投放结束,取消关联后才可删除该模板`
;
}
this
.
$confirm
(
str
,
'无法删除该欢迎语'
,
{
confirmButtonText
:
'关联详情'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
showRelateDetail
(
row
);
});
}
else
{
str
=
'模板删除后将无法恢复'
;
this
.
$confirm
(
str
,
'确认要删除该欢迎语吗?'
,
{
confirmButtonText
:
'删除'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
getRequest
(
'/haoban-manage3-web/welcome/remove'
,
{
welcomeId
:
row
.
welcomeId
}).
then
(
res
=>
{
let
resData
=
res
.
data
;
if
(
resData
.
code
==
0
&&
resData
.
result
)
{
this
.
$message
.
success
(
'删除成功'
);
this
.
getData
();
}
});
});
}
});
},
showRelateDetail
(
item
)
{
this
.
dialogVisible
=
true
;
this
.
welcomeId
=
item
.
welcomeId
;
},
goLinkDetail
(
row
)
{
console
.
log
(
row
);
if
(
row
.
type
==
1
)
{
this
.
$router
.
push
(
'/actCodeDetail?hmId='
+
row
.
referId
);
}
else
{
this
.
$router
.
push
(
`/attractFlowLinkInfo/
${
row
.
referId
}
`
);
}
},
/**
* 获取数据
*/
...
...
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