package com.tuoheng.admin.controller;


import com.baomidou.mybatisplus.core.metadata.IPage;
import com.tuoheng.admin.entity.domain.Tenant;
import com.tuoheng.admin.entity.dto.TenantDto;
import com.tuoheng.admin.entity.request.TenantQuery;
import com.tuoheng.admin.service.ITenantService;
import com.tuoheng.common.common.OperationEnum;
import com.tuoheng.common.utils.JsonResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import com.tuoheng.common.common.BaseController;

/**
 * <p>
 * 企业管理表 前端控制器
 * </p>
 *
 * @author 拓恒
 * @since 2022-07-15
 */
@RestController
@RequestMapping("/tenant")
public class TenantController extends BaseController {
    @Autowired
    private ITenantService tenantService;

    /**
     * 获取职级列表
     *
     * @param levelQuery 查询条件
     * @return
     */
    @GetMapping("/index")
    public IPage<Tenant> index(TenantQuery levelQuery) {
        return tenantService.getTenantList(levelQuery);
    }

    /**
     * 添加职级
     *
     * @param tenantDto 实体对象
     * @return
     */
    @PostMapping("/add")
    public OperationEnum add(@RequestBody TenantDto tenantDto) {
        tenantService.addTenant(tenantDto);
        return OperationEnum.OPERATION_SUCCESS;
    }

    /**
     * 编辑职级
     *
     * @param tenantDto 实体对象
     * @return
     */
    @PutMapping("/edit")
    public OperationEnum edit(@RequestBody TenantDto tenantDto) {
        tenantService.editTenant(tenantDto);
        return OperationEnum.OPERATION_SUCCESS;
    }

    /**
     * 删除职级
     *
     * @param tenantIds 职级ID
     * @return
     */
    @DeleteMapping("/delete/{tenantIds}")
    public JsonResult delete(@PathVariable("tenantIds") Integer[] tenantIds) {
        return tenantService.deleteByIds(tenantIds);
    }
}
