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
6efd94ee
Commit
6efd94ee
authored
Mar 27, 2023
by
songyinghui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 好办数据统计
parent
758cb5ce
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
225 additions
and
56 deletions
+225
-56
MaterialDataStaticsController.java
...web/controller/content/MaterialDataStaticsController.java
+51
-13
MaterialDataAdaptor.java
...e/web/controller/content/adaptor/MaterialDataAdaptor.java
+118
-17
MaterialAnalyzeDataQO.java
...nage/web/qo/content/statistics/MaterialAnalyzeDataQO.java
+4
-25
MaterialStatisticsBaseQO.java
...e/web/qo/content/statistics/MaterialStatisticsBaseQO.java
+7
-1
MaterialTodayDataBO.java
...age/web/vo/content/statistics/bo/MaterialTodayDataBO.java
+45
-0
No files found.
haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/controller/content/MaterialDataStaticsController.java
View file @
6efd94ee
...
...
@@ -19,16 +19,18 @@ import com.gic.haoban.manage.web.vo.content.statistics.MaterialDataOverviewVO;
import
com.gic.haoban.manage.web.vo.content.statistics.MaterialIndexDataVO
;
import
com.gic.haoban.manage.web.vo.content.statistics.MaterialRealDataVO
;
import
com.gic.haoban.manage.web.vo.content.statistics.MaterialStoreUsedDataVO
;
import
com.gic.haoban.manage.web.vo.content.statistics.bo.MaterialTodayDataBO
;
import
com.gic.haoban.manage.web.vo.content.statistics.report.MaterialPersonalUsedDataVO
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.math.BigDecimal
;
import
java.util.
Collections
;
import
java.util.
ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Optional
;
...
...
@@ -60,12 +62,14 @@ public class MaterialDataStaticsController {
search
.
setEnterpriseId
(
contentMaterialBaseQO
.
getEnterpriseId
());
search
.
setPublishBeginStartTime
(
DateUtil
.
beginOfDay
(
new
Date
()));
search
.
setPublishBeginEndTime
(
DateUtil
.
endOfDay
(
new
Date
()));
List
<
String
>
storeIds
=
new
ArrayList
<>();
if
(
StringUtils
.
isBlank
(
contentMaterialBaseQO
.
getStoreId
()))
{
// 区经 获取管辖的权限
List
<
String
>
storeIds
=
this
.
clerkStoreAdaptor
.
queryClerkStoreIds
(
contentMaterialBaseQO
.
getClerkId
(),
contentMaterialBaseQO
.
getWxEnterpriseId
());
storeIds
=
this
.
clerkStoreAdaptor
.
queryClerkStoreIds
(
contentMaterialBaseQO
.
getClerkId
(),
contentMaterialBaseQO
.
getWxEnterpriseId
());
search
.
setStoreIdList
(
storeIds
);
}
else
{
search
.
setStoreIdList
(
Collections
.
singletonList
(
contentMaterialBaseQO
.
getStoreId
()));
storeIds
.
add
(
contentMaterialBaseQO
.
getStoreId
());
search
.
setStoreIdList
(
storeIds
);
}
BasePageInfo
pageInfo
=
new
BasePageInfo
();
pageInfo
.
setPageNum
(
1
);
...
...
@@ -76,17 +80,16 @@ public class MaterialDataStaticsController {
totalMaterialNum
=
serviceResponse
.
getResult
().
getTotalCount
();
}
int
totalManagerStoreNum
=
0
;
List
<
String
>
storeIds
=
clerkStoreAdaptor
.
queryClerkStoreIds
(
contentMaterialBaseQO
.
getClerkId
(),
contentMaterialBaseQO
.
getWxEnterpriseId
());
MaterialIndexDataVO
temp
=
materialDataAdaptor
.
queryMaterialIndexData
(
contentMaterialBaseQO
.
getEnterpriseId
(),
storeIds
);
MaterialTodayDataBO
temp
=
materialDataAdaptor
.
queryMaterialTodayData
(
contentMaterialBaseQO
.
getEnterpriseId
(),
storeIds
);
if
(
CollectionUtils
.
isEmpty
(
storeIds
))
{
// 超管
totalMaterialNum
=
clerkStoreAdaptor
.
countAdminManagerStore
(
contentMaterialBaseQO
.
getClerkId
(),
contentMaterialBaseQO
.
getWxEnterpriseId
());
}
MaterialIndexDataVO
indexDataVO
=
MaterialIndexDataVO
.
builder
()
.
newMaterialNum
(
totalMaterialNum
)
.
useMaterialClerkNum
(
temp
.
getUseMat
eria
lClerkNum
())
.
unUseMaterialClerkNum
(
temp
.
get
UnUseMaterialClerk
Num
())
.
conversionAmount
(
Optional
.
ofNullable
(
temp
.
getConv
ersionAmoun
t
()).
orElse
(
BigDecimal
.
ZERO
))
.
useMaterialClerkNum
(
temp
.
getUseMatlClerkNum
())
.
unUseMaterialClerkNum
(
temp
.
get
ClickUser
Num
())
.
conversionAmount
(
Optional
.
ofNullable
(
temp
.
getConv
SalesAm
t
()).
orElse
(
BigDecimal
.
ZERO
))
.
storeManagerNum
(
totalManagerStoreNum
)
.
build
();
return
RestResponse
.
successResult
(
indexDataVO
);
...
...
@@ -101,8 +104,16 @@ public class MaterialDataStaticsController {
@RequestMapping
(
path
=
"/content/material/real/use/data"
)
public
RestResponse
<
MaterialRealDataVO
>
queryMaterialUsedAnalyze
(
@RequestBody
MaterialStatisticsBaseQO
materialStatisticsBaseQO
)
{
return
RestResponse
.
successResult
();
List
<
String
>
storeIds
=
new
ArrayList
<>();
if
(
StringUtils
.
isBlank
(
materialStatisticsBaseQO
.
getStoreId
()))
{
storeIds
=
clerkStoreAdaptor
.
queryClerkStoreIds
(
materialStatisticsBaseQO
.
getClerkId
(),
materialStatisticsBaseQO
.
getWxEnterpriseId
());
}
else
{
storeIds
.
add
(
materialStatisticsBaseQO
.
getStoreId
());
}
MaterialTodayDataBO
materialTodayDataBO
=
materialDataAdaptor
.
queryMaterialTodayData
(
materialStatisticsBaseQO
.
getEnterpriseId
(),
storeIds
);
MaterialRealDataVO
temp
=
new
MaterialRealDataVO
();
BeanUtils
.
copyProperties
(
materialTodayDataBO
,
temp
);
return
RestResponse
.
successResult
(
temp
);
}
/**
...
...
@@ -113,7 +124,16 @@ public class MaterialDataStaticsController {
*/
@RequestMapping
(
path
=
"/content/material/overview/data"
)
public
RestResponse
<
MaterialDataOverviewVO
>
queryMaterialOverviewData
(
@RequestBody
MaterialAnalyzeDataQO
materialStatisticsBaseQO
)
{
return
RestResponse
.
successResult
();
List
<
String
>
storeIds
=
new
ArrayList
<>();
if
(
StringUtils
.
isBlank
(
materialStatisticsBaseQO
.
getStoreId
()))
{
storeIds
=
clerkStoreAdaptor
.
queryClerkStoreIds
(
materialStatisticsBaseQO
.
getClerkId
(),
materialStatisticsBaseQO
.
getWxEnterpriseId
());
}
else
{
storeIds
.
add
(
materialStatisticsBaseQO
.
getStoreId
());
}
MaterialDataOverviewVO
materialDataOverviewVO
=
materialDataAdaptor
.
queryMaterialDataOverview
(
materialStatisticsBaseQO
.
getEnterpriseId
(),
storeIds
,
materialStatisticsBaseQO
.
getFixedDateDiff
());
return
RestResponse
.
successResult
(
materialDataOverviewVO
);
}
...
...
@@ -125,7 +145,15 @@ public class MaterialDataStaticsController {
@RequestMapping
(
path
=
"/content/material/clerk/data"
)
public
RestResponse
<
Page
<
MaterialClerkUsedDataVO
>>
queryMaterialClerkUsedData
(
@RequestBody
MaterialAnalyzeDataQO
materialStatisticsBaseQO
)
{
//
return
RestResponse
.
successResult
();
List
<
String
>
storeIds
=
new
ArrayList
<>();
if
(
StringUtils
.
isBlank
(
materialStatisticsBaseQO
.
getStoreId
()))
{
storeIds
=
clerkStoreAdaptor
.
queryClerkStoreIds
(
materialStatisticsBaseQO
.
getClerkId
(),
materialStatisticsBaseQO
.
getWxEnterpriseId
());
}
else
{
storeIds
.
add
(
materialStatisticsBaseQO
.
getStoreId
());
}
Page
<
MaterialClerkUsedDataVO
>
clerkUsedData
=
materialDataAdaptor
.
queryMaterialClerkUsedData
(
materialStatisticsBaseQO
.
getEnterpriseId
(),
storeIds
,
materialStatisticsBaseQO
.
getFixedDateDiff
(),
materialStatisticsBaseQO
.
getOrderByField
(),
materialStatisticsBaseQO
.
getOrder
(),
materialStatisticsBaseQO
.
getPageNum
(),
materialStatisticsBaseQO
.
getPageSize
());
return
RestResponse
.
successResult
(
clerkUsedData
);
}
/**
...
...
@@ -135,7 +163,15 @@ public class MaterialDataStaticsController {
*/
@RequestMapping
(
path
=
"/content/material/store/data"
)
public
RestResponse
<
Page
<
MaterialStoreUsedDataVO
>>
queryMaterialStoreUsedData
(
@RequestBody
MaterialAnalyzeDataQO
materialStatisticsBaseQO
)
{
return
RestResponse
.
successResult
();
List
<
String
>
storeIds
=
new
ArrayList
<>();
if
(
StringUtils
.
isBlank
(
materialStatisticsBaseQO
.
getStoreId
()))
{
storeIds
=
clerkStoreAdaptor
.
queryClerkStoreIds
(
materialStatisticsBaseQO
.
getClerkId
(),
materialStatisticsBaseQO
.
getWxEnterpriseId
());
}
else
{
storeIds
.
add
(
materialStatisticsBaseQO
.
getStoreId
());
}
Page
<
MaterialStoreUsedDataVO
>
storeUsedData
=
materialDataAdaptor
.
queryMaterialStoreUsedData
(
materialStatisticsBaseQO
.
getEnterpriseId
(),
storeIds
,
materialStatisticsBaseQO
.
getFixedDateDiff
(),
materialStatisticsBaseQO
.
getOrderByField
(),
materialStatisticsBaseQO
.
getOrder
(),
materialStatisticsBaseQO
.
getPageNum
(),
materialStatisticsBaseQO
.
getPageSize
());
return
RestResponse
.
successResult
(
storeUsedData
);
}
...
...
@@ -163,6 +199,7 @@ public class MaterialDataStaticsController {
/**
* 周/月报--查询门店纬度素材使用数据(店长和区经)
*
* @param materialPersonalUsedQO
* @return
*/
...
...
@@ -173,6 +210,7 @@ public class MaterialDataStaticsController {
/**
* 周/月报--查询门店纬度素材使用数据列表
*
* @param materialPersonalUsedQO
* @return
*/
...
...
haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/controller/content/adaptor/MaterialDataAdaptor.java
View file @
6efd94ee
...
...
@@ -2,17 +2,17 @@ package com.gic.haoban.manage.web.controller.content.adaptor;
import
cn.hutool.core.collection.CollectionUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.
alibaba.fastjson.JSONObject
;
import
com.
gic.api.base.commons.Page
;
import
com.gic.haoban.manage.web.utils.target.DataTargetHttpUtils
;
import
com.gic.haoban.manage.web.vo.content.statistics.MaterialIndexDataVO
;
import
com.gic.mall.api.dto.MallProDTO
;
import
com.gic.haoban.manage.web.vo.content.statistics.MaterialClerkUsedDataVO
;
import
com.gic.haoban.manage.web.vo.content.statistics.MaterialDataOverviewVO
;
import
com.gic.haoban.manage.web.vo.content.statistics.MaterialStoreUsedDataVO
;
import
com.gic.haoban.manage.web.vo.content.statistics.bo.MaterialTodayDataBO
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.math.BigDecimal
;
import
java.util.Collection
;
import
java.util.Collections
;
import
java.util.HashMap
;
import
java.util.List
;
...
...
@@ -36,6 +36,17 @@ public class MaterialDataAdaptor {
* 素材首页数据统计
*/
private
static
final
String
MATERIAL_INDEX_DATA
=
"data_matl_haoban_area_stats_real"
;
private
static
final
String
MATERIAL_OVERVIEW_DATA
=
"data_matl_haoban_area_stats"
;
/**
* 导购纬度数据统计
*/
private
static
final
String
MATERIAL_CLERK_DATA
=
"data_matl_haoban_clerk_stats"
;
/**
* 门店纬度数据统计
*/
private
static
final
String
MATERIAL_STORE_DATA
=
"data_matl_haoban_store_stats"
;
/**
...
...
@@ -43,7 +54,7 @@ public class MaterialDataAdaptor {
* @param enterpriseId
* @return
*/
public
Material
IndexDataVO
queryMaterialIndex
Data
(
String
enterpriseId
,
List
<
String
>
storeIds
)
{
public
Material
TodayDataBO
queryMaterialToday
Data
(
String
enterpriseId
,
List
<
String
>
storeIds
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
Map
<
String
,
Object
>
inlineParams
=
new
HashMap
<>();
params
.
put
(
"inFields"
,
inlineParams
);
...
...
@@ -54,19 +65,109 @@ public class MaterialDataAdaptor {
}
Map
<
String
,
Object
>
result
=
this
.
doHttp
(
JSON
.
toJSONString
(
params
),
MATERIAL_INDEX_DATA
);
if
(
result
.
get
(
"data"
)
==
null
)
{
return
MaterialIndexDataVO
.
builder
()
.
useMaterialClerkNum
(
0
)
.
unUseMaterialClerkNum
(
0
)
.
conversionAmount
(
BigDecimal
.
ZERO
)
.
build
();
return
MaterialTodayDataBO
.
empty
();
}
return
JSON
.
parseObject
(
JSON
.
toJSONString
(
result
.
get
(
"data"
)),
MaterialTodayDataBO
.
class
);
}
/**
* 店长/区经
* 查询数据概览
* @param enterpriseId
* @param storeIds
* @param fixedDateDiff
* @return
*/
public
MaterialDataOverviewVO
queryMaterialDataOverview
(
String
enterpriseId
,
List
<
String
>
storeIds
,
Integer
fixedDateDiff
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
Map
<
String
,
Object
>
inlineParams
=
new
HashMap
<>();
params
.
put
(
"inFields"
,
inlineParams
);
inlineParams
.
put
(
"enterprsieId"
,
enterpriseId
);
inlineParams
.
put
(
"fixedDateDiff"
,
fixedDateDiff
);
if
(
CollectionUtil
.
isNotEmpty
(
storeIds
))
{
inlineParams
.
put
(
"storeId"
,
StringUtils
.
join
(
storeIds
,
","
));
}
Map
<
String
,
Object
>
result
=
this
.
doHttp
(
JSON
.
toJSONString
(
params
),
MATERIAL_OVERVIEW_DATA
);
if
(
result
.
get
(
"data"
)
==
null
)
{
return
new
MaterialDataOverviewVO
();
}
return
JSON
.
parseObject
(
JSON
.
toJSONString
(
result
.
get
(
"data"
)),
MaterialDataOverviewVO
.
class
);
}
/**
* 导购纬度数据统计
* @param enterpriseId
* @param storeIds
* @param fixedDateDiff
* @param order
* @return
*/
public
Page
<
MaterialClerkUsedDataVO
>
queryMaterialClerkUsedData
(
String
enterpriseId
,
List
<
String
>
storeIds
,
Integer
fixedDateDiff
,
String
orderField
,
Integer
order
,
Integer
pageNo
,
Integer
pageSize
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
Map
<
String
,
Object
>
inlineParams
=
new
HashMap
<>();
params
.
put
(
"pageNo"
,
pageNo
);
params
.
put
(
"pageSize"
,
pageSize
);
params
.
put
(
"inFields"
,
inlineParams
);
inlineParams
.
put
(
"enterprsieId"
,
enterpriseId
);
inlineParams
.
put
(
"fixedDateDiff"
,
fixedDateDiff
);
if
(
StringUtils
.
isNotBlank
(
orderField
))
{
String
orderStr
=
new
Integer
(
1
).
equals
(
order
)
?
" asc "
:
" desc "
;
inlineParams
.
put
(
"orderByField"
,
orderField
+
orderStr
);
}
if
(
CollectionUtil
.
isNotEmpty
(
storeIds
))
{
inlineParams
.
put
(
"storeId"
,
StringUtils
.
join
(
storeIds
,
","
));
}
Map
<
String
,
Object
>
result
=
this
.
doHttp
(
JSON
.
toJSONString
(
params
),
MATERIAL_CLERK_DATA
);
if
(
result
.
get
(
"data"
)
==
null
)
{
return
new
Page
<>();
}
List
<
MaterialClerkUsedDataVO
>
dataVOS
=
JSON
.
parseArray
(
JSON
.
toJSONString
(
result
.
get
(
"data"
)),
MaterialClerkUsedDataVO
.
class
);
Page
<
MaterialClerkUsedDataVO
>
pageResult
=
new
Page
<>();
pageResult
.
setTotalCount
(
1
);
pageResult
.
setResult
(
dataVOS
);
return
pageResult
;
}
/**
* 门店纬度数据统计
* @param enterpriseId
* @param storeIds
* @param fixedDateDiff
* @param order
* @return
*/
public
Page
<
MaterialStoreUsedDataVO
>
queryMaterialStoreUsedData
(
String
enterpriseId
,
List
<
String
>
storeIds
,
Integer
fixedDateDiff
,
String
orderField
,
Integer
order
,
Integer
pageNo
,
Integer
pageSize
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
Map
<
String
,
Object
>
inlineParams
=
new
HashMap
<>();
params
.
put
(
"pageNo"
,
pageNo
);
params
.
put
(
"pageSize"
,
pageSize
);
params
.
put
(
"inFields"
,
inlineParams
);
inlineParams
.
put
(
"enterprsieId"
,
enterpriseId
);
inlineParams
.
put
(
"fixedDateDiff"
,
fixedDateDiff
);
if
(
StringUtils
.
isNotBlank
(
orderField
))
{
String
orderStr
=
new
Integer
(
1
).
equals
(
order
)
?
" asc "
:
" desc "
;
inlineParams
.
put
(
"orderByField"
,
orderField
+
orderStr
);
}
if
(
CollectionUtil
.
isNotEmpty
(
storeIds
))
{
inlineParams
.
put
(
"storeId"
,
StringUtils
.
join
(
storeIds
,
","
));
}
Map
<
String
,
Object
>
result
=
this
.
doHttp
(
JSON
.
toJSONString
(
params
),
MATERIAL_CLERK_DATA
);
if
(
result
.
get
(
"data"
)
==
null
)
{
return
new
Page
<>();
}
JSONObject
jsonObject
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
result
.
get
(
"data"
)),
JSONObject
.
class
);
return
MaterialIndexDataVO
.
builder
()
.
useMaterialClerkNum
(
jsonObject
.
getIntValue
(
"useMatlClerkNum"
))
.
unUseMaterialClerkNum
(
jsonObject
.
getIntValue
(
"unusedMatlClerkNum"
))
.
conversionAmount
(
jsonObject
.
getBigDecimal
(
"convSalesAmt"
))
.
build
();
List
<
MaterialStoreUsedDataVO
>
dataVOS
=
JSON
.
parseArray
(
JSON
.
toJSONString
(
result
.
get
(
"data"
)),
MaterialStoreUsedDataVO
.
class
);
Page
<
MaterialStoreUsedDataVO
>
pageResult
=
new
Page
<>();
pageResult
.
setTotalCount
(
1
);
pageResult
.
setResult
(
dataVOS
);
return
pageResult
;
}
...
...
haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/qo/content/statistics/MaterialAnalyzeDataQO.java
View file @
6efd94ee
package
com
.
gic
.
haoban
.
manage
.
web
.
qo
.
content
.
statistics
;
import
lombok.Data
;
/**
* @Author MUSI
* @Date 2023/3/23 1:00 PM
* @Description
* @Version
**/
@Data
public
class
MaterialAnalyzeDataQO
extends
MaterialStatisticsBaseQO
{
private
static
final
long
serialVersionUID
=
3422937373665522931L
;
...
...
@@ -20,35 +23,11 @@ public class MaterialAnalyzeDataQO extends MaterialStatisticsBaseQO {
* 日均使用导购占比
* 转化客户数
*/
private
Integer
orderByField
;
private
String
orderByField
;
/**
* 1 生序
* 0 降序
*/
private
Integer
order
;
public
Integer
getFixedDateDiff
()
{
return
fixedDateDiff
;
}
public
void
setFixedDateDiff
(
Integer
fixedDateDiff
)
{
this
.
fixedDateDiff
=
fixedDateDiff
;
}
public
Integer
getOrderByField
()
{
return
orderByField
;
}
public
void
setOrderByField
(
Integer
orderByField
)
{
this
.
orderByField
=
orderByField
;
}
public
Integer
getOrder
()
{
return
order
;
}
public
void
setOrder
(
Integer
order
)
{
this
.
order
=
order
;
}
}
haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/qo/content/statistics/MaterialStatisticsBaseQO.java
View file @
6efd94ee
package
com
.
gic
.
haoban
.
manage
.
web
.
qo
.
content
.
statistics
;
import
com.gic.api.base.commons.BasePageInfo
;
import
lombok.Data
;
/**
* @Author MUSI
...
...
@@ -8,6 +9,7 @@ import com.gic.api.base.commons.BasePageInfo;
* @Description
* @Version
**/
@Data
public
class
MaterialStatisticsBaseQO
extends
BasePageInfo
{
/**
...
...
@@ -16,6 +18,11 @@ public class MaterialStatisticsBaseQO extends BasePageInfo {
private
String
enterpriseId
;
/**
* 微信企业id
*/
private
String
wxEnterpriseId
;
/**
* 导购id
*/
private
String
clerkId
;
...
...
@@ -26,7 +33,6 @@ public class MaterialStatisticsBaseQO extends BasePageInfo {
private
String
storeId
;
public
String
getEnterpriseId
()
{
return
enterpriseId
;
}
...
...
haoban-manage3-wx/src/main/java/com/gic/haoban/manage/web/vo/content/statistics/bo/MaterialTodayDataBO.java
0 → 100644
View file @
6efd94ee
package
com
.
gic
.
haoban
.
manage
.
web
.
vo
.
content
.
statistics
.
bo
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
/**
* @Author MUSI
* @Date 2023/3/27 1:02 PM
* @Description
* @Version
**/
@Data
public
class
MaterialTodayDataBO
implements
Serializable
{
/**
* 使用导购数
*/
private
Integer
useMatlClerkNum
;
/**
* 未使用导购数
*/
private
Integer
unusedMatlClerkNum
;
/**
* 转化用户数
*/
private
Integer
clickUserNum
;
/**
* 转化人数
*/
private
Integer
convUserNum
;
/**
* 转化金额
*/
private
BigDecimal
convSalesAmt
;
public
static
MaterialTodayDataBO
empty
(){
return
new
MaterialTodayDataBO
();
}
}
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