mitao
2025-05-20 179c4d64313c9b7572778da4aaaf6c6584fe457d
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComSanShuoEventController.java
New file
@@ -0,0 +1,183 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.sanshuo.*;
import com.panzhihua.common.service.community.CommunitySanShuoService;
import com.panzhihua.common.utlis.CopyUtil;
import com.panzhihua.common.utlis.StringUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.HashMap;
import static java.util.Objects.nonNull;
/**
 * ClassName   ComEventController
 * Description 三说会堂事件表控制层
 *
 * @author manailin
 * @date 2022-09-07 11:23:51
 */
@Slf4j
@Api(tags = {"三说会堂事件表控制层"})
@RestController
@RequestMapping("/sanshuo/comEvent")
public class ComSanShuoEventController extends BaseController {
    @Resource
    private CommunitySanShuoService comEventService;
    /**
     * description 新增三说会堂事件表
     *
     * @param comSanRequestVO 对象
     * @return R  新增结果对象
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("新增三说会堂事件表")
    @PostMapping("/add")
    public R insertComEvent(@RequestBody @Valid ComSanRequestVO comSanRequestVO, @ApiIgnore BindingResult results) {
        if (results.hasErrors()) {
            return R.fail(results.getFieldError().getDefaultMessage());
        }
        return comEventService.insertComEvent(comSanRequestVO);
    }
    /**
     * description 根据ID获取三说会堂事件表信息
     *
     * @param id 主键id
     * @return R<ComEvent> comEvent 对象
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("根据ID获取三说会堂事件详情信息,返回事件信息和图片信息")
    @GetMapping("/detail/{id}")
    public R<HashMap> detail(@PathVariable(value = "id") String id) {
        if (StringUtils.isEmpty(id)) {
            throw new RuntimeException("参数不能为空");
        }
        return comEventService.detail(id);
    }
    /**
     * description page   三说会堂事件表分页列表数据
     *
     * @param comEventPageRequestVO 对象
     * @return PageResult<List < ComEvent>>  三说会堂事件表分页列表数据
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation(value = "三说会堂事件表分页列表数据", notes = "三说会堂事件表分页列表数据")
    @PostMapping("/page")
    public R page(@RequestBody ComEventPageRequestVO comEventPageRequestVO) {
        log.info("================appId="+comEventPageRequestVO);
        ComEventVO comEventVO = new ComEventVO();
        BeanUtils.copyProperties(comEventPageRequestVO,comEventVO);
        comEventPageRequestVO.setCreateBy(getUserId());
        if (nonNull(comEventPageRequestVO.getAppId())){
            comEventVO.setAppId(comEventPageRequestVO.getAppId());
        }
        return comEventService.page(comEventVO, comEventVO.getPageNo(), comEventVO.getPageSize());
    }
    /**
     * description 修改三说会堂事件表状态
     *
     * @param id 主键id
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("取消申请")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long"),
    })
    @PutMapping("/cancelRequest")
    public R cancelRequest(@RequestParam("id") Long id) {
        return comEventService.cancelRequest(id);
    }
    /**
     * description 修改三说会堂事件表状态
     *
     * @param id 主键id
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("专家受理")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "事件ID", required = true, dataType = "Long"),
            @ApiImplicitParam(name = "specterId", value = "专家ID", required = true, dataType = "Long"),
    })
    @PutMapping("/accept/Request")
    public R acceptRequest( Long id,  Long specterId) {
        return comEventService.acceptRequest(id, specterId);
    }
    /**
     * description 修改三说会堂事件表状态
     *
     * @param id 主键id
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("专家不受理,转其他专家处理")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long"),
    })
    @PutMapping("/reject/Request")
    public R rejectRequest(@RequestParam("id") Long id) {
        return comEventService.rejectRequest(id);
    }
    /**
     * description 专家调解处理
     *
     * @param comEventConciliationVO 主键id
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("专家调解处理")
    @PutMapping("/conciliation/Request")
    public R conciliationRequest(@RequestBody ComEventConciliationVO comEventConciliationVO) {
        return comEventService.conciliationRequest(comEventConciliationVO);
    }
    /**
     * description 专家归档
     *
     * @param comEventArchiveVO 归档对象
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("事件专家归档")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long"),
            @ApiImplicitParam(name = "result", value = "归档结论", required = true, dataType = "String"),
    })
    @PutMapping("/archive/Request")
    public R archiveRequest(@RequestBody ComEventArchiveVO comEventArchiveVO) {
        return comEventService.archiveRequest(comEventArchiveVO);
    }
}