Commit da2cdfa8 by guanchen

合并master代码

parents f8893b57 85eecee3
......@@ -30,3 +30,6 @@ build/
### VS Code ###
.vscode/
data
src/main/.DS_Store
src/main/java/.DS_Store
src/main/resources/.DS_Store
......@@ -5,6 +5,7 @@ import com.lanren.huhu.partner.model.Agent;
import com.lanren.huhu.partner.model.AgentResponse;
import com.lanren.huhu.partner.model.ParentAgent;
import com.lanren.huhu.partner.result.Result;
import com.lanren.huhu.partner.schedule.AgentDailyExpandTask;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -25,6 +26,8 @@ public class AgentController {
@Autowired
AgentManager agentManager;
@Autowired
AgentDailyExpandTask agentDailyExpandTask;
@RequestMapping(value = "/level", method = RequestMethod.POST)
public Result<AgentResponse> getAgentLevel(@RequestBody @Valid Agent agent, @RequestHeader HttpHeaders headers) {
......@@ -55,4 +58,12 @@ public class AgentController {
}
return agentManager.getPingtuiParentList(agent.getAgentId());
}
@RequestMapping(value = "/expand/{dat}", method = RequestMethod.GET)
public Result<String> updateOneDayExpand(@PathVariable("dat") String dat) {
agentDailyExpandTask.runSummary(dat);
logger.info("============>" + Thread.currentThread().getName());
Result<String> result = new Result<String>();
result.setData("异步,正在执行刷新......");
return result;
}
}
......@@ -57,6 +57,7 @@ public class UserController {
public Result<String> updateRelation(@PathVariable("from") String from, @PathVariable("to") String to, @PathVariable("type") int type) {
userManager.updateRelation(from, to, type);
logger.info("============>" + Thread.currentThread().getName());
logger.info("============>from{}, to{}, type{}", from, to, type );
Result<String> result = new Result<String>();
result.setData("异步,正在执行更新新......");
return result;
......
......@@ -40,7 +40,5 @@ public interface PartnerAccountMapper extends BaseMapper<PartnerAccount> {
PartnerAccount selectOneForUpdate(Integer userId);
int updatePartnerRelation(String from, String to);
PartnerAccount getPartnerAccountByPhone(String phone);
}
\ No newline at end of file
......@@ -31,12 +31,6 @@ public interface UserAgentMapper extends BaseMapper<UserAgent> {
*/
@SelectProvider(type = UserAgentSqlProvider.class, method = "getChildListByUserId")
List<UserAgent> getChildListByUserId(@Param("userId") Integer userId, @Param("parentColumnName") String parentColumnName);
/**
* 将手机号为from的代理商的 平推 上级改为手机号为to的代理商
*/
int updatePingtuiRelation(String from, String to);
/**
* 将手机号为from的代理商的 层级 上级改为手机号为to的代理商
*/
int updateCengjiRelation(String from, String to);
UserAgent getUserAgentByPhone(String phone);
}
\ No newline at end of file
......@@ -4,9 +4,10 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import lombok.Data;
@Data
@TableName(value = "user_agent")
......@@ -14,30 +15,60 @@ public class UserAgent implements Serializable {
@TableId(value = "agent_id", type = IdType.AUTO)
private Integer agentId;
/**
* 用户ID
*/
@TableField(value = "user_id")
private Integer userId;
/**
* 代理商名称
*/
@TableField(value = "agent_name")
private String agentName;
/**
* 代理商电话
*/
@TableField(value = "agent_phone")
private String agentPhone;
/**
* 代理商等级
*/
@TableField(value = "agent_level")
private Integer agentLevel;
/**
* 等级名称
*/
@TableField(value = "node_agent_level_name")
private String nodeAgentLevelName;
/**
* 上级代理商
*/
@TableField(value = "parent_agent_id")
private Integer parentAgentId;
/**
* 公司昵称
*/
@TableField(value = "company")
private String company;
@TableField(value = "parent_agent_list")
private String parentAgentList;
/**
* 持卡数量
*/
@TableField(value = "card_num")
private Integer cardNum;
/**
* 未激活数量
*/
@TableField(value = "card_activate_num")
private Integer cardActivateNum;
......@@ -99,6 +130,15 @@ public class UserAgent implements Serializable {
private Integer deletedAt;
/**
* 推荐者ID 默认为上级ID 只有4级代理商用户有这个值
*/
@TableField(value = "presenter_id")
private Integer presenterId;
@TableField(value = "present_time")
private Integer presentTime;
/**
* level1 id
*/
@TableField(value = "agent_level_one")
......@@ -136,6 +176,8 @@ public class UserAgent implements Serializable {
public static final String COL_PARENT_AGENT_ID = "parent_agent_id";
public static final String COL_COMPANY = "company";
public static final String COL_PARENT_AGENT_LIST = "parent_agent_list";
public static final String COL_CARD_NUM = "card_num";
......@@ -172,6 +214,10 @@ public class UserAgent implements Serializable {
public static final String COL_DELETED_AT = "deleted_at";
public static final String COL_PRESENTER_ID = "presenter_id";
public static final String COL_PRESENT_TIME = "present_time";
public static final String COL_AGENT_LEVEL_ONE = "agent_level_one";
public static final String COL_AGENT_LEVEL_TWO = "agent_level_two";
......
......@@ -144,6 +144,7 @@ public class AgentRewardQueueTask {
rewardCnt++;
} else if (rewardCnt < 3){
rewardList.add(agent);
rewardCnt++;
} else {
break;
}
......@@ -197,6 +198,7 @@ public class AgentRewardQueueTask {
doPush(reward);
}
} catch (Exception e) {
logger.error(e.getMessage(), e);
logger.error("插入代理商分成奖励失败, 奖励 {}", message);
/**
* 回滚事务
......@@ -247,7 +249,7 @@ public class AgentRewardQueueTask {
agentReward.setSourceUserLevel(sourceUserLevel);
agentReward.setCreatedAt(System.currentTimeMillis() / 1000L);
agentReward.setCommissionRate(commissionRate);
agentReward.setRewardTypeChild(message.getRewardTypeChild());
agentReward.setRewardTypeChild(message.getRewardTypeChild() == null ? "" : message.getRewardTypeChild());
/**
* agent_reward里:
* money 面额(message里, 需要上供的代理商自己获得的奖励)
......
......@@ -278,6 +278,7 @@ public class PartnerSettleTask {
BigDecimal commission = cash.multiply(partnerReward.getCommissionRate());
partnerReward.setCash(cash);
partnerReward.setCommissionAcount(commission);
partnerReward.setSettleState(Constants.SETTLE_STATE_DONE);
partnerRewardService.updateById(partnerReward);
}
/**
......
......@@ -501,16 +501,6 @@
<select id="selectOneForUpdate" resultMap="BaseResultMap">
SELECT * FROM partner_account WHERE user_id = #{userId} FOR UPDATE;
</select>
<update id="updatePartnerRelation">
UPDATE partner_invite_relation a
JOIN user_info b ON a.user_id=b.user_id
SET a.invite_user_id = (
SELECT a.user_id
FROM partner_account a JOIN user_info b ON a.user_id=b.user_id
WHERE b.user_phone='#{to}'
)
WHERE b.user_phone='#{from}'
</update>
<select id="getPartnerAccountByPhone" resultMap="BaseResultMap">
SELECT a.*
FROM partner_account a
......
......@@ -10,6 +10,7 @@
<result column="agent_level" property="agentLevel" />
<result column="node_agent_level_name" property="nodeAgentLevelName" />
<result column="parent_agent_id" property="parentAgentId" />
<result column="company" property="company" />
<result column="parent_agent_list" property="parentAgentList" />
<result column="card_num" property="cardNum" />
<result column="card_activate_num" property="cardActivateNum" />
......@@ -28,6 +29,8 @@
<result column="created_at" property="createdAt" />
<result column="updated_at" property="updatedAt" />
<result column="deleted_at" property="deletedAt" />
<result column="presenter_id" property="presenterId" />
<result column="present_time" property="presentTime" />
<result column="agent_level_one" property="agentLevelOne" />
<result column="agent_level_two" property="agentLevelTwo" />
<result column="agent_level_three" property="agentLevelThree" />
......@@ -36,10 +39,10 @@
<sql id="Base_Column_List">
<!--@mbg.generated-->
agent_id, user_id, agent_name, agent_phone, agent_level, node_agent_level_name, parent_agent_id,
parent_agent_list, card_num, card_activate_num, commission_rate, pid, jd_pid, `identity`,
account_type, account, have_card, remark, register_from, invite_time, active_time,
agent_state, created_at, updated_at, deleted_at, agent_level_one, agent_level_two,
agent_level_three, agent_level_four
company, parent_agent_list, card_num, card_activate_num, commission_rate, pid, jd_pid,
`identity`, account_type, account, have_card, remark, register_from, invite_time,
active_time, agent_state, created_at, updated_at, deleted_at, presenter_id, present_time,
agent_level_one, agent_level_two, agent_level_three, agent_level_four
</sql>
<update id="updateBatch" parameterType="java.util.List">
<!--@mbg.generated-->
......@@ -75,6 +78,11 @@
when agent_id = #{item.agentId} then #{item.parentAgentId}
</foreach>
</trim>
<trim prefix="company = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when agent_id = #{item.agentId} then #{item.company}
</foreach>
</trim>
<trim prefix="parent_agent_list = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when agent_id = #{item.agentId} then #{item.parentAgentList}
......@@ -165,6 +173,16 @@
when agent_id = #{item.agentId} then #{item.deletedAt}
</foreach>
</trim>
<trim prefix="presenter_id = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when agent_id = #{item.agentId} then #{item.presenterId}
</foreach>
</trim>
<trim prefix="present_time = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when agent_id = #{item.agentId} then #{item.presentTime}
</foreach>
</trim>
<trim prefix="agent_level_one = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when agent_id = #{item.agentId} then #{item.agentLevelOne}
......@@ -195,17 +213,18 @@
<!--@mbg.generated-->
insert into user_agent
(user_id, agent_name, agent_phone, agent_level, node_agent_level_name, parent_agent_id,
parent_agent_list, card_num, card_activate_num, commission_rate, pid, jd_pid, `identity`,
account_type, account, have_card, remark, register_from, invite_time, active_time,
agent_state, created_at, updated_at, deleted_at, agent_level_one, agent_level_two,
agent_level_three, agent_level_four)
company, parent_agent_list, card_num, card_activate_num, commission_rate, pid,
jd_pid, `identity`, account_type, account, have_card, remark, register_from, invite_time,
active_time, agent_state, created_at, updated_at, deleted_at, presenter_id, present_time,
agent_level_one, agent_level_two, agent_level_three, agent_level_four)
values
<foreach collection="list" item="item" separator=",">
(#{item.userId}, #{item.agentName}, #{item.agentPhone}, #{item.agentLevel}, #{item.nodeAgentLevelName},
#{item.parentAgentId}, #{item.parentAgentList}, #{item.cardNum}, #{item.cardActivateNum},
#{item.commissionRate}, #{item.pid}, #{item.jdPid}, #{item.identity}, #{item.accountType},
#{item.account}, #{item.haveCard}, #{item.remark}, #{item.registerFrom}, #{item.inviteTime},
#{item.activeTime}, #{item.agentState}, #{item.createdAt}, #{item.updatedAt}, #{item.deletedAt},
#{item.parentAgentId}, #{item.company}, #{item.parentAgentList}, #{item.cardNum},
#{item.cardActivateNum}, #{item.commissionRate}, #{item.pid}, #{item.jdPid}, #{item.identity},
#{item.accountType}, #{item.account}, #{item.haveCard}, #{item.remark}, #{item.registerFrom},
#{item.inviteTime}, #{item.activeTime}, #{item.agentState}, #{item.createdAt},
#{item.updatedAt}, #{item.deletedAt}, #{item.presenterId}, #{item.presentTime},
#{item.agentLevelOne}, #{item.agentLevelTwo}, #{item.agentLevelThree}, #{item.agentLevelFour}
)
</foreach>
......@@ -223,6 +242,7 @@
agent_level,
node_agent_level_name,
parent_agent_id,
company,
parent_agent_list,
card_num,
card_activate_num,
......@@ -241,6 +261,8 @@
created_at,
updated_at,
deleted_at,
presenter_id,
present_time,
agent_level_one,
agent_level_two,
agent_level_three,
......@@ -257,6 +279,7 @@
#{agentLevel},
#{nodeAgentLevelName},
#{parentAgentId},
#{company},
#{parentAgentList},
#{cardNum},
#{cardActivateNum},
......@@ -275,6 +298,8 @@
#{createdAt},
#{updatedAt},
#{deletedAt},
#{presenterId},
#{presentTime},
#{agentLevelOne},
#{agentLevelTwo},
#{agentLevelThree},
......@@ -291,6 +316,7 @@
agent_level = #{agentLevel},
node_agent_level_name = #{nodeAgentLevelName},
parent_agent_id = #{parentAgentId},
company = #{company},
parent_agent_list = #{parentAgentList},
card_num = #{cardNum},
card_activate_num = #{cardActivateNum},
......@@ -309,6 +335,8 @@
created_at = #{createdAt},
updated_at = #{updatedAt},
deleted_at = #{deletedAt},
presenter_id = #{presenterId},
present_time = #{presentTime},
agent_level_one = #{agentLevelOne},
agent_level_two = #{agentLevelTwo},
agent_level_three = #{agentLevelThree},
......@@ -340,6 +368,9 @@
<if test="parentAgentId != null">
parent_agent_id,
</if>
<if test="company != null">
company,
</if>
<if test="parentAgentList != null">
parent_agent_list,
</if>
......@@ -394,6 +425,12 @@
<if test="deletedAt != null">
deleted_at,
</if>
<if test="presenterId != null">
presenter_id,
</if>
<if test="presentTime != null">
present_time,
</if>
<if test="agentLevelOne != null">
agent_level_one,
</if>
......@@ -430,6 +467,9 @@
<if test="parentAgentId != null">
#{parentAgentId},
</if>
<if test="company != null">
#{company},
</if>
<if test="parentAgentList != null">
#{parentAgentList},
</if>
......@@ -484,6 +524,12 @@
<if test="deletedAt != null">
#{deletedAt},
</if>
<if test="presenterId != null">
#{presenterId},
</if>
<if test="presentTime != null">
#{presentTime},
</if>
<if test="agentLevelOne != null">
#{agentLevelOne},
</if>
......@@ -520,6 +566,9 @@
<if test="parentAgentId != null">
parent_agent_id = #{parentAgentId},
</if>
<if test="company != null">
company = #{company},
</if>
<if test="parentAgentList != null">
parent_agent_list = #{parentAgentList},
</if>
......@@ -574,6 +623,12 @@
<if test="deletedAt != null">
deleted_at = #{deletedAt},
</if>
<if test="presenterId != null">
presenter_id = #{presenterId},
</if>
<if test="presentTime != null">
present_time = #{presentTime},
</if>
<if test="agentLevelOne != null">
agent_level_one = #{agentLevelOne},
</if>
......@@ -588,14 +643,7 @@
</if>
</trim>
</insert>
<update id="updatePingtuiRelation">
UPDATE user_agent
SET presenter_id=(SELECT agent_id FROM user_agent WHERE agent_phone=#{to})
WHERE agent_phone=#{from}
</update>
<update id="updateCengjiRelation">
UPDATE user_agent
SET parent_agent_id=(SELECT agent_id FROM user_agent WHERE agent_phone=#{to})
WHERE agent_phone=#{from}
</update>
<select id="getUserAgentByPhone" resultMap="BaseResultMap">
SELECT * FROM user_agent b WHERE agent_phone=#{phone}
</select>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment