Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wenHuaBu_adminServer
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
node_server
wenHuaBu_adminServer
Commits
7bafbdde
Commit
7bafbdde
authored
Dec 13, 2024
by
lixinming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
no message
parent
9ccf55be
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
128 additions
and
20 deletions
+128
-20
apply.ts
src/biz/member/apply.ts
+2
-2
member.ts
src/biz/member/member.ts
+2
-0
memberFees.ts
src/biz/member/memberFees.ts
+121
-17
outPutConfig.ts
src/config/outPutConfig.ts
+2
-0
main.ts
src/main.ts
+1
-1
No files found.
src/biz/member/apply.ts
View file @
7bafbdde
...
@@ -80,8 +80,8 @@ export async function applyList({name, joinStartTime, joinEndTime, memberCategor
...
@@ -80,8 +80,8 @@ export async function applyList({name, joinStartTime, joinEndTime, memberCategor
memberCategory
=
changeEnumValue
(
UNITMEMBERTYPE
,
info
.
unitMemberType
);
//会员类别/级别
memberCategory
=
changeEnumValue
(
UNITMEMBERTYPE
,
info
.
unitMemberType
);
//会员类别/级别
}
}
item
.
memberCategory
=
`
${
memberCategory
}${
applyMemberLevel
}
`
;
item
.
memberCategory
=
`
${
memberCategory
}${
applyMemberLevel
}
`
;
item
.
applyApplicationTime
=
moment
(
item
.
applyApplicationTime
).
format
(
"YYYY-MM-DD"
)
item
.
applyApplicationTime
=
moment
(
item
.
applyApplicationTime
).
format
(
"YYYY-MM-DD"
)
;
item
.
applyReviewTime
=
moment
(
item
.
applyReviewTime
).
format
(
"YYYY-MM-DD"
)
item
.
applyReviewTime
=
item
.
applyReviewTime
?
moment
(
item
.
applyReviewTime
).
format
(
"YYYY-MM-DD"
)
:
'-'
;
dataList
.
push
(
item
);
dataList
.
push
(
item
);
}
}
...
...
src/biz/member/member.ts
View file @
7bafbdde
...
@@ -106,6 +106,8 @@ export async function unitMemberDetails({userId, id}) {
...
@@ -106,6 +106,8 @@ export async function unitMemberDetails({userId, id}) {
let
oldInfo
=
await
findOnce
(
TABLEENUM
.
用户表
,
{
userId
:
id
});
let
oldInfo
=
await
findOnce
(
TABLEENUM
.
用户表
,
{
userId
:
id
});
if
(
!
oldInfo
||
!
oldInfo
.
userId
)
throw
new
BizError
(
ERRORENUM
.
目标数据不存在
);
if
(
!
oldInfo
||
!
oldInfo
.
userId
)
throw
new
BizError
(
ERRORENUM
.
目标数据不存在
);
let
topInfo
:
any
=
extractData
(
oldInfo
,
[
"session"
,
"memberLevel"
]);
let
topInfo
:
any
=
extractData
(
oldInfo
,
[
"session"
,
"memberLevel"
]);
topInfo
.
session
=
getEdition
(
parseInt
(
`
${
topInfo
.
session
/
100
}
`
),
parseInt
(
`
${
topInfo
.
session
%
100
}
`
)
);
/**处理枚举值 */
/**处理枚举值 */
topInfo
.
memberLevel
=
changeEnumValue
(
MEMBERLEVEL
,
topInfo
.
memberLevel
);
topInfo
.
memberLevel
=
changeEnumValue
(
MEMBERLEVEL
,
topInfo
.
memberLevel
);
let
basicInfo
:
any
=
extractData
(
oldInfo
,
UnitBasicConfig
);
let
basicInfo
:
any
=
extractData
(
oldInfo
,
UnitBasicConfig
);
...
...
src/biz/member/memberFees.ts
View file @
7bafbdde
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
*/
*/
import
moment
=
require
(
"moment"
);
import
moment
=
require
(
"moment"
);
import
{
MEMBER
STATE
,
MEMBERTYPE
,
ORDEREXAMINE
,
ORDERSTATE
,
PAYMENTTYPE
,
RECEIPTCONFIRMATION
,
STATE
,
UNITMEMBERTYPE
,
USERREGISTERSTATE
}
from
"../../config/enum"
;
import
{
MEMBER
LEVEL
,
MEMBERSTATE
,
MEMBERTYPE
,
MEMBERTYPEECCENUM
,
ORDEREXAMINE
,
ORDERSTATE
,
PAYMENTTYPE
,
RECEIPTCONFIRMATION
,
STATE
,
UNITMEMBERTYPE
,
USERREGISTERSTATE
}
from
"../../config/enum"
;
import
{
TABLEENUM
}
from
"../../data/models/model"
;
import
{
TABLEENUM
}
from
"../../data/models/model"
;
import
{
find
,
findCount
,
findOnce
,
findToPage
,
findToSort
,
findToSortToPage
}
from
"../../data/select"
;
import
{
find
,
findCount
,
findOnce
,
findToPage
,
findToSort
,
findToSortToPage
}
from
"../../data/select"
;
import
{
extractData
}
from
"../../util/piecemeal"
;
import
{
extractData
}
from
"../../util/piecemeal"
;
...
@@ -20,23 +20,102 @@ import { addOneData } from "../../data/add";
...
@@ -20,23 +20,102 @@ import { addOneData } from "../../data/add";
* 导出会费管理表格
* 导出会费管理表格
* @param param0
* @param param0
*/
*/
export
async
function
outPutDataForExcel
({
type
,
files
})
{
export
async
function
outPutDataForExcel
({
type
,
exportColumns
})
{
const
NowMs
=
new
Date
().
valueOf
();
let
selectParam
:
any
=
{};
if
(
type
==
1
)
{
if
(
type
==
1
)
{
//未缴费名单
//未缴费
selectParam
=
{
"$or"
:[
{
isGracePeriod
:
STATE
.
否
,
lifespanEndTime
:{
"$lt"
:
NowMs
}
},
{
isGracePeriod
:
STATE
.
是
,
lifespanEndTime
:{
"$lt"
:
NowMs
},
gracePeriodEndTime
:{
"$lt"
:
NowMs
}
}
],
userRegisterState
:
USERREGISTERSTATE
.
通过
,
isAdmin
:
STATE
.
否
,
};
}
else
if
(
type
==
2
)
{
}
else
if
(
type
==
2
)
{
//已缴费名单
//已缴费名单
selectParam
.
lifespanEndTime
=
{
"$gt"
:
NowMs
+
(
90
*
24
*
3600
*
1000
)};
selectParam
.
isAdmin
=
STATE
.
否
;
selectParam
.
isGracePeriod
=
STATE
.
否
;
selectParam
.
userRegisterState
=
USERREGISTERSTATE
.
通过
;
}
else
if
(
type
==
3
)
{
}
else
if
(
type
==
3
)
{
//缴费期名单
//缴费期
selectParam
.
lifespanEndTime
=
{
"$lt"
:
NowMs
+
(
90
*
24
*
3600
*
1000
),
"$gt"
:
NowMs
};
selectParam
.
isAdmin
=
STATE
.
否
;
selectParam
.
isGracePeriod
=
STATE
.
否
;
selectParam
.
userRegisterState
=
USERREGISTERSTATE
.
通过
;
}
else
{
}
else
{
//宽限期名单
//宽限期名单
selectParam
.
isGracePeriod
=
STATE
.
是
;
selectParam
.
gracePeriodEndTime
=
{
"$gt"
:
NowMs
};
selectParam
.
isAdmin
=
STATE
.
否
;
selectParam
.
userRegisterState
=
USERREGISTERSTATE
.
通过
}
let
selectFiles
=
[
"userId"
];
let
titleList
=
[];
let
valueKeyList
=
[];
let
isSelectOrder
=
false
;
exportColumns
.
forEach
(
info
=>
{
let
{
key
,
value
}
=
info
;
valueKeyList
.
push
(
value
);
selectFiles
.
push
(
value
);
if
(
value
==
"name"
)
selectFiles
.
push
(
"unitName"
);
if
(
value
==
"Money"
||
value
==
"duration"
)
isSelectOrder
=
true
;
if
(
value
==
"code"
)
selectFiles
.
push
(
"documentId"
,
"uscc"
);
titleList
.
push
(
key
);
});
let
dbList
=
await
find
(
TABLEENUM
.
用户表
,
selectParam
,
selectFiles
);
let
dataList
=
[
titleList
];
for
(
let
i
=
0
;
i
<
dbList
.
length
;
i
++
)
{
let
info
=
dbList
[
i
];
let
subList
=
[];
let
orderItemList
=
[];
if
(
isSelectOrder
)
{
orderItemList
=
await
find
(
TABLEENUM
.
订单表
,
{
userId
:
info
.
userId
},
[
"orderCycleStart"
,
"money"
]);
}
valueKeyList
.
forEach
(
key
=>
{
let
item
;
if
(
key
==
"name"
)
{
item
=
info
.
name
||
info
.
unitName
;
}
else
if
(
key
==
"Money"
)
{
let
itemCount
=
0
;
orderItemList
.
forEach
(
orderItem
=>
{
itemCount
+=
orderItem
.
money
;
});
item
=
itemCount
;
}
else
if
(
key
==
"duration"
)
{
let
itemCount
=
''
;
orderItemList
.
forEach
(
orderItem
=>
{
itemCount
+=
`
${
new
Date
(
orderItem
.
orderCycleStart
).
getFullYear
()}
`
;
});
item
=
itemCount
;
}
else
if
(
key
==
"code"
)
{
item
=
info
.
documentId
||
info
.
uscc
;
}
else
{
item
=
info
[
key
];
}
if
(
key
==
"memberState"
)
item
=
changeEnumValue
(
MEMBERSTATE
,
item
);
if
(
key
==
"memberType"
)
item
=
changeEnumValue
(
MEMBERTYPE
,
item
);
if
(
key
==
"memberLevel"
)
item
=
changeEnumValue
(
MEMBERLEVEL
,
item
);
if
(
key
==
"joinTime"
)
item
=
moment
(
item
).
format
(
"YYYY-MM-DD"
);
subList
.
push
(
item
);
});
dataList
.
push
(
subList
);
}
}
return
{
dataList
:[[
"测试"
,
"测试2"
]]
};
return
{
dataList
};
}
}
...
@@ -90,18 +169,24 @@ export async function getPaid({name, memberType, documentId, phone, mail, joinSt
...
@@ -90,18 +169,24 @@ export async function getPaid({name, memberType, documentId, phone, mail, joinSt
if
(
memberLevel
.
length
)
selectParam
.
memberLevel
=
{
"$in"
:
memberLevel
};
if
(
memberLevel
.
length
)
selectParam
.
memberLevel
=
{
"$in"
:
memberLevel
};
const
SelectFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"name"
,
"loginId"
,
"phone"
,
"joinTime"
,
"memberType"
,
"lifespanStartTime"
,
"lifespanEndTime"
,
"memberLevel"
];
const
SelectFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"name"
,
"loginId"
,
"phone"
,
"joinTime"
,
"memberType"
,
"lifespanStartTime"
,
"lifespanEndTime"
,
"memberLevel"
];
let
dbList
=
await
findTo
Page
(
TABLEENUM
.
用户表
,
selectParam
,
SelectFiles
,
pageNumber
);
let
dbList
=
await
findTo
SortToPage
(
TABLEENUM
.
用户表
,
selectParam
,
SelectFiles
,
{
joinTime
:
-
1
}
,
pageNumber
);
let
dataCount
=
await
findCount
(
TABLEENUM
.
用户表
,
selectParam
);
let
dataCount
=
await
findCount
(
TABLEENUM
.
用户表
,
selectParam
);
let
dataList
=
[];
let
dataList
=
[];
const
itemFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"name"
,
"loginId"
,
"phone"
,
"joinTime"
,
"memberType"
];
const
itemFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"name"
,
"loginId"
,
"phone"
,
"joinTime"
,
"memberType"
,
"individualMemberType"
,
"unitMemberType"
];
dbList
.
forEach
(
info
=>
{
dbList
.
forEach
(
info
=>
{
let
item
:
any
=
extractData
(
info
,
itemFiles
);
let
item
:
any
=
extractData
(
info
,
itemFiles
);
item
.
lifespanTime
=
`
${
moment
(
info
.
lifespanStartTime
).
format
(
"YYYY-MM-DD"
)}
至
${
moment
(
info
.
lifespanEndTime
).
format
(
"YYYY-MM-DD"
)}
`
;
item
.
lifespanTime
=
`
${
moment
(
info
.
lifespanStartTime
).
format
(
"YYYY-MM-DD"
)}
至
${
moment
(
info
.
lifespanEndTime
).
format
(
"YYYY-MM-DD"
)}
`
;
item
.
nextLifespanTime
=
"大于90天"
;
item
.
nextLifespanTime
=
"大于90天"
;
item
.
joinTime
=
moment
(
item
.
joinTime
).
format
(
"YYYY-MM-DD"
);
item
.
joinTime
=
moment
(
item
.
joinTime
).
format
(
"YYYY-MM-DD"
);
item
.
memberState
=
changeEnumValue
(
MEMBERSTATE
,
item
.
memberState
);
item
.
memberState
=
changeEnumValue
(
MEMBERSTATE
,
item
.
memberState
);
item
.
memberType
=
changeEnumValue
(
MEMBERTYPE
,
item
.
memberType
);
if
(
item
.
individualMemberType
)
{
item
.
memberType
=
changeEnumValue
(
MEMBERTYPEECCENUM
,
info
.
individualMemberType
);
}
if
(
item
.
unitMemberType
)
{
item
.
memberType
=
changeEnumValue
(
MEMBERTYPEECCENUM
,
info
.
unitMemberType
);
}
// item.memberType = changeEnumValue(MEMBERTYPE, item.memberType);
dataList
.
push
(
item
);
dataList
.
push
(
item
);
});
});
...
@@ -190,7 +275,7 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi
...
@@ -190,7 +275,7 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi
let
dataCount
=
await
findCount
(
TABLEENUM
.
用户表
,
selectParam
);
let
dataCount
=
await
findCount
(
TABLEENUM
.
用户表
,
selectParam
);
let
dataList
=
[];
let
dataList
=
[];
const
itemFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"loginId"
,
"phone"
,
"joinTime"
,
"
m
emberType"
];
const
itemFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"loginId"
,
"phone"
,
"joinTime"
,
"
individualMemberType"
,
"unitM
emberType"
];
dbList
.
forEach
(
info
=>
{
dbList
.
forEach
(
info
=>
{
let
item
:
any
=
extractData
(
info
,
itemFiles
);
let
item
:
any
=
extractData
(
info
,
itemFiles
);
item
.
lifespanTime
=
`
${
moment
(
info
.
lifespanStartTime
).
format
(
"YYYY-MM-DD"
)}
至
${
moment
(
info
.
lifespanEndTime
).
format
(
"YYYY-MM-DD"
)}
`
;
item
.
lifespanTime
=
`
${
moment
(
info
.
lifespanStartTime
).
format
(
"YYYY-MM-DD"
)}
至
${
moment
(
info
.
lifespanEndTime
).
format
(
"YYYY-MM-DD"
)}
`
;
...
@@ -199,7 +284,13 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi
...
@@ -199,7 +284,13 @@ export async function unpaidList({name, memberType, documentId, phone, mail, joi
if
(
info
.
lifespanEndTime
<
(
NowMs
+
(
30
*
24
*
3600
*
1000
)
)
)
item
.
nextLifespanTime
=
"不足30天"
;
if
(
info
.
lifespanEndTime
<
(
NowMs
+
(
30
*
24
*
3600
*
1000
)
)
)
item
.
nextLifespanTime
=
"不足30天"
;
item
.
memberState
=
changeEnumValue
(
MEMBERSTATE
,
item
.
memberState
);
item
.
memberState
=
changeEnumValue
(
MEMBERSTATE
,
item
.
memberState
);
item
.
memberType
=
changeEnumValue
(
MEMBERTYPE
,
item
.
memberType
);
if
(
item
.
individualMemberType
)
{
item
.
memberType
=
changeEnumValue
(
MEMBERTYPEECCENUM
,
info
.
individualMemberType
);
}
if
(
item
.
unitMemberType
)
{
item
.
memberType
=
changeEnumValue
(
MEMBERTYPEECCENUM
,
info
.
unitMemberType
);
}
// item.memberType = changeEnumValue(MEMBERTYPE, item.memberType);
dataList
.
push
(
item
);
dataList
.
push
(
item
);
});
});
...
@@ -273,7 +364,7 @@ export async function getRenewalPeriod({name, memberType, documentId, phone, mai
...
@@ -273,7 +364,7 @@ export async function getRenewalPeriod({name, memberType, documentId, phone, mai
let
dataCount
=
await
findCount
(
TABLEENUM
.
用户表
,
selectParam
);
let
dataCount
=
await
findCount
(
TABLEENUM
.
用户表
,
selectParam
);
let
dataList
=
[];
let
dataList
=
[];
const
itemFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"loginId"
,
"phone"
,
"joinTime"
,
"
memberType"
,
"nam
e"
];
const
itemFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"loginId"
,
"phone"
,
"joinTime"
,
"
name"
,
"individualMemberType"
,
"unitMemberTyp
e"
];
dbList
.
forEach
(
info
=>
{
dbList
.
forEach
(
info
=>
{
let
item
:
any
=
extractData
(
info
,
itemFiles
);
let
item
:
any
=
extractData
(
info
,
itemFiles
);
item
.
lifespanTime
=
`
${
moment
(
info
.
lifespanEndTime
).
format
(
"YYYY-MM-DD"
)}
`
;
item
.
lifespanTime
=
`
${
moment
(
info
.
lifespanEndTime
).
format
(
"YYYY-MM-DD"
)}
`
;
...
@@ -284,7 +375,13 @@ export async function getRenewalPeriod({name, memberType, documentId, phone, mai
...
@@ -284,7 +375,13 @@ export async function getRenewalPeriod({name, memberType, documentId, phone, mai
item
.
joinTime
=
moment
(
item
.
joinTime
).
format
(
"YYYY-MM-DD"
);
item
.
joinTime
=
moment
(
item
.
joinTime
).
format
(
"YYYY-MM-DD"
);
item
.
memberState
=
changeEnumValue
(
MEMBERSTATE
,
item
.
memberState
);
item
.
memberState
=
changeEnumValue
(
MEMBERSTATE
,
item
.
memberState
);
item
.
memberType
=
changeEnumValue
(
MEMBERTYPE
,
item
.
memberType
);
if
(
item
.
individualMemberType
)
{
item
.
memberType
=
changeEnumValue
(
MEMBERTYPEECCENUM
,
info
.
individualMemberType
);
}
if
(
item
.
unitMemberType
)
{
item
.
memberType
=
changeEnumValue
(
MEMBERTYPEECCENUM
,
info
.
unitMemberType
);
}
// item.memberType = changeEnumValue(MEMBERTYPE, item.memberType);
dataList
.
push
(
item
);
dataList
.
push
(
item
);
});
});
...
@@ -416,7 +513,7 @@ export async function getGracePeriod({name, memberType, documentId, phone, mail,
...
@@ -416,7 +513,7 @@ export async function getGracePeriod({name, memberType, documentId, phone, mail,
if
(
mail
)
selectParam
.
mail
=
mail
;
if
(
mail
)
selectParam
.
mail
=
mail
;
if
(
memberLevel
.
length
)
selectParam
.
memberLevel
=
{
"$in"
:
memberLevel
};
if
(
memberLevel
.
length
)
selectParam
.
memberLevel
=
{
"$in"
:
memberLevel
};
const
SelectFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"loginId"
,
"phone"
,
"joinTime"
,
"memberType"
,
"joinTime"
,
"lifespanEndTime"
];
const
SelectFiles
=
[
"userId"
,
"memberState"
,
"unitName"
,
"loginId"
,
"phone"
,
"joinTime"
,
"memberType"
,
"joinTime"
,
"lifespanEndTime"
,
"individualMemberType"
,
"unitMemberType"
];
let
dbList
=
await
findToPage
(
TABLEENUM
.
用户表
,
selectParam
,
SelectFiles
,
pageNumber
,
10
);
let
dbList
=
await
findToPage
(
TABLEENUM
.
用户表
,
selectParam
,
SelectFiles
,
pageNumber
,
10
);
let
dataCount
=
await
findCount
(
TABLEENUM
.
用户表
,
selectParam
);
let
dataCount
=
await
findCount
(
TABLEENUM
.
用户表
,
selectParam
);
...
@@ -432,9 +529,16 @@ export async function getGracePeriod({name, memberType, documentId, phone, mail,
...
@@ -432,9 +529,16 @@ export async function getGracePeriod({name, memberType, documentId, phone, mail,
joinTime
:
`
${
moment
(
info
.
joinTime
).
format
(
"YYYY-MM-DD"
)}
`
,
joinTime
:
`
${
moment
(
info
.
joinTime
).
format
(
"YYYY-MM-DD"
)}
`
,
lifespanTime
:
`
${
moment
(
info
.
lifespanEndTime
).
format
(
"YYYY-MM-DD"
)}
`
,
lifespanTime
:
`
${
moment
(
info
.
lifespanEndTime
).
format
(
"YYYY-MM-DD"
)}
`
,
nextLifespanTime
:
"宽限期中"
,
nextLifespanTime
:
"宽限期中"
,
memberType
:
changeEnumValue
(
MEMBERTYPE
,
info
.
memberType
)
//
memberType:changeEnumValue(MEMBERTYPE, info.memberType)
};
};
if
(
info
.
individualMemberType
)
{
info
.
memberType
=
changeEnumValue
(
MEMBERTYPEECCENUM
,
info
.
individualMemberType
);
}
if
(
info
.
unitMemberType
)
{
info
.
memberType
=
changeEnumValue
(
MEMBERTYPEECCENUM
,
info
.
unitMemberType
);
}
dataList
.
push
(
dataInfo
);
dataList
.
push
(
dataInfo
);
});
});
...
...
src/config/outPutConfig.ts
View file @
7bafbdde
...
@@ -153,6 +153,8 @@ export enum REFUNDCOLUMNS {
...
@@ -153,6 +153,8 @@ export enum REFUNDCOLUMNS {
export
enum
MEMBERFEESDCOLUMNS
{
export
enum
MEMBERFEESDCOLUMNS
{
状态
=
"memberState"
,
状态
=
"memberState"
,
会员类别
=
"memberType"
,
会员类别
=
"memberType"
,
注册手机号
=
"phone"
,
"单位代码/身份证"
=
"code"
,
"单位/个人名称"
=
"name"
,
"单位/个人名称"
=
"name"
,
会员职务
=
"memberLevel"
,
会员职务
=
"memberLevel"
,
入会时间
=
"joinTime"
,
入会时间
=
"joinTime"
,
...
...
src/main.ts
View file @
7bafbdde
...
@@ -22,7 +22,7 @@ async function lanuch() {
...
@@ -22,7 +22,7 @@ async function lanuch() {
// await initAdmin();
// await initAdmin();
await
initSystemTask
();
await
initSystemTask
();
await
initActivity
();
await
initActivity
();
//
await initSaveUnsubmitted();
await
initSaveUnsubmitted
();
// await test1();
// await test1();
// await inputData(); 20240520日导入数据
// await inputData(); 20240520日导入数据
...
...
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