package com.ruoyi.web.controller.smartor; 
 | 
  
 | 
import java.lang.reflect.Array; 
 | 
import java.util.List; 
 | 
import javax.servlet.http.HttpServletResponse; 
 | 
  
 | 
import com.ruoyi.common.core.domain.entity.SysUser; 
 | 
import com.ruoyi.common.core.domain.model.LoginUser; 
 | 
import com.ruoyi.common.utils.PageUtils; 
 | 
import com.smartor.domain.BaseTag; 
 | 
import com.smartor.service.IBaseTagService; 
 | 
import io.swagger.annotations.Api; 
 | 
import io.swagger.annotations.ApiImplicitParam; 
 | 
import io.swagger.annotations.ApiOperation; 
 | 
import org.springframework.security.access.prepost.PreAuthorize; 
 | 
import org.springframework.beans.factory.annotation.Autowired; 
 | 
import org.springframework.web.bind.annotation.GetMapping; 
 | 
import org.springframework.web.bind.annotation.PostMapping; 
 | 
import org.springframework.web.bind.annotation.PutMapping; 
 | 
import org.springframework.web.bind.annotation.DeleteMapping; 
 | 
import org.springframework.web.bind.annotation.PathVariable; 
 | 
import org.springframework.web.bind.annotation.RequestBody; 
 | 
import org.springframework.web.bind.annotation.RequestMapping; 
 | 
import org.springframework.web.bind.annotation.RestController; 
 | 
import com.ruoyi.common.annotation.Log; 
 | 
import com.ruoyi.common.core.controller.BaseController; 
 | 
import com.ruoyi.common.core.domain.AjaxResult; 
 | 
import com.ruoyi.common.enums.BusinessType; 
 | 
import com.ruoyi.common.utils.poi.ExcelUtil; 
 | 
import com.ruoyi.common.core.page.TableDataInfo; 
 | 
  
 | 
/** 
 | 
 * 标签Controller 
 | 
 * 
 | 
 * @author ruoyi 
 | 
 * @date 2023-06-06 
 | 
 */ 
 | 
@Api(description = "标签") 
 | 
@RestController 
 | 
@RequestMapping("/base/tag") 
 | 
public class BaseTagController extends BaseController { 
 | 
    @Autowired 
 | 
    private IBaseTagService baseTagService; 
 | 
  
 | 
    /** 
 | 
     * 查询标签列表 
 | 
     */ 
 | 
    @ApiOperation("查询标签列表") 
 | 
    //@PreAuthorize("@ss.hasPermi('system:tag:list')") 
 | 
    @PostMapping("/list") 
 | 
    public TableDataInfo list(@RequestBody BaseTag baseTag) { 
 | 
        PageUtils.startPageByPost(baseTag.getPageNum(), baseTag.getPageSize()); 
 | 
        List<BaseTag> list = null; 
 | 
        if (baseTag.getTagcategoryid() == null || baseTag.getTagcategoryid() == 0) baseTag.setTagcategoryid(null); 
 | 
        { 
 | 
            LoginUser loginUser = getLoginUser(); 
 | 
            SysUser user = loginUser.getUser(); 
 | 
            baseTag.setOrgid(user.getOrgid()); 
 | 
            list = baseTagService.selectBaseTagList(baseTag); 
 | 
        } 
 | 
        return getDataTable(list); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 导出标签列表 
 | 
     */ 
 | 
    @ApiOperation("导出标签列表") 
 | 
    //@PreAuthorize("@ss.hasPermi('system:tag:export')") 
 | 
    @Log(title = "标签", businessType = BusinessType.EXPORT) 
 | 
    @PostMapping("/export") 
 | 
    public void export(HttpServletResponse response, BaseTag baseTag) { 
 | 
        List<BaseTag> list = baseTagService.selectBaseTagList(baseTag); 
 | 
        ExcelUtil<BaseTag> util = new ExcelUtil<BaseTag>(BaseTag.class); 
 | 
        util.exportExcel(response, list, "标签数据"); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 获取标签详细信息 
 | 
     */ 
 | 
    @ApiOperation("获取标签详细信息") 
 | 
    @ApiImplicitParam(name = "remove", value = "主键ID", dataType = "long", dataTypeClass = Long.class) 
 | 
    //@PreAuthorize("@ss.hasPermi('system:tag:query')") 
 | 
    @GetMapping(value = "/{tagid}") 
 | 
    public AjaxResult getInfo(@PathVariable("tagid") Long tagid) { 
 | 
        return success(baseTagService.selectBaseTagByTagid(tagid)); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 新增标签 
 | 
     */ 
 | 
    @ApiOperation("新增标签") 
 | 
    //@PreAuthorize("@ss.hasPermi('system:tag:add')") 
 | 
    @Log(title = "标签", businessType = BusinessType.INSERT) 
 | 
    @PostMapping("/add") 
 | 
    public AjaxResult add(@RequestBody BaseTag baseTag) { 
 | 
        SysUser user = getLoginUser().getUser(); 
 | 
        baseTag.setOrgid(user.getOrgid()); 
 | 
        return toAjax(baseTagService.insertBaseTag(baseTag)); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 修改标签 
 | 
     */ 
 | 
    @ApiOperation("修改标签") 
 | 
    //@PreAuthorize("@ss.hasPermi('system:tag:edit')") 
 | 
    @Log(title = "标签", businessType = BusinessType.UPDATE) 
 | 
    @PostMapping("/edit") 
 | 
    public AjaxResult edit(@RequestBody BaseTag baseTag) { 
 | 
        return toAjax(baseTagService.updateBaseTag(baseTag)); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 删除标签 
 | 
     */ 
 | 
    @ApiOperation("删除标签") 
 | 
    @ApiImplicitParam(name = "remove", value = "主键ID", dataType = "long", dataTypeClass = Array.class) 
 | 
    //@PreAuthorize("@ss.hasPermi('system:tag:remove')") 
 | 
    @Log(title = "标签", businessType = BusinessType.DELETE) 
 | 
    @GetMapping("/remove/{tagids}") 
 | 
    public AjaxResult remove(@PathVariable Long[] tagids) { 
 | 
        return toAjax(baseTagService.deleteBaseTagByTagids(tagids)); 
 | 
    } 
 | 
  
 | 
  
 | 
} 
 |