Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jiedao-app-operator-master
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
lanbaoming
jiedao-app-operator-master
Commits
3350be84
Commit
3350be84
authored
Mar 01, 2025
by
Smile
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/jd_cons' into jd_cons
parents
c6256a8e
350b6e31
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
742 additions
and
11 deletions
+742
-11
consFollowup.js
src/api/ecw/consFollowup.js
+54
-0
needKnow.js
src/api/system/needKnow.js
+16
-0
en_US.json
src/i18n/languages/en_US.json
+7
-0
dict.js
src/utils/dict.js
+2
-0
index.vue
src/views/ecw/cons/index.vue
+4
-0
ConsFollowupEdit.vue
src/views/ecw/consFollowup/components/ConsFollowupEdit.vue
+111
-0
index.vue
src/views/ecw/consFollowup/index.vue
+271
-0
customerConsAddress.vue
src/views/ecw/customer/components/customerConsAddress.vue
+21
-7
consPackage.vue
src/views/ecw/order/components/consPackage.vue
+27
-0
detail.vue
src/views/ecw/order/detail.vue
+5
-1
index.vue
src/views/system/helpDoc/index.vue
+12
-0
versionNotes.vue
src/views/system/needKnow/components/versionNotes.vue
+163
-0
index.vue
src/views/system/needKnow/index.vue
+49
-3
No files found.
src/api/ecw/consFollowup.js
0 → 100644
View file @
3350be84
import
request
from
'
@/utils/request
'
// 创建操作跟进
export
function
createConsFollowup
(
data
)
{
return
request
({
url
:
'
/ecw/cons-followup/create
'
,
method
:
'
post
'
,
data
:
data
})
}
// 更新操作跟进
export
function
updateConsFollowup
(
data
)
{
return
request
({
url
:
'
/ecw/cons-followup/update
'
,
method
:
'
put
'
,
data
:
data
})
}
// 删除操作跟进
export
function
deleteConsFollowup
(
id
)
{
return
request
({
url
:
'
/ecw/cons-followup/delete?id=
'
+
id
,
method
:
'
delete
'
})
}
// 获得操作跟进
export
function
getConsFollowup
(
id
)
{
return
request
({
url
:
'
/ecw/cons-followup/get?id=
'
+
id
,
method
:
'
get
'
})
}
// 获得操作跟进分页
export
function
getConsFollowupPage
(
query
)
{
return
request
({
url
:
'
/ecw/cons-followup/page
'
,
method
:
'
get
'
,
params
:
query
})
}
// 导出操作跟进 Excel
export
function
exportConsFollowupExcel
(
query
)
{
return
request
({
url
:
'
/ecw/cons-followup/export-excel
'
,
method
:
'
get
'
,
params
:
query
,
responseType
:
'
blob
'
})
}
src/api/system/needKnow.js
View file @
3350be84
...
@@ -26,6 +26,15 @@ export function deleteNeedKnow(id) {
...
@@ -26,6 +26,15 @@ export function deleteNeedKnow(id) {
})
})
}
}
// 发布须知版本
export
function
releaseNeedKnow
(
data
)
{
return
request
({
url
:
'
/system/need-know/release?id=
'
,
method
:
'
post
'
,
data
:
data
})
}
// 获得须知
// 获得须知
export
function
getNeedKnow
(
id
)
{
export
function
getNeedKnow
(
id
)
{
return
request
({
return
request
({
...
@@ -51,6 +60,13 @@ export function getNeedKnowPage(query) {
...
@@ -51,6 +60,13 @@ export function getNeedKnowPage(query) {
})
})
}
}
export
function
getNeedKnowVersionList
(
id
)
{
return
request
({
url
:
'
/system/need-know/version/list?id=
'
+
id
,
method
:
'
get
'
,
})
}
// 导出须知 Excel
// 导出须知 Excel
export
function
exportNeedKnowExcel
(
query
)
{
export
function
exportNeedKnowExcel
(
query
)
{
return
request
({
return
request
({
...
...
src/i18n/languages/en_US.json
View file @
3350be84
...
@@ -308,6 +308,8 @@
...
@@ -308,6 +308,8 @@
"请输入中文内容"
:
"Please enter Chinese content"
,
"请输入中文内容"
:
"Please enter Chinese content"
,
"英文内容"
:
"English content"
,
"英文内容"
:
"English content"
,
"请输入英文内容"
:
"Please enter English content"
,
"请输入英文内容"
:
"Please enter English content"
,
"法文内容"
:
"French content"
,
"请输入法文内容"
:
"Please enter French content"
,
"提交"
:
"submit"
,
"提交"
:
"submit"
,
"关闭"
:
"closure"
,
"关闭"
:
"closure"
,
"是"
:
"yes"
,
"是"
:
"yes"
,
...
@@ -1578,6 +1580,7 @@
...
@@ -1578,6 +1580,7 @@
"代收货款"
:
"?"
,
"代收货款"
:
"?"
,
"集运仓库"
:
"Consolidation Warehouse"
,
"集运仓库"
:
"Consolidation Warehouse"
,
"集运"
:
"Consolidation"
,
"集运"
:
"Consolidation"
,
"集运包裹"
:
"Consolidation Package"
,
"装柜地址"
:
"address of container loading"
,
"装柜地址"
:
"address of container loading"
,
"货物详情"
:
"Cargo Details"
,
"货物详情"
:
"Cargo Details"
,
"填单件数"
:
"number of cartons"
,
"填单件数"
:
"number of cartons"
,
...
@@ -2221,6 +2224,10 @@
...
@@ -2221,6 +2224,10 @@
"修改须知"
:
"Modify notice"
,
"修改须知"
:
"Modify notice"
,
"是否确认删除须知编号为"
:
"Whether delete the note number as"
,
"是否确认删除须知编号为"
:
"Whether delete the note number as"
,
"是否确认导出所有须知数据项?"
:
"Whether export all required data items?"
,
"是否确认导出所有须知数据项?"
:
"Whether export all required data items?"
,
"发布新版本"
:
"Release Version"
,
"版本日志"
:
"Version Notes"
,
"版本发布成功"
:
"Released Successfully"
,
"是否确认发布版本"
:
"confirm Released?"
,
"公告标题"
:
"Announcement title"
,
"公告标题"
:
"Announcement title"
,
"请输入公告标题"
:
"Please enter the title of the announcement"
,
"请输入公告标题"
:
"Please enter the title of the announcement"
,
"操作人员"
:
"operator"
,
"操作人员"
:
"operator"
,
...
...
src/utils/dict.js
View file @
3350be84
...
@@ -207,6 +207,7 @@ export const DICT_TYPE = {
...
@@ -207,6 +207,7 @@ export const DICT_TYPE = {
ORDER_QUERY_PROD_FIELD
:
"
order_query_prod_field
"
,
//订单查询产品字段
ORDER_QUERY_PROD_FIELD
:
"
order_query_prod_field
"
,
//订单查询产品字段
ORDER_QUERY_NO_FIELD
:
"
order_query_no_field
"
,
//订单查询非产品字段
ORDER_QUERY_NO_FIELD
:
"
order_query_no_field
"
,
//订单查询非产品字段
NEED_KNOW_TYPE
:
"
need_know_type
"
,
//需知类型
NEED_KNOW_TYPE
:
"
need_know_type
"
,
//需知类型
HELP_DOC_TYPE
:
"
help_doc_type
"
,
//帮助文档类型
NEED_KNOW_STATUS
:
"
need_know_status
"
,
//需知状态
NEED_KNOW_STATUS
:
"
need_know_status
"
,
//需知状态
MANUAL_EXCEPTION_TYPE
:
"
manual_exception_type
"
,
MANUAL_EXCEPTION_TYPE
:
"
manual_exception_type
"
,
APPLY_STATUS
:
"
apply_status
"
,
//特价申请审核状态
APPLY_STATUS
:
"
apply_status
"
,
//特价申请审核状态
...
@@ -287,6 +288,7 @@ export const DICT_TYPE = {
...
@@ -287,6 +288,7 @@ export const DICT_TYPE = {
CONS_STATUS
:
"
cons_status
"
,
//包裹状态
CONS_STATUS
:
"
cons_status
"
,
//包裹状态
CONS_INSPECT_STATUS
:
"
cons_inspect_status
"
,
//验货状态
CONS_INSPECT_STATUS
:
"
cons_inspect_status
"
,
//验货状态
CONS_SPECIAL_NEEDS_STATUS
:
"
cons_special_needs_status
"
,
//特需状态
CONS_SPECIAL_NEEDS_STATUS
:
"
cons_special_needs_status
"
,
//特需状态
ECW_CONS_FOLLOWUP_STATUS
:
"
ecw_cons_followup_status
"
,
//跟进状态
};
};
/**
/**
...
...
src/views/ecw/cons/index.vue
View file @
3350be84
...
@@ -262,6 +262,7 @@
...
@@ -262,6 +262,7 @@
<SpecialNeedsCons
:showSpecialNeedsCons.sync=
"showSpecialNeedsCons"
:currency=
"JSON.stringify(currencyList)"
:consId=
"id"
:consNum=
"consNum"
@
determine=
"getList"
></SpecialNeedsCons>
<SpecialNeedsCons
:showSpecialNeedsCons.sync=
"showSpecialNeedsCons"
:currency=
"JSON.stringify(currencyList)"
:consId=
"id"
:consNum=
"consNum"
@
determine=
"getList"
></SpecialNeedsCons>
<SpecialNeedsConsLook
:showSpecialNeedsConsLook.sync=
"showSpecialNeedsConsLook"
:consNum=
"consNum"
:consId=
"id"
></SpecialNeedsConsLook>
<SpecialNeedsConsLook
:showSpecialNeedsConsLook.sync=
"showSpecialNeedsConsLook"
:consNum=
"consNum"
:consId=
"id"
></SpecialNeedsConsLook>
<fee-application-cons
v-if=
"feeApplicationBol"
:consId=
"id"
:currencys=
"JSON.stringify(currencyList)"
:dialog-visible.sync=
"feeApplicationBol "
@
refresh=
"getList"
></fee-application-cons>
<fee-application-cons
v-if=
"feeApplicationBol"
:consId=
"id"
:currencys=
"JSON.stringify(currencyList)"
:dialog-visible.sync=
"feeApplicationBol "
@
refresh=
"getList"
></fee-application-cons>
<ConsFollowupEdit
:showConsFollowupEdit.sync=
"showConsFollowupEdit"
:id=
"id"
@
determine=
"getList"
></ConsFollowupEdit>
</div>
</div>
</template>
</template>
...
@@ -280,6 +281,7 @@ import { getCurrencyList } from "@/api/ecw/currency"
...
@@ -280,6 +281,7 @@ import { getCurrencyList } from "@/api/ecw/currency"
import
FeeApplicationCons
from
"
@/views/ecw/cons/components/FeeApplicationCons.vue
"
import
FeeApplicationCons
from
"
@/views/ecw/cons/components/FeeApplicationCons.vue
"
import
FeeApplication
from
"
@/views/ecw/order/feeApplication.vue
"
import
FeeApplication
from
"
@/views/ecw/order/feeApplication.vue
"
import
{
getChannelList
}
from
"
@/api/ecw/channel
"
;
import
{
getChannelList
}
from
"
@/api/ecw/channel
"
;
import
ConsFollowupEdit
from
"
@/views/ecw/consFollowup/components/ConsFollowupEdit.vue
"
export
default
{
export
default
{
name
:
"
Cons
"
,
name
:
"
Cons
"
,
...
@@ -289,6 +291,7 @@ export default {
...
@@ -289,6 +291,7 @@ export default {
Template
,
Template
,
FeeApplicationCons
,
FeeApplicationCons
,
SpecialNeedsConsLook
,
SpecialNeedsConsLook
,
ConsFollowupEdit
,
SpecialNeedsCons
SpecialNeedsCons
},
},
data
()
{
data
()
{
...
@@ -353,6 +356,7 @@ export default {
...
@@ -353,6 +356,7 @@ export default {
showException
:
false
,
showException
:
false
,
showSpecialNeedsCons
:
false
,
showSpecialNeedsCons
:
false
,
showSpecialNeedsConsLook
:
false
,
showSpecialNeedsConsLook
:
false
,
showConsFollowupEdit
:
true
,
id
:
null
,
id
:
null
,
currencyList
:
[],
currencyList
:
[],
consNum
:
null
,
consNum
:
null
,
...
...
src/views/ecw/consFollowup/components/ConsFollowupEdit.vue
0 → 100644
View file @
3350be84
<
template
>
<el-dialog
:title=
"$t('跟进记录')"
:before-close=
"()=>
{$emit('update:showConsFollowupEdit',false)}"
:visible.sync="showConsFollowupEdit">
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
>
<el-form-item
label=
"状态"
prop=
"status"
>
<dict-selector
:placeholder=
"$t('请选择状态')"
v-model=
"form.status"
:type=
"DICT_TYPE.ECW_CONS_FOLLOWUP_STATUS"
></dict-selector>
</el-form-item>
<el-form-item
label=
"跟进内容"
>
<el-input
type=
"textarea"
v-model=
"form.followContent"
:rows=
"6"
/>
</el-form-item>
<el-form-item
label=
"下次跟进时间"
prop=
"nextFollowTime"
>
<el-date-picker
clearable
v-model=
"form.nextFollowTime"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
"选择下次跟进时间"
/>
</el-form-item>
<el-form-item
label=
"下次跟进内容"
>
<el-input
type=
"textarea"
v-model=
"form.nextFollowContent"
:rows=
"6"
/>
</el-form-item>
<el-form-item
:label=
"$t('图片')"
>
<image-upload
v-model=
"exceptionUrls"
></image-upload>
</el-form-item>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
label=
"跟进人"
prop=
"followUserId"
>
<el-input
v-model=
"form.followUserId"
placeholder=
"请输入跟进人"
/>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"跟进时间"
prop=
"followTime"
>
<el-date-picker
clearable
v-model=
"form.followTime"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
"选择跟进时间"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
label=
"创建人"
prop=
"followUserId"
>
<el-input
v-model=
"form.followUserId"
placeholder=
"请输入跟进人"
/>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"创建时间"
prop=
"followUserId"
>
<el-input
v-model=
"form.followUserId"
placeholder=
"请输入跟进人"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"12"
>
<el-form-item
label=
"最后更新人"
prop=
"followUserId"
>
<el-input
v-model=
"form.followUserId"
placeholder=
"请输入跟进人"
/>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"最后更新时间"
prop=
"followUserId"
>
<el-input
v-model=
"form.followUserId"
placeholder=
"请输入跟进人"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
{{
$t
(
"
确 定
"
)
}}
</el-button>
<el-button
@
click=
"$emit('update:showConsFollowupEdit',false)"
>
{{
$t
(
"
取 消
"
)
}}
</el-button>
</span>
</el-dialog>
</
template
>
<
script
>
import
imageUpload
from
"
@/components/ImageUpload/index.vue
"
import
{
createConsException
}
from
"
@/api/ecw/consException
"
import
Editor
from
"
@/components/Editor/index.vue
"
export
default
{
name
:
"
consFollowupEdit
"
,
components
:
{
Editor
,
imageUpload
},
props
:
{
id
:
[
Number
],
showConsFollowupEdit
:
{
type
:
Boolean
,
default
:
false
}
},
data
()
{
return
{
form
:
{},
exceptionUrls
:
[],
rules
:
{
status
:
[
{
required
:
true
,
message
:
"
请选择状态
"
,
trigger
:
"
blur
"
}
]
}
}
},
methods
:
{
submitForm
()
{
this
.
$refs
.
form
.
validate
(
validate
=>
{
if
(
validate
)
{
}
})
}
}
}
</
script
>
<
style
scoped
>
</
style
>
src/views/ecw/consFollowup/index.vue
0 → 100644
View file @
3350be84
<
template
>
<div
class=
"app-container"
>
<!-- 搜索工作栏 -->
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"68px"
>
<el-form-item
label=
"包裹ID"
prop=
"consId"
>
<el-input
v-model=
"queryParams.consId"
placeholder=
"请输入包裹ID"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
""
>
<el-date-picker
v-model=
"dateRangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
/>
</el-form-item>
<el-form-item
label=
"跟进编号"
prop=
"followNumber"
>
<el-input
v-model=
"queryParams.followNumber"
placeholder=
"请输入跟进编号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择状态"
clearable
size=
"small"
>
<el-option
label=
"请选择字典生成"
value=
""
/>
</el-select>
</el-form-item>
<el-form-item
label=
"跟进时间"
>
<el-date-picker
v-model=
"dateRangeFollowTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
/>
</el-form-item>
<el-form-item
label=
"跟进人"
prop=
"followUserId"
>
<el-input
v-model=
"queryParams.followUserId"
placeholder=
"请输入跟进人"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"下次跟进时间"
>
<el-date-picker
v-model=
"dateRangeNextFollowTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
/>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
<el-button
type=
"primary"
plain
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleAdd"
v-hasPermi=
"['ecw:cons-followup:create']"
>
新增
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"warning"
plain
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
:loading=
"exportLoading"
v-hasPermi=
"['ecw:cons-followup:export']"
>
导出
</el-button>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table-column
label=
"ID"
align=
"center"
prop=
"id"
/>
<el-table-column
label=
"包裹ID"
align=
"center"
prop=
"consId"
/>
<el-table-column
label=
""
align=
"center"
prop=
"createTime"
width=
"180"
>
<template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"跟进编号"
align=
"center"
prop=
"followNumber"
/>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
/>
<el-table-column
label=
"跟进内容"
align=
"center"
prop=
"followContent"
/>
<el-table-column
label=
"跟进时间"
align=
"center"
prop=
"followTime"
/>
<el-table-column
label=
"跟进人"
align=
"center"
prop=
"followUserId"
/>
<el-table-column
label=
"下次跟进时间"
align=
"center"
prop=
"nextFollowTime"
width=
"180"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
nextFollowTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"下次跟进内容"
align=
"center"
prop=
"nextFollowContent"
/>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['ecw:cons-followup:update']"
>
修改
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['ecw:cons-followup:delete']"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.pageNo"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
</div>
</template>
<
script
>
import
{
createConsFollowup
,
updateConsFollowup
,
deleteConsFollowup
,
getConsFollowup
,
getConsFollowupPage
,
exportConsFollowupExcel
}
from
"
@/api/ecw/consFollowup
"
import
Editor
from
"
@/components/Editor
"
export
default
{
name
:
"
ConsFollowup
"
,
components
:
{
Editor
},
data
()
{
return
{
// 遮罩层
loading
:
true
,
// 导出遮罩层
exportLoading
:
false
,
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 操作跟进列表
list
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
dateRangeCreateTime
:
[],
dateRangeFollowTime
:
[],
dateRangeNextFollowTime
:
[],
// 查询参数
queryParams
:
{
pageNo
:
1
,
pageSize
:
10
,
consId
:
null
,
followNumber
:
null
,
status
:
null
,
followContent
:
null
,
followUserId
:
null
,
nextFollowContent
:
null
},
// 表单参数
form
:
{},
// 表单校验
rules
:
{
consId
:
[{
required
:
true
,
message
:
"
包裹ID不能为空
"
,
trigger
:
"
blur
"
}]
}
}
},
created
()
{
this
.
getList
()
},
methods
:
{
/** 查询列表 */
getList
()
{
this
.
loading
=
true
// 处理查询参数
let
params
=
{
...
this
.
queryParams
}
this
.
addBeginAndEndTime
(
params
,
this
.
dateRangeCreateTime
,
"
createTime
"
)
this
.
addBeginAndEndTime
(
params
,
this
.
dateRangeFollowTime
,
"
followTime
"
)
this
.
addBeginAndEndTime
(
params
,
this
.
dateRangeNextFollowTime
,
"
nextFollowTime
"
)
// 执行查询
getConsFollowupPage
(
params
).
then
(
response
=>
{
this
.
list
=
response
.
data
.
list
this
.
total
=
response
.
data
.
total
this
.
loading
=
false
})
},
/** 取消按钮 */
cancel
()
{
this
.
open
=
false
this
.
reset
()
},
/** 表单重置 */
reset
()
{
this
.
form
=
{
id
:
undefined
,
consId
:
undefined
,
followNumber
:
undefined
,
status
:
undefined
,
followContent
:
undefined
,
followTime
:
undefined
,
followUserId
:
undefined
,
nextFollowTime
:
undefined
,
nextFollowContent
:
undefined
}
this
.
resetForm
(
"
form
"
)
},
/** 搜索按钮操作 */
handleQuery
()
{
this
.
queryParams
.
pageNo
=
1
this
.
getList
()
},
/** 重置按钮操作 */
resetQuery
()
{
this
.
dateRangeCreateTime
=
[]
this
.
dateRangeFollowTime
=
[]
this
.
dateRangeNextFollowTime
=
[]
this
.
resetForm
(
"
queryForm
"
)
this
.
handleQuery
()
},
/** 新增按钮操作 */
handleAdd
()
{
this
.
reset
()
this
.
open
=
true
this
.
title
=
"
添加操作跟进
"
},
/** 修改按钮操作 */
handleUpdate
(
row
)
{
this
.
reset
()
const
id
=
row
.
id
getConsFollowup
(
id
).
then
(
response
=>
{
this
.
form
=
response
.
data
this
.
open
=
true
this
.
title
=
"
修改操作跟进
"
})
},
/** 提交按钮 */
submitForm
()
{
this
.
$refs
[
"
form
"
].
validate
(
valid
=>
{
if
(
!
valid
)
{
return
}
// 修改的提交
if
(
this
.
form
.
id
!=
null
)
{
updateConsFollowup
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
)
this
.
open
=
false
this
.
getList
()
})
return
}
// 添加的提交
createConsFollowup
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
新增成功
"
)
this
.
open
=
false
this
.
getList
()
})
})
},
/** 删除按钮操作 */
handleDelete
(
row
)
{
const
id
=
row
.
id
this
.
$modal
.
confirm
(
"
是否确认删除操作跟进编号为
\"
"
+
id
+
"
\"
的数据项?
"
).
then
(
function
()
{
return
deleteConsFollowup
(
id
)
}).
then
(()
=>
{
this
.
getList
()
this
.
$modal
.
msgSuccess
(
"
删除成功
"
)
}).
catch
(()
=>
{
})
},
/** 导出按钮操作 */
handleExport
()
{
// 处理查询参数
let
params
=
{
...
this
.
queryParams
}
params
.
pageNo
=
undefined
params
.
pageSize
=
undefined
this
.
addBeginAndEndTime
(
params
,
this
.
dateRangeCreateTime
,
"
createTime
"
)
this
.
addBeginAndEndTime
(
params
,
this
.
dateRangeFollowTime
,
"
followTime
"
)
this
.
addBeginAndEndTime
(
params
,
this
.
dateRangeNextFollowTime
,
"
nextFollowTime
"
)
// 执行导出
this
.
$modal
.
confirm
(
"
是否确认导出所有操作跟进数据项?
"
).
then
(()
=>
{
this
.
exportLoading
=
true
return
exportConsFollowupExcel
(
params
)
}).
then
(
response
=>
{
this
.
$download
.
excel
(
response
,
"
${table.classComment}.xls
"
)
this
.
exportLoading
=
false
}).
catch
(()
=>
{
})
}
}
}
</
script
>
src/views/ecw/customer/components/customerConsAddress.vue
View file @
3350be84
...
@@ -89,31 +89,41 @@ export default {
...
@@ -89,31 +89,41 @@ export default {
},
},
methods
:{
methods
:{
// 点击集运地址后被调用
/**
* 点击集运地址后被调用
*/
init
(
customer
){
init
(
customer
){
// 获取用户信息
// 获取用户信息
this
.
customer
=
customer
this
.
customer
=
customer
// 初始化时根据运输方式更新客户编号
// 初始化时根据运输方式更新客户编号
this
.
updateMemberNumber
();
this
.
updateMemberNumber
();
},
},
// 切换tab栏的时候调用
/**
* 切换tab栏的时候调用
*/
handleClick
(
tab
,
event
)
{
handleClick
(
tab
,
event
)
{
},
},
// 更新运输方式偏好对应的编号和保存设置
/**
* 更新运输方式偏好对应的编号和保存设置
*/
handleTransportChange
(
preferenceTransportType
)
{
handleTransportChange
(
preferenceTransportType
)
{
const
param
=
{
const
param
=
{
id
:
this
.
customer
.
id
,
id
:
this
.
customer
.
id
,
preferenceTransportType
:
preferenceTransportType
preferenceTransportType
:
preferenceTransportType
}
}
// 修改用户运输方式偏好设置
/**
* 修改用户运输方式偏好设置
*/
customerSettingButton
(
param
).
then
((
response
)
=>
{
customerSettingButton
(
param
).
then
((
response
)
=>
{
this
.
$modal
.
msgSuccess
(
this
.
$t
(
"
修改成功
"
))
this
.
$modal
.
msgSuccess
(
this
.
$t
(
"
修改成功
"
))
})
})
this
.
updateMemberNumber
(
preferenceTransportType
)
this
.
updateMemberNumber
(
preferenceTransportType
)
},
},
// 更新运输方式编号
/**
* 更新运输方式编号
*/
updateMemberNumber
()
{
updateMemberNumber
()
{
if
(
!
this
.
customer
?.
number
)
return
;
if
(
!
this
.
customer
?.
number
)
return
;
...
@@ -129,7 +139,9 @@ export default {
...
@@ -129,7 +139,9 @@ export default {
this
.
memberNumber
=
this
.
customer
.
number
+
suffix
;
this
.
memberNumber
=
this
.
customer
.
number
+
suffix
;
},
},
// 复制功能
/**
* 复制功能
*/
async
copyToClipboard
(
text
)
{
async
copyToClipboard
(
text
)
{
try
{
try
{
await
navigator
.
clipboard
.
writeText
(
text
);
await
navigator
.
clipboard
.
writeText
(
text
);
...
@@ -139,7 +151,9 @@ export default {
...
@@ -139,7 +151,9 @@ export default {
}
}
},
},
// 一键复制
/**
* 一键复制
*/
handleCopyAll
()
{
handleCopyAll
()
{
const
currentWarehouse
=
this
.
warehouseList
.
find
(
const
currentWarehouse
=
this
.
warehouseList
.
find
(
item
=>
item
.
titleEn
===
this
.
activeName
item
=>
item
.
titleEn
===
this
.
activeName
...
...
src/views/ecw/order/components/consPackage.vue
0 → 100644
View file @
3350be84
<
template
>
<el-table
:data=
"list"
border
style=
"width: 100%"
>
<el-table-column
:label=
"$t('包裹ID')"
align=
"center"
prop=
"expressNo"
></el-table-column>
<el-table-column
:label=
"$t('快递单号')"
align=
"center"
prop=
"expressNo"
></el-table-column>
<el-table-column
:label=
"$t('签收时间')"
align=
"center"
prop=
"expressNo"
></el-table-column>
<el-table-column
:label=
"$t('签收图片')"
align=
"center"
prop=
"expressNo"
></el-table-column>
<el-table-column
:label=
"$t('验货服务')"
align=
"center"
prop=
"expressNo"
></el-table-column>
<el-table-column
:label=
"$t('验货信息')"
align=
"center"
prop=
"expressNo"
></el-table-column>
</el-table>
</
template
>
<
script
>
export
default
{
name
:
'
ConsPackage
'
,
props
:
[
'
orderId
'
],
data
(){
return
{
'
list
'
:
null
,
}
},
}
</
script
>
src/views/ecw/order/detail.vue
View file @
3350be84
...
@@ -297,6 +297,9 @@
...
@@ -297,6 +297,9 @@
<el-tab-pane
:label=
"$t('到仓详情')"
name=
"seven"
>
<el-tab-pane
:label=
"$t('到仓详情')"
name=
"seven"
>
<check-detail-prod
:list=
"warehouseCheckInfoData"
:attr-list=
"attrList"
:prod-type-list=
"prodTypeList"
:currency-map=
"currencyMap"
:unit-map=
"unitMap"
:transport-id=
"order.transportId"
:unload-time=
"order.unloadTime | parseTime"
></check-detail-prod>
<check-detail-prod
:list=
"warehouseCheckInfoData"
:attr-list=
"attrList"
:prod-type-list=
"prodTypeList"
:currency-map=
"currencyMap"
:unit-map=
"unitMap"
:transport-id=
"order.transportId"
:unload-time=
"order.unloadTime | parseTime"
></check-detail-prod>
</el-tab-pane>
</el-tab-pane>
<el-tab-pane
:label=
"$t('集运包裹')"
v-if=
"order.type.includes('1')"
name=
"consPackage"
>
<cons-package
ref=
"consPackage"
:order-id=
"order.orderId"
></cons-package>
</el-tab-pane>
<!-- 这个地方v-hasPermi不生效,所以换checkPermi函数检查 -->
<!-- 这个地方v-hasPermi不生效,所以换checkPermi函数检查 -->
<el-tab-pane
:label=
"$t('操作日志')"
name=
"five"
v-if=
"checkPermi(['ecw:order:logs'])"
>
<el-tab-pane
:label=
"$t('操作日志')"
name=
"five"
v-if=
"checkPermi(['ecw:order:logs'])"
>
<el-table
:data=
"logs"
v-loading=
"logsLoading"
>
<el-table
:data=
"logs"
v-loading=
"logsLoading"
>
...
@@ -394,10 +397,12 @@ import Decimal from "decimal.js"
...
@@ -394,10 +397,12 @@ import Decimal from "decimal.js"
import
DetailProd
from
"
@/views/ecw/order/components/DetailProd.vue
"
import
DetailProd
from
"
@/views/ecw/order/components/DetailProd.vue
"
import
CheckDetailProd
from
"
@/views/ecw/order/components/CheckDetailProd.vue
"
import
CheckDetailProd
from
"
@/views/ecw/order/components/CheckDetailProd.vue
"
import
{
getProductTypeList
}
from
"
@/api/ecw/productType
"
import
{
getProductTypeList
}
from
"
@/api/ecw/productType
"
import
ConsPackage
from
'
@/views/ecw/order/components/consPackage.vue
'
export
default
{
export
default
{
name
:
"
detail
"
,
name
:
"
detail
"
,
components
:
{
components
:
{
ConsPackage
,
DetailProd
,
DetailProd
,
CheckDetailProd
,
CheckDetailProd
,
ImageDisplay
,
ImageDisplay
,
...
@@ -561,7 +566,6 @@ export default {
...
@@ -561,7 +566,6 @@ export default {
handleChange
(
val
)
{
handleChange
(
val
)
{
this
.
showText
=
val
.
length
>
0
?
this
.
$t
(
"
隐藏
"
)
:
this
.
$t
(
"
显示更多
"
)
this
.
showText
=
val
.
length
>
0
?
this
.
$t
(
"
隐藏
"
)
:
this
.
$t
(
"
显示更多
"
)
}
,
}
,
getAirCompany
()
{
getAirCompany
()
{
getSupplier
(
this
.
order
.
airlineCompany
).
then
((
res
)
=>
{
getSupplier
(
this
.
order
.
airlineCompany
).
then
((
res
)
=>
{
this
.
$set
(
this
.
order
,
"
companyName
"
,
this
.
$l
(
res
.
data
,
"
company
"
))
this
.
$set
(
this
.
order
,
"
companyName
"
,
this
.
$l
(
res
.
data
,
"
company
"
))
...
...
src/views/system/helpDoc/index.vue
View file @
3350be84
...
@@ -44,6 +44,11 @@
...
@@ -44,6 +44,11 @@
<!-- 列表 -->
<!-- 列表 -->
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table
v-loading=
"loading"
:data=
"list"
>
<el-table-column
label=
""
align=
"center"
prop=
"id"
/>
<el-table-column
label=
""
align=
"center"
prop=
"id"
/>
<el-table-column
:label=
"$t('类型')"
align=
"center"
prop=
"type"
>
<template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.HELP_DOC_TYPE"
:value=
"scope.row.type"
/>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('标题中文')"
align=
"center"
prop=
"titleZh"
/>
<el-table-column
:label=
"$t('标题中文')"
align=
"center"
prop=
"titleZh"
/>
<el-table-column
:label=
"$t('标题英文')"
align=
"center"
prop=
"titleEn"
/>
<el-table-column
:label=
"$t('标题英文')"
align=
"center"
prop=
"titleEn"
/>
<el-table-column
:label=
"$t('标题法文')"
align=
"center"
prop=
"titleFr"
/>
<el-table-column
:label=
"$t('标题法文')"
align=
"center"
prop=
"titleFr"
/>
...
@@ -76,6 +81,12 @@
...
@@ -76,6 +81,12 @@
<!-- 对话框(添加 / 修改) -->
<!-- 对话框(添加 / 修改) -->
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"500px"
append-to-body
>
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"500px"
append-to-body
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-form-item
:label=
"$t('类型')"
prop=
"type"
>
<el-select
v-model=
"form.type"
clearable
:placeholder=
"$t('请选择帮助文档类型')"
>
<el-option
v-for=
"dict in this.getDictDatas(DICT_TYPE.HELP_DOC_TYPE)"
:key=
"dict.value"
:label=
"dict.label"
:value=
"parseInt(dict.value)"
/>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('标题中文')"
prop=
"titleZh"
>
<el-form-item
:label=
"$t('标题中文')"
prop=
"titleZh"
>
<el-input
v-model=
"form.titleZh"
:placeholder=
"$t('请输入标题中文')"
/>
<el-input
v-model=
"form.titleZh"
:placeholder=
"$t('请输入标题中文')"
/>
</el-form-item>
</el-form-item>
...
@@ -186,6 +197,7 @@ export default {
...
@@ -186,6 +197,7 @@ export default {
contentEn
:
undefined
,
contentEn
:
undefined
,
contentFr
:
undefined
,
contentFr
:
undefined
,
status
:
undefined
,
status
:
undefined
,
type
:
undefined
,
};
};
this
.
resetForm
(
"
form
"
);
this
.
resetForm
(
"
form
"
);
},
},
...
...
src/views/system/needKnow/components/versionNotes.vue
0 → 100644
View file @
3350be84
<
template
>
<div>
<el-dialog
append-to-body
:title=
"this.title"
:visible.sync=
"dialogVisible"
width=
"950px"
>
<el-table
:data=
"tableData"
border
style=
"width: 100%"
>
<el-table-column
:label=
"$t('须知类型')"
align=
"center"
prop=
"knowType"
>
<template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.NEED_KNOW_TYPE"
:value=
"scope.row.knowType"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
"titleZh"
:label=
"$t('标题中文')"
></el-table-column>
<el-table-column
prop=
"titleEn"
:label=
"$t('标题英文')"
></el-table-column>
<el-table-column
prop=
"titleFr"
:label=
"$t('标题法文')"
></el-table-column>
<el-table-column
prop=
"version"
:label=
"$t('版本号')"
>
<
template
slot-scope=
"scope"
>
<span>
{{
'
V
'
+
parseInt
(
scope
.
row
.
version
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"updateTime"
width=
"180px"
:label=
"$t('修改时间')"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
updateTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"updaterName"
:label=
"$t('修改人')"
></el-table-column>
<el-table-column
prop=
"type"
:label=
"$t('版本内容')"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"text"
@
click=
"handleShow(scope.row)"
>
{{
$t
(
'
查看
'
)
}}
</el-button>
</
template
>
</el-table-column>
</el-table>
</el-dialog>
<!-- 查看版本内容 -->
<el-dialog
:title=
"$t('须知内容')"
:visible.sync=
"showContent"
width=
"700px"
style=
"height: 900px"
append-to-body
>
<div
class=
"content-container"
>
<!-- 中文内容 -->
<div
class=
"language-section"
>
<div
class=
"language-title"
>
{{ $t('中文内容') }}
</div>
<ueditor
v-model=
"currentContent.contentZh"
:min-height=
"192"
:disabled=
"true"
:config=
"editorConfig"
class=
"readonly-editor"
/>
</div>
<!-- 英文内容 -->
<div
class=
"language-section"
>
<div
class=
"language-title"
>
{{ $t('英文内容') }}
</div>
<ueditor
v-model=
"currentContent.contentEn"
:min-height=
"192"
:disabled=
"true"
:config=
"editorConfig"
class=
"readonly-editor"
/>
</div>
<!-- 法文内容 -->
<div
class=
"language-section"
>
<div
class=
"language-title"
>
{{ $t('法文内容') }}
</div>
<ueditor
v-model=
"currentContent.contentFr"
:min-height=
"192"
:disabled=
"true"
:config=
"editorConfig"
class=
"readonly-editor"
/>
</div>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
getDictDataLabel
}
from
'
@/utils/dict
'
import
{
getNeedKnowVersionList
,
getNeedKnowVersionPage
}
from
'
@/api/system/needKnow
'
import
NeedKnow
from
'
@/components/NeedKnow/index.vue
'
import
Ueditor
from
'
@/components/Ueditor/index.vue
'
export
default
{
name
:
'
VersionNotes
'
,
components
:
{
Ueditor
,
NeedKnow
},
data
()
{
return
{
dialogVisible
:
false
,
// 须知id
needKnowId
:
null
,
// 须知版本日志内容
tableData
:
[],
// 弹窗标题
title
:
''
,
// 类型
type
:
''
,
// 须知版本内容
currentContent
:
{
contentZh
:
''
,
contentEn
:
''
,
contentFr
:
''
},
// 显示内容
showContent
:
false
,
// 设置查看内容的编辑器的配置
editorConfig
:
{
// 禁用所有工具栏按钮
toolbars
:
[[]],
// 禁用编辑功能
enableContextMenu
:
false
,
autoHeightEnabled
:
false
,
// 其他只读配置
readonly
:
true
}
}
},
computed
:
{
isChinese
()
{
return
this
.
$i18n
.
locale
===
'
zh_CN
'
}
},
methods
:
{
init
(
needKnow
)
{
// 设置标题内容
const
title
=
this
.
isChinese
?
needKnow
.
titleZh
:
needKnow
.
titleEn
// 获取类型值
this
.
type
=
this
.
getDictDataLabel
(
this
.
DICT_TYPE
.
NEED_KNOW_TYPE
,
needKnow
.
knowType
)
this
.
title
=
this
.
type
+
'
-
'
+
title
// 设置须知id值
this
.
needKnowId
=
needKnow
.
id
this
.
getList
()
},
getList
()
{
getNeedKnowVersionList
(
this
.
needKnowId
).
then
(
response
=>
{
this
.
tableData
=
response
.
data
})
},
/**
* 查看内容详情
* @param row
*/
handleShow
(
row
)
{
this
.
currentContent
=
{
contentZh
:
row
.
contentZh
,
contentEn
:
row
.
contentEn
,
contentFr
:
row
.
contentFr
};
this
.
showContent
=
true
;
}
}
}
</
script
>
<
style
scoped
>
.content-container
{
display
:
flex
;
flex-direction
:
column
;
gap
:
24px
;
}
.language-section
{
border
:
1px
solid
#e4e7ed
;
border-radius
:
4px
;
}
.language-title
{
padding
:
8px
16px
;
background
:
#f5f7fa
;
border-bottom
:
1px
solid
#e4e7ed
;
color
:
#606266
;
font-size
:
16px
;
font-weight
:
bold
;
}
</
style
>
src/views/system/needKnow/index.vue
View file @
3350be84
...
@@ -58,8 +58,12 @@
...
@@ -58,8 +58,12 @@
<el-table-column
:label=
"$t('标题中文')"
align=
"center"
prop=
"titleZh"
/>
<el-table-column
:label=
"$t('标题中文')"
align=
"center"
prop=
"titleZh"
/>
<el-table-column
:label=
"$t('标题英文')"
align=
"center"
prop=
"titleEn"
/>
<el-table-column
:label=
"$t('标题英文')"
align=
"center"
prop=
"titleEn"
/>
<el-table-column
:label=
"$t('标题法文')"
align=
"center"
prop=
"titleFr"
/>
<el-table-column
:label=
"$t('标题法文')"
align=
"center"
prop=
"titleFr"
/>
<!-- <el-table-column :label="$t('内容中文')" align="center" prop="contentZh" />-->
<el-table-column
:label=
"$t('版本号')"
align=
"center"
prop=
"currentVersion"
>
<!-- <el-table-column :label="$t('内容英语')" align="center" prop="contentEn" />-->
<
template
slot-scope=
"scope"
>
<span>
{{
'
V
'
+
scope
.
row
.
currentVersion
}}
</span>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('状态')"
align=
"center"
prop=
"status"
>
<el-table-column
:label=
"$t('状态')"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:type=
"DICT_TYPE.NEED_KNOW_STATUS"
:value=
"scope.row.status"
/>
<dict-tag
:type=
"DICT_TYPE.NEED_KNOW_STATUS"
:value=
"scope.row.status"
/>
...
@@ -70,12 +74,21 @@
...
@@ -70,12 +74,21 @@
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"$t('部署时间')"
align=
"center"
prop=
"publishTime"
width=
"180"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
publishTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
:label=
"$t('操作')"
align=
"center"
class-name=
"small-padding fixed-width"
>
<el-table-column
:label=
"$t('操作')"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-notebook-2"
@
click=
"handleNotes(scope.row)"
v-hasPermi=
"['system:need-know:notes']"
>
{{
$t
(
'
版本日志
'
)
}}
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['system:need-know:update']"
>
{{
$t
(
'
修改
'
)
}}
</el-button>
v-hasPermi=
"['system:need-know:update']"
>
{{
$t
(
'
修改
'
)
}}
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['system:need-know:delete']"
>
{{
$t
(
'
删除
'
)
}}
</el-button>
v-hasPermi=
"['system:need-know:delete']"
>
{{
$t
(
'
删除
'
)
}}
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-s-release"
@
click=
"handleRelease(scope.row)"
v-hasPermi=
"['system:need-know:release']"
>
{{
$t
(
'
发布新版本
'
)
}}
</el-button>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -122,15 +135,26 @@
...
@@ -122,15 +135,26 @@
<el-button
@
click=
"cancel"
>
{{$t('取 消')}}
</el-button>
<el-button
@
click=
"cancel"
>
{{$t('取 消')}}
</el-button>
</div>
</div>
</el-dialog>
</el-dialog>
<version-notes
ref=
"versionNotes"
@
refresh=
"getList"
></version-notes>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
{
createNeedKnow
,
updateNeedKnow
,
deleteNeedKnow
,
getNeedKnow
,
getNeedKnowPage
,
exportNeedKnowExcel
}
from
"
@/api/system/needKnow
"
;
import
{
createNeedKnow
,
updateNeedKnow
,
deleteNeedKnow
,
getNeedKnow
,
getNeedKnowPage
,
exportNeedKnowExcel
,
releaseNeedKnow
}
from
'
@/api/system/needKnow
'
import
Ueditor
from
'
@/components/Ueditor
'
import
Ueditor
from
'
@/components/Ueditor
'
import
VersionNotes
from
'
@/views/system/needKnow/components/versionNotes.vue
'
export
default
{
export
default
{
name
:
"
NeedKnow
"
,
name
:
"
NeedKnow
"
,
components
:
{
components
:
{
VersionNotes
,
Ueditor
Ueditor
},
},
data
()
{
data
()
{
...
@@ -264,6 +288,18 @@ export default {
...
@@ -264,6 +288,18 @@ export default {
this
.
$modal
.
msgSuccess
(
this
.
$t
(
"
删除成功
"
));
this
.
$modal
.
msgSuccess
(
this
.
$t
(
"
删除成功
"
));
}).
catch
(()
=>
{});
}).
catch
(()
=>
{});
},
},
/** 发布版本按钮 */
handleRelease
(
row
){
// 设置版本须知id值
row
.
needKnowId
=
row
.
id
this
.
$modal
.
confirm
(
this
.
$t
(
'
是否确认发布版本
'
)).
then
(
function
()
{
return
releaseNeedKnow
(
row
);
}).
then
(()
=>
{
this
.
getList
();
this
.
$modal
.
msgSuccess
(
this
.
$t
(
"
版本发布成功
"
));
}).
catch
(()
=>
{});
},
/** 导出按钮操作 */
/** 导出按钮操作 */
handleExport
()
{
handleExport
()
{
// 处理查询参数
// 处理查询参数
...
@@ -279,6 +315,16 @@ export default {
...
@@ -279,6 +315,16 @@ export default {
this
.
$download
.
excel
(
response
,
'
${table.classComment}.xls
'
);
this
.
$download
.
excel
(
response
,
'
${table.classComment}.xls
'
);
this
.
exportLoading
=
false
;
this
.
exportLoading
=
false
;
}).
catch
(()
=>
{});
}).
catch
(()
=>
{});
},
/**
* 须知版本日志
* @param row 须知信息
*/
handleNotes
(
row
){
this
.
$refs
[
"
versionNotes
"
].
dialogVisible
=
true
this
.
$nextTick
((
_
)
=>
{
this
.
$refs
[
"
versionNotes
"
].
init
(
row
)
})
}
}
}
}
};
};
...
...
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