Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-csf-front
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
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
yuzhenWang
yd-csf-front
Commits
a83b446e
Commit
a83b446e
authored
Sep 23, 2025
by
Sweet Zhang
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'test' into sw
parents
c890936c
04ebe0be
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
273 additions
and
169 deletions
+273
-169
src/api/common.js
+16
-0
src/api/sign/fna.js
+30
-1
src/formJson/fnaForm.js
+0
-0
src/main.js
+2
-1
src/store/modules/dict.js
+56
-49
src/utils/1.js
+49
-63
src/utils/2.js
+0
-0
src/utils/date.js
+2
-1
src/utils/dict.js
+20
-1
src/views/sign/FnaList/components/customer.vue
+26
-12
src/views/sign/FnaList/components/fanForm.vue
+0
-0
src/views/sign/FnaList/edit.vue
+52
-0
src/views/sign/FnaList/index.vue
+20
-41
No files found.
src/api/common.js
View file @
a83b446e
...
...
@@ -47,3 +47,19 @@ export function getSearchCountry(name) {
method
:
'get'
})
}
// 查询租户用户关系列表
export
function
listTenantUser
(
data
)
{
return
request
({
url
:
'/user/api/relTenantUser/page'
,
method
:
'post'
,
data
:
data
})
}
// 查询多个字典列表
export
function
getMoreDicts
(
data
)
{
return
request
({
url
:
'/user/api/sysDict/type/list'
,
method
:
'post'
,
data
:
data
})
}
src/api/sign/fna.js
View file @
a83b446e
...
...
@@ -72,7 +72,7 @@ export function editCustomer(data) {
data
:
data
})
}
//
修改客户
信息
//
获取客户列表
信息
export
function
getCustomerList
(
data
)
{
return
request
({
url
:
'/csf/api/Customer/list/page/vo'
,
...
...
@@ -83,6 +83,35 @@ export function getCustomerList(data) {
/*
客户模块接口结束
*/
/*
fanForm模块接口开始
*/
// 新增fanForm信息
export
function
addfanForm
(
data
)
{
return
request
({
url
:
'/csf/api/FnaForm/add'
,
method
:
'post'
,
data
:
data
})
}
// 获取fanForm信息详情
export
function
getfanFormDetail
(
fnaFormBizId
)
{
return
request
({
url
:
`/csf/api/FnaForm/get/vo?fnaFormBizId=
${
fnaFormBizId
}
`
,
method
:
'get'
})
}
// 修改客户信息
export
function
editFanForm
(
data
)
{
return
request
({
url
:
'/csf/api/FnaForm/update'
,
method
:
'post'
,
data
:
data
})
}
/*
fanForm模块接口结束
*/
// 修改角色
export
function
roleUpdate
(
data
)
{
return
request
({
...
...
src/formJson/fnaForm.js
View file @
a83b446e
This diff is collapsed.
Click to expand it.
src/main.js
View file @
a83b446e
...
...
@@ -27,7 +27,7 @@ import elementIcons from '@/components/SvgIcon/svgicon'
import
'./permission'
// permission control
import
{
useDict
}
from
'@/utils/dict'
import
{
useDict
,
useDictLists
}
from
'@/utils/dict'
import
{
getConfigKey
}
from
'@/api/system/config'
import
{
parseTime
,
...
...
@@ -57,6 +57,7 @@ const app = createApp(App)
// 全局方法挂载
app
.
config
.
globalProperties
.
useDict
=
useDict
app
.
config
.
globalProperties
.
useDictLists
=
useDictLists
app
.
config
.
globalProperties
.
download
=
download
app
.
config
.
globalProperties
.
parseTime
=
parseTime
app
.
config
.
globalProperties
.
getNowTime
=
getNowTime
...
...
src/store/modules/dict.js
View file @
a83b446e
const
useDictStore
=
defineStore
(
'dict'
,
{
state
:
()
=>
({
dict
:
new
Array
()
}),
actions
:
{
// 获取字典
getDict
(
_key
)
{
if
(
_key
==
null
&&
_key
==
""
)
{
return
null
}
try
{
for
(
let
i
=
0
;
i
<
this
.
dict
.
length
;
i
++
)
{
if
(
this
.
dict
[
i
].
key
==
_key
)
{
return
this
.
dict
[
i
].
value
}
const
useDictStore
=
defineStore
(
'dict'
,
{
state
:
()
=>
({
dict
:
new
Array
(),
tenantUserList
:
[],
dictTypeLists
:
[]
//字典列表,根据请求得不同会变化,所以使用之前需要使用useDictLists请求数据
}),
actions
:
{
// 获取字典
getDict
(
_key
)
{
if
(
_key
==
null
&&
_key
==
''
)
{
return
null
}
try
{
for
(
let
i
=
0
;
i
<
this
.
dict
.
length
;
i
++
)
{
if
(
this
.
dict
[
i
].
key
==
_key
)
{
return
this
.
dict
[
i
].
value
}
}
catch
(
e
)
{
return
null
}
},
// 设置字典
setDict
(
_key
,
value
)
{
if
(
_key
!==
null
&&
_key
!==
""
)
{
this
.
dict
.
push
({
key
:
_key
,
value
:
value
})
}
},
// 删除字典
removeDict
(
_key
)
{
var
bln
=
false
try
{
for
(
let
i
=
0
;
i
<
this
.
dict
.
length
;
i
++
)
{
if
(
this
.
dict
[
i
].
key
==
_key
)
{
this
.
dict
.
splice
(
i
,
1
)
return
true
}
}
catch
(
e
)
{
return
null
}
},
// 设置字典
setDict
(
_key
,
value
)
{
if
(
_key
!==
null
&&
_key
!==
''
)
{
this
.
dict
.
push
({
key
:
_key
,
value
:
value
})
}
},
// 删除字典
removeDict
(
_key
)
{
var
bln
=
false
try
{
for
(
let
i
=
0
;
i
<
this
.
dict
.
length
;
i
++
)
{
if
(
this
.
dict
[
i
].
key
==
_key
)
{
this
.
dict
.
splice
(
i
,
1
)
return
true
}
}
catch
(
e
)
{
bln
=
false
}
return
bln
},
// 清空字典
cleanDict
()
{
this
.
dict
=
new
Array
()
},
// 初始字典
initDict
()
{
}
catch
(
e
)
{
bln
=
false
}
return
bln
},
// 清空字典
cleanDict
()
{
this
.
dict
=
new
Array
()
},
// 初始字典
initDict
()
{},
// 设置租户用户列表
setTenantUserList
(
user
)
{
this
.
tenantUserList
=
user
},
// 设置字典列表
setDictTypeLists
(
typeList
)
{
this
.
dictTypeLists
=
typeList
}
})
}
})
export
default
useDictStore
src/utils/1.js
View file @
a83b446e
{
"id"
:
12
,
"customerBizId"
:
"customer_XQH9OmZsSNafYMhc"
,
"customCode"
:
null
,
"lastName"
:
"11"
,
"firstName"
:
"11"
,
"name"
:
"11"
,
"lastNamePinyin"
:
"11"
,
"firstNamePinyin"
:
"11"
,
"pinyin"
:
"11"
,
"title"
:
"Dr"
,
"gender"
:
"2"
,
"birthdate"
:
null
,
"abnormal"
:
null
,
"age"
:
"12"
,
"areaCode"
:
"+86"
,
"phone"
:
"11111"
,
"email"
:
"11111"
,
"smoke"
:
"1"
,
"smokeQuantity"
:
"10"
,
"companyType"
:
"11111"
,
"source"
:
null
,
"idType"
:
"passport"
,
"idCard"
:
"555"
,
"passport"
:
null
,
"eepCode"
:
null
,
"marriage"
:
"MARRIED"
,
"birthplace"
:
"11111111"
,
"education"
:
"UNIVERSITY"
,
"customerExpandBizId"
:
"customer_expand_l3eOcWeqGd1IFDJg"
,
"country"
:
"CHINESE"
,
"countryName"
:
"中国"
,
"createTime"
:
"2025-09-16T11:40:58.000+08:00"
,
"customerType"
:
null
,
"residenceAreaCode"
:
"+44"
,
"residenceTelephone"
:
"22222"
,
"longtimeAbroad"
:
"1"
,
"addressList"
:
[
"id"
:
5
,
"fnaFormBizId"
:
"fna_form_8VXGgMskIU3uZWG7"
,
"customerBizId"
:
"customer_bkr6dz9BkYGar48o"
,
"personalData"
:
{
"accountName"
:
"user_1002"
,
"registrationNumber"
:
"11"
,
"number"
:
null
,
"customerName"
:
"11"
,
"taxCountry"
:
"11"
,
"employment"
:
"PRAT_TIME"
,
"otherEmployment"
:
null
,
"isRetired"
:
"1"
,
"retiredAge"
:
null
},
"familyMembers"
:
[
{
"type"
:
"residenceAddress"
,
"region"
:
"111"
,
"city"
:
"222"
,
"street"
:
"333"
,
"location"
:
"444"
"type"
:
"1"
,
"needProvide"
:
"1"
,
"age"
:
"11"
},
{
"type"
:
"residentialAddress"
,
"region"
:
"111"
,
"city"
:
"222"
,
"street"
:
"333"
,
"location"
:
"444"
"type"
:
"2"
,
"needProvide"
:
"1"
,
"age"
:
"11"
},
{
"type"
:
"mailingAddress"
,
"region"
:
"333"
,
"city"
:
"333"
,
"street"
:
"444"
,
"location"
:
"555"
"type"
:
"3"
,
"needProvide"
:
"1"
,
"age"
:
"11"
},
{
"type"
:
"companyAddress"
,
"region"
:
"666"
,
"city"
:
"777"
,
"street"
:
"888"
,
"location"
:
"999"
"type"
:
"4"
,
"needProvide"
:
"1"
,
"age"
:
"11"
}
],
"companyName"
:
"444"
,
"companyAreaCode"
:
"+65"
,
"companyTelephone"
:
"5555"
,
"position"
:
"555"
,
"workYear"
:
"55"
,
"salary"
:
55555
"existingSecurityOwner"
:
[],
"existingSecurityInsured"
:
[],
"incomeExpense"
:
{
"monthlyIncome"
:
null
,
"monthlyExpense"
:
null
},
"liquidAssets"
:
{
"liquidAssets"
:
null
,
"liquidAssetType"
:
null
,
"otherLiquidAsset"
:
null
},
"primaryResidence"
:
null
,
"investment"
:
null
,
"companyBusinessData"
:
{
"averageNetProfit"
:
null
,
"estimatedTotalAssets"
:
null
,
"currency"
:
null
,
"assetPercentage"
:
null
},
"other"
:
{
"premiumFundingSource"
:
null
}
}
src/utils/2.js
0 → 100644
View file @
a83b446e
src/utils/date.js
View file @
a83b446e
...
...
@@ -6,12 +6,12 @@ export function formatIsoToDateTime(isoStr) {
// 替换 T 为空格,返回 "YYYY-MM-DD HH:mm:ss"
return
isoStr
.
replace
(
'T'
,
' '
)
}
console
.
log
(
dayjs
)
const
DATE_TIME_FORMAT
=
'YYYY-MM-DD HH:mm:ss'
const
DATE_FORMAT
=
'YYYY-MM-DD'
export
function
formatToDateTime
(
date
,
format
=
DATE_TIME_FORMAT
)
{
if
(
!
date
)
return
''
return
dayjs
(
date
).
format
(
format
)
}
...
...
@@ -20,5 +20,6 @@ export function formatToDate(date, format = DATE_FORMAT) {
return
dayjs
(
date
).
format
(
format
)
}
export
const
getNowTime
=
(
format
=
DATE_TIME_FORMAT
)
=>
{
if
(
!
date
)
return
''
return
dayjs
().
format
(
format
)
}
src/utils/dict.js
View file @
a83b446e
import
useDictStore
from
'@/store/modules/dict'
import
{
getDicts
}
from
'@/api/system/dict/data'
import
{
getMoreDicts
}
from
'@/api/common'
/**
* 获取字典数据
...
...
@@ -22,7 +23,25 @@ export function useDict(...args) {
return
toRefs
(
res
.
value
)
})()
}
/**
* 获取多个字典数据
*/
export
function
useDictLists
(
typeLists
)
{
let
params
=
{
typeList
:
typeLists
}
let
dictArray
=
[]
getMoreDicts
(
params
).
then
(
resp
=>
{
if
(
resp
.
code
===
200
)
{
dictArray
=
resp
.
data
.
map
(
item
=>
{
item
.
dictItemList
.
forEach
(
dict
=>
{
dict
.
label
=
dict
.
itemLabel
dict
.
value
=
dict
.
itemValue
})
return
item
})
useDictStore
().
setDictTypeLists
(
dictArray
)
}
})
}
// /**
// * 获取字典数据
// */
...
...
src/views/sign/FnaList/components/customer.vue
View file @
a83b446e
...
...
@@ -104,15 +104,11 @@
<div>
<el-form
:model=
"queryParams"
ref=
"queryRef"
:inline=
"true"
label-width=
"68px"
>
<el-form-item
label=
"客户姓名"
prop=
"name"
>
<el-input
v-model=
"queryParams.name"
placeholder=
"请输入姓名"
clearable
@
keyup
.
enter=
"customerList"
/>
<el-input
v-model=
"queryParams.name"
placeholder=
"请输入姓名"
@
input=
"customerList"
/>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"Search"
circle
@
click=
"customerList"
/>
<el-button
type=
"info"
icon=
"Refresh"
circle
@
click=
"resetCustomerList"
/>
</el-form-item>
</el-form>
<div
class=
"customerBox"
>
...
...
@@ -187,7 +183,8 @@ import Address from '@/views/components/address'
import
{
getDicts
}
from
'@/api/system/dict/data'
import
{
watch
,
nextTick
}
from
'vue'
import
{
addCustomer
,
getCustomerDetail
,
editCustomer
,
getCustomerList
}
from
'@/api/sign/fna'
import
useDictStore
from
'@/store/modules/dict'
const
dictStore
=
useDictStore
()
//获取字典数据
const
props
=
defineProps
({
activeName
:
{
type
:
String
,
default
:
''
},
//tab名称
fearthStatus
:
{
type
:
String
,
default
:
''
},
//父组件状态,新增、修改
...
...
@@ -279,6 +276,14 @@ const data = reactive({
}
})
const
{
form
,
rules
,
processedCustomerData
,
queryParams
,
oldCustomerData
}
=
toRefs
(
data
)
const
resetCustomerList
=
()
=>
{
queryParams
.
value
=
{
pageNo
:
1
,
pageSize
:
4
,
name
:
undefined
}
customerList
()
}
const
exportInfo
=
()
=>
{
if
(
props
.
customerBizId
&&
editStatus
.
value
)
{
...
...
@@ -289,6 +294,8 @@ const exportInfo = () => {
customerList
()
}
const
customerList
=
()
=>
{
console
.
log
(
'触发了'
)
tableLoading
.
value
=
true
getCustomerList
(
queryParams
.
value
).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
...
...
@@ -306,10 +313,15 @@ const handleExport = row => {
}
// 获取字典数据
const
fetchDictData
=
async
dictType
=>
{
const
fetchDictData
=
dictType
=>
{
let
options
=
[]
try
{
const
resp
=
await
getDicts
(
dictType
)
return
resp
.
data
.
map
(
p
=>
({
label
:
p
.
itemLabel
,
value
:
p
.
itemValue
}))
dictStore
.
dictTypeLists
.
forEach
(
item
=>
{
if
(
item
.
dictType
==
dictType
)
{
options
=
item
.
dictItemList
}
})
return
options
}
catch
(
error
)
{
console
.
error
(
'获取字典数据失败:'
,
error
)
return
[]
...
...
@@ -336,7 +348,7 @@ const processFormData = async () => {
for
(
const
field
of
section
.
data
)
{
if
(
field
.
dictType
)
{
// 获取字典数据
field
.
options
=
await
fetchDictData
(
field
.
dictType
)
field
.
options
=
fetchDictData
(
field
.
dictType
)
}
if
(
field
.
required
)
{
if
(
field
.
key
===
'firstNamePinyin'
)
{
...
...
@@ -487,6 +499,8 @@ const handleSelectChange = child => {
// 改变编辑状态
const
handleEditStatus
=
()
=>
{
editStatus
.
value
=
!
editStatus
.
value
console
.
log
(
'触发了编辑状态'
,
editStatus
.
value
)
// 深拷贝原始数据
const
processedData
=
JSON
.
parse
(
JSON
.
stringify
(
processedCustomerData
.
value
))
for
(
const
section
of
processedData
)
{
...
...
@@ -730,12 +744,12 @@ const resetForm = () => {
.
then
(
function
()
{
if
(
props
.
customerBizId
)
{
form
.
value
=
{
...
oldObjInfo
.
value
}
editStatus
.
value
=
true
}
else
{
resetShow
(
'smokeQuantity'
,
false
)
proxy
.
$refs
[
'customerRef'
].
resetFields
()
}
processedCustomerData
.
value
=
JSON
.
parse
(
JSON
.
stringify
(
oldCustomerData
.
value
))
console
.
log
(
'processedCustomerData.value'
,
processedCustomerData
.
value
)
})
.
catch
(()
=>
{})
...
...
src/views/sign/FnaList/components/fanForm.vue
View file @
a83b446e
This diff is collapsed.
Click to expand it.
src/views/sign/FnaList/edit.vue
View file @
a83b446e
...
...
@@ -104,6 +104,8 @@
:activeName=
"activeName"
:fearthStatus=
"route.query.type"
:fnaFormBizId=
"processInfo.fnaFormBizId"
:customerBizId=
"processInfo.customerBizId"
:dictTypeLists=
"dictTypeLists"
@
handleSuccess=
"handleSuccess"
/>
</div>
...
...
@@ -119,12 +121,15 @@
</
template
>
<
script
setup
name=
"FnaEdit"
>
import
useUserStore
from
'@/store/modules/user'
import
useDictStore
from
'@/store/modules/dict'
import
{
addFna
,
getProcessDetail
,
updateProcess
}
from
'@/api/sign/fna'
import
{
listTenantUser
}
from
'@/api/common'
import
Customer
from
'./components/customer'
import
FanForm
from
'./components/fanForm'
import
{
Check
}
from
'@element-plus/icons-vue'
import
{
ref
}
from
'vue'
const
userStore
=
useUserStore
()
const
dictStore
=
useDictStore
()
const
{
proxy
}
=
getCurrentInstance
()
const
route
=
useRoute
()
const
router
=
useRouter
()
...
...
@@ -136,6 +141,7 @@ const processInfo = ref({
customerName
:
userStore
.
name
})
// 流程详情信息
const
updateStatus
=
ref
(
false
)
const
dictTypeLists
=
ref
([])
const
tabsList
=
ref
([
{
label
:
'总览'
,
...
...
@@ -180,6 +186,34 @@ const tabsList = ref([
])
const
{
csf_fna_status
}
=
proxy
.
useDict
(
'csf_fna_status'
)
// 获取各个流程所需要得字典数据
const
getDictsData
=
async
()
=>
{
// 获取租户用户列表
const
params
=
{
tenantBizId
:
userStore
.
projectInfo
.
tenantBizId
,
pageNo
:
1
,
pageSize
:
10
}
const
response
=
await
listTenantUser
(
params
)
if
(
response
.
code
==
200
)
{
dictStore
.
setTenantUserList
(
response
.
data
.
records
)
}
// 请求每个流程中所涉及到的字典值数据
proxy
.
useDictLists
([
'csf_employment'
,
'sys_no_yes'
,
'bx_currency_type'
,
'csf_liquid_asset_type'
,
'csf_premium_funding_source'
,
'csf_customer_type'
,
'csf_customer_title'
,
'sys_gender'
,
'csf_marriage'
,
'csf_education'
,
'csf_id_type'
])
}
// 更新流程
const
processUpdate
=
(
data
,
status
)
=>
{
updateProcess
(
data
).
then
(
res
=>
{
...
...
@@ -293,6 +327,23 @@ const handleSuccess = info => {
break
case
'fnaform'
:
if
(
info
.
type
==
'add'
)
{
//客户提交成功,更新流程
processUpdate
(
{
fnaBizId
:
processInfo
.
value
.
fnaBizId
,
customerBizId
:
info
.
customerBizId
,
fnaFormBizId
:
info
.
fnaFormBizId
},
'appointment'
)
}
else
{
processUpdate
({
fnaBizId
:
processInfo
.
value
.
fnaBizId
,
customerBizId
:
info
.
customerBizId
,
fnaFormBizId
:
info
.
fnaFormBizId
})
}
break
case
'newpolicy'
:
break
...
...
@@ -302,6 +353,7 @@ const handleSuccess = info => {
break
}
}
getDictsData
()
// handleDomData()
// 1.通过新建流程进来的,要请求创建/csf/api/Fna/add拿到头部dom等信息
//2.每次进来要请求根据id获取/csf/api/Fna/get/vo,根据流程BizId获取进行到哪一步了,还可以拿到头部dom等信息
...
...
src/views/sign/FnaList/index.vue
View file @
a83b446e
...
...
@@ -78,7 +78,8 @@
v-loading=
"loading"
:data=
"tenantList"
@
selection-change=
"tableSelect"
:default-sort=
"
{ prop: 'createTime', order: 'descending' }"
@
sort-change=
"sortChange"
>
<el-table-column
type=
"selection"
width=
"55"
/>
<el-table-column
label=
"流程编号"
align=
"center"
prop=
"fnaNo"
width=
"200"
/>
...
...
@@ -97,12 +98,12 @@
><span
style=
"color: #43cf7c"
class=
"iconfont icon-yiwancheng"
></span>
已完成
</span>
<span
v-if=
"scope.row.status == 'DRAFT'"
><span
style=
"color: #86909
C
"
class=
"iconfont icon-genjinjilu"
></span>
草稿
><span
style=
"color: #86909
c
"
class=
"iconfont icon-genjinjilu"
></span>
草稿
</span>
</
template
>
</el-table-column>
<!-- sortable 后端未做 -->
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
>
<el-table-column
label=
"创建时间"
sortable
align=
"center"
prop=
"createTime"
>
<
template
#
default=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
...
...
@@ -116,13 +117,7 @@
<
template
#
default=
"scope"
>
<el-button
link
type=
"primary"
@
click=
"handleUpdate(scope.row)"
>
修改
</el-button>
<!-- v-if="scope.row.status == 'COMPLETED'" -->
<el-button
v-if=
"scope.row.status == 'COMPLETED'"
link
type=
"primary"
@
click=
"handleDelete(scope.row)"
>
删除
</el-button
>
<el-button
link
type=
"primary"
@
click=
"handleDelete(scope.row)"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -142,17 +137,6 @@
<
script
setup
name=
"FnaList"
>
import
Step
from
'@/views/components/moduleStep'
import
useAppStore
from
'@/store/modules/app'
import
{
changeUserStatus
,
listTenant
,
resetUserPwd
,
delUser
,
getTenant
,
updateTenant
,
addTenant
,
changeTenantStatus
}
from
'@/api/system/tenant'
import
{
getFnaList
,
deleteFna
}
from
'@/api/sign/fna'
import
useUserStore
from
'@/store/modules/user'
...
...
@@ -171,12 +155,9 @@ const { sys_status, csf_fna_status, sys_no_yes } = proxy.useDict(
)
const
tenantList
=
ref
([])
const
open
=
ref
(
false
)
const
loading
=
ref
(
true
)
const
showSearch
=
ref
(
true
)
const
ids
=
ref
([])
const
single
=
ref
(
true
)
const
multiple
=
ref
(
true
)
const
total
=
ref
(
0
)
const
dateRange
=
ref
([])
const
selectIdsList
=
ref
([])
...
...
@@ -186,15 +167,27 @@ const data = reactive({
pageNo
:
1
,
pageSize
:
8
,
startTime
:
''
,
endTime
:
''
endTime
:
''
,
sortField
:
''
,
sortOrder
:
''
}
})
const
{
queryParams
,
form
,
rules
}
=
toRefs
(
data
)
const
sortChange
=
({
prop
,
order
})
=>
{
if
(
order
==
'ascending'
)
{
queryParams
.
value
.
sortOrder
=
'ascend'
}
else
{
queryParams
.
value
.
sortOrder
=
'descend'
}
if
(
prop
)
{
queryParams
.
value
.
sortField
=
prop
}
getList
()
}
/** 多选框选中数据 */
function
tableSelect
(
selection
)
{
selectIdsList
.
value
=
selection
.
map
(
item
=>
item
.
projectBizId
)
//
selectIdsList.value = selection.map(item => item.projectBizId)
}
const
goToAppointment
=
()
=>
{
router
.
push
({
path
:
'/sign/appointment'
})
...
...
@@ -252,20 +245,6 @@ function handleDelete(row) {
.
catch
(()
=>
{})
}
/** 租户状态修改 */
function
handleStatusChange
(
row
,
event
)
{
let
text
=
row
.
status
===
0
?
'停用'
:
'启用'
const
tenantName
=
row
.
tenantName
proxy
.
$modal
.
confirm
(
`确认要
${
text
}
"
${
tenantName
}
"租户吗?`
)
.
then
(()
=>
changeTenantStatus
({
tenantBizId
:
row
.
tenantBizId
,
status
:
row
.
status
}))
.
then
(()
=>
proxy
.
$modal
.
msgSuccess
(
`
${
text
}
成功`
))
.
catch
(()
=>
{
// 操作取消时恢复原状态
row
.
status
=
row
.
status
===
0
?
1
:
0
})
}
/** 重置操作表单 */
function
reset
()
{
form
.
value
=
{
...
...
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