package com.ims.eval.controller;

import com.ims.eval.entity.Function;
import com.ims.eval.entity.SelfMathFormulaEnum;
import com.ims.eval.entity.dto.result.R;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;
import java.util.List;

/**
 * @author :xugp
 * @date :Created in 2023/3/20 10:28
 * @description:函数接口
 * @modified By:
 * @version: $
 */

@Slf4j
@RestController
@RequestMapping("//function")
public class FunctionController {


	@RequestMapping(value = "list")
	public R functionList(){

		List<Function> functionList = new ArrayList<>();
		try {
			List<SelfMathFormulaEnum> selfMathFormulas = SelfMathFormulaEnum.getSelfMathFormulas();
			selfMathFormulas.stream().forEach(r ->{
				Function function = new Function();
				function.setDescription(r.getDescription());
				function.setFormulaArgCount(r.getFormulaArgCount());
				function.setFormulaExpresion(r.getFormulaExpresion());
				function.setFormulaNameLength(r.getFormulaNameLength());
				function.setFormulaName(r.getFormulaName());
				functionList.add(function);
			});
		}catch (Exception e){
			log.info(e.getMessage());
		}
		return R.ok().data(functionList);
	}
 }