Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
haoban-manage3.0
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
haoban3.0
haoban-manage3.0
Commits
5168c08d
Commit
5168c08d
authored
Mar 31, 2025
by
徐高华
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
引流链接导出
parent
8a11d2c1
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
241 additions
and
1 deletions
+241
-1
MaterialController.java
.../gic/haoban/manage/web/controller/MaterialController.java
+1
-1
HmLinkController.java
...gic/haoban/manage/web/controller/hm/HmLinkController.java
+68
-0
LinkDataExcelHandler.java
...haoban/manage/web/controller/hm/LinkDataExcelHandler.java
+75
-0
LinkDataExcelVO.java
...java/com/gic/haoban/manage/web/vo/hm/LinkDataExcelVO.java
+97
-0
No files found.
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/controller/MaterialController.java
View file @
5168c08d
...
...
@@ -62,7 +62,7 @@ public class MaterialController extends WebBaseController {
* @return
*/
@RequestMapping
(
"/mateial-sort-category"
)
public
HaobanResponse
materialSortCategory
(
MaterialCategorySortQDTO
qdto
)
{
public
HaobanResponse
materialSortCategory
(
@RequestBody
MaterialCategorySortQDTO
qdto
)
{
WebLoginDTO
login
=
AuthWebRequestUtil
.
getLoginUser
();
String
wxEnterpriseId
=
login
.
getWxEnterpriseId
();
qdto
.
setWxEnterpriseId
(
wxEnterpriseId
);
...
...
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/controller/hm/HmLinkController.java
View file @
5168c08d
...
...
@@ -9,7 +9,14 @@ import java.util.List;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
cn.hutool.core.date.DatePattern
;
import
com.alibaba.fastjson.JSON
;
import
com.gic.api.base.commons.JSONResponse
;
import
com.gic.clerk.api.dto.AuthorizedUser
;
import
com.gic.qcloud.BucketNameEnum
;
import
com.gic.web.common.download.DownloadTask
;
import
com.gic.web.common.download.DownloadTaskUtil
;
import
com.gic.web.common.download.constants.TaskTypeEnum
;
import
com.gic.web.common.utils.DataApiUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
...
...
@@ -93,6 +100,8 @@ public class HmLinkController {
private
HmQrcodeApiService
hmQrcodeApiService
;
@Autowired
private
GroupChatHmApiService
groupChatHmApiService
;
@Autowired
private
LinkDataExcelHandler
linkDataExcelHandler
;
@RequestMapping
(
"add"
)
@GicLogRecord
(
value
=
"${#logValue}"
,
category
=
GicLogRecordCategoryEnum
.
HUOMA
,
optType
=
GicLogRecordOptTypeEnum
.
HM_LINK_ADD
,
userFunc
=
LogRecordUserServiceImpl
.
class
,
optPage
=
"引流加人-新建链接"
)
...
...
@@ -860,6 +869,65 @@ public class HmLinkController {
return
RestResponse
.
successResult
(
DataApiUtils
.
getPageData
(
res
));
}
@RequestMapping
(
"statistics/clerk/excel"
)
public
RestResponse
<
String
>
statisticsClerkExcel
(
@RequestBody
HmLinkClerkListQO
qo
)
{
qo
.
setPageNo
(
1
);
qo
.
setPageSize
(
1
);
WebLoginDTO
loginUser
=
AuthWebRequestUtil
.
getLoginUser
();
qo
.
getInFields
().
setEnterpriseId
(
loginUser
.
getEnterpriseId
());
JSONObject
paramJson
=
(
JSONObject
)
JSON
.
toJSON
(
qo
.
getInFields
());
DataApiUtils
.
dealParamJson
(
paramJson
,
"linkSelect1"
,
"vagueQueryStore"
);
DataApiUtils
.
dealParamJson
(
paramJson
,
"linkSelect2"
,
"vagueQueryClerk"
);
DataApiUtils
.
dealParamJson
(
paramJson
,
"startTime"
,
"startDate"
);
DataApiUtils
.
dealParamJson
(
paramJson
,
"endTime"
,
"endDate"
);
Map
<
String
,
Integer
>
orderByFieldMap
=
new
HashMap
<
String
,
Integer
>(
8
){{
put
(
"addNumT"
,
8
);
put
(
"addNum"
,
9
);
}};
paramJson
.
put
(
"orderByType"
,
DataApiUtils
.
getOrderByType
(
qo
.
getInFields
().
getOrderByField
()));
paramJson
.
put
(
"orderByFields"
,
DataApiUtils
.
getOrderByFields
(
qo
.
getInFields
().
getOrderByField
(),
"addNum"
,
orderByFieldMap
));
Map
<
String
,
Object
>
res
=
DataApiUtils
.
http
(
paramJson
.
toJSONString
(),
StatisticsApolloKeyConstant
.
data_haoban_link_detail
);
Page
page
=
DataApiUtils
.
getPageData
(
res
)
;
final
int
totalCount
=
page
.
getTotalCount
()
;
if
(
totalCount
==
0
)
{
return
RestResponse
.
failure
(
"9999"
,
"导出数据条数为0"
);
}
Long
linkId
=
qo
.
getInFields
().
getLinkId
()
;
ServiceResponse
<
HmLinkDTO
>
linkResp
=
this
.
hmLinkApiService
.
getByLinkId
(
loginUser
.
getWxEnterpriseId
(),
loginUser
.
getEnterpriseId
(),
linkId
);
if
(!
linkResp
.
isSuccess
())
{
return
RestResponse
.
failure
(
"1"
,
"链接不存在"
);
}
AuthorizedUser
user
=
new
AuthorizedUser
();
user
.
setUserId
(
loginUser
.
getClerkId
());
user
.
setEnterpriseId
(
loginUser
.
getEnterpriseId
());
user
.
setRealName
(
loginUser
.
getClerkName
());
String
fileName
=
"引流加人数据-"
+
linkResp
.
getResult
().
getName
()
;
String
startDate
=
qo
.
getInFields
().
getStartTime
()
;
String
endDate
=
qo
.
getInFields
().
getEndTime
()
;
if
(
null
!=
startDate
&&
null
!=
endDate
)
{
fileName
=
fileName
+
"-"
+
startDate
+
"到"
+
endDate
;
}
DownloadTask
task
=
new
DownloadTask
();
task
.
setTaskTypeEnum
(
TaskTypeEnum
.
QYWX_HM_LINK_DATA
);
task
.
setUser
(
user
);
task
.
setDataType
(
1
);
task
.
setTotalCount
(
totalCount
);
task
.
setFileName
(
fileName
);
task
.
setChannelName
(
TaskTypeEnum
.
QYWX_HM_LINK_DATA
.
getName
());
task
.
setBucketName
(
BucketNameEnum
.
REPORT_50000
.
getName
());
task
.
setSearchDataParams
(
JSON
.
toJSONStringWithDateFormat
(
qo
,
DatePattern
.
NORM_DATETIME_PATTERN
));
task
.
setHandler
(
linkDataExcelHandler
);
JSONResponse
jsonResponse
=
DownloadTaskUtil
.
createDownloadTask
(
task
);
final
String
reportId
;
if
(
jsonResponse
.
isSuccess
())
{
reportId
=
(
String
)
jsonResponse
.
getResult
();
}
else
{
return
RestResponse
.
failure
(
"9999"
,
jsonResponse
.
getErrorMessage
());
}
return
RestResponse
.
successResult
(
reportId
);
}
/**
* com.gic.haoban.manage.web.controller.hm.HmQrcodeController.wxUserAddLogList 一样
*/
...
...
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/controller/hm/LinkDataExcelHandler.java
0 → 100644
View file @
5168c08d
package
com
.
gic
.
haoban
.
manage
.
web
.
controller
.
hm
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.api.base.commons.Page
;
import
com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO
;
import
com.gic.haoban.common.utils.AuthWebRequestUtil
;
import
com.gic.haoban.manage.api.constants.StatisticsApolloKeyConstant
;
import
com.gic.haoban.manage.web.qo.hm.data.HmLinkClerkListQO
;
import
com.gic.haoban.manage.web.vo.hm.LinkDataExcelVO
;
import
com.gic.web.common.download.DownloadHandlerAbstract
;
import
com.gic.web.common.download.context.Context
;
import
com.gic.web.common.utils.DataApiUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
java.util.*
;
public
class
LinkDataExcelHandler
extends
DownloadHandlerAbstract
<
LinkDataExcelVO
>
{
@Override
public
List
<
LinkDataExcelVO
>
getData
(
Context
context
,
String
json
,
Integer
currentPage
)
{
HmLinkClerkListQO
qo
=
JSON
.
parseObject
(
json
,
HmLinkClerkListQO
.
class
);
qo
.
setPageSize
(
this
.
getPageSize
());
qo
.
setPageNo
(
currentPage
);
WebLoginDTO
loginUser
=
AuthWebRequestUtil
.
getLoginUser
();
qo
.
getInFields
().
setEnterpriseId
(
loginUser
.
getEnterpriseId
());
JSONObject
paramJson
=
(
JSONObject
)
JSON
.
toJSON
(
qo
.
getInFields
());
DataApiUtils
.
dealParamJson
(
paramJson
,
"linkSelect1"
,
"vagueQueryStore"
);
DataApiUtils
.
dealParamJson
(
paramJson
,
"linkSelect2"
,
"vagueQueryClerk"
);
DataApiUtils
.
dealParamJson
(
paramJson
,
"startTime"
,
"startDate"
);
DataApiUtils
.
dealParamJson
(
paramJson
,
"endTime"
,
"endDate"
);
Map
<
String
,
Integer
>
orderByFieldMap
=
new
HashMap
<
String
,
Integer
>(
8
){{
put
(
"addNumT"
,
8
);
put
(
"addNum"
,
9
);
}};
paramJson
.
put
(
"orderByType"
,
DataApiUtils
.
getOrderByType
(
qo
.
getInFields
().
getOrderByField
()));
paramJson
.
put
(
"orderByFields"
,
DataApiUtils
.
getOrderByFields
(
qo
.
getInFields
().
getOrderByField
(),
"addNum"
,
orderByFieldMap
));
Map
<
String
,
Object
>
res
=
DataApiUtils
.
http
(
paramJson
.
toJSONString
(),
StatisticsApolloKeyConstant
.
data_haoban_link_detail
);
Page
<
JSONObject
>
page
=
DataApiUtils
.
getPageData
(
res
)
;
List
<
LinkDataExcelVO
>
voList
=
new
ArrayList
<>();
if
(
null
!=
page
&&
CollectionUtils
.
isNotEmpty
(
page
.
getResult
()))
{
for
(
JSONObject
jsonObject
:
page
.
getResult
())
{
LinkDataExcelVO
vo
=
JSONObject
.
parseObject
(
jsonObject
.
toJSONString
(),
LinkDataExcelVO
.
class
)
;
voList
.
add
(
vo
)
;
}
}
return
voList
;
}
@Override
public
List
<
String
>
getColumnNames
()
{
return
Arrays
.
asList
();
}
@Override
public
List
<
String
>
getColumnNames
(
Context
context
)
{
return
Arrays
.
asList
(
"导购名称"
,
"导购code"
,
"门店名称"
,
"门店code"
,
"新增总人数"
,
"今日新增人数"
,
"今日已达上限"
);
}
@Override
public
List
<
String
>
getColumns
(
Context
context
)
{
return
Arrays
.
asList
(
"clerkName"
,
"clerkCode"
,
"storeName"
,
"storeCode"
,
"addNumT"
,
"addNum"
,
"overFlag"
);
}
@Override
public
LinkedHashMap
<
String
,
List
<
String
>>
doubleColumnNames
()
{
return
null
;
}
@Override
public
List
<
String
>
getColumns
()
{
return
Arrays
.
asList
();
}
}
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/vo/hm/LinkDataExcelVO.java
0 → 100644
View file @
5168c08d
package
com
.
gic
.
haoban
.
manage
.
web
.
vo
.
hm
;
import
java.io.Serializable
;
public
class
LinkDataExcelVO
implements
Serializable
{
private
Integer
addNum
;
private
Integer
addNumT
;
private
String
clerkCode
;
private
String
clerkId
;
private
String
clerkName
;
private
String
enterpriseId
;
private
Long
linkId
;
private
String
overFlag
;
private
String
storeCode
;
private
String
storeName
;
public
Integer
getAddNum
()
{
return
addNum
;
}
public
void
setAddNum
(
Integer
addNum
)
{
this
.
addNum
=
addNum
;
}
public
Integer
getAddNumT
()
{
return
addNumT
;
}
public
void
setAddNumT
(
Integer
addNumT
)
{
this
.
addNumT
=
addNumT
;
}
public
String
getClerkCode
()
{
return
clerkCode
;
}
public
void
setClerkCode
(
String
clerkCode
)
{
this
.
clerkCode
=
clerkCode
;
}
public
String
getClerkId
()
{
return
clerkId
;
}
public
void
setClerkId
(
String
clerkId
)
{
this
.
clerkId
=
clerkId
;
}
public
String
getClerkName
()
{
return
clerkName
;
}
public
void
setClerkName
(
String
clerkName
)
{
this
.
clerkName
=
clerkName
;
}
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
public
void
setEnterpriseId
(
String
enterpriseId
)
{
this
.
enterpriseId
=
enterpriseId
;
}
public
Long
getLinkId
()
{
return
linkId
;
}
public
void
setLinkId
(
Long
linkId
)
{
this
.
linkId
=
linkId
;
}
public
String
getOverFlag
()
{
return
overFlag
;
}
public
void
setOverFlag
(
String
overFlag
)
{
this
.
overFlag
=
overFlag
;
}
public
String
getStoreCode
()
{
return
storeCode
;
}
public
void
setStoreCode
(
String
storeCode
)
{
this
.
storeCode
=
storeCode
;
}
public
String
getStoreName
()
{
return
storeName
;
}
public
void
setStoreName
(
String
storeName
)
{
this
.
storeName
=
storeName
;
}
}
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