增加妇幼生殖VIP

This commit is contained in:
wyn
2026-05-12 14:50:58 +08:00
parent bc52704f0f
commit d70492031e
9 changed files with 86 additions and 14 deletions

View File

@@ -70,12 +70,14 @@ public class UserVipController {
List<UserVip> l9 = userVipService.list(new LambdaQueryWrapper<UserVip>().eq(UserVip::getUserId,ShiroUtils.getUId()).eq(UserVip::getType,9).orderByDesc(UserVip::getEndTime));
List<UserVip> l5 = userVipService.list(new LambdaQueryWrapper<UserVip>().eq(UserVip::getUserId,ShiroUtils.getUId()).eq(UserVip::getType,5).orderByDesc(UserVip::getEndTime));
List<UserVip> l6 = userVipService.list(new LambdaQueryWrapper<UserVip>().eq(UserVip::getUserId,ShiroUtils.getUId()).eq(UserVip::getType,6).orderByDesc(UserVip::getEndTime));
if (l4.size()>0&&l9.size()>0&&l5.size()>0&&l6.size()>0){
List<UserVip> l10 = userVipService.list(new LambdaQueryWrapper<UserVip>().eq(UserVip::getUserId,ShiroUtils.getUId()).eq(UserVip::getType,10).orderByDesc(UserVip::getEndTime));
if (l4.size()>0&&l9.size()>0&&l5.size()>0&&l6.size()>0&&l10.size()>0){
Date t4 = l4.get(0).getEndTime();
Date t9 = l9.get(0).getEndTime();
Date t5 = l5.get(0).getEndTime();
Date t6 = l6.get(0).getEndTime();
if (t4.getTime()==t9.getTime()&&t9.getTime()==t5.getTime()&&t5.getTime()==t6.getTime()){
Date t10 = l10.get(0).getEndTime();
if (t4.getTime()==t9.getTime()&&t9.getTime()==t5.getTime()&&t5.getTime()==t6.getTime()&&t6.getTime()==t10.getTime()){
Map map = new HashMap();
map.put("type",1);
map.put("endTime",t4);
@@ -98,6 +100,10 @@ public class UserVipController {
map6.put("type",6);
map6.put("endTime",t6);
tempList.add(map6);
Map map10 = new HashMap();
map10.put("type",10);
map10.put("endTime",t10);
tempList.add(map10);
tempList = tempList.stream().sorted((map1,map2)->{
return Long.compare(((Date)map1.get("endTime")).getTime(),((Date)map2.get("endTime")).getTime());
}).collect(Collectors.toList());
@@ -133,6 +139,13 @@ public class UserVipController {
resList.add(map);
}
if (l10.size()>0){
Map map = new HashMap();
map.put("type",10);
map.put("endTime",l10.get(0).getEndTime());
resList.add(map);
}
}
}
List<UserVip> l7 = userVipService.list(new LambdaQueryWrapper<UserVip>().eq(UserVip::getUserId,ShiroUtils.getUId()).eq(UserVip::getType,7).orderByDesc(UserVip::getEndTime));
@@ -203,6 +216,7 @@ public class UserVipController {
ll.add(Arrays.asList(6));
ll.add(Arrays.asList(2));
ll.add(Arrays.asList(7,8));
ll.add(Arrays.asList(10));
}
List<Map<String,Object>> resList = new ArrayList<>();
for (List l : ll) {
@@ -369,6 +383,7 @@ public class UserVipController {
public R placeVipOrder(@RequestBody BuyOrder buyOrder){
int uid = ShiroUtils.getUId();
buyOrder.setOrderStatus("0");
buyOrder.setPaymentDate(new Date());
buyOrder.setOrderType("vip");
String timeId = IdWorker.getTimeId().substring(0, 32);
buyOrder.setOrderSn(timeId);
@@ -469,7 +484,7 @@ public class UserVipController {
Map map = new HashMap();
map.put("courseCount",0);
map.put("originalPrice",0);
if ("4".equals(type)||"9".equals(type)||"5".equals(type)||"6".equals(type)){
if ("4".equals(type)||"9".equals(type)||"5".equals(type)||"6".equals(type)||"10".equals(type)){
List list = new ArrayList<>();
if ("4".equals(type)){
userVipService.bottomLabel(1,list);
@@ -479,6 +494,8 @@ public class UserVipController {
userVipService.bottomLabel(2,list);
}else if ("6".equals(type)){
userVipService.bottomLabel(5,list);
}else if ("10".equals(type)){
userVipService.bottomLabel(109,list);
}
if (list.size()>0){
MPJLambdaWrapper<CourseCatalogueEntity> wrapper = new MPJLambdaWrapper();

View File

@@ -14,4 +14,6 @@ public interface UserVipLogDao extends MPJBaseMapper<UserVipLog> {
List<Map<String,Object>> getUserVipLogInfo(@Param("date") String date);
Map<String,Object> getUserVipLogInfoTotal(@Param("date") String date);
List<Map<String,Object>> getUserVipRefundInfo(@Param("date") String last_l_date,@Param("date") String last_date);
}

View File

@@ -22,6 +22,8 @@ public interface UserVipLogService extends IService<UserVipLog> {
List<Map<String,Object>> getUserVipLogInfo(String date);
List<Map<String, Object>> getUserVipRefundInfo(String last_l_date, String last_date);
Map<String, Object> getUserVipLogInfoTotal(String date);
}

View File

@@ -1396,7 +1396,7 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
.eq(ClassTaskAndQuesReply::getUserId,params.get("userId").toString()));
for (ClassTaskAndQuesReply reply:classTaskAndQuesReplys){
ClassEntity classEntity = this.getById(reply.getClassId());
if (!"2".equals(classEntity.getState())){
if (classEntity!=null && !"2".equals(classEntity.getState())){
res = reply;
}
}

View File

@@ -93,6 +93,11 @@ public class UserVipLogServiceImpl extends ServiceImpl<UserVipLogDao, UserVipLog
return this.baseMapper.getUserVipLogInfo(date);
}
@Override
public List<Map<String, Object>> getUserVipRefundInfo(String last_l_date, String last_date) {
return this.baseMapper.getUserVipRefundInfo(last_l_date,last_date);
}
@Override
public Map<String, Object> getUserVipLogInfoTotal(String date) {
return this.baseMapper.getUserVipLogInfoTotal(date);

View File

@@ -140,7 +140,7 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipDao, UserVip> impleme
.eq(UserVip::getUserId, u==null?ShiroUtils.getUId():u.getId())
.eq(UserVip::getState,0));
for (UserVip userVip : userVipList) {
if (userVip.getType()==4||userVip.getType()==9||userVip.getType()==5||userVip.getType()==6) {
if (userVip.getType()==4||userVip.getType()==9||userVip.getType()==5||userVip.getType()==6||userVip.getType()==10) {
List<CourseToMedicine> list = courseToMedicalDao.selectList(new LambdaQueryWrapper<CourseToMedicine>()
.eq(CourseToMedicine::getCourseId,courseId));
for (CourseToMedicine ctm:list) {
@@ -149,6 +149,7 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipDao, UserVip> impleme
if ((cm.getId()==1&&userVip.getType()==4)||//中医学
(cm.getId()==74&&userVip.getType()==9)||//中西汇通
(cm.getId()==2&&userVip.getType()==5)||//针灸学
(cm.getId()==109&&userVip.getType()==10)||//妇幼生殖
(cm.getId()==5&&userVip.getType()==6)){//肿瘤学
return userVip;
}
@@ -205,6 +206,8 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipDao, UserVip> impleme
set.add(6);
}else if (cm.getId() == 4) {//心身医学
set.add(8);
}else if (cm.getId() == 109){//妇幼生殖
set.add(10);
}
}
}
@@ -221,7 +224,8 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipDao, UserVip> impleme
return set;
}
public CourseMedicine topLabel(int labelId) {
public CourseMedicine
topLabel(int labelId) {
CourseMedicine cm = courseMedicineDao.selectById(labelId);
if (cm != null) {
CourseMedicine pcm = courseMedicineDao.selectById(cm.getPid());
@@ -258,8 +262,9 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipDao, UserVip> impleme
List<UserVip> resList = new ArrayList();
if(vipBuyConfigEntity.getType()==1){//医学超级
List<UserVip> userVipList = userVipDao.selectList(new LambdaQueryWrapper<UserVip>()
.eq(UserVip::getUserId,buyOrder.getUserId()).eq(UserVip::getState,0).in(UserVip::getType,4,9,5,6));
for (int i=4;i<=7;i++){
.eq(UserVip::getUserId,buyOrder.getUserId()).eq(UserVip::getState,0).in(UserVip::getType,4,9,5,6,10));
for (int i=4;i<=10;i++){
log.info("openVipForUser====i:"+i);
if (i==7){
i=9;
}
@@ -289,7 +294,7 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipDao, UserVip> impleme
}
}
}else if(vipBuyConfigEntity.getType()==11){//延期医学超级
for (int i=4;i<=7;i++){
for (int i=4;i<=10;i++){
if (i==7){
i=9;
}
@@ -367,7 +372,7 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipDao, UserVip> impleme
}
}
}else if (vipBuyConfigEntity.getType()==4||vipBuyConfigEntity.getType()==9||vipBuyConfigEntity.getType()==5||vipBuyConfigEntity.getType()==6||
vipBuyConfigEntity.getType()==7||vipBuyConfigEntity.getType()==8){
vipBuyConfigEntity.getType()==7||vipBuyConfigEntity.getType()==8 || vipBuyConfigEntity.getType()==10){
UserVip userVip = new UserVip();
userVip.setUserId(buyOrder.getUserId());
userVip.setType(vipBuyConfigEntity.getType());
@@ -376,7 +381,7 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipDao, UserVip> impleme
userVipDao.insert(userVip);
resList.add(userVip);
}else if (vipBuyConfigEntity.getType()==41||vipBuyConfigEntity.getType()==91||vipBuyConfigEntity.getType()==51||vipBuyConfigEntity.getType()==61||
vipBuyConfigEntity.getType()==71||vipBuyConfigEntity.getType()==81){
vipBuyConfigEntity.getType()==71||vipBuyConfigEntity.getType()==81 ||vipBuyConfigEntity.getType()==101){
List<UserVip> userVipList = userVipDao.selectList(new LambdaQueryWrapper<UserVip>()
.eq(UserVip::getUserId,buyOrder.getUserId())
.eq(UserVip::getType,vipBuyConfigEntity.getType().toString().substring(0,1))

View File

@@ -19,6 +19,8 @@ import java.io.IOException;
import java.io.OutputStream;
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.*;
/**
@@ -600,7 +602,17 @@ public class StatisticsController {
//导出vip记录明细
@RequestMapping("/exportUserVipLogInfo")
public void exportUserVipLogInfo(HttpServletResponse response, @RequestBody Map<String,Object> params){
List<Map<String,Object>> maps = userVipLogService.getUserVipLogInfo(params.get("date").toString());
String dateStr = params.get("date").toString();
List<Map<String,Object>> maps = userVipLogService.getUserVipLogInfo(dateStr);
/* DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date = LocalDate.parse(params.get("date").toString(), fmt);
String date_last_date = date.minusMonths(1).format(DateTimeFormatter.ofPattern("yyyy-MM"));
List<Map<String,Object>> refundMaps = userVipLogService.getUserVipRefundInfo(date_last_date,dateStr);*/
XSSFWorkbook wb = new XSSFWorkbook();
//创建一张表
Sheet sheet = wb.createSheet("vip记录明细");
@@ -626,6 +638,14 @@ public class StatisticsController {
titleRow.createCell(17).setCellValue("已摊销金额");
titleRow.createCell(18).setCellValue("当月摊销金额");
titleRow.createCell(19).setCellValue("剩余摊销金额");
// for (Map<String,Object> map:refundMaps){
// Map<String,Object> newMap = new HashMap<>();
// newMap.put("name",map.get("name").toString());
// newMap.put("tel",map.get("tel").toString());
// newMap.put("type",map.get("type").toString());
//
// }
//序号默认为1
int cell = 1;
//遍历