package com.ruoyi.system.controller;

import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.system.model.wages.dao.WagesConversionData;
import com.ruoyi.system.model.wages.dto.WagesParamsDto;
import com.ruoyi.system.model.wages.vo.WagesConversionDataVO;
import com.ruoyi.system.service.WagesConversionService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * 2024/5/11
 * 工资json数据
 */
@RestController
@RequestMapping("/conversion")
public class WagesConversionController extends BaseController {

    public Logger logger = LoggerFactory.getLogger(WagesConversionController.class);

    private WagesConversionService wagesConversionService;

    private WagesConversionController(WagesConversionService wagesConversionService) {
        this.wagesConversionService = wagesConversionService;
    }

    @PostMapping("/save")
    public AjaxResult save(@RequestBody WagesConversionDataVO wagesConversionDataVO) {
        wagesConversionService.save(wagesConversionDataVO);
        return new AjaxResult(200, "成功");
    }

    @PostMapping("/getWagesData")
    public TableDataInfo getWagesDataList(@RequestBody WagesParamsDto wagesParamsDto) {
        startPage();
        List<WagesConversionData> wagesConversionData = wagesConversionService.selectWagesConversionDataList(wagesParamsDto);
        TableDataInfo dataTable = getDataTable(wagesConversionData);

        logger.info(dataTable.getRows().toString());
        return getDataTable(wagesConversionData);
    }

    @PostMapping("/update")
    public AjaxResult update(@RequestBody WagesConversionData wagesConversionData) {
        wagesConversionService.update(wagesConversionData);
        return new AjaxResult(200, "成功");
    }

    @GetMapping("/getWagesDataById/{id}")
    public AjaxResult getWagesDataById(@PathVariable("id") int id) {
        return new AjaxResult(200, "成功", wagesConversionService.selectWagesConversionDataById(id));
    }

    @GetMapping("/recentFormulas/{id}")
    public AjaxResult recentFormulas(@PathVariable("id") String mineId) {
        return wagesConversionService.recentFormulas(mineId);
    }
}