Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform
Project
Project
Details
Activity
Releases
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
youjj
cloud-platform
Commits
a5eedbf2
Commit
a5eedbf2
authored
Jul 11, 2019
by
libin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
团队
parent
7895b080
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
117 additions
and
47 deletions
+117
-47
UserIncomeBo.java
...va/com/github/wxiaoqi/security/admin/bo/UserIncomeBo.java
+9
-0
UserTeamMemberBo.java
...om/github/wxiaoqi/security/admin/bo/UserTeamMemberBo.java
+3
-1
AppUserSellingWater.java
...ub/wxiaoqi/security/admin/entity/AppUserSellingWater.java
+7
-1
AppUserDetailBiz.java
...m/github/wxiaoqi/security/admin/biz/AppUserDetailBiz.java
+28
-11
AppUserLoginBiz.java
...om/github/wxiaoqi/security/admin/biz/AppUserLoginBiz.java
+8
-1
AppUserRelationBiz.java
...github/wxiaoqi/security/admin/biz/AppUserRelationBiz.java
+0
-1
AppUserSellingWaterBiz.java
...ub/wxiaoqi/security/admin/biz/AppUserSellingWaterBiz.java
+12
-2
UserBusinessBiz.java
...om/github/wxiaoqi/security/admin/biz/UserBusinessBiz.java
+7
-7
AppUserLoginMapper.java
...hub/wxiaoqi/security/admin/mapper/AppUserLoginMapper.java
+2
-1
AppUserSellingWaterMapper.java
...aoqi/security/admin/mapper/AppUserSellingWaterMapper.java
+6
-1
UserBussinessController.java
.../wxiaoqi/security/admin/rest/UserBussinessController.java
+21
-0
AppUserSellingWaterMapper.xml
...n/src/main/resources/mapper/AppUserSellingWaterMapper.xml
+14
-21
No files found.
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/bo/UserIncomeBo.java
View file @
a5eedbf2
package
com
.
github
.
wxiaoqi
.
security
.
admin
.
bo
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/11 16:30
*/
@Data
public
class
UserIncomeBo
{
private
Integer
userId
;
private
BigDecimal
income
;
}
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/bo/UserTeamMemberBo.java
View file @
a5eedbf2
...
...
@@ -5,6 +5,8 @@ import lombok.Builder;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.math.BigDecimal
;
/**
* @author libin
* @version 1.0
...
...
@@ -42,5 +44,5 @@ public class UserTeamMemberBo {
/**
* 收入
*/
private
double
income
;
private
BigDecimal
income
;
}
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/entity/AppUserSellingWater.java
View file @
a5eedbf2
package
com
.
github
.
wxiaoqi
.
security
.
admin
.
entity
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
javax.persistence.*
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -109,7 +110,7 @@ public class AppUserSellingWater implements Serializable {
*/
@Column
(
name
=
"price"
)
@ApiModelProperty
(
value
=
"售价"
)
private
Long
price
;
private
BigDecimal
price
;
/**
* 提成百分比
...
...
@@ -138,6 +139,11 @@ public class AppUserSellingWater implements Serializable {
@Column
(
name
=
"upd_time"
)
@ApiModelProperty
(
value
=
"更新时间"
,
hidden
=
true
)
private
Integer
updTime
;
/**
* 所获佣金
*/
private
BigDecimal
commission
;
}
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserDetailBiz.java
View file @
a5eedbf2
...
...
@@ -8,13 +8,17 @@ import com.github.wxiaoqi.security.admin.rpc.service.AppPermissionService;
import
com.github.wxiaoqi.security.admin.vo.AppUserVo
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
tk.mybatis.mapper.entity.Example
;
import
java.time.Instant
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
/**
* ${DESCRIPTION}
...
...
@@ -28,13 +32,14 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
@Override
@CacheClear
(
pre
=
"user{1.userid}"
)
@CacheClear
(
pre
=
"user{1.userid}"
)
public
void
updateSelectiveById
(
AppUserDetail
entity
)
{
super
.
updateSelectiveById
(
entity
);
}
/**
* 根据用户id获取用户信息
*
* @param userid
* @return
*/
...
...
@@ -50,26 +55,28 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
/**
* 获取用户信息
*
* @param userid
* @return
*/
@Cache
(
key
=
"user{1}"
)
public
AppUserVo
getUserInfoById
(
Integer
userid
){
@Cache
(
key
=
"user{1}"
)
public
AppUserVo
getUserInfoById
(
Integer
userid
)
{
return
mapper
.
getUserInfo
(
userid
);
}
/**
* 更新用户信息
*
* @param userVo
*/
@CacheClear
(
pre
=
"user{1.userid}"
)
public
void
updUuserInfoById
(
AppUserVo
userVo
){
AppUserDetail
entity
=
new
AppUserDetail
();
@CacheClear
(
pre
=
"user{1.userid}"
)
public
void
updUuserInfoById
(
AppUserVo
userVo
)
{
AppUserDetail
entity
=
new
AppUserDetail
();
try
{
BeanUtils
.
copyProperties
(
entity
,
userVo
);
if
(
entity
!=
null
)
{
entity
.
setUpdHost
(
AppPermissionService
.
getIp
());
entity
.
setUpdatetime
(
Instant
.
now
().
toEpochMilli
()/
1000L
);
BeanUtils
.
copyProperties
(
entity
,
userVo
);
if
(
entity
!=
null
)
{
entity
.
setUpdHost
(
AppPermissionService
.
getIp
());
entity
.
setUpdatetime
(
Instant
.
now
().
toEpochMilli
()
/
1000L
);
super
.
updateSelectiveById
(
entity
);
}
}
catch
(
Exception
e
)
{
...
...
@@ -80,6 +87,16 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
public
Map
<
Integer
,
AppUserDetail
>
findUserIdAndUserDetailMapByMemberIds
(
List
<
Integer
>
memberIds
)
{
return
null
;
Map
<
Integer
,
AppUserDetail
>
userIdAndAppUserDetailMap
=
new
HashMap
<>();
Example
example
=
new
Example
(
AppUserDetail
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andIn
(
"userid"
,
memberIds
);
List
<
AppUserDetail
>
appUserDetails
=
mapper
.
selectByExample
(
example
);
if
(
CollectionUtils
.
isNotEmpty
(
appUserDetails
)){
userIdAndAppUserDetailMap
=
appUserDetails
.
stream
().
collect
(
Collectors
.
toMap
(
AppUserDetail:
:
getUserid
,
Function
.
identity
()));
}
return
userIdAndAppUserDetailMap
;
}
}
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserLoginBiz.java
View file @
a5eedbf2
...
...
@@ -14,10 +14,12 @@ import org.springframework.transaction.annotation.Transactional;
import
tk.mybatis.mapper.entity.Example
;
import
java.time.Instant
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Optional
;
import
java.util.concurrent.atomic.AtomicReference
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -170,6 +172,11 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
}
public
Map
<
Integer
,
AppUserLogin
>
findUserIdAndUserLoginMapByMemberIds
(
List
<
Integer
>
memberIds
)
{
return
null
;
Map
<
Integer
,
AppUserLogin
>
userIdAndAppUserLoginMap
=
new
HashMap
<>();
List
<
AppUserLogin
>
appUserLogins
=
mapper
.
selectByIdList
(
memberIds
);
if
(
CollectionUtils
.
isNotEmpty
(
appUserLogins
)){
userIdAndAppUserLoginMap
=
appUserLogins
.
stream
().
collect
(
Collectors
.
toMap
(
AppUserLogin:
:
getId
,
Function
.
identity
()));
}
return
userIdAndAppUserLoginMap
;
}
}
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserRelationBiz.java
View file @
a5eedbf2
...
...
@@ -154,7 +154,6 @@ public class AppUserRelationBiz extends BaseBiz<AppUserRelationMapper,AppUserRel
Example
example
=
new
Example
(
AppUserRelation
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andEqualTo
(
"parentId"
,
userId
);
criteria
.
andEqualTo
(
"isForever"
,
1
);
criteria
.
andEqualTo
(
"isDel"
,
0
);
return
PageDataVO
.
pageInfo
(
pageNo
,
pageSize
,
()
->
mapper
.
selectByExample
(
example
));
}
...
...
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserSellingWaterBiz.java
View file @
a5eedbf2
package
com
.
github
.
wxiaoqi
.
security
.
admin
.
biz
;
import
com.github.wxiaoqi.security.admin.bo.UserIncomeBo
;
import
com.github.wxiaoqi.security.admin.dto.OrderWaterDTO
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.springframework.stereotype.Service
;
import
com.github.wxiaoqi.security.admin.entity.AppUserSellingWater
;
import
com.github.wxiaoqi.security.admin.mapper.AppUserSellingWaterMapper
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
java.math.BigDecimal
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* 拥金明细表
...
...
@@ -25,7 +30,12 @@ public class AppUserSellingWaterBiz extends BaseBiz<AppUserSellingWaterMapper,Ap
orderWaterDTO
.
getOrderId
();
}
public
Map
<
Integer
,
Double
>
findMemberIdAndIncome
(
List
<
Integer
>
memberIds
)
{
return
null
;
public
Map
<
Integer
,
BigDecimal
>
findMemberIdAndIncomeMapByMemberIds
(
List
<
Integer
>
memberIds
)
{
Map
<
Integer
,
BigDecimal
>
memberIdAndIncomeMap
=
new
HashMap
<>();
List
<
UserIncomeBo
>
userIncomeBos
=
mapper
.
accquireIncomeByMemberIds
(
memberIds
);
if
(
CollectionUtils
.
isNotEmpty
(
userIncomeBos
)){
memberIdAndIncomeMap
=
userIncomeBos
.
stream
().
collect
(
Collectors
.
toMap
(
UserIncomeBo:
:
getUserId
,
UserIncomeBo:
:
getIncome
));
}
return
memberIdAndIncomeMap
;
}
}
\ No newline at end of file
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/UserBusinessBiz.java
View file @
a5eedbf2
package
com
.
github
.
wxiaoqi
.
security
.
admin
.
biz
;
import
com.github.wxiaoqi.security.admin.bo.UserTeamMemberBo
;
import
com.github.wxiaoqi.security.admin.dto.AppUserSellingWaterDTO
;
import
com.github.wxiaoqi.security.admin.entity.AppUserDetail
;
import
com.github.wxiaoqi.security.admin.entity.AppUserLogin
;
import
com.github.wxiaoqi.security.admin.entity.AppUserRelation
;
import
com.github.wxiaoqi.security.admin.entity.AppUserSellingWater
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
com.sun.org.apache.regexp.internal.RE
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.
time.temporal.TemporalAccessor
;
import
java.
math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
...
...
@@ -53,9 +49,8 @@ public class UserBusinessBiz {
return
teamMemberPage
;
}
//根据成员id查询佣金记录
List
<
Integer
>
memberIds
=
teamMemberBos
.
stream
().
map
(
team
->
team
.
getUserId
()).
collect
(
Collectors
.
toList
());
Map
<
Integer
,
Double
>
memberIdAndIncomeMap
=
appUserSellingWaterBiz
.
findMemberIdAndIncome
(
memberIds
);
Map
<
Integer
,
BigDecimal
>
memberIdAndIncomeMap
=
appUserSellingWaterBiz
.
findMemberIdAndIncomeMapByMemberIds
(
memberIds
);
if
(
memberIdAndIncomeMap
==
null
)
{
return
teamMemberPage
;
}
...
...
@@ -83,6 +78,11 @@ public class UserBusinessBiz {
userTeamMemberBo
.
setIncome
(
memberIdAndIncomeMap
.
get
(
appUserRelation
.
getUserId
()));
userTeamMemberBos
.
add
(
userTeamMemberBo
);
}
teamMemberPage
.
setPageNum
(
memberPage
.
getPageNum
());
teamMemberPage
.
setPageSize
(
memberPage
.
getPageSize
());
teamMemberPage
.
setTotalCount
(
memberPage
.
getTotalCount
());
teamMemberPage
.
setTotalPage
(
memberPage
.
getTotalPage
());
teamMemberPage
.
setData
(
userTeamMemberBos
);
return
teamMemberPage
;
}
}
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/mapper/AppUserLoginMapper.java
View file @
a5eedbf2
...
...
@@ -4,11 +4,12 @@ import com.github.wxiaoqi.security.admin.entity.AppUserLogin;
import
com.github.wxiaoqi.security.admin.entity.AppUserManage
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Update
;
import
tk.mybatis.mapper.additional.idlist.SelectByIdListMapper
;
import
tk.mybatis.mapper.common.Mapper
;
import
java.util.List
;
public
interface
AppUserLoginMapper
extends
Mapper
<
AppUserLogin
>
{
public
interface
AppUserLoginMapper
extends
Mapper
<
AppUserLogin
>
,
SelectByIdListMapper
<
AppUserLogin
,
Integer
>
{
/**
...
...
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/mapper/AppUserSellingWaterMapper.java
View file @
a5eedbf2
package
com
.
github
.
wxiaoqi
.
security
.
admin
.
mapper
;
import
com.github.wxiaoqi.security.admin.bo.UserIncomeBo
;
import
com.github.wxiaoqi.security.admin.entity.AppUserSellingWater
;
import
org.apache.ibatis.annotations.Param
;
import
tk.mybatis.mapper.common.Mapper
;
import
java.util.List
;
/**
* 拥金明细表
*
...
...
@@ -11,5 +15,6 @@ import tk.mybatis.mapper.common.Mapper;
* @date 2019-07-11 14:14:54
*/
public
interface
AppUserSellingWaterMapper
extends
Mapper
<
AppUserSellingWater
>
{
List
<
UserIncomeBo
>
accquireIncomeByMemberIds
(
@Param
(
"memberIds"
)
List
<
Integer
>
memberIds
);
}
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/rest/UserBussinessController.java
View file @
a5eedbf2
package
com
.
github
.
wxiaoqi
.
security
.
admin
.
rest
;
import
com.github.wxiaoqi.security.admin.biz.UserBusinessBiz
;
import
com.github.wxiaoqi.security.admin.bo.UserTeamMemberBo
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/11 17:48
*/
@RestController
@RequestMapping
(
"/team"
)
public
class
UserBussinessController
{
@Autowired
private
UserBusinessBiz
businessBiz
;
@GetMapping
(
"/teams"
)
public
ObjectRestResponse
<
PageDataVO
<
UserTeamMemberBo
>>
sda
(
@RequestParam
(
"userId"
)
Integer
userId
,
@RequestParam
(
"pageNo"
)
Integer
pageNo
,
@RequestParam
(
"pageSize"
)
Integer
pageSize
){
PageDataVO
<
UserTeamMemberBo
>
teamMemberBoPageDataVO
=
businessBiz
.
findTeamMemberPageByUserId
(
userId
,
pageNo
,
pageSize
);
return
ObjectRestResponse
.
succ
(
teamMemberBoPageDataVO
);
}
}
ace-modules/ace-admin/src/main/resources/mapper/AppUserSellingWaterMapper.xml
View file @
a5eedbf2
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.github.wxiaoqi.security.admin.mapper.AppUserMapper"
>
<insert
id=
"insertAppUserGroup"
>
insert into app_group_member(user_id, group_id)
VALUES
<trim
suffixOverrides=
","
>
<foreach
collection=
"groups"
item=
"groupId"
>
(#{appUserId}, #{groupId}),
</foreach>
</trim>
</insert>
<delete
id=
"deleteAppUserGroup"
>
delete from app_group_member
where user_id = #{appUserId}
</delete>
<select
id=
"selectGroupsByAppUserId"
resultType=
"com.github.wxiaoqi.security.admin.entity.Group"
>
select *
from base_group bg
right join app_group_member agm on bg.id = agm.group_id
where user_id = #{id}
</select>
<mapper
namespace=
"com.github.wxiaoqi.security.admin.mapper.AppUserSellingWaterMapper"
>
<select
id=
"accquireIncomeByMemberIds"
resultType=
"com.github.wxiaoqi.security.admin.bo.UserIncomeBo"
>
SELECT DISTINCT
source_id,
(( SELECT SUM(commission) FROM `app_user_selling_water` WHERE source_id=ausw.source_id AND `status` = 0 AND `waiting` = 1 )
- ( SELECT SUM(commission) FROM `app_user_selling_water` WHERE source_id=ausw.source_id AND `status` = 1 AND `waiting` = 1 )) as `income`
FROM
`app_user_selling_water` as ausw
WHERE
source_id in
<foreach
collection=
"memberIds"
item=
"memberId"
open=
"("
close=
")"
separator=
","
>
#{memberId}
</foreach>
</select>
</mapper>
\ 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