lidongdong
2022-09-23 edf2bc6f41c9784e9cdccc9b569a7091a5a5a438
flower_city/src/main/java/com/dg/core/controller/ReplyTemplateController.java
New file
@@ -0,0 +1,146 @@
package com.dg.core.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.ReplyTemplateEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IReplyTemplateService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Api(tags = {"回复模板接口"})
@RestController
@RequestMapping("/reply")
public class ReplyTemplateController extends BaseController
{
    @Autowired
    IReplyTemplateService iReplyTemplateService;
    /**
     * 获取模板列表
     * @return
     */
    @ApiOperation("获取模板列表")
    @GetMapping("/getlist")
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "Name",required = false) String Name)
    {
        Page<ReplyTemplateEntity> pageParam = new Page<>(pageNum,pageSize);
        List<ReplyTemplateEntity> list = iReplyTemplateService.selectConfigList(pageParam,pageSize,Name);
        int num=iReplyTemplateService.countNum(Name);
        return getDataTable(list,num);
    }
    /**
     * 获取详情
     * @param Id
     * @return
     */
    @ApiOperation("获取详情")
    @GetMapping("/getdata")
    public ResultData selectConfigData(@RequestParam(value = "Id",required = false) String Id)
    {
        if(StringUtils.isEmpty(Id))
        {
            return ResultData.error("Id不能为空");
        }
        return ResultData.success(iReplyTemplateService.selectConfigData(Id));
    }
    /**
     * 新增模板
     * @param entity
     * @return
     */
    @ApiOperation("新增模板")
    @PostMapping("/add")
    @Authorization
    public ResultData insertConfig(@RequestBody ReplyTemplateEntity entity,@CurrentUser SysUser sysUser)
    {
        if(entity==null)
        {
            return ResultData.error("参数不能为空");
        }
        if(StringUtils.isEmpty(entity.getName()))
        {
            return ResultData.error("模板名称不能为空");
        }
        entity.setId(null);
        entity.setDepartmentId(sysUser.getDepartmentId());
        entity.setCreateUserId(sysUser.getUserId()+"");
        return toAjax(iReplyTemplateService.insertConfig(entity));
    }
    /**
     * 更新模板
     * @param entity
     * @return
     */
    @ApiOperation("更新模板")
    @PostMapping("/update")
    public ResultData updateConfig(@RequestBody ReplyTemplateEntity entity)
    {
        if(entity==null)
        {
            return ResultData.error("参数不能为空");
        }
        if(StringUtils.isEmpty(entity.getName()))
        {
            return ResultData.error("模板名称不能为空");
        }
        return toAjax(iReplyTemplateService.updateConfig(entity));
    }
    /**
     * 删除模板
     * @param Id
     * @return
     */
    @ApiOperation("删除模板")
    @DeleteMapping("/delete")
    public ResultData deleteConfigById(@RequestParam(value = "Id",required = false) String Id)
    {
        return toAjax(iReplyTemplateService.deleteConfigById(Id));
    }
    /**
     * 复制模板
     * @param Id
     * @return
     */
    @ApiOperation("复制模板")
    @PostMapping("/copy")
    public ResultData copy(@RequestParam(value = "Id",required = false) String Id)
    {
        if(StringUtils.isEmpty(Id))
        {
            return ResultData.error("Id不能为空");
        }
        ReplyTemplateEntity entity=iReplyTemplateService.selectConfigData(Id);
        if(entity==null)
        {
            return ResultData.error("模板不存在!");
        }
        entity.setId(null);
        return toAjax(iReplyTemplateService.insertConfig(entity));
    }
}