package com.goafanti.order.controller;

import com.goafanti.common.bo.Result;
import com.goafanti.common.controller.BaseController;
import com.goafanti.common.model.TaskScore;
import com.goafanti.order.bo.TaskScore.InputTaskScore;
import com.goafanti.order.bo.TaskScore.OutAdminTaskScore;
import com.goafanti.order.service.TaskScoreService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;

/**
 * 项目评分列表(TaskScore)表控制层
 *
 * @author makejava
 * @since 2024-09-27 11:51:57
 */
@RestController
@RequestMapping("/api/admin/taskScore")
public class TaskScoreController extends BaseController {
    /**
     * 服务对象
     */
    @Resource
    private TaskScoreService taskScoreService;


    /**
     * 新增数据
     *
     * @param taskScore 实体
     * @return 新增结果
     */
    @PostMapping("/add")
    public Result add(TaskScore taskScore) {
        return new Result<>().data(this.taskScoreService.insert(taskScore));
    }


    /**
     * 通过主键查询单条数据
     *
     * @param id 主键
     * @return 单条数据
     */
    @GetMapping("/get")
    public Result<TaskScore> queryById(Integer id) {
        return new Result<>().data(this.taskScoreService.queryById(id));
    }

    /**
     * 通过项目编号获取项目评分
     *
     * @param tid 主键
     * @return 单条数据
     */
    @GetMapping("/queryByTid")
    public Result<TaskScore> queryByTid(Integer tid) {
        return new Result<>().data(this.taskScoreService.queryByTid(tid));
    }


    /**
     * 编辑数据
     *
     * @param taskScore 实体
     * @return 编辑结果
     */
    @PostMapping("/update")
    public Result edit(TaskScore taskScore) {
        return new Result<>().data(this.taskScoreService.update(taskScore));
    }

    /**
     * 编辑项目评分
     *
     * @param taskScore 实体
     * @return 编辑结果
     */
    @PostMapping("/updateByTid")
    public Result updateByTid(TaskScore taskScore) {
        return new Result<>().data(this.taskScoreService.updateByTid(taskScore));
    }

    /**
     * 删除数据
     *
     * @param id 主键
     * @return 删除是否成功
     */
    @GetMapping("/delete")
    public Result deleteById(Integer id) {
        return new Result<>().data(this.taskScoreService.deleteById(id));
    }

    /**
     * 人员评分列表
     *
     * @param in 参数
     */
    @GetMapping("/list")
    public Result<OutAdminTaskScore> list(InputTaskScore in) {
        return new Result<>().data(this.taskScoreService.list(in));
    }

    /**
     * 人员评分列表
     *
     * @param in 参数
     */
    @GetMapping("/list/export")
    public Result listExport(InputTaskScore in) {
        return this.taskScoreService.listExport(in);
    }



}

