大赛赛组添加编辑功能实现

sale
tianea 3 years ago
parent 719ccf5f55
commit 9b9030701c

@ -0,0 +1,13 @@
package com.tz.platform.common.core.enmus;
import lombok.AllArgsConstructor;
import lombok.Getter;
@Getter
@AllArgsConstructor
public enum CompetitionType {
TEAM(0,"团队赛") ,PERSONAL(1,"个人赛");
private Integer code;
private String desc;
}

@ -2,9 +2,10 @@ package com.tz.platform.competitiion.pc;
import com.tz.platform.common.core.base.Result;
import com.tz.platform.competitiion.pc.biz.PCCompetitionBiz;
import com.tz.platform.competitiion.pc.dto.CompetitionDTO;
import com.tz.platform.competitiion.pc.dto.PageCompetitionDTO;
import com.tz.platform.competitiion.pc.vo.CompetitionVO;
import com.tz.platform.competitiion.pc.vo.PageCompetitionVo;
import com.tz.platform.competitiion.pc.vo.PageCompetitionVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -34,8 +35,16 @@ public class CompetitionController {
}
@PostMapping(value = "list")
public Result<PageCompetitionDTO> list(@RequestBody PageCompetitionVo vo){
public Result<PageCompetitionDTO> list(@RequestBody PageCompetitionVO vo){
return biz.list(vo);
}
@PostMapping(value = "get")
public Result<CompetitionDTO> get(@RequestBody CompetitionVO vo){
return biz.get(vo);
}
}

