package com.panzhihua.service_community.api;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.extension.api.ApiController;
|
import com.panzhihua.common.model.dtos.community.social.PageProjectDTO;
|
import com.panzhihua.common.model.dtos.community.social.PageProjectSignListDTO;
|
import com.panzhihua.common.model.vos.R;
|
import com.panzhihua.common.model.dtos.property.CommonPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.panzhihua.common.model.vos.community.social.SocialProjectVO;
|
import com.panzhihua.common.utlis.Snowflake;
|
import com.panzhihua.service_community.entity.ComActSocialProject;
|
import com.panzhihua.service_community.service.ComActSocialProjectService;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
import java.io.Serializable;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* 三社联动项目表(ComActSocialProject)表控制层
|
*
|
* @author makejava
|
* @since 2021-12-22 14:02:48
|
*/
|
@RestController
|
@RequestMapping("comActSocialProject")
|
public class ComActSocialProjectApi {
|
/**
|
* 服务对象
|
*/
|
@Resource
|
private ComActSocialProjectService comActSocialProjectService;
|
|
/**
|
* 分页查询所有数据
|
*
|
* @param commonPage 查询实体
|
* @return 所有数据
|
*/
|
@PostMapping("queryAll")
|
public R selectAll(@RequestBody CommonPage commonPage) {
|
return this.comActSocialProjectService.pageList(commonPage);
|
}
|
|
/**
|
* 平台详情接口
|
*
|
* @param id 主键
|
* @return 单条数据
|
*/
|
@GetMapping("{id}")
|
public R selectOne(@PathVariable("id") Long id) {
|
return this.comActSocialProjectService.getByBackstage(id);
|
}
|
/**
|
* 根据项目id分页获取关联项目
|
*/
|
@PostMapping("/getRelation")
|
public R getRelation(@RequestBody CommonPage commonPage){
|
return this.comActSocialProjectService.getProject(commonPage);
|
}
|
|
/**
|
* 新增数据
|
*
|
* @param socialProjectVO 实体对象
|
* @return 新增结果
|
*/
|
@PostMapping
|
public R insert(@RequestBody SocialProjectVO socialProjectVO) {
|
ComActSocialProject comActSocialProject=new ComActSocialProject();
|
BeanUtils.copyProperties(socialProjectVO,comActSocialProject);
|
// comActSocialProject.setId(Snowflake.getId());
|
comActSocialProject.setCreateTime(new Date());
|
if(socialProjectVO.getLevel()>1){
|
ComActSocialProject comActSocialProject1=comActSocialProjectService.getById(socialProjectVO.getParentId());
|
comActSocialProject.setColumnId(comActSocialProject1.getColumnId());
|
comActSocialProject.setSecondColumnId(comActSocialProject1.getSecondColumnId());
|
}
|
return R.ok(this.comActSocialProjectService.save(comActSocialProject));
|
}
|
|
/**
|
* 修改数据
|
*
|
* @param socialProjectVO 实体对象
|
* @return 修改结果
|
*/
|
@PostMapping("/update")
|
public R update(@RequestBody SocialProjectVO socialProjectVO) {
|
return R.ok(this.comActSocialProjectService.updateProject(socialProjectVO));
|
}
|
|
/**
|
* 删除数据
|
*
|
* @param id 主键结合
|
* @return 删除结果
|
*/
|
@GetMapping("del")
|
public R delete(@RequestParam("id") Long id) {
|
return R.ok(this.comActSocialProjectService.removeById(id));
|
}
|
|
/**
|
* 小程序详情接口
|
* @param id
|
* @param userId
|
* @return
|
*/
|
@GetMapping("/getApplet")
|
public R getApplet(@RequestParam("id") Long id, @RequestParam(value = "userId", required = false) Long userId){
|
return this.comActSocialProjectService.getByApplet(id, userId);
|
}
|
|
/**
|
* 分页查询项目报名列表
|
* @param pageProjectSignListDTO
|
* @return
|
*/
|
@PostMapping("/signList")
|
public R pageProjectSignList(@RequestBody PageProjectSignListDTO pageProjectSignListDTO) {
|
return comActSocialProjectService.pageProjectSignList(pageProjectSignListDTO);
|
}
|
|
/**
|
* 项目公开报名
|
* @param projectId
|
* @param userId
|
* @return
|
*/
|
@GetMapping("/sign")
|
public R signProject(@RequestParam("projectId") Long projectId, @RequestParam("userId") Long userId) {
|
return comActSocialProjectService.signProject(projectId, userId);
|
}
|
|
/**
|
* 分页查询用户报名的项目
|
* @param pageProjectDTO
|
* @return
|
*/
|
@PostMapping("/project")
|
public R pageProjectWhichIsSignedByUser(@RequestBody PageProjectDTO pageProjectDTO) {
|
return comActSocialProjectService.pageProjectWhichIsSignedByUser(pageProjectDTO);
|
}
|
}
|