Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Z
zjxcxServer
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
zjxcxServer
Commits
4230f8ba
Commit
4230f8ba
authored
Mar 27, 2023
by
lixinming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
2.1 小程序端排行榜
parent
381f01fe
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
123 additions
and
3 deletions
+123
-3
score.ts
src/biz/mobileFuHuaQi/fuHuaQi/score.ts
+103
-2
scoreLog.ts
src/data/fuHuaQi/scoreLog.ts
+1
-1
fuHuaQi.ts
src/routers/mobileClient/fuHuaQi.ts
+19
-0
No files found.
src/biz/mobileFuHuaQi/fuHuaQi/score.ts
View file @
4230f8ba
...
...
@@ -2,12 +2,14 @@
* 分数
*/
import
{
CHANGEMODE
,
SCOREWAYS
}
from
"../../../config/enum"
;
import
moment
=
require
(
"moment"
);
import
{
CHANGEMODE
,
SCOREWAYS
,
TASKTYPEENUM
}
from
"../../../config/enum"
;
import
{
FuHuaQiMyDataScoreConfig
,
ScoreConfig
,
FuHuaQiBaseDataScoreConfig
,
EnterpriseScoreConfig
,
StarConfig
}
from
"../../../config/scoreConfig"
;
import
{
findEnterpriseList
}
from
"../../../data/enterprise/enterprise"
;
import
{
findFuHuaQiByUSCC
}
from
"../../../data/fuHuaQi/fuhuaqi"
;
import
{
find
AllFuHuaQiOperationNameMap
,
find
FuHuaQiByUSCC
}
from
"../../../data/fuHuaQi/fuhuaqi"
;
import
*
as
scoreData
from
"../../../data/fuHuaQi/score"
;
import
*
as
scoreLogData
from
"../../../data/fuHuaQi/scoreLog"
;
import
{
changeEnumValue
}
from
"../../../util/verificationEnum"
;
/**
...
...
@@ -177,3 +179,101 @@ async function myEnterpriseScoreCount(uscc:string) {
if
(
!
valueCount
)
return
ScoreConfig
[
"企业基础数据"
];
return
ScoreConfig
[
"企业基础数据"
]
*
(
isValueCount
/
valueCount
);
}
/**
* 分值明细
* @param uscc 孵化器统一信用代码
* @param year 年度时间戳
*/
export
async
function
fuHuaQiScoreLog
(
uscc
:
string
,
year
:
number
)
{
let
startTime
=
year
;
let
endTimeStr
=
`
${
new
Date
(
startTime
).
getFullYear
()}
-12-31 23:59:59`
;
let
endTime
=
new
Date
(
endTimeStr
).
valueOf
();
let
logList
=
await
scoreLogData
.
getLog
(
uscc
,
startTime
,
endTime
);
logList
.
sort
(
(
a
,
b
)
=>
{
return
a
.
timeMs
-
b
.
timeMs
});
let
distinctMap
=
{};
logList
.
forEach
(
info
=>
{
let
timeKey
=
moment
(
info
.
timeMs
).
format
(
"YYYY-MM"
);
if
(
!
distinctMap
[
timeKey
]
)
distinctMap
[
timeKey
]
=
[];
let
itemWaysStr
=
waysStr
(
info
.
ways
,
info
.
taskType
,
info
.
changeMode
);
itemWaysStr
+=
`
${
Math
.
ceil
(
info
.
addScore
)}
分`
;
distinctMap
[
timeKey
].
push
({
score
:
Math
.
ceil
(
info
.
score
),
waysStr
:
itemWaysStr
,
timeMs
:
info
.
timeMs
});
});
let
dataList
=
[];
for
(
let
key
in
distinctMap
)
{
let
count
=
distinctMap
[
key
].
length
;
dataList
.
push
({
key
,
count
,
list
:
distinctMap
[
key
]
});
}
return
{
dataList
};
}
function
waysStr
(
ways
:
number
,
type
:
number
,
changeMode
)
{
let
str
=
""
;
if
(
ways
==
SCOREWAYS
.
任务得分
)
{
if
(
CHANGEMODE
.
增加
==
changeMode
)
{
str
=
"完成"
;
}
else
{
str
=
"未提交"
;
}
if
(
type
==
TASKTYPEENUM
.
孵化器月度填报
)
str
+=
"月度填报"
;
else
if
(
type
==
TASKTYPEENUM
.
新注册或迁入企业登记
)
str
+=
"企业录入填报"
;
else
str
+=
"融资企业填报"
;
}
if
(
ways
==
SCOREWAYS
.
我的企业数据
)
{
str
+=
"我的信息更新"
}
if
(
ways
==
SCOREWAYS
.
我的企业数据
)
{
str
+=
"我的企业更新"
}
if
(
ways
==
SCOREWAYS
.
我的数据
)
{
str
+=
"我的数据更新"
}
if
(
CHANGEMODE
.
增加
==
changeMode
)
str
+=
" 上涨"
;
else
str
+=
" 下降"
;
return
str
;
}
/**
* 排行榜
* @param uscc 孵化器统一信用代码
*/
export
async
function
rankList
(
uscc
:
string
)
{
let
dataList
=
await
scoreData
.
findScoreDataByParam
({});
let
nameMap
=
await
findAllFuHuaQiOperationNameMap
();
let
rankList
=
[];
dataList
.
forEach
(
info
=>
{
rankList
.
push
({
name
:
nameMap
[
info
.
uscc
],
score
:
Math
.
ceil
(
info
.
startScore
+
info
.
myDataScore
+
info
.
baseDataScore
+
info
.
myEnterpriseScore
+
info
.
taskScore
)
})
});
rankList
.
sort
(
(
a
,
b
)
=>
{
return
b
.
score
-
a
.
score
});
let
thisName
=
nameMap
[
uscc
];
let
thisFuHuaQiIndex
=
-
1
;
rankList
.
forEach
((
info
,
index
)
=>
{
if
(
info
.
name
==
thisName
)
thisFuHuaQiIndex
=
index
;
});
return
{
rankList
,
thisFuHuaQiIndex
};
}
\ No newline at end of file
src/data/fuHuaQi/scoreLog.ts
View file @
4230f8ba
...
...
@@ -55,7 +55,7 @@ export async function addMany(addList) {
*
*/
export
async
function
getLog
(
uscc
:
string
,
startTime
:
number
,
endTime
:
number
)
{
// await fuHuaQiScoreModel.create({uscc, score, addScore, timeMs:new Date().valueOf()
});
return
await
fuHuaQiScoreLogModel
.
find
({
uscc
,
timeMs
:{
"$gt"
:
startTime
,
"$lt"
:
endTime
}
});
}
...
...
src/routers/mobileClient/fuHuaQi.ts
View file @
4230f8ba
...
...
@@ -24,6 +24,9 @@ export function setRouter(httpServer) {
httpServer
.
post
(
'/fuhuaqi/task/submit'
,
checkFuHuaQiToken
,
asyncHandler
(
submitTask
));
//提交待办任务
httpServer
.
post
(
'/fuhuaqi/task/completedlist'
,
checkFuHuaQiToken
,
asyncHandler
(
completedList
));
//已办任务
httpServer
.
post
(
'/fuhuaqi/task/pastduelist'
,
checkFuHuaQiToken
,
asyncHandler
(
pastDueList
));
//已办任务
/**分数 */
httpServer
.
post
(
'/fuhuaqi/score/ranklist'
,
checkFuHuaQiToken
,
asyncHandler
(
scoreRankList
));
httpServer
.
post
(
'/fuhuaqi/score/log'
,
checkFuHuaQiToken
,
asyncHandler
(
scoreLog
));
}
...
...
@@ -169,4 +172,19 @@ async function pastDueList(req, res) {
let
result
=
await
taskBiz
.
fuHuaQiPastdueList
(
Uscc
,
selectTime
);
res
.
success
(
result
);
}
async
function
scoreLog
(
req
,
res
)
{
const
Uscc
=
req
.
headers
.
uscc
;
let
reqConf
=
{
year
:
'Number'
};
let
{
year
}
=
eccReqParamater
(
reqConf
,
req
.
body
);
let
result
=
await
scoreBiz
.
fuHuaQiScoreLog
(
Uscc
,
year
);
res
.
success
(
result
);
}
async
function
scoreRankList
(
req
,
res
)
{
const
Uscc
=
req
.
headers
.
uscc
;
let
result
=
await
scoreBiz
.
rankList
(
Uscc
);
res
.
success
(
result
);
}
\ No newline at end of file
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