WinningActivitiesService.java
3.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package com.huaheng.pc.winningActivities.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.huaheng.framework.web.domain.AjaxResult;
import com.huaheng.pc.saleService.domain.SaleService;
import com.huaheng.pc.saleService.mapper.SaleServiceMapper;
import com.huaheng.pc.system.dict.service.IDictDataService;
import com.huaheng.pc.winningActivities.domain.WinningActivities;
import com.huaheng.pc.winningActivities.mapper.WinningActivitiesMapper;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
/**
* @author:zhouhong
* 2022021
*/
@Service
public class WinningActivitiesService extends ServiceImpl<WinningActivitiesMapper, WinningActivities> {
@Resource
private IDictDataService dictDataService;
public Boolean checkPhone(String phone){
LambdaQueryWrapper<WinningActivities> wrapper = Wrappers.lambdaQuery();
wrapper.eq(WinningActivities::getPhone,phone);
List<WinningActivities> list=this.list(wrapper);
if(list!=null&&list.size()>0){
return true;
}
return false;
}
public AjaxResult updateType(String ids, String winningType){
WinningActivities winningActivities = new WinningActivities();
winningActivities.setWinningType(winningType);
List<String> lis = Arrays.asList(ids.split(","));
UpdateWrapper<WinningActivities> userUpdateWrapper = new UpdateWrapper<>();
userUpdateWrapper.in("id", lis);
if(!this.update(winningActivities, userUpdateWrapper)){
return AjaxResult.error("提交失败");
}
return AjaxResult.success("提交成功");
}
@Transactional
public AjaxResult draw(WinningActivities domain){
String winningTypeNow=dictDataService.selectDictLabel("winningTypeNow","1");
String configValue=dictDataService.selectDictLabel("winningNum",winningTypeNow);
if(StringUtils.isEmpty(configValue)){
return AjaxResult.error(winningTypeNow+"字典表无配置奖项人数");
}
Integer num=Integer.valueOf(configValue);
List<WinningActivities> list=null;
if(winningTypeNow.equals("1")){
LambdaQueryWrapper<WinningActivities> wrapper = Wrappers.lambdaQuery();
wrapper.eq(WinningActivities::getWinningType,1);
list=this.list(wrapper);
}else{
LambdaQueryWrapper<WinningActivities> wrapper = Wrappers.lambdaQuery();
wrapper.eq(WinningActivities::getWinningType,-2);
wrapper.last(" order by rand() limit "+num);
list=this.list(wrapper);
for(WinningActivities winningActivities:list){
winningActivities.setWinningType(winningTypeNow);
winningActivities.setUpdated(new Date());
this.updateById(winningActivities);
}
}
if(list==null||list.size()<=0){
return AjaxResult.error("名额已用完,请联系后台管理人员!");
}
return AjaxResult.success().setData(list);
}
public AjaxResult getDraw(WinningActivities winningActivities){
LambdaQueryWrapper<WinningActivities> wrapper = Wrappers.lambdaQuery();
wrapper.eq(StringUtils.isNotEmpty(winningActivities.getWinningType()),WinningActivities::getWinningType,winningActivities.getWinningType());
wrapper.ne(WinningActivities::getWinningType,"-2");
wrapper.orderByAsc(WinningActivities::getWinningType);
List<WinningActivities> list=this.list(wrapper);
return AjaxResult.success().setData(list);
}
}