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
f7b1f106
Commit
f7b1f106
authored
Feb 17, 2020
by
fairyly
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 增加组件
parent
bb1d7737
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
624 additions
and
245 deletions
+624
-245
add-enterprise.vue
src/components/company/add-enterprise.vue
+133
-46
add-member.vue
src/components/company/add-member.vue
+3
-1
depart-list.vue
src/components/company/depart-list.vue
+25
-8
depart-member.vue
src/components/company/depart-member.vue
+40
-10
org-tree.vue
src/components/company/org-tree.vue
+4
-1
set-department.vue
src/components/company/set-department.vue
+187
-157
store-member.vue
src/components/company/store-member.vue
+69
-3
contacts.vue
src/views/business/contacts.vue
+2
-2
orgStructSet.vue
src/views/business/orgStructSet.vue
+132
-10
recycle.vue
src/views/business/recycle.vue
+26
-7
public.css
static/css/public.css
+3
-0
No files found.
src/components/company/add-enterprise.vue
View file @
f7b1f106
...
...
@@ -3,32 +3,31 @@
* @Author : 无尘
* @Date : 2020-02-13 16:13:59
* @LastEditors : 无尘
* @LastEditTime : 2020-02-1
5 16:21:48
* @FilePath : \Hapi-demoj:\公司\haoban-3\src\components\company\add-
member
.vue
* @LastEditTime : 2020-02-1
7 10:33:22
* @FilePath : \Hapi-demoj:\公司\haoban-3\src\components\company\add-
enterprise
.vue
-->
<!--
<add-
member :memberObj="memberObj" @refreshData="refreshData"></add-member
>
import add
Member from '@/components/company/add-member
.vue';
<add-
enterprise :memberObj="memberObj" @refreshData="refreshData"></add-enterprise
>
import add
Enterprise from '@/components/company/add-enterprise
.vue';
-->
<
template
>
<el-dialog
width=
"600px"
:title=
"partForm.staffId ? '成员详情' : '新增成员'"
:visible
.
sync=
"memberVisible"
append-to-body
:before-close=
"handleClose"
>
<div
class=
"add-title m-b-20 font-14 color-303133 font-w-500"
>
基本信息
</div>
<el-form
:model=
"partForm"
:rules=
"rules"
ref=
"form"
label-width=
"100px"
class=
"dialog-form"
>
<el-form-item
label=
"选择商户"
prop=
"staffName"
>
<el-input
v-model=
"partForm.enterpriseName"
@
blur=
"inputBlur()"
@
keyup
.
native=
"value => toInput(value)"
>
<el-select
v-model=
"partForm.version"
slot=
"prepend"
class=
"w-92"
:disabled=
"disflag"
@
change=
"changeCode"
>
<el-dialog
width=
"600px"
title=
"新增GIC商户授权"
:visible
.
sync=
"memberVisible"
append-to-body
:before-close=
"handleClose"
>
<el-form
:model=
"partForm"
:rules=
"rules"
ref=
"form"
label-width=
"140px"
class=
"dialog-form"
>
<el-form-item
label=
"选择商户"
prop=
""
>
<el-autocomplete
style=
"width: 363px;"
v-model=
"partForm.enterpriseName"
:fetch-suggestions=
"querySearchAsync"
@
select=
"handleSelect"
>
<el-select
v-model=
"partForm.version"
slot=
"prepend"
class=
"w-95"
:disabled=
"disflag"
@
change=
"changeCode"
>
<el-option
v-for=
"(item, index) in versionList"
:label=
"item.label"
:value=
"item.value"
:key=
"index + 'option'"
>
{{
item
.
value
}}
</el-option>
</el-select>
</el-
input
>
</el-
autocomplete
>
</el-form-item>
<el-form-item
label=
"超级管理员"
>
{{
partForm
.
clerkName
}}
</el-form-item>
<el-form-item
label=
"超级管理员手机号"
prop=
"sex"
>
{{
partForm
.
phoneNumber
|
formatPhoneNum
}}
<el-button
type=
"primary"
@
click=
"sendCode(
'form'
)"
>
点击短信验证
</el-button>
</el-form-item>
<el-form-item
label=
"超级管理员手机号"
prop=
"sex"
>
{{
partForm
.
phoneNumber
|
formatPhoneNum
}}
<el-button
type=
"primary"
@
click=
"sendCode()"
>
点击短信验证
</el-button>
</el-form-item>
<el-form-item
label=
"短信验证码"
prop=
"code"
>
<el-input
v-model=
"partForm.code"
placeholder=
"请输入验证码"
></el-input>
<el-input
style=
"width: 180px;"
v-model=
"partForm.code"
placeholder=
"请输入验证码"
></el-input>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
...
...
@@ -43,9 +42,10 @@ import countryMobile from '@/components/common/country-mobile.vue';
import
selectDepartment
from
'@/components/company/select-department.vue'
;
import
{
getRequest
,
postRequest
}
from
'@/api/api'
;
import
errMsg
from
'@/common/js/error'
;
import
showMsg
from
'@/common/js/showmsg'
;
import
PhoneNumber
from
'awesome-phonenumber'
;
export
default
{
name
:
'add-
member
'
,
name
:
'add-
enterprise
'
,
components
:
{
limitInput
,
countryMobile
,
...
...
@@ -76,27 +76,21 @@ export default {
return
{
versionList
:
[
{
label
:
'3.0'
,
label
:
'
GIC
3.0'
,
value
:
'3.0'
},
{
label
:
'4.0'
,
label
:
'
GIC
4.0'
,
value
:
'4.0'
}
],
memberVisible
:
true
,
partForm
:
{
version
:
''
,
version
:
'
3.0
'
,
enterpriseName
:
''
,
nationCode
:
'86'
,
phoneNumber
:
''
,
postion
:
''
,
activeFlag
:
0
,
department
:
[],
departmentIds
:
''
,
sex
:
'1'
,
syncPostionFlag
:
'1'
,
extendPostion
:
''
code
:
''
},
rules
:
{
staffName
:
[
...
...
@@ -126,6 +120,105 @@ export default {
},
methods
:
{
/**
* 发送验证码
*/
sendCode
()
{
const
that
=
this
;
let
params
=
{
phoneNumber
:
that
.
partForm
.
phoneNumber
,
nationCode
:
that
.
partForm
.
nationCode
,
type
:
''
};
getRequest
(
'/haoban-web/send-code'
,
params
)
.
then
(
res
=>
{
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
const
phone
=
String
(
that
.
partForm
.
phoneNumber
);
let
handle
=
phone
.
substr
(
0
,
3
)
+
'****'
+
phone
.
substr
(
7
,
phone
.
length
-
1
);
showMsg
.
showmsg
(
`已发送验证码到
${
that
.
partForm
.
nationCode
}
-
${
handle
}
`
,
'success'
);
return
false
;
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
},
/**
* 校验验证码
*/
checkCode
()
{
const
that
=
this
;
let
params
=
{
phoneNumber
:
that
.
partForm
.
phoneNumber
,
nationCode
:
that
.
partForm
.
nationCode
,
type
:
''
,
code
:
that
.
partForm
.
code
};
return
new
Promise
((
resolve
,
reject
)
=>
{
getRequest
(
'/haoban-web/validate-code'
,
params
)
.
then
(
res
=>
{
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
resolve
(
true
);
return
false
;
}
errMsg
.
errorMsg
(
resData
);
resolve
(
false
);
})
.
catch
(
function
(
error
)
{
resolve
(
false
);
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
});
},
/**
* 搜索查询列表
*/
getSearchList
()
{
const
that
=
this
;
let
params
=
{
version
:
that
.
partForm
.
version
};
return
new
Promise
((
resolve
,
reject
)
=>
{
getRequest
(
'/haoban-web/staff-add'
,
params
)
.
then
(
res
=>
{
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
resolve
(
resData
.
result
);
return
false
;
}
errMsg
.
errorMsg
(
resData
);
resolve
(
false
);
})
.
catch
(
function
(
error
)
{
resolve
(
false
);
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
});
},
/**
* 搜索查询列表
*/
async
querySearchAsync
(
queryString
,
cb
)
{
const
that
=
this
;
const
res
=
await
that
.
getSearchList
();
cb
(
res
);
},
handleSelect
(
item
)
{
console
.
log
(
item
);
},
/**
* 改变对外职务
*/
checkGroupIds
:
function
(
nodes
)
{
...
...
@@ -149,19 +242,23 @@ export default {
handleClose
(
done
)
{
const
that
=
this
;
that
.
$refs
[
'form'
].
resetFields
();
that
.
part
Visible
=
false
;
that
.
member
Visible
=
false
;
done
();
},
cancel
()
{
const
that
=
this
;
that
.
$refs
[
'form'
].
resetFields
();
that
.
part
Visible
=
false
;
that
.
member
Visible
=
false
;
},
/**
* 确定保存
*/
submitForm
(
form
)
{
async
submitForm
(
form
)
{
const
that
=
this
;
const
flag
=
await
that
.
checkCode
();
if
(
!
flag
)
{
return
false
;
}
that
.
$refs
[
form
].
validate
(
valid
=>
{
if
(
valid
)
{
that
.
toAddPost
();
...
...
@@ -178,12 +275,7 @@ export default {
nickName
:
that
.
partForm
.
nickName
,
sex
:
that
.
partForm
.
sex
,
nationCode
:
that
.
partForm
.
nationCode
,
phoneNumber
:
that
.
partForm
.
phoneNumber
,
departmentIds
:
that
.
partForm
.
departmentIds
,
postion
:
that
.
partForm
.
postion
,
extendPostion
:
that
.
partForm
.
extendPostion
,
activeFlag
:
that
.
partForm
.
activeFlag
,
syncPostionFlag
:
that
.
partForm
.
syncPostionFlag
phoneNumber
:
that
.
partForm
.
phoneNumber
};
postRequest
(
that
.
partForm
.
staffId
?
'/haoban-web/staff-edit'
:
'/haoban-web/staff-add'
,
params
)
.
then
(
res
=>
{
...
...
@@ -226,20 +318,11 @@ export default {
});
}
},
watch
:
{
memberObj
(
newData
,
oldData
)
{
watch
:
{
}
/* mounted(
) {
const that = this;
if
(
Object
.
keys
(
newData
).
length
)
{
that
.
partForm
=
newData
;
}
}
},
mounted
()
{
const
that
=
this
;
if
(
Object
.
keys
(
that
.
memberObj
).
length
)
{
that
.
partForm
=
that
.
memberObj
;
}
}
} */
};
</
script
>
<
style
lang=
"less"
scoped
>
...
...
@@ -252,6 +335,10 @@ export default {
border-radius
:
50%
;
}
.w-95
{
width
:
95px
;
}
.m-l-30
{
margin-left
:
30px
;
}
...
...
src/components/company/add-member.vue
View file @
f7b1f106
...
...
@@ -3,7 +3,7 @@
* @Author : 无尘
* @Date : 2020-02-13 16:13:59
* @LastEditors : 无尘
* @LastEditTime : 2020-02-1
5 16:21:48
* @LastEditTime : 2020-02-1
7 11:30:35
* @FilePath : \Hapi-demoj:\公司\haoban-3\src\components\company\add-member.vue
-->
<!--
...
...
@@ -160,11 +160,13 @@ export default {
that
.
$refs
[
'form'
].
resetFields
();
that
.
partVisible
=
false
;
done
();
that
.
$emit
(
'refreshData'
);
},
cancel
()
{
const
that
=
this
;
that
.
$refs
[
'form'
].
resetFields
();
that
.
partVisible
=
false
;
that
.
$emit
(
'refreshData'
);
},
/**
* 确定保存
...
...
src/components/company/depart-list.vue
View file @
f7b1f106
...
...
@@ -3,7 +3,7 @@
* @Author : 无尘
* @Date : 2020-02-13 14:02:22
* @LastEditors : 无尘
* @LastEditTime : 2020-02-1
5 15:12:46
* @LastEditTime : 2020-02-1
7 14:20:28
* @FilePath : haoban-3\src\components\company\depart-list.vue
-->
<!--
...
...
@@ -28,7 +28,7 @@
<div
class=
"depart-id font-12 color-909399"
>
{{
departObj
.
departmentId
}}
</div>
</div>
<div
class=
"depart-children-list border-box m-t-18"
>
<div
class=
"depart-children-title"
><span
class=
"iconfont iconbumen color-303133"
></span><span
class=
"font-16 color-303133 font-w-600"
>
下级部门
</span></div>
<div
class=
"depart-children-title"
><span
class=
"iconfont iconbumen color-303133"
></span><span
class=
"font-16 color-303133 font-w-600
p-l-5
"
>
下级部门
</span></div>
<div
class=
"depart-condition-wrap flex flex-space-between m-t-20"
>
<el-input
placeholder=
"请输入部门名称/ID"
v-model=
"searchInput"
class=
"w-274"
@
keyup
.
native=
"value => toInput(value, searchInput)"
clearable
@
clear=
"clearInput"
></el-input>
<el-button
type=
"primary"
@
click=
"addChildPart"
>
新建子部门
</el-button>
...
...
@@ -154,8 +154,9 @@ export default {
*/
getChildren
(
item
)
{
const
that
=
this
;
that
.
currentPage
=
1
;
that
.
getTableList
();
that
.
$emit
(
'resetData'
,
item
);
// that.currentPage = 1;
// that.getTableList();
},
handleClose
(
done
)
{
...
...
@@ -235,11 +236,11 @@ export default {
/**
* 获取列表数据
*/
getTableList
(
val
)
{
getTableList
()
{
const
that
=
this
;
let
para
=
{
parentId
:
''
,
isStore
:
''
,
parentId
:
that
.
departObj
.
departmentId
,
isStore
:
that
.
departObj
.
isStore
,
keyWord
:
that
.
searchInput
||
''
,
// 搜索字段
pageNum
:
that
.
currentPage
,
// 当前页
pageSize
:
that
.
pageSize
// 一页显示个数
...
...
@@ -249,7 +250,7 @@ export default {
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
total
=
resData
.
result
.
total
;
that
.
total
=
resData
.
result
.
pageInfo
.
total
;
return
false
;
}
errMsg
.
errorMsg
(
resData
);
...
...
@@ -261,6 +262,22 @@ export default {
});
});
}
},
watch
:
{
departObj
(
newData
,
oldData
)
{
const
that
=
this
;
if
(
Object
.
keys
(
newData
))
{
that
.
currentPage
=
1
;
that
.
getTableList
();
}
}
},
mounted
()
{
const
that
=
this
;
if
(
Object
.
keys
(
that
.
departObj
))
{
that
.
currentPage
=
1
;
that
.
getTableList
();
}
}
};
</
script
>
...
...
src/components/company/depart-member.vue
View file @
f7b1f106
...
...
@@ -3,7 +3,7 @@
* @Author : 无尘
* @Date : 2020-02-13 14:02:40
* @LastEditors : 无尘
* @LastEditTime : 2020-02-1
5 16:05:33
* @LastEditTime : 2020-02-1
7 14:48:49
* @FilePath : \haoban-3\src\components\company\depart-member.vue
-->
<!--
...
...
@@ -13,11 +13,11 @@
<
template
>
<div
class=
"depart-list-body"
>
<div
class=
"depart-children-list m-t-20"
>
<div
class=
"depart-children-title"
><span
class=
"iconfont iconchengyuan color-303133"
></span><span
class=
"font-16 color-303133 font-w-600"
>
部门成员
</span></div>
<div
class=
"depart-children-title"
><span
class=
"iconfont iconchengyuan color-303133"
></span><span
class=
"font-16 color-303133 font-w-600
p-l-5
"
>
部门成员
</span></div>
<div
class=
"depart-condition-wrap flex flex-space-between m-t-20"
>
<div>
<el-input
placeholder=
"请输入姓名/手机号"
v-model=
"searchInput"
class=
"w-274"
@
keyup
.
native=
"value => toInput(value, searchInput)"
clearable
@
clear=
"clearInput"
></el-input>
<el-select
v-model=
"activeFlag"
placeholder=
"所有状态"
class=
"m-l-6"
>
<el-select
v-model=
"activeFlag"
placeholder=
"所有状态"
class=
"m-l-6"
@
change=
"changeStatus"
>
<el-option
v-for=
"item in statusOptions"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
>
</el-option>
</el-select>
</div>
...
...
@@ -29,7 +29,7 @@
</div>
</div>
<div
class=
"m-t-20"
>
<el-table
class=
"select-table"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
:style=
"
{ width: '100%', minHeight: tableH }" @selection-change="handleSelectionChange">
<el-table
class=
"select-table"
ref=
"multiple
Depart
Table"
:data=
"tableData"
tooltip-effect=
"dark"
:style=
"
{ width: '100%', minHeight: tableH }" @selection-change="handleSelectionChange">
<el-table-column
type=
"selection"
width=
"55"
>
</el-table-column>
<el-table-column
label=
"姓名"
show-overflow-tooltip
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
staffName
||
'--'
}}
</
template
>
...
...
@@ -38,10 +38,10 @@
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
postion
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
""
label=
"手机号码"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
nationCode
}}{{
scope
.
row
.
phoneNumber
}}
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
nationCode
}}
-
{{
scope
.
row
.
phoneNumber
}}
</
template
>
</el-table-column>
<el-table-column
prop=
""
label=
"操作"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"text"
@
click=
"showDetail(scope.row)"
>
详情
</el-button><el-button
v-if=
"scope.row.activeFlag == 0"
type=
"text"
@
click=
"toInv
a
ite(scope.row)"
>
邀请
</el-button>
</
template
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"text"
@
click=
"showDetail(scope.row)"
>
详情
</el-button><el-button
v-if=
"scope.row.activeFlag == 0"
type=
"text"
@
click=
"toInvite(scope.row)"
>
邀请
</el-button>
</
template
>
</el-table-column>
</el-table>
<div
class=
"block common-wrap__page text-right m-t-24"
v-if=
"tableData.length != 0"
>
...
...
@@ -124,6 +124,12 @@ export default {
that
.
currentPage
=
1
;
that
.
getTableList
();
},
// 选择状态
changeStatus
()
{
const
that
=
this
;
that
.
currentPage
=
1
;
that
.
getTableList
();
},
/**
* 调整部门
...
...
@@ -163,18 +169,21 @@ export default {
/**
* 邀请
*/
toInvite
()
{
toInvite
(
item
)
{
const
that
=
this
;
if
(
item
)
{
that
.
postInvite
(
item
);
}
if
(
!
that
.
multipleSelection
.
length
)
{
showMsg
.
showmsg
(
'请先选择成员!'
,
'warning'
);
return
false
;
}
that
.
postInvite
();
},
postInvite
()
{
postInvite
(
item
)
{
const
that
=
this
;
let
params
=
{
staffIds
:
''
staffIds
:
item
?
item
.
staffId
:
that
.
multipleSelection
.
map
(
ele
=>
ele
.
staffId
).
join
(
','
)
};
postRequest
(
'/haoban-web/staff-invite'
,
params
)
.
then
(
res
=>
{
...
...
@@ -310,7 +319,12 @@ export default {
* 勾选
*/
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
;
const
that
=
this
;
that
.
multipleSelection
=
val
;
// 如果需要过滤就需要,下面重新勾选过滤后的数据
//rows.forEach(row => {
// this.$refs.multipleDepartTable.toggleRowSelection(row);
//});
},
/**
...
...
@@ -358,6 +372,22 @@ export default {
});
});
}
},
watch
:
{
departObj
(
newData
,
oldData
)
{
const
that
=
this
;
if
(
Object
.
keys
(
newData
))
{
that
.
currentPage
=
1
;
that
.
getTableList
();
}
}
},
mounted
()
{
const
that
=
this
;
if
(
Object
.
keys
(
that
.
departObj
))
{
that
.
currentPage
=
1
;
that
.
getTableList
();
}
}
};
</
script
>
...
...
src/components/company/org-tree.vue
View file @
f7b1f106
...
...
@@ -15,7 +15,9 @@ import orgTree from './org-tree.vue';
<ul
class=
"m-l-10"
>
<draggable
:list=
"itemData"
class=
"org-component"
:options=
"leftOption"
:move=
"onMove"
@
start=
"isDragging = true"
@
end=
"itemMoveEnd"
>
<li
v-for=
"(item, index) in itemData"
:key=
"index + 'gic'"
>
<div
class=
"li-cell cursor-pointer"
@
click=
"toggleExpand(item)"
>
{{
item
.
label
}}
</div>
<div
class=
"li-cell cursor-pointer"
@
click=
"toggleExpand(item)"
>
<span
:class=
"['font-12 color-606266', item.expand ? 'el-icon-caret-bottom' : 'el-icon-caret-right']"
></span><span
:class=
"['font-14 p-l-10 p-r-10 iconfont', item.isStore == 1 ? 'icondianpu-kuai' : 'iconqiye-tianchong', item.bindFlag == 1 ? 'color-2f54eb' : 'color-dedfe6']"
></span><span
class=
"font-14 color-606266"
>
{{
item
.
label
}}
</span>
</div>
<li-row
v-show=
"!!item.children.length && item.expand"
:itemData=
"item.children"
></li-row>
</li>
</draggable>
...
...
@@ -98,6 +100,7 @@ export default {
.li-cell
{
line-height
:
26px
;
}
.w-110
{
width
:
110px
;
}
...
...
src/components/company/set-department.vue
View file @
f7b1f106
...
...
@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2020-02-05 10:50:57
* @LastEditors : 无尘
* @LastEditTime : 2020-02-
08 17:22:48
* @LastEditTime : 2020-02-
17 15:23:39
-->
<!--
设置成员所在部门(回收站)
...
...
@@ -12,182 +12,211 @@
import setDepartment from '@/components/set-department.vue';
-->
<
template
>
<el-dialog
width=
"6
60px"
title=
"设置成员所在部门"
:visible
.
sync=
"setVisible"
append-to-body
:before-close=
"c
lose"
>
<el-dialog
width=
"6
00px"
title=
"设置成员所在部门"
:visible
.
sync=
"setVisible"
append-to-body
:before-close=
"handleC
lose"
>
<div
class=
"select-search"
>
<!-- 树形也自带有过滤搜索的方法 -->
<el-input
placeholder=
"请输入
部门名称"
v-model=
"searchSelect"
style=
"width: 100%
;"
@
keyup
.
native=
"value => toInput(value, searchSelect)"
@
clear=
"clearSearch"
>
<i
slot=
"prefix"
class=
"el-input__icon el-icon-search"
></i>
</el-input>
<el-input
placeholder=
"请输入
内容"
v-model=
"searchSelect"
style=
"width: 296px
;"
@
keyup
.
native=
"value => toInput(value, searchSelect)"
@
clear=
"clearSearch"
>
<i
slot=
"prefix"
class=
"el-input__icon el-icon-search"
></i>
</el-input>
</div>
<div
class=
"select-tree-wrap"
>
<div
class=
"select-tree-wrap
m-t-20
"
>
<el-tree
:data=
"treeData"
node-key=
"groupId"
ref=
"setTree"
default-expand-all
:props=
"defaultProps"
:expand-on-click-node=
"false"
@
node-click=
"handleNodeClick"
>
<span
class=
"custom-tree-node"
slot-scope=
"
{ node, data }">
<span>
{{
node
.
label
}}
</span>
<span
:class=
"['font-14 p-r-10 iconfont', node.isStore == 1 ? 'icondianpu-kuai' : 'iconqiye-tianchong', node.bindFlag == 1 ? 'color-2f54eb' : 'color-dedfe6']"
></span><span
class=
"font-14 color-606266"
>
{{
node
.
label
}}
</span>
</span>
</el-tree>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"
goLast('form')
"
>
取消
</el-button>
<el-button
@
click=
"
cancel
"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确定
</el-button>
</div>
</el-dialog>
</
template
>
<
script
>
/* eslint-disable */
import
{
getRequest
,
postRequest
}
from
'@/api/api'
;
import
errMsg
from
'@/common/js/error'
;
export
default
{
props
:
{
applicationId
:
{
type
:
String
,
default
()
{
return
''
;
import
{
_debounce
}
from
'@/common/js/public'
;
import
{
getRequest
,
postRequest
}
from
'@/api/api'
;
import
errMsg
from
'@/common/js/error'
;
import
showMsg
from
'@/common/js/showmsg'
;
export
default
{
props
:
{
applicationId
:
{
type
:
String
,
default
()
{
return
''
;
}
}
}
},
data
()
{
return
{
setVisible
:
true
,
treeData
:
[],
searchSelect
:
''
,
// 搜索字段
selectId
:
''
};
},
computed
:
{},
beforeMount
()
{
this
.
getOptionList
();
},
mounted
()
{
this
.
getData
();
},
methods
:
{
/**
* 输入
*/
toInput
:
_debounce
(
function
(
e
,
value
)
{
const
that
=
this
;
if
(
!
that
.
storesCopy
.
length
)
{
return
false
;
}
if
(
value
==
''
)
{
that
.
stores
=
JSON
.
parse
(
JSON
.
stringify
(
that
.
storesCopy
));
}
let
filterData
=
JSON
.
parse
(
JSON
.
stringify
(
that
.
storesCopy
)).
filter
(
ele
=>
{
return
ele
.
storeName
.
includes
(
value
);
});
that
.
treeData
=
filterData
;
},
500
),
/**
* 清空
*/
clearSearch
()
{
const
that
=
this
;
that
.
treeData
=
JSON
.
parse
(
JSON
.
stringify
(
that
.
storesCopy
));
},
/**
* 点击 tree 数据
*/
handleNodeClick
(
data
)
{
const
that
=
this
;
console
.
log
(
data
);
that
.
selectId
=
data
.
id
;
data
()
{
return
{
setVisible
:
true
,
treeData
:
[],
searchSelect
:
''
,
// 搜索字段
selectId
:
''
}
;
},
/**
* 获取tree 数据
*/
getData
()
{
const
that
=
this
;
let
params
=
{};
getRequest
(
'/haoban-manage-web/dept/deptList'
,
params
)
.
then
(
res
=>
{
if
(
res
.
data
.
code
===
'0000'
)
{
that
.
treeData
=
res
.
data
.
result
||
[];
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
computed
:
{},
mounted
()
{
this
.
getData
();
},
methods
:
{
/**
* 关闭弹窗
*/
handleClose
(
done
)
{
const
that
=
this
;
that
.
$refs
[
'form'
].
resetFields
();
that
.
partVisible
=
false
;
done
();
that
.
$emit
(
'closeSet'
);
},
cancel
()
{
const
that
=
this
;
that
.
$refs
[
'form'
].
resetFields
();
that
.
partVisible
=
false
;
that
.
$emit
(
'closeSet'
);
},
/**
* 输入
*/
toInput
:
_debounce
(
function
(
e
,
value
)
{
const
that
=
this
;
if
(
!
that
.
storesCopy
.
length
)
{
return
false
;
}
if
(
value
==
''
)
{
that
.
stores
=
JSON
.
parse
(
JSON
.
stringify
(
that
.
storesCopy
));
}
let
filterData
=
JSON
.
parse
(
JSON
.
stringify
(
that
.
storesCopy
)).
filter
(
ele
=>
{
return
ele
.
storeName
.
includes
(
value
);
});
that
.
treeData
=
filterData
;
},
500
),
/**
* 清空
*/
clearSearch
()
{
const
that
=
this
;
that
.
treeData
=
JSON
.
parse
(
JSON
.
stringify
(
that
.
storesCopy
));
},
/**
* 点击 tree 数据
*/
handleNodeClick
(
data
)
{
const
that
=
this
;
console
.
log
(
data
);
that
.
selectId
=
data
.
id
;
},
/**
* 获取tree 数据
*/
getData
()
{
const
that
=
this
;
let
params
=
{};
getRequest
(
'/haoban-manage-web/dept/deptList'
,
params
)
.
then
(
res
=>
{
if
(
res
.
data
.
code
===
'0000'
)
{
that
.
treeData
=
res
.
data
.
result
||
[];
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
},
/**
* 确定授权
*/
submitForm
(
form
)
{
const
that
=
this
;
let
params
=
{
resourceId
:
that
.
form
.
resourceId
,
resourceName
:
that
.
form
.
resourceName
,
applicationId
:
that
.
applicationId
};
postRequest
(
'/haoban-manage-web/dept/deptList'
,
params
)
.
then
(
res
=>
{
if
(
res
.
data
.
code
===
'0000'
)
{
that
.
$emit
(
'closeSet'
,
that
.
selectId
);
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
/**
* 确定授权
*/
submitForm
()
{
const
that
=
this
;
if
(
!
that
.
selectId
)
{
showMsg
.
showmsg
(
'请选择部门'
,
'warning'
);
return
false
;
}
let
params
=
{
departmentId
:
that
.
selectId
};
postRequest
(
'/haoban-web/department-repair'
,
params
)
.
then
(
res
=>
{
if
(
res
.
data
.
code
===
'0000'
)
{
that
.
$emit
(
'closeSet'
,
that
.
selectId
);
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
});
}
},
components
:
{}
};
}
},
components
:
{}
};
</
script
>
<
style
scoped
>
.m-t-5
{
margin-top
:
5px
;
}
.dialog-top
{
margin-bottom
:
20px
;
}
.dialog-top
img
{
width
:
40px
;
height
:
40px
;
border
:
1px
solid
#e4e7ed
;
border-radius
:
50%
;
vertical-align
:
middle
;
margin-right
:
10px
;
}
.dialog-top
span
{
font-size
:
14px
;
font-weight
:
600
;
color
:
#303133
;
}
.select-info
{
display
:
inline-block
;
vertical-align
:
middle
;
}
.dialog-operate
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
}
.pagination-content
{
text-align
:
right
;
}
.dialog-form
{
width
:
430px
;
padding-top
:
20px
;
}
.w-215
{
width
:
215px
;
}
.w-115
{
width
:
115px
;
}
</
style
>
.m-t-5
{
margin-top
:
5px
;
}
.dialog-top
{
margin-bottom
:
20px
;
}
.dialog-top
img
{
width
:
40px
;
height
:
40px
;
border
:
1px
solid
#e4e7ed
;
border-radius
:
50%
;
vertical-align
:
middle
;
margin-right
:
10px
;
}
.dialog-top
span
{
font-size
:
14px
;
font-weight
:
600
;
color
:
#303133
;
}
.select-info
{
display
:
inline-block
;
vertical-align
:
middle
;
}
.dialog-operate
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
}
.pagination-content
{
text-align
:
right
;
}
.dialog-form
{
width
:
430px
;
padding-top
:
20px
;
}
.w-215
{
width
:
215px
;
}
.w-115
{
width
:
115px
;
}
.select-tree-wrap
{
height
:
445px
;
overflow-y
:
auto
;
border
:
1px
solid
#e4e7ed
;
}
</
style
>
\ No newline at end of file
src/components/company/store-member.vue
View file @
f7b1f106
...
...
@@ -3,7 +3,7 @@
* @Author : 无尘
* @Date : 2020-02-13 14:02:40
* @LastEditors : 无尘
* @LastEditTime : 2020-02-1
5 16:52:59
* @LastEditTime : 2020-02-1
7 13:46:51
* @FilePath : \haoban-3\src\components\company\store-member.vue
-->
<!--
...
...
@@ -20,7 +20,7 @@
<div
class=
"depart-id font-12 color-909399"
>
{{
departObj
.
departmentId
}}
</div>
</div>
<div
class=
"depart-children-list m-t-20"
>
<div
class=
"depart-children-title"
><span
class=
"iconfont iconchengyuan color-303133"
></span><span
class=
"font-16 color-303133 font-w-600"
>
门店成员
</span></div>
<div
class=
"depart-children-title"
><span
class=
"iconfont iconchengyuan color-303133"
></span><span
class=
"font-16 color-303133 font-w-600
p-l-5
"
>
门店成员
</span></div>
<div
class=
"depart-condition-wrap flex flex-space-between m-t-20"
>
<div>
<el-input
placeholder=
"请输入姓名/手机号"
v-model=
"searchInput"
class=
"w-274"
@
keyup
.
native=
"value => toInput(value, searchInput)"
clearable
@
clear=
"clearInput"
></el-input>
...
...
@@ -49,7 +49,7 @@
</el-table-column>
<el-table-column
prop=
""
label=
"手机号码"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<el-select
v-model=
"scope.row.clerkId"
placeholder=
"请选择"
>
<el-select
v-model=
"scope.row.clerkId"
placeholder=
"请选择"
@
change=
"changeClerk($event, scope.row)"
@
focus=
"getClerkList($event, scope.row)"
>
<el-option
v-for=
"item in clerkOptions"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
>
</el-option>
</el-select>
</
template
>
...
...
@@ -125,6 +125,72 @@ export default {
},
methods
:
{
/**
* 选择导购
*/
changeClerk
(
e
,
item
)
{
const
that
=
this
;
that
.
$confirm
(
`是否确认为【
${
item
.
staffName
}
】绑定导购ID【
${
e
}
】`
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
})
.
then
(()
=>
{})
.
catch
(()
=>
{
this
.
$message
({
type
:
'info'
,
message
:
'已取消'
});
});
},
postChange
(
obj
)
{
const
that
=
this
;
let
params
=
{
clerkId
:
obj
.
clerkId
};
postRequest
(
'/haoban-web/staff-bind'
,
params
)
.
then
(
res
=>
{
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
that
.
currentPage
=
1
;
that
.
getTableList
();
// 是否需要更新左侧 tree
return
false
;
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
},
/**
* 获取未绑定导购
*/
getClerkList
(
e
,
item
)
{
const
that
=
this
;
let
params
=
{
departmentId
:
item
.
departmentId
};
getRequest
(
'/haoban-web/staff-no-bind-list'
,
params
)
.
then
(
res
=>
{
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
that
.
clerkOptions
=
resData
.
result
.
list
;
return
false
;
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
},
/**
* 输入
*/
toInput
:
_debounce
(
function
(
e
,
value
)
{
...
...
src/views/business/contacts.vue
View file @
f7b1f106
...
...
@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-03-20 14:36:37
* @LastEditors : 无尘
* @LastEditTime : 2020-02-1
5 17:01:02
* @LastEditTime : 2020-02-1
7 13:53:28
-->
<
template
>
<div
class=
"contacts-wrap common-set-wrap"
>
...
...
@@ -92,7 +92,7 @@ export default {
],
selectData
:
{},
departObj
:
{
isStore
:
1
isStore
:
0
},
// 分页参数
currentPage
:
1
,
...
...
src/views/business/orgStructSet.vue
View file @
f7b1f106
...
...
@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-03-20 14:36:37
* @LastEditors : 无尘
* @LastEditTime : 2020-02-1
6 14:43:00
* @LastEditTime : 2020-02-1
7 10:43:43
-->
<
template
>
<div
class=
"my-customer-wrap common-set-wrap"
>
...
...
@@ -17,7 +17,7 @@
<div
class=
"content-gic flex"
>
<div
class=
"gic-content-business"
>
<ul>
<li
v-for=
"(item, index) in enterpriseData"
:key=
"index + 'li'"
>
<li
v-for=
"(item, index) in enterpriseData"
:key=
"index + 'li'"
@
click=
"selectEnterprise(item)"
>
<div
class=
"ul-li-cell flex"
>
<div
class=
"cell-img"
>
<img
:src=
"item.enterpriseLogo"
alt=
"img"
/>
...
...
@@ -32,9 +32,11 @@
</div>
</li>
</ul>
<div
class=
"add-enterprise cursor-pointer text-center"
><span
class=
"iconfont icontianjiajiahaowubiankuang font-12 color-2f54eb"
></span><span
class=
"font-12 color-2f54eb p-l-10"
>
新建GIC商户授权
</span></div>
<div
class=
"add-enterprise cursor-pointer text-center"
@
click=
"showAddDialog"
><span
class=
"iconfont icontianjiajiahaowubiankuang font-12 color-2f54eb"
></span><span
class=
"font-12 color-2f54eb p-l-10"
>
新建GIC商户授权
</span></div>
</div>
<div
class=
"gic-content-depart"
>
<org-tree
:itemData=
"gicData"
></org-tree>
</div>
<div
class=
"gic-content-depart"
></div>
</div>
</div>
<div
class=
"apps-content-right"
>
...
...
@@ -42,19 +44,31 @@
<span
class=
"font-16 color-303133 text-left"
>
企业微信组织架构
</span>
<el-button
type=
"text"
@
click=
"toRecycle"
>
回收站()
</el-button>
</div>
<div
class=
"content-wx"
></div>
<div
class=
"content-wx"
>
<wx-tree
:itemData=
"wxData"
v-model=
"wxData"
></wx-tree>
</div>
</div>
</div>
<div
class=
"save-body m-t-10"
>
<div
class=
"change-title text-center font-14 color-303133"
>
好办组织结构于2020-10-10 14:22:15 发生改动
</div>
<div
class=
"text-center m-t-15"
>
<el-button
type=
"primary"
@
click=
"saveData"
>
保存更改并同步至企业微信
</el-button>
</div>
</div>
</div>
<add-enterprise
v-if=
"addShow"
@
refreshData=
"refreshData"
></add-enterprise>
</div>
<vue-gic-footer></vue-gic-footer>
</div>
</
template
>
<
script
>
import
navCrumb
from
'@/components/nav/nav.vue'
;
import
{
getRequest
}
from
'@/api/api'
;
import
addEnterprise
from
'@/components/company/add-enterprise.vue'
;
import
orgTree
from
'@/components/company/org-tree.vue'
;
import
wxTree
from
'@/components/company/wx-tree.vue'
;
import
{
getRequest
,
postRequest
}
from
'@/api/api'
;
import
errMsg
from
'@/common/js/error'
;
//
import { _debounce } from '@/common/js/public';
import
{
_debounce
}
from
'@/common/js/public'
;
export
default
{
name
:
'reviewed'
,
data
()
{
...
...
@@ -83,12 +97,106 @@ export default {
}
],
gicData
:
[],
wxData
:
[]
wxData
:
[],
addShow
:
false
};
},
computed
:
{},
methods
:
{
/**
* 保存
*/
saveData
:
_debounce
(
function
()
{
const
that
=
this
;
that
.
postSaveData
();
},
300
),
postSaveData
()
{
const
that
=
this
;
let
para
=
{};
postRequest
(
'/haoban-web/wx-enterprise-bind'
,
para
)
.
then
(
res
=>
{
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
total
=
resData
.
result
.
total
;
return
false
;
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
},
/**
* 选择企业
*/
selectEnterprise
(
item
)
{
const
that
=
this
;
that
.
getGicData
(
item
);
},
getGicData
(
item
)
{
const
that
=
this
;
let
para
=
{
enterpriseId
:
item
.
enterpriseId
,
//
wxEnterpriseId
:
item
.
wxEnterpriseId
,
//
version
:
item
.
version
};
getRequest
(
'/haoban-web/wx-enterprise-bind'
,
para
)
.
then
(
res
=>
{
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
total
=
resData
.
result
.
total
;
return
false
;
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
},
getWxData
(
item
)
{
const
that
=
this
;
let
para
=
{
enterpriseId
:
item
.
enterpriseId
,
//
wxEnterpriseId
:
item
.
wxEnterpriseId
,
//
version
:
item
.
version
};
getRequest
(
'/haoban-web/wx-enterprise-bind'
,
para
)
.
then
(
res
=>
{
let
resData
=
res
.
data
;
if
(
resData
.
errorCode
==
1
)
{
that
.
tableData
=
resData
.
result
.
list
||
[];
that
.
total
=
resData
.
result
.
total
;
return
false
;
}
errMsg
.
errorMsg
(
resData
);
})
.
catch
(
function
(
error
)
{
that
.
$message
.
error
({
duration
:
1000
,
message
:
error
.
message
});
});
},
/**
* 新增
*/
showAddDialog
()
{
const
that
=
this
;
that
.
addShow
=
true
;
},
refreshData
()
{
const
that
=
this
;
that
.
addShow
=
false
;
},
/**
* 跳转回收站
*/
toRecycle
()
{
...
...
@@ -152,7 +260,10 @@ export default {
document
.
documentElement
.
style
.
backgroundColor
=
'#fff'
;
},
components
:
{
navCrumb
navCrumb
,
addEnterprise
,
orgTree
,
wxTree
}
};
</
script
>
...
...
@@ -184,6 +295,13 @@ export default {
.right-box
{
min-height
:
500px
;
padding
:
0px
;
.save-body
{
width
:
100%
;
height
:
120px
;
padding
:
32px
0
22px
0
;
background
:
#fff
;
box-sizing
:
border-box
;
}
.apps-content
{
.apps-content-left
{
width
:
50%
;
...
...
@@ -269,7 +387,7 @@ export default {
}
.gic-content-depart
{
position
:
relative
;
padding
:
0
20px
;
padding
:
20px
;
box-sizing
:
border-box
;
}
}
...
...
@@ -284,6 +402,10 @@ export default {
padding
:
0
20px
;
box-sizing
:
border-box
;
border-bottom
:
1px
solid
#e4e7ed
;
.content-wx
{
padding
:
20px
;
box-sizing
:
border-box
;
}
}
}
}
...
...
src/views/business/recycle.vue
View file @
f7b1f106
...
...
@@ -4,7 +4,7 @@
* @Author: 无尘
* @Date: 2019-03-20 14:36:37
* @LastEditors : 无尘
* @LastEditTime : 2020-02-1
3 11:08:4
4
* @LastEditTime : 2020-02-1
7 15:03:5
4
-->
<
template
>
<div
class=
"my-customer-wrap common-set-wrap"
>
...
...
@@ -22,22 +22,24 @@
</div>
</div>
<div
class=
"table-condition-search m-t-20"
>
<el-input
placeholder=
"请输入部门名称/CODE/ID"
v-model=
"searchInput"
class=
"w-293"
@
keyup
.
native=
"value => toInput(value, searchInput)"
clearable
@
clear=
"clearInput"
>
</el-input>
<el-select
class=
"w-191
"
v-model=
"searchType"
placeholder=
"所有部门类型"
@
change=
"changeType"
>
<el-input
placeholder=
"请输入部门名称/CODE/ID"
v-model=
"searchInput"
class=
"w-293"
@
keyup
.
native=
"value => toInput(value, searchInput)"
clearable
@
clear=
"clearInput"
>
</el-input
><el-select
class=
"w-191 m-l-10
"
v-model=
"searchType"
placeholder=
"所有部门类型"
@
change=
"changeType"
>
<el-option
v-for=
"item in options"
:key=
"item.id"
:label=
"item.label"
:value=
"item.id"
>
</el-option>
</el-select>
</div>
<div
class=
"m-t-20"
>
<el-table
class=
"select-table"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
:style=
"
{ width: '100%', minHeight: tableH }">
<el-table-column
label=
"部门名称"
show-overflow-tooltip
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
departmentName
||
'--'
}}
</
template
>
<template
slot-scope=
"scope"
><span
class=
"iconfont icondianpu-kuai color-2f54eb"
></span><span
class=
"p-l-10"
>
{{
scope
.
row
.
departmentName
||
'--'
}}
</span></
template
>
</el-table-column>
<el-table-column
prop=
""
label=
"ERP CODE"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
storeCode
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
""
label=
"操作"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"text"
size=
"small"
@
click=
"
showDetail
(scope.$index, scope.row)"
>
恢复
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"
toRecover
(scope.$index, scope.row)"
>
恢复
</el-button>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -48,12 +50,14 @@
</div>
</div>
</div>
<set-department
v-if=
"setVisible"
@
closeSet=
"closeSet"
></set-department>
</div>
<vue-gic-footer></vue-gic-footer>
</div>
</template>
<
script
>
import
navCrumb
from
'@/components/nav/nav.vue'
;
import
setDepartment
from
'@/components/company/set-department.vue'
;
import
{
getRequest
}
from
'@/api/api'
;
import
errMsg
from
'@/common/js/error'
;
import
{
_debounce
}
from
'@/common/js/public'
;
...
...
@@ -80,12 +84,26 @@ export default {
currentPage
:
1
,
pageSize
:
20
,
total
:
0
,
tableData
:
[]
tableData
:
[],
setVisible
:
true
};
},
computed
:
{},
methods
:
{
/**
* 恢复
*/
toRecover
()
{
const
that
=
this
;
that
.
setVisible
=
true
;
},
closeSet
()
{
const
that
=
this
;
that
.
setVisible
=
false
;
that
.
currentPage
=
1
;
that
.
getTableList
();
},
/**
* 路由跳转
*/
changeRoute
(
path
)
{
...
...
@@ -180,7 +198,8 @@ export default {
document
.
documentElement
.
style
.
backgroundColor
=
'#fff'
;
},
components
:
{
navCrumb
navCrumb
,
setDepartment
}
};
</
script
>
...
...
static/css/public.css
View file @
f7b1f106
...
...
@@ -395,6 +395,9 @@ input:focus {
.p-45
{
padding
:
45px
;
}
.p-l-5
{
padding-left
:
5px
;
}
.p-l-6
{
padding-left
:
6px
;
}
...
...
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