@ -1,9 +1,10 @@
package com.tz.platform.competitiion.pc.biz;
import com.tz.platform.common.core.base.Result;
import com.tz.platform.competitiion.pc.dto.CompetitionDTO;
import com.tz.platform.competitiion.pc.dto.PageCompetitionDTO;
import com.tz.platform.competitiion.pc.vo.CompetitionVO;
import com.tz.platform.competitiion.pc.vo.PageCompetitionVo;
import com.tz.platform.competitiion.pc.vo.PageCompetitionVO;
import com.tz.platform.entity.Competition;
import com.tz.platform.repository.CompetitionDao;
import org.springframework.beans.BeanUtils;
@ -14,6 +15,9 @@ import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.Date;
@Component
public class PCCompetitionBiz {
@ -25,8 +29,13 @@ public class PCCompetitionBiz {
if(StringUtils.isEmpty(vo.getName())){
return Result.error("大赛名称不能为空");
}
if(vo.getType() == null||vo.getType()<=0){
return Result.error("");
}
Competition competition = new Competition();
BeanUtils.copyProperties(vo,competition);
competition.setStartTime(new Date());
competition.setStatus(-1);
competition =competitionDao.save(competition);
return Result.success(competition.getId());
}
@ -46,7 +55,7 @@ public class PCCompetitionBiz {
return Result.success("success");
}
public Result<PageCompetitionDTO> list(PageCompetitionVo vo){
public Result<PageCompetitionDTO> list(PageCompetitionVO vo){
Sort sort = Sort.by(Sort.Direction.DESC,"id");
Pageable pageable = PageRequest.of(vo.getPageNo(),vo.getPageSize(),sort);
Page<Competition> competitionPage = competitionDao.findAll(pageable);
@ -54,4 +63,11 @@ public class PCCompetitionBiz {
dto.setPage(competitionPage);
return Result.success(dto);
}
public Result<CompetitionDTO> get(@RequestBody CompetitionVO vo){
Competition competition = competitionDao.getById(vo.getId());
CompetitionDTO dto = new CompetitionDTO();
BeanUtils.copyProperties(competition,dto);
return Result.success(dto);
}
}

@ -0,0 +1,28 @@
package com.tz.platform.competitiion.pc.dto;
import com.tz.platform.common.core.bo.Rotation;
import com.tz.platform.common.core.bo.Stage;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class CompetitionDTO implements Serializable {
private Long userNo;
private Long id;
private String name;
private Integer type;
private String sponsor;
private String supporter;
private Integer teamMinCount;
private Integer teamMaxCount;
private List<Stage> stageList;
private Integer currentStage;
private List<Rotation> bannerList;
private String thumbnail;
private String summary;
private String rule;
private String prize;
private String news;
}

@ -0,0 +1,15 @@
package com.tz.platform.competitiion.pc.dto;
import com.tz.platform.common.core.bo.GroupCat;
import java.io.Serializable;
import java.util.List;
public class GroupDTO implements Serializable {
private Long userNo;
private Integer id;
private Long competitionId;
private String name;
private Integer limitType;
private List<GroupCat> catList;
}

@ -0,0 +1,12 @@
package com.tz.platform.competitiion.pc.dto;
import com.tz.platform.entity.CompetitionGroup;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class ListGroupDTO implements Serializable {
private List<CompetitionGroup> list;
}

@ -0,0 +1,15 @@
package com.tz.platform.competitiion.pc.vo;
import com.tz.platform.common.core.bo.GroupCat;
import lombok.Data;
import java.util.List;
@Data
public class GroupVO {
private Long userNo;
private Integer id;
private Long competitionId;
private String name;
private Integer limitType;
private List<GroupCat> catList;
}

@ -4,7 +4,7 @@ import lombok.Data;
@Data
public class PageCompetitionVo {
public class PageCompetitionVO {
private Long userNo;
private Integer pageSize;
private Integer pageNo;

@ -26,12 +26,18 @@ public class Competition {
private Integer teamMinCount;
private Integer teamMaxCount;
private Integer status;
private Integer peopleCount;
@Column(columnDefinition = "TIMESTAMP")
private Date startTime;
@Column(columnDefinition = "TIMESTAMP")
private Date endTime;
@Type(type = "json")
@Column(columnDefinition = "json")
private List<Stage> stageList;
private Integer currentStage;
private String currentStageName;
private Date creatTime;
@Column(columnDefinition = "TIMESTAMP")
private Date createTime;
@Type(type = "json")
@Column(columnDefinition = "json")
private List<Rotation> bannerList;

@ -11,11 +11,11 @@ import java.util.List;
@Entity
@Table(indexes = {@Index(columnList = "competitionId")})
public class CompetitionGroup {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private Long competitionId;
private Long userNo;
private String name;
private Integer limitType;
@Type(type = "json")

@ -6,4 +6,5 @@ import org.springframework.stereotype.Repository;
@Repository
public interface CompetitionDao extends JpaRepository<Competition,Long> {
Competition getById(Long id);
}

@ -4,6 +4,10 @@ import com.tz.platform.entity.CompetitionGroup;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface CompetitionGroupDao extends JpaRepository<CompetitionGroup,Integer> {
List<CompetitionGroup> findByCompetitionId(Long competitionId);
CompetitionGroup getByCompetitionId(Long competitionId);
}

@ -1,8 +1,22 @@
package com.tz.platform.system.pc;
import com.tz.platform.common.core.base.Result;
import com.tz.platform.system.pc.biz.PCProvinceBiz;
import com.tz.platform.system.pc.dto.ProvinceDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping(value = "/pc/system/province")
public class ProviceController {
@Autowired
private PCProvinceBiz biz;
@GetMapping(value = "list")
public Result<ProvinceDTO> list(){
return biz.list();
}
}

@ -4,9 +4,12 @@ import com.tz.platform.common.core.base.Result;
import com.tz.platform.entity.Province;
import com.tz.platform.repository.ProvinceDao;
import com.tz.platform.system.pc.bo.ProvinceBO;
import com.tz.platform.system.pc.dto.ProvinceDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class PCProvinceBiz {
@ -19,4 +22,11 @@ public class PCProvinceBiz {
return Result.success("success");
}
public Result<ProvinceDTO> list(){
List<Province> provinceList = provinceDao.findAll();
ProvinceDTO dto = new ProvinceDTO();
dto.setList(provinceList);
return Result.success(dto);
}
}

@ -0,0 +1,11 @@
package com.tz.platform.system.pc.dto;
import com.tz.platform.entity.Province;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class ProvinceDTO implements Serializable {
List<Province> list;
}

@ -1,5 +1,6 @@
package com.tz.platform.repository;
import com.tz.platform.entity.Province;
import com.tz.platform.entity.Region;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
@ -14,13 +15,19 @@ public class RegionRepositoryTest {
@Autowired
private RegionDao regionDao;
@Autowired
private ProvinceDao provinceDao;
@Test
public void regionSaveTest(){
Region region = new Region();
region.setName("华中地区");
List<String> provinces = new ArrayList<>();
provinces.addAll(Arrays.asList("湖北省","河南省","湖南省"));
region.setProvince(provinces);
regionDao.save(region);
List<Region> regionList = regionDao.findAll();
regionList.forEach(region -> {
region.getProvince().forEach(p ->{
Province province = new Province();
province.setName(p);
province.setRegionId(region.getId());
provinceDao.save(province);
});
});
}
}

Loading…
Cancel
Save