记得上下班打卡 | git大法好,push需谨慎

Commit 4fbcc735 authored by GaoHu's avatar GaoHu

修改总提成获取

parent b23c513d
......@@ -68,7 +68,7 @@
<td th:each="itemAgent : ${item.dataAgentVos}" th:text="${itemAgent.number}"></td>
<td th:text="${#aggregates.sum(item.dataAgentVos.![number])}"></td>
<td th:text="${#aggregates.sum(item.dataAgentVos.![priceReal])}"></td>
<td th:text="${#aggregates.sum(item.dataAgentVos.![commission])}"></td>
<td th:text="${item.totalCommission}"></td>
<td th:if="${item.priceStatus!=0}" th:text="待打款"></td>
<td th:if="${item.priceStatus==0}" th:text="已打款"></td>
<td th:if="${item.priceStatus!=0}">
......
......@@ -373,10 +373,10 @@ public class SmileShowServiceImpl extends ServiceImpl<SmileSchoolMapper, SmileSc
//根据代理id进行分组
Map<String, List<ShowBaseVoDto>> stringListMap = showBaseVoList.stream().collect(Collectors.groupingBy(ShowBaseVoDto::getAgentId));
//所有提成佣金
List<Map<String,Object>> agentIdCommissionList = smileAgentMapper.getUserOrgByPerIdAndUidAndAgentMaster(performancesId);
Map<String,BigDecimal> agentIdMasterMap = new HashMap<>();
agentIdCommissionList.forEach(map->{
agentIdMasterMap.put((String) map.get("uid"),(BigDecimal) map.get("totalPrice"));
List<Map<String, Object>> agentIdCommissionList = smileAgentMapper.getUserOrgByPerIdAndUidAndAgentMaster(performancesId);
Map<String, BigDecimal> agentIdMasterMap = new HashMap<>();
agentIdCommissionList.forEach(map -> {
agentIdMasterMap.put((String) map.get("uid"), (BigDecimal) map.get("totalPrice"));
});
//遍历分组
for (Map.Entry<String, List<ShowBaseVoDto>> showMap : stringListMap.entrySet()) {
......@@ -427,7 +427,7 @@ public class SmileShowServiceImpl extends ServiceImpl<SmileSchoolMapper, SmileSc
userData.setTotalCommission(totalCommission.add(agentIdMasterMap.get(baseVoDto.getAgentId())).stripTrailingZeros());
}
} else {
userData.setTotalCommission(totalCommission);
userData.setTotalCommission(totalCommission.stripTrailingZeros());
}
userData.setUid(showBaseVoDtoList.get(0).getAgentId());
userData.setUsername(showBaseVoDtoList.get(0).getName());
......@@ -459,7 +459,7 @@ public class SmileShowServiceImpl extends ServiceImpl<SmileSchoolMapper, SmileSc
}
//不是特邀代理 //在原有的数据上新增加该用户下所有普代的提成
BigDecimal decimal = agentIdMasterMap.get(smileUser.getUid());
userData.setTotalCommission(decimal);
userData.setTotalCommission(decimal.stripTrailingZeros());
userData.setUid(smileUser.getUid());
userData.setUsername(smileUser.getName());
userData.setCityName(smileUser.getCity());
......
......@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.smile.entity.SmileAgent;
import com.liquidnet.service.smile.entity.dao.SmileAgentDao;
import com.liquidnet.service.smile.entity.dto.ShowBaseVoDto;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
......@@ -23,17 +24,11 @@ public interface SmileAgentMapper extends BaseMapper<SmileAgent> {
void updateAgentById(@Param("id")Long id,@Param("totalCarry") BigDecimal totalCarry,@Param("ordCarry") BigDecimal ordCarry);
void insertAgent(@Param("performancesId") String performancesId, @Param("ticketId") String ticketId);
Map getUserDataByPerIdAndTicketsId(@Param("performancesId")String performancesId,@Param("uid") String uid,@Param("ticketId") String ticketId);
List<Map<String,Object>> getUserOrgByPerIdAndUidAndAgentMaster(@Param("performancesId") String performancesId);
List<SmileAgentDao> selectAgentList(@Param("performancesId") String performancesId);
List<SmileAgent> selectAgentCarryGtZeroByPerId(@Param("performancesId")String performancesId);
int selectCountPerId();
List<ShowBaseVoDto> selectMapByPerId(@Param("performancesId") String performancesId);
}
......@@ -21,46 +21,6 @@
where id = #{id}
</update>
<insert id="insertAgent">
INSERT INTO `smile_agent`
VALUES (NULL, #{performancesId}, #{ticketId}, 0, 0, 0);
</insert>
<select id="getUserDataByPerIdAndTicketsId" resultType="java.util.Map">
SELECT *,
SUM(kk.number - kk.refund_number) num,
SUM(kk.price *kk.`use`* ( kk.number - kk.refund_number )) totalPrice
FROM (SELECT kote.mid,
kote.order_id,
kote.ticket_id tid,
kt.title,
kote.user_id,
kote.performance_id perId,
kote.is_payment,
kote.status,
kot.number,
kot.refund_number,
kot.price,
kotr.agent_id agentId,
kotr.agent_id_master,
kotr.agent_distributions `use`,
kotr.agent_distributions_master,
su.type
FROM kylin_order_ticket_entities kote
LEFT JOIN kylin_order_tickets kot ON kote.order_id = kot.order_tickets_id
LEFT JOIN kylin_order_ticket_relations kotr ON kotr.order_id = kot.order_tickets_id
LEFT JOIN kylin_order_ticket_status kots ON kots.order_id = kotr.order_id
LEFT JOIN smile_user su ON su.uid = kotr.agent_id
LEFT JOIN kylin_tickets kt ON kote.ticket_id = kt.tickets_id
WHERE kote.performance_id = #{performancesId}
AND kote.ticket_id = #{ticketId}
AND kotr.agent_id = #{uid}
AND kotr.agent_status = 1
AND kots.status = 1
AND kots.pay_status = 1
GROUP BY kote.order_id) kk
</select>
<select id="getUserOrgByPerIdAndUidAndAgentMaster" resultType="java.util.Map">
SELECT
kotr.agent_id_master uid,
......@@ -111,10 +71,6 @@
AND del_tag = 0
</select>
<select id="selectCountPerId" resultType="int">
SELECT COUNT(sa.id) FROM (SELECT id FROM smile_agent WHERE del_tag = 0 GROUP BY performance_id) sa;
</select>
<select id="selectMapByPerId" resultType="com.liquidnet.service.smile.entity.dto.ShowBaseVoDto">
SELECT
sukotr.`name`,
......
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