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

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

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

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

@ -6,4 +6,5 @@ import org.springframework.stereotype.Repository;
@Repository @Repository
public interface CompetitionDao extends JpaRepository<Competition,Long> { 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.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
@Repository @Repository
public interface CompetitionGroupDao extends JpaRepository<CompetitionGroup,Integer> { 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; 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; import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@RequestMapping(value = "/pc/system/province")
public class ProviceController { 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.entity.Province;
import com.tz.platform.repository.ProvinceDao; import com.tz.platform.repository.ProvinceDao;
import com.tz.platform.system.pc.bo.ProvinceBO; 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.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List;
@Component @Component
public class PCProvinceBiz { public class PCProvinceBiz {
@ -19,4 +22,11 @@ public class PCProvinceBiz {
return Result.success("success"); 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; package com.tz.platform.repository;
import com.tz.platform.entity.Province;
import com.tz.platform.entity.Region; import com.tz.platform.entity.Region;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -14,13 +15,19 @@ public class RegionRepositoryTest {
@Autowired @Autowired
private RegionDao regionDao; private RegionDao regionDao;
@Autowired
private ProvinceDao provinceDao;
@Test @Test
public void regionSaveTest(){ public void regionSaveTest(){
Region region = new Region(); List<Region> regionList = regionDao.findAll();
region.setName("华中地区"); regionList.forEach(region -> {
List<String> provinces = new ArrayList<>(); region.getProvince().forEach(p ->{
provinces.addAll(Arrays.asList("湖北省","河南省","湖南省")); Province province = new Province();
region.setProvince(provinces); province.setName(p);
regionDao.save(region); province.setRegionId(region.getId());
provinceDao.save(province);
});
});
} }
} }

Loading…
Cancel
Save