Commit de0c0d67 authored by 周健威's avatar 周健威

Merge remote-tracking branch 'origin/base-modify' into base-modify

parents 05d16729 9c834d40
......@@ -4,8 +4,10 @@ import com.github.wxiaoqi.security.admin.dto.BaseUserMemberExportDTO;
import com.github.wxiaoqi.security.admin.dto.BaseUserMemberExportDataFindDTO;
import com.github.wxiaoqi.security.admin.dto.UserMemberDTO;
import com.github.wxiaoqi.security.admin.dto.UserMemberSaveDTO;
import com.github.wxiaoqi.security.admin.entity.BaseUserMember;
import com.github.wxiaoqi.security.admin.entity.BaseUserMemberExport;
import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import com.github.wxiaoqi.security.admin.entity.UserMemberLevel;
import com.github.wxiaoqi.security.admin.mapper.BaseUserMemberExportMapper;
import com.github.wxiaoqi.security.admin.vo.BaseUserMemberExportVo;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
......@@ -22,6 +24,7 @@ import tk.mybatis.mapper.entity.Example;
import java.time.Instant;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
......@@ -45,7 +48,7 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper,
private AppUserLoginBiz appUserLoginBiz;
public void saveUserMember(UserMemberSaveDTO userMemberSaveDTO,Integer userId,String name) {
public void saveUserMember(UserMemberSaveDTO userMemberSaveDTO, Integer userId, String name) {
if (userMemberSaveDTO != null) {
UserMemberDTO userMemberDTO = new UserMemberDTO();
BaseUserMemberLevel level = userMemberLevelBiz.getLevel(userMemberSaveDTO.getMemberLevel());
......@@ -86,26 +89,37 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper,
}
@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
public int importUserMember(List<String[]> userMemberData,Integer userId,String userName) {
public int importUserMember(List<String[]> userMemberData, Integer userId, String userName) {
List<BaseUserMemberExport> baseUserMemberExports = new ArrayList<>();
List<Integer> levels = userMemberData.stream().map(x -> x[1]).map(Integer::valueOf).distinct().collect(Collectors.toList());
Map<Integer, Integer> levelAndDisCountMap = userMemberLevelBiz.getUserMemberLevelAndDisCountMapByLevels(levels);
List<BaseUserMemberLevel> levesls = userMemberLevelBiz.getLevesls();
Map<Integer, BaseUserMemberLevel> levelAndbaseUserMemberMap = levesls.stream().collect(Collectors.toMap(BaseUserMemberLevel::getLevel, Function.identity()));
Map<String,Integer> leavelNameAndLeaveMap = levelAndbaseUserMemberMap.values().stream().collect(Collectors.toMap(BaseUserMemberLevel::getName, BaseUserMemberLevel::getLevel));
List<String> phones = userMemberData.stream().map(x -> x[0]).distinct().collect(Collectors.toList());
Map<String, Integer> phoneAndUserIdMap = appUserLoginBiz.findPhoneAndUserIdMapByPhones(phones);
Set<Map.Entry<String, Integer>> leaveNameAndLeaveEntry = leavelNameAndLeaveMap.entrySet();
Integer memberLevel =1;
Integer discount = 0;
for (String[] data : userMemberData) {
String phone = data[0];
String memberLevel = data[1];
String memberLevelName = data[1];
String totalNumber = data[2];
String rentFreeDays = data[3];
for (Map.Entry<String, Integer> entry : leaveNameAndLeaveEntry) {
if (entry.getKey().contains(memberLevelName.substring(0,1))){
memberLevel = entry.getValue();
discount = levelAndbaseUserMemberMap.get(memberLevel).getDiscount();
break;
}
}
if (phoneAndUserIdMap != null && phoneAndUserIdMap.get(phone) != null) {
UserMemberDTO userMemberDTO = new UserMemberDTO();
userMemberDTO.setUserId(phoneAndUserIdMap.get(phone));
userMemberDTO.setMemberLevel(Integer.valueOf(memberLevel));
userMemberDTO.setDiscount(levelAndDisCountMap == null ? 0 : (levelAndDisCountMap.get(Integer.valueOf(memberLevel)) == null ? 0 : levelAndDisCountMap.get(Integer.valueOf(memberLevel))));
userMemberDTO.setMemberLevel(memberLevel);
userMemberDTO.setDiscount(discount);
userMemberDTO.setTotalNumber(Integer.valueOf(totalNumber));
userMemberDTO.setRentFreeDays(Integer.valueOf(rentFreeDays));
userMemberDTO.setIsBind(1);
......@@ -120,10 +134,10 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper,
BaseUserMemberExport memberExport = BaseUserMemberExport
.builder()
.username(phone)
.memberLevel(Integer.valueOf(memberLevel))
.memberLevel(memberLevel)
.totalNumber(Integer.valueOf(totalNumber))
.rentFreeDays(Integer.valueOf(rentFreeDays))
.discount(levelAndDisCountMap == null ? 0 : (levelAndDisCountMap.get(Integer.valueOf(memberLevel)) == null ? 0 : levelAndDisCountMap.get(Integer.valueOf(memberLevel))))
.discount(discount)
.status(phoneAndUserIdMap == null ? 0 : (phoneAndUserIdMap.get(phone) == null ? 0 : 1))
.crtId(userId)
.crtName(userName)
......@@ -152,7 +166,7 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper,
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("username", phone);
criteria.andEqualTo("status", 0);
criteria.andEqualTo("isDel",0);
criteria.andEqualTo("isDel", 0);
List<BaseUserMemberExport> baseUserMemberExports = mapper.selectByExample(example);
if (CollectionUtils.isNotEmpty(baseUserMemberExports)) {
......@@ -183,7 +197,7 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper,
BaseUserMemberExportVo baseUserMemberExportVo;
for (BaseUserMemberExportDTO userMemberExportDTO : userMemberExportDTOS) {
baseUserMemberExportVo = new BaseUserMemberExportVo();
BeanUtils.copyProperties(userMemberExportDTO,baseUserMemberExportVo);
BeanUtils.copyProperties(userMemberExportDTO, baseUserMemberExportVo);
baseUserMemberExportVos.add(baseUserMemberExportVo);
}
baseUserMemberExportVos.sort(Comparator.comparing(BaseUserMemberExportVo::getCrtTime).reversed());
......@@ -196,6 +210,6 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper,
}
public void updateUserMemberExportDataStatus(Integer id) {
mapper.updateUserMemberExportDataStatusById(id,1);
mapper.updateUserMemberExportDataStatusById(id, 1);
}
}
......@@ -2,6 +2,7 @@ package com.github.wxiaoqi.security.admin.biz;
import com.ace.cache.annotation.Cache;
import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import com.github.wxiaoqi.security.admin.entity.UserMemberLevel;
import com.github.wxiaoqi.security.admin.mapper.BaseUserMemberLevelMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import org.apache.commons.collections.CollectionUtils;
......@@ -12,6 +13,7 @@ import tk.mybatis.mapper.entity.Example;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
......@@ -41,11 +43,11 @@ public class UserMemberLevelBiz extends BaseBiz<BaseUserMemberLevelMapper,BaseUs
}
@Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
public Map<Integer,Integer> getUserMemberLevelAndDisCountMapByLevels(List<Integer> levels){
public Map<Integer, BaseUserMemberLevel> getUserMemberLevelAndUserMemberMapByLevels(List<Integer> levels){
List<BaseUserMemberLevel> baseUserMemberLevels = mapper.selectUserMembersLevelByLevels(levels);
Map<Integer,Integer> levelAndDiscountMap = null;
Map<Integer,BaseUserMemberLevel> levelAndDiscountMap = null;
if (CollectionUtils.isNotEmpty(baseUserMemberLevels)){
levelAndDiscountMap = baseUserMemberLevels.stream().collect(Collectors.toMap(BaseUserMemberLevel::getLevel,BaseUserMemberLevel::getDiscount));
levelAndDiscountMap = baseUserMemberLevels.stream().collect(Collectors.toMap(BaseUserMemberLevel::getLevel, Function.identity()));
}
return levelAndDiscountMap;
}
......
......@@ -45,7 +45,7 @@ public class UserCouponAdminController {
}
@PostMapping("/sendcoupon")
public ObjectRestResponse<Void> sendCoupon(UserCouponSendDTO userCouponSendDTO){
public ObjectRestResponse<Void> sendCoupon(@RequestBody UserCouponSendDTO userCouponSendDTO){
userCouponBiz.sendCoupon(userCouponSendDTO);
return ObjectRestResponse.succ();
}
......
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