|  | @@ -0,0 +1,218 @@
 | 
	
		
			
				|  |  | +package com.jeeplus.pubmodules.luckyDraw.controller;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +import com.baomidou.mybatisplus.core.metadata.IPage;
 | 
	
		
			
				|  |  | +import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 | 
	
		
			
				|  |  | +import com.jeeplus.common.utils.ResponseUtil;
 | 
	
		
			
				|  |  | +import com.jeeplus.logging.annotation.ApiLog;
 | 
	
		
			
				|  |  | +import com.jeeplus.pubmodules.luckyDraw.service.LuckyDrawInfoService;
 | 
	
		
			
				|  |  | +import com.jeeplus.pubmodules.luckyDraw.service.dto.LuckyDrawInfoDto;
 | 
	
		
			
				|  |  | +import com.jeeplus.pubmodules.luckyDraw.service.dto.LuckyDrawMembersDto;
 | 
	
		
			
				|  |  | +import io.swagger.annotations.Api;
 | 
	
		
			
				|  |  | +import io.swagger.annotations.ApiOperation;
 | 
	
		
			
				|  |  | +import org.springframework.http.ResponseEntity;
 | 
	
		
			
				|  |  | +import org.springframework.web.bind.annotation.*;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +import javax.annotation.Resource;
 | 
	
		
			
				|  |  | +import java.util.ArrayList;
 | 
	
		
			
				|  |  | +import java.util.List;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +/**
 | 
	
		
			
				|  |  | + * @author: 王强
 | 
	
		
			
				|  |  | + * @create: 2023-02-28 11:06
 | 
	
		
			
				|  |  | + **/
 | 
	
		
			
				|  |  | +@RestController
 | 
	
		
			
				|  |  | +@Api(tags ="抽奖-抽奖")
 | 
	
		
			
				|  |  | +@RequestMapping(value = "/luckyDraw/info")
 | 
	
		
			
				|  |  | +public class LuckyDrawInfoController {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @Resource
 | 
	
		
			
				|  |  | +    private LuckyDrawInfoService drawInfoService;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    /**
 | 
	
		
			
				|  |  | +     * 根据活动id查询抽奖信息
 | 
	
		
			
				|  |  | +     * @param id
 | 
	
		
			
				|  |  | +     * @return
 | 
	
		
			
				|  |  | +     */
 | 
	
		
			
				|  |  | +    @ApiOperation(value = "根据活动id查询抽奖信息")
 | 
	
		
			
				|  |  | +    @GetMapping("/findByEventId")
 | 
	
		
			
				|  |  | +    public ResponseEntity<LuckyDrawInfoDto> findByEventId(@RequestParam String id) throws Exception{
 | 
	
		
			
				|  |  | +        LuckyDrawInfoDto dto = drawInfoService.findByEventId(id);
 | 
	
		
			
				|  |  | +        return ResponseEntity.ok(dto);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @ApiLog("活动列表")
 | 
	
		
			
				|  |  | +    @GetMapping("list")
 | 
	
		
			
				|  |  | +    public ResponseEntity<IPage<LuckyDrawInfoDto>> data(LuckyDrawInfoDto luckyDrawEventsDTO, Page<LuckyDrawInfoDto> page) throws Exception {
 | 
	
		
			
				|  |  | +        IPage<LuckyDrawInfoDto> result = new Page<LuckyDrawInfoDto>();
 | 
	
		
			
				|  |  | +        result = drawInfoService.findList (page,luckyDrawEventsDTO);
 | 
	
		
			
				|  |  | +        return ResponseEntity.ok (result);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @ApiLog("数据拼接")
 | 
	
		
			
				|  |  | +    @GetMapping("pjList")
 | 
	
		
			
				|  |  | +    public ResponseEntity<IPage<LuckyDrawInfoDto>> pjList(LuckyDrawInfoDto luckyDrawEventsDTO, Page<LuckyDrawInfoDto> page) throws Exception {
 | 
	
		
			
				|  |  | +        page.setSize(-1);
 | 
	
		
			
				|  |  | +        page.setCurrent(1);
 | 
	
		
			
				|  |  | +        IPage<LuckyDrawInfoDto> result = new Page<LuckyDrawInfoDto>();
 | 
	
		
			
				|  |  | +        result = drawInfoService.findList (page,luckyDrawEventsDTO);
 | 
	
		
			
				|  |  | +        List<LuckyDrawInfoDto> records = result.getRecords();
 | 
	
		
			
				|  |  | +        List<LuckyDrawInfoDto> addList = new ArrayList<>();
 | 
	
		
			
				|  |  | +        //获取已抽奖人数和本活动剩余未抽奖人数
 | 
	
		
			
				|  |  | +       //drawInfoService.getLuckyDrawCount(luckyDrawEventsDTO);
 | 
	
		
			
				|  |  | +        records.forEach(re ->{
 | 
	
		
			
				|  |  | +            if(re.getLuckyDrawMembersDtos().size()>0){
 | 
	
		
			
				|  |  | +                re.setLuckyDrawFlag("1");
 | 
	
		
			
				|  |  | +                re.setShowFlag("2");
 | 
	
		
			
				|  |  | +                re.setLuckyDrawAgainFlag("1");
 | 
	
		
			
				|  |  | +            }else{
 | 
	
		
			
				|  |  | +                re.setLuckyDrawFlag("0");
 | 
	
		
			
				|  |  | +                re.setShowFlag("1");
 | 
	
		
			
				|  |  | +                re.setLuckyDrawAgainFlag("0");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            addList.add(re);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            LuckyDrawInfoDto btn = new LuckyDrawInfoDto(); // 新增按钮行
 | 
	
		
			
				|  |  | +            btn.setIsButton("1"); // 标记此行数据是按钮
 | 
	
		
			
				|  |  | +            if(re.getLuckyDrawMembersDtos().size()>0){
 | 
	
		
			
				|  |  | +                btn.setLuckyDrawFlag("1");
 | 
	
		
			
				|  |  | +                btn.setLuckyDrawAgainFlag("1");
 | 
	
		
			
				|  |  | +            }else{
 | 
	
		
			
				|  |  | +                btn.setLuckyDrawFlag("0");
 | 
	
		
			
				|  |  | +                btn.setLuckyDrawAgainFlag("0");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            btn.setEventsId(re.getEventsId());
 | 
	
		
			
				|  |  | +            btn.setNumber(re.getNumber());
 | 
	
		
			
				|  |  | +            btn.setId(re.getId());
 | 
	
		
			
				|  |  | +            addList.add(btn);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            if(re.getLuckyDrawMembersDtos().size()>0){
 | 
	
		
			
				|  |  | +                LuckyDrawInfoDto sh = new LuckyDrawInfoDto();
 | 
	
		
			
				|  |  | +                sh.setAwardsName("姓名");
 | 
	
		
			
				|  |  | +                sh.setNumber("手机号");
 | 
	
		
			
				|  |  | +                sh.setPrizeName("部门");
 | 
	
		
			
				|  |  | +                sh.setShowFlag("1");
 | 
	
		
			
				|  |  | +                sh.setLuckyDrawFlag("1");
 | 
	
		
			
				|  |  | +                addList.add(sh);
 | 
	
		
			
				|  |  | +            }else{
 | 
	
		
			
				|  |  | +                re.setLuckyDrawFlag("0");
 | 
	
		
			
				|  |  | +                re.setShowFlag("2");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            if(re.getLuckyDrawMembersDtos().size()>0){
 | 
	
		
			
				|  |  | +                for (int i = 0; i< re.getLuckyDrawMembersDtos().size(); i++){
 | 
	
		
			
				|  |  | +                    LuckyDrawMembersDto mem = re.getLuckyDrawMembersDtos().get(i);
 | 
	
		
			
				|  |  | +                    LuckyDrawInfoDto l = new LuckyDrawInfoDto();
 | 
	
		
			
				|  |  | +                    l.setAwardsName(mem.getName());
 | 
	
		
			
				|  |  | +                    l.setNumber(mem.getPhone());
 | 
	
		
			
				|  |  | +                    l.setPrizeName(mem.getOfficeName());
 | 
	
		
			
				|  |  | +                    l.setShowFlag("0");
 | 
	
		
			
				|  |  | +                    l.setLuckyDrawFlag("1");
 | 
	
		
			
				|  |  | +                    l.setSerialNumber(i + 1);
 | 
	
		
			
				|  |  | +                    addList.add(l);
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +        result.setRecords(addList);
 | 
	
		
			
				|  |  | +        return ResponseEntity.ok (result);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @ApiLog("数据拼接(中奖展示)")
 | 
	
		
			
				|  |  | +    @GetMapping("pjShowList")
 | 
	
		
			
				|  |  | +    public ResponseEntity<IPage<LuckyDrawInfoDto>> pjShowList(LuckyDrawInfoDto luckyDrawEventsDTO, Page<LuckyDrawInfoDto> page) throws Exception {
 | 
	
		
			
				|  |  | +        page.setSize(-1);
 | 
	
		
			
				|  |  | +        page.setCurrent(1);
 | 
	
		
			
				|  |  | +        IPage<LuckyDrawInfoDto> result = new Page<LuckyDrawInfoDto>();
 | 
	
		
			
				|  |  | +        result = drawInfoService.findList (page,luckyDrawEventsDTO);
 | 
	
		
			
				|  |  | +        List<LuckyDrawInfoDto> records = result.getRecords();
 | 
	
		
			
				|  |  | +        List<LuckyDrawInfoDto> addList = new ArrayList<>();
 | 
	
		
			
				|  |  | +        //获取已抽奖人数和本活动剩余未抽奖人数
 | 
	
		
			
				|  |  | +       //drawInfoService.getLuckyDrawCount(luckyDrawEventsDTO);
 | 
	
		
			
				|  |  | +        records.forEach(re ->{
 | 
	
		
			
				|  |  | +            if(re.getLuckyDrawMembersDtos().size()>0){
 | 
	
		
			
				|  |  | +                re.setLuckyDrawFlag("1");
 | 
	
		
			
				|  |  | +                re.setShowFlag("2");
 | 
	
		
			
				|  |  | +                re.setLuckyDrawAgainFlag("1");
 | 
	
		
			
				|  |  | +            }else{
 | 
	
		
			
				|  |  | +                re.setLuckyDrawFlag("0");
 | 
	
		
			
				|  |  | +                re.setShowFlag("1");
 | 
	
		
			
				|  |  | +                re.setLuckyDrawAgainFlag("0");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            addList.add(re);
 | 
	
		
			
				|  |  | +            if(re.getLuckyDrawMembersDtos().size()>0){
 | 
	
		
			
				|  |  | +                LuckyDrawInfoDto sh = new LuckyDrawInfoDto();
 | 
	
		
			
				|  |  | +                sh.setAwardsName("姓名");
 | 
	
		
			
				|  |  | +                sh.setNumber("手机号");
 | 
	
		
			
				|  |  | +                sh.setPrizeName("部门");
 | 
	
		
			
				|  |  | +                sh.setShowFlag("1");
 | 
	
		
			
				|  |  | +                sh.setLuckyDrawFlag("1");
 | 
	
		
			
				|  |  | +                addList.add(sh);
 | 
	
		
			
				|  |  | +            }else{
 | 
	
		
			
				|  |  | +                re.setLuckyDrawFlag("0");
 | 
	
		
			
				|  |  | +                re.setShowFlag("2");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            if(re.getLuckyDrawMembersDtos().size()>0){
 | 
	
		
			
				|  |  | +                for (int i = 0; i< re.getLuckyDrawMembersDtos().size(); i++){
 | 
	
		
			
				|  |  | +                    LuckyDrawMembersDto mem = re.getLuckyDrawMembersDtos().get(i);
 | 
	
		
			
				|  |  | +                    LuckyDrawInfoDto l = new LuckyDrawInfoDto();
 | 
	
		
			
				|  |  | +                    l.setAwardsName(mem.getName());
 | 
	
		
			
				|  |  | +                    l.setNumber(mem.getPhone());
 | 
	
		
			
				|  |  | +                    l.setPrizeName(mem.getOfficeName());
 | 
	
		
			
				|  |  | +                    l.setShowFlag("0");
 | 
	
		
			
				|  |  | +                    l.setLuckyDrawFlag("1");
 | 
	
		
			
				|  |  | +                    l.setSerialNumber(i + 1);
 | 
	
		
			
				|  |  | +                    addList.add(l);
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            /*re.getLuckyDrawMembersDtos().forEach(mem->{
 | 
	
		
			
				|  |  | +                LuckyDrawInfoDto l = new LuckyDrawInfoDto();
 | 
	
		
			
				|  |  | +                l.setAwardsName(mem.getName());
 | 
	
		
			
				|  |  | +                l.setNumber(mem.getPhone());
 | 
	
		
			
				|  |  | +                l.setPrizeName(mem.getOfficeName());
 | 
	
		
			
				|  |  | +                l.setShowFlag("0");
 | 
	
		
			
				|  |  | +                l.setLuckyDrawFlag("1");
 | 
	
		
			
				|  |  | +                addList.add(l);
 | 
	
		
			
				|  |  | +            });*/
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +        result.setRecords(addList);
 | 
	
		
			
				|  |  | +        return ResponseEntity.ok (result);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    /**
 | 
	
		
			
				|  |  | +     * 抽奖
 | 
	
		
			
				|  |  | +     * @param dto
 | 
	
		
			
				|  |  | +     * @return
 | 
	
		
			
				|  |  | +     */
 | 
	
		
			
				|  |  | +    @ApiOperation(value = "抽奖")
 | 
	
		
			
				|  |  | +    @PostMapping("/luckyDraw")
 | 
	
		
			
				|  |  | +    public ResponseEntity<String> luckyDraw(@RequestBody LuckyDrawInfoDto dto) throws Exception{
 | 
	
		
			
				|  |  | +        String s = drawInfoService.luckyDraw(dto);
 | 
	
		
			
				|  |  | +        return ResponseUtil.newInstance().ok (s);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    /**
 | 
	
		
			
				|  |  | +     * 重新抽奖
 | 
	
		
			
				|  |  | +     * @param dto
 | 
	
		
			
				|  |  | +     * @return
 | 
	
		
			
				|  |  | +     */
 | 
	
		
			
				|  |  | +    @ApiOperation(value = "抽奖")
 | 
	
		
			
				|  |  | +    @PostMapping("/luckyDrawAgain")
 | 
	
		
			
				|  |  | +    public ResponseEntity<String> luckyDrawAgain(@RequestBody LuckyDrawInfoDto dto) throws Exception{
 | 
	
		
			
				|  |  | +        String s = drawInfoService.luckyDrawAgain(dto);
 | 
	
		
			
				|  |  | +        return ResponseUtil.newInstance().ok (s);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    /**
 | 
	
		
			
				|  |  | +     * 重新抽奖
 | 
	
		
			
				|  |  | +     * @param dto
 | 
	
		
			
				|  |  | +     * @return
 | 
	
		
			
				|  |  | +     */
 | 
	
		
			
				|  |  | +    @ApiOperation(value = "清除抽奖结果信息")
 | 
	
		
			
				|  |  | +    @PostMapping("/luckyDrawClear")
 | 
	
		
			
				|  |  | +    public ResponseEntity<String> luckyDrawClear(@RequestBody LuckyDrawInfoDto dto) throws Exception{
 | 
	
		
			
				|  |  | +        String s = drawInfoService.luckyDrawClear(dto);
 | 
	
		
			
				|  |  | +        return ResponseUtil.newInstance().ok (s);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +}
 |